@drodil/backstage-plugin-qeta 3.58.5 → 3.58.7
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/dist/alpha.d.ts +77 -66
- package/dist/alpha.esm.js +44 -73
- package/dist/alpha.esm.js.map +1 -1
- package/dist/package.json.esm.js +2 -2
- package/package.json +27 -27
package/dist/alpha.d.ts
CHANGED
|
@@ -1,56 +1,37 @@
|
|
|
1
1
|
import * as _backstage_plugin_search_react_alpha from '@backstage/plugin-search-react/alpha';
|
|
2
|
-
import * as
|
|
2
|
+
import * as react from 'react';
|
|
3
|
+
import * as _backstage_filter_predicates from '@backstage/filter-predicates';
|
|
3
4
|
import * as _backstage_plugin_techdocs_react from '@backstage/plugin-techdocs-react';
|
|
4
5
|
import * as _backstage_frontend_plugin_api from '@backstage/frontend-plugin-api';
|
|
5
|
-
import * as react from 'react';
|
|
6
6
|
import { Entity } from '@backstage/catalog-model';
|
|
7
7
|
import { Pluggable } from 'unified';
|
|
8
8
|
export { qetaTranslationRef } from '@drodil/backstage-plugin-qeta-react';
|
|
9
|
+
export { QetaMarkdownRehypePluginBlueprint, QetaMarkdownRemarkPluginBlueprint, QetaPageHeaderElementBlueprint, QetaPageIntroElementBlueprint } from '@drodil/backstage-plugin-qeta-react/alpha';
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
inputs: {};
|
|
17
|
-
config: {};
|
|
18
|
-
configInput: {};
|
|
19
|
-
dataRefs: never;
|
|
20
|
-
}>;
|
|
21
|
-
declare const QetaPageHeaderElementBlueprint: _backstage_frontend_plugin_api.ExtensionBlueprint<{
|
|
22
|
-
kind: "header-element";
|
|
23
|
-
params: {
|
|
24
|
-
element: JSX.Element;
|
|
25
|
-
};
|
|
26
|
-
output: _backstage_frontend_plugin_api.ExtensionDataRef<react.JSX.Element, "core.reactElement", {}>;
|
|
27
|
-
inputs: {};
|
|
11
|
+
interface QetaMarkdownPluginsApi {
|
|
12
|
+
getRehypePlugins(): Pluggable[];
|
|
13
|
+
getRemarkPlugins(): Pluggable[];
|
|
14
|
+
}
|
|
15
|
+
declare const qetaMarkdownPluginsApiRef: _backstage_frontend_plugin_api.ApiRef<QetaMarkdownPluginsApi>;
|
|
16
|
+
declare const qetaMarkdownPluginsApiExtension: _backstage_frontend_plugin_api.OverridableExtensionDefinition<{
|
|
28
17
|
config: {};
|
|
29
18
|
configInput: {};
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
dataRefs: never;
|
|
43
|
-
}>;
|
|
44
|
-
declare const QetaMarkdownRemarkPluginBlueprint: _backstage_frontend_plugin_api.ExtensionBlueprint<{
|
|
45
|
-
kind: "markdown-plugin";
|
|
46
|
-
params: {
|
|
47
|
-
plugin: Pluggable;
|
|
19
|
+
output: _backstage_frontend_plugin_api.ExtensionDataRef<_backstage_frontend_plugin_api.AnyApiFactory, "core.api.factory", {}>;
|
|
20
|
+
inputs: {
|
|
21
|
+
rehypePlugins: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<Pluggable, "qeta.markdown-plugin", {}>, {
|
|
22
|
+
singleton: false;
|
|
23
|
+
optional: false;
|
|
24
|
+
internal: false;
|
|
25
|
+
}>;
|
|
26
|
+
remarkPlugins: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<Pluggable, "qeta.markdown-plugin", {}>, {
|
|
27
|
+
singleton: false;
|
|
28
|
+
optional: false;
|
|
29
|
+
internal: false;
|
|
30
|
+
}>;
|
|
48
31
|
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
configInput: {};
|
|
53
|
-
dataRefs: never;
|
|
32
|
+
kind: "api";
|
|
33
|
+
name: "addons";
|
|
34
|
+
params: <TApi, TImpl extends TApi, TDeps extends { [name in string]: unknown; }>(params: _backstage_frontend_plugin_api.ApiFactory<TApi, TImpl, TDeps>) => _backstage_frontend_plugin_api.ExtensionBlueprintParams<_backstage_frontend_plugin_api.AnyApiFactory>;
|
|
54
35
|
}>;
|
|
55
36
|
/**
|
|
56
37
|
* Backstage frontend plugin.
|
|
@@ -78,6 +59,26 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
78
59
|
inputs: {};
|
|
79
60
|
params: <TApi, TImpl extends TApi, TDeps extends { [name in string]: unknown; }>(params: _backstage_frontend_plugin_api.ApiFactory<TApi, TImpl, TDeps>) => _backstage_frontend_plugin_api.ExtensionBlueprintParams<_backstage_frontend_plugin_api.AnyApiFactory>;
|
|
80
61
|
}>;
|
|
62
|
+
"api:qeta/addons": _backstage_frontend_plugin_api.OverridableExtensionDefinition<{
|
|
63
|
+
config: {};
|
|
64
|
+
configInput: {};
|
|
65
|
+
output: _backstage_frontend_plugin_api.ExtensionDataRef<_backstage_frontend_plugin_api.AnyApiFactory, "core.api.factory", {}>;
|
|
66
|
+
inputs: {
|
|
67
|
+
rehypePlugins: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<Pluggable, "qeta.markdown-plugin", {}>, {
|
|
68
|
+
singleton: false;
|
|
69
|
+
optional: false;
|
|
70
|
+
internal: false;
|
|
71
|
+
}>;
|
|
72
|
+
remarkPlugins: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<Pluggable, "qeta.markdown-plugin", {}>, {
|
|
73
|
+
singleton: false;
|
|
74
|
+
optional: false;
|
|
75
|
+
internal: false;
|
|
76
|
+
}>;
|
|
77
|
+
};
|
|
78
|
+
kind: "api";
|
|
79
|
+
name: "addons";
|
|
80
|
+
params: <TApi, TImpl extends TApi, TDeps extends { [name in string]: unknown; }>(params: _backstage_frontend_plugin_api.ApiFactory<TApi, TImpl, TDeps>) => _backstage_frontend_plugin_api.ExtensionBlueprintParams<_backstage_frontend_plugin_api.AnyApiFactory>;
|
|
81
|
+
}>;
|
|
81
82
|
"entity-content:qeta/entity-posts-content": _backstage_frontend_plugin_api.OverridableExtensionDefinition<{
|
|
82
83
|
config: {
|
|
83
84
|
showFilters: boolean | undefined;
|
|
@@ -92,8 +93,9 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
92
93
|
relations: string[] | undefined;
|
|
93
94
|
path: string | undefined;
|
|
94
95
|
title: string | undefined;
|
|
95
|
-
filter:
|
|
96
|
+
filter: _backstage_filter_predicates.FilterPredicate | undefined;
|
|
96
97
|
group: string | false | undefined;
|
|
98
|
+
icon: string | undefined;
|
|
97
99
|
};
|
|
98
100
|
configInput: {
|
|
99
101
|
type?: "question" | "article" | "link" | undefined;
|
|
@@ -106,10 +108,11 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
106
108
|
showLinkButton?: boolean | undefined;
|
|
107
109
|
showNoQuestionsBtn?: boolean | undefined;
|
|
108
110
|
initialPageSize?: number | undefined;
|
|
109
|
-
filter?:
|
|
111
|
+
filter?: _backstage_filter_predicates.FilterPredicate | undefined;
|
|
110
112
|
title?: string | undefined | undefined;
|
|
111
113
|
path?: string | undefined | undefined;
|
|
112
114
|
group?: string | false | undefined | undefined;
|
|
115
|
+
icon?: string | undefined | undefined;
|
|
113
116
|
};
|
|
114
117
|
output: _backstage_frontend_plugin_api.ExtensionDataRef<react.JSX.Element, "core.reactElement", {}> | _backstage_frontend_plugin_api.ExtensionDataRef<string, "core.routing.path", {}> | _backstage_frontend_plugin_api.ExtensionDataRef<_backstage_frontend_plugin_api.RouteRef<_backstage_frontend_plugin_api.AnyRouteRefParams>, "core.routing.ref", {
|
|
115
118
|
optional: true;
|
|
@@ -119,17 +122,10 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
119
122
|
optional: true;
|
|
120
123
|
}> | _backstage_frontend_plugin_api.ExtensionDataRef<string, "catalog.entity-content-title", {}> | _backstage_frontend_plugin_api.ExtensionDataRef<string, "catalog.entity-content-group", {
|
|
121
124
|
optional: true;
|
|
125
|
+
}> | _backstage_frontend_plugin_api.ExtensionDataRef<string | react.ReactElement<any, string | react.JSXElementConstructor<any>>, "catalog.entity-content-icon", {
|
|
126
|
+
optional: true;
|
|
122
127
|
}>;
|
|
123
|
-
inputs: {
|
|
124
|
-
rehypePlugins: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<Pluggable, "qeta.markdown-plugin", {}>, {
|
|
125
|
-
singleton: false;
|
|
126
|
-
optional: true;
|
|
127
|
-
}>;
|
|
128
|
-
remarkPlugins: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<Pluggable, "qeta.markdown-plugin", {}>, {
|
|
129
|
-
singleton: false;
|
|
130
|
-
optional: true;
|
|
131
|
-
}>;
|
|
132
|
-
};
|
|
128
|
+
inputs: {};
|
|
133
129
|
kind: "entity-content";
|
|
134
130
|
name: "entity-posts-content";
|
|
135
131
|
params: {
|
|
@@ -139,9 +135,10 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
139
135
|
title: string;
|
|
140
136
|
defaultGroup?: [Error: `Use the 'group' param instead`];
|
|
141
137
|
group?: ("overview" | "documentation" | "development" | "deployment" | "operation" | "observability") | (string & {});
|
|
138
|
+
icon?: string | react.ReactElement;
|
|
142
139
|
loader: () => Promise<JSX.Element>;
|
|
143
140
|
routeRef?: _backstage_frontend_plugin_api.RouteRef;
|
|
144
|
-
filter?: string |
|
|
141
|
+
filter?: string | _backstage_filter_predicates.FilterPredicate | ((entity: Entity) => boolean);
|
|
145
142
|
};
|
|
146
143
|
}>;
|
|
147
144
|
"nav-item:qeta": _backstage_frontend_plugin_api.OverridableExtensionDefinition<{
|
|
@@ -169,6 +166,7 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
169
166
|
headerType: string | undefined;
|
|
170
167
|
headerTypeLink: string | undefined;
|
|
171
168
|
path: string | undefined;
|
|
169
|
+
title: string | undefined;
|
|
172
170
|
};
|
|
173
171
|
configInput: {
|
|
174
172
|
subtitle?: string | undefined;
|
|
@@ -176,27 +174,37 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
176
174
|
headerTooltip?: string | undefined;
|
|
177
175
|
headerType?: string | undefined;
|
|
178
176
|
headerTypeLink?: string | undefined;
|
|
177
|
+
title?: string | undefined | undefined;
|
|
179
178
|
path?: string | undefined | undefined;
|
|
180
179
|
};
|
|
181
180
|
output: _backstage_frontend_plugin_api.ExtensionDataRef<react.JSX.Element, "core.reactElement", {}> | _backstage_frontend_plugin_api.ExtensionDataRef<string, "core.routing.path", {}> | _backstage_frontend_plugin_api.ExtensionDataRef<_backstage_frontend_plugin_api.RouteRef<_backstage_frontend_plugin_api.AnyRouteRefParams>, "core.routing.ref", {
|
|
182
181
|
optional: true;
|
|
182
|
+
}> | _backstage_frontend_plugin_api.ExtensionDataRef<string, "core.title", {
|
|
183
|
+
optional: true;
|
|
184
|
+
}> | _backstage_frontend_plugin_api.ExtensionDataRef<_backstage_frontend_plugin_api.IconElement, "core.icon", {
|
|
185
|
+
optional: true;
|
|
183
186
|
}>;
|
|
184
187
|
inputs: {
|
|
185
|
-
|
|
186
|
-
singleton: true;
|
|
188
|
+
pages: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<react.JSX.Element, "core.reactElement", {}> | _backstage_frontend_plugin_api.ConfigurableExtensionDataRef<string, "core.routing.path", {}> | _backstage_frontend_plugin_api.ConfigurableExtensionDataRef<_backstage_frontend_plugin_api.RouteRef<_backstage_frontend_plugin_api.AnyRouteRefParams>, "core.routing.ref", {
|
|
187
189
|
optional: true;
|
|
188
|
-
}
|
|
189
|
-
headerElements: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<react.JSX.Element, "core.reactElement", {}>, {
|
|
190
|
-
singleton: false;
|
|
190
|
+
}> | _backstage_frontend_plugin_api.ConfigurableExtensionDataRef<string, "core.title", {
|
|
191
191
|
optional: true;
|
|
192
|
-
}
|
|
193
|
-
|
|
192
|
+
}> | _backstage_frontend_plugin_api.ConfigurableExtensionDataRef<_backstage_frontend_plugin_api.IconElement, "core.icon", {
|
|
193
|
+
optional: true;
|
|
194
|
+
}>, {
|
|
194
195
|
singleton: false;
|
|
196
|
+
optional: false;
|
|
197
|
+
internal: false;
|
|
198
|
+
}>;
|
|
199
|
+
introElement: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<react.JSX.Element, "core.reactElement", {}>, {
|
|
200
|
+
singleton: true;
|
|
195
201
|
optional: true;
|
|
202
|
+
internal: false;
|
|
196
203
|
}>;
|
|
197
|
-
|
|
204
|
+
headerElements: _backstage_frontend_plugin_api.ExtensionInput<_backstage_frontend_plugin_api.ConfigurableExtensionDataRef<react.JSX.Element, "core.reactElement", {}>, {
|
|
198
205
|
singleton: false;
|
|
199
206
|
optional: true;
|
|
207
|
+
internal: false;
|
|
200
208
|
}>;
|
|
201
209
|
};
|
|
202
210
|
kind: "page";
|
|
@@ -204,8 +212,11 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
204
212
|
params: {
|
|
205
213
|
defaultPath?: [Error: `Use the 'path' param instead`];
|
|
206
214
|
path: string;
|
|
207
|
-
|
|
215
|
+
title?: string;
|
|
216
|
+
icon?: _backstage_frontend_plugin_api.IconElement;
|
|
217
|
+
loader?: () => Promise<react.JSX.Element>;
|
|
208
218
|
routeRef?: _backstage_frontend_plugin_api.RouteRef;
|
|
219
|
+
noHeader?: boolean;
|
|
209
220
|
};
|
|
210
221
|
}>;
|
|
211
222
|
"search-filter-result-type:qeta/qeta": _backstage_frontend_plugin_api.OverridableExtensionDefinition<{
|
|
@@ -240,4 +251,4 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
240
251
|
}>;
|
|
241
252
|
}>;
|
|
242
253
|
|
|
243
|
-
export {
|
|
254
|
+
export { _default as default, qetaMarkdownPluginsApiExtension, qetaMarkdownPluginsApiRef };
|
package/dist/alpha.esm.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { ApiBlueprint,
|
|
2
|
+
import { ApiBlueprint, createExtensionInput, PageBlueprint, coreExtensionData, NavItemBlueprint, createFrontendPlugin } from '@backstage/frontend-plugin-api';
|
|
3
3
|
import { convertLegacyRouteRef, compatWrapper, convertLegacyRouteRefs } from '@backstage/core-compat-api';
|
|
4
4
|
import { qetaApiRef, qetaRouteRef } from '@drodil/backstage-plugin-qeta-react';
|
|
5
5
|
export { qetaTranslationRef } from '@drodil/backstage-plugin-qeta-react';
|
|
6
|
-
import { discoveryApiRef, fetchApiRef, configApiRef } from '@backstage/core-plugin-api';
|
|
6
|
+
import { createApiRef, discoveryApiRef, fetchApiRef, configApiRef } from '@backstage/core-plugin-api';
|
|
7
7
|
import { QetaClient, getSupportedEntityKinds } from '@drodil/backstage-plugin-qeta-common';
|
|
8
8
|
import ContactSupportIcon from '@material-ui/icons/ContactSupport';
|
|
9
9
|
import { EntityContentBlueprint } from '@backstage/plugin-catalog-react/alpha';
|
|
@@ -11,7 +11,37 @@ import { SearchResultListItemBlueprint, SearchFilterResultTypeBlueprint } from '
|
|
|
11
11
|
import { TechDocsAddonLocations } from '@backstage/plugin-techdocs-react';
|
|
12
12
|
import { AddonBlueprint } from '@backstage/plugin-techdocs-react/alpha';
|
|
13
13
|
import { TechDocsAskQuestionAddon } from './components/TechDocsAskQuestionAddon/TechDocsAskQuestionAddon.esm.js';
|
|
14
|
+
import { markdownPlugin } from '@drodil/backstage-plugin-qeta-react/alpha';
|
|
15
|
+
export { QetaMarkdownRehypePluginBlueprint, QetaMarkdownRemarkPluginBlueprint, QetaPageHeaderElementBlueprint, QetaPageIntroElementBlueprint } from '@drodil/backstage-plugin-qeta-react/alpha';
|
|
14
16
|
|
|
17
|
+
const qetaMarkdownPluginsApiRef = createApiRef({
|
|
18
|
+
id: "plugin.qeta.addons"
|
|
19
|
+
});
|
|
20
|
+
const qetaMarkdownPluginsApiExtension = ApiBlueprint.makeWithOverrides({
|
|
21
|
+
name: "addons",
|
|
22
|
+
inputs: {
|
|
23
|
+
rehypePlugins: createExtensionInput([markdownPlugin]),
|
|
24
|
+
remarkPlugins: createExtensionInput([markdownPlugin])
|
|
25
|
+
},
|
|
26
|
+
factory(originalFactory, { inputs }) {
|
|
27
|
+
const rehypePlugins = inputs.rehypePlugins.map(
|
|
28
|
+
(output) => output.get(markdownPlugin)
|
|
29
|
+
);
|
|
30
|
+
const remarkPlugins = inputs.remarkPlugins.map(
|
|
31
|
+
(output) => output.get(markdownPlugin)
|
|
32
|
+
);
|
|
33
|
+
return originalFactory(
|
|
34
|
+
(defineParams) => defineParams({
|
|
35
|
+
api: qetaMarkdownPluginsApiRef,
|
|
36
|
+
deps: {},
|
|
37
|
+
factory: () => ({
|
|
38
|
+
getRehypePlugins: () => rehypePlugins,
|
|
39
|
+
getRemarkPlugins: () => remarkPlugins
|
|
40
|
+
})
|
|
41
|
+
})
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
15
45
|
const qetaApi = ApiBlueprint.make({
|
|
16
46
|
params: (defineParams) => defineParams({
|
|
17
47
|
api: qetaApiRef,
|
|
@@ -24,47 +54,6 @@ const qetaApi = ApiBlueprint.make({
|
|
|
24
54
|
}
|
|
25
55
|
})
|
|
26
56
|
});
|
|
27
|
-
const QetaPageIntroElementBlueprint = createExtensionBlueprint({
|
|
28
|
-
kind: "intro-element",
|
|
29
|
-
attachTo: { id: "page:qeta", input: "introElement" },
|
|
30
|
-
output: [coreExtensionData.reactElement],
|
|
31
|
-
factory(params) {
|
|
32
|
-
return [coreExtensionData.reactElement(params.element)];
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
const QetaPageHeaderElementBlueprint = createExtensionBlueprint({
|
|
36
|
-
kind: "header-element",
|
|
37
|
-
attachTo: { id: "page:qeta", input: "headerElements" },
|
|
38
|
-
output: [coreExtensionData.reactElement],
|
|
39
|
-
factory(params) {
|
|
40
|
-
return [coreExtensionData.reactElement(params.element)];
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
const markdownPlugin = createExtensionDataRef().with({
|
|
44
|
-
id: "qeta.markdown-plugin"
|
|
45
|
-
});
|
|
46
|
-
const QetaMarkdownRehypePluginBlueprint = createExtensionBlueprint({
|
|
47
|
-
kind: "markdown-plugin",
|
|
48
|
-
attachTo: [
|
|
49
|
-
{ id: "page:qeta", input: "rehypePlugins" },
|
|
50
|
-
{ id: "entity-posts-content", input: "rehypePlugins" }
|
|
51
|
-
],
|
|
52
|
-
output: [markdownPlugin],
|
|
53
|
-
factory(params) {
|
|
54
|
-
return [markdownPlugin(params.plugin)];
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
const QetaMarkdownRemarkPluginBlueprint = createExtensionBlueprint({
|
|
58
|
-
kind: "markdown-plugin",
|
|
59
|
-
attachTo: [
|
|
60
|
-
{ id: "page:qeta", input: "remarkPlugins" },
|
|
61
|
-
{ id: "entity-posts-content", input: "remarkPlugins" }
|
|
62
|
-
],
|
|
63
|
-
output: [markdownPlugin],
|
|
64
|
-
factory(params) {
|
|
65
|
-
return [markdownPlugin(params.plugin)];
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
57
|
const qetaPage = PageBlueprint.makeWithOverrides({
|
|
69
58
|
config: {
|
|
70
59
|
schema: {
|
|
@@ -83,25 +72,18 @@ const qetaPage = PageBlueprint.makeWithOverrides({
|
|
|
83
72
|
headerElements: createExtensionInput([coreExtensionData.reactElement], {
|
|
84
73
|
singleton: false,
|
|
85
74
|
optional: true
|
|
86
|
-
}),
|
|
87
|
-
rehypePlugins: createExtensionInput([markdownPlugin], {
|
|
88
|
-
singleton: false,
|
|
89
|
-
optional: true
|
|
90
|
-
}),
|
|
91
|
-
remarkPlugins: createExtensionInput([markdownPlugin], {
|
|
92
|
-
singleton: false,
|
|
93
|
-
optional: true
|
|
94
75
|
})
|
|
95
76
|
},
|
|
96
|
-
factory: (originalFactory, { config, inputs }) => {
|
|
77
|
+
factory: (originalFactory, { config, inputs, apis }) => {
|
|
97
78
|
const introElement = inputs.introElement?.get(
|
|
98
79
|
coreExtensionData.reactElement
|
|
99
80
|
);
|
|
100
81
|
const headerElements = inputs.headerElements.map(
|
|
101
82
|
(e) => e.get(coreExtensionData.reactElement)
|
|
102
83
|
);
|
|
103
|
-
const
|
|
104
|
-
const
|
|
84
|
+
const pluginsApi = apis.get(qetaMarkdownPluginsApiRef);
|
|
85
|
+
const remarkPlugins = pluginsApi?.getRemarkPlugins();
|
|
86
|
+
const rehypePlugins = pluginsApi?.getRehypePlugins();
|
|
105
87
|
return originalFactory({
|
|
106
88
|
path: config.path ?? "/qeta",
|
|
107
89
|
routeRef: convertLegacyRouteRef(qetaRouteRef),
|
|
@@ -138,17 +120,8 @@ const EntityPostsContent = EntityContentBlueprint.makeWithOverrides({
|
|
|
138
120
|
relations: (z) => z.array(z.string()).optional()
|
|
139
121
|
}
|
|
140
122
|
},
|
|
141
|
-
inputs: {
|
|
142
|
-
|
|
143
|
-
singleton: false,
|
|
144
|
-
optional: true
|
|
145
|
-
}),
|
|
146
|
-
remarkPlugins: createExtensionInput([markdownPlugin], {
|
|
147
|
-
singleton: false,
|
|
148
|
-
optional: true
|
|
149
|
-
})
|
|
150
|
-
},
|
|
151
|
-
factory: (originalFactory, { config, apis, inputs }) => {
|
|
123
|
+
inputs: {},
|
|
124
|
+
factory: (originalFactory, { config, apis }) => {
|
|
152
125
|
return originalFactory({
|
|
153
126
|
path: config.path ?? "/qeta",
|
|
154
127
|
title: config.title ?? "Q&A",
|
|
@@ -159,12 +132,9 @@ const EntityPostsContent = EntityContentBlueprint.makeWithOverrides({
|
|
|
159
132
|
return supportedKinds?.includes(entityKind);
|
|
160
133
|
},
|
|
161
134
|
loader: async () => {
|
|
162
|
-
const
|
|
163
|
-
|
|
164
|
-
);
|
|
165
|
-
const rehypePlugins = inputs.rehypePlugins.map(
|
|
166
|
-
(e) => e.get(markdownPlugin)
|
|
167
|
-
);
|
|
135
|
+
const pluginsApi = apis.get(qetaMarkdownPluginsApiRef);
|
|
136
|
+
const remarkPlugins = pluginsApi?.getRemarkPlugins();
|
|
137
|
+
const rehypePlugins = pluginsApi?.getRehypePlugins();
|
|
168
138
|
return import('./components/EntityPostsContent/EntityPostsContent.esm.js').then(
|
|
169
139
|
(m) => compatWrapper(
|
|
170
140
|
/* @__PURE__ */ jsx(
|
|
@@ -225,9 +195,10 @@ var alpha = createFrontendPlugin({
|
|
|
225
195
|
qetaNavItem,
|
|
226
196
|
qetaSearchResultItem,
|
|
227
197
|
qetaPostSearchFilterType,
|
|
228
|
-
techDocsAskQuestionAddon
|
|
198
|
+
techDocsAskQuestionAddon,
|
|
199
|
+
qetaMarkdownPluginsApiExtension
|
|
229
200
|
]
|
|
230
201
|
});
|
|
231
202
|
|
|
232
|
-
export {
|
|
203
|
+
export { alpha as default, qetaMarkdownPluginsApiExtension, qetaMarkdownPluginsApiRef };
|
|
233
204
|
//# sourceMappingURL=alpha.esm.js.map
|
package/dist/alpha.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alpha.esm.js","sources":["../src/alpha.tsx"],"sourcesContent":["import {\n ApiBlueprint,\n coreExtensionData,\n createExtensionBlueprint,\n createExtensionDataRef,\n createExtensionInput,\n createFrontendPlugin,\n NavItemBlueprint,\n PageBlueprint,\n} from '@backstage/frontend-plugin-api';\nimport {\n compatWrapper,\n convertLegacyRouteRef,\n convertLegacyRouteRefs,\n} from '@backstage/core-compat-api';\nimport { qetaApiRef, qetaRouteRef } from '@drodil/backstage-plugin-qeta-react';\nimport {\n configApiRef,\n discoveryApiRef,\n fetchApiRef,\n} from '@backstage/core-plugin-api';\nimport {\n getSupportedEntityKinds,\n QetaClient,\n} from '@drodil/backstage-plugin-qeta-common';\nimport ContactSupportIcon from '@material-ui/icons/ContactSupport';\nimport { EntityContentBlueprint } from '@backstage/plugin-catalog-react/alpha';\nimport { Entity } from '@backstage/catalog-model';\nimport {\n SearchFilterResultTypeBlueprint,\n SearchResultListItemBlueprint,\n} from '@backstage/plugin-search-react/alpha';\nimport { TechDocsAddonLocations } from '@backstage/plugin-techdocs-react';\nimport { AddonBlueprint } from '@backstage/plugin-techdocs-react/alpha';\nimport { TechDocsAskQuestionAddon } from './components/TechDocsAskQuestionAddon';\nimport { Pluggable } from 'unified';\n\nconst qetaApi = ApiBlueprint.make({\n params: defineParams =>\n defineParams({\n api: qetaApiRef,\n deps: {\n discoveryApi: discoveryApiRef,\n fetchApi: fetchApiRef,\n },\n factory({ discoveryApi, fetchApi }) {\n return new QetaClient({ discoveryApi, fetchApi });\n },\n }),\n});\n\nexport const QetaPageIntroElementBlueprint = createExtensionBlueprint({\n kind: 'intro-element',\n attachTo: { id: 'page:qeta', input: 'introElement' },\n output: [coreExtensionData.reactElement],\n factory(params: { element: JSX.Element }) {\n return [coreExtensionData.reactElement(params.element)];\n },\n});\n\nexport const QetaPageHeaderElementBlueprint = createExtensionBlueprint({\n kind: 'header-element',\n attachTo: { id: 'page:qeta', input: 'headerElements' },\n output: [coreExtensionData.reactElement],\n factory(params: { element: JSX.Element }) {\n return [coreExtensionData.reactElement(params.element)];\n },\n});\n\nexport const markdownPlugin = createExtensionDataRef<Pluggable>().with({\n id: 'qeta.markdown-plugin',\n});\n\nexport const QetaMarkdownRehypePluginBlueprint = createExtensionBlueprint({\n kind: 'markdown-plugin',\n attachTo: [\n { id: 'page:qeta', input: 'rehypePlugins' },\n { id: 'entity-posts-content', input: 'rehypePlugins' },\n ],\n output: [markdownPlugin],\n factory(params: { plugin: Pluggable }) {\n return [markdownPlugin(params.plugin)];\n },\n});\n\nexport const QetaMarkdownRemarkPluginBlueprint = createExtensionBlueprint({\n kind: 'markdown-plugin',\n attachTo: [\n { id: 'page:qeta', input: 'remarkPlugins' },\n { id: 'entity-posts-content', input: 'remarkPlugins' },\n ],\n output: [markdownPlugin],\n factory(params: { plugin: Pluggable }) {\n return [markdownPlugin(params.plugin)];\n },\n});\n\nconst qetaPage = PageBlueprint.makeWithOverrides({\n config: {\n schema: {\n subtitle: z => z.string().optional(),\n themeId: z => z.string().optional(),\n headerTooltip: z => z.string().optional(),\n headerType: z => z.string().optional(),\n headerTypeLink: z => z.string().optional(),\n },\n },\n inputs: {\n introElement: createExtensionInput([coreExtensionData.reactElement], {\n singleton: true,\n optional: true,\n }),\n headerElements: createExtensionInput([coreExtensionData.reactElement], {\n singleton: false,\n optional: true,\n }),\n rehypePlugins: createExtensionInput([markdownPlugin], {\n singleton: false,\n optional: true,\n }),\n remarkPlugins: createExtensionInput([markdownPlugin], {\n singleton: false,\n optional: true,\n }),\n },\n factory: (originalFactory, { config, inputs }) => {\n const introElement = inputs.introElement?.get(\n coreExtensionData.reactElement,\n );\n const headerElements = inputs.headerElements.map(e =>\n e.get(coreExtensionData.reactElement),\n );\n const remarkPlugins = inputs.remarkPlugins.map(e => e.get(markdownPlugin));\n const rehypePlugins = inputs.rehypePlugins.map(e => e.get(markdownPlugin));\n return originalFactory({\n path: config.path ?? '/qeta',\n routeRef: convertLegacyRouteRef(qetaRouteRef),\n loader: () =>\n import('./components/QetaPage').then(m =>\n compatWrapper(\n <m.QetaPage\n {...config}\n introElement={introElement}\n headerElements={headerElements}\n remarkPlugins={remarkPlugins}\n rehypePlugins={rehypePlugins}\n />,\n ),\n ),\n });\n },\n});\n\nconst EntityPostsContent = EntityContentBlueprint.makeWithOverrides({\n name: 'entity-posts-content',\n config: {\n schema: {\n showFilters: z => z.boolean().optional(),\n showTitle: z => z.boolean().optional(),\n showAskButton: z => z.boolean().optional(),\n showWriteButton: z => z.boolean().optional(),\n showLinkButton: z => z.boolean().optional(),\n showNoQuestionsBtn: z => z.boolean().optional(),\n initialPageSize: z => z.number().optional(),\n type: z => z.enum(['question', 'article', 'link']).optional(),\n view: z => z.enum(['list', 'grid']).optional(),\n relations: z => z.array(z.string()).optional(),\n },\n },\n inputs: {\n rehypePlugins: createExtensionInput([markdownPlugin], {\n singleton: false,\n optional: true,\n }),\n remarkPlugins: createExtensionInput([markdownPlugin], {\n singleton: false,\n optional: true,\n }),\n },\n factory: (originalFactory, { config, apis, inputs }) => {\n return originalFactory({\n path: config.path ?? '/qeta',\n title: config.title ?? 'Q&A',\n filter: (entity: Entity) => {\n const configApi = apis.get(configApiRef);\n const supportedKinds = getSupportedEntityKinds(configApi);\n const entityKind = entity.kind.toLowerCase();\n return supportedKinds?.includes(entityKind);\n },\n loader: async () => {\n const remarkPlugins = inputs.remarkPlugins.map(e =>\n e.get(markdownPlugin),\n );\n const rehypePlugins = inputs.rehypePlugins.map(e =>\n e.get(markdownPlugin),\n );\n return import(\n './components/EntityPostsContent/EntityPostsContent.tsx'\n ).then(m =>\n compatWrapper(\n <m.EntityPostsContent\n {...config}\n remarkPlugins={remarkPlugins}\n rehypePlugins={rehypePlugins}\n />,\n ),\n );\n },\n });\n },\n});\n\nconst qetaNavItem = NavItemBlueprint.make({\n params: {\n title: 'Q&A',\n routeRef: convertLegacyRouteRef(qetaRouteRef),\n icon: ContactSupportIcon,\n },\n});\n\nconst qetaSearchResultItem = SearchResultListItemBlueprint.make({\n params: {\n predicate: result => result.type === 'qeta',\n component: () =>\n import('./components/QetaSearchResultListItem').then(\n m => m.QetaSearchResultListItem,\n ),\n },\n});\n\nconst qetaPostSearchFilterType = SearchFilterResultTypeBlueprint.make({\n name: 'qeta',\n params: {\n value: 'qeta',\n name: 'Q&A',\n icon: <ContactSupportIcon />,\n },\n});\n\nconst techDocsAskQuestionAddon = AddonBlueprint.make({\n name: 'ask-question',\n params: {\n name: 'AskQuestion',\n location: TechDocsAddonLocations.Content,\n component: TechDocsAskQuestionAddon,\n },\n});\n\n/**\n * Backstage frontend plugin.\n *\n * @alpha\n */\nexport default createFrontendPlugin({\n pluginId: 'qeta',\n info: { packageJson: () => import('../package.json') },\n routes: convertLegacyRouteRefs({\n root: qetaRouteRef,\n }),\n extensions: [\n qetaApi,\n qetaPage,\n EntityPostsContent,\n qetaNavItem,\n qetaSearchResultItem,\n qetaPostSearchFilterType,\n techDocsAskQuestionAddon,\n ],\n});\n\nexport { qetaTranslationRef } from '@drodil/backstage-plugin-qeta-react';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"alpha.esm.js","sources":["../src/alpha.tsx"],"sourcesContent":["import {\n ApiBlueprint,\n coreExtensionData,\n createExtensionInput,\n createFrontendPlugin,\n NavItemBlueprint,\n PageBlueprint,\n} from '@backstage/frontend-plugin-api';\nimport {\n compatWrapper,\n convertLegacyRouteRef,\n convertLegacyRouteRefs,\n} from '@backstage/core-compat-api';\nimport { qetaApiRef, qetaRouteRef } from '@drodil/backstage-plugin-qeta-react';\nimport {\n configApiRef,\n createApiRef,\n discoveryApiRef,\n fetchApiRef,\n} from '@backstage/core-plugin-api';\nimport {\n getSupportedEntityKinds,\n QetaClient,\n} from '@drodil/backstage-plugin-qeta-common';\nimport ContactSupportIcon from '@material-ui/icons/ContactSupport';\nimport { EntityContentBlueprint } from '@backstage/plugin-catalog-react/alpha';\nimport { Entity } from '@backstage/catalog-model';\nimport {\n SearchFilterResultTypeBlueprint,\n SearchResultListItemBlueprint,\n} from '@backstage/plugin-search-react/alpha';\nimport { TechDocsAddonLocations } from '@backstage/plugin-techdocs-react';\nimport { AddonBlueprint } from '@backstage/plugin-techdocs-react/alpha';\nimport { TechDocsAskQuestionAddon } from './components/TechDocsAskQuestionAddon';\nimport { Pluggable } from 'unified';\nimport { markdownPlugin } from '@drodil/backstage-plugin-qeta-react/alpha';\n\ninterface QetaMarkdownPluginsApi {\n getRehypePlugins(): Pluggable[];\n getRemarkPlugins(): Pluggable[];\n}\n\nexport const qetaMarkdownPluginsApiRef = createApiRef<QetaMarkdownPluginsApi>({\n id: 'plugin.qeta.addons',\n});\n\nexport const qetaMarkdownPluginsApiExtension = ApiBlueprint.makeWithOverrides({\n name: 'addons',\n inputs: {\n rehypePlugins: createExtensionInput([markdownPlugin]),\n remarkPlugins: createExtensionInput([markdownPlugin]),\n },\n factory(originalFactory, { inputs }) {\n const rehypePlugins = inputs.rehypePlugins.map(output =>\n output.get(markdownPlugin),\n );\n const remarkPlugins = inputs.remarkPlugins.map(output =>\n output.get(markdownPlugin),\n );\n return originalFactory(defineParams =>\n defineParams({\n api: qetaMarkdownPluginsApiRef,\n deps: {},\n factory: () => ({\n getRehypePlugins: () => rehypePlugins,\n getRemarkPlugins: () => remarkPlugins,\n }),\n }),\n );\n },\n});\n\nconst qetaApi = ApiBlueprint.make({\n params: defineParams =>\n defineParams({\n api: qetaApiRef,\n deps: {\n discoveryApi: discoveryApiRef,\n fetchApi: fetchApiRef,\n },\n factory({ discoveryApi, fetchApi }) {\n return new QetaClient({ discoveryApi, fetchApi });\n },\n }),\n});\n\nconst qetaPage = PageBlueprint.makeWithOverrides({\n config: {\n schema: {\n subtitle: z => z.string().optional(),\n themeId: z => z.string().optional(),\n headerTooltip: z => z.string().optional(),\n headerType: z => z.string().optional(),\n headerTypeLink: z => z.string().optional(),\n },\n },\n inputs: {\n introElement: createExtensionInput([coreExtensionData.reactElement], {\n singleton: true,\n optional: true,\n }),\n headerElements: createExtensionInput([coreExtensionData.reactElement], {\n singleton: false,\n optional: true,\n }),\n },\n factory: (originalFactory, { config, inputs, apis }) => {\n const introElement = inputs.introElement?.get(\n coreExtensionData.reactElement,\n );\n const headerElements = inputs.headerElements.map(e =>\n e.get(coreExtensionData.reactElement),\n );\n const pluginsApi = apis.get(qetaMarkdownPluginsApiRef);\n const remarkPlugins = pluginsApi?.getRemarkPlugins();\n const rehypePlugins = pluginsApi?.getRehypePlugins();\n return originalFactory({\n path: config.path ?? '/qeta',\n routeRef: convertLegacyRouteRef(qetaRouteRef),\n loader: () =>\n import('./components/QetaPage').then(m =>\n compatWrapper(\n <m.QetaPage\n {...config}\n introElement={introElement}\n headerElements={headerElements}\n remarkPlugins={remarkPlugins}\n rehypePlugins={rehypePlugins}\n />,\n ),\n ),\n });\n },\n});\n\nconst EntityPostsContent = EntityContentBlueprint.makeWithOverrides({\n name: 'entity-posts-content',\n config: {\n schema: {\n showFilters: z => z.boolean().optional(),\n showTitle: z => z.boolean().optional(),\n showAskButton: z => z.boolean().optional(),\n showWriteButton: z => z.boolean().optional(),\n showLinkButton: z => z.boolean().optional(),\n showNoQuestionsBtn: z => z.boolean().optional(),\n initialPageSize: z => z.number().optional(),\n type: z => z.enum(['question', 'article', 'link']).optional(),\n view: z => z.enum(['list', 'grid']).optional(),\n relations: z => z.array(z.string()).optional(),\n },\n },\n inputs: {},\n factory: (originalFactory, { config, apis }) => {\n return originalFactory({\n path: config.path ?? '/qeta',\n title: config.title ?? 'Q&A',\n filter: (entity: Entity) => {\n const configApi = apis.get(configApiRef);\n const supportedKinds = getSupportedEntityKinds(configApi);\n const entityKind = entity.kind.toLowerCase();\n return supportedKinds?.includes(entityKind);\n },\n loader: async () => {\n const pluginsApi = apis.get(qetaMarkdownPluginsApiRef);\n const remarkPlugins = pluginsApi?.getRemarkPlugins();\n const rehypePlugins = pluginsApi?.getRehypePlugins();\n return import(\n './components/EntityPostsContent/EntityPostsContent.tsx'\n ).then(m =>\n compatWrapper(\n <m.EntityPostsContent\n {...config}\n remarkPlugins={remarkPlugins}\n rehypePlugins={rehypePlugins}\n />,\n ),\n );\n },\n });\n },\n});\n\nconst qetaNavItem = NavItemBlueprint.make({\n params: {\n title: 'Q&A',\n routeRef: convertLegacyRouteRef(qetaRouteRef),\n icon: ContactSupportIcon,\n },\n});\n\nconst qetaSearchResultItem = SearchResultListItemBlueprint.make({\n params: {\n predicate: result => result.type === 'qeta',\n component: () =>\n import('./components/QetaSearchResultListItem').then(\n m => m.QetaSearchResultListItem,\n ),\n },\n});\n\nconst qetaPostSearchFilterType = SearchFilterResultTypeBlueprint.make({\n name: 'qeta',\n params: {\n value: 'qeta',\n name: 'Q&A',\n icon: <ContactSupportIcon />,\n },\n});\n\nconst techDocsAskQuestionAddon = AddonBlueprint.make({\n name: 'ask-question',\n params: {\n name: 'AskQuestion',\n location: TechDocsAddonLocations.Content,\n component: TechDocsAskQuestionAddon,\n },\n});\n\n/**\n * Backstage frontend plugin.\n *\n * @alpha\n */\nexport default createFrontendPlugin({\n pluginId: 'qeta',\n info: { packageJson: () => import('../package.json') },\n routes: convertLegacyRouteRefs({\n root: qetaRouteRef,\n }),\n extensions: [\n qetaApi,\n qetaPage,\n EntityPostsContent,\n qetaNavItem,\n qetaSearchResultItem,\n qetaPostSearchFilterType,\n techDocsAskQuestionAddon,\n qetaMarkdownPluginsApiExtension,\n ],\n});\n\nexport { qetaTranslationRef } from '@drodil/backstage-plugin-qeta-react';\n\n// TODO: To be removed in favor of direct imports from `@drodil/backstage-plugin-qeta-react/alpha` in the next major release, after the deprecation period has ended.\nexport {\n /** @deprecated Use blueprints from `@drodil/backstage-plugin-qeta-react/alpha` instead. */\n QetaMarkdownRehypePluginBlueprint,\n /** @deprecated Use blueprints from `@drodil/backstage-plugin-qeta-react/alpha` instead. */\n QetaPageIntroElementBlueprint,\n /** @deprecated Use blueprints from `@drodil/backstage-plugin-qeta-react/alpha` instead. */\n QetaPageHeaderElementBlueprint,\n /** @deprecated Use blueprints from `@drodil/backstage-plugin-qeta-react/alpha` instead. */\n QetaMarkdownRemarkPluginBlueprint,\n} from '@drodil/backstage-plugin-qeta-react/alpha';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AA0CO,MAAM,4BAA4B,YAAqC,CAAA;AAAA,EAC5E,EAAI,EAAA;AACN,CAAC;AAEY,MAAA,+BAAA,GAAkC,aAAa,iBAAkB,CAAA;AAAA,EAC5E,IAAM,EAAA,QAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACN,aAAe,EAAA,oBAAA,CAAqB,CAAC,cAAc,CAAC,CAAA;AAAA,IACpD,aAAe,EAAA,oBAAA,CAAqB,CAAC,cAAc,CAAC;AAAA,GACtD;AAAA,EACA,OAAQ,CAAA,eAAA,EAAiB,EAAE,MAAA,EAAU,EAAA;AACnC,IAAM,MAAA,aAAA,GAAgB,OAAO,aAAc,CAAA,GAAA;AAAA,MAAI,CAAA,MAAA,KAC7C,MAAO,CAAA,GAAA,CAAI,cAAc;AAAA,KAC3B;AACA,IAAM,MAAA,aAAA,GAAgB,OAAO,aAAc,CAAA,GAAA;AAAA,MAAI,CAAA,MAAA,KAC7C,MAAO,CAAA,GAAA,CAAI,cAAc;AAAA,KAC3B;AACA,IAAO,OAAA,eAAA;AAAA,MAAgB,kBACrB,YAAa,CAAA;AAAA,QACX,GAAK,EAAA,yBAAA;AAAA,QACL,MAAM,EAAC;AAAA,QACP,SAAS,OAAO;AAAA,UACd,kBAAkB,MAAM,aAAA;AAAA,UACxB,kBAAkB,MAAM;AAAA,SAC1B;AAAA,OACD;AAAA,KACH;AAAA;AAEJ,CAAC;AAED,MAAM,OAAA,GAAU,aAAa,IAAK,CAAA;AAAA,EAChC,MAAA,EAAQ,kBACN,YAAa,CAAA;AAAA,IACX,GAAK,EAAA,UAAA;AAAA,IACL,IAAM,EAAA;AAAA,MACJ,YAAc,EAAA,eAAA;AAAA,MACd,QAAU,EAAA;AAAA,KACZ;AAAA,IACA,OAAQ,CAAA,EAAE,YAAc,EAAA,QAAA,EAAY,EAAA;AAClC,MAAA,OAAO,IAAI,UAAA,CAAW,EAAE,YAAA,EAAc,UAAU,CAAA;AAAA;AAClD,GACD;AACL,CAAC,CAAA;AAED,MAAM,QAAA,GAAW,cAAc,iBAAkB,CAAA;AAAA,EAC/C,MAAQ,EAAA;AAAA,IACN,MAAQ,EAAA;AAAA,MACN,QAAU,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,MAAA,GAAS,QAAS,EAAA;AAAA,MACnC,OAAS,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,MAAA,GAAS,QAAS,EAAA;AAAA,MAClC,aAAe,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,MAAA,GAAS,QAAS,EAAA;AAAA,MACxC,UAAY,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,MAAA,GAAS,QAAS,EAAA;AAAA,MACrC,cAAgB,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,MAAA,GAAS,QAAS;AAAA;AAC3C,GACF;AAAA,EACA,MAAQ,EAAA;AAAA,IACN,YAAc,EAAA,oBAAA,CAAqB,CAAC,iBAAA,CAAkB,YAAY,CAAG,EAAA;AAAA,MACnE,SAAW,EAAA,IAAA;AAAA,MACX,QAAU,EAAA;AAAA,KACX,CAAA;AAAA,IACD,cAAgB,EAAA,oBAAA,CAAqB,CAAC,iBAAA,CAAkB,YAAY,CAAG,EAAA;AAAA,MACrE,SAAW,EAAA,KAAA;AAAA,MACX,QAAU,EAAA;AAAA,KACX;AAAA,GACH;AAAA,EACA,SAAS,CAAC,eAAA,EAAiB,EAAE,MAAQ,EAAA,MAAA,EAAQ,MAAW,KAAA;AACtD,IAAM,MAAA,YAAA,GAAe,OAAO,YAAc,EAAA,GAAA;AAAA,MACxC,iBAAkB,CAAA;AAAA,KACpB;AACA,IAAM,MAAA,cAAA,GAAiB,OAAO,cAAe,CAAA,GAAA;AAAA,MAAI,CAC/C,CAAA,KAAA,CAAA,CAAE,GAAI,CAAA,iBAAA,CAAkB,YAAY;AAAA,KACtC;AACA,IAAM,MAAA,UAAA,GAAa,IAAK,CAAA,GAAA,CAAI,yBAAyB,CAAA;AACrD,IAAM,MAAA,aAAA,GAAgB,YAAY,gBAAiB,EAAA;AACnD,IAAM,MAAA,aAAA,GAAgB,YAAY,gBAAiB,EAAA;AACnD,IAAA,OAAO,eAAgB,CAAA;AAAA,MACrB,IAAA,EAAM,OAAO,IAAQ,IAAA,OAAA;AAAA,MACrB,QAAA,EAAU,sBAAsB,YAAY,CAAA;AAAA,MAC5C,MAAQ,EAAA,MACN,OAAO,oCAAuB,CAAE,CAAA,IAAA;AAAA,QAAK,CACnC,CAAA,KAAA,aAAA;AAAA,0BACE,GAAA;AAAA,YAAC,CAAE,CAAA,QAAA;AAAA,YAAF;AAAA,cACE,GAAG,MAAA;AAAA,cACJ,YAAA;AAAA,cACA,cAAA;AAAA,cACA,aAAA;AAAA,cACA;AAAA;AAAA;AACF;AACF;AACF,KACH,CAAA;AAAA;AAEL,CAAC,CAAA;AAED,MAAM,kBAAA,GAAqB,uBAAuB,iBAAkB,CAAA;AAAA,EAClE,IAAM,EAAA,sBAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACN,MAAQ,EAAA;AAAA,MACN,WAAa,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,GAAU,QAAS,EAAA;AAAA,MACvC,SAAW,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,GAAU,QAAS,EAAA;AAAA,MACrC,aAAe,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,GAAU,QAAS,EAAA;AAAA,MACzC,eAAiB,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,GAAU,QAAS,EAAA;AAAA,MAC3C,cAAgB,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,GAAU,QAAS,EAAA;AAAA,MAC1C,kBAAoB,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,OAAA,GAAU,QAAS,EAAA;AAAA,MAC9C,eAAiB,EAAA,CAAA,CAAA,KAAK,CAAE,CAAA,MAAA,GAAS,QAAS,EAAA;AAAA,MAC1C,IAAA,EAAM,CAAK,CAAA,KAAA,CAAA,CAAE,IAAK,CAAA,CAAC,YAAY,SAAW,EAAA,MAAM,CAAC,CAAA,CAAE,QAAS,EAAA;AAAA,MAC5D,IAAA,EAAM,OAAK,CAAE,CAAA,IAAA,CAAK,CAAC,MAAQ,EAAA,MAAM,CAAC,CAAA,CAAE,QAAS,EAAA;AAAA,MAC7C,SAAA,EAAW,OAAK,CAAE,CAAA,KAAA,CAAM,EAAE,MAAO,EAAC,EAAE,QAAS;AAAA;AAC/C,GACF;AAAA,EACA,QAAQ,EAAC;AAAA,EACT,SAAS,CAAC,eAAA,EAAiB,EAAE,MAAA,EAAQ,MAAW,KAAA;AAC9C,IAAA,OAAO,eAAgB,CAAA;AAAA,MACrB,IAAA,EAAM,OAAO,IAAQ,IAAA,OAAA;AAAA,MACrB,KAAA,EAAO,OAAO,KAAS,IAAA,KAAA;AAAA,MACvB,MAAA,EAAQ,CAAC,MAAmB,KAAA;AAC1B,QAAM,MAAA,SAAA,GAAY,IAAK,CAAA,GAAA,CAAI,YAAY,CAAA;AACvC,QAAM,MAAA,cAAA,GAAiB,wBAAwB,SAAS,CAAA;AACxD,QAAM,MAAA,UAAA,GAAa,MAAO,CAAA,IAAA,CAAK,WAAY,EAAA;AAC3C,QAAO,OAAA,cAAA,EAAgB,SAAS,UAAU,CAAA;AAAA,OAC5C;AAAA,MACA,QAAQ,YAAY;AAClB,QAAM,MAAA,UAAA,GAAa,IAAK,CAAA,GAAA,CAAI,yBAAyB,CAAA;AACrD,QAAM,MAAA,aAAA,GAAgB,YAAY,gBAAiB,EAAA;AACnD,QAAM,MAAA,aAAA,GAAgB,YAAY,gBAAiB,EAAA;AACnD,QAAO,OAAA,OACL,2DACF,CAAE,CAAA,IAAA;AAAA,UAAK,CACL,CAAA,KAAA,aAAA;AAAA,4BACE,GAAA;AAAA,cAAC,CAAE,CAAA,kBAAA;AAAA,cAAF;AAAA,gBACE,GAAG,MAAA;AAAA,gBACJ,aAAA;AAAA,gBACA;AAAA;AAAA;AACF;AACF,SACF;AAAA;AACF,KACD,CAAA;AAAA;AAEL,CAAC,CAAA;AAED,MAAM,WAAA,GAAc,iBAAiB,IAAK,CAAA;AAAA,EACxC,MAAQ,EAAA;AAAA,IACN,KAAO,EAAA,KAAA;AAAA,IACP,QAAA,EAAU,sBAAsB,YAAY,CAAA;AAAA,IAC5C,IAAM,EAAA;AAAA;AAEV,CAAC,CAAA;AAED,MAAM,oBAAA,GAAuB,8BAA8B,IAAK,CAAA;AAAA,EAC9D,MAAQ,EAAA;AAAA,IACN,SAAA,EAAW,CAAU,MAAA,KAAA,MAAA,CAAO,IAAS,KAAA,MAAA;AAAA,IACrC,SAAW,EAAA,MACT,OAAO,oDAAuC,CAAE,CAAA,IAAA;AAAA,MAC9C,OAAK,CAAE,CAAA;AAAA;AACT;AAEN,CAAC,CAAA;AAED,MAAM,wBAAA,GAA2B,gCAAgC,IAAK,CAAA;AAAA,EACpE,IAAM,EAAA,MAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACN,KAAO,EAAA,MAAA;AAAA,IACP,IAAM,EAAA,KAAA;AAAA,IACN,IAAA,sBAAO,kBAAmB,EAAA,EAAA;AAAA;AAE9B,CAAC,CAAA;AAED,MAAM,wBAAA,GAA2B,eAAe,IAAK,CAAA;AAAA,EACnD,IAAM,EAAA,cAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,aAAA;AAAA,IACN,UAAU,sBAAuB,CAAA,OAAA;AAAA,IACjC,SAAW,EAAA;AAAA;AAEf,CAAC,CAAA;AAOD,YAAe,oBAAqB,CAAA;AAAA,EAClC,QAAU,EAAA,MAAA;AAAA,EACV,MAAM,EAAE,WAAA,EAAa,MAAM,OAAO,uBAAiB,CAAE,EAAA;AAAA,EACrD,QAAQ,sBAAuB,CAAA;AAAA,IAC7B,IAAM,EAAA;AAAA,GACP,CAAA;AAAA,EACD,UAAY,EAAA;AAAA,IACV,OAAA;AAAA,IACA,QAAA;AAAA,IACA,kBAAA;AAAA,IACA,WAAA;AAAA,IACA,oBAAA;AAAA,IACA,wBAAA;AAAA,IACA,wBAAA;AAAA,IACA;AAAA;AAEJ,CAAC,CAAA;;;;"}
|
package/dist/package.json.esm.js
CHANGED
|
@@ -6,7 +6,7 @@ var keywords = [
|
|
|
6
6
|
"frontend",
|
|
7
7
|
"backstage.io"
|
|
8
8
|
];
|
|
9
|
-
var version = "3.58.
|
|
9
|
+
var version = "3.58.7";
|
|
10
10
|
var main = "src/index.ts";
|
|
11
11
|
var types = "src/index.ts";
|
|
12
12
|
var prepublishOnly = "yarn tsc && yarn build";
|
|
@@ -84,7 +84,7 @@ var dependencies = {
|
|
|
84
84
|
unified: "^11.0.5"
|
|
85
85
|
};
|
|
86
86
|
var peerDependencies = {
|
|
87
|
-
"@backstage/catalog-client": "^1.
|
|
87
|
+
"@backstage/catalog-client": "^1.13.0",
|
|
88
88
|
react: " ^18.0.0 || ^19.0.0",
|
|
89
89
|
"react-dom": "^18.0.0 || ^19.0.0",
|
|
90
90
|
"react-router-dom": "6.0.0-beta.0 || ^6.3.0"
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"frontend",
|
|
8
8
|
"backstage.io"
|
|
9
9
|
],
|
|
10
|
-
"version": "3.58.
|
|
10
|
+
"version": "3.58.7",
|
|
11
11
|
"main": "./dist/index.esm.js",
|
|
12
12
|
"types": "./dist/index.d.ts",
|
|
13
13
|
"prepublishOnly": "yarn tsc && yarn build",
|
|
@@ -74,19 +74,19 @@
|
|
|
74
74
|
},
|
|
75
75
|
"dependencies": {
|
|
76
76
|
"@backstage/catalog-model": "^1.7.6",
|
|
77
|
-
"@backstage/core-compat-api": "^0.5.
|
|
78
|
-
"@backstage/core-components": "^0.18.
|
|
79
|
-
"@backstage/core-plugin-api": "^1.12.
|
|
80
|
-
"@backstage/frontend-plugin-api": "^0.
|
|
81
|
-
"@backstage/plugin-catalog-react": "^
|
|
82
|
-
"@backstage/plugin-home-react": "^0.1.
|
|
83
|
-
"@backstage/plugin-permission-react": "^0.4.
|
|
84
|
-
"@backstage/plugin-search-common": "^1.2.
|
|
85
|
-
"@backstage/plugin-search-react": "^1.10.
|
|
86
|
-
"@backstage/plugin-signals-react": "^0.0.
|
|
87
|
-
"@backstage/plugin-techdocs-react": "^1.3.
|
|
88
|
-
"@drodil/backstage-plugin-qeta-common": "^3.58.
|
|
89
|
-
"@drodil/backstage-plugin-qeta-react": "^3.58.
|
|
77
|
+
"@backstage/core-compat-api": "^0.5.8",
|
|
78
|
+
"@backstage/core-components": "^0.18.7",
|
|
79
|
+
"@backstage/core-plugin-api": "^1.12.3",
|
|
80
|
+
"@backstage/frontend-plugin-api": "^0.14.0",
|
|
81
|
+
"@backstage/plugin-catalog-react": "^2.0.0",
|
|
82
|
+
"@backstage/plugin-home-react": "^0.1.35",
|
|
83
|
+
"@backstage/plugin-permission-react": "^0.4.40",
|
|
84
|
+
"@backstage/plugin-search-common": "^1.2.22",
|
|
85
|
+
"@backstage/plugin-search-react": "^1.10.3",
|
|
86
|
+
"@backstage/plugin-signals-react": "^0.0.19",
|
|
87
|
+
"@backstage/plugin-techdocs-react": "^1.3.8",
|
|
88
|
+
"@drodil/backstage-plugin-qeta-common": "^3.58.7",
|
|
89
|
+
"@drodil/backstage-plugin-qeta-react": "^3.58.7",
|
|
90
90
|
"@material-ui/core": "^4.12.2",
|
|
91
91
|
"@material-ui/icons": "^4.11.3",
|
|
92
92
|
"@material-ui/lab": "4.0.0-alpha.61",
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
"unified": "^11.0.5"
|
|
98
98
|
},
|
|
99
99
|
"peerDependencies": {
|
|
100
|
-
"@backstage/catalog-client": "^1.
|
|
100
|
+
"@backstage/catalog-client": "^1.13.0",
|
|
101
101
|
"react": " ^18.0.0 || ^19.0.0",
|
|
102
102
|
"react-dom": "^18.0.0 || ^19.0.0",
|
|
103
103
|
"react-router-dom": "6.0.0-beta.0 || ^6.3.0"
|
|
@@ -106,18 +106,18 @@
|
|
|
106
106
|
"react-markdown": "8.0.7"
|
|
107
107
|
},
|
|
108
108
|
"devDependencies": {
|
|
109
|
-
"@backstage/cli": "^0.35.
|
|
110
|
-
"@backstage/dev-utils": "^1.1.
|
|
111
|
-
"@backstage/frontend-defaults": "^0.
|
|
112
|
-
"@backstage/plugin-catalog": "^1.
|
|
113
|
-
"@backstage/plugin-home": "^0.9.
|
|
114
|
-
"@backstage/plugin-notifications": "^0.5.
|
|
115
|
-
"@backstage/plugin-search": "^1.
|
|
116
|
-
"@backstage/plugin-search-react": "^1.10.
|
|
117
|
-
"@backstage/plugin-signals": "^0.0.
|
|
118
|
-
"@backstage/plugin-techdocs": "^1.
|
|
119
|
-
"@backstage/plugin-user-settings": "^0.
|
|
120
|
-
"@backstage/ui": "^0.
|
|
109
|
+
"@backstage/cli": "^0.35.4",
|
|
110
|
+
"@backstage/dev-utils": "^1.1.20",
|
|
111
|
+
"@backstage/frontend-defaults": "^0.4.0",
|
|
112
|
+
"@backstage/plugin-catalog": "^1.33.0",
|
|
113
|
+
"@backstage/plugin-home": "^0.9.2",
|
|
114
|
+
"@backstage/plugin-notifications": "^0.5.14",
|
|
115
|
+
"@backstage/plugin-search": "^1.6.0",
|
|
116
|
+
"@backstage/plugin-search-react": "^1.10.3",
|
|
117
|
+
"@backstage/plugin-signals": "^0.0.28",
|
|
118
|
+
"@backstage/plugin-techdocs": "^1.17.0",
|
|
119
|
+
"@backstage/plugin-user-settings": "^0.9.0",
|
|
120
|
+
"@backstage/ui": "^0.12.0",
|
|
121
121
|
"@testing-library/jest-dom": "^6.1.3",
|
|
122
122
|
"@types/lodash": "^4.14.199",
|
|
123
123
|
"@types/luxon": "^3",
|