@evercam/api 1.0.0-3032cea26 → 1.0.0-3159f07b5

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 (55) hide show
  1. package/dist/api/api/3dFirebaseApi.d.ts +56 -23
  2. package/dist/api/api/adminApi.d.ts +5 -4
  3. package/dist/api/api/aiApi.d.ts +59 -3
  4. package/dist/api/api/authzApi.d.ts +4 -1
  5. package/dist/api/api/evercamApi.d.ts +23 -12
  6. package/dist/api/api/evercamLabsApi.d.ts +5 -5
  7. package/dist/api/api/ingestApi.d.ts +17 -6
  8. package/dist/api/types/360.d.ts +112 -42
  9. package/dist/api/types/aiConfigs.d.ts +99 -11
  10. package/dist/api/types/analytics.d.ts +13 -9
  11. package/dist/api/types/authz.d.ts +71 -0
  12. package/dist/api/types/automation.d.ts +23 -4
  13. package/dist/api/types/axios.d.ts +8 -8
  14. package/dist/api/types/bim.d.ts +11 -5
  15. package/dist/api/types/camera.d.ts +2 -7
  16. package/dist/api/types/comments.d.ts +2 -1
  17. package/dist/api/types/connector.d.ts +2 -0
  18. package/dist/api/types/copilot.d.ts +0 -3
  19. package/dist/api/types/detections.d.ts +1 -0
  20. package/dist/api/types/drone.d.ts +1 -2
  21. package/dist/api/types/errors.d.ts +2 -1
  22. package/dist/api/types/gateReport.d.ts +0 -11
  23. package/dist/api/types/gateReportManagement.d.ts +2 -7
  24. package/dist/api/types/hammertech.d.ts +98 -0
  25. package/dist/api/types/index.d.ts +5 -1
  26. package/dist/api/types/ingest.d.ts +87 -1
  27. package/dist/api/types/kit.d.ts +41 -51
  28. package/dist/api/types/media.d.ts +8 -2
  29. package/dist/api/types/notification.d.ts +41 -2
  30. package/dist/api/types/observationEvents.d.ts +61 -0
  31. package/dist/api/types/observations.d.ts +84 -0
  32. package/dist/api/types/planner.d.ts +1 -8
  33. package/dist/api/types/posthog.d.ts +20 -0
  34. package/dist/api/types/project.d.ts +7 -0
  35. package/dist/api/types/recording.d.ts +5 -5
  36. package/dist/api/types/ring.d.ts +16 -16
  37. package/dist/api/types/roi.d.ts +2 -10
  38. package/dist/api/types/routeParams.d.ts +1 -0
  39. package/dist/api/types/shared.d.ts +0 -19
  40. package/dist/api/types/shares.d.ts +0 -13
  41. package/dist/api/types/siteAnalytics.d.ts +1 -3
  42. package/dist/api/types/siteAnalyticsManagement.d.ts +117 -0
  43. package/dist/api/types/socket.d.ts +4 -0
  44. package/dist/api/types/storyblok.d.ts +0 -13
  45. package/dist/api/types/timelapse.d.ts +1 -8
  46. package/dist/api/types/user.d.ts +0 -3
  47. package/dist/index.js +1211 -724
  48. package/dist/index.js.map +1 -1
  49. package/dist/index.umd.cjs +1 -1
  50. package/dist/index.umd.cjs.map +1 -1
  51. package/dist/shared/types/components.d.ts +83 -31
  52. package/dist/shared/types/index.d.ts +1 -0
  53. package/dist/shared/types/observations.d.ts +25 -0
  54. package/package.json +3 -1
  55. package/dist/api/types/vendorModel.d.ts +0 -15
@@ -1,5 +1,5 @@
1
1
  import { DateType } from "@evercam/api/types/time";
2
- import { GeoPoint, Point3D } from "@evercam/api/types/shared";
2
+ import { GeoPoint, PaginationParams, Point3D } from "@evercam/api/types/shared";
3
3
  export type _360OverlayPosition = {
4
4
  northEast: GeoPoint;
5
5
  northWest: GeoPoint;
@@ -77,7 +77,7 @@ export type _360WalkV2 = {
77
77
  archive: string;
78
78
  date: string;
79
79
  deviceSerial: string | null;
80
- endPosition: unknown | null;
80
+ endPosition: string | null;
81
81
  floor: string;
82
82
  floorId: number;
83
83
  id: number;
@@ -93,8 +93,9 @@ export type _360WalkV2 = {
93
93
  projectId: string;
94
94
  report: string;
95
95
  processingLog: string;
96
+ hasSteps?: boolean;
96
97
  route: unknown | null;
97
- startPosition: unknown | null;
98
+ startPosition: string | null;
98
99
  tusLinks: unknown | null;
99
100
  updatedAt: string;
100
101
  uploadedBy: string;
@@ -113,13 +114,15 @@ export type _360FloorV2 = {
113
114
  overlayPosition: _360OverlayPosition;
114
115
  insertedAt: string;
115
116
  updatedAt: string;
117
+ deletedAt: string | null;
116
118
  };
117
119
  export type _360Scene = {
118
120
  date: string;
119
- dateID: number;
121
+ dateID: string | number;
120
122
  floors: {
121
123
  floorID: _360FloorId;
122
124
  name: string;
125
+ isValidated?: boolean;
123
126
  }[];
124
127
  polarAngle: number;
125
128
  azimuthAngle: number;
@@ -150,24 +153,7 @@ export type _360ProjectListItem = {
150
153
  providerSuffix: string;
151
154
  timeline: string;
152
155
  uniqueId: string;
153
- };
154
- export type _360FullProject = {
155
- dates: _360SceneWithFloors[];
156
- integrationType: string;
157
- projectId: string;
158
- projectName: string;
159
- providerID: string;
160
- providerPrefix: string;
161
- providerSuffix: string;
162
- timeline: string;
163
- uniqueId: string;
164
- };
165
- export type _360FullFloor = _360Floor & {
166
- id: _360FloorId;
167
- name: string;
168
- };
169
- export type _360SceneWithFloors = _360Scene & {
170
- floors: _360FullFloor[];
156
+ requiresValidation?: boolean;
171
157
  };
172
158
  export type _360ProjectJsonResponse = {
173
159
  dates: _360Scene[];
@@ -182,12 +168,24 @@ export type MobileCaptureSnapshot = {
182
168
  thumbnailUrl: string;
183
169
  };
184
170
  export declare enum _360UrlParams {
185
- DateId = "date_id",
171
+ DateId = "dateId",
186
172
  Date = "date",
187
173
  Floor = "floor",
188
174
  Marker = "marker",
189
175
  PolarAngle = "polarAngle",
190
- AzimuthAngle = "azimuthAngle"
176
+ AzimuthAngle = "azimuthAngle",
177
+ Zoom = "zoom",
178
+ User = "user",
179
+ ViewerMode = "viewer_mode",
180
+ ProjectId = "projectId",
181
+ Unit = "unit",
182
+ LockDate = "lockDate",
183
+ LockFloor = "lockFloor",
184
+ LockMarker = "lockMarker",
185
+ IsWidget = "isWidget",
186
+ MediaLocked = "mediaLocked",
187
+ Debug = "debug",
188
+ RequiresValidation = "requires_validation"
191
189
  }
192
190
  export declare enum _360AssetType {
193
191
  Video = "video",
@@ -201,11 +199,6 @@ export declare enum _360AssetLabel {
201
199
  Walks = "walks",
202
200
  MobilePhotos = "mobilePhotos"
203
201
  }
204
- export declare enum _360Feature {
205
- BIM = "BIM",
206
- Minimap = "Minimap",
207
- Minimodel = "Minimodel"
208
- }
209
202
  export declare enum _360IntergrationType {
210
203
  Evercam = "Evercam",
211
204
  Matterport = "Matterport",
@@ -218,9 +211,7 @@ export declare enum PathMarkerColor {
218
211
  End = "#fd7567",
219
212
  Default = "#2196F3"
220
213
  }
221
- export type _360AssetsQueryParams = {
222
- page: number;
223
- limit: number;
214
+ export type _360AssetsQueryParams = PaginationParams & {
224
215
  projectId: string;
225
216
  date: DateType;
226
217
  floor: string;
@@ -232,7 +223,7 @@ export type _360AssetsRequestPayload = {
232
223
  floor: string;
233
224
  uploadedBy?: string;
234
225
  };
235
- export type DrawingsRequestPayload = {
226
+ export type DrawingsRequestPayload = PaginationParams & {
236
227
  projectId?: string;
237
228
  name?: string;
238
229
  changedBy?: string;
@@ -240,10 +231,9 @@ export type DrawingsRequestPayload = {
240
231
  startDate?: string;
241
232
  endDate?: string;
242
233
  id?: number;
243
- page?: number;
244
- limit?: number;
245
234
  paginate?: boolean;
246
235
  withAsset?: boolean;
236
+ includeDeleted?: boolean;
247
237
  };
248
238
  export type GenerateFloorPayload = {
249
239
  overlay?: {
@@ -267,16 +257,16 @@ export type _360AssetsUploadPayload = {
267
257
  title: string;
268
258
  fileExtension: string;
269
259
  }[];
270
- deviceSerial: string;
271
- startPosition: string;
272
- endPosition: string;
273
- isTimelapse: boolean;
274
- isImagesOnly: boolean;
260
+ deviceSerial?: string;
261
+ startPosition?: string;
262
+ endPosition?: string;
263
+ isTimelapse?: boolean;
264
+ isImagesOnly?: boolean;
275
265
  };
276
266
  export type Generate360MapRequestPayload = {
277
- dateId: string;
267
+ dateId: string | number;
278
268
  floorId: string;
279
- cameraOffset: string;
269
+ cameraOffset: string | number;
280
270
  startPoint: string;
281
271
  endPoint: string;
282
272
  drawingId?: number;
@@ -287,4 +277,84 @@ export type Generate360MapRequestPayload = {
287
277
  z: number;
288
278
  };
289
279
  }>;
280
+ startPointIndex?: number;
281
+ endPointIndex?: number;
282
+ };
283
+ export declare enum EModelsType {
284
+ FBX = "FBX",
285
+ PointCloud = "PLY"
286
+ }
287
+ export type _360FloorRef = {
288
+ projectID: string;
289
+ dateID: string | number;
290
+ floorID: _360FloorId;
291
+ };
292
+ export type _360Vector3 = {
293
+ x: number;
294
+ y: number;
295
+ z: number;
296
+ };
297
+ export type _360MarkerData = {
298
+ cameraPosition: _360Vector3;
299
+ nextRoomId: string;
300
+ position: _360Vector3;
301
+ geolocation?: {
302
+ latitude: number;
303
+ longitude: number;
304
+ };
305
+ rotation: {
306
+ _order: string;
307
+ _x: number;
308
+ _y: number;
309
+ _z: number;
310
+ isEuler: boolean;
311
+ x?: number;
312
+ y?: number;
313
+ z?: number;
314
+ };
315
+ };
316
+ export type _360Route = {
317
+ overlayID?: number;
318
+ track?: string;
319
+ cameraHeadingOffset?: number;
320
+ };
321
+ export type _360CalibrationDetails = {
322
+ baseOriginOf360Viewer?: _360Vector3;
323
+ baseOriginOfForgeViewer?: _360Vector3;
324
+ rotationMatrix?: {
325
+ elements: number[];
326
+ };
327
+ scaleMatrix?: {
328
+ elements: number[];
329
+ };
330
+ };
331
+ export type _360FloorData = {
332
+ _3DMarkers: _360MarkerData[];
333
+ fbxModel: string | null;
334
+ fbxModelHQ: string | null;
335
+ pointCloudModelHQ: string | null;
336
+ initialMarker: string;
337
+ cameraRotation: _360CameraRotation;
338
+ steps: number;
339
+ route: _360Route | null;
340
+ sceneScale: number;
341
+ modelViewerFeatureFlag: boolean;
342
+ imagesOnlyFeatureFlag: boolean;
343
+ forgeBIMFeatureFlag: boolean;
344
+ isForgeGravityEnabled: boolean;
345
+ initialForgeView: ForgeView | null;
346
+ calibrationDetails: _360CalibrationDetails;
347
+ enhancedLightFeatureFlag: boolean;
348
+ };
349
+ export type _360PinData = {
350
+ position: _360Vector3;
351
+ pinType: string;
352
+ name: string;
353
+ pinId?: string;
354
+ cameraExid?: string;
355
+ currentRoom?: string;
356
+ cameraRotation?: {
357
+ polarAngle: number;
358
+ azimuthAngle: number;
359
+ };
290
360
  };
@@ -1,3 +1,4 @@
1
+ import { PaginatedItems, PaginationParams } from "@evercam/api/types";
1
2
  export declare enum AiApp {
2
3
  GateReport = "gate_report",
3
4
  Ppe = "ppe",
@@ -11,7 +12,8 @@ export declare enum AiProvider {
11
12
  export declare enum AiConfigsPromptDialogMode {
12
13
  Create = "create",
13
14
  Edit = "edit",
14
- View = "view"
15
+ View = "view",
16
+ Subprompt = "subprompt"
15
17
  }
16
18
  export declare enum AiConfigsKeyDialogMode {
17
19
  Create = "create",
@@ -45,6 +47,11 @@ export declare enum AiPromptModel {
45
47
  ClaudeSonnet46 = "claude-sonnet-4-6",
46
48
  ClaudeHaiku45 = "claude-haiku-4-5"
47
49
  }
50
+ export declare enum AiPromptType {
51
+ Prompt = "prompt",
52
+ Parent = "parent",
53
+ Subprompt = "subprompt"
54
+ }
48
55
  export interface AiPrompt {
49
56
  id: number;
50
57
  title: string | null;
@@ -56,6 +63,9 @@ export interface AiPrompt {
56
63
  createdBy: string;
57
64
  createdAt: string;
58
65
  updatedAt: string;
66
+ promptType: AiPromptType;
67
+ parentId: number | null;
68
+ subpromptCount: number;
59
69
  }
60
70
  export interface AiPromptCreatePayload {
61
71
  title?: string | null;
@@ -64,6 +74,7 @@ export interface AiPromptCreatePayload {
64
74
  model?: string | null;
65
75
  prompt: string;
66
76
  outputSchema?: Record<string, unknown> | null;
77
+ promptType?: AiPromptType.Prompt | AiPromptType.Parent;
67
78
  }
68
79
  export interface AiPromptUpdatePayload {
69
80
  title?: string | null;
@@ -73,23 +84,23 @@ export interface AiPromptUpdatePayload {
73
84
  prompt?: string;
74
85
  outputSchema?: Record<string, unknown> | null;
75
86
  }
76
- export type AiPromptQueryParams = {
87
+ export type AiPromptQueryParams = PaginationParams & {
77
88
  app?: string;
78
89
  purpose?: string;
79
90
  model?: string;
80
91
  search?: string;
81
92
  createdBy?: string;
82
- page?: number;
83
- limit?: number;
93
+ promptType?: AiPromptType;
94
+ includeSubprompts?: boolean;
84
95
  };
85
- export interface AiPromptListResponse {
86
- items: AiPrompt[];
87
- total: number;
88
- page: number;
89
- limit: number;
90
- from: number;
91
- to: number;
96
+ export interface AiSubpromptCreatePayload {
97
+ title?: string | null;
98
+ purpose: string;
99
+ model?: string | null;
100
+ prompt: string;
101
+ outputSchema?: Record<string, unknown> | null;
92
102
  }
103
+ export type AiPromptListResponse = PaginatedItems<AiPrompt>;
93
104
  export interface AiPromptCreateResponse {
94
105
  created: boolean;
95
106
  data: AiPrompt;
@@ -152,3 +163,80 @@ export interface AiApiKeyDeleteResponse {
152
163
  count: number;
153
164
  message: string;
154
165
  }
166
+ export declare enum AiObservationFeasibilityStatus {
167
+ Prod = "prod",
168
+ Beta = "beta",
169
+ Parked = "parked"
170
+ }
171
+ export declare enum AiObservationTimeDetection {
172
+ PerSecond = "per_second",
173
+ PerMinute = "per_minute",
174
+ Hourly = "hourly",
175
+ Daily = "daily"
176
+ }
177
+ export interface AiObservationFeasibilityConfig {
178
+ bg: string;
179
+ fg: string;
180
+ border: string;
181
+ label: string;
182
+ }
183
+ export declare const AI_OBSERVATION_FEASIBILITY_CONFIGS: Record<AiObservationFeasibilityStatus, AiObservationFeasibilityConfig>;
184
+ export interface AiObservationType {
185
+ id: number;
186
+ observationCode: string;
187
+ name: string;
188
+ description: string | null;
189
+ type: string;
190
+ rules: Record<string, unknown> | null;
191
+ timeDetection: string | null;
192
+ every: number | null;
193
+ severity: number | null;
194
+ feasibilityStatus: AiObservationFeasibilityStatus;
195
+ promptId: number | null;
196
+ promptName: string | null;
197
+ insertedAt: string;
198
+ updatedAt: string;
199
+ }
200
+ export interface AiObservationTypeCreatePayload {
201
+ observationCode: string;
202
+ name: string;
203
+ description?: string | null;
204
+ type: string;
205
+ rules?: Record<string, unknown> | null;
206
+ timeDetection?: string | null;
207
+ every?: number | null;
208
+ severity?: number | null;
209
+ feasibilityStatus: AiObservationFeasibilityStatus;
210
+ promptId?: number | null;
211
+ }
212
+ export type AiObservationTypeUpdatePayload = Partial<Omit<AiObservationTypeCreatePayload, "observationCode">>;
213
+ export type AiObservationTypeQueryParams = {
214
+ search?: string;
215
+ feasibilityStatus?: string;
216
+ type?: string;
217
+ page?: number;
218
+ limit?: number;
219
+ };
220
+ export interface AiObservationTypeListResponse {
221
+ items: AiObservationType[];
222
+ total: number;
223
+ page: number;
224
+ limit: number;
225
+ from: number;
226
+ to: number;
227
+ }
228
+ export interface AiObservationTypeCreateResponse {
229
+ created: boolean;
230
+ data: AiObservationType;
231
+ message: string;
232
+ }
233
+ export interface AiObservationTypeUpdateResponse {
234
+ updated: boolean;
235
+ id: number | string;
236
+ message: string;
237
+ }
238
+ export interface AiObservationTypeDeleteResponse {
239
+ deleted: boolean;
240
+ count: number;
241
+ message: string;
242
+ }
@@ -79,6 +79,9 @@ export declare enum AnalyticsEvent {
79
79
  SettingsConnectorsRemoveVoyageControlConnection = "RemoveVoyageControl",
80
80
  SettingsConnectorsToggleConnectorPromptDialog = "ToggleConnectorPromptDialog",
81
81
  SettingsConnectorsToggleVoyageControlDialog = "ToggleVoyageControlDialog",
82
+ SettingsConnectorsConnectToHammertech = "ConnectToHammertech",
83
+ SettingsConnectorsRemoveHammertechConnection = "RemoveHammertech",
84
+ SettingsConnectorsToggleHammertechDialog = "ToggleHammertechDialog",
82
85
  WidgetsSelectTypeThreeSixty = "Widgets-SelectType360",
83
86
  WidgetsSelectProject = "SelectProject",
84
87
  WidgetsSelect360Date = "Select360Date",
@@ -192,6 +195,7 @@ export declare enum AnalyticsEvent {
192
195
  XraySendToConnectorProcoreObservations = "Xray-SendToConnector-Procore-Observations",
193
196
  XraySendToConnectorAconex = "Xray-SendToConnector-Aconex",
194
197
  XraySendToConnectorAutodesk = "Xray-SendToConnector-Autodesk",
198
+ XraySendToConnectorHammerTech = "Xray-SendToConnector-HammerTech",
195
199
  WeatherGoBackDate = "Weather-GoBackDate",
196
200
  WeatherGoForwardDate = "Weather-GoForwardDate",
197
201
  WeatherReportExportFile = "ExportFile",
@@ -261,6 +265,7 @@ export declare enum AnalyticsEvent {
261
265
  MarkUpToolSendToConnectorProcoreObservations = "MarkUpTool-SendToConnector-Procore-Observations",
262
266
  MarkUpToolSendToConnectorAconex = "MarkUpTool-SendToConnector-Aconex",
263
267
  MarkUpToolSendToConnectorAutodesk = "MarkUpTool-SendToConnector-Autodesk",
268
+ MarkUpToolSendToConnectorHammerTech = "MarkUpTool-SendToConnector-HammerTech",
264
269
  MarkUpToolSendViaEmail = "MarkUpTool-SendViaEmail",
265
270
  MarkUpToolSendViaEmailSent = "MarkUpTool-SendViaEmail-Sent",
266
271
  RecordingsCancelExportDialog = "CancelExportDialog",
@@ -292,6 +297,7 @@ export declare enum AnalyticsEvent {
292
297
  ThreeSixtyDisableMeasuringTool = "DisableMeasuringTool",
293
298
  ThreeSixtyDisableCommnetTool = "DisableCommentTool",
294
299
  ThreeSixtyEnableMeasuringTool = "EnableMeasuringTool",
300
+ ThreeSixtyMeasuringPerformed = "measuring_performed",
295
301
  ThreeSixtyEnableCommentTool = "EnableCommentTool",
296
302
  ThreeSixtyLockCompare = "LockCompare",
297
303
  ThreeSixtyLockForgeBIM = "LockForgeBIM",
@@ -312,13 +318,7 @@ export declare enum AnalyticsEvent {
312
318
  ThreeSixtyToggleMinimapVisibility = "ToggleMinimapVisibility",
313
319
  ThreeSixtyToggleMiniModel = "ToggleMiniModel",
314
320
  ThreeSixtyToggleCommentsVisibility = "ToggleCommentsVisibility",
315
- ThreeSixtyTourPause = "Tour-Pause",
316
- ThreeSixtyTourPlay = "Tour-Play",
317
- ThreeSixtyTourSetSpeedXHalve = "Tour-SetSpeedX0.5",
318
- ThreeSixtyTourSetSpeedX1 = "Tour-SetSpeedX1",
319
- ThreeSixtyTourSetSpeedX2 = "Tour-SetSpeedX2",
320
- ThreeSixtyTourSetSpeedX4 = "Tour-SetSpeedX4",
321
- ThreeSixtyTourToggleLoop = "Tour-ToggleLoop",
321
+ ThreeSixtyToggleCameraPinsVisibility = "toggle_camera_pins_visibility",
322
322
  ThreeSixtyUnlockCompare = "UnlockCompare",
323
323
  ThreeSixtyUnlockForgeBIM = "UnlockForgeBIM",
324
324
  ThreeSixtyUploadAssets = "UploadAssets",
@@ -341,7 +341,6 @@ export declare enum AnalyticsEvent {
341
341
  DroneResetView = "ResetView",
342
342
  DroneSettingsToggle360PathsVisibility = "Settings-Toggle360PathsVisibility",
343
343
  DroneSettingsToggleCameraMarkersVisibility = "Settings-ToggleCameraMarkersVisibility",
344
- DroneSettingsToggleSurroundingBuildingsTool = "Settings-ToggleSurroundingBuildingsTool",
345
344
  DroneSettingsToggleCommentsVisibility = "Settings-ToggleCommentsVisibility",
346
345
  DroneSettingsToggleAerialShotsVisibility = "Settings-ToggleAerialShotsVisibility",
347
346
  DroneSettingsOpenCommentsList = "Settings-OpenCommentsList",
@@ -352,6 +351,7 @@ export declare enum AnalyticsEvent {
352
351
  DroneToggleMapStyle = "ToggleMapStyle",
353
352
  DroneTogglePointCloud = "TogglePointCloud",
354
353
  DroneToggleGaussianSplat = "ToggleGaussianSplat",
354
+ DroneToggleGlobe = "ToggleGlobe",
355
355
  DroneToggleQualityMode = "ChooseQuality",
356
356
  DroneToggleSideMenu = "ToggleSideMenu",
357
357
  DroneToggleImageryPlan = "ToggleImageryPlan",
@@ -398,6 +398,8 @@ export declare enum AnalyticsEvent {
398
398
  DrawingClickHome = "ClickHome",
399
399
  DrawingsUploadDrawing = "UploadDrawing",
400
400
  DrawingsCreateDrawing = "CreateDrawing",
401
+ DrawingsSelectPdfPage = "SelectPdfPage",
402
+ DrawingsDeleteDrawing = "DeleteDrawing",
401
403
  DrawingToggleMapStyle = "ToggleMapStyle",
402
404
  DrawingToggleMapLabels = "ToggleMapLabels",
403
405
  DrawingToggleCamerasLabels = "ToggleCamerasLabels",
@@ -483,6 +485,7 @@ export declare enum AnalyticsEvent {
483
485
  GateReportTimelineDateClick = "Timeline-DateClick",
484
486
  GateReportToggleThumbnails = "ToggleThumbnails",
485
487
  PpeTimelineDateClick = "PpeTimeline-DateClick",
488
+ ObservationsFilterTypes = "Observations-FilterTypes",
486
489
  HelpMenuToggleMenuButton = "HelpMenu-ToggleMenuButton",
487
490
  HelpMenuOpenProjectContactsDialog = "HelpMenu-OpenProjectContactsDialog",
488
491
  HelpMenuOpenLiveChat = "HelpMenu-OpenLiveChat",
@@ -606,5 +609,6 @@ export declare enum AnalyticsEvent {
606
609
  ForgeBimReplaceModelCancelled = "ForgeBim-ReplaceModelCancelled",
607
610
  ForgeBimModelAdded = "ForgeBim-ModelAdded",
608
611
  ForgeBimModelUpdated = "ForgeBim-ModelUpdated",
609
- ForgeBimModelSaveFailed = "ForgeBim-ModelSaveFailed"
612
+ ForgeBimModelSaveFailed = "ForgeBim-ModelSaveFailed",
613
+ ForgeBimIngestNotificationFailed = "ForgeBim-IngestNotificationFailed"
610
614
  }
@@ -3,6 +3,10 @@ export declare enum RoleResourceType {
3
3
  Camera = "camera",
4
4
  Project = "project"
5
5
  }
6
+ export declare enum RoleAssignmentLogAction {
7
+ Assign = "assign",
8
+ Unassign = "unassign"
9
+ }
6
10
  export type RoleSubRole = {
7
11
  resourceId: string;
8
12
  roleId: number;
@@ -59,3 +63,70 @@ export type AuthzScopeCreatePayload = {
59
63
  export type AuthzScopeUpdatePayload = Partial<AuthzScopeCreatePayload>;
60
64
  export declare function isProjectRole(role: Role): role is ProjectResourceRole;
61
65
  export declare function isCameraRole(role: Role): role is CameraResourceRole;
66
+ export type RoleAssignmentUserDetails = {
67
+ browser?: string | null;
68
+ device?: string | null;
69
+ os?: string | null;
70
+ country?: string | null;
71
+ countryCode?: string | null;
72
+ ip?: string | null;
73
+ impersonatedBy?: string | null;
74
+ };
75
+ export type RoleAssignmentRowUserDetails = RoleAssignmentUserDetails & {
76
+ via?: string | null;
77
+ inviteId?: number | null;
78
+ inviteEmail?: string | null;
79
+ };
80
+ export type RoleAssignmentLog = {
81
+ id: number;
82
+ action: RoleAssignmentLogAction;
83
+ assignerId: number | null;
84
+ assignerEmail: string | null;
85
+ assigneeId: number | null;
86
+ assigneeEmail: string;
87
+ roleId: number | null;
88
+ roleName: string | null;
89
+ previousRoleId: number | null;
90
+ previousRoleName: string | null;
91
+ scope: RoleResourceType;
92
+ projectExid: string | null;
93
+ cameraExid: string | null;
94
+ cameraName: string | null;
95
+ projectName: string | null;
96
+ ip: string | null;
97
+ userDetails: RoleAssignmentRowUserDetails | null;
98
+ insertedAt: string;
99
+ };
100
+ export type RoleAssignmentResourceRef = {
101
+ exid: string;
102
+ name: string | null;
103
+ };
104
+ export type RoleAssignmentLogBatch = {
105
+ groupId: string;
106
+ batchId: string | null;
107
+ batchSize: number;
108
+ assigneeId: number | null;
109
+ assigneeEmail: string;
110
+ actions: RoleAssignmentLogAction[];
111
+ projects: RoleAssignmentResourceRef[];
112
+ ip: string | null;
113
+ userDetails: RoleAssignmentUserDetails | null;
114
+ insertedAt: string;
115
+ children: RoleAssignmentLog[];
116
+ };
117
+ export type RoleAssignmentLogsParams = {
118
+ page?: number;
119
+ limit?: number;
120
+ sort?: string;
121
+ action?: RoleAssignmentLogAction;
122
+ roleId?: number;
123
+ roleName?: string;
124
+ assigneeEmail?: string;
125
+ assignerEmail?: string;
126
+ scope?: RoleResourceType;
127
+ projectExid?: string;
128
+ cameraExid?: string;
129
+ ip?: string;
130
+ from?: string;
131
+ to?: string;
132
+ };
@@ -8,8 +8,28 @@ export declare enum AutomationProvider {
8
8
  export declare enum AutomationType {
9
9
  Photo = "photo",
10
10
  Compare = "compare",
11
- GateReport = "gate_report"
11
+ GateReport = "gate_report",
12
+ Weather = "weather"
12
13
  }
14
+ export declare enum AutomationWeatherReportType {
15
+ Forecast = "forecast",
16
+ History = "history"
17
+ }
18
+ export declare enum AutomationExportFormat {
19
+ Pdf = "pdf",
20
+ Csv = "csv"
21
+ }
22
+ export declare enum AutomationWeatherDataGranularity {
23
+ Daily = "daily",
24
+ Hourly = "hourly"
25
+ }
26
+ export type AutomationWeatherConfig = {
27
+ reportType: AutomationWeatherReportType;
28
+ exportFormat: AutomationExportFormat;
29
+ dataGranularity?: AutomationWeatherDataGranularity;
30
+ selectedColumns?: string[];
31
+ forecastDays?: number;
32
+ };
13
33
  export type AutomationCompareConfig = {
14
34
  compareDelay: number;
15
35
  };
@@ -22,7 +42,6 @@ export type AutomationGateReportConfig = {
22
42
  fileType: string;
23
43
  period: number;
24
44
  columns: string[];
25
- recipients: string | string[];
26
45
  };
27
46
  export type AutomationEmailProviderConfig = {
28
47
  cameraExids?: CameraExid[];
@@ -51,7 +70,7 @@ export type AutomationAutodeskProviderConfig = {
51
70
  folderName: string;
52
71
  };
53
72
  export type AutomationProviderConfig = AutomationEmailProviderConfig | AutomationProcoreProviderConfig | AutomationAconexProviderConfig | AutomationAutodeskProviderConfig;
54
- export type AutomationOptionsConfig = AutomationCompareConfig | AutomationGateReportConfig | {};
73
+ export type AutomationOptionsConfig = AutomationCompareConfig | AutomationGateReportConfig | AutomationWeatherConfig | {};
55
74
  export type AutomationConfig = AutomationProviderConfig & AutomationOptionsConfig;
56
75
  export type Automation = {
57
76
  id?: number;
@@ -82,7 +101,7 @@ export type AutomationProviderOption = {
82
101
  requiresConnection: boolean;
83
102
  };
84
103
  export type FormattedAutomation = {
85
- cameraExids: string;
104
+ cameraExids?: string;
86
105
  name: string;
87
106
  subject: string;
88
107
  provider: AutomationProvider;
@@ -1,9 +1,5 @@
1
1
  import type { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, CancelTokenSource, CancelTokenStatic } from "axios";
2
2
  import { Swr } from "@evercam/api/api/client/swr/Swr";
3
- export type TimedRequest<T> = Promise<AxiosResponse<T> & {
4
- duration: number;
5
- error?: AxiosError;
6
- }>;
7
3
  export type AxiosEnvironment = {
8
4
  baseUrl?: string | null;
9
5
  stagingAiApiUrl?: string | null;
@@ -16,6 +12,7 @@ export type AxiosEnvironment = {
16
12
  firebaseVideowallUrl?: string | null;
17
13
  weatherApiBaseUrl?: string | null;
18
14
  evercamLabsUrl?: string | null;
15
+ isLabsStaging?: boolean;
19
16
  firebaseDbLink?: string | null;
20
17
  firebaseStorageUrl?: string | null;
21
18
  firebaseStorageToken?: string | null;
@@ -29,15 +26,18 @@ export type AxiosEnvironment = {
29
26
  export type RequestInterceptor = (req: AxiosRequestConfig, env: AxiosEnvironment) => AxiosRequestConfig & any;
30
27
  export type ResponseInterceptor = (res: AxiosResponse, env: AxiosEnvironment) => AxiosResponse & any;
31
28
  export type ErrorInterceptor = (error: any, env: AxiosEnvironment) => any;
29
+ export type RequestManager = {
30
+ createToken: (key: string) => CancelTokenSource["token"];
31
+ cancelToken: (key: string) => void;
32
+ cancelAll: () => void;
33
+ };
32
34
  export interface ExtendedAxiosInstance extends AxiosInstance {
33
35
  CancelToken: CancelTokenStatic;
34
36
  isCancel: (value: AxiosResponse | AxiosError | unknown) => boolean;
35
37
  setToken: (token: string) => void;
36
38
  setHeader: (headerName: string, value: any) => void;
37
- generateCancelTokenSource: () => CancelTokenSource;
38
- addCancelToken: (token: CancelTokenSource) => void;
39
- resetCancelTokens: () => void;
40
- cancelRequests: () => void;
39
+ createRequestManager: () => RequestManager;
40
+ requestManager: RequestManager;
41
41
  env: AxiosEnvironment;
42
42
  addEnvironmentVariables: (vars: Record<string, any>) => void;
43
43
  addRequestInterceptor: (interceptor: RequestInterceptor, errorInterceptor?: ErrorInterceptor) => void;