From c8abebaf5a16feee710522cd30e223fcda648cd6 Mon Sep 17 00:00:00 2001 From: Nikolas Rimikis Date: Wed, 19 Apr 2023 10:52:00 +0200 Subject: [PATCH] fix discriminator types --- packages/dynamite/lib/src/openapi_builder.dart | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/dynamite/lib/src/openapi_builder.dart b/packages/dynamite/lib/src/openapi_builder.dart index 3337f9f5..0fab86be 100644 --- a/packages/dynamite/lib/src/openapi_builder.dart +++ b/packages/dynamite/lib/src/openapi_builder.dart @@ -1770,6 +1770,11 @@ TypeResult resolveType( 'result.${fields[result.name]!} = ${result.deserialize('data', toBuilder: true)};', ], ] else ...[ + if (schema.discriminator != null) ...[ + 'if (data is! Map) {', + "throw StateError('discriminator is only supported for serializing Json like data.');", + '}', + ], for (final result in results) ...[ if (schema.discriminator != null) ...[ "if (data['${schema.discriminator!.propertyName}'] == '${result.name.replaceFirst(state.prefix, '')}'",