forked from loafle/openapi-generator-original
* [dart-dio] Disable nullable fields by default This is not in line with the OAS and will prevent future Dart nullabilty features (NNBD) from being useful as all types would be optional. Users can still opt-in for this. * [dart-dio] Properties are nullable when not required AND not nullable * [dart][dart-dio] Support nullable/required fields * properties in built_value need to be nullable when they are nullable in OAS or when they are not required in OAS * built_value does not support serializing `null` values by default as it is based on a serialization format based on iterables/lists and not maps * dart-dio uses the built_value json plugin to convert the built_value format to regular json * by generating a custom serializer for each class we can add support for serializing `null` values if the property is required AND nullable in OAS * this is a breaking change as not all properties in the models are nullable by default anymore * Implement required/nullable for dart * Changes for set types and enum names after rebase * Add some comments and fix built_value fields with default being nullable * More rebase changes and regenerate docs
7.3 KiB
7.3 KiB
title | sidebar_label |
---|---|
Config Options for dart-dio | dart-dio |
These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to configuration docs for more details.
Option | Description | Values | Default |
---|---|---|---|
allowUnicodeIdentifiers | boolean, toggles whether unicode identifiers are allowed in names or not, default is false | false | |
dateLibrary | Option. Date library to use |
|
core |
disallowAdditionalPropertiesIfNotPresent | If false, the 'additionalProperties' implementation (set to true by default) is compliant with the OAS and JSON schema specifications. If true (default), keep the old (incorrect) behaviour that 'additionalProperties' is set to false by default. |
|
true |
ensureUniqueParams | Whether to ensure parameter names are unique in an operation (rename parameters that are not). | true | |
legacyDiscriminatorBehavior | Set to true for generators with better support for discriminators. (Python, Java, Go, PowerShell, C#have this enabled by default). |
|
true |
nullableFields | Make all fields nullable in the JSON payload | null | |
prependFormOrBodyParameters | Add form or body parameters to the beginning of the parameter list. | false | |
pubAuthor | Author name in generated pubspec | null | |
pubAuthorEmail | Email address of the author in generated pubspec | null | |
pubDescription | Description in generated pubspec | null | |
pubHomepage | Homepage in generated pubspec | null | |
pubLibrary | Library name in generated code | null | |
pubName | Name in generated pubspec | null | |
pubVersion | Version in generated pubspec | null | |
sortModelPropertiesByRequiredFlag | Sort model properties to place required parameters before optional parameters. | true | |
sortParamsByRequiredFlag | Sort method arguments to place required parameters before optional parameters. | true | |
sourceFolder | Source folder for generated code | null | |
useEnumExtension | Allow the 'x-enum-values' extension for enums | null |
IMPORT MAPPING
Type/Alias | Imports |
---|---|
BuiltList | package:built_collection/built_collection.dart |
BuiltMap | package:built_collection/built_collection.dart |
BuiltSet | package:built_collection/built_collection.dart |
JsonObject | package:built_value/json_object.dart |
Uint8List | dart:typed_data |
INSTANTIATION TYPES
Type/Alias | Instantiated By |
---|
LANGUAGE PRIMITIVES
- String
- bool
- double
- dynamic
- int
- num
RESERVED WORDS
- abstract
- as
- assert
- async
- await
- break
- case
- catch
- class
- const
- continue
- covariant
- default
- deferred
- do
- dynamic
- else
- enum
- export
- extends
- extension
- external
- factory
- false
- final
- finally
- for
- function
- get
- hide
- if
- implements
- import
- in
- inout
- interface
- is
- late
- library
- mixin
- native
- new
- null
- of
- on
- operator
- out
- part
- patch
- required
- rethrow
- return
- set
- show
- source
- static
- super
- switch
- sync
- this
- throw
- true
- try
- typedef
- var
- void
- while
- with
- yield
FEATURE SET
Client Modification Feature
Name | Supported | Defined By |
---|---|---|
BasePath | ✓ | ToolingExtension |
Authorizations | ✗ | ToolingExtension |
UserAgent | ✗ | ToolingExtension |
MockServer | ✗ | ToolingExtension |
Data Type Feature
Name | Supported | Defined By |
---|---|---|
Custom | ✗ | OAS2,OAS3 |
Int32 | ✓ | OAS2,OAS3 |
Int64 | ✓ | OAS2,OAS3 |
Float | ✓ | OAS2,OAS3 |
Double | ✓ | OAS2,OAS3 |
Decimal | ✓ | ToolingExtension |
String | ✓ | OAS2,OAS3 |
Byte | ✓ | OAS2,OAS3 |
Binary | ✓ | OAS2,OAS3 |
Boolean | ✓ | OAS2,OAS3 |
Date | ✓ | OAS2,OAS3 |
DateTime | ✓ | OAS2,OAS3 |
Password | ✓ | OAS2,OAS3 |
File | ✓ | OAS2 |
Array | ✓ | OAS2,OAS3 |
Maps | ✓ | ToolingExtension |
CollectionFormat | ✓ | OAS2 |
CollectionFormatMulti | ✓ | OAS2 |
Enum | ✓ | OAS2,OAS3 |
ArrayOfEnum | ✓ | ToolingExtension |
ArrayOfModel | ✓ | ToolingExtension |
ArrayOfCollectionOfPrimitives | ✓ | ToolingExtension |
ArrayOfCollectionOfModel | ✓ | ToolingExtension |
ArrayOfCollectionOfEnum | ✓ | ToolingExtension |
MapOfEnum | ✓ | ToolingExtension |
MapOfModel | ✓ | ToolingExtension |
MapOfCollectionOfPrimitives | ✓ | ToolingExtension |
MapOfCollectionOfModel | ✓ | ToolingExtension |
MapOfCollectionOfEnum | ✓ | ToolingExtension |
Documentation Feature
Name | Supported | Defined By |
---|---|---|
Readme | ✓ | ToolingExtension |
Model | ✓ | ToolingExtension |
Api | ✓ | ToolingExtension |
Global Feature
Name | Supported | Defined By |
---|---|---|
Host | ✓ | OAS2,OAS3 |
BasePath | ✓ | OAS2,OAS3 |
Info | ✓ | OAS2,OAS3 |
Schemes | ✗ | OAS2,OAS3 |
PartialSchemes | ✓ | OAS2,OAS3 |
Consumes | ✓ | OAS2 |
Produces | ✓ | OAS2 |
ExternalDocumentation | ✓ | OAS2,OAS3 |
Examples | ✓ | OAS2,OAS3 |
XMLStructureDefinitions | ✗ | OAS2,OAS3 |
MultiServer | ✗ | OAS3 |
ParameterizedServer | ✗ | OAS3 |
ParameterStyling | ✗ | OAS3 |
Callbacks | ✗ | OAS3 |
LinkObjects | ✗ | OAS3 |
Parameter Feature
Name | Supported | Defined By |
---|---|---|
Path | ✓ | OAS2,OAS3 |
Query | ✓ | OAS2,OAS3 |
Header | ✓ | OAS2,OAS3 |
Body | ✓ | OAS2 |
FormUnencoded | ✓ | OAS2 |
FormMultipart | ✓ | OAS2 |
Cookie | ✓ | OAS3 |
Schema Support Feature
Name | Supported | Defined By |
---|---|---|
Simple | ✓ | OAS2,OAS3 |
Composite | ✓ | OAS2,OAS3 |
Polymorphism | ✗ | OAS2,OAS3 |
Union | ✗ | OAS3 |
Security Feature
Name | Supported | Defined By |
---|---|---|
BasicAuth | ✓ | OAS2,OAS3 |
ApiKey | ✓ | OAS2,OAS3 |
OpenIDConnect | ✗ | OAS3 |
BearerToken | ✗ | OAS3 |
OAuth2_Implicit | ✓ | OAS2,OAS3 |
OAuth2_Password | ✗ | OAS2,OAS3 |
OAuth2_ClientCredentials | ✗ | OAS2,OAS3 |
OAuth2_AuthorizationCode | ✗ | OAS2,OAS3 |
Wire Format Feature
Name | Supported | Defined By |
---|---|---|
JSON | ✓ | OAS2,OAS3 |
XML | ✓ | OAS2,OAS3 |
PROTOBUF | ✗ | ToolingExtension |
Custom | ✗ | OAS2,OAS3 |