chore: refresh api reports for NFS header pages

Update the generated API reports to match the NFS header page migration and the new subpage-based public surface in the affected plugins.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
This commit is contained in:
Patrik Oldsberg
2026-03-17 11:09:11 +01:00
parent 0c12141335
commit ba11a7a907
8 changed files with 273 additions and 93 deletions
+5 -5
View File
@@ -37,11 +37,8 @@ export const catalogImportTranslationRef: TranslationRef<
readonly 'importInfoCard.githubIntegration.label': 'GitHub only';
readonly 'importInfoCard.githubIntegration.title': 'Link to a repository';
readonly 'importStepper.finish.title': 'Finish';
readonly 'importStepper.singleLocation.title': 'Select Locations';
readonly 'importStepper.singleLocation.description': 'Discovered Locations: 1';
readonly 'importStepper.multipleLocations.title': 'Select Locations';
readonly 'importStepper.multipleLocations.description': 'Discovered Locations: {{length, number}}';
readonly 'importStepper.noLocation.title': 'Create Pull Request';
readonly 'importStepper.noLocation.createPr.ownerLabel': 'Entity Owner';
readonly 'importStepper.noLocation.createPr.detailsTitle': 'Pull Request Details';
readonly 'importStepper.noLocation.createPr.titleLabel': 'Pull Request Title';
readonly 'importStepper.noLocation.createPr.titlePlaceholder': 'Add Backstage catalog entity descriptor files';
@@ -53,9 +50,12 @@ export const catalogImportTranslationRef: TranslationRef<
readonly 'importStepper.noLocation.createPr.ownerLoadingText': 'Loading groups…';
readonly 'importStepper.noLocation.createPr.ownerHelperText': 'Select an owner from the list or enter a reference to a Group or a User';
readonly 'importStepper.noLocation.createPr.ownerErrorHelperText': 'required value';
readonly 'importStepper.noLocation.createPr.ownerLabel': 'Entity Owner';
readonly 'importStepper.noLocation.createPr.ownerPlaceholder': 'my-group';
readonly 'importStepper.noLocation.createPr.codeownersHelperText': 'WARNING: This may fail if no CODEOWNERS file is found at the target location.';
readonly 'importStepper.singleLocation.title': 'Select Locations';
readonly 'importStepper.singleLocation.description': 'Discovered Locations: 1';
readonly 'importStepper.multipleLocations.title': 'Select Locations';
readonly 'importStepper.multipleLocations.description': 'Discovered Locations: {{length, number}}';
readonly 'importStepper.analyze.title': 'Select URL';
readonly 'importStepper.prepare.title': 'Import Actions';
readonly 'importStepper.prepare.description': 'Optional';
@@ -7,7 +7,6 @@ import { AnyApiFactory } from '@backstage/frontend-plugin-api';
import { AnyRouteRefParams } from '@backstage/frontend-plugin-api';
import { ApiFactory } from '@backstage/frontend-plugin-api';
import { ConfigurableExtensionDataRef } from '@backstage/frontend-plugin-api';
import { DevToolsContentBlueprintParams } from '@backstage/plugin-devtools-react';
import { ExtensionBlueprintParams } from '@backstage/frontend-plugin-api';
import { ExtensionDataRef } from '@backstage/frontend-plugin-api';
import { ExtensionInput } from '@backstage/frontend-plugin-api';
@@ -144,8 +143,8 @@ export default _default;
// @alpha
export const unprocessedEntitiesDevToolsContent: OverridableExtensionDefinition<{
kind: 'devtools-content';
name: undefined;
kind: 'sub-page';
name: 'unprocessed-entities';
config: {
path: string | undefined;
title: string | undefined;
@@ -164,9 +163,22 @@ export const unprocessedEntitiesDevToolsContent: OverridableExtensionDefinition<
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>;
| ExtensionDataRef<string, 'core.title', {}>
| ExtensionDataRef<
IconElement,
'core.icon',
{
optional: true;
}
>;
inputs: {};
params: DevToolsContentBlueprintParams;
params: {
path: string;
title: string;
icon?: IconElement;
loader: () => Promise<JSX.Element>;
routeRef?: RouteRef_2;
};
}>;
// (No @packageDocumentation comment for this package)
+3 -3
View File
@@ -95,16 +95,16 @@ export const catalogTranslationRef: TranslationRef<
readonly 'entityContextMenu.unregisterMenuTitle': 'Unregister entity';
readonly 'entityContextMenu.moreButtonAriaLabel': 'more';
readonly 'entityLabelsCard.title': 'Labels';
readonly 'entityLabelsCard.readMoreButtonTitle': 'Read more';
readonly 'entityLabelsCard.columnKeyLabel': 'Label';
readonly 'entityLabelsCard.columnValueLabel': 'Value';
readonly 'entityLabelsCard.emptyDescription': 'No labels defined for this entity. You can add labels to your entity YAML as shown in the highlighted example below:';
readonly 'entityLabels.ownerLabel': 'Owner';
readonly 'entityLabelsCard.readMoreButtonTitle': 'Read more';
readonly 'entityLabels.warningPanelTitle': 'Entity not found';
readonly 'entityLabels.ownerLabel': 'Owner';
readonly 'entityLabels.lifecycleLabel': 'Lifecycle';
readonly 'entityLinksCard.title': 'Links';
readonly 'entityLinksCard.readMoreButtonTitle': 'Read more';
readonly 'entityLinksCard.emptyDescription': 'No links defined for this entity. You can add links to your entity YAML as shown in the highlighted example below:';
readonly 'entityLinksCard.readMoreButtonTitle': 'Read more';
readonly 'entityNotFound.title': 'Entity was not found';
readonly 'entityNotFound.description': 'Want to help us build this? Check out our Getting Started documentation.';
readonly 'entityNotFound.docButtonTitle': 'DOCS';
-44
View File
@@ -3,48 +3,4 @@
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
```ts
import { AnyRouteRefParams } from '@backstage/frontend-plugin-api';
import { ExtensionBlueprint } from '@backstage/frontend-plugin-api';
import { ExtensionDataRef } from '@backstage/frontend-plugin-api';
import { JSX as JSX_2 } from 'react';
import { RouteRef } from '@backstage/frontend-plugin-api';
// @public
export const DevToolsContentBlueprint: ExtensionBlueprint<{
kind: 'devtools-content';
params: DevToolsContentBlueprintParams;
output:
| ExtensionDataRef<string, 'core.routing.path', {}>
| ExtensionDataRef<
RouteRef<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>;
inputs: {};
config: {
path: string | undefined;
title: string | undefined;
};
configInput: {
title?: string | undefined;
path?: string | undefined;
};
dataRefs: never;
}>;
// @public
export interface DevToolsContentBlueprintParams {
// (undocumented)
loader: () => Promise<JSX_2.Element>;
// (undocumented)
path: string;
// (undocumented)
routeRef?: RouteRef;
// (undocumented)
title: string;
}
```
+114 -17
View File
@@ -125,23 +125,6 @@ const _default: OverridableFrontendPlugin<
internal: false;
}
>;
contents: ExtensionInput<
| ConfigurableExtensionDataRef<string, 'core.title', {}>
| ConfigurableExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ConfigurableExtensionDataRef<string, 'core.routing.path', {}>
| ConfigurableExtensionDataRef<
RouteRef_2<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>,
{
singleton: false;
optional: true;
internal: false;
}
>;
};
kind: 'page';
name: undefined;
@@ -154,6 +137,120 @@ const _default: OverridableFrontendPlugin<
noHeader?: boolean;
};
}>;
'sub-page:devtools/config': OverridableExtensionDefinition<{
kind: 'sub-page';
name: 'config';
config: {
path: string | undefined;
title: string | undefined;
};
configInput: {
title?: string | undefined;
path?: string | undefined;
};
output:
| ExtensionDataRef<string, 'core.routing.path', {}>
| ExtensionDataRef<
RouteRef_2<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>
| ExtensionDataRef<
IconElement,
'core.icon',
{
optional: true;
}
>;
inputs: {};
params: {
path: string;
title: string;
icon?: IconElement;
loader: () => Promise<JSX.Element>;
routeRef?: RouteRef_2;
};
}>;
'sub-page:devtools/info': OverridableExtensionDefinition<{
kind: 'sub-page';
name: 'info';
config: {
path: string | undefined;
title: string | undefined;
};
configInput: {
title?: string | undefined;
path?: string | undefined;
};
output:
| ExtensionDataRef<string, 'core.routing.path', {}>
| ExtensionDataRef<
RouteRef_2<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>
| ExtensionDataRef<
IconElement,
'core.icon',
{
optional: true;
}
>;
inputs: {};
params: {
path: string;
title: string;
icon?: IconElement;
loader: () => Promise<JSX.Element>;
routeRef?: RouteRef_2;
};
}>;
'sub-page:devtools/scheduled-tasks': OverridableExtensionDefinition<{
kind: 'sub-page';
name: 'scheduled-tasks';
config: {
path: string | undefined;
title: string | undefined;
};
configInput: {
title?: string | undefined;
path?: string | undefined;
};
output:
| ExtensionDataRef<string, 'core.routing.path', {}>
| ExtensionDataRef<
RouteRef_2<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>
| ExtensionDataRef<
IconElement,
'core.icon',
{
optional: true;
}
>;
inputs: {};
params: {
path: string;
title: string;
icon?: IconElement;
loader: () => Promise<JSX.Element>;
routeRef?: RouteRef_2;
};
}>;
}
>;
export default _default;
+7 -7
View File
@@ -125,8 +125,8 @@ export const notificationsTranslationRef: TranslationRef<
'plugin.notifications',
{
readonly 'table.errors.markAllReadFailed': 'Failed to mark all notifications as read';
readonly 'table.pagination.labelDisplayedRows': '{from}-{to} of {count}';
readonly 'table.pagination.firstTooltip': 'First Page';
readonly 'table.pagination.labelDisplayedRows': '{from}-{to} of {count}';
readonly 'table.pagination.labelRowsSelect': 'rows';
readonly 'table.pagination.lastTooltip': 'Last Page';
readonly 'table.pagination.nextTooltip': 'Next Page';
@@ -140,6 +140,12 @@ export const notificationsTranslationRef: TranslationRef<
readonly 'table.confirmDialog.title': 'Are you sure?';
readonly 'table.confirmDialog.markAllReadDescription': 'Mark <b>all</b> notifications as <b>read</b>.';
readonly 'table.confirmDialog.markAllReadConfirmation': 'Mark All';
readonly 'settings.table.origin': 'Origin';
readonly 'settings.table.topic': 'Topic';
readonly 'settings.title': 'Notification settings';
readonly 'settings.errors.useNotificationFormat': 'useNotificationFormat must be used within a NotificationFormatProvider';
readonly 'settings.errorTitle': 'Failed to load settings';
readonly 'settings.noSettingsAvailable': 'No notification settings available, check back later';
readonly 'filters.view.all': 'All';
readonly 'filters.view.label': 'View';
readonly 'filters.view.read': 'Read notifications';
@@ -164,12 +170,6 @@ export const notificationsTranslationRef: TranslationRef<
readonly 'filters.sortBy.newest': 'Newest on top';
readonly 'filters.sortBy.oldest': 'Oldest on top';
readonly 'filters.sortBy.topic': 'Topic';
readonly 'settings.table.origin': 'Origin';
readonly 'settings.table.topic': 'Topic';
readonly 'settings.title': 'Notification settings';
readonly 'settings.errors.useNotificationFormat': 'useNotificationFormat must be used within a NotificationFormatProvider';
readonly 'settings.errorTitle': 'Failed to load settings';
readonly 'settings.noSettingsAvailable': 'No notification settings available, check back later';
readonly 'sidebar.title': 'Notifications';
readonly 'sidebar.errors.markAsReadFailed': 'Failed to mark notification as read';
readonly 'sidebar.errors.fetchNotificationFailed': 'Failed to fetch notification';
+4 -4
View File
@@ -74,8 +74,8 @@ export const EntityNamePickerFieldExtension: FieldExtensionComponent_2<
export const EntityPickerFieldExtension: FieldExtensionComponent_2<
string,
{
autoSelect?: boolean | undefined;
defaultKind?: string | undefined;
autoSelect?: boolean | undefined;
defaultNamespace?: string | false | undefined;
catalogFilter?:
| Record<
@@ -104,8 +104,8 @@ export const EntityPickerFieldExtension: FieldExtensionComponent_2<
export const EntityPickerFieldSchema: FieldSchema_2<
string,
{
autoSelect?: boolean | undefined;
defaultKind?: string | undefined;
autoSelect?: boolean | undefined;
defaultNamespace?: string | false | undefined;
catalogFilter?:
| Record<
@@ -251,8 +251,8 @@ export type MyGroupsPickerUiOptions = NonNullable<
export const OwnedEntityPickerFieldExtension: FieldExtensionComponent_2<
string,
{
autoSelect?: boolean | undefined;
defaultKind?: string | undefined;
autoSelect?: boolean | undefined;
defaultNamespace?: string | false | undefined;
catalogFilter?:
| Record<
@@ -281,8 +281,8 @@ export const OwnedEntityPickerFieldExtension: FieldExtensionComponent_2<
export const OwnedEntityPickerFieldSchema: FieldSchema_2<
string,
{
autoSelect?: boolean | undefined;
defaultKind?: string | undefined;
autoSelect?: boolean | undefined;
defaultNamespace?: string | false | undefined;
catalogFilter?:
| Record<
+123 -8
View File
@@ -45,6 +45,8 @@ const _default: OverridableFrontendPlugin<
};
}>;
'page:user-settings': OverridableExtensionDefinition<{
kind: 'page';
name: undefined;
config: {
path: string | undefined;
title: string | undefined;
@@ -108,6 +110,44 @@ const _default: OverridableFrontendPlugin<
internal: false;
}
>;
};
params: {
path: string;
title?: string;
icon?: IconElement;
loader?: () => Promise<JSX_2.Element>;
routeRef?: RouteRef;
noHeader?: boolean;
};
}>;
'sub-page:user-settings/auth-providers': OverridableExtensionDefinition<{
config: {
path: string | undefined;
title: string | undefined;
};
configInput: {
title?: string | undefined;
path?: string | undefined;
};
output:
| ExtensionDataRef<string, 'core.routing.path', {}>
| ExtensionDataRef<
RouteRef<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>
| ExtensionDataRef<
IconElement,
'core.icon',
{
optional: true;
}
>;
inputs: {
providerSettings: ExtensionInput<
ConfigurableExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>,
{
@@ -117,15 +157,90 @@ const _default: OverridableFrontendPlugin<
}
>;
};
kind: 'page';
name: undefined;
kind: 'sub-page';
name: 'auth-providers';
params: {
path: string;
title?: string;
title: string;
icon?: IconElement;
loader?: () => Promise<JSX_2.Element>;
loader: () => Promise<JSX.Element>;
routeRef?: RouteRef;
};
}>;
'sub-page:user-settings/feature-flags': OverridableExtensionDefinition<{
kind: 'sub-page';
name: 'feature-flags';
config: {
path: string | undefined;
title: string | undefined;
};
configInput: {
title?: string | undefined;
path?: string | undefined;
};
output:
| ExtensionDataRef<string, 'core.routing.path', {}>
| ExtensionDataRef<
RouteRef<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>
| ExtensionDataRef<
IconElement,
'core.icon',
{
optional: true;
}
>;
inputs: {};
params: {
path: string;
title: string;
icon?: IconElement;
loader: () => Promise<JSX.Element>;
routeRef?: RouteRef;
};
}>;
'sub-page:user-settings/general': OverridableExtensionDefinition<{
kind: 'sub-page';
name: 'general';
config: {
path: string | undefined;
title: string | undefined;
};
configInput: {
title?: string | undefined;
path?: string | undefined;
};
output:
| ExtensionDataRef<string, 'core.routing.path', {}>
| ExtensionDataRef<
RouteRef<AnyRouteRefParams>,
'core.routing.ref',
{
optional: true;
}
>
| ExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>
| ExtensionDataRef<string, 'core.title', {}>
| ExtensionDataRef<
IconElement,
'core.icon',
{
optional: true;
}
>;
inputs: {};
params: {
path: string;
title: string;
icon?: IconElement;
loader: () => Promise<JSX.Element>;
routeRef?: RouteRef;
noHeader?: boolean;
};
}>;
}
@@ -177,10 +292,10 @@ export const userSettingsTranslationRef: TranslationRef<
readonly 'themeToggle.select': 'Select {{theme}}';
readonly 'themeToggle.title': 'Theme';
readonly 'themeToggle.description': 'Change the theme mode';
readonly 'themeToggle.selectAuto': 'Select Auto Theme';
readonly 'themeToggle.names.auto': 'Auto';
readonly 'themeToggle.names.dark': 'Dark';
readonly 'themeToggle.names.light': 'Light';
readonly 'themeToggle.selectAuto': 'Select Auto Theme';
readonly 'signOutMenu.title': 'Sign Out';
readonly 'signOutMenu.moreIconTitle': 'more';
readonly 'pinToggle.title': 'Pin Sidebar';
@@ -197,10 +312,10 @@ export const userSettingsTranslationRef: TranslationRef<
readonly 'emptyProviders.action.title': 'Open app-config.yaml and make the changes as highlighted below:';
readonly 'emptyProviders.action.readMoreButtonTitle': 'Read More';
readonly 'emptyProviders.description': 'You can add Authentication Providers to Backstage which allows you to use these providers to authenticate yourself.';
readonly 'providerSettingsItem.title.signOut': 'Sign out from {{title}}';
readonly 'providerSettingsItem.title.signIn': 'Sign in to {{title}}';
readonly 'providerSettingsItem.buttonTitle.signOut': 'Sign out';
readonly 'providerSettingsItem.title.signOut': 'Sign out from {{title}}';
readonly 'providerSettingsItem.buttonTitle.signIn': 'Sign in';
readonly 'providerSettingsItem.buttonTitle.signOut': 'Sign out';
readonly 'authProviders.title': 'Available Providers';
readonly 'defaultSettingsPage.tabsTitle.featureFlags': 'Feature Flags';
readonly 'defaultSettingsPage.tabsTitle.authProviders': 'Authentication Providers';