@experteam-mx/ngx-services
Version:
Angular common services for Experteam apps
62 lines • 7.5 kB
JavaScript
import { Inject, Injectable } from '@angular/core';
import { map } from 'rxjs';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common/http";
export class ApiOpenItemsService {
environments;
http;
constructor(environments, http) {
this.environments = environments;
this.http = http;
}
/**
* Retrieves the API URL for open-items from the environments' configuration.
*
* @return {string} The API URL for open-items.
*/
get url() {
return this.environments.apiOpenItemsUrl ?? '';
}
/**
* Retrieves a list of open-items based on the provided query parameters.
*
* @param {QueryParams} params - The parameters to use for querying open-items.
* @return {Observable<OpenItemsOut>} An observable that emits the open-item's data.
*/
getOpenItems(params) {
return this.http.get(`${this.url}/open-items`, { params })
.pipe(map(({ data }) => data));
}
/**
* Processes a payment for an open item.
*
* @param {PaymentOpenItemIn} body - The payment details for the open item.
* @return {Observable<PaymentOut>} An observable that emits the result of the payment processing.
*/
postPayment(body) {
return this.http.post(`${this.url}/payment`, body)
.pipe(map(({ data }) => data));
}
/**
* Processes a payment for other invoice.
*
* @param {OtherInvoiceIn} body - The payment details for the other invoice.
* @return {Observable<OtherInvoiceOut>} An observable that emits the result of the payment processing.
*/
postOtherInvoice(body) {
return this.http.post(`${this.url}/other-invoices`, body)
.pipe(map(({ data }) => data));
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiOpenItemsService, deps: [{ token: 'env' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiOpenItemsService, providedIn: 'root' });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiOpenItemsService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root'
}]
}], ctorParameters: () => [{ type: undefined, decorators: [{
type: Inject,
args: ['env']
}] }, { type: i1.HttpClient }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLW9wZW4taXRlbXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4cGVydGVhbS1teC9uZ3gtc2VydmljZXMvc3JjL2xpYi9hcGlzL2FwaS1vcGVuLWl0ZW1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFLbEQsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQTs7O0FBTXRDLE1BQU0sT0FBTyxtQkFBbUI7SUFFTDtJQUNmO0lBRlYsWUFDeUIsWUFBeUIsRUFDeEMsSUFBZ0I7UUFERCxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN4QyxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3ZCLENBQUM7SUFFSjs7OztPQUlHO0lBQ0gsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUE7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsWUFBWSxDQUFFLE1BQW1CO1FBQy9CLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQTJCLEdBQUcsSUFBSSxDQUFDLEdBQUcsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUM7YUFDakYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFFLElBQXVCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXlCLEdBQUcsSUFBSSxDQUFDLEdBQUcsVUFBVSxFQUFFLElBQUksQ0FBQzthQUN2RSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxnQkFBZ0IsQ0FBRSxJQUFvQjtRQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE4QixHQUFHLElBQUksQ0FBQyxHQUFHLGlCQUFpQixFQUFFLElBQUksQ0FBQzthQUNuRixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO3dHQTlDVSxtQkFBbUIsa0JBRXBCLEtBQUs7NEdBRkosbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUdJLE1BQU07MkJBQUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7IEVudmlyb25tZW50IH0gZnJvbSAnLi4vbmd4LXNlcnZpY2VzLm1vZGVscydcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xyXG5pbXBvcnQgeyBBcGlTdWNjZXNzLCBRdWVyeVBhcmFtcyB9IGZyb20gJy4vbW9kZWxzL2FwaS5tb2RlbHMnXHJcbmltcG9ydCB7IE9wZW5JdGVtc091dCwgT3RoZXJJbnZvaWNlT3V0LCBQYXltZW50T3V0IH0gZnJvbSAnLi9tb2RlbHMvYXBpLW9wZW4taXRlbXMudHlwZXMnXHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXHJcbmltcG9ydCB7IE90aGVySW52b2ljZUluLCBQYXltZW50T3Blbkl0ZW1JbiB9IGZyb20gJy4vbW9kZWxzL2FwaS1vcGVuLWl0ZW1zLmludGVyZmFjZXMnXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcGlPcGVuSXRlbXNTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvciAoXHJcbiAgICBASW5qZWN0KCdlbnYnKSBwcml2YXRlIGVudmlyb25tZW50czogRW52aXJvbm1lbnQsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcclxuICApIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyB0aGUgQVBJIFVSTCBmb3Igb3Blbi1pdGVtcyBmcm9tIHRoZSBlbnZpcm9ubWVudHMnIGNvbmZpZ3VyYXRpb24uXHJcbiAgICpcclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IFRoZSBBUEkgVVJMIGZvciBvcGVuLWl0ZW1zLlxyXG4gICAqL1xyXG4gIGdldCB1cmwgKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5lbnZpcm9ubWVudHMuYXBpT3Blbkl0ZW1zVXJsID8/ICcnXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIG9wZW4taXRlbXMgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHF1ZXJ5IHBhcmFtZXRlcnMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge1F1ZXJ5UGFyYW1zfSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyB0byB1c2UgZm9yIHF1ZXJ5aW5nIG9wZW4taXRlbXMuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPcGVuSXRlbXNPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIG9wZW4taXRlbSdzIGRhdGEuXHJcbiAgICovXHJcbiAgZ2V0T3Blbkl0ZW1zIChwYXJhbXM6IFF1ZXJ5UGFyYW1zKTogT2JzZXJ2YWJsZTxPcGVuSXRlbXNPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVN1Y2Nlc3M8T3Blbkl0ZW1zT3V0Pj4oYCR7dGhpcy51cmx9L29wZW4taXRlbXNgLCB7IHBhcmFtcyB9KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb2Nlc3NlcyBhIHBheW1lbnQgZm9yIGFuIG9wZW4gaXRlbS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7UGF5bWVudE9wZW5JdGVtSW59IGJvZHkgLSBUaGUgcGF5bWVudCBkZXRhaWxzIGZvciB0aGUgb3BlbiBpdGVtLlxyXG4gICAqIEByZXR1cm4ge09ic2VydmFibGU8UGF5bWVudE91dD59IEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgcmVzdWx0IG9mIHRoZSBwYXltZW50IHByb2Nlc3NpbmcuXHJcbiAgICovXHJcbiAgcG9zdFBheW1lbnQgKGJvZHk6IFBheW1lbnRPcGVuSXRlbUluKTogT2JzZXJ2YWJsZTxQYXltZW50T3V0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpU3VjY2VzczxQYXltZW50T3V0Pj4oYCR7dGhpcy51cmx9L3BheW1lbnRgLCBib2R5KVxyXG4gICAgICAucGlwZShtYXAoKHsgZGF0YSB9KSA9PiBkYXRhKSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb2Nlc3NlcyBhIHBheW1lbnQgZm9yIG90aGVyIGludm9pY2UuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge090aGVySW52b2ljZUlufSBib2R5IC0gVGhlIHBheW1lbnQgZGV0YWlscyBmb3IgdGhlIG90aGVyIGludm9pY2UuXHJcbiAgICogQHJldHVybiB7T2JzZXJ2YWJsZTxPdGhlckludm9pY2VPdXQ+fSBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHJlc3VsdCBvZiB0aGUgcGF5bWVudCBwcm9jZXNzaW5nLlxyXG4gICAqL1xyXG4gIHBvc3RPdGhlckludm9pY2UgKGJvZHk6IE90aGVySW52b2ljZUluKTogT2JzZXJ2YWJsZTxPdGhlckludm9pY2VPdXQ+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlTdWNjZXNzPE90aGVySW52b2ljZU91dD4+KGAke3RoaXMudXJsfS9vdGhlci1pbnZvaWNlc2AsIGJvZHkpXHJcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEpKVxyXG4gIH1cclxufVxyXG4iXX0=