ardo 3.1.0 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/README.md +9 -19
  2. package/dist/DocPage-CIBiCAxZ.js +1010 -0
  3. package/dist/DocPage-CIBiCAxZ.js.map +1 -0
  4. package/dist/assets/src/ui/Breadcrumb.css.ts.vanilla-Dpgq-C_p.css +20 -0
  5. package/dist/assets/src/ui/DocPage.css.ts.vanilla-CXKuz4U-.css +34 -0
  6. package/dist/assets/src/ui/Footer.css.ts.vanilla-BSzPIPt4.css +100 -0
  7. package/dist/assets/src/ui/Header.css.ts.vanilla-8QL0Jzgk.css +156 -0
  8. package/dist/assets/src/ui/Layout.css.ts.vanilla-Bpx_-gJt.css +67 -0
  9. package/dist/assets/src/ui/Nav.css.ts.vanilla-CsAQjogy.css +51 -0
  10. package/dist/assets/src/ui/Sidebar.css.ts.vanilla-D70qXTEr.css +115 -0
  11. package/dist/assets/src/ui/Toc.css.ts.vanilla-CYqcWgvD.css +52 -0
  12. package/dist/assets/src/ui/components/ApiItem.css.ts.vanilla-B_DW-1iJ.css +218 -0
  13. package/dist/assets/src/ui/components/CodeBlock.css.ts.vanilla-lNKqskjQ.css +182 -0
  14. package/dist/assets/src/ui/components/Container.css.ts.vanilla-CUhRUA9t.css +80 -0
  15. package/dist/assets/src/ui/components/CopyButton.css.ts.vanilla-DZZ5jgTM.css +24 -0
  16. package/dist/assets/src/ui/components/Features.css.ts.vanilla-D-pNXM9Q.css +129 -0
  17. package/dist/assets/src/ui/components/Hero.css.ts.vanilla-DHJVZ6GX.css +134 -0
  18. package/dist/assets/src/ui/components/Search.css.ts.vanilla-BYpWHzky.css +135 -0
  19. package/dist/assets/src/ui/components/Steps.css.ts.vanilla-CisaxeNj.css +59 -0
  20. package/dist/assets/src/ui/components/Tabs.css.ts.vanilla-C4-vJSnf.css +30 -0
  21. package/dist/assets/src/ui/components/ThemeToggle.css.ts.vanilla---sSUELC.css +22 -0
  22. package/dist/assets/src/ui/content.css.ts.vanilla-O_RaSPXm.css +106 -0
  23. package/dist/assets/src/ui/theme/animations.css.ts.vanilla-D6ImVUKy.css +10 -0
  24. package/dist/assets/src/ui/theme/dark.css.ts.vanilla-2iJgcpbU.css +87 -0
  25. package/dist/assets/src/ui/theme/light.css.ts.vanilla-CwinfWSf.css +87 -0
  26. package/dist/assets/src/ui/theme/reset.css.ts.vanilla-0Q3pLjfC.css +34 -0
  27. package/dist/brand-icons-DLJKqTun.js +59 -0
  28. package/dist/brand-icons-DLJKqTun.js.map +1 -0
  29. package/dist/config/index.d.ts +5 -5
  30. package/dist/config/index.d.ts.map +1 -0
  31. package/dist/config/index.js +54 -11
  32. package/dist/config/index.js.map +1 -1
  33. package/dist/contract.css-DYvFVCFE.d.ts +105 -0
  34. package/dist/contract.css-DYvFVCFE.d.ts.map +1 -0
  35. package/dist/generator-DPtRXxM_.js +1194 -0
  36. package/dist/generator-DPtRXxM_.js.map +1 -0
  37. package/dist/icons/index.d.ts +22 -1
  38. package/dist/icons/index.d.ts.map +1 -0
  39. package/dist/icons/index.js +2 -2
  40. package/dist/index-BTeHvysI.d.ts +807 -0
  41. package/dist/index-BTeHvysI.d.ts.map +1 -0
  42. package/dist/index-DySzkJlC.d.ts +78 -0
  43. package/dist/index-DySzkJlC.d.ts.map +1 -0
  44. package/dist/index.d.ts +5 -8
  45. package/dist/index.js +6 -100
  46. package/dist/mdx/provider.d.ts +61 -4
  47. package/dist/mdx/provider.d.ts.map +1 -0
  48. package/dist/mdx/provider.js +89 -117
  49. package/dist/mdx/provider.js.map +1 -1
  50. package/dist/runtime/index.d.ts +2 -41
  51. package/dist/runtime/index.js +2 -28
  52. package/dist/sidebar-utils-1Skqle1Q.js +109 -0
  53. package/dist/sidebar-utils-1Skqle1Q.js.map +1 -0
  54. package/dist/theme/index.d.ts +201 -182
  55. package/dist/theme/index.d.ts.map +1 -0
  56. package/dist/theme/index.js +288 -128
  57. package/dist/theme/index.js.map +1 -1
  58. package/dist/typedoc/components/index.d.ts +55 -0
  59. package/dist/typedoc/components/index.d.ts.map +1 -0
  60. package/dist/typedoc/components/index.js +339 -0
  61. package/dist/typedoc/components/index.js.map +1 -0
  62. package/dist/typedoc/index.d.ts +36 -305
  63. package/dist/typedoc/index.d.ts.map +1 -0
  64. package/dist/typedoc/index.js +97 -268
  65. package/dist/typedoc/index.js.map +1 -1
  66. package/dist/types-BCuJBsJu.d.ts +182 -0
  67. package/dist/types-BCuJBsJu.d.ts.map +1 -0
  68. package/dist/types-CTd_mkrv.d.ts +175 -0
  69. package/dist/types-CTd_mkrv.d.ts.map +1 -0
  70. package/dist/ui/index.d.ts +2 -178
  71. package/dist/ui/index.js +3 -95
  72. package/dist/ui/styles.css +1401 -1335
  73. package/dist/ui/styles.d.ts +1 -2
  74. package/dist/ui/styles.js +23 -4
  75. package/dist/ui-3grzJSsq.js +1314 -0
  76. package/dist/ui-3grzJSsq.js.map +1 -0
  77. package/dist/vite/index.d.ts +78 -86
  78. package/dist/vite/index.d.ts.map +1 -0
  79. package/dist/vite/index.js +2931 -1282
  80. package/dist/vite/index.js.map +1 -1
  81. package/package.json +30 -19
  82. package/dist/Features-D_Pt7zpA.d.ts +0 -615
  83. package/dist/Search-DOJMNI2T.css +0 -193
  84. package/dist/Search-DOJMNI2T.css.map +0 -1
  85. package/dist/Search-VYYG3D43.js +0 -10
  86. package/dist/Search-VYYG3D43.js.map +0 -1
  87. package/dist/chunk-4YQE3TNM.js +0 -1
  88. package/dist/chunk-4YQE3TNM.js.map +0 -1
  89. package/dist/chunk-AXLJDGQL.js +0 -1
  90. package/dist/chunk-AXLJDGQL.js.map +0 -1
  91. package/dist/chunk-CZM5NX27.js +0 -909
  92. package/dist/chunk-CZM5NX27.js.map +0 -1
  93. package/dist/chunk-FZP2AVJL.js +0 -43
  94. package/dist/chunk-FZP2AVJL.js.map +0 -1
  95. package/dist/chunk-IEPSORG5.js +0 -444
  96. package/dist/chunk-IEPSORG5.js.map +0 -1
  97. package/dist/chunk-KUWEUO37.js +0 -1
  98. package/dist/chunk-KUWEUO37.js.map +0 -1
  99. package/dist/chunk-NBRHGTR2.js +0 -79
  100. package/dist/chunk-NBRHGTR2.js.map +0 -1
  101. package/dist/chunk-PGHUPTGL.js +0 -1035
  102. package/dist/chunk-PGHUPTGL.js.map +0 -1
  103. package/dist/chunk-PMS3P4MA.js +0 -43
  104. package/dist/chunk-PMS3P4MA.js.map +0 -1
  105. package/dist/chunk-QELSOHIY.js +0 -46
  106. package/dist/chunk-QELSOHIY.js.map +0 -1
  107. package/dist/chunk-R2QKY6G3.js +0 -1
  108. package/dist/chunk-R2QKY6G3.js.map +0 -1
  109. package/dist/chunk-ZPYQQZ7J.js +0 -210
  110. package/dist/chunk-ZPYQQZ7J.js.map +0 -1
  111. package/dist/icons/index.js.map +0 -1
  112. package/dist/index.css +0 -1290
  113. package/dist/index.css.map +0 -1
  114. package/dist/index.js.map +0 -1
  115. package/dist/mdx/provider.css +0 -403
  116. package/dist/mdx/provider.css.map +0 -1
  117. package/dist/runtime/index.js.map +0 -1
  118. package/dist/types-CLkHwCch.d.ts +0 -248
  119. package/dist/ui/index.css +0 -1290
  120. package/dist/ui/index.css.map +0 -1
  121. package/dist/ui/index.js.map +0 -1
  122. package/dist/ui/styles.css.map +0 -1
  123. package/dist/ui/styles.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator-DPtRXxM_.js","names":["appendExamples","appendSourceLink"],"sources":["../src/typedoc/generator-config.ts","../src/typedoc/generator-shared.ts","../src/typedoc/generator-pages-categories.ts","../src/typedoc/generator-render-component.ts","../src/typedoc/generator-pages-components.ts","../src/typedoc/generator-render.ts","../src/typedoc/generator-pages-grouped.ts","../src/typedoc/generator-pages-index.ts","../src/typedoc/generator-reflection-tags.ts","../src/typedoc/generator-reflection.ts","../src/typedoc/generator-docs.ts","../src/typedoc/generator.ts"],"sourcesContent":["import type { ProjectReflection } from \"typedoc\"\n\nimport type { TypeDocConfig } from \"./types\"\n\nexport type ResolvedTypeDocConfig = {\n out: string\n sidebar: {\n title: string\n position: number\n collapsed: boolean\n }\n markdown: {\n breadcrumbs: boolean\n hierarchy: boolean\n sourceLinks: boolean\n codeBlocks: boolean\n sourceBaseUrl?: string\n }\n} & Omit<TypeDocConfig, \"markdown\" | \"out\" | \"sidebar\">\n\nexport type TypeDocRuntimeContext = {\n basePath: string\n config: ResolvedTypeDocConfig\n packageNameCache: Map<string, string | undefined>\n project: ProjectReflection\n}\n\nexport function resolveTypeDocConfig(config: TypeDocConfig): ResolvedTypeDocConfig {\n const sidebar = resolveSidebarConfig(config.sidebar)\n const markdown = resolveMarkdownConfig(config.markdown)\n\n return {\n ...config,\n excludeExternals: withDefault(config.excludeExternals, true),\n excludeInternal: withDefault(config.excludeInternal, true),\n excludePrivate: withDefault(config.excludePrivate, true),\n excludeProtected: withDefault(config.excludeProtected, false),\n markdown,\n out: withDefault(config.out, \"api\"),\n sidebar,\n sort: withDefault(config.sort, [\"source-order\"]),\n }\n}\n\nexport function getTypedocOptions(config: ResolvedTypeDocConfig): Record<string, unknown> {\n const options: Record<string, unknown> = {\n entryPoints: config.entryPoints,\n excludeExternals: config.excludeExternals,\n excludeInternal: config.excludeInternal,\n excludePrivate: config.excludePrivate,\n excludeProtected: config.excludeProtected,\n sort: config.sort,\n tsconfig: config.tsconfig,\n }\n\n applyOptionalOption(options, \"exclude\", config.exclude)\n applyOptionalOption(options, \"categoryOrder\", config.categoryOrder)\n applyOptionalOption(options, \"groupOrder\", config.groupOrder)\n applyOptionalOption(options, \"plugin\", config.plugin)\n applyOptionalOption(options, \"readme\", config.readme)\n\n return options\n}\n\nfunction applyOptionalOption(\n options: Record<string, unknown>,\n key: string,\n value: null | string | string[] | undefined\n): void {\n if (value != null) {\n options[key] = value\n }\n}\n\nfunction withDefault<T>(value: T | undefined, fallback: T): T {\n return value ?? fallback\n}\n\nfunction resolveSidebarConfig(sidebar: TypeDocConfig[\"sidebar\"]): ResolvedTypeDocConfig[\"sidebar\"] {\n return {\n collapsed: withDefault(sidebar?.collapsed, false),\n position: withDefault(sidebar?.position, 100),\n title: withDefault(sidebar?.title, \"API Reference\"),\n }\n}\n\nfunction resolveMarkdownConfig(\n markdown: TypeDocConfig[\"markdown\"]\n): ResolvedTypeDocConfig[\"markdown\"] {\n return {\n breadcrumbs: withDefault(markdown?.breadcrumbs, true),\n codeBlocks: withDefault(markdown?.codeBlocks, true),\n hierarchy: withDefault(markdown?.hierarchy, true),\n sourceBaseUrl: markdown?.sourceBaseUrl,\n sourceLinks: withDefault(markdown?.sourceLinks, true),\n }\n}\n","import { type DeclarationReflection, type ProjectReflection, ReflectionKind } from \"typedoc\"\n\nexport type GroupedReflections = {\n componentItems: DeclarationReflection[]\n functionsByFile: Map<string, DeclarationReflection[]>\n standaloneItems: DeclarationReflection[]\n typesByFile: Map<string, DeclarationReflection[]>\n}\n\nexport type ReflectionNavigation = {\n next: DeclarationReflection | null\n prev: DeclarationReflection | null\n}\n\nexport type ComponentProp = {\n description: string\n name: string\n optional: boolean\n type: string\n}\n\nexport type CommentPart = {\n kind: string\n text: string\n}\n\nexport function groupProjectChildren(\n project: ProjectReflection,\n isComponentName: (name: string) => boolean\n): GroupedReflections {\n const grouped: GroupedReflections = {\n componentItems: [],\n functionsByFile: new Map<string, DeclarationReflection[]>(),\n standaloneItems: [],\n typesByFile: new Map<string, DeclarationReflection[]>(),\n }\n\n const children = project.children ?? []\n for (const child of children) {\n if (appendFunctionReflection(grouped, child, isComponentName)) {\n continue\n }\n if (appendTypeAliasReflection(grouped, child)) {\n continue\n }\n grouped.standaloneItems.push(child)\n }\n\n return grouped\n}\n\nfunction appendFunctionReflection(\n grouped: GroupedReflections,\n child: DeclarationReflection,\n isComponentName: (name: string) => boolean\n): boolean {\n const sourceFile = child.sources?.[0]?.fileName\n if (child.kind !== ReflectionKind.Function || sourceFile == null) {\n return false\n }\n\n if (isComponentName(child.name)) {\n grouped.componentItems.push(child)\n return true\n }\n\n appendToMapList(grouped.functionsByFile, sourceFile, child)\n return true\n}\n\nfunction appendTypeAliasReflection(\n grouped: GroupedReflections,\n child: DeclarationReflection\n): boolean {\n const sourceFile = child.sources?.[0]?.fileName\n if (child.kind !== ReflectionKind.TypeAlias || sourceFile == null) {\n return false\n }\n\n appendToMapList(grouped.typesByFile, sourceFile, child)\n return true\n}\n\nexport function appendToMapList<T>(map: Map<string, T[]>, key: string, item: T): void {\n const items = map.get(key) ?? []\n items.push(item)\n map.set(key, items)\n}\n\nexport function sortReflectionsByName<T extends { name: string }>(items: T[]): T[] {\n return [...items].sort((left, right) => left.name.localeCompare(right.name))\n}\n\nexport function getModuleNameFromPath(\n filePath: string,\n packageNameCache: Map<string, string | undefined>\n): string {\n const parts = filePath.split(\"/\")\n const filePart = parts.pop() ?? filePath\n const basename = filePart.replace(/\\.(?:ts|tsx|js|jsx)$/u, \"\")\n const parent = parts.pop()\n\n if (parent != null && parent !== \"src\") {\n return `${parent}/${basename}`\n }\n\n if (basename === \"index\") {\n for (const packageName of packageNameCache.values()) {\n if (packageName != null && packageName.length > 0) {\n return packageName\n }\n }\n }\n\n return basename\n}\n\nexport function renderComment(parts: CommentPart[]): string {\n return parts.map((part) => part.text).join(\"\")\n}\n\nexport function renderCommentShort(parts: CommentPart[]): string {\n const text = renderComment(parts)\n const firstSentence = text.split(/[!.?]\\s/u)[0]\n if (firstSentence.length < text.length) {\n return `${firstSentence}.`\n }\n return text\n}\n\nexport function getSlug(name: string): string {\n return name\n .toLowerCase()\n .replaceAll(/[^\\da-z]+/gu, \"-\")\n .replaceAll(/^-|-$/gu, \"\")\n}\n\nexport function buildLink(basePath: string, category: string, slug: string): string {\n if (slug === \"index\") {\n return `${basePath}/${category}`\n }\n return `${basePath}/${category}/${slug}`\n}\n\nexport function getSourceUrl(\n sourceBaseUrl: string | undefined,\n fileName: string,\n line: number\n): null | string {\n if (sourceBaseUrl == null || sourceBaseUrl.length === 0) {\n return null\n }\n const baseUrl = sourceBaseUrl.replace(/\\/$/u, \"\")\n return `${baseUrl}/${fileName}#L${line}`\n}\n\nexport function getKindName(kind: ReflectionKind): string {\n const kindNames: Partial<Record<ReflectionKind, string>> = {\n [ReflectionKind.Project]: \"Project\",\n [ReflectionKind.Module]: \"Module\",\n [ReflectionKind.Namespace]: \"Namespace\",\n [ReflectionKind.Enum]: \"Enum\",\n [ReflectionKind.EnumMember]: \"Enum Member\",\n [ReflectionKind.Variable]: \"Variable\",\n [ReflectionKind.Function]: \"Function\",\n [ReflectionKind.Class]: \"Class\",\n [ReflectionKind.Interface]: \"Interface\",\n [ReflectionKind.Constructor]: \"Constructor\",\n [ReflectionKind.Property]: \"Property\",\n [ReflectionKind.Method]: \"Method\",\n [ReflectionKind.TypeAlias]: \"Type\",\n }\n return kindNames[kind] ?? \"Unknown\"\n}\n\nexport function getGroupUrlPrefix(kind: ReflectionKind): string {\n const prefixes: Partial<Record<ReflectionKind, string>> = {\n [ReflectionKind.Enum]: \"enums\",\n [ReflectionKind.Variable]: \"variables\",\n [ReflectionKind.Class]: \"classes\",\n [ReflectionKind.Interface]: \"interfaces\",\n [ReflectionKind.Namespace]: \"namespaces\",\n [ReflectionKind.Module]: \"modules\",\n }\n return prefixes[kind] ?? \"other\"\n}\n\nexport function getKindGroupName(kind: ReflectionKind, name: string): string {\n if (kind === ReflectionKind.Function) {\n if (name.startsWith(\"use\")) {\n return \"React Hooks\"\n }\n if (isReactComponent(name)) {\n return \"React Components\"\n }\n return \"Functions\"\n }\n\n const groupNames: Partial<Record<ReflectionKind, string>> = {\n [ReflectionKind.Class]: \"Classes\",\n [ReflectionKind.Enum]: \"Enums\",\n [ReflectionKind.Interface]: \"Interfaces\",\n [ReflectionKind.TypeAlias]: \"Types\",\n [ReflectionKind.Variable]: \"Variables\",\n }\n\n return groupNames[kind] ?? \"Other\"\n}\n\nexport function isReactComponent(name: string): boolean {\n const first = name.slice(0, 1)\n if (first.length === 0 || first !== first.toUpperCase()) {\n return false\n }\n if (name.includes(\"_\") || name.startsWith(\"use\")) {\n return false\n }\n if (name.endsWith(\"Props\") || name.endsWith(\"Options\") || name.endsWith(\"Config\")) {\n return false\n }\n return true\n}\n\nexport function createBreadcrumbs(basePath: string, pagePath: string): string {\n const parts = pagePath.split(\"/\")\n const breadcrumbs: string[] = [`[API](${basePath})`]\n let currentPath = \"\"\n\n for (const part of parts.slice(0, -1)) {\n currentPath = currentPath.length > 0 ? `${currentPath}/${part}` : part\n breadcrumbs.push(`[${part}](${basePath}/${currentPath})`)\n }\n\n const leaf = parts.at(-1)\n if (leaf != null) {\n breadcrumbs.push(leaf)\n }\n\n return breadcrumbs.join(\" / \")\n}\n\nexport function createNavigationLine(params: {\n basePath: string\n kind: ReflectionKind\n navigation: ReflectionNavigation\n}): null | string {\n const { basePath, kind, navigation } = params\n const prefix = getGroupUrlPrefix(kind)\n const prevLink =\n navigation.prev == null\n ? \"\"\n : `[← ${navigation.prev.name}](${buildLink(basePath, prefix, getSlug(navigation.prev.name))})`\n const nextLink =\n navigation.next == null\n ? \"\"\n : `[${navigation.next.name} →](${buildLink(basePath, prefix, getSlug(navigation.next.name))})`\n\n if (prevLink.length > 0 && nextLink.length > 0) {\n return `${prevLink} | ${nextLink}`\n }\n\n if (prevLink.length > 0) {\n return prevLink\n }\n\n if (nextLink.length > 0) {\n return nextLink\n }\n\n return null\n}\n","import { type DeclarationReflection, ReflectionKind } from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\nimport type { GeneratedApiDoc } from \"./types\"\n\nimport {\n buildLink,\n getModuleNameFromPath,\n getSlug,\n type GroupedReflections,\n renderCommentShort,\n sortReflectionsByName,\n} from \"./generator-shared\"\n\nexport function generateCategoryIndexPages(\n context: TypeDocRuntimeContext,\n grouped: GroupedReflections\n): GeneratedApiDoc[] {\n const pages: GeneratedApiDoc[] = []\n\n pushIfNotNull(pages, createComponentsIndexPage(context, grouped.componentItems))\n pushIfNotNull(pages, createFunctionsIndexPage(context, grouped.functionsByFile))\n pushIfNotNull(pages, createInterfacesIndexPage(context, grouped.standaloneItems))\n pushIfNotNull(pages, createTypesIndexPage(context, grouped.typesByFile))\n pushIfNotNull(pages, createClassesIndexPage(context, grouped.standaloneItems))\n\n return pages\n}\n\nfunction pushIfNotNull(docs: GeneratedApiDoc[], doc: GeneratedApiDoc | null): void {\n if (doc != null) {\n docs.push(doc)\n }\n}\n\nfunction createComponentsIndexPage(\n context: TypeDocRuntimeContext,\n components: DeclarationReflection[]\n): GeneratedApiDoc | null {\n if (components.length === 0) {\n return null\n }\n\n return {\n content: renderSimpleItemIndex({\n basePath: context.basePath,\n category: \"components\",\n items: components,\n title: \"Components\",\n }),\n frontmatter: { sidebar: false, title: \"Components\" },\n path: \"components/index.md\",\n }\n}\n\nfunction createInterfacesIndexPage(\n context: TypeDocRuntimeContext,\n standaloneItems: DeclarationReflection[]\n): GeneratedApiDoc | null {\n const interfaces = standaloneItems.filter((item) => item.kind === ReflectionKind.Interface)\n if (interfaces.length === 0) {\n return null\n }\n\n return {\n content: renderSimpleItemIndex({\n basePath: context.basePath,\n category: \"interfaces\",\n items: interfaces,\n title: \"Interfaces\",\n }),\n frontmatter: { sidebar: false, title: \"Interfaces\" },\n path: \"interfaces/index.md\",\n }\n}\n\nfunction createClassesIndexPage(\n context: TypeDocRuntimeContext,\n standaloneItems: DeclarationReflection[]\n): GeneratedApiDoc | null {\n const classes = standaloneItems.filter((item) => item.kind === ReflectionKind.Class)\n if (classes.length === 0) {\n return null\n }\n\n return {\n content: renderSimpleItemIndex({\n basePath: context.basePath,\n category: \"classes\",\n items: classes,\n title: \"Classes\",\n }),\n frontmatter: { sidebar: false, title: \"Classes\" },\n path: \"classes/index.md\",\n }\n}\n\nfunction renderSimpleItemIndex(params: {\n basePath: string\n category: string\n items: DeclarationReflection[]\n title: string\n}): string {\n const lines: string[] = [`# ${params.title}`, \"\"]\n const sortedItems = sortReflectionsByName(params.items)\n\n for (const item of sortedItems) {\n const summary = item.comment?.summary\n const description = summary == null ? \"\" : ` - ${renderCommentShort(summary)}`\n const link = buildLink(params.basePath, params.category, getSlug(item.name))\n lines.push(`- [${item.name}](${link})${description}`)\n }\n\n lines.push(\"\")\n return lines.join(\"\\n\")\n}\n\nfunction createFunctionsIndexPage(\n context: TypeDocRuntimeContext,\n functionsByFile: Map<string, DeclarationReflection[]>\n): GeneratedApiDoc | null {\n if (functionsByFile.size === 0) {\n return null\n }\n\n return {\n content: renderModuleIndex({\n basePath: context.basePath,\n category: \"functions\",\n modules: functionsByFile,\n packageNameCache: context.packageNameCache,\n title: \"Functions\",\n }),\n frontmatter: { sidebar: false, title: \"Functions\" },\n path: \"functions/index.md\",\n }\n}\n\nfunction createTypesIndexPage(\n context: TypeDocRuntimeContext,\n typesByFile: Map<string, DeclarationReflection[]>\n): GeneratedApiDoc | null {\n if (typesByFile.size === 0) {\n return null\n }\n\n return {\n content: renderModuleIndex({\n basePath: context.basePath,\n category: \"types\",\n modules: typesByFile,\n packageNameCache: context.packageNameCache,\n title: \"Types\",\n }),\n frontmatter: { sidebar: false, title: \"Types\" },\n path: \"types/index.md\",\n }\n}\n\nfunction renderModuleIndex(params: {\n basePath: string\n category: string\n modules: Map<string, DeclarationReflection[]>\n packageNameCache: Map<string, string | undefined>\n title: string\n}): string {\n const lines: string[] = [`# ${params.title}`, \"\"]\n const sortedModules = [...params.modules.entries()].sort(([left], [right]) => {\n const leftName = getModuleNameFromPath(left, params.packageNameCache)\n const rightName = getModuleNameFromPath(right, params.packageNameCache)\n return leftName.localeCompare(rightName)\n })\n\n for (const [sourceFile, items] of sortedModules) {\n const moduleName = getModuleNameFromPath(sourceFile, params.packageNameCache)\n const slug = getSlug(moduleName)\n const itemNames = items\n .map((item) => item.name)\n .sort()\n .join(\", \")\n lines.push(\n `- [${moduleName}](${buildLink(params.basePath, params.category, slug)}) - ${itemNames}`\n )\n }\n\n lines.push(\"\")\n return lines.join(\"\\n\")\n}\n","import { DeclarationReflection, type SignatureReflection } from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\n\nimport { buildLink, type ComponentProp, getSlug, renderCommentShort } from \"./generator-shared\"\n\nexport function getTypeName(paramType: unknown): null | string {\n if (!isRecord(paramType)) {\n return null\n }\n\n if (typeof paramType.name === \"string\" && paramType.name.length > 0) {\n return paramType.name\n }\n\n if (paramType.type !== \"reference\") {\n return null\n }\n\n if (typeof paramType.qualifiedName === \"string\" && paramType.qualifiedName.length > 0) {\n return paramType.qualifiedName\n }\n\n return null\n}\n\nexport function getPropsFromType(\n context: TypeDocRuntimeContext,\n paramType: unknown\n): ComponentProp[] {\n const inlineProps = getInlineDeclarationProps(paramType)\n if (inlineProps.length > 0) {\n return inlineProps\n }\n\n const typeName = getTypeName(paramType)\n if (typeName == null) {\n return []\n }\n\n const reflection = findReflectionByName(context, typeName)\n if (reflection == null) {\n return []\n }\n\n return extractPropsFromChildren(reflection.children ?? [])\n}\n\nfunction getInlineDeclarationProps(paramType: unknown): ComponentProp[] {\n if (!isRecord(paramType)) {\n return []\n }\n\n const declaration = paramType.declaration\n if (declaration == null) {\n return []\n }\n\n return declaration instanceof DeclarationReflection\n ? extractPropsFromChildren(declaration.children ?? [])\n : []\n}\n\nfunction findReflectionByName(\n context: TypeDocRuntimeContext,\n typeName: string\n): DeclarationReflection | null {\n const direct = context.project.getChildByName(typeName)\n if (direct instanceof DeclarationReflection) {\n return direct\n }\n\n const children = context.project.children ?? []\n for (const child of children) {\n if (child.name === typeName) {\n return child\n }\n }\n\n return null\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value != null && typeof value === \"object\"\n}\n\nfunction extractPropsFromChildren(children: DeclarationReflection[]): ComponentProp[] {\n return children.map((child) => ({\n description: child.comment?.summary == null ? \"\" : renderCommentShort(child.comment.summary),\n name: child.name,\n optional: child.flags.isOptional,\n type: child.type == null ? \"unknown\" : child.type.toString(),\n }))\n}\n\nexport function renderComponentSignature(\n context: TypeDocRuntimeContext,\n signature: SignatureReflection,\n componentName: string\n): string {\n const lines: string[] = []\n const propsParam = signature.parameters?.[0]\n const props = propsParam == null ? [] : getPropsFromType(context, propsParam.type)\n const propsTypeName = propsParam == null ? null : getTypeName(propsParam.type)\n\n appendComponentUsageBlock(lines, componentName, props)\n appendComponentPropsTable({\n context,\n lines,\n props,\n propsTypeName,\n })\n\n return lines.join(\"\\n\")\n}\n\nfunction appendComponentUsageBlock(\n lines: string[],\n componentName: string,\n props: ComponentProp[]\n): void {\n const hasChildren = props.some((prop) => prop.name === \"children\")\n const displayProps = props.filter((prop) => prop.name !== \"children\")\n\n lines.push(\"```tsx\")\n lines.push(`<${componentName}`)\n\n if (displayProps.length > 0) {\n for (const prop of displayProps) {\n const optionalMark = prop.optional ? \"?\" : \"\"\n lines.push(` ${prop.name}${optionalMark}={${prop.type}}`)\n }\n } else if (!hasChildren) {\n lines.push(\" {...props}\")\n }\n\n if (hasChildren) {\n lines.push(\">\")\n lines.push(\" {children}\")\n lines.push(`</${componentName}>`)\n } else {\n lines.push(\"/>\")\n }\n\n lines.push(\"```\")\n}\n\nfunction appendComponentPropsTable(params: {\n context: TypeDocRuntimeContext\n lines: string[]\n props: ComponentProp[]\n propsTypeName: null | string\n}): void {\n const { context, lines, props, propsTypeName } = params\n if (props.length === 0) {\n return\n }\n\n lines.push(\"\")\n lines.push(getPropsHeading(context.basePath, propsTypeName))\n\n lines.push(\"\")\n lines.push(\"| Prop | Type | Required | Description |\")\n lines.push(\"|------|------|----------|-------------|\")\n\n for (const prop of props) {\n const required = prop.optional ? \"No\" : \"Yes\"\n const description = prop.description.length > 0 ? prop.description : \"-\"\n lines.push(`| ${prop.name} | \\`${prop.type}\\` | ${required} | ${description} |`)\n }\n}\n\nfunction getPropsHeading(basePath: string, propsTypeName: null | string): string {\n if (propsTypeName == null) {\n return \"## Props\"\n }\n\n const propsSlug = getSlug(propsTypeName)\n const propsLink = buildLink(basePath, \"interfaces\", propsSlug)\n return `## [Props](${propsLink})`\n}\n","import type { DeclarationReflection } from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\nimport type { GeneratedApiDoc } from \"./types\"\n\nimport { renderComponentSignature } from \"./generator-render-component\"\nimport {\n createNavigationLine,\n getSlug,\n getSourceUrl,\n type ReflectionNavigation,\n renderComment,\n renderCommentShort,\n} from \"./generator-shared\"\n\nexport function generateComponentPage(params: {\n component: DeclarationReflection\n context: TypeDocRuntimeContext\n navigation: ReflectionNavigation\n}): GeneratedApiDoc {\n const { component, context, navigation } = params\n const slug = getSlug(component.name)\n const content = createComponentContent(context, component, navigation)\n\n return {\n content,\n frontmatter: {\n description:\n component.comment?.summary == null\n ? `${component.name} component`\n : renderCommentShort(component.comment.summary),\n title: component.name,\n },\n path: `components/${slug}.md`,\n }\n}\n\nfunction createComponentContent(\n context: TypeDocRuntimeContext,\n component: DeclarationReflection,\n navigation: ReflectionNavigation\n): string {\n const lines: string[] = [`# ${component.name}`, \"\"]\n\n const summary = component.comment?.summary\n if (summary != null) {\n lines.push(renderComment(summary))\n lines.push(\"\")\n }\n\n appendComponentUsage(lines, context, component)\n appendExamples(lines, component)\n appendSourceLink(lines, context, component)\n appendComponentNavigation({\n component,\n context,\n lines,\n navigation,\n })\n\n return lines.join(\"\\n\")\n}\n\nfunction appendComponentUsage(\n lines: string[],\n context: TypeDocRuntimeContext,\n component: DeclarationReflection\n): void {\n const signatures = component.signatures ?? []\n if (signatures.length === 0) {\n return\n }\n\n lines.push(\"## Usage\")\n lines.push(\"\")\n\n for (const signature of signatures) {\n lines.push(renderComponentSignature(context, signature, component.name))\n lines.push(\"\")\n }\n}\n\nfunction appendExamples(lines: string[], reflection: DeclarationReflection): void {\n const tags = reflection.comment?.blockTags ?? []\n const examples = tags.filter((tag) => tag.tag === \"@example\")\n if (examples.length === 0) {\n return\n }\n\n lines.push(\"## Example\")\n lines.push(\"\")\n\n for (const example of examples) {\n lines.push(renderComment(example.content))\n lines.push(\"\")\n }\n}\n\nfunction appendSourceLink(\n lines: string[],\n context: TypeDocRuntimeContext,\n reflection: DeclarationReflection\n): void {\n if (!context.config.markdown.sourceLinks) {\n return\n }\n\n const source = reflection.sources?.[0]\n if (source == null) {\n return\n }\n\n const sourceUrl = getSourceUrl(\n context.config.markdown.sourceBaseUrl,\n source.fileName,\n source.line\n )\n if (sourceUrl == null) {\n return\n }\n\n lines.push(`[Source](${sourceUrl})`)\n lines.push(\"\")\n}\n\nfunction appendComponentNavigation(params: {\n component: DeclarationReflection\n context: TypeDocRuntimeContext\n lines: string[]\n navigation: ReflectionNavigation\n}): void {\n const { component, context, lines, navigation } = params\n const line = createNavigationLine({\n basePath: context.basePath,\n kind: component.kind,\n navigation,\n })\n\n if (line == null) {\n return\n }\n\n lines.push(\"---\")\n lines.push(\"\")\n lines.push(line)\n lines.push(\"\")\n}\n","import type {\n DeclarationReflection,\n ParameterReflection,\n SignatureReflection,\n TypeParameterReflection,\n} from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\n\nimport { renderComment, renderCommentShort } from \"./generator-shared\"\n\nexport function renderSignature(\n context: TypeDocRuntimeContext,\n signature: SignatureReflection\n): string {\n const lines: string[] = []\n\n appendCodeFenceStart(lines, context)\n lines.push(getSignatureLine(signature))\n appendCodeFenceEnd(lines, context)\n appendSignatureParameters(lines, signature)\n appendSignatureReturn(lines, signature)\n\n return lines.join(\"\\n\")\n}\n\nfunction appendCodeFenceStart(lines: string[], context: TypeDocRuntimeContext): void {\n if (context.config.markdown.codeBlocks) {\n lines.push(\"```typescript\")\n }\n}\n\nfunction appendCodeFenceEnd(lines: string[], context: TypeDocRuntimeContext): void {\n if (context.config.markdown.codeBlocks) {\n lines.push(\"```\")\n }\n}\n\nfunction getSignatureLine(signature: SignatureReflection): string {\n const typeParameters = renderTypeParameterNames(signature.typeParameters)\n const parameters = renderSignatureParameters(signature)\n const returnType = signature.type == null ? \"\" : `: ${signature.type.toString()}`\n return `function ${signature.name}${typeParameters}(${parameters})${returnType}`\n}\n\nfunction renderTypeParameterNames(typeParameters: SignatureReflection[\"typeParameters\"]): string {\n if (typeParameters == null || typeParameters.length === 0) {\n return \"\"\n }\n return `<${typeParameters.map((item) => item.name).join(\", \")}>`\n}\n\nfunction renderSignatureParameters(signature: SignatureReflection): string {\n const parameters = signature.parameters ?? []\n return parameters\n .map((parameter) => {\n const optional = parameter.flags.isOptional ? \"?\" : \"\"\n const type = parameter.type == null ? \"\" : `: ${parameter.type.toString()}`\n return `${parameter.name}${optional}${type}`\n })\n .join(\", \")\n}\n\nfunction appendSignatureParameters(lines: string[], signature: SignatureReflection): void {\n const parameters = signature.parameters ?? []\n if (parameters.length === 0) {\n return\n }\n\n lines.push(\"\")\n lines.push(\"### Parameters\")\n lines.push(\"\")\n lines.push(\"| Name | Type | Description |\")\n lines.push(\"|------|------|-------------|\")\n\n for (const parameter of parameters) {\n lines.push(renderSignatureParameterRow(parameter))\n }\n}\n\nfunction renderSignatureParameterRow(parameter: ParameterReflection): string {\n const optional = parameter.flags.isOptional ? \" (optional)\" : \"\"\n const type = parameter.type == null ? \"-\" : `\\`${parameter.type.toString()}\\``\n const summary = parameter.comment?.summary\n const description = summary == null ? \"-\" : renderCommentShort(summary)\n return `| ${parameter.name}${optional} | ${type} | ${description} |`\n}\n\nfunction appendSignatureReturn(lines: string[], signature: SignatureReflection): void {\n const returnType = signature.type\n if (returnType == null || returnType.toString() === \"void\") {\n return\n }\n\n lines.push(\"\")\n lines.push(\"### Returns\")\n lines.push(\"\")\n lines.push(`\\`${returnType.toString()}\\``)\n\n const returnTag = signature.comment?.blockTags.find((tag) => tag.tag === \"@returns\")\n if (returnTag == null) {\n return\n }\n\n lines.push(\"\")\n lines.push(renderComment(returnTag.content))\n}\n\nexport function renderProperty(property: DeclarationReflection): string {\n const lines: string[] = []\n const flags = getPropertyFlags(property)\n\n lines.push(`### ${property.name}`)\n if (flags.length > 0) {\n lines.push(`*${flags.join(\", \")}*`)\n }\n lines.push(\"\")\n\n appendPropertyType(lines, property)\n appendPropertySummary(lines, property)\n appendPropertyDefaultValue(lines, property)\n\n return lines.join(\"\\n\")\n}\n\nfunction getPropertyFlags(property: DeclarationReflection): string[] {\n const flags: string[] = []\n if (property.flags.isOptional) flags.push(\"optional\")\n if (property.flags.isReadonly) flags.push(\"readonly\")\n if (property.flags.isStatic) flags.push(\"static\")\n return flags\n}\n\nfunction appendPropertyType(lines: string[], property: DeclarationReflection): void {\n if (property.type == null) {\n return\n }\n lines.push(\"```typescript\")\n lines.push(`${property.name}: ${property.type.toString()}`)\n lines.push(\"```\")\n lines.push(\"\")\n}\n\nfunction appendPropertySummary(lines: string[], property: DeclarationReflection): void {\n const summary = property.comment?.summary\n if (summary != null) {\n lines.push(renderComment(summary))\n }\n}\n\nfunction appendPropertyDefaultValue(lines: string[], property: DeclarationReflection): void {\n if (property.defaultValue == null || property.defaultValue.length === 0) {\n return\n }\n lines.push(\"\")\n lines.push(`**Default:** \\`${property.defaultValue}\\``)\n}\n\nexport function renderMethod(\n context: TypeDocRuntimeContext,\n method: DeclarationReflection\n): string {\n const lines: string[] = []\n lines.push(`### ${method.name}()`)\n lines.push(\"\")\n\n const signatures = method.signatures ?? []\n for (const signature of signatures) {\n appendMethodSignature(lines, context, signature)\n }\n\n return lines.join(\"\\n\")\n}\n\nfunction appendMethodSignature(\n lines: string[],\n context: TypeDocRuntimeContext,\n signature: SignatureReflection\n): void {\n const summary = signature.comment?.summary\n if (summary != null) {\n lines.push(renderComment(summary))\n lines.push(\"\")\n }\n\n lines.push(renderSignature(context, signature))\n lines.push(\"\")\n}\n\nexport function renderTypeParameters(typeParameters: TypeParameterReflection[]): string {\n const lines: string[] = []\n lines.push(\"| Name | Constraint | Default | Description |\")\n lines.push(\"|------|------------|---------|-------------|\")\n\n for (const typeParameter of typeParameters) {\n lines.push(renderTypeParameterRow(typeParameter))\n }\n\n return lines.join(\"\\n\")\n}\n\nfunction renderTypeParameterRow(typeParameter: TypeParameterReflection): string {\n const constraint = typeParameter.type == null ? \"-\" : `\\`${typeParameter.type.toString()}\\``\n const defaultValue =\n typeParameter.default == null ? \"-\" : `\\`${typeParameter.default.toString()}\\``\n const summary = typeParameter.comment?.summary\n const description = summary == null ? \"-\" : renderCommentShort(summary)\n return `| ${typeParameter.name} | ${constraint} | ${defaultValue} | ${description} |`\n}\n\nexport function renderHierarchy(reflection: DeclarationReflection): null | string {\n const lines: string[] = []\n\n appendHierarchySection(lines, \"**Extends:**\", reflection.extendedTypes)\n appendHierarchySection(lines, \"**Implements:**\", reflection.implementedTypes)\n appendHierarchySection(lines, \"**Extended by:**\", reflection.extendedBy)\n appendHierarchySection(lines, \"**Implemented by:**\", reflection.implementedBy)\n\n return lines.length === 0 ? null : lines.join(\"\\n\")\n}\n\nfunction appendHierarchySection(\n lines: string[],\n title: string,\n types: DeclarationReflection[\"extendedTypes\"]\n): void {\n if (types == null || types.length === 0) {\n return\n }\n\n lines.push(title)\n for (const item of types) {\n lines.push(`- \\`${item.toString()}\\``)\n }\n}\n","import type { DeclarationReflection } from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\nimport type { GeneratedApiDoc } from \"./types\"\n\nimport { renderSignature } from \"./generator-render\"\nimport {\n getModuleNameFromPath,\n getSlug,\n getSourceUrl,\n renderComment,\n sortReflectionsByName,\n} from \"./generator-shared\"\n\nexport function generateGroupedFunctionsPage(params: {\n context: TypeDocRuntimeContext\n functions: DeclarationReflection[]\n sourceFile: string\n}): GeneratedApiDoc {\n const { context, functions, sourceFile } = params\n const moduleName = getModuleNameFromPath(sourceFile, context.packageNameCache)\n const content = createGroupedFunctionsContent({\n context,\n functions,\n moduleName,\n sourceFile,\n })\n\n return {\n content,\n frontmatter: {\n description: `Functions from ${sourceFile}`,\n title: `${moduleName} Functions`,\n },\n path: `functions/${getSlug(moduleName)}.md`,\n }\n}\n\nfunction createGroupedFunctionsContent(params: {\n context: TypeDocRuntimeContext\n functions: DeclarationReflection[]\n moduleName: string\n sourceFile: string\n}): string {\n const { context, functions, moduleName, sourceFile } = params\n const lines: string[] = [\n `# ${moduleName} Functions`,\n \"\",\n `Functions exported from \\`${sourceFile}\\``,\n \"\",\n ]\n const sortedFunctions = sortReflectionsByName(functions)\n\n for (const fn of sortedFunctions) {\n appendGroupedFunction(lines, context, fn)\n }\n\n return lines.join(\"\\n\")\n}\n\nfunction appendGroupedFunction(\n lines: string[],\n context: TypeDocRuntimeContext,\n fn: DeclarationReflection\n): void {\n lines.push(`## ${fn.name}`)\n lines.push(\"\")\n\n const summary = fn.comment?.summary\n if (summary != null) {\n lines.push(renderComment(summary))\n lines.push(\"\")\n }\n\n const signatures = fn.signatures ?? []\n for (const signature of signatures) {\n lines.push(renderSignature(context, signature))\n lines.push(\"\")\n }\n\n appendExamples(lines, fn)\n appendSourceLink(lines, context, fn)\n lines.push(\"---\")\n lines.push(\"\")\n}\n\nfunction appendExamples(lines: string[], reflection: DeclarationReflection): void {\n const tags = reflection.comment?.blockTags ?? []\n const examples = tags.filter((tag) => tag.tag === \"@example\")\n if (examples.length === 0) {\n return\n }\n\n lines.push(\"### Example\")\n lines.push(\"\")\n\n for (const example of examples) {\n lines.push(renderComment(example.content))\n lines.push(\"\")\n }\n}\n\nfunction appendSourceLink(\n lines: string[],\n context: TypeDocRuntimeContext,\n reflection: DeclarationReflection\n): void {\n if (!context.config.markdown.sourceLinks) {\n return\n }\n\n const source = reflection.sources?.[0]\n if (source == null) {\n return\n }\n\n const sourceUrl = getSourceUrl(\n context.config.markdown.sourceBaseUrl,\n source.fileName,\n source.line\n )\n if (sourceUrl == null) {\n return\n }\n\n lines.push(`[Source](${sourceUrl})`)\n lines.push(\"\")\n}\n\nexport function generateGroupedTypesPage(params: {\n context: TypeDocRuntimeContext\n sourceFile: string\n types: DeclarationReflection[]\n}): GeneratedApiDoc {\n const { context, sourceFile, types } = params\n const moduleName = getModuleNameFromPath(sourceFile, context.packageNameCache)\n const content = createGroupedTypesContent({\n context,\n moduleName,\n sourceFile,\n types,\n })\n\n return {\n content,\n frontmatter: {\n description: `Type definitions from ${sourceFile}`,\n title: `${moduleName} Types`,\n },\n path: `types/${getSlug(moduleName)}.md`,\n }\n}\n\nfunction createGroupedTypesContent(params: {\n context: TypeDocRuntimeContext\n moduleName: string\n sourceFile: string\n types: DeclarationReflection[]\n}): string {\n const { context, moduleName, sourceFile, types } = params\n const lines: string[] = [\n `# ${moduleName} Types`,\n \"\",\n `Type definitions from \\`${sourceFile}\\``,\n \"\",\n ]\n const sortedTypes = sortReflectionsByName(types)\n\n for (const typeAlias of sortedTypes) {\n appendGroupedType(lines, context, typeAlias)\n }\n\n return lines.join(\"\\n\")\n}\n\nfunction appendGroupedType(\n lines: string[],\n context: TypeDocRuntimeContext,\n typeAlias: DeclarationReflection\n): void {\n lines.push(`## ${typeAlias.name}`)\n lines.push(\"\")\n\n const summary = typeAlias.comment?.summary\n if (summary != null) {\n lines.push(renderComment(summary))\n lines.push(\"\")\n }\n\n if (typeAlias.type != null) {\n lines.push(\"```typescript\")\n lines.push(`type ${typeAlias.name} = ${typeAlias.type.toString()}`)\n lines.push(\"```\")\n lines.push(\"\")\n }\n\n appendSourceLink(lines, context, typeAlias)\n lines.push(\"---\")\n lines.push(\"\")\n}\n","import type { DeclarationReflection } from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\nimport type { GeneratedApiDoc } from \"./types\"\n\nimport {\n appendToMapList,\n buildLink,\n getKindGroupName,\n getModuleNameFromPath,\n getSlug,\n type GroupedReflections,\n renderComment,\n renderCommentShort,\n sortReflectionsByName,\n} from \"./generator-shared\"\n\nexport function generateIndexPage(\n context: TypeDocRuntimeContext,\n grouped: GroupedReflections\n): GeneratedApiDoc {\n const lines: string[] = [`# ${context.config.sidebar.title}`, \"\", getProjectSummary(context), \"\"]\n\n appendComponentSection(lines, context, grouped.componentItems)\n appendFunctionsSection(lines, context, grouped.functionsByFile)\n appendTypesSection(lines, context, grouped.typesByFile)\n appendStandaloneSections(lines, context, grouped.standaloneItems)\n\n return {\n content: lines.join(\"\\n\"),\n frontmatter: {\n description: \"Auto-generated API documentation\",\n sidebar_position: 0,\n title: context.config.sidebar.title,\n },\n path: \"index.md\",\n }\n}\n\nfunction getProjectSummary(context: TypeDocRuntimeContext): string {\n const summary = context.project.comment?.summary\n if (summary == null) {\n return \"Auto-generated API documentation.\"\n }\n return renderComment(summary)\n}\n\nfunction appendComponentSection(\n lines: string[],\n context: TypeDocRuntimeContext,\n components: DeclarationReflection[]\n): void {\n if (components.length === 0) {\n return\n }\n\n lines.push(\"## Components\")\n lines.push(\"\")\n\n for (const component of sortReflectionsByName(components)) {\n const description = component.comment?.summary\n const suffix = description == null ? \"\" : ` - ${renderCommentShort(description)}`\n const link = buildLink(context.basePath, \"components\", getSlug(component.name))\n lines.push(`- [${component.name}](${link})${suffix}`)\n }\n\n lines.push(\"\")\n}\n\nfunction appendFunctionsSection(\n lines: string[],\n context: TypeDocRuntimeContext,\n functionsByFile: Map<string, DeclarationReflection[]>\n): void {\n if (functionsByFile.size === 0) {\n return\n }\n\n lines.push(\"## Functions\")\n lines.push(\"\")\n lines.push(...renderModuleSectionItems(context, functionsByFile, \"functions\"))\n lines.push(\"\")\n}\n\nfunction appendTypesSection(\n lines: string[],\n context: TypeDocRuntimeContext,\n typesByFile: Map<string, DeclarationReflection[]>\n): void {\n if (typesByFile.size === 0) {\n return\n }\n\n lines.push(\"## Type Aliases\")\n lines.push(\"\")\n lines.push(...renderModuleSectionItems(context, typesByFile, \"types\"))\n lines.push(\"\")\n}\n\nfunction renderModuleSectionItems(\n context: TypeDocRuntimeContext,\n modules: Map<string, DeclarationReflection[]>,\n category: string\n): string[] {\n const sortedModules = [...modules.entries()].sort(([left], [right]) => {\n const leftName = getModuleNameFromPath(left, context.packageNameCache)\n const rightName = getModuleNameFromPath(right, context.packageNameCache)\n return leftName.localeCompare(rightName)\n })\n\n return sortedModules.map(([sourceFile, items]) => {\n const moduleName = getModuleNameFromPath(sourceFile, context.packageNameCache)\n const itemNames = items\n .map((item) => item.name)\n .sort()\n .join(\", \")\n const link = buildLink(context.basePath, category, getSlug(moduleName))\n return `- [${moduleName}](${link}) - ${itemNames}`\n })\n}\n\nfunction appendStandaloneSections(\n lines: string[],\n context: TypeDocRuntimeContext,\n standaloneItems: DeclarationReflection[]\n): void {\n const groups = new Map<string, DeclarationReflection[]>()\n for (const item of standaloneItems) {\n appendToMapList(groups, getKindGroupName(item.kind, item.name), item)\n }\n\n const orderedGroups = [\"Interfaces\", \"Classes\", \"Variables\", \"Enums\", \"Other\"]\n for (const groupName of orderedGroups) {\n const groupItems = groups.get(groupName)\n if (groupItems == null || groupItems.length === 0) {\n continue\n }\n appendStandaloneGroup({\n context,\n groupItems,\n groupName,\n lines,\n })\n }\n}\n\nfunction appendStandaloneGroup(params: {\n context: TypeDocRuntimeContext\n groupItems: DeclarationReflection[]\n groupName: string\n lines: string[]\n}): void {\n const { context, groupItems, groupName, lines } = params\n lines.push(`## ${groupName}`)\n lines.push(\"\")\n\n for (const item of sortReflectionsByName(groupItems)) {\n const description = item.comment?.summary\n const suffix = description == null ? \"\" : ` - ${renderCommentShort(description)}`\n const prefix = groupName.toLowerCase()\n const link = buildLink(context.basePath, prefix, getSlug(item.name))\n lines.push(`- [${item.name}](${link})${suffix}`)\n }\n\n lines.push(\"\")\n}\n","import type { DeclarationReflection } from \"typedoc\"\n\nimport { renderComment } from \"./generator-shared\"\n\nexport function appendReflectionCommentTags(\n lines: string[],\n reflection: DeclarationReflection\n): void {\n const blockTags = reflection.comment?.blockTags ?? []\n\n appendTagExamples(lines, blockTags)\n appendTagDeprecated(lines, blockTags)\n appendTagSeeAlso(lines, blockTags)\n}\n\nfunction appendTagExamples(\n lines: string[],\n blockTags: NonNullable<DeclarationReflection[\"comment\"]>[\"blockTags\"]\n): void {\n const examples = blockTags.filter((tag) => tag.tag === \"@example\")\n if (examples.length === 0) {\n return\n }\n\n lines.push(\"## Examples\")\n lines.push(\"\")\n\n for (const example of examples) {\n lines.push(renderComment(example.content))\n lines.push(\"\")\n }\n}\n\nfunction appendTagDeprecated(\n lines: string[],\n blockTags: NonNullable<DeclarationReflection[\"comment\"]>[\"blockTags\"]\n): void {\n const deprecatedTag = blockTags.find((tag) => tag.tag === \"@deprecated\")\n if (deprecatedTag == null) {\n return\n }\n\n lines.push('<Warning title=\"Deprecated\">')\n lines.push(renderComment(deprecatedTag.content))\n lines.push(\"</Warning>\")\n lines.push(\"\")\n}\n\nfunction appendTagSeeAlso(\n lines: string[],\n blockTags: NonNullable<DeclarationReflection[\"comment\"]>[\"blockTags\"]\n): void {\n const seeTags = blockTags.filter((tag) => tag.tag === \"@see\")\n if (seeTags.length === 0) {\n return\n }\n\n lines.push(\"## See Also\")\n lines.push(\"\")\n for (const seeTag of seeTags) {\n lines.push(`- ${renderComment(seeTag.content)}`)\n }\n lines.push(\"\")\n}\n","import { type DeclarationReflection, ReflectionKind } from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\nimport type { GeneratedApiDoc } from \"./types\"\n\nimport { appendReflectionCommentTags } from \"./generator-reflection-tags\"\nimport {\n renderHierarchy,\n renderMethod,\n renderProperty,\n renderSignature,\n renderTypeParameters,\n} from \"./generator-render\"\nimport {\n createBreadcrumbs,\n createNavigationLine,\n getGroupUrlPrefix,\n getKindName,\n getSlug,\n getSourceUrl,\n type ReflectionNavigation,\n renderComment,\n renderCommentShort,\n} from \"./generator-shared\"\n\nexport function generateReflectionDocs(params: {\n context: TypeDocRuntimeContext\n navigation: ReflectionNavigation\n parentPath: string\n reflection: DeclarationReflection\n}): GeneratedApiDoc[] {\n const { context, navigation, parentPath, reflection } = params\n const pagePath = getReflectionPagePath(reflection, parentPath)\n const docs: GeneratedApiDoc[] = [\n generateReflectionPage({ context, navigation, pagePath, reflection }),\n ]\n const childRefs = reflection.children ?? []\n for (const child of childRefs) {\n if (hasOwnPage(child.kind)) {\n docs.push(\n ...generateReflectionDocs({\n context,\n navigation: { next: null, prev: null },\n parentPath: pagePath,\n reflection: child,\n })\n )\n }\n }\n return docs\n}\nfunction getReflectionPagePath(reflection: DeclarationReflection, parentPath: string): string {\n const slug = getSlug(reflection.name)\n if (parentPath.length > 0) {\n return `${parentPath}/${slug}`\n }\n const prefix = getGroupUrlPrefix(reflection.kind)\n return prefix.length === 0 ? slug : `${prefix}/${slug}`\n}\nfunction hasOwnPage(kind: ReflectionKind): boolean {\n return [\n ReflectionKind.Class,\n ReflectionKind.Enum,\n ReflectionKind.Interface,\n ReflectionKind.Module,\n ReflectionKind.Namespace,\n ].includes(kind)\n}\nexport function generateReflectionPage(params: {\n context: TypeDocRuntimeContext\n navigation: ReflectionNavigation\n pagePath: string\n reflection: DeclarationReflection\n}): GeneratedApiDoc {\n const { context, navigation, pagePath, reflection } = params\n const lines: string[] = []\n appendReflectionSections({\n context,\n lines,\n navigation,\n pagePath,\n reflection,\n })\n return {\n content: lines.join(\"\\n\"),\n frontmatter: {\n description:\n reflection.comment?.summary == null\n ? `${getKindName(reflection.kind)} ${reflection.name}`\n : renderCommentShort(reflection.comment.summary),\n title: reflection.name,\n },\n path: `${pagePath}.md`,\n }\n}\nfunction appendReflectionSections(params: {\n context: TypeDocRuntimeContext\n lines: string[]\n navigation: ReflectionNavigation\n pagePath: string\n reflection: DeclarationReflection\n}): void {\n const { context, lines, navigation, pagePath, reflection } = params\n appendBreadcrumbs(lines, context, pagePath)\n appendTitle(lines, reflection)\n appendDescription(lines, reflection)\n appendTypeParameters(lines, reflection)\n appendHierarchy(lines, context, reflection)\n appendSignatures(lines, context, reflection)\n appendProperties(lines, reflection)\n appendMethods(lines, context, reflection)\n appendEnumMembers(lines, reflection)\n appendTypeAlias(lines, reflection)\n appendSourceSection(lines, context, reflection)\n appendReflectionCommentTags(lines, reflection)\n appendNavigation({ context, lines, navigation, reflection })\n}\nfunction appendBreadcrumbs(\n lines: string[],\n context: TypeDocRuntimeContext,\n pagePath: string\n): void {\n if (!context.config.markdown.breadcrumbs) {\n return\n }\n lines.push(createBreadcrumbs(context.basePath, pagePath))\n lines.push(\"\")\n}\nfunction appendTitle(lines: string[], reflection: DeclarationReflection): void {\n const kind = getKindName(reflection.kind)\n lines.push(`# ${kind}: ${reflection.name}`)\n lines.push(\"\")\n}\nfunction appendDescription(lines: string[], reflection: DeclarationReflection): void {\n const summary = reflection.comment?.summary\n if (summary == null) {\n return\n }\n lines.push(renderComment(summary))\n lines.push(\"\")\n}\nfunction appendTypeParameters(lines: string[], reflection: DeclarationReflection): void {\n const typeParameters = reflection.typeParameters ?? []\n if (typeParameters.length === 0) {\n return\n }\n lines.push(\"## Type Parameters\")\n lines.push(\"\")\n lines.push(renderTypeParameters(typeParameters))\n lines.push(\"\")\n}\nfunction appendHierarchy(\n lines: string[],\n context: TypeDocRuntimeContext,\n reflection: DeclarationReflection\n): void {\n if (!context.config.markdown.hierarchy) {\n return\n }\n const hierarchy = renderHierarchy(reflection)\n if (hierarchy == null) {\n return\n }\n lines.push(\"## Hierarchy\")\n lines.push(\"\")\n lines.push(hierarchy)\n lines.push(\"\")\n}\nfunction appendSignatures(\n lines: string[],\n context: TypeDocRuntimeContext,\n reflection: DeclarationReflection\n): void {\n const signatures = reflection.signatures ?? []\n if (signatures.length === 0) {\n return\n }\n lines.push(\"## Signature\")\n lines.push(\"\")\n for (const signature of signatures) {\n lines.push(renderSignature(context, signature))\n lines.push(\"\")\n }\n}\nfunction appendProperties(lines: string[], reflection: DeclarationReflection): void {\n const children = reflection.children ?? []\n const properties = children.filter((child) => child.kind === ReflectionKind.Property)\n if (properties.length === 0) {\n return\n }\n lines.push(\"## Properties\")\n lines.push(\"\")\n for (const property of properties) {\n lines.push(renderProperty(property))\n lines.push(\"\")\n }\n}\nfunction appendMethods(\n lines: string[],\n context: TypeDocRuntimeContext,\n reflection: DeclarationReflection\n): void {\n const children = reflection.children ?? []\n const methods = children.filter((child) => child.kind === ReflectionKind.Method)\n if (methods.length === 0) {\n return\n }\n lines.push(\"## Methods\")\n lines.push(\"\")\n for (const method of methods) {\n lines.push(renderMethod(context, method))\n lines.push(\"\")\n }\n}\nfunction appendEnumMembers(lines: string[], reflection: DeclarationReflection): void {\n const children = reflection.children ?? []\n const enumMembers = children.filter((child) => child.kind === ReflectionKind.EnumMember)\n if (enumMembers.length === 0) {\n return\n }\n lines.push(\"## Members\")\n lines.push(\"\")\n lines.push(\"| Member | Value | Description |\")\n lines.push(\"|--------|-------|-------------|\")\n for (const member of enumMembers) {\n const value = member.defaultValue ?? \"\"\n const summary = member.comment?.summary\n const description = summary == null ? \"\" : renderCommentShort(summary)\n lines.push(`| \\`${member.name}\\` | \\`${value}\\` | ${description} |`)\n }\n lines.push(\"\")\n}\nfunction appendTypeAlias(lines: string[], reflection: DeclarationReflection): void {\n if (reflection.kind !== ReflectionKind.TypeAlias || reflection.type == null) {\n return\n }\n lines.push(\"## Type\")\n lines.push(\"\")\n lines.push(\"```typescript\")\n lines.push(`type ${reflection.name} = ${reflection.type.toString()}`)\n lines.push(\"```\")\n lines.push(\"\")\n}\nfunction appendSourceSection(\n lines: string[],\n context: TypeDocRuntimeContext,\n reflection: DeclarationReflection\n): void {\n if (!context.config.markdown.sourceLinks) {\n return\n }\n const source = reflection.sources?.[0]\n if (source == null) {\n return\n }\n lines.push(\"## Source\")\n lines.push(\"\")\n const sourceUrl = getSourceUrl(\n context.config.markdown.sourceBaseUrl,\n source.fileName,\n source.line\n )\n if (sourceUrl == null) {\n lines.push(`${source.fileName}:${source.line}`)\n } else {\n lines.push(`[${source.fileName}:${source.line}](${sourceUrl})`)\n }\n lines.push(\"\")\n}\nfunction appendNavigation(params: {\n context: TypeDocRuntimeContext\n lines: string[]\n navigation: ReflectionNavigation\n reflection: DeclarationReflection\n}): void {\n const { context, lines, navigation, reflection } = params\n const line = createNavigationLine({\n basePath: context.basePath,\n kind: reflection.kind,\n navigation,\n })\n if (line == null) {\n return\n }\n lines.push(\"---\")\n lines.push(\"\")\n lines.push(line)\n lines.push(\"\")\n}\n","import type { DeclarationReflection, ReflectionKind } from \"typedoc\"\n\nimport type { TypeDocRuntimeContext } from \"./generator-config\"\nimport type { GeneratedApiDoc } from \"./types\"\n\nimport { generateCategoryIndexPages } from \"./generator-pages-categories\"\nimport { generateComponentPage } from \"./generator-pages-components\"\nimport { generateGroupedFunctionsPage, generateGroupedTypesPage } from \"./generator-pages-grouped\"\nimport { generateIndexPage } from \"./generator-pages-index\"\nimport { generateReflectionDocs } from \"./generator-reflection\"\nimport {\n groupProjectChildren,\n isReactComponent,\n type ReflectionNavigation,\n sortReflectionsByName,\n} from \"./generator-shared\"\n\nexport function generateMarkdownDocs(context: TypeDocRuntimeContext): GeneratedApiDoc[] {\n const grouped = groupProjectChildren(context.project, isReactComponent)\n const docs: GeneratedApiDoc[] = [generateIndexPage(context, grouped)]\n\n addGroupedFunctionPages(context, docs, grouped.functionsByFile)\n addGroupedTypePages(context, docs, grouped.typesByFile)\n addComponentPages(context, docs, grouped.componentItems)\n addStandalonePages(context, docs, grouped.standaloneItems)\n\n docs.push(...generateCategoryIndexPages(context, grouped))\n return docs\n}\n\nfunction addGroupedFunctionPages(\n context: TypeDocRuntimeContext,\n docs: GeneratedApiDoc[],\n functionsByFile: Map<string, DeclarationReflection[]>\n): void {\n for (const [sourceFile, functions] of functionsByFile) {\n docs.push(generateGroupedFunctionsPage({ context, functions, sourceFile }))\n }\n}\n\nfunction addGroupedTypePages(\n context: TypeDocRuntimeContext,\n docs: GeneratedApiDoc[],\n typesByFile: Map<string, DeclarationReflection[]>\n): void {\n for (const [sourceFile, types] of typesByFile) {\n docs.push(generateGroupedTypesPage({ context, sourceFile, types }))\n }\n}\n\nfunction addComponentPages(\n context: TypeDocRuntimeContext,\n docs: GeneratedApiDoc[],\n componentItems: DeclarationReflection[]\n): void {\n const sorted = sortReflectionsByName(componentItems)\n for (const [index, component] of sorted.entries()) {\n docs.push(\n generateComponentPage({ component, context, navigation: getNavigation(sorted, index) })\n )\n }\n}\n\nfunction addStandalonePages(\n context: TypeDocRuntimeContext,\n docs: GeneratedApiDoc[],\n standaloneItems: DeclarationReflection[]\n): void {\n const itemsByKind = groupStandaloneByKind(standaloneItems)\n\n for (const items of itemsByKind.values()) {\n const sorted = sortReflectionsByName(items)\n for (const [index, reflection] of sorted.entries()) {\n docs.push(\n ...generateReflectionDocs({\n context,\n navigation: getNavigation(sorted, index),\n parentPath: \"\",\n reflection,\n })\n )\n }\n }\n}\n\nfunction groupStandaloneByKind(\n standaloneItems: DeclarationReflection[]\n): Map<ReflectionKind, DeclarationReflection[]> {\n const itemsByKind = new Map<ReflectionKind, DeclarationReflection[]>()\n\n for (const item of standaloneItems) {\n const existing = itemsByKind.get(item.kind) ?? []\n existing.push(item)\n itemsByKind.set(item.kind, existing)\n }\n\n return itemsByKind\n}\n\nfunction getNavigation(sortedItems: DeclarationReflection[], index: number): ReflectionNavigation {\n return {\n next: index < sortedItems.length - 1 ? sortedItems[index + 1] : null,\n prev: index > 0 ? sortedItems[index - 1] : null,\n }\n}\n","import fs from \"node:fs/promises\"\nimport path from \"node:path\"\nimport { readPackageUp } from \"read-package-up\"\nimport { Application, TSConfigReader, TypeDocReader } from \"typedoc\"\n\nimport type { GeneratedApiDoc, TypeDocConfig } from \"./types\"\n\nimport {\n getTypedocOptions,\n type ResolvedTypeDocConfig,\n resolveTypeDocConfig,\n type TypeDocRuntimeContext,\n} from \"./generator-config\"\nimport { generateMarkdownDocs } from \"./generator-docs\"\n\nexport class TypeDocGenerator {\n private readonly basePath: string\n private readonly config: ResolvedTypeDocConfig\n private readonly packageNameCache = new Map<string, string | undefined>()\n\n constructor(config: TypeDocConfig) {\n this.config = resolveTypeDocConfig(config)\n this.basePath = `/${this.config.out}`\n }\n\n async generate(outputDir: string): Promise<GeneratedApiDoc[]> {\n await this.populatePackageNameCache()\n\n const app = await Application.bootstrapWithPlugins(getTypedocOptions(this.config), [\n new TSConfigReader(),\n new TypeDocReader(),\n ])\n\n const project = await app.convert()\n if (project == null) {\n throw new Error(\"TypeDoc conversion failed\")\n }\n\n const context: TypeDocRuntimeContext = {\n basePath: this.basePath,\n config: this.config,\n packageNameCache: this.packageNameCache,\n project,\n }\n\n const docs = generateMarkdownDocs(context)\n await this.writeDocs(outputDir, docs)\n return docs\n }\n\n private async populatePackageNameCache(): Promise<void> {\n for (const entryPoint of this.config.entryPoints) {\n await this.resolvePackageName(entryPoint)\n }\n }\n\n private async resolvePackageName(filePath: string): Promise<string | undefined> {\n const directory = path.dirname(path.resolve(filePath))\n\n if (this.packageNameCache.has(directory)) {\n return this.packageNameCache.get(directory)\n }\n\n const packageResult = await readPackageUp({ cwd: directory })\n const packageName = packageResult?.packageJson.name\n const resolvedName =\n packageName == null || packageName.length === 0\n ? undefined\n : packageName.replace(/^@[^/]+\\//u, \"\")\n\n this.packageNameCache.set(directory, resolvedName)\n return resolvedName\n }\n\n private async writeDocs(outputDir: string, docs: GeneratedApiDoc[]): Promise<void> {\n const apiDirectory = path.join(outputDir, this.config.out)\n await fs.rm(apiDirectory, { force: true, recursive: true })\n await fs.mkdir(apiDirectory, { recursive: true })\n\n for (const doc of docs) {\n await this.writeSingleDoc(apiDirectory, doc)\n }\n }\n\n private async writeSingleDoc(apiDirectory: string, doc: GeneratedApiDoc): Promise<void> {\n const filePath = path.join(apiDirectory, doc.path)\n await fs.mkdir(path.dirname(filePath), { recursive: true })\n\n const frontmatter = createFrontmatter(doc)\n await fs.writeFile(filePath, `${frontmatter}${doc.content}`)\n }\n}\n\nfunction createFrontmatter(doc: GeneratedApiDoc): string {\n const lines: string[] = [\"---\", `title: ${doc.frontmatter.title}`]\n\n if (doc.frontmatter.description != null && doc.frontmatter.description.length > 0) {\n lines.push(`description: ${doc.frontmatter.description}`)\n }\n\n if (doc.frontmatter.sidebar_position != null) {\n lines.push(`sidebar_position: ${doc.frontmatter.sidebar_position}`)\n }\n\n if (doc.frontmatter.sidebar === false) {\n lines.push(\"sidebar: false\")\n }\n\n lines.push(\"---\", \"\")\n return `${lines.join(\"\\n\")}\\n`\n}\n\nexport async function generateApiDocs(\n config: TypeDocConfig,\n outputDir: string\n): Promise<GeneratedApiDoc[]> {\n const generator = new TypeDocGenerator(config)\n return generator.generate(outputDir)\n}\n"],"mappings":"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"}
@@ -1 +1,22 @@
1
- export * from 'lucide-react';
1
+ import { ComponentProps } from "react";
2
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
+ export * from "lucide-react";
4
+
5
+ //#region src/ui/brand-icons.d.ts
6
+ type BrandIconProps = {
7
+ size?: number | string;
8
+ title?: string;
9
+ } & Omit<ComponentProps<"svg">, "children">;
10
+ declare function GithubIcon(props: BrandIconProps): _$react_jsx_runtime0.JSX.Element;
11
+ declare function LinkedinIcon(props: BrandIconProps): _$react_jsx_runtime0.JSX.Element;
12
+ declare function NpmIcon(props: BrandIconProps): _$react_jsx_runtime0.JSX.Element;
13
+ declare function TwitterIcon(props: BrandIconProps): _$react_jsx_runtime0.JSX.Element;
14
+ declare function YoutubeIcon(props: BrandIconProps): _$react_jsx_runtime0.JSX.Element;
15
+ declare const Github: typeof GithubIcon;
16
+ declare const Linkedin: typeof LinkedinIcon;
17
+ declare const Npm: typeof NpmIcon;
18
+ declare const Twitter: typeof TwitterIcon;
19
+ declare const Youtube: typeof YoutubeIcon;
20
+ //#endregion
21
+ export { Github, GithubIcon, Linkedin, LinkedinIcon, Npm, NpmIcon, Twitter, TwitterIcon, Youtube, YoutubeIcon };
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/ui/brand-icons.tsx"],"mappings":";;;;;KAEY,cAAA;EACV,IAAA;EACA,KAAA;AAAA,IACE,IAAA,CAAK,cAAA;AAAA,iBAqCO,UAAA,CAAW,KAAA,EAAO,cAAA,GAAc,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIhC,YAAA,CAAa,KAAA,EAAO,cAAA,GAAc,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIlC,OAAA,CAAQ,KAAA,EAAO,cAAA,GAAc,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI7B,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIjC,WAAA,CAAY,KAAA,EAAO,cAAA,GAAc,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAIpC,MAAA,SAAM,UAAA;AAAA,cACN,QAAA,SAAQ,YAAA;AAAA,cACR,GAAA,SAAG,OAAA;AAAA,cACH,OAAA,SAAO,WAAA;AAAA,cACP,OAAA,SAAO,WAAA"}
@@ -1,3 +1,3 @@
1
- // src/icons/index.ts
1
+ import { a as Npm, c as TwitterIcon, i as LinkedinIcon, l as Youtube, n as GithubIcon, o as NpmIcon, r as Linkedin, s as Twitter, t as Github, u as YoutubeIcon } from "../brand-icons-DLJKqTun.js";
2
2
  export * from "lucide-react";
3
- //# sourceMappingURL=index.js.map
3
+ export { Github, GithubIcon, Linkedin, LinkedinIcon, Npm, NpmIcon, Twitter, TwitterIcon, Youtube, YoutubeIcon };