@evercam/api 1.0.0-a59703ab2 → 1.0.0-a5ed7fc12
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 +1 -0
- package/dist/api/api/3dFirebaseApi.d.ts +209 -15
- package/dist/api/api/adminApi.d.ts +104 -57
- package/dist/api/api/aiApi.d.ts +182 -55
- package/dist/api/api/authzApi.d.ts +26 -16
- package/dist/api/api/client/axios.d.ts +1 -1
- package/dist/api/api/client/swr/Swr.d.ts +1 -1
- package/dist/api/api/evercamApi.d.ts +152 -90
- package/dist/api/api/evercamLabsApi.d.ts +6 -18
- package/dist/api/api/exNvrApi.d.ts +1 -1
- package/dist/api/api/index.d.ts +1 -0
- package/dist/api/api/ingestApi.d.ts +128 -58
- package/dist/api/api/ptzApi.d.ts +9 -4
- package/dist/api/api/reportsApi.d.ts +15 -0
- package/dist/api/api/videoWallApi.d.ts +2 -2
- package/dist/api/api/weatherApi.d.ts +2 -2
- package/dist/api/types/360.d.ts +176 -85
- package/dist/api/types/aconex.d.ts +9 -9
- package/dist/api/types/admin.d.ts +51 -0
- package/dist/api/types/aiConfigs.d.ts +244 -0
- package/dist/api/types/analytics.d.ts +134 -74
- package/dist/api/types/anpr.d.ts +48 -2
- package/dist/api/types/apiKey.d.ts +70 -0
- package/dist/api/types/auditLogs.d.ts +163 -20
- package/dist/api/types/authz.d.ts +116 -12
- package/dist/api/types/autodesk.d.ts +7 -7
- package/dist/api/types/automation.d.ts +65 -3
- package/dist/api/types/axios.d.ts +20 -15
- package/dist/api/types/bim.d.ts +39 -10
- package/dist/api/types/camera.d.ts +127 -120
- package/dist/api/types/comments.d.ts +16 -11
- package/dist/api/types/company.d.ts +43 -3
- package/dist/api/types/compare.d.ts +21 -6
- package/dist/api/types/connector.d.ts +5 -5
- package/dist/api/types/coolify.d.ts +18 -2
- package/dist/api/types/detections.d.ts +23 -18
- package/dist/api/types/drone.d.ts +95 -6
- package/dist/api/types/errors.d.ts +18 -2
- package/dist/api/types/gateReport.d.ts +46 -68
- package/dist/api/types/gateReportManagement.d.ts +170 -0
- package/dist/api/types/hammertech.d.ts +98 -0
- package/dist/api/types/hdd.d.ts +26 -1
- package/dist/api/types/index.d.ts +16 -3
- package/dist/api/types/ingest.d.ts +267 -17
- package/dist/api/types/kit.d.ts +55 -105
- package/dist/api/types/map.d.ts +12 -0
- package/dist/api/types/media.d.ts +9 -3
- package/dist/api/types/notification.d.ts +83 -3
- package/dist/api/types/nvr.d.ts +8 -8
- package/dist/api/types/oauth.d.ts +62 -0
- package/dist/api/types/observationEvents.d.ts +141 -0
- package/dist/api/types/observations.d.ts +80 -0
- package/dist/api/types/planner.d.ts +98 -8
- package/dist/api/types/posthog.d.ts +35 -0
- package/dist/api/types/procore.d.ts +13 -6
- package/dist/api/types/progressPhoto.d.ts +6 -2
- package/dist/api/types/project.d.ts +111 -25
- package/dist/api/types/recording.d.ts +9 -15
- package/dist/api/types/recycleBin.d.ts +1 -1
- package/dist/api/types/reports.d.ts +108 -0
- package/dist/api/types/ring.d.ts +53 -0
- package/dist/api/types/roi.d.ts +3 -11
- package/dist/api/types/routeParams.d.ts +1 -0
- package/dist/api/types/router.d.ts +1 -1
- package/dist/api/types/shared.d.ts +42 -25
- package/dist/api/types/shares.d.ts +1 -14
- package/dist/api/types/sim.d.ts +6 -6
- package/dist/api/types/siteAnalytics.d.ts +81 -43
- package/dist/api/types/siteAnalyticsManagement.d.ts +127 -0
- package/dist/api/types/siteView.d.ts +78 -0
- package/dist/api/types/smartSeach.d.ts +5 -0
- package/dist/api/types/snapshots.d.ts +49 -4
- package/dist/api/types/socket.d.ts +4 -0
- package/dist/api/types/storageProvider.d.ts +19 -0
- package/dist/api/types/storyblok.d.ts +27 -0
- package/dist/api/types/streaming.d.ts +3 -3
- package/dist/api/types/tag.d.ts +1 -1
- package/dist/api/types/time.d.ts +0 -18
- package/dist/api/types/timelapse.d.ts +7 -11
- package/dist/api/types/user.d.ts +106 -37
- package/dist/api/types/videoWall.d.ts +21 -21
- package/dist/api/types/weather.d.ts +75 -11
- package/dist/api/types/widget.d.ts +71 -12
- package/dist/api/types/xweather.d.ts +4 -4
- package/dist/api/utils.d.ts +1 -1
- package/dist/index.js +2453 -962
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +1 -1
- package/dist/index.umd.cjs.map +1 -1
- package/dist/shared/types/components.d.ts +375 -34
- package/dist/shared/types/customDataTableFilters.d.ts +10 -0
- package/dist/shared/types/droneUpload.d.ts +93 -0
- package/dist/shared/types/imagePlayer.d.ts +9 -2
- package/dist/shared/types/index.d.ts +5 -0
- package/dist/shared/types/observations.d.ts +25 -0
- package/dist/shared/types/rbac.d.ts +67 -0
- package/dist/shared/types/report.d.ts +107 -0
- package/dist/shared/types/timeline.d.ts +2 -1
- package/dist/shared/utils/datePickerValue.d.ts +36 -0
- package/dist/shared/utils/datePresets.d.ts +31 -0
- package/package.json +4 -2
- package/dist/api/types/copilot.d.ts +0 -157
- package/dist/api/types/storageServers.d.ts +0 -4
- package/dist/api/types/vendorModel.d.ts +0 -15
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { ForgeView } from "@evercam/api/types/360";
|
|
2
|
+
import { Point2D, Point3D } from "@evercam/api/types/shared";
|
|
3
|
+
export declare enum SiteViewSoftwareType {
|
|
4
|
+
Revit = "Revit",
|
|
5
|
+
Navisworks = "Navisworks",
|
|
6
|
+
Drone = "Drone",
|
|
7
|
+
Synchro = "Synchro"
|
|
8
|
+
}
|
|
9
|
+
export declare enum SiteViewerType {
|
|
10
|
+
ITwin = "iTwin",
|
|
11
|
+
Cesium = "Cesium",
|
|
12
|
+
Forge = "Forge"
|
|
13
|
+
}
|
|
14
|
+
export type SiteViewCameraListItem = {
|
|
15
|
+
projectId: string;
|
|
16
|
+
projectName: string;
|
|
17
|
+
software: SiteViewSoftwareType;
|
|
18
|
+
type: SiteViewerType;
|
|
19
|
+
uniqueId: string;
|
|
20
|
+
integrationType?: string;
|
|
21
|
+
};
|
|
22
|
+
export type ForgeUrn = {
|
|
23
|
+
id?: string;
|
|
24
|
+
displayName: string;
|
|
25
|
+
urn: string;
|
|
26
|
+
isModelHostedByEvercamACC?: boolean;
|
|
27
|
+
savedViews?: Record<string, ForgeView>;
|
|
28
|
+
};
|
|
29
|
+
export type ForgeAccAlignmentData = {
|
|
30
|
+
bbox: {
|
|
31
|
+
min: Point2D;
|
|
32
|
+
max: Point2D;
|
|
33
|
+
};
|
|
34
|
+
transform: number[];
|
|
35
|
+
coordinateSystem?: {
|
|
36
|
+
context?: {
|
|
37
|
+
type?: string;
|
|
38
|
+
};
|
|
39
|
+
} | null;
|
|
40
|
+
};
|
|
41
|
+
export type TimelineItem = {
|
|
42
|
+
taskNumber: number;
|
|
43
|
+
taskID: string;
|
|
44
|
+
actualStartDate: string;
|
|
45
|
+
actualEndDate: string;
|
|
46
|
+
plannedStartDate: string;
|
|
47
|
+
plannedEndDate: string;
|
|
48
|
+
objectIDs: number[];
|
|
49
|
+
};
|
|
50
|
+
export type ForgeMarkerTransform = {
|
|
51
|
+
position?: Point3D;
|
|
52
|
+
hidden?: boolean;
|
|
53
|
+
};
|
|
54
|
+
export type ForgeMarker = {
|
|
55
|
+
name: string;
|
|
56
|
+
cameraExid: string;
|
|
57
|
+
type: string;
|
|
58
|
+
transforms: Record<string, ForgeMarkerTransform>;
|
|
59
|
+
};
|
|
60
|
+
export type ForgeProjectData = {
|
|
61
|
+
urns?: ForgeUrn[];
|
|
62
|
+
accDrawingsAlignments?: Record<string, ForgeAccAlignmentData>;
|
|
63
|
+
timeline?: TimelineItem[];
|
|
64
|
+
cameraMarkers?: Record<string, ForgeMarker>;
|
|
65
|
+
};
|
|
66
|
+
export type ItwinModel = {
|
|
67
|
+
name: string;
|
|
68
|
+
iTwinId: string;
|
|
69
|
+
iModelId: string;
|
|
70
|
+
changeSetId?: string;
|
|
71
|
+
isIModel: boolean;
|
|
72
|
+
height?: number;
|
|
73
|
+
cesiumId?: number;
|
|
74
|
+
markerDistanceThreshold: number;
|
|
75
|
+
};
|
|
76
|
+
export type ItwinProjectData = {
|
|
77
|
+
models: ItwinModel[];
|
|
78
|
+
};
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import { CameraExid, DateType, PaginationParams, Schedule } from "
|
|
1
|
+
import { CameraExid, DateType, PaginationParams, Schedule } from "@evercam/api/types";
|
|
2
2
|
export type SnapshotExtractionQyeryParams = PaginationParams & {
|
|
3
3
|
camera: string;
|
|
4
4
|
cameraExid: CameraExid;
|
|
5
5
|
status: SnapshotExtractionStatus;
|
|
6
6
|
};
|
|
7
7
|
export declare enum SnapshotExtractionStatus {
|
|
8
|
+
Cancelling = "canceling",
|
|
9
|
+
Cancelled = "cancelled",
|
|
8
10
|
Completed = "completed",
|
|
9
11
|
Failed = "failed",
|
|
12
|
+
Pending = "pending",
|
|
10
13
|
Processing = "processing"
|
|
11
14
|
}
|
|
12
15
|
export declare enum SnapshotExtractionType {
|
|
@@ -30,6 +33,8 @@ export type SnapshotExtraction = {
|
|
|
30
33
|
injectTo_cr: Boolean;
|
|
31
34
|
schedule: Schedule;
|
|
32
35
|
created_at: DateType;
|
|
36
|
+
jpegCount?: number;
|
|
37
|
+
obanJobId?: number;
|
|
33
38
|
};
|
|
34
39
|
export type SnapshotTestPayload = {
|
|
35
40
|
cameraExid?: CameraExid;
|
|
@@ -42,18 +47,58 @@ export type SnapshotTestResponse = {
|
|
|
42
47
|
status: string;
|
|
43
48
|
data: string;
|
|
44
49
|
};
|
|
50
|
+
export type SnapshotEmailDeliveryRequestPayload = {
|
|
51
|
+
snapshot: string;
|
|
52
|
+
recipients?: string[];
|
|
53
|
+
message?: string;
|
|
54
|
+
};
|
|
55
|
+
export type SnapshotEmailDeliveryResponsePayload = {
|
|
56
|
+
warning?: string;
|
|
57
|
+
};
|
|
45
58
|
export type DeleteSnapshotQueryParams = {
|
|
46
59
|
fromDate: DateType;
|
|
47
60
|
toDate: DateType;
|
|
48
61
|
adminEmail: string;
|
|
49
62
|
adminFullname: string;
|
|
50
63
|
};
|
|
51
|
-
export type
|
|
64
|
+
export type SnapshotTransfer = {
|
|
65
|
+
id: number;
|
|
66
|
+
sourceCamera: SnapshotTransferCamera;
|
|
67
|
+
targetCamera: SnapshotTransferCamera;
|
|
68
|
+
fromDate: DateType;
|
|
69
|
+
toDate: DateType;
|
|
70
|
+
overwriteExisting?: boolean | null;
|
|
71
|
+
deleteSource?: boolean | null;
|
|
72
|
+
requestor: SnapshotTransferRequestor;
|
|
73
|
+
status: SnapshotTransferStatus;
|
|
74
|
+
insertedAt: DateType;
|
|
75
|
+
attempts?: number | null;
|
|
76
|
+
errorMessage?: string | null;
|
|
77
|
+
snapshotsTransferred?: number | null;
|
|
78
|
+
};
|
|
79
|
+
export type SnapshotTransferCamera = {
|
|
80
|
+
id: number;
|
|
81
|
+
exid: CameraExid;
|
|
82
|
+
name: string;
|
|
83
|
+
};
|
|
84
|
+
export type SnapshotTransferRequestor = {
|
|
85
|
+
email: string;
|
|
86
|
+
firstname: string;
|
|
87
|
+
lastname: string;
|
|
88
|
+
};
|
|
89
|
+
export declare enum SnapshotTransferStatus {
|
|
90
|
+
Completed = "completed",
|
|
91
|
+
Failed = "failed",
|
|
92
|
+
Processing = "processing",
|
|
93
|
+
Pending = "pending",
|
|
94
|
+
Cancelled = "cancelled"
|
|
95
|
+
}
|
|
96
|
+
export type TransferCloudRecordingsQueryParams = PaginationParams & {
|
|
52
97
|
targetCameraExid: CameraExid;
|
|
53
98
|
fromDate: DateType;
|
|
54
99
|
toDate: DateType;
|
|
55
|
-
|
|
56
|
-
|
|
100
|
+
overwriteExisting?: boolean;
|
|
101
|
+
deleteSource?: boolean;
|
|
57
102
|
adminEmail?: string;
|
|
58
103
|
adminFullname?: string;
|
|
59
104
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { DateType } from "@evercam/api/types";
|
|
2
|
+
export type StorageProvider = {
|
|
3
|
+
id?: number;
|
|
4
|
+
cameraId: number;
|
|
5
|
+
type: string;
|
|
6
|
+
provider: string;
|
|
7
|
+
url: string;
|
|
8
|
+
startDate: DateType;
|
|
9
|
+
endDate: DateType;
|
|
10
|
+
config: Record<string, any>;
|
|
11
|
+
insertedAt?: DateType;
|
|
12
|
+
};
|
|
13
|
+
export type StorageProvidersResponsePayload = {
|
|
14
|
+
providers: StorageProvider[];
|
|
15
|
+
};
|
|
16
|
+
export declare enum ProjectStorageProvider {
|
|
17
|
+
Seaweedfs = "seaweedfs",
|
|
18
|
+
S3 = "s3"
|
|
19
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { JsonObject, JsonValue } from "@evercam/api/types";
|
|
2
|
+
export type StoryblokStory<TContent extends JsonObject = JsonObject> = {
|
|
3
|
+
id: number;
|
|
4
|
+
uuid: string;
|
|
5
|
+
name: string;
|
|
6
|
+
slug: string;
|
|
7
|
+
fullSlug: string;
|
|
8
|
+
content: TContent;
|
|
9
|
+
createdAt: string;
|
|
10
|
+
publishedAt: string | null;
|
|
11
|
+
updatedAt: string;
|
|
12
|
+
position: number;
|
|
13
|
+
tagList: string[];
|
|
14
|
+
isStartpage: boolean;
|
|
15
|
+
parentId: number | null;
|
|
16
|
+
groupId: string;
|
|
17
|
+
firstPublishedAt: string | null;
|
|
18
|
+
releaseId: number | null;
|
|
19
|
+
lang: string;
|
|
20
|
+
path: string;
|
|
21
|
+
};
|
|
22
|
+
export type StoryblokResponse<TContent extends JsonObject = JsonObject> = {
|
|
23
|
+
story: StoryblokStory<TContent>;
|
|
24
|
+
cv: number;
|
|
25
|
+
rels: JsonValue[];
|
|
26
|
+
links: JsonValue[];
|
|
27
|
+
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { KitMetricData } from "@evercam/api/types";
|
|
2
2
|
export type ExNvrLoginResponse = {
|
|
3
3
|
accessToken: string;
|
|
4
4
|
};
|
|
5
5
|
export type ExNvrRecordingInterval = {
|
|
6
6
|
active: boolean;
|
|
7
|
-
startDate:
|
|
8
|
-
endDate:
|
|
7
|
+
startDate: string;
|
|
8
|
+
endDate: string;
|
|
9
9
|
};
|
|
10
10
|
export type ExNvrDeviceConfig = {
|
|
11
11
|
id: string;
|
package/dist/api/types/tag.d.ts
CHANGED
package/dist/api/types/time.d.ts
CHANGED
|
@@ -1,25 +1,7 @@
|
|
|
1
1
|
import { Moment } from "moment-timezone";
|
|
2
2
|
export type DateType = Date | string | number;
|
|
3
3
|
export type ExtendedDateType = Moment | DateType;
|
|
4
|
-
type YYYY = number;
|
|
5
|
-
type MM = number;
|
|
6
|
-
type DD = number;
|
|
7
|
-
type HH = number;
|
|
8
|
-
type mm = number;
|
|
9
|
-
type ss = number;
|
|
10
|
-
type microS = number;
|
|
11
|
-
export type Date_YYYY = `${YYYY}` | string;
|
|
12
|
-
export type Date_YYYY_MM = `${YYYY}-${MM}` | string;
|
|
13
|
-
export type Date_YYYY_MM_DD = `${YYYY}-${MM}-${DD}` | string;
|
|
14
|
-
export type Time_HH_mm_ss = `${HH}:${mm}:${ss}` | string;
|
|
15
|
-
export type Date_HH = `${HH}` | string;
|
|
16
|
-
export type DateTime = `${Date_YYYY_MM_DD}T${Time_HH_mm_ss}` | string;
|
|
17
|
-
export type DateTime_tz = `${Date_YYYY_MM_DD}T${Time_HH_mm_ss}${"+" | "-"}${HH}:${mm}` | string;
|
|
18
|
-
export type DateTime_Z = `${Date_YYYY_MM_DD}T${Time_HH_mm_ss}Z` | string;
|
|
19
|
-
export type DateTime_Z_micros = `${Date_YYYY_MM_DD}T${Time_HH_mm_ss}.${microS}Z` | string;
|
|
20
|
-
export type DateTimeSpaceSeparated = `${Date_YYYY_MM_DD} ${Time_HH_mm_ss}` | string;
|
|
21
4
|
export type DateRangeFilter = {
|
|
22
5
|
fromDate: DateType;
|
|
23
6
|
toDate: DateType;
|
|
24
7
|
};
|
|
25
|
-
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Point2D, Schedule } from "@evercam/api/types";
|
|
2
2
|
export declare enum TimelapseStatus {
|
|
3
3
|
Pending = 11,
|
|
4
4
|
Completed = 5,
|
|
@@ -7,7 +7,8 @@ export declare enum TimelapseStatus {
|
|
|
7
7
|
export declare enum TimelapseDuration {
|
|
8
8
|
ThirtySeconds = 30,
|
|
9
9
|
SixtySeconds = 60,
|
|
10
|
-
NintySeconds = 90
|
|
10
|
+
NintySeconds = 90,
|
|
11
|
+
TwoMinutes = 120
|
|
11
12
|
}
|
|
12
13
|
export type TimelapseVideoOptions = {
|
|
13
14
|
width?: number;
|
|
@@ -15,7 +16,9 @@ export type TimelapseVideoOptions = {
|
|
|
15
16
|
removeTimestamp: boolean;
|
|
16
17
|
smoothTransition: boolean;
|
|
17
18
|
evercamWatermark: boolean;
|
|
19
|
+
sectionBlur?: boolean;
|
|
18
20
|
timestampPosition?: TimestampPositionCoordinates;
|
|
21
|
+
blurRegions?: BlurRegionCoordinates[];
|
|
19
22
|
};
|
|
20
23
|
export type TimestampPositionCoordinates = {
|
|
21
24
|
x: number;
|
|
@@ -23,14 +26,14 @@ export type TimestampPositionCoordinates = {
|
|
|
23
26
|
w: number;
|
|
24
27
|
h: number;
|
|
25
28
|
};
|
|
29
|
+
export type BlurRegionCoordinates = Point2D[];
|
|
26
30
|
export type TimelapseLogoOptions = {
|
|
27
|
-
id
|
|
31
|
+
id?: number;
|
|
28
32
|
x: number;
|
|
29
33
|
y: number;
|
|
30
34
|
width: number;
|
|
31
35
|
height: number;
|
|
32
36
|
};
|
|
33
|
-
export type TimelapseSchedules = string | Schedule;
|
|
34
37
|
export declare enum TimelapseScheduleType {
|
|
35
38
|
Continuous = "continuous",
|
|
36
39
|
WorkingHours = "workingHours",
|
|
@@ -51,13 +54,6 @@ export declare enum TimelapseType {
|
|
|
51
54
|
Year = "year",
|
|
52
55
|
FullProject = "full_project"
|
|
53
56
|
}
|
|
54
|
-
export type TimelapseFilterQueryParams = {
|
|
55
|
-
from?: DateType;
|
|
56
|
-
to?: DateType;
|
|
57
|
-
period?: TimelapsePeriod;
|
|
58
|
-
duration?: number;
|
|
59
|
-
schedule?: TimelapseSchedules;
|
|
60
|
-
};
|
|
61
57
|
export type TimelapseCreationRequestPayload = {
|
|
62
58
|
title: string;
|
|
63
59
|
duration: number;
|
package/dist/api/types/user.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { CameraExid, PaginationParams } from "@evercam/api/types";
|
|
2
|
+
import { Role, RoleSubRole } from "@evercam/api/types/authz";
|
|
2
3
|
export type User = {
|
|
3
4
|
id?: number;
|
|
4
5
|
fullname?: string;
|
|
@@ -9,10 +10,16 @@ export type User = {
|
|
|
9
10
|
country: string;
|
|
10
11
|
isAdmin: boolean;
|
|
11
12
|
persona: Persona;
|
|
12
|
-
companyId?: string;
|
|
13
|
+
companyId?: string | number;
|
|
13
14
|
companyName?: string;
|
|
14
15
|
companyExid?: string;
|
|
15
16
|
features?: Array<UserFeatureFlag>;
|
|
17
|
+
confirmedAt?: string;
|
|
18
|
+
createdAt?: string;
|
|
19
|
+
lastLoginAt?: string;
|
|
20
|
+
token?: string;
|
|
21
|
+
updatedAt?: string;
|
|
22
|
+
evercamAccount?: boolean;
|
|
16
23
|
};
|
|
17
24
|
export type AdminUser = {
|
|
18
25
|
id: number;
|
|
@@ -32,9 +39,9 @@ export type AdminUser = {
|
|
|
32
39
|
camerasOwned: number;
|
|
33
40
|
countryId: number;
|
|
34
41
|
countryName: string;
|
|
35
|
-
createdAt:
|
|
42
|
+
createdAt: string;
|
|
36
43
|
integrations: string[];
|
|
37
|
-
lastSeenAt:
|
|
44
|
+
lastSeenAt: string;
|
|
38
45
|
lastLoginAt: string;
|
|
39
46
|
lastname: string;
|
|
40
47
|
persona: string;
|
|
@@ -48,7 +55,6 @@ export declare enum UserFeatureFlag {
|
|
|
48
55
|
CompanyAdmin = "company-admin",
|
|
49
56
|
VideoWalls = "video-walls",
|
|
50
57
|
MassCameraSharing = "mass-camera-sharing",
|
|
51
|
-
Copilot = "copilot",
|
|
52
58
|
ProjectSharing = "project-sharing"
|
|
53
59
|
}
|
|
54
60
|
export type ProjectUser = User & {
|
|
@@ -89,26 +95,44 @@ export type RemotePasswordUpdateRequestPayload = {
|
|
|
89
95
|
currentPassword: string;
|
|
90
96
|
newPassword: string;
|
|
91
97
|
};
|
|
92
|
-
export type
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
98
|
+
export type AuthPasswordOption = {
|
|
99
|
+
type: "password";
|
|
100
|
+
};
|
|
101
|
+
export type AuthSsoOption = {
|
|
102
|
+
type: "sso";
|
|
103
|
+
name: string;
|
|
104
|
+
scope: string;
|
|
105
|
+
prompt: string | null;
|
|
106
|
+
exid: string;
|
|
107
|
+
clientId: string;
|
|
108
|
+
iconUrl: string;
|
|
109
|
+
loginUrl: string;
|
|
110
|
+
responseType: string;
|
|
111
|
+
};
|
|
112
|
+
export type AuthOption = AuthPasswordOption | AuthSsoOption;
|
|
113
|
+
export type AuthOptionsResponsePayload = {
|
|
114
|
+
options: AuthOption[];
|
|
115
|
+
};
|
|
116
|
+
export type AuthProviderConfigPayload = {
|
|
117
|
+
name: string;
|
|
118
|
+
scope: string;
|
|
119
|
+
prompt: string | null;
|
|
120
|
+
exid: string;
|
|
121
|
+
clientId: string;
|
|
122
|
+
iconUrl: string;
|
|
123
|
+
loginUrl: string;
|
|
124
|
+
responseType: string;
|
|
107
125
|
};
|
|
108
126
|
export type LogoutParams = {
|
|
109
127
|
token: string;
|
|
110
128
|
fromAdmin?: boolean;
|
|
111
129
|
};
|
|
130
|
+
export type ConfirmUserRequestPayload = {
|
|
131
|
+
c: string;
|
|
132
|
+
};
|
|
133
|
+
export type DeleteActiveSessionRequestPayload = {
|
|
134
|
+
authorization: string;
|
|
135
|
+
};
|
|
112
136
|
export type UserSession = {
|
|
113
137
|
browser: string;
|
|
114
138
|
createdAt: string;
|
|
@@ -127,6 +151,21 @@ export type SessionsListRequestPayload = {
|
|
|
127
151
|
limit: number;
|
|
128
152
|
page: number;
|
|
129
153
|
};
|
|
154
|
+
export type AuthorizedApp = {
|
|
155
|
+
id: number;
|
|
156
|
+
clientId: string;
|
|
157
|
+
clientName: string;
|
|
158
|
+
clientDescription: string | null;
|
|
159
|
+
logoUrl: string | null;
|
|
160
|
+
scopes: string[];
|
|
161
|
+
grantedAt: string;
|
|
162
|
+
};
|
|
163
|
+
export type AuthorizedAppsListRequestPayload = {
|
|
164
|
+
search?: string;
|
|
165
|
+
sort?: string;
|
|
166
|
+
limit?: number;
|
|
167
|
+
page?: number;
|
|
168
|
+
};
|
|
130
169
|
export type SessionActivityCamSettingsDetail = {
|
|
131
170
|
new: any;
|
|
132
171
|
old: any;
|
|
@@ -152,7 +191,6 @@ export type SessionActivitiesListRequestPayload = {
|
|
|
152
191
|
};
|
|
153
192
|
export type SignupUserRequestPayload = {
|
|
154
193
|
telephone: string;
|
|
155
|
-
token: string;
|
|
156
194
|
firstname: string;
|
|
157
195
|
lastname: string;
|
|
158
196
|
email: string;
|
|
@@ -170,13 +208,20 @@ export type UserUpdateRequestPayload = {
|
|
|
170
208
|
country: string;
|
|
171
209
|
persona: string;
|
|
172
210
|
};
|
|
173
|
-
export type UserDeleteRequestPayload = {
|
|
174
|
-
verifEmail: string;
|
|
175
|
-
};
|
|
176
211
|
export type GoogleAuthRequestPayload = {
|
|
177
212
|
code: string;
|
|
178
213
|
redirectUri: string;
|
|
179
214
|
};
|
|
215
|
+
export type ProjectContact = {
|
|
216
|
+
name: string;
|
|
217
|
+
role: ContactRole | string;
|
|
218
|
+
email?: string;
|
|
219
|
+
phone?: string;
|
|
220
|
+
photo?: string;
|
|
221
|
+
};
|
|
222
|
+
export type ProjectContactsResponsePayload = {
|
|
223
|
+
data: ProjectContact[];
|
|
224
|
+
};
|
|
180
225
|
export type UserStatsResponse = {
|
|
181
226
|
data: {
|
|
182
227
|
userStats: AdminUser;
|
|
@@ -197,7 +242,7 @@ export type UserProject = {
|
|
|
197
242
|
id: number;
|
|
198
243
|
exid: string;
|
|
199
244
|
name: string;
|
|
200
|
-
startedAt:
|
|
245
|
+
startedAt: string;
|
|
201
246
|
};
|
|
202
247
|
export type UserProjectResponse = {
|
|
203
248
|
data: UserProject[];
|
|
@@ -217,9 +262,9 @@ export type Admin = {
|
|
|
217
262
|
id: number;
|
|
218
263
|
fullname: string;
|
|
219
264
|
email: string;
|
|
220
|
-
createdAt:
|
|
221
|
-
updatedAt:
|
|
222
|
-
lastSignInAt:
|
|
265
|
+
createdAt: string;
|
|
266
|
+
updatedAt: string;
|
|
267
|
+
lastSignInAt: string;
|
|
223
268
|
signInCount: number;
|
|
224
269
|
lastSignInIp: string;
|
|
225
270
|
apiId: string;
|
|
@@ -231,17 +276,17 @@ export type ImpersonateUserResponse = {
|
|
|
231
276
|
lastname: string;
|
|
232
277
|
telephone: string;
|
|
233
278
|
email: string;
|
|
234
|
-
|
|
279
|
+
isAdmin: boolean;
|
|
235
280
|
persona: Persona;
|
|
236
281
|
country: string;
|
|
237
282
|
companyId: number;
|
|
238
283
|
companyExid: string;
|
|
239
284
|
companyName: string;
|
|
240
285
|
evercamAccount: boolean;
|
|
241
|
-
createdAt:
|
|
242
|
-
updatedAt:
|
|
243
|
-
confirmedAt:
|
|
244
|
-
|
|
286
|
+
createdAt: string;
|
|
287
|
+
updatedAt: string;
|
|
288
|
+
confirmedAt: string;
|
|
289
|
+
lastLoginAt: string;
|
|
245
290
|
features: UserFeatureFlag[];
|
|
246
291
|
token: string;
|
|
247
292
|
};
|
|
@@ -270,8 +315,30 @@ export type Suppression = {
|
|
|
270
315
|
id: number;
|
|
271
316
|
email: string;
|
|
272
317
|
source: string;
|
|
273
|
-
insertedAt:
|
|
274
|
-
updatedAt:
|
|
318
|
+
insertedAt: string;
|
|
319
|
+
updatedAt: string;
|
|
320
|
+
};
|
|
321
|
+
type Email = string;
|
|
322
|
+
export type WsAccessRestrictionUpdate = {
|
|
323
|
+
camera_id: CameraExid;
|
|
324
|
+
is_access_restricted: boolean;
|
|
325
|
+
};
|
|
326
|
+
export type WsUserRestrictionItem = {
|
|
327
|
+
user_id: number;
|
|
328
|
+
camera_id: CameraExid;
|
|
329
|
+
is_user_access_restricted: boolean;
|
|
330
|
+
};
|
|
331
|
+
export type WsUserRestrictionUpdate = WsUserRestrictionItem[];
|
|
332
|
+
/**
|
|
333
|
+
* Backend WebSocket event payload:
|
|
334
|
+
* {
|
|
335
|
+
* user: {
|
|
336
|
+
* "someone@domain.com": {camera_id, is_access_restricted} OR [{...}, {...}]
|
|
337
|
+
* }
|
|
338
|
+
* }
|
|
339
|
+
*/
|
|
340
|
+
export type WsRestrictionChangedPayload = {
|
|
341
|
+
user: Record<Email, WsAccessRestrictionUpdate | WsUserRestrictionUpdate>;
|
|
275
342
|
};
|
|
276
343
|
export type ProjectUserWithRole = {
|
|
277
344
|
id: number;
|
|
@@ -282,7 +349,9 @@ export type ProjectUserWithRole = {
|
|
|
282
349
|
name: string;
|
|
283
350
|
exid: string;
|
|
284
351
|
};
|
|
352
|
+
persona: Persona;
|
|
285
353
|
permissions: string[];
|
|
286
|
-
role:
|
|
287
|
-
subRoles:
|
|
354
|
+
role: Role;
|
|
355
|
+
subRoles: RoleSubRole[];
|
|
288
356
|
};
|
|
357
|
+
export {};
|
|
@@ -1,25 +1,16 @@
|
|
|
1
|
-
import { Camera, Media, PaginationParams } from "
|
|
1
|
+
import { Camera, Media, PaginationParams } from "@evercam/api/types";
|
|
2
2
|
export declare enum VideoWallItemType {
|
|
3
3
|
LiveView = "live",
|
|
4
4
|
Video = "video",
|
|
5
5
|
Image = "image"
|
|
6
6
|
}
|
|
7
|
-
export type VideoWallItem<T extends Camera | Media> = {
|
|
7
|
+
export type VideoWallItem<T extends Camera | Media = Camera> = {
|
|
8
8
|
value: T;
|
|
9
9
|
type: VideoWallItemType;
|
|
10
10
|
};
|
|
11
|
-
export type
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
i: string | number;
|
|
15
|
-
moved: boolean;
|
|
16
|
-
w: number;
|
|
17
|
-
x: number;
|
|
18
|
-
y: number;
|
|
19
|
-
};
|
|
20
|
-
export type VideoWallPreset = {
|
|
21
|
-
name?: string;
|
|
22
|
-
configuration: Array<VideoWallPresetItemConfig>;
|
|
11
|
+
export type VideoWallPresetGridConfig = {
|
|
12
|
+
items: VideoWallPresetItem[];
|
|
13
|
+
meta?: VideoWallPresetMeta;
|
|
23
14
|
};
|
|
24
15
|
export type VideoWallPresetItem = {
|
|
25
16
|
i: string | number;
|
|
@@ -30,6 +21,14 @@ export type VideoWallPresetItem = {
|
|
|
30
21
|
camera: Camera;
|
|
31
22
|
weather?: Record<string, unknown>;
|
|
32
23
|
media?: Media;
|
|
24
|
+
moved?: boolean;
|
|
25
|
+
};
|
|
26
|
+
export type VideoWallPresetMeta = {
|
|
27
|
+
colNum: number;
|
|
28
|
+
rowCount: number;
|
|
29
|
+
tile: number;
|
|
30
|
+
template: string;
|
|
31
|
+
gridSize: number;
|
|
33
32
|
};
|
|
34
33
|
export type VideoWallSource = "default" | "widget";
|
|
35
34
|
export interface VideoWall {
|
|
@@ -38,8 +37,8 @@ export interface VideoWall {
|
|
|
38
37
|
name: string;
|
|
39
38
|
source: VideoWallSource;
|
|
40
39
|
config: Record<string, any>;
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
insertedAt: string;
|
|
41
|
+
updatedAt: string;
|
|
43
42
|
user: {
|
|
44
43
|
id: number;
|
|
45
44
|
firstname: string;
|
|
@@ -47,20 +46,21 @@ export interface VideoWall {
|
|
|
47
46
|
email: string;
|
|
48
47
|
};
|
|
49
48
|
}
|
|
50
|
-
export interface
|
|
51
|
-
|
|
49
|
+
export interface VideoWallListParams extends PaginationParams {
|
|
50
|
+
projectExid?: string;
|
|
52
51
|
id?: number;
|
|
53
52
|
exid?: string;
|
|
54
|
-
|
|
55
|
-
|
|
53
|
+
projectId?: number;
|
|
54
|
+
userId?: number;
|
|
56
55
|
name?: string;
|
|
57
56
|
project?: string;
|
|
58
57
|
user?: string;
|
|
59
58
|
source?: VideoWallSource;
|
|
60
59
|
}
|
|
61
60
|
export type VideoWallCreateUpdatePayload = {
|
|
62
|
-
|
|
61
|
+
projectExid?: string;
|
|
63
62
|
name: string;
|
|
64
63
|
source?: VideoWallSource;
|
|
65
64
|
config: Record<string, unknown>;
|
|
65
|
+
scope?: string;
|
|
66
66
|
};
|