aboutsummaryrefslogtreecommitdiff
path: root/FrontEnd/src/app/views
diff options
context:
space:
mode:
Diffstat (limited to 'FrontEnd/src/app/views')
-rw-r--r--FrontEnd/src/app/views/timeline-common/TimelinePageTemplate.tsx10
-rw-r--r--FrontEnd/src/app/views/timeline-common/TimelinePropertyChangeDialog.tsx23
2 files changed, 12 insertions, 21 deletions
diff --git a/FrontEnd/src/app/views/timeline-common/TimelinePageTemplate.tsx b/FrontEnd/src/app/views/timeline-common/TimelinePageTemplate.tsx
index e4d414b9..8422077a 100644
--- a/FrontEnd/src/app/views/timeline-common/TimelinePageTemplate.tsx
+++ b/FrontEnd/src/app/views/timeline-common/TimelinePageTemplate.tsx
@@ -173,14 +173,8 @@ export default function TimelinePageTemplate<TManageItem>(
<TimelinePropertyChangeDialog
open
close={closeDialog}
- oldInfo={{
- title: timeline.title,
- visibility: timeline.visibility,
- description: timeline.description,
- }}
- onProcess={(req) => {
- return service.changeTimelineProperty(name, req).toPromise().then();
- }}
+ timeline={timeline}
+ onProcess={(req) => service.changeTimelineProperty(name, req)}
/>
);
} else if (dialog === "member") {
diff --git a/FrontEnd/src/app/views/timeline-common/TimelinePropertyChangeDialog.tsx b/FrontEnd/src/app/views/timeline-common/TimelinePropertyChangeDialog.tsx
index aae227e6..ab3285f5 100644
--- a/FrontEnd/src/app/views/timeline-common/TimelinePropertyChangeDialog.tsx
+++ b/FrontEnd/src/app/views/timeline-common/TimelinePropertyChangeDialog.tsx
@@ -4,20 +4,15 @@ import {
TimelineVisibility,
kTimelineVisibilities,
TimelineChangePropertyRequest,
+ TimelineInfo,
} from "@/services/timeline";
import OperationDialog from "../common/OperationDialog";
-export interface TimelinePropertyInfo {
- title: string;
- visibility: TimelineVisibility;
- description: string;
-}
-
export interface TimelinePropertyChangeDialogProps {
open: boolean;
close: () => void;
- oldInfo: TimelinePropertyInfo;
+ timeline: TimelineInfo;
onProcess: (request: TimelineChangePropertyRequest) => Promise<void>;
}
@@ -30,6 +25,8 @@ const labelMap: { [key in TimelineVisibility]: string } = {
const TimelinePropertyChangeDialog: React.FC<TimelinePropertyChangeDialogProps> = (
props
) => {
+ const { timeline } = props;
+
return (
<OperationDialog
title={"timeline.dialogChangeProperty.title"}
@@ -37,7 +34,7 @@ const TimelinePropertyChangeDialog: React.FC<TimelinePropertyChangeDialogProps>
{
type: "text",
label: "timeline.dialogChangeProperty.titleField",
- initValue: props.oldInfo.title,
+ initValue: timeline.title,
},
{
type: "select",
@@ -46,25 +43,25 @@ const TimelinePropertyChangeDialog: React.FC<TimelinePropertyChangeDialogProps>
label: labelMap[v],
value: v,
})),
- initValue: props.oldInfo.visibility,
+ initValue: timeline.visibility,
},
{
type: "text",
label: "timeline.dialogChangeProperty.description",
- initValue: props.oldInfo.description,
+ initValue: timeline.description,
},
]}
open={props.open}
close={props.close}
onProcess={([newTitle, newVisibility, newDescription]) => {
const req: TimelineChangePropertyRequest = {};
- if (newTitle !== props.oldInfo.title) {
+ if (newTitle !== timeline.title) {
req.title = newTitle;
}
- if (newVisibility !== props.oldInfo.visibility) {
+ if (newVisibility !== timeline.visibility) {
req.visibility = newVisibility as TimelineVisibility;
}
- if (newDescription !== props.oldInfo.description) {
+ if (newDescription !== timeline.description) {
req.description = newDescription;
}
return props.onProcess(req);