camstreamerlib 4.0.0-beta.3 → 4.0.0-beta.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/README.md +8 -2
  2. package/cjs/CamOverlayAPI.d.ts +48 -26
  3. package/cjs/CamOverlayAPI.js +171 -88
  4. package/cjs/CamOverlayDrawingAPI.d.ts +2 -47
  5. package/cjs/CamOverlayDrawingAPI.js +6 -3
  6. package/cjs/CamOverlayPainter/Frame.d.ts +8 -37
  7. package/cjs/CamOverlayPainter/Frame.js +33 -0
  8. package/cjs/CamOverlayPainter/Painter.d.ts +16 -10
  9. package/cjs/CamOverlayPainter/Painter.js +6 -5
  10. package/cjs/CamOverlayPainter/ResourceManager.d.ts +3 -2
  11. package/cjs/CamOverlayPainter/ResourceManager.js +8 -11
  12. package/cjs/CamScripterAPI.d.ts +34 -16
  13. package/cjs/CamScripterAPI.js +50 -41
  14. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +1 -1
  15. package/cjs/CamScripterAPICameraEventsGenerator.js +6 -3
  16. package/cjs/CamStreamerAPI.d.ts +17 -14
  17. package/cjs/CamStreamerAPI.js +32 -32
  18. package/cjs/CamSwitcherAPI.d.ts +43 -37
  19. package/cjs/CamSwitcherAPI.js +123 -114
  20. package/cjs/CamSwitcherEvents.d.ts +1 -1
  21. package/cjs/PlaneTrackerAPI.d.ts +43 -0
  22. package/cjs/PlaneTrackerAPI.js +211 -0
  23. package/cjs/VapixAPI.d.ts +56 -42
  24. package/cjs/VapixAPI.js +305 -216
  25. package/cjs/VapixEvents.d.ts +1 -1
  26. package/cjs/VapixEvents.js +3 -3
  27. package/cjs/errors/errors.d.ts +3 -0
  28. package/cjs/errors/errors.js +8 -1
  29. package/cjs/events/AxisCameraStationEvents.d.ts +7 -4
  30. package/cjs/events/AxisCameraStationEvents.js +23 -18
  31. package/cjs/events/GenetecAgent.d.ts +6 -3
  32. package/cjs/events/GenetecAgent.js +30 -19
  33. package/cjs/index.d.ts +14 -1
  34. package/cjs/index.js +23 -2
  35. package/cjs/internal/Digest.js +6 -6
  36. package/cjs/internal/ProxyClient.d.ts +8 -9
  37. package/cjs/internal/ProxyClient.js +25 -29
  38. package/cjs/internal/types.d.ts +42 -0
  39. package/cjs/internal/types.js +2 -0
  40. package/cjs/internal/utils.d.ts +4 -1
  41. package/cjs/internal/utils.js +22 -3
  42. package/cjs/internal/versionCompare.d.ts +2 -2
  43. package/cjs/node/DefaultClient.d.ts +5 -6
  44. package/cjs/node/DefaultClient.js +12 -14
  45. package/cjs/node/HttpRequestSender.d.ts +1 -0
  46. package/cjs/node/HttpRequestSender.js +13 -3
  47. package/cjs/node/HttpServer.js +1 -1
  48. package/cjs/node/WsClient.d.ts +2 -1
  49. package/cjs/node/index.d.ts +2 -0
  50. package/cjs/node/index.js +18 -1
  51. package/cjs/types/CamOverlayAPI/CamOverlayAPI.d.ts +3071 -0
  52. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +127 -0
  53. package/cjs/types/CamOverlayAPI/accuweatherSchema.d.ts +114 -0
  54. package/cjs/types/CamOverlayAPI/accuweatherSchema.js +50 -0
  55. package/cjs/types/CamOverlayAPI/customGraphicsSchema.d.ts +783 -0
  56. package/cjs/types/CamOverlayAPI/customGraphicsSchema.js +75 -0
  57. package/cjs/types/CamOverlayAPI/imagesSchema.d.ts +122 -0
  58. package/cjs/types/CamOverlayAPI/imagesSchema.js +12 -0
  59. package/cjs/types/CamOverlayAPI/index.d.ts +9 -0
  60. package/cjs/types/CamOverlayAPI/index.js +25 -0
  61. package/cjs/types/CamOverlayAPI/infotickerSchema.d.ts +130 -0
  62. package/cjs/types/CamOverlayAPI/infotickerSchema.js +29 -0
  63. package/cjs/types/CamOverlayAPI/pipSchema.d.ts +166 -0
  64. package/cjs/types/CamOverlayAPI/pipSchema.js +42 -0
  65. package/cjs/types/CamOverlayAPI/ptzCompassSchema.d.ts +126 -0
  66. package/cjs/types/CamOverlayAPI/ptzCompassSchema.js +28 -0
  67. package/cjs/types/CamOverlayAPI/ptzSchema.d.ts +146 -0
  68. package/cjs/types/CamOverlayAPI/ptzSchema.js +15 -0
  69. package/cjs/types/CamOverlayAPI/screenSharingSchema.d.ts +79 -0
  70. package/cjs/types/CamOverlayAPI/screenSharingSchema.js +11 -0
  71. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.d.ts +79 -0
  72. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +11 -0
  73. package/cjs/types/CamOverlayDrawingAPI.d.ts +58 -0
  74. package/cjs/types/CamOverlayDrawingAPI.js +2 -0
  75. package/cjs/types/CamOverlayPainter.d.ts +74 -0
  76. package/cjs/types/CamOverlayPainter.js +2 -0
  77. package/cjs/types/CamScripterAPI.d.ts +82 -17
  78. package/cjs/types/CamScripterAPI.js +22 -7
  79. package/cjs/types/CamStreamerAPI.d.ts +16 -5
  80. package/cjs/types/CamStreamerAPI.js +5 -1
  81. package/cjs/types/CamSwitcherAPI.d.ts +4 -6
  82. package/cjs/types/CamSwitcherEvents.d.ts +77 -0
  83. package/cjs/types/CamSwitcherEvents.js +8 -0
  84. package/cjs/types/PlaneTrackerAPI.d.ts +8 -0
  85. package/cjs/types/PlaneTrackerAPI.js +2 -0
  86. package/cjs/types/VapixAPI.d.ts +635 -520
  87. package/cjs/types/VapixAPI.js +62 -24
  88. package/cjs/types/common.d.ts +14 -5
  89. package/cjs/web/DefaultClient.d.ts +5 -5
  90. package/cjs/web/DefaultClient.js +22 -10
  91. package/cjs/web/WsClient.js +2 -2
  92. package/esm/CamOverlayAPI.d.ts +48 -26
  93. package/esm/CamOverlayAPI.js +167 -84
  94. package/esm/CamOverlayDrawingAPI.d.ts +2 -47
  95. package/esm/CamOverlayDrawingAPI.js +6 -3
  96. package/esm/CamOverlayPainter/Frame.d.ts +8 -37
  97. package/esm/CamOverlayPainter/Frame.js +33 -0
  98. package/esm/CamOverlayPainter/Painter.d.ts +16 -10
  99. package/esm/CamOverlayPainter/Painter.js +5 -3
  100. package/esm/CamOverlayPainter/ResourceManager.d.ts +3 -2
  101. package/esm/CamOverlayPainter/ResourceManager.js +7 -11
  102. package/esm/CamScripterAPI.d.ts +34 -16
  103. package/esm/CamScripterAPI.js +46 -37
  104. package/esm/CamScripterAPICameraEventsGenerator.d.ts +1 -1
  105. package/esm/CamScripterAPICameraEventsGenerator.js +6 -3
  106. package/esm/CamStreamerAPI.d.ts +17 -14
  107. package/esm/CamStreamerAPI.js +32 -32
  108. package/esm/CamSwitcherAPI.d.ts +43 -37
  109. package/esm/CamSwitcherAPI.js +116 -107
  110. package/esm/CamSwitcherEvents.d.ts +1 -1
  111. package/esm/PlaneTrackerAPI.d.ts +43 -0
  112. package/esm/PlaneTrackerAPI.js +207 -0
  113. package/esm/VapixAPI.d.ts +56 -42
  114. package/esm/VapixAPI.js +297 -208
  115. package/esm/VapixEvents.d.ts +1 -1
  116. package/esm/VapixEvents.js +3 -3
  117. package/esm/errors/errors.d.ts +3 -0
  118. package/esm/errors/errors.js +6 -0
  119. package/esm/events/AxisCameraStationEvents.d.ts +7 -4
  120. package/esm/events/AxisCameraStationEvents.js +18 -13
  121. package/esm/events/GenetecAgent.d.ts +6 -3
  122. package/esm/events/GenetecAgent.js +20 -9
  123. package/esm/index.d.ts +14 -1
  124. package/esm/index.js +14 -1
  125. package/esm/internal/Digest.js +6 -6
  126. package/esm/internal/ProxyClient.d.ts +8 -9
  127. package/esm/internal/ProxyClient.js +25 -29
  128. package/esm/internal/types.d.ts +42 -0
  129. package/esm/internal/types.js +1 -0
  130. package/esm/internal/utils.d.ts +4 -1
  131. package/esm/internal/utils.js +17 -1
  132. package/esm/internal/versionCompare.d.ts +2 -2
  133. package/esm/node/DefaultClient.d.ts +5 -6
  134. package/esm/node/DefaultClient.js +12 -14
  135. package/esm/node/HttpRequestSender.d.ts +1 -0
  136. package/esm/node/HttpRequestSender.js +13 -3
  137. package/esm/node/HttpServer.js +1 -1
  138. package/esm/node/WsClient.d.ts +2 -1
  139. package/esm/node/index.d.ts +2 -0
  140. package/esm/node/index.js +2 -0
  141. package/esm/types/CamOverlayAPI/CamOverlayAPI.d.ts +3071 -0
  142. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +124 -0
  143. package/esm/types/CamOverlayAPI/accuweatherSchema.d.ts +114 -0
  144. package/esm/types/CamOverlayAPI/accuweatherSchema.js +46 -0
  145. package/esm/types/CamOverlayAPI/customGraphicsSchema.d.ts +783 -0
  146. package/esm/types/CamOverlayAPI/customGraphicsSchema.js +71 -0
  147. package/esm/types/CamOverlayAPI/imagesSchema.d.ts +122 -0
  148. package/esm/types/CamOverlayAPI/imagesSchema.js +8 -0
  149. package/esm/types/CamOverlayAPI/index.d.ts +9 -0
  150. package/esm/types/CamOverlayAPI/index.js +9 -0
  151. package/esm/types/CamOverlayAPI/infotickerSchema.d.ts +130 -0
  152. package/esm/types/CamOverlayAPI/infotickerSchema.js +25 -0
  153. package/esm/types/CamOverlayAPI/pipSchema.d.ts +166 -0
  154. package/esm/types/CamOverlayAPI/pipSchema.js +38 -0
  155. package/esm/types/CamOverlayAPI/ptzCompassSchema.d.ts +126 -0
  156. package/esm/types/CamOverlayAPI/ptzCompassSchema.js +24 -0
  157. package/esm/types/CamOverlayAPI/ptzSchema.d.ts +146 -0
  158. package/esm/types/CamOverlayAPI/ptzSchema.js +11 -0
  159. package/esm/types/CamOverlayAPI/screenSharingSchema.d.ts +79 -0
  160. package/esm/types/CamOverlayAPI/screenSharingSchema.js +7 -0
  161. package/esm/types/CamOverlayAPI/webCameraSharingSchema.d.ts +79 -0
  162. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +7 -0
  163. package/esm/types/CamOverlayDrawingAPI.d.ts +58 -0
  164. package/esm/types/CamOverlayDrawingAPI.js +1 -0
  165. package/esm/types/CamOverlayPainter.d.ts +74 -0
  166. package/esm/types/CamOverlayPainter.js +1 -0
  167. package/esm/types/CamScripterAPI.d.ts +82 -17
  168. package/esm/types/CamScripterAPI.js +21 -6
  169. package/esm/types/CamStreamerAPI.d.ts +16 -5
  170. package/esm/types/CamStreamerAPI.js +4 -0
  171. package/esm/types/CamSwitcherAPI.d.ts +4 -6
  172. package/esm/types/CamSwitcherEvents.d.ts +77 -0
  173. package/esm/types/CamSwitcherEvents.js +8 -0
  174. package/esm/types/PlaneTrackerAPI.d.ts +8 -0
  175. package/esm/types/PlaneTrackerAPI.js +1 -0
  176. package/esm/types/VapixAPI.d.ts +635 -520
  177. package/esm/types/VapixAPI.js +61 -23
  178. package/esm/types/common.d.ts +14 -5
  179. package/esm/web/DefaultClient.d.ts +5 -5
  180. package/esm/web/DefaultClient.js +22 -10
  181. package/esm/web/WsClient.js +2 -2
  182. package/package.json +9 -8
  183. package/cjs/internal/common.d.ts +0 -39
  184. package/cjs/internal/common.js +0 -27
  185. package/cjs/node/WsEventClient.d.ts +0 -13
  186. package/cjs/node/WsEventClient.js +0 -22
  187. package/cjs/types/CamOverlayAPI.d.ts +0 -188
  188. package/cjs/types/CamOverlayAPI.js +0 -47
  189. package/esm/internal/common.d.ts +0 -39
  190. package/esm/internal/common.js +0 -20
  191. package/esm/node/WsEventClient.d.ts +0 -13
  192. package/esm/node/WsEventClient.js +0 -18
  193. package/esm/types/CamOverlayAPI.d.ts +0 -188
  194. package/esm/types/CamOverlayAPI.js +0 -44
@@ -0,0 +1,126 @@
1
+ import { TWidget } from './CamOverlayAPI';
2
+ import { z } from 'zod';
3
+ export declare const ptzCompassSchema: z.ZodObject<{
4
+ id: z.ZodNumber;
5
+ enabled: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>;
6
+ automationType: z.ZodUnion<[z.ZodLiteral<"time">, z.ZodLiteral<"manual">, z.ZodLiteral<"schedule">, z.ZodType<`input${number}`, z.ZodTypeDef, `input${number}`>]>;
7
+ invertInput: z.ZodOptional<z.ZodBoolean>;
8
+ cameraList: z.ZodArray<z.ZodNumber, "many">;
9
+ camera: z.ZodOptional<z.ZodNumber>;
10
+ schedule: z.ZodOptional<z.ZodString>;
11
+ customName: z.ZodString;
12
+ zIndex: z.ZodOptional<z.ZodNumber>;
13
+ width: z.ZodNumber;
14
+ height: z.ZodNumber;
15
+ } & {
16
+ name: z.ZodLiteral<"ptzCompass">;
17
+ pos_x: z.ZodNumber;
18
+ pos_y: z.ZodNumber;
19
+ coordSystem: z.ZodUnion<[z.ZodLiteral<"top_left">, z.ZodLiteral<"top">, z.ZodLiteral<"top_right">, z.ZodLiteral<"left">, z.ZodLiteral<"center">, z.ZodLiteral<"right">, z.ZodLiteral<"bottom_left">, z.ZodLiteral<"bottom">, z.ZodLiteral<"bottom_right">]>;
20
+ scale: z.ZodNumber;
21
+ type: z.ZodUnion<[z.ZodLiteral<"compass">, z.ZodLiteral<"map">, z.ZodLiteral<"image">]>;
22
+ image: z.ZodUnion<[z.ZodString, z.ZodLiteral<"">]>;
23
+ northPan: z.ZodNumber;
24
+ cameraPosX: z.ZodNumber;
25
+ cameraPosY: z.ZodNumber;
26
+ colorScheme: z.ZodEnum<["black", "white", "orange"]>;
27
+ generalLng: z.ZodOptional<z.ZodNumber>;
28
+ generalLat: z.ZodOptional<z.ZodNumber>;
29
+ generalZoom: z.ZodOptional<z.ZodNumber>;
30
+ generalMapType: z.ZodOptional<z.ZodString>;
31
+ generalIframeWidth: z.ZodOptional<z.ZodNumber>;
32
+ generalIframeHeight: z.ZodOptional<z.ZodNumber>;
33
+ generalAddress: z.ZodOptional<z.ZodString>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ type: "map" | "image" | "compass";
36
+ name: "ptzCompass";
37
+ enabled: 0 | 1;
38
+ id: number;
39
+ width: number;
40
+ height: number;
41
+ pos_x: number;
42
+ pos_y: number;
43
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
44
+ cameraList: number[];
45
+ customName: string;
46
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
47
+ image: string;
48
+ scale: number;
49
+ northPan: number;
50
+ cameraPosX: number;
51
+ cameraPosY: number;
52
+ colorScheme: "black" | "white" | "orange";
53
+ camera?: number | undefined;
54
+ schedule?: string | undefined;
55
+ invertInput?: boolean | undefined;
56
+ zIndex?: number | undefined;
57
+ generalLng?: number | undefined;
58
+ generalLat?: number | undefined;
59
+ generalZoom?: number | undefined;
60
+ generalMapType?: string | undefined;
61
+ generalIframeWidth?: number | undefined;
62
+ generalIframeHeight?: number | undefined;
63
+ generalAddress?: string | undefined;
64
+ }, {
65
+ type: "map" | "image" | "compass";
66
+ name: "ptzCompass";
67
+ enabled: 0 | 1;
68
+ id: number;
69
+ width: number;
70
+ height: number;
71
+ pos_x: number;
72
+ pos_y: number;
73
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
74
+ cameraList: number[];
75
+ customName: string;
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;
103
+ pos_x: number;
104
+ pos_y: number;
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";
109
+ image: string;
110
+ scale: number;
111
+ northPan: number;
112
+ cameraPosX: number;
113
+ cameraPosY: number;
114
+ colorScheme: "black" | "white" | "orange";
115
+ camera?: number | undefined;
116
+ schedule?: string | undefined;
117
+ invertInput?: boolean | undefined;
118
+ zIndex?: number | undefined;
119
+ generalLng?: number | undefined;
120
+ generalLat?: number | undefined;
121
+ generalZoom?: number | undefined;
122
+ generalMapType?: string | undefined;
123
+ generalIframeWidth?: number | undefined;
124
+ generalIframeHeight?: number | undefined;
125
+ generalAddress?: string | undefined;
126
+ };
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isPtzCompass = exports.ptzCompassSchema = void 0;
4
+ const CamOverlayAPI_1 = require("./CamOverlayAPI");
5
+ const CamOverlayAPI_2 = require("../../CamOverlayAPI");
6
+ const zod_1 = require("zod");
7
+ exports.ptzCompassSchema = CamOverlayAPI_1.widgetCommonSchema.extend({
8
+ name: zod_1.z.literal(CamOverlayAPI_2.allowedWidgetNames.ptzCompass),
9
+ pos_x: zod_1.z.number(),
10
+ pos_y: zod_1.z.number(),
11
+ coordSystem: CamOverlayAPI_1.coordinateSystemSchema,
12
+ scale: zod_1.z.number().nonnegative(),
13
+ type: zod_1.z.union([zod_1.z.literal('compass'), zod_1.z.literal('map'), zod_1.z.literal('image')]),
14
+ image: zod_1.z.union([zod_1.z.string().url(), zod_1.z.literal('')]),
15
+ northPan: zod_1.z.number(),
16
+ cameraPosX: zod_1.z.number(),
17
+ cameraPosY: zod_1.z.number(),
18
+ colorScheme: zod_1.z.enum(['black', 'white', 'orange']),
19
+ generalLng: zod_1.z.number().optional(),
20
+ generalLat: zod_1.z.number().optional(),
21
+ generalZoom: zod_1.z.number().nonnegative().optional(),
22
+ generalMapType: zod_1.z.string().optional(),
23
+ generalIframeWidth: zod_1.z.number().optional(),
24
+ generalIframeHeight: zod_1.z.number().optional(),
25
+ generalAddress: zod_1.z.string().optional(),
26
+ });
27
+ const isPtzCompass = (widget) => widget.name === 'ptzCompass';
28
+ exports.isPtzCompass = isPtzCompass;
@@ -0,0 +1,146 @@
1
+ import { TWidget } from './CamOverlayAPI';
2
+ import { z } from 'zod';
3
+ export declare const ptzSchema: z.ZodObject<{
4
+ id: z.ZodNumber;
5
+ enabled: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>;
6
+ automationType: z.ZodUnion<[z.ZodLiteral<"time">, z.ZodLiteral<"manual">, z.ZodLiteral<"schedule">, z.ZodType<`input${number}`, z.ZodTypeDef, `input${number}`>]>;
7
+ invertInput: z.ZodOptional<z.ZodBoolean>;
8
+ cameraList: z.ZodArray<z.ZodNumber, "many">;
9
+ camera: z.ZodOptional<z.ZodNumber>;
10
+ schedule: z.ZodOptional<z.ZodString>;
11
+ customName: z.ZodString;
12
+ zIndex: z.ZodOptional<z.ZodNumber>;
13
+ width: z.ZodNumber;
14
+ height: z.ZodNumber;
15
+ } & {
16
+ name: z.ZodLiteral<"ptz">;
17
+ ptz_positions: z.ZodRecord<z.ZodString, z.ZodObject<{
18
+ overlayList: z.ZodArray<z.ZodObject<Omit<{
19
+ active: z.ZodBoolean;
20
+ coordSystem: z.ZodUnion<[z.ZodLiteral<"top_left">, z.ZodLiteral<"top">, z.ZodLiteral<"top_right">, z.ZodLiteral<"left">, z.ZodLiteral<"center">, z.ZodLiteral<"right">, z.ZodLiteral<"bottom_left">, z.ZodLiteral<"bottom">, z.ZodLiteral<"bottom_right">]>;
21
+ pos_x: z.ZodNumber;
22
+ pos_y: z.ZodNumber;
23
+ imgPath: z.ZodString;
24
+ imgName: z.ZodString;
25
+ duration: z.ZodNumber;
26
+ scale: z.ZodNumber;
27
+ fps: z.ZodOptional<z.ZodNumber>;
28
+ }, "fps" | "active">, "strip", z.ZodTypeAny, {
29
+ duration: number;
30
+ pos_x: number;
31
+ pos_y: number;
32
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
33
+ scale: number;
34
+ imgPath: string;
35
+ imgName: string;
36
+ }, {
37
+ duration: number;
38
+ pos_x: number;
39
+ pos_y: number;
40
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
41
+ scale: number;
42
+ imgPath: string;
43
+ imgName: string;
44
+ }>, "many">;
45
+ loop: z.ZodBoolean;
46
+ }, "strip", z.ZodTypeAny, {
47
+ loop: boolean;
48
+ overlayList: {
49
+ duration: number;
50
+ pos_x: number;
51
+ pos_y: number;
52
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
53
+ scale: number;
54
+ imgPath: string;
55
+ imgName: string;
56
+ }[];
57
+ }, {
58
+ loop: boolean;
59
+ overlayList: {
60
+ duration: number;
61
+ pos_x: number;
62
+ pos_y: number;
63
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
64
+ scale: number;
65
+ imgPath: string;
66
+ imgName: string;
67
+ }[];
68
+ }>>;
69
+ }, "strip", z.ZodTypeAny, {
70
+ name: "ptz";
71
+ enabled: 0 | 1;
72
+ id: number;
73
+ width: number;
74
+ height: number;
75
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
76
+ cameraList: number[];
77
+ customName: string;
78
+ ptz_positions: Record<string, {
79
+ loop: boolean;
80
+ overlayList: {
81
+ duration: number;
82
+ pos_x: number;
83
+ pos_y: number;
84
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
85
+ scale: number;
86
+ imgPath: string;
87
+ imgName: string;
88
+ }[];
89
+ }>;
90
+ camera?: number | undefined;
91
+ schedule?: string | undefined;
92
+ invertInput?: boolean | undefined;
93
+ zIndex?: number | undefined;
94
+ }, {
95
+ name: "ptz";
96
+ enabled: 0 | 1;
97
+ id: number;
98
+ width: number;
99
+ height: number;
100
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
101
+ cameraList: number[];
102
+ customName: string;
103
+ ptz_positions: Record<string, {
104
+ loop: boolean;
105
+ overlayList: {
106
+ duration: number;
107
+ pos_x: number;
108
+ pos_y: number;
109
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
110
+ scale: number;
111
+ imgPath: string;
112
+ imgName: string;
113
+ }[];
114
+ }>;
115
+ camera?: number | undefined;
116
+ schedule?: string | undefined;
117
+ invertInput?: boolean | undefined;
118
+ zIndex?: number | undefined;
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
+ };
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isPtz = exports.ptzSchema = void 0;
4
+ const CamOverlayAPI_1 = require("./CamOverlayAPI");
5
+ const CamOverlayAPI_2 = require("../../CamOverlayAPI");
6
+ const zod_1 = require("zod");
7
+ exports.ptzSchema = CamOverlayAPI_1.widgetCommonSchema.extend({
8
+ name: zod_1.z.literal(CamOverlayAPI_2.allowedWidgetNames.ptz),
9
+ ptz_positions: zod_1.z.record(zod_1.z.string(), zod_1.z.object({
10
+ overlayList: zod_1.z.array(CamOverlayAPI_1.overlaySchema.omit({ active: true, fps: true })),
11
+ loop: zod_1.z.boolean(),
12
+ })),
13
+ });
14
+ const isPtz = (widget) => widget.name === 'ptz';
15
+ exports.isPtz = isPtz;
@@ -0,0 +1,79 @@
1
+ import { TWidget } from './CamOverlayAPI';
2
+ import { z } from 'zod';
3
+ export declare const screenSharingSchema: z.ZodObject<{
4
+ id: z.ZodNumber;
5
+ enabled: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>;
6
+ automationType: z.ZodUnion<[z.ZodLiteral<"time">, z.ZodLiteral<"manual">, z.ZodLiteral<"schedule">, z.ZodType<`input${number}`, z.ZodTypeDef, `input${number}`>]>;
7
+ invertInput: z.ZodOptional<z.ZodBoolean>;
8
+ cameraList: z.ZodArray<z.ZodNumber, "many">;
9
+ camera: z.ZodOptional<z.ZodNumber>;
10
+ schedule: z.ZodOptional<z.ZodString>;
11
+ customName: z.ZodString;
12
+ zIndex: z.ZodOptional<z.ZodNumber>;
13
+ width: z.ZodNumber;
14
+ height: z.ZodNumber;
15
+ } & {
16
+ pos_x: z.ZodNumber;
17
+ pos_y: z.ZodNumber;
18
+ coordSystem: z.ZodUnion<[z.ZodLiteral<"top_left">, z.ZodLiteral<"top">, z.ZodLiteral<"top_right">, z.ZodLiteral<"left">, z.ZodLiteral<"center">, z.ZodLiteral<"right">, z.ZodLiteral<"bottom_left">, z.ZodLiteral<"bottom">, z.ZodLiteral<"bottom_right">]>;
19
+ screenSize: z.ZodNumber;
20
+ fps: z.ZodNumber;
21
+ } & {
22
+ name: z.ZodLiteral<"screenSharing">;
23
+ }, "strip", z.ZodTypeAny, {
24
+ name: "screenSharing";
25
+ enabled: 0 | 1;
26
+ id: number;
27
+ width: number;
28
+ height: number;
29
+ fps: number;
30
+ pos_x: number;
31
+ pos_y: number;
32
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
33
+ cameraList: number[];
34
+ customName: string;
35
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
36
+ screenSize: number;
37
+ camera?: number | undefined;
38
+ schedule?: string | undefined;
39
+ invertInput?: boolean | undefined;
40
+ zIndex?: number | undefined;
41
+ }, {
42
+ name: "screenSharing";
43
+ enabled: 0 | 1;
44
+ id: number;
45
+ width: number;
46
+ height: number;
47
+ fps: number;
48
+ pos_x: number;
49
+ pos_y: number;
50
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
51
+ cameraList: number[];
52
+ customName: string;
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;
68
+ pos_x: number;
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";
74
+ screenSize: number;
75
+ camera?: number | undefined;
76
+ schedule?: string | undefined;
77
+ invertInput?: boolean | undefined;
78
+ zIndex?: number | undefined;
79
+ };
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isScreenSharing = exports.screenSharingSchema = void 0;
4
+ const CamOverlayAPI_1 = require("./CamOverlayAPI");
5
+ const CamOverlayAPI_2 = require("../../CamOverlayAPI");
6
+ const zod_1 = require("zod");
7
+ exports.screenSharingSchema = CamOverlayAPI_1.sharingSchema.extend({
8
+ name: zod_1.z.literal(CamOverlayAPI_2.allowedWidgetNames.screenSharing),
9
+ });
10
+ const isScreenSharing = (widget) => widget.name === 'screenSharing';
11
+ exports.isScreenSharing = isScreenSharing;
@@ -0,0 +1,79 @@
1
+ import { TWidget } from './CamOverlayAPI';
2
+ import { z } from 'zod';
3
+ export declare const webCameraSharingSchema: z.ZodObject<{
4
+ id: z.ZodNumber;
5
+ enabled: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>;
6
+ automationType: z.ZodUnion<[z.ZodLiteral<"time">, z.ZodLiteral<"manual">, z.ZodLiteral<"schedule">, z.ZodType<`input${number}`, z.ZodTypeDef, `input${number}`>]>;
7
+ invertInput: z.ZodOptional<z.ZodBoolean>;
8
+ cameraList: z.ZodArray<z.ZodNumber, "many">;
9
+ camera: z.ZodOptional<z.ZodNumber>;
10
+ schedule: z.ZodOptional<z.ZodString>;
11
+ customName: z.ZodString;
12
+ zIndex: z.ZodOptional<z.ZodNumber>;
13
+ width: z.ZodNumber;
14
+ height: z.ZodNumber;
15
+ } & {
16
+ pos_x: z.ZodNumber;
17
+ pos_y: z.ZodNumber;
18
+ coordSystem: z.ZodUnion<[z.ZodLiteral<"top_left">, z.ZodLiteral<"top">, z.ZodLiteral<"top_right">, z.ZodLiteral<"left">, z.ZodLiteral<"center">, z.ZodLiteral<"right">, z.ZodLiteral<"bottom_left">, z.ZodLiteral<"bottom">, z.ZodLiteral<"bottom_right">]>;
19
+ screenSize: z.ZodNumber;
20
+ fps: z.ZodNumber;
21
+ } & {
22
+ name: z.ZodLiteral<"web_camera">;
23
+ }, "strip", z.ZodTypeAny, {
24
+ name: "web_camera";
25
+ enabled: 0 | 1;
26
+ id: number;
27
+ width: number;
28
+ height: number;
29
+ fps: number;
30
+ pos_x: number;
31
+ pos_y: number;
32
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
33
+ cameraList: number[];
34
+ customName: string;
35
+ coordSystem: "top_left" | "top" | "top_right" | "left" | "center" | "right" | "bottom_left" | "bottom" | "bottom_right";
36
+ screenSize: number;
37
+ camera?: number | undefined;
38
+ schedule?: string | undefined;
39
+ invertInput?: boolean | undefined;
40
+ zIndex?: number | undefined;
41
+ }, {
42
+ name: "web_camera";
43
+ enabled: 0 | 1;
44
+ id: number;
45
+ width: number;
46
+ height: number;
47
+ fps: number;
48
+ pos_x: number;
49
+ pos_y: number;
50
+ automationType: "time" | "manual" | "schedule" | `input${number}`;
51
+ cameraList: number[];
52
+ customName: string;
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;
68
+ pos_x: number;
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";
74
+ screenSize: number;
75
+ camera?: number | undefined;
76
+ schedule?: string | undefined;
77
+ invertInput?: boolean | undefined;
78
+ zIndex?: number | undefined;
79
+ };
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isWebCameraSharing = exports.webCameraSharingSchema = void 0;
4
+ const CamOverlayAPI_1 = require("./CamOverlayAPI");
5
+ const CamOverlayAPI_2 = require("../../CamOverlayAPI");
6
+ const zod_1 = require("zod");
7
+ exports.webCameraSharingSchema = CamOverlayAPI_1.sharingSchema.extend({
8
+ name: zod_1.z.literal(CamOverlayAPI_2.allowedWidgetNames.web_camera),
9
+ });
10
+ const isWebCameraSharing = (widget) => widget.name === 'web_camera';
11
+ exports.isWebCameraSharing = isWebCameraSharing;
@@ -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,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -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,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });