[REQ][dart] Dart full OAS3 support
This is an epic to track remaining work for full dart/dart-dio OAS3 support.
General:
-
OAS3 fake petstore contains a model called File. This is generated as a separate model in the Go client but asjava.io.Filein Java/Kotlin. It should probably be a separate model. Currently this leads to compile errors. (addressed by https://github.com/OpenAPITools/openapi-generator/pull/8198)
Dart:
-
There are problems regarding deserialization of maps, de-serialization code is trying to call Map.mapFromJson. There are open issues for this and the problem is now evident in the generated fake petstore. Related issues: https://github.com/OpenAPITools/openapi-generator/issues/8029 -
De-serialization of maps of maps e.g. Map<String, Map<String, String>> -
De-serialization of maps of enums e.g. Map<String, Enum> -
De-serialization of list of list of model e.g. List<List<ReadOnlyFirst>> -
Support enums of type double, de-serialization via switch statement doesn't work here -
De-serialization of List<Object>tries to callObject.mapFromJson -
OAS3 fake petstore contains a model called Client, this conflict withhttp.Client(addressed by https://github.com/OpenAPITools/openapi-generator/pull/8198)
Dart-Dio:
-
Compile errors regarding header parameters of type boolandList, basically everything that is not aString(addressed by #8191)