Перейти к файлу
microsoft-github-policy-service[bot] 385e72ef2c
Auto merge mandatory file pr
This pr is auto merged as it contains a mandatory file and is opened for more than 10 days.
2023-03-28 16:44:27 +00:00
.swagger-codegen Update API spec version to 2020-01-01.6.0 2020-04-17 15:25:34 +08:00
api New API: Get /cluster/info 2020-04-17 15:36:33 +08:00
model New API: Get /cluster/info 2020-04-17 15:36:33 +08:00
.gitignore Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
.swagger-codegen-ignore Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
README.md Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
SECURITY.md Microsoft mandatory file 2023-01-24 16:00:29 +00:00
api.module.ts Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
configuration.ts Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
encoder.ts Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
git_push.sh Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
index.ts Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00
variables.ts Init commit for orphan branch "src". 2019-08-29 13:54:35 +08:00

README.md

@

Building

To install the required dependencies and to build the typescript sources run:

npm install
npm run build

publishing

First build the package than run npm publish

consuming

Navigate to the folder of your consuming project and run one of next commands.

published:

npm install @ --save

without publishing (not recommended):

npm install PATH_TO_GENERATED_PACKAGE --save

using npm link:

In PATH_TO_GENERATED_PACKAGE:

npm link

In your project:

npm link 

Note for Windows users: The Angular CLI has troubles to use linked npm packages. Please refer to this issue https://github.com/angular/angular-cli/issues/8284 for a solution / workaround. Published packages are not effected by this issue.

General usage

In your Angular project:

// without configuring providers
import { ApiModule } from '';
import { HttpClientModule } from '@angular/common/http';


@NgModule({
    imports: [
        ApiModule,
        // make sure to import the HttpClientModule in the AppModule only,
        // see https://github.com/angular/angular/issues/20575
        HttpClientModule
    ],
    declarations: [ AppComponent ],
    providers: [],
    bootstrap: [ AppComponent ]
})
export class AppModule {}
// configuring providers
import { ApiModule, Configuration, ConfigurationParameters } from '';

export function apiConfigFactory (): Configuration => {
  const params: ConfigurationParameters = {
    // set configuration parameters here.
  }
  return new Configuration(params);
}

@NgModule({
    imports: [ ApiModule.forRoot(apiConfigFactory) ],
    declarations: [ AppComponent ],
    providers: [],
    bootstrap: [ AppComponent ]
})
export class AppModule {}
import { DefaultApi } from '';

export class AppComponent {
	 constructor(private apiGateway: DefaultApi) { }
}

Note: The ApiModule is restricted to being instantiated once app wide. This is to ensure that all services are treated as singletons.

Using multiple swagger files / APIs / ApiModules

In order to use multiple ApiModules generated from different swagger files, you can create an alias name when importing the modules in order to avoid naming conflicts:

import { ApiModule } from 'my-api-path';
import { ApiModule as OtherApiModule } from 'my-other-api-path';
import { HttpClientModule } from '@angular/common/http';


@NgModule({
  imports: [
    ApiModule,
    OtherApiModule,
    // make sure to import the HttpClientModule in the AppModule only,
    // see https://github.com/angular/angular/issues/20575
    HttpClientModule
  ]
})
export class AppModule {

}

Set service base path

If different than the generated base path, during app bootstrap, you can provide the base path to your service.

import { BASE_PATH } from '';

bootstrap(AppComponent, [
    { provide: BASE_PATH, useValue: 'https://your-web-service.com' },
]);

or

import { BASE_PATH } from '';

@NgModule({
    imports: [],
    declarations: [ AppComponent ],
    providers: [ provide: BASE_PATH, useValue: 'https://your-web-service.com' ],
    bootstrap: [ AppComponent ]
})
export class AppModule {}

Using @angular/cli

First extend your src/environments/*.ts files by adding the corresponding base path:

export const environment = {
  production: false,
  API_BASE_PATH: 'http://127.0.0.1:8080'
};

In the src/app/app.module.ts:

import { BASE_PATH } from '';
import { environment } from '../environments/environment';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [ ],
  providers: [{ provide: BASE_PATH, useValue: environment.API_BASE_PATH }],
  bootstrap: [ AppComponent ]
})
export class AppModule { }