@backstage/plugin-techdocs 1.4.3 → 1.5.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 +35 -0
- package/dist/esm/{TechDocsCustomHome-a8048941.esm.js → TechDocsCustomHome-57d31b31.esm.js} +3 -3
- package/dist/esm/{TechDocsCustomHome-a8048941.esm.js.map → TechDocsCustomHome-57d31b31.esm.js.map} +1 -1
- package/dist/esm/{index-1937614f.esm.js → index-148b0cb6.esm.js} +50 -27
- package/dist/esm/index-148b0cb6.esm.js.map +1 -0
- package/dist/esm/{index-58b04432.esm.js → index-a5e9c1eb.esm.js} +3 -3
- package/dist/esm/index-a5e9c1eb.esm.js.map +1 -0
- package/dist/index.d.ts +26 -24
- package/dist/index.esm.js +2 -2
- package/package.json +12 -12
- package/dist/esm/index-1937614f.esm.js.map +0 -1
- package/dist/esm/index-58b04432.esm.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
# @backstage/plugin-techdocs
|
|
2
2
|
|
|
3
|
+
## 1.5.0-next.1
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 20840b36b4: Update DocsTable and EntityListDocsTable to accept overrides for Material Table options.
|
|
8
|
+
- 0eaa579f89: The `TechDocsSearchResultListItem` component is now a search result extension. This means that when rendered as a child of components that render search extensions, the `result`, `rank`, and `highlight` properties are optional. See the [documentation](https://backstage.io/docs/features/search/how-to-guides#how-to-render-search-results-using-extensions) for more details.
|
|
9
|
+
|
|
10
|
+
### Patch Changes
|
|
11
|
+
|
|
12
|
+
- Updated dependencies
|
|
13
|
+
- @backstage/core-components@0.12.4-next.0
|
|
14
|
+
- @backstage/plugin-search-react@1.5.0-next.0
|
|
15
|
+
- @backstage/plugin-catalog-react@1.3.0-next.1
|
|
16
|
+
- @backstage/catalog-model@1.1.6-next.0
|
|
17
|
+
- @backstage/config@1.0.6
|
|
18
|
+
- @backstage/core-plugin-api@1.3.0
|
|
19
|
+
- @backstage/errors@1.1.4
|
|
20
|
+
- @backstage/integration@1.4.2
|
|
21
|
+
- @backstage/integration-react@1.1.10-next.0
|
|
22
|
+
- @backstage/theme@0.2.16
|
|
23
|
+
- @backstage/plugin-search-common@1.2.1
|
|
24
|
+
- @backstage/plugin-techdocs-react@1.1.3-next.1
|
|
25
|
+
|
|
26
|
+
## 1.4.4-next.0
|
|
27
|
+
|
|
28
|
+
### Patch Changes
|
|
29
|
+
|
|
30
|
+
- c8e09cc383: Fixed bug in Techdocs reader where a techdocs page with a hash in the URL did not always jump to the document anchor.
|
|
31
|
+
- cad5607411: Improve view: remove footer overlay on large screen
|
|
32
|
+
- Updated dependencies
|
|
33
|
+
- @backstage/plugin-catalog-react@1.3.0-next.0
|
|
34
|
+
- @backstage/catalog-model@1.1.6-next.0
|
|
35
|
+
- @backstage/plugin-techdocs-react@1.1.3-next.0
|
|
36
|
+
- @backstage/integration-react@1.1.9
|
|
37
|
+
|
|
3
38
|
## 1.4.3
|
|
4
39
|
|
|
5
40
|
### Patch Changes
|
|
@@ -2,7 +2,7 @@ import React, { useState } from 'react';
|
|
|
2
2
|
import useAsync from 'react-use/lib/useAsync';
|
|
3
3
|
import { makeStyles } from '@material-ui/core';
|
|
4
4
|
import { catalogApiRef, CATALOG_FILTER_EXISTS, useEntityOwnership } from '@backstage/plugin-catalog-react';
|
|
5
|
-
import { T as TechDocsPageWrapper, D as DocsTable, a as DocsCardGrid } from './index-
|
|
5
|
+
import { T as TechDocsPageWrapper, D as DocsTable, a as DocsCardGrid } from './index-148b0cb6.esm.js';
|
|
6
6
|
import { Content, Progress, WarningPanel, CodeSnippet, HeaderTabs, ContentHeader, SupportButton } from '@backstage/core-components';
|
|
7
7
|
import { useApi } from '@backstage/core-plugin-api';
|
|
8
8
|
import '@backstage/errors';
|
|
@@ -10,8 +10,8 @@ import 'event-source-polyfill';
|
|
|
10
10
|
import 'react-router-dom';
|
|
11
11
|
import '@backstage/plugin-techdocs-react';
|
|
12
12
|
import 'react-use/lib/useAsyncRetry';
|
|
13
|
-
import '@material-ui/core/Typography';
|
|
14
13
|
import '@backstage/plugin-search-react';
|
|
14
|
+
import '@material-ui/core/Typography';
|
|
15
15
|
import '@material-ui/lab';
|
|
16
16
|
import '@material-ui/icons/Close';
|
|
17
17
|
import '@backstage/integration-react';
|
|
@@ -125,4 +125,4 @@ const TechDocsCustomHome = (props) => {
|
|
|
125
125
|
};
|
|
126
126
|
|
|
127
127
|
export { TechDocsCustomHome };
|
|
128
|
-
//# sourceMappingURL=TechDocsCustomHome-
|
|
128
|
+
//# sourceMappingURL=TechDocsCustomHome-57d31b31.esm.js.map
|
package/dist/esm/{TechDocsCustomHome-a8048941.esm.js.map → TechDocsCustomHome-57d31b31.esm.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TechDocsCustomHome-
|
|
1
|
+
{"version":3,"file":"TechDocsCustomHome-57d31b31.esm.js","sources":["../../src/home/components/TechDocsCustomHome.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, { useState } from 'react';\nimport useAsync from 'react-use/lib/useAsync';\nimport { makeStyles } from '@material-ui/core';\nimport { CSSProperties } from '@material-ui/styles';\nimport {\n CATALOG_FILTER_EXISTS,\n catalogApiRef,\n CatalogApi,\n useEntityOwnership,\n} from '@backstage/plugin-catalog-react';\nimport { Entity } from '@backstage/catalog-model';\nimport { DocsTable } from './Tables';\nimport { DocsCardGrid } from './Grids';\nimport { TechDocsPageWrapper } from './TechDocsPageWrapper';\n\nimport {\n CodeSnippet,\n Content,\n HeaderTabs,\n Progress,\n WarningPanel,\n SupportButton,\n ContentHeader,\n} from '@backstage/core-components';\nimport { useApi } from '@backstage/core-plugin-api';\n\nconst panels = {\n DocsTable: DocsTable,\n DocsCardGrid: DocsCardGrid,\n};\n\n/**\n * Available panel types\n *\n * @public\n */\nexport type PanelType = 'DocsCardGrid' | 'DocsTable';\n\n/**\n * Type representing a TechDocsCustomHome panel.\n *\n * @public\n */\nexport interface PanelConfig {\n title: string;\n description: string;\n panelType: PanelType;\n panelCSS?: CSSProperties;\n filterPredicate: ((entity: Entity) => boolean) | string;\n}\n\n/**\n * Type representing a TechDocsCustomHome tab.\n *\n * @public\n */\nexport interface TabConfig {\n label: string;\n panels: PanelConfig[];\n}\n\n/**\n * Type representing a list of TechDocsCustomHome tabs.\n *\n * @public\n */\nexport type TabsConfig = TabConfig[];\n\nconst CustomPanel = ({\n config,\n entities,\n index,\n}: {\n config: PanelConfig;\n entities: Entity[];\n index: number;\n}) => {\n const useStyles = makeStyles({\n panelContainer: {\n marginBottom: '2rem',\n ...(config.panelCSS ? config.panelCSS : {}),\n },\n });\n const classes = useStyles();\n const { loading: loadingOwnership, isOwnedEntity } = useEntityOwnership();\n\n const Panel = panels[config.panelType];\n\n const shownEntities = entities.filter(entity => {\n if (config.filterPredicate === 'ownedByUser') {\n if (loadingOwnership) {\n return false;\n }\n return isOwnedEntity(entity);\n }\n\n return (\n typeof config.filterPredicate === 'function' &&\n config.filterPredicate(entity)\n );\n });\n\n return (\n <>\n <ContentHeader title={config.title} description={config.description}>\n {index === 0 ? (\n <SupportButton>\n Discover documentation in your ecosystem.\n </SupportButton>\n ) : null}\n </ContentHeader>\n <div className={classes.panelContainer}>\n <Panel data-testid=\"techdocs-custom-panel\" entities={shownEntities} />\n </div>\n </>\n );\n};\n\n/**\n * Props for {@link TechDocsCustomHome}\n *\n * @public\n */\nexport type TechDocsCustomHomeProps = {\n tabsConfig: TabsConfig;\n};\n\nexport const TechDocsCustomHome = (props: TechDocsCustomHomeProps) => {\n const { tabsConfig } = props;\n const [selectedTab, setSelectedTab] = useState<number>(0);\n const catalogApi: CatalogApi = useApi(catalogApiRef);\n\n const {\n value: entities,\n loading,\n error,\n } = useAsync(async () => {\n const response = await catalogApi.getEntities({\n filter: {\n 'metadata.annotations.backstage.io/techdocs-ref': CATALOG_FILTER_EXISTS,\n },\n fields: [\n 'apiVersion',\n 'kind',\n 'metadata',\n 'relations',\n 'spec.owner',\n 'spec.type',\n ],\n });\n return response.items.filter((entity: Entity) => {\n return !!entity.metadata.annotations?.['backstage.io/techdocs-ref'];\n });\n });\n\n const currentTabConfig = tabsConfig[selectedTab];\n\n if (loading) {\n return (\n <TechDocsPageWrapper>\n <Content>\n <Progress />\n </Content>\n </TechDocsPageWrapper>\n );\n }\n\n if (error) {\n return (\n <TechDocsPageWrapper>\n <Content>\n <WarningPanel\n severity=\"error\"\n title=\"Could not load available documentation.\"\n >\n <CodeSnippet language=\"text\" text={error.toString()} />\n </WarningPanel>\n </Content>\n </TechDocsPageWrapper>\n );\n }\n\n return (\n <TechDocsPageWrapper>\n <HeaderTabs\n selectedIndex={selectedTab}\n onChange={index => setSelectedTab(index)}\n tabs={tabsConfig.map(({ label }, index) => ({\n id: index.toString(),\n label,\n }))}\n />\n <Content data-testid=\"techdocs-content\">\n {currentTabConfig.panels.map((config, index) => (\n <CustomPanel\n key={index}\n config={config}\n entities={!!entities ? entities : []}\n index={index}\n />\n ))}\n </Content>\n </TechDocsPageWrapper>\n );\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createApiRef, useApi,
|
|
1
|
+
import { createApiRef, useApi, configApiRef, useAnalytics, createRouteRef, useRouteRef, useRouteRefParams, getComponentData, createPlugin, createApiFactory, discoveryApiRef, identityApiRef, fetchApiRef, createRoutableExtension } from '@backstage/core-plugin-api';
|
|
2
2
|
import { ResponseError, NotFoundError } from '@backstage/errors';
|
|
3
3
|
import { EventSourcePolyfill } from 'event-source-polyfill';
|
|
4
4
|
import React, { useReducer, useRef, useMemo, createContext, useContext, useState, useEffect, useCallback, Children } from 'react';
|
|
@@ -8,8 +8,8 @@ import useAsync from 'react-use/lib/useAsync';
|
|
|
8
8
|
import useAsyncRetry from 'react-use/lib/useAsyncRetry';
|
|
9
9
|
import { Link, LogViewer, ErrorPage, useSidebarPinState, Content, HeaderLabel, Header, Page, ItemCardGrid, ItemCardHeader, Button as Button$2, WarningPanel, CodeSnippet, Progress, ContentHeader, SubvalueCell, Table, EmptyState, PageWithHeader, SupportButton, MissingAnnotationEmptyState } from '@backstage/core-components';
|
|
10
10
|
import { makeStyles, ListItemText, ListItem, ListItemIcon, Divider, Paper, createStyles, Button, Drawer, Grid, Typography as Typography$1, IconButton, CircularProgress, lighten, alpha, useTheme, withStyles, Tooltip, ThemeProvider, SvgIcon, useMediaQuery, Portal, Toolbar, Box, Menu, Card, CardMedia, CardContent, CardActions } from '@material-ui/core';
|
|
11
|
+
import { HighlightedSearchResultText, SearchContextProvider, useSearch, SearchAutocomplete, createSearchResultListItemExtension } from '@backstage/plugin-search-react';
|
|
11
12
|
import Typography from '@material-ui/core/Typography';
|
|
12
|
-
import { HighlightedSearchResultText, SearchContextProvider, useSearch, SearchAutocomplete } from '@backstage/plugin-search-react';
|
|
13
13
|
import { Alert, Skeleton } from '@material-ui/lab';
|
|
14
14
|
import Close from '@material-ui/icons/Close';
|
|
15
15
|
import { scmIntegrationsApiRef } from '@backstage/integration-react';
|
|
@@ -364,11 +364,10 @@ const useStyles$4 = makeStyles({
|
|
|
364
364
|
marginBottom: "1rem"
|
|
365
365
|
}
|
|
366
366
|
});
|
|
367
|
-
const TechDocsSearchResultListItem = (props) => {
|
|
367
|
+
const TechDocsSearchResultListItem$1 = (props) => {
|
|
368
368
|
const {
|
|
369
369
|
result,
|
|
370
370
|
highlight,
|
|
371
|
-
rank,
|
|
372
371
|
lineClamp = 5,
|
|
373
372
|
asListItem = true,
|
|
374
373
|
asLink = true,
|
|
@@ -376,14 +375,7 @@ const TechDocsSearchResultListItem = (props) => {
|
|
|
376
375
|
icon
|
|
377
376
|
} = props;
|
|
378
377
|
const classes = useStyles$4();
|
|
379
|
-
const
|
|
380
|
-
const handleClick = () => {
|
|
381
|
-
analytics.captureEvent("discover", result.title, {
|
|
382
|
-
attributes: { to: result.location },
|
|
383
|
-
value: rank
|
|
384
|
-
});
|
|
385
|
-
};
|
|
386
|
-
const LinkWrapper = ({ children }) => asLink ? /* @__PURE__ */ React.createElement(Link, { noTrack: true, to: result.location, onClick: handleClick }, children) : /* @__PURE__ */ React.createElement(React.Fragment, null, children);
|
|
378
|
+
const LinkWrapper = ({ children }) => asLink ? /* @__PURE__ */ React.createElement(Link, { noTrack: true, to: result.location }, children) : /* @__PURE__ */ React.createElement(React.Fragment, null, children);
|
|
387
379
|
const TextItem = () => {
|
|
388
380
|
const resultTitle = (highlight == null ? void 0 : highlight.fields.title) ? /* @__PURE__ */ React.createElement(
|
|
389
381
|
HighlightedSearchResultText,
|
|
@@ -409,6 +401,8 @@ const TechDocsSearchResultListItem = (props) => {
|
|
|
409
401
|
postTag: highlight.postTag
|
|
410
402
|
}
|
|
411
403
|
) : result.name;
|
|
404
|
+
if (!result)
|
|
405
|
+
return null;
|
|
412
406
|
return /* @__PURE__ */ React.createElement(
|
|
413
407
|
ListItemText,
|
|
414
408
|
{
|
|
@@ -442,6 +436,11 @@ const TechDocsSearchResultListItem = (props) => {
|
|
|
442
436
|
return /* @__PURE__ */ React.createElement(ListItemWrapper, null, /* @__PURE__ */ React.createElement(TextItem, null));
|
|
443
437
|
};
|
|
444
438
|
|
|
439
|
+
var TechDocsSearchResultListItem$2 = /*#__PURE__*/Object.freeze({
|
|
440
|
+
__proto__: null,
|
|
441
|
+
TechDocsSearchResultListItem: TechDocsSearchResultListItem$1
|
|
442
|
+
});
|
|
443
|
+
|
|
445
444
|
const useStyles$3 = makeStyles((theme) => ({
|
|
446
445
|
root: {
|
|
447
446
|
width: "100%"
|
|
@@ -513,7 +512,7 @@ const TechDocsSearchBar = (props) => {
|
|
|
513
512
|
value: null,
|
|
514
513
|
options,
|
|
515
514
|
renderOption: ({ document, highlight }) => /* @__PURE__ */ React.createElement(
|
|
516
|
-
TechDocsSearchResultListItem,
|
|
515
|
+
TechDocsSearchResultListItem$1,
|
|
517
516
|
{
|
|
518
517
|
result: document,
|
|
519
518
|
lineClamp: 3,
|
|
@@ -1013,7 +1012,13 @@ var layout = ({ theme, sidebar }) => `
|
|
|
1013
1012
|
.md-footer {
|
|
1014
1013
|
position: fixed;
|
|
1015
1014
|
bottom: 0px;
|
|
1015
|
+
pointer-events: none;
|
|
1016
1016
|
}
|
|
1017
|
+
|
|
1018
|
+
.md-footer-nav__link {
|
|
1019
|
+
pointer-events: all;
|
|
1020
|
+
}
|
|
1021
|
+
|
|
1017
1022
|
.md-footer__title {
|
|
1018
1023
|
background-color: unset;
|
|
1019
1024
|
}
|
|
@@ -1581,13 +1586,20 @@ const onCssReady = ({
|
|
|
1581
1586
|
|
|
1582
1587
|
const scrollIntoAnchor = () => {
|
|
1583
1588
|
return (dom) => {
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
(
|
|
1589
|
+
dom.addEventListener(
|
|
1590
|
+
SHADOW_DOM_STYLE_LOAD_EVENT,
|
|
1591
|
+
function handleShadowDomStyleLoad() {
|
|
1592
|
+
var _a;
|
|
1593
|
+
if (window.location.hash) {
|
|
1594
|
+
const hash = window.location.hash.slice(1);
|
|
1595
|
+
(_a = dom == null ? void 0 : dom.querySelector(`[id="${hash}"]`)) == null ? void 0 : _a.scrollIntoView();
|
|
1596
|
+
}
|
|
1597
|
+
dom.removeEventListener(
|
|
1598
|
+
SHADOW_DOM_STYLE_LOAD_EVENT,
|
|
1599
|
+
handleShadowDomStyleLoad
|
|
1600
|
+
);
|
|
1589
1601
|
}
|
|
1590
|
-
|
|
1602
|
+
);
|
|
1591
1603
|
return dom;
|
|
1592
1604
|
};
|
|
1593
1605
|
};
|
|
@@ -2244,7 +2256,7 @@ const columnFactories = {
|
|
|
2244
2256
|
};
|
|
2245
2257
|
|
|
2246
2258
|
const DocsTable = (props) => {
|
|
2247
|
-
const { entities, title, loading, columns, actions } = props;
|
|
2259
|
+
const { entities, title, loading, columns, actions, options } = props;
|
|
2248
2260
|
const [, copyToClipboard] = useCopyToClipboard();
|
|
2249
2261
|
const getRouteToReaderPageFor = useRouteRef(rootDocsRouteRef);
|
|
2250
2262
|
const config = useApi(configApiRef);
|
|
@@ -2285,7 +2297,8 @@ const DocsTable = (props) => {
|
|
|
2285
2297
|
paging: true,
|
|
2286
2298
|
pageSize: 20,
|
|
2287
2299
|
search: true,
|
|
2288
|
-
actionsColumnIndex: -1
|
|
2300
|
+
actionsColumnIndex: -1,
|
|
2301
|
+
...options
|
|
2289
2302
|
},
|
|
2290
2303
|
data: documents,
|
|
2291
2304
|
columns: columns || defaultColumns,
|
|
@@ -2315,7 +2328,7 @@ DocsTable.actions = actionFactories;
|
|
|
2315
2328
|
|
|
2316
2329
|
const EntityListDocsTable = (props) => {
|
|
2317
2330
|
var _a, _b;
|
|
2318
|
-
const { columns, actions } = props;
|
|
2331
|
+
const { columns, actions, options } = props;
|
|
2319
2332
|
const { loading, error, entities, filters } = useEntityList();
|
|
2320
2333
|
const { isStarredEntity, toggleStarredEntity } = useStarredEntities();
|
|
2321
2334
|
const [, copyToClipboard] = useCopyToClipboard();
|
|
@@ -2344,7 +2357,8 @@ const EntityListDocsTable = (props) => {
|
|
|
2344
2357
|
entities,
|
|
2345
2358
|
loading,
|
|
2346
2359
|
actions: actions || defaultActions,
|
|
2347
|
-
columns
|
|
2360
|
+
columns,
|
|
2361
|
+
options
|
|
2348
2362
|
}
|
|
2349
2363
|
);
|
|
2350
2364
|
};
|
|
@@ -2444,7 +2458,7 @@ const EntityTechdocsContent = techdocsPlugin.provide(
|
|
|
2444
2458
|
const TechDocsCustomHome = techdocsPlugin.provide(
|
|
2445
2459
|
createRoutableExtension({
|
|
2446
2460
|
name: "TechDocsCustomHome",
|
|
2447
|
-
component: () => import('./TechDocsCustomHome-
|
|
2461
|
+
component: () => import('./TechDocsCustomHome-57d31b31.esm.js').then(
|
|
2448
2462
|
(m) => m.TechDocsCustomHome
|
|
2449
2463
|
),
|
|
2450
2464
|
mountPoint: rootRouteRef
|
|
@@ -2462,12 +2476,21 @@ const TechDocsIndexPage$2 = techdocsPlugin.provide(
|
|
|
2462
2476
|
const TechDocsReaderPage = techdocsPlugin.provide(
|
|
2463
2477
|
createRoutableExtension({
|
|
2464
2478
|
name: "TechDocsReaderPage",
|
|
2465
|
-
component: () => import('./index-
|
|
2479
|
+
component: () => import('./index-a5e9c1eb.esm.js').then(
|
|
2466
2480
|
(m) => m.TechDocsReaderPage
|
|
2467
2481
|
),
|
|
2468
2482
|
mountPoint: rootDocsRouteRef
|
|
2469
2483
|
})
|
|
2470
2484
|
);
|
|
2485
|
+
const TechDocsSearchResultListItem = techdocsPlugin.provide(
|
|
2486
|
+
createSearchResultListItemExtension({
|
|
2487
|
+
name: "TechDocsSearchResultListItem",
|
|
2488
|
+
component: () => Promise.resolve().then(function () { return TechDocsSearchResultListItem$2; }).then(
|
|
2489
|
+
(m) => m.TechDocsSearchResultListItem
|
|
2490
|
+
),
|
|
2491
|
+
predicate: (result) => result.type === "techdocs"
|
|
2492
|
+
})
|
|
2493
|
+
);
|
|
2471
2494
|
|
|
2472
2495
|
const EntityPageDocs = ({ entity }) => {
|
|
2473
2496
|
const entityRef = getCompoundEntityRef(entity);
|
|
@@ -2528,5 +2551,5 @@ var Router$1 = /*#__PURE__*/Object.freeze({
|
|
|
2528
2551
|
EmbeddedDocsRouter: EmbeddedDocsRouter
|
|
2529
2552
|
});
|
|
2530
2553
|
|
|
2531
|
-
export { DocsTable as D, EntityTechdocsContent as E, Reader as R, TechDocsPageWrapper as T, DocsCardGrid as a, TechDocsReaderPage$1 as b, TechDocsReaderLayout as c, TechDocsCustomHome as d, TechDocsIndexPage$2 as e, TechdocsPage as f, TechDocsReaderPage as g,
|
|
2532
|
-
//# sourceMappingURL=index-
|
|
2554
|
+
export { DocsTable as D, EntityTechdocsContent as E, Reader as R, TechDocsPageWrapper as T, DocsCardGrid as a, TechDocsReaderPage$1 as b, TechDocsReaderLayout as c, TechDocsCustomHome as d, TechDocsIndexPage$2 as e, TechdocsPage as f, TechDocsReaderPage as g, TechDocsSearchResultListItem as h, techdocsStorageApiRef as i, techdocsApiRef as j, TechDocsClient as k, TechDocsStorageClient as l, TechDocsReaderProvider as m, TechDocsReaderPageHeader as n, TechDocsReaderPageContent as o, TechDocsReaderPageSubheader as p, TechDocsSearch as q, EntityListDocsGrid as r, EntityListDocsTable as s, techdocsPlugin as t, DefaultTechDocsHome as u, TechDocsPicker as v, isTechDocsAvailable as w, Router as x, EmbeddedDocsRouter as y };
|
|
2555
|
+
//# sourceMappingURL=index-148b0cb6.esm.js.map
|