@uniai-fe/uds-templates 0.4.21 → 0.4.22
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uniai-fe/uds-templates",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.22",
|
|
4
4
|
"description": "UNIAI Design System; UI Templates Package",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": false,
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
72
|
"@svgr/webpack": "^8.1.0",
|
|
73
|
-
"@tanstack/react-query": "^5.
|
|
73
|
+
"@tanstack/react-query": "^5.96.0",
|
|
74
74
|
"@types/node": "^24.10.2",
|
|
75
75
|
"@types/react": "^19.2.14",
|
|
76
76
|
"@types/react-dom": "^19.2.3",
|
|
@@ -11,6 +11,7 @@ export default function CCTVVideoOverlayHeader({
|
|
|
11
11
|
activeTitle,
|
|
12
12
|
title,
|
|
13
13
|
isLive,
|
|
14
|
+
isShared,
|
|
14
15
|
}: CctvVideoOverlayHeaderProps) {
|
|
15
16
|
const showUpper = activeLiveState || activeCloseButton;
|
|
16
17
|
const showLower = activeTitle;
|
|
@@ -23,7 +24,15 @@ export default function CCTVVideoOverlayHeader({
|
|
|
23
24
|
>
|
|
24
25
|
{showUpper && (
|
|
25
26
|
<div className="cctv-video-overlay-header-upper">
|
|
26
|
-
{activeLiveState &&
|
|
27
|
+
{activeLiveState && (
|
|
28
|
+
<CCTVVideoLiveState
|
|
29
|
+
isLive={isLive}
|
|
30
|
+
isShared={isShared}
|
|
31
|
+
{...(activeCloseButton
|
|
32
|
+
? { badgeOptions: { size: "medium" } }
|
|
33
|
+
: {})}
|
|
34
|
+
/>
|
|
35
|
+
)}
|
|
27
36
|
{activeCloseButton && <CCTVVideoCloseButton />}
|
|
28
37
|
</div>
|
|
29
38
|
)}
|
|
@@ -1,21 +1,27 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import clsx from "clsx";
|
|
4
|
-
import { Badge } from "@uniai-fe/uds-primitives";
|
|
4
|
+
import { Badge, type BadgeProps } from "@uniai-fe/uds-primitives";
|
|
5
5
|
|
|
6
6
|
export default function CCTVVideoLiveState({
|
|
7
7
|
isLive = false,
|
|
8
|
+
isShared = false,
|
|
9
|
+
badgeOptions,
|
|
8
10
|
}: {
|
|
9
11
|
isLive?: boolean;
|
|
12
|
+
isShared?: boolean;
|
|
13
|
+
badgeOptions?: Partial<Omit<BadgeProps, "className" | "children">>;
|
|
10
14
|
}) {
|
|
15
|
+
const { size, intent, ...options } = badgeOptions ?? {};
|
|
11
16
|
return (
|
|
12
17
|
<Badge
|
|
13
|
-
size="xsmall"
|
|
14
|
-
intent="tertiary"
|
|
18
|
+
size={size ?? "xsmall"}
|
|
19
|
+
intent={intent ?? "tertiary"}
|
|
15
20
|
className={clsx("cctv-video-live-state", { on: isLive == true })}
|
|
21
|
+
{...options}
|
|
16
22
|
>
|
|
17
23
|
<figure className="cctv-video-live-state-dot"></figure>
|
|
18
|
-
<span>Live</span>
|
|
24
|
+
<span>{isShared ? "외부공유중" : "Live"}</span>
|
|
19
25
|
</Badge>
|
|
20
26
|
);
|
|
21
27
|
}
|
package/src/cctv/types/api.ts
CHANGED
|
@@ -29,6 +29,7 @@ export interface API_Req_GetCompanyListParams extends Omit<
|
|
|
29
29
|
* @property {boolean} cam_online 카메라 설치상태
|
|
30
30
|
* @property {string} [cam_rtc] 카메라 스트리밍 WebRTC 경로
|
|
31
31
|
* @property {string} [cam_rtcp] 카메라 RTCP 경로
|
|
32
|
+
* @property {boolean} [cam_shared] 카메라 외부공유 여부
|
|
32
33
|
*/
|
|
33
34
|
export interface API_Res_CctvCompanyCameraList {
|
|
34
35
|
// API 응답은 데이터-only 구조이므로 UI 전용 콜백은 포함하지 않는다.
|
|
@@ -54,6 +55,10 @@ export interface API_Res_CctvCompanyCameraList {
|
|
|
54
55
|
* RTCP 경로
|
|
55
56
|
*/
|
|
56
57
|
cam_rtcp?: string;
|
|
58
|
+
/**
|
|
59
|
+
* 외부공유 상태
|
|
60
|
+
*/
|
|
61
|
+
cam_shared?: boolean;
|
|
57
62
|
}
|
|
58
63
|
|
|
59
64
|
/**
|
package/src/cctv/types/props.ts
CHANGED
|
@@ -9,6 +9,7 @@ import type { CctvCompanyCameraData } from "./list";
|
|
|
9
9
|
* @property {React.ReactNode} [title] 제목 콘텐츠
|
|
10
10
|
* @property {boolean} [activeTime] 시간 표시 영역 활성화 여부
|
|
11
11
|
* @property {boolean} [isLive] Live 뱃지를 on/off 상태로 표시할지 여부
|
|
12
|
+
* @property {boolean} [isShared] 외부공유 여부
|
|
12
13
|
*/
|
|
13
14
|
export interface CctvVideoOverlayHeaderProps {
|
|
14
15
|
className?: string;
|
|
@@ -32,6 +33,10 @@ export interface CctvVideoOverlayHeaderProps {
|
|
|
32
33
|
* 시간 표시 영역 활성화 여부
|
|
33
34
|
*/
|
|
34
35
|
isLive?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* 해당 카메라의 외부공유 여부 상태
|
|
38
|
+
*/
|
|
39
|
+
isShared?: boolean;
|
|
35
40
|
}
|
|
36
41
|
|
|
37
42
|
/**
|