@oneuptime/common 7.0.3579 → 7.0.3589

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 (25) hide show
  1. package/Models/DatabaseModels/StatusPageAnnouncement.ts +6 -1
  2. package/Server/Services/AlertService.ts +106 -44
  3. package/Server/Services/ScheduledMaintenanceService.ts +200 -19
  4. package/Types/Events/Recurring.ts +4 -0
  5. package/UI/Components/Forms/BasicForm.tsx +28 -6
  6. package/UI/Components/Forms/BasicModelForm.tsx +2 -5
  7. package/UI/Components/Forms/ModelForm.tsx +2 -6
  8. package/UI/Components/ModelTable/BaseModelTable.tsx +3 -1
  9. package/UI/Components/ModelTable/ModelTable.tsx +1 -0
  10. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +6 -1
  11. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -1
  12. package/build/dist/Server/Services/AlertService.js +85 -40
  13. package/build/dist/Server/Services/AlertService.js.map +1 -1
  14. package/build/dist/Server/Services/ScheduledMaintenanceService.js +159 -16
  15. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  16. package/build/dist/Types/Events/Recurring.js +3 -0
  17. package/build/dist/Types/Events/Recurring.js.map +1 -1
  18. package/build/dist/UI/Components/Forms/BasicForm.js +18 -1
  19. package/build/dist/UI/Components/Forms/BasicForm.js.map +1 -1
  20. package/build/dist/UI/Components/Forms/BasicModelForm.js.map +1 -1
  21. package/build/dist/UI/Components/Forms/ModelForm.js.map +1 -1
  22. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  23. package/build/dist/UI/Components/ModelTable/ModelTable.js +1 -0
  24. package/build/dist/UI/Components/ModelTable/ModelTable.js.map +1 -1
  25. package/package.json +2 -2
@@ -164,7 +164,12 @@ export default class StatusPageAnnouncement extends BaseModel {
164
164
  Permission.ProjectMember,
165
165
  Permission.ReadStatusPageAnnouncement,
166
166
  ],
167
- update: [],
167
+ update: [
168
+ Permission.ProjectOwner,
169
+ Permission.ProjectAdmin,
170
+ Permission.ProjectMember,
171
+ Permission.EditStatusPageAnnouncement,
172
+ ],
168
173
  })
169
174
  @TableColumn({
170
175
  required: false,
@@ -41,6 +41,10 @@ import AlertMetricType from "../../Types/Alerts/AlertMetricType";
41
41
  import AlertFeedService from "./AlertFeedService";
42
42
  import { AlertFeedEventType } from "../../Models/DatabaseModels/AlertFeed";
43
43
  import { Gray500, Red500 } from "../../Types/BrandColors";
44
+ import Label from "../../Models/DatabaseModels/Label";
45
+ import LabelService from "./LabelService";
46
+ import AlertSeverity from "../../Models/DatabaseModels/AlertSeverity";
47
+ import AlertSeverityService from "./AlertSeverityService";
44
48
 
45
49
  export class Service extends DatabaseService<Model> {
46
50
  public constructor() {
@@ -492,74 +496,132 @@ ${createdItem.remediationNotes || "No remediation notes provided."}`,
492
496
 
493
497
  if (updatedItemIds.length > 0) {
494
498
  for (const alertId of updatedItemIds) {
499
+ let shouldAddAlertFeed: boolean = false;
500
+ let feedInfoInMarkdown: string = "**Alert was updated.**";
501
+
502
+ const createdByUserId: ObjectID | undefined | null =
503
+ onUpdate.updateBy.props.userId;
504
+
495
505
  if (onUpdate.updateBy.data.title) {
496
506
  // add alert feed.
497
- const createdByUserId: ObjectID | undefined | null =
498
- onUpdate.updateBy.props.userId;
499
507
 
500
- await AlertFeedService.createAlertFeed({
501
- alertId: alertId,
502
- projectId: onUpdate.updateBy.props.tenantId as ObjectID,
503
- alertFeedEventType: AlertFeedEventType.AlertUpdated,
504
- displayColor: Gray500,
505
- feedInfoInMarkdown: `**Alert title was updated.** Here's the new title.
506
-
508
+ feedInfoInMarkdown += `\n\n**Title**:
507
509
  ${onUpdate.updateBy.data.title || "No title provided."}
508
- `,
509
- userId: createdByUserId || undefined,
510
- });
510
+ `;
511
+ shouldAddAlertFeed = true;
511
512
  }
512
513
 
513
514
  if (onUpdate.updateBy.data.rootCause) {
514
- // add alert feed.
515
- const createdByUserId: ObjectID | undefined | null =
516
- onUpdate.updateBy.props.userId;
515
+ if (onUpdate.updateBy.data.title) {
516
+ // add alert feed.
517
517
 
518
- await AlertFeedService.createAlertFeed({
519
- alertId: alertId,
520
- projectId: onUpdate.updateBy.props.tenantId as ObjectID,
521
- alertFeedEventType: AlertFeedEventType.AlertUpdated,
522
- displayColor: Gray500,
523
- feedInfoInMarkdown: `**Alert root cause was updated.** Here's the new root cause.
524
-
518
+ feedInfoInMarkdown += `\n\n**Root Cause**:
525
519
  ${onUpdate.updateBy.data.rootCause || "No root cause provided."}
526
- `,
527
- userId: createdByUserId || undefined,
528
- });
520
+ `;
521
+ shouldAddAlertFeed = true;
522
+ }
529
523
  }
530
524
 
531
525
  if (onUpdate.updateBy.data.description) {
532
526
  // add alert feed.
533
- const createdByUserId: ObjectID | undefined | null =
534
- onUpdate.updateBy.props.userId;
535
527
 
536
- await AlertFeedService.createAlertFeed({
537
- alertId: alertId,
538
- projectId: onUpdate.updateBy.props.tenantId as ObjectID,
539
- alertFeedEventType: AlertFeedEventType.AlertUpdated,
540
- displayColor: Gray500,
541
- feedInfoInMarkdown: `**Alert description was updated.** Here's the new description.
542
-
543
- ${onUpdate.updateBy.data.description || "No description provided."}
544
- `,
545
- userId: createdByUserId || undefined,
546
- });
528
+ feedInfoInMarkdown += `\n\n**Alert Description**:
529
+ ${onUpdate.updateBy.data.description || "No description provided."}
530
+ `;
531
+ shouldAddAlertFeed = true;
547
532
  }
548
533
 
549
534
  if (onUpdate.updateBy.data.remediationNotes) {
550
535
  // add alert feed.
551
- const createdByUserId: ObjectID | undefined | null =
552
- onUpdate.updateBy.props.userId;
553
536
 
537
+ feedInfoInMarkdown += `\n\n**Remediation Notes**:
538
+ ${onUpdate.updateBy.data.remediationNotes || "No remediation notes provided."}
539
+ `;
540
+ shouldAddAlertFeed = true;
541
+ }
542
+
543
+ if (
544
+ onUpdate.updateBy.data.labels &&
545
+ onUpdate.updateBy.data.labels.length > 0 &&
546
+ Array.isArray(onUpdate.updateBy.data.labels)
547
+ ) {
548
+ const labelIds: Array<ObjectID> = (
549
+ onUpdate.updateBy.data.labels as any
550
+ )
551
+ .map((label: Label) => {
552
+ if (label._id) {
553
+ return new ObjectID(label._id?.toString());
554
+ }
555
+
556
+ return null;
557
+ })
558
+ .filter((labelId: ObjectID | null) => {
559
+ return labelId !== null;
560
+ });
561
+
562
+ const labels: Array<Label> = await LabelService.findBy({
563
+ query: {
564
+ _id: QueryHelper.any(labelIds),
565
+ },
566
+ select: {
567
+ name: true,
568
+ },
569
+ limit: LIMIT_PER_PROJECT,
570
+ skip: 0,
571
+ props: {
572
+ isRoot: true,
573
+ },
574
+ });
575
+
576
+ if (labels.length > 0) {
577
+ feedInfoInMarkdown += `\n\n**Labels**:
578
+
579
+ ${labels
580
+ .map((label: Label) => {
581
+ return `- ${label.name}`;
582
+ })
583
+ .join("\n")}
584
+ `;
585
+
586
+ shouldAddAlertFeed = true;
587
+ }
588
+ }
589
+
590
+ if (
591
+ onUpdate.updateBy.data.alertSeverity &&
592
+ (onUpdate.updateBy.data.alertSeverity as any)._id
593
+ ) {
594
+ const alertSeverity: AlertSeverity | null =
595
+ await AlertSeverityService.findOneBy({
596
+ query: {
597
+ _id: new ObjectID(
598
+ (onUpdate.updateBy.data.alertSeverity as any)?._id.toString(),
599
+ ),
600
+ },
601
+ select: {
602
+ name: true,
603
+ },
604
+ props: {
605
+ isRoot: true,
606
+ },
607
+ });
608
+
609
+ if (alertSeverity) {
610
+ feedInfoInMarkdown += `\n\n**Alert Severity**:
611
+ ${alertSeverity.name}
612
+ `;
613
+
614
+ shouldAddAlertFeed = true;
615
+ }
616
+ }
617
+
618
+ if (shouldAddAlertFeed) {
554
619
  await AlertFeedService.createAlertFeed({
555
620
  alertId: alertId,
556
621
  projectId: onUpdate.updateBy.props.tenantId as ObjectID,
557
622
  alertFeedEventType: AlertFeedEventType.AlertUpdated,
558
623
  displayColor: Gray500,
559
- feedInfoInMarkdown: `**Remediation notes were updated.** Here are the new notes.
560
-
561
- ${onUpdate.updateBy.data.remediationNotes || "No remediation notes provided."}
562
- `,
624
+ feedInfoInMarkdown: feedInfoInMarkdown,
563
625
  userId: createdByUserId || undefined,
564
626
  });
565
627
  }
@@ -50,6 +50,8 @@ import StatusPageEventType from "../../Types/StatusPage/StatusPageEventType";
50
50
  import ScheduledMaintenanceFeedService from "./ScheduledMaintenanceFeedService";
51
51
  import { ScheduledMaintenanceFeedEventType } from "../../Models/DatabaseModels/ScheduledMaintenanceFeed";
52
52
  import { Gray500, Red500 } from "../../Types/BrandColors";
53
+ import Label from "../../Models/DatabaseModels/Label";
54
+ import LabelService from "./LabelService";
53
55
 
54
56
  export class Service extends DatabaseService<Model> {
55
57
  public constructor() {
@@ -694,40 +696,219 @@ ${createdItem.description || "No description provided."}
694
696
 
695
697
  if (updatedItemIds.length > 0) {
696
698
  for (const scheduledMaintenanceId of updatedItemIds) {
699
+ let shouldAddScheduledMaintenanceFeed: boolean = false;
700
+ let feedInfoInMarkdown: string =
701
+ "**Scheduled Maintenance was updated.**";
702
+
703
+ const createdByUserId: ObjectID | undefined | null =
704
+ onUpdate.updateBy.props.userId;
705
+
697
706
  if (onUpdate.updateBy.data.title) {
698
707
  // add scheduledMaintenance feed.
699
- const createdByUserId: ObjectID | undefined | null =
700
- onUpdate.updateBy.props.userId;
701
708
 
702
- await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
703
- scheduledMaintenanceId: scheduledMaintenanceId,
704
- projectId: onUpdate.updateBy.props.tenantId as ObjectID,
705
- scheduledMaintenanceFeedEventType:
706
- ScheduledMaintenanceFeedEventType.ScheduledMaintenanceUpdated,
707
- displayColor: Gray500,
708
- feedInfoInMarkdown: `**Scheduled Maintenance title was updated.** Here's the new title.
709
-
709
+ feedInfoInMarkdown += `\n\n**Title**:
710
710
  ${onUpdate.updateBy.data.title || "No title provided."}
711
- `,
712
- userId: createdByUserId || undefined,
713
- });
711
+ `;
712
+ shouldAddScheduledMaintenanceFeed = true;
713
+ }
714
+
715
+ if (onUpdate.updateBy.data.startsAt) {
716
+ // add scheduledMaintenance feed.
717
+
718
+ feedInfoInMarkdown += `\n\n**Starts At**:
719
+ ${OneUptimeDate.getDateAsLocalFormattedString(onUpdate.updateBy.data.startsAt as Date) || "No title provided."}
720
+ `;
721
+ shouldAddScheduledMaintenanceFeed = true;
722
+ }
723
+
724
+ if (onUpdate.updateBy.data.endsAt) {
725
+ // add scheduledMaintenance feed.
726
+
727
+ feedInfoInMarkdown += `\n\n**Ends At**:
728
+ ${OneUptimeDate.getDateAsLocalFormattedString(onUpdate.updateBy.data.endsAt as Date) || "No title provided."}
729
+ `;
730
+ shouldAddScheduledMaintenanceFeed = true;
714
731
  }
715
732
 
716
733
  if (onUpdate.updateBy.data.description) {
717
734
  // add scheduledMaintenance feed.
718
- const createdByUserId: ObjectID | undefined | null =
719
- onUpdate.updateBy.props.userId;
720
735
 
736
+ feedInfoInMarkdown += `\n\n**Scheduled Maintenance Description**:
737
+ ${onUpdate.updateBy.data.description || "No description provided."}
738
+ `;
739
+ shouldAddScheduledMaintenanceFeed = true;
740
+ }
741
+
742
+ if (
743
+ onUpdate.updateBy.data.sendSubscriberNotificationsOnBeforeTheEvent &&
744
+ Array.isArray(
745
+ onUpdate.updateBy.data.sendSubscriberNotificationsOnBeforeTheEvent,
746
+ ) &&
747
+ onUpdate.updateBy.data.sendSubscriberNotificationsOnBeforeTheEvent
748
+ .length > 0
749
+ ) {
750
+ feedInfoInMarkdown += `\n\n**Notify Subscribers Before Event Starts**:
751
+ ${(
752
+ onUpdate.updateBy.data
753
+ .sendSubscriberNotificationsOnBeforeTheEvent as Array<Recurring>
754
+ )
755
+ .map((recurring: Recurring) => {
756
+ return `- ${(recurring as Recurring).toString()}`;
757
+ })
758
+ .join("\n")}
759
+ `;
760
+ shouldAddScheduledMaintenanceFeed = true;
761
+ }
762
+
763
+ if (
764
+ onUpdate.updateBy.data.monitors &&
765
+ onUpdate.updateBy.data.monitors.length > 0 &&
766
+ Array.isArray(onUpdate.updateBy.data.monitors)
767
+ ) {
768
+ const monitorIds: Array<ObjectID> = (
769
+ onUpdate.updateBy.data.monitors as any
770
+ )
771
+ .map((monitor: Label) => {
772
+ if (monitor._id) {
773
+ return new ObjectID(monitor._id?.toString());
774
+ }
775
+
776
+ return null;
777
+ })
778
+ .filter((monitorId: ObjectID | null) => {
779
+ return monitorId !== null;
780
+ });
781
+
782
+ const monitors: Array<Label> = await MonitorService.findBy({
783
+ query: {
784
+ _id: QueryHelper.any(monitorIds),
785
+ },
786
+ select: {
787
+ name: true,
788
+ },
789
+ limit: LIMIT_PER_PROJECT,
790
+ skip: 0,
791
+ props: {
792
+ isRoot: true,
793
+ },
794
+ });
795
+
796
+ if (monitors.length > 0) {
797
+ feedInfoInMarkdown += `\n\n**Resources Affected**:
798
+
799
+ ${monitors
800
+ .map((monitor: Monitor) => {
801
+ return `- ${monitor.name}`;
802
+ })
803
+ .join("\n")}
804
+ `;
805
+
806
+ shouldAddScheduledMaintenanceFeed = true;
807
+ }
808
+ }
809
+
810
+ if (
811
+ onUpdate.updateBy.data.statusPages &&
812
+ onUpdate.updateBy.data.statusPages.length > 0 &&
813
+ Array.isArray(onUpdate.updateBy.data.statusPages)
814
+ ) {
815
+ const statusPageIds: Array<ObjectID> = (
816
+ onUpdate.updateBy.data.statusPages as any
817
+ )
818
+ .map((statusPage: Label) => {
819
+ if (statusPage._id) {
820
+ return new ObjectID(statusPage._id?.toString());
821
+ }
822
+
823
+ return null;
824
+ })
825
+ .filter((statusPageId: ObjectID | null) => {
826
+ return statusPageId !== null;
827
+ });
828
+
829
+ const statusPages: Array<Label> = await StatusPageService.findBy({
830
+ query: {
831
+ _id: QueryHelper.any(statusPageIds),
832
+ },
833
+ select: {
834
+ name: true,
835
+ },
836
+ limit: LIMIT_PER_PROJECT,
837
+ skip: 0,
838
+ props: {
839
+ isRoot: true,
840
+ },
841
+ });
842
+
843
+ if (statusPages.length > 0) {
844
+ feedInfoInMarkdown += `\n\n**Show on these status pages:**:
845
+
846
+ ${statusPages
847
+ .map((statusPage: StatusPage) => {
848
+ return `- ${statusPage.name}`;
849
+ })
850
+ .join("\n")}
851
+ `;
852
+
853
+ shouldAddScheduledMaintenanceFeed = true;
854
+ }
855
+ }
856
+
857
+ if (
858
+ onUpdate.updateBy.data.labels &&
859
+ onUpdate.updateBy.data.labels.length > 0 &&
860
+ Array.isArray(onUpdate.updateBy.data.labels)
861
+ ) {
862
+ const labelIds: Array<ObjectID> = (
863
+ onUpdate.updateBy.data.labels as any
864
+ )
865
+ .map((label: Label) => {
866
+ if (label._id) {
867
+ return new ObjectID(label._id?.toString());
868
+ }
869
+
870
+ return null;
871
+ })
872
+ .filter((labelId: ObjectID | null) => {
873
+ return labelId !== null;
874
+ });
875
+
876
+ const labels: Array<Label> = await LabelService.findBy({
877
+ query: {
878
+ _id: QueryHelper.any(labelIds),
879
+ },
880
+ select: {
881
+ name: true,
882
+ },
883
+ limit: LIMIT_PER_PROJECT,
884
+ skip: 0,
885
+ props: {
886
+ isRoot: true,
887
+ },
888
+ });
889
+
890
+ if (labels.length > 0) {
891
+ feedInfoInMarkdown += `\n\n**Labels**:
892
+
893
+ ${labels
894
+ .map((label: Label) => {
895
+ return `- ${label.name}`;
896
+ })
897
+ .join("\n")}
898
+ `;
899
+
900
+ shouldAddScheduledMaintenanceFeed = true;
901
+ }
902
+ }
903
+
904
+ if (shouldAddScheduledMaintenanceFeed) {
721
905
  await ScheduledMaintenanceFeedService.createScheduledMaintenanceFeed({
722
906
  scheduledMaintenanceId: scheduledMaintenanceId,
723
907
  projectId: onUpdate.updateBy.props.tenantId as ObjectID,
724
908
  scheduledMaintenanceFeedEventType:
725
909
  ScheduledMaintenanceFeedEventType.ScheduledMaintenanceUpdated,
726
910
  displayColor: Gray500,
727
- feedInfoInMarkdown: `**Scheduled Maintenance description was updated.** Here's the new description.
728
-
729
- ${onUpdate.updateBy.data.description || "No description provided."}
730
- `,
911
+ feedInfoInMarkdown: feedInfoInMarkdown,
731
912
  userId: createdByUserId || undefined,
732
913
  });
733
914
  }
@@ -186,6 +186,10 @@ export default class Recurring extends DatabaseProperty {
186
186
  return arrayToReturn;
187
187
  }
188
188
 
189
+ public override toString(): string {
190
+ return `${this.intervalCount} ${this.intervalType}`;
191
+ }
192
+
189
193
  protected static override toDatabase(
190
194
  value: Recurring | Array<Recurring> | FindOperator<Recurring>,
191
195
  ): JSONObject | Array<JSONObject> | null {
@@ -50,6 +50,11 @@ export const DefaultValidateFunction: DefaultValidateFunctionType = (
50
50
  return {};
51
51
  };
52
52
 
53
+ export interface FormSummaryConfig {
54
+ enabled: boolean;
55
+ defaultStepName?: string | undefined;
56
+ }
57
+
53
58
  export interface BaseComponentProps<T> {
54
59
  submitButtonStyleType?: ButtonStyleType | undefined;
55
60
  initialValues?: FormValues<T> | undefined;
@@ -75,11 +80,7 @@ export interface BaseComponentProps<T> {
75
80
  onIsLastFormStep?: undefined | ((isLastFormStep: boolean) => void);
76
81
  onFormValidationErrorChanged?: ((hasError: boolean) => void) | undefined;
77
82
  showSubmitButtonOnlyIfSomethingChanged?: boolean | undefined;
78
- summary?:
79
- | {
80
- enabled?: boolean;
81
- }
82
- | undefined;
83
+ summary?: FormSummaryConfig | undefined;
83
84
  }
84
85
 
85
86
  export interface ComponentProps<T extends GenericObject>
@@ -115,7 +116,13 @@ const BasicForm: ForwardRefExoticComponent<any> = forwardRef(
115
116
  if (props.summary && props.summary.enabled) {
116
117
  // add to last step
117
118
  return [
118
- ...(props.steps || []),
119
+ ...(props.steps || [
120
+ {
121
+ id: props.summary.defaultStepName || "basic",
122
+ title: props.summary.defaultStepName || "Basic",
123
+ isSummaryStep: false,
124
+ },
125
+ ]),
119
126
  {
120
127
  id: "summary",
121
128
  title: "Summary",
@@ -262,11 +269,26 @@ const BasicForm: ForwardRefExoticComponent<any> = forwardRef(
262
269
 
263
270
  for (const item of fields) {
264
271
  // if this field is not the current step.
272
+
273
+ let shouldSkip: boolean = false;
265
274
  if (
266
275
  currentFormStepId &&
267
276
  item.stepId &&
268
277
  item.stepId !== currentFormStepId
269
278
  ) {
279
+ shouldSkip = true;
280
+ }
281
+
282
+ if (
283
+ props.summary?.enabled &&
284
+ (!props.steps || props.steps.length === 0)
285
+ ) {
286
+ // if summary is enabled and no steps are provided, then all fields belong to the same step and should not be skipped.
287
+ shouldSkip = false;
288
+ item.stepId = props.summary.defaultStepName || "basic";
289
+ }
290
+
291
+ if (shouldSkip) {
270
292
  continue;
271
293
  }
272
294
 
@@ -3,6 +3,7 @@ import BasicForm, {
3
3
  DefaultValidateFunction,
4
4
  FormErrors,
5
5
  FormProps,
6
+ FormSummaryConfig,
6
7
  } from "./BasicForm";
7
8
  import Fields from "./Types/Fields";
8
9
  import { FormStep } from "./Types/FormStep";
@@ -46,11 +47,7 @@ export interface ComponentProps<TBaseModel extends BaseModel> {
46
47
  hideSubmitButton?: undefined | boolean;
47
48
  formRef?: undefined | MutableRefObject<FormProps<FormValues<TBaseModel>>>;
48
49
  initialValues?: FormValues<TBaseModel> | undefined;
49
- summary?:
50
- | {
51
- enabled?: boolean;
52
- }
53
- | undefined;
50
+ summary?: FormSummaryConfig | undefined;
54
51
  }
55
52
 
56
53
  const BasicModelForm: <TBaseModel extends BaseModel>(
@@ -15,7 +15,7 @@ import {
15
15
  } from "../CategoryCheckbox/CategoryCheckboxTypes";
16
16
  import Loader, { LoaderType } from "../Loader/Loader";
17
17
  import Pill, { PillSize } from "../Pill/Pill";
18
- import { FormErrors, FormProps } from "./BasicForm";
18
+ import { FormErrors, FormProps, FormSummaryConfig } from "./BasicForm";
19
19
  import BasicModelForm from "./BasicModelForm";
20
20
  import Field from "./Types/Field";
21
21
  import Fields from "./Types/Fields";
@@ -101,11 +101,7 @@ export interface ComponentProps<TBaseModel extends BaseModel> {
101
101
  saveRequestOptions?: RequestOptions | undefined;
102
102
  doNotFetchExistingModel?: boolean | undefined;
103
103
  modelAPI?: typeof ModelAPI | undefined;
104
- summary?:
105
- | {
106
- enabled?: boolean;
107
- }
108
- | undefined;
104
+ summary?: FormSummaryConfig | undefined;
109
105
  }
110
106
 
111
107
  const ModelForm: <TBaseModel extends BaseModel>(
@@ -30,7 +30,7 @@ import Field from "../Detail/Field";
30
30
  import ErrorMessage from "../ErrorMessage/ErrorMessage";
31
31
  import ClassicFilterType from "../Filters/Types/Filter";
32
32
  import FilterData from "../Filters/Types/FilterData";
33
- import { FormProps } from "../Forms/BasicForm";
33
+ import { FormProps, FormSummaryConfig } from "../Forms/BasicForm";
34
34
  import { ModelField } from "../Forms/ModelForm";
35
35
  import { FormStep } from "../Forms/Types/FormStep";
36
36
  import FormValues from "../Forms/Types/FormValues";
@@ -215,6 +215,8 @@ export interface BaseTableProps<
215
215
  initialFilterData?: FilterData<TBaseModel> | undefined;
216
216
 
217
217
  saveFilterProps?: SaveFilterProps | undefined;
218
+
219
+ formSummary?: FormSummaryConfig | undefined;
218
220
  }
219
221
 
220
222
  export interface ComponentProps<
@@ -142,6 +142,7 @@ const ModelTable: <TBaseModel extends BaseModel>(
142
142
  onBeforeCreate={onBeforeCreate}
143
143
  modelType={props.modelType}
144
144
  formProps={{
145
+ summary: props.formSummary,
145
146
  name: `create-${props.modelType.name}-from`,
146
147
  modelType: props.modelType,
147
148
  id: `create-${props.modelType.name}-from`,
@@ -129,7 +129,12 @@ __decorate([
129
129
  Permission.ProjectMember,
130
130
  Permission.ReadStatusPageAnnouncement,
131
131
  ],
132
- update: [],
132
+ update: [
133
+ Permission.ProjectOwner,
134
+ Permission.ProjectAdmin,
135
+ Permission.ProjectMember,
136
+ Permission.EditStatusPageAnnouncement,
137
+ ],
133
138
  }),
134
139
  TableColumn({
135
140
  required: false,
@@ -1 +1 @@
1
- {"version":3,"file":"StatusPageAnnouncement.js","sourceRoot":"","sources":["../../../../Models/DatabaseModels/StatusPageAnnouncement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StatusPageAnnouncement.js","sourceRoot":"","sources":["../../../../Models/DatabaseModels/StatusPageAnnouncement.ts"],"names":[],"mappings":"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"}