UNPKG

@muzykantov/ngx-dadata

Version:

Angular 6+ [DaData][dadata] suggestion (подсказки) implementation

69 lines 5.11 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { HttpClient, HttpHeaders } from "@angular/common/http"; import * as i0 from "@angular/core"; import * as i1 from "@angular/common/http"; /** @enum {string} */ const DaDataType = { fio: "fio", address: "address", party: "party", bank: "bank", email: "email", }; export { DaDataType }; export class NgxDaDataService { /** * @param {?} http */ constructor(http) { this.http = http; this.apiKey = ''; } /** * @param {?} key * @return {?} */ setApiKey(key) { this.apiKey = key; } /** * @param {?} value * @param {?=} type * @param {?=} count * @param {?=} options * @return {?} */ getData(value, type = DaDataType.address, count = 10, options = null) { /** @type {?} */ const httpOptions = { headers: new HttpHeaders({ 'Accept': 'application/json', 'Content-Type': 'application/json', 'Authorization': 'Token ' + this.apiKey, }) }; /** @type {?} */ const body = Object.assign({ query: value, count: count }, options); return this.http.post("https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/" + type, body, httpOptions); } } NgxDaDataService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; NgxDaDataService.ctorParameters = () => [ { type: HttpClient } ]; /** @nocollapse */ NgxDaDataService.ngInjectableDef = i0.defineInjectable({ factory: function NgxDaDataService_Factory() { return new NgxDaDataService(i0.inject(i1.HttpClient)); }, token: NgxDaDataService, providedIn: "root" }); if (false) { /** @type {?} */ NgxDaDataService.prototype.apiKey; /** @type {?} */ NgxDaDataService.prototype.http; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWRhLWRhdGEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtdXp5a2FudG92L25neC1kYWRhdGEvIiwic291cmNlcyI6WyJsaWIvbmd4LWRhLWRhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUMsVUFBVSxFQUFFLFdBQVcsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7OztJQUszRCxLQUFNLEtBQUs7SUFDWCxTQUFVLFNBQVM7SUFDbkIsT0FBUSxPQUFPO0lBQ2YsTUFBTyxNQUFNO0lBQ2IsT0FBUSxPQUFPOzs7QUFNakIsTUFBTSxPQUFPLGdCQUFnQjs7OztJQUczQixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRnBDLFdBQU0sR0FBRyxFQUFFLENBQUM7SUFFNEIsQ0FBQzs7Ozs7SUFFekMsU0FBUyxDQUFDLEdBQVc7UUFDbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7SUFDcEIsQ0FBQzs7Ozs7Ozs7SUFFRCxPQUFPLENBQUMsS0FBYSxFQUFFLE9BQW1CLFVBQVUsQ0FBQyxPQUFPLEVBQUUsUUFBZ0IsRUFBRSxFQUFFLFVBQWUsSUFBSTs7Y0FDN0YsV0FBVyxHQUFHO1lBQ2xCLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQztnQkFDdkIsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsY0FBYyxFQUFHLGtCQUFrQjtnQkFDbkMsZUFBZSxFQUFFLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTTthQUN4QyxDQUFDO1NBQ0g7O2NBRUssSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxPQUFPLENBQUM7UUFDbkUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBaUIsK0RBQStELEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQTtJQUNsSSxDQUFDOzs7WUF2QkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFkTyxVQUFVOzs7OztJQWdCaEIsa0NBQVk7O0lBRUEsZ0NBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0h0dHBDbGllbnQsIEh0dHBIZWFkZXJzfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge0RhRGF0YVJlc3BvbnNlfSBmcm9tIFwiLi9tb2RlbHMvZGEtZGF0YS1yZXNwb25zZVwiO1xyXG5cclxuZXhwb3J0IGVudW0gRGFEYXRhVHlwZSB7XHJcbiAgZmlvID0gXCJmaW9cIixcclxuICBhZGRyZXNzID0gXCJhZGRyZXNzXCIsXHJcbiAgcGFydHkgPSBcInBhcnR5XCIsXHJcbiAgYmFuayA9IFwiYmFua1wiLFxyXG4gIGVtYWlsID0gXCJlbWFpbFwiXHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE5neERhRGF0YVNlcnZpY2Uge1xyXG4gIGFwaUtleSA9ICcnO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHsgfVxyXG5cclxuICBzZXRBcGlLZXkoa2V5OiBzdHJpbmcpIHtcclxuICAgIHRoaXMuYXBpS2V5ID0ga2V5O1xyXG4gIH1cclxuXHJcbiAgZ2V0RGF0YSh2YWx1ZTogc3RyaW5nLCB0eXBlOiBEYURhdGFUeXBlID0gRGFEYXRhVHlwZS5hZGRyZXNzLCBjb3VudDogbnVtYmVyID0gMTAsIG9wdGlvbnM6IGFueSA9IG51bGwpOiBPYnNlcnZhYmxlPERhRGF0YVJlc3BvbnNlPntcclxuICAgIGNvbnN0IGh0dHBPcHRpb25zID0ge1xyXG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICAgJ0F1dGhvcml6YXRpb24nOiAnVG9rZW4gJyArIHRoaXMuYXBpS2V5LFxyXG4gICAgICB9KVxyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdCBib2R5ID0gT2JqZWN0LmFzc2lnbih7IHF1ZXJ5OiB2YWx1ZSwgY291bnQ6IGNvdW50IH0sIG9wdGlvbnMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PERhRGF0YVJlc3BvbnNlPihcImh0dHBzOi8vc3VnZ2VzdGlvbnMuZGFkYXRhLnJ1L3N1Z2dlc3Rpb25zL2FwaS80XzEvcnMvc3VnZ2VzdC9cIiArIHR5cGUsIGJvZHksIGh0dHBPcHRpb25zKVxyXG4gIH1cclxufVxyXG4iXX0=