@bcgov/plugin-catalog-dataset 0.1.0 → 0.2.5-feature.aps-4105-connect-pipelines.cbf325cb

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.
Files changed (34) hide show
  1. package/dist/components/CatalogDataset/AboutDatasetCard.esm.js +24 -0
  2. package/dist/components/CatalogDataset/AboutDatasetCard.esm.js.map +1 -0
  3. package/dist/components/CatalogDataset/AccessMethodsCard.esm.js +72 -0
  4. package/dist/components/CatalogDataset/AccessMethodsCard.esm.js.map +1 -0
  5. package/dist/components/CatalogDataset/AuthoritativeDesignationCard.esm.js +30 -0
  6. package/dist/components/CatalogDataset/AuthoritativeDesignationCard.esm.js.map +1 -0
  7. package/dist/components/CatalogDataset/CatalogDatasetPage.esm.js +121 -0
  8. package/dist/components/CatalogDataset/CatalogDatasetPage.esm.js.map +1 -0
  9. package/dist/components/CatalogDataset/DatasetApisDialog.esm.js +141 -0
  10. package/dist/components/CatalogDataset/DatasetApisDialog.esm.js.map +1 -0
  11. package/dist/components/CatalogDataset/FieldsAndDefinitionCard.esm.js +23 -0
  12. package/dist/components/CatalogDataset/FieldsAndDefinitionCard.esm.js.map +1 -0
  13. package/dist/components/CatalogDataset/LineageAndQualityCard.esm.js +52 -0
  14. package/dist/components/CatalogDataset/LineageAndQualityCard.esm.js.map +1 -0
  15. package/dist/components/CatalogDataset/MainCard.esm.js +131 -0
  16. package/dist/components/CatalogDataset/MainCard.esm.js.map +1 -0
  17. package/dist/components/CatalogDataset/RelatedResourcesCard.esm.js +33 -0
  18. package/dist/components/CatalogDataset/RelatedResourcesCard.esm.js.map +1 -0
  19. package/dist/components/CatalogDataset/SchemaCard.esm.js +164 -0
  20. package/dist/components/CatalogDataset/SchemaCard.esm.js.map +1 -0
  21. package/dist/components/CatalogDataset/SupportCard.esm.js +86 -0
  22. package/dist/components/CatalogDataset/SupportCard.esm.js.map +1 -0
  23. package/dist/components/CatalogDataset/VersioningAndChangeGovernanceCard.esm.js +57 -0
  24. package/dist/components/CatalogDataset/VersioningAndChangeGovernanceCard.esm.js.map +1 -0
  25. package/dist/components/CatalogDataset/index.esm.js +2 -0
  26. package/dist/components/CatalogDataset/index.esm.js.map +1 -0
  27. package/dist/index.d.ts +9 -0
  28. package/dist/index.esm.js +2 -0
  29. package/dist/index.esm.js.map +1 -0
  30. package/dist/plugin.esm.js +19 -0
  31. package/dist/plugin.esm.js.map +1 -0
  32. package/dist/routes.esm.js +8 -0
  33. package/dist/routes.esm.js.map +1 -0
  34. package/package.json +17 -4
@@ -0,0 +1,131 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { Card, CardContent, Typography, Link, Grid, Button } from '@material-ui/core';
3
+ import { EntityRefLink } from '@backstage/plugin-catalog-react';
4
+ import { MarkdownContent } from '@backstage/core-components';
5
+
6
+ const MainCard = ({
7
+ entity,
8
+ spec,
9
+ ownerLabel,
10
+ onViewApis
11
+ }) => {
12
+ return /* @__PURE__ */ jsx(Card, { children: /* @__PURE__ */ jsxs(CardContent, { children: [
13
+ /* @__PURE__ */ jsx(MarkdownContent, { content: spec.description ?? "" }),
14
+ entity.metadata.tags?.length ? /* @__PURE__ */ jsx("div", { children: entity.metadata.tags.map((tag) => /* @__PURE__ */ jsx(
15
+ "span",
16
+ {
17
+ style: {
18
+ display: "inline-block",
19
+ marginRight: 6,
20
+ marginBottom: 6,
21
+ padding: "2px 8px",
22
+ borderRadius: 12,
23
+ backgroundColor: "#eee",
24
+ fontSize: "0.75rem"
25
+ },
26
+ children: tag
27
+ },
28
+ tag
29
+ )) }) : null,
30
+ /* @__PURE__ */ jsxs("div", { style: { marginTop: 12 }, children: [
31
+ /* @__PURE__ */ jsx(Typography, { variant: "subtitle2", style: { fontWeight: 600 }, children: "Part of Connected Services" }),
32
+ /* @__PURE__ */ jsx(MarkdownContent, { content: spec.connectedServicesDescription ?? "\u2014" })
33
+ ] }),
34
+ /* @__PURE__ */ jsxs("div", { style: { marginTop: 12 }, children: [
35
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: "Learn more:" }),
36
+ entity.metadata.links?.length ? /* @__PURE__ */ jsx("ul", { style: { marginTop: 4, paddingLeft: 20 }, children: entity.metadata.links.map((link) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
37
+ Link,
38
+ {
39
+ href: link.url,
40
+ target: "_blank",
41
+ rel: "noopener noreferrer",
42
+ children: link.title || "More Info"
43
+ }
44
+ ) }, link.url)) }) : /* @__PURE__ */ jsx(Typography, { variant: "body2", children: "\u2014" })
45
+ ] }),
46
+ /* @__PURE__ */ jsxs(Grid, { container: true, spacing: 2, style: { marginTop: 12 }, children: [
47
+ /* @__PURE__ */ jsxs(Grid, { item: true, xs: 12, md: 6, children: [
48
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
49
+ "Type: ",
50
+ /* @__PURE__ */ jsx("strong", { children: spec.type ?? "\u2014" })
51
+ ] }),
52
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
53
+ "Custodian:",
54
+ " ",
55
+ spec.owner ? /* @__PURE__ */ jsx("strong", { children: /* @__PURE__ */ jsx(EntityRefLink, { entityRef: spec.owner, title: ownerLabel }) }) : /* @__PURE__ */ jsx("strong", { children: "\u2014" })
56
+ ] }),
57
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
58
+ "Status: ",
59
+ /* @__PURE__ */ jsx("strong", { children: spec.status ?? "\u2014" })
60
+ ] }),
61
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
62
+ "Security Classification: ",
63
+ /* @__PURE__ */ jsx("strong", { children: spec.securityClassification ?? "\u2014" })
64
+ ] }),
65
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
66
+ "Data quality Score: ",
67
+ /* @__PURE__ */ jsx("strong", { children: spec.quality?.score ?? "\u2014" })
68
+ ] }),
69
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
70
+ "Update frequency: ",
71
+ /* @__PURE__ */ jsx("strong", { children: spec.updateFrequency ?? "\u2014" })
72
+ ] }),
73
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
74
+ "Retention: ",
75
+ /* @__PURE__ */ jsx("strong", { children: spec.governance?.retention ?? "\u2014" })
76
+ ] })
77
+ ] }),
78
+ /* @__PURE__ */ jsxs(Grid, { item: true, xs: 12, md: 6, children: [
79
+ /* @__PURE__ */ jsx(
80
+ Button,
81
+ {
82
+ variant: "outlined",
83
+ size: "small",
84
+ onClick: onViewApis,
85
+ children: "View APIs"
86
+ }
87
+ ),
88
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx("strong", { children: "Technical documentation" }) }),
89
+ /* @__PURE__ */ jsxs("ul", { style: { marginTop: 4, paddingLeft: 20 }, children: [
90
+ /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
91
+ Link,
92
+ {
93
+ href: "https://www.notimplemented.net/",
94
+ target: "_blank",
95
+ rel: "noopener noreferrer",
96
+ children: "View data dictionary"
97
+ }
98
+ ) }),
99
+ /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
100
+ Link,
101
+ {
102
+ href: "https://www.notimplemented.net/",
103
+ target: "_blank",
104
+ children: "Download schema"
105
+ }
106
+ ) })
107
+ ] }),
108
+ /* @__PURE__ */ jsx(
109
+ Typography,
110
+ {
111
+ variant: "body2",
112
+ style: { letterSpacing: "4px", fontWeight: "bold" },
113
+ children: "--------------------"
114
+ }
115
+ ),
116
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx("strong", { children: "Need help?:" }) }),
117
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx(
118
+ Link,
119
+ {
120
+ href: "https://www.notimplemented.net/",
121
+ target: "_blank",
122
+ children: "Get help and contact information"
123
+ }
124
+ ) })
125
+ ] })
126
+ ] })
127
+ ] }) });
128
+ };
129
+
130
+ export { MainCard };
131
+ //# sourceMappingURL=MainCard.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MainCard.esm.js","sources":["../../../src/components/CatalogDataset/MainCard.tsx"],"sourcesContent":["import {\n Card,\n CardContent,\n Typography,\n Link,\n Grid,\n Button,\n} from '@material-ui/core';\nimport { EntityRefLink } from '@backstage/plugin-catalog-react';\nimport type { Entity } from '@backstage/catalog-model';\nimport { MarkdownContent } from '@backstage/core-components';\n\ntype DatasetSpec = {\n description?: string;\n connectedServicesDescription?: string;\n type?: string;\n owner?: string;\n status?: string;\n securityClassification?: string;\n quality?: {\n score?: string | number;\n };\n updateFrequency?: string;\n governance?: {\n retention?: string;\n };\n};\n\ntype Props = {\n entity: Entity;\n spec: DatasetSpec;\n ownerLabel: string;\n onViewApis: () => void;\n};\n\nexport const MainCard = ({\n entity,\n spec,\n ownerLabel,\n onViewApis,\n}: Props) => {\n return (\n <Card>\n <CardContent>\n <MarkdownContent content={spec.description ?? ''} />\n\n {entity.metadata.tags?.length ? (\n <div>\n {entity.metadata.tags.map(tag => (\n <span\n key={tag}\n style={{\n display: 'inline-block',\n marginRight: 6,\n marginBottom: 6,\n padding: '2px 8px',\n borderRadius: 12,\n backgroundColor: '#eee',\n fontSize: '0.75rem',\n }}\n >\n {tag}\n </span>\n ))}\n </div>\n ) : null}\n\n <div style={{ marginTop: 12 }}>\n <Typography variant=\"subtitle2\" style={{ fontWeight: 600 }}>\n Part of Connected Services\n </Typography>\n\n <MarkdownContent content={spec.connectedServicesDescription ?? '—'} />\n </div>\n\n <div style={{ marginTop: 12 }}>\n <Typography variant=\"body2\">\n Learn more:\n </Typography>\n\n {entity.metadata.links?.length ? (\n <ul style={{ marginTop: 4, paddingLeft: 20 }}>\n {entity.metadata.links.map(link => (\n <li key={link.url}>\n <Link\n href={link.url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {link.title || 'More Info'}\n </Link>\n </li>\n ))}\n </ul>\n ) : (\n <Typography variant=\"body2\">—</Typography>\n )}\n </div>\n\n <Grid container spacing={2} style={{ marginTop: 12 }}>\n <Grid item xs={12} md={6}>\n <Typography variant=\"body2\">\n Type: <strong>{spec.type ?? '—'}</strong>\n </Typography>\n\n <Typography variant=\"body2\">\n Custodian:{' '}\n {spec.owner ? (\n <strong>\n <EntityRefLink entityRef={spec.owner} title={ownerLabel} />\n </strong>\n ) : (\n <strong>—</strong>\n )}\n </Typography>\n\n <Typography variant=\"body2\">\n Status: <strong>{spec.status ?? '—'}</strong>\n </Typography>\n\n <Typography variant=\"body2\">\n Security Classification: <strong>{spec.securityClassification ?? '—'}</strong>\n </Typography>\n\n <Typography variant=\"body2\">\n Data quality Score: <strong>{spec.quality?.score ?? '—'}</strong>\n </Typography>\n\n <Typography variant=\"body2\">\n Update frequency: <strong>{spec.updateFrequency ?? '—'}</strong>\n </Typography>\n\n <Typography variant=\"body2\">\n Retention: <strong>{spec.governance?.retention ?? '—'}</strong>\n </Typography>\n </Grid>\n\n <Grid item xs={12} md={6}>\n <Button\n variant=\"outlined\"\n size=\"small\"\n onClick={onViewApis}\n >\n View APIs\n </Button>\n\n <Typography variant=\"body2\">\n <strong>Technical documentation</strong>\n </Typography>\n <ul style={{ marginTop: 4, paddingLeft: 20 }}>\n <li>\n <Link\n href=\"https://www.notimplemented.net/\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {'View data dictionary'}\n </Link>\n </li>\n <li>\n <Link\n href=\"https://www.notimplemented.net/\"\n target=\"_blank\"\n >\n {'Download schema'}\n </Link>\n </li>\n </ul>\n\n <Typography\n variant=\"body2\"\n style={{ letterSpacing: '4px', fontWeight: 'bold' }}\n >\n --------------------\n </Typography>\n\n <Typography variant=\"body2\">\n <strong>Need help?:</strong>\n </Typography>\n <Typography variant=\"body2\">\n <Link\n href=\"https://www.notimplemented.net/\"\n target=\"_blank\"\n >\n {'Get help and contact information'}\n </Link>\n </Typography>\n </Grid>\n </Grid>\n </CardContent>\n </Card>\n );\n};"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { Card, CardHeader, CardContent, Typography, Link } from '@material-ui/core';
3
+
4
+ const RelatedResourcesCard = ({
5
+ relatedResources
6
+ }) => {
7
+ return /* @__PURE__ */ jsxs(
8
+ Card,
9
+ {
10
+ style: {
11
+ borderRadius: 8,
12
+ marginBottom: 16,
13
+ border: "2px solid rgba(0,0,0,0.23)"
14
+ },
15
+ variant: "outlined",
16
+ children: [
17
+ /* @__PURE__ */ jsx(CardHeader, { title: "Related resources" }),
18
+ /* @__PURE__ */ jsx(CardContent, { children: relatedResources?.length ? /* @__PURE__ */ jsx("ul", { style: { margin: 0, paddingLeft: 20 }, children: relatedResources.map((resource) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx(
19
+ Link,
20
+ {
21
+ href: resource.url,
22
+ target: "_blank",
23
+ rel: "noopener noreferrer",
24
+ children: resource.title ?? resource.url
25
+ }
26
+ ) }) }, `${resource.url}-${resource.title ?? ""}`)) }) : /* @__PURE__ */ jsx(Typography, { variant: "body2", children: "No related resources defined." }) })
27
+ ]
28
+ }
29
+ );
30
+ };
31
+
32
+ export { RelatedResourcesCard };
33
+ //# sourceMappingURL=RelatedResourcesCard.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelatedResourcesCard.esm.js","sources":["../../../src/components/CatalogDataset/RelatedResourcesCard.tsx"],"sourcesContent":["import {\n Card,\n CardHeader,\n CardContent,\n Typography,\n Link,\n} from '@material-ui/core';\n\ntype RelatedResource = {\n url: string;\n title?: string;\n};\n\ntype Props = {\n relatedResources?: RelatedResource[];\n};\n\nexport const RelatedResourcesCard = ({\n relatedResources,\n}: Props) => {\n return (\n <Card\n style={{\n borderRadius: 8,\n marginBottom: 16,\n border: '2px solid rgba(0,0,0,0.23)',\n }}\n variant=\"outlined\"\n >\n <CardHeader title=\"Related resources\" />\n <CardContent>\n {relatedResources?.length ? (\n <ul style={{ margin: 0, paddingLeft: 20 }}>\n {relatedResources.map(resource => (\n <li key={`${resource.url}-${resource.title ?? ''}`}>\n <Typography variant=\"body2\">\n <Link\n href={resource.url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {resource.title ?? resource.url}\n </Link>\n </Typography>\n </li>\n ))}\n </ul>\n ) : (\n <Typography variant=\"body2\">No related resources defined.</Typography>\n )}\n </CardContent>\n </Card>\n );\n};"],"names":[],"mappings":";;;AAiBO,MAAM,uBAAuB,CAAC;AAAA,EACnC;AACF,CAAA,KAAa;AACX,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,KAAA,EAAO;AAAA,QACL,YAAA,EAAc,CAAA;AAAA,QACd,YAAA,EAAc,EAAA;AAAA,QACd,MAAA,EAAQ;AAAA,OACV;AAAA,MACA,OAAA,EAAQ,UAAA;AAAA,MAER,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAM,mBAAA,EAAoB,CAAA;AAAA,wBACtC,GAAA,CAAC,eACE,QAAA,EAAA,gBAAA,EAAkB,MAAA,uBAChB,IAAA,EAAA,EAAG,KAAA,EAAO,EAAE,MAAA,EAAQ,CAAA,EAAG,aAAa,EAAA,EAAG,EACrC,2BAAiB,GAAA,CAAI,CAAA,QAAA,yBACnB,IAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,kBAAA,GAAA;AAAA,UAAC,IAAA;AAAA,UAAA;AAAA,YACC,MAAM,QAAA,CAAS,GAAA;AAAA,YACf,MAAA,EAAO,QAAA;AAAA,YACP,GAAA,EAAI,qBAAA;AAAA,YAEH,QAAA,EAAA,QAAA,CAAS,SAAS,QAAA,CAAS;AAAA;AAAA,WAEhC,CAAA,EAAA,EATO,CAAA,EAAG,SAAS,GAAG,CAAA,CAAA,EAAI,SAAS,KAAA,IAAS,EAAE,CAAA,CAUhD,CACD,GACH,CAAA,mBAEA,GAAA,CAAC,cAAW,OAAA,EAAQ,OAAA,EAAQ,2CAA6B,CAAA,EAE7D;AAAA;AAAA;AAAA,GACF;AAEJ;;;;"}
@@ -0,0 +1,164 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { useState, useEffect } from 'react';
3
+ import { Card, CardHeader, Typography, IconButton, CardContent, Table, TableHead, TableRow, TableCell, TableBody, Link } from '@material-ui/core';
4
+ import ChevronLeftIcon from '@material-ui/icons/ChevronLeft';
5
+ import ChevronRightIcon from '@material-ui/icons/ChevronRight';
6
+
7
+ const SchemaCard = ({ tables }) => {
8
+ const safeTables = tables ?? [];
9
+ const [currentIndex, setCurrentIndex] = useState(0);
10
+ useEffect(() => {
11
+ if (currentIndex >= safeTables.length) {
12
+ setCurrentIndex(0);
13
+ }
14
+ }, [currentIndex, safeTables.length]);
15
+ const currentTable = safeTables[currentIndex];
16
+ const goPrevious = () => {
17
+ setCurrentIndex((index) => Math.max(0, index - 1));
18
+ };
19
+ const goNext = () => {
20
+ setCurrentIndex(
21
+ (index) => Math.min(safeTables.length - 1, index + 1)
22
+ );
23
+ };
24
+ return /* @__PURE__ */ jsxs(
25
+ Card,
26
+ {
27
+ style: {
28
+ borderRadius: 8,
29
+ marginBottom: 16,
30
+ border: "2px solid rgba(0,0,0,0.23)"
31
+ },
32
+ variant: "outlined",
33
+ children: [
34
+ /* @__PURE__ */ jsx(
35
+ CardHeader,
36
+ {
37
+ title: "Schema",
38
+ action: safeTables.length > 1 ? /* @__PURE__ */ jsxs(
39
+ "div",
40
+ {
41
+ style: {
42
+ display: "flex",
43
+ alignItems: "center",
44
+ gap: 4,
45
+ marginTop: 4
46
+ },
47
+ children: [
48
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
49
+ currentIndex + 1,
50
+ " of ",
51
+ safeTables.length
52
+ ] }),
53
+ /* @__PURE__ */ jsx(
54
+ IconButton,
55
+ {
56
+ "aria-label": "Previous schema table",
57
+ onClick: goPrevious,
58
+ disabled: currentIndex === 0,
59
+ size: "small",
60
+ children: /* @__PURE__ */ jsx(ChevronLeftIcon, {})
61
+ }
62
+ ),
63
+ /* @__PURE__ */ jsx(
64
+ IconButton,
65
+ {
66
+ "aria-label": "Next schema table",
67
+ onClick: goNext,
68
+ disabled: currentIndex === safeTables.length - 1,
69
+ size: "small",
70
+ children: /* @__PURE__ */ jsx(ChevronRightIcon, {})
71
+ }
72
+ )
73
+ ]
74
+ }
75
+ ) : void 0
76
+ }
77
+ ),
78
+ /* @__PURE__ */ jsxs(CardContent, { children: [
79
+ currentTable ? /* @__PURE__ */ jsxs("div", { style: { marginBottom: 16 }, children: [
80
+ /* @__PURE__ */ jsx(
81
+ Typography,
82
+ {
83
+ variant: "subtitle2",
84
+ style: { marginBottom: 4, fontWeight: 600 },
85
+ children: currentTable.name
86
+ }
87
+ ),
88
+ currentTable.fields?.length ? /* @__PURE__ */ jsxs(
89
+ Table,
90
+ {
91
+ size: "small",
92
+ style: {
93
+ border: "1px solid rgba(0,0,0,0.23)",
94
+ borderCollapse: "collapse"
95
+ },
96
+ children: [
97
+ /* @__PURE__ */ jsx(TableHead, { children: /* @__PURE__ */ jsxs(TableRow, { children: [
98
+ /* @__PURE__ */ jsx(
99
+ TableCell,
100
+ {
101
+ style: {
102
+ fontWeight: 700,
103
+ border: "1px solid rgba(0,0,0,0.23)"
104
+ },
105
+ children: "Field Name"
106
+ }
107
+ ),
108
+ /* @__PURE__ */ jsx(
109
+ TableCell,
110
+ {
111
+ style: {
112
+ fontWeight: 700,
113
+ border: "1px solid rgba(0,0,0,0.23)"
114
+ },
115
+ children: "Type"
116
+ }
117
+ ),
118
+ /* @__PURE__ */ jsx(
119
+ TableCell,
120
+ {
121
+ style: {
122
+ fontWeight: 700,
123
+ border: "1px solid rgba(0,0,0,0.23)"
124
+ },
125
+ children: "Description"
126
+ }
127
+ )
128
+ ] }) }),
129
+ /* @__PURE__ */ jsx(TableBody, { children: currentTable.fields.map((field) => /* @__PURE__ */ jsxs(TableRow, { children: [
130
+ /* @__PURE__ */ jsx(
131
+ TableCell,
132
+ {
133
+ style: { border: "1px solid rgba(0,0,0,0.23)" },
134
+ children: field.columnName
135
+ }
136
+ ),
137
+ /* @__PURE__ */ jsx(
138
+ TableCell,
139
+ {
140
+ style: { border: "1px solid rgba(0,0,0,0.23)" },
141
+ children: field.dataType ? field.dataPrecision ? `${field.dataType} (${field.dataPrecision})` : field.dataType : "\u2014"
142
+ }
143
+ ),
144
+ /* @__PURE__ */ jsx(
145
+ TableCell,
146
+ {
147
+ style: { border: "1px solid rgba(0,0,0,0.23)" },
148
+ children: field.columnComments ?? "\u2014"
149
+ }
150
+ )
151
+ ] }, field.columnName)) })
152
+ ]
153
+ }
154
+ ) : /* @__PURE__ */ jsx(Typography, { variant: "body2", children: "No fields available." })
155
+ ] }) : /* @__PURE__ */ jsx(Typography, { variant: "body2", children: "No schema available." }),
156
+ /* @__PURE__ */ jsx(Link, { href: "https://www.notimplemented.net/", target: "_blank", children: "Download schema" })
157
+ ] })
158
+ ]
159
+ }
160
+ );
161
+ };
162
+
163
+ export { SchemaCard };
164
+ //# sourceMappingURL=SchemaCard.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaCard.esm.js","sources":["../../../src/components/CatalogDataset/SchemaCard.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport {\n Card,\n CardHeader,\n CardContent,\n Typography,\n Table,\n TableHead,\n TableRow,\n TableCell,\n TableBody,\n Link,\n IconButton,\n} from '@material-ui/core';\nimport ChevronLeftIcon from '@material-ui/icons/ChevronLeft';\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\n\ntype SchemaField = {\n columnName: string;\n dataType?: string;\n dataPrecision?: string;\n shortName?: string;\n columnComments?: string;\n};\n\ntype SchemaTable = {\n name: string;\n resourceType?: string;\n fields?: SchemaField[];\n};\n\ntype Props = {\n tables?: SchemaTable[];\n};\n\nexport const SchemaCard = ({ tables }: Props) => {\n const safeTables = tables ?? [];\n const [currentIndex, setCurrentIndex] = useState(0);\n\n useEffect(() => {\n if (currentIndex >= safeTables.length) {\n setCurrentIndex(0);\n }\n }, [currentIndex, safeTables.length]);\n\n const currentTable = safeTables[currentIndex];\n\n const goPrevious = () => {\n setCurrentIndex(index => Math.max(0, index - 1));\n };\n\n const goNext = () => {\n setCurrentIndex(index =>\n Math.min(safeTables.length - 1, index + 1),\n );\n };\n\n return (\n <Card\n style={{\n borderRadius: 8,\n marginBottom: 16,\n border: '2px solid rgba(0,0,0,0.23)',\n }}\n variant=\"outlined\"\n >\n <CardHeader\n title=\"Schema\"\n action={\n safeTables.length > 1 ? (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n gap: 4,\n marginTop: 4,\n }}\n >\n <Typography variant=\"body2\">\n {currentIndex + 1} of {safeTables.length}\n </Typography>\n\n <IconButton\n aria-label=\"Previous schema table\"\n onClick={goPrevious}\n disabled={currentIndex === 0}\n size=\"small\"\n >\n <ChevronLeftIcon />\n </IconButton>\n\n <IconButton\n aria-label=\"Next schema table\"\n onClick={goNext}\n disabled={currentIndex === safeTables.length - 1}\n size=\"small\"\n >\n <ChevronRightIcon />\n </IconButton>\n </div>\n ) : undefined\n }\n />\n\n <CardContent>\n {currentTable ? (\n <div style={{ marginBottom: 16 }}>\n <Typography\n variant=\"subtitle2\"\n style={{ marginBottom: 4, fontWeight: 600 }}\n >\n {currentTable.name}\n </Typography>\n\n {currentTable.fields?.length ? (\n <Table\n size=\"small\"\n style={{\n border: '1px solid rgba(0,0,0,0.23)',\n borderCollapse: 'collapse',\n }}\n >\n <TableHead>\n <TableRow>\n <TableCell\n style={{\n fontWeight: 700,\n border: '1px solid rgba(0,0,0,0.23)',\n }}\n >\n Field Name\n </TableCell>\n\n <TableCell\n style={{\n fontWeight: 700,\n border: '1px solid rgba(0,0,0,0.23)',\n }}\n >\n Type\n </TableCell>\n\n <TableCell\n style={{\n fontWeight: 700,\n border: '1px solid rgba(0,0,0,0.23)',\n }}\n >\n Description\n </TableCell>\n </TableRow>\n </TableHead>\n\n <TableBody>\n {currentTable.fields.map(field => (\n <TableRow key={field.columnName}>\n <TableCell\n style={{ border: '1px solid rgba(0,0,0,0.23)' }}\n >\n {field.columnName}\n </TableCell>\n\n <TableCell\n style={{ border: '1px solid rgba(0,0,0,0.23)' }}\n >\n {field.dataType\n ? field.dataPrecision\n ? `${field.dataType} (${field.dataPrecision})`\n : field.dataType\n : '—'}\n </TableCell>\n\n <TableCell\n style={{ border: '1px solid rgba(0,0,0,0.23)' }}\n >\n {field.columnComments ?? '—'}\n </TableCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n ) : (\n <Typography variant=\"body2\">\n No fields available.\n </Typography>\n )}\n </div>\n ) : (\n <Typography variant=\"body2\">\n No schema available.\n </Typography>\n )}\n\n <Link href=\"https://www.notimplemented.net/\" target=\"_blank\">\n {'Download schema'}\n </Link>\n </CardContent>\n </Card>\n );\n};"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { Card, CardHeader, CardContent, Typography } from '@material-ui/core';
3
+ import { MarkdownContent } from '@backstage/core-components';
4
+
5
+ const SupportChannelSection = ({
6
+ title,
7
+ channel
8
+ }) => {
9
+ if (!channel) {
10
+ return null;
11
+ }
12
+ return /* @__PURE__ */ jsxs("div", { style: { marginTop: 16 }, children: [
13
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx("strong", { children: title }) }),
14
+ /* @__PURE__ */ jsx(MarkdownContent, { content: channel.description ?? "-" }),
15
+ /* @__PURE__ */ jsxs("div", { style: { marginTop: 8 }, children: [
16
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
17
+ "Channel: ",
18
+ channel.channel ?? "N/A"
19
+ ] }),
20
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
21
+ "Response time: ",
22
+ channel.responseTime ?? "N/A"
23
+ ] }),
24
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
25
+ "Escalation: ",
26
+ channel.escalation ?? "N/A"
27
+ ] })
28
+ ] })
29
+ ] });
30
+ };
31
+ const SupportCard = ({ support }) => {
32
+ return /* @__PURE__ */ jsxs(
33
+ Card,
34
+ {
35
+ style: {
36
+ borderRadius: 8,
37
+ marginBottom: 16,
38
+ border: "2px solid rgba(0,0,0,0.23)"
39
+ },
40
+ variant: "outlined",
41
+ children: [
42
+ /* @__PURE__ */ jsx(CardHeader, { title: "Support" }),
43
+ /* @__PURE__ */ jsxs(CardContent, { children: [
44
+ /* @__PURE__ */ jsx(MarkdownContent, { content: support?.description || "No support information defined." }),
45
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx("strong", { children: "Dataset Ownership" }) }),
46
+ /* @__PURE__ */ jsxs("ul", { style: { margin: "0 0 8px 0", paddingLeft: 20 }, children: [
47
+ /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
48
+ "Data Custodian: ",
49
+ support?.dataCustodian ?? "N/A"
50
+ ] }) }),
51
+ /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
52
+ "Governance Authority: ",
53
+ support?.governanceAuthority ?? "N/A"
54
+ ] }) })
55
+ ] }),
56
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx("strong", { children: "Support Pathways" }) }),
57
+ /* @__PURE__ */ jsx("div", { style: { marginTop: 4 }, children: /* @__PURE__ */ jsx(MarkdownContent, { content: support?.pathways ?? "-" }) }),
58
+ /* @__PURE__ */ jsx(
59
+ SupportChannelSection,
60
+ {
61
+ title: "Data and Semantics",
62
+ channel: support?.dataAndSemantics
63
+ }
64
+ ),
65
+ /* @__PURE__ */ jsx(
66
+ SupportChannelSection,
67
+ {
68
+ title: "Access and Integration",
69
+ channel: support?.accessAndIntegration
70
+ }
71
+ ),
72
+ /* @__PURE__ */ jsx(
73
+ SupportChannelSection,
74
+ {
75
+ title: "Governance and Production Escalation",
76
+ channel: support?.governanceAndProductionEscalation
77
+ }
78
+ )
79
+ ] })
80
+ ]
81
+ }
82
+ );
83
+ };
84
+
85
+ export { SupportCard };
86
+ //# sourceMappingURL=SupportCard.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SupportCard.esm.js","sources":["../../../src/components/CatalogDataset/SupportCard.tsx"],"sourcesContent":["import {\n Card,\n CardHeader,\n CardContent,\n Typography,\n} from '@material-ui/core';\nimport { MarkdownContent } from '@backstage/core-components';\n\ntype DatasetSupportChannel = {\n description?: string;\n channel?: string;\n responseTime?: string;\n escalation?: string;\n};\n\ntype DatasetGovernanceAndProductionEscalation = {\n description?: string;\n channel?: string;\n referenceDataset?: string;\n responseTime?: string;\n};\n\ntype Props = {\n support?: {\n description?: string;\n dataCustodian?: string;\n governanceAuthority?: string;\n pathways?: string;\n dataAndSemantics?: DatasetSupportChannel;\n accessAndIntegration?: DatasetSupportChannel;\n governanceAndProductionEscalation?: DatasetGovernanceAndProductionEscalation;\n };\n};\n\nconst SupportChannelSection = ({\n title,\n channel,\n}: {\n title: string;\n channel?: DatasetSupportChannel;\n}) => {\n if (!channel) {\n return null;\n }\n\n return (\n <div style={{ marginTop: 16 }}>\n <Typography variant=\"body2\">\n <strong>{title}</strong>\n </Typography>\n\n <MarkdownContent content={channel.description ?? '-'} />\n\n <div style={{ marginTop: 8 }}>\n <Typography variant=\"body2\">\n Channel: {channel.channel ?? 'N/A'}\n </Typography>\n <Typography variant=\"body2\">\n Response time: {channel.responseTime ?? 'N/A'}\n </Typography>\n <Typography variant=\"body2\">\n Escalation: {channel.escalation ?? 'N/A'}\n </Typography>\n </div>\n </div>\n );\n};\n\nexport const SupportCard = ({ support }: Props) => {\n return (\n <Card\n style={{\n borderRadius: 8,\n marginBottom: 16,\n border: '2px solid rgba(0,0,0,0.23)',\n }}\n variant=\"outlined\"\n >\n <CardHeader title=\"Support\" />\n <CardContent>\n\n <MarkdownContent content={support?.description || 'No support information defined.'} />\n\n <Typography variant=\"body2\">\n <strong>Dataset Ownership</strong>\n </Typography>\n\n <ul style={{ margin: '0 0 8px 0', paddingLeft: 20 }}>\n <li>\n <Typography variant=\"body2\">\n Data Custodian: {support?.dataCustodian ?? 'N/A'}\n </Typography>\n </li>\n <li>\n <Typography variant=\"body2\">\n Governance Authority: {support?.governanceAuthority ?? 'N/A'}\n </Typography>\n </li>\n </ul>\n\n <Typography variant=\"body2\">\n <strong>Support Pathways</strong>\n </Typography>\n <div style={{ marginTop: 4 }}>\n <MarkdownContent content={support?.pathways ?? '-'} />\n </div>\n\n <SupportChannelSection\n title=\"Data and Semantics\"\n channel={support?.dataAndSemantics}\n />\n\n <SupportChannelSection\n title=\"Access and Integration\"\n channel={support?.accessAndIntegration}\n />\n\n <SupportChannelSection\n title=\"Governance and Production Escalation\"\n channel={support?.governanceAndProductionEscalation}\n />\n </CardContent>\n </Card>\n );\n};"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { Card, CardHeader, CardContent, Typography } from '@material-ui/core';
3
+ import { MarkdownContent } from '@backstage/core-components';
4
+
5
+ const VersioningAndChangeGovernanceCard = ({
6
+ currentVersion,
7
+ initialRelease,
8
+ lastUpdated,
9
+ versioningDescription,
10
+ governanceDescription
11
+ }) => {
12
+ return /* @__PURE__ */ jsxs(
13
+ Card,
14
+ {
15
+ style: {
16
+ borderRadius: 8,
17
+ marginBottom: 16,
18
+ border: "2px solid rgba(0,0,0,0.23)"
19
+ },
20
+ variant: "outlined",
21
+ children: [
22
+ /* @__PURE__ */ jsx(CardHeader, { title: "Versioning and Change Governance" }),
23
+ /* @__PURE__ */ jsxs(CardContent, { children: [
24
+ /* @__PURE__ */ jsx(Typography, { variant: "body2", children: /* @__PURE__ */ jsx("strong", { children: "Version Information" }) }),
25
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
26
+ /* @__PURE__ */ jsx("strong", { children: "Current Version:" }),
27
+ " ",
28
+ currentVersion ?? "N/A"
29
+ ] }),
30
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", children: [
31
+ /* @__PURE__ */ jsx("strong", { children: "Initial Release:" }),
32
+ " ",
33
+ initialRelease ?? "N/A"
34
+ ] }),
35
+ /* @__PURE__ */ jsxs(Typography, { variant: "body2", gutterBottom: true, children: [
36
+ /* @__PURE__ */ jsx("strong", { children: "Last Updated:" }),
37
+ " ",
38
+ lastUpdated ?? "N/A"
39
+ ] }),
40
+ /* @__PURE__ */ jsx(MarkdownContent, { content: versioningDescription ?? "N/A" }),
41
+ /* @__PURE__ */ jsx(
42
+ Typography,
43
+ {
44
+ variant: "body2",
45
+ style: { marginTop: 16 },
46
+ children: /* @__PURE__ */ jsx("strong", { children: "Governance and Usage Constraints" })
47
+ }
48
+ ),
49
+ /* @__PURE__ */ jsx(MarkdownContent, { content: governanceDescription ?? "N/A" })
50
+ ] })
51
+ ]
52
+ }
53
+ );
54
+ };
55
+
56
+ export { VersioningAndChangeGovernanceCard };
57
+ //# sourceMappingURL=VersioningAndChangeGovernanceCard.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VersioningAndChangeGovernanceCard.esm.js","sources":["../../../src/components/CatalogDataset/VersioningAndChangeGovernanceCard.tsx"],"sourcesContent":["import {\n Card,\n CardHeader,\n CardContent,\n Typography,\n} from '@material-ui/core';\nimport { MarkdownContent } from '@backstage/core-components';\n\ntype Props = {\n currentVersion?: string;\n initialRelease?: string;\n lastUpdated?: string;\n versioningDescription?: string;\n governanceDescription?: string;\n};\n\nexport const VersioningAndChangeGovernanceCard = ({\n currentVersion,\n initialRelease,\n lastUpdated,\n versioningDescription,\n governanceDescription,\n}: Props) => {\n return (\n <Card\n style={{\n borderRadius: 8,\n marginBottom: 16,\n border: '2px solid rgba(0,0,0,0.23)',\n }}\n variant=\"outlined\"\n >\n <CardHeader title=\"Versioning and Change Governance\" />\n <CardContent>\n <Typography variant=\"body2\">\n <strong>Version Information</strong>\n </Typography>\n\n <Typography variant=\"body2\">\n <strong>Current Version:</strong> {currentVersion ?? 'N/A'}\n </Typography>\n <Typography variant=\"body2\">\n <strong>Initial Release:</strong> {initialRelease ?? 'N/A'}\n </Typography>\n <Typography variant=\"body2\" gutterBottom>\n <strong>Last Updated:</strong> {lastUpdated ?? 'N/A'}\n </Typography>\n\n <MarkdownContent content={versioningDescription ?? 'N/A'} />\n\n <Typography\n variant=\"body2\"\n style={{ marginTop: 16 }}\n >\n <strong>Governance and Usage Constraints</strong>\n </Typography>\n\n <MarkdownContent content= {governanceDescription ?? 'N/A'} />\n </CardContent>\n </Card>\n );\n};"],"names":[],"mappings":";;;;AAgBO,MAAM,oCAAoC,CAAC;AAAA,EAChD,cAAA;AAAA,EACA,cAAA;AAAA,EACA,WAAA;AAAA,EACA,qBAAA;AAAA,EACA;AACF,CAAA,KAAa;AACX,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,KAAA,EAAO;AAAA,QACL,YAAA,EAAc,CAAA;AAAA,QACd,YAAA,EAAc,EAAA;AAAA,QACd,MAAA,EAAQ;AAAA,OACV;AAAA,MACA,OAAA,EAAQ,UAAA;AAAA,MAER,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,OAAM,kCAAA,EAAmC,CAAA;AAAA,6BACpD,WAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,cAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAO,iCAAmB,CAAA,EAC7B,CAAA;AAAA,0BAEA,IAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,YAAO,QAAA,EAAA,kBAAA,EAAgB,CAAA;AAAA,YAAS,GAAA;AAAA,YAAE,cAAA,IAAkB;AAAA,WAAA,EACvD,CAAA;AAAA,0BACA,IAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAClB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,YAAO,QAAA,EAAA,kBAAA,EAAgB,CAAA;AAAA,YAAS,GAAA;AAAA,YAAE,cAAA,IAAkB;AAAA,WAAA,EACvD,CAAA;AAAA,0BACA,IAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAQ,OAAA,EAAQ,cAAY,IAAA,EACtC,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,YAAO,QAAA,EAAA,eAAA,EAAa,CAAA;AAAA,YAAS,GAAA;AAAA,YAAE,WAAA,IAAe;AAAA,WAAA,EACjD,CAAA;AAAA,0BAEA,GAAA,CAAC,eAAA,EAAA,EAAgB,OAAA,EAAS,qBAAA,IAAyB,KAAA,EAAO,CAAA;AAAA,0BAE1D,GAAA;AAAA,YAAC,UAAA;AAAA,YAAA;AAAA,cACC,OAAA,EAAQ,OAAA;AAAA,cACR,KAAA,EAAO,EAAE,SAAA,EAAW,EAAA,EAAG;AAAA,cAEvB,QAAA,kBAAA,GAAA,CAAC,YAAO,QAAA,EAAA,kCAAA,EAAgC;AAAA;AAAA,WAC1C;AAAA,0BAEA,GAAA,CAAC,eAAA,EAAA,EAAgB,OAAA,EAAU,qBAAA,IAAyB,KAAA,EAAO;AAAA,SAAA,EAC7D;AAAA;AAAA;AAAA,GACF;AAEJ;;;;"}
@@ -0,0 +1,2 @@
1
+ export { CatalogDatasetPage } from './CatalogDatasetPage.esm.js';
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as _backstage_core_plugin_api from '@backstage/core-plugin-api';
3
+
4
+ declare const catalogDatasetPlugin: _backstage_core_plugin_api.BackstagePlugin<{
5
+ root: _backstage_core_plugin_api.RouteRef<undefined>;
6
+ }, {}, {}>;
7
+ declare const CatalogDatasetPage: () => react_jsx_runtime.JSX.Element;
8
+
9
+ export { CatalogDatasetPage, catalogDatasetPlugin };
@@ -0,0 +1,2 @@
1
+ export { CatalogDatasetPage, catalogDatasetPlugin } from './plugin.esm.js';
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import { createPlugin, createRoutableExtension } from '@backstage/core-plugin-api';
2
+ import { rootRouteRef } from './routes.esm.js';
3
+
4
+ const catalogDatasetPlugin = createPlugin({
5
+ id: "catalog-dataset",
6
+ routes: {
7
+ root: rootRouteRef
8
+ }
9
+ });
10
+ const CatalogDatasetPage = catalogDatasetPlugin.provide(
11
+ createRoutableExtension({
12
+ name: "CatalogDatasetPage",
13
+ component: () => import('./components/CatalogDataset/index.esm.js').then((m) => m.CatalogDatasetPage),
14
+ mountPoint: rootRouteRef
15
+ })
16
+ );
17
+
18
+ export { CatalogDatasetPage, catalogDatasetPlugin };
19
+ //# sourceMappingURL=plugin.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.esm.js","sources":["../src/plugin.ts"],"sourcesContent":["import {\n createPlugin,\n createRoutableExtension,\n} from '@backstage/core-plugin-api';\n\nimport { rootRouteRef } from './routes';\n\nexport const catalogDatasetPlugin = createPlugin({\n id: 'catalog-dataset',\n routes: {\n root: rootRouteRef,\n },\n});\n\nexport const CatalogDatasetPage = catalogDatasetPlugin.provide(\n createRoutableExtension({\n name: 'CatalogDatasetPage',\n component: () =>\n import('./components/CatalogDataset').then(m => m.CatalogDatasetPage),\n mountPoint: rootRouteRef,\n }),\n);\n"],"names":[],"mappings":";;;AAOO,MAAM,uBAAuB,YAAA,CAAa;AAAA,EAC/C,EAAA,EAAI,iBAAA;AAAA,EACJ,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM;AAAA;AAEV,CAAC;AAEM,MAAM,qBAAqB,oBAAA,CAAqB,OAAA;AAAA,EACrD,uBAAA,CAAwB;AAAA,IACtB,IAAA,EAAM,oBAAA;AAAA,IACN,SAAA,EAAW,MACT,OAAO,0CAA6B,EAAE,IAAA,CAAK,CAAA,CAAA,KAAK,EAAE,kBAAkB,CAAA;AAAA,IACtE,UAAA,EAAY;AAAA,GACb;AACH;;;;"}
@@ -0,0 +1,8 @@
1
+ import { createRouteRef } from '@backstage/core-plugin-api';
2
+
3
+ const rootRouteRef = createRouteRef({
4
+ id: "catalog-dataset"
5
+ });
6
+
7
+ export { rootRouteRef };
8
+ //# sourceMappingURL=routes.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.esm.js","sources":["../src/routes.ts"],"sourcesContent":["import { createRouteRef } from '@backstage/core-plugin-api';\n\nexport const rootRouteRef = createRouteRef({\n id: 'catalog-dataset',\n});\n"],"names":[],"mappings":";;AAEO,MAAM,eAAe,cAAA,CAAe;AAAA,EACzC,EAAA,EAAI;AACN,CAAC;;;;"}