@xyo-network/react-typedoc 7.5.8 → 7.5.11

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 (39) hide show
  1. package/dist/browser/index.mjs +408 -434
  2. package/dist/browser/index.mjs.map +1 -1
  3. package/dist/browser/resolveChildren.d.ts +2 -2
  4. package/dist/browser/resolveChildren.d.ts.map +1 -1
  5. package/package.json +98 -32
  6. package/src/CommentViewer.tsx +0 -17
  7. package/src/JsonViewerButton.tsx +0 -37
  8. package/src/ProjectTwoPanelReflectionViewer.stories.tsx +0 -32
  9. package/src/ProjectTwoPanelReflectionViewer.tsx +0 -16
  10. package/src/ReflectionLookup.ts +0 -3
  11. package/src/ReflectionViewer/Container.tsx +0 -42
  12. package/src/ReflectionViewer/Declaration.tsx +0 -39
  13. package/src/ReflectionViewer/DeclarationContainer.tsx +0 -34
  14. package/src/ReflectionViewer/NameViewer.tsx +0 -48
  15. package/src/ReflectionViewer/Project.tsx +0 -37
  16. package/src/ReflectionViewer/ReflectionGroupViewer.tsx +0 -80
  17. package/src/ReflectionViewer/ReflectionViewer.tsx +0 -48
  18. package/src/ReflectionViewer/ReflectionViewerProps.tsx +0 -17
  19. package/src/ReflectionViewer/SomeTypeViewer/SomeTypeViewer.tsx +0 -27
  20. package/src/ReflectionViewer/SomeTypeViewer/TypeBuilder.ts +0 -6
  21. package/src/ReflectionViewer/SomeTypeViewer/buildArrayString.tsx +0 -14
  22. package/src/ReflectionViewer/SomeTypeViewer/buildIntersectionString.tsx +0 -18
  23. package/src/ReflectionViewer/SomeTypeViewer/buildReferenceString.ts +0 -20
  24. package/src/ReflectionViewer/SomeTypeViewer/buildReflectionString.tsx +0 -10
  25. package/src/ReflectionViewer/SomeTypeViewer/buildTypeString.tsx +0 -50
  26. package/src/ReflectionViewer/SomeTypeViewer/buildUnionString.tsx +0 -18
  27. package/src/ReflectionViewer/SomeTypeViewer/index.ts +0 -1
  28. package/src/ReflectionViewer/index.ts +0 -8
  29. package/src/SomeReflection.ts +0 -9
  30. package/src/SourceViewer.tsx +0 -19
  31. package/src/TreeViewer/Reflection.tsx +0 -67
  32. package/src/TreeViewer/ReflectionGroup.tsx +0 -39
  33. package/src/TreeViewer/index.ts +0 -2
  34. package/src/TwoPanelReflectionViewer.tsx +0 -93
  35. package/src/createLookup.ts +0 -7
  36. package/src/global.d.ts +0 -1
  37. package/src/index.ts +0 -9
  38. package/src/resolveChildren.ts +0 -26
  39. package/src/trimFlagLabel.ts +0 -6
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/CommentViewer.tsx","../../src/JsonViewerButton.tsx","../../src/ProjectTwoPanelReflectionViewer.tsx","../../src/ReflectionViewer/Container.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/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 type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\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 {\n Dialog, DialogActions, DialogContent, DialogTitle,\n} from '@mui/material'\nimport type { ButtonExProps } from '@xylabs/react-button'\nimport { ButtonEx } from '@xylabs/react-button'\nimport type { JsonViewerExProps } from '@xyo-network/react-payload-raw-info'\nimport { JsonViewerEx } from '@xyo-network/react-payload-raw-info'\nimport React, { useState } from 'react'\n\nexport type JsonViewerButtonProps = ButtonExProps & {\n jsonViewProps?: Partial<JsonViewerExProps>\n src: object\n}\n\nexport const JsonViewerButton: React.FC<JsonViewerButtonProps> = ({\n jsonViewProps, src, title, ...props\n}) => {\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 <JsonViewerEx value={src} {...jsonViewProps} />\n </DialogContent>\n <DialogActions>\n <ButtonEx onClick={() => setOpen(false)}>Close</ButtonEx>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n","import { assertEx } from '@xylabs/sdk-js'\nimport React from 'react'\nimport type { ProjectReflection } from 'typedoc'\n\nimport type { ContainerReflectionViewerProps } from './ReflectionViewer/index.ts'\nimport { DeclarationContainerReflectionViewer } from './ReflectionViewer/index.ts'\nimport { TwoPanelReflectionViewer } from './TwoPanelReflectionViewer.tsx'\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 React from 'react'\nimport type { ContainerReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup.ts'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer.tsx'\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\nimport type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'\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 { 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 React, { useEffect } from 'react'\nimport { useLocation } from 'react-router-dom'\nimport type {\n ContainerReflection, ReflectionFlags, ReflectionGroup,\n} from 'typedoc'\n\nimport { JsonViewerButton } from '../JsonViewerButton.tsx'\nimport { resolveChildren } from '../resolveChildren.ts'\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\nimport type { FlagFilter, ReflectionViewerProps } from './ReflectionViewerProps.tsx'\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 for (const hiddenFlag of hiddenFlags) {\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\n return visibleChildren > 0\n ? (\n <FlexCol title=\"ReflectionGroupViewer\" {...props}>\n <FlexRow marginY={1} justifyContent=\"flex-start\">\n <Typography variant={variant}>{group.title}</Typography>\n <JsonViewerButton size=\"small\" variant=\"contained\" padding={0} marginX={1} src={resolveChildren(group, lookup)} />\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 ? (\n <div id={reflection.name} key={reflection.id}>\n {renderer({\n hiddenFlags, lookup, margin: 1, padding: 1, reflection,\n }) as React.ReactNode}\n </div>\n )\n : null\n })}\n {children}\n </FlexCol>\n )\n : null\n}\n","import type { Reflection } from 'typedoc'\n\nimport type { ReflectionLookup } from './ReflectionLookup.ts'\nimport type { SomeReflection } from './SomeReflection.ts'\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 React from 'react'\nimport type { ReflectionFlags } from 'typedoc'\n\nimport { CommentViewer } from '../CommentViewer.tsx'\nimport type { SomeReflection } from '../SomeReflection.ts'\nimport { NameViewer } from './NameViewer.tsx'\nimport type { FlagFilter, ReflectionViewerProps } from './ReflectionViewerProps.tsx'\n\nconst hide = (flags?: ReflectionFlags, hiddenFlags: FlagFilter[] = []) => {\n let hide = false\n for (const hiddenFlag of hiddenFlags) {\n if (flags?.[hiddenFlag]) {\n hide = true\n }\n }\n return hide\n}\n\nexport const ReflectionViewer: React.FC<ReflectionViewerProps> = ({\n variant, nameViewer, children, reflection, hiddenFlags, ...props\n}) => {\n const someReflection = reflection as SomeReflection\n\n return hide(reflection?.flags, hiddenFlags)\n ? null\n : (\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 type { TypographyVariant } from '@mui/material'\nimport {\n Chip, Stack, Typography,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { JsonViewerButton } from '../JsonViewerButton.tsx'\nimport type { SomeReflection } from '../SomeReflection.ts'\nimport { trimFlagLabel } from '../trimFlagLabel.ts'\nimport type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'\nimport { SomeTypeViewer } from './SomeTypeViewer/index.ts'\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> = ({\n reflectionViewer, variant, reflection, ...props\n}) => {\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 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 type { TypographyProps } from '@mui/material'\nimport { Typography } from '@mui/material'\nimport React from 'react'\n\nimport type { SomeReflection } from '../../SomeReflection.ts'\nimport type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport { buildTypeString } from './buildTypeString.tsx'\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> = ({\n opacity = 0.5, reflection, reflectionViewer, ...props\n}) => {\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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\n\nexport const buildReferenceString = (typeObj: ReferenceType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = [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 React from 'react'\nimport type { ReflectionType } from 'typedoc'\n\nimport type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\n\nexport const buildReflectionString = (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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 type { ReactNode } from 'react'\nimport type { SomeType, Type } from 'typedoc'\n\nimport type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport { buildArrayString } from './buildArrayString.tsx'\nimport { buildIntersectionString } from './buildIntersectionString.tsx'\nimport { buildReferenceString } from './buildReferenceString.ts'\nimport { buildReflectionString } from './buildReflectionString.tsx'\nimport { buildUnionString } from './buildUnionString.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 buildReflectionString(someType, reflectionViewer)\n }\n default: {\n parts.push('#', someType.type, '#')\n break\n }\n }\n return parts.join('')\n}\n","import React from 'react'\nimport type { DeclarationReflection, SignatureReflection } from 'typedoc'\n\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\nimport type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'\n\nexport const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({\n reflection, hiddenFlags, ...props\n}) => {\n const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {\n return (\n Array.isArray(signatures)\n ? signatures\n : signatures\n ? [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 React from 'react'\nimport { useLocation } from 'react-router-dom'\nimport type { DeclarationReflection } from 'typedoc'\n\nimport type { ContainerReflectionViewerProps } from './Container.tsx'\nimport { ContainerReflectionViewer } from './Container.tsx'\nimport { DeclarationReflectionViewer } from './Declaration.tsx'\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.vars.palette.background.default : undefined}\n lookup={lookup}\n itemRenderer={itemRenderer}\n reflection={reflection}\n {...props}\n />\n )\n}\n","import React, { useMemo } from 'react'\nimport type { ProjectReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup.ts'\nimport type { ContainerReflectionViewerProps } from './Container.tsx'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer.tsx'\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\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 {\n FlexCol, FlexGrowCol, FlexRow,\n} from '@xylabs/react-flexbox'\nimport React, { useMemo, useState } from 'react'\nimport type { ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from './createLookup.ts'\nimport type { ContainerReflectionViewerProps } from './ReflectionViewer/index.ts'\nimport { ReflectionGroupViewer, ReflectionViewer } from './ReflectionViewer/index.ts'\nimport { ReflectionTreeViewer } from './TreeViewer/index.ts'\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 return (\n <FlexRow alignItems=\"stretch\" justifyContent=\"start\" sx={{ overflowY: 'scroll' }} {...props}>\n <FlexCol minWidth={320} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\">\n <TextField\n fullWidth\n onChange={onSearchTermChange}\n slotProps={{ input: { startAdornment: <Search /> } }}\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.vars.palette.grey['300']}`}\n borderRadius={1}\n paddingY={1}\n />\n </FlexGrowCol>\n </FlexCol>\n <FlexGrowCol marginLeft={1} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\">\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.vars.palette.grey['300']}`}\n >\n {reflectionGroups}\n </FlexCol>\n </FlexGrowCol>\n </FlexGrowCol>\n </FlexRow>\n )\n}\n","import { Add, Remove } from '@mui/icons-material'\nimport { Typography } from '@mui/material'\nimport { SimpleTreeView, TreeItem } from '@mui/x-tree-view'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\nimport { useNavigate } from 'react-router-dom'\nimport type { ContainerReflection, Reflection } from 'typedoc'\n\nimport type { ReflectionLookup } from '../ReflectionLookup.ts'\nimport type { FlagFilter } from '../ReflectionViewer/index.ts'\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> = ({\n lookup, reflection, searchTerm, ...props\n}) => {\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 <SimpleTreeView\n aria-label=\"XYO SDK Documentation\"\n slots={{ collapseIcon: Remove, expandIcon: Add }}\n expandedItems={reflection.groups ? [reflection.groups[0].title] : []}\n >\n {reflection.groups?.map((group, index) => (\n <TreeItem key={`primary-${index}`} itemId={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 ? (\n <TreeItem\n key={`secondary-${index}- ${jndex}`}\n itemId={`declaration-${childReflection?.id}`}\n label={childReflection.name}\n onClick={() => {\n const hash = `#${childReflection.name}`\n void navigate({ hash })\n document.querySelector(hash)?.scrollIntoView({ behavior: 'smooth' })\n }}\n />\n )\n : null\n })}\n </TreeItem>\n ))}\n </SimpleTreeView>\n </FlexCol>\n )\n}\n","import { Typography } from '@mui/material'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { JsonViewerButton } from '../JsonViewerButton.tsx'\nimport type { ReflectionGroupViewerProps } from '../ReflectionViewer/index.ts'\nimport { ReflectionViewer } from '../ReflectionViewer/index.ts'\nimport { resolveChildren } from '../resolveChildren.ts'\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 size=\"small\" variant=\"contained\" padding={0} marginX={1} src={resolveChildren(group, lookup)} />\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 ? (\n <div key={reflection.id}>\n {renderer({\n lookup, margin: 1, reflection,\n }) as React.ReactNode}\n </div>\n )\n : null\n })}\n {children}\n </FlexCol>\n )\n}\n","import { Typography } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\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":["Typography","FlexCol","React","CommentViewer","comment","props","FlexCol","alignItems","Typography","variant","summary","text","Dialog","DialogActions","DialogContent","DialogTitle","ButtonEx","JsonViewerEx","React","useState","JsonViewerButton","jsonViewProps","src","title","props","open","setOpen","useState","React","ButtonEx","onClick","Dialog","onClose","DialogTitle","DialogContent","JsonViewerEx","value","DialogActions","assertEx","React","React","createLookup","reflection","lookup","children","item","id","Typography","FlexCol","FlexRow","React","useEffect","useLocation","resolveChildren","reflection","lookup","children","map","child","childObj","undefined","Error","FlexCol","React","Chip","Stack","Typography","FlexRow","React","trimFlagLabel","label","startsWith","slice","Typography","React","buildArrayString","typeObj","reflectionViewer","typeBuilder","parts","typeString","elementType","push","buildIntersectionString","typeObj","reflectionViewer","typeBuilder","parts","types","push","map","arg","join","buildReferenceString","typeObj","reflectionViewer","typeBuilder","parts","name","typeArguments","push","map","arg","join","React","buildReflectionString","typeObj","reflectionViewer","declaration","React","reflection","buildUnionString","typeObj","reflectionViewer","typeBuilder","parts","types","push","map","arg","join","buildTypeString","type","reflectionViewer","someType","parts","push","name","buildIntersectionString","JSON","stringify","value","buildArrayString","buildReferenceString","buildUnionString","buildReflectionString","join","SomeTypeViewer","opacity","reflection","reflectionViewer","props","typeReactNode","type","buildTypeString","React","Typography","title","style","NameViewer","reflectionViewer","variant","reflection","props","React","FlexRow","justifyContent","marginRight","Typography","noWrap","name","type","SomeTypeViewer","Stack","direction","spacing","Chip","size","label","kind","flags","Object","entries","map","flag","value","key","trimFlagLabel","document","location","hostname","JsonViewerButton","padding","marginX","src","hide","flags","hiddenFlags","hiddenFlag","ReflectionViewer","variant","nameViewer","children","reflection","props","someReflection","React","FlexCol","title","alignItems","undefined","NameViewer","marginY","reflectionViewer","comment","CommentViewer","parameters","map","parameter","marginX","key","id","hide","flags","hiddenFlags","hiddenFlag","ReflectionGroupViewer","autoScroll","children","group","lookup","renderer","ReflectionViewer","variant","props","resolvedChildren","resolveChildren","visibleChildren","reduce","acc","item","hash","useLocation","useEffect","document","querySelector","scrollIntoView","behavior","React","FlexCol","title","FlexRow","marginY","justifyContent","Typography","JsonViewerButton","size","padding","marginX","src","map","reflection","div","id","name","key","margin","ContainerReflectionViewer","children","reflection","hiddenFlags","itemRenderer","ReflectionViewer","props","lookup","createLookup","React","title","sources","groups","map","group","ReflectionGroupViewer","margin","renderer","key","alignItems","React","DeclarationReflectionViewer","reflection","hiddenFlags","props","safeSignatures","signatures","Array","isArray","undefined","React","ReflectionViewer","nameViewer","getSignature","setSignature","title","map","signature","key","id","marginX","useTheme","React","useLocation","DeclarationContainerReflectionViewer","reflection","lookup","itemRenderer","DeclarationReflectionViewer","props","hash","useLocation","theme","useTheme","React","ContainerReflectionViewer","title","paper","slice","name","bgcolor","vars","palette","background","default","undefined","React","useMemo","ProjectReflectionViewer","reflection","hiddenFlags","itemRenderer","ReflectionViewer","props","lookup","useMemo","createLookup","React","title","groups","map","group","ReflectionGroupViewer","autoScroll","variant","key","renderer","alignItems","Search","TextField","useTheme","FlexCol","FlexGrowCol","FlexRow","React","useMemo","useState","Add","Remove","Typography","SimpleTreeView","TreeItem","FlexCol","React","useNavigate","ReflectionTreeViewer","lookup","reflection","searchTerm","props","navigate","useNavigate","React","FlexCol","alignItems","SimpleTreeView","aria-label","slots","collapseIcon","Remove","expandIcon","Add","expandedItems","groups","title","map","group","index","TreeItem","key","itemId","label","Typography","variant","children","child","jndex","searchTermTrimmed","trim","toLowerCase","childReflection","name","includes","id","onClick","hash","document","querySelector","scrollIntoView","behavior","Typography","FlexCol","FlexRow","React","ReflectionGroupTreeViewer","variant","group","children","lookup","renderer","ReflectionViewer","props","React","FlexCol","FlexRow","marginY","justifyContent","Typography","title","JsonViewerButton","size","padding","marginX","src","resolveChildren","map","reflection","div","key","id","margin","TwoPanelReflectionViewer","reflection","itemRenderer","ReflectionViewer","hiddenFlags","props","lookup","useMemo","createLookup","theme","useTheme","searchTerm","setSearchTerm","useState","onSearchTermChange","e","target","value","reflectionGroups","groups","map","group","React","ReflectionGroupViewer","autoScroll","variant","renderer","key","title","alignItems","FlexRow","justifyContent","sx","overflowY","FlexCol","minWidth","overflow","TextField","fullWidth","onChange","slotProps","input","startAdornment","Search","FlexGrowCol","marginTop","ReflectionTreeViewer","position","top","left","right","bottom","border","vars","palette","grey","borderRadius","paddingY","marginLeft","padding","ProjectTwoPanelReflectionViewer","reflection","itemRenderer","DeclarationContainerReflectionViewer","props","assertEx","isProject","React","TwoPanelReflectionViewer","Typography","FlexCol","React","SourceViewer","source","props","React","FlexCol","alignItems","Typography","style","opacity","variant","i","fileName"]}
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 type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\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 {\n Dialog, DialogActions, DialogContent, DialogTitle,\n} from '@mui/material'\nimport type { ButtonExProps } from '@xylabs/react-button'\nimport { ButtonEx } from '@xylabs/react-button'\nimport type { JsonViewerExProps } from '@xyo-network/react-payload-raw-info'\nimport { JsonViewerEx } from '@xyo-network/react-payload-raw-info'\nimport React, { useState } from 'react'\n\nexport type JsonViewerButtonProps = ButtonExProps & {\n jsonViewProps?: Partial<JsonViewerExProps>\n src: object\n}\n\nexport const JsonViewerButton: React.FC<JsonViewerButtonProps> = ({\n jsonViewProps, src, title, ...props\n}) => {\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 <JsonViewerEx value={src} {...jsonViewProps} />\n </DialogContent>\n <DialogActions>\n <ButtonEx onClick={() => setOpen(false)}>Close</ButtonEx>\n </DialogActions>\n </Dialog>\n </>\n )\n}\n","import { assertEx } from '@xylabs/sdk-js'\nimport React from 'react'\nimport type { ProjectReflection } from 'typedoc'\n\nimport type { ContainerReflectionViewerProps } from './ReflectionViewer/index.ts'\nimport { DeclarationContainerReflectionViewer } from './ReflectionViewer/index.ts'\nimport { TwoPanelReflectionViewer } from './TwoPanelReflectionViewer.tsx'\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 React, { useEffect } from 'react'\nimport { useLocation } from 'react-router-dom'\nimport type {\n ContainerReflection, ReflectionFlags, ReflectionGroup,\n} from 'typedoc'\n\nimport { JsonViewerButton } from '../JsonViewerButton.tsx'\nimport { resolveChildren } from '../resolveChildren.ts'\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\nimport type { FlagFilter, ReflectionViewerProps } from './ReflectionViewerProps.tsx'\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 for (const hiddenFlag of hiddenFlags) {\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\n return visibleChildren > 0\n ? (\n <FlexCol title=\"ReflectionGroupViewer\" {...props}>\n <FlexRow marginY={1} justifyContent=\"flex-start\">\n <Typography variant={variant}>{group.title}</Typography>\n <JsonViewerButton size=\"small\" variant=\"contained\" padding={0} marginX={1} src={resolveChildren(group, lookup)} />\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 ? (\n <div id={reflection.name} key={reflection.id}>\n {renderer({\n hiddenFlags, lookup, margin: 1, padding: 1, reflection,\n }) as React.ReactNode}\n </div>\n )\n : null\n })}\n {children}\n </FlexCol>\n )\n : null\n}\n","import type { Reflection } from 'typedoc'\n\nimport type { ReflectionLookup } from './ReflectionLookup.ts'\nimport type { SomeReflection } from './SomeReflection.ts'\n\ninterface 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 React from 'react'\nimport type { ReflectionFlags } from 'typedoc'\n\nimport { CommentViewer } from '../CommentViewer.tsx'\nimport type { SomeReflection } from '../SomeReflection.ts'\nimport { NameViewer } from './NameViewer.tsx'\nimport type { FlagFilter, ReflectionViewerProps } from './ReflectionViewerProps.tsx'\n\nconst hide = (flags?: ReflectionFlags, hiddenFlags: FlagFilter[] = []) => {\n let hide = false\n for (const hiddenFlag of hiddenFlags) {\n if (flags?.[hiddenFlag]) {\n hide = true\n }\n }\n return hide\n}\n\nexport const ReflectionViewer: React.FC<ReflectionViewerProps> = ({\n variant, nameViewer, children, reflection, hiddenFlags, ...props\n}) => {\n const someReflection = reflection as SomeReflection\n\n return hide(reflection?.flags, hiddenFlags)\n ? null\n : (\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 type { TypographyVariant } from '@mui/material'\nimport {\n Chip, Stack, Typography,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { JsonViewerButton } from '../JsonViewerButton.tsx'\nimport type { SomeReflection } from '../SomeReflection.ts'\nimport { trimFlagLabel } from '../trimFlagLabel.ts'\nimport type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'\nimport { SomeTypeViewer } from './SomeTypeViewer/index.ts'\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> = ({\n reflectionViewer, variant, reflection, ...props\n}) => {\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 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 type { TypographyProps } from '@mui/material'\nimport { Typography } from '@mui/material'\nimport React from 'react'\n\nimport type { SomeReflection } from '../../SomeReflection.ts'\nimport type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport { buildTypeString } from './buildTypeString.tsx'\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> = ({\n opacity = 0.5, reflection, reflectionViewer, ...props\n}) => {\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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\n\nexport const buildReferenceString = (typeObj: ReferenceType, reflectionViewer: React.FC<ReflectionViewerProps>, typeBuilder: TypeBuilder) => {\n const parts: string[] = [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 React from 'react'\nimport type { ReflectionType } from 'typedoc'\n\nimport type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\n\nexport const buildReflectionString = (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 type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 type { ReactNode } from 'react'\nimport type { SomeType, Type } from 'typedoc'\n\nimport type { ReflectionViewerProps } from '../ReflectionViewerProps.tsx'\nimport { buildArrayString } from './buildArrayString.tsx'\nimport { buildIntersectionString } from './buildIntersectionString.tsx'\nimport { buildReferenceString } from './buildReferenceString.ts'\nimport { buildReflectionString } from './buildReflectionString.tsx'\nimport { buildUnionString } from './buildUnionString.tsx'\nimport type { TypeBuilder } from './TypeBuilder.ts'\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 buildReflectionString(someType, reflectionViewer)\n }\n default: {\n parts.push('#', someType.type, '#')\n break\n }\n }\n return parts.join('')\n}\n","import React from 'react'\nimport type { ContainerReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup.ts'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer.tsx'\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\nimport type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'\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 React from 'react'\nimport type { DeclarationReflection, SignatureReflection } from 'typedoc'\n\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\nimport type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'\n\nexport const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({\n reflection, hiddenFlags, ...props\n}) => {\n const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {\n return (\n Array.isArray(signatures)\n ? signatures\n : signatures\n ? [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 React from 'react'\nimport { useLocation } from 'react-router-dom'\nimport type { DeclarationReflection } from 'typedoc'\n\nimport type { ContainerReflectionViewerProps } from './Container.tsx'\nimport { ContainerReflectionViewer } from './Container.tsx'\nimport { DeclarationReflectionViewer } from './Declaration.tsx'\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.vars.palette.background.default : undefined}\n lookup={lookup}\n itemRenderer={itemRenderer}\n reflection={reflection}\n {...props}\n />\n )\n}\n","import React, { useMemo } from 'react'\nimport type { ProjectReflection, ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from '../createLookup.ts'\nimport type { ContainerReflectionViewerProps } from './Container.tsx'\nimport { ReflectionGroupViewer } from './ReflectionGroupViewer.tsx'\nimport { ReflectionViewer } from './ReflectionViewer.tsx'\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 {\n FlexCol, FlexGrowCol, FlexRow,\n} from '@xylabs/react-flexbox'\nimport React, { useMemo, useState } from 'react'\nimport type { ReflectionGroup } from 'typedoc'\n\nimport { createLookup } from './createLookup.ts'\nimport type { ContainerReflectionViewerProps } from './ReflectionViewer/index.ts'\nimport { ReflectionGroupViewer, ReflectionViewer } from './ReflectionViewer/index.ts'\nimport { ReflectionTreeViewer } from './TreeViewer/index.ts'\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 return (\n <FlexRow alignItems=\"stretch\" justifyContent=\"start\" sx={{ overflowY: 'scroll' }} {...props}>\n <FlexCol minWidth={320} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\">\n <TextField\n fullWidth\n onChange={onSearchTermChange}\n slotProps={{ input: { startAdornment: <Search /> } }}\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.vars.palette.grey['300']}`}\n borderRadius={1}\n paddingY={1}\n />\n </FlexGrowCol>\n </FlexCol>\n <FlexGrowCol marginLeft={1} alignItems=\"stretch\" justifyContent=\"flex-start\" overflow=\"hidden\">\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.vars.palette.grey['300']}`}\n >\n {reflectionGroups}\n </FlexCol>\n </FlexGrowCol>\n </FlexGrowCol>\n </FlexRow>\n )\n}\n","import { Add, Remove } from '@mui/icons-material'\nimport { Typography } from '@mui/material'\nimport { SimpleTreeView, TreeItem } from '@mui/x-tree-view'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\nimport { useNavigate } from 'react-router-dom'\nimport type { ContainerReflection, Reflection } from 'typedoc'\n\nimport type { ReflectionLookup } from '../ReflectionLookup.ts'\nimport type { FlagFilter } from '../ReflectionViewer/index.ts'\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> = ({\n lookup, reflection, searchTerm, ...props\n}) => {\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 <SimpleTreeView\n aria-label=\"XYO SDK Documentation\"\n slots={{ collapseIcon: Remove, expandIcon: Add }}\n expandedItems={reflection.groups ? [reflection.groups[0].title] : []}\n >\n {reflection.groups?.map(group => (\n <TreeItem key={`primary-${group.title}`} itemId={group.title} label={<Typography variant=\"h6\">{group.title}</Typography>}>\n {group.children.map((child) => {\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 ? (\n <TreeItem\n key={`secondary-${childReflection.id}`}\n itemId={`declaration-${childReflection?.id}`}\n label={childReflection.name}\n onClick={() => {\n const hash = `#${childReflection.name}`\n void navigate({ hash })\n document.querySelector(hash)?.scrollIntoView({ behavior: 'smooth' })\n }}\n />\n )\n : null\n })}\n </TreeItem>\n ))}\n </SimpleTreeView>\n </FlexCol>\n )\n}\n","import { Typography } from '@mui/material'\nimport { FlexCol, FlexRow } from '@xylabs/react-flexbox'\nimport React from 'react'\n\nimport { JsonViewerButton } from '../JsonViewerButton.tsx'\nimport type { ReflectionGroupViewerProps } from '../ReflectionViewer/index.ts'\nimport { ReflectionViewer } from '../ReflectionViewer/index.ts'\nimport { resolveChildren } from '../resolveChildren.ts'\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 size=\"small\" variant=\"contained\" padding={0} marginX={1} src={resolveChildren(group, lookup)} />\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 ? (\n <div key={reflection.id}>\n {renderer({\n lookup, margin: 1, reflection,\n }) as React.ReactNode}\n </div>\n )\n : null\n })}\n {children}\n </FlexCol>\n )\n}\n","import { Typography } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport React from 'react'\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","Typography","FlexCol","FlexRow","jsx","jsxs","FlexCol","FlexRow","Typography","jsx","jsxs","useMemo","useTheme","useState","FlexRow","FlexCol","jsx","Typography","FlexCol","jsx"]}
@@ -1,9 +1,9 @@
1
1
  import type { Reflection } from 'typedoc';
2
2
  import type { ReflectionLookup } from './ReflectionLookup.ts';
3
3
  import type { SomeReflection } from './SomeReflection.ts';
4
- type ReflectionWithChildren = {
4
+ interface ReflectionWithChildren {
5
5
  children: Reflection[];
6
- };
6
+ }
7
7
  export declare const resolveChildren: <T extends SomeReflection>(reflection: ReflectionWithChildren, lookup?: ReflectionLookup) => T[];
8
8
  export {};
9
9
  //# sourceMappingURL=resolveChildren.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveChildren.d.ts","sourceRoot":"","sources":["../../src/resolveChildren.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,KAAK,sBAAsB,GAAG;IAAE,QAAQ,EAAE,UAAU,EAAE,CAAA;CAAE,CAAA;AAExD,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,cAAc,EAAE,YAAY,sBAAsB,EAAE,SAAQ,gBAAqB,KAAG,CAAC,EAkB9H,CAAA"}
1
+ {"version":3,"file":"resolveChildren.d.ts","sourceRoot":"","sources":["../../src/resolveChildren.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,UAAU,sBAAsB;IAAG,QAAQ,EAAE,UAAU,EAAE,CAAA;CAAE;AAE3D,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,cAAc,EAAE,YAAY,sBAAsB,EAAE,SAAQ,gBAAqB,KAAG,CAAC,EAkB9H,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/react-typedoc",
3
- "version": "7.5.8",
3
+ "version": "7.5.11",
4
4
  "description": "Common React library for all XYO projects that use React",
5
5
  "keywords": [
6
6
  "xyo",
@@ -36,50 +36,116 @@
36
36
  },
37
37
  "./package.json": "./package.json"
38
38
  },
39
- "module": "dist/browser/index.mjs",
40
- "types": "dist/browser/index.d.ts",
41
39
  "files": [
42
40
  "dist",
43
- "src"
41
+ "README.md"
44
42
  ],
45
43
  "dependencies": {
46
- "@mui/x-tree-view": "~8.27.2",
47
- "@xylabs/react-button": "~7.1.17",
48
- "@xylabs/react-flexbox": "~7.1.17",
49
- "@xylabs/sdk-js": "~5.0.90",
50
- "@xyo-network/react-payload-raw-info": "7.5.8",
51
- "react-router-dom": "^7.13.2",
52
- "typedoc": "~0.28.18"
44
+ "@xyo-network/react-payload-raw-info": "~7.5.11"
53
45
  },
54
46
  "devDependencies": {
55
- "@emotion/react": "~11.14.0",
56
- "@emotion/styled": "~11.14.1",
57
- "@mui/icons-material": "~7.3.9",
58
- "@mui/material": "~7.3.9",
59
- "@mui/system": "~7.3.9",
60
- "@storybook/react-vite": "~10.3.3",
47
+ "@bitauth/libauth": "~3.0.0",
48
+ "@emotion/react": "^11.14.0",
49
+ "@emotion/styled": "^11.14.1",
50
+ "@mui/icons-material": "^7.3.10",
51
+ "@mui/material": "^7.3.10",
52
+ "@mui/system": "^7.3.10",
53
+ "@mui/x-tree-view": "~8.27.2",
54
+ "@opentelemetry/api": "^1.9.1",
55
+ "@opentelemetry/sdk-trace-base": "^2.7.0",
56
+ "@scure/base": "~2.2.0",
57
+ "@storybook/react-vite": "~10.3.5",
58
+ "@textea/json-viewer": "~4.0.1",
59
+ "@types/node": "~25.6.0",
61
60
  "@types/react": "^19.2.14",
62
- "@xylabs/ts-scripts-common": "~7.5.6",
63
- "@xylabs/ts-scripts-yarn3": "~7.5.6",
64
- "@xylabs/tsconfig": "~7.5.6",
65
- "@xylabs/tsconfig-dom": "~7.5.6",
66
- "@xylabs/tsconfig-react": "~7.5.6",
67
- "react": "^19.2.4",
68
- "react-dom": "^19.2.4",
69
- "storybook": "~10.3.3",
61
+ "@xylabs/react-async-effect": "~7.1.20",
62
+ "@xylabs/react-button": "~7.1.20",
63
+ "@xylabs/react-flexbox": "~7.1.20",
64
+ "@xylabs/react-hooks": "~7.1.20",
65
+ "@xylabs/react-link": "~7.1.20",
66
+ "@xylabs/react-promise": "~7.1.20",
67
+ "@xylabs/react-shared": "~7.1.20",
68
+ "@xylabs/react-theme": "~7.1.20",
69
+ "@xylabs/sdk-js": "^5.0.100",
70
+ "@xylabs/threads": "~5.0.100",
71
+ "@xylabs/toolchain": "~7.11.9",
72
+ "@xylabs/tsconfig": "^7.11.9",
73
+ "@xylabs/tsconfig-dom": "^7.11.9",
74
+ "@xylabs/tsconfig-react": "~7.11.9",
75
+ "@xylabs/zod": "~5.0.100",
76
+ "@xyo-network/boundwitness-model": "^5.5.1",
77
+ "@xyo-network/boundwitness-validator": "^5.5.1",
78
+ "@xyo-network/payload-builder": "^5.5.1",
79
+ "@xyo-network/payload-model": "^5.5.1",
80
+ "async-mutex": "^0.5.0",
81
+ "axios": "^1.15.2",
82
+ "bn.js": "^5.2.3",
83
+ "bowser": "^2.14.1",
84
+ "buffer": "^6.0.3",
85
+ "chalk": "^5.6.2",
86
+ "debug": "~4.4.3",
87
+ "esbuild": "~0.28.0",
88
+ "eslint": "^10.2.1",
89
+ "ethers": "^6.16.0",
90
+ "fast-deep-equal": "~3.1.3",
91
+ "hash-wasm": "~4.12.0",
92
+ "js-cookie": "~3.0.5",
93
+ "observable-fns": "~0.6.1",
94
+ "pako": "^2.1.0",
95
+ "react": "^19.2.5",
96
+ "react-dom": "^19.2.5",
97
+ "react-router-dom": "^7.14.2",
98
+ "spark-md5": "~3.0.2",
99
+ "storybook": "^10.3.5",
100
+ "typedoc": "~0.28.19",
70
101
  "typescript": "^5.9.3",
71
- "vite": "~8.0.3",
102
+ "vite": "^8.0.10",
103
+ "wasm-feature-detect": "~1.8.0",
72
104
  "zod": "^4.3.6"
73
105
  },
74
106
  "peerDependencies": {
75
- "@mui/icons-material": ">=6 <8",
76
- "@mui/material": ">=6 <8",
77
- "react": "^19",
78
- "react-dom": "^19",
79
- "zod": "^4"
107
+ "@emotion/react": "^11.14.0",
108
+ "@emotion/styled": "^11.14.1",
109
+ "@mui/icons-material": "^7.3.10",
110
+ "@mui/material": "^7.3.10",
111
+ "@mui/system": "^7.3.10",
112
+ "@mui/x-tree-view": "~8.27.2",
113
+ "@opentelemetry/sdk-trace-base": "^2.7.0",
114
+ "@scure/base": "~2.2.0",
115
+ "@textea/json-viewer": "~4.0.1",
116
+ "@xylabs/react-async-effect": "~7.1.20",
117
+ "@xylabs/react-button": "~7.1.20",
118
+ "@xylabs/react-flexbox": "~7.1.20",
119
+ "@xylabs/react-hooks": "~7.1.20",
120
+ "@xylabs/react-link": "~7.1.20",
121
+ "@xylabs/react-promise": "~7.1.20",
122
+ "@xylabs/react-shared": "~7.1.20",
123
+ "@xylabs/react-theme": "~7.1.20",
124
+ "@xylabs/sdk-js": "^5.0.100",
125
+ "@xylabs/zod": "~5.0.100",
126
+ "@xyo-network/boundwitness-model": "^5.5.1",
127
+ "@xyo-network/boundwitness-validator": "^5.5.1",
128
+ "@xyo-network/payload-builder": "^5.5.1",
129
+ "@xyo-network/payload-model": "^5.5.1",
130
+ "async-mutex": "^0.5.0",
131
+ "bn.js": "^5.2.3",
132
+ "bowser": "^2.14.1",
133
+ "buffer": "^6.0.3",
134
+ "chalk": "^5.6.2",
135
+ "ethers": "^6.16.0",
136
+ "fast-deep-equal": "~3.1.3",
137
+ "js-cookie": "~3.0.5",
138
+ "pako": "^2.1.0",
139
+ "react": "^19.2.5",
140
+ "react-dom": "^19.2.5",
141
+ "react-router-dom": "^7.14.2",
142
+ "spark-md5": "~3.0.2",
143
+ "typedoc": "~0.28.19",
144
+ "typescript": "^5.9.3",
145
+ "zod": "^4.3.6"
80
146
  },
81
147
  "publishConfig": {
82
148
  "access": "public"
83
149
  },
84
150
  "docs": "dist/docs.json"
85
- }
151
+ }
@@ -1,17 +0,0 @@
1
- import { Typography } from '@mui/material'
2
- import type { FlexBoxProps } from '@xylabs/react-flexbox'
3
- import { FlexCol } from '@xylabs/react-flexbox'
4
- import React from 'react'
5
- import type { Comment } from 'typedoc'
6
-
7
- export interface CommentViewerProps extends FlexBoxProps {
8
- comment: Comment
9
- }
10
-
11
- export const CommentViewer: React.FC<CommentViewerProps> = ({ comment, ...props }) => {
12
- return (
13
- <FlexCol alignItems="stretch" {...props}>
14
- <Typography variant="body2">{comment.summary[0]?.text}</Typography>
15
- </FlexCol>
16
- )
17
- }
@@ -1,37 +0,0 @@
1
- import {
2
- Dialog, DialogActions, DialogContent, DialogTitle,
3
- } from '@mui/material'
4
- import type { ButtonExProps } from '@xylabs/react-button'
5
- import { ButtonEx } from '@xylabs/react-button'
6
- import type { JsonViewerExProps } from '@xyo-network/react-payload-raw-info'
7
- import { JsonViewerEx } from '@xyo-network/react-payload-raw-info'
8
- import React, { useState } from 'react'
9
-
10
- export type JsonViewerButtonProps = ButtonExProps & {
11
- jsonViewProps?: Partial<JsonViewerExProps>
12
- src: object
13
- }
14
-
15
- export const JsonViewerButton: React.FC<JsonViewerButtonProps> = ({
16
- jsonViewProps, src, title, ...props
17
- }) => {
18
- const [open, setOpen] = useState(false)
19
- return (
20
- <>
21
- <ButtonEx onClick={() => setOpen(!open)} {...props}>
22
- JSON
23
- </ButtonEx>
24
- <Dialog open={open} onClose={() => setOpen(false)}>
25
- {title
26
- ? <DialogTitle>{title}</DialogTitle>
27
- : null}
28
- <DialogContent>
29
- <JsonViewerEx value={src} {...jsonViewProps} />
30
- </DialogContent>
31
- <DialogActions>
32
- <ButtonEx onClick={() => setOpen(false)}>Close</ButtonEx>
33
- </DialogActions>
34
- </Dialog>
35
- </>
36
- )
37
- }
@@ -1,32 +0,0 @@
1
- import type { Meta, StoryFn } from '@storybook/react-vite'
2
- import React from 'react'
3
- // import clientDocs from '@xyo-network/core/dist/docs.json'
4
- import { BrowserRouter } from 'react-router-dom'
5
-
6
- // import type { ProjectReflection } from 'typedoc'
7
- import { ProjectTwoPanelReflectionViewer } from './ProjectTwoPanelReflectionViewer.tsx'
8
-
9
- const StorybookEntry = {
10
- argTypes: {},
11
- component: ProjectTwoPanelReflectionViewer,
12
- parameters: { docs: { page: null } },
13
- title: 'typedoc/TypeDocViewer/ProjectTwoPanelReflectionViewer',
14
- } as Meta<typeof ProjectTwoPanelReflectionViewer>
15
-
16
- const Template: StoryFn<typeof ProjectTwoPanelReflectionViewer> = ({ reflection, ...props }) => {
17
- return (
18
- <BrowserRouter>
19
- <ProjectTwoPanelReflectionViewer height="90vh" reflection={reflection} {...props} />
20
- </BrowserRouter>
21
- )
22
- }
23
-
24
- const Client = Template.bind({})
25
- /* const clientDocsWithProject = { ...clientDocs }
26
- Client.args = {
27
- reflection: clientDocsWithProject as unknown as ProjectReflection,
28
- } */
29
-
30
- export { Client }
31
-
32
- export default StorybookEntry
@@ -1,16 +0,0 @@
1
- import { assertEx } from '@xylabs/sdk-js'
2
- import React from 'react'
3
- import type { ProjectReflection } from 'typedoc'
4
-
5
- import type { ContainerReflectionViewerProps } from './ReflectionViewer/index.ts'
6
- import { DeclarationContainerReflectionViewer } from './ReflectionViewer/index.ts'
7
- import { TwoPanelReflectionViewer } from './TwoPanelReflectionViewer.tsx'
8
-
9
- export const ProjectTwoPanelReflectionViewer: React.FC<ContainerReflectionViewerProps<ProjectReflection>> = ({
10
- reflection,
11
- itemRenderer = DeclarationContainerReflectionViewer,
12
- ...props
13
- }) => {
14
- assertEx(reflection.isProject, () => 'Project expected to be Project')
15
- return <TwoPanelReflectionViewer itemRenderer={itemRenderer} reflection={reflection} {...props} />
16
- }
@@ -1,3 +0,0 @@
1
- import type { DeclarationReflection } from 'typedoc'
2
-
3
- export type ReflectionLookup<T extends DeclarationReflection = DeclarationReflection> = Record<string, T>
@@ -1,42 +0,0 @@
1
- import React from 'react'
2
- import type { ContainerReflection, ReflectionGroup } from 'typedoc'
3
-
4
- import { createLookup } from '../createLookup.ts'
5
- import { ReflectionGroupViewer } from './ReflectionGroupViewer.tsx'
6
- import { ReflectionViewer } from './ReflectionViewer.tsx'
7
- import type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'
8
-
9
- export interface ContainerReflectionViewerProps<T extends ContainerReflection = ContainerReflection> extends ReflectionViewerProps<T> {
10
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
- itemRenderer?: React.FC<ReflectionViewerProps<any>>
12
- }
13
-
14
- export const ContainerReflectionViewer: React.FC<ContainerReflectionViewerProps> = ({
15
- children,
16
- reflection,
17
- hiddenFlags,
18
- itemRenderer = ReflectionViewer,
19
- ...props
20
- }) => {
21
- const lookup = createLookup(reflection)
22
-
23
- return (
24
- <ReflectionViewer title="ContainerReflectionViewer" sources reflection={reflection} lookup={lookup} {...props}>
25
- {reflection.groups?.map((group: ReflectionGroup) => {
26
- return (
27
- <ReflectionGroupViewer
28
- margin={1}
29
- lookup={lookup}
30
- renderer={itemRenderer}
31
- key={group.title}
32
- group={group}
33
- reflection={reflection}
34
- hiddenFlags={hiddenFlags}
35
- alignItems="stretch"
36
- />
37
- )
38
- })}
39
- {children}
40
- </ReflectionViewer>
41
- )
42
- }
@@ -1,39 +0,0 @@
1
- import React from 'react'
2
- import type { DeclarationReflection, SignatureReflection } from 'typedoc'
3
-
4
- import { ReflectionViewer } from './ReflectionViewer.tsx'
5
- import type { ReflectionViewerProps } from './ReflectionViewerProps.tsx'
6
-
7
- export const DeclarationReflectionViewer: React.FC<ReflectionViewerProps<DeclarationReflection>> = ({
8
- reflection, hiddenFlags, ...props
9
- }) => {
10
- const safeSignatures = (signatures?: SignatureReflection[] | SignatureReflection) => {
11
- return (
12
- Array.isArray(signatures)
13
- ? signatures
14
- : signatures
15
- ? [signatures]
16
- : undefined
17
- )
18
- }
19
-
20
- return (
21
- <ReflectionViewer
22
- nameViewer={reflection.signatures || reflection.getSignature || reflection.setSignature ? null : undefined}
23
- title="DeclarationReflectionViewer"
24
- hiddenFlags={hiddenFlags}
25
- reflection={reflection}
26
- {...props}
27
- >
28
- {reflection.signatures?.map((signature) => {
29
- return <ReflectionViewer key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />
30
- })}
31
- {safeSignatures(reflection.getSignature)?.map((signature) => {
32
- return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />
33
- })}
34
- {safeSignatures(reflection.setSignature)?.map((signature) => {
35
- return <ReflectionViewer marginX={1} key={signature.id} hiddenFlags={hiddenFlags} reflection={signature} />
36
- })}
37
- </ReflectionViewer>
38
- )
39
- }