All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
5.0.0-beta.6 (2022-04-11)
- correct isRequired guard + use named parameters (25df534)
- handle property
x-nullable
(8873d16) - use en locale for sorting compare fn (6f3962c)
5.0.0-beta.5 (2021-02-02)
5.0.0-beta.4 (2020-12-30)
5.0.0-beta.3 (2020-12-29)
5.0.0-beta.2 (2020-12-29)
5.0.0-beta.1 (2020-12-29)
- api-client: parameters of operation prioritized over path default params (26b6b4a)
5.0.0-beta.0 (2020-12-22)
- api-client: generator now ignores bodies for requests that should not send any body, only PUT, PATCH and POST should contain body and it is handled as optional
- generator: if you import
DefaultHttpOptions
,HttpOptions
orAPIClientModuleConfig
you need to adjust your imports to file./types
at the top of your "output" path
- api-client: body request based on the request type and the parameter (d0309b0)
- api-client: method params property docs comments (7a1eddf)
- api-client: methods params extracted to separate property in api client interface (53f3015), closes #91
- api-client: observe support for HttpResponse and HttpEvent (cdf2c6d)
- generator: descriptions generated as single/multi line docs comments (96a512d), closes #88
- generator: https protocol preferred if mentioned in schemes (c7f7d6f)
- generator: method parameters args object optional if all of the params are optional (9b77d74), closes #69
- generator: operation summary in descriptions (b573759), closes #112
- generator: option to skip guards (f4cc59f), closes #105
- generator: type interfaces for API client moved to one separate file (f08ffb6)
- generator: united file header (86fd135), closes #108
- guard: check for null at enum guards (14320d5)
- guard: typeof object check for dictionaries of any (4bf917a)
- models: basic object properties as dictionary with key string and value of any (7233c2d)
- models: description comments as docs comments before each property (8c81f6c)
- models: interface properties holding dictionaries and array combinations (e3a33b6)
- models: property name non unicode chars escaped (4dd4089)
- api-client: form data not set if undefined (cd541a0)
- generator: default response used if no success code specified (bc316f6)
- generator: service interface imported directly from interface file instead of export index (d768fed)
- guard: dictionaries as interface properties (58b9126)
- guards: any type results in empty guard (83917a9), closes #98
- guards: any used as type of array/object iteration items (ef7be58)
4.7.1 (2020-10-19)
- cli: rethrow errors in catch to see full trace stack in console (943f7d2)
- enums: x-enumNames specified integers and description with new lines (6a98b82)
4.7.0 (2020-07-03)
- angular 10 module with providers compatibility (7f69cc8)
4.6.4 (2020-07-03)
- parser: reference model name contains build-in type (4593fae)
4.6.3 (2020-06-24)
- parser: filtering already existing parent definitions to overcome recursion (e292567)
4.6.2 (2020-01-24)
- generator: object instad of
{ [key: string]: any }
(0c29141) - guards: array nested in
additionalProperties
(4f23f92) - guards: method response basic type guards used instead of custom function for primitive types (96ce207)
- models: object instead of any in case of nested properties (e8b7667)
- service: object instead of any in case of nested properties in method parameter (4443ac3)
- service: object instead of any in case of nested properties in response (277ee3f)
4.6.1 (2020-01-23)
- generator: toCamelCase method removes duplicate words (abe073d)
- guards: array item typed as unknown for the guard iteration (da654f7)
- guards: circular dependency (ecd1080)
- guards: escaped property names accessed via brackets (1dbfe3a)
- guards: guarded service response type as explicit any (785f022)
- guards: nested array types (89da76c)
- guards: object array types (30113fe)
- guards: objects with index signature as additional properties (a6ef06c)
- guards: union type string or enum with one value only (ec040c4)
4.6.0 (2020-01-16)
- method-params: union types determined for enum like union strings and numbers (324a95a)
- models: union types for properties of enum like union strings and numbers (0023555)
4.5.1 (2019-11-14)
- type-guards: guards name definition and usage inconsistency (5e00535)
4.5.0 (2019-11-04)
- generator: type guards for each data model (8cbdbbe)
4.4.0 (2019-08-28)
- cli: option for tags now automatically uses "all" if tags are generated and no tag is provided (e2cef2f)
- models: additional properties supported (535386c), closes #81
- models: embedded allOf properties supported (a42aa4f), closes #80
4.3.0 (2019-06-28)
- api-client: support for blob response type (d14ef9d), closes #77
- methods: recognizing return type if TS primitive or complex type (8ee08e2)
- updated dependencies (af07e3a)
- api-client: generating response for "lowest" of HTML success codes (72a7b14)
- api-client: void return type for methods with empty schema (f1977eb)
- enums: custom enum key names via custom x-enumNames property (9cf1c8f)
- form-data: send form parameters as multi part form data (c18c296), closes #78
- jest instead of jasmine (0836c0b)
- angular-project: jest instead of jasmine and karma (2de02e7)
- angular-project: removed jasmine and karma deps (784b181)
- angular-project: updated deps (c4e8b97)
4.2.0 (2019-01-11)
- models: properties are optional as default, required stated explicitly (04111d9)
4.1.1 (2019-01-11)
4.1.0 (2019-01-11)
- api-client: method parameters description and required flag (8e02cc1)
- enum: substitution of disallowed characters in key string (7214f2b), closes #74
- generator: Expose error from spec validation (ebb74c7)
- license: redundant lt/gt characters removed (3b5f8d9)
- model: objects generated as key value maps (b775b44)
4.0.1 (2018-09-01)
- models: recursive model definitions filter (c80631f)
4.0.0 (2018-08-31)
- models: model export index sorted and filtered for duplicates (ca325d3)
- tags: clients generated to folder services when tag option used (e7d3a08)
- tags: models import path had changed as services now share the models folder
3.6.2 (2018-08-22)
- tags: definition type name filter (48b4fff)
3.6.1 (2018-08-22)
- post install dependencies (b511914)
3.6.0 (2018-08-22)
- api-client: empty string as valid domain URL (c99265e)
- api-client: tag services names and module injection tokens (6624de2)
- parser: type prefixing fixed for nullables (7aee02b)
- git: generated files added separately instead of whole path (1a00bbd)
- main: warning logged on legacy model discovery (ad66cf7)
- parser: x-nullable response flag supported (d73924c)
3.5.0 (2018-07-12)
- api-client: interface generated for service mocking purposes (f10c9b3)
- autocommit: implemented (a9d5fd0)
- api-client: option to generate separate clients based on the path tags (20addd1)
3.4.1 (2018-06-22)
3.4.0 (2018-06-20)
- api-client: global parameters for paths (3cf7219)
3.3.0 (2018-06-11)
- enums: numeric enums values (ce511c8)
- api-client: API method descriptions (e7e767f), closes #29
- api-client: API method parameter descriptions (320fabc), closes #29
- models, enums: description for models and enums (ae7262d), closes #29
3.2.2 (2018-06-08)
- models: extended interface name CamelCase instead of camelCase (f6e39ad)
3.2.1 (2018-06-08)
- models: extending interface name corrected to camelCase (b02dc2f)
3.2.0 (2018-06-07)
3.2.0 (2018-06-01)
- api-client: http options without headers and params constructing (AOT compatible) (eca03c3), closes #47
- api-client: possibly undefined http options params and headers (539ba46)
- models: model no longer stripped from the name of file if explicitly named that way (dfdf90d), closes #49
3.1.0 (2018-05-07)
- api-client: rxjs 6 compatible import for Observable (431d61f)
3.0.3 (2018-04-06)
- api-client: array method parameters and headers appended (34ded75), closes #36
- api-client: basic types regex checks word boundaries (f588fed), closes #44
- api-client: File, Blob, Date and Object types are not imported from models (37e358b), closes #27
- api-client: form parameter used as body in request (ce9f124), closes #40
- api-client: models are not imported if there are none (42cf4c0), closes #31
- parser: empty or native types parameters won't be generated into models (ff55939)
- parser: interface properties were skipped during generation (3e694ad)
- api-client: create output dir even if path does not exists (8ff9be8), closes #34
- api-client: method names with underscore converted to camelCase (b09a679), closes #37
- api-client: method parameters nested to args object (efaca5b), closes #8
- api-client: optional param skipped if not in args (135db91)
- api-client: reference parameters are dereferenced (0a0de44)
- api-client: referenced method parameters generated and used (0e26c53)
- api-client: support for head, options and patch http methods (bd240f5)
- api-client: support for optional method parameters (9d0cedc), closes #8
- api-client: when no operation id, method names generated from path and method type (4afcdbc)
- enums: numeric enums, using keys from description (45bb096), closes #28
- parser: interface property type improvements, including nested array types (c70d2a3), closes #35
3.0.0 (2018-03-15)
- api-client: array method parameters and headers appended (34ded75), closes #36
- api-client: File, Blob, Date and Object types are not imported from models (37e358b), closes #27
- api-client: form parameter used as body in request (ce9f124), closes #40
- api-client: models are not imported if there are none (42cf4c0), closes #31
- parser: empty or native types parameters won't be generated into models (ff55939)
- parser: interface properties were skipped during generation (3e694ad)
- api-client: create output dir even if path does not exists (8ff9be8), closes #34
- api-client: method names with underscore converted to camelCase (b09a679), closes #37
- api-client: method parameters nested to args object (efaca5b), closes #8
- api-client: optional param skipped if not in args (135db91)
- api-client: reference parameters are dereferenced (0a0de44)
- api-client: referenced method parameters generated and used (0e26c53)
- api-client: support for head, options and patch http methods (bd240f5)
- api-client: support for optional method parameters (9d0cedc), closes #8
- api-client: when no operation id, method names generated from path and method type (4afcdbc)
- enums: numeric enums, using keys from description (45bb096), closes #28
- parser: interface property type improvements, including nested array types (c70d2a3), closes #35
3.0.0-alpha.1 (2018-02-26)
- module template file (8f813b6)
3.0.0-alpha.0 (2018-02-26)
- module:
- renamed to APIClient
- domain and configuration are now provided using
.forRoot
method
APIClientModule.forRoot({ domain: 'https://api.url', }),
- cli command renamed to
api-client-generator