From d51b61dbafa9b0f141ad3c5479fbb265718fe928 Mon Sep 17 00:00:00 2001 From: Nikita Nek Dudnik Date: Wed, 26 Aug 2020 20:11:33 +0200 Subject: [PATCH] fix(circleci): unbreak plugin --- .../components/{App.tsx => CircleCIWidget.tsx} | 18 ++---------------- plugins/circleci/src/index.ts | 2 +- .../BuildWithStepsPage/BuildWithStepsPage.tsx | 15 ++++++++++----- .../src/pages/BuildsPage/BuildsPage.tsx | 15 ++++++++++----- plugins/circleci/src/plugin.ts | 8 +++++--- plugins/circleci/src/route-refs.tsx | 7 ++++++- plugins/circleci/src/state/useBuilds.ts | 1 - 7 files changed, 34 insertions(+), 32 deletions(-) rename plugins/circleci/src/components/{App.tsx => CircleCIWidget.tsx} (73%) diff --git a/plugins/circleci/src/components/App.tsx b/plugins/circleci/src/components/CircleCIWidget.tsx similarity index 73% rename from plugins/circleci/src/components/App.tsx rename to plugins/circleci/src/components/CircleCIWidget.tsx index a3f7112132..767eb6d5c7 100644 --- a/plugins/circleci/src/components/App.tsx +++ b/plugins/circleci/src/components/CircleCIWidget.tsx @@ -15,25 +15,11 @@ */ import React from 'react'; import { Route, MemoryRouter, Routes } from 'react-router'; -import { BuildsPage, Builds } from '../pages/BuildsPage'; -import { DetailedViewPage, BuildWithSteps } from '../pages/BuildWithStepsPage'; +import { Builds } from '../pages/BuildsPage'; +import { BuildWithSteps } from '../pages/BuildWithStepsPage'; import { AppStateProvider } from '../state'; import { Settings } from './Settings'; -export const App = () => { - return ( - - <> - - } /> - } /> - - - - - ); -}; - // TODO: allow pass in settings as props // When some shared settings workflow // will be established diff --git a/plugins/circleci/src/index.ts b/plugins/circleci/src/index.ts index 11f2c80b88..e2e6c4fa69 100644 --- a/plugins/circleci/src/index.ts +++ b/plugins/circleci/src/index.ts @@ -17,4 +17,4 @@ export { plugin } from './plugin'; export * from './api'; export * from './route-refs'; -export { CircleCIWidget } from './components/App'; +export { CircleCIWidget } from './components/CircleCIWidget'; diff --git a/plugins/circleci/src/pages/BuildWithStepsPage/BuildWithStepsPage.tsx b/plugins/circleci/src/pages/BuildWithStepsPage/BuildWithStepsPage.tsx index 77e6daf755..d0e0c655c3 100644 --- a/plugins/circleci/src/pages/BuildWithStepsPage/BuildWithStepsPage.tsx +++ b/plugins/circleci/src/pages/BuildWithStepsPage/BuildWithStepsPage.tsx @@ -25,6 +25,8 @@ import { Layout } from '../../components/Layout'; import LaunchIcon from '@material-ui/icons/Launch'; import { useSettings } from '../../state/useSettings'; import { useBuildWithSteps } from '../../state/useBuildWithSteps'; +import { AppStateProvider } from '../../state'; +import { Settings } from '../../components/Settings'; const IconLink = IconButton as typeof Link; const BuildName: FC<{ build?: BuildWithSteps }> = ({ build }) => ( @@ -93,11 +95,14 @@ const pickClassName = ( }; const Page = () => ( - - - - - + + + + + + + + ); const BuildWithStepsView: FC<{}> = () => { diff --git a/plugins/circleci/src/pages/BuildsPage/BuildsPage.tsx b/plugins/circleci/src/pages/BuildsPage/BuildsPage.tsx index 7b124c03c1..6e7fc44249 100644 --- a/plugins/circleci/src/pages/BuildsPage/BuildsPage.tsx +++ b/plugins/circleci/src/pages/BuildsPage/BuildsPage.tsx @@ -19,13 +19,18 @@ import { Grid } from '@material-ui/core'; import { Builds as BuildsComp } from './lib/Builds'; import { Layout } from '../../components/Layout'; import { PluginHeader } from '../../components/PluginHeader'; +import { AppStateProvider } from '../../state/AppState'; +import { Settings } from '../../components/Settings'; const BuildsPage: FC<{}> = () => ( - - - - - + + + + + + + + ); const Builds = () => ( diff --git a/plugins/circleci/src/plugin.ts b/plugins/circleci/src/plugin.ts index 6a2e37df10..47ecccef4f 100644 --- a/plugins/circleci/src/plugin.ts +++ b/plugins/circleci/src/plugin.ts @@ -14,12 +14,14 @@ * limitations under the License. */ import { createPlugin } from '@backstage/core'; -import { App } from './components/App'; -import { circleCIRouteRef } from './route-refs'; +import { circleCIRouteRef, circleCIBuildRouteRef } from './route-refs'; +import BuildsPage from './pages/BuildsPage/BuildsPage'; +import BuildWithStepsPage from './pages/BuildWithStepsPage/BuildWithStepsPage'; export const plugin = createPlugin({ id: 'circleci', register({ router }) { - router.addRoute(circleCIRouteRef, App, { exact: false }); + router.addRoute(circleCIRouteRef, BuildsPage); + router.addRoute(circleCIBuildRouteRef, BuildWithStepsPage); }, }); diff --git a/plugins/circleci/src/route-refs.tsx b/plugins/circleci/src/route-refs.tsx index d87ad2fbad..581f035c1d 100644 --- a/plugins/circleci/src/route-refs.tsx +++ b/plugins/circleci/src/route-refs.tsx @@ -34,5 +34,10 @@ const CircleCIIcon: FC = props => ( export const circleCIRouteRef = createRouteRef({ icon: CircleCIIcon, path: '/circleci', - title: 'CircleCI', + title: 'CircleCI | All builds', +}); + +export const circleCIBuildRouteRef = createRouteRef({ + path: '/circleci/build/:buildId', + title: 'CircleCI | Build info', }); diff --git a/plugins/circleci/src/state/useBuilds.ts b/plugins/circleci/src/state/useBuilds.ts index 6d38c5f901..282ef68f12 100644 --- a/plugins/circleci/src/state/useBuilds.ts +++ b/plugins/circleci/src/state/useBuilds.ts @@ -70,7 +70,6 @@ export const transform = ( export function useBuilds() { const [{ repo, owner, token }] = useSettings(); - const api = useApi(circleCIApiRef); const errorApi = useApi(errorApiRef);