diff options
author | crupest <crupest@outlook.com> | 2020-05-30 16:23:25 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-05-30 16:23:25 +0800 |
commit | 232a19d7dfe0e3847b3a9a9a9be83485ffb9031c (patch) | |
tree | 2c7463f15cf30b8cbc703cb57bef357796bcd8b9 /Timeline/ClientApp/src/timeline/TimelinePage.tsx | |
parent | fc0521d81aa2293b94ea40b79ec0df80966c0278 (diff) | |
download | timeline-232a19d7dfe0e3847b3a9a9a9be83485ffb9031c.tar.gz timeline-232a19d7dfe0e3847b3a9a9a9be83485ffb9031c.tar.bz2 timeline-232a19d7dfe0e3847b3a9a9a9be83485ffb9031c.zip |
Merge front end to this repo. But I need to wait for aspnet core support for custom port and package manager for dev server.
Diffstat (limited to 'Timeline/ClientApp/src/timeline/TimelinePage.tsx')
-rw-r--r-- | Timeline/ClientApp/src/timeline/TimelinePage.tsx | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Timeline/ClientApp/src/timeline/TimelinePage.tsx b/Timeline/ClientApp/src/timeline/TimelinePage.tsx new file mode 100644 index 00000000..5adebe1f --- /dev/null +++ b/Timeline/ClientApp/src/timeline/TimelinePage.tsx @@ -0,0 +1,39 @@ +import React from 'react';
+import { useParams } from 'react-router';
+
+import { ordinaryTimelineService } from '../data/timeline';
+
+import TimelinePageUI from './TimelinePageUI';
+import TimelinePageTemplate from '../timeline/TimelinePageTemplate';
+import { OrdinaryTimelineManageItem } from './TimelineInfoCard';
+import TimelineDeleteDialog from './TimelineDeleteDialog';
+
+const TimelinePage: React.FC = _ => {
+ const { name } = useParams<{ name: string }>();
+
+ const [dialog, setDialog] = React.useState<OrdinaryTimelineManageItem | null>(
+ null
+ );
+
+ let dialogElement: React.ReactElement | undefined;
+ if (dialog === 'delete') {
+ dialogElement = (
+ <TimelineDeleteDialog open close={() => setDialog(null)} name={name} />
+ );
+ }
+
+ return (
+ <>
+ <TimelinePageTemplate
+ name={name}
+ UiComponent={TimelinePageUI}
+ onManage={item => setDialog(item)}
+ service={ordinaryTimelineService}
+ notFoundI18nKey="timeline.timelineNotExist"
+ />
+ {dialogElement}
+ </>
+ );
+};
+
+export default TimelinePage;
|