@backstage/plugin-catalog 1.9.0-next.0 → 1.9.0-next.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 +24 -0
- package/dist/esm/index/{index-beb40544.esm.js → index-34f5b1f5.esm.js} +3 -3
- package/dist/esm/index/index-34f5b1f5.esm.js.map +1 -0
- package/dist/esm/index/{index-c15f6a86.esm.js → index-3e40d3a7.esm.js} +2 -2
- package/dist/esm/index/index-3e40d3a7.esm.js.map +1 -0
- package/dist/esm/index/{index-f175ded7.esm.js → index-474c17e4.esm.js} +9 -5
- package/dist/esm/index/index-474c17e4.esm.js.map +1 -0
- package/dist/esm/index/{index-1fe32bf9.esm.js → index-9abb6222.esm.js} +2 -2
- package/dist/esm/index/index-9abb6222.esm.js.map +1 -0
- package/dist/esm/index/{index-f1cc0d2c.esm.js → index-a863427b.esm.js} +2 -2
- package/dist/esm/index/{index-f1cc0d2c.esm.js.map → index-a863427b.esm.js.map} +1 -1
- package/dist/esm/index/{index-0ccf0c80.esm.js → index-b3cf2aa8.esm.js} +4 -2
- package/dist/esm/index/index-b3cf2aa8.esm.js.map +1 -0
- package/dist/esm/index/{index-ec7d6301.esm.js → index-cfd067af.esm.js} +9 -9
- package/dist/esm/index/{index-ec7d6301.esm.js.map → index-cfd067af.esm.js.map} +1 -1
- package/dist/esm/index/{index-418d558b.esm.js → index-e4233e9c.esm.js} +8 -4
- package/dist/esm/index/index-e4233e9c.esm.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.esm.js +1 -1
- package/package.json +17 -17
- package/dist/esm/index/index-0ccf0c80.esm.js.map +0 -1
- package/dist/esm/index/index-1fe32bf9.esm.js.map +0 -1
- package/dist/esm/index/index-418d558b.esm.js.map +0 -1
- package/dist/esm/index/index-beb40544.esm.js.map +0 -1
- package/dist/esm/index/index-c15f6a86.esm.js.map +0 -1
- package/dist/esm/index/index-f175ded7.esm.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# @backstage/plugin-catalog
|
|
2
2
|
|
|
3
|
+
## 1.9.0-next.1
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- c9a9f3c834f: Add a `columns` prop to certain components that use the `EntityTable` for easier extensibility.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- 7e8930ae1c6: Fix icon alignment in `CatalogSearchResultListItem`
|
|
12
|
+
- cb8ec97cdeb: Change black & white colors to be theme aware
|
|
13
|
+
- Updated dependencies
|
|
14
|
+
- @backstage/core-components@0.12.5-next.1
|
|
15
|
+
- @backstage/errors@1.1.5-next.0
|
|
16
|
+
- @backstage/catalog-client@1.4.0-next.1
|
|
17
|
+
- @backstage/core-plugin-api@1.4.1-next.1
|
|
18
|
+
- @backstage/integration-react@1.1.11-next.1
|
|
19
|
+
- @backstage/theme@0.2.18-next.0
|
|
20
|
+
- @backstage/plugin-catalog-react@1.4.0-next.1
|
|
21
|
+
- @backstage/catalog-model@1.2.1-next.1
|
|
22
|
+
- @backstage/types@1.0.2
|
|
23
|
+
- @backstage/plugin-catalog-common@1.0.12-next.1
|
|
24
|
+
- @backstage/plugin-search-common@1.2.2-next.0
|
|
25
|
+
- @backstage/plugin-search-react@1.5.1-next.1
|
|
26
|
+
|
|
3
27
|
## 1.9.0-next.0
|
|
4
28
|
|
|
5
29
|
### Minor Changes
|
|
@@ -3,7 +3,7 @@ import LanguageIcon from '@material-ui/icons/Language';
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { makeStyles, Typography, Button } from '@material-ui/core';
|
|
5
5
|
import { CodeSnippet, InfoCard } from '@backstage/core-components';
|
|
6
|
-
import { L as LinksGridList } from './index-
|
|
6
|
+
import { L as LinksGridList } from './index-cfd067af.esm.js';
|
|
7
7
|
import { useApp } from '@backstage/core-plugin-api';
|
|
8
8
|
import 'zen-observable';
|
|
9
9
|
import '@backstage/catalog-model';
|
|
@@ -41,7 +41,7 @@ const useStyles = makeStyles(
|
|
|
41
41
|
code: {
|
|
42
42
|
borderRadius: 6,
|
|
43
43
|
margin: `${theme.spacing(2)}px 0px`,
|
|
44
|
-
background: theme.palette.type === "dark" ? "#444" :
|
|
44
|
+
background: theme.palette.type === "dark" ? "#444" : theme.palette.common.white
|
|
45
45
|
}
|
|
46
46
|
}),
|
|
47
47
|
{ name: "PluginCatalogEntityLinksEmptyState" }
|
|
@@ -93,4 +93,4 @@ const EntityLinksCard = (props) => {
|
|
|
93
93
|
};
|
|
94
94
|
|
|
95
95
|
export { EntityLinksCard };
|
|
96
|
-
//# sourceMappingURL=index-
|
|
96
|
+
//# sourceMappingURL=index-34f5b1f5.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-34f5b1f5.esm.js","sources":["../../../src/components/EntityLinksCard/EntityLinksEmptyState.tsx","../../../src/components/EntityLinksCard/EntityLinksCard.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 { BackstageTheme } from '@backstage/theme';\nimport { Button, makeStyles, Typography } from '@material-ui/core';\nimport React from 'react';\nimport { CodeSnippet } from '@backstage/core-components';\n\nconst ENTITY_YAML = `metadata:\n name: example\n links:\n - url: https://dashboard.example.com\n title: My Dashboard\n icon: dashboard`;\n\n/** @public */\nexport type EntityLinksEmptyStateClassKey = 'code';\n\nconst useStyles = makeStyles<BackstageTheme>(\n theme => ({\n code: {\n borderRadius: 6,\n margin: `${theme.spacing(2)}px 0px`,\n background:\n theme.palette.type === 'dark' ? '#444' : theme.palette.common.white,\n },\n }),\n { name: 'PluginCatalogEntityLinksEmptyState' },\n);\n\nexport function EntityLinksEmptyState() {\n const classes = useStyles();\n\n return (\n <>\n <Typography variant=\"body1\">\n No links defined for this entity. You can add links to your entity YAML\n as shown in the highlighted example below:\n </Typography>\n <div className={classes.code}>\n <CodeSnippet\n text={ENTITY_YAML}\n language=\"yaml\"\n showLineNumbers\n highlightedNumbers={[3, 4, 5, 6]}\n customStyle={{ background: 'inherit', fontSize: '115%' }}\n />\n </div>\n <Button\n variant=\"contained\"\n color=\"primary\"\n target=\"_blank\"\n href=\"https://backstage.io/docs/features/software-catalog/descriptor-format#links-optional\"\n >\n Read more\n </Button>\n </>\n );\n}\n","/*\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 { useEntity } from '@backstage/plugin-catalog-react';\nimport LanguageIcon from '@material-ui/icons/Language';\nimport React from 'react';\nimport { EntityLinksEmptyState } from './EntityLinksEmptyState';\nimport { LinksGridList } from './LinksGridList';\nimport { ColumnBreakpoints } from './types';\nimport { IconComponent, useApp } from '@backstage/core-plugin-api';\nimport { InfoCard, InfoCardVariants } from '@backstage/core-components';\n\n/** @public */\nexport interface EntityLinksCardProps {\n cols?: ColumnBreakpoints | number;\n variant?: InfoCardVariants;\n}\n\nexport const EntityLinksCard = (props: EntityLinksCardProps) => {\n const { cols = undefined, variant } = props;\n const { entity } = useEntity();\n const app = useApp();\n\n const iconResolver = (key?: string): IconComponent =>\n key ? app.getSystemIcon(key) ?? LanguageIcon : LanguageIcon;\n\n const links = entity?.metadata?.links;\n\n return (\n <InfoCard title=\"Links\" variant={variant}>\n {!links || links.length === 0 ? (\n <EntityLinksEmptyState />\n ) : (\n <LinksGridList\n cols={cols}\n items={links.map(({ url, title, icon }) => ({\n text: title ?? url,\n href: url,\n Icon: iconResolver(icon),\n }))}\n />\n )}\n </InfoCard>\n );\n};\n"],"names":["_a"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { E as EntityLabelsCard, h as hasLabels } from './index-
|
|
1
|
+
export { E as EntityLabelsCard, h as hasLabels } from './index-cfd067af.esm.js';
|
|
2
2
|
import 'zen-observable';
|
|
3
3
|
import '@backstage/catalog-model';
|
|
4
4
|
import 'lodash';
|
|
@@ -29,4 +29,4 @@ import '@material-ui/icons/Cancel';
|
|
|
29
29
|
import '@backstage/errors';
|
|
30
30
|
import '@backstage/catalog-client';
|
|
31
31
|
import '@backstage/plugin-search-react';
|
|
32
|
-
//# sourceMappingURL=index-
|
|
32
|
+
//# sourceMappingURL=index-3e40d3a7.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-3e40d3a7.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { RELATION_DEPENDS_ON } from '@backstage/catalog-model';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import { R as RelatedEntitiesCard,
|
|
3
|
+
import { R as RelatedEntitiesCard, d as componentEntityHelpLink, f as asResourceEntities, r as resourceEntityColumns } from './presets-1d9f313a.esm.js';
|
|
4
4
|
import '@material-ui/core';
|
|
5
5
|
import '@backstage/plugin-catalog-react';
|
|
6
6
|
import '@backstage/core-components';
|
|
7
7
|
|
|
8
8
|
function DependsOnResourcesCard(props) {
|
|
9
|
-
const {
|
|
9
|
+
const {
|
|
10
|
+
variant = "gridItem",
|
|
11
|
+
title = "Depends on resources",
|
|
12
|
+
columns = resourceEntityColumns
|
|
13
|
+
} = props;
|
|
10
14
|
return /* @__PURE__ */ React.createElement(
|
|
11
15
|
RelatedEntitiesCard,
|
|
12
16
|
{
|
|
13
17
|
variant,
|
|
14
|
-
title
|
|
18
|
+
title,
|
|
15
19
|
entityKind: "Resource",
|
|
16
20
|
relationType: RELATION_DEPENDS_ON,
|
|
17
|
-
columns
|
|
21
|
+
columns,
|
|
18
22
|
emptyMessage: "No resource is a dependency of this component",
|
|
19
23
|
emptyHelpLink: componentEntityHelpLink,
|
|
20
24
|
asRenderableEntities: asResourceEntities
|
|
@@ -23,4 +27,4 @@ function DependsOnResourcesCard(props) {
|
|
|
23
27
|
}
|
|
24
28
|
|
|
25
29
|
export { DependsOnResourcesCard };
|
|
26
|
-
//# sourceMappingURL=index-
|
|
30
|
+
//# sourceMappingURL=index-474c17e4.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-474c17e4.esm.js","sources":["../../../src/components/DependsOnResourcesCard/DependsOnResourcesCard.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 { RELATION_DEPENDS_ON, ResourceEntity } from '@backstage/catalog-model';\nimport { InfoCardVariants, TableColumn } from '@backstage/core-components';\nimport React from 'react';\nimport {\n asResourceEntities,\n componentEntityHelpLink,\n RelatedEntitiesCard,\n resourceEntityColumns,\n} from '../RelatedEntitiesCard';\n\n/** @public */\nexport interface DependsOnResourcesCardProps {\n variant?: InfoCardVariants;\n title?: string;\n columns?: TableColumn<ResourceEntity>[];\n}\n\nexport function DependsOnResourcesCard(props: DependsOnResourcesCardProps) {\n const {\n variant = 'gridItem',\n title = 'Depends on resources',\n columns = resourceEntityColumns,\n } = props;\n return (\n <RelatedEntitiesCard\n variant={variant}\n title={title}\n entityKind=\"Resource\"\n relationType={RELATION_DEPENDS_ON}\n columns={columns}\n emptyMessage=\"No resource is a dependency of this component\"\n emptyHelpLink={componentEntityHelpLink}\n asRenderableEntities={asResourceEntities}\n />\n );\n}\n"],"names":[],"mappings":";;;;;;;AAiCO,SAAS,uBAAuB,KAAoC,EAAA;AACzE,EAAM,MAAA;AAAA,IACJ,OAAU,GAAA,UAAA;AAAA,IACV,KAAQ,GAAA,sBAAA;AAAA,IACR,OAAU,GAAA,qBAAA;AAAA,GACR,GAAA,KAAA,CAAA;AACJ,EACE,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,mBAAA;AAAA,IAAA;AAAA,MACC,OAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAW,EAAA,UAAA;AAAA,MACX,YAAc,EAAA,mBAAA;AAAA,MACd,OAAA;AAAA,MACA,YAAa,EAAA,+CAAA;AAAA,MACb,aAAe,EAAA,uBAAA;AAAA,MACf,oBAAsB,EAAA,kBAAA;AAAA,KAAA;AAAA,GACxB,CAAA;AAEJ;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { A as AboutCard, a as AboutContent, b as AboutField } from './index-
|
|
1
|
+
export { A as AboutCard, a as AboutContent, b as AboutField } from './index-cfd067af.esm.js';
|
|
2
2
|
import 'zen-observable';
|
|
3
3
|
import '@backstage/catalog-model';
|
|
4
4
|
import 'lodash';
|
|
@@ -29,4 +29,4 @@ import '@material-ui/icons/Cancel';
|
|
|
29
29
|
import '@backstage/errors';
|
|
30
30
|
import '@backstage/catalog-client';
|
|
31
31
|
import '@backstage/plugin-search-react';
|
|
32
|
-
//# sourceMappingURL=index-
|
|
32
|
+
//# sourceMappingURL=index-9abb6222.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-9abb6222.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -3,7 +3,7 @@ import { useOutlet } from 'react-router-dom';
|
|
|
3
3
|
import { PageWithHeader, Content, ContentHeader, CreateButton, SupportButton } from '@backstage/core-components';
|
|
4
4
|
import { useApi, configApiRef, useRouteRef } from '@backstage/core-plugin-api';
|
|
5
5
|
import { EntityListProvider, CatalogFilterLayout, EntityKindPicker, EntityTypePicker, UserListPicker, EntityOwnerPicker, EntityLifecyclePicker, EntityTagPicker, EntityProcessingStatusPicker } from '@backstage/plugin-catalog-react';
|
|
6
|
-
import { c as createComponentRouteRef, C as CatalogTable } from './index-
|
|
6
|
+
import { c as createComponentRouteRef, C as CatalogTable } from './index-cfd067af.esm.js';
|
|
7
7
|
import { usePluginOptions } from '@backstage/core-plugin-api/alpha';
|
|
8
8
|
import 'zen-observable';
|
|
9
9
|
import '@backstage/catalog-model';
|
|
@@ -69,4 +69,4 @@ function CatalogPage(props) {
|
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
export { CatalogPage, DefaultCatalogPage };
|
|
72
|
-
//# sourceMappingURL=index-
|
|
72
|
+
//# sourceMappingURL=index-a863427b.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-a863427b.esm.js","sources":["../../../src/options.ts","../../../src/components/CatalogPage/DefaultCatalogPage.tsx","../../../src/components/CatalogPage/CatalogPage.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 { usePluginOptions } from '@backstage/core-plugin-api/alpha';\n\nexport type CatalogPluginOptions = {\n createButtonTitle: string;\n};\n\n/** @ignore */\nexport type CatalogInputPluginOptions = {\n createButtonTitle: string;\n};\n\nexport const useCatalogPluginOptions = () =>\n usePluginOptions<CatalogPluginOptions>();\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 {\n Content,\n ContentHeader,\n CreateButton,\n PageWithHeader,\n SupportButton,\n TableColumn,\n TableProps,\n} from '@backstage/core-components';\nimport { configApiRef, useApi, useRouteRef } from '@backstage/core-plugin-api';\nimport {\n CatalogFilterLayout,\n EntityLifecyclePicker,\n EntityListProvider,\n EntityProcessingStatusPicker,\n EntityOwnerPicker,\n EntityTagPicker,\n EntityTypePicker,\n UserListFilterKind,\n UserListPicker,\n EntityKindPicker,\n} from '@backstage/plugin-catalog-react';\nimport React, { ReactNode } from 'react';\nimport { createComponentRouteRef } from '../../routes';\nimport { CatalogTable, CatalogTableRow } from '../CatalogTable';\nimport { useCatalogPluginOptions } from '../../options';\n\n/**\n * Props for root catalog pages.\n *\n * @public\n */\nexport interface DefaultCatalogPageProps {\n initiallySelectedFilter?: UserListFilterKind;\n columns?: TableColumn<CatalogTableRow>[];\n actions?: TableProps<CatalogTableRow>['actions'];\n initialKind?: string;\n tableOptions?: TableProps<CatalogTableRow>['options'];\n emptyContent?: ReactNode;\n}\n\nexport function DefaultCatalogPage(props: DefaultCatalogPageProps) {\n const {\n columns,\n actions,\n initiallySelectedFilter = 'owned',\n initialKind = 'component',\n tableOptions = {},\n emptyContent,\n } = props;\n const orgName =\n useApi(configApiRef).getOptionalString('organization.name') ?? 'Backstage';\n const createComponentLink = useRouteRef(createComponentRouteRef);\n\n const { createButtonTitle } = useCatalogPluginOptions();\n\n return (\n <PageWithHeader title={`${orgName} Catalog`} themeId=\"home\">\n <Content>\n <ContentHeader title=\"\">\n <CreateButton\n title={createButtonTitle}\n to={createComponentLink && createComponentLink()}\n />\n <SupportButton>All your software catalog entities</SupportButton>\n </ContentHeader>\n <EntityListProvider>\n <CatalogFilterLayout>\n <CatalogFilterLayout.Filters>\n <EntityKindPicker initialFilter={initialKind} />\n <EntityTypePicker />\n <UserListPicker initialFilter={initiallySelectedFilter} />\n <EntityOwnerPicker />\n <EntityLifecyclePicker />\n <EntityTagPicker />\n <EntityProcessingStatusPicker />\n </CatalogFilterLayout.Filters>\n <CatalogFilterLayout.Content>\n <CatalogTable\n columns={columns}\n actions={actions}\n tableOptions={tableOptions}\n emptyContent={emptyContent}\n />\n </CatalogFilterLayout.Content>\n </CatalogFilterLayout>\n </EntityListProvider>\n </Content>\n </PageWithHeader>\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 React from 'react';\nimport { useOutlet } from 'react-router-dom';\nimport {\n DefaultCatalogPage,\n DefaultCatalogPageProps,\n} from './DefaultCatalogPage';\n\nexport function CatalogPage(props: DefaultCatalogPageProps) {\n const outlet = useOutlet();\n\n return outlet || <DefaultCatalogPage {...props} />;\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2Ba,MAAA,uBAAA,GAA0B,MACrC,gBAAuC,EAAA;;AC6BlC,SAAS,mBAAmB,KAAgC,EAAA;AAzDnE,EAAA,IAAA,EAAA,CAAA;AA0DE,EAAM,MAAA;AAAA,IACJ,OAAA;AAAA,IACA,OAAA;AAAA,IACA,uBAA0B,GAAA,OAAA;AAAA,IAC1B,WAAc,GAAA,WAAA;AAAA,IACd,eAAe,EAAC;AAAA,IAChB,YAAA;AAAA,GACE,GAAA,KAAA,CAAA;AACJ,EAAA,MAAM,WACJ,EAAO,GAAA,MAAA,CAAA,YAAY,EAAE,iBAAkB,CAAA,mBAAmB,MAA1D,IAA+D,GAAA,EAAA,GAAA,WAAA,CAAA;AACjE,EAAM,MAAA,mBAAA,GAAsB,YAAY,uBAAuB,CAAA,CAAA;AAE/D,EAAM,MAAA,EAAE,iBAAkB,EAAA,GAAI,uBAAwB,EAAA,CAAA;AAEtD,EAAA,uBACG,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,EAAe,KAAO,EAAA,CAAA,EAAG,OAAmB,CAAA,QAAA,CAAA,EAAA,OAAA,EAAQ,MACnD,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,OACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,aAAc,EAAA,EAAA,KAAA,EAAM,EACnB,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,KAAO,EAAA,iBAAA;AAAA,MACP,EAAA,EAAI,uBAAuB,mBAAoB,EAAA;AAAA,KAAA;AAAA,qBAEhD,KAAA,CAAA,aAAA,CAAA,aAAA,EAAA,IAAA,EAAc,oCAAkC,CACnD,CAAA,sCACC,kBACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,2CACE,KAAA,CAAA,aAAA,CAAA,mBAAA,CAAoB,SAApB,IACC,kBAAA,KAAA,CAAA,aAAA,CAAC,oBAAiB,aAAe,EAAA,WAAA,EAAa,mBAC7C,KAAA,CAAA,aAAA,CAAA,gBAAA,EAAA,IAAiB,mBACjB,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,EAAe,eAAe,uBAAyB,EAAA,CAAA,sCACvD,iBAAkB,EAAA,IAAA,CAAA,sCAClB,qBAAsB,EAAA,IAAA,CAAA,sCACtB,eAAgB,EAAA,IAAA,CAAA,sCAChB,4BAA6B,EAAA,IAAA,CAChC,mBACC,KAAA,CAAA,aAAA,CAAA,mBAAA,CAAoB,SAApB,IACC,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,OAAA;AAAA,MACA,OAAA;AAAA,MACA,YAAA;AAAA,MACA,YAAA;AAAA,KAAA;AAAA,GAEJ,CACF,CACF,CACF,CACF,CAAA,CAAA;AAEJ;;ACnFO,SAAS,YAAY,KAAgC,EAAA;AAC1D,EAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAEzB,EAAA,OAAO,MAAU,oBAAA,KAAA,CAAA,aAAA,CAAC,kBAAoB,EAAA,EAAA,GAAG,KAAO,EAAA,CAAA,CAAA;AAClD;;;;"}
|
|
@@ -5,7 +5,9 @@ import { HighlightedSearchResultText } from '@backstage/plugin-search-react';
|
|
|
5
5
|
|
|
6
6
|
const useStyles = makeStyles(
|
|
7
7
|
{
|
|
8
|
-
item: {
|
|
8
|
+
item: {
|
|
9
|
+
display: "flex"
|
|
10
|
+
},
|
|
9
11
|
flexContainer: {
|
|
10
12
|
flexWrap: "wrap"
|
|
11
13
|
},
|
|
@@ -49,4 +51,4 @@ function CatalogSearchResultListItem(props) {
|
|
|
49
51
|
}
|
|
50
52
|
|
|
51
53
|
export { CatalogSearchResultListItem };
|
|
52
|
-
//# sourceMappingURL=index-
|
|
54
|
+
//# sourceMappingURL=index-b3cf2aa8.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-b3cf2aa8.esm.js","sources":["../../../src/components/CatalogSearchResultListItem/CatalogSearchResultListItem.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, { ReactNode } from 'react';\nimport {\n Box,\n Chip,\n ListItemIcon,\n ListItemText,\n makeStyles,\n} from '@material-ui/core';\nimport { Link } from '@backstage/core-components';\nimport {\n IndexableDocument,\n ResultHighlight,\n} from '@backstage/plugin-search-common';\nimport { HighlightedSearchResultText } from '@backstage/plugin-search-react';\n\nconst useStyles = makeStyles(\n {\n item: {\n display: 'flex',\n },\n flexContainer: {\n flexWrap: 'wrap',\n },\n itemText: {\n width: '100%',\n wordBreak: 'break-all',\n marginBottom: '1rem',\n },\n },\n { name: 'CatalogSearchResultListItem' },\n);\n\n/**\n * Props for {@link CatalogSearchResultListItem}.\n *\n * @public\n */\nexport interface CatalogSearchResultListItemProps {\n icon?: ReactNode | ((result: IndexableDocument) => ReactNode);\n result?: IndexableDocument;\n highlight?: ResultHighlight;\n rank?: number;\n}\n\n/** @public */\nexport function CatalogSearchResultListItem(\n props: CatalogSearchResultListItemProps,\n) {\n const result = props.result as any;\n const highlight = props.highlight as ResultHighlight;\n\n const classes = useStyles();\n\n if (!result) return null;\n\n return (\n <div className={classes.item}>\n {props.icon && (\n <ListItemIcon>\n {typeof props.icon === 'function' ? props.icon(result) : props.icon}\n </ListItemIcon>\n )}\n <div className={classes.flexContainer}>\n <ListItemText\n className={classes.itemText}\n primaryTypographyProps={{ variant: 'h6' }}\n primary={\n <Link noTrack to={result.location}>\n {highlight?.fields.title ? (\n <HighlightedSearchResultText\n text={highlight.fields.title}\n preTag={highlight.preTag}\n postTag={highlight.postTag}\n />\n ) : (\n result.title\n )}\n </Link>\n }\n secondary={\n highlight?.fields.text ? (\n <HighlightedSearchResultText\n text={highlight.fields.text}\n preTag={highlight.preTag}\n postTag={highlight.postTag}\n />\n ) : (\n result.text\n )\n }\n />\n <Box>\n {result.kind && <Chip label={`Kind: ${result.kind}`} size=\"small\" />}\n {result.lifecycle && (\n <Chip label={`Lifecycle: ${result.lifecycle}`} size=\"small\" />\n )}\n </Box>\n </div>\n </div>\n );\n}\n"],"names":[],"mappings":";;;;;AA+BA,MAAM,SAAY,GAAA,UAAA;AAAA,EAChB;AAAA,IACE,IAAM,EAAA;AAAA,MACJ,OAAS,EAAA,MAAA;AAAA,KACX;AAAA,IACA,aAAe,EAAA;AAAA,MACb,QAAU,EAAA,MAAA;AAAA,KACZ;AAAA,IACA,QAAU,EAAA;AAAA,MACR,KAAO,EAAA,MAAA;AAAA,MACP,SAAW,EAAA,WAAA;AAAA,MACX,YAAc,EAAA,MAAA;AAAA,KAChB;AAAA,GACF;AAAA,EACA,EAAE,MAAM,6BAA8B,EAAA;AACxC,CAAA,CAAA;AAeO,SAAS,4BACd,KACA,EAAA;AACA,EAAA,MAAM,SAAS,KAAM,CAAA,MAAA,CAAA;AACrB,EAAA,MAAM,YAAY,KAAM,CAAA,SAAA,CAAA;AAExB,EAAA,MAAM,UAAU,SAAU,EAAA,CAAA;AAE1B,EAAA,IAAI,CAAC,MAAA;AAAQ,IAAO,OAAA,IAAA,CAAA;AAEpB,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KAAI,EAAA,EAAA,SAAA,EAAW,OAAQ,CAAA,IAAA,EAAA,EACrB,MAAM,IACL,oBAAA,KAAA,CAAA,aAAA,CAAC,YACE,EAAA,IAAA,EAAA,OAAO,KAAM,CAAA,IAAA,KAAS,aAAa,KAAM,CAAA,IAAA,CAAK,MAAM,CAAA,GAAI,KAAM,CAAA,IACjE,mBAED,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,OAAA,CAAQ,aACtB,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,WAAW,OAAQ,CAAA,QAAA;AAAA,MACnB,sBAAA,EAAwB,EAAE,OAAA,EAAS,IAAK,EAAA;AAAA,MACxC,OAAA,kBACG,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,OAAO,EAAA,IAAA,EAAC,IAAI,MAAO,CAAA,QAAA,EAAA,EAAA,CACtB,SAAW,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAA,MAAA,CAAO,KACjB,oBAAA,KAAA,CAAA,aAAA;AAAA,QAAC,2BAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAM,UAAU,MAAO,CAAA,KAAA;AAAA,UACvB,QAAQ,SAAU,CAAA,MAAA;AAAA,UAClB,SAAS,SAAU,CAAA,OAAA;AAAA,SAAA;AAAA,OACrB,GAEA,OAAO,KAEX,CAAA;AAAA,MAEF,SAAA,EAAA,CACE,SAAW,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAA,MAAA,CAAO,IAChB,oBAAA,KAAA,CAAA,aAAA;AAAA,QAAC,2BAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAM,UAAU,MAAO,CAAA,IAAA;AAAA,UACvB,QAAQ,SAAU,CAAA,MAAA;AAAA,UAClB,SAAS,SAAU,CAAA,OAAA;AAAA,SAAA;AAAA,UAGrB,MAAO,CAAA,IAAA;AAAA,KAAA;AAAA,GAGb,kBACC,KAAA,CAAA,aAAA,CAAA,GAAA,EAAA,IAAA,EACE,MAAO,CAAA,IAAA,oBAAS,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,KAAO,EAAA,CAAA,MAAA,EAAS,MAAO,CAAA,IAAA,CAAA,CAAA,EAAQ,IAAK,EAAA,OAAA,EAAQ,GACjE,MAAO,CAAA,SAAA,oBACL,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,KAAO,EAAA,CAAA,WAAA,EAAc,MAAO,CAAA,SAAA,CAAA,CAAA,EAAa,IAAK,EAAA,OAAA,EAAQ,CAEhE,CACF,CACF,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -1291,7 +1291,7 @@ const useStyles$1 = makeStyles(
|
|
|
1291
1291
|
code: {
|
|
1292
1292
|
borderRadius: 6,
|
|
1293
1293
|
margin: `${theme.spacing(2)}px 0px`,
|
|
1294
|
-
background: theme.palette.type === "dark" ? "#444" :
|
|
1294
|
+
background: theme.palette.type === "dark" ? "#444" : theme.palette.common.white
|
|
1295
1295
|
}
|
|
1296
1296
|
}),
|
|
1297
1297
|
{ name: "PluginCatalogEntityLabelsEmptyState" }
|
|
@@ -1402,7 +1402,7 @@ const catalogPlugin = createPlugin({
|
|
|
1402
1402
|
const CatalogIndexPage = catalogPlugin.provide(
|
|
1403
1403
|
createRoutableExtension({
|
|
1404
1404
|
name: "CatalogIndexPage",
|
|
1405
|
-
component: () => import('./index-
|
|
1405
|
+
component: () => import('./index-a863427b.esm.js').then((m) => m.CatalogPage),
|
|
1406
1406
|
mountPoint: rootRouteRef
|
|
1407
1407
|
})
|
|
1408
1408
|
);
|
|
@@ -1417,7 +1417,7 @@ const EntityAboutCard = catalogPlugin.provide(
|
|
|
1417
1417
|
createComponentExtension({
|
|
1418
1418
|
name: "EntityAboutCard",
|
|
1419
1419
|
component: {
|
|
1420
|
-
lazy: () => import('./index-
|
|
1420
|
+
lazy: () => import('./index-9abb6222.esm.js').then((m) => m.AboutCard)
|
|
1421
1421
|
}
|
|
1422
1422
|
})
|
|
1423
1423
|
);
|
|
@@ -1425,7 +1425,7 @@ const EntityLinksCard = catalogPlugin.provide(
|
|
|
1425
1425
|
createComponentExtension({
|
|
1426
1426
|
name: "EntityLinksCard",
|
|
1427
1427
|
component: {
|
|
1428
|
-
lazy: () => import('./index-
|
|
1428
|
+
lazy: () => import('./index-34f5b1f5.esm.js').then((m) => m.EntityLinksCard)
|
|
1429
1429
|
}
|
|
1430
1430
|
})
|
|
1431
1431
|
);
|
|
@@ -1433,7 +1433,7 @@ const EntityLabelsCard = catalogPlugin.provide(
|
|
|
1433
1433
|
createComponentExtension({
|
|
1434
1434
|
name: "EntityLabelsCard",
|
|
1435
1435
|
component: {
|
|
1436
|
-
lazy: () => import('./index-
|
|
1436
|
+
lazy: () => import('./index-3e40d3a7.esm.js').then((m) => m.EntityLabelsCard)
|
|
1437
1437
|
}
|
|
1438
1438
|
})
|
|
1439
1439
|
);
|
|
@@ -1475,7 +1475,7 @@ const EntityDependsOnComponentsCard = catalogPlugin.provide(
|
|
|
1475
1475
|
createComponentExtension({
|
|
1476
1476
|
name: "EntityDependsOnComponentsCard",
|
|
1477
1477
|
component: {
|
|
1478
|
-
lazy: () => import('./index-
|
|
1478
|
+
lazy: () => import('./index-e4233e9c.esm.js').then(
|
|
1479
1479
|
(m) => m.DependsOnComponentsCard
|
|
1480
1480
|
)
|
|
1481
1481
|
}
|
|
@@ -1495,7 +1495,7 @@ const EntityDependsOnResourcesCard = catalogPlugin.provide(
|
|
|
1495
1495
|
createComponentExtension({
|
|
1496
1496
|
name: "EntityDependsOnResourcesCard",
|
|
1497
1497
|
component: {
|
|
1498
|
-
lazy: () => import('./index-
|
|
1498
|
+
lazy: () => import('./index-474c17e4.esm.js').then(
|
|
1499
1499
|
(m) => m.DependsOnResourcesCard
|
|
1500
1500
|
)
|
|
1501
1501
|
}
|
|
@@ -1514,7 +1514,7 @@ const RelatedEntitiesCard = catalogPlugin.provide(
|
|
|
1514
1514
|
const CatalogSearchResultListItem = catalogPlugin.provide(
|
|
1515
1515
|
createSearchResultListItemExtension({
|
|
1516
1516
|
name: "CatalogSearchResultListItem",
|
|
1517
|
-
component: () => import('./index-
|
|
1517
|
+
component: () => import('./index-b3cf2aa8.esm.js').then(
|
|
1518
1518
|
(m) => m.CatalogSearchResultListItem
|
|
1519
1519
|
),
|
|
1520
1520
|
predicate: (result) => result.type === "software-catalog"
|
|
@@ -1522,4 +1522,4 @@ const CatalogSearchResultListItem = catalogPlugin.provide(
|
|
|
1522
1522
|
);
|
|
1523
1523
|
|
|
1524
1524
|
export { AboutCard as A, isNamespace as B, CatalogTable as C, DefaultStarredEntitiesApi as D, EntityLabelsCard$1 as E, isComponentType as F, FilteredEntityLayout as G, FilterContainer as H, EntityListContainer as I, LinksGridList as L, RelatedEntitiesCard as R, AboutContent as a, AboutField as b, createComponentRouteRef as c, CatalogEntityPage as d, CatalogIndexPage as e, catalogPlugin as f, EntityAboutCard as g, hasLabels as h, EntityDependencyOfComponentsCard as i, EntityDependsOnComponentsCard as j, EntityDependsOnResourcesCard as k, EntityHasComponentsCard as l, EntityHasResourcesCard as m, EntityHasSubcomponentsCard as n, EntityHasSystemsCard as o, EntityLinksCard as p, EntityLabelsCard as q, CatalogSearchResultListItem as r, CatalogKindHeader as s, EntityLayout as t, EntityOrphanWarning as u, isOrphan as v, EntityProcessingErrorsPanel as w, hasCatalogProcessingErrors as x, EntitySwitch as y, isKind as z };
|
|
1525
|
-
//# sourceMappingURL=index-
|
|
1525
|
+
//# sourceMappingURL=index-cfd067af.esm.js.map
|