@xyo-network/react-typedoc 2.64.0 → 2.64.2

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 (58) hide show
  1. package/dist/browser/CommentViewer.js +3 -2
  2. package/dist/browser/CommentViewer.js.map +1 -1
  3. package/dist/browser/JsonViewerButton.js +4 -3
  4. package/dist/browser/JsonViewerButton.js.map +1 -1
  5. package/dist/browser/ProjectTwoPanelReflectionViewer.js +513 -5
  6. package/dist/browser/ProjectTwoPanelReflectionViewer.js.map +1 -1
  7. package/dist/browser/ReflectionViewer/Container.js +294 -7
  8. package/dist/browser/ReflectionViewer/Container.js.map +1 -1
  9. package/dist/browser/ReflectionViewer/Declaration.js +208 -7
  10. package/dist/browser/ReflectionViewer/Declaration.js.map +1 -1
  11. package/dist/browser/ReflectionViewer/DeclarationContainer.js +355 -6
  12. package/dist/browser/ReflectionViewer/DeclarationContainer.js.map +1 -1
  13. package/dist/browser/ReflectionViewer/NameViewer.js +157 -15
  14. package/dist/browser/ReflectionViewer/NameViewer.js.map +1 -1
  15. package/dist/browser/ReflectionViewer/Project.js +296 -7
  16. package/dist/browser/ReflectionViewer/Project.js.map +1 -1
  17. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.js +237 -17
  18. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.js.map +1 -1
  19. package/dist/browser/ReflectionViewer/ReflectionViewer.js +185 -9
  20. package/dist/browser/ReflectionViewer/ReflectionViewer.js.map +1 -1
  21. package/dist/browser/ReflectionViewer/SomeTypeViewer/SomeTypeViewer.js +107 -5
  22. package/dist/browser/ReflectionViewer/SomeTypeViewer/SomeTypeViewer.js.map +1 -1
  23. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildArrayString.js +2 -1
  24. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildArrayString.js.map +1 -1
  25. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildIntersectionString.js +2 -1
  26. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildIntersectionString.js.map +1 -1
  27. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildReferenceString.js +2 -1
  28. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildReferenceString.js.map +1 -1
  29. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildReflectionString.js +2 -1
  30. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildReflectionString.js.map +1 -1
  31. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildTypeString.js +63 -6
  32. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildTypeString.js.map +1 -1
  33. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildUnionString.js +2 -1
  34. package/dist/browser/ReflectionViewer/SomeTypeViewer/buildUnionString.js.map +1 -1
  35. package/dist/browser/ReflectionViewer/SomeTypeViewer/index.js +115 -1
  36. package/dist/browser/ReflectionViewer/SomeTypeViewer/index.js.map +1 -1
  37. package/dist/browser/ReflectionViewer/index.js +412 -8
  38. package/dist/browser/ReflectionViewer/index.js.map +1 -1
  39. package/dist/browser/SourceViewer.js +3 -2
  40. package/dist/browser/SourceViewer.js.map +1 -1
  41. package/dist/browser/TreeViewer/Reflection.js +3 -2
  42. package/dist/browser/TreeViewer/Reflection.js.map +1 -1
  43. package/dist/browser/TreeViewer/ReflectionGroup.js +231 -11
  44. package/dist/browser/TreeViewer/ReflectionGroup.js.map +1 -1
  45. package/dist/browser/TreeViewer/index.js +299 -2
  46. package/dist/browser/TreeViewer/index.js.map +1 -1
  47. package/dist/browser/TwoPanelReflectionViewer.js +344 -18
  48. package/dist/browser/TwoPanelReflectionViewer.js.map +1 -1
  49. package/dist/browser/createLookup.js +2 -1
  50. package/dist/browser/createLookup.js.map +1 -1
  51. package/dist/browser/index.js +611 -9
  52. package/dist/browser/index.js.map +1 -1
  53. package/dist/browser/resolveChildren.js +2 -1
  54. package/dist/browser/resolveChildren.js.map +1 -1
  55. package/dist/browser/trimFlagLabel.js +2 -1
  56. package/dist/browser/trimFlagLabel.js.map +1 -1
  57. package/dist/docs.json +72 -72
  58. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/TreeViewer/index.ts"],"sourcesContent":["export * from './Reflection'\nexport * from './ReflectionGroup'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/TreeViewer/Reflection.tsx","../../../src/TreeViewer/ReflectionGroup.tsx","../../../src/JsonViewerButton.tsx","../../../src/resolveChildren.ts","../../../src/ReflectionViewer/ReflectionViewer.tsx","../../../src/CommentViewer.tsx","../../../src/ReflectionViewer/NameViewer.tsx","../../../src/trimFlagLabel.ts","../../../src/ReflectionViewer/SomeTypeViewer/SomeTypeViewer.tsx","../../../src/ReflectionViewer/SomeTypeViewer/buildArrayString.tsx","../../../src/ReflectionViewer/SomeTypeViewer/buildIntersectionString.tsx","../../../src/ReflectionViewer/SomeTypeViewer/buildReferenceString.ts","../../../src/ReflectionViewer/SomeTypeViewer/buildReflectionString.tsx","../../../src/ReflectionViewer/SomeTypeViewer/buildUnionString.tsx","../../../src/ReflectionViewer/SomeTypeViewer/buildTypeString.tsx"],"sourcesContent":["import { Add, Remove } from '@mui/icons-material'\nimport { Typography } from '@mui/material'\nimport { TreeItem, TreeView } from '@mui/x-tree-view'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { useNavigate } from 'react-router-dom'\nimport type { ContainerReflection, Reflection } from 'typedoc'\n\nimport { ReflectionLookup } from '../ReflectionLookup'\nimport { FlagFilter } from '../ReflectionViewer'\n\nexport interface ReflectionTreeViewerProps<T extends Reflection = ContainerReflection> extends FlexBoxProps {\n hiddenFlags?: FlagFilter[]\n lookup?: ReflectionLookup\n reflection: T\n searchTerm?: string\n}\n\nexport const ReflectionTreeViewer: React.FC<ReflectionTreeViewerProps> = ({ lookup, reflection, searchTerm, ...props }) => {\n const navigate = useNavigate()\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n {/* TODO - move this into a title component */}\n {/*{nameViewer === undefined ? <NameViewer variant={variant} reflection={reflection} /> : nameViewer}*/}\n {/*{reflection.comment ? <CommentViewer comment={reflection.comment} /> : null}*/}\n {/*{reflection.sources ? (*/}\n {/* <>*/}\n {/* {reflection.sources.map((source, index) => {*/}\n {/* return <SourceViewer key={index} source={source} />*/}\n {/* })}*/}\n {/* </>*/}\n {/*) : null}*/}\n {/* TODO - when searching do not include categories that dont have children, pull maps out of view */}\n <TreeView\n aria-label=\"XYO SDK Documentation\"\n defaultExpandIcon={<Add />}\n defaultCollapseIcon={<Remove />}\n defaultExpanded={reflection.groups ? [reflection.groups[0].title] : []}\n >\n {reflection.groups?.map((group, index) => (\n <TreeItem key={`primary-${index}`} nodeId={group.title} label={<Typography variant=\"h6\">{group.title}</Typography>}>\n {group.children.map((child, jndex) => {\n const searchTermTrimmed = searchTerm?.trim().toLowerCase()\n const childReflection = typeof child === 'number' ? lookup?.[child as number] : child\n return childReflection && (!searchTermTrimmed || childReflection.name.toLowerCase().indexOf(searchTermTrimmed) !== -1) ? (\n <TreeItem\n key={`secondary-${index}- ${jndex}`}\n nodeId={`declaration-${childReflection?.id}`}\n label={childReflection.name}\n onClick={() => {\n const hash = `#${childReflection.name}`\n navigate({ hash })\n document.querySelector(hash)?.scrollIntoView({ behavior: 'smooth' })\n }}\n />\n ) : null\n })}\n </TreeItem>\n ))}\n </TreeView>\n </FlexCol>\n )\n}\n","import { Typography } from '@mui/material'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\n\nimport { JsonViewerButton } from '../JsonViewerButton'\nimport { ReflectionGroupViewerProps, ReflectionViewer } from '../ReflectionViewer'\nimport { resolveChildren } from '../resolveChildren'\n\nexport const ReflectionGroupTreeViewer: React.FC<ReflectionGroupViewerProps> = ({\n variant,\n group,\n children,\n lookup,\n renderer = ReflectionViewer,\n ...props\n}) => {\n return (\n <FlexCol {...props}>\n <FlexRow marginY={1} justifyContent=\"flex-start\">\n <Typography variant={variant}>{group.title}</Typography>\n <JsonViewerButton\n jsonViewProps={{ collapsed: 1 }}\n size=\"small\"\n variant=\"contained\"\n padding={0}\n marginX={1}\n src={resolveChildren(group, lookup)}\n />\n </FlexRow>\n {resolveChildren(group, lookup).map((reflection) => {\n return reflection ? (\n // I wrap this in a div since React does not understand that they have keys using the Renderer\n <div key={reflection.id}>{renderer({ lookup, margin: 1, reflection })}</div>\n ) : null\n })}\n {children}\n </FlexCol>\n )\n}\n","import { Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { lazy, Suspense, useState } from 'react'\nimport { ReactJsonViewProps } from 'react-json-view'\n\nconst JsonView = lazy(() => import(/* webpackChunkName: \"jsonView\" */ 'react-json-view'))\n\nexport interface JsonViewerButtonProps extends ButtonExProps {\n jsonViewProps?: Partial<ReactJsonViewProps>\n src: object\n}\n\nexport const JsonViewerButton: React.FC<JsonViewerButtonProps> = ({ jsonViewProps, src, title, ...props }) => {\n const [open, setOpen] = useState(false)\n return (\n <>\n <ButtonEx onClick={() => setOpen(!open)} {...props}>\n JSON\n </ButtonEx>\n <Dialog open={open} onClose={() => setOpen(false)}>\n {title ? <DialogTitle>{title}</DialogTitle> : null}\n <DialogContent>\n <Suspense fallback={<div />}>\n <JsonView src={src} {...jsonViewProps} />\n </Suspense>\n </DialogContent>\n <DialogActions>\n <ButtonEx onClick={() => setOpen(false)}>Close</ButtonEx>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n","import type { Reflection } from 'typedoc'\n\nimport { ReflectionLookup } from './ReflectionLookup'\nimport { SomeReflection } from './SomeReflection'\n\ntype ReflectionWithChildren = { children: Reflection[] }\n\nexport const resolveChildren = <T extends SomeReflection>(reflection: ReflectionWithChildren, lookup: ReflectionLookup = {}): T[] => {\n return (reflection.children?.map((child) => {\n switch (typeof child) {\n case 'object':\n return child\n case 'number': {\n const childObj = lookup[child]\n if (childObj === undefined) {\n throw Error(`Child Reference Not Found [${child}]`)\n }\n return childObj\n }\n default:\n throw Error(`Invalid Child Type [${typeof child}, ${child}]`)\n }\n }) ?? []) as T[]\n}\n","import { FlexCol } from '@xylabs/react-flexbox'\nimport type { ReflectionFlags } from 'typedoc'\n\nimport { CommentViewer } from '../CommentViewer'\nimport { SomeReflection } from '../SomeReflection'\nimport { NameViewer } from './NameViewer'\nimport { FlagFilter, ReflectionViewerProps } from './ReflectionViewerProps'\n\nconst hide = (flags?: ReflectionFlags, hiddenFlags: FlagFilter[] = []) => {\n let hide = false\n hiddenFlags.map((hiddenFlag) => {\n if (flags?.[hiddenFlag]) {\n hide = true\n }\n })\n return hide\n}\n\nexport const ReflectionViewer: React.FC<ReflectionViewerProps> = ({ variant, nameViewer, children, reflection, hiddenFlags, ...props }) => {\n const someReflection = reflection as SomeReflection\n\n return hide(reflection?.flags, hiddenFlags) ? null : (\n <FlexCol title=\"ReflectionViewer\" alignItems=\"stretch\" {...props}>\n {nameViewer === undefined ? (\n <NameViewer marginY={0.25} variant={variant} reflection={someReflection} reflectionViewer={ReflectionViewer} />\n ) : (\n nameViewer\n )}\n {reflection.comment ? <CommentViewer comment={reflection.comment} /> : null}\n {/*sources && reflection.sources && children ? (\n <>\n {reflection.sources.map((source, index) => {\n return <SourceViewer key={index} source={source} />\n })}\n </>\n ) : null*/}\n {someReflection.parameters?.map((parameter) => {\n return <ReflectionViewer hiddenFlags={hiddenFlags} marginY={0.25} marginX={1} key={parameter.id} reflection={parameter} />\n }) ?? null}\n {children}\n </FlexCol>\n )\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport type { Comment } from 'typedoc'\n\nexport interface CommentViewerProps extends FlexBoxProps {\n comment: Comment\n}\n\nexport const CommentViewer: React.FC<CommentViewerProps> = ({ comment, ...props }) => {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n <Typography variant=\"body2\">{comment.summary[0]?.text}</Typography>\n </FlexCol>\n )\n}\n","import { Chip, Stack, Typography, TypographyVariant } from '@mui/material'\nimport { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'\n\nimport { JsonViewerButton } from '../JsonViewerButton'\nimport { SomeReflection } from '../SomeReflection'\nimport { trimFlagLabel } from '../trimFlagLabel'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\nimport { SomeTypeViewer } from './SomeTypeViewer'\n\nexport interface NameViewerProps extends FlexBoxProps {\n reflection: SomeReflection\n reflectionViewer: React.FC<ReflectionViewerProps>\n variant?: TypographyVariant\n}\n\nexport const NameViewer: React.FC<NameViewerProps> = ({ reflectionViewer, variant, reflection, ...props }) => {\n return (\n <FlexRow justifyContent=\"flex-start\" {...props}>\n <FlexRow marginRight={1}>\n <Typography variant={variant} noWrap>\n {reflection.name}\n {reflection.type ? <>:&nbsp;</> : null}\n </Typography>\n <SomeTypeViewer reflection={reflection} reflectionViewer={reflectionViewer} />\n </FlexRow>\n <Stack direction=\"row\" spacing={1}>\n <Chip size=\"small\" label={reflection.kind} />\n {reflection.flags\n ? Object.entries(reflection.flags).map(([flag, value]) => {\n return value ? <Chip size=\"small\" key={flag} label={trimFlagLabel(flag)} variant=\"outlined\" /> : null\n })\n : null}\n </Stack>\n {document && document?.location.hostname === 'localhost' && (\n <JsonViewerButton jsonViewProps={{ collapsed: 1 }} size=\"small\" variant=\"contained\" padding={0} marginX={1} src={reflection} />\n )}\n </FlexRow>\n )\n}\n","export const trimFlagLabel = (label: string) => {\n if (label.startsWith('is')) {\n return label.substring(2)\n }\n return label\n}\n","import { Typography, TypographyProps } from '@mui/material'\n\nimport { SomeReflection } from '../../SomeReflection'\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { buildTypeString } from './buildTypeString'\n\nexport interface SomeTypeViewerProps extends TypographyProps {\n opacity?: number\n reflection: SomeReflection\n reflectionViewer: React.FC<ReflectionViewerProps>\n}\n\nexport const SomeTypeViewer: React.FC<SomeTypeViewerProps> = ({ opacity = 0.5, reflection, reflectionViewer, ...props }) => {\n const typeReactNode = reflection.type ? buildTypeString(reflection.type, reflectionViewer) : ''\n if (typeof typeReactNode === 'string') {\n return (\n <Typography title=\"SomeTypeViewer\" style={{ opacity }} {...props}>\n {typeReactNode}\n </Typography>\n )\n }\n return <>{typeReactNode}</>\n}\n","import type { ArrayType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildArrayString = (typeObj: ArrayType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n const typeString = typeBuilder(typeObj.elementType, reflectionViewer)\n if (typeof typeString === 'string') {\n parts.push(typeString)\n }\n parts.push('[]')\n return parts\n}\n","import type { IntersectionType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildIntersectionString = (typeObj: IntersectionType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n if (typeObj.types) {\n parts.push(\n typeObj.types\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(' & '),\n )\n }\n return parts\n}\n","import type { ReferenceType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildReferenceString = (typeObj: ReferenceType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n parts.push(typeObj.name)\n if (typeObj.typeArguments) {\n parts.push('<')\n parts.push(\n typeObj.typeArguments\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(', '),\n )\n parts.push('>')\n }\n return parts\n}\n","import type { ReflectionType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\n\nexport const buildRelfectionString = (typeObj: ReflectionType, reflectionViewer: React.FC<ReflectionViewerProps>) => {\n if (typeObj.declaration) {\n return <>{reflectionViewer({ reflection: typeObj.declaration })}</>\n }\n}\n","import type { UnionType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildUnionString = (typeObj: UnionType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n if (typeObj.types) {\n parts.push(\n typeObj.types\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(' | '),\n )\n }\n return parts\n}\n","import { ReactNode } from 'react'\nimport type { SomeType, Type } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { buildArrayString } from './buildArrayString'\nimport { buildIntersectionString } from './buildIntersectionString'\nimport { buildReferenceString } from './buildReferenceString'\nimport { buildRelfectionString } from './buildReflectionString'\nimport { buildUnionString } from './buildUnionString'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildTypeString: TypeBuilder = (type: SomeType | Type, reflectionViewer: React.FC<ReflectionViewerProps>): ReactNode => {\n const someType = type as SomeType\n const parts: string[] = []\n\n switch (someType.type) {\n case 'intrinsic':\n parts.push(someType.name)\n break\n case 'intersection': {\n parts.push(...buildIntersectionString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'literal':\n parts.push(JSON.stringify(someType.value))\n break\n case 'array': {\n parts.push(...buildArrayString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'reference': {\n parts.push(...buildReferenceString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'union': {\n parts.push(...buildUnionString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'reflection': {\n return buildRelfectionString(someType, reflectionViewer)\n }\n default:\n parts.push('#')\n parts.push(someType.type)\n parts.push('#')\n break\n }\n return parts.join('')\n}\n"],"mappings":"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","names":["Typography","FlexCol","FlexRow","jsx","FlexCol","Typography","FlexCol","jsx","Typography","Typography","Fragment","jsx","Fragment","jsx","Typography","Fragment","jsx","jsxs","Typography","jsx","jsxs","hide","FlexCol","jsx","jsxs","FlexCol","FlexRow","Typography"]}
@@ -1,12 +1,338 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
1
+ // src/TwoPanelReflectionViewer.tsx
2
2
  import { Search } from "@mui/icons-material";
3
3
  import { TextField, useTheme } from "@mui/material";
4
- import { FlexCol, FlexGrowCol, FlexRow } from "@xylabs/react-flexbox";
5
- import { useMemo, useState } from "react";
6
- import { createLookup } from "./createLookup";
7
- import { ReflectionGroupViewer, ReflectionViewer } from "./ReflectionViewer";
8
- import { ReflectionTreeViewer } from "./TreeViewer";
9
- const TwoPanelReflectionViewer = ({
4
+ import { FlexCol as FlexCol5, FlexGrowCol, FlexRow as FlexRow3 } from "@xylabs/react-flexbox";
5
+ import { useMemo, useState as useState2 } from "react";
6
+
7
+ // src/createLookup.ts
8
+ var createLookup = (reflection) => {
9
+ const lookup = {};
10
+ reflection.children?.forEach((item) => lookup[item.id] = item);
11
+ return lookup;
12
+ };
13
+
14
+ // src/ReflectionViewer/ReflectionGroupViewer.tsx
15
+ import { Typography as Typography4 } from "@mui/material";
16
+ import { FlexCol as FlexCol3, FlexRow as FlexRow2 } from "@xylabs/react-flexbox";
17
+ import { useEffect } from "react";
18
+ import { useLocation } from "react-router-dom";
19
+
20
+ // src/JsonViewerButton.tsx
21
+ import { Dialog, DialogActions, DialogContent, DialogTitle } from "@mui/material";
22
+ import { ButtonEx } from "@xylabs/react-button";
23
+ import { lazy, Suspense, useState } from "react";
24
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
25
+ var JsonView = lazy(() => import(
26
+ /* webpackChunkName: "jsonView" */
27
+ "react-json-view"
28
+ ));
29
+ var JsonViewerButton = ({ jsonViewProps, src, title, ...props }) => {
30
+ const [open, setOpen] = useState(false);
31
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
32
+ /* @__PURE__ */ jsx(ButtonEx, { onClick: () => setOpen(!open), ...props, children: "JSON" }),
33
+ /* @__PURE__ */ jsxs(Dialog, { open, onClose: () => setOpen(false), children: [
34
+ title ? /* @__PURE__ */ jsx(DialogTitle, { children: title }) : null,
35
+ /* @__PURE__ */ jsx(DialogContent, { children: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx("div", {}), children: /* @__PURE__ */ jsx(JsonView, { src, ...jsonViewProps }) }) }),
36
+ /* @__PURE__ */ jsx(DialogActions, { children: /* @__PURE__ */ jsx(ButtonEx, { onClick: () => setOpen(false), children: "Close" }) })
37
+ ] })
38
+ ] });
39
+ };
40
+
41
+ // src/resolveChildren.ts
42
+ var resolveChildren = (reflection, lookup = {}) => {
43
+ return reflection.children?.map((child) => {
44
+ switch (typeof child) {
45
+ case "object":
46
+ return child;
47
+ case "number": {
48
+ const childObj = lookup[child];
49
+ if (childObj === void 0) {
50
+ throw Error(`Child Reference Not Found [${child}]`);
51
+ }
52
+ return childObj;
53
+ }
54
+ default:
55
+ throw Error(`Invalid Child Type [${typeof child}, ${child}]`);
56
+ }
57
+ }) ?? [];
58
+ };
59
+
60
+ // src/ReflectionViewer/ReflectionViewer.tsx
61
+ import { FlexCol as FlexCol2 } from "@xylabs/react-flexbox";
62
+
63
+ // src/CommentViewer.tsx
64
+ import { Typography } from "@mui/material";
65
+ import { FlexCol } from "@xylabs/react-flexbox";
66
+ import { jsx as jsx2 } from "react/jsx-runtime";
67
+ var CommentViewer = ({ comment, ...props }) => {
68
+ return /* @__PURE__ */ jsx2(FlexCol, { alignItems: "stretch", ...props, children: /* @__PURE__ */ jsx2(Typography, { variant: "body2", children: comment.summary[0]?.text }) });
69
+ };
70
+
71
+ // src/ReflectionViewer/NameViewer.tsx
72
+ import { Chip, Stack, Typography as Typography3 } from "@mui/material";
73
+ import { FlexRow } from "@xylabs/react-flexbox";
74
+
75
+ // src/trimFlagLabel.ts
76
+ var trimFlagLabel = (label) => {
77
+ if (label.startsWith("is")) {
78
+ return label.substring(2);
79
+ }
80
+ return label;
81
+ };
82
+
83
+ // src/ReflectionViewer/SomeTypeViewer/SomeTypeViewer.tsx
84
+ import { Typography as Typography2 } from "@mui/material";
85
+
86
+ // src/ReflectionViewer/SomeTypeViewer/buildArrayString.tsx
87
+ var buildArrayString = (typeObj, reflectionViewer, typeBuilder) => {
88
+ const parts = [];
89
+ const typeString = typeBuilder(typeObj.elementType, reflectionViewer);
90
+ if (typeof typeString === "string") {
91
+ parts.push(typeString);
92
+ }
93
+ parts.push("[]");
94
+ return parts;
95
+ };
96
+
97
+ // src/ReflectionViewer/SomeTypeViewer/buildIntersectionString.tsx
98
+ var buildIntersectionString = (typeObj, reflectionViewer, typeBuilder) => {
99
+ const parts = [];
100
+ if (typeObj.types) {
101
+ parts.push(
102
+ typeObj.types.map((arg) => {
103
+ return typeBuilder(arg, reflectionViewer);
104
+ }).join(" & ")
105
+ );
106
+ }
107
+ return parts;
108
+ };
109
+
110
+ // src/ReflectionViewer/SomeTypeViewer/buildReferenceString.ts
111
+ var buildReferenceString = (typeObj, reflectionViewer, typeBuilder) => {
112
+ const parts = [];
113
+ parts.push(typeObj.name);
114
+ if (typeObj.typeArguments) {
115
+ parts.push("<");
116
+ parts.push(
117
+ typeObj.typeArguments.map((arg) => {
118
+ return typeBuilder(arg, reflectionViewer);
119
+ }).join(", ")
120
+ );
121
+ parts.push(">");
122
+ }
123
+ return parts;
124
+ };
125
+
126
+ // src/ReflectionViewer/SomeTypeViewer/buildReflectionString.tsx
127
+ import { Fragment as Fragment2, jsx as jsx3 } from "react/jsx-runtime";
128
+ var buildRelfectionString = (typeObj, reflectionViewer) => {
129
+ if (typeObj.declaration) {
130
+ return /* @__PURE__ */ jsx3(Fragment2, { children: reflectionViewer({ reflection: typeObj.declaration }) });
131
+ }
132
+ };
133
+
134
+ // src/ReflectionViewer/SomeTypeViewer/buildUnionString.tsx
135
+ var buildUnionString = (typeObj, reflectionViewer, typeBuilder) => {
136
+ const parts = [];
137
+ if (typeObj.types) {
138
+ parts.push(
139
+ typeObj.types.map((arg) => {
140
+ return typeBuilder(arg, reflectionViewer);
141
+ }).join(" | ")
142
+ );
143
+ }
144
+ return parts;
145
+ };
146
+
147
+ // src/ReflectionViewer/SomeTypeViewer/buildTypeString.tsx
148
+ var buildTypeString = (type, reflectionViewer) => {
149
+ const someType = type;
150
+ const parts = [];
151
+ switch (someType.type) {
152
+ case "intrinsic":
153
+ parts.push(someType.name);
154
+ break;
155
+ case "intersection": {
156
+ parts.push(...buildIntersectionString(someType, reflectionViewer, buildTypeString));
157
+ break;
158
+ }
159
+ case "literal":
160
+ parts.push(JSON.stringify(someType.value));
161
+ break;
162
+ case "array": {
163
+ parts.push(...buildArrayString(someType, reflectionViewer, buildTypeString));
164
+ break;
165
+ }
166
+ case "reference": {
167
+ parts.push(...buildReferenceString(someType, reflectionViewer, buildTypeString));
168
+ break;
169
+ }
170
+ case "union": {
171
+ parts.push(...buildUnionString(someType, reflectionViewer, buildTypeString));
172
+ break;
173
+ }
174
+ case "reflection": {
175
+ return buildRelfectionString(someType, reflectionViewer);
176
+ }
177
+ default:
178
+ parts.push("#");
179
+ parts.push(someType.type);
180
+ parts.push("#");
181
+ break;
182
+ }
183
+ return parts.join("");
184
+ };
185
+
186
+ // src/ReflectionViewer/SomeTypeViewer/SomeTypeViewer.tsx
187
+ import { Fragment as Fragment3, jsx as jsx4 } from "react/jsx-runtime";
188
+ var SomeTypeViewer = ({ opacity = 0.5, reflection, reflectionViewer, ...props }) => {
189
+ const typeReactNode = reflection.type ? buildTypeString(reflection.type, reflectionViewer) : "";
190
+ if (typeof typeReactNode === "string") {
191
+ return /* @__PURE__ */ jsx4(Typography2, { title: "SomeTypeViewer", style: { opacity }, ...props, children: typeReactNode });
192
+ }
193
+ return /* @__PURE__ */ jsx4(Fragment3, { children: typeReactNode });
194
+ };
195
+
196
+ // src/ReflectionViewer/NameViewer.tsx
197
+ import { Fragment as Fragment4, jsx as jsx5, jsxs as jsxs2 } from "react/jsx-runtime";
198
+ var NameViewer = ({ reflectionViewer, variant, reflection, ...props }) => {
199
+ return /* @__PURE__ */ jsxs2(FlexRow, { justifyContent: "flex-start", ...props, children: [
200
+ /* @__PURE__ */ jsxs2(FlexRow, { marginRight: 1, children: [
201
+ /* @__PURE__ */ jsxs2(Typography3, { variant, noWrap: true, children: [
202
+ reflection.name,
203
+ reflection.type ? /* @__PURE__ */ jsx5(Fragment4, { children: ":\xA0" }) : null
204
+ ] }),
205
+ /* @__PURE__ */ jsx5(SomeTypeViewer, { reflection, reflectionViewer })
206
+ ] }),
207
+ /* @__PURE__ */ jsxs2(Stack, { direction: "row", spacing: 1, children: [
208
+ /* @__PURE__ */ jsx5(Chip, { size: "small", label: reflection.kind }),
209
+ reflection.flags ? Object.entries(reflection.flags).map(([flag, value]) => {
210
+ return value ? /* @__PURE__ */ jsx5(Chip, { size: "small", label: trimFlagLabel(flag), variant: "outlined" }, flag) : null;
211
+ }) : null
212
+ ] }),
213
+ document && document?.location.hostname === "localhost" && /* @__PURE__ */ jsx5(JsonViewerButton, { jsonViewProps: { collapsed: 1 }, size: "small", variant: "contained", padding: 0, marginX: 1, src: reflection })
214
+ ] });
215
+ };
216
+
217
+ // src/ReflectionViewer/ReflectionViewer.tsx
218
+ import { jsx as jsx6, jsxs as jsxs3 } from "react/jsx-runtime";
219
+ var hide = (flags, hiddenFlags = []) => {
220
+ let hide2 = false;
221
+ hiddenFlags.map((hiddenFlag) => {
222
+ if (flags?.[hiddenFlag]) {
223
+ hide2 = true;
224
+ }
225
+ });
226
+ return hide2;
227
+ };
228
+ var ReflectionViewer = ({ variant, nameViewer, children, reflection, hiddenFlags, ...props }) => {
229
+ const someReflection = reflection;
230
+ return hide(reflection?.flags, hiddenFlags) ? null : /* @__PURE__ */ jsxs3(FlexCol2, { title: "ReflectionViewer", alignItems: "stretch", ...props, children: [
231
+ nameViewer === void 0 ? /* @__PURE__ */ jsx6(NameViewer, { marginY: 0.25, variant, reflection: someReflection, reflectionViewer: ReflectionViewer }) : nameViewer,
232
+ reflection.comment ? /* @__PURE__ */ jsx6(CommentViewer, { comment: reflection.comment }) : null,
233
+ someReflection.parameters?.map((parameter) => {
234
+ return /* @__PURE__ */ jsx6(ReflectionViewer, { hiddenFlags, marginY: 0.25, marginX: 1, reflection: parameter }, parameter.id);
235
+ }) ?? null,
236
+ children
237
+ ] });
238
+ };
239
+
240
+ // src/ReflectionViewer/ReflectionGroupViewer.tsx
241
+ import { jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
242
+ var ReflectionGroupViewer = ({
243
+ autoscroll = false,
244
+ children,
245
+ hiddenFlags,
246
+ group,
247
+ lookup,
248
+ renderer = ReflectionViewer,
249
+ variant,
250
+ ...props
251
+ }) => {
252
+ const hide2 = (flags, hiddenFlags2 = []) => {
253
+ let hide3 = false;
254
+ hiddenFlags2.map((hiddenFlag) => {
255
+ if (flags?.[hiddenFlag]) {
256
+ hide3 = true;
257
+ }
258
+ });
259
+ return hide3;
260
+ };
261
+ const resolvedChildern = resolveChildren(group, lookup) ?? [];
262
+ const visibleChildren = hiddenFlags ? resolvedChildern.reduce((acc, item) => {
263
+ return acc + (hide2(item.flags, hiddenFlags) ? 0 : 1);
264
+ }, 0) : 1;
265
+ const { hash } = useLocation();
266
+ useEffect(() => {
267
+ if (hash && autoscroll) {
268
+ document.querySelector(hash)?.scrollIntoView({ behavior: "smooth" });
269
+ }
270
+ }, [hash, autoscroll]);
271
+ return visibleChildren > 0 ? /* @__PURE__ */ jsxs4(FlexCol3, { title: "ReflectionGroupViewer", ...props, children: [
272
+ /* @__PURE__ */ jsxs4(FlexRow2, { marginY: 1, justifyContent: "flex-start", children: [
273
+ /* @__PURE__ */ jsx7(Typography4, { variant, children: group.title }),
274
+ /* @__PURE__ */ jsx7(
275
+ JsonViewerButton,
276
+ {
277
+ jsonViewProps: { collapsed: 1 },
278
+ size: "small",
279
+ variant: "contained",
280
+ padding: 0,
281
+ marginX: 1,
282
+ src: resolveChildren(group, lookup)
283
+ }
284
+ )
285
+ ] }),
286
+ resolveChildren(group, lookup).map((reflection) => {
287
+ return reflection ? (
288
+ // I wrap this in a div since React does not understand that they have keys using the Renderer
289
+ /* @__PURE__ */ jsx7("div", { id: reflection.name, children: renderer({ hiddenFlags, lookup, margin: 1, padding: 1, reflection }) }, reflection.id)
290
+ ) : null;
291
+ }),
292
+ children
293
+ ] }) : null;
294
+ };
295
+
296
+ // src/TreeViewer/Reflection.tsx
297
+ import { Add, Remove } from "@mui/icons-material";
298
+ import { Typography as Typography5 } from "@mui/material";
299
+ import { TreeItem, TreeView } from "@mui/x-tree-view";
300
+ import { FlexCol as FlexCol4 } from "@xylabs/react-flexbox";
301
+ import { useNavigate } from "react-router-dom";
302
+ import { jsx as jsx8 } from "react/jsx-runtime";
303
+ var ReflectionTreeViewer = ({ lookup, reflection, searchTerm, ...props }) => {
304
+ const navigate = useNavigate();
305
+ return /* @__PURE__ */ jsx8(FlexCol4, { alignItems: "stretch", ...props, children: /* @__PURE__ */ jsx8(
306
+ TreeView,
307
+ {
308
+ "aria-label": "XYO SDK Documentation",
309
+ defaultExpandIcon: /* @__PURE__ */ jsx8(Add, {}),
310
+ defaultCollapseIcon: /* @__PURE__ */ jsx8(Remove, {}),
311
+ defaultExpanded: reflection.groups ? [reflection.groups[0].title] : [],
312
+ children: reflection.groups?.map((group, index) => /* @__PURE__ */ jsx8(TreeItem, { nodeId: group.title, label: /* @__PURE__ */ jsx8(Typography5, { variant: "h6", children: group.title }), children: group.children.map((child, jndex) => {
313
+ const searchTermTrimmed = searchTerm?.trim().toLowerCase();
314
+ const childReflection = typeof child === "number" ? lookup?.[child] : child;
315
+ return childReflection && (!searchTermTrimmed || childReflection.name.toLowerCase().indexOf(searchTermTrimmed) !== -1) ? /* @__PURE__ */ jsx8(
316
+ TreeItem,
317
+ {
318
+ nodeId: `declaration-${childReflection?.id}`,
319
+ label: childReflection.name,
320
+ onClick: () => {
321
+ const hash = `#${childReflection.name}`;
322
+ navigate({ hash });
323
+ document.querySelector(hash)?.scrollIntoView({ behavior: "smooth" });
324
+ }
325
+ },
326
+ `secondary-${index}- ${jndex}`
327
+ ) : null;
328
+ }) }, `primary-${index}`))
329
+ }
330
+ ) });
331
+ };
332
+
333
+ // src/TwoPanelReflectionViewer.tsx
334
+ import { jsx as jsx9, jsxs as jsxs5 } from "react/jsx-runtime";
335
+ var TwoPanelReflectionViewer = ({
10
336
  reflection,
11
337
  itemRenderer = ReflectionViewer,
12
338
  hiddenFlags,
@@ -14,13 +340,13 @@ const TwoPanelReflectionViewer = ({
14
340
  }) => {
15
341
  const lookup = useMemo(() => createLookup(reflection), [reflection]);
16
342
  const theme = useTheme();
17
- const [searchTerm, setSearchTerm] = useState();
343
+ const [searchTerm, setSearchTerm] = useState2();
18
344
  const onSearchTermChange = (e) => {
19
345
  setSearchTerm(e.target.value);
20
346
  };
21
347
  const reflectionGroups = useMemo(() => {
22
348
  return reflection.groups?.map((group) => {
23
- return /* @__PURE__ */ jsx(
349
+ return /* @__PURE__ */ jsx9(
24
350
  ReflectionGroupViewer,
25
351
  {
26
352
  autoscroll: true,
@@ -37,18 +363,18 @@ const TwoPanelReflectionViewer = ({
37
363
  });
38
364
  }, [itemRenderer, lookup, reflection, hiddenFlags]);
39
365
  const NavigationCol = (props2) => {
40
- return /* @__PURE__ */ jsxs(FlexCol, { ...props2, children: [
41
- /* @__PURE__ */ jsx(
366
+ return /* @__PURE__ */ jsxs5(FlexCol5, { ...props2, children: [
367
+ /* @__PURE__ */ jsx9(
42
368
  TextField,
43
369
  {
44
370
  fullWidth: true,
45
371
  InputProps: {
46
- startAdornment: /* @__PURE__ */ jsx(Search, {})
372
+ startAdornment: /* @__PURE__ */ jsx9(Search, {})
47
373
  },
48
374
  onChange: onSearchTermChange
49
375
  }
50
376
  ),
51
- /* @__PURE__ */ jsx(FlexGrowCol, { marginTop: 1, alignItems: "stretch", children: /* @__PURE__ */ jsx(
377
+ /* @__PURE__ */ jsx9(FlexGrowCol, { marginTop: 1, alignItems: "stretch", children: /* @__PURE__ */ jsx9(
52
378
  ReflectionTreeViewer,
53
379
  {
54
380
  justifyContent: "flex-start",
@@ -70,8 +396,8 @@ const TwoPanelReflectionViewer = ({
70
396
  ] });
71
397
  };
72
398
  const DetailsCol = (props2) => {
73
- return /* @__PURE__ */ jsx(FlexGrowCol, { ...props2, children: /* @__PURE__ */ jsx(FlexGrowCol, { alignItems: "stretch", children: /* @__PURE__ */ jsx(
74
- FlexCol,
399
+ return /* @__PURE__ */ jsx9(FlexGrowCol, { ...props2, children: /* @__PURE__ */ jsx9(FlexGrowCol, { alignItems: "stretch", children: /* @__PURE__ */ jsx9(
400
+ FlexCol5,
75
401
  {
76
402
  alignItems: "stretch",
77
403
  justifyContent: "flex-start",
@@ -88,9 +414,9 @@ const TwoPanelReflectionViewer = ({
88
414
  }
89
415
  ) }) });
90
416
  };
91
- return /* @__PURE__ */ jsxs(FlexRow, { alignItems: "stretch", justifyContent: "start", sx: { overflowY: "scroll" }, ...props, children: [
92
- /* @__PURE__ */ jsx(NavigationCol, { minWidth: 320, alignItems: "stretch", justifyContent: "flex-start", overflow: "hidden" }),
93
- /* @__PURE__ */ jsx(DetailsCol, { marginLeft: 1, alignItems: "stretch", justifyContent: "flex-start", overflow: "hidden" })
417
+ return /* @__PURE__ */ jsxs5(FlexRow3, { alignItems: "stretch", justifyContent: "start", sx: { overflowY: "scroll" }, ...props, children: [
418
+ /* @__PURE__ */ jsx9(NavigationCol, { minWidth: 320, alignItems: "stretch", justifyContent: "flex-start", overflow: "hidden" }),
419
+ /* @__PURE__ */ jsx9(DetailsCol, { marginLeft: 1, alignItems: "stretch", justifyContent: "flex-start", overflow: "hidden" })
94
420
  ] });
95
421
  };
96
422
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/TwoPanelReflectionViewer.tsx"],"sourcesContent":["import { Search } from '@mui/icons-material'\nimport { TextField, useTheme } from '@mui/material'\nimport { FlexBoxProps, FlexCol, FlexGrowCol, FlexRow } from '@xylabs/react-flexbox'\nimport { useMemo, useState } from 'react'\nimport type { ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from './createLookup'\nimport { ContainerReflectionViewerProps, ReflectionGroupViewer, ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionTreeViewer } from './TreeViewer'\n\nexport const TwoPanelReflectionViewer: React.FC<ContainerReflectionViewerProps> = ({\n reflection,\n itemRenderer = ReflectionViewer,\n hiddenFlags,\n ...props\n}) => {\n const lookup = useMemo(() => createLookup(reflection), [reflection])\n const theme = useTheme()\n const [searchTerm, setSearchTerm] = useState<string>()\n const onSearchTermChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchTerm(e.target.value)\n }\n\n const reflectionGroups = useMemo(() => {\n return reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n autoscroll\n variant=\"h6\"\n lookup={lookup}\n renderer={itemRenderer}\n key={group.title}\n group={group}\n reflection={reflection}\n alignItems=\"stretch\"\n hiddenFlags={hiddenFlags}\n />\n )\n })\n }, [itemRenderer, lookup, reflection, hiddenFlags])\n\n const NavigationCol: React.FC<FlexBoxProps> = (props) => {\n return (\n <FlexCol {...props}>\n <TextField\n fullWidth\n InputProps={{\n startAdornment: <Search />,\n }}\n onChange={onSearchTermChange}\n />\n <FlexGrowCol marginTop={1} alignItems=\"stretch\">\n <ReflectionTreeViewer\n justifyContent=\"flex-start\"\n position=\"absolute\"\n top={0}\n left={0}\n right={0}\n bottom={0}\n overflow=\"scroll\"\n searchTerm={searchTerm}\n hiddenFlags={hiddenFlags}\n reflection={reflection}\n lookup={lookup}\n border={`1px solid ${theme.palette.grey['300']}`}\n borderRadius={1}\n paddingY={1}\n />\n </FlexGrowCol>\n </FlexCol>\n )\n }\n\n const DetailsCol: React.FC<FlexBoxProps> = (props) => {\n return (\n <FlexGrowCol {...props}>\n <FlexGrowCol alignItems=\"stretch\">\n <FlexCol\n alignItems=\"stretch\"\n justifyContent=\"flex-start\"\n position=\"absolute\"\n top={0}\n left={0}\n right={0}\n bottom={0}\n overflow=\"scroll\"\n borderRadius={1}\n padding={1}\n border={`1px solid ${theme.palette.grey['300']}`}\n >\n {reflectionGroups}\n </FlexCol>\n </FlexGrowCol>\n </FlexGrowCol>\n )\n }\n\n return (\n <FlexRow alignItems=\"stretch\" justifyContent=\"start\" sx={{ overflowY: 'scroll' }} {...props}>\n <NavigationCol minWidth={320} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\" />\n <DetailsCol marginLeft={1} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\" />\n </FlexRow>\n )\n}\n"],"mappings":"AA0BQ,cAiBF,YAjBE;AA1BR,SAAS,cAAc;AACvB,SAAS,WAAW,gBAAgB;AACpC,SAAuB,SAAS,aAAa,eAAe;AAC5D,SAAS,SAAS,gBAAgB;AAGlC,SAAS,oBAAoB;AAC7B,SAAyC,uBAAuB,wBAAwB;AACxF,SAAS,4BAA4B;AAE9B,MAAM,2BAAqE,CAAC;AAAA,EACjF;AAAA,EACA,eAAe;AAAA,EACf;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,SAAS,QAAQ,MAAM,aAAa,UAAU,GAAG,CAAC,UAAU,CAAC;AACnE,QAAM,QAAQ,SAAS;AACvB,QAAM,CAAC,YAAY,aAAa,IAAI,SAAiB;AACrD,QAAM,qBAAqB,CAAC,MAA2C;AACrE,kBAAc,EAAE,OAAO,KAAK;AAAA,EAC9B;AAEA,QAAM,mBAAmB,QAAQ,MAAM;AACrC,WAAO,WAAW,QAAQ,IAAI,CAAC,UAA2B;AACxD,aACE;AAAA,QAAC;AAAA;AAAA,UACC,YAAU;AAAA,UACV,SAAQ;AAAA,UACR;AAAA,UACA,UAAU;AAAA,UAEV;AAAA,UACA;AAAA,UACA,YAAW;AAAA,UACX;AAAA;AAAA,QAJK,MAAM;AAAA,MAKb;AAAA,IAEJ,CAAC;AAAA,EACH,GAAG,CAAC,cAAc,QAAQ,YAAY,WAAW,CAAC;AAElD,QAAM,gBAAwC,CAACA,WAAU;AACvD,WACE,qBAAC,WAAS,GAAGA,QACX;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,WAAS;AAAA,UACT,YAAY;AAAA,YACV,gBAAgB,oBAAC,UAAO;AAAA,UAC1B;AAAA,UACA,UAAU;AAAA;AAAA,MACZ;AAAA,MACA,oBAAC,eAAY,WAAW,GAAG,YAAW,WACpC;AAAA,QAAC;AAAA;AAAA,UACC,gBAAe;AAAA,UACf,UAAS;AAAA,UACT,KAAK;AAAA,UACL,MAAM;AAAA,UACN,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,UAAS;AAAA,UACT;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,QAAQ,aAAa,MAAM,QAAQ,KAAK,KAAK,CAAC;AAAA,UAC9C,cAAc;AAAA,UACd,UAAU;AAAA;AAAA,MACZ,GACF;AAAA,OACF;AAAA,EAEJ;AAEA,QAAM,aAAqC,CAACA,WAAU;AACpD,WACE,oBAAC,eAAa,GAAGA,QACf,8BAAC,eAAY,YAAW,WACtB;AAAA,MAAC;AAAA;AAAA,QACC,YAAW;AAAA,QACX,gBAAe;AAAA,QACf,UAAS;AAAA,QACT,KAAK;AAAA,QACL,MAAM;AAAA,QACN,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,UAAS;AAAA,QACT,cAAc;AAAA,QACd,SAAS;AAAA,QACT,QAAQ,aAAa,MAAM,QAAQ,KAAK,KAAK,CAAC;AAAA,QAE7C;AAAA;AAAA,IACH,GACF,GACF;AAAA,EAEJ;AAEA,SACE,qBAAC,WAAQ,YAAW,WAAU,gBAAe,SAAQ,IAAI,EAAE,WAAW,SAAS,GAAI,GAAG,OACpF;AAAA,wBAAC,iBAAc,UAAU,KAAK,YAAW,WAAU,gBAAe,cAAa,UAAS,UAAS;AAAA,IACjG,oBAAC,cAAW,YAAY,GAAG,YAAW,WAAU,gBAAe,cAAa,UAAS,UAAS;AAAA,KAChG;AAEJ;","names":["props"]}
1
+ {"version":3,"sources":["../../src/TwoPanelReflectionViewer.tsx","../../src/createLookup.ts","../../src/ReflectionViewer/ReflectionGroupViewer.tsx","../../src/JsonViewerButton.tsx","../../src/resolveChildren.ts","../../src/ReflectionViewer/ReflectionViewer.tsx","../../src/CommentViewer.tsx","../../src/ReflectionViewer/NameViewer.tsx","../../src/trimFlagLabel.ts","../../src/ReflectionViewer/SomeTypeViewer/SomeTypeViewer.tsx","../../src/ReflectionViewer/SomeTypeViewer/buildArrayString.tsx","../../src/ReflectionViewer/SomeTypeViewer/buildIntersectionString.tsx","../../src/ReflectionViewer/SomeTypeViewer/buildReferenceString.ts","../../src/ReflectionViewer/SomeTypeViewer/buildReflectionString.tsx","../../src/ReflectionViewer/SomeTypeViewer/buildUnionString.tsx","../../src/ReflectionViewer/SomeTypeViewer/buildTypeString.tsx","../../src/TreeViewer/Reflection.tsx"],"sourcesContent":["import { Search } from '@mui/icons-material'\nimport { TextField, useTheme } from '@mui/material'\nimport { FlexBoxProps, FlexCol, FlexGrowCol, FlexRow } from '@xylabs/react-flexbox'\nimport { useMemo, useState } from 'react'\nimport type { ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from './createLookup'\nimport { ContainerReflectionViewerProps, ReflectionGroupViewer, ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionTreeViewer } from './TreeViewer'\n\nexport const TwoPanelReflectionViewer: React.FC<ContainerReflectionViewerProps> = ({\n reflection,\n itemRenderer = ReflectionViewer,\n hiddenFlags,\n ...props\n}) => {\n const lookup = useMemo(() => createLookup(reflection), [reflection])\n const theme = useTheme()\n const [searchTerm, setSearchTerm] = useState<string>()\n const onSearchTermChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setSearchTerm(e.target.value)\n }\n\n const reflectionGroups = useMemo(() => {\n return reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n autoscroll\n variant=\"h6\"\n lookup={lookup}\n renderer={itemRenderer}\n key={group.title}\n group={group}\n reflection={reflection}\n alignItems=\"stretch\"\n hiddenFlags={hiddenFlags}\n />\n )\n })\n }, [itemRenderer, lookup, reflection, hiddenFlags])\n\n const NavigationCol: React.FC<FlexBoxProps> = (props) => {\n return (\n <FlexCol {...props}>\n <TextField\n fullWidth\n InputProps={{\n startAdornment: <Search />,\n }}\n onChange={onSearchTermChange}\n />\n <FlexGrowCol marginTop={1} alignItems=\"stretch\">\n <ReflectionTreeViewer\n justifyContent=\"flex-start\"\n position=\"absolute\"\n top={0}\n left={0}\n right={0}\n bottom={0}\n overflow=\"scroll\"\n searchTerm={searchTerm}\n hiddenFlags={hiddenFlags}\n reflection={reflection}\n lookup={lookup}\n border={`1px solid ${theme.palette.grey['300']}`}\n borderRadius={1}\n paddingY={1}\n />\n </FlexGrowCol>\n </FlexCol>\n )\n }\n\n const DetailsCol: React.FC<FlexBoxProps> = (props) => {\n return (\n <FlexGrowCol {...props}>\n <FlexGrowCol alignItems=\"stretch\">\n <FlexCol\n alignItems=\"stretch\"\n justifyContent=\"flex-start\"\n position=\"absolute\"\n top={0}\n left={0}\n right={0}\n bottom={0}\n overflow=\"scroll\"\n borderRadius={1}\n padding={1}\n border={`1px solid ${theme.palette.grey['300']}`}\n >\n {reflectionGroups}\n </FlexCol>\n </FlexGrowCol>\n </FlexGrowCol>\n )\n }\n\n return (\n <FlexRow alignItems=\"stretch\" justifyContent=\"start\" sx={{ overflowY: 'scroll' }} {...props}>\n <NavigationCol minWidth={320} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\" />\n <DetailsCol marginLeft={1} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\" />\n </FlexRow>\n )\n}\n","import type { ContainerReflection, DeclarationReflection } from 'typedoc'\n\nexport const createLookup = <T extends DeclarationReflection>(reflection: ContainerReflection) => {\n const lookup: Record<number, T> = {}\n reflection.children?.forEach((item) => (lookup[item.id] = item as unknown as T))\n return lookup\n}\n","import { Typography } from '@mui/material'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport { useEffect } from 'react'\nimport { useLocation } from 'react-router-dom'\nimport type { ContainerReflection, ReflectionFlags, ReflectionGroup } from 'typedoc'\n\nimport { JsonViewerButton } from '../JsonViewerButton'\nimport { resolveChildren } from '../resolveChildren'\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { FlagFilter, ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport interface ReflectionGroupViewerProps extends ReflectionViewerProps<ContainerReflection> {\n autoscroll?: boolean\n group: ReflectionGroup\n reflection: ContainerReflection\n renderer?: React.FC<ReflectionViewerProps>\n}\n\nexport const ReflectionGroupViewer: React.FC<ReflectionGroupViewerProps> = ({\n autoscroll = false,\n children,\n hiddenFlags,\n group,\n lookup,\n renderer = ReflectionViewer,\n variant,\n ...props\n}) => {\n const hide = (flags?: ReflectionFlags, hiddenFlags: FlagFilter[] = []) => {\n let hide = false\n hiddenFlags.map((hiddenFlag) => {\n if (flags?.[hiddenFlag]) {\n hide = true\n }\n })\n return hide\n }\n\n const resolvedChildern = resolveChildren(group, lookup) ?? []\n\n const visibleChildren = hiddenFlags\n ? resolvedChildern.reduce((acc, item) => {\n return acc + (hide(item.flags, hiddenFlags) ? 0 : 1)\n }, 0)\n : 1\n\n const { hash } = useLocation()\n useEffect(() => {\n if (hash && autoscroll) {\n document.querySelector(hash)?.scrollIntoView({ behavior: 'smooth' })\n }\n }, [hash, autoscroll])\n return visibleChildren > 0 ? (\n <FlexCol title=\"ReflectionGroupViewer\" {...props}>\n <FlexRow marginY={1} justifyContent=\"flex-start\">\n <Typography variant={variant}>{group.title}</Typography>\n <JsonViewerButton\n jsonViewProps={{ collapsed: 1 }}\n size=\"small\"\n variant=\"contained\"\n padding={0}\n marginX={1}\n src={resolveChildren(group, lookup)}\n />\n </FlexRow>\n {resolveChildren(group, lookup).map((reflection) => {\n return reflection ? (\n // I wrap this in a div since React does not understand that they have keys using the Renderer\n <div id={reflection.name} key={reflection.id}>\n {renderer({ hiddenFlags, lookup, margin: 1, padding: 1, reflection })}\n </div>\n ) : null\n })}\n {children}\n </FlexCol>\n ) : null\n}\n","import { Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { lazy, Suspense, useState } from 'react'\nimport { ReactJsonViewProps } from 'react-json-view'\n\nconst JsonView = lazy(() => import(/* webpackChunkName: \"jsonView\" */ 'react-json-view'))\n\nexport interface JsonViewerButtonProps extends ButtonExProps {\n jsonViewProps?: Partial<ReactJsonViewProps>\n src: object\n}\n\nexport const JsonViewerButton: React.FC<JsonViewerButtonProps> = ({ jsonViewProps, src, title, ...props }) => {\n const [open, setOpen] = useState(false)\n return (\n <>\n <ButtonEx onClick={() => setOpen(!open)} {...props}>\n JSON\n </ButtonEx>\n <Dialog open={open} onClose={() => setOpen(false)}>\n {title ? <DialogTitle>{title}</DialogTitle> : null}\n <DialogContent>\n <Suspense fallback={<div />}>\n <JsonView src={src} {...jsonViewProps} />\n </Suspense>\n </DialogContent>\n <DialogActions>\n <ButtonEx onClick={() => setOpen(false)}>Close</ButtonEx>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n","import type { Reflection } from 'typedoc'\n\nimport { ReflectionLookup } from './ReflectionLookup'\nimport { SomeReflection } from './SomeReflection'\n\ntype ReflectionWithChildren = { children: Reflection[] }\n\nexport const resolveChildren = <T extends SomeReflection>(reflection: ReflectionWithChildren, lookup: ReflectionLookup = {}): T[] => {\n return (reflection.children?.map((child) => {\n switch (typeof child) {\n case 'object':\n return child\n case 'number': {\n const childObj = lookup[child]\n if (childObj === undefined) {\n throw Error(`Child Reference Not Found [${child}]`)\n }\n return childObj\n }\n default:\n throw Error(`Invalid Child Type [${typeof child}, ${child}]`)\n }\n }) ?? []) as T[]\n}\n","import { FlexCol } from '@xylabs/react-flexbox'\nimport type { ReflectionFlags } from 'typedoc'\n\nimport { CommentViewer } from '../CommentViewer'\nimport { SomeReflection } from '../SomeReflection'\nimport { NameViewer } from './NameViewer'\nimport { FlagFilter, ReflectionViewerProps } from './ReflectionViewerProps'\n\nconst hide = (flags?: ReflectionFlags, hiddenFlags: FlagFilter[] = []) => {\n let hide = false\n hiddenFlags.map((hiddenFlag) => {\n if (flags?.[hiddenFlag]) {\n hide = true\n }\n })\n return hide\n}\n\nexport const ReflectionViewer: React.FC<ReflectionViewerProps> = ({ variant, nameViewer, children, reflection, hiddenFlags, ...props }) => {\n const someReflection = reflection as SomeReflection\n\n return hide(reflection?.flags, hiddenFlags) ? null : (\n <FlexCol title=\"ReflectionViewer\" alignItems=\"stretch\" {...props}>\n {nameViewer === undefined ? (\n <NameViewer marginY={0.25} variant={variant} reflection={someReflection} reflectionViewer={ReflectionViewer} />\n ) : (\n nameViewer\n )}\n {reflection.comment ? <CommentViewer comment={reflection.comment} /> : null}\n {/*sources && reflection.sources && children ? (\n <>\n {reflection.sources.map((source, index) => {\n return <SourceViewer key={index} source={source} />\n })}\n </>\n ) : null*/}\n {someReflection.parameters?.map((parameter) => {\n return <ReflectionViewer hiddenFlags={hiddenFlags} marginY={0.25} marginX={1} key={parameter.id} reflection={parameter} />\n }) ?? null}\n {children}\n </FlexCol>\n )\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport type { Comment } from 'typedoc'\n\nexport interface CommentViewerProps extends FlexBoxProps {\n comment: Comment\n}\n\nexport const CommentViewer: React.FC<CommentViewerProps> = ({ comment, ...props }) => {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n <Typography variant=\"body2\">{comment.summary[0]?.text}</Typography>\n </FlexCol>\n )\n}\n","import { Chip, Stack, Typography, TypographyVariant } from '@mui/material'\nimport { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'\n\nimport { JsonViewerButton } from '../JsonViewerButton'\nimport { SomeReflection } from '../SomeReflection'\nimport { trimFlagLabel } from '../trimFlagLabel'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\nimport { SomeTypeViewer } from './SomeTypeViewer'\n\nexport interface NameViewerProps extends FlexBoxProps {\n reflection: SomeReflection\n reflectionViewer: React.FC<ReflectionViewerProps>\n variant?: TypographyVariant\n}\n\nexport const NameViewer: React.FC<NameViewerProps> = ({ reflectionViewer, variant, reflection, ...props }) => {\n return (\n <FlexRow justifyContent=\"flex-start\" {...props}>\n <FlexRow marginRight={1}>\n <Typography variant={variant} noWrap>\n {reflection.name}\n {reflection.type ? <>:&nbsp;</> : null}\n </Typography>\n <SomeTypeViewer reflection={reflection} reflectionViewer={reflectionViewer} />\n </FlexRow>\n <Stack direction=\"row\" spacing={1}>\n <Chip size=\"small\" label={reflection.kind} />\n {reflection.flags\n ? Object.entries(reflection.flags).map(([flag, value]) => {\n return value ? <Chip size=\"small\" key={flag} label={trimFlagLabel(flag)} variant=\"outlined\" /> : null\n })\n : null}\n </Stack>\n {document && document?.location.hostname === 'localhost' && (\n <JsonViewerButton jsonViewProps={{ collapsed: 1 }} size=\"small\" variant=\"contained\" padding={0} marginX={1} src={reflection} />\n )}\n </FlexRow>\n )\n}\n","export const trimFlagLabel = (label: string) => {\n if (label.startsWith('is')) {\n return label.substring(2)\n }\n return label\n}\n","import { Typography, TypographyProps } from '@mui/material'\n\nimport { SomeReflection } from '../../SomeReflection'\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { buildTypeString } from './buildTypeString'\n\nexport interface SomeTypeViewerProps extends TypographyProps {\n opacity?: number\n reflection: SomeReflection\n reflectionViewer: React.FC<ReflectionViewerProps>\n}\n\nexport const SomeTypeViewer: React.FC<SomeTypeViewerProps> = ({ opacity = 0.5, reflection, reflectionViewer, ...props }) => {\n const typeReactNode = reflection.type ? buildTypeString(reflection.type, reflectionViewer) : ''\n if (typeof typeReactNode === 'string') {\n return (\n <Typography title=\"SomeTypeViewer\" style={{ opacity }} {...props}>\n {typeReactNode}\n </Typography>\n )\n }\n return <>{typeReactNode}</>\n}\n","import type { ArrayType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildArrayString = (typeObj: ArrayType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n const typeString = typeBuilder(typeObj.elementType, reflectionViewer)\n if (typeof typeString === 'string') {\n parts.push(typeString)\n }\n parts.push('[]')\n return parts\n}\n","import type { IntersectionType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildIntersectionString = (typeObj: IntersectionType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n if (typeObj.types) {\n parts.push(\n typeObj.types\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(' & '),\n )\n }\n return parts\n}\n","import type { ReferenceType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildReferenceString = (typeObj: ReferenceType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n parts.push(typeObj.name)\n if (typeObj.typeArguments) {\n parts.push('<')\n parts.push(\n typeObj.typeArguments\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(', '),\n )\n parts.push('>')\n }\n return parts\n}\n","import type { ReflectionType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\n\nexport const buildRelfectionString = (typeObj: ReflectionType, reflectionViewer: React.FC<ReflectionViewerProps>) => {\n if (typeObj.declaration) {\n return <>{reflectionViewer({ reflection: typeObj.declaration })}</>\n }\n}\n","import type { UnionType } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildUnionString = (typeObj: UnionType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = []\n if (typeObj.types) {\n parts.push(\n typeObj.types\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(' | '),\n )\n }\n return parts\n}\n","import { ReactNode } from 'react'\nimport type { SomeType, Type } from 'typedoc'\n\nimport { ReflectionViewerProps } from '../ReflectionViewerProps'\nimport { buildArrayString } from './buildArrayString'\nimport { buildIntersectionString } from './buildIntersectionString'\nimport { buildReferenceString } from './buildReferenceString'\nimport { buildRelfectionString } from './buildReflectionString'\nimport { buildUnionString } from './buildUnionString'\nimport { TypeBuilder } from './TypeBuilder'\n\nexport const buildTypeString: TypeBuilder = (type: SomeType | Type, reflectionViewer: React.FC<ReflectionViewerProps>): ReactNode => {\n const someType = type as SomeType\n const parts: string[] = []\n\n switch (someType.type) {\n case 'intrinsic':\n parts.push(someType.name)\n break\n case 'intersection': {\n parts.push(...buildIntersectionString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'literal':\n parts.push(JSON.stringify(someType.value))\n break\n case 'array': {\n parts.push(...buildArrayString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'reference': {\n parts.push(...buildReferenceString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'union': {\n parts.push(...buildUnionString(someType, reflectionViewer, buildTypeString))\n break\n }\n case 'reflection': {\n return buildRelfectionString(someType, reflectionViewer)\n }\n default:\n parts.push('#')\n parts.push(someType.type)\n parts.push('#')\n break\n }\n return parts.join('')\n}\n","import { Add, Remove } from '@mui/icons-material'\nimport { Typography } from '@mui/material'\nimport { TreeItem, TreeView } from '@mui/x-tree-view'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport { useNavigate } from 'react-router-dom'\nimport type { ContainerReflection, Reflection } from 'typedoc'\n\nimport { ReflectionLookup } from '../ReflectionLookup'\nimport { FlagFilter } from '../ReflectionViewer'\n\nexport interface ReflectionTreeViewerProps<T extends Reflection = ContainerReflection> extends FlexBoxProps {\n hiddenFlags?: FlagFilter[]\n lookup?: ReflectionLookup\n reflection: T\n searchTerm?: string\n}\n\nexport const ReflectionTreeViewer: React.FC<ReflectionTreeViewerProps> = ({ lookup, reflection, searchTerm, ...props }) => {\n const navigate = useNavigate()\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n {/* TODO - move this into a title component */}\n {/*{nameViewer === undefined ? <NameViewer variant={variant} reflection={reflection} /> : nameViewer}*/}\n {/*{reflection.comment ? <CommentViewer comment={reflection.comment} /> : null}*/}\n {/*{reflection.sources ? (*/}\n {/* <>*/}\n {/* {reflection.sources.map((source, index) => {*/}\n {/* return <SourceViewer key={index} source={source} />*/}\n {/* })}*/}\n {/* </>*/}\n {/*) : null}*/}\n {/* TODO - when searching do not include categories that dont have children, pull maps out of view */}\n <TreeView\n aria-label=\"XYO SDK Documentation\"\n defaultExpandIcon={<Add />}\n defaultCollapseIcon={<Remove />}\n defaultExpanded={reflection.groups ? [reflection.groups[0].title] : []}\n >\n {reflection.groups?.map((group, index) => (\n <TreeItem key={`primary-${index}`} nodeId={group.title} label={<Typography variant=\"h6\">{group.title}</Typography>}>\n {group.children.map((child, jndex) => {\n const searchTermTrimmed = searchTerm?.trim().toLowerCase()\n const childReflection = typeof child === 'number' ? lookup?.[child as number] : child\n return childReflection && (!searchTermTrimmed || childReflection.name.toLowerCase().indexOf(searchTermTrimmed) !== -1) ? (\n <TreeItem\n key={`secondary-${index}- ${jndex}`}\n nodeId={`declaration-${childReflection?.id}`}\n label={childReflection.name}\n onClick={() => {\n const hash = `#${childReflection.name}`\n navigate({ hash })\n document.querySelector(hash)?.scrollIntoView({ behavior: 'smooth' })\n }}\n />\n ) : null\n })}\n </TreeItem>\n ))}\n </TreeView>\n </FlexCol>\n )\n}\n"],"mappings":"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","names":["FlexCol","FlexRow","useState","Typography","FlexCol","FlexRow","FlexCol","jsx","Typography","Typography","Fragment","jsx","Fragment","jsx","Typography","Fragment","jsx","jsxs","Typography","jsx","jsxs","hide","FlexCol","jsx","jsxs","hide","hiddenFlags","FlexCol","FlexRow","Typography","Typography","FlexCol","jsx","jsx","jsxs","useState","props","FlexCol","FlexRow"]}
@@ -1,4 +1,5 @@
1
- const createLookup = (reflection) => {
1
+ // src/createLookup.ts
2
+ var createLookup = (reflection) => {
2
3
  const lookup = {};
3
4
  reflection.children?.forEach((item) => lookup[item.id] = item);
4
5
  return lookup;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/createLookup.ts"],"sourcesContent":["import type { ContainerReflection, DeclarationReflection } from 'typedoc'\n\nexport const createLookup = <T extends DeclarationReflection>(reflection: ContainerReflection) => {\n const lookup: Record<number, T> = {}\n reflection.children?.forEach((item) => (lookup[item.id] = item as unknown as T))\n return lookup\n}\n"],"mappings":"AAEO,MAAM,eAAe,CAAkC,eAAoC;AAChG,QAAM,SAA4B,CAAC;AACnC,aAAW,UAAU,QAAQ,CAAC,SAAU,OAAO,KAAK,EAAE,IAAI,IAAqB;AAC/E,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../src/createLookup.ts"],"sourcesContent":["import type { ContainerReflection, DeclarationReflection } from 'typedoc'\n\nexport const createLookup = <T extends DeclarationReflection>(reflection: ContainerReflection) => {\n const lookup: Record<number, T> = {}\n reflection.children?.forEach((item) => (lookup[item.id] = item as unknown as T))\n return lookup\n}\n"],"mappings":";AAEO,IAAM,eAAe,CAAkC,eAAoC;AAChG,QAAM,SAA4B,CAAC;AACnC,aAAW,UAAU,QAAQ,CAAC,SAAU,OAAO,KAAK,EAAE,IAAI,IAAqB;AAC/E,SAAO;AACT;","names":[]}