@evercam/api 1.0.0-ae46ef99c → 1.0.0-api-fixes-bdf31a1d5

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 (92) hide show
  1. package/README.md +4 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +170 -5
  3. package/dist/api/api/adminApi.d.ts +170 -99
  4. package/dist/api/api/aiApi.d.ts +99 -82
  5. package/dist/api/api/authzApi.d.ts +31 -15
  6. package/dist/api/api/client/axios.d.ts +2 -1
  7. package/dist/api/api/client/swr/Swr.d.ts +14 -0
  8. package/dist/api/api/client/swr/SwrStore.d.ts +10 -0
  9. package/dist/api/api/evercamApi.d.ts +158 -116
  10. package/dist/api/api/evercamLabsApi.d.ts +6 -4
  11. package/dist/api/api/exNvrApi.d.ts +1 -1
  12. package/dist/api/api/ingestApi.d.ts +119 -33
  13. package/dist/api/api/ptzApi.d.ts +12 -3
  14. package/dist/api/api/videoWallApi.d.ts +7 -7
  15. package/dist/api/api/weatherApi.d.ts +2 -2
  16. package/dist/api/types/360.d.ts +208 -7
  17. package/dist/api/types/aconex.d.ts +106 -7
  18. package/dist/api/types/admin.d.ts +67 -0
  19. package/dist/api/types/aiConfigs.d.ts +154 -0
  20. package/dist/api/types/analytics.d.ts +172 -41
  21. package/dist/api/types/anpr.d.ts +52 -13
  22. package/dist/api/types/auditLogs.d.ts +63 -38
  23. package/dist/api/types/authz.d.ts +61 -0
  24. package/dist/api/types/autodesk.d.ts +7 -7
  25. package/dist/api/types/automation.d.ts +86 -1
  26. package/dist/api/types/axios.d.ts +28 -7
  27. package/dist/api/types/bim.d.ts +77 -43
  28. package/dist/api/types/camera.d.ts +165 -135
  29. package/dist/api/types/comments.d.ts +43 -21
  30. package/dist/api/types/company.d.ts +91 -11
  31. package/dist/api/types/compare.d.ts +40 -21
  32. package/dist/api/types/connector.d.ts +4 -5
  33. package/dist/api/types/coolify.d.ts +20 -2
  34. package/dist/api/types/copilot.d.ts +11 -6
  35. package/dist/api/types/countries.d.ts +0 -7
  36. package/dist/api/types/credentials.d.ts +1 -0
  37. package/dist/api/types/detections.d.ts +23 -34
  38. package/dist/api/types/drone.d.ts +96 -6
  39. package/dist/api/types/errors.d.ts +12 -0
  40. package/dist/api/types/gateReport.d.ts +50 -158
  41. package/dist/api/types/gateReportManagement.d.ts +175 -0
  42. package/dist/api/types/hdd.d.ts +76 -17
  43. package/dist/api/types/index.d.ts +12 -1
  44. package/dist/api/types/ingest.d.ts +104 -3
  45. package/dist/api/types/kit.d.ts +71 -12
  46. package/dist/api/types/map.d.ts +12 -0
  47. package/dist/api/types/media.d.ts +21 -2
  48. package/dist/api/types/notification.d.ts +50 -14
  49. package/dist/api/types/nvr.d.ts +28 -0
  50. package/dist/api/types/oauth.d.ts +63 -0
  51. package/dist/api/types/planner.d.ts +101 -1
  52. package/dist/api/types/posthog.d.ts +15 -0
  53. package/dist/api/types/procore.d.ts +23 -16
  54. package/dist/api/types/progressPhoto.d.ts +30 -41
  55. package/dist/api/types/project.d.ts +182 -20
  56. package/dist/api/types/recording.d.ts +11 -14
  57. package/dist/api/types/recycleBin.d.ts +14 -0
  58. package/dist/api/types/ring.d.ts +53 -0
  59. package/dist/api/types/roi.d.ts +4 -3
  60. package/dist/api/types/routeParams.d.ts +2 -1
  61. package/dist/api/types/router.d.ts +43 -3
  62. package/dist/api/types/shared.d.ts +81 -53
  63. package/dist/api/types/shares.d.ts +6 -144
  64. package/dist/api/types/sim.d.ts +6 -9
  65. package/dist/api/types/siteAnalytics.d.ts +194 -48
  66. package/dist/api/types/siteView.d.ts +73 -0
  67. package/dist/api/types/smartSeach.d.ts +5 -0
  68. package/dist/api/types/snapshots.d.ts +108 -7
  69. package/dist/api/types/sso.d.ts +55 -0
  70. package/dist/api/types/storageProvider.d.ts +31 -0
  71. package/dist/api/types/storyblok.d.ts +40 -0
  72. package/dist/api/types/streaming.d.ts +4 -5
  73. package/dist/api/types/tag.d.ts +1 -1
  74. package/dist/api/types/time.d.ts +4 -18
  75. package/dist/api/types/timelapse.d.ts +46 -17
  76. package/dist/api/types/user.d.ts +174 -88
  77. package/dist/api/types/videoWall.d.ts +47 -14
  78. package/dist/api/types/weather.d.ts +151 -11
  79. package/dist/api/types/widget.d.ts +143 -54
  80. package/dist/api/types/xweather.d.ts +4 -4
  81. package/dist/index.js +2206 -1029
  82. package/dist/index.js.map +1 -1
  83. package/dist/index.umd.cjs +1 -1
  84. package/dist/index.umd.cjs.map +1 -1
  85. package/dist/shared/types/components.d.ts +163 -18
  86. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  87. package/dist/shared/types/imagePlayer.d.ts +10 -3
  88. package/dist/shared/types/index.d.ts +2 -0
  89. package/dist/shared/types/rbac.d.ts +67 -0
  90. package/dist/shared/types/timeline.d.ts +2 -1
  91. package/package.json +7 -4
  92. package/dist/api/types/storageServers.d.ts +0 -4
@@ -1,6 +1,53 @@
1
- import { type _360Scene, type Media, type DroneModel, type MobileCaptureSnapshot, type TimelineDateInterval, type TimelinePrecision, type Comment, TaskStatus, Tag } from "@evercam/api/types";
1
+ import { type _360Scene, type Media, type DroneModel, type MobileCaptureSnapshot, type TimelineDateInterval, type TimelinePrecision, type Comment, type ProcoreUserProject, type ProcoreProjectAlbum, type ProcoreObservationType, type AconexUserProject, type AutodeskUserHub, type AutodeskProject, type AutodeskFolder, type ProcoreType, TaskStatus, Tag, TuplePoint2D } from "@evercam/shared/types";
2
+ import type { AdminCamera, IngestUploadInitResponse } from "@evercam/api/types";
2
3
  import type { TimelineChartType, TimelineEvent, TimelineEventsGroup } from "@evercam/ui";
3
4
  import { TimelineDataProvider } from "@evercam/shared/components/timelinePlayer/providers";
5
+ import { SeriesOptionsType } from "highcharts";
6
+ export type SelectItem = {
7
+ text: string;
8
+ value: string | number;
9
+ };
10
+ export type RoiProjectGroup = {
11
+ exid: string;
12
+ name: string;
13
+ cameras: AdminCamera[];
14
+ };
15
+ export declare enum IframeMessageType {
16
+ LiveView = "liveView",
17
+ EditSnapshot = "editSnapshot",
18
+ Weather = "weather",
19
+ CameraInfo = "cameraInfo",
20
+ AnalyticsEvent = "analyticsEvent",
21
+ Ready = "ready",
22
+ Info = "info",
23
+ GateReport = "gateReport",
24
+ CreateCompare = "createCompare",
25
+ UploadDrone = "uploadDrone",
26
+ UploadBIM = "uploadBIM",
27
+ History = "history",
28
+ PerformanceScore = "performanceScore",
29
+ ShareLink = "shareLink",
30
+ LoadForgeModel = "loadForgeModel",
31
+ LoadPlannerList = "loadPlannerList",
32
+ SaveProjectBounds = "saveProjectBounds",
33
+ ArchiveComment = "archiveComment",
34
+ UnarchiveComment = "unarchiveComment",
35
+ DeleteComment = "deleteComment",
36
+ CreateComment = "createComment",
37
+ RefreshComments = "refreshComments",
38
+ CommentSyncFailed = "commentSyncFailed",
39
+ Load360Gallery = "load360Gallery",
40
+ Upload360 = "upload360",
41
+ FetchForgeToken = "FetchForgeToken",
42
+ ForgeTokenResponse = "ForgeTokenResponse",
43
+ ShowBimUploadChoice = "showBimUploadChoice",
44
+ ViewerLaunchFlags = "viewerLaunchFlags",
45
+ CloseCameraMarkerPreview = "CloseCameraMarkerPreview"
46
+ }
47
+ export declare enum NavigationArrow {
48
+ Previous = "previous",
49
+ Next = "next"
50
+ }
4
51
  export declare enum WatermarkedImageDownloadOrigin {
5
52
  Drone = "drone",
6
53
  Bim = "BIM",
@@ -43,13 +90,6 @@ export type TimelinePlayerGroupConfig = {
43
90
  export type TimelinePlayerConfig = {
44
91
  [groupName: string]: TimelinePlayerGroupConfig;
45
92
  };
46
- export type TimelinePlayerTooltipItem = {
47
- label?: string;
48
- title?: string;
49
- thumbnailUrl: string;
50
- placeholderThumbnailUrl?: string;
51
- fallbackThumbnailUrl?: string;
52
- };
53
93
  export declare enum TimelineGroupId {
54
94
  ThreeSixty = "w360",
55
95
  Drone = "drone",
@@ -119,8 +159,8 @@ export type LeaderLineOptions = {
119
159
  startPlugSize?: number;
120
160
  endPlugSize?: number;
121
161
  path?: LeaderLinesPathType;
122
- startSocketGravity?: [number, number];
123
- endSocketGravity?: [number, number];
162
+ startSocketGravity?: TuplePoint2D;
163
+ endSocketGravity?: TuplePoint2D;
124
164
  dash?: {
125
165
  animation: boolean | {
126
166
  duration: number;
@@ -137,10 +177,6 @@ export type LineConfig = {
137
177
  end: CssSelector | CssSelector[];
138
178
  options?: LeaderLineOptions;
139
179
  };
140
- export type Point = {
141
- x: number;
142
- y: number;
143
- };
144
180
  export declare enum ZohoDeskTicketStatus {
145
181
  Closed = "Closed",
146
182
  OnHold = "On Hold",
@@ -153,11 +189,14 @@ export declare enum FormSchemaComponents {
153
189
  SelectField = "SelectField",
154
190
  MultiOption = "MultiOption",
155
191
  TextField = "TextField",
156
- CheckBox = "SwitchField",
157
- DateTime = "DatePickerInput",
192
+ SwitchField = "SwitchField",
193
+ CheckBox = "CheckBoxField",
194
+ Date = "DatePickerInput",
195
+ DateTime = "DateTimeField",
158
196
  TextArea = "Textarea",
159
197
  Search = "Autocomplete",
160
- ReadOnly = "ReadOnly"
198
+ ReadOnly = "ReadOnly",
199
+ Ratio = "RatioField"
161
200
  }
162
201
  export declare enum FormSchemaDataType {
163
202
  String = "string",
@@ -181,4 +220,110 @@ export type FormSchemaField = {
181
220
  defaultValue?: any;
182
221
  columns?: number;
183
222
  };
184
- export type FormSchema = Array<FormSchemaField>;
223
+ export type FormSchema = Record<string, FormSchemaField>;
224
+ export type DrawingStats = {
225
+ overlay: boolean;
226
+ geolocated: boolean;
227
+ isCalibrated: boolean;
228
+ walks: number;
229
+ markers: number;
230
+ minimodel: number;
231
+ bim: number;
232
+ comments: number;
233
+ lastCapturedDate: string | null;
234
+ };
235
+ export interface ScrollListener {
236
+ element: Element | Window;
237
+ event: "scroll" | "resize";
238
+ handler: () => void;
239
+ }
240
+ export interface LeaderLineInstance {
241
+ remove(): void;
242
+ position(): void;
243
+ }
244
+ export type SnapshotCardItem = {
245
+ label?: string;
246
+ title?: string;
247
+ thumbnailUrl: string;
248
+ placeholderThumbnailUrl?: string;
249
+ fallbackThumbnailUrl?: string;
250
+ };
251
+ export type DocumentExtended = Document & {
252
+ webkitIsFullScreen?: boolean;
253
+ mozFullScreen?: boolean;
254
+ msFullscreenElement?: Element | null;
255
+ fullscreenElement?: Element;
256
+ webkitFullscreenElement?: Element;
257
+ mozFullScreenElement?: Element;
258
+ };
259
+ export type HighchartsSeriesWithData<T extends number = number> = SeriesOptionsType & {
260
+ data: T[];
261
+ };
262
+ export type FormattedNotificationData = {
263
+ title: string;
264
+ link: string;
265
+ thumbnail?: string;
266
+ icon?: string;
267
+ drone?: boolean;
268
+ is360?: boolean;
269
+ };
270
+ export type FormattedNotification = FormattedNotificationData & {
271
+ date: string;
272
+ read: boolean;
273
+ id: number;
274
+ thumbnailError?: boolean;
275
+ };
276
+ export type ProcoreProjectStepData = {
277
+ project: ProcoreUserProject | null;
278
+ album: ProcoreProjectAlbum | null;
279
+ observationType: ProcoreObservationType | null;
280
+ };
281
+ export type ProcoreUploadFormData = {
282
+ procoreType: ProcoreType;
283
+ project: ProcoreUserProject | null;
284
+ album: ProcoreProjectAlbum | null;
285
+ observationType: ProcoreObservationType | null;
286
+ observationForm: Record<string, string | number | boolean | null>;
287
+ };
288
+ export type AconexUploadFormData = {
289
+ project: AconexUserProject | null;
290
+ form: Record<string, string | number | boolean | null>;
291
+ };
292
+ export type AutodeskUploadFormData = {
293
+ hub: AutodeskUserHub | null;
294
+ project: AutodeskProject | null;
295
+ folder: AutodeskFolder | null;
296
+ };
297
+ export interface MediaHubFilters {
298
+ title: string;
299
+ requesterEmail: string | undefined;
300
+ camera: string | undefined;
301
+ type: string;
302
+ fromDate: string;
303
+ toDate: string;
304
+ sortBy: string;
305
+ }
306
+ export interface MediaHubSortParameter {
307
+ label: string;
308
+ value: string;
309
+ }
310
+ export type TableHeaderParams<TItem = unknown> = {
311
+ value: string;
312
+ text: string;
313
+ cellClass?: string;
314
+ align?: string;
315
+ sortable?: boolean;
316
+ visible?: boolean;
317
+ width?: number | string;
318
+ copyable?: boolean;
319
+ toStringFn?: (item: TItem, key: string) => any;
320
+ sort?: (a: unknown, b: unknown) => number;
321
+ };
322
+ export type BimUploadObject = IngestUploadInitResponse & {
323
+ projectName: string;
324
+ };
325
+ export type BimUploadFileResult = {
326
+ url: string;
327
+ title: string;
328
+ fileExtension: string;
329
+ };
@@ -0,0 +1,10 @@
1
+ export declare enum CustomDataTableFilterType {
2
+ Select = "SelectSearchFilter",
3
+ Text = "TextFieldSearchFilter"
4
+ }
5
+ export interface CustomDataTableFilterField<T = unknown> {
6
+ component: CustomDataTableFilterType;
7
+ attributes?: Record<string, unknown>;
8
+ customFilter?: (item: T, fieldName: string, search: unknown) => boolean;
9
+ }
10
+ export type CustomDataTableFilterFields<T = unknown> = Record<string, CustomDataTableFilterField<T>>;
@@ -1,4 +1,4 @@
1
- import type { Timestamp } from "@evercam/api/types";
1
+ import type { Timestamp } from "@evercam/shared/types";
2
2
  export interface Frame {
3
3
  label: string;
4
4
  src: string;
@@ -13,7 +13,7 @@ export type EventMarker<T extends {}> = T & {
13
13
  label: string;
14
14
  thumbnailUrl: string;
15
15
  isActive: boolean;
16
- cssClass?: Object | string;
16
+ markerType?: RecordingsMarker;
17
17
  };
18
18
  export type SnapshotEvent<T extends {}> = T & {
19
19
  eventTime: Timestamp;
@@ -22,8 +22,15 @@ export type MatchedSnapshotEvent<T extends {}> = SnapshotEvent<T> & {
22
22
  frameIndex: number;
23
23
  snapshotTimestamp: Timestamp;
24
24
  };
25
+ export declare enum RecordingsMarker {
26
+ Comment = "comment",
27
+ GateReport = "gate-report",
28
+ Anpr = "anpr",
29
+ Detection = "detection",
30
+ SmartSearch = "smart-search"
31
+ }
25
32
  export declare enum ImageQuality {
26
- ThureeSixty = "360",
33
+ ThreeSixty = "360",
27
34
  FourEighty = "480",
28
35
  SevenTwenty = "720",
29
36
  OneZeroEightZero = "1080",
@@ -1,4 +1,6 @@
1
1
  export * from "@evercam/api/types";
2
2
  export * from "./components";
3
+ export * from "./customDataTableFilters";
3
4
  export * from "./imagePlayer";
4
5
  export * from "./timeline";
6
+ export * from "./rbac";
@@ -0,0 +1,67 @@
1
+ import type { ProjectMember, ProjectInvite, ProjectResourceRole } from "@evercam/api/types";
2
+ export type HasRoleChangedFn<T = ProjectMember | ProjectInvite> = (entity: T, baseRole: ProjectResourceRole) => boolean;
3
+ export type ProjectRoleData = {
4
+ id?: number;
5
+ name: string;
6
+ description?: string | null;
7
+ permissions: string[];
8
+ subRoles?: Array<{
9
+ resourceId: string;
10
+ roleId: number | null;
11
+ }>;
12
+ };
13
+ export type ProjectResourcePermission = {
14
+ id: string;
15
+ name: string;
16
+ description?: string;
17
+ requires?: string;
18
+ };
19
+ export type ProjectResource = {
20
+ id: string;
21
+ name: string;
22
+ permissions: ProjectResourcePermission[];
23
+ };
24
+ export type ProjectPermissionWarning = {
25
+ resourceId: string;
26
+ message: string;
27
+ type?: string;
28
+ cameraExids?: string[];
29
+ accessLevel?: string;
30
+ grantAllPermissions?: boolean;
31
+ };
32
+ export type ProjectDisabledPermission = {
33
+ id: string;
34
+ reason: string;
35
+ };
36
+ export type CameraAccessFilters = {
37
+ memberName: string;
38
+ memberEmail: string;
39
+ cameraName: string;
40
+ };
41
+ export type CameraAccessLevelConfig = {
42
+ id: string;
43
+ name: string;
44
+ description: string;
45
+ permissions: string[];
46
+ };
47
+ export declare enum CameraStatusGroup {
48
+ Active = "active",
49
+ Pending = "pending",
50
+ Archived = "archived"
51
+ }
52
+ export type CameraStatusGroupConfig = {
53
+ text: string;
54
+ icon: string;
55
+ color: string;
56
+ };
57
+ export type CameraFeatureIconConfig = {
58
+ icon: string;
59
+ tooltip: string;
60
+ };
61
+ export type RecipientRule = {
62
+ blocked: string[];
63
+ };
64
+ export type RecipientRules = {
65
+ notExistingRecipients?: RecipientRule;
66
+ notPendingInviteRecipients?: RecipientRule;
67
+ };
@@ -1,4 +1,4 @@
1
- import { TimelineGroupId, type TimelinePlayerGroupConfig } from "@evercam/shared/types/components";
1
+ import { TimelineGroupId, type TimelinePlayerGroupConfig } from "./components";
2
2
  export interface TimelineGroup {
3
3
  id: TimelineGroupId;
4
4
  timelineConfig: TimelinePlayerGroupConfig | Record<string, TimelinePlayerGroupConfig>;
@@ -6,4 +6,5 @@ export interface TimelineGroup {
6
6
  isDisabled: boolean;
7
7
  isRestricted?: boolean;
8
8
  hasMultipleGroups?: boolean;
9
+ isPersistent?: boolean;
9
10
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evercam/api",
3
- "version": "1.0.0-ae46ef99c",
3
+ "version": "1.0.0-api-fixes-bdf31a1d5",
4
4
  "description": "Evercam API client",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,10 +24,12 @@
24
24
  "dist"
25
25
  ],
26
26
  "engines": {
27
- "node": "20.x"
27
+ "node": ">=22"
28
28
  },
29
29
  "readme": "README.md",
30
30
  "scripts": {
31
+ "preinstall": "node ../shared/ci-scripts/check-bootstrap.js",
32
+ "bootstrap": "node ../shared/ci-scripts/bootstrap.js",
31
33
  "clean": "rimraf dist",
32
34
  "typecheck": "tsc --noEmit",
33
35
  "build:types": "tsc --declaration --emitDeclarationOnly",
@@ -36,7 +38,7 @@
36
38
  "publish-api": "cd ../.. && yarn publish-api"
37
39
  },
38
40
  "devDependencies": {
39
- "@types/node": "^24.2.1",
41
+ "@types/node": "^25.9.1",
40
42
  "vite": "latest",
41
43
  "vite-plugin-commonjs": "^0.10.3",
42
44
  "vite-plugin-dts": "^4.5.4"
@@ -44,6 +46,7 @@
44
46
  "peerDependencies": {
45
47
  "axios": "^1.7.7",
46
48
  "humps": "^2.0.1",
49
+ "idb-keyval": "^6.2.2",
47
50
  "moment-timezone": "^0.5.46"
48
51
  }
49
- }
52
+ }
@@ -1,4 +0,0 @@
1
- export type StorageServer = string;
2
- export type StorageServersResponsePayload = {
3
- servers: StorageServer[];
4
- };