From 8e908092969f35067d2928c7aa310935cf7863df Mon Sep 17 00:00:00 2001 From: dsinghvi Date: Wed, 5 Feb 2025 18:46:48 -0500 Subject: [PATCH 1/6] feat: support exploded form parameters in docs --- fern/apis/fdr/definition/api/latest/type.yml | 1 + fern/apis/fdr/definition/api/v1/read/endpoint.yml | 1 + packages/fdr-sdk/src/api-definition/migrators/v1ToV2.ts | 1 + .../src/api-definition/snippets/SnippetHttpRequest.ts | 7 +++++++ .../latest/resources/type/types/FormDataProperty.ts | 1 + .../resources/read/resources/endpoint/types/FormValue.ts | 8 +++++++- .../latest/resources/type/types/FormDataProperty.ts | 1 + .../resources/read/resources/endpoint/types/FormValue.ts | 8 +++++++- .../paths/request/RequestMediaTypeObjectConverter.node.ts | 1 + .../latest/resources/type/types/FormDataProperty.d.ts | 1 + .../read/resources/endpoint/types/FormValue.d.ts | 6 +++++- 11 files changed, 33 insertions(+), 3 deletions(-) diff --git a/fern/apis/fdr/definition/api/latest/type.yml b/fern/apis/fdr/definition/api/latest/type.yml index f6d36eefd7..61cb53ee56 100644 --- a/fern/apis/fdr/definition/api/latest/type.yml +++ b/fern/apis/fdr/definition/api/latest/type.yml @@ -118,6 +118,7 @@ types: extends: ObjectProperty # has description and availability properties: contentType: optional + exploded: optional FormDataFile: extends: diff --git a/fern/apis/fdr/definition/api/v1/read/endpoint.yml b/fern/apis/fdr/definition/api/v1/read/endpoint.yml index 278794785b..195faefd4e 100644 --- a/fern/apis/fdr/definition/api/v1/read/endpoint.yml +++ b/fern/apis/fdr/definition/api/v1/read/endpoint.yml @@ -237,6 +237,7 @@ types: filenames: list filenameWithData: FilenameWithData filenamesWithData: list + exploded: list BytesValue: union: diff --git a/packages/fdr-sdk/src/api-definition/migrators/v1ToV2.ts b/packages/fdr-sdk/src/api-definition/migrators/v1ToV2.ts index 70f2206243..4ea6c570e0 100644 --- a/packages/fdr-sdk/src/api-definition/migrators/v1ToV2.ts +++ b/packages/fdr-sdk/src/api-definition/migrators/v1ToV2.ts @@ -688,6 +688,7 @@ export class ApiDefinitionV1ToLatest { contentType: bodyProp.contentType, description: bodyProp.description, availability: bodyProp.availability, + exploded: undefined, valueShape: { type: "alias", value: this.migrateTypeReference(bodyProp.valueType), diff --git a/packages/fdr-sdk/src/api-definition/snippets/SnippetHttpRequest.ts b/packages/fdr-sdk/src/api-definition/snippets/SnippetHttpRequest.ts index 9e87c96d10..c92f32d512 100644 --- a/packages/fdr-sdk/src/api-definition/snippets/SnippetHttpRequest.ts +++ b/packages/fdr-sdk/src/api-definition/snippets/SnippetHttpRequest.ts @@ -9,6 +9,11 @@ interface SnippetHttpRequestBodyJson { value?: unknown; } +interface SnippetHttpRequestBodyJsonExploded { + type: "exploded"; + value?: unknown[]; +} + export interface SnippetHttpRequestBodyForm { type: "form"; value: Record; @@ -27,6 +32,7 @@ export interface SnippetHttpRequestBodyFormValueFilenames { export type SnippetHttpRequestBodyFormValue = | SnippetHttpRequestBodyJson + | SnippetHttpRequestBodyJsonExploded | SnippetHttpRequestBodyFormValueFilename | SnippetHttpRequestBodyFormValueFilenames; @@ -131,6 +137,7 @@ export function toSnippetHttpRequest( toRet[key] = visitDiscriminatedUnion( val )._visit({ + exploded: (value) => value, json: (value) => value, filename: (value) => ({ type: "filename", diff --git a/packages/fdr-sdk/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts b/packages/fdr-sdk/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts index 6dd6ed5688..099651c5e0 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts @@ -6,4 +6,5 @@ import * as FernRegistry from "../../../../../../../index"; export interface FormDataProperty extends FernRegistry.api.latest.ObjectProperty { contentType: FernRegistry.api.latest.ContentType | undefined; + exploded: boolean | undefined; } diff --git a/packages/fdr-sdk/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts b/packages/fdr-sdk/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts index 90cbef8279..321de4d8d3 100644 --- a/packages/fdr-sdk/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts +++ b/packages/fdr-sdk/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts @@ -9,7 +9,8 @@ export type FormValue = | FernRegistry.api.v1.read.FormValue.Filename | FernRegistry.api.v1.read.FormValue.Filenames | FernRegistry.api.v1.read.FormValue.FilenameWithData - | FernRegistry.api.v1.read.FormValue.FilenamesWithData; + | FernRegistry.api.v1.read.FormValue.FilenamesWithData + | FernRegistry.api.v1.read.FormValue.Exploded; export declare namespace FormValue { interface Json { @@ -35,4 +36,9 @@ export declare namespace FormValue { type: "filenamesWithData"; value: FernRegistry.api.v1.read.FilenameWithData[]; } + + interface Exploded { + type: "exploded"; + value: unknown[]; + } } diff --git a/packages/parsers/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts b/packages/parsers/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts index 6dd6ed5688..099651c5e0 100644 --- a/packages/parsers/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts +++ b/packages/parsers/src/client/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.ts @@ -6,4 +6,5 @@ import * as FernRegistry from "../../../../../../../index"; export interface FormDataProperty extends FernRegistry.api.latest.ObjectProperty { contentType: FernRegistry.api.latest.ContentType | undefined; + exploded: boolean | undefined; } diff --git a/packages/parsers/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts b/packages/parsers/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts index 90cbef8279..321de4d8d3 100644 --- a/packages/parsers/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts +++ b/packages/parsers/src/client/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.ts @@ -9,7 +9,8 @@ export type FormValue = | FernRegistry.api.v1.read.FormValue.Filename | FernRegistry.api.v1.read.FormValue.Filenames | FernRegistry.api.v1.read.FormValue.FilenameWithData - | FernRegistry.api.v1.read.FormValue.FilenamesWithData; + | FernRegistry.api.v1.read.FormValue.FilenamesWithData + | FernRegistry.api.v1.read.FormValue.Exploded; export declare namespace FormValue { interface Json { @@ -35,4 +36,9 @@ export declare namespace FormValue { type: "filenamesWithData"; value: FernRegistry.api.v1.read.FilenameWithData[]; } + + interface Exploded { + type: "exploded"; + value: unknown[]; + } } diff --git a/packages/parsers/src/openapi/3.1/paths/request/RequestMediaTypeObjectConverter.node.ts b/packages/parsers/src/openapi/3.1/paths/request/RequestMediaTypeObjectConverter.node.ts index 55fcd5aa2f..b77db63aaf 100644 --- a/packages/parsers/src/openapi/3.1/paths/request/RequestMediaTypeObjectConverter.node.ts +++ b/packages/parsers/src/openapi/3.1/paths/request/RequestMediaTypeObjectConverter.node.ts @@ -213,6 +213,7 @@ export class RequestMediaTypeObjectConverterNode extends BaseOpenApiV3_1Converte type, key: FernRegistry.PropertyKey(key), contentType: field.contentType, + exploded: undefined, valueShape, description: field.description, availability: field.availability?.convert(), diff --git a/servers/fdr/src/api/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.d.ts b/servers/fdr/src/api/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.d.ts index 913c507b55..c3d427f10f 100644 --- a/servers/fdr/src/api/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.d.ts +++ b/servers/fdr/src/api/generated/api/resources/api/resources/latest/resources/type/types/FormDataProperty.d.ts @@ -4,4 +4,5 @@ import * as FernRegistry from "../../../../../../../index"; export interface FormDataProperty extends FernRegistry.api.latest.ObjectProperty { contentType: FernRegistry.api.latest.ContentType | undefined; + exploded: boolean | undefined; } diff --git a/servers/fdr/src/api/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.d.ts b/servers/fdr/src/api/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.d.ts index 7f65842b73..a5a240a611 100644 --- a/servers/fdr/src/api/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.d.ts +++ b/servers/fdr/src/api/generated/api/resources/api/resources/v1/resources/read/resources/endpoint/types/FormValue.d.ts @@ -2,7 +2,7 @@ * This file was auto-generated by Fern from our API Definition. */ import * as FernRegistry from "../../../../../../../../../index"; -export declare type FormValue = FernRegistry.api.v1.read.FormValue.Json | FernRegistry.api.v1.read.FormValue.Filename | FernRegistry.api.v1.read.FormValue.Filenames | FernRegistry.api.v1.read.FormValue.FilenameWithData | FernRegistry.api.v1.read.FormValue.FilenamesWithData; +export declare type FormValue = FernRegistry.api.v1.read.FormValue.Json | FernRegistry.api.v1.read.FormValue.Filename | FernRegistry.api.v1.read.FormValue.Filenames | FernRegistry.api.v1.read.FormValue.FilenameWithData | FernRegistry.api.v1.read.FormValue.FilenamesWithData | FernRegistry.api.v1.read.FormValue.Exploded; export declare namespace FormValue { interface Json { type: "json"; @@ -23,4 +23,8 @@ export declare namespace FormValue { type: "filenamesWithData"; value: FernRegistry.api.v1.read.FilenameWithData[]; } + interface Exploded { + type: "exploded"; + value: unknown[]; + } } From e6d74e6e5e8c75b1926ae8554c2f61954faccc9b Mon Sep 17 00:00:00 2001 From: dsinghvi Date: Thu, 6 Feb 2025 09:42:37 -0500 Subject: [PATCH 2/6] fix compile --- .../src/api-definition/snippets/curl.ts | 4 + packages/template-resolver/package.json | 2 +- pnpm-lock.yaml | 435 ++++++++++-------- 3 files changed, 255 insertions(+), 186 deletions(-) diff --git a/packages/fdr-sdk/src/api-definition/snippets/curl.ts b/packages/fdr-sdk/src/api-definition/snippets/curl.ts index 7252adc302..33106cf894 100644 --- a/packages/fdr-sdk/src/api-definition/snippets/curl.ts +++ b/packages/fdr-sdk/src/api-definition/snippets/curl.ts @@ -172,6 +172,10 @@ function getBodyFormValueString( return getBodyFormValueFilenameString(value, key); case "filenames": return getBodyFormValueFilenamesStrings(value, key); + case "exploded": + return (value.value ?? []).flatMap((item) => + getBodyFormValueJsonString(item, key, usesApplicationJsonInFormDataValue) + ); default: throw new UnreachableCaseError(value); } diff --git a/packages/template-resolver/package.json b/packages/template-resolver/package.json index ab158a8bed..d0cc89f61c 100644 --- a/packages/template-resolver/package.json +++ b/packages/template-resolver/package.json @@ -28,7 +28,7 @@ "test": "vitest --run --passWithNoTests" }, "dependencies": { - "@fern-fern/fdr-cjs-sdk": "0.116.5-873e41db0", + "@fern-fern/fdr-cjs-sdk": "0.75.41-28-g8e9080929", "prettier": "^3.4.2" }, "devDependencies": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index dec4418d79..a269fa714c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -68,10 +68,10 @@ importers: version: 1.47.1 '@tailwindcss/forms': specifier: ^0.5.7 - version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@tailwindcss/typography': specifier: ^0.5.10 - version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@types/express': specifier: ^4.17.13 version: 4.17.21 @@ -122,7 +122,7 @@ importers: version: 3.0.0(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2) eslint-plugin-import: specifier: ^2.31.0 - version: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@9.17.0(jiti@1.21.7)) + version: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)) eslint-plugin-react: specifier: ^7.37.2 version: 7.37.2(eslint@9.17.0(jiti@1.21.7)) @@ -131,7 +131,7 @@ importers: version: 5.1.0(eslint@9.17.0(jiti@1.21.7)) eslint-plugin-tailwindcss: specifier: ^3.17.5 - version: 3.17.5(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 3.17.5(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) eslint-plugin-vitest: specifier: ^0.5.4 version: 0.5.4(@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2)(vitest@2.1.4(@edge-runtime/vm@5.0.0)(@types/node@18.19.33)(jsdom@24.0.0)(less@4.2.0)(sass@1.77.0)(stylus@0.62.0)(terser@5.31.0)) @@ -197,16 +197,16 @@ importers: version: 13.1.0(postcss@8.4.31)(stylelint@16.5.0(typescript@5.7.2)) stylelint-config-tailwindcss: specifier: ^0.0.7 - version: 0.0.7(stylelint@16.5.0(typescript@5.7.2))(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.0.7(stylelint@16.5.0(typescript@5.7.2))(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) stylelint-scss: specifier: ^6.0.0 version: 6.3.0(stylelint@16.5.0(typescript@5.7.2)) tailwindcss: specifier: 3.4.17 - version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) ts-node: specifier: ^10.9.2 - version: 10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2) + version: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2) tsx: specifier: ^4.19.2 version: 4.19.2 @@ -221,7 +221,7 @@ importers: version: 8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2) typescript-plugin-css-modules: specifier: ^5.1.0 - version: 5.1.0(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))(typescript@5.7.2) + version: 5.1.0(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))(typescript@5.7.2) vitest: specifier: ^2.1.4 version: 2.1.4(@edge-runtime/vm@5.0.0)(@types/node@18.19.33)(jsdom@24.0.0)(less@4.2.0)(sass@1.77.0)(stylus@0.62.0)(terser@5.31.0) @@ -273,7 +273,7 @@ importers: version: 3.0.3 tsup: specifier: ^8.3.5 - version: 8.3.5(@swc/core@1.5.7)(jiti@1.21.7)(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.7.0) + version: 8.3.5(@swc/core@1.5.7(@swc/helpers@0.5.15))(jiti@1.21.7)(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.7.0) typescript: specifier: 5.7.2 version: 5.7.2 @@ -871,10 +871,10 @@ importers: version: 14.2.9 '@tailwindcss/forms': specifier: ^0.5.7 - version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@tailwindcss/typography': specifier: ^0.5.10 - version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@types/node': specifier: ^18.7.18 version: 18.19.33 @@ -907,7 +907,7 @@ importers: version: 3.4.2 raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + version: 4.0.2(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) sass: specifier: ^1.74.1 version: 1.77.0 @@ -916,7 +916,7 @@ importers: version: 16.5.0(typescript@5.7.2) tailwindcss: specifier: 3.4.17 - version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) typescript: specifier: 5.7.2 version: 5.7.2 @@ -1116,10 +1116,10 @@ importers: version: 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@tailwindcss/forms': specifier: ^0.5.7 - version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@tailwindcss/typography': specifier: ^0.5.10 - version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@testing-library/jest-dom': specifier: ^6.4.2 version: 6.5.0 @@ -1179,7 +1179,7 @@ importers: version: 16.5.0(typescript@5.7.2) tailwindcss: specifier: 3.4.17 - version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) typescript: specifier: 5.7.2 version: 5.7.2 @@ -1409,10 +1409,10 @@ importers: version: 14.2.9 '@tailwindcss/forms': specifier: ^0.5.7 - version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@tailwindcss/typography': specifier: ^0.5.10 - version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@types/node': specifier: ^18.7.18 version: 18.19.33 @@ -1451,7 +1451,7 @@ importers: version: 3.4.2 raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.94.0(@swc/core@1.5.7)) + version: 4.0.2(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) sass: specifier: ^1.74.1 version: 1.77.0 @@ -1460,7 +1460,7 @@ importers: version: 16.5.0(typescript@5.7.2) tailwindcss: specifier: 3.4.17 - version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) typescript: specifier: 5.7.2 version: 5.7.2 @@ -1841,7 +1841,7 @@ importers: version: 8.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2)) '@storybook/nextjs': specifier: ^8.4.4 - version: 8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7)) + version: 8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7(@swc/helpers@0.5.15))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) '@storybook/react': specifier: ^8.4.4 version: 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) @@ -1850,7 +1850,7 @@ importers: version: 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@tailwindcss/typography': specifier: ^0.5.10 - version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2))) '@types/hast': specifier: ^3.0.4 version: 3.0.4 @@ -1892,10 +1892,10 @@ importers: version: 2.2.5(react@18.3.1) tailwindcss: specifier: 3.4.17 - version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2)) tailwindcss-animate: specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 1.0.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2))) typescript: specifier: 5.7.2 version: 5.7.2 @@ -2319,7 +2319,7 @@ importers: version: 8.4.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2)) '@storybook/nextjs': specifier: ^8.4.4 - version: 8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7)(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + version: 8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) '@storybook/react': specifier: ^8.4.4 version: 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) @@ -2328,10 +2328,10 @@ importers: version: 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@tailwindcss/forms': specifier: ^0.5.7 - version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@tailwindcss/typography': specifier: ^0.5.10 - version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))) + version: 0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))) '@testing-library/jest-dom': specifier: ^6.4.2 version: 6.5.0 @@ -2406,7 +2406,7 @@ importers: version: 16.5.0(typescript@5.7.2) tailwindcss: specifier: 3.4.17 - version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + version: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) ts-essentials: specifier: ^10.0.1 version: 10.0.1(typescript@5.7.2) @@ -2507,7 +2507,7 @@ importers: version: 3.4.2 tsup: specifier: ^8.3.5 - version: 8.3.5(@swc/core@1.5.7)(jiti@1.21.7)(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.7.0) + version: 8.3.5(@swc/core@1.5.7(@swc/helpers@0.5.15))(jiti@1.21.7)(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.7.0) typescript: specifier: 5.7.2 version: 5.7.2 @@ -2613,8 +2613,8 @@ importers: packages/template-resolver: dependencies: '@fern-fern/fdr-cjs-sdk': - specifier: 0.116.5-873e41db0 - version: 0.116.5-873e41db0 + specifier: 0.75.41-28-g8e9080929 + version: 0.75.41-28-g8e9080929 prettier: specifier: ^3.4.2 version: 3.4.2 @@ -2636,7 +2636,7 @@ importers: version: 9.17.0(jiti@1.21.7) jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + version: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) typescript: specifier: 5.7.2 version: 5.7.2 @@ -2921,7 +2921,7 @@ importers: version: 2.1.2 ts-node: specifier: ^10.9.1 - version: 10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2) + version: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2) typescript: specifier: 5.7.2 version: 5.7.2 @@ -3039,7 +3039,7 @@ importers: version: 1.54.6(esbuild@0.24.2) ts-node: specifier: ^10.4.0 - version: 10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2) + version: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2) tsconfig-paths: specifier: ^3.9.0 version: 3.15.0 @@ -4862,8 +4862,8 @@ packages: '@fern-fern/docs-parsers-fern-definition@0.0.3': resolution: {integrity: sha512-K/0U4atohNlz+ufYwyclaYyMKj9cZrSu1eHd7g396A3d6LT/rBF9GywUR2hK7LmLja8xtor54DX2Gz69b3k93A==} - '@fern-fern/fdr-cjs-sdk@0.116.5-873e41db0': - resolution: {integrity: sha512-ZWY+R3gEnpvhdvhyupMpjrvMXJU++d7whgaozRz4+j+IaYpNmCt/IeIemCcyVWDUbGV4/7GXec85iyTK13wTgA==} + '@fern-fern/fdr-cjs-sdk@0.75.41-28-g8e9080929': + resolution: {integrity: sha512-M2isiUgGZqlj9VSDwscSmR4esuwBbnDe/IwsFGqs4BzemVagT1e7xXZO8hXJoRLYkLmLZRpyzL3vh0zQkQiLLQ==} '@fern-fern/fern-cloud-sdk@0.0.305': resolution: {integrity: sha512-FDV2dlBpIaf4ZULjPKwUh+kZ8jnUbRS0Vth/Izwa/mIt7lbbrynUTJiPVANhQdVpt5cqq0Q/8BeBx0/7IvNVDA==} @@ -20370,7 +20370,7 @@ snapshots: '@fern-fern/docs-parsers-fern-definition@0.0.3': {} - '@fern-fern/fdr-cjs-sdk@0.116.5-873e41db0': + '@fern-fern/fdr-cjs-sdk@0.75.41-28-g8e9080929': dependencies: form-data: 4.0.0 formdata-node: 6.0.3 @@ -20886,7 +20886,7 @@ snapshots: jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))': + '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 @@ -20900,7 +20900,7 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.12.12)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + jest-config: 29.7.0(@types/node@20.12.12)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -21734,7 +21734,7 @@ snapshots: dependencies: playwright: 1.47.1 - '@pmmmwh/react-refresh-webpack-plugin@0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2))': dependencies: ansi-html-community: 0.0.8 core-js-pure: 3.37.0 @@ -21744,12 +21744,12 @@ snapshots: react-refresh: 0.14.2 schema-utils: 3.3.0 source-map: 0.7.4 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) optionalDependencies: type-fest: 4.21.0 webpack-hot-middleware: 2.26.1 - '@pmmmwh/react-refresh-webpack-plugin@0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)))': dependencies: ansi-html-community: 0.0.8 core-js-pure: 3.37.0 @@ -21759,7 +21759,7 @@ snapshots: react-refresh: 0.14.2 schema-utils: 3.3.0 source-map: 0.7.4 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) optionalDependencies: type-fest: 4.21.0 webpack-hot-middleware: 2.26.1 @@ -23626,7 +23626,7 @@ snapshots: transitivePeerDependencies: - webpack-sources - '@storybook/builder-webpack5@8.4.4(@swc/core@1.5.7)(esbuild@0.24.2)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': + '@storybook/builder-webpack5@8.4.4(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': dependencies: '@storybook/core-webpack': 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@types/node': 22.5.5 @@ -23635,23 +23635,23 @@ snapshots: case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.3.1 constants-browserify: 1.0.0 - css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) es-module-lexer: 1.5.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) - html-webpack-plugin: 5.6.0(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) + html-webpack-plugin: 5.6.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) magic-string: 0.30.12 path-browserify: 1.0.1 process: 0.11.10 semver: 7.6.3 storybook: 8.4.4(prettier@3.4.2) - style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) - terser-webpack-plugin: 5.3.10(@swc/core@1.5.7)(esbuild@0.24.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) + terser-webpack-plugin: 5.3.10(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) ts-dedent: 2.2.0 url: 0.11.3 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) - webpack-dev-middleware: 6.1.3(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) + webpack-dev-middleware: 6.1.3(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) webpack-hot-middleware: 2.26.1 webpack-virtual-modules: 0.6.2 optionalDependencies: @@ -23663,7 +23663,7 @@ snapshots: - uglify-js - webpack-cli - '@storybook/builder-webpack5@8.4.4(@swc/core@1.5.7)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': + '@storybook/builder-webpack5@8.4.4(@swc/core@1.5.7(@swc/helpers@0.5.15))(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': dependencies: '@storybook/core-webpack': 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@types/node': 22.5.5 @@ -23672,23 +23672,23 @@ snapshots: case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.3.1 constants-browserify: 1.0.0 - css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7)) + css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) es-module-lexer: 1.5.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)) - html-webpack-plugin: 5.6.0(webpack@5.94.0(@swc/core@1.5.7)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) + html-webpack-plugin: 5.6.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) magic-string: 0.30.12 path-browserify: 1.0.1 process: 0.11.10 semver: 7.6.3 storybook: 8.4.4(prettier@3.4.2) - style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7)) - terser-webpack-plugin: 5.3.10(@swc/core@1.5.7)(webpack@5.94.0(@swc/core@1.5.7)) + style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) + terser-webpack-plugin: 5.3.10(@swc/core@1.5.7(@swc/helpers@0.5.15))(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) ts-dedent: 2.2.0 url: 0.11.3 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.94.0(@swc/core@1.5.7) - webpack-dev-middleware: 6.1.3(webpack@5.94.0(@swc/core@1.5.7)) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) + webpack-dev-middleware: 6.1.3(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) webpack-hot-middleware: 2.26.1 webpack-virtual-modules: 0.6.2 optionalDependencies: @@ -23784,7 +23784,7 @@ snapshots: dependencies: storybook: 8.4.4(prettier@3.4.2) - '@storybook/nextjs@8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7)(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2))': + '@storybook/nextjs@8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.26.0) @@ -23799,31 +23799,31 @@ snapshots: '@babel/preset-react': 7.25.9(@babel/core@7.26.0) '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) '@babel/runtime': 7.26.0 - '@pmmmwh/react-refresh-webpack-plugin': 0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) - '@storybook/builder-webpack5': 8.4.4(@swc/core@1.5.7)(esbuild@0.24.2)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) - '@storybook/preset-react-webpack': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7)(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) + '@storybook/builder-webpack5': 8.4.4(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) + '@storybook/preset-react-webpack': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) '@storybook/react': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) '@storybook/test': 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@types/node': 22.5.5 '@types/semver': 7.5.8 - babel-loader: 9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) - css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + babel-loader: 9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) + css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) find-up: 5.0.0 image-size: 1.1.1 loader-utils: 3.2.1 next: '@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)' - node-polyfill-webpack-plugin: 2.0.1(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + node-polyfill-webpack-plugin: 2.0.1(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) pnp-webpack-plugin: 1.7.0(typescript@5.7.2) postcss: 8.4.31 - postcss-loader: 8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + postcss-loader: 8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-refresh: 0.14.2 resolve-url-loader: 5.0.0 - sass-loader: 13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + sass-loader: 13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) semver: 7.6.3 storybook: 8.4.4(prettier@3.4.2) - style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) styled-jsx: 5.1.6(@babel/core@7.26.0)(react@18.3.1) ts-dedent: 2.2.0 tsconfig-paths: 4.2.0 @@ -23831,7 +23831,7 @@ snapshots: optionalDependencies: sharp: 0.33.3 typescript: 5.7.2 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) transitivePeerDependencies: - '@rspack/core' - '@swc/core' @@ -23851,7 +23851,7 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/nextjs@8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7))': + '@storybook/nextjs@8.4.4(@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(@swc/core@1.5.7(@swc/helpers@0.5.15))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)(storybook@8.4.4(prettier@3.4.2))(type-fest@4.21.0)(typescript@5.7.2)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.26.0) @@ -23866,31 +23866,31 @@ snapshots: '@babel/preset-react': 7.25.9(@babel/core@7.26.0) '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) '@babel/runtime': 7.26.0 - '@pmmmwh/react-refresh-webpack-plugin': 0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7)) - '@storybook/builder-webpack5': 8.4.4(@swc/core@1.5.7)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) - '@storybook/preset-react-webpack': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.13(react-refresh@0.14.2)(type-fest@4.21.0)(webpack-hot-middleware@2.26.1)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) + '@storybook/builder-webpack5': 8.4.4(@swc/core@1.5.7(@swc/helpers@0.5.15))(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) + '@storybook/preset-react-webpack': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7(@swc/helpers@0.5.15))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) '@storybook/react': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) '@storybook/test': 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@types/node': 22.5.5 '@types/semver': 7.5.8 - babel-loader: 9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7)) - css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7)) + babel-loader: 9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) + css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) find-up: 5.0.0 image-size: 1.1.1 loader-utils: 3.2.1 next: '@fern-api/next@14.2.9-fork.2(@babel/core@7.26.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)' - node-polyfill-webpack-plugin: 2.0.1(webpack@5.94.0(@swc/core@1.5.7)) + node-polyfill-webpack-plugin: 2.0.1(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) pnp-webpack-plugin: 1.7.0(typescript@5.7.2) postcss: 8.4.31 - postcss-loader: 8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)) + postcss-loader: 8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-refresh: 0.14.2 resolve-url-loader: 5.0.0 - sass-loader: 13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7)) + sass-loader: 13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) semver: 7.6.3 storybook: 8.4.4(prettier@3.4.2) - style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7)) + style-loader: 3.3.4(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) styled-jsx: 5.1.6(@babel/core@7.26.0)(react@18.3.1) ts-dedent: 2.2.0 tsconfig-paths: 4.2.0 @@ -23898,7 +23898,7 @@ snapshots: optionalDependencies: sharp: 0.33.3 typescript: 5.7.2 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) transitivePeerDependencies: - '@rspack/core' - '@swc/core' @@ -23918,11 +23918,11 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/preset-react-webpack@8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7)(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': + '@storybook/preset-react-webpack@8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': dependencies: '@storybook/core-webpack': 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@storybook/react': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) '@types/node': 22.5.5 '@types/semver': 7.5.8 find-up: 5.0.0 @@ -23934,7 +23934,7 @@ snapshots: semver: 7.6.3 storybook: 8.4.4(prettier@3.4.2) tsconfig-paths: 4.2.0 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: @@ -23945,11 +23945,11 @@ snapshots: - uglify-js - webpack-cli - '@storybook/preset-react-webpack@8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': + '@storybook/preset-react-webpack@8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(@swc/core@1.5.7(@swc/helpers@0.5.15))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2)': dependencies: '@storybook/core-webpack': 8.4.4(storybook@8.4.4(prettier@3.4.2)) '@storybook/react': 8.4.4(@storybook/test@8.4.4(storybook@8.4.4(prettier@3.4.2)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.4(prettier@3.4.2))(typescript@5.7.2) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) '@types/node': 22.5.5 '@types/semver': 7.5.8 find-up: 5.0.0 @@ -23961,7 +23961,7 @@ snapshots: semver: 7.6.3 storybook: 8.4.4(prettier@3.4.2) tsconfig-paths: 4.2.0 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) optionalDependencies: typescript: 5.7.2 transitivePeerDependencies: @@ -23993,7 +23993,7 @@ snapshots: dependencies: storybook: 8.4.4(prettier@3.4.2) - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2))': dependencies: debug: 4.3.7 endent: 2.1.0 @@ -24003,11 +24003,11 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.7.2) tslib: 2.8.1 typescript: 5.7.2 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) transitivePeerDependencies: - supports-color - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)))': dependencies: debug: 4.3.7 endent: 2.1.0 @@ -24017,7 +24017,7 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.7.2) tslib: 2.8.1 typescript: 5.7.2 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) transitivePeerDependencies: - supports-color @@ -24117,7 +24117,7 @@ snapshots: '@swc/core-win32-x64-msvc@1.5.7': optional: true - '@swc/core@1.5.7': + '@swc/core@1.5.7(@swc/helpers@0.5.15)': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.7 @@ -24132,6 +24132,7 @@ snapshots: '@swc/core-win32-arm64-msvc': 1.5.7 '@swc/core-win32-ia32-msvc': 1.5.7 '@swc/core-win32-x64-msvc': 1.5.7 + '@swc/helpers': 0.5.15 optional: true '@swc/counter@0.1.3': {} @@ -24154,18 +24155,26 @@ snapshots: dependencies: defer-to-connect: 2.0.1 - '@tailwindcss/forms@0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)))': + '@tailwindcss/forms@0.5.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)))': dependencies: mini-svg-data-uri: 1.4.4 - tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) + + '@tailwindcss/typography@0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)))': + dependencies: + lodash.castarray: 4.4.0 + lodash.isplainobject: 4.0.6 + lodash.merge: 4.6.2 + postcss-selector-parser: 6.0.10 + tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) - '@tailwindcss/typography@0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)))': + '@tailwindcss/typography@0.5.13(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2)))': dependencies: lodash.castarray: 4.4.0 lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2)) '@tanem/svg-injector@10.1.68': dependencies: @@ -26568,19 +26577,19 @@ snapshots: transitivePeerDependencies: - supports-color - babel-loader@9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + babel-loader@9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: '@babel/core': 7.26.0 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - babel-loader@9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7)): + babel-loader@9.1.3(@babel/core@7.26.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: '@babel/core': 7.26.0 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) babel-plugin-istanbul@6.1.1: dependencies: @@ -27382,13 +27391,13 @@ snapshots: safe-buffer: 5.2.1 sha.js: 2.4.11 - create-jest@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + create-jest@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + jest-config: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -27435,7 +27444,7 @@ snapshots: css-functions-list@3.2.2: {} - css-loader@6.11.0(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + css-loader@6.11.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: icss-utils: 5.1.0(postcss@8.4.31) postcss: 8.4.31 @@ -27446,9 +27455,9 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - css-loader@6.11.0(webpack@5.94.0(@swc/core@1.5.7)): + css-loader@6.11.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: icss-utils: 5.1.0(postcss@8.4.31) postcss: 8.4.31 @@ -27459,7 +27468,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) css-select@4.3.0: dependencies: @@ -28446,8 +28455,8 @@ snapshots: '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2) eslint: 9.17.0(jiti@1.21.7) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@1.21.7)) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@9.17.0(jiti@1.21.7)) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.17.0(jiti@1.21.7)) eslint-plugin-react: 7.37.2(eslint@9.17.0(jiti@1.21.7)) eslint-plugin-react-hooks: 5.1.0(eslint@9.17.0(jiti@1.21.7)) @@ -28475,7 +28484,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@1.21.7)): + eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.3.7 @@ -28487,18 +28496,18 @@ snapshots: is-glob: 4.0.3 stable-hash: 0.0.4 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@9.17.0(jiti@1.21.7)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2) eslint: 9.17.0(jiti@1.21.7) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@1.21.7)) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)) transitivePeerDependencies: - supports-color @@ -28512,7 +28521,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@9.17.0(jiti@1.21.7)): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -28523,7 +28532,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.17.0(jiti@1.21.7) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@1.21.7))(typescript@5.7.2))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)))(eslint@9.17.0(jiti@1.21.7)) hasown: 2.0.2 is-core-module: 2.16.0 is-glob: 4.0.3 @@ -28597,11 +28606,11 @@ snapshots: - supports-color - typescript - eslint-plugin-tailwindcss@3.17.5(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))): + eslint-plugin-tailwindcss@3.17.5(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))): dependencies: fast-glob: 3.3.2 postcss: 8.4.31 - tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) eslint-plugin-turbo@2.3.3(eslint@9.17.0(jiti@1.21.7)): dependencies: @@ -29142,7 +29151,7 @@ snapshots: cross-spawn: 7.0.5 signal-exit: 4.1.0 - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: '@babel/code-frame': 7.26.2 chalk: 4.1.2 @@ -29157,9 +29166,9 @@ snapshots: semver: 7.6.3 tapable: 2.2.1 typescript: 5.7.2 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: '@babel/code-frame': 7.26.2 chalk: 4.1.2 @@ -29174,7 +29183,7 @@ snapshots: semver: 7.6.3 tapable: 2.2.1 typescript: 5.7.2 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) form-data@2.5.1: dependencies: @@ -29871,7 +29880,7 @@ snapshots: html-void-elements@3.0.0: {} - html-webpack-plugin@5.6.0(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + html-webpack-plugin@5.6.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -29879,9 +29888,9 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - html-webpack-plugin@5.6.0(webpack@5.94.0(@swc/core@1.5.7)): + html-webpack-plugin@5.6.0(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -29889,7 +29898,7 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) htmlparser2@6.1.0: dependencies: @@ -30520,16 +30529,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + jest-cli@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + create-jest: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + jest-config: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -30539,7 +30548,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + jest-config@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): dependencies: '@babel/core': 7.26.0 '@jest/test-sequencer': 29.7.0 @@ -30565,12 +30574,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 18.19.33 - ts-node: 10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2) + ts-node: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@20.12.12)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + jest-config@29.7.0(@types/node@20.12.12)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): dependencies: '@babel/core': 7.26.0 '@jest/test-sequencer': 29.7.0 @@ -30596,7 +30605,7 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.12.12 - ts-node: 10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2) + ts-node: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -30822,12 +30831,12 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + jest@29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + jest-cli: 29.7.0(@types/node@18.19.33)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -32414,7 +32423,7 @@ snapshots: node-int64@0.4.0: {} - node-polyfill-webpack-plugin@2.0.1(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + node-polyfill-webpack-plugin@2.0.1(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -32441,9 +32450,9 @@ snapshots: url: 0.11.3 util: 0.12.5 vm-browserify: 1.1.2 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - node-polyfill-webpack-plugin@2.0.1(webpack@5.94.0(@swc/core@1.5.7)): + node-polyfill-webpack-plugin@2.0.1(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -32470,7 +32479,7 @@ snapshots: url: 0.11.3 util: 0.12.5 vm-browserify: 1.1.2 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) node-releases@2.0.18: {} @@ -33008,21 +33017,29 @@ snapshots: camelcase-css: 2.0.1 postcss: 8.4.31 - postcss-load-config@3.1.4(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + postcss-load-config@3.1.4(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): dependencies: lilconfig: 2.1.0 yaml: 1.10.2 optionalDependencies: postcss: 8.4.31 - ts-node: 10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2) + ts-node: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2) - postcss-load-config@4.0.2(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + postcss-load-config@4.0.2(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): dependencies: lilconfig: 3.1.3 yaml: 2.4.2 optionalDependencies: postcss: 8.4.31 - ts-node: 10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2) + ts-node: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2) + + postcss-load-config@4.0.2(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2)): + dependencies: + lilconfig: 3.1.3 + yaml: 2.4.2 + optionalDependencies: + postcss: 8.4.31 + ts-node: 10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2) postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.4.31)(tsx@4.19.2)(yaml@2.7.0): dependencies: @@ -33033,25 +33050,25 @@ snapshots: tsx: 4.19.2 yaml: 2.7.0 - postcss-loader@8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + postcss-loader@8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: cosmiconfig: 9.0.0(typescript@5.7.2) jiti: 1.21.0 postcss: 8.4.31 semver: 7.6.3 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) transitivePeerDependencies: - typescript - postcss-loader@8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7)): + postcss-loader@8.1.1(postcss@8.4.31)(typescript@5.7.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: cosmiconfig: 9.0.0(typescript@5.7.2) jiti: 1.21.0 postcss: 8.4.31 semver: 7.6.3 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) transitivePeerDependencies: - typescript @@ -33442,17 +33459,17 @@ snapshots: iconv-lite: 0.4.24 unpipe: 1.0.0 - raw-loader@4.0.2(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + raw-loader@4.0.2(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - raw-loader@4.0.2(webpack@5.94.0(@swc/core@1.5.7)): + raw-loader@4.0.2(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) rc@1.2.8: dependencies: @@ -34239,17 +34256,17 @@ snapshots: safer-buffer@2.1.2: {} - sass-loader@13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + sass-loader@13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: neo-async: 2.6.2 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) optionalDependencies: sass: 1.77.0 - sass-loader@13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7)): + sass-loader@13.3.3(sass@1.77.0)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: neo-async: 2.6.2 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) optionalDependencies: sass: 1.77.0 @@ -34896,13 +34913,13 @@ snapshots: '@tokenizer/token': 0.3.0 peek-readable: 4.1.0 - style-loader@3.3.4(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + style-loader@3.3.4(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - style-loader@3.3.4(webpack@5.94.0(@swc/core@1.5.7)): + style-loader@3.3.4(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) style-to-js@1.1.3: dependencies: @@ -34973,10 +34990,10 @@ snapshots: stylelint: 16.5.0(typescript@5.7.2) stylelint-config-recommended: 14.0.0(stylelint@16.5.0(typescript@5.7.2)) - stylelint-config-tailwindcss@0.0.7(stylelint@16.5.0(typescript@5.7.2))(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))): + stylelint-config-tailwindcss@0.0.7(stylelint@16.5.0(typescript@5.7.2))(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))): dependencies: stylelint: 16.5.0(typescript@5.7.2) - tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) stylelint-scss@6.3.0(stylelint@16.5.0(typescript@5.7.2)): dependencies: @@ -35153,11 +35170,38 @@ snapshots: dependencies: '@babel/runtime': 7.26.0 - tailwindcss-animate@1.0.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))): + tailwindcss-animate@1.0.7(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2))): dependencies: - tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + tailwindcss: 3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2)) + + tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)): + dependencies: + '@alloc/quick-lru': 5.2.0 + arg: 5.0.2 + chokidar: 3.6.0 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.3.2 + glob-parent: 6.0.2 + is-glob: 4.0.3 + jiti: 1.21.7 + lilconfig: 3.1.3 + micromatch: 4.0.8 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.1.1 + postcss: 8.4.31 + postcss-import: 15.1.0(postcss@8.4.31) + postcss-js: 4.0.1(postcss@8.4.31) + postcss-load-config: 4.0.2(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) + postcss-nested: 6.2.0(postcss@8.4.31) + postcss-selector-parser: 6.1.2 + resolve: 1.22.8 + sucrase: 3.35.0 + transitivePeerDependencies: + - ts-node - tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)): + tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -35176,7 +35220,7 @@ snapshots: postcss: 8.4.31 postcss-import: 15.1.0(postcss@8.4.31) postcss-js: 4.0.1(postcss@8.4.31) - postcss-load-config: 4.0.2(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + postcss-load-config: 4.0.2(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2)) postcss-nested: 6.2.0(postcss@8.4.31) postcss-selector-parser: 6.1.2 resolve: 1.22.8 @@ -35223,28 +35267,28 @@ snapshots: dependencies: memoizerific: 1.11.3 - terser-webpack-plugin@5.3.10(@swc/core@1.5.7)(esbuild@0.24.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + terser-webpack-plugin@5.3.10(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) optionalDependencies: - '@swc/core': 1.5.7 + '@swc/core': 1.5.7(@swc/helpers@0.5.15) esbuild: 0.24.2 - terser-webpack-plugin@5.3.10(@swc/core@1.5.7)(webpack@5.94.0(@swc/core@1.5.7)): + terser-webpack-plugin@5.3.10(@swc/core@1.5.7(@swc/helpers@0.5.15))(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) optionalDependencies: - '@swc/core': 1.5.7 + '@swc/core': 1.5.7(@swc/helpers@0.5.15) terser@5.31.0: dependencies: @@ -35456,7 +35500,7 @@ snapshots: '@ts-morph/common': 0.20.0 code-block-writer: 12.0.0 - ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2): + ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -35474,7 +35518,28 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: - '@swc/core': 1.5.7 + '@swc/core': 1.5.7(@swc/helpers@0.5.15) + + ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@22.5.5)(typescript@5.7.2): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 22.5.5 + acorn: 8.14.0 + acorn-walk: 8.3.2 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.7.2 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + optionalDependencies: + '@swc/core': 1.5.7(@swc/helpers@0.5.15) + optional: true ts-pattern@5.0.5: {} @@ -35515,7 +35580,7 @@ snapshots: tslib@2.8.1: {} - tsup@8.3.5(@swc/core@1.5.7)(jiti@1.21.7)(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.7.0): + tsup@8.3.5(@swc/core@1.5.7(@swc/helpers@0.5.15))(jiti@1.21.7)(postcss@8.4.31)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.7.0): dependencies: bundle-require: 5.0.0(esbuild@0.24.2) cac: 6.7.14 @@ -35534,7 +35599,7 @@ snapshots: tinyglobby: 0.2.10 tree-kill: 1.2.2 optionalDependencies: - '@swc/core': 1.5.7 + '@swc/core': 1.5.7(@swc/helpers@0.5.15) postcss: 8.4.31 typescript: 5.7.2 transitivePeerDependencies: @@ -35692,7 +35757,7 @@ snapshots: transitivePeerDependencies: - supports-color - typescript-plugin-css-modules@5.1.0(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2))(typescript@5.7.2): + typescript-plugin-css-modules@5.1.0(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2))(typescript@5.7.2): dependencies: '@types/postcss-modules-local-by-default': 4.0.2 '@types/postcss-modules-scope': 3.0.4 @@ -35701,7 +35766,7 @@ snapshots: less: 4.2.0 lodash.camelcase: 4.3.0 postcss: 8.4.31 - postcss-load-config: 3.1.4(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7)(@types/node@18.19.33)(typescript@5.7.2)) + postcss-load-config: 3.1.4(postcss@8.4.31)(ts-node@10.9.2(@swc/core@1.5.7(@swc/helpers@0.5.15))(@types/node@18.19.33)(typescript@5.7.2)) postcss-modules-extract-imports: 3.1.0(postcss@8.4.31) postcss-modules-local-by-default: 4.0.5(postcss@8.4.31) postcss-modules-scope: 3.2.0(postcss@8.4.31) @@ -36295,7 +36360,7 @@ snapshots: - bufferutil - utf-8-validate - webpack-dev-middleware@6.1.3(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)): + webpack-dev-middleware@6.1.3(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -36303,9 +36368,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7)(esbuild@0.24.2) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2) - webpack-dev-middleware@6.1.3(webpack@5.94.0(@swc/core@1.5.7)): + webpack-dev-middleware@6.1.3(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -36313,7 +36378,7 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.94.0(@swc/core@1.5.7) + webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)) webpack-hot-middleware@2.26.1: dependencies: @@ -36325,7 +36390,7 @@ snapshots: webpack-virtual-modules@0.6.2: {} - webpack@5.94.0(@swc/core@1.5.7): + webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15)): dependencies: '@types/estree': 1.0.6 '@webassemblyjs/ast': 1.12.1 @@ -36347,7 +36412,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.5.7)(webpack@5.94.0(@swc/core@1.5.7)) + terser-webpack-plugin: 5.3.10(@swc/core@1.5.7(@swc/helpers@0.5.15))(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -36355,7 +36420,7 @@ snapshots: - esbuild - uglify-js - webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2): + webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2): dependencies: '@types/estree': 1.0.6 '@webassemblyjs/ast': 1.12.1 @@ -36377,7 +36442,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.5.7)(esbuild@0.24.2)(webpack@5.94.0(@swc/core@1.5.7)(esbuild@0.24.2)) + terser-webpack-plugin: 5.3.10(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.15))(esbuild@0.24.2)) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: From 94407251ee064f30e24d6fc3cf2d91948984e190 Mon Sep 17 00:00:00 2001 From: dsinghvi Date: Thu, 6 Feb 2025 09:45:21 -0500 Subject: [PATCH 3/6] add a test for curl snippets --- .../src/api-definition/snippets/curl.test.ts | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/packages/fdr-sdk/src/api-definition/snippets/curl.test.ts b/packages/fdr-sdk/src/api-definition/snippets/curl.test.ts index aeea47d60d..a197d018b9 100644 --- a/packages/fdr-sdk/src/api-definition/snippets/curl.test.ts +++ b/packages/fdr-sdk/src/api-definition/snippets/curl.test.ts @@ -320,4 +320,35 @@ describe("curl", () => { }'" `); }); + + it("generates request with exploded form parameters", () => { + expect( + convertToCurl( + { + method: "POST", + url: "https://api.example.com/upload", + headers: { + "Content-Type": "multipart/form-data", + }, + searchParams: {}, + body: { + type: "form", + value: { + tags: { + type: "exploded", + value: ["tag1", "tag2", "tag3"], + }, + }, + }, + }, + { usesApplicationJsonInFormDataValue: false } + ) + ).toMatchInlineSnapshot(` + "curl -X POST https://api.example.com/upload \\ + -H "Content-Type: multipart/form-data" \\ + -F tags="tag1" \\ + -F tags="tag2" \\ + -F tags="tag3"" + `); + }); }); From d33f4ea6c6d177a48b51308d3463d668f87d033b Mon Sep 17 00:00:00 2001 From: dsinghvi Date: Thu, 6 Feb 2025 09:56:08 -0500 Subject: [PATCH 4/6] add tests --- .../src/api-definition/snippets/curl.ts | 8 +- .../utils/__test__/serialize.test.ts | 108 ++++++++++++++++++ .../ui/src/playground/utils/serialize.ts | 25 +++- 3 files changed, 134 insertions(+), 7 deletions(-) create mode 100644 packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts diff --git a/packages/fdr-sdk/src/api-definition/snippets/curl.ts b/packages/fdr-sdk/src/api-definition/snippets/curl.ts index 33106cf894..6ce8654eae 100644 --- a/packages/fdr-sdk/src/api-definition/snippets/curl.ts +++ b/packages/fdr-sdk/src/api-definition/snippets/curl.ts @@ -172,9 +172,13 @@ function getBodyFormValueString( return getBodyFormValueFilenameString(value, key); case "filenames": return getBodyFormValueFilenamesStrings(value, key); - case "exploded": + case "exploded": return (value.value ?? []).flatMap((item) => - getBodyFormValueJsonString(item, key, usesApplicationJsonInFormDataValue) + getBodyFormValueJsonString( + item, + key, + usesApplicationJsonInFormDataValue + ) ); default: throw new UnreachableCaseError(value); diff --git a/packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts b/packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts new file mode 100644 index 0000000000..186ee7e1cf --- /dev/null +++ b/packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts @@ -0,0 +1,108 @@ +import { + HttpRequestBodyShape, + PropertyKey, + TypeShape, +} from "@fern-api/fdr-sdk/api-definition"; +import { PlaygroundFormStateBody } from "../../types"; +import { serializeFormStateBody } from "../serialize"; + +const STRING_VALUE_SHAPE: TypeShape = { + type: "alias", + value: { + type: "primitive", + value: { + type: "string", + format: undefined, + regex: undefined, + minLength: undefined, + maxLength: undefined, + default: undefined, + }, + }, +}; + +describe("serializeFormStateBody", () => { + it("handles exploded form data parameters", async () => { + const shape: HttpRequestBodyShape = { + type: "formData", + fields: [ + { + type: "property", + key: PropertyKey("tags"), + description: undefined, + availability: undefined, + valueShape: STRING_VALUE_SHAPE, + exploded: true, + contentType: "application/json", + }, + ], + description: undefined, + availability: undefined, + }; + + const body: PlaygroundFormStateBody = { + type: "form-data", + value: { + tags: { + type: "json", + value: ["tag1", "tag2", "tag3"], + }, + }, + }; + + const result = await serializeFormStateBody(shape, body, true); + + expect(result).toEqual({ + type: "form-data", + value: { + tags: { + type: "json", + value: ["tag1", "tag2", "tag3"], + contentType: "application/json", + }, + }, + }); + }); + + it("converts single value to array for exploded parameters", async () => { + const shape: HttpRequestBodyShape = { + type: "formData", + fields: [ + { + type: "property", + key: PropertyKey("tag"), + valueShape: STRING_VALUE_SHAPE, + exploded: true, + contentType: "application/json", + description: undefined, + availability: undefined, + }, + ], + description: undefined, + availability: undefined, + }; + + const body: PlaygroundFormStateBody = { + type: "form-data", + value: { + tag: { + type: "json", + value: "single-tag", + }, + }, + }; + + const result = await serializeFormStateBody(shape, body, true); + + expect(result).toEqual({ + type: "form-data", + value: { + tag: { + type: "json", + value: ["single-tag"], + contentType: "application/json", + }, + }, + }); + }); +}); diff --git a/packages/fern-docs/ui/src/playground/utils/serialize.ts b/packages/fern-docs/ui/src/playground/utils/serialize.ts index 4dd6a0a27a..0990da6c5d 100644 --- a/packages/fern-docs/ui/src/playground/utils/serialize.ts +++ b/packages/fern-docs/ui/src/playground/utils/serialize.ts @@ -53,6 +53,25 @@ export async function serializeFormStateBody( p.key === key && p.type === "property" ); + const contentType = + compact(flatten([property?.contentType]))[0] ?? + (usesApplicationJsonInFormDataValue + ? "application/json" + : undefined); + + if (property?.exploded) { + // For exploded form fields, convert value to array if not already + const arrayValue = Array.isArray(value.value) + ? value.value + : [value.value]; + formDataValue[key] = { + type: "json", + value: arrayValue, + contentType, + }; + break; + } + // check if the json value is a string and performa a safe parse operation to check if the json is stringified if (typeof value.value === "string") { value.value = safeParse(value.value); @@ -62,11 +81,7 @@ export async function serializeFormStateBody( ...value, // this is a hack to allow the API Playground to send JSON blobs in form data // revert this once we have a better solution - contentType: - compact(flatten([property?.contentType]))[0] ?? - (usesApplicationJsonInFormDataValue - ? "application/json" - : undefined), + contentType, }; break; } From 5a7377499ba65a283b8eb45e048e1ec1fa90f510 Mon Sep 17 00:00:00 2001 From: dsinghvi Date: Thu, 6 Feb 2025 10:07:17 -0500 Subject: [PATCH 5/6] fix compile --- packages/template-resolver/src/__test__/union.ts | 1 + .../src/__test__/unit-tests/assets/imdbApiDefinition.ts | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/packages/template-resolver/src/__test__/union.ts b/packages/template-resolver/src/__test__/union.ts index 374576ecba..757156265c 100644 --- a/packages/template-resolver/src/__test__/union.ts +++ b/packages/template-resolver/src/__test__/union.ts @@ -46,6 +46,7 @@ export const UNIONS_SNIPPET: FernRegistry.EndpointSnippetTemplate = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, minLength: undefined, maxLength: undefined, diff --git a/packages/template-resolver/src/__test__/unit-tests/assets/imdbApiDefinition.ts b/packages/template-resolver/src/__test__/unit-tests/assets/imdbApiDefinition.ts index 187103856c..04f4c2a909 100644 --- a/packages/template-resolver/src/__test__/unit-tests/assets/imdbApiDefinition.ts +++ b/packages/template-resolver/src/__test__/unit-tests/assets/imdbApiDefinition.ts @@ -12,6 +12,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, @@ -44,6 +45,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, @@ -85,6 +87,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, @@ -100,6 +103,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, @@ -141,6 +145,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, @@ -156,6 +161,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, @@ -194,6 +200,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, @@ -256,6 +263,7 @@ export const IMDB_API_DEFINITION: FernRegistry.api.v1.read.ApiDefinition = { type: "primitive", value: { type: "string", + format: undefined, regex: undefined, default: undefined, minLength: undefined, From 5c0753049a0272ab2dbffc45d87b2aaabd529cd3 Mon Sep 17 00:00:00 2001 From: dsinghvi Date: Thu, 6 Feb 2025 11:04:06 -0500 Subject: [PATCH 6/6] fix --- .../fetch-utils/requestToBodyInit.ts | 20 +++++++++++++++++++ .../ui/src/playground/types/serializable.ts | 7 +++++++ .../utils/__test__/serialize.test.ts | 4 ++-- .../ui/src/playground/utils/serialize.ts | 2 +- 4 files changed, 30 insertions(+), 3 deletions(-) diff --git a/packages/fern-docs/ui/src/playground/fetch-utils/requestToBodyInit.ts b/packages/fern-docs/ui/src/playground/fetch-utils/requestToBodyInit.ts index 6072a89764..19b3bff432 100644 --- a/packages/fern-docs/ui/src/playground/fetch-utils/requestToBodyInit.ts +++ b/packages/fern-docs/ui/src/playground/fetch-utils/requestToBodyInit.ts @@ -51,6 +51,26 @@ export async function toBodyInit( } } break; + case "exploded": + for (const item of value.value) { + if (item === undefined) { + continue; + } + if (value.contentType === "application/json") { + formData.append( + key, + new Blob([JSON.stringify(item)], { + type: "application/json", + }) + ); + } else { + const finalValue = + typeof item === "string" ? item : JSON.stringify(item); + + formData.append(key, finalValue); + } + } + break; default: console.error(new UnreachableCaseError(value)); break; diff --git a/packages/fern-docs/ui/src/playground/types/serializable.ts b/packages/fern-docs/ui/src/playground/types/serializable.ts index 9abe0d5dbc..cdcf63113b 100644 --- a/packages/fern-docs/ui/src/playground/types/serializable.ts +++ b/packages/fern-docs/ui/src/playground/types/serializable.ts @@ -33,10 +33,17 @@ export const SerializableJsonSchema = z.object({ .optional(), }); +export const SerializableExplodedJsonSchema = z.object({ + type: z.literal("exploded"), + value: z.array(z.unknown()), + contentType: z.string().optional(), +}); + export const SerializableFormDataEntryValueSchema = z.union([ SerializableSingleFileSchema, SerializableMultipleFilesSchema, SerializableJsonSchema, + SerializableExplodedJsonSchema, ]); export type SerializableFormDataEntryValue = z.infer< diff --git a/packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts b/packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts index 186ee7e1cf..7f0f1931bc 100644 --- a/packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts +++ b/packages/fern-docs/ui/src/playground/utils/__test__/serialize.test.ts @@ -56,7 +56,7 @@ describe("serializeFormStateBody", () => { type: "form-data", value: { tags: { - type: "json", + type: "exploded", value: ["tag1", "tag2", "tag3"], contentType: "application/json", }, @@ -98,7 +98,7 @@ describe("serializeFormStateBody", () => { type: "form-data", value: { tag: { - type: "json", + type: "exploded", value: ["single-tag"], contentType: "application/json", }, diff --git a/packages/fern-docs/ui/src/playground/utils/serialize.ts b/packages/fern-docs/ui/src/playground/utils/serialize.ts index 0990da6c5d..9575118d68 100644 --- a/packages/fern-docs/ui/src/playground/utils/serialize.ts +++ b/packages/fern-docs/ui/src/playground/utils/serialize.ts @@ -65,7 +65,7 @@ export async function serializeFormStateBody( ? value.value : [value.value]; formDataValue[key] = { - type: "json", + type: "exploded", value: arrayValue, contentType, };