camstreamerlib 4.0.0-beta.29 → 4.0.0-beta.30
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/README.md +6 -2
- package/cjs/CamOverlayAPI.d.ts +38 -615
- package/cjs/CamOverlayAPI.js +128 -104
- package/cjs/CamOverlayDrawingAPI.d.ts +2 -47
- package/cjs/CamOverlayPainter/Frame.d.ts +8 -37
- package/cjs/CamOverlayPainter/Frame.js +33 -0
- package/cjs/CamOverlayPainter/Painter.d.ts +5 -10
- package/cjs/CamOverlayPainter/Painter.js +2 -4
- package/cjs/CamOverlayPainter/ResourceManager.d.ts +3 -2
- package/cjs/CamOverlayPainter/ResourceManager.js +2 -1
- package/cjs/CamScripterAPI.d.ts +12 -12
- package/cjs/CamScripterAPI.js +33 -27
- package/cjs/CamStreamerAPI.d.ts +11 -9
- package/cjs/CamStreamerAPI.js +28 -22
- package/cjs/CamSwitcherAPI.d.ts +35 -34
- package/cjs/CamSwitcherAPI.js +94 -82
- package/cjs/PlaneTrackerAPI.d.ts +30 -36
- package/cjs/PlaneTrackerAPI.js +132 -71
- package/cjs/VapixAPI.d.ts +43 -40
- package/cjs/VapixAPI.js +205 -183
- package/cjs/events/AxisCameraStationEvents.d.ts +5 -5
- package/cjs/events/AxisCameraStationEvents.js +17 -12
- package/cjs/events/GenetecAgent.d.ts +2 -0
- package/cjs/events/GenetecAgent.js +15 -4
- package/cjs/index.d.ts +7 -1
- package/cjs/index.js +12 -2
- package/cjs/internal/ProxyClient.d.ts +7 -8
- package/cjs/internal/ProxyClient.js +25 -31
- package/cjs/internal/types.d.ts +16 -9
- package/cjs/internal/utils.d.ts +1 -2
- package/cjs/internal/utils.js +1 -5
- package/cjs/node/DefaultClient.d.ts +3 -5
- package/cjs/node/DefaultClient.js +10 -14
- package/cjs/node/HttpRequestSender.d.ts +1 -0
- package/cjs/node/HttpRequestSender.js +13 -3
- package/cjs/node/WsClient.d.ts +1 -0
- package/cjs/node/index.d.ts +2 -0
- package/cjs/node/index.js +18 -1
- package/cjs/{models/CamOverlayAPI/widgetsSchema.d.ts → types/CamOverlayAPI/CamOverlayAPI.d.ts} +625 -375
- package/cjs/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/CamOverlayAPI.js} +65 -14
- package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.d.ts +40 -10
- package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.js +11 -9
- package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.d.ts +89 -5
- package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.js +9 -7
- package/{esm/models → cjs/types}/CamOverlayAPI/imagesSchema.d.ts +40 -13
- package/cjs/types/CamOverlayAPI/imagesSchema.js +12 -0
- package/cjs/{models → types}/CamOverlayAPI/index.d.ts +0 -4
- package/cjs/{models → types}/CamOverlayAPI/index.js +0 -4
- package/{esm/models → cjs/types}/CamOverlayAPI/infotickerSchema.d.ts +43 -9
- package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.js +10 -8
- package/{esm/models → cjs/types}/CamOverlayAPI/pipSchema.d.ts +48 -7
- package/cjs/{models → types}/CamOverlayAPI/pipSchema.js +8 -6
- package/{esm/models → cjs/types}/CamOverlayAPI/ptzCompassSchema.d.ts +40 -7
- package/cjs/{models → types}/CamOverlayAPI/ptzCompassSchema.js +8 -6
- package/cjs/{models → types}/CamOverlayAPI/ptzSchema.d.ts +42 -14
- package/cjs/types/CamOverlayAPI/ptzSchema.js +15 -0
- package/{esm/models → cjs/types}/CamOverlayAPI/screenSharingSchema.d.ts +26 -5
- package/cjs/types/CamOverlayAPI/screenSharingSchema.js +11 -0
- package/cjs/{models → types}/CamOverlayAPI/webCameraSharingSchema.d.ts +26 -5
- package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +11 -0
- package/cjs/types/CamOverlayDrawingAPI.d.ts +58 -0
- package/cjs/types/CamOverlayDrawingAPI.js +2 -0
- package/cjs/types/CamOverlayPainter.d.ts +74 -0
- package/cjs/types/CamOverlayPainter.js +2 -0
- package/cjs/types/CamStreamerAPI.d.ts +4 -4
- package/cjs/types/PlaneTrackerAPI.d.ts +6 -0
- package/cjs/types/common.d.ts +12 -3
- package/cjs/web/DefaultClient.d.ts +4 -4
- package/cjs/web/DefaultClient.js +21 -11
- package/esm/CamOverlayAPI.d.ts +38 -615
- package/esm/CamOverlayAPI.js +127 -103
- package/esm/CamOverlayDrawingAPI.d.ts +2 -47
- package/esm/CamOverlayPainter/Frame.d.ts +8 -37
- package/esm/CamOverlayPainter/Frame.js +33 -0
- package/esm/CamOverlayPainter/Painter.d.ts +5 -10
- package/esm/CamOverlayPainter/Painter.js +1 -2
- package/esm/CamOverlayPainter/ResourceManager.d.ts +3 -2
- package/esm/CamOverlayPainter/ResourceManager.js +1 -1
- package/esm/CamScripterAPI.d.ts +12 -12
- package/esm/CamScripterAPI.js +32 -26
- package/esm/CamStreamerAPI.d.ts +11 -9
- package/esm/CamStreamerAPI.js +28 -22
- package/esm/CamSwitcherAPI.d.ts +35 -34
- package/esm/CamSwitcherAPI.js +95 -83
- package/esm/PlaneTrackerAPI.d.ts +30 -36
- package/esm/PlaneTrackerAPI.js +131 -70
- package/esm/VapixAPI.d.ts +43 -40
- package/esm/VapixAPI.js +204 -182
- package/esm/events/AxisCameraStationEvents.d.ts +5 -5
- package/esm/events/AxisCameraStationEvents.js +18 -13
- package/esm/events/GenetecAgent.d.ts +2 -0
- package/esm/events/GenetecAgent.js +15 -4
- package/esm/index.d.ts +7 -1
- package/esm/index.js +7 -1
- package/esm/internal/ProxyClient.d.ts +7 -8
- package/esm/internal/ProxyClient.js +25 -31
- package/esm/internal/types.d.ts +16 -9
- package/esm/internal/utils.d.ts +1 -2
- package/esm/internal/utils.js +0 -3
- package/esm/node/DefaultClient.d.ts +3 -5
- package/esm/node/DefaultClient.js +10 -14
- package/esm/node/HttpRequestSender.d.ts +1 -0
- package/esm/node/HttpRequestSender.js +13 -3
- package/esm/node/WsClient.d.ts +1 -0
- package/esm/node/index.d.ts +2 -0
- package/esm/node/index.js +2 -0
- package/esm/{models/CamOverlayAPI/widgetsSchema.d.ts → types/CamOverlayAPI/CamOverlayAPI.d.ts} +625 -375
- package/esm/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/CamOverlayAPI.js} +64 -13
- package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.d.ts +40 -10
- package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.js +3 -2
- package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.d.ts +89 -5
- package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.js +3 -2
- package/{cjs/models → esm/types}/CamOverlayAPI/imagesSchema.d.ts +40 -13
- package/esm/types/CamOverlayAPI/imagesSchema.js +8 -0
- package/esm/{models → types}/CamOverlayAPI/index.d.ts +0 -4
- package/esm/{models → types}/CamOverlayAPI/index.js +0 -4
- package/{cjs/models → esm/types}/CamOverlayAPI/infotickerSchema.d.ts +43 -9
- package/esm/{models → types}/CamOverlayAPI/infotickerSchema.js +3 -2
- package/{cjs/models → esm/types}/CamOverlayAPI/pipSchema.d.ts +48 -7
- package/esm/{models → types}/CamOverlayAPI/pipSchema.js +3 -2
- package/{cjs/models → esm/types}/CamOverlayAPI/ptzCompassSchema.d.ts +40 -7
- package/esm/{models → types}/CamOverlayAPI/ptzCompassSchema.js +3 -2
- package/esm/{models → types}/CamOverlayAPI/ptzSchema.d.ts +42 -14
- package/esm/{models → types}/CamOverlayAPI/ptzSchema.js +3 -2
- package/{cjs/models → esm/types}/CamOverlayAPI/screenSharingSchema.d.ts +26 -5
- package/esm/types/CamOverlayAPI/screenSharingSchema.js +7 -0
- package/esm/{models → types}/CamOverlayAPI/webCameraSharingSchema.d.ts +26 -5
- package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +7 -0
- package/esm/types/CamOverlayDrawingAPI.d.ts +58 -0
- package/esm/types/CamOverlayDrawingAPI.js +1 -0
- package/esm/types/CamOverlayPainter.d.ts +74 -0
- package/esm/types/CamOverlayPainter.js +1 -0
- package/esm/types/CamStreamerAPI.d.ts +4 -4
- package/esm/types/PlaneTrackerAPI.d.ts +6 -0
- package/esm/types/common.d.ts +12 -3
- package/esm/web/DefaultClient.d.ts +4 -4
- package/esm/web/DefaultClient.js +21 -11
- package/package.json +2 -2
- package/cjs/models/CamOverlayAPI/constants.d.ts +0 -11
- package/cjs/models/CamOverlayAPI/constants.js +0 -14
- package/cjs/models/CamOverlayAPI/fileSchema.d.ts +0 -28
- package/cjs/models/CamOverlayAPI/fileSchema.js +0 -17
- package/cjs/models/CamOverlayAPI/imagesSchema.js +0 -10
- package/cjs/models/CamOverlayAPI/ptzSchema.js +0 -13
- package/cjs/models/CamOverlayAPI/screenSharingSchema.js +0 -9
- package/cjs/models/CamOverlayAPI/webCameraSharingSchema.js +0 -9
- package/cjs/models/CamOverlayAPI/widgetCommonSchema.d.ts +0 -126
- package/cjs/models/CamOverlayAPI/widgetsSchema.js +0 -27
- package/cjs/types/CamOverlayAPI.d.ts +0 -328
- package/cjs/types/CamOverlayAPI.js +0 -26
- package/esm/models/CamOverlayAPI/constants.d.ts +0 -11
- package/esm/models/CamOverlayAPI/constants.js +0 -11
- package/esm/models/CamOverlayAPI/fileSchema.d.ts +0 -28
- package/esm/models/CamOverlayAPI/fileSchema.js +0 -14
- package/esm/models/CamOverlayAPI/imagesSchema.js +0 -7
- package/esm/models/CamOverlayAPI/screenSharingSchema.js +0 -6
- package/esm/models/CamOverlayAPI/webCameraSharingSchema.js +0 -6
- package/esm/models/CamOverlayAPI/widgetCommonSchema.d.ts +0 -126
- package/esm/models/CamOverlayAPI/widgetsSchema.js +0 -24
- package/esm/types/CamOverlayAPI.d.ts +0 -328
- package/esm/types/CamOverlayAPI.js +0 -14
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TWidget } from './CamOverlayAPI';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
export declare const pipSchema: z.ZodObject<{
|
|
3
4
|
id: z.ZodNumber;
|
|
@@ -48,20 +49,20 @@ export declare const pipSchema: z.ZodObject<{
|
|
|
48
49
|
scale: z.ZodNumber;
|
|
49
50
|
}, "strip", z.ZodTypeAny, {
|
|
50
51
|
name: "pip";
|
|
52
|
+
compression: number;
|
|
51
53
|
enabled: 0 | 1;
|
|
52
54
|
id: number;
|
|
53
55
|
width: number;
|
|
54
56
|
height: number;
|
|
55
57
|
fps: number;
|
|
58
|
+
pos_x: number;
|
|
59
|
+
pos_y: number;
|
|
56
60
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
57
61
|
cameraList: number[];
|
|
58
62
|
customName: string;
|
|
59
63
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
60
|
-
pos_x: number;
|
|
61
|
-
pos_y: number;
|
|
62
64
|
scale: number;
|
|
63
65
|
screenSize: number;
|
|
64
|
-
compression: number;
|
|
65
66
|
source_type: "axis_camera" | "mjpeg_url";
|
|
66
67
|
mjpeg_url: string;
|
|
67
68
|
camera_ip: string;
|
|
@@ -80,26 +81,66 @@ export declare const pipSchema: z.ZodObject<{
|
|
|
80
81
|
};
|
|
81
82
|
borderColor: string;
|
|
82
83
|
borderWidth: number;
|
|
84
|
+
camera?: number | undefined;
|
|
83
85
|
schedule?: string | undefined;
|
|
84
86
|
invertInput?: boolean | undefined;
|
|
85
|
-
camera?: number | undefined;
|
|
86
87
|
zIndex?: number | undefined;
|
|
87
88
|
}, {
|
|
88
89
|
name: "pip";
|
|
90
|
+
compression: number;
|
|
89
91
|
enabled: 0 | 1;
|
|
90
92
|
id: number;
|
|
91
93
|
width: number;
|
|
92
94
|
height: number;
|
|
93
95
|
fps: number;
|
|
96
|
+
pos_x: number;
|
|
97
|
+
pos_y: number;
|
|
94
98
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
95
99
|
cameraList: number[];
|
|
96
100
|
customName: string;
|
|
97
101
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
102
|
+
scale: number;
|
|
103
|
+
screenSize: number;
|
|
104
|
+
source_type: "axis_camera" | "mjpeg_url";
|
|
105
|
+
mjpeg_url: string;
|
|
106
|
+
camera_ip: string;
|
|
107
|
+
camera_port: number;
|
|
108
|
+
camera_user: string;
|
|
109
|
+
camera_pass: string;
|
|
110
|
+
camera_width: number;
|
|
111
|
+
camera_height: number;
|
|
112
|
+
camera_view_area: string;
|
|
113
|
+
camera_overlay_params: "overlays=off" | "overlays=all" | "overlays=text" | "overlays=image" | "overlays=application";
|
|
114
|
+
rotate: 0 | 90 | 180 | 270;
|
|
115
|
+
dewarping: {
|
|
116
|
+
enabled: boolean;
|
|
117
|
+
rectangle: [number, number][];
|
|
118
|
+
aspectRatioCorrection: number;
|
|
119
|
+
};
|
|
120
|
+
borderColor: string;
|
|
121
|
+
borderWidth: number;
|
|
122
|
+
camera?: number | undefined;
|
|
123
|
+
schedule?: string | undefined;
|
|
124
|
+
invertInput?: boolean | undefined;
|
|
125
|
+
zIndex?: number | undefined;
|
|
126
|
+
}>;
|
|
127
|
+
export type TPip = z.infer<typeof pipSchema>;
|
|
128
|
+
export declare const isPip: (widget: TWidget) => widget is {
|
|
129
|
+
name: "pip";
|
|
130
|
+
compression: number;
|
|
131
|
+
enabled: 0 | 1;
|
|
132
|
+
id: number;
|
|
133
|
+
width: number;
|
|
134
|
+
height: number;
|
|
135
|
+
fps: number;
|
|
98
136
|
pos_x: number;
|
|
99
137
|
pos_y: number;
|
|
138
|
+
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
139
|
+
cameraList: number[];
|
|
140
|
+
customName: string;
|
|
141
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
100
142
|
scale: number;
|
|
101
143
|
screenSize: number;
|
|
102
|
-
compression: number;
|
|
103
144
|
source_type: "axis_camera" | "mjpeg_url";
|
|
104
145
|
mjpeg_url: string;
|
|
105
146
|
camera_ip: string;
|
|
@@ -118,8 +159,8 @@ export declare const pipSchema: z.ZodObject<{
|
|
|
118
159
|
};
|
|
119
160
|
borderColor: string;
|
|
120
161
|
borderWidth: number;
|
|
162
|
+
camera?: number | undefined;
|
|
121
163
|
schedule?: string | undefined;
|
|
122
164
|
invertInput?: boolean | undefined;
|
|
123
|
-
camera?: number | undefined;
|
|
124
165
|
zIndex?: number | undefined;
|
|
125
|
-
}
|
|
166
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { coordinateSystemSchema, widgetCommonSchema } from './CamOverlayAPI';
|
|
2
|
+
import { allowedWidgetNames } from '../../CamOverlayAPI';
|
|
3
3
|
import { z } from 'zod';
|
|
4
4
|
export const pipSchema = widgetCommonSchema.extend({
|
|
5
5
|
name: z.literal(allowedWidgetNames.pip),
|
|
@@ -35,3 +35,4 @@ export const pipSchema = widgetCommonSchema.extend({
|
|
|
35
35
|
borderWidth: z.number(),
|
|
36
36
|
scale: z.number(),
|
|
37
37
|
});
|
|
38
|
+
export const isPip = (widget) => widget.name === 'pip';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TWidget } from './CamOverlayAPI';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
export declare const ptzCompassSchema: z.ZodObject<{
|
|
3
4
|
id: z.ZodNumber;
|
|
@@ -37,21 +38,21 @@ export declare const ptzCompassSchema: z.ZodObject<{
|
|
|
37
38
|
id: number;
|
|
38
39
|
width: number;
|
|
39
40
|
height: number;
|
|
41
|
+
pos_x: number;
|
|
42
|
+
pos_y: number;
|
|
40
43
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
41
44
|
cameraList: number[];
|
|
42
45
|
customName: string;
|
|
43
46
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
44
|
-
pos_x: number;
|
|
45
|
-
pos_y: number;
|
|
46
|
-
scale: number;
|
|
47
47
|
image: string;
|
|
48
|
+
scale: number;
|
|
48
49
|
northPan: number;
|
|
49
50
|
cameraPosX: number;
|
|
50
51
|
cameraPosY: number;
|
|
51
52
|
colorScheme: "black" | "white" | "orange";
|
|
53
|
+
camera?: number | undefined;
|
|
52
54
|
schedule?: string | undefined;
|
|
53
55
|
invertInput?: boolean | undefined;
|
|
54
|
-
camera?: number | undefined;
|
|
55
56
|
zIndex?: number | undefined;
|
|
56
57
|
generalLng?: number | undefined;
|
|
57
58
|
generalLat?: number | undefined;
|
|
@@ -67,21 +68,53 @@ export declare const ptzCompassSchema: z.ZodObject<{
|
|
|
67
68
|
id: number;
|
|
68
69
|
width: number;
|
|
69
70
|
height: number;
|
|
71
|
+
pos_x: number;
|
|
72
|
+
pos_y: number;
|
|
70
73
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
71
74
|
cameraList: number[];
|
|
72
75
|
customName: string;
|
|
73
76
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
77
|
+
image: string;
|
|
78
|
+
scale: number;
|
|
79
|
+
northPan: number;
|
|
80
|
+
cameraPosX: number;
|
|
81
|
+
cameraPosY: number;
|
|
82
|
+
colorScheme: "black" | "white" | "orange";
|
|
83
|
+
camera?: number | undefined;
|
|
84
|
+
schedule?: string | undefined;
|
|
85
|
+
invertInput?: boolean | undefined;
|
|
86
|
+
zIndex?: number | undefined;
|
|
87
|
+
generalLng?: number | undefined;
|
|
88
|
+
generalLat?: number | undefined;
|
|
89
|
+
generalZoom?: number | undefined;
|
|
90
|
+
generalMapType?: string | undefined;
|
|
91
|
+
generalIframeWidth?: number | undefined;
|
|
92
|
+
generalIframeHeight?: number | undefined;
|
|
93
|
+
generalAddress?: string | undefined;
|
|
94
|
+
}>;
|
|
95
|
+
export type TPtzCompass = z.infer<typeof ptzCompassSchema>;
|
|
96
|
+
export declare const isPtzCompass: (widget: TWidget) => widget is {
|
|
97
|
+
type: "map" | "image" | "compass";
|
|
98
|
+
name: "ptzCompass";
|
|
99
|
+
enabled: 0 | 1;
|
|
100
|
+
id: number;
|
|
101
|
+
width: number;
|
|
102
|
+
height: number;
|
|
74
103
|
pos_x: number;
|
|
75
104
|
pos_y: number;
|
|
76
|
-
|
|
105
|
+
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
106
|
+
cameraList: number[];
|
|
107
|
+
customName: string;
|
|
108
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
77
109
|
image: string;
|
|
110
|
+
scale: number;
|
|
78
111
|
northPan: number;
|
|
79
112
|
cameraPosX: number;
|
|
80
113
|
cameraPosY: number;
|
|
81
114
|
colorScheme: "black" | "white" | "orange";
|
|
115
|
+
camera?: number | undefined;
|
|
82
116
|
schedule?: string | undefined;
|
|
83
117
|
invertInput?: boolean | undefined;
|
|
84
|
-
camera?: number | undefined;
|
|
85
118
|
zIndex?: number | undefined;
|
|
86
119
|
generalLng?: number | undefined;
|
|
87
120
|
generalLat?: number | undefined;
|
|
@@ -90,4 +123,4 @@ export declare const ptzCompassSchema: z.ZodObject<{
|
|
|
90
123
|
generalIframeWidth?: number | undefined;
|
|
91
124
|
generalIframeHeight?: number | undefined;
|
|
92
125
|
generalAddress?: string | undefined;
|
|
93
|
-
}
|
|
126
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { coordinateSystemSchema, widgetCommonSchema } from './CamOverlayAPI';
|
|
2
|
+
import { allowedWidgetNames } from '../../CamOverlayAPI';
|
|
3
3
|
import { z } from 'zod';
|
|
4
4
|
export const ptzCompassSchema = widgetCommonSchema.extend({
|
|
5
5
|
name: z.literal(allowedWidgetNames.ptzCompass),
|
|
@@ -21,3 +21,4 @@ export const ptzCompassSchema = widgetCommonSchema.extend({
|
|
|
21
21
|
generalIframeHeight: z.number().optional(),
|
|
22
22
|
generalAddress: z.string().optional(),
|
|
23
23
|
});
|
|
24
|
+
export const isPtzCompass = (widget) => widget.name === 'ptzCompass';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TWidget } from './CamOverlayAPI';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
export declare const ptzSchema: z.ZodObject<{
|
|
3
4
|
id: z.ZodNumber;
|
|
@@ -26,43 +27,43 @@ export declare const ptzSchema: z.ZodObject<{
|
|
|
26
27
|
fps: z.ZodOptional<z.ZodNumber>;
|
|
27
28
|
}, "fps" | "active">, "strip", z.ZodTypeAny, {
|
|
28
29
|
duration: number;
|
|
29
|
-
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
30
30
|
pos_x: number;
|
|
31
31
|
pos_y: number;
|
|
32
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
33
|
+
scale: number;
|
|
32
34
|
imgPath: string;
|
|
33
35
|
imgName: string;
|
|
34
|
-
scale: number;
|
|
35
36
|
}, {
|
|
36
37
|
duration: number;
|
|
37
|
-
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
38
38
|
pos_x: number;
|
|
39
39
|
pos_y: number;
|
|
40
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
41
|
+
scale: number;
|
|
40
42
|
imgPath: string;
|
|
41
43
|
imgName: string;
|
|
42
|
-
scale: number;
|
|
43
44
|
}>, "many">;
|
|
44
45
|
loop: z.ZodBoolean;
|
|
45
46
|
}, "strip", z.ZodTypeAny, {
|
|
46
47
|
loop: boolean;
|
|
47
48
|
overlayList: {
|
|
48
49
|
duration: number;
|
|
49
|
-
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
50
50
|
pos_x: number;
|
|
51
51
|
pos_y: number;
|
|
52
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
53
|
+
scale: number;
|
|
52
54
|
imgPath: string;
|
|
53
55
|
imgName: string;
|
|
54
|
-
scale: number;
|
|
55
56
|
}[];
|
|
56
57
|
}, {
|
|
57
58
|
loop: boolean;
|
|
58
59
|
overlayList: {
|
|
59
60
|
duration: number;
|
|
60
|
-
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
61
61
|
pos_x: number;
|
|
62
62
|
pos_y: number;
|
|
63
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
64
|
+
scale: number;
|
|
63
65
|
imgPath: string;
|
|
64
66
|
imgName: string;
|
|
65
|
-
scale: number;
|
|
66
67
|
}[];
|
|
67
68
|
}>>;
|
|
68
69
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -78,17 +79,17 @@ export declare const ptzSchema: z.ZodObject<{
|
|
|
78
79
|
loop: boolean;
|
|
79
80
|
overlayList: {
|
|
80
81
|
duration: number;
|
|
81
|
-
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
82
82
|
pos_x: number;
|
|
83
83
|
pos_y: number;
|
|
84
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
85
|
+
scale: number;
|
|
84
86
|
imgPath: string;
|
|
85
87
|
imgName: string;
|
|
86
|
-
scale: number;
|
|
87
88
|
}[];
|
|
88
89
|
}>;
|
|
90
|
+
camera?: number | undefined;
|
|
89
91
|
schedule?: string | undefined;
|
|
90
92
|
invertInput?: boolean | undefined;
|
|
91
|
-
camera?: number | undefined;
|
|
92
93
|
zIndex?: number | undefined;
|
|
93
94
|
}, {
|
|
94
95
|
name: "ptz";
|
|
@@ -103,16 +104,43 @@ export declare const ptzSchema: z.ZodObject<{
|
|
|
103
104
|
loop: boolean;
|
|
104
105
|
overlayList: {
|
|
105
106
|
duration: number;
|
|
106
|
-
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
107
107
|
pos_x: number;
|
|
108
108
|
pos_y: number;
|
|
109
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
110
|
+
scale: number;
|
|
109
111
|
imgPath: string;
|
|
110
112
|
imgName: string;
|
|
111
|
-
scale: number;
|
|
112
113
|
}[];
|
|
113
114
|
}>;
|
|
115
|
+
camera?: number | undefined;
|
|
114
116
|
schedule?: string | undefined;
|
|
115
117
|
invertInput?: boolean | undefined;
|
|
116
|
-
camera?: number | undefined;
|
|
117
118
|
zIndex?: number | undefined;
|
|
118
119
|
}>;
|
|
120
|
+
export type TPtz = z.infer<typeof ptzSchema>;
|
|
121
|
+
export declare const isPtz: (widget: TWidget) => widget is {
|
|
122
|
+
name: "ptz";
|
|
123
|
+
enabled: 0 | 1;
|
|
124
|
+
id: number;
|
|
125
|
+
width: number;
|
|
126
|
+
height: number;
|
|
127
|
+
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
128
|
+
cameraList: number[];
|
|
129
|
+
customName: string;
|
|
130
|
+
ptz_positions: Record<string, {
|
|
131
|
+
loop: boolean;
|
|
132
|
+
overlayList: {
|
|
133
|
+
duration: number;
|
|
134
|
+
pos_x: number;
|
|
135
|
+
pos_y: number;
|
|
136
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
137
|
+
scale: number;
|
|
138
|
+
imgPath: string;
|
|
139
|
+
imgName: string;
|
|
140
|
+
}[];
|
|
141
|
+
}>;
|
|
142
|
+
camera?: number | undefined;
|
|
143
|
+
schedule?: string | undefined;
|
|
144
|
+
invertInput?: boolean | undefined;
|
|
145
|
+
zIndex?: number | undefined;
|
|
146
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { overlaySchema, widgetCommonSchema } from './CamOverlayAPI';
|
|
2
|
+
import { allowedWidgetNames } from '../../CamOverlayAPI';
|
|
3
3
|
import { z } from 'zod';
|
|
4
4
|
export const ptzSchema = widgetCommonSchema.extend({
|
|
5
5
|
name: z.literal(allowedWidgetNames.ptz),
|
|
@@ -8,3 +8,4 @@ export const ptzSchema = widgetCommonSchema.extend({
|
|
|
8
8
|
loop: z.boolean(),
|
|
9
9
|
})),
|
|
10
10
|
});
|
|
11
|
+
export const isPtz = (widget) => widget.name === 'ptz';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TWidget } from './CamOverlayAPI';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
export declare const screenSharingSchema: z.ZodObject<{
|
|
3
4
|
id: z.ZodNumber;
|
|
@@ -26,16 +27,16 @@ export declare const screenSharingSchema: z.ZodObject<{
|
|
|
26
27
|
width: number;
|
|
27
28
|
height: number;
|
|
28
29
|
fps: number;
|
|
30
|
+
pos_x: number;
|
|
31
|
+
pos_y: number;
|
|
29
32
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
30
33
|
cameraList: number[];
|
|
31
34
|
customName: string;
|
|
32
35
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
33
|
-
pos_x: number;
|
|
34
|
-
pos_y: number;
|
|
35
36
|
screenSize: number;
|
|
37
|
+
camera?: number | undefined;
|
|
36
38
|
schedule?: string | undefined;
|
|
37
39
|
invertInput?: boolean | undefined;
|
|
38
|
-
camera?: number | undefined;
|
|
39
40
|
zIndex?: number | undefined;
|
|
40
41
|
}, {
|
|
41
42
|
name: "screenSharing";
|
|
@@ -44,15 +45,35 @@ export declare const screenSharingSchema: z.ZodObject<{
|
|
|
44
45
|
width: number;
|
|
45
46
|
height: number;
|
|
46
47
|
fps: number;
|
|
48
|
+
pos_x: number;
|
|
49
|
+
pos_y: number;
|
|
47
50
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
48
51
|
cameraList: number[];
|
|
49
52
|
customName: string;
|
|
50
53
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
54
|
+
screenSize: number;
|
|
55
|
+
camera?: number | undefined;
|
|
56
|
+
schedule?: string | undefined;
|
|
57
|
+
invertInput?: boolean | undefined;
|
|
58
|
+
zIndex?: number | undefined;
|
|
59
|
+
}>;
|
|
60
|
+
export type TScreenSharing = z.infer<typeof screenSharingSchema>;
|
|
61
|
+
export declare const isScreenSharing: (widget: TWidget) => widget is {
|
|
62
|
+
name: "screenSharing";
|
|
63
|
+
enabled: 0 | 1;
|
|
64
|
+
id: number;
|
|
65
|
+
width: number;
|
|
66
|
+
height: number;
|
|
67
|
+
fps: number;
|
|
51
68
|
pos_x: number;
|
|
52
69
|
pos_y: number;
|
|
70
|
+
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
71
|
+
cameraList: number[];
|
|
72
|
+
customName: string;
|
|
73
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
53
74
|
screenSize: number;
|
|
75
|
+
camera?: number | undefined;
|
|
54
76
|
schedule?: string | undefined;
|
|
55
77
|
invertInput?: boolean | undefined;
|
|
56
|
-
camera?: number | undefined;
|
|
57
78
|
zIndex?: number | undefined;
|
|
58
|
-
}
|
|
79
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { sharingSchema } from './CamOverlayAPI';
|
|
2
|
+
import { allowedWidgetNames } from '../../CamOverlayAPI';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export const screenSharingSchema = sharingSchema.extend({
|
|
5
|
+
name: z.literal(allowedWidgetNames.screenSharing),
|
|
6
|
+
});
|
|
7
|
+
export const isScreenSharing = (widget) => widget.name === 'screenSharing';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TWidget } from './CamOverlayAPI';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
export declare const webCameraSharingSchema: z.ZodObject<{
|
|
3
4
|
id: z.ZodNumber;
|
|
@@ -26,16 +27,16 @@ export declare const webCameraSharingSchema: z.ZodObject<{
|
|
|
26
27
|
width: number;
|
|
27
28
|
height: number;
|
|
28
29
|
fps: number;
|
|
30
|
+
pos_x: number;
|
|
31
|
+
pos_y: number;
|
|
29
32
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
30
33
|
cameraList: number[];
|
|
31
34
|
customName: string;
|
|
32
35
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
33
|
-
pos_x: number;
|
|
34
|
-
pos_y: number;
|
|
35
36
|
screenSize: number;
|
|
37
|
+
camera?: number | undefined;
|
|
36
38
|
schedule?: string | undefined;
|
|
37
39
|
invertInput?: boolean | undefined;
|
|
38
|
-
camera?: number | undefined;
|
|
39
40
|
zIndex?: number | undefined;
|
|
40
41
|
}, {
|
|
41
42
|
name: "web_camera";
|
|
@@ -44,15 +45,35 @@ export declare const webCameraSharingSchema: z.ZodObject<{
|
|
|
44
45
|
width: number;
|
|
45
46
|
height: number;
|
|
46
47
|
fps: number;
|
|
48
|
+
pos_x: number;
|
|
49
|
+
pos_y: number;
|
|
47
50
|
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
48
51
|
cameraList: number[];
|
|
49
52
|
customName: string;
|
|
50
53
|
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
54
|
+
screenSize: number;
|
|
55
|
+
camera?: number | undefined;
|
|
56
|
+
schedule?: string | undefined;
|
|
57
|
+
invertInput?: boolean | undefined;
|
|
58
|
+
zIndex?: number | undefined;
|
|
59
|
+
}>;
|
|
60
|
+
export type TWebCameraSharing = z.infer<typeof webCameraSharingSchema>;
|
|
61
|
+
export declare const isWebCameraSharing: (widget: TWidget) => widget is {
|
|
62
|
+
name: "web_camera";
|
|
63
|
+
enabled: 0 | 1;
|
|
64
|
+
id: number;
|
|
65
|
+
width: number;
|
|
66
|
+
height: number;
|
|
67
|
+
fps: number;
|
|
51
68
|
pos_x: number;
|
|
52
69
|
pos_y: number;
|
|
70
|
+
automationType: "time" | "manual" | "schedule" | `input${number}`;
|
|
71
|
+
cameraList: number[];
|
|
72
|
+
customName: string;
|
|
73
|
+
coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
|
|
53
74
|
screenSize: number;
|
|
75
|
+
camera?: number | undefined;
|
|
54
76
|
schedule?: string | undefined;
|
|
55
77
|
invertInput?: boolean | undefined;
|
|
56
|
-
camera?: number | undefined;
|
|
57
78
|
zIndex?: number | undefined;
|
|
58
|
-
}
|
|
79
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { sharingSchema } from './CamOverlayAPI';
|
|
2
|
+
import { allowedWidgetNames } from '../../CamOverlayAPI';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export const webCameraSharingSchema = sharingSchema.extend({
|
|
5
|
+
name: z.literal(allowedWidgetNames.web_camera),
|
|
6
|
+
});
|
|
7
|
+
export const isWebCameraSharing = (widget) => widget.name === 'web_camera';
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { WsOptions } from '../internal/types';
|
|
2
|
+
export type CamOverlayDrawingOptions = WsOptions & {
|
|
3
|
+
camera?: number | number[];
|
|
4
|
+
zIndex?: number;
|
|
5
|
+
};
|
|
6
|
+
export type TMessage = {
|
|
7
|
+
command: string;
|
|
8
|
+
call_id?: number;
|
|
9
|
+
params: unknown[];
|
|
10
|
+
};
|
|
11
|
+
export type TCairoResponse = {
|
|
12
|
+
message: string;
|
|
13
|
+
call_id: number;
|
|
14
|
+
};
|
|
15
|
+
export type TCairoCreateResponse = {
|
|
16
|
+
var: string;
|
|
17
|
+
call_id: number;
|
|
18
|
+
};
|
|
19
|
+
export type TUploadImageResponse = {
|
|
20
|
+
var: string;
|
|
21
|
+
width: number;
|
|
22
|
+
height: number;
|
|
23
|
+
call_id: number;
|
|
24
|
+
};
|
|
25
|
+
export type TErrorResponse = {
|
|
26
|
+
error: string;
|
|
27
|
+
call_id?: number;
|
|
28
|
+
};
|
|
29
|
+
export type TService = {
|
|
30
|
+
id: number;
|
|
31
|
+
enabled: number;
|
|
32
|
+
schedule: string;
|
|
33
|
+
name: string;
|
|
34
|
+
identifier: string;
|
|
35
|
+
cameraList: number[];
|
|
36
|
+
};
|
|
37
|
+
export type TServiceList = {
|
|
38
|
+
services: TService[];
|
|
39
|
+
};
|
|
40
|
+
export type TAlign = 'A_RIGHT' | 'A_LEFT' | 'A_CENTER';
|
|
41
|
+
export type TextFit = 'TFM_SCALE' | 'TFM_TRUNCATE' | 'TFM_OVERFLOW';
|
|
42
|
+
export type TWriteTextParams = [string, string, number, number, number, number, TAlign, TextFit?];
|
|
43
|
+
export type TCODResponse = TCairoResponse | TCairoCreateResponse | TUploadImageResponse;
|
|
44
|
+
export type AsyncMessage = {
|
|
45
|
+
resolve: (value: TCODResponse) => void;
|
|
46
|
+
reject: (reason: Error) => void;
|
|
47
|
+
sentTimestamp: number;
|
|
48
|
+
};
|
|
49
|
+
export interface CamOverlayDrawingAPI {
|
|
50
|
+
on(event: 'open', listener: () => void): this;
|
|
51
|
+
on(event: 'close', listener: () => void): this;
|
|
52
|
+
on(event: 'error', listener: (err: Error) => void): this;
|
|
53
|
+
on(event: 'message', listener: (msg: string) => void): this;
|
|
54
|
+
emit(event: 'open'): boolean;
|
|
55
|
+
emit(event: 'close'): boolean;
|
|
56
|
+
emit(event: 'error', err: Error): boolean;
|
|
57
|
+
emit(event: 'message', msg: string): boolean;
|
|
58
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { CamOverlayDrawingAPI } from '../CamOverlayDrawingAPI';
|
|
2
|
+
import { COORD } from '../CamOverlayPainter/Painter';
|
|
3
|
+
import { TAlign, TCairoCreateResponse, TUploadImageResponse } from './CamOverlayDrawingAPI';
|
|
4
|
+
export type TRgb = [number, number, number];
|
|
5
|
+
export type TRgba = [number, number, number, number];
|
|
6
|
+
export type TTmf = 'TFM_OVERFLOW' | 'TFM_SCALE' | 'TFM_TRUNCATE';
|
|
7
|
+
export type TObjectFitType = 'fill' | 'fit' | 'none';
|
|
8
|
+
export type TFrameOptions = {
|
|
9
|
+
enabled?: boolean;
|
|
10
|
+
x: number;
|
|
11
|
+
y: number;
|
|
12
|
+
width: number;
|
|
13
|
+
height: number;
|
|
14
|
+
text?: string;
|
|
15
|
+
fontColor?: TRgb;
|
|
16
|
+
font?: string;
|
|
17
|
+
bgColor?: TRgba;
|
|
18
|
+
bgImage?: string;
|
|
19
|
+
bgType?: TObjectFitType;
|
|
20
|
+
borderRadius?: number;
|
|
21
|
+
borderWidth?: number;
|
|
22
|
+
borderColor?: TRgba;
|
|
23
|
+
customDraw?: TDrawingCallback;
|
|
24
|
+
layer?: number;
|
|
25
|
+
};
|
|
26
|
+
export type TFrameInfo = {
|
|
27
|
+
width: number;
|
|
28
|
+
height: number;
|
|
29
|
+
};
|
|
30
|
+
export type TDrawingCallback = (cod: CamOverlayDrawingAPI, cairo: string, info: TFrameInfo) => Promise<void>;
|
|
31
|
+
export type TFrame = {
|
|
32
|
+
x: number;
|
|
33
|
+
y: number;
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
};
|
|
37
|
+
export type TText = {
|
|
38
|
+
text: string;
|
|
39
|
+
textAlign: TAlign;
|
|
40
|
+
textType: TTmf;
|
|
41
|
+
fontColor: TRgb;
|
|
42
|
+
font: TCairoCreateResponse | undefined;
|
|
43
|
+
fontName: string | undefined;
|
|
44
|
+
};
|
|
45
|
+
export type TBg = {
|
|
46
|
+
bgColor: TRgba | undefined;
|
|
47
|
+
bgImage: TUploadImageResponse | undefined;
|
|
48
|
+
bgImageName: string | undefined;
|
|
49
|
+
bgType: TObjectFitType | undefined;
|
|
50
|
+
};
|
|
51
|
+
export type TBorder = {
|
|
52
|
+
borderRadius: number;
|
|
53
|
+
borderWidth: number;
|
|
54
|
+
borderColor: TRgba;
|
|
55
|
+
};
|
|
56
|
+
export interface Frame {
|
|
57
|
+
on(event: 'open', listener: () => void): this;
|
|
58
|
+
on(event: 'close', listener: () => void): this;
|
|
59
|
+
on(event: 'layoutChanged', listener: () => void): this;
|
|
60
|
+
emit(event: 'open'): boolean;
|
|
61
|
+
emit(event: 'close'): boolean;
|
|
62
|
+
emit(event: 'layoutChanged'): boolean;
|
|
63
|
+
}
|
|
64
|
+
export type TCoAlignment = keyof typeof COORD;
|
|
65
|
+
export type TPainterOptions = TFrameOptions & {
|
|
66
|
+
screenWidth: number;
|
|
67
|
+
screenHeight: number;
|
|
68
|
+
coAlignment: TCoAlignment;
|
|
69
|
+
};
|
|
70
|
+
export type TLayer = {
|
|
71
|
+
layer: number;
|
|
72
|
+
surfaceCache?: string;
|
|
73
|
+
cairoCache?: string;
|
|
74
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|