@evercam/api 1.0.0-12cbf2864 → 1.0.0-130db5908

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 (96) hide show
  1. package/README.md +3 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +201 -12
  3. package/dist/api/api/adminApi.d.ts +109 -101
  4. package/dist/api/api/aiApi.d.ts +187 -82
  5. package/dist/api/api/authzApi.d.ts +34 -15
  6. package/dist/api/api/client/axios.d.ts +2 -1
  7. package/dist/api/api/client/swr/Swr.d.ts +1 -1
  8. package/dist/api/api/evercamApi.d.ts +150 -101
  9. package/dist/api/api/evercamLabsApi.d.ts +9 -7
  10. package/dist/api/api/exNvrApi.d.ts +1 -1
  11. package/dist/api/api/ingestApi.d.ts +122 -35
  12. package/dist/api/api/ptzApi.d.ts +12 -3
  13. package/dist/api/api/videoWallApi.d.ts +7 -7
  14. package/dist/api/api/weatherApi.d.ts +2 -2
  15. package/dist/api/types/360.d.ts +287 -25
  16. package/dist/api/types/aconex.d.ts +104 -6
  17. package/dist/api/types/admin.d.ts +51 -0
  18. package/dist/api/types/aiConfigs.d.ts +244 -0
  19. package/dist/api/types/analytics.d.ts +176 -51
  20. package/dist/api/types/anpr.d.ts +53 -13
  21. package/dist/api/types/auditLogs.d.ts +19 -2
  22. package/dist/api/types/authz.d.ts +132 -0
  23. package/dist/api/types/autodesk.d.ts +7 -7
  24. package/dist/api/types/automation.d.ts +114 -1
  25. package/dist/api/types/axios.d.ts +19 -14
  26. package/dist/api/types/bim.d.ts +38 -9
  27. package/dist/api/types/camera.d.ts +127 -119
  28. package/dist/api/types/comments.d.ts +16 -11
  29. package/dist/api/types/company.d.ts +42 -1
  30. package/dist/api/types/compare.d.ts +20 -5
  31. package/dist/api/types/connector.d.ts +5 -5
  32. package/dist/api/types/coolify.d.ts +20 -2
  33. package/dist/api/types/copilot.d.ts +11 -9
  34. package/dist/api/types/credentials.d.ts +1 -0
  35. package/dist/api/types/detections.d.ts +23 -32
  36. package/dist/api/types/drone.d.ts +95 -6
  37. package/dist/api/types/errors.d.ts +13 -1
  38. package/dist/api/types/gateReport.d.ts +49 -168
  39. package/dist/api/types/gateReportManagement.d.ts +170 -0
  40. package/dist/api/types/hammertech.d.ts +98 -0
  41. package/dist/api/types/hdd.d.ts +26 -1
  42. package/dist/api/types/index.d.ts +15 -2
  43. package/dist/api/types/ingest.d.ts +191 -4
  44. package/dist/api/types/kit.d.ts +76 -56
  45. package/dist/api/types/map.d.ts +12 -0
  46. package/dist/api/types/media.d.ts +10 -3
  47. package/dist/api/types/notification.d.ts +83 -3
  48. package/dist/api/types/oauth.d.ts +62 -0
  49. package/dist/api/types/observationEvents.d.ts +141 -0
  50. package/dist/api/types/observations.d.ts +84 -0
  51. package/dist/api/types/planner.d.ts +102 -9
  52. package/dist/api/types/posthog.d.ts +35 -0
  53. package/dist/api/types/procore.d.ts +13 -6
  54. package/dist/api/types/progressPhoto.d.ts +6 -32
  55. package/dist/api/types/project.d.ts +149 -19
  56. package/dist/api/types/recording.d.ts +10 -15
  57. package/dist/api/types/recycleBin.d.ts +1 -1
  58. package/dist/api/types/ring.d.ts +53 -0
  59. package/dist/api/types/roi.d.ts +3 -11
  60. package/dist/api/types/routeParams.d.ts +1 -0
  61. package/dist/api/types/router.d.ts +20 -1
  62. package/dist/api/types/shared.d.ts +29 -22
  63. package/dist/api/types/shares.d.ts +6 -157
  64. package/dist/api/types/sim.d.ts +6 -6
  65. package/dist/api/types/siteAnalytics.d.ts +189 -46
  66. package/dist/api/types/siteAnalyticsManagement.d.ts +127 -0
  67. package/dist/api/types/siteView.d.ts +78 -0
  68. package/dist/api/types/smartSeach.d.ts +5 -0
  69. package/dist/api/types/snapshots.d.ts +49 -4
  70. package/dist/api/types/socket.d.ts +4 -0
  71. package/dist/api/types/storageProvider.d.ts +19 -0
  72. package/dist/api/types/storyblok.d.ts +27 -0
  73. package/dist/api/types/streaming.d.ts +3 -3
  74. package/dist/api/types/tag.d.ts +1 -1
  75. package/dist/api/types/time.d.ts +4 -18
  76. package/dist/api/types/timelapse.d.ts +7 -11
  77. package/dist/api/types/user.d.ts +121 -35
  78. package/dist/api/types/videoWall.d.ts +47 -14
  79. package/dist/api/types/weather.d.ts +77 -11
  80. package/dist/api/types/widget.d.ts +72 -11
  81. package/dist/api/types/xweather.d.ts +4 -4
  82. package/dist/api/utils.d.ts +1 -0
  83. package/dist/index.js +2467 -1037
  84. package/dist/index.js.map +1 -1
  85. package/dist/index.umd.cjs +1 -1
  86. package/dist/index.umd.cjs.map +1 -1
  87. package/dist/shared/types/components.d.ts +232 -36
  88. package/dist/shared/types/customDataTableFilters.d.ts +10 -0
  89. package/dist/shared/types/imagePlayer.d.ts +10 -3
  90. package/dist/shared/types/index.d.ts +3 -0
  91. package/dist/shared/types/observations.d.ts +25 -0
  92. package/dist/shared/types/rbac.d.ts +67 -0
  93. package/dist/shared/types/timeline.d.ts +2 -1
  94. package/package.json +6 -4
  95. package/dist/api/types/storageServers.d.ts +0 -4
  96. package/dist/api/types/vendorModel.d.ts +0 -15
@@ -1,36 +1,77 @@
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, type HammertechProject, type HammertechIssueType, type HammertechPriority, type HammertechClassification, type HammertechFileFieldValue, Tag, TuplePoint2D, CameraStatus } from "@evercam/shared/types";
2
+ import type { AdminCamera, Camera, 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 ReorderableCamera = Camera & {
7
+ thumbnailSrc?: string;
8
+ batteryLevel?: {
9
+ voltage: number;
10
+ level: string;
11
+ icon: string;
12
+ color: string;
13
+ } | null;
14
+ };
15
+ export type SelectItem = {
16
+ text: string;
17
+ value: string | number;
18
+ };
19
+ export type RoiProjectGroup = {
20
+ exid: string;
21
+ name: string;
22
+ cameras: AdminCamera[];
23
+ };
24
+ export declare enum IframeMessageType {
25
+ LiveView = "liveView",
26
+ EditSnapshot = "editSnapshot",
27
+ Weather = "weather",
28
+ CameraInfo = "cameraInfo",
29
+ AnalyticsEvent = "analyticsEvent",
30
+ Ready = "ready",
31
+ Info = "info",
32
+ GateReport = "gateReport",
33
+ CreateCompare = "createCompare",
34
+ UploadDrone = "uploadDrone",
35
+ UploadBIM = "uploadBIM",
36
+ History = "history",
37
+ PerformanceScore = "performanceScore",
38
+ ShareLink = "shareLink",
39
+ LoadForgeModel = "loadForgeModel",
40
+ LoadPlannerList = "loadPlannerList",
41
+ SaveProjectBounds = "saveProjectBounds",
42
+ ArchiveComment = "archiveComment",
43
+ UnarchiveComment = "unarchiveComment",
44
+ DeleteComment = "deleteComment",
45
+ CreateComment = "createComment",
46
+ RefreshComments = "refreshComments",
47
+ CommentSyncFailed = "commentSyncFailed",
48
+ Load360Gallery = "load360Gallery",
49
+ Upload360 = "upload360",
50
+ FetchForgeToken = "FetchForgeToken",
51
+ ForgeTokenResponse = "ForgeTokenResponse",
52
+ ShowBimUploadChoice = "showBimUploadChoice",
53
+ ViewerLaunchFlags = "viewerLaunchFlags",
54
+ Fetch360DrawingIds = "fetch360DrawingIds",
55
+ DrawingIdsResponse = "drawingIdsResponse",
56
+ CloseCameraMarkerPreview = "CloseCameraMarkerPreview",
57
+ ProjectMembers = "projectMembers",
58
+ FocusComment = "focusComment"
59
+ }
60
+ export declare enum NavigationArrow {
61
+ Previous = "previous",
62
+ Next = "next"
63
+ }
4
64
  export declare enum WatermarkedImageDownloadOrigin {
5
65
  Drone = "drone",
6
66
  Bim = "BIM",
7
67
  Snapshot = "snapshot",
8
68
  The360 = "360",
9
- The360Gallery = "360 Gallery",
10
69
  Planner = "Planner"
11
70
  }
12
71
  export declare enum PlayerMode {
13
72
  Video = "video",
14
73
  Jpegs = "jpegs"
15
74
  }
16
- export type TasksStatusMap = {
17
- [key: string]: TaskStatus;
18
- };
19
- export type TaskProgressItem = {
20
- status: TaskStatus;
21
- description: string;
22
- percentDone?: number;
23
- duration?: number;
24
- };
25
- export type GlobalSearchMatch = {
26
- path: Array<string>;
27
- value: string | number | boolean;
28
- };
29
- export type GlobalSearchResult = {
30
- index: number;
31
- matches: Array<GlobalSearchMatch>;
32
- };
33
- export type GlobalSearchResultInput = Array<Record<any, any> | Array<any>>;
34
75
  export type TimelineProviderRequestParams = TimelineDateInterval & {
35
76
  precision?: TimelinePrecision;
36
77
  labels?: string[];
@@ -44,13 +85,6 @@ export type TimelinePlayerGroupConfig = {
44
85
  export type TimelinePlayerConfig = {
45
86
  [groupName: string]: TimelinePlayerGroupConfig;
46
87
  };
47
- export type TimelinePlayerTooltipItem = {
48
- label?: string;
49
- title?: string;
50
- thumbnailUrl: string;
51
- placeholderThumbnailUrl?: string;
52
- fallbackThumbnailUrl?: string;
53
- };
54
88
  export declare enum TimelineGroupId {
55
89
  ThreeSixty = "w360",
56
90
  Drone = "drone",
@@ -120,8 +154,8 @@ export type LeaderLineOptions = {
120
154
  startPlugSize?: number;
121
155
  endPlugSize?: number;
122
156
  path?: LeaderLinesPathType;
123
- startSocketGravity?: [number, number];
124
- endSocketGravity?: [number, number];
157
+ startSocketGravity?: TuplePoint2D;
158
+ endSocketGravity?: TuplePoint2D;
125
159
  dash?: {
126
160
  animation: boolean | {
127
161
  duration: number;
@@ -138,10 +172,6 @@ export type LineConfig = {
138
172
  end: CssSelector | CssSelector[];
139
173
  options?: LeaderLineOptions;
140
174
  };
141
- export type Point = {
142
- x: number;
143
- y: number;
144
- };
145
175
  export declare enum ZohoDeskTicketStatus {
146
176
  Closed = "Closed",
147
177
  OnHold = "On Hold",
@@ -152,13 +182,18 @@ export type TagSelectorItem = Tag & {
152
182
  };
153
183
  export declare enum FormSchemaComponents {
154
184
  SelectField = "SelectField",
185
+ HierarchicalSelect = "HierarchicalSelectField",
155
186
  MultiOption = "MultiOption",
156
187
  TextField = "TextField",
157
- CheckBox = "SwitchField",
158
- DateTime = "DatePickerInput",
188
+ SwitchField = "SwitchField",
189
+ CheckBox = "CheckBoxField",
190
+ Date = "DatePickerInput",
191
+ DateTime = "DateTimeField",
192
+ Time = "TimeField",
159
193
  TextArea = "Textarea",
160
194
  Search = "Autocomplete",
161
- ReadOnly = "ReadOnly"
195
+ ReadOnly = "ReadOnly",
196
+ Ratio = "RatioField"
162
197
  }
163
198
  export declare enum FormSchemaDataType {
164
199
  String = "string",
@@ -169,6 +204,7 @@ export declare enum FormSchemaDataType {
169
204
  export type FormSchemaOptions = {
170
205
  title: string;
171
206
  value: string;
207
+ parentId?: string | null;
172
208
  };
173
209
  export type FormSchemaField = {
174
210
  id: string;
@@ -183,11 +219,171 @@ export type FormSchemaField = {
183
219
  columns?: number;
184
220
  };
185
221
  export type FormSchema = Record<string, FormSchemaField>;
222
+ export type DrawingStats = {
223
+ overlay: boolean;
224
+ geolocated: boolean;
225
+ isCalibrated: boolean;
226
+ walks: number;
227
+ markers: number;
228
+ minimodel: number;
229
+ bim: number;
230
+ comments: number;
231
+ lastCapturedDate: string | null;
232
+ };
186
233
  export interface ScrollListener {
187
234
  element: Element | Window;
235
+ event: "scroll" | "resize";
188
236
  handler: () => void;
189
237
  }
190
238
  export interface LeaderLineInstance {
191
239
  remove(): void;
192
240
  position(): void;
193
241
  }
242
+ export type SnapshotCardItem = {
243
+ label?: string;
244
+ title?: string;
245
+ thumbnailUrl: string;
246
+ placeholderThumbnailUrl?: string;
247
+ fallbackThumbnailUrl?: string;
248
+ };
249
+ export type HighchartsSeriesWithData<T extends number = number> = SeriesOptionsType & {
250
+ data: T[];
251
+ };
252
+ export type NotificationTitleSegment = {
253
+ text: string;
254
+ isBold?: boolean;
255
+ };
256
+ export type FormattedNotificationData = {
257
+ title: string;
258
+ titleSegments?: NotificationTitleSegment[];
259
+ link: string;
260
+ thumbnail?: string;
261
+ icon: string;
262
+ excerpt?: string;
263
+ commentTarget?: {
264
+ commentId: number;
265
+ dateId: string | number;
266
+ floorId: string;
267
+ };
268
+ };
269
+ export type FormattedNotification = FormattedNotificationData & {
270
+ date: string;
271
+ read: boolean;
272
+ id: number;
273
+ thumbnailError?: boolean;
274
+ };
275
+ export type ProcoreProjectStepData = {
276
+ project: ProcoreUserProject | null;
277
+ album: ProcoreProjectAlbum | null;
278
+ observationType: ProcoreObservationType | null;
279
+ };
280
+ export type ProcoreUploadFormData = {
281
+ procoreType: ProcoreType;
282
+ project: ProcoreUserProject | null;
283
+ album: ProcoreProjectAlbum | null;
284
+ observationType: ProcoreObservationType | null;
285
+ observationForm: Record<string, string | number | boolean | null>;
286
+ };
287
+ export type AconexUploadFormData = {
288
+ project: AconexUserProject | null;
289
+ form: Record<string, string | number | boolean | null>;
290
+ };
291
+ export type AutodeskUploadFormData = {
292
+ hub: AutodeskUserHub | null;
293
+ project: AutodeskProject | null;
294
+ folder: AutodeskFolder | null;
295
+ };
296
+ export type HammertechUploadFormData = {
297
+ project: HammertechProject | null;
298
+ issueType: HammertechIssueType | null;
299
+ description: string;
300
+ priority: HammertechPriority | null;
301
+ dueDate: string | null;
302
+ classification: HammertechClassification | null;
303
+ locationId: string | null;
304
+ isPositiveObservation: boolean;
305
+ isPhotoForFixRequired: boolean;
306
+ customFieldFormId: string | null;
307
+ customFieldValues: Record<string, unknown>;
308
+ fileCustomFieldValues: Record<string, HammertechFileFieldValue>;
309
+ };
310
+ export interface MediaHubFilters {
311
+ title: string;
312
+ requesterEmail: string | undefined;
313
+ camera: string | undefined;
314
+ type: string;
315
+ fromDate: string;
316
+ toDate: string;
317
+ sortBy: string;
318
+ }
319
+ export interface MediaHubSortParameter {
320
+ label: string;
321
+ value: string;
322
+ }
323
+ export type TableHeaderParams<TItem = unknown> = {
324
+ value: string;
325
+ text: string;
326
+ align?: string;
327
+ sortable?: boolean;
328
+ visible?: boolean;
329
+ width?: number | string;
330
+ copyable?: boolean;
331
+ toStringFn?: (item: TItem, key: string) => any;
332
+ sort?: (a: unknown, b: unknown) => number;
333
+ };
334
+ export type BimUploadObject = IngestUploadInitResponse & {
335
+ projectName: string;
336
+ };
337
+ export type BimUploadFileResult = {
338
+ url: string;
339
+ title: string;
340
+ fileExtension: string;
341
+ };
342
+ export type CameraCardItem = {
343
+ thumbnail: string;
344
+ title: string;
345
+ exid: string;
346
+ status: CameraStatus;
347
+ disabled: boolean;
348
+ to: string;
349
+ isOffline: boolean;
350
+ isWaiting: boolean;
351
+ isUnderNda: boolean;
352
+ isAdmin: boolean;
353
+ batteryVoltage: number | null;
354
+ };
355
+ export type ThreeSixtyGalleryView = "drawings" | "walks";
356
+ export interface ThreeSixtyWalk {
357
+ id: string;
358
+ name: string;
359
+ date: string;
360
+ monthKey: string;
361
+ color: string;
362
+ dateId: string;
363
+ floorId: string;
364
+ commentCount: number;
365
+ hasBim: boolean;
366
+ hasMinimodel: boolean;
367
+ }
368
+ export interface ThreeSixtyWalkGroup {
369
+ date: string;
370
+ walks: ThreeSixtyWalk[];
371
+ }
372
+ export type DrawingSelection = {
373
+ pageNumber: number;
374
+ size: number;
375
+ thumbnail: string | null;
376
+ pageCount: number;
377
+ };
378
+ export type CommentCardComment = {
379
+ id?: number | string;
380
+ content?: string;
381
+ createdAt?: string;
382
+ archivedAt?: string;
383
+ creatorName?: string;
384
+ label?: string;
385
+ timestamp?: string;
386
+ cameraExid?: string;
387
+ position3d?: number[];
388
+ canDelete?: boolean;
389
+ };
@@ -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,7 @@
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";
7
+ export * from "./observations";
@@ -0,0 +1,25 @@
1
+ export type ObservationsTableHeader = {
2
+ isThumbnail?: boolean;
3
+ visible: boolean;
4
+ divider: boolean;
5
+ sortable: boolean;
6
+ text: string;
7
+ value: string;
8
+ class: string;
9
+ align: string;
10
+ };
11
+ export type ObservationsCountDay = {
12
+ day: string;
13
+ };
14
+ export type ObservationsTableOptionsUpdate = {
15
+ page: number;
16
+ sortBy: string[];
17
+ sortDesc: boolean[];
18
+ };
19
+ export type ObservationsEventsTableState = {
20
+ height: number | string;
21
+ };
22
+ export type ObservationTypeOption = {
23
+ value: string;
24
+ label: string;
25
+ };
@@ -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-12cbf2864",
3
+ "version": "1.0.0-130db5908",
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": "22.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.7.2",
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"
@@ -47,4 +49,4 @@
47
49
  "idb-keyval": "^6.2.2",
48
50
  "moment-timezone": "^0.5.46"
49
51
  }
50
- }
52
+ }
@@ -1,4 +0,0 @@
1
- export type StorageServer = string;
2
- export type StorageServersResponsePayload = {
3
- servers: StorageServer[];
4
- };
@@ -1,15 +0,0 @@
1
- export type VendorModel = {
2
- cameraCount: number;
3
- exid: string;
4
- h264Url: string;
5
- jpgUrl: string;
6
- name: string;
7
- online: number;
8
- playbackUrl: string;
9
- };
10
- export type VendorModelRequestPayload = {
11
- sort: string;
12
- };
13
- export type VendorModelResponsePayload = {
14
- data: VendorModel[];
15
- };