@labelbee/lb-components 1.10.0-alpha.2 → 1.10.0-alpha.20

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 (87) hide show
  1. package/dist/App.js +1 -1
  2. package/dist/components/attributeList/index.js +1 -1
  3. package/dist/components/colorPalette/index.js +1 -0
  4. package/dist/components/colorTag/index.js +1 -1
  5. package/dist/components/pointCloudView/PointCloudContext.js +1 -1
  6. package/dist/components/pointCloudView/PointCloudTopView.js +1 -1
  7. package/dist/components/pointCloudView/hooks/useHistory.js +1 -1
  8. package/dist/components/pointCloudView/hooks/usePointCloudViews.js +1 -1
  9. package/dist/components/pointCloudView/hooks/useSphere.js +1 -1
  10. package/dist/components/pointCloudView/hooks/useStatus.js +1 -1
  11. package/dist/components/predictTracking/predictTrackingIcon/index.js +1 -1
  12. package/dist/components/predictTracking/previewResult/index.js +1 -1
  13. package/dist/components/predictTracking/previewResult/util.js +1 -1
  14. package/dist/store/annotation/actionCreators.js +1 -1
  15. package/dist/types/App.d.ts +1 -0
  16. package/dist/types/components/AnnotationView/pointCloudAnnotationView.d.ts +2 -1
  17. package/dist/types/components/annotationStepPopover/index.d.ts +2 -1
  18. package/dist/types/components/attributeList/index.d.ts +2 -0
  19. package/dist/types/components/checkboxList/index.d.ts +2 -1
  20. package/dist/types/components/colorPalette/index.d.ts +12 -0
  21. package/dist/types/components/colorTag/index.d.ts +2 -1
  22. package/dist/types/components/customAntd/IconWithText/index.d.ts +1 -1
  23. package/dist/types/components/customResizeHook/index.d.ts +2 -2
  24. package/dist/types/components/fileException/FileError.d.ts +1 -1
  25. package/dist/types/components/pointCloudView/PointCloud2DView.d.ts +2 -1
  26. package/dist/types/components/pointCloudView/PointCloudBackView.d.ts +2 -1
  27. package/dist/types/components/pointCloudView/PointCloudContext.d.ts +1 -0
  28. package/dist/types/components/pointCloudView/PointCloudInfos.d.ts +4 -3
  29. package/dist/types/components/pointCloudView/components/EmptyPage/index.d.ts +7 -1
  30. package/dist/types/components/pointCloudView/components/UnifyParamsModal/index.d.ts +2 -1
  31. package/dist/types/components/pointCloudView/hooks/useHistory.d.ts +6 -4
  32. package/dist/types/components/pointCloudView/hooks/useSphere.d.ts +1 -0
  33. package/dist/types/components/predictTracking/predictTrackingIcon/index.d.ts +2 -1
  34. package/dist/types/components/predictTracking/previewResult/index.d.ts +2 -1
  35. package/dist/types/components/predictTracking/previewResult/util.d.ts +2 -1
  36. package/dist/types/components/videoPlayer/TagToolInstanceAdaptor.d.ts +1 -1
  37. package/dist/types/components/videoPlayer/TagToolInstanceAdaptorI18nProvider.d.ts +2 -1
  38. package/dist/types/components/videoPlayer/components/controller/index.d.ts +2 -1
  39. package/dist/types/components/videoPlayer/index.d.ts +1 -1
  40. package/dist/types/store/annotation/actionCreators.d.ts +1 -1
  41. package/dist/types/utils/colorUtils.d.ts +20 -0
  42. package/dist/types/views/MainView/annotationTips/index.d.ts +2 -1
  43. package/dist/types/views/MainView/sidebar/ClearIcon/index.d.ts +2 -1
  44. package/dist/types/views/MainView/sidebar/ImgAttributeInfo/index.d.ts +2 -1
  45. package/dist/types/views/MainView/sidebar/PointCloudToolSidebar/components/batchUpdateModal/index.d.ts +2 -1
  46. package/dist/types/views/MainView/sidebar/PointCloudToolSidebar/index.d.ts +3 -1
  47. package/dist/types/views/MainView/sidebar/TagSidebar/index.d.ts +1 -1
  48. package/dist/types/views/MainView/sidebar/TextAreaFormat/index.d.ts +2 -1
  49. package/dist/types/views/MainView/sidebar/TextToolSidebar/index.d.ts +2 -2
  50. package/dist/types/views/MainView/sidebar/ToolIcons.d.ts +2 -1
  51. package/dist/types/views/MainView/sidebar/ToolStyle/index.d.ts +2 -1
  52. package/dist/types/views/MainView/sidebar/index.d.ts +1 -0
  53. package/dist/types/views/MainView/toolFooter/AnnotatedAttributes/index.d.ts +5 -4
  54. package/dist/types/views/MainView/toolFooter/FooterPopover.d.ts +1 -1
  55. package/dist/types/views/MainView/toolFooter/HiddenTips/index.d.ts +2 -1
  56. package/dist/types/views/MainView/toolFooter/PageNumber/index.d.ts +2 -1
  57. package/dist/types/views/MainView/toolFooter/Pagination.d.ts +1 -1
  58. package/dist/types/views/MainView/toolFooter/index.d.ts +1 -1
  59. package/dist/utils/colorUtils.js +1 -0
  60. package/dist/views/MainView/index.js +1 -1
  61. package/dist/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
  62. package/dist/views/MainView/sidebar/index.js +1 -1
  63. package/dist/views/MainView/toolFooter/AnnotatedAttributes/index.js +1 -1
  64. package/es/App.js +1 -1
  65. package/es/components/attributeList/index.js +1 -1
  66. package/es/components/colorPalette/index.js +1 -0
  67. package/es/components/colorTag/index.js +1 -1
  68. package/es/components/pointCloudView/PointCloudContext.js +1 -1
  69. package/es/components/pointCloudView/PointCloudTopView.js +1 -1
  70. package/es/components/pointCloudView/hooks/useHistory.js +1 -1
  71. package/es/components/pointCloudView/hooks/usePointCloudViews.js +1 -1
  72. package/es/components/pointCloudView/hooks/useSphere.js +1 -1
  73. package/es/components/pointCloudView/hooks/useStatus.js +1 -1
  74. package/es/components/predictTracking/predictTrackingIcon/index.js +1 -1
  75. package/es/components/predictTracking/previewResult/index.js +1 -1
  76. package/es/components/predictTracking/previewResult/util.js +1 -1
  77. package/es/store/annotation/actionCreators.js +1 -1
  78. package/es/utils/colorUtils.js +1 -0
  79. package/es/views/MainView/index.js +1 -1
  80. package/es/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
  81. package/es/views/MainView/sidebar/index.js +1 -1
  82. package/es/views/MainView/toolFooter/AnnotatedAttributes/index.js +1 -1
  83. package/package.json +10 -8
  84. package/LICENSE +0 -203
  85. package/dist/components/pointCloudView/hooks/useLine.js +0 -1
  86. package/dist/types/components/pointCloudView/hooks/useLine.d.ts +0 -12
  87. package/es/components/pointCloudView/hooks/useLine.js +0 -1
@@ -1,20 +1,22 @@
1
- import { IPointCloudBox, IPointCloudBoxList, IPolygonData, IPointUnit, ILine } from '@labelbee/lb-utils';
1
+ import { IPointCloudBox, IPointCloudBoxList, IPointCloudSphere, IPointCloudSphereList, IPolygonData, ILine } from '@labelbee/lb-utils';
2
2
  export declare const useHistory: () => {
3
- addHistory: ({ newBoxParams, newPolygon, newLine, }: {
3
+ addHistory: ({ newBoxParams, newPolygon, newLine, newSphereParams, }: {
4
4
  newBoxParams?: IPointCloudBox | undefined;
5
5
  newPolygon?: IPolygonData | undefined;
6
6
  newLine?: ILine | undefined;
7
+ newSphereParams?: IPointCloudSphere | undefined;
7
8
  }) => void;
8
9
  pushHistoryWithList: (params: Partial<{
9
10
  pointCloudBoxList: IPointCloudBoxList;
10
11
  polygonList: IPolygonData[];
11
12
  lineList: ILine[];
13
+ pointCloudSphereList: IPointCloudSphereList;
12
14
  }>) => void;
13
- initHistory: ({ pointCloudBoxList, polygonList, }: {
15
+ initHistory: ({ pointCloudBoxList, polygonList, pointCloudSphereList, }: {
14
16
  pointCloudBoxList: IPointCloudBoxList;
15
17
  polygonList: IPolygonData[];
18
+ pointCloudSphereList: IPointCloudSphereList;
16
19
  }) => void;
17
- pushHistoryUnderUpdatePoint: (point: IPointUnit) => void;
18
20
  pushHistoryUnderUpdatePolygon: (polygon: IPolygonData) => void;
19
21
  pushHistoryUnderUpdateLine: (line: ILine) => void;
20
22
  redo: () => void;
@@ -3,4 +3,5 @@ export declare const useSphere: () => {
3
3
  getPointCloudSphereByID: (id: string) => import("@labelbee/lb-utils").IPointCloudSphere | undefined;
4
4
  updatePointCloudSphere: (sphereParams: any) => import("@labelbee/lb-utils").IPointCloudSphereList;
5
5
  deletePointCloudSphere: (id: string) => void;
6
+ switchToNextSphere: (sort?: any) => void;
6
7
  };
@@ -1,6 +1,7 @@
1
+ import React from 'react';
1
2
  declare const _default: import("react-redux").ConnectedComponent<(props: {
2
3
  loading: boolean;
3
- }) => JSX.Element, import("react-redux").Omit<{
4
+ }) => React.JSX.Element, import("react-redux").Omit<{
4
5
  loading: boolean;
5
6
  }, "loading">>;
6
7
  export default _default;
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { IPointCloudBoxWithIndex } from '@/store/annotation/types';
2
3
  import { IFileItem } from '@/types/data';
3
4
  interface IProps {
@@ -5,5 +6,5 @@ interface IProps {
5
6
  predictionResultVisible: boolean;
6
7
  predictionResult: IPointCloudBoxWithIndex[];
7
8
  }
8
- declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => JSX.Element | null, import("react-redux").Omit<IProps, "imgList" | "predictionResult" | "predictionResultVisible">>;
9
+ declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => React.JSX.Element | null, import("react-redux").Omit<IProps, "imgList" | "predictionResult" | "predictionResultVisible">>;
9
10
  export default _default;
@@ -30,9 +30,10 @@ export declare const getViewsDataUrl: (pointCloud: PointCloud, box: IBox, zoom:
30
30
  * @param {Array} imageList - An array of file items to search through.
31
31
  * @param {Number} targetStep - The step number within the result object to retrieve boxes from.
32
32
  * @param {Number} selectedBoxTrackID - The trackID to match when searching for boxes.
33
+ * @param {string} selectedBoxID - The selected BoxID.
33
34
  * @return {Array} An array of point cloud boxes that match the provided trackID, along with their index in the original array.
34
35
  */
35
- export declare const getBoxesByTrackID: (imageList: IFileItem[], targetStep: number, selectedBoxTrackID: number) => IPointCloudBoxWithIndex[];
36
+ export declare const getBoxesByTrackID: (imageList: IFileItem[], targetStep: number, selectedBoxTrackID: number, selectedBoxID: string) => IPointCloudBoxWithIndex[];
36
37
  /**
37
38
  * Calculate predicted values for each field in between the start and end points.
38
39
  * @param {IPointCloudBoxWithIndex} start - The starting point, should have the same properties as IPointCloudBoxWithIndex.
@@ -85,6 +85,6 @@ export declare class TagToolInstanceAdaptor extends React.Component<IVideoTagIns
85
85
  setResultFromImgList: (props: IVideoTagInstanceAdaptorProps) => void;
86
86
  /** Observer imgIndex and set tagResult */
87
87
  shouldComponentUpdate(props: IVideoTagInstanceAdaptorProps): boolean;
88
- render(): JSX.Element;
88
+ render(): React.JSX.Element;
89
89
  }
90
90
  export {};
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { IVideoTagInstanceAdaptorProps } from './TagToolInstanceAdaptor';
2
3
  /**
3
4
  * I18n provider for InstanceAdaptorI18nProvider
@@ -5,4 +6,4 @@ import { IVideoTagInstanceAdaptorProps } from './TagToolInstanceAdaptor';
5
6
  */
6
7
  export declare const VideoTagTool: (props: IVideoTagInstanceAdaptorProps & {
7
8
  lang?: string;
8
- }) => JSX.Element;
9
+ }) => React.JSX.Element;
@@ -1,2 +1,3 @@
1
- declare const VideoController: () => JSX.Element;
1
+ import React from 'react';
2
+ declare const VideoController: () => React.JSX.Element;
2
3
  export default VideoController;
@@ -68,6 +68,6 @@ export declare class VideoPlayer extends React.Component<IVideoPlayerProps, IVid
68
68
  onError: () => void;
69
69
  componentDidMount(): void;
70
70
  componentWillUnmount(): void;
71
- render(): JSX.Element;
71
+ render(): React.JSX.Element;
72
72
  }
73
73
  export default VideoPlayer;
@@ -92,4 +92,4 @@ export declare const SetPointCloudLoading: (dispatch: Function, loading: boolean
92
92
  export declare const InitAnnotationState: (dispatch: Function) => void;
93
93
  export declare const SetPredictResult: (dispatch: Function, result: any) => void;
94
94
  export declare const SetPredictResultVisible: (dispatch: Function, visible: boolean) => void;
95
- export declare const GetBoxesByID: (selectedBoxTrackID: number) => (dispatch: any, getState: any) => IPointCloudBox[];
95
+ export declare const GetBoxesByID: (selectedBoxTrackID: number, selectedBoxID: string) => (dispatch: any, getState: any) => IPointCloudBox[];
@@ -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;
@@ -1,6 +1,7 @@
1
+ import React from 'react';
1
2
  interface IProps {
2
3
  tips?: string;
3
4
  path?: string;
4
5
  }
5
- declare const AnnotationTips: ({ path, tips }: IProps) => JSX.Element | null;
6
+ declare const AnnotationTips: ({ path, tips }: IProps) => React.JSX.Element | null;
6
7
  export default AnnotationTips;
@@ -1,2 +1,3 @@
1
- declare const clearIcon: () => JSX.Element;
1
+ import React from 'react';
2
+ declare const clearIcon: () => React.JSX.Element;
2
3
  export default clearIcon;
@@ -1,6 +1,7 @@
1
+ import React from 'react';
1
2
  import { ImgAttributeState } from '@/store/imgAttribute/types';
2
3
  interface IProps {
3
4
  imgAttribute: ImgAttributeState;
4
5
  }
5
- declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => JSX.Element, import("react-redux").Omit<IProps, "imgAttribute">>;
6
+ declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => React.JSX.Element, import("react-redux").Omit<IProps, "imgAttribute">>;
6
7
  export default _default;
@@ -1,6 +1,7 @@
1
1
  import { ToolInstance } from '@/store/annotation/types';
2
2
  import { AnnotationFileList } from '@/types/data';
3
3
  import { IStepInfo } from '@/types/step';
4
+ import React from 'react';
4
5
  /**
5
6
  * 检查当前数字是否为有效数字
6
7
  * @param value
@@ -15,5 +16,5 @@ interface IProps {
15
16
  imgIndex: number;
16
17
  stepList: IStepInfo[];
17
18
  }
18
- declare const _default: import("react-redux").ConnectedComponent<({ id, stepList, imgList, imgIndex, toolInstance }: IProps) => JSX.Element, import("react-redux").Omit<IProps, "stepList" | "imgIndex" | "imgList" | "toolInstance">>;
19
+ declare const _default: import("react-redux").ConnectedComponent<({ id, stepList, imgList, imgIndex, toolInstance }: IProps) => React.JSX.Element, import("react-redux").Omit<IProps, "stepList" | "imgIndex" | "imgList" | "toolInstance">>;
19
20
  export default _default;
@@ -7,8 +7,10 @@ interface IProps {
7
7
  toolInstance: ICustomToolInstance;
8
8
  imgList: IFileItem[];
9
9
  imgIndex: number;
10
+ stepList: IStepInfo[];
11
+ enableColorPicker?: boolean;
10
12
  }
11
13
  declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
12
14
  children?: React.ReactNode;
13
- }, "imgIndex" | "imgList" | "toolInstance" | "stepInfo">>;
15
+ }, "stepList" | "imgIndex" | "imgList" | "toolInstance" | "stepInfo">>;
14
16
  export default _default;
@@ -4,7 +4,7 @@ interface IProps {
4
4
  imgIndex: number;
5
5
  toolInstance: TagOperation;
6
6
  }
7
- export declare const expandIconFuc: ({ isActive }: any) => JSX.Element;
7
+ export declare const expandIconFuc: ({ isActive }: any) => React.JSX.Element;
8
8
  declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
9
9
  children?: React.ReactNode;
10
10
  }, "imgIndex" | "toolInstance">>;
@@ -1,8 +1,9 @@
1
+ import React from 'react';
1
2
  interface IProps {
2
3
  onChange: (value: string, isSubmit?: boolean) => void;
3
4
  textValue: string | undefined;
4
5
  checkString: string;
5
6
  textCheckType: number;
6
7
  }
7
- declare const TextAreaFormat: (props: IProps) => JSX.Element;
8
+ declare const TextAreaFormat: (props: IProps) => React.JSX.Element;
8
9
  export default TextAreaFormat;
@@ -5,7 +5,7 @@ interface ITextareaWithFooterProps {
5
5
  textareaProps?: any;
6
6
  footer?: any;
7
7
  }
8
- export declare const TextareaWithFooter: (props: ITextareaWithFooterProps) => JSX.Element;
8
+ export declare const TextareaWithFooter: (props: ITextareaWithFooterProps) => React.JSX.Element;
9
9
  interface IProps {
10
10
  dispatch: Function;
11
11
  toolInstance: TextToolOperation;
@@ -15,7 +15,7 @@ interface IProps {
15
15
  stepList: IStepInfo[];
16
16
  basicResultList: any[];
17
17
  }
18
- export declare const SingleTextInput: (props: any) => JSX.Element;
18
+ export declare const SingleTextInput: (props: any) => React.JSX.Element;
19
19
  declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
20
20
  children?: React.ReactNode;
21
21
  }, "stepList" | "step" | "imgIndex" | "basicResultList" | "toolInstance" | "triggerEventAfterIndexChanged" | "dispatch">>;
@@ -4,8 +4,9 @@
4
4
  * @createdate 2022-07-14
5
5
  */
6
6
  import { EToolName } from '@/data/enums/ToolType';
7
+ import React from 'react';
7
8
  export declare const ToolIcons: ({ toolName, selectedToolName, onChange, }: {
8
9
  toolName: string;
9
10
  selectedToolName?: string | undefined;
10
11
  onChange: (toolName: EToolName) => void;
11
- }) => JSX.Element;
12
+ }) => React.JSX.Element;
@@ -1,7 +1,8 @@
1
+ import React from 'react';
1
2
  import { ToolStyleState } from '@/store/toolStyle/types';
2
3
  interface IProps {
3
4
  toolStyle: ToolStyleState;
4
5
  config: string;
5
6
  }
6
- declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => JSX.Element, import("react-redux").Omit<IProps, "config" | "toolStyle">>;
7
+ declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => React.JSX.Element, import("react-redux").Omit<IProps, "config" | "toolStyle">>;
7
8
  export default _default;
@@ -4,6 +4,7 @@ import React from 'react';
4
4
  interface IProps {
5
5
  toolName?: EToolName;
6
6
  sider?: Sider;
7
+ enableColorPicker?: boolean;
7
8
  }
8
9
  export declare const sidebarCls: string;
9
10
  declare const Sidebar: React.FC<IProps>;
@@ -1,4 +1,5 @@
1
- export declare const AnnotatedAttributesPanel: () => JSX.Element;
2
- export declare const AnnotatedAttributesPanelFixedLeft: () => JSX.Element | null;
3
- export declare const AnnotatedAttributesPanelFixedRight: () => JSX.Element | null;
4
- export declare const AnnotatedAttributesIcon: () => JSX.Element | null;
1
+ import React from 'react';
2
+ export declare const AnnotatedAttributesPanel: () => React.JSX.Element;
3
+ export declare const AnnotatedAttributesPanelFixedLeft: () => React.JSX.Element | null;
4
+ export declare const AnnotatedAttributesPanelFixedRight: () => React.JSX.Element | null;
5
+ export declare const AnnotatedAttributesIcon: () => React.JSX.Element | null;
@@ -6,5 +6,5 @@ declare const FooterPopover: ({ hoverIcon, icon, containerStyle, content, title,
6
6
  containerStyle?: React.CSSProperties | undefined;
7
7
  content: React.ReactNode;
8
8
  title: string;
9
- }) => JSX.Element;
9
+ }) => React.JSX.Element;
10
10
  export default FooterPopover;
@@ -1,6 +1,7 @@
1
+ import React from 'react';
1
2
  import { ToolInstance } from '@/store/annotation/types';
2
3
  interface IProps {
3
4
  toolInstance: ToolInstance;
4
5
  }
5
- declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => JSX.Element | null, import("react-redux").Omit<IProps, "toolInstance">>;
6
+ declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => React.JSX.Element | null, import("react-redux").Omit<IProps, "toolInstance">>;
6
7
  export default _default;
@@ -1,6 +1,7 @@
1
+ import React from 'react';
1
2
  import { GraphToolInstance } from '@/store/annotation/types';
2
3
  interface IProps {
3
4
  toolInstance: GraphToolInstance;
4
5
  }
5
- declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => JSX.Element | null, import("react-redux").Omit<IProps, "toolInstance">>;
6
+ declare const _default: import("react-redux").ConnectedComponent<(props: IProps) => React.JSX.Element | null, import("react-redux").Omit<IProps, "toolInstance">>;
6
7
  export default _default;
@@ -17,6 +17,6 @@ interface IPageProps {
17
17
  * @param props
18
18
  * @returns
19
19
  */
20
- export declare const PageInput: (props: IPageProps) => JSX.Element;
20
+ export declare const PageInput: (props: IPageProps) => React.JSX.Element;
21
21
  export declare const Pagination: React.FC<IPaginationProps>;
22
22
  export {};
@@ -17,7 +17,7 @@ interface IProps {
17
17
  skipBeforePageTurning?: (pageTurning: Function) => void;
18
18
  }
19
19
  export declare const footerCls: string;
20
- export declare const FooterDivider: () => JSX.Element;
20
+ export declare const FooterDivider: () => React.JSX.Element;
21
21
  declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
22
22
  children?: React.ReactNode;
23
23
  }, "stepList" | "step" | "imgIndex" | "basicResultList" | "basicIndex" | "skipBeforePageTurning" | "totalPage">>;
@@ -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 index=require("../../components/customResizeHook/index.js"),index$5=require("../../constant/index.js"),antd=require("antd"),es=require("antd/es"),React=require("react"),index$8=require("./annotationOperation/index.js"),index$7=require("./annotationTips/index.js"),index$3=require("./sidebar/index.js"),index$9=require("./toolFooter/index.js"),index$2=require("./toolHeader/index.js"),reducer=require("../../store/annotation/reducer.js"),index$6=require("../../components/videoAnnotate/index.js"),reactRedux=require("react-redux"),ToolUtils=require("../../utils/ToolUtils.js"),index$a=require("../../components/pointCloudView/index.js"),dom=require("../../utils/dom.js"),index$1=require("../../utils/index.js"),ctx=require("../../store/ctx.js"),index$4=require("../../components/predictTracking/previewResult/index.js");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,t,a)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,__spreadValues=(e,t)=>{for(var a in t||(t={}))__hasOwnProp.call(t,a)&&__defNormalProp(e,a,t[a]);if(__getOwnPropSymbols)for(var a of __getOwnPropSymbols(t))__propIsEnum.call(t,a)&&__defNormalProp(e,a,t[a]);return e};const{Sider,Content}=es.Layout,layoutCls=`${index$5.prefix}-layout`,ImageAnnotate=e=>{var t;return React__default.default.createElement(React__default.default.Fragment,null,e.showTips===!0&&React__default.default.createElement(index$7,{path:e.path,tips:e.tips}),React__default.default.createElement(index$8,__spreadValues({},e)),React__default.default.createElement(index$9.default,{style:(t=e.style)==null?void 0:t.footer,mode:e.mode,footer:e==null?void 0:e.footer}))},PointCloudAnnotate=e=>{var t;return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(index$a,{drawLayerSlot:e.drawLayerSlot,checkMode:e.checkMode,intelligentFit:e.intelligentFit}),React__default.default.createElement(index$9.default,{style:(t=e.style)==null?void 0:t.footer,mode:e.mode,footer:e==null?void 0:e.footer}))},AnnotatedArea=e=>{var t;const{stepList:a,step:n}=e,r=(t=reducer.getStepConfig(a,n))==null?void 0:t.tool,i=ToolUtils.isVideoTool(r),l=ToolUtils.isPointCloudTool(r);return i?React__default.default.createElement(index$6,__spreadValues({},e)):l?React__default.default.createElement(PointCloudAnnotate,__spreadValues({},e)):React__default.default.createElement(ImageAnnotate,__spreadValues({},e))},MainView=e=>{var t,a,n,r,i;const l=(a=(t=e.style)==null?void 0:t.sider)==null?void 0:a.width;return React__default.default.createElement(index.ViewportProvider,null,React__default.default.createElement(antd.Spin,{spinning:e.loading},React__default.default.createElement(es.Layout,{className:index$1.classnames([layoutCls,e.className]),style:(n=e.style)==null?void 0:n.layout},React__default.default.createElement("header",{className:`${layoutCls}__header`,style:(r=e.style)==null?void 0:r.header},React__default.default.createElement(index$2,{header:e==null?void 0:e.header,headerName:e.headerName,goBack:e.goBack,exportData:e.exportData})),React__default.default.createElement(es.Layout,{className:dom.getClassName("layout","container")},e==null?void 0:e.leftSider,React__default.default.createElement(Content,{className:`${layoutCls}__content`},React__default.default.createElement(AnnotatedArea,__spreadValues({},e))),React__default.default.createElement(Sider,{className:`${layoutCls}__side`,width:l!=null?l:240,style:(i=e.style)==null?void 0:i.sider},React__default.default.createElement(index$3.default,{sider:e==null?void 0:e.sider})),React__default.default.createElement(index$4,null)))))},mapStateToProps=({annotation:e})=>{var t,a,n;const{imgList:r,loading:i}=e,l=(t=r[e.imgIndex])!=null?t:{};return{path:(n=(a=l==null?void 0:l.path)!=null?a:l==null?void 0:l.url)!=null?n:"",loading:i}};var MainView$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(MainView);module.exports=MainView$1;
1
+ "use strict";var index=require("../../components/customResizeHook/index.js"),index$5=require("../../constant/index.js"),antd=require("antd"),es=require("antd/es"),React=require("react"),index$8=require("./annotationOperation/index.js"),index$7=require("./annotationTips/index.js"),index$3=require("./sidebar/index.js"),index$9=require("./toolFooter/index.js"),index$2=require("./toolHeader/index.js"),reducer=require("../../store/annotation/reducer.js"),index$6=require("../../components/videoAnnotate/index.js"),reactRedux=require("react-redux"),ToolUtils=require("../../utils/ToolUtils.js"),index$a=require("../../components/pointCloudView/index.js"),dom=require("../../utils/dom.js"),index$1=require("../../utils/index.js"),ctx=require("../../store/ctx.js"),index$4=require("../../components/predictTracking/previewResult/index.js");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,t,a)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,__spreadValues=(e,t)=>{for(var a in t||(t={}))__hasOwnProp.call(t,a)&&__defNormalProp(e,a,t[a]);if(__getOwnPropSymbols)for(var a of __getOwnPropSymbols(t))__propIsEnum.call(t,a)&&__defNormalProp(e,a,t[a]);return e};const{Sider,Content}=es.Layout,layoutCls=`${index$5.prefix}-layout`,ImageAnnotate=e=>{var t;return React__default.default.createElement(React__default.default.Fragment,null,e.showTips===!0&&React__default.default.createElement(index$7,{path:e.path,tips:e.tips}),React__default.default.createElement(index$8,__spreadValues({},e)),React__default.default.createElement(index$9.default,{style:(t=e.style)==null?void 0:t.footer,mode:e.mode,footer:e==null?void 0:e.footer}))},PointCloudAnnotate=e=>{var t;return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(index$a,{drawLayerSlot:e.drawLayerSlot,checkMode:e.checkMode,intelligentFit:e.intelligentFit}),React__default.default.createElement(index$9.default,{style:(t=e.style)==null?void 0:t.footer,mode:e.mode,footer:e==null?void 0:e.footer}))},AnnotatedArea=e=>{var t;const{stepList:a,step:n}=e,r=(t=reducer.getStepConfig(a,n))==null?void 0:t.tool,i=ToolUtils.isVideoTool(r),l=ToolUtils.isPointCloudTool(r);return i?React__default.default.createElement(index$6,__spreadValues({},e)):l?React__default.default.createElement(PointCloudAnnotate,__spreadValues({},e)):React__default.default.createElement(ImageAnnotate,__spreadValues({},e))},MainView=e=>{var t,a,n,r,i;const l=(a=(t=e.style)==null?void 0:t.sider)==null?void 0:a.width;return React__default.default.createElement(index.ViewportProvider,null,React__default.default.createElement(antd.Spin,{spinning:e.loading},React__default.default.createElement(es.Layout,{className:index$1.classnames([layoutCls,e.className]),style:(n=e.style)==null?void 0:n.layout},React__default.default.createElement("header",{className:`${layoutCls}__header`,style:(r=e.style)==null?void 0:r.header},React__default.default.createElement(index$2,{header:e==null?void 0:e.header,headerName:e.headerName,goBack:e.goBack,exportData:e.exportData})),React__default.default.createElement(es.Layout,{className:dom.getClassName("layout","container")},e==null?void 0:e.leftSider,React__default.default.createElement(Content,{className:`${layoutCls}__content`},React__default.default.createElement(AnnotatedArea,__spreadValues({},e))),React__default.default.createElement(Sider,{className:`${layoutCls}__side`,width:l!=null?l:240,style:(i=e.style)==null?void 0:i.sider},React__default.default.createElement(index$3.default,{sider:e==null?void 0:e.sider,enableColorPicker:e==null?void 0:e.enableColorPicker})),React__default.default.createElement(index$4,null)))))},mapStateToProps=({annotation:e})=>{var t,a,n;const{imgList:r,loading:i}=e,l=(t=r[e.imgIndex])!=null?t:{};return{path:(n=(a=l==null?void 0:l.path)!=null?a:l==null?void 0:l.url)!=null?n:"",loading:i}};var MainView$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(MainView);module.exports=MainView$1;
@@ -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(l){return l&&typeof l=="object"&&"default"in l?l:{default:l}}var React__default=_interopDefaultLegacy(React);const AnnotatedBox=({imgList:l,imgIndex:i})=>{const s=React.useContext(PointCloudContext.PointCloudContext),[o,c]=React.useState([]),{t:r}=reactI18next.useTranslation();React.useEffect(()=>{const a=l;let t=new Map;c(lbUtils.PointCloudUtils.getAllPointCloudResult({imgList:a,extraBoxList:m,ignoreIndexList:[i]}).filter(n=>!n.trackID||t.get(n.trackID)?!1:(t.set(n.trackID,!0),!0)).sort((n,u)=>{var d,e;const p=(d=n==null?void 0:n.trackID)!=null?d:0,v=(e=u==null?void 0:u.trackID)!=null?e:0;return p-v}).map(n=>{var u;return(u=n==null?void 0:n.trackID)!=null?u:0}))},[s.pointCloudBoxList,l]);const{pointCloudBoxList:m}=s;return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:16}},r("AllTrackIDs")),React__default.default.createElement("div",null,o.map(a=>React__default.default.createElement(antd.Tag,{color:"#F3F4FF",key:a,style:{color:"#666",marginBottom:8}},a))))},BoxTrackIDInput=()=>{const[l,i]=React.useState(!1),{pointCloudBoxList:s}=React.useContext(PointCloudContext.PointCloudContext),{selectedBox:o,updateSelectedBox:c}=useSingleBox.useSingleBox(),[r,m]=React.useState(""),{t:a}=reactI18next.useTranslation(),t=o==null?void 0:o.info.trackID,n=d=>!!s.find(p=>p.trackID===d&&p.id!==(o==null?void 0:o.info.id)),u=(d=!1)=>{const e=parseInt(r,10);if(d&&i(!1),isNaN(e)){antd.message.error(a("PositiveIntegerCheck"));return}if(r.indexOf(".")>-1){antd.message.error(a("NotAllowDecimalPointsInTrackID"));return}if(n(e)){antd.message.error(a("DuplicateTrackIDsExist"));return}if(!(e>0)){antd.message.error(a("PositiveIntegerCheck"));return}c({trackID:e})};return React.useEffect(()=>{i(!1)},[t]),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,a("CurrentBoxTrackIDs")),t&&React__default.default.createElement(index$1,{id:t})),React__default.default.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},l&&t?React__default.default.createElement(antd.Input,{defaultValue:t,onChange:d=>{m(d.target.value)},disabled:!t,size:"small",onBlur:()=>{u()},onPressEnter:()=>{u(!0)}}):React__default.default.createElement("span",null,t),React__default.default.createElement(icons.EditFilled,{style:{color:"#999",marginLeft:16,cursor:typeof t!="undefined"?"pointer":"not-allowed"},onClick:()=>{t&&i(!l)}})))},AttributeUpdater=({attributeList:l,subAttributeList:i,toolInstance:s})=>{const{selectedBox:o}=useSingleBox.useSingleBox(),c=React.useContext(PointCloudContext.PointCloudContext),{t:r}=reactI18next.useTranslation(),{defaultAttribute:m}=useAttribute.useAttribute(),a={fontWeight:500,fontSize:14,margin:"12px 0 8px 20px"},t={margin:"12px 20px 8px",fontSize:14,fontWeight:500,wordWrap:"break-word"},n=e=>{s.setDefaultAttribute(e)},u=(e,p)=>{s.setSubAttribute(e,p)},d=l.map(e=>({label:e.key,value:e.value,color:e==null?void 0:e.color}));return React__default.default.createElement("div",null,React__default.default.createElement("div",{style:a},r("Attribute")),React__default.default.createElement(index$2.default,{list:d,forbidDefault:!0,selectedAttribute:m!=null?m:"",attributeChanged:e=>n(e)}),React__default.default.createElement(antd.Divider,{style:{margin:0}}),o&&React__default.default.createElement(React__default.default.Fragment,null,i.map(e=>{var p,v,x,g,C;return(e==null?void 0:e.subSelected)&&React__default.default.createElement("div",{style:{marginTop:12},key:e.value},React__default.default.createElement("div",{style:t},r("SubAttribute"),"-",e.key),((p=e.subSelected)==null?void 0:p.length)<5?React__default.default.createElement(index$2.default,{list:e.subSelected.map(f=>({label:f.key,value:f.value})),selectedAttribute:(x=(v=c.selectedPointCloudBox)==null?void 0:v.subAttribute)==null?void 0:x[e.value],num:"-",forbidColor:!0,forbidDefault:!0,attributeChanged:f=>u(e.value,f),style:{marginBottom:12}}):React__default.default.createElement(antd.Select,{style:{margin:"0px 21px 17px 16px",width:"87%"},value:(C=(g=c.selectedPointCloudBox)==null?void 0:g.subAttribute)==null?void 0:C[e.value],placeholder:r("PleaseSelect"),onChange:f=>u(e.value,f),allowClear:!0},e.subSelected.map(f=>React__default.default.createElement(antd.Select.Option,{key:f.value,value:f.value},f.key))),React__default.default.createElement(antd.Divider,{style:{margin:0}}))})))},PointCloudToolSidebar=({stepInfo:l,toolInstance:i,imgList:s,imgIndex:o})=>{var c,r;const{updatePointCloudPattern:m,pointCloudPattern:a}=useStatus.useStatus(),t=index.jsonParser(l.config),n=(c=t==null?void 0:t.attributeList)!=null?c:[],u=(t==null?void 0:t.secondaryAttributeConfigurable)===!0?(r=t==null?void 0:t.inputList)!=null?r:[]:[];return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(ToolIcons.ToolIcons,{toolName:lbAnnotation.cTool.EPointCloudName.PointCloud,selectedToolName:a,onChange:d=>m==null?void 0:m(d)}),(t==null?void 0:t.trackConfigurable)===!0&&React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(AnnotatedBox,{imgList:s,imgIndex:o}),React__default.default.createElement(BoxTrackIDInput,null),React__default.default.createElement(antd.Divider,{style:{margin:0}})),React__default.default.createElement(AttributeUpdater,{toolInstance:i,attributeList:n,subAttributeList:u}))},mapStateToProps=l=>{var i,s,o;const c=StepUtils.getCurrentStepInfo((i=l.annotation)==null?void 0:i.step,(s=l.annotation)==null?void 0:s.stepList),r=(o=l.annotation)==null?void 0:o.toolInstance;return{stepInfo:c,toolInstance:r,imgList:l.annotation.imgList,imgIndex:l.annotation.imgIndex}};var PointCloudToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudToolSidebar);module.exports=PointCloudToolSidebar$1;
1
+ "use strict";var React=require("react"),icons=require("@ant-design/icons"),ToolIcons=require("../ToolIcons.js"),lbAnnotation=require("@labelbee/lb-annotation"),PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),StepUtils=require("../../../../utils/StepUtils.js"),reactRedux=require("react-redux"),index=require("../../../../utils/index.js"),useStatus=require("../../../../components/pointCloudView/hooks/useStatus.js"),useSingleBox=require("../../../../components/pointCloudView/hooks/useSingleBox.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.js"),index$1=require("./components/batchUpdateModal/index.js"),lbUtils=require("@labelbee/lb-utils"),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,o)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__spreadValues=(e,t)=>{for(var o in t||(t={}))__hasOwnProp.call(t,o)&&__defNormalProp(e,o,t[o]);if(__getOwnPropSymbols)for(var o of __getOwnPropSymbols(t))__propIsEnum.call(t,o)&&__defNormalProp(e,o,t[o]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const AnnotatedBox=({imgList:e,imgIndex:t})=>{const o=React.useContext(PointCloudContext.PointCloudContext),[u,p]=React.useState([]),{t:f}=reactI18next.useTranslation();React.useEffect(()=>{const a=e;let n=new Map;p(lbUtils.PointCloudUtils.getAllPointCloudResult({imgList:a,extraBoxList:v,ignoreIndexList:[t]}).filter(i=>!i.trackID||n.get(i.trackID)?!1:(n.set(i.trackID,!0),!0)).sort((i,r)=>{var d,c;const m=(d=i==null?void 0:i.trackID)!=null?d:0,_=(c=r==null?void 0:r.trackID)!=null?c:0;return m-_}).map(i=>{var r;return(r=i==null?void 0:i.trackID)!=null?r:0}))},[o.pointCloudBoxList,e]);const{pointCloudBoxList:v}=o;return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:16}},f("AllTrackIDs")),React__default.default.createElement("div",null,u.map(a=>React__default.default.createElement(antd.Tag,{color:"#F3F4FF",key:a,style:{color:"#666",marginBottom:8}},a))))},BoxTrackIDInput=()=>{const[e,t]=React.useState(!1),{pointCloudBoxList:o}=React.useContext(PointCloudContext.PointCloudContext),{selectedBox:u,updateSelectedBox:p}=useSingleBox.useSingleBox(),[f,v]=React.useState(""),{t:a}=reactI18next.useTranslation(),n=u==null?void 0:u.info.trackID,i=d=>!!o.find(m=>m.trackID===d&&m.id!==(u==null?void 0:u.info.id)),r=(d=!1)=>{const c=parseInt(f,10);if(d&&t(!1),isNaN(c)){antd.message.error(a("PositiveIntegerCheck"));return}if(f.indexOf(".")>-1){antd.message.error(a("NotAllowDecimalPointsInTrackID"));return}if(i(c)){antd.message.error(a("DuplicateTrackIDsExist"));return}if(!(c>0)){antd.message.error(a("PositiveIntegerCheck"));return}p({trackID:c})};return React.useEffect(()=>{t(!1)},[n]),React__default.default.createElement("div",{style:{padding:24}},React__default.default.createElement("div",{style:{marginBottom:16,display:"flex",justifyContent:"space-between",alignItems:"center"}},React__default.default.createElement("span",null,a("CurrentBoxTrackIDs")),n&&React__default.default.createElement(index$1,{id:n})),React__default.default.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},e&&n?React__default.default.createElement(antd.Input,{defaultValue:n,onChange:d=>{v(d.target.value)},disabled:!n,size:"small",onBlur:()=>{r()},onPressEnter:()=>{r(!0)}}):React__default.default.createElement("span",null,n),React__default.default.createElement(icons.EditFilled,{style:{color:"#999",marginLeft:16,cursor:typeof n!="undefined"?"pointer":"not-allowed"},onClick:()=>{n&&t(!e)}})))},AttributeUpdater=({attributeList:e,subAttributeList:t,toolInstance:o,config:u,stepList:p,stepInfo:f,enableColorPicker:v})=>{const{selectedBox:a}=useSingleBox.useSingleBox(),n=React.useContext(PointCloudContext.PointCloudContext),{t:i}=reactI18next.useTranslation(),{defaultAttribute:r}=useAttribute.useAttribute(),d=ctx.useDispatch(),c={fontWeight:500,fontSize:14,margin:"12px 0 8px 20px"},m={margin:"12px 20px 8px",fontSize:14,fontWeight:500,wordWrap:"break-word"},_=(l,x)=>{var C,b,I,y,s;const E=(C=u==null?void 0:u.attributeList)==null?void 0:C.map(g=>g.value===l?__spreadProps(__spreadValues({},g),{color:x}):g),k=__spreadProps(__spreadValues({},u),{attributeList:E}),w=JSON.stringify(k),L=p==null?void 0:p.map(g=>(g==null?void 0:g.step)===(f==null?void 0:f.step)?__spreadProps(__spreadValues({},g),{config:w}):g);(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),(s=n==null?void 0:n.mainViewInstance)==null||s.setConfig(k),d(actionCreators.SetTaskStepList({stepList:L}))},P=l=>{o.setDefaultAttribute(l)},S=(l,x)=>{o.setSubAttribute(l,x)},D=e.map(l=>({label:l.key,value:l.value,color:l==null?void 0:l.color}));return React__default.default.createElement("div",null,React__default.default.createElement("div",{style:c},i("Attribute")),React__default.default.createElement(index$2.default,{list:D,forbidDefault:!0,selectedAttribute:r!=null?r:"",attributeChanged:l=>P(l),updateColorConfig:_,enableColorPicker:v}),React__default.default.createElement(antd.Divider,{style:{margin:0}}),a&&React__default.default.createElement(React__default.default.Fragment,null,t.map(l=>{var x,C,b,I,y;return(l==null?void 0:l.subSelected)&&React__default.default.createElement("div",{style:{marginTop:12},key:l.value},React__default.default.createElement("div",{style:m},i("SubAttribute"),"-",l.key),((x=l.subSelected)==null?void 0:x.length)<5?React__default.default.createElement(index$2.default,{list:l.subSelected.map(s=>({label:s.key,value:s.value})),selectedAttribute:(b=(C=n.selectedPointCloudBox)==null?void 0:C.subAttribute)==null?void 0:b[l.value],num:"-",forbidColor:!0,forbidDefault:!0,attributeChanged:s=>S(l.value,s),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[l.value],placeholder:i("PleaseSelect"),onChange:s=>S(l.value,s),allowClear:!0},l.subSelected.map(s=>React__default.default.createElement(antd.Select.Option,{key:s.value,value:s.value},s.key))),React__default.default.createElement(antd.Divider,{style:{margin:0}}))})))},PointCloudToolSidebar=({stepInfo:e,toolInstance:t,imgList:o,imgIndex:u,stepList:p,enableColorPicker:f})=>{var v,a;const{updatePointCloudPattern:n,pointCloudPattern:i}=useStatus.useStatus(),r=index.jsonParser(e.config),d=(v=r==null?void 0:r.attributeList)!=null?v:[],c=(r==null?void 0:r.secondaryAttributeConfigurable)===!0?(a=r==null?void 0:r.inputList)!=null?a:[]:[];return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(ToolIcons.ToolIcons,{toolName:lbAnnotation.cTool.EPointCloudName.PointCloud,selectedToolName:i,onChange:m=>n==null?void 0:n(m)}),(r==null?void 0:r.trackConfigurable)===!0&&React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(AnnotatedBox,{imgList:o,imgIndex:u}),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:r,stepList:p,stepInfo:e,enableColorPicker:f}))},mapStateToProps=e=>{var t,o,u,p;const f=StepUtils.getCurrentStepInfo((t=e.annotation)==null?void 0:t.step,(o=e.annotation)==null?void 0:o.stepList),v=(u=e.annotation)==null?void 0:u.toolInstance,a=(p=e.annotation)==null?void 0:p.stepList;return{stepInfo:f,toolInstance:v,imgList:e.annotation.imgList,imgIndex:e.annotation.imgIndex,stepList:a}};var PointCloudToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudToolSidebar);module.exports=PointCloudToolSidebar$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$8=require("./AnnotationText/index.js"),index$2=require("./ClearIcon/index.js"),index$6=require("./GeneralOperation/index.js"),index$3=require("./ImgAttributeInfo/index.js"),index$7=require("./SwitchAttributeList/index.js"),index$1=require("./TagSidebar/index.js"),index$4=require("./TextToolSidebar/index.js"),index$5=require("./PointCloudToolSidebar/index.js"),index$a=require("./ToolStyle/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),index$9=require("./ScribbleSidebar/index.js"),ToolIcons=require("./ToolIcons.js"),ctx=require("../../../store/ctx.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`,Sidebar=({sider:e})=>{const r=ctx.useSelector(a=>StepUtils.getCurrentStepInfo(a.annotation.step,a.annotation.stepList)),t=r==null?void 0:r.tool,{t:i}=reactI18next.useTranslation();if(!t)return null;const E=a=>{const f=React__default.default.createElement(index$a,null);return React__default.default.createElement(Panel,{header:i("Style"),className:"panel",key:a},f)},u=React__default.default.createElement(ToolIcons.ToolIcons,{toolName:t,onChange:()=>{}}),n=React__default.default.createElement(index$7,null),d=React__default.default.createElement(index$8,null),c=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},E("1")),s=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,i("Adjust"),React__default.default.createElement(index$2,null)),className:"panel",key:"imgAttribute"},React__default.default.createElement(index$3,null))),l=React__default.default.createElement(index$6.default,null),x=React__default.default.createElement(index$1.default,null),v=React__default.default.createElement(index$4.default,null),m=React__default.default.createElement(index$9,{onChange:(a,f)=>{}}),o=React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`}),p=React__default.default.createElement(index$5,null),T=React__default.default.createElement(index$6.PointCloudOperation,null);return e?typeof e=="function"?React__default.default.createElement("div",{className:`${sidebarCls}`},e({toolIcon:u,attributeList:n,annotationText:d,toolStyle:c,imageAttributeInfo:s,operation:l,tagToolSideBar:x,textToolSideBar:v,horizontal:o,pointCloudToolSidebar:p,pointCloudOperation:T,scribbleSidebar:m})):e:[ToolType.EToolName.Rect,ToolType.EToolName.Point,ToolType.EToolName.Line,ToolType.EToolName.Rect,ToolType.EToolName.Polygon,ToolType.EToolName.Cuboid].includes(t)?React__default.default.createElement("div",{className:`${sidebarCls}`},u,o,n,d,o,React__default.default.createElement("div",{className:`${sidebarCls}__content`},c,s),l):t===ToolType.EToolName.Tag?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$1.default,null)):t===EVideoToolName.VideoTagTool?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$1.default,null)),l):t===ToolType.EToolName.Text?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$4.default,null)):t===EPointCloudName.PointCloud?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$5,null)),React__default.default.createElement(index$6.PointCloudOperation,null)):t===ToolType.EToolName.ScribbleTool?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},m,n),l):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$8=require("./AnnotationText/index.js"),index$2=require("./ClearIcon/index.js"),index$6=require("./GeneralOperation/index.js"),index$3=require("./ImgAttributeInfo/index.js"),index$7=require("./SwitchAttributeList/index.js"),index$1=require("./TagSidebar/index.js"),index$4=require("./TextToolSidebar/index.js"),index$5=require("./PointCloudToolSidebar/index.js"),index$a=require("./ToolStyle/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),index$9=require("./ScribbleSidebar/index.js"),ToolIcons=require("./ToolIcons.js"),ctx=require("../../../store/ctx.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`,Sidebar=({sider:e,enableColorPicker:E})=>{const r=ctx.useSelector(a=>StepUtils.getCurrentStepInfo(a.annotation.step,a.annotation.stepList)),t=r==null?void 0:r.tool,{t:i}=reactI18next.useTranslation();if(!t)return null;const x=a=>{const f=React__default.default.createElement(index$a,null);return React__default.default.createElement(Panel,{header:i("Style"),className:"panel",key:a},f)},u=React__default.default.createElement(ToolIcons.ToolIcons,{toolName:t,onChange:()=>{}}),n=React__default.default.createElement(index$7,null),d=React__default.default.createElement(index$8,null),c=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},x("1")),s=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,i("Adjust"),React__default.default.createElement(index$2,null)),className:"panel",key:"imgAttribute"},React__default.default.createElement(index$3,null))),l=React__default.default.createElement(index$6.default,null),v=React__default.default.createElement(index$1.default,null),p=React__default.default.createElement(index$4.default,null),m=React__default.default.createElement(index$9,{onChange:(a,f)=>{}}),o=React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`}),T=React__default.default.createElement(index$5,{enableColorPicker:E}),b=React__default.default.createElement(index$6.PointCloudOperation,null);return e?typeof e=="function"?React__default.default.createElement("div",{className:`${sidebarCls}`},e({toolIcon:u,attributeList:n,annotationText:d,toolStyle:c,imageAttributeInfo:s,operation:l,tagToolSideBar:v,textToolSideBar:p,horizontal:o,pointCloudToolSidebar:T,pointCloudOperation:b,scribbleSidebar:m})):e:[ToolType.EToolName.Rect,ToolType.EToolName.Point,ToolType.EToolName.Line,ToolType.EToolName.Rect,ToolType.EToolName.Polygon,ToolType.EToolName.Cuboid].includes(t)?React__default.default.createElement("div",{className:`${sidebarCls}`},u,o,n,d,o,React__default.default.createElement("div",{className:`${sidebarCls}__content`},c,s),l):t===ToolType.EToolName.Tag?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$1.default,null)):t===EVideoToolName.VideoTagTool?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$1.default,null)),l):t===ToolType.EToolName.Text?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$4.default,null)):t===EPointCloudName.PointCloud?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$5,null)),React__default.default.createElement(index$6.PointCloudOperation,null)):t===ToolType.EToolName.ScribbleTool?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},m,n),l):null};exports.default=Sidebar,exports.sidebarCls=sidebarCls;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),React=require("react"),selectors=require("../../../../store/annotation/selectors.js"),ctx=require("../../../../store/ctx.js"),lbUtils=require("@labelbee/lb-utils"),icons=require("@ant-design/icons"),useHistory=require("../../../../components/pointCloudView/hooks/useHistory.js"),dom=require("../../../../utils/dom.js"),StepUtils=require("../../../../utils/StepUtils.js"),lbAnnotation=require("@labelbee/lb-annotation"),reactI18next=require("react-i18next"),FooterPopover=require("../FooterPopover.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,n,t)=>n in e?__defProp(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,__spreadValues=(e,n)=>{for(var t in n||(n={}))__hasOwnProp.call(n,t)&&__defNormalProp(e,t,n[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(n))__propIsEnum.call(n,t)&&__defNormalProp(e,t,n[t]);return e},__spreadProps=(e,n)=>__defProps(e,__getOwnPropDescs(n));const AnnotatedAttributesItem=({attribute:e})=>{const n=React.useContext(PointCloudContext.PointCloudContext),{pointCloudBoxList:t,pointCloudSphereList:a,hideAttributes:s,toggleAttributesVisible:u,polygonList:o,setPolygonList:p,lineList:c,setLineList:i,setPointCloudResult:x,setPointCloudSphereList:y,reRender:b,selectSpecAttr:L}=n,[f,E]=React.useState(!0),{pushHistoryWithList:A}=useHistory.useHistory(),v=[...t,...o,...a,...c].filter(l=>l.attribute===e.value),g=()=>{u(e.value)},h=s.includes(e.value),_=({trackID:l,order:r})=>l||r,N=({trackID:l,order:r})=>l?`trackID_${l}`:`order_${r}`,O=l=>{if(v.length===0)return;const r=o.filter(d=>l!==d.attribute),m=t.filter(d=>l!==d.attribute),C=c.filter(d=>l!==d.attribute),P=a.filter(d=>l!==d.attribute);b(m,r,P,C),p(r),x(m),y(P),i(C),A({pointCloudBoxList:m,polygonList:r,lineList:C})},F=l=>{antd.Modal.confirm({content:lbUtils.i18n.t("onDeleteGraphByAttr",{attribute:l.key}),onOk:()=>{O(l.value)},okText:lbUtils.i18n.t("Confirm"),cancelText:lbUtils.i18n.t("Cancel")})};return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute","item")},h?React__default.default.createElement(icons.EyeInvisibleFilled,{onClick:g}):React__default.default.createElement(icons.EyeFilled,{onClick:g}),React__default.default.createElement(icons.CaretDownFilled,{rotate:f?0:270,onClick:()=>{E(!f)}}),React__default.default.createElement("span",{className:dom.getClassName("annotated-attribute","item","text"),onClick:()=>{L(e.value)}},e.key),React__default.default.createElement(icons.DeleteOutlined,{onClick:()=>F(e)})),f&&v.map((l,r)=>React__default.default.createElement("div",{key:N(__spreadProps(__spreadValues({},l),{order:r})),style:{paddingLeft:54}},`${_(__spreadProps(__spreadValues({},l),{order:r}))}.${e.key}`)))},AnnotatedAttributesPanel=()=>{const e=ctx.useSelector(selectors.stepConfigSelector),{attrPanelLayout:n,setAttrPanelLayout:t,pointCloudBoxList:a,polygonList:s,lineList:u}=React.useContext(PointCloudContext.PointCloudContext),{t:o}=reactI18next.useTranslation(),p=React.useMemo(()=>[...a,...s,...u].map(i=>i.attribute),[a,s,u]),c=React.useMemo(()=>e.attributeList.filter(i=>p.includes(i.value)),[p]);return React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute")},n?React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute","text")},React__default.default.createElement("span",null,o("AnnotatedResult")),React__default.default.createElement("span",{className:dom.getClassName("annotated-attribute","pin"),onClick:()=>{t("")}},React__default.default.createElement(icons.PushpinFilled,null),o("CancelFixed"))):React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute","text")},React__default.default.createElement("span",{onClick:()=>{t("left")},className:dom.getClassName("annotated-attribute","pin")},React__default.default.createElement(icons.PushpinFilled,null),o("FixedOnLeft")),React__default.default.createElement("span",{onClick:()=>{t("right")},className:dom.getClassName("annotated-attribute","pin")},React__default.default.createElement(icons.PushpinFilled,null),o("FixedOnRight"))),React__default.default.createElement("div",null,c.length>0?c.map(i=>React__default.default.createElement(AnnotatedAttributesItem,{attribute:i,key:i.value})):React__default.default.createElement("div",{style:{textAlign:"center",height:200,lineHeight:"200px"}},o("NoData"))))},AnnotatedAttributesPanelFixedLeft=()=>{const{attrPanelLayout:e}=React.useContext(PointCloudContext.PointCloudContext);return e==="left"?React__default.default.createElement(AnnotatedAttributesPanel,null):null},AnnotatedAttributesPanelFixedRight=()=>{const{attrPanelLayout:e}=React.useContext(PointCloudContext.PointCloudContext);return e==="right"?React__default.default.createElement(AnnotatedAttributesPanel,null):null},AnnotatedAttributesIcon=()=>{const{attrPanelLayout:e}=React.useContext(PointCloudContext.PointCloudContext),{t:n}=reactI18next.useTranslation(),t=ctx.useSelector(a=>{var s,u;return StepUtils.getCurrentStepInfo((s=a==null?void 0:a.annotation)==null?void 0:s.step,(u=a.annotation)==null?void 0:u.stepList)});return(t==null?void 0:t.tool)!==lbAnnotation.EPointCloudName.PointCloud||e?null:React__default.default.createElement(FooterPopover,{hoverIcon:React__default.default.createElement(icons.UnorderedListOutlined,{style:{marginRight:4}}),icon:React__default.default.createElement(icons.UnorderedListOutlined,{style:{marginRight:4}}),title:n("AnnotatedList"),content:React__default.default.createElement(AnnotatedAttributesPanel,null)})};exports.AnnotatedAttributesIcon=AnnotatedAttributesIcon,exports.AnnotatedAttributesPanel=AnnotatedAttributesPanel,exports.AnnotatedAttributesPanelFixedLeft=AnnotatedAttributesPanelFixedLeft,exports.AnnotatedAttributesPanelFixedRight=AnnotatedAttributesPanelFixedRight;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),React=require("react"),selectors=require("../../../../store/annotation/selectors.js"),ctx=require("../../../../store/ctx.js"),lbUtils=require("@labelbee/lb-utils"),icons=require("@ant-design/icons"),useHistory=require("../../../../components/pointCloudView/hooks/useHistory.js"),dom=require("../../../../utils/dom.js"),StepUtils=require("../../../../utils/StepUtils.js"),lbAnnotation=require("@labelbee/lb-annotation"),reactI18next=require("react-i18next"),FooterPopover=require("../FooterPopover.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,n,t)=>n in e?__defProp(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,__spreadValues=(e,n)=>{for(var t in n||(n={}))__hasOwnProp.call(n,t)&&__defNormalProp(e,t,n[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(n))__propIsEnum.call(n,t)&&__defNormalProp(e,t,n[t]);return e},__spreadProps=(e,n)=>__defProps(e,__getOwnPropDescs(n));const AnnotatedAttributesItem=({attribute:e})=>{const n=React.useContext(PointCloudContext.PointCloudContext),{pointCloudBoxList:t,pointCloudSphereList:o,hideAttributes:i,toggleAttributesVisible:s,polygonList:c,setPolygonList:u,lineList:p,setLineList:f,setPointCloudResult:a,setPointCloudSphereList:y,reRender:L,selectSpecAttr:b}=n,[m,E]=React.useState(!0),{pushHistoryWithList:A}=useHistory.useHistory(),P=[...t,...c,...o,...p].filter(l=>l.attribute===e.value),x=()=>{s(e.value)},h=i.includes(e.value),_=({trackID:l,order:r})=>l||r,N=({trackID:l,order:r})=>l?`trackID_${l}`:`order_${r}`,O=l=>{if(P.length===0)return;const r=c.filter(d=>l!==d.attribute),C=t.filter(d=>l!==d.attribute),v=p.filter(d=>l!==d.attribute),g=o.filter(d=>l!==d.attribute);L(C,r,g,v),u(r),a(C),y(g),f(v),A({pointCloudBoxList:C,polygonList:r,lineList:v,pointCloudSphereList:g})},F=l=>{antd.Modal.confirm({content:lbUtils.i18n.t("onDeleteGraphByAttr",{attribute:l.key}),onOk:()=>{O(l.value)},okText:lbUtils.i18n.t("Confirm"),cancelText:lbUtils.i18n.t("Cancel")})};return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute","item")},h?React__default.default.createElement(icons.EyeInvisibleFilled,{onClick:x}):React__default.default.createElement(icons.EyeFilled,{onClick:x}),React__default.default.createElement(icons.CaretDownFilled,{rotate:m?0:270,onClick:()=>{E(!m)}}),React__default.default.createElement("span",{className:dom.getClassName("annotated-attribute","item","text"),onClick:()=>{b(e.value)}},e.key),React__default.default.createElement(icons.DeleteOutlined,{onClick:()=>F(e)})),m&&P.map((l,r)=>React__default.default.createElement("div",{key:N(__spreadProps(__spreadValues({},l),{order:r})),style:{paddingLeft:54}},`${_(__spreadProps(__spreadValues({},l),{order:r}))}.${e.key}`)))},AnnotatedAttributesPanel=()=>{const e=ctx.useSelector(selectors.stepConfigSelector),{attrPanelLayout:n,setAttrPanelLayout:t,pointCloudBoxList:o,pointCloudSphereList:i,polygonList:s,lineList:c}=React.useContext(PointCloudContext.PointCloudContext),{t:u}=reactI18next.useTranslation(),p=React.useMemo(()=>[...o,...i,...s,...c].map(a=>a.attribute),[o,i,s,c]),f=React.useMemo(()=>e.attributeList.filter(a=>p.includes(a.value)),[p]);return React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute")},n?React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute","text")},React__default.default.createElement("span",null,u("AnnotatedResult")),React__default.default.createElement("span",{className:dom.getClassName("annotated-attribute","pin"),onClick:()=>{t("")}},React__default.default.createElement(icons.PushpinFilled,null),u("CancelFixed"))):React__default.default.createElement("div",{className:dom.getClassName("annotated-attribute","text")},React__default.default.createElement("span",{onClick:()=>{t("left")},className:dom.getClassName("annotated-attribute","pin")},React__default.default.createElement(icons.PushpinFilled,null),u("FixedOnLeft")),React__default.default.createElement("span",{onClick:()=>{t("right")},className:dom.getClassName("annotated-attribute","pin")},React__default.default.createElement(icons.PushpinFilled,null),u("FixedOnRight"))),React__default.default.createElement("div",null,f.length>0?f.map(a=>React__default.default.createElement(AnnotatedAttributesItem,{attribute:a,key:a.value})):React__default.default.createElement("div",{style:{textAlign:"center",height:200,lineHeight:"200px"}},u("NoData"))))},AnnotatedAttributesPanelFixedLeft=()=>{const{attrPanelLayout:e}=React.useContext(PointCloudContext.PointCloudContext);return e==="left"?React__default.default.createElement(AnnotatedAttributesPanel,null):null},AnnotatedAttributesPanelFixedRight=()=>{const{attrPanelLayout:e}=React.useContext(PointCloudContext.PointCloudContext);return e==="right"?React__default.default.createElement(AnnotatedAttributesPanel,null):null},AnnotatedAttributesIcon=()=>{const{attrPanelLayout:e}=React.useContext(PointCloudContext.PointCloudContext),{t:n}=reactI18next.useTranslation(),t=ctx.useSelector(o=>{var i,s;return StepUtils.getCurrentStepInfo((i=o==null?void 0:o.annotation)==null?void 0:i.step,(s=o.annotation)==null?void 0:s.stepList)});return(t==null?void 0:t.tool)!==lbAnnotation.EPointCloudName.PointCloud||e?null:React__default.default.createElement(FooterPopover,{hoverIcon:React__default.default.createElement(icons.UnorderedListOutlined,{style:{marginRight:4}}),icon:React__default.default.createElement(icons.UnorderedListOutlined,{style:{marginRight:4}}),title:n("AnnotatedList"),content:React__default.default.createElement(AnnotatedAttributesPanel,null)})};exports.AnnotatedAttributesIcon=AnnotatedAttributesIcon,exports.AnnotatedAttributesPanel=AnnotatedAttributesPanel,exports.AnnotatedAttributesPanelFixedLeft=AnnotatedAttributesPanelFixedLeft,exports.AnnotatedAttributesPanelFixedRight=AnnotatedAttributesPanelFixedRight;
package/es/App.js CHANGED
@@ -1 +1 @@
1
- import x from"./views/MainView/index.js";import{i18n as o}from"@labelbee/lb-utils";import I,{useState as E,useEffect as s}from"react";import{connect as F}from"react-redux";import{store as n}from"./index.js";import{LabelBeeContext as N}from"./store/ctx.js";import{ANNOTATION_ACTIONS as D}from"./store/Actions.js";import{InitTaskData as U,InitAnnotationState as M,UpdateInjectFunc as z,UpdateProcessingStep as R,loadImgList as V}from"./store/annotation/actionCreators.js";import{LoadFileAndFileData as L}from"./store/annotation/reducer.js";import{ConfigProvider as B}from"antd/es";import k from"antd/es/locale/zh_CN";import G from"antd/es/locale/en_US";var $=Object.defineProperty,q=Object.defineProperties,H=Object.getOwnPropertyDescriptors,j=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,C=(e,t,a)=>t in e?$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,Q=(e,t)=>{for(var a in t||(t={}))J.call(t,a)&&C(e,a,t[a]);if(j)for(var a of j(t))K.call(t,a)&&C(e,a,t[a]);return e},W=(e,t)=>q(e,H(t));const X=e=>{const[t,a]=E(0),{imgList:c,step:p=1,stepList:l,onSubmit:d,onSave:f,onPageChange:g,onStepChange:m,initialIndex:u=0,toolInstance:O,setToolInstance:S,getFileData:_,pageSize:h=10,loadFileList:r,defaultLang:P="cn",skipBeforePageTurning:b,beforeRotate:v,checkMode:w=!1,intelligentFit:y=!0}=e;s(()=>{n.dispatch(U({onSubmit:d,stepList:l,step:p,getFileData:_,pageSize:h,loadFileList:r,onSave:f,onPageChange:g,onStepChange:m,skipBeforePageTurning:b,beforeRotate:v,checkMode:w})),A(),o.changeLanguage(P);const i=()=>{a(T=>T+1)};return o.on("languageChanged",i),()=>{o.off("languageChanged",i),M(n.dispatch)}},[]),s(()=>{n.dispatch(z({onSubmit:d,stepList:l,getFileData:_,pageSize:h,loadFileList:r,onSave:f,onPageChange:g,onStepChange:m,beforeRotate:v})),o.changeLanguage(P)},[d,l,_,h,r,f,g,m,P,v]),s(()=>{n.dispatch(R(p))},[p]),s(()=>{S==null||S(O)},[O]);const A=()=>{r?V(n.dispatch,n.getState,u,!0).then(i=>{i&&n.dispatch(L(u))}):c&&c.length>0&&(n.dispatch({type:D.UPDATE_IMG_LIST,payload:{imgList:c}}),n.dispatch(L(u)))};return I.createElement("div",null,I.createElement(B,{locale:o.language==="en"?G:k},I.createElement(x,W(Q({},e),{intelligentFit:y}))))},Y=e=>({toolInstance:e.annotation.toolInstance});var Z=F(Y,null,null,{context:N})(X);export{Z as default};
1
+ import x from"./views/MainView/index.js";import{i18n as o}from"@labelbee/lb-utils";import P,{useState as E,useEffect as v}from"react";import{connect as F}from"react-redux";import{store as n}from"./index.js";import{LabelBeeContext as N}from"./store/ctx.js";import{ANNOTATION_ACTIONS as D}from"./store/Actions.js";import{InitTaskData as M,InitAnnotationState as U,UpdateInjectFunc as z,loadImgList as R}from"./store/annotation/actionCreators.js";import{LoadFileAndFileData as S}from"./store/annotation/reducer.js";import{ConfigProvider as V}from"antd/es";import B from"antd/es/locale/zh_CN";import k from"antd/es/locale/en_US";var G=Object.defineProperty,$=Object.defineProperties,q=Object.getOwnPropertyDescriptors,L=Object.getOwnPropertySymbols,H=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable,j=(e,t,a)=>t in e?G(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,K=(e,t)=>{for(var a in t||(t={}))H.call(t,a)&&j(e,a,t[a]);if(L)for(var a of L(t))J.call(t,a)&&j(e,a,t[a]);return e},Q=(e,t)=>$(e,q(t));const W=e=>{const[t,a]=E(0),{imgList:s,step:C=1,stepList:l,onSubmit:c,onSave:p,onPageChange:d,onStepChange:f,initialIndex:m=0,toolInstance:I,setToolInstance:O,getFileData:g,pageSize:u=10,loadFileList:r,defaultLang:_="cn",skipBeforePageTurning:b,beforeRotate:h,checkMode:w=!1,intelligentFit:y=!0}=e;v(()=>{n.dispatch(M({onSubmit:c,stepList:l,step:C,getFileData:g,pageSize:u,loadFileList:r,onSave:p,onPageChange:d,onStepChange:f,skipBeforePageTurning:b,beforeRotate:h,checkMode:w})),A(),o.changeLanguage(_);const i=()=>{a(T=>T+1)};return o.on("languageChanged",i),()=>{o.off("languageChanged",i),U(n.dispatch)}},[]),v(()=>{n.dispatch(z({onSubmit:c,stepList:l,getFileData:g,pageSize:u,loadFileList:r,onSave:p,onPageChange:d,onStepChange:f,beforeRotate:h})),o.changeLanguage(_)},[c,l,g,u,r,p,d,f,_,h]),v(()=>{O==null||O(I)},[I]);const A=()=>{r?R(n.dispatch,n.getState,m,!0).then(i=>{i&&n.dispatch(S(m))}):s&&s.length>0&&(n.dispatch({type:D.UPDATE_IMG_LIST,payload:{imgList:s}}),n.dispatch(S(m)))};return P.createElement("div",null,P.createElement(V,{locale:o.language==="en"?k:B},P.createElement(x,Q(K({},e),{intelligentFit:y}))))},X=e=>({toolInstance:e.annotation.toolInstance});var Y=F(X,null,null,{context:N})(W);export{Y as default};
@@ -1 +1 @@
1
- import{COLORS_ARRAY as n,NULL_COLOR as g}from"../../data/Style.js";import{ColorTag as R}from"../colorTag/index.js";import{Radio as f}from"antd/es";import l from"react";const c=[g].concat(n),v=l.forwardRef((e,d)=>{const s=l.useRef(),b=e.list||[];let o=[...c];e.forbidDefault===!0&&(o=o.slice(1));let i="sensebee-radio-group";return e.noHeightLimit&&(i="sensebee-radio-group-no-limit-height"),l.createElement("div",{className:i,style:e.style},l.createElement(f.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:d},b.map((t,r)=>{var u;let a=(u=e==null?void 0:e.num)!=null?u:r;e.forbidDefault===!0&&typeof a=="number"&&a++,typeof a=="number"&&a<=9&&a>=0||(a="-");let m=r>8&&!e.forbidDefault?n[(r-1)%n.length]:o[r%o.length];return(t==null?void 0:t.color)&&(m=t.color),l.createElement(f,{value:t.value,ref:s,key:r},l.createElement("span",{className:"sensebee-radio-label",title:t.label},!(e==null?void 0:e.forbidColor)&&l.createElement(R,{color:m,style:{marginRight:"8px"}}),t.label),l.createElement("span",{className:"sensebee-radio-num"},a))})))});export{c as ATTRIBUTE_COLORS,v as default};
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};
@@ -1 +1 @@
1
- import M,{useState as o,useRef as lt,useMemo as N,useEffect as dt}from"react";import{ActionsHistory as T,EToolName as j}from"@labelbee/lb-annotation";const z=M.createContext({pointCloudBoxList:[],pointCloudSphereList:[],displayPointCloudList:[],displaySphereList:[],polygonList:[],lineList:[],selectedID:"",selectedIDs:[],valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudSphereList:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>[],addPointCloudSphere:()=>[],setPolygonList:()=>{},setLineList:()=>{},zoom:1,setZoom:()=>{},history:new T,hideAttributes:[],setHideAttributes:()=>{},toggleAttributesVisible:()=>{},reRender:()=>{},setAttrPanelLayout:()=>{},attrPanelLayout:"",syncAllViewPointCloudColor:()=>{},defaultAttribute:"",setDefaultAttribute:()=>{},pointCloudPattern:j.Rect,setPointCloudPattern:()=>{},selectSpecAttr:()=>{}}),rt=({children:F})=>{const[d,h]=o([]),[a,m]=o([]),[f,Z]=o([]),[L,q]=o([]),[r,A]=o([]),[y,G]=o(!0),[w,J]=o(1),[i,K]=o(),[I,Q]=o(),[V,U]=o(),[n,W]=o(),[g,X]=o(""),[x,Y]=o(j.Rect),$=lt(new T).current,[l,v]=o([]),[B,_]=o(""),R=N(()=>r.length===1?r[0]:"",[r]),D=N(()=>{const c=d.find(t=>t.id===R),S=t=>{const e=d.concat(t);return h(e),e},b=t=>{const e=a.concat(t);return m(e),e},P=t=>{G(t!==!1)},s=t=>{t===void 0&&A([]),typeof t=="string"&&A([t]),Array.isArray(t)&&A(Array.from(new Set(t)))},et=t=>{r.includes(t)?s(r.filter(e=>e!==t)):s([...r,t])},ot=()=>{s(d.map(t=>t.id))},nt=t=>{s(d.filter(e=>e.attribute===t).map(e=>e.id))},E=d.filter(t=>!l.includes(t.attribute)),H=a.filter(t=>!l.includes(t.attribute)),it=t=>{if(l.includes(t))v(l.filter(e=>e!==t));else{const e=l.concat(t);v(e)}},st=(t=E,e=f,C=H,p=L)=>{d.forEach(u=>{n==null||n.removeObjectByName(u.id)}),a.forEach(u=>{n==null||n.removeObjectByName(u.id)}),i==null||i.updatePolygonList(t,e),i==null||i.updatePointList(C),i==null||i.updateLineList(p),n==null||n.generateBoxes(t),n==null||n.generateSpheres(C),O(t)},O=t=>{const e=n==null?void 0:n.highlightOriginPointCloud(t);return new Promise(C=>{e==null||e.then(p=>{[i].forEach(u=>{var k;p&&((k=u==null?void 0:u.pointCloudInstance)==null||k.updateColor(p),C({color:p}))})})})};return{selectedID:R,pointCloudBoxList:d,pointCloudSphereList:a,displayPointCloudList:E,displaySphereList:H,selectedIDs:r,setPointCloudResult:h,setSelectedIDs:s,addPointCloudBox:S,addPointCloudSphere:b,setPointCloudSphereList:m,valid:y,selectedPointCloudBox:c,setPointCloudValid:P,addSelectedID:et,selectedAllBoxes:ot,topViewInstance:i,setTopViewInstance:K,sideViewInstance:I,setSideViewInstance:Q,backViewInstance:V,setBackViewInstance:U,mainViewInstance:n,setMainViewInstance:W,polygonList:f,setPolygonList:Z,lineList:L,setLineList:q,zoom:w,setZoom:J,history:$,toggleAttributesVisible:it,hideAttributes:l,setHideAttributes:v,reRender:st,attrPanelLayout:B,setAttrPanelLayout:_,syncAllViewPointCloudColor:O,defaultAttribute:g,setDefaultAttribute:X,pointCloudPattern:x,setPointCloudPattern:Y,selectSpecAttr:nt}},[y,r,d,a,f,L,i,I,V,n,w,l,B,g,x]),tt=()=>{const c=d.filter(s=>l.includes(s.attribute)),{setSelectedIDs:S,reRender:b}=D,P=c.map(s=>s.id);P.length>0&&S(r.filter(s=>!P.includes(s))),b()};return dt(()=>{var c;tt(),(c=i==null?void 0:i.pointCloud2dOperation)==null||c.setHiddenAttributes(l)},[l]),M.createElement(z.Provider,{value:D},F)};export{z as PointCloudContext,rt as PointCloudProvider};
1
+ import T,{useState as o,useRef as dt,useMemo as j,useEffect as rt}from"react";import{ActionsHistory as z,EToolName as h}from"@labelbee/lb-annotation";const F=T.createContext({pointCloudBoxList:[],pointCloudSphereList:[],displayPointCloudList:[],displaySphereList:[],displayLineList:[],polygonList:[],lineList:[],selectedID:"",selectedIDs:[],valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudSphereList:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>[],addPointCloudSphere:()=>[],setPolygonList:()=>{},setLineList:()=>{},zoom:1,setZoom:()=>{},history:new z,hideAttributes:[],setHideAttributes:()=>{},toggleAttributesVisible:()=>{},reRender:()=>{},setAttrPanelLayout:()=>{},attrPanelLayout:"",syncAllViewPointCloudColor:()=>{},defaultAttribute:"",setDefaultAttribute:()=>{},pointCloudPattern:h.Rect,setPointCloudPattern:()=>{},selectSpecAttr:()=>{}}),ct=({children:Z})=>{const[d,m]=o([]),[a,w]=o([]),[P,q]=o([]),[L,G]=o([]),[r,b]=o([]),[I,J]=o(!0),[V,K]=o(1),[n,Q]=o(),[g,U]=o(),[x,W]=o(),[i,X]=o(),[B,Y]=o(""),[v,$]=o(h.Rect),_=dt(new z).current,[s,A]=o([]),[R,tt]=o(""),D=j(()=>r.length===1?r[0]:"",[r]),E=j(()=>{const c=d.find(t=>t.id===D),S=t=>{const e=d.concat(t);return m(e),e},y=t=>{const e=a.concat(t);return w(e),e},f=t=>{J(t!==!1)},l=t=>{t===void 0&&b([]),typeof t=="string"&&b([t]),Array.isArray(t)&&b(Array.from(new Set(t)))},ot=t=>{r.includes(t)?l(r.filter(e=>e!==t)):l([...r,t])},nt=()=>{if(v===h.Rect){const t=d.map(e=>e.id);l(t),n==null||n.pointCloud2dOperation.setSelectedIDs(t)}},it=t=>{l(d.filter(e=>e.attribute===t).map(e=>e.id))},H=d.filter(t=>!s.includes(t.attribute)),O=a.filter(t=>!s.includes(t.attribute)),k=L.filter(t=>t.attribute&&!s.includes(t.attribute)),st=t=>{if(s.includes(t))A(s.filter(e=>e!==t));else{const e=s.concat(t);A(e)}},lt=(t=H,e=P,C=O,p=k)=>{d.forEach(u=>{i==null||i.removeObjectByName(u.id)}),a.forEach(u=>{i==null||i.removeObjectByName(u.id)}),n==null||n.updatePolygonList(t,e),n==null||n.updatePointList(C),n==null||n.updateLineList(p),i==null||i.generateBoxes(t),i==null||i.generateSpheres(C),M(t)},M=t=>{const e=i==null?void 0:i.highlightOriginPointCloud(t);return new Promise(C=>{e==null||e.then(p=>{[n].forEach(u=>{var N;p&&((N=u==null?void 0:u.pointCloudInstance)==null||N.updateColor(p),C({color:p}))})})})};return{selectedID:D,pointCloudBoxList:d,pointCloudSphereList:a,displayPointCloudList:H,displaySphereList:O,displayLineList:k,selectedIDs:r,setPointCloudResult:m,setSelectedIDs:l,addPointCloudBox:S,addPointCloudSphere:y,setPointCloudSphereList:w,valid:I,selectedPointCloudBox:c,setPointCloudValid:f,addSelectedID:ot,selectedAllBoxes:nt,topViewInstance:n,setTopViewInstance:Q,sideViewInstance:g,setSideViewInstance:U,backViewInstance:x,setBackViewInstance:W,mainViewInstance:i,setMainViewInstance:X,polygonList:P,setPolygonList:q,lineList:L,setLineList:G,zoom:V,setZoom:K,history:_,toggleAttributesVisible:st,hideAttributes:s,setHideAttributes:A,reRender:lt,attrPanelLayout:R,setAttrPanelLayout:tt,syncAllViewPointCloudColor:M,defaultAttribute:B,setDefaultAttribute:Y,pointCloudPattern:v,setPointCloudPattern:$,selectSpecAttr:it}},[I,r,d,a,P,L,n,g,x,i,V,s,R,B,v]),et=()=>{const c=d.filter(l=>s.includes(l.attribute)),{setSelectedIDs:S,reRender:y}=E,f=c.map(l=>l.id);f.length>0&&S(r.filter(l=>!f.includes(l))),y()};return rt(()=>{var c;et(),(c=n==null?void 0:n.pointCloud2dOperation)==null||c.setHiddenAttributes(s)},[s]),T.createElement(F.Provider,{value:E},Z)};export{F as PointCloudContext,ct as PointCloudProvider};