@muzykantov/ngx-dadata
Version:
Angular 6+ [DaData][dadata] suggestion (подсказки) implementation
82 lines • 5.76 kB
JavaScript
/**
* @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} */
var DaDataType = {
fio: "fio",
address: "address",
party: "party",
bank: "bank",
email: "email",
};
export { DaDataType };
var NgxDaDataService = /** @class */ (function () {
function NgxDaDataService(http) {
this.http = http;
this.apiKey = '';
}
/**
* @param {?} key
* @return {?}
*/
NgxDaDataService.prototype.setApiKey = /**
* @param {?} key
* @return {?}
*/
function (key) {
this.apiKey = key;
};
/**
* @param {?} value
* @param {?=} type
* @param {?=} count
* @param {?=} options
* @return {?}
*/
NgxDaDataService.prototype.getData = /**
* @param {?} value
* @param {?=} type
* @param {?=} count
* @param {?=} options
* @return {?}
*/
function (value, type, count, options) {
if (type === void 0) { type = DaDataType.address; }
if (count === void 0) { count = 10; }
if (options === void 0) { options = null; }
/** @type {?} */
var httpOptions = {
headers: new HttpHeaders({
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': 'Token ' + this.apiKey,
})
};
/** @type {?} */
var 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 = function () { return [
{ type: HttpClient }
]; };
/** @nocollapse */ NgxDaDataService.ngInjectableDef = i0.defineInjectable({ factory: function NgxDaDataService_Factory() { return new NgxDaDataService(i0.inject(i1.HttpClient)); }, token: NgxDaDataService, providedIn: "root" });
return NgxDaDataService;
}());
export { NgxDaDataService };
if (false) {
/** @type {?} */
NgxDaDataService.prototype.apiKey;
/** @type {?} */
NgxDaDataService.prototype.http;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWRhLWRhdGEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtdXp5a2FudG92L25neC1kYWRhdGEvIiwic291cmNlcyI6WyJsaWIvbmd4LWRhLWRhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUMsVUFBVSxFQUFFLFdBQVcsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7OztJQUszRCxLQUFNLEtBQUs7SUFDWCxTQUFVLFNBQVM7SUFDbkIsT0FBUSxPQUFPO0lBQ2YsTUFBTyxNQUFNO0lBQ2IsT0FBUSxPQUFPOzs7QUFHakI7SUFNRSwwQkFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUZwQyxXQUFNLEdBQUcsRUFBRSxDQUFDO0lBRTRCLENBQUM7Ozs7O0lBRXpDLG9DQUFTOzs7O0lBQVQsVUFBVSxHQUFXO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO0lBQ3BCLENBQUM7Ozs7Ozs7O0lBRUQsa0NBQU87Ozs7Ozs7SUFBUCxVQUFRLEtBQWEsRUFBRSxJQUFxQyxFQUFFLEtBQWtCLEVBQUUsT0FBbUI7UUFBOUUscUJBQUEsRUFBQSxPQUFtQixVQUFVLENBQUMsT0FBTztRQUFFLHNCQUFBLEVBQUEsVUFBa0I7UUFBRSx3QkFBQSxFQUFBLGNBQW1COztZQUM3RixXQUFXLEdBQUc7WUFDbEIsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDO2dCQUN2QixRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixjQUFjLEVBQUcsa0JBQWtCO2dCQUNuQyxlQUFlLEVBQUUsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNO2FBQ3hDLENBQUM7U0FDSDs7WUFFSyxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLE9BQU8sQ0FBQztRQUNuRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFpQiwrREFBK0QsR0FBRyxJQUFJLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFBO0lBQ2xJLENBQUM7O2dCQXZCRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7Z0JBZE8sVUFBVTs7OzJCQURsQjtDQXFDQyxBQXhCRCxJQXdCQztTQXJCWSxnQkFBZ0I7OztJQUMzQixrQ0FBWTs7SUFFQSxnQ0FBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7SHR0cENsaWVudCwgSHR0cEhlYWRlcnN9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7RGFEYXRhUmVzcG9uc2V9IGZyb20gXCIuL21vZGVscy9kYS1kYXRhLXJlc3BvbnNlXCI7XHJcblxyXG5leHBvcnQgZW51bSBEYURhdGFUeXBlIHtcclxuICBmaW8gPSBcImZpb1wiLFxyXG4gIGFkZHJlc3MgPSBcImFkZHJlc3NcIixcclxuICBwYXJ0eSA9IFwicGFydHlcIixcclxuICBiYW5rID0gXCJiYW5rXCIsXHJcbiAgZW1haWwgPSBcImVtYWlsXCJcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTmd4RGFEYXRhU2VydmljZSB7XHJcbiAgYXBpS2V5ID0gJyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkgeyB9XHJcblxyXG4gIHNldEFwaUtleShrZXk6IHN0cmluZykge1xyXG4gICAgdGhpcy5hcGlLZXkgPSBrZXk7XHJcbiAgfVxyXG5cclxuICBnZXREYXRhKHZhbHVlOiBzdHJpbmcsIHR5cGU6IERhRGF0YVR5cGUgPSBEYURhdGFUeXBlLmFkZHJlc3MsIGNvdW50OiBudW1iZXIgPSAxMCwgb3B0aW9uczogYW55ID0gbnVsbCk6IE9ic2VydmFibGU8RGFEYXRhUmVzcG9uc2U+e1xyXG4gICAgY29uc3QgaHR0cE9wdGlvbnMgPSB7XHJcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICAgJ0FjY2VwdCc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgICAnQ29udGVudC1UeXBlJzogICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgICAnQXV0aG9yaXphdGlvbic6ICdUb2tlbiAnICsgdGhpcy5hcGlLZXksXHJcbiAgICAgIH0pXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGJvZHkgPSBPYmplY3QuYXNzaWduKHsgcXVlcnk6IHZhbHVlLCBjb3VudDogY291bnQgfSwgb3B0aW9ucyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8RGFEYXRhUmVzcG9uc2U+KFwiaHR0cHM6Ly9zdWdnZXN0aW9ucy5kYWRhdGEucnUvc3VnZ2VzdGlvbnMvYXBpLzRfMS9ycy9zdWdnZXN0L1wiICsgdHlwZSwgYm9keSwgaHR0cE9wdGlvbnMpXHJcbiAgfVxyXG59XHJcbiJdfQ==