ng4-signalr
Version:
angular4 signalr library
62 lines • 7.52 kB
JavaScript
import { NgModule, NgZone, InjectionToken } from '@angular/core';
import { SignalR } from '../services/signalr';
import * as i0 from "@angular/core";
const SIGNALR_CONFIGURATION = new InjectionToken('SIGNALR_CONFIGURATION');
export function createSignalr(configuration, zone) {
const jConnectionFn = getJConnectionFn();
return new SignalR(configuration, zone, jConnectionFn);
}
function getJConnectionFn() {
const jQuery = getJquery();
const hubConnectionFn = jQuery.hubConnection;
if (hubConnectionFn == null) {
// tslint:disable-next-line:max-line-length
throw new Error('Signalr failed to initialize. Script \'jquery.signalR.js\' is missing. Please make sure to include \'jquery.signalR.js\' script.');
}
return hubConnectionFn;
}
function getJquery() {
const jQuery = window.jQuery;
if (jQuery == null) {
// tslint:disable-next-line:max-line-length
throw new Error('Signalr failed to initialize. Script \'jquery.js\' is missing. Please make sure to include jquery script.');
}
return jQuery;
}
export class SignalRModule {
static forRoot(getSignalRConfiguration) {
return {
ngModule: SignalRModule,
providers: [
{
provide: SIGNALR_CONFIGURATION,
useFactory: getSignalRConfiguration
},
{
deps: [SIGNALR_CONFIGURATION, NgZone],
provide: SignalR,
useFactory: (createSignalr)
}
],
};
}
static forChild() {
throw new Error("forChild method not implemented");
}
}
SignalRModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SignalRModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
SignalRModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: SignalRModule });
SignalRModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SignalRModule, providers: [{
provide: SignalR,
useValue: SignalR
}] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SignalRModule, decorators: [{
type: NgModule,
args: [{
providers: [{
provide: SignalR,
useValue: SignalR
}]
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsci1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kdWxlcy9zaWduYWxyLW1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUF1QixNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFHOUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBdUIsdUJBQXVCLENBQUMsQ0FBQztBQUVoRyxNQUFNLFVBQVUsYUFBYSxDQUFDLGFBQW1DLEVBQUUsSUFBWTtJQUUzRSxNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO0lBRXpDLE9BQU8sSUFBSSxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQztBQUMzRCxDQUFDO0FBRUQsU0FBUyxnQkFBZ0I7SUFDckIsTUFBTSxNQUFNLEdBQUcsU0FBUyxFQUFFLENBQUM7SUFDM0IsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUM3QyxJQUFJLGVBQWUsSUFBSSxJQUFJLEVBQUU7UUFDekIsMkNBQTJDO1FBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsa0lBQWtJLENBQUMsQ0FBQztLQUN2SjtJQUNELE9BQU8sZUFBZSxDQUFDO0FBQzNCLENBQUM7QUFFRCxTQUFTLFNBQVM7SUFDZCxNQUFNLE1BQU0sR0FBSSxNQUFjLENBQUMsTUFBTSxDQUFDO0lBQ3RDLElBQUksTUFBTSxJQUFJLElBQUksRUFBRTtRQUNoQiwyQ0FBMkM7UUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQywyR0FBMkcsQ0FBQyxDQUFDO0tBQ2hJO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQVFELE1BQU0sT0FBTyxhQUFhO0lBRWYsTUFBTSxDQUFDLE9BQU8sQ0FBQyx1QkFBbUM7UUFDckQsT0FBTztZQUNILFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUscUJBQXFCO29CQUM5QixVQUFVLEVBQUUsdUJBQXVCO2lCQUN0QztnQkFDRDtvQkFDSSxJQUFJLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxNQUFNLENBQUM7b0JBQ3JDLE9BQU8sRUFBRSxPQUFPO29CQUNoQixVQUFVLEVBQUUsQ0FBQyxhQUFhLENBQUM7aUJBQzlCO2FBQ0o7U0FDSixDQUFDO0lBQ04sQ0FBQztJQUNNLE1BQU0sQ0FBQyxRQUFRO1FBQ2xCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUN2RCxDQUFDOzsyR0FwQlEsYUFBYTs0R0FBYixhQUFhOzRHQUFiLGFBQWEsYUFMWCxDQUFDO1lBQ1IsT0FBTyxFQUFFLE9BQU87WUFDaEIsUUFBUSxFQUFFLE9BQU87U0FDcEIsQ0FBQzs0RkFFTyxhQUFhO2tCQU56QixRQUFRO21CQUFDO29CQUNOLFNBQVMsRUFBRSxDQUFDOzRCQUNSLE9BQU8sRUFBRSxPQUFPOzRCQUNoQixRQUFRLEVBQUUsT0FBTzt5QkFDcEIsQ0FBQztpQkFDTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ1pvbmUsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpZ25hbFIgfSBmcm9tICcuLi9zZXJ2aWNlcy9zaWduYWxyJztcclxuaW1wb3J0IHsgU2lnbmFsUkNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9zZXJ2aWNlcy9zaWduYWxyLmNvbmZpZ3VyYXRpb24nO1xyXG5cclxuY29uc3QgU0lHTkFMUl9DT05GSUdVUkFUSU9OID0gbmV3IEluamVjdGlvblRva2VuPFNpZ25hbFJDb25maWd1cmF0aW9uPignU0lHTkFMUl9DT05GSUdVUkFUSU9OJyk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2lnbmFscihjb25maWd1cmF0aW9uOiBTaWduYWxSQ29uZmlndXJhdGlvbiwgem9uZTogTmdab25lKSB7XHJcblxyXG4gICAgY29uc3QgakNvbm5lY3Rpb25GbiA9IGdldEpDb25uZWN0aW9uRm4oKTtcclxuXHJcbiAgICByZXR1cm4gbmV3IFNpZ25hbFIoY29uZmlndXJhdGlvbiwgem9uZSwgakNvbm5lY3Rpb25Gbik7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdldEpDb25uZWN0aW9uRm4oKTogYW55IHtcclxuICAgIGNvbnN0IGpRdWVyeSA9IGdldEpxdWVyeSgpO1xyXG4gICAgY29uc3QgaHViQ29ubmVjdGlvbkZuID0galF1ZXJ5Lmh1YkNvbm5lY3Rpb247XHJcbiAgICBpZiAoaHViQ29ubmVjdGlvbkZuID09IG51bGwpIHtcclxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bWF4LWxpbmUtbGVuZ3RoXHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdTaWduYWxyIGZhaWxlZCB0byBpbml0aWFsaXplLiBTY3JpcHQgXFwnanF1ZXJ5LnNpZ25hbFIuanNcXCcgaXMgbWlzc2luZy4gUGxlYXNlIG1ha2Ugc3VyZSB0byBpbmNsdWRlIFxcJ2pxdWVyeS5zaWduYWxSLmpzXFwnIHNjcmlwdC4nKTtcclxuICAgIH1cclxuICAgIHJldHVybiBodWJDb25uZWN0aW9uRm47XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdldEpxdWVyeSgpOiBhbnkge1xyXG4gICAgY29uc3QgalF1ZXJ5ID0gKHdpbmRvdyBhcyBhbnkpLmpRdWVyeTtcclxuICAgIGlmIChqUXVlcnkgPT0gbnVsbCkge1xyXG4gICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTptYXgtbGluZS1sZW5ndGhcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NpZ25hbHIgZmFpbGVkIHRvIGluaXRpYWxpemUuIFNjcmlwdCBcXCdqcXVlcnkuanNcXCcgaXMgbWlzc2luZy4gUGxlYXNlIG1ha2Ugc3VyZSB0byBpbmNsdWRlIGpxdWVyeSBzY3JpcHQuJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4galF1ZXJ5O1xyXG59XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgcHJvdmlkZXJzOiBbe1xyXG4gICAgICAgIHByb3ZpZGU6IFNpZ25hbFIsXHJcbiAgICAgICAgdXNlVmFsdWU6IFNpZ25hbFJcclxuICAgIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWduYWxSTW9kdWxlIHtcclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIGZvclJvb3QoZ2V0U2lnbmFsUkNvbmZpZ3VyYXRpb246ICgpID0+IHZvaWQpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFNpZ25hbFJNb2R1bGU+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogU2lnbmFsUk1vZHVsZSxcclxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogU0lHTkFMUl9DT05GSUdVUkFUSU9OLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IGdldFNpZ25hbFJDb25maWd1cmF0aW9uXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtTSUdOQUxSX0NPTkZJR1VSQVRJT04sIE5nWm9uZV0sXHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogU2lnbmFsUixcclxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAoY3JlYXRlU2lnbmFscilcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXSxcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG4gICAgcHVibGljIHN0YXRpYyBmb3JDaGlsZCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFNpZ25hbFJNb2R1bGU+IHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJmb3JDaGlsZCBtZXRob2Qgbm90IGltcGxlbWVudGVkXCIpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==