UNPKG

ngx-pesapal

Version:

Angular schematics lib for abstracting Pesapal APIs

93 lines 9.75 kB
import { Directive, HostListener, Input, DestroyRef, inject } from '@angular/core'; import { takeUntilDestroyed } from '@angular/core/rxjs-interop'; import { ApiService } from '../services/api.service'; import * as i0 from "@angular/core"; export class NgxPesapalDirective { constructor() { this.id = Date.now().toString(36) + Math.random().toString(36).substring(2); this.currency = 'KES'; this.errorMessages = false; this.api = inject(ApiService); this.destroy = inject(DestroyRef); } onClick() { this.api.submitOrderRequest({ id: this.id, amount: this.amount, currency: this.currency, description: this.description, callback_url: this.callback_url, billing_address: { phone_number: this.phone_number, email_address: this.email_address, country_code: this.country_code, first_name: this.first_name, middle_name: this.middle_name, last_name: this.last_name, line_1: this.line_1, line_2: this.line_2, city: this.city, state: this.state, postal_code: this.postal_code, zip_code: this.zip_code, } }).pipe(takeUntilDestroyed(this.destroy)).subscribe({ error: (e) => { throw new Error(e); } }); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: NgxPesapalDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.3", type: NgxPesapalDirective, selector: "[ngx-pesapal]", inputs: { currency: "currency", amount: "amount", description: "description", callback_url: "callback_url", phone_number: "phone_number", email_address: "email_address", country_code: "country_code", first_name: "first_name", middle_name: "middle_name", last_name: "last_name", line_1: "line_1", line_2: "line_2", city: "city", state: "state", postal_code: "postal_code", zip_code: "zip_code", cancellation_url: "cancellation_url", errorMessages: "errorMessages" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: NgxPesapalDirective, decorators: [{ type: Directive, args: [{ selector: '[ngx-pesapal]' }] }], propDecorators: { currency: [{ type: Input, args: [{ required: true }] }], amount: [{ type: Input, args: [{ required: true }] }], description: [{ type: Input, args: [{ required: true }] }], callback_url: [{ type: Input, args: [{ required: true }] }], phone_number: [{ type: Input, args: [{ required: true }] }], email_address: [{ type: Input }], country_code: [{ type: Input }], first_name: [{ type: Input }], middle_name: [{ type: Input }], last_name: [{ type: Input }], line_1: [{ type: Input }], line_2: [{ type: Input }], city: [{ type: Input }], state: [{ type: Input }], postal_code: [{ type: Input }], zip_code: [{ type: Input }], cancellation_url: [{ type: Input }], errorMessages: [{ type: Input }], onClick: [{ type: HostListener, args: ['click', ['$event']] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVzYXBhbC1wYXkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcGVzYXBhbC9zcmMvbGliL2RpcmVjdGl2ZXMvcGVzYXBhbC1wYXkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQy9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFLckQsTUFBTSxPQUFPLG1CQUFtQjtJQUhoQztRQUtFLE9BQUUsR0FBVyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ25ELGFBQVEsR0FBVSxLQUFLLENBQUE7UUFrQnpDLGtCQUFhLEdBQVksS0FBSyxDQUFBO1FBR3ZDLFFBQUcsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDcEMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtLQWlDN0I7SUEvQm9DLE9BQU87UUFDeEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FDekI7WUFDRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsZUFBZSxFQUFFO2dCQUNmLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0IsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO2dCQUNqQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQy9CLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDM0IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO2dCQUM3QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDbkIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2dCQUNqQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQzdCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTthQUN4QjtTQUNGLENBQ0YsQ0FBQyxJQUFJLENBQ0osa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUNqQyxDQUFDLFNBQVMsQ0FBQztZQUNSLEtBQUssRUFBRSxDQUFDLENBQU0sRUFBRSxFQUFFO2dCQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ3BCLENBQUM7U0FDSixDQUFDLENBQUE7SUFDSixDQUFDOzhHQXpEVSxtQkFBbUI7a0dBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtpQkFDMUI7OEJBSTRCLFFBQVE7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLE1BQU07c0JBQWhDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFdBQVc7c0JBQXJDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFlBQVk7c0JBQXRDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUVFLFlBQVk7c0JBQXRDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNoQixhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFNNkIsT0FBTztzQkFBekMsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIERlc3Ryb3lSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnXG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXBpLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmd4LXBlc2FwYWxdJ1xufSlcbmV4cG9ydCBjbGFzcyBOZ3hQZXNhcGFsRGlyZWN0aXZlIHtcblxuICBpZDogc3RyaW5nID0gRGF0ZS5ub3coKS50b1N0cmluZygzNikgKyBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMilcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY3VycmVuY3k6c3RyaW5nID0gJ0tFUydcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgYW1vdW50ITogbnVtYmVyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGRlc2NyaXB0aW9uITogc3RyaW5nXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNhbGxiYWNrX3VybCE6IHN0cmluZ1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHBob25lX251bWJlciE6IHN0cmluZ1xuICBASW5wdXQoKSBlbWFpbF9hZGRyZXNzITogc3RyaW5nXG4gIEBJbnB1dCgpIGNvdW50cnlfY29kZT86IHN0cmluZyBcbiAgQElucHV0KCkgZmlyc3RfbmFtZT86IHN0cmluZyBcbiAgQElucHV0KCkgbWlkZGxlX25hbWU/OiBzdHJpbmcgXG4gIEBJbnB1dCgpIGxhc3RfbmFtZT86IHN0cmluZyBcbiAgQElucHV0KCkgbGluZV8xPzogc3RyaW5nIFxuICBASW5wdXQoKSBsaW5lXzI/OiBzdHJpbmcgXG4gIEBJbnB1dCgpIGNpdHk/OiBzdHJpbmcgXG4gIEBJbnB1dCgpIHN0YXRlPzogc3RyaW5nIFxuICBASW5wdXQoKSBwb3N0YWxfY29kZT86IHN0cmluZyBcbiAgQElucHV0KCkgemlwX2NvZGU/OiBzdHJpbmcgXG4gIEBJbnB1dCgpIGNhbmNlbGxhdGlvbl91cmw/OiBzdHJpbmcgXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZXM6IGJvb2xlYW4gPSBmYWxzZVxuXG5cbiAgYXBpOiBBcGlTZXJ2aWNlID0gaW5qZWN0KEFwaVNlcnZpY2UpXG4gIGRlc3Ryb3kgPSBpbmplY3QoRGVzdHJveVJlZilcblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pIG9uQ2xpY2soKSB7XG4gICAgdGhpcy5hcGkuc3VibWl0T3JkZXJSZXF1ZXN0KFxuICAgICAge1xuICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgYW1vdW50OiB0aGlzLmFtb3VudCxcbiAgICAgICAgY3VycmVuY3k6IHRoaXMuY3VycmVuY3ksXG4gICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgICBjYWxsYmFja191cmw6IHRoaXMuY2FsbGJhY2tfdXJsLFxuICAgICAgICBiaWxsaW5nX2FkZHJlc3M6IHtcbiAgICAgICAgICBwaG9uZV9udW1iZXI6IHRoaXMucGhvbmVfbnVtYmVyLFxuICAgICAgICAgIGVtYWlsX2FkZHJlc3M6IHRoaXMuZW1haWxfYWRkcmVzcyxcbiAgICAgICAgICBjb3VudHJ5X2NvZGU6IHRoaXMuY291bnRyeV9jb2RlLFxuICAgICAgICAgIGZpcnN0X25hbWU6IHRoaXMuZmlyc3RfbmFtZSxcbiAgICAgICAgICBtaWRkbGVfbmFtZTogdGhpcy5taWRkbGVfbmFtZSxcbiAgICAgICAgICBsYXN0X25hbWU6IHRoaXMubGFzdF9uYW1lLFxuICAgICAgICAgIGxpbmVfMTogdGhpcy5saW5lXzEsXG4gICAgICAgICAgbGluZV8yOiB0aGlzLmxpbmVfMixcbiAgICAgICAgICBjaXR5OiB0aGlzLmNpdHksXG4gICAgICAgICAgc3RhdGU6IHRoaXMuc3RhdGUsXG4gICAgICAgICAgcG9zdGFsX2NvZGU6IHRoaXMucG9zdGFsX2NvZGUsXG4gICAgICAgICAgemlwX2NvZGU6IHRoaXMuemlwX2NvZGUsXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApLnBpcGUoXG4gICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95KVxuICAgICkuc3Vic2NyaWJlKHtcbiAgICAgICAgZXJyb3I6IChlOiBhbnkpID0+IHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSlcbiAgICAgICAgfVxuICAgIH0pXG4gIH1cbn1cbiJdfQ==