"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AdminApp = void 0; var tslib_1 = require("tslib"); var React = tslib_1.__importStar(require("react")); var AdminApp_module_scss_1 = tslib_1.__importDefault(require("./AdminApp.module.scss")); var TopNav_1 = require("./TopNav"); var DashboardScreen_1 = require("../screens/DashboardScreen"); var RequestTypesScreen_1 = require("../screens/RequestTypesScreen"); var RoutesScreen_1 = require("../screens/RoutesScreen"); var RouteStepsScreen_1 = require("../screens/RouteStepsScreen"); var ResolveScreen_1 = require("../screens/ResolveScreen"); var AdminApp = function (_a) { var api = _a.api, currentUserEmail = _a.currentUserEmail; var _b = React.useState('dashboard'), screen = _b[0], setScreen = _b[1]; var _c = React.useState(), selectedRoute = _c[0], setSelectedRoute = _c[1]; var _d = React.useState(''), selectedRequestTypeName = _d[0], setSelectedRequestTypeName = _d[1]; var navigate = function (key) { setScreen(key); }; var openSteps = function (route) { setSelectedRoute(route); api.requestTypes.get(route.requestTypeId) .then(function (rt) { return setSelectedRequestTypeName(rt.name); }) .catch(function () { return setSelectedRequestTypeName("#".concat(route.requestTypeId)); }); setScreen('routeSteps'); }; return (React.createElement("div", { className: AdminApp_module_scss_1.default.shell }, React.createElement(TopNav_1.TopNav, { active: screen, onSelect: navigate }), React.createElement("div", { className: AdminApp_module_scss_1.default.content }, screen === 'dashboard' && React.createElement(DashboardScreen_1.DashboardScreen, { api: api, onNavigate: navigate }), screen === 'requestTypes' && React.createElement(RequestTypesScreen_1.RequestTypesScreen, { api: api }), screen === 'routes' && React.createElement(RoutesScreen_1.RoutesScreen, { api: api, onOpenSteps: openSteps }), screen === 'routeSteps' && selectedRoute && (React.createElement(RouteStepsScreen_1.RouteStepsScreen, { api: api, route: selectedRoute, requestTypeName: selectedRequestTypeName, onBack: function () { return setScreen('routes'); } })), screen === 'resolve' && React.createElement(ResolveScreen_1.ResolveScreen, { api: api, currentUserEmail: currentUserEmail })))); }; exports.AdminApp = AdminApp; //# sourceMappingURL=AdminApp.js.map