@oneuptime/common 10.2.1 → 10.2.3

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 (77) hide show
  1. package/Models/DatabaseModels/Index.ts +6 -0
  2. package/Models/DatabaseModels/ProjectOidc.ts +705 -0
  3. package/Models/DatabaseModels/UserNotificationRule.ts +49 -0
  4. package/Models/DatabaseModels/UserNotificationSetting.ts +17 -0
  5. package/Models/DatabaseModels/UserOnCallLogTimeline.ts +48 -0
  6. package/Models/DatabaseModels/UserWebhook.ts +290 -0
  7. package/Models/DatabaseModels/WebhookLog.ts +992 -0
  8. package/Server/API/ProjectOIDC.ts +73 -0
  9. package/Server/API/UserWebhookAPI.ts +159 -0
  10. package/Server/Infrastructure/Postgres/SchemaMigrations/1778506655291-AddProjectOIDC.ts +79 -0
  11. package/Server/Infrastructure/Postgres/SchemaMigrations/1778514515756-MigrationName.ts +259 -0
  12. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  13. package/Server/Services/Index.ts +2 -0
  14. package/Server/Services/OnCallDutyPolicyScheduleService.ts +139 -26
  15. package/Server/Services/ProjectOidcService.ts +10 -0
  16. package/Server/Services/UserNotificationRuleService.ts +213 -1
  17. package/Server/Services/UserNotificationSettingService.ts +95 -0
  18. package/Server/Services/UserWebhookService.ts +208 -0
  19. package/Server/Services/WebhookLogService.ts +15 -0
  20. package/Server/Services/WebhookService.ts +126 -0
  21. package/Types/OnCallDutyPolicy/UserOverrideUtil.ts +155 -0
  22. package/Types/Permission.ts +54 -0
  23. package/Types/Webhook/WebhookMessage.ts +8 -0
  24. package/Types/WebhookStatus.ts +6 -0
  25. package/UI/Components/Calendar/Calendar.css +257 -0
  26. package/UI/Components/Calendar/Calendar.tsx +22 -11
  27. package/build/dist/Models/DatabaseModels/Index.js +6 -0
  28. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  29. package/build/dist/Models/DatabaseModels/ProjectOidc.js +727 -0
  30. package/build/dist/Models/DatabaseModels/ProjectOidc.js.map +1 -0
  31. package/build/dist/Models/DatabaseModels/UserNotificationRule.js +49 -0
  32. package/build/dist/Models/DatabaseModels/UserNotificationRule.js.map +1 -1
  33. package/build/dist/Models/DatabaseModels/UserNotificationSetting.js +19 -0
  34. package/build/dist/Models/DatabaseModels/UserNotificationSetting.js.map +1 -1
  35. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js +48 -0
  36. package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js.map +1 -1
  37. package/build/dist/Models/DatabaseModels/UserWebhook.js +307 -0
  38. package/build/dist/Models/DatabaseModels/UserWebhook.js.map +1 -0
  39. package/build/dist/Models/DatabaseModels/WebhookLog.js +1021 -0
  40. package/build/dist/Models/DatabaseModels/WebhookLog.js.map +1 -0
  41. package/build/dist/Server/API/ProjectOIDC.js +45 -0
  42. package/build/dist/Server/API/ProjectOIDC.js.map +1 -0
  43. package/build/dist/Server/API/UserWebhookAPI.js +99 -0
  44. package/build/dist/Server/API/UserWebhookAPI.js.map +1 -0
  45. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778506655291-AddProjectOIDC.js +34 -0
  46. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778506655291-AddProjectOIDC.js.map +1 -0
  47. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778514515756-MigrationName.js +94 -0
  48. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778514515756-MigrationName.js.map +1 -0
  49. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  50. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  51. package/build/dist/Server/Services/Index.js +2 -0
  52. package/build/dist/Server/Services/Index.js.map +1 -1
  53. package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js +106 -17
  54. package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js.map +1 -1
  55. package/build/dist/Server/Services/ProjectOidcService.js +9 -0
  56. package/build/dist/Server/Services/ProjectOidcService.js.map +1 -0
  57. package/build/dist/Server/Services/UserNotificationRuleService.js +178 -21
  58. package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
  59. package/build/dist/Server/Services/UserNotificationSettingService.js +84 -1
  60. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  61. package/build/dist/Server/Services/UserWebhookService.js +190 -0
  62. package/build/dist/Server/Services/UserWebhookService.js.map +1 -0
  63. package/build/dist/Server/Services/WebhookLogService.js +13 -0
  64. package/build/dist/Server/Services/WebhookLogService.js.map +1 -0
  65. package/build/dist/Server/Services/WebhookService.js +92 -0
  66. package/build/dist/Server/Services/WebhookService.js.map +1 -0
  67. package/build/dist/Types/OnCallDutyPolicy/UserOverrideUtil.js +86 -0
  68. package/build/dist/Types/OnCallDutyPolicy/UserOverrideUtil.js.map +1 -0
  69. package/build/dist/Types/Permission.js +50 -0
  70. package/build/dist/Types/Permission.js.map +1 -1
  71. package/build/dist/Types/Webhook/WebhookMessage.js +2 -0
  72. package/build/dist/Types/Webhook/WebhookMessage.js.map +1 -0
  73. package/build/dist/Types/WebhookStatus.js +7 -0
  74. package/build/dist/Types/WebhookStatus.js.map +1 -0
  75. package/build/dist/UI/Components/Calendar/Calendar.js +12 -10
  76. package/build/dist/UI/Components/Calendar/Calendar.js.map +1 -1
  77. package/package.json +1 -1
@@ -0,0 +1,1021 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import Project from "./Project";
11
+ import Incident from "./Incident";
12
+ import Alert from "./Alert";
13
+ import Monitor from "./Monitor";
14
+ import ScheduledMaintenance from "./ScheduledMaintenance";
15
+ import StatusPage from "./StatusPage";
16
+ import StatusPageAnnouncement from "./StatusPageAnnouncement";
17
+ import User from "./User";
18
+ import OnCallDutyPolicy from "./OnCallDutyPolicy";
19
+ import OnCallDutyPolicyEscalationRule from "./OnCallDutyPolicyEscalationRule";
20
+ import OnCallDutyPolicySchedule from "./OnCallDutyPolicySchedule";
21
+ import Team from "./Team";
22
+ import BaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
23
+ import Route from "../../Types/API/Route";
24
+ import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
25
+ import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
26
+ import ColumnLength from "../../Types/Database/ColumnLength";
27
+ import ColumnType from "../../Types/Database/ColumnType";
28
+ import CrudApiEndpoint from "../../Types/Database/CrudApiEndpoint";
29
+ import EnableDocumentation from "../../Types/Database/EnableDocumentation";
30
+ import EnableWorkflow from "../../Types/Database/EnableWorkflow";
31
+ import TableColumn from "../../Types/Database/TableColumn";
32
+ import TableColumnType from "../../Types/Database/TableColumnType";
33
+ import TableMetadata from "../../Types/Database/TableMetadata";
34
+ import TenantColumn from "../../Types/Database/TenantColumn";
35
+ import IconProp from "../../Types/Icon/IconProp";
36
+ import ObjectID from "../../Types/ObjectID";
37
+ import Permission from "../../Types/Permission";
38
+ import WebhookStatus from "../../Types/WebhookStatus";
39
+ import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
40
+ let WebhookLog = class WebhookLog extends BaseModel {
41
+ constructor() {
42
+ super(...arguments);
43
+ this.project = undefined;
44
+ this.projectId = undefined;
45
+ this.webhookUrl = undefined;
46
+ this.requestBody = undefined;
47
+ this.responseStatusCode = undefined;
48
+ this.responseBody = undefined;
49
+ this.statusMessage = undefined;
50
+ this.status = undefined;
51
+ this.incident = undefined;
52
+ this.incidentId = undefined;
53
+ this.user = undefined;
54
+ this.userId = undefined;
55
+ this.alert = undefined;
56
+ this.alertId = undefined;
57
+ this.monitor = undefined;
58
+ this.monitorId = undefined;
59
+ this.scheduledMaintenance = undefined;
60
+ this.scheduledMaintenanceId = undefined;
61
+ this.statusPage = undefined;
62
+ this.statusPageId = undefined;
63
+ this.statusPageAnnouncement = undefined;
64
+ this.statusPageAnnouncementId = undefined;
65
+ this.team = undefined;
66
+ this.teamId = undefined;
67
+ this.onCallDutyPolicy = undefined;
68
+ this.onCallDutyPolicyId = undefined;
69
+ this.onCallDutyPolicyEscalationRule = undefined;
70
+ this.onCallDutyPolicyEscalationRuleId = undefined;
71
+ this.onCallDutyPolicySchedule = undefined;
72
+ this.onCallDutyPolicyScheduleId = undefined;
73
+ this.deletedByUser = undefined;
74
+ this.deletedByUserId = undefined;
75
+ }
76
+ };
77
+ __decorate([
78
+ ColumnAccessControl({
79
+ create: [],
80
+ read: [
81
+ Permission.ProjectOwner,
82
+ Permission.ProjectAdmin,
83
+ Permission.ProjectMember,
84
+ Permission.Viewer,
85
+ Permission.ReadWebhookLog,
86
+ Permission.ReadAllProjectResources,
87
+ ],
88
+ update: [],
89
+ }),
90
+ TableColumn({
91
+ manyToOneRelationColumn: "projectId",
92
+ type: TableColumnType.Entity,
93
+ modelType: Project,
94
+ title: "Project",
95
+ description: "Relation to Project Resource in which this object belongs",
96
+ }),
97
+ ManyToOne(() => {
98
+ return Project;
99
+ }, {
100
+ eager: false,
101
+ nullable: true,
102
+ onDelete: "CASCADE",
103
+ orphanedRowAction: "nullify",
104
+ }),
105
+ JoinColumn({ name: "projectId" }),
106
+ __metadata("design:type", Project)
107
+ ], WebhookLog.prototype, "project", void 0);
108
+ __decorate([
109
+ ColumnAccessControl({
110
+ create: [],
111
+ read: [
112
+ Permission.ProjectOwner,
113
+ Permission.ProjectAdmin,
114
+ Permission.ProjectMember,
115
+ Permission.Viewer,
116
+ Permission.ReadWebhookLog,
117
+ Permission.ReadAllProjectResources,
118
+ ],
119
+ update: [],
120
+ }),
121
+ Index(),
122
+ TableColumn({
123
+ type: TableColumnType.ObjectID,
124
+ required: true,
125
+ canReadOnRelationQuery: true,
126
+ title: "Project ID",
127
+ description: "ID of your OneUptime Project in which this object belongs",
128
+ }),
129
+ Column({
130
+ type: ColumnType.ObjectID,
131
+ nullable: false,
132
+ transformer: ObjectID.getDatabaseTransformer(),
133
+ }),
134
+ __metadata("design:type", ObjectID)
135
+ ], WebhookLog.prototype, "projectId", void 0);
136
+ __decorate([
137
+ ColumnAccessControl({
138
+ create: [],
139
+ read: [
140
+ Permission.ProjectOwner,
141
+ Permission.ProjectAdmin,
142
+ Permission.ProjectMember,
143
+ Permission.Viewer,
144
+ Permission.ReadWebhookLog,
145
+ Permission.ReadAllProjectResources,
146
+ ],
147
+ update: [],
148
+ }),
149
+ TableColumn({
150
+ required: true,
151
+ type: TableColumnType.LongText,
152
+ title: "Webhook URL",
153
+ description: "URL the request was sent to",
154
+ canReadOnRelationQuery: false,
155
+ }),
156
+ Column({
157
+ nullable: false,
158
+ type: ColumnType.LongText,
159
+ length: ColumnLength.LongText,
160
+ }),
161
+ __metadata("design:type", String)
162
+ ], WebhookLog.prototype, "webhookUrl", void 0);
163
+ __decorate([
164
+ ColumnAccessControl({
165
+ create: [],
166
+ read: [
167
+ Permission.ProjectOwner,
168
+ Permission.ProjectAdmin,
169
+ Permission.ProjectMember,
170
+ Permission.Viewer,
171
+ Permission.ReadWebhookLog,
172
+ Permission.ReadAllProjectResources,
173
+ ],
174
+ update: [],
175
+ }),
176
+ TableColumn({
177
+ required: false,
178
+ type: TableColumnType.VeryLongText,
179
+ title: "Request Body",
180
+ description: "JSON body that was POSTed to the webhook URL",
181
+ canReadOnRelationQuery: false,
182
+ }),
183
+ Column({
184
+ nullable: true,
185
+ type: ColumnType.VeryLongText,
186
+ }),
187
+ __metadata("design:type", String)
188
+ ], WebhookLog.prototype, "requestBody", void 0);
189
+ __decorate([
190
+ ColumnAccessControl({
191
+ create: [],
192
+ read: [
193
+ Permission.ProjectOwner,
194
+ Permission.ProjectAdmin,
195
+ Permission.ProjectMember,
196
+ Permission.Viewer,
197
+ Permission.ReadWebhookLog,
198
+ Permission.ReadAllProjectResources,
199
+ ],
200
+ update: [],
201
+ }),
202
+ TableColumn({
203
+ required: false,
204
+ type: TableColumnType.Number,
205
+ title: "Response Status Code",
206
+ description: "HTTP status code returned by the webhook endpoint",
207
+ canReadOnRelationQuery: false,
208
+ }),
209
+ Column({
210
+ nullable: true,
211
+ type: ColumnType.Number,
212
+ }),
213
+ __metadata("design:type", Number)
214
+ ], WebhookLog.prototype, "responseStatusCode", void 0);
215
+ __decorate([
216
+ ColumnAccessControl({
217
+ create: [],
218
+ read: [
219
+ Permission.ProjectOwner,
220
+ Permission.ProjectAdmin,
221
+ Permission.ProjectMember,
222
+ Permission.Viewer,
223
+ Permission.ReadWebhookLog,
224
+ Permission.ReadAllProjectResources,
225
+ ],
226
+ update: [],
227
+ }),
228
+ TableColumn({
229
+ required: false,
230
+ type: TableColumnType.VeryLongText,
231
+ title: "Response Body",
232
+ description: "Response body returned by the webhook endpoint (truncated)",
233
+ canReadOnRelationQuery: false,
234
+ }),
235
+ Column({
236
+ nullable: true,
237
+ type: ColumnType.VeryLongText,
238
+ }),
239
+ __metadata("design:type", String)
240
+ ], WebhookLog.prototype, "responseBody", void 0);
241
+ __decorate([
242
+ ColumnAccessControl({
243
+ create: [],
244
+ read: [
245
+ Permission.ProjectOwner,
246
+ Permission.ProjectAdmin,
247
+ Permission.ProjectMember,
248
+ Permission.Viewer,
249
+ Permission.ReadWebhookLog,
250
+ Permission.ReadAllProjectResources,
251
+ ],
252
+ update: [],
253
+ }),
254
+ TableColumn({
255
+ required: false,
256
+ type: TableColumnType.LongText,
257
+ title: "Status Message",
258
+ description: "Status Message (if any)",
259
+ canReadOnRelationQuery: false,
260
+ }),
261
+ Column({
262
+ nullable: true,
263
+ type: ColumnType.LongText,
264
+ length: ColumnLength.LongText,
265
+ }),
266
+ __metadata("design:type", String)
267
+ ], WebhookLog.prototype, "statusMessage", void 0);
268
+ __decorate([
269
+ ColumnAccessControl({
270
+ create: [],
271
+ read: [
272
+ Permission.ProjectOwner,
273
+ Permission.ProjectAdmin,
274
+ Permission.ProjectMember,
275
+ Permission.Viewer,
276
+ Permission.ReadWebhookLog,
277
+ Permission.ReadAllProjectResources,
278
+ ],
279
+ update: [],
280
+ }),
281
+ TableColumn({
282
+ required: true,
283
+ type: TableColumnType.ShortText,
284
+ title: "Status",
285
+ description: "Status of the Webhook request",
286
+ canReadOnRelationQuery: false,
287
+ }),
288
+ Column({
289
+ nullable: false,
290
+ type: ColumnType.ShortText,
291
+ length: ColumnLength.ShortText,
292
+ }),
293
+ __metadata("design:type", String)
294
+ ], WebhookLog.prototype, "status", void 0);
295
+ __decorate([
296
+ ColumnAccessControl({
297
+ create: [],
298
+ read: [
299
+ Permission.ProjectOwner,
300
+ Permission.ProjectAdmin,
301
+ Permission.ProjectMember,
302
+ Permission.Viewer,
303
+ Permission.ReadWebhookLog,
304
+ Permission.ReadAllProjectResources,
305
+ ],
306
+ update: [],
307
+ }),
308
+ TableColumn({
309
+ manyToOneRelationColumn: "incidentId",
310
+ type: TableColumnType.Entity,
311
+ modelType: Incident,
312
+ title: "Incident",
313
+ description: "Incident associated with this request (if any)",
314
+ }),
315
+ ManyToOne(() => {
316
+ return Incident;
317
+ }, {
318
+ eager: false,
319
+ nullable: true,
320
+ onDelete: "CASCADE",
321
+ orphanedRowAction: "nullify",
322
+ }),
323
+ JoinColumn({ name: "incidentId" }),
324
+ __metadata("design:type", Incident)
325
+ ], WebhookLog.prototype, "incident", void 0);
326
+ __decorate([
327
+ ColumnAccessControl({
328
+ create: [],
329
+ read: [
330
+ Permission.ProjectOwner,
331
+ Permission.ProjectAdmin,
332
+ Permission.ProjectMember,
333
+ Permission.Viewer,
334
+ Permission.ReadWebhookLog,
335
+ Permission.ReadAllProjectResources,
336
+ ],
337
+ update: [],
338
+ }),
339
+ Index(),
340
+ TableColumn({
341
+ type: TableColumnType.ObjectID,
342
+ required: false,
343
+ canReadOnRelationQuery: true,
344
+ title: "Incident ID",
345
+ description: "ID of Incident associated with this request (if any)",
346
+ }),
347
+ Column({
348
+ type: ColumnType.ObjectID,
349
+ nullable: true,
350
+ transformer: ObjectID.getDatabaseTransformer(),
351
+ }),
352
+ __metadata("design:type", ObjectID)
353
+ ], WebhookLog.prototype, "incidentId", void 0);
354
+ __decorate([
355
+ ColumnAccessControl({
356
+ create: [],
357
+ read: [
358
+ Permission.ProjectOwner,
359
+ Permission.ProjectAdmin,
360
+ Permission.ProjectMember,
361
+ Permission.Viewer,
362
+ Permission.ReadWebhookLog,
363
+ Permission.ReadAllProjectResources,
364
+ ],
365
+ update: [],
366
+ }),
367
+ TableColumn({
368
+ manyToOneRelationColumn: "userId",
369
+ type: TableColumnType.Entity,
370
+ modelType: User,
371
+ title: "User",
372
+ description: "User who initiated this request (if any)",
373
+ }),
374
+ ManyToOne(() => {
375
+ return User;
376
+ }, {
377
+ eager: false,
378
+ nullable: true,
379
+ onDelete: "CASCADE",
380
+ orphanedRowAction: "nullify",
381
+ }),
382
+ JoinColumn({ name: "userId" }),
383
+ __metadata("design:type", User)
384
+ ], WebhookLog.prototype, "user", void 0);
385
+ __decorate([
386
+ ColumnAccessControl({
387
+ create: [],
388
+ read: [
389
+ Permission.ProjectOwner,
390
+ Permission.ProjectAdmin,
391
+ Permission.ProjectMember,
392
+ Permission.Viewer,
393
+ Permission.ReadWebhookLog,
394
+ Permission.ReadAllProjectResources,
395
+ ],
396
+ update: [],
397
+ }),
398
+ Index(),
399
+ TableColumn({
400
+ type: TableColumnType.ObjectID,
401
+ required: false,
402
+ canReadOnRelationQuery: true,
403
+ title: "User ID",
404
+ description: "ID of User who initiated this request (if any)",
405
+ }),
406
+ Column({
407
+ type: ColumnType.ObjectID,
408
+ nullable: true,
409
+ transformer: ObjectID.getDatabaseTransformer(),
410
+ }),
411
+ __metadata("design:type", ObjectID)
412
+ ], WebhookLog.prototype, "userId", void 0);
413
+ __decorate([
414
+ ColumnAccessControl({
415
+ create: [],
416
+ read: [
417
+ Permission.ProjectOwner,
418
+ Permission.ProjectAdmin,
419
+ Permission.ProjectMember,
420
+ Permission.Viewer,
421
+ Permission.ReadWebhookLog,
422
+ Permission.ReadAllProjectResources,
423
+ ],
424
+ update: [],
425
+ }),
426
+ TableColumn({
427
+ manyToOneRelationColumn: "alertId",
428
+ type: TableColumnType.Entity,
429
+ modelType: Alert,
430
+ title: "Alert",
431
+ description: "Alert associated with this request (if any)",
432
+ }),
433
+ ManyToOne(() => {
434
+ return Alert;
435
+ }, {
436
+ eager: false,
437
+ nullable: true,
438
+ onDelete: "CASCADE",
439
+ orphanedRowAction: "nullify",
440
+ }),
441
+ JoinColumn({ name: "alertId" }),
442
+ __metadata("design:type", Alert)
443
+ ], WebhookLog.prototype, "alert", void 0);
444
+ __decorate([
445
+ ColumnAccessControl({
446
+ create: [],
447
+ read: [
448
+ Permission.ProjectOwner,
449
+ Permission.ProjectAdmin,
450
+ Permission.ProjectMember,
451
+ Permission.Viewer,
452
+ Permission.ReadWebhookLog,
453
+ Permission.ReadAllProjectResources,
454
+ ],
455
+ update: [],
456
+ }),
457
+ Index(),
458
+ TableColumn({
459
+ type: TableColumnType.ObjectID,
460
+ required: false,
461
+ canReadOnRelationQuery: true,
462
+ title: "Alert ID",
463
+ description: "ID of Alert associated with this request (if any)",
464
+ }),
465
+ Column({
466
+ type: ColumnType.ObjectID,
467
+ nullable: true,
468
+ transformer: ObjectID.getDatabaseTransformer(),
469
+ }),
470
+ __metadata("design:type", ObjectID)
471
+ ], WebhookLog.prototype, "alertId", void 0);
472
+ __decorate([
473
+ ColumnAccessControl({
474
+ create: [],
475
+ read: [
476
+ Permission.ProjectOwner,
477
+ Permission.ProjectAdmin,
478
+ Permission.ProjectMember,
479
+ Permission.Viewer,
480
+ Permission.ReadWebhookLog,
481
+ Permission.ReadAllProjectResources,
482
+ ],
483
+ update: [],
484
+ }),
485
+ TableColumn({
486
+ manyToOneRelationColumn: "monitorId",
487
+ type: TableColumnType.Entity,
488
+ modelType: Monitor,
489
+ title: "Monitor",
490
+ description: "Monitor associated with this request (if any)",
491
+ }),
492
+ ManyToOne(() => {
493
+ return Monitor;
494
+ }, {
495
+ eager: false,
496
+ nullable: true,
497
+ onDelete: "CASCADE",
498
+ orphanedRowAction: "nullify",
499
+ }),
500
+ JoinColumn({ name: "monitorId" }),
501
+ __metadata("design:type", Monitor)
502
+ ], WebhookLog.prototype, "monitor", void 0);
503
+ __decorate([
504
+ ColumnAccessControl({
505
+ create: [],
506
+ read: [
507
+ Permission.ProjectOwner,
508
+ Permission.ProjectAdmin,
509
+ Permission.ProjectMember,
510
+ Permission.Viewer,
511
+ Permission.ReadWebhookLog,
512
+ Permission.ReadAllProjectResources,
513
+ ],
514
+ update: [],
515
+ }),
516
+ Index(),
517
+ TableColumn({
518
+ type: TableColumnType.ObjectID,
519
+ required: false,
520
+ canReadOnRelationQuery: true,
521
+ title: "Monitor ID",
522
+ description: "ID of Monitor associated with this request (if any)",
523
+ }),
524
+ Column({
525
+ type: ColumnType.ObjectID,
526
+ nullable: true,
527
+ transformer: ObjectID.getDatabaseTransformer(),
528
+ }),
529
+ __metadata("design:type", ObjectID)
530
+ ], WebhookLog.prototype, "monitorId", void 0);
531
+ __decorate([
532
+ ColumnAccessControl({
533
+ create: [],
534
+ read: [
535
+ Permission.ProjectOwner,
536
+ Permission.ProjectAdmin,
537
+ Permission.ProjectMember,
538
+ Permission.Viewer,
539
+ Permission.ReadWebhookLog,
540
+ Permission.ReadAllProjectResources,
541
+ ],
542
+ update: [],
543
+ }),
544
+ TableColumn({
545
+ manyToOneRelationColumn: "scheduledMaintenanceId",
546
+ type: TableColumnType.Entity,
547
+ modelType: ScheduledMaintenance,
548
+ title: "Scheduled Maintenance",
549
+ description: "Scheduled Maintenance associated with this request (if any)",
550
+ }),
551
+ ManyToOne(() => {
552
+ return ScheduledMaintenance;
553
+ }, {
554
+ eager: false,
555
+ nullable: true,
556
+ onDelete: "CASCADE",
557
+ orphanedRowAction: "nullify",
558
+ }),
559
+ JoinColumn({ name: "scheduledMaintenanceId" }),
560
+ __metadata("design:type", ScheduledMaintenance)
561
+ ], WebhookLog.prototype, "scheduledMaintenance", void 0);
562
+ __decorate([
563
+ ColumnAccessControl({
564
+ create: [],
565
+ read: [
566
+ Permission.ProjectOwner,
567
+ Permission.ProjectAdmin,
568
+ Permission.ProjectMember,
569
+ Permission.Viewer,
570
+ Permission.ReadWebhookLog,
571
+ Permission.ReadAllProjectResources,
572
+ ],
573
+ update: [],
574
+ }),
575
+ Index(),
576
+ TableColumn({
577
+ type: TableColumnType.ObjectID,
578
+ required: false,
579
+ canReadOnRelationQuery: true,
580
+ title: "Scheduled Maintenance ID",
581
+ description: "ID of Scheduled Maintenance associated with this request (if any)",
582
+ }),
583
+ Column({
584
+ type: ColumnType.ObjectID,
585
+ nullable: true,
586
+ transformer: ObjectID.getDatabaseTransformer(),
587
+ }),
588
+ __metadata("design:type", ObjectID)
589
+ ], WebhookLog.prototype, "scheduledMaintenanceId", void 0);
590
+ __decorate([
591
+ ColumnAccessControl({
592
+ create: [],
593
+ read: [
594
+ Permission.ProjectOwner,
595
+ Permission.ProjectAdmin,
596
+ Permission.ProjectMember,
597
+ Permission.Viewer,
598
+ Permission.ReadWebhookLog,
599
+ Permission.ReadAllProjectResources,
600
+ ],
601
+ update: [],
602
+ }),
603
+ TableColumn({
604
+ manyToOneRelationColumn: "statusPageId",
605
+ type: TableColumnType.Entity,
606
+ modelType: StatusPage,
607
+ title: "Status Page",
608
+ description: "Status Page associated with this request (if any)",
609
+ }),
610
+ ManyToOne(() => {
611
+ return StatusPage;
612
+ }, {
613
+ eager: false,
614
+ nullable: true,
615
+ onDelete: "CASCADE",
616
+ orphanedRowAction: "nullify",
617
+ }),
618
+ JoinColumn({ name: "statusPageId" }),
619
+ __metadata("design:type", StatusPage)
620
+ ], WebhookLog.prototype, "statusPage", void 0);
621
+ __decorate([
622
+ ColumnAccessControl({
623
+ create: [],
624
+ read: [
625
+ Permission.ProjectOwner,
626
+ Permission.ProjectAdmin,
627
+ Permission.ProjectMember,
628
+ Permission.Viewer,
629
+ Permission.ReadWebhookLog,
630
+ Permission.ReadAllProjectResources,
631
+ ],
632
+ update: [],
633
+ }),
634
+ Index(),
635
+ TableColumn({
636
+ type: TableColumnType.ObjectID,
637
+ required: false,
638
+ canReadOnRelationQuery: true,
639
+ title: "Status Page ID",
640
+ description: "ID of Status Page associated with this request (if any)",
641
+ }),
642
+ Column({
643
+ type: ColumnType.ObjectID,
644
+ nullable: true,
645
+ transformer: ObjectID.getDatabaseTransformer(),
646
+ }),
647
+ __metadata("design:type", ObjectID)
648
+ ], WebhookLog.prototype, "statusPageId", void 0);
649
+ __decorate([
650
+ ColumnAccessControl({
651
+ create: [],
652
+ read: [
653
+ Permission.ProjectOwner,
654
+ Permission.ProjectAdmin,
655
+ Permission.ProjectMember,
656
+ Permission.Viewer,
657
+ Permission.ReadWebhookLog,
658
+ Permission.ReadAllProjectResources,
659
+ ],
660
+ update: [],
661
+ }),
662
+ TableColumn({
663
+ manyToOneRelationColumn: "statusPageAnnouncementId",
664
+ type: TableColumnType.Entity,
665
+ modelType: StatusPageAnnouncement,
666
+ title: "Status Page Announcement",
667
+ description: "Status Page Announcement associated with this request (if any)",
668
+ }),
669
+ ManyToOne(() => {
670
+ return StatusPageAnnouncement;
671
+ }, {
672
+ eager: false,
673
+ nullable: true,
674
+ onDelete: "CASCADE",
675
+ orphanedRowAction: "nullify",
676
+ }),
677
+ JoinColumn({ name: "statusPageAnnouncementId" }),
678
+ __metadata("design:type", StatusPageAnnouncement)
679
+ ], WebhookLog.prototype, "statusPageAnnouncement", void 0);
680
+ __decorate([
681
+ ColumnAccessControl({
682
+ create: [],
683
+ read: [
684
+ Permission.ProjectOwner,
685
+ Permission.ProjectAdmin,
686
+ Permission.ProjectMember,
687
+ Permission.Viewer,
688
+ Permission.ReadWebhookLog,
689
+ Permission.ReadAllProjectResources,
690
+ ],
691
+ update: [],
692
+ }),
693
+ Index(),
694
+ TableColumn({
695
+ type: TableColumnType.ObjectID,
696
+ required: false,
697
+ canReadOnRelationQuery: true,
698
+ title: "Status Page Announcement ID",
699
+ description: "ID of Status Page Announcement associated with this request (if any)",
700
+ }),
701
+ Column({
702
+ type: ColumnType.ObjectID,
703
+ nullable: true,
704
+ transformer: ObjectID.getDatabaseTransformer(),
705
+ }),
706
+ __metadata("design:type", ObjectID)
707
+ ], WebhookLog.prototype, "statusPageAnnouncementId", void 0);
708
+ __decorate([
709
+ ColumnAccessControl({
710
+ create: [],
711
+ read: [
712
+ Permission.ProjectOwner,
713
+ Permission.ProjectAdmin,
714
+ Permission.ProjectMember,
715
+ Permission.Viewer,
716
+ Permission.ReadWebhookLog,
717
+ Permission.ReadAllProjectResources,
718
+ ],
719
+ update: [],
720
+ }),
721
+ TableColumn({
722
+ manyToOneRelationColumn: "teamId",
723
+ type: TableColumnType.Entity,
724
+ modelType: Team,
725
+ title: "Team",
726
+ description: "Team associated with this request (if any)",
727
+ }),
728
+ ManyToOne(() => {
729
+ return Team;
730
+ }, {
731
+ eager: false,
732
+ nullable: true,
733
+ onDelete: "CASCADE",
734
+ orphanedRowAction: "nullify",
735
+ }),
736
+ JoinColumn({ name: "teamId" }),
737
+ __metadata("design:type", Team)
738
+ ], WebhookLog.prototype, "team", void 0);
739
+ __decorate([
740
+ ColumnAccessControl({
741
+ create: [],
742
+ read: [
743
+ Permission.ProjectOwner,
744
+ Permission.ProjectAdmin,
745
+ Permission.ProjectMember,
746
+ Permission.Viewer,
747
+ Permission.ReadWebhookLog,
748
+ Permission.ReadAllProjectResources,
749
+ ],
750
+ update: [],
751
+ }),
752
+ Index(),
753
+ TableColumn({
754
+ type: TableColumnType.ObjectID,
755
+ required: false,
756
+ canReadOnRelationQuery: true,
757
+ title: "Team ID",
758
+ description: "ID of Team associated with this request (if any)",
759
+ }),
760
+ Column({
761
+ type: ColumnType.ObjectID,
762
+ nullable: true,
763
+ transformer: ObjectID.getDatabaseTransformer(),
764
+ }),
765
+ __metadata("design:type", ObjectID)
766
+ ], WebhookLog.prototype, "teamId", void 0);
767
+ __decorate([
768
+ ColumnAccessControl({
769
+ create: [],
770
+ read: [
771
+ Permission.ProjectOwner,
772
+ Permission.ProjectAdmin,
773
+ Permission.ProjectMember,
774
+ Permission.Viewer,
775
+ Permission.ReadWebhookLog,
776
+ Permission.ReadAllProjectResources,
777
+ ],
778
+ update: [],
779
+ }),
780
+ TableColumn({
781
+ manyToOneRelationColumn: "onCallDutyPolicyId",
782
+ type: TableColumnType.Entity,
783
+ modelType: OnCallDutyPolicy,
784
+ title: "On-Call Duty Policy",
785
+ description: "On-Call Duty Policy associated with this request (if any)",
786
+ }),
787
+ ManyToOne(() => {
788
+ return OnCallDutyPolicy;
789
+ }, {
790
+ eager: false,
791
+ nullable: true,
792
+ onDelete: "CASCADE",
793
+ orphanedRowAction: "nullify",
794
+ }),
795
+ JoinColumn({ name: "onCallDutyPolicyId" }),
796
+ __metadata("design:type", OnCallDutyPolicy)
797
+ ], WebhookLog.prototype, "onCallDutyPolicy", void 0);
798
+ __decorate([
799
+ ColumnAccessControl({
800
+ create: [],
801
+ read: [
802
+ Permission.ProjectOwner,
803
+ Permission.ProjectAdmin,
804
+ Permission.ProjectMember,
805
+ Permission.Viewer,
806
+ Permission.ReadWebhookLog,
807
+ Permission.ReadAllProjectResources,
808
+ ],
809
+ update: [],
810
+ }),
811
+ Index(),
812
+ TableColumn({
813
+ type: TableColumnType.ObjectID,
814
+ required: false,
815
+ canReadOnRelationQuery: true,
816
+ title: "On-Call Duty Policy ID",
817
+ description: "ID of On-Call Duty Policy associated with this request (if any)",
818
+ }),
819
+ Column({
820
+ type: ColumnType.ObjectID,
821
+ nullable: true,
822
+ transformer: ObjectID.getDatabaseTransformer(),
823
+ }),
824
+ __metadata("design:type", ObjectID)
825
+ ], WebhookLog.prototype, "onCallDutyPolicyId", void 0);
826
+ __decorate([
827
+ ColumnAccessControl({
828
+ create: [],
829
+ read: [
830
+ Permission.ProjectOwner,
831
+ Permission.ProjectAdmin,
832
+ Permission.ProjectMember,
833
+ Permission.Viewer,
834
+ Permission.ReadWebhookLog,
835
+ Permission.ReadAllProjectResources,
836
+ ],
837
+ update: [],
838
+ }),
839
+ TableColumn({
840
+ manyToOneRelationColumn: "onCallDutyPolicyEscalationRuleId",
841
+ type: TableColumnType.Entity,
842
+ modelType: OnCallDutyPolicyEscalationRule,
843
+ title: "On-Call Duty Policy Escalation Rule",
844
+ description: "On-Call Duty Policy Escalation Rule associated with this request (if any)",
845
+ }),
846
+ ManyToOne(() => {
847
+ return OnCallDutyPolicyEscalationRule;
848
+ }, {
849
+ eager: false,
850
+ nullable: true,
851
+ onDelete: "CASCADE",
852
+ orphanedRowAction: "nullify",
853
+ }),
854
+ JoinColumn({ name: "onCallDutyPolicyEscalationRuleId" }),
855
+ __metadata("design:type", OnCallDutyPolicyEscalationRule)
856
+ ], WebhookLog.prototype, "onCallDutyPolicyEscalationRule", void 0);
857
+ __decorate([
858
+ ColumnAccessControl({
859
+ create: [],
860
+ read: [
861
+ Permission.ProjectOwner,
862
+ Permission.ProjectAdmin,
863
+ Permission.ProjectMember,
864
+ Permission.Viewer,
865
+ Permission.ReadWebhookLog,
866
+ Permission.ReadAllProjectResources,
867
+ ],
868
+ update: [],
869
+ }),
870
+ Index(),
871
+ TableColumn({
872
+ type: TableColumnType.ObjectID,
873
+ required: false,
874
+ canReadOnRelationQuery: true,
875
+ title: "On-Call Duty Policy Escalation Rule ID",
876
+ description: "ID of On-Call Duty Policy Escalation Rule associated with this request (if any)",
877
+ }),
878
+ Column({
879
+ type: ColumnType.ObjectID,
880
+ nullable: true,
881
+ transformer: ObjectID.getDatabaseTransformer(),
882
+ }),
883
+ __metadata("design:type", ObjectID)
884
+ ], WebhookLog.prototype, "onCallDutyPolicyEscalationRuleId", void 0);
885
+ __decorate([
886
+ ColumnAccessControl({
887
+ create: [],
888
+ read: [
889
+ Permission.ProjectOwner,
890
+ Permission.ProjectAdmin,
891
+ Permission.ProjectMember,
892
+ Permission.Viewer,
893
+ Permission.ReadWebhookLog,
894
+ Permission.ReadAllProjectResources,
895
+ ],
896
+ update: [],
897
+ }),
898
+ TableColumn({
899
+ manyToOneRelationColumn: "onCallDutyPolicyScheduleId",
900
+ type: TableColumnType.Entity,
901
+ modelType: OnCallDutyPolicySchedule,
902
+ title: "On-Call Duty Policy Schedule",
903
+ description: "On-Call Duty Policy Schedule associated with this request (if any)",
904
+ }),
905
+ ManyToOne(() => {
906
+ return OnCallDutyPolicySchedule;
907
+ }, {
908
+ eager: false,
909
+ nullable: true,
910
+ onDelete: "CASCADE",
911
+ orphanedRowAction: "nullify",
912
+ }),
913
+ JoinColumn({ name: "onCallDutyPolicyScheduleId" }),
914
+ __metadata("design:type", OnCallDutyPolicySchedule)
915
+ ], WebhookLog.prototype, "onCallDutyPolicySchedule", void 0);
916
+ __decorate([
917
+ ColumnAccessControl({
918
+ create: [],
919
+ read: [
920
+ Permission.ProjectOwner,
921
+ Permission.ProjectAdmin,
922
+ Permission.ProjectMember,
923
+ Permission.Viewer,
924
+ Permission.ReadWebhookLog,
925
+ Permission.ReadAllProjectResources,
926
+ ],
927
+ update: [],
928
+ }),
929
+ Index(),
930
+ TableColumn({
931
+ type: TableColumnType.ObjectID,
932
+ required: false,
933
+ canReadOnRelationQuery: true,
934
+ title: "On-Call Duty Policy Schedule ID",
935
+ description: "ID of On-Call Duty Policy Schedule associated with this request (if any)",
936
+ }),
937
+ Column({
938
+ type: ColumnType.ObjectID,
939
+ nullable: true,
940
+ transformer: ObjectID.getDatabaseTransformer(),
941
+ }),
942
+ __metadata("design:type", ObjectID)
943
+ ], WebhookLog.prototype, "onCallDutyPolicyScheduleId", void 0);
944
+ __decorate([
945
+ ColumnAccessControl({
946
+ create: [],
947
+ read: [],
948
+ update: [],
949
+ }),
950
+ TableColumn({
951
+ manyToOneRelationColumn: "deletedByUserId",
952
+ type: TableColumnType.Entity,
953
+ title: "Deleted by User",
954
+ modelType: User,
955
+ description: "Relation to User who deleted this object (if this object was deleted by a User)",
956
+ }),
957
+ ManyToOne(() => {
958
+ return User;
959
+ }, {
960
+ cascade: false,
961
+ eager: false,
962
+ nullable: true,
963
+ onDelete: "SET NULL",
964
+ orphanedRowAction: "nullify",
965
+ }),
966
+ JoinColumn({ name: "deletedByUserId" }),
967
+ __metadata("design:type", User)
968
+ ], WebhookLog.prototype, "deletedByUser", void 0);
969
+ __decorate([
970
+ ColumnAccessControl({
971
+ create: [],
972
+ read: [],
973
+ update: [],
974
+ }),
975
+ TableColumn({
976
+ type: TableColumnType.ObjectID,
977
+ title: "Deleted by User ID",
978
+ description: "User ID who deleted this object (if this object was deleted by a User)",
979
+ }),
980
+ Column({
981
+ type: ColumnType.ObjectID,
982
+ nullable: true,
983
+ transformer: ObjectID.getDatabaseTransformer(),
984
+ }),
985
+ __metadata("design:type", ObjectID)
986
+ ], WebhookLog.prototype, "deletedByUserId", void 0);
987
+ WebhookLog = __decorate([
988
+ EnableDocumentation(),
989
+ TenantColumn("projectId"),
990
+ TableAccessControl({
991
+ create: [],
992
+ read: [
993
+ Permission.ProjectOwner,
994
+ Permission.ProjectAdmin,
995
+ Permission.ProjectMember,
996
+ Permission.Viewer,
997
+ Permission.ReadWebhookLog,
998
+ Permission.ReadAllProjectResources,
999
+ ],
1000
+ delete: [],
1001
+ update: [],
1002
+ }),
1003
+ CrudApiEndpoint(new Route("/webhook-log")),
1004
+ Entity({
1005
+ name: "WebhookLog",
1006
+ }),
1007
+ EnableWorkflow({
1008
+ create: true,
1009
+ delete: false,
1010
+ update: false,
1011
+ }),
1012
+ TableMetadata({
1013
+ tableName: "WebhookLog",
1014
+ singularName: "Webhook Log",
1015
+ pluralName: "Webhook Logs",
1016
+ icon: IconProp.Webhook,
1017
+ tableDescription: "Logs of all the outbound Webhook requests sent for this project.",
1018
+ })
1019
+ ], WebhookLog);
1020
+ export default WebhookLog;
1021
+ //# sourceMappingURL=WebhookLog.js.map