From 74f933971306d97551ec35973b4392f309c44cc1 Mon Sep 17 00:00:00 2001 From: Luke Hagar Date: Thu, 18 Jan 2024 17:22:39 -0600 Subject: [PATCH] Unique array --- src/lib/converter.ts | 6 +++++- src/routes/+page.svelte | 25 +++++++++++++++++++++---- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/src/lib/converter.ts b/src/lib/converter.ts index 8ea3aeb..965b3f2 100644 --- a/src/lib/converter.ts +++ b/src/lib/converter.ts @@ -77,12 +77,14 @@ export function convertNumber(number: number, config: Config) { export function convertArray(array: any[], config: Config) { const output: Output = {}; const items = []; + const exampleArray = []; for (const entry of array) { const map = convertObject(entry, config); if (items.filter((item) => item.type === map.type && item.format === map.format).length < 1) { items.push(map); + exampleArray.push(entry); } } @@ -93,7 +95,7 @@ export function convertArray(array: any[], config: Config) { output.items = [...items]; } - if (config.includeExamples) output.example = array; + if (config.includeExamples) output.example = exampleArray; return output; } @@ -140,6 +142,8 @@ export function convertObject(input: any, config: Config) { output.type = 'boolean'; output.example = input; return output; + } else if (input === undefined) { + throw new Error(`undefined cannot be converted to OAS`); } else { throw new Error(`Invalid Swagger type for type ${typeof input}:${input}`); } diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index b13fd6f..ad12338 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -1,15 +1,16 @@
@@ -37,7 +54,7 @@ Input all of your JSON formatted Data, Typically API response bodies

- + run(content, $config, $yamlOut)} bind:content />