diff --git a/packages/core/src/api-wrappers/createApp.tsx b/packages/core/src/api-wrappers/createApp.tsx index c13758a0b9..60c69d01c5 100644 --- a/packages/core/src/api-wrappers/createApp.tsx +++ b/packages/core/src/api-wrappers/createApp.tsx @@ -25,7 +25,7 @@ import privateExports, { import { BrowserRouter, MemoryRouter } from 'react-router-dom'; import { ErrorPage } from '../layout/ErrorPage'; -import Progress from '../components/Progress'; +import { Progress } from '../components/Progress'; import { lightTheme, darkTheme } from '@backstage/theme'; import { AppConfig, JsonObject } from '@backstage/config'; diff --git a/packages/core/src/components/AlertDisplay/index.ts b/packages/core/src/components/AlertDisplay/index.ts index 7bfac0c981..72aa1c5ad8 100644 --- a/packages/core/src/components/AlertDisplay/index.ts +++ b/packages/core/src/components/AlertDisplay/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export * from './AlertDisplay'; +export { AlertDisplay } from './AlertDisplay'; diff --git a/packages/core/src/components/CodeSnippet/CodeSnippet.stories.tsx b/packages/core/src/components/CodeSnippet/CodeSnippet.stories.tsx index f7c9ba836d..c0f57d6330 100644 --- a/packages/core/src/components/CodeSnippet/CodeSnippet.stories.tsx +++ b/packages/core/src/components/CodeSnippet/CodeSnippet.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import CodeSnippet from './CodeSnippet'; +import { CodeSnippet } from './CodeSnippet'; import { InfoCard } from '../../layout/InfoCard'; export default { diff --git a/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx b/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx index c019b316fd..42efbf14af 100644 --- a/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx +++ b/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx @@ -18,7 +18,7 @@ import React from 'react'; import { render } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import CodeSnippet from './CodeSnippet'; +import { CodeSnippet } from './CodeSnippet'; const JAVASCRIPT = `const greeting = "Hello"; const world = "World"; diff --git a/packages/core/src/components/CodeSnippet/CodeSnippet.tsx b/packages/core/src/components/CodeSnippet/CodeSnippet.tsx index c77dc5bd43..324d71e936 100644 --- a/packages/core/src/components/CodeSnippet/CodeSnippet.tsx +++ b/packages/core/src/components/CodeSnippet/CodeSnippet.tsx @@ -31,7 +31,7 @@ const defaultProps = { showLineNumbers: false, }; -const CodeSnippet: FC = props => { +export const CodeSnippet: FC = props => { const { text, language, showLineNumbers } = { ...defaultProps, ...props, @@ -57,5 +57,3 @@ CodeSnippet.propTypes = { language: PropTypes.string.isRequired, showLineNumbers: PropTypes.bool, }; - -export default CodeSnippet; diff --git a/packages/core/src/components/CodeSnippet/index.tsx b/packages/core/src/components/CodeSnippet/index.tsx index 71587789e5..11ca1ecde2 100644 --- a/packages/core/src/components/CodeSnippet/index.tsx +++ b/packages/core/src/components/CodeSnippet/index.tsx @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './CodeSnippet'; +export { CodeSnippet } from './CodeSnippet'; diff --git a/packages/core/src/components/CopyTextButton/CopyTextButton.stories.tsx b/packages/core/src/components/CopyTextButton/CopyTextButton.stories.tsx index 92db2073d3..1894574df2 100644 --- a/packages/core/src/components/CopyTextButton/CopyTextButton.stories.tsx +++ b/packages/core/src/components/CopyTextButton/CopyTextButton.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import CopyTextButton from '.'; +import { CopyTextButton } from '.'; export default { title: 'CopyTextButton', diff --git a/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx b/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx index dd83cd318d..e789035b44 100644 --- a/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx +++ b/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx @@ -17,7 +17,7 @@ import React from 'react'; import { render } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import CopyTextButton from './CopyTextButton'; +import { CopyTextButton } from './CopyTextButton'; import { ApiRegistry, errorApiRef, diff --git a/packages/core/src/components/CopyTextButton/CopyTextButton.tsx b/packages/core/src/components/CopyTextButton/CopyTextButton.tsx index 1c5028fa9c..e4773165cc 100644 --- a/packages/core/src/components/CopyTextButton/CopyTextButton.tsx +++ b/packages/core/src/components/CopyTextButton/CopyTextButton.tsx @@ -56,7 +56,7 @@ const defaultProps = { tooltipText: 'Text copied to clipboard', }; -const CopyTextButton: FC = props => { +export const CopyTextButton: FC = props => { const { text, tooltipDelay, tooltipText } = { ...defaultProps, ...props, @@ -110,5 +110,3 @@ CopyTextButton.propTypes = { tooltipDelay: PropTypes.number, tooltipText: PropTypes.string, }; - -export default CopyTextButton; diff --git a/packages/core/src/components/CopyTextButton/index.tsx b/packages/core/src/components/CopyTextButton/index.tsx index 22fd7f05bb..adde10a927 100644 --- a/packages/core/src/components/CopyTextButton/index.tsx +++ b/packages/core/src/components/CopyTextButton/index.tsx @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './CopyTextButton'; +export { CopyTextButton } from './CopyTextButton'; diff --git a/packages/core/src/components/DismissableBanner/DismissableBanner.stories.tsx b/packages/core/src/components/DismissableBanner/DismissableBanner.stories.tsx index 78307bd5a3..4a404a840f 100644 --- a/packages/core/src/components/DismissableBanner/DismissableBanner.stories.tsx +++ b/packages/core/src/components/DismissableBanner/DismissableBanner.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import DismissableBanner from './DismissableBanner'; +import { DismissableBanner } from './DismissableBanner'; import { Link, Typography } from '@material-ui/core'; import { ApiProvider, diff --git a/packages/core/src/components/DismissableBanner/DismissableBanner.test.tsx b/packages/core/src/components/DismissableBanner/DismissableBanner.test.tsx index b3a33fc089..b1fd32bc0a 100644 --- a/packages/core/src/components/DismissableBanner/DismissableBanner.test.tsx +++ b/packages/core/src/components/DismissableBanner/DismissableBanner.test.tsx @@ -17,7 +17,7 @@ import React from 'react'; import { fireEvent } from '@testing-library/react'; import { renderWithEffects, wrapInTestApp } from '@backstage/test-utils'; -import DismissableBanner from './DismissableBanner'; +import { DismissableBanner } from './DismissableBanner'; import { ApiRegistry, ApiProvider, diff --git a/packages/core/src/components/DismissableBanner/DismissableBanner.tsx b/packages/core/src/components/DismissableBanner/DismissableBanner.tsx index e174ac8d55..eebb884806 100644 --- a/packages/core/src/components/DismissableBanner/DismissableBanner.tsx +++ b/packages/core/src/components/DismissableBanner/DismissableBanner.tsx @@ -59,7 +59,7 @@ type Props = { id: string; }; -const DismissableBanner: FC = ({ variant, message, id }) => { +export const DismissableBanner: FC = ({ variant, message, id }) => { const classes = useStyles(); const storageApi = useApi(storageApiRef); const notificationsStore = storageApi.forBucket('notifications'); @@ -111,5 +111,3 @@ const DismissableBanner: FC = ({ variant, message, id }) => { ); }; - -export default DismissableBanner; diff --git a/packages/core/src/components/DismissableBanner/index.ts b/packages/core/src/components/DismissableBanner/index.ts index 28091e858b..c1d69cd95e 100644 --- a/packages/core/src/components/DismissableBanner/index.ts +++ b/packages/core/src/components/DismissableBanner/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './DismissableBanner'; +export { DismissableBanner } from './DismissableBanner'; diff --git a/packages/core/src/components/FeatureDiscovery/index.ts b/packages/core/src/components/FeatureDiscovery/index.ts new file mode 100644 index 0000000000..57e35e3855 --- /dev/null +++ b/packages/core/src/components/FeatureDiscovery/index.ts @@ -0,0 +1,17 @@ +/* + * Copyright 2020 Spotify AB + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { FeatureCalloutCircular } from './FeatureCalloutCircular'; diff --git a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.stories.tsx b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.stories.tsx index 7ab3efd524..b65c5bff5d 100644 --- a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.stories.tsx +++ b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.stories.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ import React from 'react'; -import HorizontalScrollGrid from './HorizontalScrollGrid'; +import { HorizontalScrollGrid } from './HorizontalScrollGrid'; const cardContentStyle = { height: 0, padding: 150, margin: 20 }; const containerStyle = { width: 800, height: 400, margin: 20 }; diff --git a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.jsx b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.jsx index 25da497c4c..83cec85fc5 100644 --- a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.jsx +++ b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.jsx @@ -17,7 +17,7 @@ import React from 'react'; import { render, fireEvent } from '@testing-library/react'; import { renderWithEffects, wrapInTestApp } from '@backstage/test-utils'; -import HorizontalScrollGrid from './HorizontalScrollGrid'; +import { HorizontalScrollGrid } from './HorizontalScrollGrid'; import { Grid } from '@material-ui/core'; describe('', () => { diff --git a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.tsx b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.tsx index c636a74308..4e321dfa95 100644 --- a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.tsx +++ b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.tsx @@ -181,7 +181,7 @@ function useSmoothScroll( return setScrollTarget; } -const HorizontalScrollGrid: FC = props => { +export const HorizontalScrollGrid: FC = props => { const { scrollStep = 100, scrollSpeed = 50, @@ -245,5 +245,3 @@ const HorizontalScrollGrid: FC = props => { ); }; - -export default HorizontalScrollGrid; diff --git a/packages/core/src/components/HorizontalScrollGrid/index.tsx b/packages/core/src/components/HorizontalScrollGrid/index.tsx index 2b44fe1955..cb1253cae2 100644 --- a/packages/core/src/components/HorizontalScrollGrid/index.tsx +++ b/packages/core/src/components/HorizontalScrollGrid/index.tsx @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './HorizontalScrollGrid'; +export { HorizontalScrollGrid } from './HorizontalScrollGrid'; diff --git a/packages/core/src/components/Progress/Progress.stories.tsx b/packages/core/src/components/Progress/Progress.stories.tsx index 27fa7195f3..b935f60695 100644 --- a/packages/core/src/components/Progress/Progress.stories.tsx +++ b/packages/core/src/components/Progress/Progress.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import Progress from '.'; +import { Progress } from '.'; export default { title: 'Progress', diff --git a/packages/core/src/components/Progress/Progress.tsx b/packages/core/src/components/Progress/Progress.tsx index 607c53ade0..e66220e4e7 100644 --- a/packages/core/src/components/Progress/Progress.tsx +++ b/packages/core/src/components/Progress/Progress.tsx @@ -17,7 +17,7 @@ import React, { FC, useState, useEffect } from 'react'; import { LinearProgress, LinearProgressProps } from '@material-ui/core'; -const Progress: FC = props => { +export const Progress: FC = props => { const [isVisible, setIsVisible] = useState(false); useEffect(() => { @@ -31,5 +31,3 @@ const Progress: FC = props => {
); }; - -export default Progress; diff --git a/packages/core/src/components/Progress/index.ts b/packages/core/src/components/Progress/index.ts index d60b6f3e03..6598103ab1 100644 --- a/packages/core/src/components/Progress/index.ts +++ b/packages/core/src/components/Progress/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './Progress'; +export { Progress } from './Progress'; diff --git a/packages/core/src/components/ProgressBars/CircleProgress.test.jsx b/packages/core/src/components/ProgressBars/CircleProgress.test.jsx index b42559b7b7..9b9eae1bb8 100644 --- a/packages/core/src/components/ProgressBars/CircleProgress.test.jsx +++ b/packages/core/src/components/ProgressBars/CircleProgress.test.jsx @@ -17,7 +17,7 @@ import React from 'react'; import { render } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import CircleProgress, { getProgressColor } from './CircleProgress'; +import { CircleProgress, getProgressColor } from './CircleProgress'; describe('', () => { it('renders without exploding', () => { diff --git a/packages/core/src/components/ProgressBars/CircleProgress.tsx b/packages/core/src/components/ProgressBars/CircleProgress.tsx index b2da573de3..79a451b14e 100644 --- a/packages/core/src/components/ProgressBars/CircleProgress.tsx +++ b/packages/core/src/components/ProgressBars/CircleProgress.tsx @@ -77,7 +77,7 @@ export function getProgressColor( return palette.status.ok; } -const CircleProgress: FC = props => { +export const CircleProgress: FC = props => { const classes = useStyles(props); const theme = useTheme(); const { value, fractional, inverse, unit, max } = { @@ -104,5 +104,3 @@ const CircleProgress: FC = props => {
); }; - -export default CircleProgress; diff --git a/packages/core/src/components/ProgressBars/HorizontalProgress.stories.tsx b/packages/core/src/components/ProgressBars/HorizontalProgress.stories.tsx index d027bcedc5..6e8f4ed7fd 100644 --- a/packages/core/src/components/ProgressBars/HorizontalProgress.stories.tsx +++ b/packages/core/src/components/ProgressBars/HorizontalProgress.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import HorizontalProgress from './HorizontalProgress'; +import { HorizontalProgress } from './HorizontalProgress'; const containerStyle = { width: 300 }; diff --git a/packages/core/src/components/ProgressBars/HorizontalProgress.tsx b/packages/core/src/components/ProgressBars/HorizontalProgress.tsx index d7f813f55f..72bf1f34c3 100644 --- a/packages/core/src/components/ProgressBars/HorizontalProgress.tsx +++ b/packages/core/src/components/ProgressBars/HorizontalProgress.tsx @@ -28,7 +28,7 @@ type Props = { value: number; }; -const HorizontalProgress: FC = ({ value }) => { +export const HorizontalProgress: FC = ({ value }) => { const theme = useTheme(); if (isNaN(value)) { return null; @@ -49,5 +49,3 @@ const HorizontalProgress: FC = ({ value }) => { ); }; - -export default HorizontalProgress; diff --git a/packages/core/src/components/ProgressBars/ProgressCard.stories.tsx b/packages/core/src/components/ProgressBars/ProgressCard.stories.tsx index 9b99b5d621..62c9f3be6e 100644 --- a/packages/core/src/components/ProgressBars/ProgressCard.stories.tsx +++ b/packages/core/src/components/ProgressBars/ProgressCard.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import ProgressCard from './ProgressCard'; +import { ProgressCard } from './ProgressCard'; import { Grid } from '@material-ui/core'; const linkInfo = { title: 'Go to XYZ Location', link: '#' }; diff --git a/packages/core/src/components/ProgressBars/ProgressCard.test.jsx b/packages/core/src/components/ProgressBars/ProgressCard.test.jsx index 3e93e3f302..8568077a92 100644 --- a/packages/core/src/components/ProgressBars/ProgressCard.test.jsx +++ b/packages/core/src/components/ProgressBars/ProgressCard.test.jsx @@ -18,7 +18,7 @@ import React from 'react'; import { render } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import ProgressCard from './ProgressCard'; +import { ProgressCard } from './ProgressCard'; const minProps = { title: 'Tingle upgrade', progress: 0.12 }; diff --git a/packages/core/src/components/ProgressBars/ProgressCard.tsx b/packages/core/src/components/ProgressBars/ProgressCard.tsx index 9e70469091..eef6312600 100644 --- a/packages/core/src/components/ProgressBars/ProgressCard.tsx +++ b/packages/core/src/components/ProgressBars/ProgressCard.tsx @@ -18,7 +18,7 @@ import React, { FC } from 'react'; import { makeStyles } from '@material-ui/core'; import { InfoCard } from '../../layout/InfoCard'; import { BottomLinkProps } from '../../layout/BottomLink'; -import CircleProgress from './CircleProgress'; +import { CircleProgress } from './CircleProgress'; type Props = { title: string; @@ -36,7 +36,7 @@ const useStyles = makeStyles({ }, }); -const ProgressCard: FC = props => { +export const ProgressCard: FC = props => { const classes = useStyles(props); const { title, subheader, progress, deepLink, variant } = props; @@ -53,5 +53,3 @@ const ProgressCard: FC = props => { ); }; - -export default ProgressCard; diff --git a/packages/core/src/components/ProgressBars/index.ts b/packages/core/src/components/ProgressBars/index.ts new file mode 100644 index 0000000000..c74e283ae6 --- /dev/null +++ b/packages/core/src/components/ProgressBars/index.ts @@ -0,0 +1,19 @@ +/* + * Copyright 2020 Spotify AB + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export { ProgressCard } from './ProgressCard'; +export { CircleProgress } from './CircleProgress'; +export { HorizontalProgress } from './HorizontalProgress'; diff --git a/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx b/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx index 3015da3029..043084e4fb 100644 --- a/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx +++ b/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx @@ -16,8 +16,8 @@ import React from 'react'; import { render, fireEvent, within } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import Stepper from './SimpleStepper'; -import Step from './SimpleStepperStep'; +import { SimpleStepper as Stepper } from './SimpleStepper'; +import { SimpleStepperStep as Step } from './SimpleStepperStep'; const getTextInSlide = (rendered: any, index: number) => within(rendered.getByTestId(`step${index}`)).getByText; diff --git a/packages/core/src/components/SimpleStepper/SimpleStepper.tsx b/packages/core/src/components/SimpleStepper/SimpleStepper.tsx index b55d70e9a0..bb2c3d640d 100644 --- a/packages/core/src/components/SimpleStepper/SimpleStepper.tsx +++ b/packages/core/src/components/SimpleStepper/SimpleStepper.tsx @@ -40,13 +40,17 @@ export interface StepperProps { onStepChange?: (prevIndex: number, nextIndex: number) => void; } -const Stepper: FC = ({ children, elevated, onStepChange }) => { +export const SimpleStepper: FC = ({ + children, + elevated, + onStepChange, +}) => { const [stepIndex, setStepIndex] = useState(0); const [stepHistory, setStepHistory] = useState([0]); const steps: React.ReactNode[] = []; let endStep; - Children.forEach(children, (child) => { + Children.forEach(children, child => { if (isValidElement(child)) { if (child.props.end) { endStep = child; @@ -80,5 +84,3 @@ const Stepper: FC = ({ children, elevated, onStepChange }) => { ); }; - -export default Stepper; diff --git a/packages/core/src/components/SimpleStepper/SimpleStepperFooter.tsx b/packages/core/src/components/SimpleStepper/SimpleStepperFooter.tsx index b49a62148d..c8cddb375d 100644 --- a/packages/core/src/components/SimpleStepper/SimpleStepperFooter.tsx +++ b/packages/core/src/components/SimpleStepper/SimpleStepperFooter.tsx @@ -18,7 +18,7 @@ import { Button, makeStyles } from '@material-ui/core'; import { StepActions } from './SimpleStepperStep'; import { VerticalStepperContext } from './SimpleStepper'; -const useStyles = makeStyles((theme) => ({ +const useStyles = makeStyles(theme => ({ root: { marginTop: theme.spacing(3), '& button': { @@ -71,7 +71,7 @@ export type SimpleStepperFooterProps = { children?: ReactNode; }; -const SimpleStepperFooter: FC = ({ +export const SimpleStepperFooter: FC = ({ actions = {}, children, }) => { @@ -145,5 +145,3 @@ const SimpleStepperFooter: FC = ({ ); }; - -export default SimpleStepperFooter; diff --git a/packages/core/src/components/SimpleStepper/SimpleStepperStep.tsx b/packages/core/src/components/SimpleStepper/SimpleStepperStep.tsx index 21fbb11cf2..e6ba1f7ddb 100644 --- a/packages/core/src/components/SimpleStepper/SimpleStepperStep.tsx +++ b/packages/core/src/components/SimpleStepper/SimpleStepperStep.tsx @@ -21,9 +21,9 @@ import { Typography, makeStyles, } from '@material-ui/core'; -import SimpleStepperFooter from './SimpleStepperFooter'; +import { SimpleStepperFooter } from './SimpleStepperFooter'; -const useStyles = makeStyles((theme) => ({ +const useStyles = makeStyles(theme => ({ end: { padding: theme.spacing(3), }, @@ -53,7 +53,7 @@ export type StepProps = { actions?: StepActions; }; -const Step: FC = ({ +export const SimpleStepperStep: FC = ({ title, children, end, @@ -82,5 +82,3 @@ const Step: FC = ({ ); }; - -export default Step; diff --git a/packages/core/src/components/SimpleStepper/index.ts b/packages/core/src/components/SimpleStepper/index.ts index 00eb92a382..392a66affa 100644 --- a/packages/core/src/components/SimpleStepper/index.ts +++ b/packages/core/src/components/SimpleStepper/index.ts @@ -14,7 +14,5 @@ * limitations under the License. */ -import SimpleStepper from './SimpleStepper'; -import SimpleStepperStep from './SimpleStepperStep'; - -export { SimpleStepper, SimpleStepperStep }; +export { SimpleStepper } from './SimpleStepper'; +export { SimpleStepperStep } from './SimpleStepperStep'; diff --git a/packages/core/src/components/Status/Status.stories.tsx b/packages/core/src/components/Status/Status.stories.tsx index c0c579b217..01e2876524 100644 --- a/packages/core/src/components/Status/Status.stories.tsx +++ b/packages/core/src/components/Status/Status.stories.tsx @@ -23,7 +23,7 @@ import { StatusRunning, StatusWarning, } from './Status'; -import Table from '../Table'; +import { Table } from '../Table'; import { InfoCard } from '../../layout/InfoCard'; export default { diff --git a/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.stories.tsx b/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.stories.tsx index 47908cba79..bdf0f65375 100644 --- a/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.stories.tsx +++ b/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.stories.tsx @@ -16,7 +16,7 @@ import React, { FC } from 'react'; import { InfoCard } from '../../layout/InfoCard'; import { Grid } from '@material-ui/core'; -import StructuredMetadataTable from '.'; +import { StructuredMetadataTable } from './StructuredMetadataTable'; const cardContentStyle = { heightX: 200, width: 500 }; diff --git a/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.test.jsx b/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.test.jsx index b9aa962969..1ae810ca17 100644 --- a/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.test.jsx +++ b/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.test.jsx @@ -17,7 +17,7 @@ import React from 'react'; import { render } from '@testing-library/react'; -import StructuredMetadataTable from './StructuredMetadataTable'; +import { StructuredMetadataTable } from './StructuredMetadataTable'; import { startCase } from 'lodash'; describe('', () => { diff --git a/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.tsx b/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.tsx index cebf3581d4..f966bd570f 100644 --- a/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.tsx +++ b/packages/core/src/components/StructuredMetadataTable/StructuredMetadataTable.tsx @@ -56,7 +56,7 @@ function renderMap( nested?: boolean, options?: any, ) { - const values = Object.keys(map).map((key) => { + const values = Object.keys(map).map(key => { const value = toValue(map[key], true); const fmtKey = options && options.titleFormat @@ -98,7 +98,7 @@ function toValue( } function mapToItems(info: { [key: string]: string }, options: any) { - return Object.keys(info).map((key) => ( + return Object.keys(info).map(key => ( )); } @@ -147,7 +147,8 @@ interface ComponentProps { dense?: boolean; options?: any; } -export default class StructuredMetadataTable extends Component { + +export class StructuredMetadataTable extends Component { render() { const { metadata, dense, options } = this.props; const metadataItems = mapToItems(metadata, options || {}); diff --git a/packages/core/src/components/StructuredMetadataTable/index.tsx b/packages/core/src/components/StructuredMetadataTable/index.tsx index 588f5ef170..628f3395db 100644 --- a/packages/core/src/components/StructuredMetadataTable/index.tsx +++ b/packages/core/src/components/StructuredMetadataTable/index.tsx @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './StructuredMetadataTable'; +export { StructuredMetadataTable } from './StructuredMetadataTable'; diff --git a/packages/core/src/components/SupportButton/SupportButton.tsx b/packages/core/src/components/SupportButton/SupportButton.tsx index c884086bfa..f8c09f5073 100644 --- a/packages/core/src/components/SupportButton/SupportButton.tsx +++ b/packages/core/src/components/SupportButton/SupportButton.tsx @@ -49,7 +49,7 @@ const useStyles = makeStyles(theme => ({ }, })); -const SupportButton: FC = ({ +export const SupportButton: FC = ({ slackChannel = '#backstage', email = [], children, @@ -155,5 +155,3 @@ const SupportButton: FC = ({ ); }; - -export default SupportButton; diff --git a/packages/core/src/components/SupportButton/index.ts b/packages/core/src/components/SupportButton/index.ts index e930a70685..e133900d0a 100644 --- a/packages/core/src/components/SupportButton/index.ts +++ b/packages/core/src/components/SupportButton/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './SupportButton'; +export { SupportButton } from './SupportButton'; diff --git a/packages/core/src/components/Table/SubvalueCell.tsx b/packages/core/src/components/Table/SubvalueCell.tsx index d8465b2a23..139cdee588 100644 --- a/packages/core/src/components/Table/SubvalueCell.tsx +++ b/packages/core/src/components/Table/SubvalueCell.tsx @@ -33,7 +33,7 @@ type SubvalueCellProps = { subvalue: React.ReactNode; }; -const SubvalueCell: FC = ({ value, subvalue }) => { +export const SubvalueCell: FC = ({ value, subvalue }) => { const classes = useSubvalueCellStyles(); return ( @@ -43,5 +43,3 @@ const SubvalueCell: FC = ({ value, subvalue }) => { ); }; - -export default SubvalueCell; diff --git a/packages/core/src/components/Table/Table.stories.tsx b/packages/core/src/components/Table/Table.stories.tsx index dbe87963ee..3709c301fd 100644 --- a/packages/core/src/components/Table/Table.stories.tsx +++ b/packages/core/src/components/Table/Table.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import Table, { SubvalueCell, TableColumn } from './'; +import { Table, SubvalueCell, TableColumn } from './'; export default { title: 'Table', diff --git a/packages/core/src/components/Table/Table.test.tsx b/packages/core/src/components/Table/Table.test.tsx index fb87db1b4b..24d68fe0d1 100644 --- a/packages/core/src/components/Table/Table.test.tsx +++ b/packages/core/src/components/Table/Table.test.tsx @@ -17,7 +17,7 @@ import React from 'react'; import { render } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import Table from './'; +import { Table } from './Table'; const minProps = { columns: [ diff --git a/packages/core/src/components/Table/Table.tsx b/packages/core/src/components/Table/Table.tsx index 191c394d62..c02aca5659 100644 --- a/packages/core/src/components/Table/Table.tsx +++ b/packages/core/src/components/Table/Table.tsx @@ -162,7 +162,7 @@ export interface TableProps extends MaterialTableProps<{}> { subtitle?: string; } -const Table: FC = ({ +export const Table: FC = ({ columns, options, title, @@ -212,5 +212,3 @@ const Table: FC = ({ /> ); }; - -export default Table; diff --git a/packages/core/src/components/Table/index.ts b/packages/core/src/components/Table/index.ts index 7ea3ead808..aeade2b24f 100644 --- a/packages/core/src/components/Table/index.ts +++ b/packages/core/src/components/Table/index.ts @@ -14,6 +14,6 @@ * limitations under the License. */ -export { default } from './Table'; +export { Table } from './Table'; export type { TableColumn } from './Table'; -export { default as SubvalueCell } from './SubvalueCell'; +export { SubvalueCell } from './SubvalueCell'; diff --git a/packages/core/src/components/Tabs/index.ts b/packages/core/src/components/Tabs/index.ts index 835ab5a8c3..76275f1d6b 100644 --- a/packages/core/src/components/Tabs/index.ts +++ b/packages/core/src/components/Tabs/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export { Tabs as default } from './Tabs'; +export { Tabs } from './Tabs'; diff --git a/packages/core/src/components/TrendLine/TrendLine.stories.tsx b/packages/core/src/components/TrendLine/TrendLine.stories.tsx index 4a0c6ead00..cc2fdda052 100644 --- a/packages/core/src/components/TrendLine/TrendLine.stories.tsx +++ b/packages/core/src/components/TrendLine/TrendLine.stories.tsx @@ -15,8 +15,8 @@ */ import React from 'react'; -import TrendLine from '.'; -import Table from '../Table'; +import { Table } from '../Table'; +import { TrendLine } from './TrendLine'; import { InfoCard } from '../../layout/InfoCard'; export default { diff --git a/packages/core/src/components/TrendLine/TrendLine.test.tsx b/packages/core/src/components/TrendLine/TrendLine.test.tsx index 84e8413f01..dbd8adfccf 100644 --- a/packages/core/src/components/TrendLine/TrendLine.test.tsx +++ b/packages/core/src/components/TrendLine/TrendLine.test.tsx @@ -19,7 +19,7 @@ import React from 'react'; import { render } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import TrendLine from '.'; +import { TrendLine } from './TrendLine'; describe('TrendLine', () => { describe('when no data is present', () => { diff --git a/packages/core/src/components/TrendLine/TrendLine.tsx b/packages/core/src/components/TrendLine/TrendLine.tsx index 3ab9b67e53..6f2f70d38a 100644 --- a/packages/core/src/components/TrendLine/TrendLine.tsx +++ b/packages/core/src/components/TrendLine/TrendLine.tsx @@ -27,7 +27,7 @@ function color(data: number[], theme: BackstageTheme): string | undefined { return theme.palette.status.error; } -const Trendline: FC = props => { +export const TrendLine: FC = props => { const theme = useTheme(); if (!props.data) return null; @@ -38,5 +38,3 @@ const Trendline: FC = props => { ); }; - -export default Trendline; diff --git a/packages/core/src/components/TrendLine/index.ts b/packages/core/src/components/TrendLine/index.ts index 168c6e6d3f..ed98e53389 100644 --- a/packages/core/src/components/TrendLine/index.ts +++ b/packages/core/src/components/TrendLine/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export { default } from './TrendLine'; +export { TrendLine } from './TrendLine'; diff --git a/packages/core/src/components/WarningPanel/WarningPanel.stories.tsx b/packages/core/src/components/WarningPanel/WarningPanel.stories.tsx index 2fd5395db5..92487ed8c5 100644 --- a/packages/core/src/components/WarningPanel/WarningPanel.stories.tsx +++ b/packages/core/src/components/WarningPanel/WarningPanel.stories.tsx @@ -15,7 +15,7 @@ */ import React from 'react'; -import WarningPanel from '.'; +import { WarningPanel } from './WarningPanel'; import { Link, Button } from '@material-ui/core'; export default { diff --git a/packages/core/src/components/WarningPanel/WarningPanel.test.tsx b/packages/core/src/components/WarningPanel/WarningPanel.test.tsx index c4d836cfe1..493b143bbf 100644 --- a/packages/core/src/components/WarningPanel/WarningPanel.test.tsx +++ b/packages/core/src/components/WarningPanel/WarningPanel.test.tsx @@ -18,7 +18,7 @@ import React from 'react'; import { render } from '@testing-library/react'; import { wrapInTestApp } from '@backstage/test-utils'; -import WarningPanel from './WarningPanel'; +import { WarningPanel } from './WarningPanel'; const minProps = { title: 'Mock title', message: 'Some more info' }; diff --git a/packages/core/src/components/WarningPanel/WarningPanel.tsx b/packages/core/src/components/WarningPanel/WarningPanel.tsx index aa173d2174..ab0927fc4c 100644 --- a/packages/core/src/components/WarningPanel/WarningPanel.tsx +++ b/packages/core/src/components/WarningPanel/WarningPanel.tsx @@ -19,7 +19,7 @@ import { Typography, makeStyles } from '@material-ui/core'; import { BackstageTheme } from '@backstage/theme'; import ErrorOutline from '@material-ui/icons/ErrorOutline'; -const useErrorOutlineStyles = makeStyles((theme) => ({ +const useErrorOutlineStyles = makeStyles(theme => ({ root: { marginRight: theme.spacing(1), fill: theme.palette.warningText, @@ -30,7 +30,7 @@ const ErrorOutlineStyled = () => { return ; }; -const useStyles = makeStyles((theme) => ({ +const useStyles = makeStyles(theme => ({ message: { display: 'flex', flexDirection: 'column', @@ -62,7 +62,7 @@ type Props = { title?: string; }; -const WarningPanel: FC = (props) => { +export const WarningPanel: FC = props => { const classes = useStyles(props); const { title, message, children } = props; return ( @@ -82,5 +82,3 @@ const WarningPanel: FC = (props) => { ); }; - -export default WarningPanel; diff --git a/packages/core/src/components/WarningPanel/index.ts b/packages/core/src/components/WarningPanel/index.ts index 704453fb47..5cc9b8bb65 100644 --- a/packages/core/src/components/WarningPanel/index.ts +++ b/packages/core/src/components/WarningPanel/index.ts @@ -13,4 +13,4 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -export { default } from './WarningPanel'; +export { WarningPanel } from './WarningPanel'; diff --git a/packages/core/src/components/index.ts b/packages/core/src/components/index.ts new file mode 100644 index 0000000000..6c070366c7 --- /dev/null +++ b/packages/core/src/components/index.ts @@ -0,0 +1,36 @@ +/* + * Copyright 2020 Spotify AB + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export * from './AlertDisplay'; +export * from './Button'; +export * from './CodeSnippet'; +export * from './CopyTextButton'; +export * from './DismissableBanner'; +export * from './FeatureDiscovery'; +export * from './HorizontalScrollGrid'; +export * from './Lifecycle'; +export * from './Link'; +export * from './OAuthRequestDialog'; +export * from './Progress'; +export * from './ProgressBars'; +export * from './SimpleStepper'; +export * from './Status'; +export * from './StructuredMetadataTable'; +export * from './SupportButton'; +export * from './Table'; +export * from './Tabs'; +export * from './TrendLine'; +export * from './WarningPanel'; diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index c5749866b6..4c0d42bbb2 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -17,28 +17,5 @@ export * from '@backstage/core-api'; export * from './api-wrappers'; +export * from './components'; export * from './layout'; - -export { default as CodeSnippet } from './components/CodeSnippet'; -export { default as DismissableBanner } from './components/DismissableBanner'; -export { AlertDisplay } from './components/AlertDisplay'; -export { default as HorizontalScrollGrid } from './components/HorizontalScrollGrid'; -export { default as ProgressCard } from './components/ProgressBars/ProgressCard'; -export { default as CircleProgress } from './components/ProgressBars/CircleProgress'; -export { default as HorizontalProgress } from './components/ProgressBars/HorizontalProgress'; -export { default as CopyTextButton } from './components/CopyTextButton'; -export { default as Progress } from './components/Progress'; -export * from './components/SimpleStepper'; -export { OAuthRequestDialog } from './components/OAuthRequestDialog'; -export { Lifecycle } from './components/Lifecycle'; -export { default as SupportButton } from './components/SupportButton'; -export { default as Table, SubvalueCell } from './components/Table'; -export type { TableColumn } from './components/Table/Table'; -export { default as StructuredMetadataTable } from './components/StructuredMetadataTable'; -export { default as TrendLine } from './components/TrendLine'; -export { FeatureCalloutCircular } from './components/FeatureDiscovery/FeatureCalloutCircular'; -export * from './components/Status'; -export * from './components/Button'; -export * from './components/Link'; -export { default as WarningPanel } from './components/WarningPanel'; -export { default as Tabs } from './components/Tabs'; diff --git a/packages/core/src/layout/SignInPage/SignInPage.tsx b/packages/core/src/layout/SignInPage/SignInPage.tsx index 5911fe86b2..8a1191f442 100644 --- a/packages/core/src/layout/SignInPage/SignInPage.tsx +++ b/packages/core/src/layout/SignInPage/SignInPage.tsx @@ -22,7 +22,7 @@ import { ContentHeader } from '../ContentHeader/ContentHeader'; import { Grid } from '@material-ui/core'; import { SignInPageProps, useApi, configApiRef } from '@backstage/core-api'; import { useSignInProviders, SignInProviderId } from './providers'; -import Progress from '../../components/Progress'; +import { Progress } from '../../components/Progress'; export type Props = SignInPageProps & { providers: SignInProviderId[];