ardo 1.2.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +29 -47
  2. package/dist/{CopyButton-BkACwxQM.d.ts → Features-C_06EvGb.d.ts} +212 -10
  3. package/dist/{chunk-SZVJKB3V.js → chunk-G5L4ZUTS.js} +40 -40
  4. package/dist/chunk-G5L4ZUTS.js.map +1 -0
  5. package/dist/{chunk-JKAXHFHJ.js → chunk-LUOUBO3L.js} +585 -669
  6. package/dist/chunk-LUOUBO3L.js.map +1 -0
  7. package/dist/{chunk-3U63LMDZ.js → chunk-N5CEHG2F.js} +3 -3
  8. package/dist/{chunk-3U63LMDZ.js.map → chunk-N5CEHG2F.js.map} +1 -1
  9. package/dist/chunk-OTUACKCQ.js +896 -0
  10. package/dist/chunk-OTUACKCQ.js.map +1 -0
  11. package/dist/chunk-UWAVET45.js +311 -0
  12. package/dist/chunk-UWAVET45.js.map +1 -0
  13. package/dist/chunk-ZXPAEM3M.js +854 -0
  14. package/dist/chunk-ZXPAEM3M.js.map +1 -0
  15. package/dist/config/index.d.ts +2 -2
  16. package/dist/config/index.js +1 -1
  17. package/dist/icons/index.d.ts +1 -0
  18. package/dist/icons/index.js +3 -0
  19. package/dist/icons/index.js.map +1 -0
  20. package/dist/index.d.ts +3 -2
  21. package/dist/index.js +34 -26
  22. package/dist/mdx/provider.d.ts +9 -0
  23. package/dist/mdx/provider.js +114 -0
  24. package/dist/mdx/provider.js.map +1 -0
  25. package/dist/runtime/index.d.ts +1 -1
  26. package/dist/typedoc/index.d.ts +25 -0
  27. package/dist/typedoc/index.js +2 -2
  28. package/dist/{types-C22M-Kor.d.ts → types-DchPWkJl.d.ts} +1 -1
  29. package/dist/ui/index.d.ts +116 -0
  30. package/dist/{theme → ui}/index.js +26 -12
  31. package/dist/ui/styles.css +2198 -0
  32. package/dist/vite/index.d.ts +13 -23
  33. package/dist/vite/index.js +5 -5
  34. package/package.json +23 -11
  35. package/dist/chunk-2JBVPO6S.js +0 -1144
  36. package/dist/chunk-2JBVPO6S.js.map +0 -1
  37. package/dist/chunk-JKAXHFHJ.js.map +0 -1
  38. package/dist/chunk-SZVJKB3V.js.map +0 -1
  39. package/dist/chunk-YN6PP526.js +0 -441
  40. package/dist/chunk-YN6PP526.js.map +0 -1
  41. package/dist/theme/index.d.ts +0 -70
  42. package/dist/theme/styles.css +0 -1454
  43. /package/dist/{theme → ui}/index.js.map +0 -0
@@ -1,441 +0,0 @@
1
- // src/typedoc/generator.ts
2
- import {
3
- Application,
4
- TSConfigReader,
5
- TypeDocReader,
6
- ReflectionKind
7
- } from "typedoc";
8
- import path from "path";
9
- import fs from "fs/promises";
10
- var TypeDocGenerator = class {
11
- config;
12
- app;
13
- project;
14
- basePath;
15
- constructor(config) {
16
- this.config = {
17
- out: "api",
18
- excludeExternals: true,
19
- excludePrivate: true,
20
- excludeProtected: false,
21
- excludeInternal: true,
22
- sort: ["source-order"],
23
- sidebar: {
24
- title: "API Reference",
25
- position: 100,
26
- collapsed: false
27
- },
28
- markdown: {
29
- breadcrumbs: true,
30
- hierarchy: true,
31
- sourceLinks: true,
32
- codeBlocks: true
33
- },
34
- ...config
35
- };
36
- this.basePath = "/" + this.config.out;
37
- }
38
- async generate(outputDir) {
39
- const typedocOptions = {
40
- entryPoints: this.config.entryPoints,
41
- tsconfig: this.config.tsconfig,
42
- excludeExternals: this.config.excludeExternals,
43
- excludePrivate: this.config.excludePrivate,
44
- excludeProtected: this.config.excludeProtected,
45
- excludeInternal: this.config.excludeInternal,
46
- sort: this.config.sort
47
- };
48
- if (this.config.exclude) typedocOptions.exclude = this.config.exclude;
49
- if (this.config.categoryOrder) typedocOptions.categoryOrder = this.config.categoryOrder;
50
- if (this.config.groupOrder) typedocOptions.groupOrder = this.config.groupOrder;
51
- if (this.config.plugin) typedocOptions.plugin = this.config.plugin;
52
- if (this.config.readme) typedocOptions.readme = this.config.readme;
53
- this.app = await Application.bootstrapWithPlugins(typedocOptions, [
54
- new TSConfigReader(),
55
- new TypeDocReader()
56
- ]);
57
- this.project = await this.app.convert();
58
- if (!this.project) {
59
- throw new Error("TypeDoc conversion failed");
60
- }
61
- const docs = this.generateMarkdownDocs();
62
- const apiDir = path.join(outputDir, this.config.out);
63
- await fs.mkdir(apiDir, { recursive: true });
64
- for (const doc of docs) {
65
- const filePath = path.join(apiDir, doc.path);
66
- const dir = path.dirname(filePath);
67
- await fs.mkdir(dir, { recursive: true });
68
- const frontmatter = [
69
- "---",
70
- `title: ${doc.frontmatter.title}`,
71
- doc.frontmatter.description ? `description: ${doc.frontmatter.description}` : "",
72
- doc.frontmatter.sidebar_position !== void 0 ? `sidebar_position: ${doc.frontmatter.sidebar_position}` : "",
73
- "---",
74
- ""
75
- ].filter(Boolean).join("\n");
76
- await fs.writeFile(filePath, frontmatter + doc.content);
77
- }
78
- return docs;
79
- }
80
- generateMarkdownDocs() {
81
- if (!this.project) return [];
82
- const docs = [];
83
- docs.push(this.generateIndexPage());
84
- const children = this.project.children || [];
85
- for (const child of children) {
86
- docs.push(...this.generateReflectionDocs(child, ""));
87
- }
88
- return docs;
89
- }
90
- generateIndexPage() {
91
- const content = [
92
- `# ${this.config.sidebar?.title || "API Reference"}`,
93
- "",
94
- this.project?.comment?.summary ? this.renderComment(this.project.comment.summary) : "Auto-generated API documentation.",
95
- "",
96
- "## Modules",
97
- ""
98
- ];
99
- const children = this.project?.children || [];
100
- for (const child of children) {
101
- const description = child.comment?.summary ? this.renderCommentShort(child.comment.summary) : "";
102
- content.push(
103
- `- [${child.name}](${this.basePath}/${this.getSlug(child.name)}) - ${description}`
104
- );
105
- }
106
- return {
107
- path: "index.md",
108
- content: content.join("\n"),
109
- frontmatter: {
110
- title: this.config.sidebar?.title || "API Reference",
111
- description: "Auto-generated API documentation",
112
- sidebar_position: 0
113
- }
114
- };
115
- }
116
- generateReflectionDocs(reflection, parentPath) {
117
- const docs = [];
118
- const slug = this.getSlug(reflection.name);
119
- const currentPath = parentPath ? `${parentPath}/${slug}` : slug;
120
- docs.push(this.generateReflectionPage(reflection, currentPath));
121
- const children = reflection.children || [];
122
- const hasOwnPage = [
123
- ReflectionKind.Class,
124
- ReflectionKind.Interface,
125
- ReflectionKind.Enum,
126
- ReflectionKind.TypeAlias,
127
- ReflectionKind.Function,
128
- ReflectionKind.Namespace,
129
- ReflectionKind.Module
130
- ];
131
- for (const child of children) {
132
- if (hasOwnPage.includes(child.kind)) {
133
- docs.push(...this.generateReflectionDocs(child, currentPath));
134
- }
135
- }
136
- return docs;
137
- }
138
- generateReflectionPage(reflection, pagePath) {
139
- const kind = this.getKindName(reflection.kind);
140
- const content = [];
141
- if (this.config.markdown?.breadcrumbs) {
142
- content.push(this.generateBreadcrumbs(pagePath));
143
- content.push("");
144
- }
145
- content.push(`# ${kind}: ${reflection.name}`);
146
- content.push("");
147
- if (reflection.comment?.summary) {
148
- content.push(this.renderComment(reflection.comment.summary));
149
- content.push("");
150
- }
151
- if (reflection.typeParameters && reflection.typeParameters.length > 0) {
152
- content.push("## Type Parameters");
153
- content.push("");
154
- content.push(this.renderTypeParameters(reflection.typeParameters));
155
- content.push("");
156
- }
157
- if (this.config.markdown?.hierarchy) {
158
- const hierarchy = this.renderHierarchy(reflection);
159
- if (hierarchy) {
160
- content.push("## Hierarchy");
161
- content.push("");
162
- content.push(hierarchy);
163
- content.push("");
164
- }
165
- }
166
- if (reflection.signatures) {
167
- content.push("## Signature");
168
- content.push("");
169
- for (const sig of reflection.signatures) {
170
- content.push(this.renderSignature(sig));
171
- content.push("");
172
- }
173
- }
174
- const properties = (reflection.children || []).filter((c) => c.kind === ReflectionKind.Property);
175
- if (properties.length > 0) {
176
- content.push("## Properties");
177
- content.push("");
178
- for (const prop of properties) {
179
- content.push(this.renderProperty(prop));
180
- content.push("");
181
- }
182
- }
183
- const methods = (reflection.children || []).filter((c) => c.kind === ReflectionKind.Method);
184
- if (methods.length > 0) {
185
- content.push("## Methods");
186
- content.push("");
187
- for (const method of methods) {
188
- content.push(this.renderMethod(method));
189
- content.push("");
190
- }
191
- }
192
- const enumMembers = (reflection.children || []).filter(
193
- (c) => c.kind === ReflectionKind.EnumMember
194
- );
195
- if (enumMembers.length > 0) {
196
- content.push("## Members");
197
- content.push("");
198
- content.push("| Member | Value | Description |");
199
- content.push("|--------|-------|-------------|");
200
- for (const member of enumMembers) {
201
- const value = member.defaultValue || "";
202
- const desc = member.comment?.summary ? this.renderCommentShort(member.comment.summary) : "";
203
- content.push(`| \`${member.name}\` | \`${value}\` | ${desc} |`);
204
- }
205
- content.push("");
206
- }
207
- if (reflection.kind === ReflectionKind.TypeAlias && reflection.type) {
208
- content.push("## Type");
209
- content.push("");
210
- content.push("```typescript");
211
- content.push(`type ${reflection.name} = ${reflection.type.toString()}`);
212
- content.push("```");
213
- content.push("");
214
- }
215
- if (this.config.markdown?.sourceLinks && reflection.sources?.[0]) {
216
- const source = reflection.sources[0];
217
- const sourceUrl = this.getSourceUrl(source.fileName, source.line);
218
- content.push("## Source");
219
- content.push("");
220
- if (sourceUrl) {
221
- content.push(`[${source.fileName}:${source.line}](${sourceUrl})`);
222
- } else {
223
- content.push(`${source.fileName}:${source.line}`);
224
- }
225
- content.push("");
226
- }
227
- if (reflection.comment?.blockTags) {
228
- const examples = reflection.comment.blockTags.filter((t) => t.tag === "@example");
229
- if (examples.length > 0) {
230
- content.push("## Examples");
231
- content.push("");
232
- for (const example of examples) {
233
- content.push(this.renderComment(example.content));
234
- content.push("");
235
- }
236
- }
237
- const deprecated = reflection.comment.blockTags.find((t) => t.tag === "@deprecated");
238
- if (deprecated) {
239
- content.push(":::warning Deprecated");
240
- content.push(this.renderComment(deprecated.content));
241
- content.push(":::");
242
- content.push("");
243
- }
244
- const see = reflection.comment.blockTags.filter((t) => t.tag === "@see");
245
- if (see.length > 0) {
246
- content.push("## See Also");
247
- content.push("");
248
- for (const s of see) {
249
- content.push(`- ${this.renderComment(s.content)}`);
250
- }
251
- content.push("");
252
- }
253
- }
254
- return {
255
- path: `${pagePath}.md`,
256
- content: content.join("\n"),
257
- frontmatter: {
258
- title: reflection.name,
259
- description: reflection.comment?.summary ? this.renderCommentShort(reflection.comment.summary) : `${kind} ${reflection.name}`
260
- }
261
- };
262
- }
263
- renderSignature(sig) {
264
- const lines = [];
265
- if (this.config.markdown?.codeBlocks) {
266
- lines.push("```typescript");
267
- }
268
- const typeParams = sig.typeParameters ? `<${sig.typeParameters.map((tp) => tp.name).join(", ")}>` : "";
269
- const params = (sig.parameters || []).map((p) => {
270
- const optional = p.flags.isOptional ? "?" : "";
271
- const type = p.type ? `: ${p.type.toString()}` : "";
272
- return `${p.name}${optional}${type}`;
273
- }).join(", ");
274
- const returnType = sig.type ? `: ${sig.type.toString()}` : "";
275
- lines.push(`function ${sig.name}${typeParams}(${params})${returnType}`);
276
- if (this.config.markdown?.codeBlocks) {
277
- lines.push("```");
278
- }
279
- if (sig.parameters && sig.parameters.length > 0) {
280
- lines.push("");
281
- lines.push("### Parameters");
282
- lines.push("");
283
- lines.push("| Name | Type | Description |");
284
- lines.push("|------|------|-------------|");
285
- for (const param of sig.parameters) {
286
- const type = param.type ? `\`${param.type.toString()}\`` : "-";
287
- const desc = param.comment?.summary ? this.renderCommentShort(param.comment.summary) : "-";
288
- const optional = param.flags.isOptional ? " (optional)" : "";
289
- lines.push(`| ${param.name}${optional} | ${type} | ${desc} |`);
290
- }
291
- }
292
- if (sig.type && sig.type.toString() !== "void") {
293
- lines.push("");
294
- lines.push("### Returns");
295
- lines.push("");
296
- lines.push(`\`${sig.type.toString()}\``);
297
- if (sig.comment?.blockTags) {
298
- const returns = sig.comment.blockTags.find((t) => t.tag === "@returns");
299
- if (returns) {
300
- lines.push("");
301
- lines.push(this.renderComment(returns.content));
302
- }
303
- }
304
- }
305
- return lines.join("\n");
306
- }
307
- renderProperty(prop) {
308
- const lines = [];
309
- const flags = [];
310
- if (prop.flags.isOptional) flags.push("optional");
311
- if (prop.flags.isReadonly) flags.push("readonly");
312
- if (prop.flags.isStatic) flags.push("static");
313
- lines.push(`### ${prop.name}`);
314
- if (flags.length > 0) {
315
- lines.push(`*${flags.join(", ")}*`);
316
- }
317
- lines.push("");
318
- if (prop.type) {
319
- lines.push("```typescript");
320
- lines.push(`${prop.name}: ${prop.type.toString()}`);
321
- lines.push("```");
322
- lines.push("");
323
- }
324
- if (prop.comment?.summary) {
325
- lines.push(this.renderComment(prop.comment.summary));
326
- }
327
- if (prop.defaultValue) {
328
- lines.push("");
329
- lines.push(`**Default:** \`${prop.defaultValue}\``);
330
- }
331
- return lines.join("\n");
332
- }
333
- renderMethod(method) {
334
- const lines = [];
335
- lines.push(`### ${method.name}()`);
336
- lines.push("");
337
- if (method.signatures) {
338
- for (const sig of method.signatures) {
339
- if (sig.comment?.summary) {
340
- lines.push(this.renderComment(sig.comment.summary));
341
- lines.push("");
342
- }
343
- lines.push(this.renderSignature(sig));
344
- lines.push("");
345
- }
346
- }
347
- return lines.join("\n");
348
- }
349
- renderTypeParameters(typeParams) {
350
- const lines = [];
351
- lines.push("| Name | Constraint | Default | Description |");
352
- lines.push("|------|------------|---------|-------------|");
353
- for (const tp of typeParams) {
354
- const constraint = tp.type ? `\`${tp.type.toString()}\`` : "-";
355
- const defaultVal = tp.default ? `\`${tp.default.toString()}\`` : "-";
356
- const desc = tp.comment?.summary ? this.renderCommentShort(tp.comment.summary) : "-";
357
- lines.push(`| ${tp.name} | ${constraint} | ${defaultVal} | ${desc} |`);
358
- }
359
- return lines.join("\n");
360
- }
361
- renderHierarchy(reflection) {
362
- const lines = [];
363
- if (reflection.extendedTypes && reflection.extendedTypes.length > 0) {
364
- lines.push("**Extends:**");
365
- for (const t of reflection.extendedTypes) {
366
- lines.push(`- \`${t.toString()}\``);
367
- }
368
- }
369
- if (reflection.implementedTypes && reflection.implementedTypes.length > 0) {
370
- lines.push("**Implements:**");
371
- for (const t of reflection.implementedTypes) {
372
- lines.push(`- \`${t.toString()}\``);
373
- }
374
- }
375
- if (reflection.extendedBy && reflection.extendedBy.length > 0) {
376
- lines.push("**Extended by:**");
377
- for (const t of reflection.extendedBy) {
378
- lines.push(`- \`${t.toString()}\``);
379
- }
380
- }
381
- if (reflection.implementedBy && reflection.implementedBy.length > 0) {
382
- lines.push("**Implemented by:**");
383
- for (const t of reflection.implementedBy) {
384
- lines.push(`- \`${t.toString()}\``);
385
- }
386
- }
387
- return lines.length > 0 ? lines.join("\n") : null;
388
- }
389
- renderComment(parts) {
390
- return parts.map((p) => p.text).join("");
391
- }
392
- renderCommentShort(parts) {
393
- const text = this.renderComment(parts);
394
- const firstSentence = text.split(/[.!?]\s/)[0];
395
- return firstSentence.length < text.length ? firstSentence + "." : text;
396
- }
397
- generateBreadcrumbs(pagePath) {
398
- const parts = pagePath.split("/");
399
- const breadcrumbs = [`[API](${this.basePath})`];
400
- let currentPath = "";
401
- for (let i = 0; i < parts.length - 1; i++) {
402
- currentPath += (currentPath ? "/" : "") + parts[i];
403
- breadcrumbs.push(`[${parts[i]}](${this.basePath}/${currentPath})`);
404
- }
405
- breadcrumbs.push(parts[parts.length - 1]);
406
- return breadcrumbs.join(" / ");
407
- }
408
- getKindName(kind) {
409
- const kindNames = {
410
- [ReflectionKind.Class]: "Class",
411
- [ReflectionKind.Interface]: "Interface",
412
- [ReflectionKind.Enum]: "Enum",
413
- [ReflectionKind.TypeAlias]: "Type",
414
- [ReflectionKind.Function]: "Function",
415
- [ReflectionKind.Variable]: "Variable",
416
- [ReflectionKind.Namespace]: "Namespace",
417
- [ReflectionKind.Module]: "Module",
418
- [ReflectionKind.Property]: "Property",
419
- [ReflectionKind.Method]: "Method"
420
- };
421
- return kindNames[kind] || "Unknown";
422
- }
423
- getSlug(name) {
424
- return name.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-|-$/g, "");
425
- }
426
- getSourceUrl(fileName, line) {
427
- if (!this.config.markdown?.sourceBaseUrl) return null;
428
- const baseUrl = this.config.markdown.sourceBaseUrl.replace(/\/$/, "");
429
- return `${baseUrl}/${fileName}#L${line}`;
430
- }
431
- };
432
- async function generateApiDocs(config, outputDir) {
433
- const generator = new TypeDocGenerator(config);
434
- return generator.generate(outputDir);
435
- }
436
-
437
- export {
438
- TypeDocGenerator,
439
- generateApiDocs
440
- };
441
- //# sourceMappingURL=chunk-YN6PP526.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/typedoc/generator.ts"],"sourcesContent":["import {\n Application,\n TSConfigReader,\n TypeDocReader,\n type ProjectReflection,\n ReflectionKind,\n type DeclarationReflection,\n type SignatureReflection,\n type TypeParameterReflection,\n} from \"typedoc\"\nimport path from \"path\"\nimport fs from \"fs/promises\"\nimport type { TypeDocConfig, GeneratedApiDoc } from \"./types\"\n\nexport class TypeDocGenerator {\n private config: TypeDocConfig\n private app: Application | undefined\n private project: ProjectReflection | undefined\n private basePath: string\n\n constructor(config: TypeDocConfig) {\n this.config = {\n out: \"api\",\n excludeExternals: true,\n excludePrivate: true,\n excludeProtected: false,\n excludeInternal: true,\n sort: [\"source-order\"],\n sidebar: {\n title: \"API Reference\",\n position: 100,\n collapsed: false,\n },\n markdown: {\n breadcrumbs: true,\n hierarchy: true,\n sourceLinks: true,\n codeBlocks: true,\n },\n ...config,\n }\n // Use the output directory as the base path for links\n this.basePath = \"/\" + this.config.out!\n }\n\n async generate(outputDir: string): Promise<GeneratedApiDoc[]> {\n const typedocOptions: Record<string, unknown> = {\n entryPoints: this.config.entryPoints,\n tsconfig: this.config.tsconfig,\n excludeExternals: this.config.excludeExternals,\n excludePrivate: this.config.excludePrivate,\n excludeProtected: this.config.excludeProtected,\n excludeInternal: this.config.excludeInternal,\n sort: this.config.sort,\n }\n\n // Only pass array/string options when explicitly set to avoid\n // TypeDoc errors like \"option must be set to an array of strings\"\n if (this.config.exclude) typedocOptions.exclude = this.config.exclude\n if (this.config.categoryOrder) typedocOptions.categoryOrder = this.config.categoryOrder\n if (this.config.groupOrder) typedocOptions.groupOrder = this.config.groupOrder\n if (this.config.plugin) typedocOptions.plugin = this.config.plugin\n if (this.config.readme) typedocOptions.readme = this.config.readme\n\n this.app = await Application.bootstrapWithPlugins(typedocOptions, [\n new TSConfigReader(),\n new TypeDocReader(),\n ])\n\n this.project = await this.app.convert()\n\n if (!this.project) {\n throw new Error(\"TypeDoc conversion failed\")\n }\n\n const docs = this.generateMarkdownDocs()\n const apiDir = path.join(outputDir, this.config.out!)\n\n await fs.mkdir(apiDir, { recursive: true })\n\n for (const doc of docs) {\n const filePath = path.join(apiDir, doc.path)\n const dir = path.dirname(filePath)\n await fs.mkdir(dir, { recursive: true })\n\n const frontmatter = [\n \"---\",\n `title: ${doc.frontmatter.title}`,\n doc.frontmatter.description ? `description: ${doc.frontmatter.description}` : \"\",\n doc.frontmatter.sidebar_position !== undefined\n ? `sidebar_position: ${doc.frontmatter.sidebar_position}`\n : \"\",\n \"---\",\n \"\",\n ]\n .filter(Boolean)\n .join(\"\\n\")\n\n await fs.writeFile(filePath, frontmatter + doc.content)\n }\n\n return docs\n }\n\n private generateMarkdownDocs(): GeneratedApiDoc[] {\n if (!this.project) return []\n\n const docs: GeneratedApiDoc[] = []\n\n // Generate index page\n docs.push(this.generateIndexPage())\n\n // Generate pages for each module/namespace\n const children = this.project.children || []\n\n for (const child of children) {\n docs.push(...this.generateReflectionDocs(child, \"\"))\n }\n\n return docs\n }\n\n private generateIndexPage(): GeneratedApiDoc {\n const content = [\n `# ${this.config.sidebar?.title || \"API Reference\"}`,\n \"\",\n this.project?.comment?.summary\n ? this.renderComment(this.project.comment.summary)\n : \"Auto-generated API documentation.\",\n \"\",\n \"## Modules\",\n \"\",\n ]\n\n const children = this.project?.children || []\n for (const child of children) {\n const description = child.comment?.summary\n ? this.renderCommentShort(child.comment.summary)\n : \"\"\n content.push(\n `- [${child.name}](${this.basePath}/${this.getSlug(child.name)}) - ${description}`\n )\n }\n\n return {\n path: \"index.md\",\n content: content.join(\"\\n\"),\n frontmatter: {\n title: this.config.sidebar?.title || \"API Reference\",\n description: \"Auto-generated API documentation\",\n sidebar_position: 0,\n },\n }\n }\n\n private generateReflectionDocs(\n reflection: DeclarationReflection,\n parentPath: string\n ): GeneratedApiDoc[] {\n const docs: GeneratedApiDoc[] = []\n const slug = this.getSlug(reflection.name)\n const currentPath = parentPath ? `${parentPath}/${slug}` : slug\n\n // Generate main page for this reflection\n docs.push(this.generateReflectionPage(reflection, currentPath))\n\n // Generate pages for child classes, interfaces, etc.\n const children = reflection.children || []\n const hasOwnPage = [\n ReflectionKind.Class,\n ReflectionKind.Interface,\n ReflectionKind.Enum,\n ReflectionKind.TypeAlias,\n ReflectionKind.Function,\n ReflectionKind.Namespace,\n ReflectionKind.Module,\n ]\n\n for (const child of children) {\n if (hasOwnPage.includes(child.kind)) {\n docs.push(...this.generateReflectionDocs(child, currentPath))\n }\n }\n\n return docs\n }\n\n private generateReflectionPage(\n reflection: DeclarationReflection,\n pagePath: string\n ): GeneratedApiDoc {\n const kind = this.getKindName(reflection.kind)\n const content: string[] = []\n\n // Breadcrumbs\n if (this.config.markdown?.breadcrumbs) {\n content.push(this.generateBreadcrumbs(pagePath))\n content.push(\"\")\n }\n\n // Title\n content.push(`# ${kind}: ${reflection.name}`)\n content.push(\"\")\n\n // Description\n if (reflection.comment?.summary) {\n content.push(this.renderComment(reflection.comment.summary))\n content.push(\"\")\n }\n\n // Type parameters\n if (reflection.typeParameters && reflection.typeParameters.length > 0) {\n content.push(\"## Type Parameters\")\n content.push(\"\")\n content.push(this.renderTypeParameters(reflection.typeParameters))\n content.push(\"\")\n }\n\n // Hierarchy\n if (this.config.markdown?.hierarchy) {\n const hierarchy = this.renderHierarchy(reflection)\n if (hierarchy) {\n content.push(\"## Hierarchy\")\n content.push(\"\")\n content.push(hierarchy)\n content.push(\"\")\n }\n }\n\n // Signature (for functions)\n if (reflection.signatures) {\n content.push(\"## Signature\")\n content.push(\"\")\n for (const sig of reflection.signatures) {\n content.push(this.renderSignature(sig))\n content.push(\"\")\n }\n }\n\n // Properties\n const properties = (reflection.children || []).filter((c) => c.kind === ReflectionKind.Property)\n if (properties.length > 0) {\n content.push(\"## Properties\")\n content.push(\"\")\n for (const prop of properties) {\n content.push(this.renderProperty(prop))\n content.push(\"\")\n }\n }\n\n // Methods\n const methods = (reflection.children || []).filter((c) => c.kind === ReflectionKind.Method)\n if (methods.length > 0) {\n content.push(\"## Methods\")\n content.push(\"\")\n for (const method of methods) {\n content.push(this.renderMethod(method))\n content.push(\"\")\n }\n }\n\n // Enum members\n const enumMembers = (reflection.children || []).filter(\n (c) => c.kind === ReflectionKind.EnumMember\n )\n if (enumMembers.length > 0) {\n content.push(\"## Members\")\n content.push(\"\")\n content.push(\"| Member | Value | Description |\")\n content.push(\"|--------|-------|-------------|\")\n for (const member of enumMembers) {\n const value = member.defaultValue || \"\"\n const desc = member.comment?.summary ? this.renderCommentShort(member.comment.summary) : \"\"\n content.push(`| \\`${member.name}\\` | \\`${value}\\` | ${desc} |`)\n }\n content.push(\"\")\n }\n\n // Type alias definition\n if (reflection.kind === ReflectionKind.TypeAlias && reflection.type) {\n content.push(\"## Type\")\n content.push(\"\")\n content.push(\"```typescript\")\n content.push(`type ${reflection.name} = ${reflection.type.toString()}`)\n content.push(\"```\")\n content.push(\"\")\n }\n\n // Source link\n if (this.config.markdown?.sourceLinks && reflection.sources?.[0]) {\n const source = reflection.sources[0]\n const sourceUrl = this.getSourceUrl(source.fileName, source.line)\n content.push(\"## Source\")\n content.push(\"\")\n if (sourceUrl) {\n content.push(`[${source.fileName}:${source.line}](${sourceUrl})`)\n } else {\n content.push(`${source.fileName}:${source.line}`)\n }\n content.push(\"\")\n }\n\n // Tags (deprecated, example, etc.)\n if (reflection.comment?.blockTags) {\n const examples = reflection.comment.blockTags.filter((t) => t.tag === \"@example\")\n if (examples.length > 0) {\n content.push(\"## Examples\")\n content.push(\"\")\n for (const example of examples) {\n content.push(this.renderComment(example.content))\n content.push(\"\")\n }\n }\n\n const deprecated = reflection.comment.blockTags.find((t) => t.tag === \"@deprecated\")\n if (deprecated) {\n content.push(\":::warning Deprecated\")\n content.push(this.renderComment(deprecated.content))\n content.push(\":::\")\n content.push(\"\")\n }\n\n const see = reflection.comment.blockTags.filter((t) => t.tag === \"@see\")\n if (see.length > 0) {\n content.push(\"## See Also\")\n content.push(\"\")\n for (const s of see) {\n content.push(`- ${this.renderComment(s.content)}`)\n }\n content.push(\"\")\n }\n }\n\n return {\n path: `${pagePath}.md`,\n content: content.join(\"\\n\"),\n frontmatter: {\n title: reflection.name,\n description: reflection.comment?.summary\n ? this.renderCommentShort(reflection.comment.summary)\n : `${kind} ${reflection.name}`,\n },\n }\n }\n\n private renderSignature(sig: SignatureReflection): string {\n const lines: string[] = []\n\n if (this.config.markdown?.codeBlocks) {\n lines.push(\"```typescript\")\n }\n\n const typeParams = sig.typeParameters\n ? `<${sig.typeParameters.map((tp) => tp.name).join(\", \")}>`\n : \"\"\n\n const params = (sig.parameters || [])\n .map((p) => {\n const optional = p.flags.isOptional ? \"?\" : \"\"\n const type = p.type ? `: ${p.type.toString()}` : \"\"\n return `${p.name}${optional}${type}`\n })\n .join(\", \")\n\n const returnType = sig.type ? `: ${sig.type.toString()}` : \"\"\n\n lines.push(`function ${sig.name}${typeParams}(${params})${returnType}`)\n\n if (this.config.markdown?.codeBlocks) {\n lines.push(\"```\")\n }\n\n // Parameters table\n if (sig.parameters && sig.parameters.length > 0) {\n lines.push(\"\")\n lines.push(\"### Parameters\")\n lines.push(\"\")\n lines.push(\"| Name | Type | Description |\")\n lines.push(\"|------|------|-------------|\")\n\n for (const param of sig.parameters) {\n const type = param.type ? `\\`${param.type.toString()}\\`` : \"-\"\n const desc = param.comment?.summary ? this.renderCommentShort(param.comment.summary) : \"-\"\n const optional = param.flags.isOptional ? \" (optional)\" : \"\"\n lines.push(`| ${param.name}${optional} | ${type} | ${desc} |`)\n }\n }\n\n // Return value\n if (sig.type && sig.type.toString() !== \"void\") {\n lines.push(\"\")\n lines.push(\"### Returns\")\n lines.push(\"\")\n lines.push(`\\`${sig.type.toString()}\\``)\n\n if (sig.comment?.blockTags) {\n const returns = sig.comment.blockTags.find((t) => t.tag === \"@returns\")\n if (returns) {\n lines.push(\"\")\n lines.push(this.renderComment(returns.content))\n }\n }\n }\n\n return lines.join(\"\\n\")\n }\n\n private renderProperty(prop: DeclarationReflection): string {\n const lines: string[] = []\n\n const flags: string[] = []\n if (prop.flags.isOptional) flags.push(\"optional\")\n if (prop.flags.isReadonly) flags.push(\"readonly\")\n if (prop.flags.isStatic) flags.push(\"static\")\n\n lines.push(`### ${prop.name}`)\n if (flags.length > 0) {\n lines.push(`*${flags.join(\", \")}*`)\n }\n lines.push(\"\")\n\n if (prop.type) {\n lines.push(\"```typescript\")\n lines.push(`${prop.name}: ${prop.type.toString()}`)\n lines.push(\"```\")\n lines.push(\"\")\n }\n\n if (prop.comment?.summary) {\n lines.push(this.renderComment(prop.comment.summary))\n }\n\n if (prop.defaultValue) {\n lines.push(\"\")\n lines.push(`**Default:** \\`${prop.defaultValue}\\``)\n }\n\n return lines.join(\"\\n\")\n }\n\n private renderMethod(method: DeclarationReflection): string {\n const lines: string[] = []\n\n lines.push(`### ${method.name}()`)\n lines.push(\"\")\n\n if (method.signatures) {\n for (const sig of method.signatures) {\n if (sig.comment?.summary) {\n lines.push(this.renderComment(sig.comment.summary))\n lines.push(\"\")\n }\n\n lines.push(this.renderSignature(sig))\n lines.push(\"\")\n }\n }\n\n return lines.join(\"\\n\")\n }\n\n private renderTypeParameters(typeParams: TypeParameterReflection[]): string {\n const lines: string[] = []\n lines.push(\"| Name | Constraint | Default | Description |\")\n lines.push(\"|------|------------|---------|-------------|\")\n\n for (const tp of typeParams) {\n const constraint = tp.type ? `\\`${tp.type.toString()}\\`` : \"-\"\n const defaultVal = tp.default ? `\\`${tp.default.toString()}\\`` : \"-\"\n const desc = tp.comment?.summary ? this.renderCommentShort(tp.comment.summary) : \"-\"\n lines.push(`| ${tp.name} | ${constraint} | ${defaultVal} | ${desc} |`)\n }\n\n return lines.join(\"\\n\")\n }\n\n private renderHierarchy(reflection: DeclarationReflection): string | null {\n const lines: string[] = []\n\n if (reflection.extendedTypes && reflection.extendedTypes.length > 0) {\n lines.push(\"**Extends:**\")\n for (const t of reflection.extendedTypes) {\n lines.push(`- \\`${t.toString()}\\``)\n }\n }\n\n if (reflection.implementedTypes && reflection.implementedTypes.length > 0) {\n lines.push(\"**Implements:**\")\n for (const t of reflection.implementedTypes) {\n lines.push(`- \\`${t.toString()}\\``)\n }\n }\n\n if (reflection.extendedBy && reflection.extendedBy.length > 0) {\n lines.push(\"**Extended by:**\")\n for (const t of reflection.extendedBy) {\n lines.push(`- \\`${t.toString()}\\``)\n }\n }\n\n if (reflection.implementedBy && reflection.implementedBy.length > 0) {\n lines.push(\"**Implemented by:**\")\n for (const t of reflection.implementedBy) {\n lines.push(`- \\`${t.toString()}\\``)\n }\n }\n\n return lines.length > 0 ? lines.join(\"\\n\") : null\n }\n\n private renderComment(parts: { kind: string; text: string }[]): string {\n return parts.map((p) => p.text).join(\"\")\n }\n\n private renderCommentShort(parts: { kind: string; text: string }[]): string {\n const text = this.renderComment(parts)\n const firstSentence = text.split(/[.!?]\\s/)[0]\n return firstSentence.length < text.length ? firstSentence + \".\" : text\n }\n\n private generateBreadcrumbs(pagePath: string): string {\n const parts = pagePath.split(\"/\")\n const breadcrumbs: string[] = [`[API](${this.basePath})`]\n\n let currentPath = \"\"\n for (let i = 0; i < parts.length - 1; i++) {\n currentPath += (currentPath ? \"/\" : \"\") + parts[i]\n breadcrumbs.push(`[${parts[i]}](${this.basePath}/${currentPath})`)\n }\n\n breadcrumbs.push(parts[parts.length - 1])\n\n return breadcrumbs.join(\" / \")\n }\n\n private getKindName(kind: ReflectionKind): string {\n const kindNames: Partial<Record<ReflectionKind, string>> = {\n [ReflectionKind.Class]: \"Class\",\n [ReflectionKind.Interface]: \"Interface\",\n [ReflectionKind.Enum]: \"Enum\",\n [ReflectionKind.TypeAlias]: \"Type\",\n [ReflectionKind.Function]: \"Function\",\n [ReflectionKind.Variable]: \"Variable\",\n [ReflectionKind.Namespace]: \"Namespace\",\n [ReflectionKind.Module]: \"Module\",\n [ReflectionKind.Property]: \"Property\",\n [ReflectionKind.Method]: \"Method\",\n }\n return kindNames[kind] || \"Unknown\"\n }\n\n private getSlug(name: string): string {\n return name\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, \"-\")\n .replace(/^-|-$/g, \"\")\n }\n\n private getSourceUrl(fileName: string, line: number): string | null {\n if (!this.config.markdown?.sourceBaseUrl) return null\n const baseUrl = this.config.markdown.sourceBaseUrl.replace(/\\/$/, \"\")\n return `${baseUrl}/${fileName}#L${line}`\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":";AAAA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OAIK;AACP,OAAO,UAAU;AACjB,OAAO,QAAQ;AAGR,IAAM,mBAAN,MAAuB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAER,YAAY,QAAuB;AACjC,SAAK,SAAS;AAAA,MACZ,KAAK;AAAA,MACL,kBAAkB;AAAA,MAClB,gBAAgB;AAAA,MAChB,kBAAkB;AAAA,MAClB,iBAAiB;AAAA,MACjB,MAAM,CAAC,cAAc;AAAA,MACrB,SAAS;AAAA,QACP,OAAO;AAAA,QACP,UAAU;AAAA,QACV,WAAW;AAAA,MACb;AAAA,MACA,UAAU;AAAA,QACR,aAAa;AAAA,QACb,WAAW;AAAA,QACX,aAAa;AAAA,QACb,YAAY;AAAA,MACd;AAAA,MACA,GAAG;AAAA,IACL;AAEA,SAAK,WAAW,MAAM,KAAK,OAAO;AAAA,EACpC;AAAA,EAEA,MAAM,SAAS,WAA+C;AAC5D,UAAM,iBAA0C;AAAA,MAC9C,aAAa,KAAK,OAAO;AAAA,MACzB,UAAU,KAAK,OAAO;AAAA,MACtB,kBAAkB,KAAK,OAAO;AAAA,MAC9B,gBAAgB,KAAK,OAAO;AAAA,MAC5B,kBAAkB,KAAK,OAAO;AAAA,MAC9B,iBAAiB,KAAK,OAAO;AAAA,MAC7B,MAAM,KAAK,OAAO;AAAA,IACpB;AAIA,QAAI,KAAK,OAAO,QAAS,gBAAe,UAAU,KAAK,OAAO;AAC9D,QAAI,KAAK,OAAO,cAAe,gBAAe,gBAAgB,KAAK,OAAO;AAC1E,QAAI,KAAK,OAAO,WAAY,gBAAe,aAAa,KAAK,OAAO;AACpE,QAAI,KAAK,OAAO,OAAQ,gBAAe,SAAS,KAAK,OAAO;AAC5D,QAAI,KAAK,OAAO,OAAQ,gBAAe,SAAS,KAAK,OAAO;AAE5D,SAAK,MAAM,MAAM,YAAY,qBAAqB,gBAAgB;AAAA,MAChE,IAAI,eAAe;AAAA,MACnB,IAAI,cAAc;AAAA,IACpB,CAAC;AAED,SAAK,UAAU,MAAM,KAAK,IAAI,QAAQ;AAEtC,QAAI,CAAC,KAAK,SAAS;AACjB,YAAM,IAAI,MAAM,2BAA2B;AAAA,IAC7C;AAEA,UAAM,OAAO,KAAK,qBAAqB;AACvC,UAAM,SAAS,KAAK,KAAK,WAAW,KAAK,OAAO,GAAI;AAEpD,UAAM,GAAG,MAAM,QAAQ,EAAE,WAAW,KAAK,CAAC;AAE1C,eAAW,OAAO,MAAM;AACtB,YAAM,WAAW,KAAK,KAAK,QAAQ,IAAI,IAAI;AAC3C,YAAM,MAAM,KAAK,QAAQ,QAAQ;AACjC,YAAM,GAAG,MAAM,KAAK,EAAE,WAAW,KAAK,CAAC;AAEvC,YAAM,cAAc;AAAA,QAClB;AAAA,QACA,UAAU,IAAI,YAAY,KAAK;AAAA,QAC/B,IAAI,YAAY,cAAc,gBAAgB,IAAI,YAAY,WAAW,KAAK;AAAA,QAC9E,IAAI,YAAY,qBAAqB,SACjC,qBAAqB,IAAI,YAAY,gBAAgB,KACrD;AAAA,QACJ;AAAA,QACA;AAAA,MACF,EACG,OAAO,OAAO,EACd,KAAK,IAAI;AAEZ,YAAM,GAAG,UAAU,UAAU,cAAc,IAAI,OAAO;AAAA,IACxD;AAEA,WAAO;AAAA,EACT;AAAA,EAEQ,uBAA0C;AAChD,QAAI,CAAC,KAAK,QAAS,QAAO,CAAC;AAE3B,UAAM,OAA0B,CAAC;AAGjC,SAAK,KAAK,KAAK,kBAAkB,CAAC;AAGlC,UAAM,WAAW,KAAK,QAAQ,YAAY,CAAC;AAE3C,eAAW,SAAS,UAAU;AAC5B,WAAK,KAAK,GAAG,KAAK,uBAAuB,OAAO,EAAE,CAAC;AAAA,IACrD;AAEA,WAAO;AAAA,EACT;AAAA,EAEQ,oBAAqC;AAC3C,UAAM,UAAU;AAAA,MACd,KAAK,KAAK,OAAO,SAAS,SAAS,eAAe;AAAA,MAClD;AAAA,MACA,KAAK,SAAS,SAAS,UACnB,KAAK,cAAc,KAAK,QAAQ,QAAQ,OAAO,IAC/C;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,UAAM,WAAW,KAAK,SAAS,YAAY,CAAC;AAC5C,eAAW,SAAS,UAAU;AAC5B,YAAM,cAAc,MAAM,SAAS,UAC/B,KAAK,mBAAmB,MAAM,QAAQ,OAAO,IAC7C;AACJ,cAAQ;AAAA,QACN,MAAM,MAAM,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,QAAQ,MAAM,IAAI,CAAC,OAAO,WAAW;AAAA,MAClF;AAAA,IACF;AAEA,WAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,QAAQ,KAAK,IAAI;AAAA,MAC1B,aAAa;AAAA,QACX,OAAO,KAAK,OAAO,SAAS,SAAS;AAAA,QACrC,aAAa;AAAA,QACb,kBAAkB;AAAA,MACpB;AAAA,IACF;AAAA,EACF;AAAA,EAEQ,uBACN,YACA,YACmB;AACnB,UAAM,OAA0B,CAAC;AACjC,UAAM,OAAO,KAAK,QAAQ,WAAW,IAAI;AACzC,UAAM,cAAc,aAAa,GAAG,UAAU,IAAI,IAAI,KAAK;AAG3D,SAAK,KAAK,KAAK,uBAAuB,YAAY,WAAW,CAAC;AAG9D,UAAM,WAAW,WAAW,YAAY,CAAC;AACzC,UAAM,aAAa;AAAA,MACjB,eAAe;AAAA,MACf,eAAe;AAAA,MACf,eAAe;AAAA,MACf,eAAe;AAAA,MACf,eAAe;AAAA,MACf,eAAe;AAAA,MACf,eAAe;AAAA,IACjB;AAEA,eAAW,SAAS,UAAU;AAC5B,UAAI,WAAW,SAAS,MAAM,IAAI,GAAG;AACnC,aAAK,KAAK,GAAG,KAAK,uBAAuB,OAAO,WAAW,CAAC;AAAA,MAC9D;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AAAA,EAEQ,uBACN,YACA,UACiB;AACjB,UAAM,OAAO,KAAK,YAAY,WAAW,IAAI;AAC7C,UAAM,UAAoB,CAAC;AAG3B,QAAI,KAAK,OAAO,UAAU,aAAa;AACrC,cAAQ,KAAK,KAAK,oBAAoB,QAAQ,CAAC;AAC/C,cAAQ,KAAK,EAAE;AAAA,IACjB;AAGA,YAAQ,KAAK,KAAK,IAAI,KAAK,WAAW,IAAI,EAAE;AAC5C,YAAQ,KAAK,EAAE;AAGf,QAAI,WAAW,SAAS,SAAS;AAC/B,cAAQ,KAAK,KAAK,cAAc,WAAW,QAAQ,OAAO,CAAC;AAC3D,cAAQ,KAAK,EAAE;AAAA,IACjB;AAGA,QAAI,WAAW,kBAAkB,WAAW,eAAe,SAAS,GAAG;AACrE,cAAQ,KAAK,oBAAoB;AACjC,cAAQ,KAAK,EAAE;AACf,cAAQ,KAAK,KAAK,qBAAqB,WAAW,cAAc,CAAC;AACjE,cAAQ,KAAK,EAAE;AAAA,IACjB;AAGA,QAAI,KAAK,OAAO,UAAU,WAAW;AACnC,YAAM,YAAY,KAAK,gBAAgB,UAAU;AACjD,UAAI,WAAW;AACb,gBAAQ,KAAK,cAAc;AAC3B,gBAAQ,KAAK,EAAE;AACf,gBAAQ,KAAK,SAAS;AACtB,gBAAQ,KAAK,EAAE;AAAA,MACjB;AAAA,IACF;AAGA,QAAI,WAAW,YAAY;AACzB,cAAQ,KAAK,cAAc;AAC3B,cAAQ,KAAK,EAAE;AACf,iBAAW,OAAO,WAAW,YAAY;AACvC,gBAAQ,KAAK,KAAK,gBAAgB,GAAG,CAAC;AACtC,gBAAQ,KAAK,EAAE;AAAA,MACjB;AAAA,IACF;AAGA,UAAM,cAAc,WAAW,YAAY,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,eAAe,QAAQ;AAC/F,QAAI,WAAW,SAAS,GAAG;AACzB,cAAQ,KAAK,eAAe;AAC5B,cAAQ,KAAK,EAAE;AACf,iBAAW,QAAQ,YAAY;AAC7B,gBAAQ,KAAK,KAAK,eAAe,IAAI,CAAC;AACtC,gBAAQ,KAAK,EAAE;AAAA,MACjB;AAAA,IACF;AAGA,UAAM,WAAW,WAAW,YAAY,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,eAAe,MAAM;AAC1F,QAAI,QAAQ,SAAS,GAAG;AACtB,cAAQ,KAAK,YAAY;AACzB,cAAQ,KAAK,EAAE;AACf,iBAAW,UAAU,SAAS;AAC5B,gBAAQ,KAAK,KAAK,aAAa,MAAM,CAAC;AACtC,gBAAQ,KAAK,EAAE;AAAA,MACjB;AAAA,IACF;AAGA,UAAM,eAAe,WAAW,YAAY,CAAC,GAAG;AAAA,MAC9C,CAAC,MAAM,EAAE,SAAS,eAAe;AAAA,IACnC;AACA,QAAI,YAAY,SAAS,GAAG;AAC1B,cAAQ,KAAK,YAAY;AACzB,cAAQ,KAAK,EAAE;AACf,cAAQ,KAAK,kCAAkC;AAC/C,cAAQ,KAAK,kCAAkC;AAC/C,iBAAW,UAAU,aAAa;AAChC,cAAM,QAAQ,OAAO,gBAAgB;AACrC,cAAM,OAAO,OAAO,SAAS,UAAU,KAAK,mBAAmB,OAAO,QAAQ,OAAO,IAAI;AACzF,gBAAQ,KAAK,OAAO,OAAO,IAAI,UAAU,KAAK,QAAQ,IAAI,IAAI;AAAA,MAChE;AACA,cAAQ,KAAK,EAAE;AAAA,IACjB;AAGA,QAAI,WAAW,SAAS,eAAe,aAAa,WAAW,MAAM;AACnE,cAAQ,KAAK,SAAS;AACtB,cAAQ,KAAK,EAAE;AACf,cAAQ,KAAK,eAAe;AAC5B,cAAQ,KAAK,QAAQ,WAAW,IAAI,MAAM,WAAW,KAAK,SAAS,CAAC,EAAE;AACtE,cAAQ,KAAK,KAAK;AAClB,cAAQ,KAAK,EAAE;AAAA,IACjB;AAGA,QAAI,KAAK,OAAO,UAAU,eAAe,WAAW,UAAU,CAAC,GAAG;AAChE,YAAM,SAAS,WAAW,QAAQ,CAAC;AACnC,YAAM,YAAY,KAAK,aAAa,OAAO,UAAU,OAAO,IAAI;AAChE,cAAQ,KAAK,WAAW;AACxB,cAAQ,KAAK,EAAE;AACf,UAAI,WAAW;AACb,gBAAQ,KAAK,IAAI,OAAO,QAAQ,IAAI,OAAO,IAAI,KAAK,SAAS,GAAG;AAAA,MAClE,OAAO;AACL,gBAAQ,KAAK,GAAG,OAAO,QAAQ,IAAI,OAAO,IAAI,EAAE;AAAA,MAClD;AACA,cAAQ,KAAK,EAAE;AAAA,IACjB;AAGA,QAAI,WAAW,SAAS,WAAW;AACjC,YAAM,WAAW,WAAW,QAAQ,UAAU,OAAO,CAAC,MAAM,EAAE,QAAQ,UAAU;AAChF,UAAI,SAAS,SAAS,GAAG;AACvB,gBAAQ,KAAK,aAAa;AAC1B,gBAAQ,KAAK,EAAE;AACf,mBAAW,WAAW,UAAU;AAC9B,kBAAQ,KAAK,KAAK,cAAc,QAAQ,OAAO,CAAC;AAChD,kBAAQ,KAAK,EAAE;AAAA,QACjB;AAAA,MACF;AAEA,YAAM,aAAa,WAAW,QAAQ,UAAU,KAAK,CAAC,MAAM,EAAE,QAAQ,aAAa;AACnF,UAAI,YAAY;AACd,gBAAQ,KAAK,uBAAuB;AACpC,gBAAQ,KAAK,KAAK,cAAc,WAAW,OAAO,CAAC;AACnD,gBAAQ,KAAK,KAAK;AAClB,gBAAQ,KAAK,EAAE;AAAA,MACjB;AAEA,YAAM,MAAM,WAAW,QAAQ,UAAU,OAAO,CAAC,MAAM,EAAE,QAAQ,MAAM;AACvE,UAAI,IAAI,SAAS,GAAG;AAClB,gBAAQ,KAAK,aAAa;AAC1B,gBAAQ,KAAK,EAAE;AACf,mBAAW,KAAK,KAAK;AACnB,kBAAQ,KAAK,KAAK,KAAK,cAAc,EAAE,OAAO,CAAC,EAAE;AAAA,QACnD;AACA,gBAAQ,KAAK,EAAE;AAAA,MACjB;AAAA,IACF;AAEA,WAAO;AAAA,MACL,MAAM,GAAG,QAAQ;AAAA,MACjB,SAAS,QAAQ,KAAK,IAAI;AAAA,MAC1B,aAAa;AAAA,QACX,OAAO,WAAW;AAAA,QAClB,aAAa,WAAW,SAAS,UAC7B,KAAK,mBAAmB,WAAW,QAAQ,OAAO,IAClD,GAAG,IAAI,IAAI,WAAW,IAAI;AAAA,MAChC;AAAA,IACF;AAAA,EACF;AAAA,EAEQ,gBAAgB,KAAkC;AACxD,UAAM,QAAkB,CAAC;AAEzB,QAAI,KAAK,OAAO,UAAU,YAAY;AACpC,YAAM,KAAK,eAAe;AAAA,IAC5B;AAEA,UAAM,aAAa,IAAI,iBACnB,IAAI,IAAI,eAAe,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,KAAK,IAAI,CAAC,MACtD;AAEJ,UAAM,UAAU,IAAI,cAAc,CAAC,GAChC,IAAI,CAAC,MAAM;AACV,YAAM,WAAW,EAAE,MAAM,aAAa,MAAM;AAC5C,YAAM,OAAO,EAAE,OAAO,KAAK,EAAE,KAAK,SAAS,CAAC,KAAK;AACjD,aAAO,GAAG,EAAE,IAAI,GAAG,QAAQ,GAAG,IAAI;AAAA,IACpC,CAAC,EACA,KAAK,IAAI;AAEZ,UAAM,aAAa,IAAI,OAAO,KAAK,IAAI,KAAK,SAAS,CAAC,KAAK;AAE3D,UAAM,KAAK,YAAY,IAAI,IAAI,GAAG,UAAU,IAAI,MAAM,IAAI,UAAU,EAAE;AAEtE,QAAI,KAAK,OAAO,UAAU,YAAY;AACpC,YAAM,KAAK,KAAK;AAAA,IAClB;AAGA,QAAI,IAAI,cAAc,IAAI,WAAW,SAAS,GAAG;AAC/C,YAAM,KAAK,EAAE;AACb,YAAM,KAAK,gBAAgB;AAC3B,YAAM,KAAK,EAAE;AACb,YAAM,KAAK,+BAA+B;AAC1C,YAAM,KAAK,+BAA+B;AAE1C,iBAAW,SAAS,IAAI,YAAY;AAClC,cAAM,OAAO,MAAM,OAAO,KAAK,MAAM,KAAK,SAAS,CAAC,OAAO;AAC3D,cAAM,OAAO,MAAM,SAAS,UAAU,KAAK,mBAAmB,MAAM,QAAQ,OAAO,IAAI;AACvF,cAAM,WAAW,MAAM,MAAM,aAAa,gBAAgB;AAC1D,cAAM,KAAK,KAAK,MAAM,IAAI,GAAG,QAAQ,MAAM,IAAI,MAAM,IAAI,IAAI;AAAA,MAC/D;AAAA,IACF;AAGA,QAAI,IAAI,QAAQ,IAAI,KAAK,SAAS,MAAM,QAAQ;AAC9C,YAAM,KAAK,EAAE;AACb,YAAM,KAAK,aAAa;AACxB,YAAM,KAAK,EAAE;AACb,YAAM,KAAK,KAAK,IAAI,KAAK,SAAS,CAAC,IAAI;AAEvC,UAAI,IAAI,SAAS,WAAW;AAC1B,cAAM,UAAU,IAAI,QAAQ,UAAU,KAAK,CAAC,MAAM,EAAE,QAAQ,UAAU;AACtE,YAAI,SAAS;AACX,gBAAM,KAAK,EAAE;AACb,gBAAM,KAAK,KAAK,cAAc,QAAQ,OAAO,CAAC;AAAA,QAChD;AAAA,MACF;AAAA,IACF;AAEA,WAAO,MAAM,KAAK,IAAI;AAAA,EACxB;AAAA,EAEQ,eAAe,MAAqC;AAC1D,UAAM,QAAkB,CAAC;AAEzB,UAAM,QAAkB,CAAC;AACzB,QAAI,KAAK,MAAM,WAAY,OAAM,KAAK,UAAU;AAChD,QAAI,KAAK,MAAM,WAAY,OAAM,KAAK,UAAU;AAChD,QAAI,KAAK,MAAM,SAAU,OAAM,KAAK,QAAQ;AAE5C,UAAM,KAAK,OAAO,KAAK,IAAI,EAAE;AAC7B,QAAI,MAAM,SAAS,GAAG;AACpB,YAAM,KAAK,IAAI,MAAM,KAAK,IAAI,CAAC,GAAG;AAAA,IACpC;AACA,UAAM,KAAK,EAAE;AAEb,QAAI,KAAK,MAAM;AACb,YAAM,KAAK,eAAe;AAC1B,YAAM,KAAK,GAAG,KAAK,IAAI,KAAK,KAAK,KAAK,SAAS,CAAC,EAAE;AAClD,YAAM,KAAK,KAAK;AAChB,YAAM,KAAK,EAAE;AAAA,IACf;AAEA,QAAI,KAAK,SAAS,SAAS;AACzB,YAAM,KAAK,KAAK,cAAc,KAAK,QAAQ,OAAO,CAAC;AAAA,IACrD;AAEA,QAAI,KAAK,cAAc;AACrB,YAAM,KAAK,EAAE;AACb,YAAM,KAAK,kBAAkB,KAAK,YAAY,IAAI;AAAA,IACpD;AAEA,WAAO,MAAM,KAAK,IAAI;AAAA,EACxB;AAAA,EAEQ,aAAa,QAAuC;AAC1D,UAAM,QAAkB,CAAC;AAEzB,UAAM,KAAK,OAAO,OAAO,IAAI,IAAI;AACjC,UAAM,KAAK,EAAE;AAEb,QAAI,OAAO,YAAY;AACrB,iBAAW,OAAO,OAAO,YAAY;AACnC,YAAI,IAAI,SAAS,SAAS;AACxB,gBAAM,KAAK,KAAK,cAAc,IAAI,QAAQ,OAAO,CAAC;AAClD,gBAAM,KAAK,EAAE;AAAA,QACf;AAEA,cAAM,KAAK,KAAK,gBAAgB,GAAG,CAAC;AACpC,cAAM,KAAK,EAAE;AAAA,MACf;AAAA,IACF;AAEA,WAAO,MAAM,KAAK,IAAI;AAAA,EACxB;AAAA,EAEQ,qBAAqB,YAA+C;AAC1E,UAAM,QAAkB,CAAC;AACzB,UAAM,KAAK,+CAA+C;AAC1D,UAAM,KAAK,+CAA+C;AAE1D,eAAW,MAAM,YAAY;AAC3B,YAAM,aAAa,GAAG,OAAO,KAAK,GAAG,KAAK,SAAS,CAAC,OAAO;AAC3D,YAAM,aAAa,GAAG,UAAU,KAAK,GAAG,QAAQ,SAAS,CAAC,OAAO;AACjE,YAAM,OAAO,GAAG,SAAS,UAAU,KAAK,mBAAmB,GAAG,QAAQ,OAAO,IAAI;AACjF,YAAM,KAAK,KAAK,GAAG,IAAI,MAAM,UAAU,MAAM,UAAU,MAAM,IAAI,IAAI;AAAA,IACvE;AAEA,WAAO,MAAM,KAAK,IAAI;AAAA,EACxB;AAAA,EAEQ,gBAAgB,YAAkD;AACxE,UAAM,QAAkB,CAAC;AAEzB,QAAI,WAAW,iBAAiB,WAAW,cAAc,SAAS,GAAG;AACnE,YAAM,KAAK,cAAc;AACzB,iBAAW,KAAK,WAAW,eAAe;AACxC,cAAM,KAAK,OAAO,EAAE,SAAS,CAAC,IAAI;AAAA,MACpC;AAAA,IACF;AAEA,QAAI,WAAW,oBAAoB,WAAW,iBAAiB,SAAS,GAAG;AACzE,YAAM,KAAK,iBAAiB;AAC5B,iBAAW,KAAK,WAAW,kBAAkB;AAC3C,cAAM,KAAK,OAAO,EAAE,SAAS,CAAC,IAAI;AAAA,MACpC;AAAA,IACF;AAEA,QAAI,WAAW,cAAc,WAAW,WAAW,SAAS,GAAG;AAC7D,YAAM,KAAK,kBAAkB;AAC7B,iBAAW,KAAK,WAAW,YAAY;AACrC,cAAM,KAAK,OAAO,EAAE,SAAS,CAAC,IAAI;AAAA,MACpC;AAAA,IACF;AAEA,QAAI,WAAW,iBAAiB,WAAW,cAAc,SAAS,GAAG;AACnE,YAAM,KAAK,qBAAqB;AAChC,iBAAW,KAAK,WAAW,eAAe;AACxC,cAAM,KAAK,OAAO,EAAE,SAAS,CAAC,IAAI;AAAA,MACpC;AAAA,IACF;AAEA,WAAO,MAAM,SAAS,IAAI,MAAM,KAAK,IAAI,IAAI;AAAA,EAC/C;AAAA,EAEQ,cAAc,OAAiD;AACrE,WAAO,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;AAAA,EACzC;AAAA,EAEQ,mBAAmB,OAAiD;AAC1E,UAAM,OAAO,KAAK,cAAc,KAAK;AACrC,UAAM,gBAAgB,KAAK,MAAM,SAAS,EAAE,CAAC;AAC7C,WAAO,cAAc,SAAS,KAAK,SAAS,gBAAgB,MAAM;AAAA,EACpE;AAAA,EAEQ,oBAAoB,UAA0B;AACpD,UAAM,QAAQ,SAAS,MAAM,GAAG;AAChC,UAAM,cAAwB,CAAC,SAAS,KAAK,QAAQ,GAAG;AAExD,QAAI,cAAc;AAClB,aAAS,IAAI,GAAG,IAAI,MAAM,SAAS,GAAG,KAAK;AACzC,sBAAgB,cAAc,MAAM,MAAM,MAAM,CAAC;AACjD,kBAAY,KAAK,IAAI,MAAM,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,WAAW,GAAG;AAAA,IACnE;AAEA,gBAAY,KAAK,MAAM,MAAM,SAAS,CAAC,CAAC;AAExC,WAAO,YAAY,KAAK,KAAK;AAAA,EAC/B;AAAA,EAEQ,YAAY,MAA8B;AAChD,UAAM,YAAqD;AAAA,MACzD,CAAC,eAAe,KAAK,GAAG;AAAA,MACxB,CAAC,eAAe,SAAS,GAAG;AAAA,MAC5B,CAAC,eAAe,IAAI,GAAG;AAAA,MACvB,CAAC,eAAe,SAAS,GAAG;AAAA,MAC5B,CAAC,eAAe,QAAQ,GAAG;AAAA,MAC3B,CAAC,eAAe,QAAQ,GAAG;AAAA,MAC3B,CAAC,eAAe,SAAS,GAAG;AAAA,MAC5B,CAAC,eAAe,MAAM,GAAG;AAAA,MACzB,CAAC,eAAe,QAAQ,GAAG;AAAA,MAC3B,CAAC,eAAe,MAAM,GAAG;AAAA,IAC3B;AACA,WAAO,UAAU,IAAI,KAAK;AAAA,EAC5B;AAAA,EAEQ,QAAQ,MAAsB;AACpC,WAAO,KACJ,YAAY,EACZ,QAAQ,eAAe,GAAG,EAC1B,QAAQ,UAAU,EAAE;AAAA,EACzB;AAAA,EAEQ,aAAa,UAAkB,MAA6B;AAClE,QAAI,CAAC,KAAK,OAAO,UAAU,cAAe,QAAO;AACjD,UAAM,UAAU,KAAK,OAAO,SAAS,cAAc,QAAQ,OAAO,EAAE;AACpE,WAAO,GAAG,OAAO,IAAI,QAAQ,KAAK,IAAI;AAAA,EACxC;AACF;AAEA,eAAsB,gBACpB,QACA,WAC4B;AAC5B,QAAM,YAAY,IAAI,iBAAiB,MAAM;AAC7C,SAAO,UAAU,SAAS,SAAS;AACrC;","names":[]}
@@ -1,70 +0,0 @@
1
- export { C as CodeBlock, a as CodeGroup, b as Container, c as Content, d as CopyButton, D as Danger, p as DocContent, e as DocLayout, f as DocPage, F as Footer, q as FooterCopyrightProps, r as FooterMessageProps, s as FooterProps, H as Header, t as HeaderProps, g as HomePage, I as Info, L as Layout, u as LayoutProps, N as Note, S as Search, h as Sidebar, v as SidebarGroup, w as SidebarGroupProps, x as SidebarLink, y as SidebarLinkProps, z as SidebarProps, A as SocialLink, B as SocialLinkProps, T as TOC, i as Tab, j as TabList, k as TabPanel, l as TabPanels, m as Tabs, n as ThemeToggle, o as Tip, W as Warning } from '../CopyButton-BkACwxQM.js';
2
- import * as react_jsx_runtime from 'react/jsx-runtime';
3
- import { ReactNode } from 'react';
4
- import '../types-C22M-Kor.js';
5
- import 'shiki';
6
-
7
- interface NavProps {
8
- children?: ReactNode;
9
- className?: string;
10
- }
11
- /**
12
- * Navigation container component for composing navigation links.
13
- *
14
- * @example
15
- * ```tsx
16
- * <Nav>
17
- * <NavLink to="/guide">Guide</NavLink>
18
- * <NavLink to="/api">API</NavLink>
19
- * <NavLink href="https://github.com/...">GitHub</NavLink>
20
- * </Nav>
21
- * ```
22
- */
23
- declare function Nav({ children, className }: NavProps): react_jsx_runtime.JSX.Element;
24
- interface NavLinkProps {
25
- /** Internal route path (uses TanStack Router Link) */
26
- to?: string;
27
- /** External URL (uses anchor tag) */
28
- href?: string;
29
- /** Link text or children */
30
- children: ReactNode;
31
- /** Additional CSS classes */
32
- className?: string;
33
- /** Active state match pattern */
34
- activeMatch?: string;
35
- }
36
- /**
37
- * Navigation link component supporting both internal routes and external URLs.
38
- *
39
- * @example
40
- * ```tsx
41
- * // Internal link
42
- * <NavLink to="/guide">Guide</NavLink>
43
- *
44
- * // External link
45
- * <NavLink href="https://github.com/...">GitHub</NavLink>
46
- * ```
47
- */
48
- declare function NavLink({ to, href, children, className, activeMatch }: NavLinkProps): react_jsx_runtime.JSX.Element;
49
- interface NavDropdownProps {
50
- /** Dropdown trigger text */
51
- text: string;
52
- /** Dropdown items */
53
- children: ReactNode;
54
- /** Additional CSS classes */
55
- className?: string;
56
- }
57
- /**
58
- * Dropdown navigation menu for grouping related links.
59
- *
60
- * @example
61
- * ```tsx
62
- * <NavDropdown text="Resources">
63
- * <NavLink to="/docs">Documentation</NavLink>
64
- * <NavLink to="/blog">Blog</NavLink>
65
- * </NavDropdown>
66
- * ```
67
- */
68
- declare function NavDropdown({ text, children, className }: NavDropdownProps): react_jsx_runtime.JSX.Element;
69
-
70
- export { Nav, NavDropdown, type NavDropdownProps, NavLink, type NavLinkProps, type NavProps };