From 0d6944d1611b759859f1a3caf927e44e270e8b63 Mon Sep 17 00:00:00 2001 From: Daniel Ortiz Lira Date: Tue, 21 Sep 2021 11:48:51 -0500 Subject: [PATCH] Add initial backstage overridable components type Signed-off-by: Daniel Ortiz Lira --- .../src/overridableComponents.ts | 174 ++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 packages/core-components/src/overridableComponents.ts diff --git a/packages/core-components/src/overridableComponents.ts b/packages/core-components/src/overridableComponents.ts new file mode 100644 index 0000000000..e0f549342c --- /dev/null +++ b/packages/core-components/src/overridableComponents.ts @@ -0,0 +1,174 @@ +/* + * Copyright 2021 The Backstage Authors + * + * 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. + */ +import { Overrides } from '@material-ui/core/styles/overrides'; +import { StyleRules } from '@material-ui/core/styles/withStyles'; + +import { + AvatarClassKey, + // ChecboxTreeClassKey + DependencyGraphDefaultLabelClassKey, + DependencyGraphDefaultNodeClassKey, + DependencyGraphEdgeClassKey, + DependencyGraphNodeClassKey, + DismissbleBannerClassKey, + EmptyStateClassKey, + EmptyStateImageClassKey, + MissingAnnotationEmptyStateClassKey, + ErrorPanelClassKey, + FeatureCalloutCircleClassKey, + HeaderIconLinkRowClassKey, + IconLinkVerticalClassKey, + HorizontalScrollGridClassKey, + LifecycleClassKey, + MarkdownContentClassKey, + LoginRequestListItemClassKey, + OAuthRequestDialogClassKey, + OverflowTooltipClassKey, + GaugeClassKey, + GaugeCardClassKey, + ResponseErrorPanelClassKey, + SelectInputBaseClassKey, + SelectClassKey, + ClosedDropdownClassKey, + OpenedDropdownClassKey, + SimpleStepperFooterClassKey, + SimpleStepperStepClassKey, + StatusClassKey, + MetadataTableTitleCellClassKey, + MetadataTableCellClassKey, + MetadataTableListClassKey, + MetadataTableListItemClassKey, + StructuredMetadataTableListClassKey, + StructuredMetadataTableNestedListClassKey, + SupportButtonClassKey, + TableFiltersClassKey, + SubvalueCellClassKey, + TableHeaderClassKey, + // TableToolbarClassKey, + FiltersContainerClassKey, + TableClassKey, + TabBarClassKey, + TabIconClassKey, + TabsClassKey, + WarningPanelClassKey, + // BottomLinkClassKey, +} from './components'; + +import { + BreadcrumbsClickableTextClassKey, + BreadcrumbsStyledBoxClassKey, + BackstageContentClassKey, + ContentHeaderClassKey, + ErrorPageClassKey, + MicDropClassKey, + HeaderClassKey, + HeaderLabelClassKey, + HeaderTabsClassKey, + InfoCardClassKey, + CardActionsTopRightClassKey, + ItemCardGridClassKey, + ItemCardHeaderClassKey, + PageClassKey, + SidebarClassKey, + SidebarIntroClassKey, + SidebarItemClassKey, + SidebarPageClassKey, + CustomProviderClassKey, + SignInPageClassKey, + TabbedCardClassKey, + BoldHeaderClassKey, + CardTabClassKey, +} from './layout'; + +export type BackstageComponentsNameToClassKey = { + BackstageAvatar: AvatarClassKey; + // BackstageCheckboxTree: CheckboxTreeClassKey; + BackstageDependencyGraphDefaultLabel: DependencyGraphDefaultLabelClassKey; + BackstageDependencyGraphDefaultNode: DependencyGraphDefaultNodeClassKey; + BackstageDependencyGraphEdge: DependencyGraphEdgeClassKey; + BackstageDependencyGraphNode: DependencyGraphNodeClassKey; + BackstageDismissableBanner: DismissbleBannerClassKey; + BackstageEmptyState: EmptyStateClassKey; + BackstageEmptyStateImage: EmptyStateImageClassKey; + BackstageMissingAnnotationEmptyState: MissingAnnotationEmptyStateClassKey; + BackstageErrorPanel: ErrorPanelClassKey; + BackstageFeatureCalloutCircular: FeatureCalloutCircleClassKey; + BackstageHeaderIconLinkRow: HeaderIconLinkRowClassKey; + BackstageIconLinkVertical: IconLinkVerticalClassKey; + BackstageHorizontalScrollGrid: HorizontalScrollGridClassKey; + BackstageLifecycle: LifecycleClassKey; + BackstageMarkdownContent: MarkdownContentClassKey; + BackstageLoginRequestListItem: LoginRequestListItemClassKey; + OAuthRequestDialog: OAuthRequestDialogClassKey; + BackstageOverflowTooltip: OverflowTooltipClassKey; + BackstageGauge: GaugeClassKey; + BackstageGaugeCard: GaugeCardClassKey; + BackstageResponseErrorPanel: ResponseErrorPanelClassKey; + BackstageSelectInputBase: SelectInputBaseClassKey; + BackstageSelect: SelectClassKey; + BackstageClosedDropdown: ClosedDropdownClassKey; + BackstageOpenedDropdown: OpenedDropdownClassKey; + BackstageSimpleStepperFooter: SimpleStepperFooterClassKey; + SimpleStepperStep: SimpleStepperStepClassKey; + BackstageStatus: StatusClassKey; + BackstageMetadataTableTitleCell: MetadataTableTitleCellClassKey; + BackstageMetadataTableCell: MetadataTableCellClassKey; + BackstageMetadataTableList: MetadataTableListClassKey; + BackstageMetadataTableListItem: MetadataTableListItemClassKey; + BackstageStructuredMetadataTableList: StructuredMetadataTableListClassKey; + BackstageStructuredMetadataTableNestedList: StructuredMetadataTableNestedListClassKey; + BackstageSupportButton: SupportButtonClassKey; + BackstageTableFilters: TableFiltersClassKey; + BackstageSubvalueCell: SubvalueCellClassKey; + BackstageTableHeader: TableHeaderClassKey; + // BackstageTableToolbar: TableToolbarClassKey; + BackstageTableFiltersContainer: FiltersContainerClassKey; + BackstageTable: TableClassKey; + BackstageTabBar: TabBarClassKey; + BackstageTabIcon: TabIconClassKey; + BackstageTabs: TabsClassKey; + BackstageWarningPanel: WarningPanelClassKey; + // BackstageBottomLink: BottomLinkClassKey; + BackstageBreadcrumbsClickableText: BreadcrumbsClickableTextClassKey; + BackstageBreadcrumbsStyledBox: BreadcrumbsStyledBoxClassKey; + BackstageContent: BackstageContentClassKey; + BackstageContentHeader: ContentHeaderClassKey; + BackstageErrorPage: ErrorPageClassKey; + BackstageErrorPageMicDrop: MicDropClassKey; + BackstageHeader: HeaderClassKey; + BackstageHeaderLabel: HeaderLabelClassKey; + BackstageHeaderTabs: HeaderTabsClassKey; + BackstageInfoCard: InfoCardClassKey; + BackstageInfoCardCardActionsTopRight: CardActionsTopRightClassKey; + BackstageItemCardGrid: ItemCardGridClassKey; + BackstageItemCardHeader: ItemCardHeaderClassKey; + BackstagePage: PageClassKey; + BackstageSidebar: SidebarClassKey; + BackstageSidebarIntro: SidebarIntroClassKey; + BackstageSidebarItem: SidebarItemClassKey; + BackstageSidebarPage: SidebarPageClassKey; + BackstageCustomProvider: CustomProviderClassKey; + BackstageSignInPage: SignInPageClassKey; + BackstageTabbedCard: TabbedCardClassKey; + BackstageTabbedCardBoldHeader: BoldHeaderClassKey; + BackstageCardTab: CardTabClassKey; +}; + +export type BackstageOverrides = Overrides & { + [Name in keyof BackstageComponentsNameToClassKey]?: Partial< + StyleRules + >; +};