@nebulae/angular-ble
Version:
A Web Bluetooth (Bluetooth Low Energy) module for angular (v2+)
82 lines (81 loc) • 5.61 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { NgModule, InjectionToken } from '@angular/core';
import { BrowserWebBluetooth } from './platform/browser';
import { CommonModule } from '@angular/common';
import { BluetoothService } from './bluetooth/bluetooth.service';
import { ConsoleLoggerService, NoLoggerService } from './logger.service';
/**
* @record
*/
export function AWBOptions() { }
/** @type {?|undefined} */
AWBOptions.prototype.enableTracing;
/**
* @return {?}
*/
export function browserWebBluetooth() {
return new BrowserWebBluetooth();
}
/**
* @param {?} options
* @return {?}
*/
export function consoleLoggerServiceConfig(options) {
if (options && options.enableTracing) {
return new ConsoleLoggerService();
}
else {
return new NoLoggerService();
}
}
/**
* @return {?}
*/
export function makeMeTokenInjector() {
return new InjectionToken('AWBOptions');
}
var AngularBleModule = /** @class */ (function () {
function AngularBleModule() {
}
/**
* @param {?=} options
* @return {?}
*/
AngularBleModule.forRoot = /**
* @param {?=} options
* @return {?}
*/
function (options) {
if (options === void 0) { options = {}; }
return {
ngModule: AngularBleModule,
providers: [
BluetoothService,
{
provide: BrowserWebBluetooth,
useFactory: browserWebBluetooth
},
{
provide: makeMeTokenInjector,
useValue: options
},
{
provide: ConsoleLoggerService,
useFactory: consoleLoggerServiceConfig,
deps: [makeMeTokenInjector]
}
]
};
};
AngularBleModule.decorators = [
{ type: NgModule, args: [{
imports: [CommonModule]
},] },
];
return AngularBleModule;
}());
export { AngularBleModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1ibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5lYnVsYWUvYW5ndWxhci1ibGUvIiwic291cmNlcyI6WyJsaWIvYW5ndWxhci1ibGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUF1QixjQUFjLEVBQUcsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7OztBQU16RSxNQUFNO0lBQ0osTUFBTSxDQUFDLElBQUksbUJBQW1CLEVBQUUsQ0FBQztDQUNsQzs7Ozs7QUFFRCxNQUFNLHFDQUFxQyxPQUFtQjtJQUM1RCxFQUFFLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDckMsTUFBTSxDQUFDLElBQUksb0JBQW9CLEVBQUUsQ0FBQztLQUNuQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ04sTUFBTSxDQUFDLElBQUksZUFBZSxFQUFFLENBQUM7S0FDOUI7Q0FDRjs7OztBQUNELE1BQU07SUFDSixNQUFNLENBQUMsSUFBSSxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7Q0FDekM7Ozs7Ozs7O0lBT1Esd0JBQU87Ozs7SUFBZCxVQUFlLE9BQXdCO1FBQXhCLHdCQUFBLEVBQUEsWUFBd0I7UUFDckMsTUFBTSxDQUFDO1lBQ0wsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixTQUFTLEVBQUU7Z0JBQ1QsZ0JBQWdCO2dCQUNoQjtvQkFDRSxPQUFPLEVBQUUsbUJBQW1CO29CQUM1QixVQUFVLEVBQUUsbUJBQW1CO2lCQUNoQztnQkFDRDtvQkFDRSxPQUFPLEVBQUUsbUJBQW1CO29CQUM1QixRQUFRLEVBQUUsT0FBTztpQkFDbEI7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLG9CQUFvQjtvQkFDN0IsVUFBVSxFQUFFLDBCQUEwQjtvQkFDdEMsSUFBSSxFQUFFLENBQUMsbUJBQW1CLENBQUM7aUJBQzVCO2FBQ0Y7U0FDRixDQUFDO0tBQ0g7O2dCQXhCRixRQUFRLFNBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUN4Qjs7MkJBNUJEOztTQTZCYSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycywgSW5qZWN0aW9uVG9rZW4gIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcm93c2VyV2ViQmx1ZXRvb3RoIH0gZnJvbSAnLi9wbGF0Zm9ybS9icm93c2VyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCbHVldG9vdGhTZXJ2aWNlIH0gZnJvbSAnLi9ibHVldG9vdGgvYmx1ZXRvb3RoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uc29sZUxvZ2dlclNlcnZpY2UsIE5vTG9nZ2VyU2VydmljZSB9IGZyb20gJy4vbG9nZ2VyLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFXQk9wdGlvbnMge1xuICBlbmFibGVUcmFjaW5nPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJyb3dzZXJXZWJCbHVldG9vdGgoKSB7XG4gIHJldHVybiBuZXcgQnJvd3NlcldlYkJsdWV0b290aCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29uc29sZUxvZ2dlclNlcnZpY2VDb25maWcob3B0aW9uczogQVdCT3B0aW9ucykge1xuICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLmVuYWJsZVRyYWNpbmcpIHtcbiAgICByZXR1cm4gbmV3IENvbnNvbGVMb2dnZXJTZXJ2aWNlKCk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIG5ldyBOb0xvZ2dlclNlcnZpY2UoKTtcbiAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VNZVRva2VuSW5qZWN0b3IoKSB7XG4gIHJldHVybiBuZXcgSW5qZWN0aW9uVG9rZW4oJ0FXQk9wdGlvbnMnKTtcbn1cblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyQmxlTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3Qob3B0aW9uczogQVdCT3B0aW9ucyA9IHt9KTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBBbmd1bGFyQmxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIEJsdWV0b290aFNlcnZpY2UsXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBCcm93c2VyV2ViQmx1ZXRvb3RoLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGJyb3dzZXJXZWJCbHVldG9vdGhcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IG1ha2VNZVRva2VuSW5qZWN0b3IsXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnNcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IENvbnNvbGVMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGNvbnNvbGVMb2dnZXJTZXJ2aWNlQ29uZmlnLFxuICAgICAgICAgIGRlcHM6IFttYWtlTWVUb2tlbkluamVjdG9yXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19