@oneuptime/common 7.0.4877 → 7.0.4892
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.
- package/Models/DatabaseModels/Incident.ts +55 -9
- package/Models/DatabaseModels/IncidentPublicNote.ts +54 -9
- package/Models/DatabaseModels/IncidentStateTimeline.ts +55 -9
- package/Models/DatabaseModels/Index.ts +0 -2
- package/Models/DatabaseModels/ProjectUser.ts +2 -2
- package/Models/DatabaseModels/ScheduledMaintenance.ts +55 -9
- package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +54 -9
- package/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.ts +55 -9
- package/Models/DatabaseModels/StatusPage.ts +10 -0
- package/Models/DatabaseModels/StatusPageAnnouncement.ts +52 -7
- package/Server/Infrastructure/Postgres/SchemaMigrations/1754412708044-MigrationName.ts +149 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1754415281937-MigrationName.ts +149 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1754484441975-UpdateSubscriberNotificationStatusToEnum.ts +249 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1754484441976-RenameSubscriberNotificationFailedReasonToStatusMessage.ts +56 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
- package/Server/Services/DatabaseService.ts +5 -0
- package/Server/Services/IncidentPublicNoteService.ts +16 -0
- package/Server/Services/IncidentService.ts +44 -1
- package/Server/Services/IncidentStateTimelineService.ts +18 -1
- package/Server/Services/ScheduledMaintenancePublicNoteService.ts +16 -0
- package/Server/Services/ScheduledMaintenanceService.ts +48 -4
- package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +14 -1
- package/Server/Services/StatusPageAnnouncementService.ts +46 -0
- package/Types/StatusPage/StatusPageSubscriberNotificationStatus.ts +9 -0
- package/UI/Components/Charts/ChartLibrary/BarChart/BarChart.tsx +991 -0
- package/UI/Components/Charts/ChartLibrary/SparkChart/SparkChart.tsx +367 -0
- package/UI/Components/Checkbox/CheckboxViewer.tsx +7 -18
- package/UI/Components/IconText/IconText.tsx +91 -0
- package/UI/Components/IconText/Index.ts +3 -0
- package/UI/Components/Modal/ConfirmModal.tsx +1 -1
- package/build/dist/Models/DatabaseModels/Incident.js +56 -11
- package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +56 -11
- package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js +56 -11
- package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Index.js +0 -1
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectUser.js +2 -2
- package/build/dist/Models/DatabaseModels/ProjectUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +56 -11
- package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +56 -11
- package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js +56 -11
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPage.js +10 -0
- package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +54 -9
- package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754412708044-MigrationName.js +56 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754412708044-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754415281937-MigrationName.js +56 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754415281937-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754484441975-UpdateSubscriberNotificationStatusToEnum.js +108 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754484441975-UpdateSubscriberNotificationStatusToEnum.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754484441976-RenameSubscriberNotificationFailedReasonToStatusMessage.js +24 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1754484441976-RenameSubscriberNotificationFailedReasonToStatusMessage.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Services/DatabaseService.js +4 -0
- package/build/dist/Server/Services/DatabaseService.js.map +1 -1
- package/build/dist/Server/Services/IncidentPublicNoteService.js +12 -0
- package/build/dist/Server/Services/IncidentPublicNoteService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +34 -1
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/IncidentStateTimelineService.js +16 -1
- package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js +12 -0
- package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceService.js +38 -2
- package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +14 -1
- package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageAnnouncementService.js +37 -0
- package/build/dist/Server/Services/StatusPageAnnouncementService.js.map +1 -1
- package/build/dist/Types/StatusPage/StatusPageSubscriberNotificationStatus.js +10 -0
- package/build/dist/Types/StatusPage/StatusPageSubscriberNotificationStatus.js.map +1 -0
- package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js +436 -0
- package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js.map +1 -0
- package/build/dist/UI/Components/Charts/ChartLibrary/SparkChart/SparkChart.js +99 -0
- package/build/dist/UI/Components/Charts/ChartLibrary/SparkChart/SparkChart.js.map +1 -0
- package/build/dist/UI/Components/Checkbox/CheckboxViewer.js +3 -5
- package/build/dist/UI/Components/Checkbox/CheckboxViewer.js.map +1 -1
- package/build/dist/UI/Components/IconText/IconText.js +38 -0
- package/build/dist/UI/Components/IconText/IconText.js.map +1 -0
- package/build/dist/UI/Components/IconText/Index.js +3 -0
- package/build/dist/UI/Components/IconText/Index.js.map +1 -0
- package/build/dist/UI/Components/Modal/ConfirmModal.js +1 -1
- package/build/dist/UI/Components/Modal/ConfirmModal.js.map +1 -1
- package/package.json +1 -1
|
@@ -27,6 +27,7 @@ import IconProp from "../../Types/Icon/IconProp";
|
|
|
27
27
|
import { JSONObject } from "../../Types/JSON";
|
|
28
28
|
import ObjectID from "../../Types/ObjectID";
|
|
29
29
|
import Permission from "../../Types/Permission";
|
|
30
|
+
import StatusPageSubscriberNotificationStatus from "../../Types/StatusPage/StatusPageSubscriberNotificationStatus";
|
|
30
31
|
import {
|
|
31
32
|
Column,
|
|
32
33
|
Entity,
|
|
@@ -733,29 +734,74 @@ export default class Incident extends BaseModel {
|
|
|
733
734
|
public changeMonitorStatusToId?: ObjectID = undefined;
|
|
734
735
|
|
|
735
736
|
@ColumnAccessControl({
|
|
736
|
-
create: [
|
|
737
|
+
create: [
|
|
738
|
+
Permission.ProjectOwner,
|
|
739
|
+
Permission.ProjectAdmin,
|
|
740
|
+
Permission.ProjectMember,
|
|
741
|
+
Permission.CreateProjectIncident,
|
|
742
|
+
],
|
|
737
743
|
read: [
|
|
738
744
|
Permission.ProjectOwner,
|
|
739
745
|
Permission.ProjectAdmin,
|
|
740
746
|
Permission.ProjectMember,
|
|
741
747
|
Permission.ReadProjectIncident,
|
|
742
748
|
],
|
|
743
|
-
update: [
|
|
749
|
+
update: [
|
|
750
|
+
Permission.ProjectOwner,
|
|
751
|
+
Permission.ProjectAdmin,
|
|
752
|
+
Permission.ProjectMember,
|
|
753
|
+
Permission.EditProjectIncident,
|
|
754
|
+
],
|
|
744
755
|
})
|
|
745
756
|
@TableColumn({
|
|
746
757
|
isDefaultValueColumn: true,
|
|
747
758
|
computed: true,
|
|
748
759
|
hideColumnInDocumentation: true,
|
|
749
|
-
type: TableColumnType.
|
|
750
|
-
title: "
|
|
751
|
-
description:
|
|
752
|
-
|
|
760
|
+
type: TableColumnType.ShortText,
|
|
761
|
+
title: "Subscriber Notification Status",
|
|
762
|
+
description:
|
|
763
|
+
"Status of notification sent to subscribers about this incident",
|
|
764
|
+
defaultValue: StatusPageSubscriberNotificationStatus.Pending,
|
|
753
765
|
})
|
|
754
766
|
@Column({
|
|
755
|
-
type: ColumnType.
|
|
756
|
-
default:
|
|
767
|
+
type: ColumnType.ShortText,
|
|
768
|
+
default: StatusPageSubscriberNotificationStatus.Pending,
|
|
769
|
+
})
|
|
770
|
+
public subscriberNotificationStatusOnIncidentCreated?: StatusPageSubscriberNotificationStatus =
|
|
771
|
+
undefined;
|
|
772
|
+
|
|
773
|
+
@ColumnAccessControl({
|
|
774
|
+
create: [
|
|
775
|
+
Permission.ProjectOwner,
|
|
776
|
+
Permission.ProjectAdmin,
|
|
777
|
+
Permission.ProjectMember,
|
|
778
|
+
Permission.CreateProjectIncident,
|
|
779
|
+
],
|
|
780
|
+
read: [
|
|
781
|
+
Permission.ProjectOwner,
|
|
782
|
+
Permission.ProjectAdmin,
|
|
783
|
+
Permission.ProjectMember,
|
|
784
|
+
Permission.ReadProjectIncident,
|
|
785
|
+
],
|
|
786
|
+
update: [
|
|
787
|
+
Permission.ProjectOwner,
|
|
788
|
+
Permission.ProjectAdmin,
|
|
789
|
+
Permission.ProjectMember,
|
|
790
|
+
Permission.EditProjectIncident,
|
|
791
|
+
],
|
|
792
|
+
})
|
|
793
|
+
@TableColumn({
|
|
794
|
+
type: TableColumnType.VeryLongText,
|
|
795
|
+
title: "Notification Status Message",
|
|
796
|
+
description:
|
|
797
|
+
"Status message for subscriber notifications - includes success messages, failure reasons, or skip reasons",
|
|
798
|
+
required: false,
|
|
799
|
+
})
|
|
800
|
+
@Column({
|
|
801
|
+
type: ColumnType.VeryLongText,
|
|
802
|
+
nullable: true,
|
|
757
803
|
})
|
|
758
|
-
public
|
|
804
|
+
public subscriberNotificationStatusMessage?: string = undefined;
|
|
759
805
|
|
|
760
806
|
@ColumnAccessControl({
|
|
761
807
|
create: [
|
|
@@ -17,6 +17,7 @@ import TenantColumn from "../../Types/Database/TenantColumn";
|
|
|
17
17
|
import IconProp from "../../Types/Icon/IconProp";
|
|
18
18
|
import ObjectID from "../../Types/ObjectID";
|
|
19
19
|
import Permission from "../../Types/Permission";
|
|
20
|
+
import StatusPageSubscriberNotificationStatus from "../../Types/StatusPage/StatusPageSubscriberNotificationStatus";
|
|
20
21
|
import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
|
|
21
22
|
|
|
22
23
|
@EnableDocumentation()
|
|
@@ -341,29 +342,73 @@ export default class IncidentPublicNote extends BaseModel {
|
|
|
341
342
|
public note?: string = undefined;
|
|
342
343
|
|
|
343
344
|
@ColumnAccessControl({
|
|
344
|
-
create: [
|
|
345
|
+
create: [
|
|
346
|
+
Permission.ProjectOwner,
|
|
347
|
+
Permission.ProjectAdmin,
|
|
348
|
+
Permission.ProjectMember,
|
|
349
|
+
Permission.CreateIncidentPublicNote,
|
|
350
|
+
],
|
|
345
351
|
read: [
|
|
346
352
|
Permission.ProjectOwner,
|
|
347
353
|
Permission.ProjectAdmin,
|
|
348
354
|
Permission.ProjectMember,
|
|
349
355
|
Permission.ReadIncidentPublicNote,
|
|
350
356
|
],
|
|
351
|
-
update: [
|
|
357
|
+
update: [
|
|
358
|
+
Permission.ProjectOwner,
|
|
359
|
+
Permission.ProjectAdmin,
|
|
360
|
+
Permission.ProjectMember,
|
|
361
|
+
Permission.EditIncidentPublicNote,
|
|
362
|
+
],
|
|
352
363
|
})
|
|
353
364
|
@TableColumn({
|
|
354
365
|
isDefaultValueColumn: true,
|
|
355
366
|
computed: true,
|
|
356
367
|
hideColumnInDocumentation: true,
|
|
357
|
-
type: TableColumnType.
|
|
358
|
-
title: "
|
|
359
|
-
description: "
|
|
360
|
-
defaultValue:
|
|
368
|
+
type: TableColumnType.ShortText,
|
|
369
|
+
title: "Subscriber Notification Status",
|
|
370
|
+
description: "Status of notification sent to subscribers about this note",
|
|
371
|
+
defaultValue: StatusPageSubscriberNotificationStatus.Pending,
|
|
361
372
|
})
|
|
362
373
|
@Column({
|
|
363
|
-
type: ColumnType.
|
|
364
|
-
default:
|
|
374
|
+
type: ColumnType.ShortText,
|
|
375
|
+
default: StatusPageSubscriberNotificationStatus.Pending,
|
|
376
|
+
})
|
|
377
|
+
public subscriberNotificationStatusOnNoteCreated?: StatusPageSubscriberNotificationStatus =
|
|
378
|
+
undefined;
|
|
379
|
+
|
|
380
|
+
@ColumnAccessControl({
|
|
381
|
+
create: [
|
|
382
|
+
Permission.ProjectOwner,
|
|
383
|
+
Permission.ProjectAdmin,
|
|
384
|
+
Permission.ProjectMember,
|
|
385
|
+
Permission.CreateIncidentPublicNote,
|
|
386
|
+
],
|
|
387
|
+
read: [
|
|
388
|
+
Permission.ProjectOwner,
|
|
389
|
+
Permission.ProjectAdmin,
|
|
390
|
+
Permission.ProjectMember,
|
|
391
|
+
Permission.ReadIncidentPublicNote,
|
|
392
|
+
],
|
|
393
|
+
update: [
|
|
394
|
+
Permission.ProjectOwner,
|
|
395
|
+
Permission.ProjectAdmin,
|
|
396
|
+
Permission.ProjectMember,
|
|
397
|
+
Permission.EditIncidentPublicNote,
|
|
398
|
+
],
|
|
399
|
+
})
|
|
400
|
+
@TableColumn({
|
|
401
|
+
type: TableColumnType.VeryLongText,
|
|
402
|
+
title: "Notification Status Message",
|
|
403
|
+
description:
|
|
404
|
+
"Status message for subscriber notifications - includes success messages, failure reasons, or skip reasons",
|
|
405
|
+
required: false,
|
|
406
|
+
})
|
|
407
|
+
@Column({
|
|
408
|
+
type: ColumnType.VeryLongText,
|
|
409
|
+
nullable: true,
|
|
365
410
|
})
|
|
366
|
-
public
|
|
411
|
+
public subscriberNotificationStatusMessage?: string = undefined;
|
|
367
412
|
|
|
368
413
|
@ColumnAccessControl({
|
|
369
414
|
create: [
|
|
@@ -19,6 +19,7 @@ import IconProp from "../../Types/Icon/IconProp";
|
|
|
19
19
|
import { JSONObject } from "../../Types/JSON";
|
|
20
20
|
import ObjectID from "../../Types/ObjectID";
|
|
21
21
|
import Permission from "../../Types/Permission";
|
|
22
|
+
import StatusPageSubscriberNotificationStatus from "../../Types/StatusPage/StatusPageSubscriberNotificationStatus";
|
|
22
23
|
import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
|
|
23
24
|
|
|
24
25
|
@EnableDocumentation()
|
|
@@ -391,29 +392,74 @@ export default class IncidentStateTimeline extends BaseModel {
|
|
|
391
392
|
public incidentStateId?: ObjectID = undefined;
|
|
392
393
|
|
|
393
394
|
@ColumnAccessControl({
|
|
394
|
-
create: [
|
|
395
|
+
create: [
|
|
396
|
+
Permission.ProjectOwner,
|
|
397
|
+
Permission.ProjectAdmin,
|
|
398
|
+
Permission.ProjectMember,
|
|
399
|
+
Permission.CreateIncidentStateTimeline,
|
|
400
|
+
],
|
|
395
401
|
read: [
|
|
396
402
|
Permission.ProjectOwner,
|
|
397
403
|
Permission.ProjectAdmin,
|
|
398
404
|
Permission.ProjectMember,
|
|
399
405
|
Permission.ReadIncidentStateTimeline,
|
|
400
406
|
],
|
|
401
|
-
update: [
|
|
407
|
+
update: [
|
|
408
|
+
Permission.ProjectOwner,
|
|
409
|
+
Permission.ProjectAdmin,
|
|
410
|
+
Permission.ProjectMember,
|
|
411
|
+
Permission.EditIncidentStateTimeline,
|
|
412
|
+
],
|
|
402
413
|
})
|
|
403
414
|
@TableColumn({
|
|
404
415
|
isDefaultValueColumn: true,
|
|
405
416
|
computed: true,
|
|
406
417
|
hideColumnInDocumentation: true,
|
|
407
|
-
type: TableColumnType.
|
|
408
|
-
title: "
|
|
409
|
-
description:
|
|
410
|
-
|
|
418
|
+
type: TableColumnType.ShortText,
|
|
419
|
+
title: "Subscriber Notification Status",
|
|
420
|
+
description:
|
|
421
|
+
"Status of notification sent to subscribers about this incident state change",
|
|
422
|
+
defaultValue: StatusPageSubscriberNotificationStatus.Pending,
|
|
411
423
|
})
|
|
412
424
|
@Column({
|
|
413
|
-
type: ColumnType.
|
|
414
|
-
default:
|
|
425
|
+
type: ColumnType.ShortText,
|
|
426
|
+
default: StatusPageSubscriberNotificationStatus.Pending,
|
|
427
|
+
})
|
|
428
|
+
public subscriberNotificationStatus?: StatusPageSubscriberNotificationStatus =
|
|
429
|
+
undefined;
|
|
430
|
+
|
|
431
|
+
@ColumnAccessControl({
|
|
432
|
+
create: [
|
|
433
|
+
Permission.ProjectOwner,
|
|
434
|
+
Permission.ProjectAdmin,
|
|
435
|
+
Permission.ProjectMember,
|
|
436
|
+
Permission.CreateIncidentPublicNote,
|
|
437
|
+
],
|
|
438
|
+
read: [
|
|
439
|
+
Permission.ProjectOwner,
|
|
440
|
+
Permission.ProjectAdmin,
|
|
441
|
+
Permission.ProjectMember,
|
|
442
|
+
Permission.ReadIncidentStateTimeline,
|
|
443
|
+
],
|
|
444
|
+
update: [
|
|
445
|
+
Permission.ProjectOwner,
|
|
446
|
+
Permission.ProjectAdmin,
|
|
447
|
+
Permission.ProjectMember,
|
|
448
|
+
Permission.EditIncidentStateTimeline,
|
|
449
|
+
],
|
|
450
|
+
})
|
|
451
|
+
@TableColumn({
|
|
452
|
+
type: TableColumnType.VeryLongText,
|
|
453
|
+
title: "Notification Status Message",
|
|
454
|
+
description:
|
|
455
|
+
"Status message for subscriber notifications - includes success messages, failure reasons, or skip reasons",
|
|
456
|
+
required: false,
|
|
457
|
+
})
|
|
458
|
+
@Column({
|
|
459
|
+
type: ColumnType.VeryLongText,
|
|
460
|
+
nullable: true,
|
|
415
461
|
})
|
|
416
|
-
public
|
|
462
|
+
public subscriberNotificationStatusMessage?: string = undefined;
|
|
417
463
|
|
|
418
464
|
@ColumnAccessControl({
|
|
419
465
|
create: [
|
|
@@ -49,8 +49,8 @@ import {
|
|
|
49
49
|
})
|
|
50
50
|
@TableMetadata({
|
|
51
51
|
tableName: "ProjectUser",
|
|
52
|
-
singularName: "User",
|
|
53
|
-
pluralName: "Users",
|
|
52
|
+
singularName: "Project User",
|
|
53
|
+
pluralName: "Project Users",
|
|
54
54
|
icon: IconProp.User,
|
|
55
55
|
tableDescription:
|
|
56
56
|
"This model connects users and teams. This is an internal table. Its a view on TeamMembers table.",
|
|
@@ -25,6 +25,7 @@ import IconProp from "../../Types/Icon/IconProp";
|
|
|
25
25
|
import { JSONObject } from "../../Types/JSON";
|
|
26
26
|
import ObjectID from "../../Types/ObjectID";
|
|
27
27
|
import Permission from "../../Types/Permission";
|
|
28
|
+
import StatusPageSubscriberNotificationStatus from "../../Types/StatusPage/StatusPageSubscriberNotificationStatus";
|
|
28
29
|
import {
|
|
29
30
|
Column,
|
|
30
31
|
Entity,
|
|
@@ -715,29 +716,74 @@ export default class ScheduledMaintenance extends BaseModel {
|
|
|
715
716
|
public endsAt?: Date = undefined;
|
|
716
717
|
|
|
717
718
|
@ColumnAccessControl({
|
|
718
|
-
create: [
|
|
719
|
+
create: [
|
|
720
|
+
Permission.ProjectOwner,
|
|
721
|
+
Permission.ProjectAdmin,
|
|
722
|
+
Permission.ProjectMember,
|
|
723
|
+
Permission.CreateProjectScheduledMaintenance,
|
|
724
|
+
],
|
|
719
725
|
read: [
|
|
720
726
|
Permission.ProjectOwner,
|
|
721
727
|
Permission.ProjectAdmin,
|
|
722
728
|
Permission.ProjectMember,
|
|
723
729
|
Permission.ReadProjectScheduledMaintenance,
|
|
724
730
|
],
|
|
725
|
-
update: [
|
|
731
|
+
update: [
|
|
732
|
+
Permission.ProjectOwner,
|
|
733
|
+
Permission.ProjectAdmin,
|
|
734
|
+
Permission.ProjectMember,
|
|
735
|
+
Permission.EditProjectScheduledMaintenance,
|
|
736
|
+
],
|
|
726
737
|
})
|
|
727
738
|
@TableColumn({
|
|
728
739
|
isDefaultValueColumn: true,
|
|
729
740
|
computed: true,
|
|
730
741
|
hideColumnInDocumentation: true,
|
|
731
|
-
type: TableColumnType.
|
|
732
|
-
title: "
|
|
733
|
-
description:
|
|
734
|
-
|
|
742
|
+
type: TableColumnType.ShortText,
|
|
743
|
+
title: "Subscriber Notification Status On Event Scheduled",
|
|
744
|
+
description:
|
|
745
|
+
"Status of notification sent to subscribers when event was scheduled",
|
|
746
|
+
defaultValue: StatusPageSubscriberNotificationStatus.Pending,
|
|
735
747
|
})
|
|
736
748
|
@Column({
|
|
737
|
-
type: ColumnType.
|
|
738
|
-
default:
|
|
749
|
+
type: ColumnType.ShortText,
|
|
750
|
+
default: StatusPageSubscriberNotificationStatus.Pending,
|
|
751
|
+
})
|
|
752
|
+
public subscriberNotificationStatusOnEventScheduled?: StatusPageSubscriberNotificationStatus =
|
|
753
|
+
undefined;
|
|
754
|
+
|
|
755
|
+
@ColumnAccessControl({
|
|
756
|
+
create: [
|
|
757
|
+
Permission.ProjectOwner,
|
|
758
|
+
Permission.ProjectAdmin,
|
|
759
|
+
Permission.ProjectMember,
|
|
760
|
+
Permission.CreateIncidentPublicNote,
|
|
761
|
+
],
|
|
762
|
+
read: [
|
|
763
|
+
Permission.ProjectOwner,
|
|
764
|
+
Permission.ProjectAdmin,
|
|
765
|
+
Permission.ProjectMember,
|
|
766
|
+
Permission.ReadProjectScheduledMaintenance,
|
|
767
|
+
],
|
|
768
|
+
update: [
|
|
769
|
+
Permission.ProjectOwner,
|
|
770
|
+
Permission.ProjectAdmin,
|
|
771
|
+
Permission.ProjectMember,
|
|
772
|
+
Permission.EditProjectScheduledMaintenance,
|
|
773
|
+
],
|
|
774
|
+
})
|
|
775
|
+
@TableColumn({
|
|
776
|
+
type: TableColumnType.VeryLongText,
|
|
777
|
+
title: "Notification Status Message On Event Scheduled",
|
|
778
|
+
description:
|
|
779
|
+
"Status message for subscriber notifications when event is scheduled - includes success messages, failure reasons, or skip reasons",
|
|
780
|
+
required: false,
|
|
781
|
+
})
|
|
782
|
+
@Column({
|
|
783
|
+
type: ColumnType.VeryLongText,
|
|
784
|
+
nullable: true,
|
|
739
785
|
})
|
|
740
|
-
public
|
|
786
|
+
public subscriberNotificationStatusMessage?: string = undefined;
|
|
741
787
|
|
|
742
788
|
@ColumnAccessControl({
|
|
743
789
|
create: [
|
|
@@ -17,6 +17,7 @@ import TenantColumn from "../../Types/Database/TenantColumn";
|
|
|
17
17
|
import IconProp from "../../Types/Icon/IconProp";
|
|
18
18
|
import ObjectID from "../../Types/ObjectID";
|
|
19
19
|
import Permission from "../../Types/Permission";
|
|
20
|
+
import StatusPageSubscriberNotificationStatus from "../../Types/StatusPage/StatusPageSubscriberNotificationStatus";
|
|
20
21
|
import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
|
|
21
22
|
|
|
22
23
|
@EnableDocumentation()
|
|
@@ -342,29 +343,73 @@ export default class ScheduledMaintenancePublicNote extends BaseModel {
|
|
|
342
343
|
public note?: string = undefined;
|
|
343
344
|
|
|
344
345
|
@ColumnAccessControl({
|
|
345
|
-
create: [
|
|
346
|
+
create: [
|
|
347
|
+
Permission.ProjectOwner,
|
|
348
|
+
Permission.ProjectAdmin,
|
|
349
|
+
Permission.ProjectMember,
|
|
350
|
+
Permission.CreateScheduledMaintenancePublicNote,
|
|
351
|
+
],
|
|
346
352
|
read: [
|
|
347
353
|
Permission.ProjectOwner,
|
|
348
354
|
Permission.ProjectAdmin,
|
|
349
355
|
Permission.ProjectMember,
|
|
350
356
|
Permission.ReadScheduledMaintenancePublicNote,
|
|
351
357
|
],
|
|
352
|
-
update: [
|
|
358
|
+
update: [
|
|
359
|
+
Permission.ProjectOwner,
|
|
360
|
+
Permission.ProjectAdmin,
|
|
361
|
+
Permission.ProjectMember,
|
|
362
|
+
Permission.EditScheduledMaintenancePublicNote,
|
|
363
|
+
],
|
|
353
364
|
})
|
|
354
365
|
@TableColumn({
|
|
355
366
|
isDefaultValueColumn: true,
|
|
356
367
|
computed: true,
|
|
357
368
|
hideColumnInDocumentation: true,
|
|
358
|
-
type: TableColumnType.
|
|
359
|
-
title: "
|
|
360
|
-
description: "
|
|
361
|
-
defaultValue:
|
|
369
|
+
type: TableColumnType.ShortText,
|
|
370
|
+
title: "Subscriber Notification Status",
|
|
371
|
+
description: "Status of notification sent to subscribers about this note",
|
|
372
|
+
defaultValue: StatusPageSubscriberNotificationStatus.Pending,
|
|
362
373
|
})
|
|
363
374
|
@Column({
|
|
364
|
-
type: ColumnType.
|
|
365
|
-
default:
|
|
375
|
+
type: ColumnType.ShortText,
|
|
376
|
+
default: StatusPageSubscriberNotificationStatus.Pending,
|
|
377
|
+
})
|
|
378
|
+
public subscriberNotificationStatusOnNoteCreated?: StatusPageSubscriberNotificationStatus =
|
|
379
|
+
undefined;
|
|
380
|
+
|
|
381
|
+
@ColumnAccessControl({
|
|
382
|
+
create: [
|
|
383
|
+
Permission.ProjectOwner,
|
|
384
|
+
Permission.ProjectAdmin,
|
|
385
|
+
Permission.ProjectMember,
|
|
386
|
+
Permission.CreateScheduledMaintenancePublicNote,
|
|
387
|
+
],
|
|
388
|
+
read: [
|
|
389
|
+
Permission.ProjectOwner,
|
|
390
|
+
Permission.ProjectAdmin,
|
|
391
|
+
Permission.ProjectMember,
|
|
392
|
+
Permission.ReadScheduledMaintenancePublicNote,
|
|
393
|
+
],
|
|
394
|
+
update: [
|
|
395
|
+
Permission.ProjectOwner,
|
|
396
|
+
Permission.ProjectAdmin,
|
|
397
|
+
Permission.ProjectMember,
|
|
398
|
+
Permission.EditScheduledMaintenancePublicNote,
|
|
399
|
+
],
|
|
400
|
+
})
|
|
401
|
+
@TableColumn({
|
|
402
|
+
type: TableColumnType.VeryLongText,
|
|
403
|
+
title: "Notification Status Message",
|
|
404
|
+
description:
|
|
405
|
+
"Status message for subscriber notifications - includes success messages, failure reasons, or skip reasons",
|
|
406
|
+
required: false,
|
|
407
|
+
})
|
|
408
|
+
@Column({
|
|
409
|
+
type: ColumnType.VeryLongText,
|
|
410
|
+
nullable: true,
|
|
366
411
|
})
|
|
367
|
-
public
|
|
412
|
+
public subscriberNotificationStatusMessage?: string = undefined;
|
|
368
413
|
|
|
369
414
|
@ColumnAccessControl({
|
|
370
415
|
create: [
|
|
@@ -18,6 +18,7 @@ import TenantColumn from "../../Types/Database/TenantColumn";
|
|
|
18
18
|
import IconProp from "../../Types/Icon/IconProp";
|
|
19
19
|
import ObjectID from "../../Types/ObjectID";
|
|
20
20
|
import Permission from "../../Types/Permission";
|
|
21
|
+
import StatusPageSubscriberNotificationStatus from "../../Types/StatusPage/StatusPageSubscriberNotificationStatus";
|
|
21
22
|
import { Column, Entity, Index, JoinColumn, ManyToOne } from "typeorm";
|
|
22
23
|
|
|
23
24
|
@EnableDocumentation()
|
|
@@ -388,29 +389,74 @@ export default class ScheduledMaintenanceStateTimeline extends BaseModel {
|
|
|
388
389
|
public scheduledMaintenanceStateId?: ObjectID = undefined;
|
|
389
390
|
|
|
390
391
|
@ColumnAccessControl({
|
|
391
|
-
create: [
|
|
392
|
+
create: [
|
|
393
|
+
Permission.ProjectOwner,
|
|
394
|
+
Permission.ProjectAdmin,
|
|
395
|
+
Permission.ProjectMember,
|
|
396
|
+
Permission.CreateScheduledMaintenanceStateTimeline,
|
|
397
|
+
],
|
|
392
398
|
read: [
|
|
393
399
|
Permission.ProjectOwner,
|
|
394
400
|
Permission.ProjectAdmin,
|
|
395
401
|
Permission.ProjectMember,
|
|
396
402
|
Permission.ReadScheduledMaintenanceStateTimeline,
|
|
397
403
|
],
|
|
398
|
-
update: [
|
|
404
|
+
update: [
|
|
405
|
+
Permission.ProjectOwner,
|
|
406
|
+
Permission.ProjectAdmin,
|
|
407
|
+
Permission.ProjectMember,
|
|
408
|
+
Permission.EditScheduledMaintenanceStateTimeline,
|
|
409
|
+
],
|
|
399
410
|
})
|
|
400
411
|
@TableColumn({
|
|
401
412
|
isDefaultValueColumn: true,
|
|
402
413
|
computed: true,
|
|
403
414
|
hideColumnInDocumentation: true,
|
|
404
|
-
type: TableColumnType.
|
|
405
|
-
title: "
|
|
406
|
-
description:
|
|
407
|
-
|
|
415
|
+
type: TableColumnType.ShortText,
|
|
416
|
+
title: "Subscriber Notification Status",
|
|
417
|
+
description:
|
|
418
|
+
"Status of notification sent to subscribers about this scheduled maintenance state change",
|
|
419
|
+
defaultValue: StatusPageSubscriberNotificationStatus.Pending,
|
|
408
420
|
})
|
|
409
421
|
@Column({
|
|
410
|
-
type: ColumnType.
|
|
411
|
-
default:
|
|
422
|
+
type: ColumnType.ShortText,
|
|
423
|
+
default: StatusPageSubscriberNotificationStatus.Pending,
|
|
424
|
+
})
|
|
425
|
+
public subscriberNotificationStatus?: StatusPageSubscriberNotificationStatus =
|
|
426
|
+
undefined;
|
|
427
|
+
|
|
428
|
+
@ColumnAccessControl({
|
|
429
|
+
create: [
|
|
430
|
+
Permission.ProjectOwner,
|
|
431
|
+
Permission.ProjectAdmin,
|
|
432
|
+
Permission.ProjectMember,
|
|
433
|
+
Permission.CreateScheduledMaintenanceStateTimeline,
|
|
434
|
+
],
|
|
435
|
+
read: [
|
|
436
|
+
Permission.ProjectOwner,
|
|
437
|
+
Permission.ProjectAdmin,
|
|
438
|
+
Permission.ProjectMember,
|
|
439
|
+
Permission.ReadScheduledMaintenanceStateTimeline,
|
|
440
|
+
],
|
|
441
|
+
update: [
|
|
442
|
+
Permission.ProjectOwner,
|
|
443
|
+
Permission.ProjectAdmin,
|
|
444
|
+
Permission.ProjectMember,
|
|
445
|
+
Permission.EditScheduledMaintenanceStateTimeline,
|
|
446
|
+
],
|
|
447
|
+
})
|
|
448
|
+
@TableColumn({
|
|
449
|
+
type: TableColumnType.VeryLongText,
|
|
450
|
+
title: "Notification Status Message",
|
|
451
|
+
description:
|
|
452
|
+
"Status message for subscriber notifications - includes success messages, failure reasons, or skip reasons",
|
|
453
|
+
required: false,
|
|
454
|
+
})
|
|
455
|
+
@Column({
|
|
456
|
+
type: ColumnType.VeryLongText,
|
|
457
|
+
nullable: true,
|
|
412
458
|
})
|
|
413
|
-
public
|
|
459
|
+
public subscriberNotificationStatusMessage?: string = undefined;
|
|
414
460
|
|
|
415
461
|
@ColumnAccessControl({
|
|
416
462
|
create: [
|
|
@@ -1490,6 +1490,7 @@ export default class StatusPage extends BaseModel {
|
|
|
1490
1490
|
type: TableColumnType.Number,
|
|
1491
1491
|
required: true,
|
|
1492
1492
|
isDefaultValueColumn: true,
|
|
1493
|
+
defaultValue: 14,
|
|
1493
1494
|
title: "Show incident history in days",
|
|
1494
1495
|
description:
|
|
1495
1496
|
"How many days of incident history should be shown on the status page (in days)?",
|
|
@@ -1526,6 +1527,7 @@ export default class StatusPage extends BaseModel {
|
|
|
1526
1527
|
type: TableColumnType.Number,
|
|
1527
1528
|
required: true,
|
|
1528
1529
|
isDefaultValueColumn: true,
|
|
1530
|
+
defaultValue: 14,
|
|
1529
1531
|
title: "Show announcement history in days",
|
|
1530
1532
|
description:
|
|
1531
1533
|
"How many days of announcement history should be shown on the status page (in days)?",
|
|
@@ -1562,6 +1564,7 @@ export default class StatusPage extends BaseModel {
|
|
|
1562
1564
|
type: TableColumnType.Number,
|
|
1563
1565
|
required: true,
|
|
1564
1566
|
isDefaultValueColumn: true,
|
|
1567
|
+
defaultValue: 14,
|
|
1565
1568
|
title: "Show scheduled event history in days",
|
|
1566
1569
|
description:
|
|
1567
1570
|
"How many days of scheduled event history should be shown on the status page (in days)?",
|
|
@@ -1633,6 +1636,7 @@ export default class StatusPage extends BaseModel {
|
|
|
1633
1636
|
type: TableColumnType.Boolean,
|
|
1634
1637
|
title: "Hide Powered By OneUptime Branding",
|
|
1635
1638
|
description: "Hide Powered By OneUptime Branding?",
|
|
1639
|
+
defaultValue: false,
|
|
1636
1640
|
})
|
|
1637
1641
|
@Column({
|
|
1638
1642
|
type: ColumnType.Boolean,
|
|
@@ -1788,6 +1792,7 @@ export default class StatusPage extends BaseModel {
|
|
|
1788
1792
|
type: TableColumnType.Boolean,
|
|
1789
1793
|
title: "Is Report Enabled",
|
|
1790
1794
|
description: "Is Report Enabled for this Status Page?",
|
|
1795
|
+
defaultValue: false,
|
|
1791
1796
|
})
|
|
1792
1797
|
@Column({
|
|
1793
1798
|
type: ColumnType.Boolean,
|
|
@@ -1971,6 +1976,7 @@ export default class StatusPage extends BaseModel {
|
|
|
1971
1976
|
type: TableColumnType.Boolean,
|
|
1972
1977
|
title: "Show Overall Uptime Percent on Status Page",
|
|
1973
1978
|
description: "Show Overall Uptime Percent on Status Page?",
|
|
1979
|
+
defaultValue: false,
|
|
1974
1980
|
})
|
|
1975
1981
|
@Column({
|
|
1976
1982
|
type: ColumnType.Boolean,
|
|
@@ -2109,6 +2115,7 @@ export default class StatusPage extends BaseModel {
|
|
|
2109
2115
|
type: TableColumnType.Boolean,
|
|
2110
2116
|
title: "Show Incidents on Status Page",
|
|
2111
2117
|
description: "Show Incidents on Status Page?",
|
|
2118
|
+
defaultValue: true,
|
|
2112
2119
|
})
|
|
2113
2120
|
@Column({
|
|
2114
2121
|
type: ColumnType.Boolean,
|
|
@@ -2147,6 +2154,7 @@ export default class StatusPage extends BaseModel {
|
|
|
2147
2154
|
type: TableColumnType.Boolean,
|
|
2148
2155
|
title: "Show Announcements on Status Page",
|
|
2149
2156
|
description: "Show Announcements on Status Page?",
|
|
2157
|
+
defaultValue: true,
|
|
2150
2158
|
})
|
|
2151
2159
|
@Column({
|
|
2152
2160
|
type: ColumnType.Boolean,
|
|
@@ -2185,6 +2193,7 @@ export default class StatusPage extends BaseModel {
|
|
|
2185
2193
|
type: TableColumnType.Boolean,
|
|
2186
2194
|
title: "Show Scheduled Maintenance Events on Status Page",
|
|
2187
2195
|
description: "Show Scheduled Maintenance Events on Status Page?",
|
|
2196
|
+
defaultValue: true,
|
|
2188
2197
|
})
|
|
2189
2198
|
@Column({
|
|
2190
2199
|
type: ColumnType.Boolean,
|
|
@@ -2223,6 +2232,7 @@ export default class StatusPage extends BaseModel {
|
|
|
2223
2232
|
type: TableColumnType.Boolean,
|
|
2224
2233
|
title: "Show Subscriber Page on Status Page",
|
|
2225
2234
|
description: "Show Subscriber Page on Status Page?",
|
|
2235
|
+
defaultValue: true,
|
|
2226
2236
|
})
|
|
2227
2237
|
@Column({
|
|
2228
2238
|
type: ColumnType.Boolean,
|