@labelbee/lb-components 1.20.0-alpha.9 → 1.20.0
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/audioAnnotate/textInput/index.js +1 -1
- package/dist/components/videoAnnotate/index.js +1 -1
- package/dist/components/videoPlayer/TagToolInstanceAdaptor.js +1 -0
- package/dist/components/videoPlayer/VideoTagLayer.js +1 -1
- package/dist/components/videoPlayer/components/controller/index.js +1 -1
- package/dist/components/videoPlayer/index.js +1 -1
- package/dist/components/videoPlayer/utils.js +1 -1
- package/dist/index.css +2 -261
- package/dist/index.js +1 -1
- package/dist/store/annotation/reducer.js +1 -1
- package/dist/types/App.d.ts +2 -2
- package/dist/types/components/audioAnnotate/index.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloud2DView.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloud3DView.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudBackView.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudListener.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudSegment.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudSegment2DView.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudSegmentListener.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudSideView.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudTopView.d.ts +3 -3
- package/dist/types/components/pointCloudView/index.d.ts +3 -3
- package/dist/types/components/videoAnnotate/index.d.ts +7 -18
- package/dist/types/components/{videoAnnotate/videoTagTool → videoPlayer}/TagToolInstanceAdaptor.d.ts +10 -6
- package/dist/types/components/videoPlayer/VideoTagLayer.d.ts +0 -1
- package/dist/types/components/videoPlayer/components/controller/index.d.ts +2 -4
- package/dist/types/components/videoPlayer/index.d.ts +0 -11
- package/dist/types/components/videoPlayer/utils.d.ts +0 -6
- package/dist/types/index.d.ts +1 -1
- package/dist/types/views/MainView/sidebar/TextToolSidebar/index.d.ts +1 -2
- package/dist/utils/audio.js +1 -1
- package/dist/views/MainView/LLMLayout/index.js +1 -1
- package/dist/views/MainView/index.js +1 -1
- package/dist/views/MainView/sidebar/TextToolSidebar/index.js +1 -1
- package/dist/views/MainView/sidebar/index.js +1 -1
- package/es/components/audioAnnotate/textInput/index.js +1 -1
- package/es/components/videoAnnotate/index.js +1 -1
- package/es/components/videoPlayer/TagToolInstanceAdaptor.js +1 -0
- package/es/components/videoPlayer/VideoTagLayer.js +1 -1
- package/es/components/videoPlayer/components/controller/index.js +1 -1
- package/es/components/videoPlayer/index.js +1 -1
- package/es/components/videoPlayer/utils.js +1 -1
- package/es/index.css +2 -261
- package/es/index.js +1 -1
- package/es/store/annotation/reducer.js +1 -1
- package/es/utils/audio.js +1 -1
- package/es/views/MainView/index.js +1 -1
- package/es/views/MainView/sidebar/TextToolSidebar/index.js +1 -1
- package/es/views/MainView/sidebar/index.js +1 -1
- package/package.json +4 -6
- package/dist/assets/annotation/video/icon_timePoint.svg.js +0 -1
- package/dist/assets/annotation/video/icon_videoCut.svg.js +0 -1
- package/dist/assets/annotation/video/icon_videoCutting.svg.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/VideoClipToolContext.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/ToolTipForClip.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/annotatedList/index.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/annotatedList/index.module.scss.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/resizableSnippet/index.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/resizableSnippet/index.module.scss.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/timeSliceRange/index.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/timeSliceRange/index.module.scss.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/videoClipToolHotkey/index.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/videoClipToolHotkey/index.module.scss.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.module.scss.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/videoTrack/index.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/components/videoTrack/index.module.scss.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/constant.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/index.js +0 -1
- package/dist/components/videoAnnotate/videoClipTool/index.module.scss.js +0 -1
- package/dist/components/videoAnnotate/videoTagTool/TagToolInstanceAdaptor.js +0 -1
- package/dist/components/videoAnnotate/videoTextTool/index.js +0 -1
- package/dist/components/videoPlayer/VideoTextLayer.js +0 -2
- package/dist/types/components/videoAnnotate/videoClipTool/VideoClipToolContext.d.ts +0 -27
- package/dist/types/components/videoAnnotate/videoClipTool/components/ToolTipForClip.d.ts +0 -8
- package/dist/types/components/videoAnnotate/videoClipTool/components/annotatedList/index.d.ts +0 -7
- package/dist/types/components/videoAnnotate/videoClipTool/components/resizableSnippet/index.d.ts +0 -14
- package/dist/types/components/videoAnnotate/videoClipTool/components/timeSliceRange/index.d.ts +0 -18
- package/dist/types/components/videoAnnotate/videoClipTool/components/videoClipToolHotkey/index.d.ts +0 -6
- package/dist/types/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.d.ts +0 -3
- package/dist/types/components/videoAnnotate/videoClipTool/components/videoTrack/index.d.ts +0 -11
- package/dist/types/components/videoAnnotate/videoClipTool/constant.d.ts +0 -26
- package/dist/types/components/videoAnnotate/videoClipTool/index.d.ts +0 -131
- package/dist/types/components/videoAnnotate/videoTextTool/index.d.ts +0 -56
- package/dist/types/components/videoPlayer/VideoTextLayer.d.ts +0 -2
- package/es/assets/annotation/video/icon_timePoint.svg.js +0 -1
- package/es/assets/annotation/video/icon_videoCut.svg.js +0 -1
- package/es/assets/annotation/video/icon_videoCutting.svg.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/VideoClipToolContext.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/ToolTipForClip.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/annotatedList/index.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/annotatedList/index.module.scss.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/resizableSnippet/index.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/resizableSnippet/index.module.scss.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/timeSliceRange/index.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/timeSliceRange/index.module.scss.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/videoClipToolHotkey/index.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/videoClipToolHotkey/index.module.scss.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.module.scss.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/videoTrack/index.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/components/videoTrack/index.module.scss.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/constant.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/index.js +0 -1
- package/es/components/videoAnnotate/videoClipTool/index.module.scss.js +0 -1
- package/es/components/videoAnnotate/videoTagTool/TagToolInstanceAdaptor.js +0 -1
- package/es/components/videoAnnotate/videoTextTool/index.js +0 -1
- package/es/components/videoPlayer/VideoTextLayer.js +0 -2
- /package/dist/components/{videoAnnotate/videoTagTool → videoPlayer}/TagToolInstanceAdaptorI18nProvider.js +0 -0
- /package/dist/types/components/{videoAnnotate/videoTagTool → videoPlayer}/TagToolInstanceAdaptorI18nProvider.d.ts +0 -0
- /package/es/components/{videoAnnotate/videoTagTool → videoPlayer}/TagToolInstanceAdaptorI18nProvider.js +0 -0
|
@@ -5,5 +5,5 @@ interface IProps extends IA2MapStateProps {
|
|
|
5
5
|
}
|
|
6
6
|
declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
|
|
7
7
|
children?: React.ReactNode;
|
|
8
|
-
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "
|
|
8
|
+
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "currentData" | "stepInfo" | "configString">>;
|
|
9
9
|
export default _default;
|
|
@@ -3,5 +3,5 @@ import React from 'react';
|
|
|
3
3
|
interface IProps extends IA2MapStateProps {
|
|
4
4
|
checkMode?: boolean;
|
|
5
5
|
}
|
|
6
|
-
declare const _default: import("react-redux").ConnectedComponent<({ currentData, highlightAttribute }: IProps) => React.JSX.Element | null, import("react-redux").Omit<IProps, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "
|
|
6
|
+
declare const _default: import("react-redux").ConnectedComponent<({ currentData, highlightAttribute }: IProps) => React.JSX.Element | null, import("react-redux").Omit<IProps, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "currentData" | "stepInfo" | "configString">>;
|
|
7
7
|
export default _default;
|
|
@@ -7,5 +7,5 @@ interface IProps extends IA2MapStateProps {
|
|
|
7
7
|
}
|
|
8
8
|
declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
|
|
9
9
|
children?: React.ReactNode;
|
|
10
|
-
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "
|
|
10
|
+
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "currentData" | "stepInfo" | "configString">>;
|
|
11
11
|
export default _default;
|
|
@@ -5,5 +5,5 @@ interface IProps {
|
|
|
5
5
|
}
|
|
6
6
|
declare const _default: import("react-redux").ConnectedComponent<React.FC<IA2MapStateProps & IProps>, import("react-redux").Omit<IA2MapStateProps & IProps & {
|
|
7
7
|
children?: React.ReactNode;
|
|
8
|
-
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "
|
|
8
|
+
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "currentData" | "stepInfo" | "configString">>;
|
|
9
9
|
export default _default;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { IA2MapStateProps } from '@/store/annotation/map';
|
|
3
|
-
import {
|
|
3
|
+
import { TDrawLayerSlot } from '@/types/main';
|
|
4
4
|
interface IProps extends IA2MapStateProps {
|
|
5
|
-
drawLayerSlot?:
|
|
5
|
+
drawLayerSlot?: TDrawLayerSlot;
|
|
6
6
|
checkMode?: boolean;
|
|
7
7
|
intelligentFit?: boolean;
|
|
8
8
|
setIsEnlargeTopView: (value: boolean) => void;
|
|
@@ -11,5 +11,5 @@ interface IProps extends IA2MapStateProps {
|
|
|
11
11
|
}
|
|
12
12
|
declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
|
|
13
13
|
children?: React.ReactNode;
|
|
14
|
-
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "
|
|
14
|
+
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "currentData" | "stepInfo" | "configString">>;
|
|
15
15
|
export default _default;
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
* @date 2022-06-21
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
|
-
import {
|
|
8
|
+
import { TDrawLayerSlot } from '@/types/main';
|
|
9
9
|
import { IA2MapStateProps } from '@/store/annotation/map';
|
|
10
10
|
interface IProps extends IA2MapStateProps {
|
|
11
|
-
drawLayerSlot?:
|
|
11
|
+
drawLayerSlot?: TDrawLayerSlot;
|
|
12
12
|
checkMode?: boolean;
|
|
13
13
|
intelligentFit?: boolean;
|
|
14
14
|
}
|
|
15
15
|
declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
|
|
16
16
|
children?: React.ReactNode;
|
|
17
|
-
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "
|
|
17
|
+
}, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "currentData" | "stepInfo" | "configString">>;
|
|
18
18
|
export default _default;
|
|
@@ -4,23 +4,12 @@
|
|
|
4
4
|
* @date 2022-06-02
|
|
5
5
|
*/
|
|
6
6
|
import React from 'react';
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
videoContext?: any;
|
|
14
|
-
stepInfo: IStepInfo;
|
|
15
|
-
step: number;
|
|
16
|
-
stepList: IStepInfo[];
|
|
17
|
-
config: any;
|
|
18
|
-
imgIndex: number;
|
|
19
|
-
imgList: IFileItem[];
|
|
20
|
-
drawLayerSlot?: DrawLayerSlot;
|
|
21
|
-
footer?: any;
|
|
22
|
-
}
|
|
23
|
-
declare const _default: import("react-redux").ConnectedComponent<React.FC<IVideoAnnotateProps>, import("react-redux").Omit<IVideoAnnotateProps & {
|
|
7
|
+
import { AnnotationState } from '@/store/annotation/types';
|
|
8
|
+
declare const _default: import("react-redux").ConnectedComponent<React.FC<{
|
|
9
|
+
annotation: AnnotationState;
|
|
10
|
+
}>, import("react-redux").Omit<{
|
|
11
|
+
annotation: AnnotationState;
|
|
12
|
+
} & {
|
|
24
13
|
children?: React.ReactNode;
|
|
25
|
-
}, "
|
|
14
|
+
}, "annotation">>;
|
|
26
15
|
export default _default;
|
package/dist/types/components/{videoAnnotate/videoTagTool → videoPlayer}/TagToolInstanceAdaptor.d.ts
RENAMED
|
@@ -5,15 +5,20 @@
|
|
|
5
5
|
* @date 2022-05-31
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
|
+
import { IStepInfo } from '@/types/step';
|
|
8
9
|
import _ from 'lodash';
|
|
9
|
-
import type { ObjectString } from '
|
|
10
|
-
import {
|
|
11
|
-
export interface IVideoTagInstanceAdaptorProps
|
|
10
|
+
import type { ObjectString } from './types';
|
|
11
|
+
import { IFileItem } from '@/types/data';
|
|
12
|
+
export interface IVideoTagInstanceAdaptorProps {
|
|
13
|
+
imgIndex: number;
|
|
14
|
+
imgList: IFileItem[];
|
|
12
15
|
pageForward: () => void;
|
|
13
16
|
pageJump: (page: string) => void;
|
|
14
17
|
pageBackward: () => void;
|
|
15
|
-
onMounted: (instance:
|
|
18
|
+
onMounted: (instance: TagToolInstanceAdaptor) => void;
|
|
16
19
|
onUnmounted: () => void;
|
|
20
|
+
step: number;
|
|
21
|
+
stepList: IStepInfo[];
|
|
17
22
|
}
|
|
18
23
|
interface IVideoTagInstanceAdaptorState {
|
|
19
24
|
tagResult: any[];
|
|
@@ -24,7 +29,7 @@ export declare class TagToolInstanceAdaptor extends React.Component<IVideoTagIns
|
|
|
24
29
|
fns: {
|
|
25
30
|
[key: string]: () => void;
|
|
26
31
|
};
|
|
27
|
-
|
|
32
|
+
videoRef?: HTMLVideoElement;
|
|
28
33
|
labelSelectedList: number[];
|
|
29
34
|
constructor(props: IVideoTagInstanceAdaptorProps);
|
|
30
35
|
get config(): any;
|
|
@@ -45,7 +50,6 @@ export declare class TagToolInstanceAdaptor extends React.Component<IVideoTagIns
|
|
|
45
50
|
})[];
|
|
46
51
|
singleOn(event: string, func: () => void): void;
|
|
47
52
|
on(event: string, func: () => void): void;
|
|
48
|
-
unbindAll(eventName: string): void;
|
|
49
53
|
getTagResultByCode(num1: number, num2?: number): {
|
|
50
54
|
value: {
|
|
51
55
|
key: any;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
/**
|
|
2
3
|
* Format video time to display
|
|
3
4
|
* Such as 61.9 => 01:01:9
|
|
@@ -9,8 +10,5 @@ export declare enum EPlayerType {
|
|
|
9
10
|
Video = 0,
|
|
10
11
|
Audio = 1
|
|
11
12
|
}
|
|
12
|
-
|
|
13
|
-
footer?: any;
|
|
14
|
-
}
|
|
15
|
-
declare const VideoController: (props: IProps) => any;
|
|
13
|
+
declare const VideoController: () => React.JSX.Element;
|
|
16
14
|
export default VideoController;
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import React from 'react';
|
|
7
7
|
import { IFileItem } from '@/types/data';
|
|
8
|
-
export declare const PLAYER_CONTROL_BAR_HEIGHT = 60;
|
|
9
8
|
export declare const VideoPlayerCtx: React.Context<{
|
|
10
9
|
videoRef?: React.RefObject<HTMLVideoElement> | null | undefined;
|
|
11
10
|
isPlay: boolean;
|
|
@@ -21,8 +20,6 @@ export declare const VideoPlayerCtx: React.Context<{
|
|
|
21
20
|
pageBackward: () => void;
|
|
22
21
|
pageJump: (page: string) => void;
|
|
23
22
|
pageForward: () => void;
|
|
24
|
-
addTime?: (() => void) | undefined;
|
|
25
|
-
toggleClipStatus?: (() => void) | undefined;
|
|
26
23
|
}>;
|
|
27
24
|
interface IVideoPlayerProps {
|
|
28
25
|
imgList: IFileItem[];
|
|
@@ -32,13 +29,6 @@ interface IVideoPlayerProps {
|
|
|
32
29
|
pageForward: () => void;
|
|
33
30
|
valid: boolean;
|
|
34
31
|
setVideoRef?: (video: HTMLVideoElement) => void;
|
|
35
|
-
showVideoTrack?: boolean;
|
|
36
|
-
onTrackResize?: any;
|
|
37
|
-
footer?: any;
|
|
38
|
-
dataLoaded?: (totalTime: number) => void;
|
|
39
|
-
addTime?: () => void;
|
|
40
|
-
toggleClipStatus?: () => void;
|
|
41
|
-
drawLayerSlot?: any;
|
|
42
32
|
}
|
|
43
33
|
interface IVideoPlayerState {
|
|
44
34
|
playbackRate: number;
|
|
@@ -69,7 +59,6 @@ export declare class VideoPlayer extends React.Component<IVideoPlayerProps, IVid
|
|
|
69
59
|
keydown: (event: KeyboardEvent) => void;
|
|
70
60
|
onPlay: () => void;
|
|
71
61
|
onPause: () => void;
|
|
72
|
-
onTimeUpdate: () => void;
|
|
73
62
|
onVideoStopped: () => void;
|
|
74
63
|
onVideoStart: () => void;
|
|
75
64
|
resetVideoData: () => void;
|
|
@@ -34,9 +34,3 @@ export declare const getKeyCodeNumber: (keyCode: number) => number;
|
|
|
34
34
|
* @returns {Number}
|
|
35
35
|
*/
|
|
36
36
|
export declare const decimalReserved: (num: number, places?: number) => number;
|
|
37
|
-
/**
|
|
38
|
-
* Compute the hash code of given string
|
|
39
|
-
* @param str
|
|
40
|
-
* @returns {Number}
|
|
41
|
-
*/
|
|
42
|
-
export declare const hashCode: (str: string | undefined) => number | undefined;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import PointCloudAnnotationView from '@/components/AnnotationView/pointCloudAnno
|
|
|
4
4
|
import QuestionView from '@/components/LLMToolView/questionView';
|
|
5
5
|
import { i18n } from '@labelbee/lb-utils';
|
|
6
6
|
import React from 'react';
|
|
7
|
-
import { VideoTagTool } from '@/components/
|
|
7
|
+
import { VideoTagTool } from '@/components/videoPlayer/TagToolInstanceAdaptorI18nProvider';
|
|
8
8
|
import './index.scss';
|
|
9
9
|
import PredictTracking from '@/components/predictTracking';
|
|
10
10
|
import LLMToolView from '@/components/LLMToolView';
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { IStepInfo } from '@/types/step';
|
|
3
3
|
import TextToolOperation from '@labelbee/lb-annotation/dist/types/core/toolOperation/TextToolOperation';
|
|
4
|
-
import { VideoTextTool } from '@/components/videoAnnotate/videoTextTool';
|
|
5
4
|
interface ITextareaWithFooterProps {
|
|
6
5
|
textareaProps?: any;
|
|
7
6
|
footer?: any;
|
|
@@ -9,7 +8,7 @@ interface ITextareaWithFooterProps {
|
|
|
9
8
|
export declare const TextareaWithFooter: (props: ITextareaWithFooterProps) => React.JSX.Element;
|
|
10
9
|
interface IProps {
|
|
11
10
|
dispatch: Function;
|
|
12
|
-
toolInstance: TextToolOperation
|
|
11
|
+
toolInstance: TextToolOperation;
|
|
13
12
|
imgIndex: number;
|
|
14
13
|
triggerEventAfterIndexChanged: boolean;
|
|
15
14
|
step: number;
|
package/dist/utils/audio.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),require("antd");var lbAnnotation=require("@labelbee/lb-annotation");require("lodash");var Decimal=require("decimal.js"),moment=require("moment");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var Decimal__default=_interopDefaultLegacy(Decimal),moment__default=_interopDefaultLegacy(moment);const{COLORS_ARRAY,ICON_ARRAY,INVALID_ICON,NULL_COLOR,NULL_ICON,WHITE_FONT_COLOR_ARRAY}=lbAnnotation.cStyle,DEFAULT_TEXT_CONFIG_ITEM={label:"\u6587\u672C",key:"text",required:!1,default:"",maxLength:1e3},getAttributeShowText=(t,e)=>{var r,n;try{const o=getAttributeIndex(t,e);return(n=(r=e[o])==null?void 0:r.key)!=null?n:t}catch(o){return t}},getAttributeIndex=(t,e)=>{try{return e.findIndex(n=>n.value===t)}catch(r){return-1}},getAttributeColor=(t,e)=>{try{const r=getAttributeIndex(t,e);return r===-1?NULL_COLOR:COLORS_ARRAY[r%COLORS_ARRAY.length]}catch(r){return NULL_COLOR}},getAttributeFontColor=(t,e)=>{try{const r=getAttributeColor(t,e);return WHITE_FONT_COLOR_ARRAY.includes(r)?"#fff":"#333"}catch(r){return"#333"}},updateColorOpacity=(t,e)=>{var r;try{const n=((r=t.match(/\((.*)\)/))==null?void 0:r[1].split(","))||[];return n.splice(3,1,e.toString()),`rgba(${n.join(",")})`}catch(n){return t}},precisionMinus=(t,e)=>new Decimal__default.default(Number(t)||0).minus(Number(e)||0).toNumber(),precisionAdd=(t,e)=>new Decimal__default.default(t).add(e).toNumber(),generateIsDoubleClick=t=>{let e=null;return n=>e?n.target===(e==null?void 0:e.target):(e=n,setTimeout(()=>{e=null},t),!1)},isDoubleClick=generateIsDoubleClick(300),formatTime=t=>{const e=Math.floor(t*1e3),r=moment__default.default.duration(e);return`${Math.floor(r.asMinutes())}:${moment__default.default.utc(e).format("ss")}`},timeFormat=(t,e="ss.S")=>{const r=Math.floor(t*1e3),n=moment__default.default.duration(r);return`${fillZero(Math.floor(n.asMinutes()))}:${moment__default.default.utc(r).format(e)}`},fillZero=t=>t<10?`0${t}`:t,getCanMoveRange=(t,e)=>{let r=null,n=null;const o=t.length;if(o===0)return{min:r,max:n};let u=0;return e<t[u]?n=t[u]:(t.forEach((
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),require("antd");var lbAnnotation=require("@labelbee/lb-annotation");require("lodash");var Decimal=require("decimal.js"),moment=require("moment");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var Decimal__default=_interopDefaultLegacy(Decimal),moment__default=_interopDefaultLegacy(moment);const{COLORS_ARRAY,ICON_ARRAY,INVALID_ICON,NULL_COLOR,NULL_ICON,WHITE_FONT_COLOR_ARRAY}=lbAnnotation.cStyle,DEFAULT_TEXT_CONFIG_ITEM={label:"\u6587\u672C",key:"text",required:!1,default:"",maxLength:1e3},getAttributeShowText=(t,e)=>{var r,n;try{const o=getAttributeIndex(t,e);return(n=(r=e[o])==null?void 0:r.key)!=null?n:t}catch(o){return t}},getAttributeIndex=(t,e)=>{try{return e.findIndex(n=>n.value===t)}catch(r){return-1}},getAttributeColor=(t,e)=>{try{const r=getAttributeIndex(t,e);return r===-1?NULL_COLOR:COLORS_ARRAY[r%COLORS_ARRAY.length]}catch(r){return NULL_COLOR}},getAttributeFontColor=(t,e)=>{try{const r=getAttributeColor(t,e);return WHITE_FONT_COLOR_ARRAY.includes(r)?"#fff":"#333"}catch(r){return"#333"}},updateColorOpacity=(t,e)=>{var r;try{const n=((r=t.match(/\((.*)\)/))==null?void 0:r[1].split(","))||[];return n.splice(3,1,e.toString()),`rgba(${n.join(",")})`}catch(n){return t}},precisionMinus=(t,e)=>new Decimal__default.default(Number(t)||0).minus(Number(e)||0).toNumber(),precisionAdd=(t,e)=>new Decimal__default.default(t).add(e).toNumber(),generateIsDoubleClick=t=>{let e=null;return n=>e?n.target===(e==null?void 0:e.target):(e=n,setTimeout(()=>{e=null},t),!1)},isDoubleClick=generateIsDoubleClick(300),formatTime=t=>{const e=Math.floor(t*1e3),r=moment__default.default.duration(e);return`${Math.floor(r.asMinutes())}:${moment__default.default.utc(e).format("ss")}`},timeFormat=(t,e="ss.S")=>{const r=Math.floor(t*1e3),n=moment__default.default.duration(r);return`${fillZero(Math.floor(n.asMinutes()))}:${moment__default.default.utc(r).format(e)}`},fillZero=t=>t<10?`0${t}`:t,getCanMoveRange=(t,e)=>{let r=null,n=null;const o=t.length;if(o===0)return{min:r,max:n};let u=0;return e<t[u]?n=t[u]:(t.forEach((i,s)=>{e>i&&(r=i,u=s)}),r&&u<o-1&&(n=t[u+1])),{min:r,max:n}},dispatchResizeEvent=()=>{const t=document.createEvent("Event");t.initEvent("resize",!0,!0),window.dispatchEvent(t)};exports.DEFAULT_TEXT_CONFIG_ITEM=DEFAULT_TEXT_CONFIG_ITEM,exports.dispatchResizeEvent=dispatchResizeEvent,exports.formatTime=formatTime,exports.getAttributeColor=getAttributeColor,exports.getAttributeFontColor=getAttributeFontColor,exports.getAttributeIndex=getAttributeIndex,exports.getAttributeShowText=getAttributeShowText,exports.getCanMoveRange=getCanMoveRange,exports.isDoubleClick=isDoubleClick,exports.precisionAdd=precisionAdd,exports.precisionMinus=precisionMinus,exports.timeFormat=timeFormat,exports.updateColorOpacity=updateColorOpacity;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var index$
|
|
1
|
+
"use strict";var index$4=require("../../../constant/index.js"),es=require("antd/es"),React=require("react"),index$3=require("../sidebar/index.js"),index$2=require("../toolFooter/index.js"),dom=require("../../../utils/dom.js"),index=require("../../../utils/index.js"),ctx=require("../../../store/ctx.js"),index$1=require("../../../components/LLMToolView/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const{Sider,Content}=es.Layout,layoutCls=`${index$4.prefix}-layout`,LLMLayout=e=>{var t,a;const[l,i]=React.useState(-1),[r,o]=React.useState([]),[n,s]=React.useState([]);return React__default.default.createElement(es.Layout,{className:dom.getClassName("layout","container")},React__default.default.createElement(ctx.LLMContext.Provider,{value:React.useMemo(()=>({hoverKey:l,setHoverKey:i,modelAPIResponse:r,setModelAPIResponse:o,newAnswerList:n,setNewAnswerList:s}),[l,r,n])},e==null?void 0:e.leftSider,React__default.default.createElement(Content,{className:index.classnames({[`${layoutCls}__content`]:!0,[`${index$4.prefix}-LLMLayout`]:!0})},React__default.default.createElement(index$1,{checkMode:e.checkMode,showTips:e.showTips,tips:e.tips}),React__default.default.createElement(index$2.default,{style:(t=e.style)==null?void 0:t.footer,mode:e.mode,footer:e==null?void 0:e.footer})),React__default.default.createElement(Sider,{className:`${layoutCls}__side`,width:600,style:{position:"relative"}},React__default.default.createElement(index$3.default,{sider:e==null?void 0:e.sider,checkMode:e==null?void 0:e.checkMode}),(a=e.drawLayerSlot)==null?void 0:a.call(e,{}))))};module.exports=LLMLayout;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var index$6=require("../../components/customResizeHook/index.js"),index$4=require("../../constant/index.js"),antd=require("antd"),es=require("antd/es"),React=require("react"),index$a=require("./annotationOperation/index.js"),index$9=require("./annotationTips/index.js"),index$3=require("./sidebar/index.js"),index$b=require("./toolFooter/index.js"),index$8=require("./toolHeader/index.js"),reducer=require("../../store/annotation/reducer.js"),index$5=require("../../components/videoAnnotate/index.js"),reactRedux=require("react-redux"),ToolUtils=require("../../utils/ToolUtils.js"),index$c=require("../../components/pointCloudView/index.js"),dom=require("../../utils/dom.js"),index$7=require("../../utils/index.js"),index$2=require("../../components/predictTracking/previewResult/index.js"),ctx=require("../../store/ctx.js"),ToolType=require("../../data/enums/ToolType.js"),index=require("./LLMLayout/index.js"),index$1=require("../../components/audioAnnotate/index.js"),icons=require("@ant-design/icons"),reactI18next=require("react-i18next"),lbAnnotation=require("@labelbee/lb-annotation");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,
|
|
1
|
+
"use strict";var index$6=require("../../components/customResizeHook/index.js"),index$4=require("../../constant/index.js"),antd=require("antd"),es=require("antd/es"),React=require("react"),index$a=require("./annotationOperation/index.js"),index$9=require("./annotationTips/index.js"),index$3=require("./sidebar/index.js"),index$b=require("./toolFooter/index.js"),index$8=require("./toolHeader/index.js"),reducer=require("../../store/annotation/reducer.js"),index$5=require("../../components/videoAnnotate/index.js"),reactRedux=require("react-redux"),ToolUtils=require("../../utils/ToolUtils.js"),index$c=require("../../components/pointCloudView/index.js"),dom=require("../../utils/dom.js"),index$7=require("../../utils/index.js"),index$2=require("../../components/predictTracking/previewResult/index.js"),ctx=require("../../store/ctx.js"),ToolType=require("../../data/enums/ToolType.js"),index=require("./LLMLayout/index.js"),index$1=require("../../components/audioAnnotate/index.js"),icons=require("@ant-design/icons"),reactI18next=require("react-i18next"),lbAnnotation=require("@labelbee/lb-annotation");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,n)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,__spreadValues=(e,t)=>{for(var n in t||(t={}))__hasOwnProp.call(t,n)&&__defNormalProp(e,n,t[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(t))__propIsEnum.call(t,n)&&__defNormalProp(e,n,t[n]);return e};const{Sider,Content}=es.Layout,layoutCls=`${index$4.prefix}-layout`,ImageAnnotate=e=>{var t;return React__default.default.createElement(React__default.default.Fragment,null,e.showTips===!0&&React__default.default.createElement(index$9,{path:e.path,tips:e.tips}),React__default.default.createElement(index$a,__spreadValues({},e)),React__default.default.createElement(index$b.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$c,{drawLayerSlot:e.drawLayerSlot,checkMode:e.checkMode,intelligentFit:e.intelligentFit}),React__default.default.createElement(index$b.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:n,step:l}=e,r=(t=reducer.getStepConfig(n,l))==null?void 0:t.tool,i=ToolUtils.isVideoTool(r),a=ToolUtils.isPointCloudTool(r);return i?React__default.default.createElement(index$5,__spreadValues({},e)):a?React__default.default.createElement(PointCloudAnnotate,__spreadValues({},e)):React__default.default.createElement(ImageAnnotate,__spreadValues({},e))},ViewportProviderLayout=e=>{var t,n,l;const{t:r}=reactI18next.useTranslation(),{stepList:i,step:a}=e,o=(t=reducer.getStepConfig(i,a))==null?void 0:t.tool,d=![ToolType.EToolName.LLM].includes(o),u=![ToolType.EToolName.LLM].includes(o),c=[lbAnnotation.EPointCloudName.PointCloud].includes(o);return React__default.default.createElement(index$6.ViewportProvider,null,React__default.default.createElement(antd.Spin,{spinning:e.loading,indicator:React__default.default.createElement(icons.LoadingOutlined,null),tip:React__default.default.createElement("span",{style:{marginTop:200}},r("LoadingTips")),delay:500},React__default.default.createElement(es.Layout,{className:index$7.classnames([layoutCls,e.className]),style:(n=e.style)==null?void 0:n.layout},React__default.default.createElement("header",{className:`${layoutCls}__header`,style:(l=e.style)==null?void 0:l.header},React__default.default.createElement(index$8,{header:e==null?void 0:e.header,headerName:e.headerName,goBack:e.goBack,exportData:e.exportData,hasLangNode:d,hasHeaderOption:u,hasPredictTrackingIcon:c})),e.children)))},MainView=e=>{var t,n,l,r,i,a,o;const[d,u]=React.useState(void 0),c=(n=(t=e.style)==null?void 0:t.sider)==null?void 0:n.width,{stepList:m,step:f}=e,s=(l=reducer.getStepConfig(m,f))==null?void 0:l.tool,v=ToolType.EToolName.LLM===s,x=ToolUtils.isAudioTool(s);return v?React__default.default.createElement(ViewportProviderLayout,__spreadValues({},e),React__default.default.createElement(index,__spreadValues({},e))):x?React__default.default.createElement(ViewportProviderLayout,__spreadValues({},e),React__default.default.createElement(index$1,__spreadValues({},e))):React__default.default.createElement(ViewportProviderLayout,__spreadValues({},e),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(index$2,null)),React__default.default.createElement(Sider,{className:`${layoutCls}__side`,width:(r=d!=null?d:c)!=null?r: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,setSiderWidth:u,propsSiderWidth:(o=(a=e.style)==null?void 0:a.sider)==null?void 0:o.width}))))},mapStateToProps=({annotation:e})=>{var t,n,l;const{imgList:r,loading:i}=e,a=(t=r[e.imgIndex])!=null?t:{};return{path:(l=(n=a==null?void 0:a.path)!=null?n:a==null?void 0:a.url)!=null?l:"",loading:i}};var MainView$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(MainView);module.exports=MainView$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),reactRedux=require("react-redux"),_=require("lodash"),index=require("../../../../utils/index.js"),es=require("antd/es"),lbAnnotation=require("@labelbee/lb-annotation"),actionCreators=require("../../../../store/annotation/actionCreators.js"),ConfigUtils=require("../../../../utils/ConfigUtils.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.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 EKeyCode=lbAnnotation.cKeyCode.default,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),reactRedux=require("react-redux"),_=require("lodash"),index=require("../../../../utils/index.js"),es=require("antd/es"),lbAnnotation=require("@labelbee/lb-annotation"),actionCreators=require("../../../../store/annotation/actionCreators.js"),ConfigUtils=require("../../../../utils/ConfigUtils.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.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 EKeyCode=lbAnnotation.cKeyCode.default,syntheticEventStopPagination=e=>{e.stopPropagation(),e.nativeEvent.stopPropagation(),e.nativeEvent.stopImmediatePropagation()},TextareaWithFooter=e=>{const{textareaProps:t,footer:a}=e;return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(es.Input.TextArea,__spreadValues({bordered:!1,rows:6,onKeyDown:syntheticEventStopPagination,onKeyUp:syntheticEventStopPagination},t)),React__default.default.createElement("div",{className:index.classnames({textAreaLength:!0})},a))},SingleTextInput=e=>{var t;const a=React.useRef(null),[p,i]=React.useState(!1),[h,x]=React.useState(!1),{t:u}=reactI18next.useTranslation(),{disabled:l,config:s,result:m,updateText:v,index:g,switchToNextTextarea:E,hasMultiple:y,onNext:c}=e,{maxLength:d}=s,f=m?m[s.key]:"",T=(t=f==null?void 0:f.length)!=null?t:0,C=n=>{v&&(v(n,s.key),s.required&&x(!n))},b=y&&E,r={id:`textInput-${g}`,ref:a,disabled:l,value:f,maxLength:d,autoSize:{minRows:2,maxRows:6},onChange:n=>{const P=n.target.value;C(P)},onFocus:()=>{i(!0)},onBlur:n=>{i(!1),s.required&&x(!n.target.value)},style:{resize:"none",wordBreak:"break-all"},onKeyDownCapture:n=>{n.ctrlKey&&n.keyCode===EKeyCode.Enter&&(c&&c(),n.preventDefault()),n.keyCode===EKeyCode.Tab&&b&&(n.preventDefault(),n.nativeEvent.stopImmediatePropagation(),E(g)),n.nativeEvent.stopPropagation()}},o=React__default.default.createElement("div",{className:"textAreaFooter"},React__default.default.createElement("div",{className:"hotkeyTip"},b&&React__default.default.createElement("span",null,`[${u("Switch")}]Tab`),React__default.default.createElement("span",null,`[${u("TurnPage")}]Ctrl+Enter`)),React__default.default.createElement("div",{className:"wordCount"},React__default.default.createElement("span",{className:T>=d?"warning":""},T),"/",React__default.default.createElement("span",null,d)));return React.useEffect(()=>{l&&i(!1)},[l]),React__default.default.createElement("div",{className:"textField"},React__default.default.createElement("div",{className:"label"},React__default.default.createElement("span",{className:index.classnames({required:s.required})},s.label),React__default.default.createElement("i",{className:index.classnames({clearText:!0,disabled:l}),onClick:()=>{l||C("")}})),React__default.default.createElement("div",{className:index.classnames({disabled:l,"textarea-outline":!0,"ant-input-focused":p,textareaContainer:!0,focus:p,invalid:h})},React__default.default.createElement(TextareaWithFooter,{footer:o,textareaProps:r})))},TextToolSidebar=({toolInstance:e,imgIndex:t,dispatch:a,triggerEventAfterIndexChanged:p,step:i,stepList:h,basicResultList:x})=>{var u,l;const[s,m]=React.useState([]),[v,g]=React.useState(0),[,E]=React.useState(0),y=r=>{const o=(r+1)%s.length;c(o)},c=r=>{setTimeout(()=>{const o=document.getElementById(`textInput-${r}`);o&&(g(r),o.focus(),o.select(),o.scrollIntoView({behavior:"smooth",block:"center"}))})};React.useEffect(()=>{e&&(m(_.cloneDeep(e.config.configList)),e.singleOn("valueUpdated",()=>{E(r=>r+1)}))},[e]);const d=(r,o)=>{e.updateTextValue(o,r)};React.useEffect(()=>{t>-1&&p&&c(0)},[t]);const f=(l=(u=e.textList[0])==null?void 0:u.value)!=null?l:{},T=()=>{a(actionCreators.PageForward(!0))},b=ConfigUtils.ConfigUtils.getStepConfig(h,i).dataSourceStep>0&&x.length===0;return React__default.default.createElement("div",{className:"textToolOperationMenu"},s.map((r,o)=>React__default.default.createElement(SingleTextInput,{config:r,key:r.key,index:o,result:f,updateText:d,switchToNextTextarea:y,hasMultiple:s.length>1,focus:v===o,onNext:T,disabled:b})))};function mapStateToProps(e){return{toolInstance:e.annotation.toolInstance,imgIndex:e.annotation.imgIndex,step:e.annotation.step,basicResultList:e.annotation.basicResultList,stepList:e.annotation.stepList,triggerEventAfterIndexChanged:e.annotation.triggerEventAfterIndexChanged}}var TextToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(TextToolSidebar);exports.SingleTextInput=SingleTextInput,exports.TextareaWithFooter=TextareaWithFooter,exports.default=TextToolSidebar$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index=require("../../../constant/index.js"),ToolType=require("../../../data/enums/ToolType.js"),StepUtils=require("../../../utils/StepUtils.js"),es=require("antd/es"),React=require("react"),reactI18next=require("react-i18next"),index$9=require("./AnnotationText/index.js"),index$2=require("./ClearIcon/index.js"),index$7=require("./GeneralOperation/index.js"),index$3=require("./ImgAttributeInfo/index.js"),index$8=require("./SwitchAttributeList/index.js"),index$1=require("./TagSidebar/index.js"),index$4=require("./TextToolSidebar/index.js"),index$6=require("./PointCloudToolSidebar/index.js"),index$
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index=require("../../../constant/index.js"),ToolType=require("../../../data/enums/ToolType.js"),StepUtils=require("../../../utils/StepUtils.js"),es=require("antd/es"),React=require("react"),reactI18next=require("react-i18next"),index$9=require("./AnnotationText/index.js"),index$2=require("./ClearIcon/index.js"),index$7=require("./GeneralOperation/index.js"),index$3=require("./ImgAttributeInfo/index.js"),index$8=require("./SwitchAttributeList/index.js"),index$1=require("./TagSidebar/index.js"),index$4=require("./TextToolSidebar/index.js"),index$6=require("./PointCloudToolSidebar/index.js"),index$c=require("./ToolStyle/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),index$a=require("./ScribbleSidebar/index.js"),ToolIcons=require("./ToolIcons.js"),ctx=require("../../../store/ctx.js"),antd=require("antd"),index$5=require("../../../utils/index.js"),icon_menu_fold=require("../../../assets/annotation/common/icon_menu_fold.svg.js"),index$b=require("../../../components/LLMToolView/sidebar/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const{EVideoToolName,EPointCloudName}=lbAnnotation.cTool,{Panel}=es.Collapse,sidebarCls=`${index.prefix}-sidebar`,Sidebar=({sider:e,enableColorPicker:v,setSiderWidth:u,propsSiderWidth:_,checkMode:b})=>{const d=ctx.useSelector(a=>StepUtils.getCurrentStepInfo(a.annotation.step,a.annotation.stepList)),[r,T]=React.useState(!0),t=d==null?void 0:d.tool,{t:c}=reactI18next.useTranslation();if(!t)return null;const N=a=>{const l=React__default.default.createElement(index$c,null);return React__default.default.createElement(Panel,{header:c("Style"),className:"panel",key:a},l)},s=React__default.default.createElement(ToolIcons.ToolIcons,{toolName:t,onChange:()=>{}}),o=React__default.default.createElement(index$8,null),f=React__default.default.createElement(index$9,null),m=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},N("1")),x=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},React__default.default.createElement(Panel,{header:React__default.default.createElement("div",null,c("Adjust"),React__default.default.createElement(index$2,null)),className:"panel",key:"imgAttribute"},React__default.default.createElement(index$3,null))),n=React__default.default.createElement(index$7.default,null),g=React__default.default.createElement(index$1.default,null),S=React__default.default.createElement(index$4.default,null),p=React__default.default.createElement(index$a,{onChange:(a,l)=>{}}),E=React__default.default.createElement(index$b,{checkMode:b}),i=React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`}),$=React__default.default.createElement(index$6.default,{enableColorPicker:v}),y=React__default.default.createElement(index$7.PointCloudOperation,null);if(e)return typeof e=="function"?React__default.default.createElement("div",{className:`${sidebarCls}`},e({toolIcon:s,attributeList:o,annotationText:f,toolStyle:m,imageAttributeInfo:x,operation:n,tagToolSideBar:g,textToolSideBar:S,horizontal:i,pointCloudToolSidebar:$,pointCloudOperation:y,scribbleSidebar:p,LLMSidebar:E})):e;if([ToolType.EToolName.Rect,ToolType.EToolName.Point,ToolType.EToolName.Line,ToolType.EToolName.Rect,ToolType.EToolName.Polygon,ToolType.EToolName.Cuboid].includes(t))return React__default.default.createElement("div",{className:`${sidebarCls}`},s,i,o,f,i,React__default.default.createElement("div",{className:`${sidebarCls}__content`},m,x),n);if(t===ToolType.EToolName.Tag)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$1.default,null));if(t===EVideoToolName.VideoTagTool)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$1.default,null)),n);if(t===ToolType.EToolName.Text)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$4.default,null));if(t===EPointCloudName.PointCloud){const a=()=>{T(!r),u&&u(r?48:void 0)},l=React__default.default.createElement("div",{style:{width:"48px",height:"100%",display:"flex",justifyContent:"center",background:"#ffffff"}},React__default.default.createElement("span",{onClick:()=>a()},React__default.default.createElement("img",{style:{width:"16px",height:"16px",marginTop:"18px",cursor:"pointer",transform:"rotate(180deg)"},src:icon_menu_fold})));return r?React__default.default.createElement(antd.Tabs,{type:"card",activeKey:"1",className:index$5.classnames({[`${sidebarCls}`]:!0,[`${sidebarCls}__pointCloud`]:!0}),tabBarExtraContent:{left:React__default.default.createElement("span",{onClick:()=>a(),style:{padding:"0px 4px"}},React__default.default.createElement("img",{style:{width:"16px",height:"16px",marginLeft:"4px",cursor:"pointer"},src:icon_menu_fold}))}},React__default.default.createElement(antd.Tabs.TabPane,{tab:"\u5DE5\u5177\u9762\u677F",key:"1",style:{height:"100%",display:"flex",flexDirection:"column"}},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$6.default,null)),React__default.default.createElement(index$7.PointCloudOperation,null))):l}return t===ToolType.EToolName.ScribbleTool?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},p,o),n):t===ToolType.EToolName.LLM?E:null};exports.default=Sidebar,exports.sidebarCls=sidebarCls;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e,{useState as
|
|
1
|
+
import e,{useState as R,useRef as X,useEffect as M}from"react";import{Tooltip as J,Radio as q,Switch as se}from"antd";import{QuestionCircleOutlined as ce}from"@ant-design/icons";import{TextareaWithFooter as ie}from"../../../views/MainView/sidebar/TextToolSidebar/index.js";import{timeFormat as Y,getAttributeColor as de,getAttributeFontColor as me,updateColorOpacity as Ee,getAttributeShowText as pe,DEFAULT_TEXT_CONFIG_ITEM as fe}from"../../../utils/audio.js";import{cKeyCode as ve}from"@labelbee/lb-annotation";import z from"classnames";import Z,{useAudioClipStore as xe}from"../audioContext/index.js";import o from"./index.module.scss.js";import{useTranslation as ee}from"react-i18next";var Fe=Object.defineProperty,ge=Object.defineProperties,Ce=Object.getOwnPropertyDescriptors,te=Object.getOwnPropertySymbols,he=Object.prototype.hasOwnProperty,be=Object.prototype.propertyIsEnumerable,ae=(u,n,r)=>n in u?Fe(u,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):u[n]=r,le=(u,n)=>{for(var r in n||(n={}))he.call(n,r)&&ae(u,r,n[r]);if(te)for(var r of te(n))be.call(n,r)&&ae(u,r,n[r]);return u},Te=(u,n)=>ge(u,Ce(n));const d=ve.default,ne=({onClick:u,title:n,disabled:r})=>e.createElement(J,{placement:"bottom",title:n},e.createElement("span",{className:z({[o.clearIcon]:!0,[o.disabled]:r}),onClick:u})),G=u=>{var n;const{t:r}=ee(),A=X(null),[f,y]=R(!1),[w,v]=R(!1),{disabled:s,config:c,result:D,updateText:x,index:F,switchToNextTextarea:P,hasMultiple:O,textID:b,addPlaceholder:g,onFocus:N,onBlur:T,onFocusStyle:K={},extra:L}=u,{maxLength:C}=c,k=D?D[c.key]:"",B=(n=k==null?void 0:k.length)!=null?n:0,I=a=>{x&&(x(a,c.key),c.required&&v(!a))},$=O&&P,m={id:`textInput-${F}`,ref:A,disabled:s,value:k,maxLength:C,autoSize:{minRows:2,maxRows:6},onChange:a=>{const i=a.target.value;I(i)},onFocus:a=>{y(!0),N==null||N(a),a.target.value&&v(!1)},onBlur:a=>{y(!1),T==null||T(a),c.required&&v(!a.target.value)},style:{resize:"none",wordBreak:"break-all"},onKeyDownCapture:a=>{const{keyCode:i}=a;if(a.ctrlKey){if(i===d.Enter&&a.preventDefault(),g&&[d.One,d.Two,d.Three].includes(i))switch(a.preventDefault(),i){case d.One:g("\u4986");break;case d.Two:g("\u652B");break;case d.Three:g("\u7383");break}}else i===d.Tab&&$?(a.preventDefault(),a.nativeEvent.stopImmediatePropagation(),P(F)):a.nativeEvent.stopPropagation()}},E=e.createElement("div",{className:o.textAreaFooter},e.createElement("div",{className:o.hotkeyTip},$&&e.createElement("span",null,"[",r("Switch"),"]Tab"),e.createElement("span",null,"[",r("TurnPage"),"]Ctrl+Enter")),e.createElement("div",{className:o.wordCount},e.createElement("span",{className:B>=C?o.warning:""},B),"/",e.createElement("span",null,C)));return M(()=>{s&&y(!1)},[s]),M(()=>{v(!1)},[b]),e.createElement("div",{className:o.textField},e.createElement("div",{className:o.label},e.createElement("span",{className:z({[o.required]:c.required})},c.label),e.createElement(ne,{onClick:()=>{s||I("")},title:"",disabled:s}),e.createElement("div",{className:o.extra},L)),e.createElement("div",{className:z({disabled:s,"textarea-outline":!0,"ant-input-focused":f,[o.textareaContainer]:!0,[o.focus]:f,[o.invalid]:w}),style:f?K:{}},e.createElement(ie,{footer:E,textareaProps:m})))},ye=u=>{const{configList:n,autofocus:r,textID:A,result:f,showText:y,updateText:w,toggleShowText:v,textInputDisabled:s,isCheck:c,isEdit:D,config:x,preContext:F,regions:P=[],textConfigurable:O=!0,clipTextConfigurable:b,clipAttributeConfigurable:g,updateRegion:N,clipAttributeList:T=[]}=u,{t:K}=ee(),[L,C]=R(0),[k,B]=R(""),I=X(null),{audioClipState:$}=xe(),m=n||[le({},fe)];let E=P;if(b&&!c){const t=$.selectedRegion.id;E=E.filter(l=>l.id===t)}const a=t=>{setTimeout(()=>{const l=document.getElementById(`textInput-${t}`);l&&(C(t),l.focus(),l.select(),l.scrollIntoView({behavior:"smooth",block:"center"}))})},i=t=>{const l=O?m.length:0,p=b?E.length:0,h=l+p,S=(t+1)%h;a(S)},Q=t=>{t.keyCode===d.Tab&&(t.preventDefault(),m.length>0&&a(0))},j=t=>{const l=document.getElementById(`textInput-${L}`);if(!(x==null?void 0:x.enablePlaceholderHotkey)||!l||!w)return;const{value:p,selectionStart:h,selectionEnd:S}=l,_=`${p.slice(0,h)}${t}${p.slice(S)}`;w(_,m[L].key),B(t),setTimeout(()=>{l.setSelectionRange(h+1,h+1),l.focus()},0),clearTimeout(I.current),I.current=setTimeout(()=>{B("")},400)};M(()=>(D||document.addEventListener("keydown",Q),()=>{document.removeEventListener("keydown",Q)}),[n]),M(()=>{r&&!s&&a(0)},[A]);let H=m;c&&(H=m.filter(t=>(f==null?void 0:f[t.key])!==void 0));let U={};return b&&E&&E.forEach(t=>{const{id:l,text:p}=t;U[l]=p}),e.createElement(e.Fragment,null,(x==null?void 0:x.enablePlaceholderHotkey)&&e.createElement("div",{className:o.placeholderHotkey},e.createElement("div",{className:o.title},"\u5360\u4F4D\u7B26\u5FEB\u6377\u8F93\u5165",e.createElement(J,{overlayStyle:{maxWidth:240},title:e.createElement("div",null,e.createElement("div",null,"\u4986\uFF08Ctrl+1\uFF09\uFF1A"),e.createElement("div",{style:{marginBottom:12}},"\u6587\u5B57\u5F02\u5E38\uFF0C\u4F46\u53EA\u6839\u636E\u8FD9\u4E2A\u5B57\u7684\u5F62\u72B6\u5C31\u53EF\u4EE5\u731C\u51FA\u662F\u4EC0\u4E48\u5B57"),e.createElement("div",null,"\u652B\uFF08Ctrl+2\uFF09\uFF1A"),e.createElement("div",{style:{marginBottom:12}},"\u6587\u5B57\u5F02\u5E38\uFF0C\u4E14\u65E0\u6CD5\u6839\u636E\u5F62\u72B6\u731C\u5B57\uFF0C\u4F46\u80FD\u7ED3\u5408\u4E0A\u4E0B\u6587\u8BED\u4E49\u5224\u65AD\u51FA\u662F\u4EC0\u4E48\u5B57"),e.createElement("div",null,"\u7383\uFF08Ctrl+3\uFF09\uFF1A"),e.createElement("div",null,"\u5B8C\u5168\u65E0\u6CD5\u5224\u65AD\u662F\u4EC0\u4E48\u5B57")),placement:"bottom"},e.createElement(ce,{className:o.questionIcon}))),e.createElement(q.Group,{value:k},e.createElement(q.Button,{value:"\u4986",onClick:t=>j(t.target.value)},e.createElement("div",{className:"label"},e.createElement("div",{className:"text"},"\u4986 (\u89C6\u89C9)"),e.createElement("div",{className:"hotkey"},"Ctrl+1"))),e.createElement(q.Button,{value:"\u652B",onClick:t=>j(t.target.value)},e.createElement("div",{className:"label"},e.createElement("div",{className:"text"},"\u652B (\u8BED\u4E49)"),e.createElement("div",{className:"hotkey"},"Ctrl+2"))),e.createElement(q.Button,{value:"\u7383",onClick:t=>j(t.target.value)},e.createElement("div",{className:"label"},e.createElement("div",{className:"text"},"\u7383 (\u65E0\u6548)"),e.createElement("div",{className:"hotkey"},"Ctrl+3"))))),e.createElement("div",{className:o.textInputContainer},e.createElement(Z,{audioContext:F==null?void 0:F.before}),O&&H.map((t,l)=>e.createElement(G,{config:t,key:l,index:l,result:f,updateText:w,switchToNextTextarea:i,hasMultiple:m.length>1,disabled:s,textID:A,addPlaceholder:j,onFocus:()=>C(l)})),b&&E.map((t,l)=>{const{id:p,start:h,end:S,attribute:_}=t,oe={label:`${K("textTool")}\uFF08${Y(h,"ss.SSS")} - ${Y(S,"ss.SSS")}\uFF09`,key:p,maxLength:3e3},V=H.length+l,W=de(_,T),re={color:me(_,T),backgroundColor:W};return e.createElement(G,{config:oe,key:l,index:V,disabled:s,result:U,updateText:ue=>{N==null||N(Te(le({},t),{text:ue}))},switchToNextTextarea:()=>{i(V)},hasMultiple:!0,onFocus:()=>C(V),onFocusStyle:g?{borderColor:W,boxShadow:`0 0 0 2px ${Ee(W,.4)}`}:{},extra:g?e.createElement("div",{style:re,className:o.attribute},pe(_,[{value:"",key:"\u65E0\u5C5E\u6027"},...T])):null})}),e.createElement(Z,{audioContext:F==null?void 0:F.after}),v&&e.createElement("div",{className:o.switchItem},"\u6587\u672C\u5BF9\u7167\u663E\u793A",e.createElement(se,{style:{alignSelf:"center"},checked:y,onChange:t=>{v(t)}}))))};export{ne as ClearIcon,G as SingleTextInput,ye as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import d from"react";import{connect as m}from"react-redux";import{LabelBeeContext as l,useDispatch as T}from"../../store/ctx.js";import{ANNOTATION_ACTIONS as a}from"../../store/Actions.js";import{PageBackward as g,PageForward as u,PageJump as A}from"../../store/annotation/actionCreators.js";import{TagToolInstanceAdaptor as f}from"../videoPlayer/TagToolInstanceAdaptor.js";const O=o=>{const{imgList:n,imgIndex:r,stepList:s,step:c}=o.annotation,t=T(),p=e=>{t({type:a.SET_TOOL,payload:{instance:e}})},i=()=>{t({type:a.SET_TOOL,payload:{instance:void 0}})};return d.createElement(f,{imgIndex:r,imgList:n,pageBackward:()=>t(g()),pageForward:()=>t(u()),pageJump:e=>t(A(~~e)),onMounted:p,onUnmounted:i,stepList:s,step:c})};var x=m(({annotation:o})=>({annotation:o}),null,null,{context:l})(O);export{x as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import h from"react";import{CommonToolUtils as p,uuid as f}from"@labelbee/lb-annotation";import y from"../../utils/StepUtils.js";import{jsonParser as c}from"../../utils/index.js";import{VideoPlayer as L}from"./index.js";import{VideoTagLayer as R}from"./VideoTagLayer.js";import g from"lodash";import{getKeyCodeNumber as b}from"./utils.js";class S extends h.Component{constructor(i){super(i);this.fns={},this.labelSelectedList=[],this.clearResult=(t=!0,e)=>{const s=e?this.state.tagResult.map(l=>((l==null?void 0:l.result[e])&&delete l.result[e],l)):[];this.setState({tagResult:s},()=>this.emitEvent("render"))},this.exportData=()=>{var t,e,s,l,r,n,o;const a=(e=(t=this.videoRef)==null?void 0:t.duration)!=null?e:0,d=(s=this.videoRef)==null?void 0:s.getVideoPlaybackQuality(),u=d==null?void 0:d.totalVideoFrames,m=(r=(l=this.videoRef)==null?void 0:l.videoWidth)!=null?r:0,v=(o=(n=this.videoRef)==null?void 0:n.videoHeight)!=null?o:0;return[this.state.tagResult,{valid:this.state.valid,duration:a,frames:u,videoWidth:m,videoHeight:v}]},this.emitEvent=t=>{this.fns[t]&&this.fns[t]()},this.combineResult=(t,e={})=>{var s,l;const{isMulti:r}=t,{key:n,value:o}=t.value;if(r){let a=(l=(s=e[n])==null?void 0:s.split(";"))!=null?l:[];a.includes(o)?a=a.filter(u=>u!==o):a.push(o);const d=new Set(a);return e[n]=Array.from(d).join(";"),g.pickBy(e,u=>u)}return e[n]=e[n]===o?void 0:o,g.pickBy(e,a=>a)},this.setResult=t=>{this.setState({tagResult:t}),this.fns.render&&this.fns.render()},this.setLabel=(t,e)=>{this.setLabelBySelectedList(t,e)},this.keydown=t=>{const e=b(t.keyCode);if(e){const s=e-1;if(this.config.inputList.length===1){this.labelSelectedList=[0,s],this.setLabel(0,s),setTimeout(()=>{this.labelSelectedList=[],this.emitEvent("render")},500);return}this.labelSelectedList.length===1?(this.labelSelectedList=[this.labelSelectedList[0],s],this.setLabel(this.labelSelectedList[0],s),setTimeout(()=>{this.labelSelectedList=[],this.emitEvent("render")},500)):(this.labelSelectedList=[s],this.emitEvent("expend"))}},this.setValid=t=>{this.setState({valid:t}),t===!1&&this.setState({tagResult:[]}),this.emitEvent("render")},this.setResultFromImgList=t=>{var e;const{imgList:s,imgIndex:l,step:r}=t;if(!s[l])return;const n=c(s[l].result),o=n[`step_${r}`];this.setState({tagResult:(e=o==null?void 0:o.result)!=null?e:[],valid:(n==null?void 0:n.valid)===void 0?!0:n.valid})},this.state={tagResult:[],labelSelectedList:[],valid:!0}}get config(){const i=y.getCurrentStepInfo(this.props.step,this.props.stepList);return c(i==null?void 0:i.config)}get history(){return{initRecord:()=>{},pushHistory:()=>{}}}get currentTagResult(){var i;return(i=this.state.tagResult[0])!=null?i:{}}get valid(){return this.state.valid}singleOn(i,t){this.fns[i]=t}on(i,t){this.singleOn(i,t)}getTagResultByCode(i,t){var e,s,l;try{const r=(s=(e=this.config)==null?void 0:e.inputList)!=null?s:[],n=r.length>1,o=t!==void 0?i:0,a=t!==void 0?t:i,d=n?r[o]:r[0],u=((l=d.subSelected)!=null?l:[])[a];if(d&&u)return{value:{key:d.value,value:u.value},isMulti:d.isMulti}}catch(r){return}}setLabelBySelectedList(i,t){var e,s,l,r;const n=this.getTagResultByCode(i,t);if(n){const o=this.combineResult(n,(s=(e=this.state.tagResult[0])==null?void 0:e.result)!=null?s:{}),a=[{sourceID:p.getSourceID(),id:(r=(l=this.currentTagResult)==null?void 0:l.id)!=null?r:f(8,62),result:o}];this.setState({tagResult:a},()=>this.emitEvent("render"))}}componentDidMount(){document.addEventListener("keydown",this.keydown),this.props.onMounted(this),this.setResultFromImgList(this.props)}componentWillUnmount(){document.addEventListener("keydown",this.keydown),this.props.onUnmounted()}shouldComponentUpdate(i){return i.imgIndex!==this.props.imgIndex&&this.setResultFromImgList(i),!0}render(){var i;const{imgIndex:t,imgList:e,pageForward:s,pageJump:l,pageBackward:r}=this.props,{tagResult:n,valid:o}=this.state;return h.createElement("div",{style:{height:"100%",width:"100%",position:"relative"}},h.createElement(L,{imgIndex:t,imgList:e,pageBackward:r,pageForward:s,pageJump:l,valid:o,setVideoRef:a=>{this.videoRef=a}}),h.createElement(R,{result:n,inputList:(i=this.config)==null?void 0:i.inputList}))}}export{S as TagToolInstanceAdaptor};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"react";import{result2LabelKey as
|
|
1
|
+
import e from"react";import{result2LabelKey as n}from"./utils.js";const i={position:"absolute",zIndex:20,padding:"0 20px",color:"white",fontSize:15,lineHeight:"32px",background:"rgba(0, 255, 255, 0.32)",top:0,right:0,maxHeight:"calc(100% - 80px)",overflowY:"scroll"},c=({result:r,inputList:l})=>{const a=n(r,l);return e.createElement("div",{style:i},e.createElement("table",null,e.createElement("tbody",null,a.map(({keyLabel:t,valuesLabelArray:o})=>e.createElement("tr",{key:t},e.createElement("td",{style:{paddingRight:8}},`${t}:`),e.createElement("td",null,`${o.join("\u3001")}`))))))};export{c as VideoTagLayer};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e
|
|
1
|
+
import e from"react";import{getClassName as o}from"../../../../utils/dom.js";import{PauseOutlined as C,CaretRightOutlined as y,CaretUpOutlined as x,CaretDownOutlined as T}from"@ant-design/icons";import{VideoPlayerCtx as c}from"../../index.js";import{Pagination as V}from"../../../../views/MainView/toolFooter/Pagination.js";import h from"../../../../assets/annotation/video/icon_keyboard_h.svg.js";import w from"../../../../views/MainView/toolFooter/FooterTips/ToolHotKey/index.js";import{useTranslation as v}from"react-i18next";import{decimalReserved as m}from"../../utils.js";import{cTool as P}from"@labelbee/lb-annotation";const{EVideoToolName:k}=P,u=t=>{const n=Math.floor(t/60),r=~~(t%60).toFixed(),a=(t*10).toString().split("").pop(),l=s=>s<10?`0${s}`:s;return`${l(n)}:${l(r)}:${a}`};var p;(function(t){t[t.Video=0]="Video",t[t.Audio=1]="Audio"})(p||(p={}));const b=()=>{const{currentTime:t,duration:n,buffered:r,setCurrentTime:a}=e.useContext(c),l=e.useRef(null),s=`${m(r/n*100,1)}%`,d=`${m(t/n*100,1)}%`,E=i=>{if(l.current){const f=i.clientX,g=l.current.clientWidth,N=m(f/g*n,1);a(N)}};return e.createElement("div",{className:o("video-progress"),ref:l,onClick:i=>{i.stopPropagation(),i.nativeEvent.stopImmediatePropagation(),E(i)}},e.createElement("div",{className:o("video-slider")},e.createElement("div",{className:o("video-slider","played"),style:{width:d}}),e.createElement("div",{className:o("video-slider","loaded"),style:{width:s}}),e.createElement("div",{className:o("video-slider","played"),style:{width:d}})),e.createElement("div",{className:o("video-slider-bar"),style:{left:d}}))},$=()=>{const{updateNextPlaybackRate:t,playbackRate:n}=e.useContext(c),{t:r}=v();return e.createElement("span",{className:o("video-controller","speed")},e.createElement("span",null,r("Speed")),e.createElement("span",{className:o("video-controller","speedNum")},`${n}x`),e.createElement("span",{className:o("video-controller","speedButton")},e.createElement(x,{onClick:()=>{t()}}),e.createElement(T,{onClick:()=>{t(!1)}})))},R=()=>{const{t}=v();return e.createElement(w,{title:e.createElement("span",{className:o("video-controller","hotkey")},e.createElement("img",{src:h}),t("Hotkeys")),style:{},toolName:k.VideoTagTool})},j=()=>{const{imgIndex:t,imgList:n,pageBackward:r,pageJump:a,pageForward:l}=e.useContext(c);return e.createElement(V,{isVideo:!0,pageBackward:r,imgIndex:t,pageJump:a,totalPage:n.length,pageForward:l,footerCls:o("video-controller")})},F=()=>{const{currentTime:t,duration:n}=e.useContext(c),r=n*10-t*10,a=(r>0?r:0)/10;return e.createElement("div",{className:o("video-controller","time")},`${u(t)} / -${u(a)}`)},B=()=>{const{playPause:t,isPlay:n}=e.useContext(c);return e.createElement("div",{className:o("video-controller","wrapper")},e.createElement(b,null),e.createElement("div",{className:o("video-controller")},e.createElement("span",{onClick:()=>{t()},className:o("video-controller","playButton")},n?e.createElement(C,null):e.createElement(y,null)),e.createElement(F,null),e.createElement($,null),e.createElement("div",{className:o("video-controller","holder")}),e.createElement(j,null),e.createElement(R,null)))};export{p as EPlayerType,B as default,u as videoTimeFormat};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import r from"react";import D from"./components/controller/index.js";import{getClassName as d}from"../../utils/dom.js";import{cKeyCode as I}from"@labelbee/lb-annotation";import{decimalReserved as h}from"./utils.js";import N from"../fileException/index.js";const s=I.default,u=r.createContext({isPlay:!1,playPause:()=>{},updateNextPlaybackRate:()=>{},playbackRate:1,currentTime:0,duration:0,buffered:0,setCurrentTime:()=>{},imgList:[],imgIndex:-1,pageBackward:()=>{},pageJump:f=>{},pageForward:()=>{}}),L=50,m=.1,l=[.5,1,1.5,2,4,6,8,16];class c extends r.Component{constructor(i){super(i);this.changePlaybackPate=e=>{this.videoElm&&(this.videoElm.playbackRate=e,this.setState({playbackRate:e}))},this.playPause=()=>{var e,t,a;((e=this.videoElm)==null?void 0:e.paused)?(t=this.videoElm)==null||t.play():(a=this.videoElm)==null||a.pause()},this.updateNextPlaybackRate=(e=!0)=>{const t=l.findIndex(o=>o===this.state.playbackRate);let a=e?Math.min(t+1,l.length-1):Math.max(t-1,0);this.changePlaybackPate(l[a])},this.fastForward=()=>{this.videoElm&&this.setCurrentTime(this.videoElm.currentTime+m)},this.rewind=()=>{this.videoElm&&this.setCurrentTime(this.videoElm.currentTime-m)},this.keydown=e=>{e.keyCode===s.Space&&(e.preventDefault(),this.playPause()),e.keyCode===s.Up&&(e.preventDefault(),this.updateNextPlaybackRate()),e.keyCode===s.Down&&(e.preventDefault(),this.updateNextPlaybackRate(!1)),e.keyCode===s.Left&&(e.preventDefault(),this.rewind()),e.keyCode===s.Right&&(e.preventDefault(),this.fastForward())},this.onPlay=()=>{this.setState({isPlay:!0},this.onVideoStart)},this.onPause=()=>{this.onVideoStopped()},this.onVideoStopped=()=>{this.setState({isPlay:!1}),this.timeInterval&&(clearInterval(this.timeInterval),this.timeInterval=void 0),this.videoElm&&this.setCurrentTime(this.videoElm.currentTime)},this.onVideoStart=()=>{this.timeInterval=window.setInterval(()=>{var e,t,a;if(this.videoElm)try{if(((e=this.videoElm)==null?void 0:e.buffered.length)>0){const o=(t=this.videoElm)==null?void 0:t.buffered.end(0);this.setState({currentTime:h((a=this.videoElm)==null?void 0:a.currentTime,1),buffered:o})}}catch(o){console.error(o)}},L)},this.resetVideoData=()=>{this.setState({currentTime:0,buffered:0,error:!1,isPlay:!1}),this.videoElm&&(this.videoElm.playbackRate=this.state.playbackRate),this.onVideoStopped()},this.setDuration=()=>{var e;if(this.videoElm){const t=h((e=this.videoElm)==null?void 0:e.duration,1);this.setState({duration:t})}},this.setCurrentTime=e=>{this.videoElm&&(this.videoElm.currentTime=e,this.setState({currentTime:e}))},this.reload=()=>{var e;(e=this.videoElm)==null||e.load()},this.onError=()=>{this.resetVideoData(),this.setState({error:!0})},this.state={playbackRate:1,currentTime:0,isPlay:!1,duration:0,buffered:0,error:!1},this.videoRef=r.createRef()}get videoElm(){var i;return(i=this.videoRef)==null?void 0:i.current}get videoSrc(){var i,e;const{imgIndex:t,imgList:a}=this.props;return t>-1&&(e=(i=a[t])==null?void 0:i.url)!=null?e:""}componentDidMount(){var i,e;window.addEventListener("keydown",this.keydown),((i=this.videoRef)==null?void 0:i.current)&&this.props.setVideoRef&&this.props.setVideoRef((e=this.videoRef)==null?void 0:e.current)}componentWillUnmount(){window.removeEventListener("keydown",this.keydown)}render(){const{isPlay:i,playbackRate:e,currentTime:t,duration:a,buffered:o,error:v}=this.state,{imgList:p,imgIndex:y,pageBackward:E,pageJump:P,pageForward:R,valid:b}=this.props,{playPause:n,updateNextPlaybackRate:k,onPause:g,onPlay:w,resetVideoData:C,setDuration:x,setCurrentTime:T,onError:S,videoRef:_,videoSrc:V}=this;return r.createElement(u.Provider,{value:{videoRef:this.videoRef,isPlay:i,playPause:n,updateNextPlaybackRate:k,playbackRate:e,currentTime:t,duration:a,buffered:o,setCurrentTime:T,imgIndex:y,imgList:p,pageBackward:E,pageJump:P,pageForward:R}},r.createElement("div",{className:d("video-wrapper")},r.createElement("div",{className:d("video-container")},r.createElement("video",{ref:_,className:d("video"),src:V,onPause:g,onPlay:w,onLoadedMetadata:C,onError:S,onDurationChange:x,width:"100%",height:"100%",onClick:n}),r.createElement(N,{fileType:"video",errorProps:{reloadImage:this.reload,backgroundColor:"#e2e2e2",ignoreOffsetY:!0,isError:v},invalidProps:{isValid:b}})),r.createElement(D,null)))}}export{c as VideoPlayer,u as VideoPlayerCtx,c as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const o=(e,r,l)=>{const a=l.find(n=>n.value===e),u=a.subSelected.find(n=>n.value===r);return{keyLabel:a.key,valueLabel:u.key}},c=(e,r)=>e.sort((l,a)=>{const u=r.findIndex(t=>l===t.value),n=r.findIndex(t=>a===t.value);return u-n}),f=(e,r)=>{var l;try{return(l=e==null?void 0:e.reduce((a,u)=>(c(Object.keys(u.result),r).forEach(n=>{var t;const s=(t=u.result[n])==null?void 0:t.split(";");b(s,n,r,a)}),a),[]))!=null?l:[]}catch(a){return[]}},b=(e,r,l,a)=>{e.forEach(u=>{const{keyLabel:n,valueLabel:t}=o(r,u,l),s=a.find(d=>d.keyLabel===n);s?s.valuesLabelArray.push(t):a.push({keyLabel:n,valuesLabelArray:[t]})})},i=e=>e<=57&&e>=49?e-48:e<=105&&e>=97?e-96:0,v=(e,r=2)=>typeof e=="number"?parseFloat(e.toFixed(r)):e;export{v as decimalReserved,o as findTagLabel,i as getKeyCodeNumber,f as result2LabelKey,c as tagsSortThruInputList};
|