@backstage/plugin-api-docs 0.0.0-nightly-20260216031347 → 0.0.0-nightly-20260217031303

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # @backstage/plugin-api-docs
2
2
 
3
- ## 0.0.0-nightly-20260216031347
3
+ ## 0.0.0-nightly-20260217031303
4
4
 
5
5
  ### Patch Changes
6
6
 
@@ -9,16 +9,17 @@
9
9
  - 7feb83b: Adjusted to use the new `@backstage/filter-predicates` types for predicate expressions.
10
10
  - 491a06c: Add the ability to show icons for the tabs on the entity page (new frontend)
11
11
  - 4183614: Updated usage of deprecated APIs in the new frontend system.
12
+ - 629c3ec: Add `tableOptions` and `title` to Components cards of APIs
12
13
  - a7e0d50: Prepare for React Router v7 migration by updating to v6.30.2 across all NFS packages and enabling v7 future flags. Convert routes from splat paths to parent/child structure with Outlet components.
13
14
  - Updated dependencies
14
- - @backstage/plugin-catalog-react@0.0.0-nightly-20260216031347
15
- - @backstage/core-components@0.0.0-nightly-20260216031347
16
- - @backstage/plugin-catalog@0.0.0-nightly-20260216031347
17
- - @backstage/frontend-plugin-api@0.0.0-nightly-20260216031347
18
- - @backstage/core-plugin-api@0.0.0-nightly-20260216031347
19
- - @backstage/plugin-permission-react@0.0.0-nightly-20260216031347
15
+ - @backstage/plugin-catalog-react@0.0.0-nightly-20260217031303
16
+ - @backstage/core-components@0.0.0-nightly-20260217031303
17
+ - @backstage/plugin-catalog@0.0.0-nightly-20260217031303
18
+ - @backstage/frontend-plugin-api@0.0.0-nightly-20260217031303
19
+ - @backstage/core-plugin-api@0.0.0-nightly-20260217031303
20
+ - @backstage/plugin-permission-react@0.0.0-nightly-20260217031303
20
21
  - @backstage/catalog-model@1.7.6
21
- - @backstage/plugin-catalog-common@0.0.0-nightly-20260216031347
22
+ - @backstage/plugin-catalog-common@0.0.0-nightly-20260217031303
22
23
 
23
24
  ## 0.13.4-next.2
24
25
 
@@ -7,17 +7,22 @@ import { useTranslationRef } from '@backstage/frontend-plugin-api';
7
7
  import { apiDocsTranslationRef } from '../../translation.esm.js';
8
8
 
9
9
  const ConsumingComponentsCard = (props) => {
10
- const { variant = "gridItem", columns = EntityTable.componentEntityColumns } = props;
10
+ const { t } = useTranslationRef(apiDocsTranslationRef);
11
+ const {
12
+ variant = "gridItem",
13
+ title = t("consumingComponentsCard.title"),
14
+ columns = EntityTable.componentEntityColumns,
15
+ tableOptions = {}
16
+ } = props;
11
17
  const { entity } = useEntity();
12
18
  const { entities, loading, error } = useRelatedEntities(entity, {
13
19
  type: RELATION_API_CONSUMED_BY
14
20
  });
15
- const { t } = useTranslationRef(apiDocsTranslationRef);
16
21
  if (loading) {
17
- return /* @__PURE__ */ jsx(InfoCard, { variant, title: t("consumingComponentsCard.title"), children: /* @__PURE__ */ jsx(Progress, {}) });
22
+ return /* @__PURE__ */ jsx(InfoCard, { variant, title, children: /* @__PURE__ */ jsx(Progress, {}) });
18
23
  }
19
24
  if (error || !entities) {
20
- return /* @__PURE__ */ jsx(InfoCard, { variant, title: t("consumingComponentsCard.title"), children: /* @__PURE__ */ jsx(
25
+ return /* @__PURE__ */ jsx(InfoCard, { variant, title, children: /* @__PURE__ */ jsx(
21
26
  WarningPanel,
22
27
  {
23
28
  severity: "error",
@@ -29,13 +34,14 @@ const ConsumingComponentsCard = (props) => {
29
34
  return /* @__PURE__ */ jsx(
30
35
  EntityTable,
31
36
  {
32
- title: t("consumingComponentsCard.title"),
37
+ title,
33
38
  variant,
34
39
  emptyContent: /* @__PURE__ */ jsxs("div", { style: { textAlign: "center" }, children: [
35
40
  /* @__PURE__ */ jsx(Typography, { variant: "body1", children: t("consumingComponentsCard.emptyContent.title") }),
36
41
  /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx(Link, { to: "https://backstage.io/docs/features/software-catalog/descriptor-format#specconsumesapis-optional", children: t("apisCardHelpLinkTitle") }) })
37
42
  ] }),
38
43
  columns,
44
+ tableOptions,
39
45
  entities
40
46
  }
41
47
  );
@@ -1 +1 @@
1
- {"version":3,"file":"ConsumingComponentsCard.esm.js","sources":["../../../src/components/ComponentsCards/ConsumingComponentsCard.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 {\n ComponentEntity,\n RELATION_API_CONSUMED_BY,\n} from '@backstage/catalog-model';\nimport Typography from '@material-ui/core/Typography';\nimport {\n EntityTable,\n useEntity,\n useRelatedEntities,\n} from '@backstage/plugin-catalog-react';\nimport {\n CodeSnippet,\n InfoCard,\n InfoCardVariants,\n Link,\n Progress,\n TableColumn,\n WarningPanel,\n} from '@backstage/core-components';\nimport { useTranslationRef } from '@backstage/frontend-plugin-api';\nimport { apiDocsTranslationRef } from '../../translation';\n\n/**\n * @public\n */\nexport const ConsumingComponentsCard = (props: {\n variant?: InfoCardVariants;\n columns?: TableColumn<ComponentEntity>[];\n}) => {\n const { variant = 'gridItem', columns = EntityTable.componentEntityColumns } =\n props;\n const { entity } = useEntity();\n const { entities, loading, error } = useRelatedEntities(entity, {\n type: RELATION_API_CONSUMED_BY,\n });\n const { t } = useTranslationRef(apiDocsTranslationRef);\n\n if (loading) {\n return (\n <InfoCard variant={variant} title={t('consumingComponentsCard.title')}>\n <Progress />\n </InfoCard>\n );\n }\n\n if (error || !entities) {\n return (\n <InfoCard variant={variant} title={t('consumingComponentsCard.title')}>\n <WarningPanel\n severity=\"error\"\n title={t('consumingComponentsCard.error.title')}\n message={<CodeSnippet text={`${error}`} language=\"text\" />}\n />\n </InfoCard>\n );\n }\n\n return (\n <EntityTable\n title={t('consumingComponentsCard.title')}\n variant={variant}\n emptyContent={\n <div style={{ textAlign: 'center' }}>\n <Typography variant=\"body1\">\n {t('consumingComponentsCard.emptyContent.title')}\n </Typography>\n <Typography variant=\"body2\">\n <Link to=\"https://backstage.io/docs/features/software-catalog/descriptor-format#specconsumesapis-optional\">\n {t('apisCardHelpLinkTitle')}\n </Link>\n </Typography>\n </div>\n }\n columns={columns}\n entities={entities as ComponentEntity[]}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;AAyCO,MAAM,uBAAA,GAA0B,CAAC,KAAA,KAGlC;AACJ,EAAA,MAAM,EAAE,OAAA,GAAU,UAAA,EAAY,OAAA,GAAU,WAAA,CAAY,wBAAuB,GACzE,KAAA;AACF,EAAA,MAAM,EAAE,MAAA,EAAO,GAAI,SAAA,EAAU;AAC7B,EAAA,MAAM,EAAE,QAAA,EAAU,OAAA,EAAS,KAAA,EAAM,GAAI,mBAAmB,MAAA,EAAQ;AAAA,IAC9D,IAAA,EAAM;AAAA,GACP,CAAA;AACD,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,iBAAA,CAAkB,qBAAqB,CAAA;AAErD,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,uBACE,GAAA,CAAC,YAAS,OAAA,EAAkB,KAAA,EAAO,EAAE,+BAA+B,CAAA,EAClE,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,CAAA,EACZ,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,KAAA,IAAS,CAAC,QAAA,EAAU;AACtB,IAAA,2BACG,QAAA,EAAA,EAAS,OAAA,EAAkB,KAAA,EAAO,CAAA,CAAE,+BAA+B,CAAA,EAClE,QAAA,kBAAA,GAAA;AAAA,MAAC,YAAA;AAAA,MAAA;AAAA,QACC,QAAA,EAAS,OAAA;AAAA,QACT,KAAA,EAAO,EAAE,qCAAqC,CAAA;AAAA,QAC9C,OAAA,sBAAU,WAAA,EAAA,EAAY,IAAA,EAAM,GAAG,KAAK,CAAA,CAAA,EAAI,UAAS,MAAA,EAAO;AAAA;AAAA,KAC1D,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAA,EAAO,EAAE,+BAA+B,CAAA;AAAA,MACxC,OAAA;AAAA,MACA,8BACE,IAAA,CAAC,KAAA,EAAA,EAAI,OAAO,EAAE,SAAA,EAAW,UAAS,EAChC,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EACjB,QAAA,EAAA,CAAA,CAAE,4CAA4C,CAAA,EACjD,CAAA;AAAA,wBACA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,EAAA,EAAG,iGAAA,EACN,QAAA,EAAA,CAAA,CAAE,uBAAuB,CAAA,EAC5B,CAAA,EACF;AAAA,OAAA,EACF,CAAA;AAAA,MAEF,OAAA;AAAA,MACA;AAAA;AAAA,GACF;AAEJ;;;;"}
1
+ {"version":3,"file":"ConsumingComponentsCard.esm.js","sources":["../../../src/components/ComponentsCards/ConsumingComponentsCard.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 {\n ComponentEntity,\n RELATION_API_CONSUMED_BY,\n} from '@backstage/catalog-model';\nimport Typography from '@material-ui/core/Typography';\nimport {\n EntityTable,\n useEntity,\n useRelatedEntities,\n} from '@backstage/plugin-catalog-react';\nimport {\n CodeSnippet,\n InfoCard,\n InfoCardVariants,\n Link,\n Progress,\n TableColumn,\n TableOptions,\n WarningPanel,\n} from '@backstage/core-components';\nimport { useTranslationRef } from '@backstage/frontend-plugin-api';\nimport { apiDocsTranslationRef } from '../../translation';\n\n/**\n * @public\n */\nexport const ConsumingComponentsCard = (props: {\n variant?: InfoCardVariants;\n title?: string;\n columns?: TableColumn<ComponentEntity>[];\n tableOptions?: TableOptions;\n}) => {\n const { t } = useTranslationRef(apiDocsTranslationRef);\n const {\n variant = 'gridItem',\n title = t('consumingComponentsCard.title'),\n columns = EntityTable.componentEntityColumns,\n tableOptions = {},\n } = props;\n const { entity } = useEntity();\n const { entities, loading, error } = useRelatedEntities(entity, {\n type: RELATION_API_CONSUMED_BY,\n });\n\n if (loading) {\n return (\n <InfoCard variant={variant} title={title}>\n <Progress />\n </InfoCard>\n );\n }\n\n if (error || !entities) {\n return (\n <InfoCard variant={variant} title={title}>\n <WarningPanel\n severity=\"error\"\n title={t('consumingComponentsCard.error.title')}\n message={<CodeSnippet text={`${error}`} language=\"text\" />}\n />\n </InfoCard>\n );\n }\n\n return (\n <EntityTable\n title={title}\n variant={variant}\n emptyContent={\n <div style={{ textAlign: 'center' }}>\n <Typography variant=\"body1\">\n {t('consumingComponentsCard.emptyContent.title')}\n </Typography>\n <Typography variant=\"body2\">\n <Link to=\"https://backstage.io/docs/features/software-catalog/descriptor-format#specconsumesapis-optional\">\n {t('apisCardHelpLinkTitle')}\n </Link>\n </Typography>\n </div>\n }\n columns={columns}\n tableOptions={tableOptions}\n entities={entities as ComponentEntity[]}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;AA0CO,MAAM,uBAAA,GAA0B,CAAC,KAAA,KAKlC;AACJ,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,iBAAA,CAAkB,qBAAqB,CAAA;AACrD,EAAA,MAAM;AAAA,IACJ,OAAA,GAAU,UAAA;AAAA,IACV,KAAA,GAAQ,EAAE,+BAA+B,CAAA;AAAA,IACzC,UAAU,WAAA,CAAY,sBAAA;AAAA,IACtB,eAAe;AAAC,GAClB,GAAI,KAAA;AACJ,EAAA,MAAM,EAAE,MAAA,EAAO,GAAI,SAAA,EAAU;AAC7B,EAAA,MAAM,EAAE,QAAA,EAAU,OAAA,EAAS,KAAA,EAAM,GAAI,mBAAmB,MAAA,EAAQ;AAAA,IAC9D,IAAA,EAAM;AAAA,GACP,CAAA;AAED,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,2BACG,QAAA,EAAA,EAAS,OAAA,EAAkB,KAAA,EAC1B,QAAA,kBAAA,GAAA,CAAC,YAAS,CAAA,EACZ,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,KAAA,IAAS,CAAC,QAAA,EAAU;AACtB,IAAA,uBACE,GAAA,CAAC,QAAA,EAAA,EAAS,OAAA,EAAkB,KAAA,EAC1B,QAAA,kBAAA,GAAA;AAAA,MAAC,YAAA;AAAA,MAAA;AAAA,QACC,QAAA,EAAS,OAAA;AAAA,QACT,KAAA,EAAO,EAAE,qCAAqC,CAAA;AAAA,QAC9C,OAAA,sBAAU,WAAA,EAAA,EAAY,IAAA,EAAM,GAAG,KAAK,CAAA,CAAA,EAAI,UAAS,MAAA,EAAO;AAAA;AAAA,KAC1D,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAA;AAAA,MACA,OAAA;AAAA,MACA,8BACE,IAAA,CAAC,KAAA,EAAA,EAAI,OAAO,EAAE,SAAA,EAAW,UAAS,EAChC,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EACjB,QAAA,EAAA,CAAA,CAAE,4CAA4C,CAAA,EACjD,CAAA;AAAA,wBACA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,EAAA,EAAG,iGAAA,EACN,QAAA,EAAA,CAAA,CAAE,uBAAuB,CAAA,EAC5B,CAAA,EACF;AAAA,OAAA,EACF,CAAA;AAAA,MAEF,OAAA;AAAA,MACA,YAAA;AAAA,MACA;AAAA;AAAA,GACF;AAEJ;;;;"}
@@ -7,17 +7,22 @@ import { useTranslationRef } from '@backstage/frontend-plugin-api';
7
7
  import { apiDocsTranslationRef } from '../../translation.esm.js';
8
8
 
9
9
  const ProvidingComponentsCard = (props) => {
10
- const { variant = "gridItem", columns = EntityTable.componentEntityColumns } = props;
10
+ const { t } = useTranslationRef(apiDocsTranslationRef);
11
+ const {
12
+ variant = "gridItem",
13
+ title = t("providingComponentsCard.title"),
14
+ columns = EntityTable.componentEntityColumns,
15
+ tableOptions = {}
16
+ } = props;
11
17
  const { entity } = useEntity();
12
18
  const { entities, loading, error } = useRelatedEntities(entity, {
13
19
  type: RELATION_API_PROVIDED_BY
14
20
  });
15
- const { t } = useTranslationRef(apiDocsTranslationRef);
16
21
  if (loading) {
17
- return /* @__PURE__ */ jsx(InfoCard, { variant, title: t("providingComponentsCard.title"), children: /* @__PURE__ */ jsx(Progress, {}) });
22
+ return /* @__PURE__ */ jsx(InfoCard, { variant, title, children: /* @__PURE__ */ jsx(Progress, {}) });
18
23
  }
19
24
  if (error || !entities) {
20
- return /* @__PURE__ */ jsx(InfoCard, { variant, title: t("providingComponentsCard.title"), children: /* @__PURE__ */ jsx(
25
+ return /* @__PURE__ */ jsx(InfoCard, { variant, title, children: /* @__PURE__ */ jsx(
21
26
  WarningPanel,
22
27
  {
23
28
  severity: "error",
@@ -29,13 +34,14 @@ const ProvidingComponentsCard = (props) => {
29
34
  return /* @__PURE__ */ jsx(
30
35
  EntityTable,
31
36
  {
32
- title: t("providingComponentsCard.title"),
37
+ title,
33
38
  variant,
34
39
  emptyContent: /* @__PURE__ */ jsxs("div", { style: { textAlign: "center" }, children: [
35
40
  /* @__PURE__ */ jsx(Typography, { variant: "body1", children: t("providingComponentsCard.emptyContent.title") }),
36
41
  /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx(Link, { to: "https://backstage.io/docs/features/software-catalog/descriptor-format#specprovidesapis-optional", children: t("apisCardHelpLinkTitle") }) })
37
42
  ] }),
38
43
  columns,
44
+ tableOptions,
39
45
  entities
40
46
  }
41
47
  );
@@ -1 +1 @@
1
- {"version":3,"file":"ProvidingComponentsCard.esm.js","sources":["../../../src/components/ComponentsCards/ProvidingComponentsCard.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 {\n ComponentEntity,\n RELATION_API_PROVIDED_BY,\n} from '@backstage/catalog-model';\nimport Typography from '@material-ui/core/Typography';\nimport {\n EntityTable,\n useEntity,\n useRelatedEntities,\n} from '@backstage/plugin-catalog-react';\nimport {\n CodeSnippet,\n InfoCard,\n InfoCardVariants,\n Link,\n Progress,\n TableColumn,\n WarningPanel,\n} from '@backstage/core-components';\nimport { useTranslationRef } from '@backstage/frontend-plugin-api';\nimport { apiDocsTranslationRef } from '../../translation';\n\n/** @public */\nexport const ProvidingComponentsCard = (props: {\n variant?: InfoCardVariants;\n columns?: TableColumn<ComponentEntity>[];\n}) => {\n const { variant = 'gridItem', columns = EntityTable.componentEntityColumns } =\n props;\n const { entity } = useEntity();\n const { entities, loading, error } = useRelatedEntities(entity, {\n type: RELATION_API_PROVIDED_BY,\n });\n const { t } = useTranslationRef(apiDocsTranslationRef);\n\n if (loading) {\n return (\n <InfoCard variant={variant} title={t('providingComponentsCard.title')}>\n <Progress />\n </InfoCard>\n );\n }\n\n if (error || !entities) {\n return (\n <InfoCard variant={variant} title={t('providingComponentsCard.title')}>\n <WarningPanel\n severity=\"error\"\n title={t('providingComponentsCard.error.title')}\n message={<CodeSnippet text={`${error}`} language=\"text\" />}\n />\n </InfoCard>\n );\n }\n\n return (\n <EntityTable\n title={t('providingComponentsCard.title')}\n variant={variant}\n emptyContent={\n <div style={{ textAlign: 'center' }}>\n <Typography variant=\"body1\">\n {t('providingComponentsCard.emptyContent.title')}\n </Typography>\n <Typography variant=\"body2\">\n <Link to=\"https://backstage.io/docs/features/software-catalog/descriptor-format#specprovidesapis-optional\">\n {t('apisCardHelpLinkTitle')}\n </Link>\n </Typography>\n </div>\n }\n columns={columns}\n entities={entities as ComponentEntity[]}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;AAuCO,MAAM,uBAAA,GAA0B,CAAC,KAAA,KAGlC;AACJ,EAAA,MAAM,EAAE,OAAA,GAAU,UAAA,EAAY,OAAA,GAAU,WAAA,CAAY,wBAAuB,GACzE,KAAA;AACF,EAAA,MAAM,EAAE,MAAA,EAAO,GAAI,SAAA,EAAU;AAC7B,EAAA,MAAM,EAAE,QAAA,EAAU,OAAA,EAAS,KAAA,EAAM,GAAI,mBAAmB,MAAA,EAAQ;AAAA,IAC9D,IAAA,EAAM;AAAA,GACP,CAAA;AACD,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,iBAAA,CAAkB,qBAAqB,CAAA;AAErD,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,uBACE,GAAA,CAAC,YAAS,OAAA,EAAkB,KAAA,EAAO,EAAE,+BAA+B,CAAA,EAClE,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,CAAA,EACZ,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,KAAA,IAAS,CAAC,QAAA,EAAU;AACtB,IAAA,2BACG,QAAA,EAAA,EAAS,OAAA,EAAkB,KAAA,EAAO,CAAA,CAAE,+BAA+B,CAAA,EAClE,QAAA,kBAAA,GAAA;AAAA,MAAC,YAAA;AAAA,MAAA;AAAA,QACC,QAAA,EAAS,OAAA;AAAA,QACT,KAAA,EAAO,EAAE,qCAAqC,CAAA;AAAA,QAC9C,OAAA,sBAAU,WAAA,EAAA,EAAY,IAAA,EAAM,GAAG,KAAK,CAAA,CAAA,EAAI,UAAS,MAAA,EAAO;AAAA;AAAA,KAC1D,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAA,EAAO,EAAE,+BAA+B,CAAA;AAAA,MACxC,OAAA;AAAA,MACA,8BACE,IAAA,CAAC,KAAA,EAAA,EAAI,OAAO,EAAE,SAAA,EAAW,UAAS,EAChC,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EACjB,QAAA,EAAA,CAAA,CAAE,4CAA4C,CAAA,EACjD,CAAA;AAAA,wBACA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,EAAA,EAAG,iGAAA,EACN,QAAA,EAAA,CAAA,CAAE,uBAAuB,CAAA,EAC5B,CAAA,EACF;AAAA,OAAA,EACF,CAAA;AAAA,MAEF,OAAA;AAAA,MACA;AAAA;AAAA,GACF;AAEJ;;;;"}
1
+ {"version":3,"file":"ProvidingComponentsCard.esm.js","sources":["../../../src/components/ComponentsCards/ProvidingComponentsCard.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 {\n ComponentEntity,\n RELATION_API_PROVIDED_BY,\n} from '@backstage/catalog-model';\nimport Typography from '@material-ui/core/Typography';\nimport {\n EntityTable,\n useEntity,\n useRelatedEntities,\n} from '@backstage/plugin-catalog-react';\nimport {\n CodeSnippet,\n InfoCard,\n InfoCardVariants,\n Link,\n Progress,\n TableColumn,\n TableOptions,\n WarningPanel,\n} from '@backstage/core-components';\nimport { useTranslationRef } from '@backstage/frontend-plugin-api';\nimport { apiDocsTranslationRef } from '../../translation';\n\n/** @public */\nexport const ProvidingComponentsCard = (props: {\n variant?: InfoCardVariants;\n title?: string;\n columns?: TableColumn<ComponentEntity>[];\n tableOptions?: TableOptions;\n}) => {\n const { t } = useTranslationRef(apiDocsTranslationRef);\n const {\n variant = 'gridItem',\n title = t('providingComponentsCard.title'),\n columns = EntityTable.componentEntityColumns,\n tableOptions = {},\n } = props;\n const { entity } = useEntity();\n const { entities, loading, error } = useRelatedEntities(entity, {\n type: RELATION_API_PROVIDED_BY,\n });\n\n if (loading) {\n return (\n <InfoCard variant={variant} title={title}>\n <Progress />\n </InfoCard>\n );\n }\n\n if (error || !entities) {\n return (\n <InfoCard variant={variant} title={title}>\n <WarningPanel\n severity=\"error\"\n title={t('providingComponentsCard.error.title')}\n message={<CodeSnippet text={`${error}`} language=\"text\" />}\n />\n </InfoCard>\n );\n }\n\n return (\n <EntityTable\n title={title}\n variant={variant}\n emptyContent={\n <div style={{ textAlign: 'center' }}>\n <Typography variant=\"body1\">\n {t('providingComponentsCard.emptyContent.title')}\n </Typography>\n <Typography variant=\"body2\">\n <Link to=\"https://backstage.io/docs/features/software-catalog/descriptor-format#specprovidesapis-optional\">\n {t('apisCardHelpLinkTitle')}\n </Link>\n </Typography>\n </div>\n }\n columns={columns}\n tableOptions={tableOptions}\n entities={entities as ComponentEntity[]}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;;AAwCO,MAAM,uBAAA,GAA0B,CAAC,KAAA,KAKlC;AACJ,EAAA,MAAM,EAAE,CAAA,EAAE,GAAI,iBAAA,CAAkB,qBAAqB,CAAA;AACrD,EAAA,MAAM;AAAA,IACJ,OAAA,GAAU,UAAA;AAAA,IACV,KAAA,GAAQ,EAAE,+BAA+B,CAAA;AAAA,IACzC,UAAU,WAAA,CAAY,sBAAA;AAAA,IACtB,eAAe;AAAC,GAClB,GAAI,KAAA;AACJ,EAAA,MAAM,EAAE,MAAA,EAAO,GAAI,SAAA,EAAU;AAC7B,EAAA,MAAM,EAAE,QAAA,EAAU,OAAA,EAAS,KAAA,EAAM,GAAI,mBAAmB,MAAA,EAAQ;AAAA,IAC9D,IAAA,EAAM;AAAA,GACP,CAAA;AAED,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,2BACG,QAAA,EAAA,EAAS,OAAA,EAAkB,KAAA,EAC1B,QAAA,kBAAA,GAAA,CAAC,YAAS,CAAA,EACZ,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,KAAA,IAAS,CAAC,QAAA,EAAU;AACtB,IAAA,uBACE,GAAA,CAAC,QAAA,EAAA,EAAS,OAAA,EAAkB,KAAA,EAC1B,QAAA,kBAAA,GAAA;AAAA,MAAC,YAAA;AAAA,MAAA;AAAA,QACC,QAAA,EAAS,OAAA;AAAA,QACT,KAAA,EAAO,EAAE,qCAAqC,CAAA;AAAA,QAC9C,OAAA,sBAAU,WAAA,EAAA,EAAY,IAAA,EAAM,GAAG,KAAK,CAAA,CAAA,EAAI,UAAS,MAAA,EAAO;AAAA;AAAA,KAC1D,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,WAAA;AAAA,IAAA;AAAA,MACC,KAAA;AAAA,MACA,OAAA;AAAA,MACA,8BACE,IAAA,CAAC,KAAA,EAAA,EAAI,OAAO,EAAE,SAAA,EAAW,UAAS,EAChC,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EACjB,QAAA,EAAA,CAAA,CAAE,4CAA4C,CAAA,EACjD,CAAA;AAAA,wBACA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,EAAA,EAAG,iGAAA,EACN,QAAA,EAAA,CAAA,CAAE,uBAAuB,CAAA,EAC5B,CAAA,EACF;AAAA,OAAA,EACF,CAAA;AAAA,MAEF,OAAA;AAAA,MACA,YAAA;AAAA,MACA;AAAA;AAAA,GACF;AAEJ;;;;"}
package/dist/index.d.ts CHANGED
@@ -114,13 +114,17 @@ declare const AsyncApiDefinitionWidget: (props: AsyncApiDefinitionWidgetProps) =
114
114
  */
115
115
  declare const ConsumingComponentsCard: (props: {
116
116
  variant?: InfoCardVariants;
117
+ title?: string;
117
118
  columns?: TableColumn<ComponentEntity>[];
119
+ tableOptions?: TableOptions;
118
120
  }) => react_jsx_runtime.JSX.Element;
119
121
 
120
122
  /** @public */
121
123
  declare const ProvidingComponentsCard: (props: {
122
124
  variant?: InfoCardVariants;
125
+ title?: string;
123
126
  columns?: TableColumn<ComponentEntity>[];
127
+ tableOptions?: TableOptions;
124
128
  }) => react_jsx_runtime.JSX.Element;
125
129
 
126
130
  /** @public */
@@ -181,7 +185,9 @@ declare const EntityConsumedApisCard: (props: {
181
185
  /** @public */
182
186
  declare const EntityConsumingComponentsCard: (props: {
183
187
  variant?: _backstage_core_components.InfoCardVariants;
188
+ title?: string;
184
189
  columns?: _backstage_core_components.TableColumn<_backstage_catalog_model.ComponentEntity>[];
190
+ tableOptions?: _backstage_core_components.TableOptions;
185
191
  }) => react_jsx_runtime.JSX.Element;
186
192
  /** @public */
187
193
  declare const EntityProvidedApisCard: (props: {
@@ -193,7 +199,9 @@ declare const EntityProvidedApisCard: (props: {
193
199
  /** @public */
194
200
  declare const EntityProvidingComponentsCard: (props: {
195
201
  variant?: _backstage_core_components.InfoCardVariants;
202
+ title?: string;
196
203
  columns?: _backstage_core_components.TableColumn<_backstage_catalog_model.ComponentEntity>[];
204
+ tableOptions?: _backstage_core_components.TableOptions;
197
205
  }) => react_jsx_runtime.JSX.Element;
198
206
  /** @public */
199
207
  declare const EntityHasApisCard: (props: {
@@ -1,5 +1,5 @@
1
1
  var name = "@backstage/plugin-api-docs";
2
- var version = "0.0.0-nightly-20260216031347";
2
+ var version = "0.0.0-nightly-20260217031303";
3
3
  var description = "A Backstage plugin that helps represent API entities in the frontend";
4
4
  var backstage = {
5
5
  role: "frontend-plugin",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backstage/plugin-api-docs",
3
- "version": "0.0.0-nightly-20260216031347",
3
+ "version": "0.0.0-nightly-20260217031303",
4
4
  "description": "A Backstage plugin that helps represent API entities in the frontend",
5
5
  "backstage": {
6
6
  "role": "frontend-plugin",
@@ -67,13 +67,13 @@
67
67
  "dependencies": {
68
68
  "@asyncapi/react-component": "^2.3.3",
69
69
  "@backstage/catalog-model": "1.7.6",
70
- "@backstage/core-components": "0.0.0-nightly-20260216031347",
71
- "@backstage/core-plugin-api": "0.0.0-nightly-20260216031347",
72
- "@backstage/frontend-plugin-api": "0.0.0-nightly-20260216031347",
73
- "@backstage/plugin-catalog": "0.0.0-nightly-20260216031347",
74
- "@backstage/plugin-catalog-common": "0.0.0-nightly-20260216031347",
75
- "@backstage/plugin-catalog-react": "0.0.0-nightly-20260216031347",
76
- "@backstage/plugin-permission-react": "0.0.0-nightly-20260216031347",
70
+ "@backstage/core-components": "0.0.0-nightly-20260217031303",
71
+ "@backstage/core-plugin-api": "0.0.0-nightly-20260217031303",
72
+ "@backstage/frontend-plugin-api": "0.0.0-nightly-20260217031303",
73
+ "@backstage/plugin-catalog": "0.0.0-nightly-20260217031303",
74
+ "@backstage/plugin-catalog-common": "0.0.0-nightly-20260217031303",
75
+ "@backstage/plugin-catalog-react": "0.0.0-nightly-20260217031303",
76
+ "@backstage/plugin-permission-react": "0.0.0-nightly-20260217031303",
77
77
  "@graphiql/react": "^0.23.0",
78
78
  "@material-ui/core": "^4.12.2",
79
79
  "@material-ui/icons": "^4.9.1",
@@ -85,11 +85,11 @@
85
85
  "swagger-ui-react": "^5.27.1"
86
86
  },
87
87
  "devDependencies": {
88
- "@backstage/cli": "0.0.0-nightly-20260216031347",
89
- "@backstage/core-app-api": "0.0.0-nightly-20260216031347",
90
- "@backstage/dev-utils": "0.0.0-nightly-20260216031347",
91
- "@backstage/frontend-test-utils": "0.0.0-nightly-20260216031347",
92
- "@backstage/test-utils": "0.0.0-nightly-20260216031347",
88
+ "@backstage/cli": "0.0.0-nightly-20260217031303",
89
+ "@backstage/core-app-api": "0.0.0-nightly-20260217031303",
90
+ "@backstage/dev-utils": "0.0.0-nightly-20260217031303",
91
+ "@backstage/frontend-test-utils": "0.0.0-nightly-20260217031303",
92
+ "@backstage/test-utils": "0.0.0-nightly-20260217031303",
93
93
  "@testing-library/dom": "^10.0.0",
94
94
  "@testing-library/jest-dom": "^6.0.0",
95
95
  "@testing-library/react": "^16.0.0",