dependencies Legend  Declarations  Module  Bootstrap  Providers  Exports cluster_ScanditSdkModule cluster_ScanditSdkModule_declarations cluster_ScanditSdkModule_exports ScanditSdkBarcodePickerComponent ScanditSdkBarcodePickerComponent ScanditSdkModule ScanditSdkModule ScanditSdkBarcodePickerComponent->ScanditSdkModule ScanditSdkBarcodePickerComponent ScanditSdkBarcodePickerComponent ScanditSdkModule->ScanditSdkBarcodePickerComponent

File

src/lib/scandit-sdk.module.ts

Description

Scandit Web SDK Module

Methods

Static factory
factory()
Returns : void
Static forChild
forChild()
Returns : ModuleWithProviders<ScanditSdkModule>
Static forRoot
forRoot(licenseKey: string, options: literal type)
Parameters :
Name Type Optional
licenseKey string No
options literal type No
Returns : ModuleWithProviders<ScanditSdkModule>
import { Inject, InjectionToken, ModuleWithProviders, NgModule, Optional } from "@angular/core";
import { ScanditSdkBarcodePickerComponent } from "./scandit-sdk-barcode-picker.component";
import { ScanditSdkServiceConfig } from "./scandit-sdk.service";

/**
 * Scandit Web SDK Module
 */
@NgModule({
  declarations: [ScanditSdkBarcodePickerComponent],
  exports: [ScanditSdkBarcodePickerComponent]
})
export class ScanditSdkModule {
  static loaded: boolean = false;

  constructor(@Inject("ScanditSdkModuleInstance") instance: ScanditSdkModule) { }

  static factory(): void {
    if (ScanditSdkModule.loaded) {
      throw new Error("ScanditSdkModule is already loaded. Import it in the AppModule only");
    }
    ScanditSdkModule.loaded = true;
  }

  static forRoot(
    licenseKey: string,
    options: { engineLocation: string; preloadEngine?: boolean; preloadBlurryRecognition?: boolean }
  ): ModuleWithProviders<ScanditSdkModule> {
    return {
      ngModule: ScanditSdkModule,
      providers: [
        {
          provide: "ScanditSdkModuleInstance",
          useFactory: ScanditSdkModule.factory
        },
        {
          provide: ScanditSdkServiceConfig,
          useValue: {
            licenseKey,
            options
          }
        }
      ]
    };
  }

  static forChild(): ModuleWithProviders<ScanditSdkModule> {
    return {
      ngModule: ScanditSdkModule,
      providers: []
    };
  }
}

result-matching ""

    No results matching ""