import { sectionNames } from "@saleor/intl"; import WebhooksRoutes from "@saleor/webhooks"; import { parse as parseQs } from "qs"; import React from "react"; import { useIntl } from "react-intl"; import { Route, RouteComponentProps, Switch } from "react-router-dom"; import { WindowTitle } from "../components/WindowTitle"; import { appDetailsPath, AppDetailsUrlQueryParams, appInstallPath, AppInstallUrlQueryParams, AppListUrlQueryParams, appPath, appSettingsPath, appsListPath, customAppAddPath, customAppPath, CustomAppUrlQueryParams } from "./urls"; import AppView from "./views/App"; import AppDetailsView from "./views/AppDetails"; import AppInstallView from "./views/AppInstall"; import AppSettingsView from "./views/AppSettings"; import AppsListView from "./views/AppsList"; import CustomAppCreateView from "./views/CustomAppCreate"; import CustomAppDetailsView from "./views/CustomAppDetails"; const AppDetails: React.FC> = ({ match }) => { const qs = parseQs(location.search.substr(1)); const params: AppDetailsUrlQueryParams = qs; return ( ); }; const AppSettings: React.FC> = ({ match }) => ; const App: React.FC> = ({ match }) => ( ); const AppInstall: React.FC = props => { const qs = parseQs(location.search.substr(1)); const params: AppInstallUrlQueryParams = qs; return ; }; interface CustomAppDetailsProps extends RouteComponentProps<{ id?: string }> { token: string; onTokenClose: () => void; } const CustomAppDetails: React.FC = ({ match, token, onTokenClose }) => { const qs = parseQs(location.search.substr(1)); const params: CustomAppUrlQueryParams = qs; const id = match.params.id; if (!id) { throw new Error("No ID provided"); } return ( ); }; const AppsList: React.FC = () => { const qs = parseQs(location.search.substr(1)); const params: AppListUrlQueryParams = qs; return ; }; const Component = () => { const intl = useIntl(); const [token, setToken] = React.useState(null); return ( <> } /> ( setToken(null)} /> )} /> ); }; export default Component;