function AppRouterComponent()

in client/src/components/main/AppRouter.js [103:222]


function AppRouterComponent ({history, uiNavigation}) {
  if (!uiNavigation.loaded) {
    return null;
  }
  return (
    <Router history={history}>
      <Route component={App}>
        <Route
          path="/:pipeline/refs/heads/master(/:section(/:subSection))"
          component={PipelineLatestVersion}
        />
        <Route
          path="/folder/:folder/metadata/:entity/redirect"
          component={MetadataClassEntityRedirection}
        />
        <Route path="/tickets/new" component={NewTicketPage} />
        <Route path="/tickets/:id" component={TicketPage} />
        <Route path="/tickets" component={TicketsBrowser} />
        <Route path="search/advanced" component={FacetedSearchPage} />
        <Route path="search" component={RunsSearch} />
        <Redirect from="/settings" to="/settings/cli" />
        <Route path="/settings" component={SettingsForm}>
          <Route path="cli(/:section)" component={CLIForm} />
          <Route path="events" component={SystemEvents} />
          <Route path="user(/:section)" component={UserManagementForm} />
          <Route path="email(/:section)" component={EmailNotificationSettings} />
          <Route path="preferences" component={Preferences} />
          <Route path="regions" component={AWSRegionsForm} />
          <Route path="system(/:section)" component={SystemManagement} />
          <Route path="dictionaries(/:currentDictionary)" component={SystemDictionaries} />
          <Route path="profile(/:section(/:sub))" component={UserProfile} />
        </Route>
        <Route path="/cluster" component={ClusterRoot}>
          <IndexRoute component={Cluster} />
          <Route path="core-nodes" component={CoreNodes} />
          <Route path="cloud-nodes" component={CloudNodes} />
          <Route path="hot" component={HotCluster} />
          <Route path="usage" component={HotClusterUsage} />
        </Route>
        <Redirect from="/cluster/:nodeName" to="/cluster/:nodeName/info" />
        <Route path="/cluster/:nodeName" component={ClusterNode}>
          <Route path="info" component={ClusterNodeGeneralInfo} />
          <Route path="jobs" component={ClusterNodePods} />
          <Route path="monitor" component={ClusterNodeMonitor} />
        </Route>
        <Route path="/runs/filter" component={RunsFilter} />
        <Redirect from="/runs" to="runs/active" />
        <Route path="/runs/:status" component={AllRuns} />
        <Redirect from="/run/:runId" to="/run/:runId/plain" />
        <Route path="/run/:runId/:mode(/:taskName)" component={Log} />
        <Redirect from="/tool/:id" to="/tool/:id/description" />
        <Route path="/tool/:id/:section" component={Tool} />
        <Redirect from="/tool/:id/info/:version" to="/tool/:id/info/:version/scaninfo" />
        <Route path="/tool/:id/info/:version" component={ToolVersion}>
          <Route path="scaninfo" component={ToolScanningInfo} tabKey="scaninfo" />
          <Route path="settings" component={ToolSettings} tabKey="settings" />
          <Route path="packages" component={ToolPackages} tabKey="packages" />
          <Route path="history" component={ToolHistory} tabKey="history" />
        </Route>
        <Route path="/tools(/:registryId(/:groupId))" component={Tools} />
        <Route path="/launch" component={LaunchPipeline} />
        <Route path="/launch/tool/:image" component={LaunchPipeline} />
        <Route path="/launch/:runId" component={LaunchPipeline} />
        <Route path="/launch/:id/:version(/:configuration)" component={LaunchPipeline} />
        <Route path="/launch/:id/:version/:configuration(/:runId)" component={LaunchPipeline} />
        <Redirect from="/billing" to="/billing/reports" />
        <Route path="/billing" component={Billing}>
          <Route path="quotas(/:type)" component={BillingQuotas} />
          <Route path="reports" component={BillingReports.default}>
            <IndexRoute component={BillingReports.GeneralReport} />
            <Route path="instance(/:type)" component={BillingReports.InstanceReport} />
            <Route path="storage(/:type)" component={BillingReports.StorageReport} />
          </Route>
        </Route>
        <Route path="/notifications" component={NotificationBrowser} />
        <Route path="/miew" component={MiewPage} />
        <Route path="/wsi" component={VSIPreviewPage} />
        <Route path="/hcs" component={HcsImagePage} />
        <Route path="/library" component={PipelinesLibrary}>
          <IndexRoute component={FolderBrowser} />
        </Route>
        <Route path="/pipelines" component={PipelinesLibrary}>
          <IndexRoute component={Browser} />
        </Route>
        <Route path="/storages" component={PipelinesLibrary}>
          <IndexRoute component={Browser} />
        </Route>
        <Route path="/folder" component={PipelinesLibrary}>
          <Route path=":id" component={FolderBrowser} />
          <Route path=":id/history" component={ProjectHistory} />
          <Route path=":id/metadata" component={MetadataFolderBrowser} />
          <Route path=":id/metadata/:class" component={MetadataBrowser} />
        </Route>
        <Route path="/storage" component={PipelinesLibrary}>
          <Route path=":id" component={StorageBrowser} />
        </Route>
        <Route path="/configuration" component={PipelinesLibrary}>
          <Route path=":id(/:name)" component={DetachedConfiguration} />
        </Route>
        <Route path="/vs/:id" component={PipelinesLibrary}>
          <IndexRoute component={VersionedStorageBrowser} />
        </Route>
        <Route path="/dashboard" component={HomePageLoader} />
        <Route path="/:id" component={PipelinesLibrary}>
          <IndexRoute component={PipelineBrowser} />
          <Route path=":version" component={PipelineDetails}>
            <Route path="history" component={PipelineHistory} />
            <Route path="code" component={PipelineCode} />
            <Route path="configuration(/:configuration)" component={PipelineConfiguration} />
            <Route path="graph" component={PipelineGraph} />
            <Route path="workflow" component={PipelineGraph} />
            <Route path="documents" component={PipelineDocuments} />
            <Route path="storage" component={PipelineStorageRules} />
          </Route>
        </Route>
        <Route path="/" component={HomePageRedirection} />
      </Route>
    </Router>
  );
}