@xyo-network/react-typedoc 2.68.2 → 2.69.0

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 (48) hide show
  1. package/dist/browser/JsonViewerButton.d.cts.map +1 -1
  2. package/dist/browser/JsonViewerButton.d.mts.map +1 -1
  3. package/dist/browser/JsonViewerButton.d.ts.map +1 -1
  4. package/dist/browser/ReflectionViewer/Declaration.d.cts.map +1 -1
  5. package/dist/browser/ReflectionViewer/Declaration.d.mts.map +1 -1
  6. package/dist/browser/ReflectionViewer/Declaration.d.ts.map +1 -1
  7. package/dist/browser/ReflectionViewer/NameViewer.d.cts.map +1 -1
  8. package/dist/browser/ReflectionViewer/NameViewer.d.mts.map +1 -1
  9. package/dist/browser/ReflectionViewer/NameViewer.d.ts.map +1 -1
  10. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.d.cts +1 -1
  11. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.d.cts.map +1 -1
  12. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.d.mts +1 -1
  13. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.d.mts.map +1 -1
  14. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.d.ts +1 -1
  15. package/dist/browser/ReflectionViewer/ReflectionGroupViewer.d.ts.map +1 -1
  16. package/dist/browser/index.cjs +19 -19
  17. package/dist/browser/index.cjs.map +1 -1
  18. package/dist/browser/index.js +19 -19
  19. package/dist/browser/index.js.map +1 -1
  20. package/dist/node/JsonViewerButton.d.cts.map +1 -1
  21. package/dist/node/JsonViewerButton.d.mts.map +1 -1
  22. package/dist/node/JsonViewerButton.d.ts.map +1 -1
  23. package/dist/node/ReflectionViewer/Declaration.d.cts.map +1 -1
  24. package/dist/node/ReflectionViewer/Declaration.d.mts.map +1 -1
  25. package/dist/node/ReflectionViewer/Declaration.d.ts.map +1 -1
  26. package/dist/node/ReflectionViewer/NameViewer.d.cts.map +1 -1
  27. package/dist/node/ReflectionViewer/NameViewer.d.mts.map +1 -1
  28. package/dist/node/ReflectionViewer/NameViewer.d.ts.map +1 -1
  29. package/dist/node/ReflectionViewer/ReflectionGroupViewer.d.cts +1 -1
  30. package/dist/node/ReflectionViewer/ReflectionGroupViewer.d.cts.map +1 -1
  31. package/dist/node/ReflectionViewer/ReflectionGroupViewer.d.mts +1 -1
  32. package/dist/node/ReflectionViewer/ReflectionGroupViewer.d.mts.map +1 -1
  33. package/dist/node/ReflectionViewer/ReflectionGroupViewer.d.ts +1 -1
  34. package/dist/node/ReflectionViewer/ReflectionGroupViewer.d.ts.map +1 -1
  35. package/dist/node/index.cjs +19 -19
  36. package/dist/node/index.cjs.map +1 -1
  37. package/dist/node/index.js +19 -19
  38. package/dist/node/index.js.map +1 -1
  39. package/package.json +7 -7
  40. package/src/JsonViewerButton.tsx +3 -1
  41. package/src/ReflectionViewer/Declaration.tsx +5 -1
  42. package/src/ReflectionViewer/NameViewer.tsx +8 -6
  43. package/src/ReflectionViewer/Project.tsx +1 -1
  44. package/src/ReflectionViewer/ReflectionGroupViewer.tsx +42 -41
  45. package/src/ReflectionViewer/ReflectionViewer.tsx +14 -14
  46. package/src/TreeViewer/Reflection.tsx +12 -12
  47. package/src/TreeViewer/ReflectionGroup.tsx +4 -4
  48. package/src/TwoPanelReflectionViewer.tsx +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/CommentViewer.tsx","../../src/JsonViewerButton.tsx","../../src/ProjectTwoPanelReflectionViewer.tsx","../../src/createLookup.ts","../../src/ReflectionViewer/ReflectionGroupViewer.tsx","../../src/resolveChildren.ts","../../src/ReflectionViewer/ReflectionViewer.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/ReflectionViewer/Container.tsx","../../src/ReflectionViewer/Declaration.tsx","../../src/ReflectionViewer/DeclarationContainer.tsx","../../src/ReflectionViewer/Project.tsx","../../src/TwoPanelReflectionViewer.tsx","../../src/TreeViewer/Reflection.tsx","../../src/TreeViewer/ReflectionGroup.tsx","../../src/SourceViewer.tsx"],"sourcesContent":["export * from './CommentViewer'\nexport * from './JsonViewerButton'\nexport * from './ProjectTwoPanelReflectionViewer'\nexport * from './ReflectionLookup'\nexport * from './ReflectionViewer'\nexport * from './SomeReflection'\nexport * from './SourceViewer'\nexport * from './TreeViewer'\nexport * from './TwoPanelReflectionViewer'\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 { Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { lazy, Suspense, useState } from 'react'\nimport type { 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 { assertEx } from '@xylabs/assert'\nimport type { ProjectReflection } from 'typedoc'\n\nimport { ContainerReflectionViewerProps, DeclarationContainerReflectionViewer } from './ReflectionViewer'\nimport { TwoPanelReflectionViewer } from './TwoPanelReflectionViewer'\n\nexport const ProjectTwoPanelReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n itemRenderer = DeclarationContainerReflectionViewer,\n ...props\n}) => {\n assertEx(reflection.isProject, 'Project expected to be Project')\n return <TwoPanelReflectionViewer itemRenderer={itemRenderer} reflection={reflection} {...props} />\n}\n","import type { ContainerReflection, DeclarationReflection } from 'typedoc'\n\nexport const createLookup = <T extends DeclarationReflection>(reflection: ContainerReflection) => {\n const lookup: Record<number, T> = {}\n if (reflection.children) for (const item of reflection.children) 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 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 }\n case 'number': {\n const childObj = lookup[child]\n if (childObj === undefined) {\n throw new Error(`Child Reference Not Found [${child}]`)\n }\n return childObj\n }\n default: {\n throw new Error(`Invalid Child Type [${typeof child}, ${child}]`)\n }\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 { 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.slice(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 '<',\n typeObj.typeArguments\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(', '),\n '>',\n )\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 }\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 }\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('#', someType.type, '#')\n break\n }\n }\n return parts.join('')\n}\n","import type { ContainerReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport interface ContainerReflectionViewerProps<T extends ContainerReflection = ContainerReflection> extends ReflectionViewerProps<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n itemRenderer?: React.FC<ReflectionViewerProps<any>>\n}\n\nexport const ContainerReflectionViewer: React.FC<ContainerReflectionViewerProps> = ({\n children,\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = createLookup(reflection)\n\n return (\n <ReflectionViewer title=\"ContainerReflectionViewer\" sources reflection={reflection} lookup={lookup} {...props}>\n {reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n margin={1}\n lookup={lookup}\n renderer={itemRenderer}\n key={group.title}\n group={group}\n reflection={reflection}\n hiddenFlags={hiddenFlags}\n alignItems=\"stretch\"\n />\n )\n })}\n {children}\n </ReflectionViewer>\n )\n}\n","import type { DeclarationReflection, SignatureReflection } from 'typedoc'\n\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({ reflection, hiddenFlags, ...props }) => {\n const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {\n return Array.isArray(signatures) ? signatures : signatures ? [signatures] : undefined\n }\n\n return (\n <ReflectionViewer\n nameViewer={reflection.signatures || reflection.getSignature || reflection.setSignature ? null : undefined}\n title=\"DeclarationReflectionViewer\"\n hiddenFlags={hiddenFlags}\n reflection={reflection}\n {...props}\n >\n {reflection.signatures?.map((signature) => {\n return <ReflectionViewer key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.getSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.setSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n </ReflectionViewer>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { useLocation } from 'react-router-dom'\nimport type { DeclarationReflection } from 'typedoc'\n\nimport { ContainerReflectionViewer, ContainerReflectionViewerProps } from './Container'\nimport { DeclarationReflectionViewer } from './Declaration'\n\nexport interface DeclarationContainerReflectionViewerProps extends ContainerReflectionViewerProps {\n reflection: DeclarationReflection\n}\n\nexport const DeclarationContainerReflectionViewer: React.FC<DeclarationContainerReflectionViewerProps> = ({\n reflection,\n lookup,\n itemRenderer = DeclarationReflectionViewer,\n ...props\n}) => {\n const { hash } = useLocation()\n const theme = useTheme()\n\n return (\n <ContainerReflectionViewer\n title=\"DeclarationContainerReflectionViewer\"\n paper={hash.slice(1) === reflection.name}\n bgcolor={hash.slice(1) === reflection.name ? theme.palette.background.default : undefined}\n lookup={lookup}\n itemRenderer={itemRenderer}\n reflection={reflection}\n {...props}\n />\n )\n}\n","import { useMemo } from 'react'\nimport type { ProjectReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ContainerReflectionViewerProps } from './Container'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\n\nexport const ProjectReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = useMemo(() => createLookup(reflection), [reflection])\n return (\n <ReflectionViewer title=\"ProjectReflectionViewer\" hiddenFlags={hiddenFlags} reflection={reflection} {...props}>\n {useMemo(() => {\n return reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n autoscroll\n variant=\"h6\"\n lookup={lookup}\n key={group.title}\n renderer={itemRenderer}\n group={group}\n reflection={reflection}\n alignItems=\"stretch\"\n hiddenFlags={hiddenFlags}\n />\n )\n })\n }, [lookup, reflection, hiddenFlags, itemRenderer])}\n </ReflectionViewer>\n )\n}\n","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 { 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().includes(searchTermTrimmed)) ? (\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 { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport type { SourceReference } from 'typedoc'\n\nexport interface SourceViewerProps extends FlexBoxProps {\n source: SourceReference\n}\n\nexport const SourceViewer: React.FC<SourceViewerProps> = ({ source, ...props }) => {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n <Typography style={{ opacity: 0.5 }} variant=\"body2\">\n <i>{source.fileName}</i>\n </Typography>\n </FlexCol>\n )\n}\n"],"mappings":"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","names":["import_material","import_jsx_runtime","import_material","import_react_flexbox","import_react","import_react_flexbox","import_material","import_react_flexbox","import_material","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","hide","import_jsx_runtime","hide","hiddenFlags","import_jsx_runtime","import_jsx_runtime","import_material","import_react_router_dom","import_jsx_runtime","import_react","import_jsx_runtime","import_icons_material","import_material","import_react_flexbox","import_react","import_material","import_react_flexbox","import_react_router_dom","import_jsx_runtime","_a","import_material","import_react_flexbox","import_jsx_runtime","import_jsx_runtime","props","import_jsx_runtime","import_material","import_react_flexbox","import_jsx_runtime"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/CommentViewer.tsx","../../src/JsonViewerButton.tsx","../../src/ProjectTwoPanelReflectionViewer.tsx","../../src/createLookup.ts","../../src/ReflectionViewer/ReflectionGroupViewer.tsx","../../src/resolveChildren.ts","../../src/ReflectionViewer/ReflectionViewer.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/ReflectionViewer/Container.tsx","../../src/ReflectionViewer/Declaration.tsx","../../src/ReflectionViewer/DeclarationContainer.tsx","../../src/ReflectionViewer/Project.tsx","../../src/TwoPanelReflectionViewer.tsx","../../src/TreeViewer/Reflection.tsx","../../src/TreeViewer/ReflectionGroup.tsx","../../src/SourceViewer.tsx"],"sourcesContent":["export * from './CommentViewer'\nexport * from './JsonViewerButton'\nexport * from './ProjectTwoPanelReflectionViewer'\nexport * from './ReflectionLookup'\nexport * from './ReflectionViewer'\nexport * from './SomeReflection'\nexport * from './SourceViewer'\nexport * from './TreeViewer'\nexport * from './TwoPanelReflectionViewer'\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 { Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { lazy, Suspense, useState } from 'react'\nimport type { 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 ?\n <DialogTitle>{title}</DialogTitle>\n : 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 { assertEx } from '@xylabs/assert'\nimport type { ProjectReflection } from 'typedoc'\n\nimport { ContainerReflectionViewerProps, DeclarationContainerReflectionViewer } from './ReflectionViewer'\nimport { TwoPanelReflectionViewer } from './TwoPanelReflectionViewer'\n\nexport const ProjectTwoPanelReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n itemRenderer = DeclarationContainerReflectionViewer,\n ...props\n}) => {\n assertEx(reflection.isProject, 'Project expected to be Project')\n return <TwoPanelReflectionViewer itemRenderer={itemRenderer} reflection={reflection} {...props} />\n}\n","import type { ContainerReflection, DeclarationReflection } from 'typedoc'\n\nexport const createLookup = <T extends DeclarationReflection>(reflection: ContainerReflection) => {\n const lookup: Record<number, T> = {}\n if (reflection.children) for (const item of reflection.children) 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\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 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 resolvedChildren = resolveChildren(group, lookup) ?? []\n\n const visibleChildren =\n hiddenFlags ?\n resolvedChildren.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 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 }\n case 'number': {\n const childObj = lookup[child]\n if (childObj === undefined) {\n throw new Error(`Child Reference Not Found [${child}]`)\n }\n return childObj\n }\n default: {\n throw new Error(`Invalid Child Type [${typeof child}, ${child}]`)\n }\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 : nameViewer}\n {reflection.comment ?\n <CommentViewer comment={reflection.comment} />\n : 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 { 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 ?\n <>:&nbsp;</>\n : 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.slice(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 '<',\n typeObj.typeArguments\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(', '),\n '>',\n )\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 }\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 }\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('#', someType.type, '#')\n break\n }\n }\n return parts.join('')\n}\n","import type { ContainerReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport interface ContainerReflectionViewerProps<T extends ContainerReflection = ContainerReflection> extends ReflectionViewerProps<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n itemRenderer?: React.FC<ReflectionViewerProps<any>>\n}\n\nexport const ContainerReflectionViewer: React.FC<ContainerReflectionViewerProps> = ({\n children,\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = createLookup(reflection)\n\n return (\n <ReflectionViewer title=\"ContainerReflectionViewer\" sources reflection={reflection} lookup={lookup} {...props}>\n {reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n margin={1}\n lookup={lookup}\n renderer={itemRenderer}\n key={group.title}\n group={group}\n reflection={reflection}\n hiddenFlags={hiddenFlags}\n alignItems=\"stretch\"\n />\n )\n })}\n {children}\n </ReflectionViewer>\n )\n}\n","import type { DeclarationReflection, SignatureReflection } from 'typedoc'\n\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({ reflection, hiddenFlags, ...props }) => {\n const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {\n return (\n Array.isArray(signatures) ? signatures\n : signatures ? [signatures]\n : undefined\n )\n }\n\n return (\n <ReflectionViewer\n nameViewer={reflection.signatures || reflection.getSignature || reflection.setSignature ? null : undefined}\n title=\"DeclarationReflectionViewer\"\n hiddenFlags={hiddenFlags}\n reflection={reflection}\n {...props}\n >\n {reflection.signatures?.map((signature) => {\n return <ReflectionViewer key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.getSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.setSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n </ReflectionViewer>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { useLocation } from 'react-router-dom'\nimport type { DeclarationReflection } from 'typedoc'\n\nimport { ContainerReflectionViewer, ContainerReflectionViewerProps } from './Container'\nimport { DeclarationReflectionViewer } from './Declaration'\n\nexport interface DeclarationContainerReflectionViewerProps extends ContainerReflectionViewerProps {\n reflection: DeclarationReflection\n}\n\nexport const DeclarationContainerReflectionViewer: React.FC<DeclarationContainerReflectionViewerProps> = ({\n reflection,\n lookup,\n itemRenderer = DeclarationReflectionViewer,\n ...props\n}) => {\n const { hash } = useLocation()\n const theme = useTheme()\n\n return (\n <ContainerReflectionViewer\n title=\"DeclarationContainerReflectionViewer\"\n paper={hash.slice(1) === reflection.name}\n bgcolor={hash.slice(1) === reflection.name ? theme.palette.background.default : undefined}\n lookup={lookup}\n itemRenderer={itemRenderer}\n reflection={reflection}\n {...props}\n />\n )\n}\n","import { useMemo } from 'react'\nimport type { ProjectReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ContainerReflectionViewerProps } from './Container'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\n\nexport const ProjectReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = useMemo(() => createLookup(reflection), [reflection])\n return (\n <ReflectionViewer title=\"ProjectReflectionViewer\" hiddenFlags={hiddenFlags} reflection={reflection} {...props}>\n {useMemo(() => {\n return reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n autoScroll\n variant=\"h6\"\n lookup={lookup}\n key={group.title}\n renderer={itemRenderer}\n group={group}\n reflection={reflection}\n alignItems=\"stretch\"\n hiddenFlags={hiddenFlags}\n />\n )\n })\n }, [lookup, reflection, hiddenFlags, itemRenderer])}\n </ReflectionViewer>\n )\n}\n","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 { 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().includes(searchTermTrimmed)) ?\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 { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport type { SourceReference } from 'typedoc'\n\nexport interface SourceViewerProps extends FlexBoxProps {\n source: SourceReference\n}\n\nexport const SourceViewer: React.FC<SourceViewerProps> = ({ source, ...props }) => {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n <Typography style={{ opacity: 0.5 }} variant=\"body2\">\n <i>{source.fileName}</i>\n </Typography>\n </FlexCol>\n )\n}\n"],"mappings":"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","names":["import_material","import_jsx_runtime","import_material","import_react_flexbox","import_react","import_react_flexbox","import_material","import_react_flexbox","import_material","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","hide","import_jsx_runtime","hide","import_jsx_runtime","import_jsx_runtime","import_material","import_react_router_dom","import_jsx_runtime","import_react","import_jsx_runtime","import_icons_material","import_material","import_react_flexbox","import_react","import_material","import_react_flexbox","import_react_router_dom","import_jsx_runtime","_a","import_material","import_react_flexbox","import_jsx_runtime","import_jsx_runtime","props","import_jsx_runtime","import_material","import_react_flexbox","import_jsx_runtime"]}
@@ -221,13 +221,13 @@ var NameViewer = ({ reflectionViewer, variant, reflection, ...props }) => {
221
221
  // src/ReflectionViewer/ReflectionViewer.tsx
222
222
  import { jsx as jsx6, jsxs as jsxs3 } from "react/jsx-runtime";
223
223
  var hide = (flags, hiddenFlags = []) => {
224
- let hide2 = false;
224
+ let hide3 = false;
225
225
  hiddenFlags.map((hiddenFlag) => {
226
226
  if (flags == null ? void 0 : flags[hiddenFlag]) {
227
- hide2 = true;
227
+ hide3 = true;
228
228
  }
229
229
  });
230
- return hide2;
230
+ return hide3;
231
231
  };
232
232
  var ReflectionViewer = ({ variant, nameViewer, children, reflection, hiddenFlags, ...props }) => {
233
233
  var _a;
@@ -244,8 +244,17 @@ var ReflectionViewer = ({ variant, nameViewer, children, reflection, hiddenFlags
244
244
 
245
245
  // src/ReflectionViewer/ReflectionGroupViewer.tsx
246
246
  import { jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
247
+ var hide2 = (flags, hiddenFlags = []) => {
248
+ let hide3 = false;
249
+ hiddenFlags.map((hiddenFlag) => {
250
+ if (flags == null ? void 0 : flags[hiddenFlag]) {
251
+ hide3 = true;
252
+ }
253
+ });
254
+ return hide3;
255
+ };
247
256
  var ReflectionGroupViewer = ({
248
- autoscroll = false,
257
+ autoScroll = false,
249
258
  children,
250
259
  hiddenFlags,
251
260
  group,
@@ -254,26 +263,17 @@ var ReflectionGroupViewer = ({
254
263
  variant,
255
264
  ...props
256
265
  }) => {
257
- const hide2 = (flags, hiddenFlags2 = []) => {
258
- let hide3 = false;
259
- hiddenFlags2.map((hiddenFlag) => {
260
- if (flags == null ? void 0 : flags[hiddenFlag]) {
261
- hide3 = true;
262
- }
263
- });
264
- return hide3;
265
- };
266
- const resolvedChildern = resolveChildren(group, lookup) ?? [];
267
- const visibleChildren = hiddenFlags ? resolvedChildern.reduce((acc, item) => {
266
+ const resolvedChildren = resolveChildren(group, lookup) ?? [];
267
+ const visibleChildren = hiddenFlags ? resolvedChildren.reduce((acc, item) => {
268
268
  return acc + (hide2(item.flags, hiddenFlags) ? 0 : 1);
269
269
  }, 0) : 1;
270
270
  const { hash } = useLocation();
271
271
  useEffect(() => {
272
272
  var _a;
273
- if (hash && autoscroll) {
273
+ if (hash && autoScroll) {
274
274
  (_a = document.querySelector(hash)) == null ? void 0 : _a.scrollIntoView({ behavior: "smooth" });
275
275
  }
276
- }, [hash, autoscroll]);
276
+ }, [hash, autoScroll]);
277
277
  return visibleChildren > 0 ? /* @__PURE__ */ jsxs4(FlexCol3, { title: "ReflectionGroupViewer", ...props, children: [
278
278
  /* @__PURE__ */ jsxs4(FlexRow2, { marginY: 1, justifyContent: "flex-start", children: [
279
279
  /* @__PURE__ */ jsx7(Typography4, { variant, children: group.title }),
@@ -402,7 +402,7 @@ var ProjectReflectionViewer = ({
402
402
  return /* @__PURE__ */ jsx11(
403
403
  ReflectionGroupViewer,
404
404
  {
405
- autoscroll: true,
405
+ autoScroll: true,
406
406
  variant: "h6",
407
407
  lookup,
408
408
  renderer: itemRenderer,
@@ -519,7 +519,7 @@ var TwoPanelReflectionViewer = ({
519
519
  return /* @__PURE__ */ jsx14(
520
520
  ReflectionGroupViewer,
521
521
  {
522
- autoscroll: true,
522
+ autoScroll: true,
523
523
  variant: "h6",
524
524
  lookup,
525
525
  renderer: itemRenderer,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/CommentViewer.tsx","../../src/JsonViewerButton.tsx","../../src/ProjectTwoPanelReflectionViewer.tsx","../../src/createLookup.ts","../../src/ReflectionViewer/ReflectionGroupViewer.tsx","../../src/resolveChildren.ts","../../src/ReflectionViewer/ReflectionViewer.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/ReflectionViewer/Container.tsx","../../src/ReflectionViewer/Declaration.tsx","../../src/ReflectionViewer/DeclarationContainer.tsx","../../src/ReflectionViewer/Project.tsx","../../src/TwoPanelReflectionViewer.tsx","../../src/TreeViewer/Reflection.tsx","../../src/TreeViewer/ReflectionGroup.tsx","../../src/SourceViewer.tsx"],"sourcesContent":["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 { Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { lazy, Suspense, useState } from 'react'\nimport type { 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 { assertEx } from '@xylabs/assert'\nimport type { ProjectReflection } from 'typedoc'\n\nimport { ContainerReflectionViewerProps, DeclarationContainerReflectionViewer } from './ReflectionViewer'\nimport { TwoPanelReflectionViewer } from './TwoPanelReflectionViewer'\n\nexport const ProjectTwoPanelReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n itemRenderer = DeclarationContainerReflectionViewer,\n ...props\n}) => {\n assertEx(reflection.isProject, 'Project expected to be Project')\n return <TwoPanelReflectionViewer itemRenderer={itemRenderer} reflection={reflection} {...props} />\n}\n","import type { ContainerReflection, DeclarationReflection } from 'typedoc'\n\nexport const createLookup = <T extends DeclarationReflection>(reflection: ContainerReflection) => {\n const lookup: Record<number, T> = {}\n if (reflection.children) for (const item of reflection.children) 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 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 }\n case 'number': {\n const childObj = lookup[child]\n if (childObj === undefined) {\n throw new Error(`Child Reference Not Found [${child}]`)\n }\n return childObj\n }\n default: {\n throw new Error(`Invalid Child Type [${typeof child}, ${child}]`)\n }\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 { 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.slice(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 '<',\n typeObj.typeArguments\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(', '),\n '>',\n )\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 }\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 }\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('#', someType.type, '#')\n break\n }\n }\n return parts.join('')\n}\n","import type { ContainerReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport interface ContainerReflectionViewerProps<T extends ContainerReflection = ContainerReflection> extends ReflectionViewerProps<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n itemRenderer?: React.FC<ReflectionViewerProps<any>>\n}\n\nexport const ContainerReflectionViewer: React.FC<ContainerReflectionViewerProps> = ({\n children,\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = createLookup(reflection)\n\n return (\n <ReflectionViewer title=\"ContainerReflectionViewer\" sources reflection={reflection} lookup={lookup} {...props}>\n {reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n margin={1}\n lookup={lookup}\n renderer={itemRenderer}\n key={group.title}\n group={group}\n reflection={reflection}\n hiddenFlags={hiddenFlags}\n alignItems=\"stretch\"\n />\n )\n })}\n {children}\n </ReflectionViewer>\n )\n}\n","import type { DeclarationReflection, SignatureReflection } from 'typedoc'\n\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({ reflection, hiddenFlags, ...props }) => {\n const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {\n return Array.isArray(signatures) ? signatures : signatures ? [signatures] : undefined\n }\n\n return (\n <ReflectionViewer\n nameViewer={reflection.signatures || reflection.getSignature || reflection.setSignature ? null : undefined}\n title=\"DeclarationReflectionViewer\"\n hiddenFlags={hiddenFlags}\n reflection={reflection}\n {...props}\n >\n {reflection.signatures?.map((signature) => {\n return <ReflectionViewer key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.getSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.setSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n </ReflectionViewer>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { useLocation } from 'react-router-dom'\nimport type { DeclarationReflection } from 'typedoc'\n\nimport { ContainerReflectionViewer, ContainerReflectionViewerProps } from './Container'\nimport { DeclarationReflectionViewer } from './Declaration'\n\nexport interface DeclarationContainerReflectionViewerProps extends ContainerReflectionViewerProps {\n reflection: DeclarationReflection\n}\n\nexport const DeclarationContainerReflectionViewer: React.FC<DeclarationContainerReflectionViewerProps> = ({\n reflection,\n lookup,\n itemRenderer = DeclarationReflectionViewer,\n ...props\n}) => {\n const { hash } = useLocation()\n const theme = useTheme()\n\n return (\n <ContainerReflectionViewer\n title=\"DeclarationContainerReflectionViewer\"\n paper={hash.slice(1) === reflection.name}\n bgcolor={hash.slice(1) === reflection.name ? theme.palette.background.default : undefined}\n lookup={lookup}\n itemRenderer={itemRenderer}\n reflection={reflection}\n {...props}\n />\n )\n}\n","import { useMemo } from 'react'\nimport type { ProjectReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ContainerReflectionViewerProps } from './Container'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\n\nexport const ProjectReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = useMemo(() => createLookup(reflection), [reflection])\n return (\n <ReflectionViewer title=\"ProjectReflectionViewer\" hiddenFlags={hiddenFlags} reflection={reflection} {...props}>\n {useMemo(() => {\n return reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n autoscroll\n variant=\"h6\"\n lookup={lookup}\n key={group.title}\n renderer={itemRenderer}\n group={group}\n reflection={reflection}\n alignItems=\"stretch\"\n hiddenFlags={hiddenFlags}\n />\n )\n })\n }, [lookup, reflection, hiddenFlags, itemRenderer])}\n </ReflectionViewer>\n )\n}\n","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 { 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().includes(searchTermTrimmed)) ? (\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 { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport type { SourceReference } from 'typedoc'\n\nexport interface SourceViewerProps extends FlexBoxProps {\n source: SourceReference\n}\n\nexport const SourceViewer: React.FC<SourceViewerProps> = ({ source, ...props }) => {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n <Typography style={{ opacity: 0.5 }} variant=\"body2\">\n <i>{source.fileName}</i>\n </Typography>\n </FlexCol>\n )\n}\n"],"mappings":"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","names":["jsx","Typography","FlexCol","FlexRow","FlexCol","Typography","Typography","Fragment","jsx","Fragment","jsx","Typography","Fragment","jsx","jsxs","Typography","jsx","jsxs","hide","FlexCol","jsx","jsxs","hide","hiddenFlags","FlexCol","FlexRow","Typography","jsx","jsxs","jsx","jsxs","useLocation","jsx","useLocation","jsx","useTheme","FlexCol","FlexRow","useMemo","useState","Typography","FlexCol","jsx","_a","Typography","FlexCol","FlexRow","jsx","jsxs","FlexCol","FlexRow","Typography","jsx","jsxs","useMemo","useTheme","useState","props","FlexCol","FlexRow","jsx","Typography","FlexCol","jsx"]}
1
+ {"version":3,"sources":["../../src/CommentViewer.tsx","../../src/JsonViewerButton.tsx","../../src/ProjectTwoPanelReflectionViewer.tsx","../../src/createLookup.ts","../../src/ReflectionViewer/ReflectionGroupViewer.tsx","../../src/resolveChildren.ts","../../src/ReflectionViewer/ReflectionViewer.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/ReflectionViewer/Container.tsx","../../src/ReflectionViewer/Declaration.tsx","../../src/ReflectionViewer/DeclarationContainer.tsx","../../src/ReflectionViewer/Project.tsx","../../src/TwoPanelReflectionViewer.tsx","../../src/TreeViewer/Reflection.tsx","../../src/TreeViewer/ReflectionGroup.tsx","../../src/SourceViewer.tsx"],"sourcesContent":["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 { Dialog, DialogActions, DialogContent, DialogTitle } from '@mui/material'\nimport { ButtonEx, ButtonExProps } from '@xylabs/react-button'\nimport { lazy, Suspense, useState } from 'react'\nimport type { 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 ?\n <DialogTitle>{title}</DialogTitle>\n : 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 { assertEx } from '@xylabs/assert'\nimport type { ProjectReflection } from 'typedoc'\n\nimport { ContainerReflectionViewerProps, DeclarationContainerReflectionViewer } from './ReflectionViewer'\nimport { TwoPanelReflectionViewer } from './TwoPanelReflectionViewer'\n\nexport const ProjectTwoPanelReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n itemRenderer = DeclarationContainerReflectionViewer,\n ...props\n}) => {\n assertEx(reflection.isProject, 'Project expected to be Project')\n return <TwoPanelReflectionViewer itemRenderer={itemRenderer} reflection={reflection} {...props} />\n}\n","import type { ContainerReflection, DeclarationReflection } from 'typedoc'\n\nexport const createLookup = <T extends DeclarationReflection>(reflection: ContainerReflection) => {\n const lookup: Record<number, T> = {}\n if (reflection.children) for (const item of reflection.children) 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\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 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 resolvedChildren = resolveChildren(group, lookup) ?? []\n\n const visibleChildren =\n hiddenFlags ?\n resolvedChildren.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 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 }\n case 'number': {\n const childObj = lookup[child]\n if (childObj === undefined) {\n throw new Error(`Child Reference Not Found [${child}]`)\n }\n return childObj\n }\n default: {\n throw new Error(`Invalid Child Type [${typeof child}, ${child}]`)\n }\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 : nameViewer}\n {reflection.comment ?\n <CommentViewer comment={reflection.comment} />\n : 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 { 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 ?\n <>:&nbsp;</>\n : 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.slice(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 '<',\n typeObj.typeArguments\n .map((arg) => {\n return typeBuilder(arg, reflectionViewer)\n })\n .join(', '),\n '>',\n )\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 }\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 }\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('#', someType.type, '#')\n break\n }\n }\n return parts.join('')\n}\n","import type { ContainerReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport interface ContainerReflectionViewerProps<T extends ContainerReflection = ContainerReflection> extends ReflectionViewerProps<T> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n itemRenderer?: React.FC<ReflectionViewerProps<any>>\n}\n\nexport const ContainerReflectionViewer: React.FC<ContainerReflectionViewerProps> = ({\n children,\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = createLookup(reflection)\n\n return (\n <ReflectionViewer title=\"ContainerReflectionViewer\" sources reflection={reflection} lookup={lookup} {...props}>\n {reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n margin={1}\n lookup={lookup}\n renderer={itemRenderer}\n key={group.title}\n group={group}\n reflection={reflection}\n hiddenFlags={hiddenFlags}\n alignItems=\"stretch\"\n />\n )\n })}\n {children}\n </ReflectionViewer>\n )\n}\n","import type { DeclarationReflection, SignatureReflection } from 'typedoc'\n\nimport { ReflectionViewer } from './ReflectionViewer'\nimport { ReflectionViewerProps } from './ReflectionViewerProps'\n\nexport const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({ reflection, hiddenFlags, ...props }) => {\n const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {\n return (\n Array.isArray(signatures) ? signatures\n : signatures ? [signatures]\n : undefined\n )\n }\n\n return (\n <ReflectionViewer\n nameViewer={reflection.signatures || reflection.getSignature || reflection.setSignature ? null : undefined}\n title=\"DeclarationReflectionViewer\"\n hiddenFlags={hiddenFlags}\n reflection={reflection}\n {...props}\n >\n {reflection.signatures?.map((signature) => {\n return <ReflectionViewer key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.getSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n {safeSignatures(reflection.setSignature)?.map((signature) => {\n return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />\n })}\n </ReflectionViewer>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { useLocation } from 'react-router-dom'\nimport type { DeclarationReflection } from 'typedoc'\n\nimport { ContainerReflectionViewer, ContainerReflectionViewerProps } from './Container'\nimport { DeclarationReflectionViewer } from './Declaration'\n\nexport interface DeclarationContainerReflectionViewerProps extends ContainerReflectionViewerProps {\n reflection: DeclarationReflection\n}\n\nexport const DeclarationContainerReflectionViewer: React.FC<DeclarationContainerReflectionViewerProps> = ({\n reflection,\n lookup,\n itemRenderer = DeclarationReflectionViewer,\n ...props\n}) => {\n const { hash } = useLocation()\n const theme = useTheme()\n\n return (\n <ContainerReflectionViewer\n title=\"DeclarationContainerReflectionViewer\"\n paper={hash.slice(1) === reflection.name}\n bgcolor={hash.slice(1) === reflection.name ? theme.palette.background.default : undefined}\n lookup={lookup}\n itemRenderer={itemRenderer}\n reflection={reflection}\n {...props}\n />\n )\n}\n","import { useMemo } from 'react'\nimport type { ProjectReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup'\nimport { ContainerReflectionViewerProps } from './Container'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer'\nimport { ReflectionViewer } from './ReflectionViewer'\n\nexport const ProjectReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({\n reflection,\n hiddenFlags,\n itemRenderer = ReflectionViewer,\n ...props\n}) => {\n const lookup = useMemo(() => createLookup(reflection), [reflection])\n return (\n <ReflectionViewer title=\"ProjectReflectionViewer\" hiddenFlags={hiddenFlags} reflection={reflection} {...props}>\n {useMemo(() => {\n return reflection.groups?.map((group: ReflectionGroup) => {\n return (\n <ReflectionGroupViewer\n autoScroll\n variant=\"h6\"\n lookup={lookup}\n key={group.title}\n renderer={itemRenderer}\n group={group}\n reflection={reflection}\n alignItems=\"stretch\"\n hiddenFlags={hiddenFlags}\n />\n )\n })\n }, [lookup, reflection, hiddenFlags, itemRenderer])}\n </ReflectionViewer>\n )\n}\n","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 { 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().includes(searchTermTrimmed)) ?\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 { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'\nimport type { SourceReference } from 'typedoc'\n\nexport interface SourceViewerProps extends FlexBoxProps {\n source: SourceReference\n}\n\nexport const SourceViewer: React.FC<SourceViewerProps> = ({ source, ...props }) => {\n return (\n <FlexCol alignItems=\"stretch\" {...props}>\n <Typography style={{ opacity: 0.5 }} variant=\"body2\">\n <i>{source.fileName}</i>\n </Typography>\n </FlexCol>\n )\n}\n"],"mappings":"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","names":["jsx","Typography","FlexCol","FlexRow","FlexCol","Typography","Typography","Fragment","jsx","Fragment","jsx","Typography","Fragment","jsx","jsxs","Typography","jsx","jsxs","hide","FlexCol","jsx","jsxs","hide","FlexCol","FlexRow","Typography","jsx","jsxs","jsx","jsxs","useLocation","jsx","useLocation","jsx","useTheme","FlexCol","FlexRow","useMemo","useState","Typography","FlexCol","jsx","_a","Typography","FlexCol","FlexRow","jsx","jsxs","FlexCol","FlexRow","Typography","jsx","jsxs","useMemo","useTheme","useState","props","FlexCol","FlexRow","jsx","Typography","FlexCol","jsx"]}
package/package.json CHANGED
@@ -14,18 +14,18 @@
14
14
  "@emotion/styled": "^11.11.0",
15
15
  "@mui/system": "^5.15.9",
16
16
  "@mui/x-tree-view": "^6.17.0",
17
- "@xylabs/assert": "^2.14.2",
18
- "@xylabs/react-button": "^3.0.39",
19
- "@xylabs/react-flexbox": "^3.0.39",
17
+ "@xylabs/assert": "^3.0.1",
18
+ "@xylabs/react-button": "^3.1.0",
19
+ "@xylabs/react-flexbox": "^3.1.0",
20
20
  "react-json-view": "^1.21.3",
21
- "react-router-dom": "^6.22.0",
21
+ "react-router-dom": "^6.22.1",
22
22
  "typedoc": "^0.25.8",
23
23
  "typescript": "^5.3.3"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@storybook/react": "^7.6.16",
27
- "@xylabs/ts-scripts-yarn3": "^3.2.42",
28
- "@xylabs/tsconfig-react": "^3.2.42",
27
+ "@xylabs/ts-scripts-yarn3": "^3.4.1",
28
+ "@xylabs/tsconfig-react": "^3.4.1",
29
29
  "typescript": "^5.3.3"
30
30
  },
31
31
  "peerDependencies": {
@@ -86,6 +86,6 @@
86
86
  },
87
87
  "sideEffects": false,
88
88
  "types": "dist/browser/index.d.ts",
89
- "version": "2.68.2",
89
+ "version": "2.69.0",
90
90
  "type": "module"
91
91
  }
@@ -18,7 +18,9 @@ export const JsonViewerButton: React.FC<JsonViewerButtonProps> = ({ jsonViewProp
18
18
  JSON
19
19
  </ButtonEx>
20
20
  <Dialog open={open} onClose={() => setOpen(false)}>
21
- {title ? <DialogTitle>{title}</DialogTitle> : null}
21
+ {title ?
22
+ <DialogTitle>{title}</DialogTitle>
23
+ : null}
22
24
  <DialogContent>
23
25
  <Suspense fallback={<div />}>
24
26
  <JsonView src={src} {...jsonViewProps} />
@@ -5,7 +5,11 @@ import { ReflectionViewerProps } from './ReflectionViewerProps'
5
5
 
6
6
  export const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({ reflection, hiddenFlags, ...props }) => {
7
7
  const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {
8
- return Array.isArray(signatures) ? signatures : signatures ? [signatures] : undefined
8
+ return (
9
+ Array.isArray(signatures) ? signatures
10
+ : signatures ? [signatures]
11
+ : undefined
12
+ )
9
13
  }
10
14
 
11
15
  return (