UNPKG

@cause-911/core

Version:

Run `npm install @cause-911/core --save` to add this library to your project

153 lines 10.5 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { Observable } from 'rxjs'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common/http"; var ApiLookupService = /** @class */ (function () { function ApiLookupService(http) { this.http = http; this.http = http; } /** * @return {?} */ ApiLookupService.prototype.getIpInformation = /** * @return {?} */ function () { var _this = this; return new Observable((/** * @param {?} observer * @return {?} */ function (observer) { _this.lookupIpWith_IpApi().subscribe((/** * @param {?} result * @return {?} */ function (result) { observer.next(result); observer.complete(); }), (/** * @return {?} */ function () { _this.lookupIpWith_GeoIpDb().subscribe((/** * @param {?} result * @return {?} */ function (result) { observer.next(result); observer.complete(); }), (/** * @return {?} */ function () { observer.error('Can\'t lookup the IP address'); })); })); })); }; /** * @private * @return {?} */ ApiLookupService.prototype.lookupIpWith_GeoIpDb = /** * @private * @return {?} */ function () { var _this = this; return new Observable((/** * @param {?} observer * @return {?} */ function (observer) { _this.http.get('http://geoip-db.com/json').subscribe((/** * @param {?} response * @return {?} */ function (response) { observer.next((/** @type {?} */ ({ country: response['country_code'], countryName: response['country_name'], stateName: response['state'], cityName: response['city'], longitude: response['longitude'], latitude: response['latitude'] }))); observer.complete(); }), (/** * @param {?} error * @return {?} */ function (error) { observer.error(error); })); })); }; /** * @private * @return {?} */ ApiLookupService.prototype.lookupIpWith_IpApi = /** * @private * @return {?} */ function () { var _this = this; return new Observable((/** * @param {?} observer * @return {?} */ function (observer) { _this.http.get('http://ip-api.com/json').subscribe(((/** * @param {?} response * @return {?} */ function (response) { observer.next((/** @type {?} */ ({ country: response['countryCode'], countryName: response['country'], state: response['region'], stateName: response['regionName'], cityName: response['city'], isp: response['isp'], longitude: response['lon'], latitude: response['lat'] }))); observer.complete(); })), (/** * @param {?} error * @return {?} */ function (error) { observer.error(error); })); })); }; ApiLookupService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ ApiLookupService.ctorParameters = function () { return [ { type: HttpClient } ]; }; /** @nocollapse */ ApiLookupService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function ApiLookupService_Factory() { return new ApiLookupService(i0.ɵɵinject(i1.HttpClient)); }, token: ApiLookupService, providedIn: "root" }); return ApiLookupService; }()); export { ApiLookupService }; if (false) { /** * @type {?} * @private */ ApiLookupService.prototype.http; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWxvb2t1cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNhdXNlLTkxMS9jb3JlLyIsInNvdXJjZXMiOlsibGliL3NoYXJlZC9zZXJ2aWNlcy9hcGktbG9va3VwLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQUdoQztJQUtFLDBCQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2xDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7Ozs7SUFFTSwyQ0FBZ0I7OztJQUF2QjtRQUFBLGlCQWNDO1FBYkMsT0FBTyxJQUFJLFVBQVU7Ozs7UUFBQyxVQUFBLFFBQVE7WUFDNUIsS0FBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsU0FBUzs7OztZQUFDLFVBQUEsTUFBTTtnQkFDeEMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDdEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3RCLENBQUM7OztZQUFFO2dCQUNELEtBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLFNBQVM7Ozs7Z0JBQUMsVUFBQSxNQUFNO29CQUMxQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN0QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLENBQUM7OztnQkFBRTtvQkFDRCxRQUFRLENBQUMsS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7Z0JBQ2pELENBQUMsRUFBQyxDQUFDO1lBQ0wsQ0FBQyxFQUFDLENBQUM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7O0lBRU8sK0NBQW9COzs7O0lBQTVCO1FBQUEsaUJBZ0JDO1FBZkMsT0FBTyxJQUFJLFVBQVU7Ozs7UUFBQyxVQUFBLFFBQVE7WUFDNUIsS0FBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxTQUFTOzs7O1lBQUMsVUFBQSxRQUFRO2dCQUMxRCxRQUFRLENBQUMsSUFBSSxDQUFDLG1CQUFXO29CQUN2QixPQUFPLEVBQUUsUUFBUSxDQUFDLGNBQWMsQ0FBQztvQkFDakMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxjQUFjLENBQUM7b0JBQ3JDLFNBQVMsRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO29CQUM1QixRQUFRLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQztvQkFDMUIsU0FBUyxFQUFFLFFBQVEsQ0FBQyxXQUFXLENBQUM7b0JBQ2hDLFFBQVEsRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDO2lCQUMvQixFQUFBLENBQUMsQ0FBQztnQkFDSCxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQzs7OztZQUFFLFVBQUEsS0FBSztnQkFDTixRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLENBQUMsRUFBQyxDQUFDO1FBQ0wsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVPLDZDQUFrQjs7OztJQUExQjtRQUFBLGlCQWtCQztRQWpCQyxPQUFPLElBQUksVUFBVTs7OztRQUFDLFVBQUEsUUFBUTtZQUM1QixLQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQzs7OztZQUFDLFVBQUEsUUFBUTtnQkFDekQsUUFBUSxDQUFDLElBQUksQ0FBQyxtQkFBVztvQkFDdkIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUM7b0JBQ2hDLFdBQVcsRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDO29CQUNoQyxLQUFLLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQztvQkFDekIsU0FBUyxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUM7b0JBQ2pDLFFBQVEsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDO29CQUMxQixHQUFHLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQztvQkFDcEIsU0FBUyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUM7b0JBQzFCLFFBQVEsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDO2lCQUMxQixFQUFBLENBQUMsQ0FBQztnQkFDSCxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxFQUFDOzs7O1lBQUUsVUFBQSxLQUFLO2dCQUNQLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEIsQ0FBQyxFQUFDLENBQUM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7O2dCQTdERixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQU5PLFVBQVU7OzsyQkFEbEI7Q0FtRUMsQUE5REQsSUE4REM7U0EzRFksZ0JBQWdCOzs7Ozs7SUFFZixnQ0FBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtBcGlMb29rdXB9IGZyb20gJy4uL21vZGVscy9hcGktbG9va3VwJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXBpTG9va3VwU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgdGhpcy5odHRwID0gaHR0cDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRJcEluZm9ybWF0aW9uKCk6IE9ic2VydmFibGU8QXBpTG9va3VwPiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMubG9va3VwSXBXaXRoX0lwQXBpKCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgIG9ic2VydmVyLm5leHQocmVzdWx0KTtcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgIH0sICgpID0+IHtcbiAgICAgICAgdGhpcy5sb29rdXBJcFdpdGhfR2VvSXBEYigpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLm5leHQocmVzdWx0KTtcbiAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICB9LCAoKSA9PiB7XG4gICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoJ0NhblxcJ3QgbG9va3VwIHRoZSBJUCBhZGRyZXNzJyk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxvb2t1cElwV2l0aF9HZW9JcERiKCk6IE9ic2VydmFibGU8QXBpTG9va3VwPiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICAgIHRoaXMuaHR0cC5nZXQoJ2h0dHA6Ly9nZW9pcC1kYi5jb20vanNvbicpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgIG9ic2VydmVyLm5leHQoPEFwaUxvb2t1cD57XG4gICAgICAgICAgY291bnRyeTogcmVzcG9uc2VbJ2NvdW50cnlfY29kZSddLFxuICAgICAgICAgIGNvdW50cnlOYW1lOiByZXNwb25zZVsnY291bnRyeV9uYW1lJ10sXG4gICAgICAgICAgc3RhdGVOYW1lOiByZXNwb25zZVsnc3RhdGUnXSxcbiAgICAgICAgICBjaXR5TmFtZTogcmVzcG9uc2VbJ2NpdHknXSxcbiAgICAgICAgICBsb25naXR1ZGU6IHJlc3BvbnNlWydsb25naXR1ZGUnXSxcbiAgICAgICAgICBsYXRpdHVkZTogcmVzcG9uc2VbJ2xhdGl0dWRlJ11cbiAgICAgICAgfSk7XG4gICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgIG9ic2VydmVyLmVycm9yKGVycm9yKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsb29rdXBJcFdpdGhfSXBBcGkoKTogT2JzZXJ2YWJsZTxBcGlMb29rdXA+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgICAgdGhpcy5odHRwLmdldCgnaHR0cDovL2lwLWFwaS5jb20vanNvbicpLnN1YnNjcmliZSgocmVzcG9uc2UgPT4ge1xuICAgICAgICBvYnNlcnZlci5uZXh0KDxBcGlMb29rdXA+e1xuICAgICAgICAgIGNvdW50cnk6IHJlc3BvbnNlWydjb3VudHJ5Q29kZSddLFxuICAgICAgICAgIGNvdW50cnlOYW1lOiByZXNwb25zZVsnY291bnRyeSddLFxuICAgICAgICAgIHN0YXRlOiByZXNwb25zZVsncmVnaW9uJ10sXG4gICAgICAgICAgc3RhdGVOYW1lOiByZXNwb25zZVsncmVnaW9uTmFtZSddLFxuICAgICAgICAgIGNpdHlOYW1lOiByZXNwb25zZVsnY2l0eSddLFxuICAgICAgICAgIGlzcDogcmVzcG9uc2VbJ2lzcCddLFxuICAgICAgICAgIGxvbmdpdHVkZTogcmVzcG9uc2VbJ2xvbiddLFxuICAgICAgICAgIGxhdGl0dWRlOiByZXNwb25zZVsnbGF0J11cbiAgICAgICAgfSk7XG4gICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICB9KSwgZXJyb3IgPT4ge1xuICAgICAgICBvYnNlcnZlci5lcnJvcihlcnJvcik7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIl19