From adab279e569186eee15bc3a23787b03dcbcb367b Mon Sep 17 00:00:00 2001 From: Marcel Konrad Date: Thu, 11 Jun 2026 11:46:36 +0200 Subject: [PATCH 1/2] Replace equality check with startsWith call --- .../src/main/resources/typescript-fetch/runtime.mustache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache b/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache index 00ca3b3ee0ac..88574cad021d 100644 --- a/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache @@ -361,7 +361,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } From 9a9ca47dbd79d41d7116d0417dd63938ca87b8dc Mon Sep 17 00:00:00 2001 From: Marcel Konrad Date: Thu, 11 Jun 2026 11:50:17 +0200 Subject: [PATCH 2/2] Update examples --- .../additional-properties-in-multipart-issue/runtime.ts | 2 +- .../others/typescript-fetch/infinite-recursion-issue/runtime.ts | 2 +- .../client/others/typescript-fetch/self-import-issue/runtime.ts | 2 +- .../petstore/typescript-fetch/builds/allOf-nullable/runtime.ts | 2 +- .../petstore/typescript-fetch/builds/allOf-readonly/runtime.ts | 2 +- .../petstore/typescript-fetch/builds/default-v3.0/runtime.ts | 2 +- .../client/petstore/typescript-fetch/builds/default/runtime.ts | 2 +- samples/client/petstore/typescript-fetch/builds/enum/runtime.ts | 2 +- .../petstore/typescript-fetch/builds/es6-target/src/runtime.ts | 2 +- .../typescript-fetch/builds/multiple-parameters/runtime.ts | 2 +- .../client/petstore/typescript-fetch/builds/oneOf/runtime.ts | 2 +- .../builds/prefix-parameter-interfaces/src/runtime.ts | 2 +- .../typescript-fetch/builds/sagas-and-records/src/runtime.ts | 2 +- .../typescript-fetch/builds/snakecase-discriminator/runtime.ts | 2 +- .../typescript-fetch/builds/validation-attributes/runtime.ts | 2 +- .../petstore/typescript-fetch/builds/with-interfaces/runtime.ts | 2 +- .../typescript-fetch/builds/with-npm-version/src/runtime.ts | 2 +- .../typescript-fetch/builds/with-string-enums/runtime.ts | 2 +- .../builds/without-runtime-checks/src/runtime.ts | 2 +- 19 files changed, 19 insertions(+), 19 deletions(-) diff --git a/samples/client/others/typescript-fetch/additional-properties-in-multipart-issue/runtime.ts b/samples/client/others/typescript-fetch/additional-properties-in-multipart-issue/runtime.ts index 3d76171ffb1b..5ff28bda9b85 100644 --- a/samples/client/others/typescript-fetch/additional-properties-in-multipart-issue/runtime.ts +++ b/samples/client/others/typescript-fetch/additional-properties-in-multipart-issue/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/others/typescript-fetch/infinite-recursion-issue/runtime.ts b/samples/client/others/typescript-fetch/infinite-recursion-issue/runtime.ts index 3d76171ffb1b..5ff28bda9b85 100644 --- a/samples/client/others/typescript-fetch/infinite-recursion-issue/runtime.ts +++ b/samples/client/others/typescript-fetch/infinite-recursion-issue/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/others/typescript-fetch/self-import-issue/runtime.ts b/samples/client/others/typescript-fetch/self-import-issue/runtime.ts index 28a75aaa78bc..0fdb285eb3e3 100644 --- a/samples/client/others/typescript-fetch/self-import-issue/runtime.ts +++ b/samples/client/others/typescript-fetch/self-import-issue/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/allOf-nullable/runtime.ts b/samples/client/petstore/typescript-fetch/builds/allOf-nullable/runtime.ts index 7999e6060c25..d026886681df 100644 --- a/samples/client/petstore/typescript-fetch/builds/allOf-nullable/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/allOf-nullable/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/allOf-readonly/runtime.ts b/samples/client/petstore/typescript-fetch/builds/allOf-readonly/runtime.ts index 7999e6060c25..d026886681df 100644 --- a/samples/client/petstore/typescript-fetch/builds/allOf-readonly/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/allOf-readonly/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts b/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts index 750df2544f71..a37b33ee1f0c 100644 --- a/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/default/runtime.ts b/samples/client/petstore/typescript-fetch/builds/default/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/default/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/default/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts b/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts index 57a7edbddbbf..b21f204f79d0 100644 --- a/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/oneOf/runtime.ts b/samples/client/petstore/typescript-fetch/builds/oneOf/runtime.ts index 58da18194286..b6e077dfda49 100644 --- a/samples/client/petstore/typescript-fetch/builds/oneOf/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/oneOf/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/sagas-and-records/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/sagas-and-records/src/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/sagas-and-records/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/sagas-and-records/src/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/snakecase-discriminator/runtime.ts b/samples/client/petstore/typescript-fetch/builds/snakecase-discriminator/runtime.ts index 750df2544f71..a37b33ee1f0c 100644 --- a/samples/client/petstore/typescript-fetch/builds/snakecase-discriminator/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/snakecase-discriminator/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/validation-attributes/runtime.ts b/samples/client/petstore/typescript-fetch/builds/validation-attributes/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/validation-attributes/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/validation-attributes/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts index 74e3e02cb684..54253e345bd3 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/with-string-enums/runtime.ts b/samples/client/petstore/typescript-fetch/builds/with-string-enums/runtime.ts index 57a7edbddbbf..b21f204f79d0 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-string-enums/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-string-enums/runtime.ts @@ -369,7 +369,7 @@ export function mapValues(data: any, fn: (item: any) => any) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } } diff --git a/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts index eec469e2c33f..45dfc650f077 100644 --- a/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts @@ -362,7 +362,7 @@ export function exists(json: any, key: string) { export function canConsumeForm(consumes: Consume[]): boolean { for (const consume of consumes) { - if ('multipart/form-data' === consume.contentType) { + if (consume.contentType?.startsWith('multipart/form-data') == true) { return true; } }