@backstage/plugin-catalog-import 0.7.10 → 0.8.1
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 +105 -0
- package/README.md +58 -24
- package/config.d.ts +40 -0
- package/dist/esm/{index-1d37898f.esm.js → index-577cd187.esm.js} +1 -1
- package/dist/esm/{index-1d37898f.esm.js.map → index-577cd187.esm.js.map} +1 -1
- package/dist/index.d.ts +167 -28
- package/dist/index.esm.js +105 -100
- package/dist/index.esm.js.map +1 -1
- package/package.json +14 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,110 @@
|
|
|
1
1
|
# @backstage/plugin-catalog-import
|
|
2
2
|
|
|
3
|
+
## 0.8.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 7bb1bde7f6: Minor API cleanups
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
- @backstage/catalog-client@0.6.0
|
|
10
|
+
- @backstage/core-components@0.8.8
|
|
11
|
+
- @backstage/plugin-catalog-react@0.6.14
|
|
12
|
+
- @backstage/integration-react@0.1.21
|
|
13
|
+
|
|
14
|
+
## 0.8.1-next.0
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- 7bb1bde7f6: Minor API cleanups
|
|
19
|
+
- Updated dependencies
|
|
20
|
+
- @backstage/core-components@0.8.8-next.0
|
|
21
|
+
- @backstage/plugin-catalog-react@0.6.14-next.0
|
|
22
|
+
- @backstage/integration-react@0.1.21-next.0
|
|
23
|
+
|
|
24
|
+
## 0.8.0
|
|
25
|
+
|
|
26
|
+
### Minor Changes
|
|
27
|
+
|
|
28
|
+
- 2e8764b95f: Make filename, branch name and examples URLs used in catalog import customizable.
|
|
29
|
+
|
|
30
|
+
Catalog backend ingestion loop can be already configured to fetch targets with custom catalog filename (other than `catalog-info.yaml`). It's now possible to customize said filename and branch name used in pull requests created by catalog import flow too. This allows organizations to further customize Backstage experience and to better reflect their branding.
|
|
31
|
+
|
|
32
|
+
Filename (default: `catalog-info.yaml`) and branch name (default: `backstage-integration`) used in pull requests can be configured in `app-config.yaml` as follows:
|
|
33
|
+
|
|
34
|
+
```yaml
|
|
35
|
+
// app-config.yaml
|
|
36
|
+
|
|
37
|
+
catalog:
|
|
38
|
+
import:
|
|
39
|
+
entityFilename: anvil.yaml
|
|
40
|
+
pullRequestBranchName: anvil-integration
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Following React components have also been updated to accept optional props for providing example entity and repository paths:
|
|
44
|
+
|
|
45
|
+
```tsx
|
|
46
|
+
<StepInitAnalyzeUrl
|
|
47
|
+
...
|
|
48
|
+
exampleLocationUrl="https://github.com/acme-corp/our-awesome-api/blob/main/anvil.yaml"
|
|
49
|
+
/>
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
<ImportInfoCard
|
|
54
|
+
exampleLocationUrl="https://github.com/acme-corp/our-awesome-api/blob/main/anvil.yaml"
|
|
55
|
+
exampleRepositoryUrl="https://github.com/acme-corp/our-awesome-api"
|
|
56
|
+
/>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Patch Changes
|
|
60
|
+
|
|
61
|
+
- Updated dependencies
|
|
62
|
+
- @backstage/core-components@0.8.7
|
|
63
|
+
- @backstage/plugin-catalog-react@0.6.13
|
|
64
|
+
- @backstage/integration-react@0.1.20
|
|
65
|
+
|
|
66
|
+
## 0.8.0-next.0
|
|
67
|
+
|
|
68
|
+
### Minor Changes
|
|
69
|
+
|
|
70
|
+
- 2e8764b95f: Make filename, branch name and examples URLs used in catalog import customizable.
|
|
71
|
+
|
|
72
|
+
Catalog backend ingestion loop can be already configured to fetch targets with custom catalog filename (other than `catalog-info.yaml`). It's now possible to customize said filename and branch name used in pull requests created by catalog import flow too. This allows organizations to further customize Backstage experience and to better reflect their branding.
|
|
73
|
+
|
|
74
|
+
Filename (default: `catalog-info.yaml`) and branch name (default: `backstage-integration`) used in pull requests can be configured in `app-config.yaml` as follows:
|
|
75
|
+
|
|
76
|
+
```yaml
|
|
77
|
+
// app-config.yaml
|
|
78
|
+
|
|
79
|
+
catalog:
|
|
80
|
+
import:
|
|
81
|
+
entityFilename: anvil.yaml
|
|
82
|
+
pullRequestBranchName: anvil-integration
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Following React components have also been updated to accept optional props for providing example entity and repository paths:
|
|
86
|
+
|
|
87
|
+
```tsx
|
|
88
|
+
<StepInitAnalyzeUrl
|
|
89
|
+
...
|
|
90
|
+
exampleLocationUrl="https://github.com/acme-corp/our-awesome-api/blob/main/anvil.yaml"
|
|
91
|
+
/>
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
```tsx
|
|
95
|
+
<ImportInfoCard
|
|
96
|
+
exampleLocationUrl="https://github.com/acme-corp/our-awesome-api/blob/main/anvil.yaml"
|
|
97
|
+
exampleRepositoryUrl="https://github.com/acme-corp/our-awesome-api"
|
|
98
|
+
/>
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### Patch Changes
|
|
102
|
+
|
|
103
|
+
- Updated dependencies
|
|
104
|
+
- @backstage/core-components@0.8.7-next.0
|
|
105
|
+
- @backstage/integration-react@0.1.20-next.0
|
|
106
|
+
- @backstage/plugin-catalog-react@0.6.13-next.0
|
|
107
|
+
|
|
3
108
|
## 0.7.10
|
|
4
109
|
|
|
5
110
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -35,39 +35,73 @@ import { CatalogImportPage } from '@backstage/plugin-catalog-import';
|
|
|
35
35
|
|
|
36
36
|
## Customizations
|
|
37
37
|
|
|
38
|
-
###
|
|
38
|
+
### Custom layout
|
|
39
|
+
|
|
40
|
+
A custom layout can be passed to the import page, as it's already
|
|
41
|
+
supported by the search page. If no custom layout is passed, the default layout
|
|
42
|
+
is used.
|
|
43
|
+
|
|
44
|
+
```typescript
|
|
45
|
+
<Route path="/catalog-import" element={<CatalogImportPage />}>
|
|
46
|
+
<Page themeId="home">
|
|
47
|
+
<Header title="Register an existing component" />
|
|
48
|
+
<Content>
|
|
49
|
+
<ContentHeader title="Start tracking your components">
|
|
50
|
+
<SupportButton>
|
|
51
|
+
Start tracking your component in Backstage by adding it to the
|
|
52
|
+
software catalog.
|
|
53
|
+
</SupportButton>
|
|
54
|
+
</ContentHeader>
|
|
55
|
+
|
|
56
|
+
<Grid container spacing={2} direction="row-reverse">
|
|
57
|
+
<Grid item xs={12} md={4} lg={6} xl={8}>
|
|
58
|
+
Hello World
|
|
59
|
+
</Grid>
|
|
60
|
+
|
|
61
|
+
<Grid item xs={12} md={8} lg={6} xl={4}>
|
|
62
|
+
<ImportStepper />
|
|
63
|
+
</Grid>
|
|
64
|
+
</Grid>
|
|
65
|
+
</Content>
|
|
66
|
+
</Page>
|
|
67
|
+
</Route>
|
|
68
|
+
```
|
|
39
69
|
|
|
40
|
-
|
|
70
|
+
Previously it was possible to disable and customize the automatic pull request
|
|
71
|
+
feature by passing options to `<CatalogImportPage>` (`pullRequest.disable` and
|
|
72
|
+
`pullRequest.preparePullRequest`). This functionality is moved to the
|
|
73
|
+
`CatalogImportApi` which now provides an optional `preparePullRequest()`
|
|
74
|
+
function. The function can either be overridden to generate a different content
|
|
75
|
+
for the pull request, or removed to disable this feature.
|
|
41
76
|
|
|
42
|
-
|
|
43
|
-
// packages/app/src/App.tsx
|
|
77
|
+
### Entity filename and branch name
|
|
44
78
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
79
|
+
Entity filename (default: `catalog-info.yaml`) and branch name (default: `backstage-integration`) used in pull requests can be configured in `app-config.yaml` as follows:
|
|
80
|
+
|
|
81
|
+
```yaml
|
|
82
|
+
// app-config.yaml
|
|
83
|
+
|
|
84
|
+
catalog:
|
|
85
|
+
import:
|
|
86
|
+
entityFilename: anvil.yaml
|
|
87
|
+
pullRequestBranchName: anvil-integration
|
|
49
88
|
```
|
|
50
89
|
|
|
51
|
-
###
|
|
90
|
+
### Entity examples
|
|
52
91
|
|
|
53
|
-
|
|
54
|
-
This can be configured by options that are passed to the `CatalogImportPage`:
|
|
92
|
+
Following React components accept optional props for providing custom example entity and repository paths:
|
|
55
93
|
|
|
56
94
|
```tsx
|
|
57
|
-
|
|
95
|
+
<StepInitAnalyzeUrl
|
|
96
|
+
...
|
|
97
|
+
exampleLocationUrl="https://github.com/acme-corp/our-awesome-api/blob/main/anvil.yaml"
|
|
98
|
+
/>
|
|
99
|
+
```
|
|
58
100
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
pullRequest={{
|
|
64
|
-
preparePullRequest: () => ({
|
|
65
|
-
title: 'My title',
|
|
66
|
-
body: 'My **markdown** body',
|
|
67
|
-
}),
|
|
68
|
-
}}
|
|
69
|
-
/>
|
|
70
|
-
}
|
|
101
|
+
```tsx
|
|
102
|
+
<ImportInfoCard
|
|
103
|
+
exampleLocationUrl="https://github.com/acme-corp/our-awesome-api/blob/main/anvil.yaml"
|
|
104
|
+
exampleRepositoryUrl="https://github.com/acme-corp/our-awesome-api"
|
|
71
105
|
/>
|
|
72
106
|
```
|
|
73
107
|
|
package/config.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2022 The Backstage Authors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export interface Config {
|
|
18
|
+
/**
|
|
19
|
+
* Configuration options for the catalog plugin.
|
|
20
|
+
*/
|
|
21
|
+
catalog?: {
|
|
22
|
+
/**
|
|
23
|
+
* List of import flow specific options and attributes
|
|
24
|
+
*/
|
|
25
|
+
import?: {
|
|
26
|
+
/**
|
|
27
|
+
* Catalog entity descriptor filename, defaults to "catalog-info.yaml"
|
|
28
|
+
* @visibility frontend
|
|
29
|
+
*/
|
|
30
|
+
entityFilename?: string;
|
|
31
|
+
/**
|
|
32
|
+
* A branch name used in pull request when registering existing component via UI
|
|
33
|
+
* Valid git refname required, see: https://git-scm.com/docs/git-check-ref-format
|
|
34
|
+
* Defaults to "backstage-integration"
|
|
35
|
+
* @visibility frontend
|
|
36
|
+
*/
|
|
37
|
+
pullRequestBranchName?: string;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-577cd187.esm.js","sources":["../../src/components/ImportPage/ImportPage.tsx"],"sourcesContent":["/*\n * Copyright 2020 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 { useOutlet } from 'react-router';\nimport { DefaultImportPage } from '../DefaultImportPage';\n\n/**\n * The whole catalog import page.\n *\n * @public\n */\nexport const ImportPage = () => {\n const outlet = useOutlet();\n\n return outlet || <DefaultImportPage />;\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;MAyBa,aAAa,MAAM;AAC9B,QAAM,SAAS;AAEf,SAAO,8CAAW,mBAAD;AAAA;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,14 +10,35 @@ import { CatalogApi } from '@backstage/catalog-client';
|
|
|
10
10
|
import { ScmIntegrationRegistry } from '@backstage/integration';
|
|
11
11
|
import { ScmAuthApi } from '@backstage/integration-react';
|
|
12
12
|
|
|
13
|
+
/**
|
|
14
|
+
* A plugin that helps the user in importing projects and YAML files into the
|
|
15
|
+
* catalog.
|
|
16
|
+
*
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
13
19
|
declare const catalogImportPlugin: _backstage_core_plugin_api.BackstagePlugin<{
|
|
14
20
|
importPage: _backstage_core_plugin_api.RouteRef<undefined>;
|
|
15
21
|
}, {}>;
|
|
22
|
+
/**
|
|
23
|
+
* The page for importing projects and YAML files into the catalog.
|
|
24
|
+
*
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
16
27
|
declare const CatalogImportPage: () => JSX.Element;
|
|
17
28
|
|
|
29
|
+
/**
|
|
30
|
+
* The default catalog import page.
|
|
31
|
+
*
|
|
32
|
+
* @public
|
|
33
|
+
*/
|
|
18
34
|
declare const DefaultImportPage: () => JSX.Element;
|
|
19
35
|
|
|
20
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Props for {@link EntityListComponent}.
|
|
38
|
+
*
|
|
39
|
+
* @public
|
|
40
|
+
*/
|
|
41
|
+
interface EntityListComponentProps {
|
|
21
42
|
locations: Array<{
|
|
22
43
|
target: string;
|
|
23
44
|
entities: (Entity | EntityName)[];
|
|
@@ -27,17 +48,46 @@ declare type Props$7 = {
|
|
|
27
48
|
firstListItem?: React.ReactElement;
|
|
28
49
|
onItemClick?: (target: string) => void;
|
|
29
50
|
withLinks?: boolean;
|
|
30
|
-
}
|
|
31
|
-
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Shows a result list of entities.
|
|
54
|
+
*
|
|
55
|
+
* @public
|
|
56
|
+
*/
|
|
57
|
+
declare const EntityListComponent: (props: EntityListComponentProps) => JSX.Element;
|
|
32
58
|
|
|
33
|
-
|
|
59
|
+
/**
|
|
60
|
+
* Props for {@link ImportInfoCard}.
|
|
61
|
+
*
|
|
62
|
+
* @public
|
|
63
|
+
*/
|
|
64
|
+
interface ImportInfoCardProps {
|
|
65
|
+
exampleLocationUrl?: string;
|
|
66
|
+
exampleRepositoryUrl?: string;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Shows information about the import process.
|
|
70
|
+
*
|
|
71
|
+
* @public
|
|
72
|
+
*/
|
|
73
|
+
declare const ImportInfoCard: (props: ImportInfoCardProps) => JSX.Element;
|
|
34
74
|
|
|
35
75
|
declare type RecursivePartial<T> = {
|
|
36
76
|
[P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial<U>[] : T[P] extends object ? RecursivePartial<T[P]> : T[P];
|
|
37
77
|
};
|
|
38
78
|
declare type PartialEntity = RecursivePartial<Entity>;
|
|
39
79
|
|
|
80
|
+
/**
|
|
81
|
+
* Utility API reference for the {@link CatalogImportApi}.
|
|
82
|
+
*
|
|
83
|
+
* @public
|
|
84
|
+
*/
|
|
40
85
|
declare const catalogImportApiRef: _backstage_core_plugin_api.ApiRef<CatalogImportApi>;
|
|
86
|
+
/**
|
|
87
|
+
* Result of the analysis.
|
|
88
|
+
*
|
|
89
|
+
* @public
|
|
90
|
+
*/
|
|
41
91
|
declare type AnalyzeResult = {
|
|
42
92
|
type: 'locations';
|
|
43
93
|
locations: Array<{
|
|
@@ -51,6 +101,11 @@ declare type AnalyzeResult = {
|
|
|
51
101
|
integrationType: string;
|
|
52
102
|
generatedEntities: PartialEntity[];
|
|
53
103
|
};
|
|
104
|
+
/**
|
|
105
|
+
* API for driving catalog imports.
|
|
106
|
+
*
|
|
107
|
+
* @public
|
|
108
|
+
*/
|
|
54
109
|
interface CatalogImportApi {
|
|
55
110
|
analyzeUrl(url: string): Promise<AnalyzeResult>;
|
|
56
111
|
preparePullRequest?(): Promise<{
|
|
@@ -68,6 +123,11 @@ interface CatalogImportApi {
|
|
|
68
123
|
}>;
|
|
69
124
|
}
|
|
70
125
|
|
|
126
|
+
/**
|
|
127
|
+
* The default implementation of the {@link CatalogImportApi}.
|
|
128
|
+
*
|
|
129
|
+
* @public
|
|
130
|
+
*/
|
|
71
131
|
declare class CatalogImportClient implements CatalogImportApi {
|
|
72
132
|
private readonly discoveryApi;
|
|
73
133
|
private readonly identityApi;
|
|
@@ -88,7 +148,7 @@ declare class CatalogImportClient implements CatalogImportApi {
|
|
|
88
148
|
title: string;
|
|
89
149
|
body: string;
|
|
90
150
|
}>;
|
|
91
|
-
submitPullRequest(
|
|
151
|
+
submitPullRequest(options: {
|
|
92
152
|
repositoryUrl: string;
|
|
93
153
|
fileContent: string;
|
|
94
154
|
title: string;
|
|
@@ -102,7 +162,17 @@ declare class CatalogImportClient implements CatalogImportApi {
|
|
|
102
162
|
private submitGitHubPrToRepo;
|
|
103
163
|
}
|
|
104
164
|
|
|
165
|
+
/**
|
|
166
|
+
* The configuration of the stepper.
|
|
167
|
+
*
|
|
168
|
+
* @public
|
|
169
|
+
*/
|
|
105
170
|
declare type ImportFlows = 'unknown' | 'single-location' | 'multiple-locations' | 'no-location';
|
|
171
|
+
/**
|
|
172
|
+
* Result of the prepare state.
|
|
173
|
+
*
|
|
174
|
+
* @public
|
|
175
|
+
*/
|
|
106
176
|
declare type PrepareResult = {
|
|
107
177
|
type: 'locations';
|
|
108
178
|
locations: Array<{
|
|
@@ -185,7 +255,12 @@ declare type StepConfiguration = {
|
|
|
185
255
|
stepLabel: React.ReactElement;
|
|
186
256
|
content: React.ReactElement;
|
|
187
257
|
};
|
|
188
|
-
|
|
258
|
+
/**
|
|
259
|
+
* Defines the details of the stepper.
|
|
260
|
+
*
|
|
261
|
+
* @public
|
|
262
|
+
*/
|
|
263
|
+
interface StepperProvider {
|
|
189
264
|
analyze: (s: Extract<ImportState, {
|
|
190
265
|
activeState: 'analyze';
|
|
191
266
|
}>, opts: {
|
|
@@ -206,7 +281,7 @@ declare type StepperProvider = {
|
|
|
206
281
|
}>, opts: {
|
|
207
282
|
apis: StepperApis;
|
|
208
283
|
}) => StepConfiguration;
|
|
209
|
-
}
|
|
284
|
+
}
|
|
210
285
|
/**
|
|
211
286
|
* The default stepper generation function.
|
|
212
287
|
*
|
|
@@ -215,33 +290,56 @@ declare type StepperProvider = {
|
|
|
215
290
|
*
|
|
216
291
|
* @param flow - the name of the active flow
|
|
217
292
|
* @param defaults - the default steps
|
|
293
|
+
* @public
|
|
218
294
|
*/
|
|
219
295
|
declare function defaultGenerateStepper(flow: ImportFlows, defaults: StepperProvider): StepperProvider;
|
|
220
296
|
|
|
221
|
-
|
|
297
|
+
/**
|
|
298
|
+
* Props for {@link ImportStepper}.
|
|
299
|
+
*
|
|
300
|
+
* @public
|
|
301
|
+
*/
|
|
302
|
+
interface ImportStepperProps {
|
|
222
303
|
initialUrl?: string;
|
|
223
304
|
generateStepper?: (flow: ImportFlows, defaults: StepperProvider) => StepperProvider;
|
|
224
305
|
variant?: InfoCardVariants;
|
|
225
|
-
}
|
|
226
|
-
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* The stepper that holds the different import stages.
|
|
309
|
+
*
|
|
310
|
+
* @public
|
|
311
|
+
*/
|
|
312
|
+
declare const ImportStepper: (props: ImportStepperProps) => JSX.Element;
|
|
227
313
|
|
|
228
|
-
|
|
314
|
+
/**
|
|
315
|
+
* Props for {@link StepInitAnalyzeUrl}.
|
|
316
|
+
*
|
|
317
|
+
* @public
|
|
318
|
+
*/
|
|
319
|
+
interface StepInitAnalyzeUrlProps {
|
|
229
320
|
onAnalysis: (flow: ImportFlows, url: string, result: AnalyzeResult, opts?: {
|
|
230
321
|
prepareResult?: PrepareResult;
|
|
231
322
|
}) => void;
|
|
232
323
|
disablePullRequest?: boolean;
|
|
233
324
|
analysisUrl?: string;
|
|
234
|
-
|
|
325
|
+
exampleLocationUrl?: string;
|
|
326
|
+
}
|
|
235
327
|
/**
|
|
236
328
|
* A form that lets the user input a url and analyze it for existing locations or potential entities.
|
|
237
329
|
*
|
|
238
330
|
* @param onAnalysis - is called when the analysis was successful
|
|
239
331
|
* @param analysisUrl - a url that can be used as a default value
|
|
240
332
|
* @param disablePullRequest - if true, repositories without entities will abort the wizard
|
|
333
|
+
* @public
|
|
241
334
|
*/
|
|
242
|
-
declare const StepInitAnalyzeUrl: (
|
|
335
|
+
declare const StepInitAnalyzeUrl: (props: StepInitAnalyzeUrlProps) => JSX.Element;
|
|
243
336
|
|
|
244
|
-
|
|
337
|
+
/**
|
|
338
|
+
* Props for {@link AutocompleteTextField}.
|
|
339
|
+
*
|
|
340
|
+
* @public
|
|
341
|
+
*/
|
|
342
|
+
interface AutocompleteTextFieldProps<TFieldValue extends string> {
|
|
245
343
|
name: TFieldValue;
|
|
246
344
|
options: string[];
|
|
247
345
|
required?: boolean;
|
|
@@ -252,10 +350,20 @@ declare type Props$4<TFieldValue extends string> = {
|
|
|
252
350
|
helperText?: React.ReactNode;
|
|
253
351
|
errorHelperText?: string;
|
|
254
352
|
textFieldProps?: Omit<TextFieldProps, 'required' | 'fullWidth'>;
|
|
255
|
-
}
|
|
256
|
-
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* An autocompletion text field for the catalog import flows.
|
|
356
|
+
*
|
|
357
|
+
* @public
|
|
358
|
+
*/
|
|
359
|
+
declare const AutocompleteTextField: <TFieldValue extends string>(props: AutocompleteTextFieldProps<TFieldValue>) => JSX.Element;
|
|
257
360
|
|
|
258
|
-
|
|
361
|
+
/**
|
|
362
|
+
* Props for {@link PreparePullRequestForm}.
|
|
363
|
+
*
|
|
364
|
+
* @public
|
|
365
|
+
*/
|
|
366
|
+
declare type PreparePullRequestFormProps<TFieldValues extends Record<string, any>> = Pick<UseFormProps<TFieldValues>, 'defaultValues'> & {
|
|
259
367
|
onSubmit: SubmitHandler<TFieldValues>;
|
|
260
368
|
render: (props: Pick<UseFormReturn<TFieldValues>, 'formState' | 'register' | 'control' | 'setValue'> & {
|
|
261
369
|
values: UnpackNestedValue<TFieldValues>;
|
|
@@ -269,28 +377,49 @@ declare type Props$3<TFieldValues extends Record<string, any>> = Pick<UseFormPro
|
|
|
269
377
|
* @param onSubmit - a callback that is executed when the form is submitted
|
|
270
378
|
* (initiated by a button of type="submit")
|
|
271
379
|
* @param render - render the form elements
|
|
380
|
+
* @public
|
|
272
381
|
*/
|
|
273
|
-
declare const PreparePullRequestForm: <TFieldValues extends Record<string, any>>(
|
|
382
|
+
declare const PreparePullRequestForm: <TFieldValues extends Record<string, any>>(props: PreparePullRequestFormProps<TFieldValues>) => JSX.Element;
|
|
274
383
|
|
|
275
|
-
|
|
384
|
+
/**
|
|
385
|
+
* Props for {@link PreviewCatalogInfoComponent}.
|
|
386
|
+
*
|
|
387
|
+
* @public
|
|
388
|
+
*/
|
|
389
|
+
interface PreviewCatalogInfoComponentProps {
|
|
276
390
|
repositoryUrl: string;
|
|
277
391
|
entities: Entity[];
|
|
278
392
|
classes?: {
|
|
279
393
|
card?: string;
|
|
280
394
|
cardContent?: string;
|
|
281
395
|
};
|
|
282
|
-
}
|
|
283
|
-
|
|
396
|
+
}
|
|
397
|
+
/**
|
|
398
|
+
* Previews information about an entity to create.
|
|
399
|
+
*
|
|
400
|
+
* @public
|
|
401
|
+
*/
|
|
402
|
+
declare const PreviewCatalogInfoComponent: (props: PreviewCatalogInfoComponentProps) => JSX.Element;
|
|
284
403
|
|
|
285
|
-
|
|
404
|
+
/**
|
|
405
|
+
* Props for {@link PreviewPullRequestComponent}.
|
|
406
|
+
*
|
|
407
|
+
* @public
|
|
408
|
+
*/
|
|
409
|
+
interface PreviewPullRequestComponentProps {
|
|
286
410
|
title: string;
|
|
287
411
|
description: string;
|
|
288
412
|
classes?: {
|
|
289
413
|
card?: string;
|
|
290
414
|
cardContent?: string;
|
|
291
415
|
};
|
|
292
|
-
}
|
|
293
|
-
|
|
416
|
+
}
|
|
417
|
+
/**
|
|
418
|
+
* Previews a pull request.
|
|
419
|
+
*
|
|
420
|
+
* @public
|
|
421
|
+
*/
|
|
422
|
+
declare const PreviewPullRequestComponent: (props: PreviewPullRequestComponentProps) => JSX.Element;
|
|
294
423
|
|
|
295
424
|
declare type FormData = {
|
|
296
425
|
title: string;
|
|
@@ -299,7 +428,12 @@ declare type FormData = {
|
|
|
299
428
|
owner: string;
|
|
300
429
|
useCodeowners: boolean;
|
|
301
430
|
};
|
|
302
|
-
|
|
431
|
+
/**
|
|
432
|
+
* Props for {@link StepPrepareCreatePullRequest}.
|
|
433
|
+
*
|
|
434
|
+
* @public
|
|
435
|
+
*/
|
|
436
|
+
interface StepPrepareCreatePullRequestProps {
|
|
303
437
|
analyzeResult: Extract<AnalyzeResult, {
|
|
304
438
|
type: 'repository';
|
|
305
439
|
}>;
|
|
@@ -312,7 +446,12 @@ declare type Props = {
|
|
|
312
446
|
groups: string[];
|
|
313
447
|
groupsLoading: boolean;
|
|
314
448
|
}) => React.ReactNode;
|
|
315
|
-
}
|
|
316
|
-
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* Prepares a pull request.
|
|
452
|
+
*
|
|
453
|
+
* @public
|
|
454
|
+
*/
|
|
455
|
+
declare const StepPrepareCreatePullRequest: (props: StepPrepareCreatePullRequestProps) => JSX.Element;
|
|
317
456
|
|
|
318
|
-
export { AnalyzeResult, AutocompleteTextField, CatalogImportApi, CatalogImportClient, CatalogImportPage, DefaultImportPage, EntityListComponent, ImportInfoCard, ImportStepper, PreparePullRequestForm, PreviewCatalogInfoComponent, PreviewPullRequestComponent, StepInitAnalyzeUrl, StepPrepareCreatePullRequest, catalogImportApiRef, catalogImportPlugin, defaultGenerateStepper, catalogImportPlugin as plugin };
|
|
457
|
+
export { AnalyzeResult, AutocompleteTextField, AutocompleteTextFieldProps, CatalogImportApi, CatalogImportClient, CatalogImportPage, DefaultImportPage, EntityListComponent, EntityListComponentProps, ImportFlows, ImportInfoCard, ImportInfoCardProps, ImportState, ImportStepper, ImportStepperProps, PreparePullRequestForm, PreparePullRequestFormProps, PrepareResult, PreviewCatalogInfoComponent, PreviewCatalogInfoComponentProps, PreviewPullRequestComponent, PreviewPullRequestComponentProps, StepInitAnalyzeUrl, StepInitAnalyzeUrlProps, StepPrepareCreatePullRequest, StepPrepareCreatePullRequestProps, catalogImportApiRef, catalogImportPlugin, defaultGenerateStepper, catalogImportPlugin as plugin };
|