@backstage/plugin-scaffolder 1.10.0 → 1.11.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/alpha/package.json +1 -1
- package/dist/esm/{Router-77e86b6b.esm.js → Router-73a659c0.esm.js} +6 -13
- package/dist/esm/Router-73a659c0.esm.js.map +1 -0
- package/dist/esm/{default-40114591.esm.js → default-35e63cd4.esm.js} +2 -2
- package/dist/esm/{default-40114591.esm.js.map → default-35e63cd4.esm.js.map} +1 -1
- package/dist/esm/{index-4dbb353c.esm.js → index-42d9f897.esm.js} +14 -112
- package/dist/esm/index-42d9f897.esm.js.map +1 -0
- package/dist/esm/{index-690bf85d.esm.js → index-88194b1f.esm.js} +52 -6
- package/dist/esm/index-88194b1f.esm.js.map +1 -0
- package/dist/index.alpha.d.ts +14 -26
- package/dist/index.beta.d.ts +12 -24
- package/dist/index.d.ts +12 -24
- package/dist/index.esm.js +1 -1
- package/package.json +11 -11
- package/dist/esm/Router-77e86b6b.esm.js.map +0 -1
- package/dist/esm/index-4dbb353c.esm.js.map +0 -1
- package/dist/esm/index-690bf85d.esm.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-88194b1f.esm.js","sources":["../../src/next/TemplateListPage/CategoryPicker.tsx","../../src/next/TemplateListPage/RegisterExistingButton.tsx","../../src/next/TemplateListPage/TemplateGroups.tsx","../../src/next/TemplateListPage/TemplateListPage.tsx","../../src/next/TemplateWizardPage/TemplateWizardPage.tsx","../../src/next/Router/Router.tsx"],"sourcesContent":["/*\n * Copyright 2021 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from 'react';\nimport capitalize from 'lodash/capitalize';\nimport { Progress } from '@backstage/core-components';\nimport {\n Box,\n Checkbox,\n FormControlLabel,\n TextField,\n Typography,\n} from '@material-ui/core';\nimport CheckBoxIcon from '@material-ui/icons/CheckBox';\nimport CheckBoxOutlineBlankIcon from '@material-ui/icons/CheckBoxOutlineBlank';\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\nimport { Autocomplete } from '@material-ui/lab';\nimport { useEntityTypeFilter } from '@backstage/plugin-catalog-react';\nimport { alertApiRef, useApi } from '@backstage/core-plugin-api';\n\nconst icon = <CheckBoxOutlineBlankIcon fontSize=\"small\" />;\nconst checkedIcon = <CheckBoxIcon fontSize=\"small\" />;\n\n/**\n * The Category Picker that is rendered on the left side for picking\n * categories and filtering the template list.\n */\nexport const CategoryPicker = () => {\n const alertApi = useApi(alertApiRef);\n const { error, loading, availableTypes, selectedTypes, setSelectedTypes } =\n useEntityTypeFilter();\n\n if (loading) return <Progress />;\n\n if (error) {\n alertApi.post({\n message: `Failed to load entity types with error: ${error}`,\n severity: 'error',\n });\n return null;\n }\n\n if (!availableTypes) return null;\n\n return (\n <Box pb={1} pt={1}>\n <Typography variant=\"button\">Categories</Typography>\n <Autocomplete\n multiple\n aria-label=\"Categories\"\n options={availableTypes}\n value={selectedTypes}\n onChange={(_: object, value: string[]) => setSelectedTypes(value)}\n renderOption={(option, { selected }) => (\n <FormControlLabel\n control={\n <Checkbox\n icon={icon}\n checkedIcon={checkedIcon}\n checked={selected}\n />\n }\n label={capitalize(option)}\n />\n )}\n size=\"small\"\n popupIcon={<ExpandMoreIcon />}\n renderInput={params => <TextField {...params} variant=\"outlined\" />}\n />\n </Box>\n );\n};\n","/*\n * Copyright 2021 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { BackstageTheme } from '@backstage/theme';\nimport Button from '@material-ui/core/Button';\nimport IconButton from '@material-ui/core/IconButton';\nimport useMediaQuery from '@material-ui/core/useMediaQuery';\nimport React from 'react';\nimport { Link as RouterLink, LinkProps } from 'react-router-dom';\nimport AddCircleOutline from '@material-ui/icons/AddCircleOutline';\nimport { catalogEntityCreatePermission } from '@backstage/plugin-catalog-common';\nimport { usePermission } from '@backstage/plugin-permission-react';\n\n/**\n * Properties for {@link RegisterExistingButton}\n *\n * @alpha\n */\nexport type RegisterExistingButtonProps = {\n title: string;\n} & Partial<Pick<LinkProps, 'to'>>;\n\n/**\n * A button that helps users to register an existing component.\n * @alpha\n */\nexport const RegisterExistingButton = (props: RegisterExistingButtonProps) => {\n const { title, to } = props;\n const { allowed } = usePermission({\n permission: catalogEntityCreatePermission,\n });\n const isXSScreen = useMediaQuery<BackstageTheme>(theme =>\n theme.breakpoints.down('xs'),\n );\n\n if (!to || !allowed) {\n return null;\n }\n\n return isXSScreen ? (\n <IconButton\n component={RouterLink}\n color=\"primary\"\n title={title}\n size=\"small\"\n to={to}\n >\n <AddCircleOutline />\n </IconButton>\n ) : (\n <Button component={RouterLink} variant=\"contained\" color=\"primary\" to={to}>\n {title}\n </Button>\n );\n};\n","/*\n * Copyright 2022 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport React, { useCallback } from 'react';\n\nimport {\n Entity,\n parseEntityRef,\n stringifyEntityRef,\n} from '@backstage/catalog-model';\nimport { useEntityList } from '@backstage/plugin-catalog-react';\nimport { TemplateEntityV1beta3 } from '@backstage/plugin-scaffolder-common';\nimport { Progress, Link, DocsIcon } from '@backstage/core-components';\nimport { Typography } from '@material-ui/core';\nimport {\n errorApiRef,\n useApi,\n useApp,\n useRouteRef,\n} from '@backstage/core-plugin-api';\nimport { TemplateGroup } from '@backstage/plugin-scaffolder-react';\nimport { viewTechDocRouteRef } from '../../routes';\nimport { nextSelectedTemplateRouteRef } from '../routes';\nimport { useNavigate } from 'react-router-dom';\n\n/**\n * @alpha\n */\nexport type TemplateGroupFilter = {\n title?: React.ReactNode;\n filter: (entity: Entity) => boolean;\n};\n\nexport interface TemplateGroupsProps {\n groups: TemplateGroupFilter[];\n TemplateCardComponent?: React.ComponentType<{\n template: TemplateEntityV1beta3;\n }>;\n}\n\nexport const TemplateGroups = (props: TemplateGroupsProps) => {\n const { loading, error, entities } = useEntityList();\n const { groups, TemplateCardComponent } = props;\n const errorApi = useApi(errorApiRef);\n const app = useApp();\n const viewTechDocsLink = useRouteRef(viewTechDocRouteRef);\n const templateRoute = useRouteRef(nextSelectedTemplateRouteRef);\n const navigate = useNavigate();\n const onSelected = useCallback(\n (template: TemplateEntityV1beta3) => {\n const { namespace, name } = parseEntityRef(stringifyEntityRef(template));\n navigate(templateRoute({ namespace, templateName: name }));\n },\n [navigate, templateRoute],\n );\n\n if (loading) {\n return <Progress />;\n }\n\n if (error) {\n errorApi.post(error);\n return null;\n }\n\n if (!entities || !entities.length) {\n return (\n <Typography variant=\"body2\">\n No templates found that match your filter. Learn more about{' '}\n <Link to=\"https://backstage.io/docs/features/software-templates/adding-templates\">\n adding templates\n </Link>\n .\n </Typography>\n );\n }\n\n return (\n <>\n {groups.map(({ title, filter }, index) => {\n const templates = entities\n .filter((e): e is TemplateEntityV1beta3 => filter(e))\n .map(template => {\n const { kind, namespace, name } = parseEntityRef(\n stringifyEntityRef(template),\n );\n const additionalLinks =\n template.metadata.annotations?.['backstage.io/techdocs-ref'] &&\n viewTechDocsLink\n ? [\n {\n icon: app.getSystemIcon('docs') ?? DocsIcon,\n text: 'View TechDocs',\n url: viewTechDocsLink({ kind, namespace, name }),\n },\n ]\n : [];\n\n return {\n template,\n additionalLinks,\n };\n });\n\n return (\n <TemplateGroup\n key={index}\n templates={templates}\n title={title}\n components={{ CardComponent: TemplateCardComponent }}\n onSelected={onSelected}\n />\n );\n })}\n </>\n );\n};\n","/*\n * Copyright 2022 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from 'react';\nimport { TemplateEntityV1beta3 } from '@backstage/plugin-scaffolder-common';\n\nimport {\n Content,\n ContentHeader,\n Header,\n Page,\n SupportButton,\n} from '@backstage/core-components';\nimport {\n EntityKindPicker,\n EntityListProvider,\n EntitySearchBar,\n EntityTagPicker,\n CatalogFilterLayout,\n UserListPicker,\n} from '@backstage/plugin-catalog-react';\nimport { CategoryPicker } from './CategoryPicker';\nimport { RegisterExistingButton } from './RegisterExistingButton';\nimport { useRouteRef } from '@backstage/core-plugin-api';\nimport { TemplateGroupFilter, TemplateGroups } from './TemplateGroups';\nimport { registerComponentRouteRef } from '../../routes';\n\nexport type TemplateListPageProps = {\n TemplateCardComponent?: React.ComponentType<{\n template: TemplateEntityV1beta3;\n }>;\n groups?: TemplateGroupFilter[];\n};\n\nconst defaultGroup: TemplateGroupFilter = {\n title: 'All Templates',\n filter: () => true,\n};\n\nexport const TemplateListPage = (props: TemplateListPageProps) => {\n const registerComponentLink = useRouteRef(registerComponentRouteRef);\n const { TemplateCardComponent, groups = [] } = props;\n\n return (\n <EntityListProvider>\n <Page themeId=\"website\">\n <Header\n pageTitleOverride=\"Create a new component\"\n title=\"Create a new component\"\n subtitle=\"Create new software components using standard templates in your organization\"\n />\n <Content>\n <ContentHeader title=\"Available Templates\">\n <RegisterExistingButton\n title=\"Register Existing Component\"\n to={registerComponentLink && registerComponentLink()}\n />\n <SupportButton>\n Create new software components using standard templates. Different\n templates create different kinds of components (services,\n websites, documentation, ...).\n </SupportButton>\n </ContentHeader>\n\n <CatalogFilterLayout>\n <CatalogFilterLayout.Filters>\n <EntitySearchBar />\n <EntityKindPicker initialFilter=\"template\" hidden />\n <UserListPicker\n initialFilter=\"all\"\n availableFilters={['all', 'starred']}\n />\n <CategoryPicker />\n <EntityTagPicker />\n </CatalogFilterLayout.Filters>\n <CatalogFilterLayout.Content>\n <TemplateGroups\n groups={[...groups, defaultGroup]}\n TemplateCardComponent={TemplateCardComponent}\n />\n </CatalogFilterLayout.Content>\n </CatalogFilterLayout>\n </Content>\n </Page>\n </EntityListProvider>\n );\n};\n","/*\n * Copyright 2022 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport React from 'react';\nimport { Navigate, useNavigate } from 'react-router-dom';\nimport { stringifyEntityRef } from '@backstage/catalog-model';\nimport {\n AnalyticsContext,\n useApi,\n useRouteRef,\n useRouteRefParams,\n} from '@backstage/core-plugin-api';\nimport {\n scaffolderApiRef,\n useTemplateSecrets,\n Workflow,\n type LayoutOptions,\n} from '@backstage/plugin-scaffolder-react';\nimport { NextFieldExtensionOptions } from '@backstage/plugin-scaffolder-react';\nimport { JsonValue } from '@backstage/types';\nimport { type FormProps } from '../types';\nimport { nextRouteRef } from '../routes';\nimport { scaffolderTaskRouteRef, selectedTemplateRouteRef } from '../../routes';\nimport { Header, Page } from '@backstage/core-components';\n\nexport type TemplateWizardPageProps = {\n customFieldExtensions: NextFieldExtensionOptions<any, any>[];\n layouts?: LayoutOptions[];\n FormProps?: FormProps;\n};\n\nexport const TemplateWizardPage = (props: TemplateWizardPageProps) => {\n const rootRef = useRouteRef(nextRouteRef);\n const taskRoute = useRouteRef(scaffolderTaskRouteRef);\n const { secrets } = useTemplateSecrets();\n const scaffolderApi = useApi(scaffolderApiRef);\n const navigate = useNavigate();\n const { templateName, namespace } = useRouteRefParams(\n selectedTemplateRouteRef,\n );\n\n const templateRef = stringifyEntityRef({\n kind: 'Template',\n namespace,\n name: templateName,\n });\n\n const onCreate = async (values: Record<string, JsonValue>) => {\n const { taskId } = await scaffolderApi.scaffold({\n templateRef,\n values,\n secrets,\n });\n\n navigate(taskRoute({ taskId }));\n };\n\n const onError = () => <Navigate to={rootRef()} />;\n\n return (\n <AnalyticsContext attributes={{ entityRef: templateRef }}>\n <Page themeId=\"website\">\n <Header\n pageTitleOverride=\"Create a new component\"\n title=\"Create a new component\"\n subtitle=\"Create new software components using standard templates in your organization\"\n />\n <Workflow\n namespace={namespace}\n templateName={templateName}\n onCreate={onCreate}\n onError={onError}\n extensions={props.customFieldExtensions}\n FormProps={props.FormProps}\n layouts={props.layouts}\n />\n </Page>\n </AnalyticsContext>\n );\n};\n","/*\n * Copyright 2022 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport React, { PropsWithChildren } from 'react';\nimport { Routes, Route, useOutlet } from 'react-router-dom';\nimport { TemplateListPage } from '../TemplateListPage';\nimport { TemplateWizardPage } from '../TemplateWizardPage';\nimport {\n NextFieldExtensionOptions,\n SecretsContextProvider,\n useCustomFieldExtensions,\n useCustomLayouts,\n type FormProps,\n} from '@backstage/plugin-scaffolder-react';\n\nimport { TemplateEntityV1beta3 } from '@backstage/plugin-scaffolder-common';\nimport { TemplateGroupFilter } from '../TemplateListPage/TemplateGroups';\nimport { DEFAULT_SCAFFOLDER_FIELD_EXTENSIONS } from '../../extensions/default';\nimport { nextSelectedTemplateRouteRef } from '../routes';\n\n/**\n * The Props for the Scaffolder Router\n *\n * @alpha\n */\nexport type NextRouterProps = {\n components?: {\n TemplateCardComponent?: React.ComponentType<{\n template: TemplateEntityV1beta3;\n }>;\n TaskPageComponent?: React.ComponentType<{}>;\n };\n groups?: TemplateGroupFilter[];\n FormProps?: FormProps;\n};\n\n/**\n * The Scaffolder Router\n *\n * @alpha\n */\nexport const Router = (props: PropsWithChildren<NextRouterProps>) => {\n const { components: { TemplateCardComponent } = {} } = props;\n const outlet = useOutlet() || props.children;\n const customFieldExtensions =\n useCustomFieldExtensions<NextFieldExtensionOptions>(outlet);\n const fieldExtensions = [\n ...customFieldExtensions,\n ...DEFAULT_SCAFFOLDER_FIELD_EXTENSIONS.filter(\n ({ name }) =>\n !customFieldExtensions.some(\n customFieldExtension => customFieldExtension.name === name,\n ),\n ),\n ] as NextFieldExtensionOptions[];\n\n const customLayouts = useCustomLayouts(outlet);\n\n return (\n <Routes>\n <Route\n path=\"/\"\n element={\n <TemplateListPage\n TemplateCardComponent={TemplateCardComponent}\n groups={props.groups}\n />\n }\n />\n <Route\n path={nextSelectedTemplateRouteRef.path}\n element={\n <SecretsContextProvider>\n <TemplateWizardPage\n customFieldExtensions={fieldExtensions}\n layouts={customLayouts}\n FormProps={props.FormProps}\n />\n </SecretsContextProvider>\n }\n />\n </Routes>\n );\n};\n"],"names":["RouterLink","Link"],"mappings":"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"}
|
package/dist/index.alpha.d.ts
CHANGED
|
@@ -11,21 +11,23 @@ import { ApiRef } from '@backstage/core-plugin-api';
|
|
|
11
11
|
import { BackstagePlugin } from '@backstage/core-plugin-api';
|
|
12
12
|
import { ComponentType } from 'react';
|
|
13
13
|
import { createScaffolderFieldExtension as createScaffolderFieldExtension_2 } from '@backstage/plugin-scaffolder-react';
|
|
14
|
+
import { createScaffolderLayout as createScaffolderLayout_2 } from '@backstage/plugin-scaffolder-react';
|
|
14
15
|
import { CustomFieldExtensionSchema as CustomFieldExtensionSchema_2 } from '@backstage/plugin-scaffolder-react';
|
|
15
16
|
import { CustomFieldValidator as CustomFieldValidator_2 } from '@backstage/plugin-scaffolder-react';
|
|
16
17
|
import { DiscoveryApi } from '@backstage/core-plugin-api';
|
|
17
18
|
import { Entity } from '@backstage/catalog-model';
|
|
18
|
-
import { Extension } from '@backstage/core-plugin-api';
|
|
19
19
|
import { ExternalRouteRef } from '@backstage/core-plugin-api';
|
|
20
20
|
import { FetchApi } from '@backstage/core-plugin-api';
|
|
21
21
|
import { FieldExtensionComponent as FieldExtensionComponent_2 } from '@backstage/plugin-scaffolder-react';
|
|
22
22
|
import { FieldExtensionComponentProps as FieldExtensionComponentProps_2 } from '@backstage/plugin-scaffolder-react';
|
|
23
23
|
import { FieldExtensionOptions as FieldExtensionOptions_2 } from '@backstage/plugin-scaffolder-react';
|
|
24
24
|
import { FieldValidation } from '@rjsf/core';
|
|
25
|
-
import
|
|
25
|
+
import { FormProps as FormProps_2 } from '@backstage/plugin-scaffolder-react';
|
|
26
26
|
import type { FormProps as FormProps_3 } from '@rjsf/core-v5';
|
|
27
27
|
import { IdentityApi } from '@backstage/core-plugin-api';
|
|
28
28
|
import { JsonObject } from '@backstage/types';
|
|
29
|
+
import { LayoutOptions as LayoutOptions_2 } from '@backstage/plugin-scaffolder-react';
|
|
30
|
+
import { LayoutTemplate as LayoutTemplate_2 } from '@backstage/plugin-scaffolder-react';
|
|
29
31
|
import { ListActionsResponse as ListActionsResponse_2 } from '@backstage/plugin-scaffolder-react';
|
|
30
32
|
import { LogEvent as LogEvent_2 } from '@backstage/plugin-scaffolder-react';
|
|
31
33
|
import { Observable } from '@backstage/types';
|
|
@@ -61,11 +63,10 @@ import { z } from 'zod';
|
|
|
61
63
|
export declare const createScaffolderFieldExtension: typeof createScaffolderFieldExtension_2;
|
|
62
64
|
|
|
63
65
|
/**
|
|
64
|
-
* Method for creating custom Layouts that can be used in the scaffolder frontend form
|
|
65
|
-
*
|
|
66
66
|
* @public
|
|
67
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#createScaffolderLayout} instead as this has now been moved.
|
|
67
68
|
*/
|
|
68
|
-
export declare
|
|
69
|
+
export declare const createScaffolderLayout: typeof createScaffolderLayout_2;
|
|
69
70
|
|
|
70
71
|
/**
|
|
71
72
|
* @public
|
|
@@ -175,7 +176,7 @@ export declare interface FieldSchema<TReturn, TUiOptions> {
|
|
|
175
176
|
}
|
|
176
177
|
|
|
177
178
|
/**
|
|
178
|
-
* Any `@rjsf/core` form properties that are publicly exposed to the `
|
|
179
|
+
* Any `@rjsf/core` form properties that are publicly exposed to the `NextScaffolderPage`
|
|
179
180
|
*
|
|
180
181
|
* @alpha
|
|
181
182
|
* @deprecated use the import from {@link @backstage/plugin-scaffolder-react/alpha#FormProps} instead
|
|
@@ -183,28 +184,16 @@ export declare interface FieldSchema<TReturn, TUiOptions> {
|
|
|
183
184
|
export declare type FormProps = Pick<FormProps_3, 'transformErrors' | 'noHtml5Validate'>;
|
|
184
185
|
|
|
185
186
|
/**
|
|
186
|
-
* The type used to wrap up the Layout and embed the input props
|
|
187
|
-
*
|
|
188
|
-
* @public
|
|
189
|
-
*/
|
|
190
|
-
export declare type LayoutComponent<_TInputProps> = () => null;
|
|
191
|
-
|
|
192
|
-
/**
|
|
193
|
-
* The type of layouts that is passed to the TemplateForms
|
|
194
|
-
*
|
|
195
187
|
* @public
|
|
188
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#LayoutOptions} instead as this has now been moved.
|
|
196
189
|
*/
|
|
197
|
-
export declare
|
|
198
|
-
name: string;
|
|
199
|
-
component: LayoutTemplate<P>;
|
|
200
|
-
}
|
|
190
|
+
export declare type LayoutOptions = LayoutOptions_2;
|
|
201
191
|
|
|
202
192
|
/**
|
|
203
|
-
* The field template from \@rjsf/core which is a react component that gets passed \@rjsf/core field related props.
|
|
204
|
-
*
|
|
205
193
|
* @public
|
|
194
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#LayoutTemplate} instead as this has now been moved.
|
|
206
195
|
*/
|
|
207
|
-
export declare type LayoutTemplate
|
|
196
|
+
export declare type LayoutTemplate = LayoutTemplate_2;
|
|
208
197
|
|
|
209
198
|
/**
|
|
210
199
|
* @public
|
|
@@ -241,7 +230,7 @@ export declare type NextRouterProps = {
|
|
|
241
230
|
TaskPageComponent?: React_2.ComponentType<{}>;
|
|
242
231
|
};
|
|
243
232
|
groups?: TemplateGroupFilter[];
|
|
244
|
-
FormProps?:
|
|
233
|
+
FormProps?: FormProps_2;
|
|
245
234
|
};
|
|
246
235
|
|
|
247
236
|
/**
|
|
@@ -517,11 +506,10 @@ export declare type ScaffolderGetIntegrationsListOptions = ScaffolderGetIntegrat
|
|
|
517
506
|
export declare type ScaffolderGetIntegrationsListResponse = ScaffolderGetIntegrationsListResponse_2;
|
|
518
507
|
|
|
519
508
|
/**
|
|
520
|
-
* The wrapping component for defining scaffolder layouts as children
|
|
521
|
-
*
|
|
522
509
|
* @public
|
|
510
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#ScaffolderLayouts} instead as this has now been moved.
|
|
523
511
|
*/
|
|
524
|
-
export declare const ScaffolderLayouts:
|
|
512
|
+
export declare const ScaffolderLayouts: ComponentType< {}>;
|
|
525
513
|
|
|
526
514
|
/**
|
|
527
515
|
* @public
|
package/dist/index.beta.d.ts
CHANGED
|
@@ -11,21 +11,23 @@ import { ApiRef } from '@backstage/core-plugin-api';
|
|
|
11
11
|
import { BackstagePlugin } from '@backstage/core-plugin-api';
|
|
12
12
|
import { ComponentType } from 'react';
|
|
13
13
|
import { createScaffolderFieldExtension as createScaffolderFieldExtension_2 } from '@backstage/plugin-scaffolder-react';
|
|
14
|
+
import { createScaffolderLayout as createScaffolderLayout_2 } from '@backstage/plugin-scaffolder-react';
|
|
14
15
|
import { CustomFieldExtensionSchema as CustomFieldExtensionSchema_2 } from '@backstage/plugin-scaffolder-react';
|
|
15
16
|
import { CustomFieldValidator as CustomFieldValidator_2 } from '@backstage/plugin-scaffolder-react';
|
|
16
17
|
import { DiscoveryApi } from '@backstage/core-plugin-api';
|
|
17
18
|
import { Entity } from '@backstage/catalog-model';
|
|
18
|
-
import { Extension } from '@backstage/core-plugin-api';
|
|
19
19
|
import { ExternalRouteRef } from '@backstage/core-plugin-api';
|
|
20
20
|
import { FetchApi } from '@backstage/core-plugin-api';
|
|
21
21
|
import { FieldExtensionComponent as FieldExtensionComponent_2 } from '@backstage/plugin-scaffolder-react';
|
|
22
22
|
import { FieldExtensionComponentProps as FieldExtensionComponentProps_2 } from '@backstage/plugin-scaffolder-react';
|
|
23
23
|
import { FieldExtensionOptions as FieldExtensionOptions_2 } from '@backstage/plugin-scaffolder-react';
|
|
24
24
|
import { FieldValidation } from '@rjsf/core';
|
|
25
|
-
import
|
|
25
|
+
import { FormProps as FormProps_2 } from '@backstage/plugin-scaffolder-react';
|
|
26
26
|
import type { FormProps as FormProps_3 } from '@rjsf/core-v5';
|
|
27
27
|
import { IdentityApi } from '@backstage/core-plugin-api';
|
|
28
28
|
import { JsonObject } from '@backstage/types';
|
|
29
|
+
import { LayoutOptions as LayoutOptions_2 } from '@backstage/plugin-scaffolder-react';
|
|
30
|
+
import { LayoutTemplate as LayoutTemplate_2 } from '@backstage/plugin-scaffolder-react';
|
|
29
31
|
import { ListActionsResponse as ListActionsResponse_2 } from '@backstage/plugin-scaffolder-react';
|
|
30
32
|
import { LogEvent as LogEvent_2 } from '@backstage/plugin-scaffolder-react';
|
|
31
33
|
import { Observable } from '@backstage/types';
|
|
@@ -61,11 +63,10 @@ import { z } from 'zod';
|
|
|
61
63
|
export declare const createScaffolderFieldExtension: typeof createScaffolderFieldExtension_2;
|
|
62
64
|
|
|
63
65
|
/**
|
|
64
|
-
* Method for creating custom Layouts that can be used in the scaffolder frontend form
|
|
65
|
-
*
|
|
66
66
|
* @public
|
|
67
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#createScaffolderLayout} instead as this has now been moved.
|
|
67
68
|
*/
|
|
68
|
-
export declare
|
|
69
|
+
export declare const createScaffolderLayout: typeof createScaffolderLayout_2;
|
|
69
70
|
|
|
70
71
|
/**
|
|
71
72
|
* @public
|
|
@@ -177,28 +178,16 @@ export declare interface FieldSchema<TReturn, TUiOptions> {
|
|
|
177
178
|
/* Excluded from this release type: FormProps */
|
|
178
179
|
|
|
179
180
|
/**
|
|
180
|
-
* The type used to wrap up the Layout and embed the input props
|
|
181
|
-
*
|
|
182
|
-
* @public
|
|
183
|
-
*/
|
|
184
|
-
export declare type LayoutComponent<_TInputProps> = () => null;
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* The type of layouts that is passed to the TemplateForms
|
|
188
|
-
*
|
|
189
181
|
* @public
|
|
182
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#LayoutOptions} instead as this has now been moved.
|
|
190
183
|
*/
|
|
191
|
-
export declare
|
|
192
|
-
name: string;
|
|
193
|
-
component: LayoutTemplate<P>;
|
|
194
|
-
}
|
|
184
|
+
export declare type LayoutOptions = LayoutOptions_2;
|
|
195
185
|
|
|
196
186
|
/**
|
|
197
|
-
* The field template from \@rjsf/core which is a react component that gets passed \@rjsf/core field related props.
|
|
198
|
-
*
|
|
199
187
|
* @public
|
|
188
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#LayoutTemplate} instead as this has now been moved.
|
|
200
189
|
*/
|
|
201
|
-
export declare type LayoutTemplate
|
|
190
|
+
export declare type LayoutTemplate = LayoutTemplate_2;
|
|
202
191
|
|
|
203
192
|
/**
|
|
204
193
|
* @public
|
|
@@ -490,11 +479,10 @@ export declare type ScaffolderGetIntegrationsListOptions = ScaffolderGetIntegrat
|
|
|
490
479
|
export declare type ScaffolderGetIntegrationsListResponse = ScaffolderGetIntegrationsListResponse_2;
|
|
491
480
|
|
|
492
481
|
/**
|
|
493
|
-
* The wrapping component for defining scaffolder layouts as children
|
|
494
|
-
*
|
|
495
482
|
* @public
|
|
483
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#ScaffolderLayouts} instead as this has now been moved.
|
|
496
484
|
*/
|
|
497
|
-
export declare const ScaffolderLayouts:
|
|
485
|
+
export declare const ScaffolderLayouts: ComponentType< {}>;
|
|
498
486
|
|
|
499
487
|
/**
|
|
500
488
|
* @public
|
package/dist/index.d.ts
CHANGED
|
@@ -11,21 +11,23 @@ import { ApiRef } from '@backstage/core-plugin-api';
|
|
|
11
11
|
import { BackstagePlugin } from '@backstage/core-plugin-api';
|
|
12
12
|
import { ComponentType } from 'react';
|
|
13
13
|
import { createScaffolderFieldExtension as createScaffolderFieldExtension_2 } from '@backstage/plugin-scaffolder-react';
|
|
14
|
+
import { createScaffolderLayout as createScaffolderLayout_2 } from '@backstage/plugin-scaffolder-react';
|
|
14
15
|
import { CustomFieldExtensionSchema as CustomFieldExtensionSchema_2 } from '@backstage/plugin-scaffolder-react';
|
|
15
16
|
import { CustomFieldValidator as CustomFieldValidator_2 } from '@backstage/plugin-scaffolder-react';
|
|
16
17
|
import { DiscoveryApi } from '@backstage/core-plugin-api';
|
|
17
18
|
import { Entity } from '@backstage/catalog-model';
|
|
18
|
-
import { Extension } from '@backstage/core-plugin-api';
|
|
19
19
|
import { ExternalRouteRef } from '@backstage/core-plugin-api';
|
|
20
20
|
import { FetchApi } from '@backstage/core-plugin-api';
|
|
21
21
|
import { FieldExtensionComponent as FieldExtensionComponent_2 } from '@backstage/plugin-scaffolder-react';
|
|
22
22
|
import { FieldExtensionComponentProps as FieldExtensionComponentProps_2 } from '@backstage/plugin-scaffolder-react';
|
|
23
23
|
import { FieldExtensionOptions as FieldExtensionOptions_2 } from '@backstage/plugin-scaffolder-react';
|
|
24
24
|
import { FieldValidation } from '@rjsf/core';
|
|
25
|
-
import
|
|
25
|
+
import { FormProps as FormProps_2 } from '@backstage/plugin-scaffolder-react';
|
|
26
26
|
import type { FormProps as FormProps_3 } from '@rjsf/core-v5';
|
|
27
27
|
import { IdentityApi } from '@backstage/core-plugin-api';
|
|
28
28
|
import { JsonObject } from '@backstage/types';
|
|
29
|
+
import { LayoutOptions as LayoutOptions_2 } from '@backstage/plugin-scaffolder-react';
|
|
30
|
+
import { LayoutTemplate as LayoutTemplate_2 } from '@backstage/plugin-scaffolder-react';
|
|
29
31
|
import { ListActionsResponse as ListActionsResponse_2 } from '@backstage/plugin-scaffolder-react';
|
|
30
32
|
import { LogEvent as LogEvent_2 } from '@backstage/plugin-scaffolder-react';
|
|
31
33
|
import { Observable } from '@backstage/types';
|
|
@@ -61,11 +63,10 @@ import { z } from 'zod';
|
|
|
61
63
|
export declare const createScaffolderFieldExtension: typeof createScaffolderFieldExtension_2;
|
|
62
64
|
|
|
63
65
|
/**
|
|
64
|
-
* Method for creating custom Layouts that can be used in the scaffolder frontend form
|
|
65
|
-
*
|
|
66
66
|
* @public
|
|
67
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#createScaffolderLayout} instead as this has now been moved.
|
|
67
68
|
*/
|
|
68
|
-
export declare
|
|
69
|
+
export declare const createScaffolderLayout: typeof createScaffolderLayout_2;
|
|
69
70
|
|
|
70
71
|
/**
|
|
71
72
|
* @public
|
|
@@ -177,28 +178,16 @@ export declare interface FieldSchema<TReturn, TUiOptions> {
|
|
|
177
178
|
/* Excluded from this release type: FormProps */
|
|
178
179
|
|
|
179
180
|
/**
|
|
180
|
-
* The type used to wrap up the Layout and embed the input props
|
|
181
|
-
*
|
|
182
|
-
* @public
|
|
183
|
-
*/
|
|
184
|
-
export declare type LayoutComponent<_TInputProps> = () => null;
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* The type of layouts that is passed to the TemplateForms
|
|
188
|
-
*
|
|
189
181
|
* @public
|
|
182
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#LayoutOptions} instead as this has now been moved.
|
|
190
183
|
*/
|
|
191
|
-
export declare
|
|
192
|
-
name: string;
|
|
193
|
-
component: LayoutTemplate<P>;
|
|
194
|
-
}
|
|
184
|
+
export declare type LayoutOptions = LayoutOptions_2;
|
|
195
185
|
|
|
196
186
|
/**
|
|
197
|
-
* The field template from \@rjsf/core which is a react component that gets passed \@rjsf/core field related props.
|
|
198
|
-
*
|
|
199
187
|
* @public
|
|
188
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#LayoutTemplate} instead as this has now been moved.
|
|
200
189
|
*/
|
|
201
|
-
export declare type LayoutTemplate
|
|
190
|
+
export declare type LayoutTemplate = LayoutTemplate_2;
|
|
202
191
|
|
|
203
192
|
/**
|
|
204
193
|
* @public
|
|
@@ -490,11 +479,10 @@ export declare type ScaffolderGetIntegrationsListOptions = ScaffolderGetIntegrat
|
|
|
490
479
|
export declare type ScaffolderGetIntegrationsListResponse = ScaffolderGetIntegrationsListResponse_2;
|
|
491
480
|
|
|
492
481
|
/**
|
|
493
|
-
* The wrapping component for defining scaffolder layouts as children
|
|
494
|
-
*
|
|
495
482
|
* @public
|
|
483
|
+
* @deprecated use import from {@link @backstage/plugin-scaffolder-react#ScaffolderLayouts} instead as this has now been moved.
|
|
496
484
|
*/
|
|
497
|
-
export declare const ScaffolderLayouts:
|
|
485
|
+
export declare const ScaffolderLayouts: ComponentType< {}>;
|
|
498
486
|
|
|
499
487
|
/**
|
|
500
488
|
* @public
|
package/dist/index.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { A as EntityNamePickerFieldExtension, z as EntityPickerFieldExtension, K as EntityPickerFieldSchema, B as EntityTagsPickerFieldExtension, Q as EntityTagsPickerFieldSchema, N as NextScaffolderPage, D as OwnedEntityPickerFieldExtension, P as OwnedEntityPickerFieldSchema, C as OwnerPickerFieldExtension, L as OwnerPickerFieldSchema, F as RepoUrlPickerFieldExtension, M as RepoUrlPickerFieldSchema, S as ScaffolderClient, W as ScaffolderFieldExtensions, _ as ScaffolderLayouts, G as ScaffolderPage, h as TaskPage, T as TemplateTypePicker, V as createScaffolderFieldExtension, Z as createScaffolderLayout, J as makeFieldSchemaFromZod, y as nextRouteRef, I as nextScaffolderTaskRouteRef, x as nextSelectedTemplateRouteRef, p as repoPickerValidation, U as rootRouteRef, Y as scaffolderApiRef, H as scaffolderPlugin, X as useTemplateSecrets } from './esm/index-42d9f897.esm.js';
|
|
2
2
|
import 'react';
|
|
3
3
|
import 'react-router-dom';
|
|
4
4
|
import '@backstage/core-components';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@backstage/plugin-scaffolder",
|
|
3
3
|
"description": "The Backstage plugin that helps you create new things",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.11.0-next.0",
|
|
5
5
|
"main": "dist/index.esm.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"license": "Apache-2.0",
|
|
@@ -33,19 +33,19 @@
|
|
|
33
33
|
"clean": "backstage-cli package clean"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@backstage/catalog-client": "^1.3.0",
|
|
37
|
-
"@backstage/catalog-model": "^1.1.
|
|
36
|
+
"@backstage/catalog-client": "^1.3.1-next.0",
|
|
37
|
+
"@backstage/catalog-model": "^1.1.6-next.0",
|
|
38
38
|
"@backstage/config": "^1.0.6",
|
|
39
39
|
"@backstage/core-components": "^0.12.3",
|
|
40
40
|
"@backstage/core-plugin-api": "^1.3.0",
|
|
41
41
|
"@backstage/errors": "^1.1.4",
|
|
42
42
|
"@backstage/integration": "^1.4.2",
|
|
43
43
|
"@backstage/integration-react": "^1.1.9",
|
|
44
|
-
"@backstage/plugin-catalog-common": "^1.0.
|
|
45
|
-
"@backstage/plugin-catalog-react": "^1.
|
|
44
|
+
"@backstage/plugin-catalog-common": "^1.0.11-next.0",
|
|
45
|
+
"@backstage/plugin-catalog-react": "^1.3.0-next.0",
|
|
46
46
|
"@backstage/plugin-permission-react": "^0.4.9",
|
|
47
|
-
"@backstage/plugin-scaffolder-common": "^1.2.
|
|
48
|
-
"@backstage/plugin-scaffolder-react": "^1.0.0",
|
|
47
|
+
"@backstage/plugin-scaffolder-common": "^1.2.5-next.0",
|
|
48
|
+
"@backstage/plugin-scaffolder-react": "^1.1.0-next.0",
|
|
49
49
|
"@backstage/theme": "^0.2.16",
|
|
50
50
|
"@backstage/types": "^1.0.2",
|
|
51
51
|
"@codemirror/language": "^6.0.0",
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
"@material-ui/lab": "4.0.0-alpha.57",
|
|
57
57
|
"@react-hookz/web": "^20.0.0",
|
|
58
58
|
"@rjsf/core": "^3.2.1",
|
|
59
|
-
"@rjsf/core-v5": "npm:@rjsf/core
|
|
59
|
+
"@rjsf/core-v5": "npm:@rjsf/core@5.0.0-beta.16",
|
|
60
60
|
"@rjsf/material-ui": "^3.2.1",
|
|
61
|
-
"@rjsf/utils": "
|
|
61
|
+
"@rjsf/utils": "5.0.0-beta.16",
|
|
62
62
|
"@uiw/react-codemirror": "^4.9.3",
|
|
63
63
|
"classnames": "^2.2.6",
|
|
64
64
|
"git-url-parse": "^13.0.0",
|
|
@@ -84,8 +84,8 @@
|
|
|
84
84
|
"devDependencies": {
|
|
85
85
|
"@backstage/cli": "^0.22.1",
|
|
86
86
|
"@backstage/core-app-api": "^1.4.0",
|
|
87
|
-
"@backstage/dev-utils": "^1.0.
|
|
88
|
-
"@backstage/plugin-catalog": "^1.7.
|
|
87
|
+
"@backstage/dev-utils": "^1.0.12-next.0",
|
|
88
|
+
"@backstage/plugin-catalog": "^1.7.3-next.0",
|
|
89
89
|
"@backstage/test-utils": "^1.2.4",
|
|
90
90
|
"@testing-library/jest-dom": "^5.10.1",
|
|
91
91
|
"@testing-library/react": "^12.1.3",
|