@evercam/api 1.0.0-62d228551 → 1.0.0-63bac8c70
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 +2 -0
- package/dist/api/api/3dFirebaseApi.d.ts +175 -12
- package/dist/api/api/adminApi.d.ts +93 -81
- package/dist/api/api/aiApi.d.ts +63 -81
- package/dist/api/api/authzApi.d.ts +31 -15
- package/dist/api/api/client/axios.d.ts +2 -1
- package/dist/api/api/client/swr/Swr.d.ts +1 -1
- package/dist/api/api/evercamApi.d.ts +122 -100
- package/dist/api/api/evercamLabsApi.d.ts +6 -4
- package/dist/api/api/exNvrApi.d.ts +1 -1
- package/dist/api/api/ingestApi.d.ts +109 -34
- package/dist/api/api/ptzApi.d.ts +12 -3
- package/dist/api/api/videoWallApi.d.ts +7 -7
- package/dist/api/api/weatherApi.d.ts +2 -2
- package/dist/api/types/360.d.ts +190 -8
- package/dist/api/types/aconex.d.ts +104 -6
- package/dist/api/types/admin.d.ts +51 -0
- package/dist/api/types/analytics.d.ts +149 -41
- package/dist/api/types/anpr.d.ts +24 -13
- package/dist/api/types/auditLogs.d.ts +1 -1
- package/dist/api/types/authz.d.ts +61 -0
- package/dist/api/types/autodesk.d.ts +7 -7
- package/dist/api/types/automation.d.ts +86 -1
- package/dist/api/types/axios.d.ts +11 -5
- package/dist/api/types/bim.d.ts +11 -5
- package/dist/api/types/camera.d.ts +98 -97
- package/dist/api/types/comments.d.ts +4 -8
- package/dist/api/types/company.d.ts +42 -1
- package/dist/api/types/compare.d.ts +20 -5
- package/dist/api/types/connector.d.ts +3 -5
- package/dist/api/types/coolify.d.ts +20 -2
- package/dist/api/types/copilot.d.ts +11 -6
- package/dist/api/types/credentials.d.ts +1 -0
- package/dist/api/types/detections.d.ts +20 -22
- package/dist/api/types/drone.d.ts +92 -3
- package/dist/api/types/gateReport.d.ts +49 -158
- package/dist/api/types/hdd.d.ts +26 -1
- package/dist/api/types/index.d.ts +8 -1
- package/dist/api/types/ingest.d.ts +102 -2
- package/dist/api/types/kit.d.ts +33 -5
- package/dist/api/types/map.d.ts +12 -0
- package/dist/api/types/media.d.ts +2 -1
- package/dist/api/types/notification.d.ts +32 -2
- package/dist/api/types/oauth.d.ts +62 -0
- package/dist/api/types/planner.d.ts +102 -1
- package/dist/api/types/posthog.d.ts +15 -0
- package/dist/api/types/procore.d.ts +13 -6
- package/dist/api/types/progressPhoto.d.ts +6 -32
- package/dist/api/types/project.d.ts +137 -19
- package/dist/api/types/recording.d.ts +6 -4
- package/dist/api/types/recycleBin.d.ts +1 -1
- package/dist/api/types/ring.d.ts +53 -0
- package/dist/api/types/roi.d.ts +2 -2
- package/dist/api/types/routeParams.d.ts +2 -1
- package/dist/api/types/router.d.ts +20 -1
- package/dist/api/types/shared.d.ts +29 -4
- package/dist/api/types/shares.d.ts +6 -144
- package/dist/api/types/sim.d.ts +6 -6
- package/dist/api/types/siteAnalytics.d.ts +191 -46
- package/dist/api/types/siteView.d.ts +74 -0
- package/dist/api/types/smartSeach.d.ts +5 -0
- package/dist/api/types/snapshots.d.ts +42 -1
- package/dist/api/types/storageProvider.d.ts +19 -0
- package/dist/api/types/storyblok.d.ts +40 -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 +4 -18
- package/dist/api/types/timelapse.d.ts +12 -5
- package/dist/api/types/user.d.ts +105 -31
- package/dist/api/types/videoWall.d.ts +47 -14
- package/dist/api/types/weather.d.ts +77 -11
- package/dist/api/types/widget.d.ts +76 -15
- package/dist/api/types/xweather.d.ts +4 -4
- package/dist/api/utils.d.ts +1 -0
- package/dist/index.js +1664 -936
- 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 +123 -15
- package/dist/shared/types/imagePlayer.d.ts +2 -2
- package/dist/shared/types/index.d.ts +1 -0
- package/dist/shared/types/rbac.d.ts +67 -0
- package/dist/shared/types/timeline.d.ts +2 -1
- package/package.json +4 -4
- package/dist/api/types/storageServers.d.ts +0 -4
|
@@ -0,0 +1,74 @@
|
|
|
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
|
+
displayName: string;
|
|
24
|
+
urn: string;
|
|
25
|
+
isModelHostedByEvercamACC?: boolean;
|
|
26
|
+
};
|
|
27
|
+
export type ForgeAccAlignmentData = {
|
|
28
|
+
bbox: {
|
|
29
|
+
min: Point2D;
|
|
30
|
+
max: Point2D;
|
|
31
|
+
};
|
|
32
|
+
transform: number[];
|
|
33
|
+
};
|
|
34
|
+
export type TimelineItem = {
|
|
35
|
+
taskNumber: number;
|
|
36
|
+
taskID: string;
|
|
37
|
+
actualStartDate: string;
|
|
38
|
+
actualEndDate: string;
|
|
39
|
+
plannedStartDate: string;
|
|
40
|
+
plannedEndDate: string;
|
|
41
|
+
objectIDs: number[];
|
|
42
|
+
};
|
|
43
|
+
export type ForgeMarkerTransform = {
|
|
44
|
+
default: {
|
|
45
|
+
position: Point3D;
|
|
46
|
+
type: string;
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
export type ForgeMarker = {
|
|
50
|
+
name: string;
|
|
51
|
+
cameraExid: string;
|
|
52
|
+
transforms: ForgeMarkerTransform;
|
|
53
|
+
};
|
|
54
|
+
export type ForgeProjectData = {
|
|
55
|
+
urns?: ForgeUrn[];
|
|
56
|
+
isEvercamAccount?: boolean;
|
|
57
|
+
accDrawingsAlignments?: Record<string, ForgeAccAlignmentData>;
|
|
58
|
+
timeline?: TimelineItem[];
|
|
59
|
+
savedView?: ForgeView;
|
|
60
|
+
markers?: ForgeMarker[];
|
|
61
|
+
};
|
|
62
|
+
export type ItwinModel = {
|
|
63
|
+
name: string;
|
|
64
|
+
iTwinId: string;
|
|
65
|
+
iModelId: string;
|
|
66
|
+
changeSetId?: string;
|
|
67
|
+
isIModel: boolean;
|
|
68
|
+
height?: number;
|
|
69
|
+
cesiumId?: number;
|
|
70
|
+
markerDistanceThreshold: number;
|
|
71
|
+
};
|
|
72
|
+
export type ItwinProjectData = {
|
|
73
|
+
models: ItwinModel[];
|
|
74
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
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;
|
|
@@ -48,3 +48,44 @@ export type DeleteSnapshotQueryParams = {
|
|
|
48
48
|
adminEmail: string;
|
|
49
49
|
adminFullname: string;
|
|
50
50
|
};
|
|
51
|
+
export type SnapshotTransfer = {
|
|
52
|
+
id: number;
|
|
53
|
+
sourceCamera: SnapshotTransferCamera;
|
|
54
|
+
targetCamera: SnapshotTransferCamera;
|
|
55
|
+
fromDate: DateType;
|
|
56
|
+
toDate: DateType;
|
|
57
|
+
overwriteExisting?: boolean | null;
|
|
58
|
+
deleteSource?: boolean | null;
|
|
59
|
+
requestor: SnapshotTransferRequestor;
|
|
60
|
+
status: SnapshotTransferStatus;
|
|
61
|
+
insertedAt: DateType;
|
|
62
|
+
attempts?: number | null;
|
|
63
|
+
errorMessage?: string | null;
|
|
64
|
+
snapshotsTransferred?: number | null;
|
|
65
|
+
};
|
|
66
|
+
export type SnapshotTransferCamera = {
|
|
67
|
+
id: number;
|
|
68
|
+
exid: CameraExid;
|
|
69
|
+
name: string;
|
|
70
|
+
};
|
|
71
|
+
export type SnapshotTransferRequestor = {
|
|
72
|
+
email: string;
|
|
73
|
+
firstname: string;
|
|
74
|
+
lastname: string;
|
|
75
|
+
};
|
|
76
|
+
export declare enum SnapshotTransferStatus {
|
|
77
|
+
Completed = "completed",
|
|
78
|
+
Failed = "failed",
|
|
79
|
+
Processing = "processing",
|
|
80
|
+
Pending = "pending",
|
|
81
|
+
Cancelled = "cancelled"
|
|
82
|
+
}
|
|
83
|
+
export type TransferCloudRecordingsQueryParams = PaginationParams & {
|
|
84
|
+
targetCameraExid: CameraExid;
|
|
85
|
+
fromDate: DateType;
|
|
86
|
+
toDate: DateType;
|
|
87
|
+
overwriteExisting?: boolean;
|
|
88
|
+
deleteSource?: boolean;
|
|
89
|
+
adminEmail?: string;
|
|
90
|
+
adminFullname?: string;
|
|
91
|
+
};
|
|
@@ -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,40 @@
|
|
|
1
|
+
import type { JsonObject, JsonValue } from "@evercam/api/types";
|
|
2
|
+
export type StoryblokAsset = {
|
|
3
|
+
id: number | null;
|
|
4
|
+
alt: string | null;
|
|
5
|
+
name: string;
|
|
6
|
+
focus: string | null;
|
|
7
|
+
title: string | null;
|
|
8
|
+
filename: string;
|
|
9
|
+
copyright: string | null;
|
|
10
|
+
fieldtype: "asset";
|
|
11
|
+
source?: string;
|
|
12
|
+
metaData?: JsonObject;
|
|
13
|
+
isExternalUrl?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export type StoryblokStory<TContent extends JsonObject = JsonObject> = {
|
|
16
|
+
id: number;
|
|
17
|
+
uuid: string;
|
|
18
|
+
name: string;
|
|
19
|
+
slug: string;
|
|
20
|
+
fullSlug: string;
|
|
21
|
+
content: TContent;
|
|
22
|
+
createdAt: string;
|
|
23
|
+
publishedAt: string | null;
|
|
24
|
+
updatedAt: string;
|
|
25
|
+
position: number;
|
|
26
|
+
tagList: string[];
|
|
27
|
+
isStartpage: boolean;
|
|
28
|
+
parentId: number | null;
|
|
29
|
+
groupId: string;
|
|
30
|
+
firstPublishedAt: string | null;
|
|
31
|
+
releaseId: number | null;
|
|
32
|
+
lang: string;
|
|
33
|
+
path: string;
|
|
34
|
+
};
|
|
35
|
+
export type StoryblokResponse<TContent extends JsonObject = JsonObject> = {
|
|
36
|
+
story: StoryblokStory<TContent>;
|
|
37
|
+
cv: number;
|
|
38
|
+
rels: JsonValue[];
|
|
39
|
+
links: JsonValue[];
|
|
40
|
+
};
|
|
@@ -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,21 +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
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
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
|
-
export {};
|
|
4
|
+
export type DateRangeFilter = {
|
|
5
|
+
fromDate: DateType;
|
|
6
|
+
toDate: DateType;
|
|
7
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DateType, Schedule } from "
|
|
1
|
+
import { DateType, 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,18 @@ export type TimestampPositionCoordinates = {
|
|
|
23
26
|
w: number;
|
|
24
27
|
h: number;
|
|
25
28
|
};
|
|
29
|
+
export type BlurRegionPoint = {
|
|
30
|
+
x: number;
|
|
31
|
+
y: number;
|
|
32
|
+
};
|
|
33
|
+
export type BlurRegionCoordinates = BlurRegionPoint[];
|
|
26
34
|
export type TimelapseLogoOptions = {
|
|
27
|
-
id
|
|
35
|
+
id?: number;
|
|
28
36
|
x: number;
|
|
29
37
|
y: number;
|
|
30
38
|
width: number;
|
|
31
39
|
height: number;
|
|
32
40
|
};
|
|
33
|
-
export type TimelapseSchedules = string | Schedule;
|
|
34
41
|
export declare enum TimelapseScheduleType {
|
|
35
42
|
Continuous = "continuous",
|
|
36
43
|
WorkingHours = "workingHours",
|
|
@@ -56,7 +63,7 @@ export type TimelapseFilterQueryParams = {
|
|
|
56
63
|
to?: DateType;
|
|
57
64
|
period?: TimelapsePeriod;
|
|
58
65
|
duration?: number;
|
|
59
|
-
schedule?:
|
|
66
|
+
schedule?: Schedule;
|
|
60
67
|
};
|
|
61
68
|
export type TimelapseCreationRequestPayload = {
|
|
62
69
|
title: string;
|
package/dist/api/types/user.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type {
|
|
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 & {
|
|
@@ -59,6 +65,10 @@ export type ProjectUser = User & {
|
|
|
59
65
|
cameraExid: string;
|
|
60
66
|
cameraRights: string;
|
|
61
67
|
};
|
|
68
|
+
export declare enum ContactRole {
|
|
69
|
+
SalesExecutive = "Sales Executive",
|
|
70
|
+
CustomerSuccessManager = "Customer Success Manager"
|
|
71
|
+
}
|
|
62
72
|
export declare enum Persona {
|
|
63
73
|
HQ = "HQ",
|
|
64
74
|
PM = "PM",
|
|
@@ -85,26 +95,44 @@ export type RemotePasswordUpdateRequestPayload = {
|
|
|
85
95
|
currentPassword: string;
|
|
86
96
|
newPassword: string;
|
|
87
97
|
};
|
|
88
|
-
export type
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
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;
|
|
103
125
|
};
|
|
104
126
|
export type LogoutParams = {
|
|
105
127
|
token: string;
|
|
106
128
|
fromAdmin?: boolean;
|
|
107
129
|
};
|
|
130
|
+
export type ConfirmUserRequestPayload = {
|
|
131
|
+
c: string;
|
|
132
|
+
};
|
|
133
|
+
export type DeleteActiveSessionRequestPayload = {
|
|
134
|
+
authorization: string;
|
|
135
|
+
};
|
|
108
136
|
export type UserSession = {
|
|
109
137
|
browser: string;
|
|
110
138
|
createdAt: string;
|
|
@@ -173,6 +201,16 @@ export type GoogleAuthRequestPayload = {
|
|
|
173
201
|
code: string;
|
|
174
202
|
redirectUri: string;
|
|
175
203
|
};
|
|
204
|
+
export type ProjectContact = {
|
|
205
|
+
name: string;
|
|
206
|
+
role: ContactRole | string;
|
|
207
|
+
email?: string;
|
|
208
|
+
phone?: string;
|
|
209
|
+
photo?: string;
|
|
210
|
+
};
|
|
211
|
+
export type ProjectContactsResponsePayload = {
|
|
212
|
+
data: ProjectContact[];
|
|
213
|
+
};
|
|
176
214
|
export type UserStatsResponse = {
|
|
177
215
|
data: {
|
|
178
216
|
userStats: AdminUser;
|
|
@@ -193,7 +231,7 @@ export type UserProject = {
|
|
|
193
231
|
id: number;
|
|
194
232
|
exid: string;
|
|
195
233
|
name: string;
|
|
196
|
-
startedAt:
|
|
234
|
+
startedAt: string;
|
|
197
235
|
};
|
|
198
236
|
export type UserProjectResponse = {
|
|
199
237
|
data: UserProject[];
|
|
@@ -213,9 +251,9 @@ export type Admin = {
|
|
|
213
251
|
id: number;
|
|
214
252
|
fullname: string;
|
|
215
253
|
email: string;
|
|
216
|
-
createdAt:
|
|
217
|
-
updatedAt:
|
|
218
|
-
lastSignInAt:
|
|
254
|
+
createdAt: string;
|
|
255
|
+
updatedAt: string;
|
|
256
|
+
lastSignInAt: string;
|
|
219
257
|
signInCount: number;
|
|
220
258
|
lastSignInIp: string;
|
|
221
259
|
apiId: string;
|
|
@@ -227,17 +265,17 @@ export type ImpersonateUserResponse = {
|
|
|
227
265
|
lastname: string;
|
|
228
266
|
telephone: string;
|
|
229
267
|
email: string;
|
|
230
|
-
|
|
268
|
+
isAdmin: boolean;
|
|
231
269
|
persona: Persona;
|
|
232
270
|
country: string;
|
|
233
271
|
companyId: number;
|
|
234
272
|
companyExid: string;
|
|
235
273
|
companyName: string;
|
|
236
274
|
evercamAccount: boolean;
|
|
237
|
-
createdAt:
|
|
238
|
-
updatedAt:
|
|
239
|
-
confirmedAt:
|
|
240
|
-
|
|
275
|
+
createdAt: string;
|
|
276
|
+
updatedAt: string;
|
|
277
|
+
confirmedAt: string;
|
|
278
|
+
lastLoginAt: string;
|
|
241
279
|
features: UserFeatureFlag[];
|
|
242
280
|
token: string;
|
|
243
281
|
};
|
|
@@ -266,6 +304,42 @@ export type Suppression = {
|
|
|
266
304
|
id: number;
|
|
267
305
|
email: string;
|
|
268
306
|
source: string;
|
|
269
|
-
insertedAt:
|
|
270
|
-
updatedAt:
|
|
307
|
+
insertedAt: string;
|
|
308
|
+
updatedAt: string;
|
|
309
|
+
};
|
|
310
|
+
type Email = string;
|
|
311
|
+
export type WsAccessRestrictionUpdate = {
|
|
312
|
+
camera_id: CameraExid;
|
|
313
|
+
is_access_restricted: boolean;
|
|
314
|
+
};
|
|
315
|
+
export type WsUserRestrictionItem = {
|
|
316
|
+
user_id: number;
|
|
317
|
+
camera_id: CameraExid;
|
|
318
|
+
is_user_access_restricted: boolean;
|
|
319
|
+
};
|
|
320
|
+
export type WsUserRestrictionUpdate = WsUserRestrictionItem[];
|
|
321
|
+
/**
|
|
322
|
+
* Backend WebSocket event payload:
|
|
323
|
+
* {
|
|
324
|
+
* user: {
|
|
325
|
+
* "someone@domain.com": {camera_id, is_access_restricted} OR [{...}, {...}]
|
|
326
|
+
* }
|
|
327
|
+
* }
|
|
328
|
+
*/
|
|
329
|
+
export type WsRestrictionChangedPayload = {
|
|
330
|
+
user: Record<Email, WsAccessRestrictionUpdate | WsUserRestrictionUpdate>;
|
|
331
|
+
};
|
|
332
|
+
export type ProjectUserWithRole = {
|
|
333
|
+
id: number;
|
|
334
|
+
email: string;
|
|
335
|
+
fullname: string;
|
|
336
|
+
company: {
|
|
337
|
+
id: number;
|
|
338
|
+
name: string;
|
|
339
|
+
exid: string;
|
|
340
|
+
};
|
|
341
|
+
permissions: string[];
|
|
342
|
+
role: Role;
|
|
343
|
+
subRoles: RoleSubRole[];
|
|
271
344
|
};
|
|
345
|
+
export {};
|
|
@@ -1,25 +1,16 @@
|
|
|
1
|
-
import { Camera, Media } 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,4 +21,46 @@ 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;
|
|
32
|
+
};
|
|
33
|
+
export type VideoWallSource = "default" | "widget";
|
|
34
|
+
export interface VideoWall {
|
|
35
|
+
id: number;
|
|
36
|
+
exid: string;
|
|
37
|
+
name: string;
|
|
38
|
+
source: VideoWallSource;
|
|
39
|
+
config: Record<string, any>;
|
|
40
|
+
insertedAt: string;
|
|
41
|
+
updatedAt: string;
|
|
42
|
+
user: {
|
|
43
|
+
id: number;
|
|
44
|
+
firstname: string;
|
|
45
|
+
lastname: string;
|
|
46
|
+
email: string;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
export interface VideoWallListParams extends PaginationParams {
|
|
50
|
+
projectExid?: string;
|
|
51
|
+
id?: number;
|
|
52
|
+
exid?: string;
|
|
53
|
+
projectId?: number;
|
|
54
|
+
userId?: number;
|
|
55
|
+
name?: string;
|
|
56
|
+
project?: string;
|
|
57
|
+
user?: string;
|
|
58
|
+
source?: VideoWallSource;
|
|
59
|
+
}
|
|
60
|
+
export type VideoWallCreateUpdatePayload = {
|
|
61
|
+
projectExid?: string;
|
|
62
|
+
name: string;
|
|
63
|
+
source?: VideoWallSource;
|
|
64
|
+
config: Record<string, unknown>;
|
|
65
|
+
scope?: string;
|
|
33
66
|
};
|