Numerous Philanthropic Misanthropes

    @funcate/sigweb-cti-api
    TypeScript icon, indicating that this package has built-in type declarations

    2.1.11 • Public • Published

    sigweb-cti-api

    Building

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

    npm install
    npm run build
    

    If need edit the api.module.ts because an error breaks the build:

    from:

    ModuleWithProviders {

    to:

    ModuleWithProviders<ApiModule> {

    publishing

    First build the package than run npm publish dist (don't forget to specify the dist folder!)

    Check if name of package in package.json include the organization name.

    {"name": "@funcate/sigweb-cti-api",...}

    npm login
    npm publish --access public dist/

    consuming

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

    published:

    npm install sigweb-cti-api@1.0.0 --save
    

    without publishing (not recommended):

    npm install PATH_TO_GENERATED_PACKAGE/dist.tgz --save
    

    It's important to take the tgz file, otherwise you'll get trouble with links on windows.

    using npm link:

    In PATH_TO_GENERATED_PACKAGE/dist:

    npm link
    

    In your project:

    npm link sigweb-cti-api
    

    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 'sigweb-cti-api';
    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 'sigweb-cti-api';
    
    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 'sigweb-cti-api';
    
    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 'sigweb-cti-api';
    
    bootstrap(AppComponent, [
        { provide: BASE_PATH, useValue: 'https://your-web-service.com' },
    ]);
    

    or

    import { BASE_PATH } from 'sigweb-cti-api';
    
    @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 'sigweb-cti-api';
    import { environment } from '../environments/environment';
    
    @NgModule({
      declarations: [
        AppComponent
      ],
      imports: [ ],
      providers: [{ provide: BASE_PATH, useValue: environment.API_BASE_PATH }],
      bootstrap: [ AppComponent ]
    })
    export class AppModule { }
    

    Install

    npm i @funcate/sigweb-cti-api

    DownloadsWeekly Downloads

    1

    Version

    2.1.11

    License

    Unlicense

    Unpacked Size

    1.74 MB

    Total Files

    188

    Last publish

    Collaborators

    • andre.carvalho
    • claudiobogossian