@drodil/backstage-plugin-qeta 3.37.0 → 3.38.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/dist/alpha.d.ts +23 -19
- package/dist/alpha.esm.js +31 -6
- package/dist/alpha.esm.js.map +1 -1
- package/dist/components/EntityPostsContent/EntityPostsContent.esm.js +8 -2
- package/dist/components/EntityPostsContent/EntityPostsContent.esm.js.map +1 -1
- package/dist/package.json.esm.js +2 -1
- package/dist/package.json.esm.js.map +1 -1
- package/package.json +4 -3
package/dist/alpha.d.ts
CHANGED
|
@@ -1,27 +1,31 @@
|
|
|
1
|
-
import * as _backstage_catalog_model from '@backstage/catalog-model';
|
|
2
|
-
import * as react from 'react';
|
|
3
1
|
import * as _backstage_plugin_catalog_react_alpha from '@backstage/plugin-catalog-react/alpha';
|
|
4
|
-
import * as _backstage_frontend_plugin_api from '@backstage/frontend-plugin-api';
|
|
5
2
|
import * as _backstage_core_plugin_api from '@backstage/core-plugin-api';
|
|
3
|
+
import * as _backstage_frontend_plugin_api from '@backstage/frontend-plugin-api';
|
|
4
|
+
import * as react from 'react';
|
|
5
|
+
import { Entity } from '@backstage/catalog-model';
|
|
6
6
|
export { qetaTranslationRef } from '@drodil/backstage-plugin-qeta-react';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
declare const QetaPageIntroElementBlueprint: _backstage_frontend_plugin_api.ExtensionBlueprint<{
|
|
9
|
+
kind: "intro-element";
|
|
10
|
+
params: {
|
|
11
|
+
element: JSX.Element;
|
|
12
|
+
};
|
|
13
|
+
output: _backstage_frontend_plugin_api.ExtensionDataRef<react.JSX.Element, "core.reactElement", {}>;
|
|
14
|
+
inputs: {};
|
|
12
15
|
config: {};
|
|
13
16
|
configInput: {};
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}, "core.nav-item.target", {}>;
|
|
19
|
-
inputs: {};
|
|
17
|
+
dataRefs: never;
|
|
18
|
+
}>;
|
|
19
|
+
declare const QetaPageHeaderElementBlueprint: _backstage_frontend_plugin_api.ExtensionBlueprint<{
|
|
20
|
+
kind: "header-element";
|
|
20
21
|
params: {
|
|
21
|
-
|
|
22
|
-
icon: _backstage_core_plugin_api.IconComponent;
|
|
23
|
-
routeRef: _backstage_frontend_plugin_api.RouteRef<undefined>;
|
|
22
|
+
element: JSX.Element;
|
|
24
23
|
};
|
|
24
|
+
output: _backstage_frontend_plugin_api.ExtensionDataRef<react.JSX.Element, "core.reactElement", {}>;
|
|
25
|
+
inputs: {};
|
|
26
|
+
config: {};
|
|
27
|
+
configInput: {};
|
|
28
|
+
dataRefs: never;
|
|
25
29
|
}>;
|
|
26
30
|
/**
|
|
27
31
|
* Backstage frontend plugin.
|
|
@@ -75,7 +79,7 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
75
79
|
};
|
|
76
80
|
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", {
|
|
77
81
|
optional: true;
|
|
78
|
-
}> | _backstage_frontend_plugin_api.ExtensionDataRef<(entity:
|
|
82
|
+
}> | _backstage_frontend_plugin_api.ExtensionDataRef<(entity: Entity) => boolean, "catalog.entity-filter-function", {
|
|
79
83
|
optional: true;
|
|
80
84
|
}> | _backstage_frontend_plugin_api.ExtensionDataRef<string, "catalog.entity-filter-expression", {
|
|
81
85
|
optional: true;
|
|
@@ -101,7 +105,7 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
101
105
|
group?: ("overview" | "documentation" | "development" | "deployment" | "operation" | "observability") | (string & {});
|
|
102
106
|
loader: () => Promise<JSX.Element>;
|
|
103
107
|
routeRef?: _backstage_frontend_plugin_api.RouteRef;
|
|
104
|
-
filter?: string | _backstage_plugin_catalog_react_alpha.EntityPredicate | ((entity:
|
|
108
|
+
filter?: string | _backstage_plugin_catalog_react_alpha.EntityPredicate | ((entity: Entity) => boolean);
|
|
105
109
|
};
|
|
106
110
|
}>;
|
|
107
111
|
"nav-item:qeta": _backstage_frontend_plugin_api.ExtensionDefinition<{
|
|
@@ -164,4 +168,4 @@ declare const _default: _backstage_frontend_plugin_api.OverridableFrontendPlugin
|
|
|
164
168
|
}>;
|
|
165
169
|
}>;
|
|
166
170
|
|
|
167
|
-
export { _default as default
|
|
171
|
+
export { QetaPageHeaderElementBlueprint, QetaPageIntroElementBlueprint, _default as default };
|
package/dist/alpha.esm.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { ApiBlueprint, PageBlueprint, createExtensionInput,
|
|
2
|
+
import { ApiBlueprint, createExtensionBlueprint, coreExtensionData, PageBlueprint, createExtensionInput, 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 } from '@backstage/core-plugin-api';
|
|
6
|
+
import { discoveryApiRef, fetchApiRef, configApiRef } from '@backstage/core-plugin-api';
|
|
7
7
|
import { QetaClient } from '@drodil/backstage-plugin-qeta-common';
|
|
8
|
-
import
|
|
8
|
+
import ContactSupportIcon from '@material-ui/icons/ContactSupport';
|
|
9
9
|
import { EntityContentBlueprint } from '@backstage/plugin-catalog-react/alpha';
|
|
10
10
|
|
|
11
11
|
const qetaApi = ApiBlueprint.make({
|
|
@@ -20,6 +20,22 @@ const qetaApi = ApiBlueprint.make({
|
|
|
20
20
|
}
|
|
21
21
|
})
|
|
22
22
|
});
|
|
23
|
+
const QetaPageIntroElementBlueprint = createExtensionBlueprint({
|
|
24
|
+
kind: "intro-element",
|
|
25
|
+
attachTo: { id: "page:qeta", input: "introElement" },
|
|
26
|
+
output: [coreExtensionData.reactElement],
|
|
27
|
+
factory(params) {
|
|
28
|
+
return [coreExtensionData.reactElement(params.element)];
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
const QetaPageHeaderElementBlueprint = createExtensionBlueprint({
|
|
32
|
+
kind: "header-element",
|
|
33
|
+
attachTo: { id: "page:qeta", input: "headerElements" },
|
|
34
|
+
output: [coreExtensionData.reactElement],
|
|
35
|
+
factory(params) {
|
|
36
|
+
return [coreExtensionData.reactElement(params.element)];
|
|
37
|
+
}
|
|
38
|
+
});
|
|
23
39
|
const qetaPage = PageBlueprint.makeWithOverrides({
|
|
24
40
|
config: {
|
|
25
41
|
schema: {
|
|
@@ -80,10 +96,19 @@ const EntityPostsContent = EntityContentBlueprint.makeWithOverrides({
|
|
|
80
96
|
view: (z) => z.enum(["list", "grid"]).optional()
|
|
81
97
|
}
|
|
82
98
|
},
|
|
83
|
-
factory: (originalFactory, { config }) => {
|
|
99
|
+
factory: (originalFactory, { config, apis }) => {
|
|
84
100
|
return originalFactory({
|
|
85
101
|
path: config.path ?? "/qeta",
|
|
86
102
|
title: config.title ?? "Q&A",
|
|
103
|
+
filter: (entity) => {
|
|
104
|
+
const configApi = apis.get(configApiRef);
|
|
105
|
+
const supportedKinds = (configApi?.getOptionalStringArray("qeta.entityKinds") ?? [
|
|
106
|
+
"system",
|
|
107
|
+
"component"
|
|
108
|
+
])?.map((k) => k.toLowerCase());
|
|
109
|
+
const entityKind = entity.kind.toLowerCase();
|
|
110
|
+
return supportedKinds?.includes(entityKind);
|
|
111
|
+
},
|
|
87
112
|
loader: async () => import('./components/EntityPostsContent/EntityPostsContent.esm.js').then(
|
|
88
113
|
(m) => compatWrapper(/* @__PURE__ */ jsx(m.EntityPostsContent, { ...config }))
|
|
89
114
|
)
|
|
@@ -94,7 +119,7 @@ const qetaNavItem = NavItemBlueprint.make({
|
|
|
94
119
|
params: {
|
|
95
120
|
title: "Q&A",
|
|
96
121
|
routeRef: convertLegacyRouteRef(qetaRouteRef),
|
|
97
|
-
icon:
|
|
122
|
+
icon: ContactSupportIcon
|
|
98
123
|
}
|
|
99
124
|
});
|
|
100
125
|
var alpha = createFrontendPlugin({
|
|
@@ -106,5 +131,5 @@ var alpha = createFrontendPlugin({
|
|
|
106
131
|
extensions: [qetaApi, qetaPage, EntityPostsContent, qetaNavItem]
|
|
107
132
|
});
|
|
108
133
|
|
|
109
|
-
export { alpha as default
|
|
134
|
+
export { QetaPageHeaderElementBlueprint, QetaPageIntroElementBlueprint, alpha as default };
|
|
110
135
|
//# 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 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 {
|
|
1
|
+
{"version":3,"file":"alpha.esm.js","sources":["../src/alpha.tsx"],"sourcesContent":["import {\n ApiBlueprint,\n coreExtensionData,\n createExtensionBlueprint,\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 { QetaClient } 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';\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\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 }) => {\n const introElement = inputs.introElement?.get(\n coreExtensionData.reactElement,\n );\n const headerElements = inputs.headerElements.map(e =>\n e.get(coreExtensionData.reactElement),\n );\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 />,\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 },\n },\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 = (\n configApi?.getOptionalStringArray('qeta.entityKinds') ?? [\n 'system',\n 'component',\n ]\n )?.map(k => k.toLowerCase());\n const entityKind = entity.kind.toLowerCase();\n return supportedKinds?.includes(entityKind);\n },\n loader: async () =>\n import('./components/EntityPostsContent/EntityPostsContent.tsx').then(\n m => compatWrapper(<m.EntityPostsContent {...config} />),\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\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: [qetaApi, qetaPage, EntityPostsContent, qetaNavItem],\n});\n\nexport { qetaTranslationRef } from '@drodil/backstage-plugin-qeta-react';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,18 +2,24 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import { PostsContainer } from '@drodil/backstage-plugin-qeta-react';
|
|
4
4
|
import { Content } from '@backstage/core-components';
|
|
5
|
-
import { stringifyEntityRef } from '@backstage/catalog-model';
|
|
5
|
+
import { isUserEntity, stringifyEntityRef } from '@backstage/catalog-model';
|
|
6
6
|
import { useEntity } from '@backstage/plugin-catalog-react';
|
|
7
7
|
import { Container } from '@material-ui/core';
|
|
8
8
|
|
|
9
9
|
const EntityPostsContent = (props) => {
|
|
10
10
|
const [view, setView] = useState("list");
|
|
11
11
|
const { entity } = useEntity();
|
|
12
|
+
const additionalProps = {};
|
|
13
|
+
if (isUserEntity(entity)) {
|
|
14
|
+
additionalProps.author = stringifyEntityRef(entity);
|
|
15
|
+
} else {
|
|
16
|
+
additionalProps.entity = props.entity ?? stringifyEntityRef(entity);
|
|
17
|
+
}
|
|
12
18
|
return /* @__PURE__ */ jsx(Content, { children: /* @__PURE__ */ jsx(Container, { children: /* @__PURE__ */ jsx(
|
|
13
19
|
PostsContainer,
|
|
14
20
|
{
|
|
15
21
|
...props,
|
|
16
|
-
|
|
22
|
+
...additionalProps,
|
|
17
23
|
view,
|
|
18
24
|
onViewChange: setView
|
|
19
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityPostsContent.esm.js","sources":["../../../src/components/EntityPostsContent/EntityPostsContent.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n PostsContainer,\n PostsContainerProps,\n ViewType,\n} from '@drodil/backstage-plugin-qeta-react';\nimport { Content } from '@backstage/core-components';\nimport { stringifyEntityRef } from '@backstage/catalog-model';\nimport { useEntity } from '@backstage/plugin-catalog-react';\nimport { Container } from '@material-ui/core';\n\nexport const EntityPostsContent = (props: PostsContainerProps) => {\n const [view, setView] = useState<ViewType>('list');\n const { entity } = useEntity();\n return (\n <Content>\n <Container>\n <PostsContainer\n {...props}\n
|
|
1
|
+
{"version":3,"file":"EntityPostsContent.esm.js","sources":["../../../src/components/EntityPostsContent/EntityPostsContent.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n PostsContainer,\n PostsContainerProps,\n ViewType,\n} from '@drodil/backstage-plugin-qeta-react';\nimport { Content } from '@backstage/core-components';\nimport { isUserEntity, stringifyEntityRef } from '@backstage/catalog-model';\nimport { useEntity } from '@backstage/plugin-catalog-react';\nimport { Container } from '@material-ui/core';\n\nexport const EntityPostsContent = (props: PostsContainerProps) => {\n const [view, setView] = useState<ViewType>('list');\n const { entity } = useEntity();\n const additionalProps: PostsContainerProps = {};\n if (isUserEntity(entity)) {\n additionalProps.author = stringifyEntityRef(entity);\n } else {\n additionalProps.entity = props.entity ?? stringifyEntityRef(entity);\n }\n\n return (\n <Content>\n <Container>\n <PostsContainer\n {...props}\n {...additionalProps}\n view={view}\n onViewChange={setView}\n />\n </Container>\n </Content>\n );\n};\n"],"names":[],"mappings":";;;;;;;;AAWa,MAAA,kBAAA,GAAqB,CAAC,KAA+B,KAAA;AAChE,EAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAI,SAAmB,MAAM,CAAA;AACjD,EAAM,MAAA,EAAE,MAAO,EAAA,GAAI,SAAU,EAAA;AAC7B,EAAA,MAAM,kBAAuC,EAAC;AAC9C,EAAI,IAAA,YAAA,CAAa,MAAM,CAAG,EAAA;AACxB,IAAgB,eAAA,CAAA,MAAA,GAAS,mBAAmB,MAAM,CAAA;AAAA,GAC7C,MAAA;AACL,IAAA,eAAA,CAAgB,MAAS,GAAA,KAAA,CAAM,MAAU,IAAA,kBAAA,CAAmB,MAAM,CAAA;AAAA;AAGpE,EACE,uBAAA,GAAA,CAAC,OACC,EAAA,EAAA,QAAA,kBAAA,GAAA,CAAC,SACC,EAAA,EAAA,QAAA,kBAAA,GAAA;AAAA,IAAC,cAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACH,GAAG,eAAA;AAAA,MACJ,IAAA;AAAA,MACA,YAAc,EAAA;AAAA;AAAA,KAElB,CACF,EAAA,CAAA;AAEJ;;;;"}
|
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.
|
|
9
|
+
var version = "3.38.0";
|
|
10
10
|
var main = "src/index.ts";
|
|
11
11
|
var types = "src/index.ts";
|
|
12
12
|
var prepublishOnly = "yarn tsc && yarn build";
|
|
@@ -92,6 +92,7 @@ var resolutions = {
|
|
|
92
92
|
var devDependencies = {
|
|
93
93
|
"@backstage/cli": "backstage:^",
|
|
94
94
|
"@backstage/dev-utils": "backstage:^",
|
|
95
|
+
"@backstage/frontend-defaults": "backstage:^",
|
|
95
96
|
"@backstage/plugin-catalog": "backstage:^",
|
|
96
97
|
"@backstage/plugin-home": "backstage:^",
|
|
97
98
|
"@backstage/plugin-notifications": "backstage:^",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.json.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"package.json.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"frontend",
|
|
8
8
|
"backstage.io"
|
|
9
9
|
],
|
|
10
|
-
"version": "3.
|
|
10
|
+
"version": "3.38.0",
|
|
11
11
|
"main": "./dist/index.esm.js",
|
|
12
12
|
"types": "./dist/index.d.ts",
|
|
13
13
|
"prepublishOnly": "yarn tsc && yarn build",
|
|
@@ -83,8 +83,8 @@
|
|
|
83
83
|
"@backstage/plugin-search-common": "^1.2.19",
|
|
84
84
|
"@backstage/plugin-search-react": "^1.9.4",
|
|
85
85
|
"@backstage/plugin-signals-react": "^0.0.15",
|
|
86
|
-
"@drodil/backstage-plugin-qeta-common": "^3.
|
|
87
|
-
"@drodil/backstage-plugin-qeta-react": "^3.
|
|
86
|
+
"@drodil/backstage-plugin-qeta-common": "^3.38.0",
|
|
87
|
+
"@drodil/backstage-plugin-qeta-react": "^3.38.0",
|
|
88
88
|
"@material-ui/core": "^4.12.2",
|
|
89
89
|
"@material-ui/icons": "^4.11.3",
|
|
90
90
|
"@material-ui/lab": "4.0.0-alpha.61",
|
|
@@ -105,6 +105,7 @@
|
|
|
105
105
|
"devDependencies": {
|
|
106
106
|
"@backstage/cli": "^0.34.3",
|
|
107
107
|
"@backstage/dev-utils": "^1.1.14",
|
|
108
|
+
"@backstage/frontend-defaults": "^0.3.1",
|
|
108
109
|
"@backstage/plugin-catalog": "^1.31.3",
|
|
109
110
|
"@backstage/plugin-home": "^0.8.12",
|
|
110
111
|
"@backstage/plugin-notifications": "^0.5.9",
|