Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | 4x 4x 4x 4x 4x 4x | /*---------------------------------------------------------------------------------------------
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
* See LICENSE.md in the project root for license terms and full copyright notice.
*--------------------------------------------------------------------------------------------*/
import React from "react";
import { RouteStep } from "./EC3WidgetComponent";
import { TemplateMenu } from "./TemplateMenu";
import { Templates } from "./Templates";
import { EC3Widget } from "../EC3Widget";
import type { EC3RouterProps } from "./EC3RouterProps";
export const EC3Router = ({ currentRoute, navigateTo, goBack, onExportResult }: EC3RouterProps) => {
const { template } = currentRoute.routingFields;
switch (currentRoute.step) {
case RouteStep.Templates:
return (
<Templates
onClickCreate={() =>
navigateTo(() => ({
step: RouteStep.TemplateMenu,
title: EC3Widget.translate("createTemplate"),
routingFields: {},
}))
}
onClickTemplateTitle={(t) =>
navigateTo(() => ({
step: RouteStep.TemplateMenu,
title: t.displayName,
routingFields: { template: t },
}))
}
onExportResult={onExportResult}
/>
);
case RouteStep.TemplateMenu:
return <TemplateMenu template={template} onClickCancel={goBack} onSaveSuccess={goBack} />;
default:
return null;
}
};
|