diff --git a/src/main/java/io/swagger/codegen/v3/generators/typescript/TypeScriptAngularClientCodegen.java b/src/main/java/io/swagger/codegen/v3/generators/typescript/TypeScriptAngularClientCodegen.java index 6758630c2f..bccb9c5970 100644 --- a/src/main/java/io/swagger/codegen/v3/generators/typescript/TypeScriptAngularClientCodegen.java +++ b/src/main/java/io/swagger/codegen/v3/generators/typescript/TypeScriptAngularClientCodegen.java @@ -127,6 +127,7 @@ public void processOpts() { additionalProperties.put("injectionToken", ngVersion.atLeast("4.0.0") ? "InjectionToken" : "OpaqueToken"); additionalProperties.put("injectionTokenTyped", ngVersion.atLeast("4.0.0")); additionalProperties.put("useHttpClient", ngVersion.atLeast("4.3.0")); + additionalProperties.put("useRxJS6", ngVersion.atLeast("6.0.0")); if (!ngVersion.atLeast("4.3.0")) { supportingFiles.add(new SupportingFile("rxjs-operators.mustache", getIndexDirectory(), "rxjs-operators.ts")); } diff --git a/src/main/resources/handlebars/typescript-angular/api.service.mustache b/src/main/resources/handlebars/typescript-angular/api.service.mustache index 0a600b403b..79fdf9ea35 100644 --- a/src/main/resources/handlebars/typescript-angular/api.service.mustache +++ b/src/main/resources/handlebars/typescript-angular/api.service.mustache @@ -15,7 +15,14 @@ import { Response, ResponseContentType } from '@angular/http import { CustomQueryEncoderHelper } from '../encoder'; {{/useHttpClient}} +{{^useRxJS6}} import { Observable } from 'rxjs/Observable'; +{{/useRxJS6}} + +{{#useRxJS6}} + import { Observable } from 'rxjs'; +{{/useRxJS6}} + {{^useHttpClient}} import '../rxjs-operators'; {{/useHttpClient}} diff --git a/src/main/resources/handlebars/typescript-angular/apiInterface.mustache b/src/main/resources/handlebars/typescript-angular/apiInterface.mustache index 89956f5917..afd64e6d41 100644 --- a/src/main/resources/handlebars/typescript-angular/apiInterface.mustache +++ b/src/main/resources/handlebars/typescript-angular/apiInterface.mustache @@ -7,14 +7,18 @@ import { HttpHeaders } from '@angular/comm import { Headers } from '@angular/http'; {{/useHttpClient}} +{{^useRxJS6}} import { Observable } from 'rxjs/Observable'; +{{/useRxJS6}} +{{#useRxJS6}} + import { Observable } from 'rxjs'; +{{/useRxJS6}} {{#imports}} import { {{classname}} } from '../{{filename}}'; {{/imports}} - import { Configuration } from '../configuration'; {{#operations}} diff --git a/src/main/resources/handlebars/typescript-angular/package.mustache b/src/main/resources/handlebars/typescript-angular/package.mustache index afc69fb714..3e5d7f01f3 100644 --- a/src/main/resources/handlebars/typescript-angular/package.mustache +++ b/src/main/resources/handlebars/typescript-angular/package.mustache @@ -28,7 +28,7 @@ "@angular/compiler": "^{{ngVersion}}", "core-js": "^2.4.0", "reflect-metadata": "^0.1.3", - "rxjs": "^5.4.0", + "rxjs": "{{#useRxJS6}}^6.1.0{{/useRxJS6}}{{^useRxJS6}}^5.4.0{{/useRxJS6}}", "zone.js": "^0.7.6" }, "devDependencies": { @@ -40,7 +40,7 @@ "@angular/platform-browser": "^{{ngVersion}}",{{#useNgPackagr}} "ng-packagr": {{#useOldNgPackagr}}"^1.6.0"{{/useOldNgPackagr}}{{^useOldNgPackagr}}"^2.4.1"{{/useOldNgPackagr}},{{/useNgPackagr}} "reflect-metadata": "^0.1.3", - "rxjs": "^5.4.0", + "rxjs": "{{#useRxJS6}}^6.1.0{{/useRxJS6}}{{^useRxJS6}}^5.4.0{{/useRxJS6}}", "zone.js": "^0.7.6", "typescript": "^2.1.5" }{{#npmRepository}},{{/npmRepository}}