@oneuptime/common 8.0.5311 → 8.0.5326

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