Change name & form of the new prop

Signed-off-by: victormorfin97 <v-vmorfin@expediagroup.com>
This commit is contained in:
victormorfin97
2021-08-19 11:19:24 -05:00
parent c2d0bd6902
commit 9388571643
3 changed files with 22 additions and 13 deletions
+5 -3
View File
@@ -30,10 +30,10 @@ import {
import { useElementFilter } from '@backstage/core-plugin-api';
type RouterProps = {
templateCard?: Function | undefined;
TemplateCardComponent?: (props: any) => JSX.Element | null;
};
export const Router = ({ templateCard }: RouterProps) => {
export const Router = ({ TemplateCardComponent }: RouterProps) => {
const outlet = useOutlet();
const customFieldExtensions = useElementFilter(outlet, elements =>
@@ -60,7 +60,9 @@ export const Router = ({ templateCard }: RouterProps) => {
<Routes>
<Route
path="/"
element={<ScaffolderPage templateCard={templateCard} />}
element={
<ScaffolderPage TemplateCardComponent={TemplateCardComponent} />
}
/>
<Route
path="/templates/:templateName"
@@ -47,11 +47,11 @@ const useStyles = makeStyles(theme => ({
}));
export type ScaffolderPageProps = {
templateCard: Function | undefined;
TemplateCardComponent?: (props: any) => JSX.Element | null;
};
export const ScaffolderPageContents = ({
templateCard,
TemplateCardComponent,
}: ScaffolderPageProps) => {
const styles = useStyles();
@@ -93,7 +93,7 @@ export const ScaffolderPageContents = ({
<EntityTagPicker />
</div>
<div>
<TemplateList templateCard={templateCard} />
<TemplateList TemplateCardComponent={TemplateCardComponent} />
</div>
</div>
</Content>
@@ -101,8 +101,10 @@ export const ScaffolderPageContents = ({
);
};
export const ScaffolderPage = ({ templateCard }: ScaffolderPageProps) => (
export const ScaffolderPage = ({
TemplateCardComponent,
}: ScaffolderPageProps) => (
<EntityListProvider>
<ScaffolderPageContents templateCard={templateCard} />
<ScaffolderPageContents TemplateCardComponent={TemplateCardComponent} />
</EntityListProvider>
);
@@ -23,13 +23,15 @@ import {
} from '@backstage/core-components';
import { useEntityListProvider } from '@backstage/plugin-catalog-react';
import { Link, Typography } from '@material-ui/core';
import { TemplateCard } from '../TemplateCard';
import { TemplateCard, TemplateCardProps } from '../TemplateCard';
export type Props = TemplateCardProps;
export type TemplateListProps = {
templateCard?: Function | undefined;
TemplateCardComponent?: (props: Props) => JSX.Element | null;
};
export const TemplateList = ({ templateCard }: TemplateListProps) => {
export const TemplateList = ({ TemplateCardComponent }: TemplateListProps) => {
const { loading, error, entities } = useEntityListProvider();
return (
<>
@@ -55,8 +57,11 @@ export const TemplateList = ({ templateCard }: TemplateListProps) => {
{entities &&
entities?.length > 0 &&
entities.map((template, i) =>
templateCard ? (
templateCard(i, template)
TemplateCardComponent ? (
<TemplateCardComponent
key={i}
template={template as TemplateEntityV1beta2}
/>
) : (
<TemplateCard
key={i}