OpenAPI: Support disabling code sample with undefined source

This commit is contained in:
fuma-nama
2024-08-18 15:45:14 +08:00
parent 64d195f358
commit 81d0887ab7
3 changed files with 10 additions and 5 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'fumadocs-openapi': patch
---
Support disabling code sample with undefined source
+2 -2
View File
@@ -30,7 +30,7 @@ export interface AnchorProviderProps {
/**
* Only accept one active item at most
*
* @defaultValue false
* @defaultValue true
*/
single?: boolean;
children?: ReactNode;
@@ -58,7 +58,7 @@ export function ScrollProvider({
export function AnchorProvider({
toc,
single = false,
single = true,
children,
}: AnchorProviderProps): React.ReactElement {
const headings = useMemo(() => {
+3 -3
View File
@@ -22,7 +22,7 @@ interface CustomProperty {
export interface CodeSample {
lang: string;
label: string;
source: string;
source?: string;
}
export function Operation({
@@ -160,7 +160,7 @@ async function APIExample({
const renderer = ctx.renderer;
const children: ReactNode[] = [];
const samples: CodeSample[] = dedupe([
const samples = dedupe([
{
label: 'cURL',
source: CURL.getSampleRequest(endpoint),
@@ -178,7 +178,7 @@ async function APIExample({
},
...(ctx.generateCodeSamples ? await ctx.generateCodeSamples(endpoint) : []),
...((method as CustomProperty)['x-codeSamples'] ?? []),
]);
]).filter((item) => item.source !== undefined) as Required<CodeSample>[];
children.push(
<renderer.Requests key="requests" items={samples.map((s) => s.label)}>