45 Commits

Author SHA1 Message Date
Nick Meinhold
ba65f675e2 [Dart] Make clients crossplatform (#3608)
* Remove browserClient flag and bump http dependency

* Run shell scripts so CIs can verify the change
2019-08-13 15:35:00 +08:00
Paul Mundt
4b0fc3013f [dart2] Fix up test code generation, double deserialization, 'new' keyword deprecation (#3576)
* dart2: Use the correct classname in test generation

At present test generation has a stray hard-coded reference to the pet
store Pet() class, which should reflect the actual classname under test.

* dart2: Call toDouble() in generated code for double types

At present the generated code does not correctly handle transitioning
to double when dealing with non-integer types in JSON deserialization.
This ends up with dart raising an unhandled type mismatch exception:

Unhandled exception: type 'int' is not a subtype of type 'double' where
...

Using the .toDouble() conversion when a double type is expected fixes
this up by making the typing explicit.

* dart2: Drop use of deprecated 'new' keyword in generated code

The use of the 'new' keyword in dart2 is deprecated and should be
avoided, as per the official guidance of the dart2 authors:

https://dart.dev/guides/language/effective-dart/usage#dont-use-new

* dart2: Regenerate samples for mustache template changes
2019-08-09 00:15:45 +08:00
William Cheng
60e6371fc5
fix class hardcode to pet (#3014) 2019-05-28 00:45:01 +08:00
William Cheng
b88b1d656a
Add auto-generated tests and travis config to Dart clients (#3006)
* add auto-generated tests and travis config for dart

* improve tests

* fix tests

* add test, travis files to dart jaguar generator
2019-05-27 18:44:57 +08:00
William Cheng
2bc9592bd5
Revert "Add auto-generated tests and travis config to Dart clients (#2909)" (#3001)
This reverts commit dfda6655ec4add93b03bf351287286523cb53e97.
2019-05-26 01:50:31 +08:00
William Cheng
dfda6655ec
Add auto-generated tests and travis config to Dart clients (#2909)
* add auto-generated tests and travis config for dart

* improve tests

* fix tests
2019-05-25 22:52:30 +08:00
ircecho
049d24ee4f dart2: update to work with dart 2.3.0 (#2894)
* dart2: update to work with dart 2.3.0

* dart2: update to work with dart 2.3.0
2019-05-15 22:49:54 +08:00
Paul Mundt
c08c45de05 dart2 linter updates for prefer_equal_for_default_values, prefer_is_empty (#2654)
* Use isNotEmpty instead of length in dart2 validity checks

In dart2 the preferred method of checking whether an object is empty or
not is to use the .isNotEmpty property. An aspect that is now warned
about by the linter.

While not an issue in this particular case - testing length can also
have negative performance implications for Iterable collections, which
are not required to know or provide their length deterministically.

* Prefer equals for default values in dart2

The dart2 linter complains about m({a: 1}) style assignments, preferring
m({a = 1}) instead. Update the api_client generation to follow this.

* Regenerate dart2 samples for mustache template changes
2019-04-17 10:57:06 +08:00
Dale King
d93fd31bb1 [dart] Fix authentication for dart (#2419)
* [dart] Fix authentication so all forms of Swagger 2.0 authentication work

* Run changes on petstore examples

* Amend dart2 generated README to cover basic authentication

* Amend dart2 generated README to cover authentication methods

* [dart] Fix authentication so all forms of Swagger 2.0 authentication work

* Run changes on petstore examples
2019-03-19 10:08:43 +08:00
d3v-cl
49b15ee518 Dart queryargs (#2250)
* [DART2]: fix encoding query args

* [DART]fix: url encode query arguments

* [DART][DART2]feat: rebuild petstore
2019-03-07 15:52:34 +08:00
d3v-cl
bc6997f0e5 [DART2]: fix Map<String, nativeType> fromJson (#1936) 2019-01-25 10:54:46 +08:00
d3v-cl
9ccf872290 [DART] fix: set fields to null if json value is null. (#1798)
* fix: set fields to null if json value is null.

* rebuild dart2 petstore

* rebuild dart petstore

* rebuild petstore

* [DART]fix: set fields to null if json value is null.
2019-01-09 00:26:46 +08:00
William Cheng
d35f4b08d9
Fix various typos in the templates (Ruby, C#) (#1803)
* Fix typos

* update petstore samples
2019-01-05 09:39:10 +08:00
William Cheng
22049db8c1
fix enum value, update dart petstore samples (#1193) 2018-10-09 07:08:04 +08:00
William Cheng
29322da2f6
Dart (Jaguar) client generator (#998)
* generator for dart jaguar

* migrate to openapi-generator

* fix locale issue

* add auth generation for dart jaguar

* fix generation of jaguar api with auth (#1009)

* update deps (#1016)

* add CI tests for dart jaguar

* update dart jaguar bin script

* trigger build failure

* Revert "trigger build failure"

This reverts commit a7d8bfd47a93f0903932aeff4afefeb7aa4c5c4a.
2018-09-13 21:39:57 +08:00
William Cheng
d9400caf69
Set Dart2 as default, better format Dart code with dartfmt (#949)
* change dart default to v2

* add dart2 author

* add dartfmt to postProcess file in dart generator

* add dartfmt to format dart code
2018-09-02 17:59:42 +08:00
Jérémie Bresson
059a3efe46 Regenerate samples (#367) 2018-05-08 16:44:51 +08:00
William Cheng
aab99bc530
Update Dart default value, re-enable Objc Tests (#328)
* update dart client default

* re-enable objc test

* restore dart flutter_petstore, update dart oas3 script
2018-05-06 01:45:52 +08:00
William Cheng
c791146b62
Update Dart petstore with OAS3, fix mustache format (#227)
* update dart petstore with oas3, fix mustache format

* update default value to null
2018-05-05 21:02:18 +08:00
William Cheng
f5f7546dcc
Update Dart petstore client (flutter) with OpenAPI v2 spec (#152)
* restore dart flutter samples from petstore oas2

* update dart-petstore (flutter) with OAS2
2018-04-25 14:53:42 +08:00
Jérémie Bresson
7ecd5f3566
Rename "swagger" to "openapi" (#191)
* Rename ".swagger-codegen-ignore" to ".openapi-generator-ignore"
* Rename setGenerateSwaggerMetadata(Boolean) to setGenerateMetadata(Boolean)
* Rename Metadata Folder to .openapi-generator
2018-04-22 21:28:17 +02:00
wing328
a59c325cb7 update dart, ruby petstore samples 2018-02-22 17:53:51 +08:00
Jörn Ahrens
a5e26a44ff [Dart] - Rework Dart client generator to be flutter-compatible (#7418)
* copy mustache templates from dart generator

* Start with generator by copying the DartClientCodegen for now

* at least we know this is not for a browser..

* First working version for a simple swagger configuration

* remove browserClient parameter, since it doesn't make sense for flutter

* Take care of complex types to support object hierarchies

* add null safety

* add small test for options

* add flutter-petstore scripts

* generate flutter petstore output

* Add new flutter test project

* move generated client to make it usable

* use generated swagger petstore plugin

* add support for lists of objects

* add DateTime support

* fix listFromJson implementation

* fix NPEs in DateTime operations + place order in sample

* Small readme changes

* bugfixes

* Use flutter-compatible implementation as default dart implementation

* fix generated samples

* Make lists serializable, now all dart test cases are working again

* better list implementation

* use StringBuffer

* removed FlutterClientCodegen

* fix browser client

* fix dependencies

* swagger-browser-client for browserClient testcases

* fix scripts

* removed flutter scripts

* add map support and simplify code via using .toJson contract

* remove unneeded devDependencies

* Regenerated samples

* fix call to mapFromJson, it is not a constructor

* remove pointless string serialization

* regenerated dart samples
2018-01-25 18:18:53 +08:00
P.Y. Laligand
1050aa9a06 Added support for enums in Dart. (#6516)
* Added support for enums in Dart.

* Pick non-private names for enum values.

The _ prefix denotes a private member in Dart, so avoid generating enum values starting with this character.

* Properly encode enum values into query paramters.

* Various cleanups.

* Add support for x-enum-values extension.
Use class instead of enum for better ergonomy.
Better generated enum names.

* Fixed test.

* Support enum descriptions.
2017-10-16 21:28:21 +08:00
wing328
7b80557363 fix file not found 2017-06-29 13:22:26 +08:00
Paŭlo Ebermann
4b9988c4f2 Update samples for several language (just whitespace changes, reordering, VERSION) (#5828)
* Update samples for several languages.

Just whitespace changes and some reordering where the order doesn't matter.

* Adding generated .swagger-codegen/VERSION files.
2017-06-14 01:17:31 +08:00
wing328
89ad5e59b8 use convertPropertyToBooleanAndWriteBack in some generators (#4975) 2017-03-08 17:39:22 +08:00
Paŭlo Ebermann
a91cbbe387 Update samples after 2.2.2 (#4901)
* Update petstore samples for Groovy.

* Update samples for JaxRS.

* Update samples for cpprest.

* Update samples for dart.

* Update samples for flash.

* Update samples for go.

* Update samples for html2.

* Update samples for lumen.

* Update samples for nancxfx.

* Update samples for objc.

* Update samples for sinatra.

* Update samples for tizen.

* Update samples for java-inflector.
2017-03-06 00:33:57 +08:00
wing328
c6aea46fa0 fix import in sample code (dart) (#4292) 2016-11-30 18:30:30 +08:00
wing328
a603ccb595 [Dart] add auto-generated documentation (#4291)
* new files for dart client

* update doc for dart

* update api and model doc for dart

* update dart petstore sample

* update dart doc

* update dart petstore sample

* update dart petstore sample

* update dart client installation instruction
2016-11-30 17:41:55 +08:00
wing328
90512e6326 Remove Apache license from API client generators (#4197)
* remove php apache license

* remove apache license from C#

* remove apache license in objc code

* remove license from swift 3 code

* remove apache license from perl code

* remove license from scala code

* remove license from ts, go, android, cpp, scala

* remove license from java api client

* restore clojure petstore files

* remove license from travis file

* clean up apache-related terms in php, ruby, python mustache tempaltes

* remove license from JS API cilent
2016-11-16 21:44:49 +08:00
Anton WIMMER
6d6cfb4984 fix[dart]: send ISO8601 dates 2016-11-08 14:29:27 +01:00
ircecho
51b941cf88 DART: Removed the 'justIgnoreThisFlag' flag (#4116)
* feat[dart]: remove unused argument 'justIgnoreThisFlag'

* chore[dart]: petstore rebuild
2016-11-04 19:17:23 +08:00
wing328
5c0ce022e9 update dart intl version 2016-11-02 11:17:04 +08:00
wing328
702344ed75 better handling of reserved words for sintatra, dart 2016-10-18 17:58:19 +08:00
wing328
574349570a fix number format for dart model 2016-10-07 00:47:05 +08:00
Nekrasov Aleksander
91675c97e2 Fix resteasy offsetdatetime provier (#3332)
* Fix offsetDateTime and remove unnecessary override annotations

* Update petstore samples to CI for resteasy testing

* fix resteasy templates path

* add ability to hide generated annotations

* Update petstore resteasy samples

* Deduplicate artifact names in resteasy projects
2016-08-15 23:46:52 +08:00
Christian Loitsch
bf17a91275 dart codegen improvements (#3440)
* fix: query params may be ints as well

don't assume query params are Strings or List<String>s

* fix dart: use correct type for QueryParams

type is Iterable, not List

only check params for != null if they haven't been checked already

add some casts to make strong mode happy

update petstore

* feat dart: enable strong mode

* feat dart: generate both browser and vm library

move petstore client into subdirectory and reference
generated libraries using path in pubspec.yaml

* feat dart: refactor petstore test.

The new layout resembles a real project.

petstore test is now strong mode compatible.

* feat: add DateTimerParser transformer

* feat: improved exception reporting

* feat[dart]: handle patch requests

* fix[dart]: typo

* fix dart: remove findPetsByTag test; enable strong-mode

find pets by tag call is deprecated and returns 500

generated library is now strong mode compatible
2016-07-23 23:45:22 +08:00
Christian Loitsch
999ef42e81 doc: explain how to run tests 2016-07-08 15:45:53 +02:00
Christian Loitsch
9a65a5f0db feat: improve / fix deserialization by parsing type String
* added api_helper.dart for a helper function.
* defaultApiClient is now a variable instead of a static field inside
  ApiClient
* a lot of functions inside ApiClient are no longer static.
* optional params are now named params  (needed to introduce a
  justIgnoreFlag as hack)
* queryParams now support the multi format and are therefore no longer a
  Map<String, String>, but a List<QueryParam>
* renamed apiException.mustache to api_exception.mustache to conform
  with other file names.
* removed unused import: 'dart:html'
* removed 'package:crypto/crypto.dart' dependency.  'dart:convert' has a
  base64 converter now.
* use null-aware operator for apiClient assignment in xxxApi
  constructors.
* enable testStoreApi (which returned a Future nobody waited for)
* fix types in tests.  Some ids were passed as Strings instead of ints.
* adapt tests to use the optional named arguments (for optional query
  args)
* generate random ids in tests.  Otherwise insertion will always succeed
  if the test has been called once.
2016-07-08 15:02:28 +02:00
Andreas Reiter
9ec0e545c8 Updated dart petstore 2016-06-20 13:25:54 +02:00
wing328
0b42b533d9 add new files 2016-04-16 00:44:36 +08:00
wing328
87e542c69c replace requiredParam with reuqired 2016-04-15 22:54:46 +08:00
Yissachar Radcliffe
58c5ecf13c Generate auth files to correct location 2015-09-06 19:58:28 -04:00
Yissachar Radcliffe
e72a53448e Add Dart support 2015-09-06 18:35:29 -04:00