ngx-culqi 2.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,131 @@
1
+ <p align="center">
2
+ <img width="230" src="https://i.ibb.co/3B95v9S/icon-ngx-culqi.png">
3
+ </p>
4
+
5
+ <h1 align="center">
6
+ ngx-culqi
7
+ </h1>
8
+
9
+ <div align="center">
10
+
11
+ [Culqi](https://culqi.com/) payment gateway library made to use with Angular.
12
+
13
+ [![Github branch](https://github.com/lperezp/admin-box/actions/workflows/build.yml/badge.svg)](https://github.com/lperezp/admin-box/actions/workflows/build.yml)
14
+ [![CodeFactor](https://www.codefactor.io/repository/github/lperezp/ngx-culqi/badge?style=flat-square)](https://www.codefactor.io/repository/github/ng-zorro/ng-zorro-antd)
15
+ [![Codecov](https://img.shields.io/codecov/c/github/lperezp/ngx-culqi.svg?style=flat-square)](https://codecov.io/gh/lperezp/ngx-culqi)
16
+ [![GitHub Release Date](https://img.shields.io/github/release-date/lperezp/ngx-culqi.svg?style=flat-square)](https://github.com/lperezp/ngx-culqi/releases)
17
+ [![npm package](https://img.shields.io/npm/v/ngx-culqi.svg?style=flat-square)](https://www.npmjs.org/package/ngx-culqi)
18
+ [![NPM downloads](http://img.shields.io/npm/dm/ngx-culqi.svg?style=flat-square)](https://npmjs.org/package/ngx-culqi)
19
+ [![GitHub license](https://img.shields.io/github/license/mashape/apistatus.svg?style=flat-square)](https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE)
20
+ [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
21
+ [![Twitter](https://img.shields.io/badge/Twitter-lperezp_pe-blue.svg?style=flat-square&logo=twitter)](https://twitter.com/lperezp_pe)
22
+
23
+ </div>
24
+
25
+
26
+ ## ☀️ License
27
+
28
+ [MIT](https://github.com/lperezp/ngx-culqi/blob/master/LICENSE)
29
+
30
+ ## 🖥 Environment Support
31
+
32
+ * Angular `^18.0.0` [![npm package](https://img.shields.io/npm/v/ngx-culqi.svg?style=flat-square)](https://www.npmjs.org/package/ngx-culqi)
33
+
34
+ ## 📦 Installation
35
+
36
+ Adding ngx-culqi to your project is as simple as running one command:
37
+
38
+ ```
39
+ npm i ngx-culqi
40
+ ```
41
+
42
+ ## 🔨 Usage
43
+
44
+ After installation add this code below the ``app-root`` tag in the ``index.html``.
45
+
46
+ ```
47
+ <app-root></app-root>
48
+ <script src="https://checkout.culqi.com/js/v3"></script>
49
+ <script>
50
+ function culqi() {
51
+ if (Culqi.token) {
52
+ var token = Culqi.token.id;
53
+ var payment_event = new CustomEvent("payment_event", {
54
+ detail: token,
55
+ });
56
+ document.dispatchEvent(payment_event);
57
+ }
58
+ }
59
+ </script>
60
+ ```
61
+
62
+ Inside the class, add the __@HostListener__ decorator to catch the event from the _culqi.js_:
63
+
64
+ ```
65
+ @HostListener('document:payment_event', ['$event'])
66
+ onPaymentEventCustom($event: CustomEvent) {
67
+ this.TOKEN_CULQI = $event.detail;
68
+ }
69
+
70
+ ```
71
+
72
+ Inside ``ngOnInit`` add the following script:
73
+
74
+ ```
75
+ ngOnInit() {
76
+ this.ngCulqiService.initCulqi('ENTER_PUBLIC_KEY');
77
+ }
78
+ ```
79
+
80
+ ***Replace with the PUBLIC KEY granted by Culqi.***
81
+
82
+ Create the function to run the gateway. Within the function you have to configure your payment gateway with the data of the online store.
83
+ You can also configure the button within the Culqi modal.
84
+
85
+ ***[Check Culqi documentation for more information](https://docs.culqi.com/#/pagos/inicio)***
86
+
87
+ ```
88
+ handleButtonPayment() {
89
+ const culqiSettings = {
90
+ title: 'My Angular Store',
91
+ currency: '',
92
+ description: 'item #01',
93
+ amount: 100.00,
94
+ };
95
+ const culqiOptions = {
96
+ lang: 'auto',
97
+ modal: true,
98
+ installments: false,
99
+ customButton: '',
100
+ style: {
101
+ logo: '',
102
+ maincolor: '',
103
+ buttontext: '',
104
+ maintext: '',
105
+ desctext: '',
106
+ },
107
+ };
108
+ this.ngCulqiService.generateToken(culqiSettings, culqiOptions);
109
+ }
110
+ ```
111
+
112
+ ## Demo
113
+
114
+ [Ver Demo](https://github.com/lperezp/culqi-angular)
115
+
116
+ ## 🔗 Links
117
+
118
+ * [Culqi](https://culqi.com/)
119
+ * [Culqi Docs](https://docs.culqi.com/es/documentacion/)
120
+
121
+ ## 🤝 Contributing
122
+
123
+ [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/lperezp/ngx-culqi/pulls)
124
+
125
+ I welcome all contributions. Please read our [CONTRIBUTING.md](https://github.com/lperezp/ngx-culqi/blob/master/CONTRIBUTING.md) first. You can submit any ideas as [pull requests](https://github.com/lperezp/ngx-culqi/pulls) or as [GitHub issues](https://github.com/lperezp/ngx-culqi/issues).
126
+
127
+ ## 🎉 Author
128
+
129
+ - [lperezp]( https://lperezp.dev/?utm_source=ngx-culqi&utm_medium=github-ngx-culqi&utm_campaign=ngx-culqi&utm_id=github)
130
+
131
+ **Love ngx-culqi? Give our repo a star :star: :arrow_up:.**
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VscWkubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY3VscWkvc3JjL2xpYi9tb2RlbHMvY3VscWkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSUN1bHFpU2V0dGluZ3Mge1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgY3VycmVuY3k6IHN0cmluZztcbiAgICBhbW91bnQ6IG51bWJlcjtcbiAgICBvcmRlcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIHhjdWxxaXJzYWlkOiBzdHJpbmc7XG4gICAgcnNhcHVibGlja2V5OiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIElDdWxxaU9wdGlvbnMge1xuICAgIGxhbmc/OiBzdHJpbmc7XG4gICAgaW5zdGFsbG1lbnRzPzogYm9vbGVhbjtcbiAgICBwYXltZW50TWV0aG9kcz86IElQYXltZW50TWV0aG9kcztcbiAgICBzdHlsZT86IElTdHlsZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQYXltZW50TWV0aG9kcyB7XG4gICAgdGFyamV0YTogYm9vbGVhbjtcbiAgICB5YXBlOiBib29sZWFuO1xuICAgIGJhbmNhTW92aWw6IGJvb2xlYW47XG4gICAgYWdlbnRlOiBib29sZWFuO1xuICAgIGJpbGxldGVyYTogYm9vbGVhbjtcbiAgICBjdW90ZWFsbzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU3R5bGUge1xuICAgIGxvZ286IHN0cmluZztcbiAgICBiYW5uZXJDb2xvcj86IHN0cmluZztcbiAgICBidXR0b25CYWNrZ3JvdW5kPzogc3RyaW5nO1xuICAgIG1lbnVDb2xvcj86IHN0cmluZztcbiAgICBsaW5rc0NvbG9yPzogc3RyaW5nO1xuICAgIGJ1dHRvblRleHQ/OiBzdHJpbmc7XG4gICAgYnV0dG9uVGV4dENvbG9yPzogc3RyaW5nO1xuICAgIHByaWNlQ29sb3I/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU9yZGVyQ3VscWkge1xuICAgIGFtb3VudDogbnVtYmVyO1xuICAgIGN1cnJlbmN5X2NvZGU6IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIG9yZGVyX251bWJlcjogbnVtYmVyO1xuICAgIGNsaWVudF9kZXRhaWxzOiBJQ2xpZW50RGV0YWlscztcbiAgICBleHBpcmF0aW9uX2RhdGU6IG51bWJlcjtcbiAgICBjb25maXJtOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDbGllbnREZXRhaWxzIHtcbiAgICBmaXJzdF9uYW1lOiBzdHJpbmc7XG4gICAgbGFzdF9uYW1lOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbiAgICBwaG9uZV9udW1iZXI6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJT3JkZXJDdWxxaVJlc3BvbnNlIHtcbiAgICBvYmplY3Q6IHN0cmluZztcbiAgICBpZDogc3RyaW5nO1xuICAgIGFtb3VudDogbnVtYmVyO1xuICAgIHBheW1lbnRfY29kZTogbnVsbDtcbiAgICBjdXJyZW5jeV9jb2RlOiBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBvcmRlcl9udW1iZXI6IHN0cmluZztcbiAgICBzdGF0ZTogc3RyaW5nO1xuICAgIHRvdGFsX2ZlZTogbnVsbDtcbiAgICBuZXRfYW1vdW50OiBudWxsO1xuICAgIGZlZV9kZXRhaWxzOiBudWxsO1xuICAgIGNyZWF0aW9uX2RhdGU6IG51bWJlcjtcbiAgICBleHBpcmF0aW9uX2RhdGU6IG51bWJlcjtcbiAgICB1cGRhdGVkX2F0OiBudW1iZXI7XG4gICAgcGFpZF9hdDogbnVsbDtcbiAgICBhdmFpbGFibGVfb246IG51bGw7XG4gICAgbWV0YWRhdGE6IG51bGw7XG4gICAgcXI6IG51bGw7XG4gICAgY3VvdGVhbG86IG51bGw7XG4gICAgdXJsX3BlOiBudWxsO1xufVxuIl19
@@ -0,0 +1,17 @@
1
+ import { NgxCulqiService } from './ngx-culqi.service';
2
+ export class NgCulqiModule {
3
+ static forRoot(environment) {
4
+ console.log('NgCulqiModule.forRoot() environment', environment);
5
+ return {
6
+ ngModule: NgCulqiModule,
7
+ providers: [
8
+ NgxCulqiService,
9
+ {
10
+ provide: 'env',
11
+ useValue: environment
12
+ }
13
+ ]
14
+ };
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWN1bHFpLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jdWxxaS9zcmMvbGliL25neC1jdWxxaS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE1BQU0sT0FBTyxhQUFhO0lBQ2YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFnQjtRQUNsQyxPQUFPLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ2hFLE9BQU87WUFDSCxRQUFRLEVBQUUsYUFBYTtZQUN2QixTQUFTLEVBQUU7Z0JBQ1AsZUFBZTtnQkFDZjtvQkFDSSxPQUFPLEVBQUUsS0FBSztvQkFDZCxRQUFRLEVBQUUsV0FBVztpQkFDeEI7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3hDdWxxaVNlcnZpY2UgfSBmcm9tICcuL25neC1jdWxxaS5zZXJ2aWNlJztcblxuZXhwb3J0IGNsYXNzIE5nQ3VscWlNb2R1bGUge1xuICAgIHB1YmxpYyBzdGF0aWMgZm9yUm9vdChlbnZpcm9ubWVudDogYW55KTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ0N1bHFpTW9kdWxlPiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdOZ0N1bHFpTW9kdWxlLmZvclJvb3QoKSBlbnZpcm9ubWVudCcsIGVudmlyb25tZW50KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBOZ0N1bHFpTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgTmd4Q3VscWlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogJ2VudicsXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiBlbnZpcm9ubWVudFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgfTtcbiAgICB9XG59Il19
@@ -0,0 +1,88 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class NgxCulqiService {
6
+ constructor(http) {
7
+ this.http = http;
8
+ this.tokenCreatedSubject = new BehaviorSubject(null);
9
+ this.tokenCreated$ = this.tokenCreatedSubject.asObservable();
10
+ this.orderCreatedSubject = new BehaviorSubject(null);
11
+ this.orderCreated$ = this.orderCreatedSubject.asObservable();
12
+ window.culqi = this.culqi.bind(this);
13
+ this.loadScriptCulqi();
14
+ }
15
+ setTokenCreated(value) {
16
+ this.tokenCreatedSubject.next(value);
17
+ }
18
+ setOrderCreated(value) {
19
+ this.orderCreatedSubject.next(value);
20
+ }
21
+ initCulqi() {
22
+ Culqi.publicKey = 'environment.tokenCulqi';
23
+ }
24
+ loadScriptCulqi() {
25
+ const script = document.createElement('script');
26
+ script.type = 'text/javascript';
27
+ script.src = 'https://checkout.culqi.com/js/v4';
28
+ script.onload = () => {
29
+ console.log('Culqi loaded');
30
+ this.initCulqi();
31
+ };
32
+ document.head.appendChild(script);
33
+ }
34
+ generateOrder(order) {
35
+ return this.http.post('https://api.culqi.com/v2/orders', order, {
36
+ headers: {
37
+ Authorization: `Bearer ${'environment.apiKeyCulqi'}`
38
+ }
39
+ });
40
+ }
41
+ generateToken(culqiSettings, culqiOptions) {
42
+ if (Culqi) {
43
+ Culqi.settings(culqiSettings);
44
+ const options = {
45
+ lang: "es",
46
+ installments: false,
47
+ paymentMethods: {
48
+ tarjeta: true,
49
+ yape: true,
50
+ bancaMovil: true,
51
+ agente: true,
52
+ billetera: true,
53
+ cuotealo: true,
54
+ },
55
+ ...culqiOptions
56
+ };
57
+ Culqi.options(options);
58
+ Culqi.open();
59
+ }
60
+ }
61
+ culqi() {
62
+ if (Culqi.token) {
63
+ const token = Culqi.token.id;
64
+ this.setTokenCreated(token);
65
+ }
66
+ else if (Culqi.order) {
67
+ const order = Culqi.order;
68
+ this.setOrderCreated(order);
69
+ }
70
+ else {
71
+ console.log('Error :', Culqi.error);
72
+ }
73
+ }
74
+ closeCulqi() {
75
+ Culqi.close();
76
+ this.tokenCreatedSubject.unsubscribe();
77
+ this.orderCreatedSubject.unsubscribe();
78
+ }
79
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: NgxCulqiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
80
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: NgxCulqiService, providedIn: 'root' }); }
81
+ }
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: NgxCulqiService, decorators: [{
83
+ type: Injectable,
84
+ args: [{
85
+ providedIn: 'root'
86
+ }]
87
+ }], ctorParameters: () => [{ type: i1.HttpClient }] });
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWN1bHFpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY3VscWkvc3JjL2xpYi9uZ3gtY3VscWkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7OztBQU9uRCxNQUFNLE9BQU8sZUFBZTtJQU8xQixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBTnBDLHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFnQixJQUFJLENBQUMsQ0FBQztRQUMvRCxrQkFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUV4RCx3QkFBbUIsR0FBRyxJQUFJLGVBQWUsQ0FBZ0IsSUFBSSxDQUFDLENBQUM7UUFDL0Qsa0JBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7UUFHckQsTUFBYyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELFNBQVM7UUFDUCxLQUFLLENBQUMsU0FBUyxHQUFHLHdCQUF3QixDQUFDO0lBQzdDLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxNQUFNLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO1FBQ2hDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsa0NBQWtDLENBQUM7UUFDaEQsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDO1FBQ0YsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUdELGFBQWEsQ0FBQyxLQUFrQjtRQUM5QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlDQUFpQyxFQUFFLEtBQUssRUFBRTtZQUM5RCxPQUFPLEVBQUU7Z0JBQ1AsYUFBYSxFQUFFLFVBQVUseUJBQXlCLEVBQUU7YUFDckQ7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYSxDQUFDLGFBQTZCLEVBQUUsWUFBNEI7UUFDdkUsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDOUIsTUFBTSxPQUFPLEdBQWtCO2dCQUM3QixJQUFJLEVBQUUsSUFBSTtnQkFDVixZQUFZLEVBQUUsS0FBSztnQkFDbkIsY0FBYyxFQUFFO29CQUNkLE9BQU8sRUFBRSxJQUFJO29CQUNiLElBQUksRUFBRSxJQUFJO29CQUNWLFVBQVUsRUFBRSxJQUFJO29CQUNoQixNQUFNLEVBQUUsSUFBSTtvQkFDWixTQUFTLEVBQUUsSUFBSTtvQkFDZixRQUFRLEVBQUUsSUFBSTtpQkFDZjtnQkFDRCxHQUFHLFlBQVk7YUFDaEIsQ0FBQztZQUNGLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdkIsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDaEIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdkIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekMsQ0FBQzs4R0FqRlUsZUFBZTtrSEFBZixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJQ3VscWlPcHRpb25zLCBJQ3VscWlTZXR0aW5ncywgSU9yZGVyQ3VscWksIElPcmRlckN1bHFpUmVzcG9uc2UgfSBmcm9tICcuL21vZGVscy9jdWxxaS5tb2RlbCc7XG5leHBvcnQgZGVjbGFyZSBsZXQgQ3VscWk6IGFueTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTmd4Q3VscWlTZXJ2aWNlIHtcbiAgdG9rZW5DcmVhdGVkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIHRva2VuQ3JlYXRlZCQgPSB0aGlzLnRva2VuQ3JlYXRlZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgb3JkZXJDcmVhdGVkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIG9yZGVyQ3JlYXRlZCQgPSB0aGlzLm9yZGVyQ3JlYXRlZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgKHdpbmRvdyBhcyBhbnkpLmN1bHFpID0gdGhpcy5jdWxxaS5iaW5kKHRoaXMpO1xuICAgIHRoaXMubG9hZFNjcmlwdEN1bHFpKCk7XG4gIH1cblxuICBzZXRUb2tlbkNyZWF0ZWQodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudG9rZW5DcmVhdGVkU3ViamVjdC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHNldE9yZGVyQ3JlYXRlZCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5vcmRlckNyZWF0ZWRTdWJqZWN0Lm5leHQodmFsdWUpO1xuICB9XG5cbiAgaW5pdEN1bHFpKCk6IHZvaWQge1xuICAgIEN1bHFpLnB1YmxpY0tleSA9ICdlbnZpcm9ubWVudC50b2tlbkN1bHFpJztcbiAgfVxuXG4gIGxvYWRTY3JpcHRDdWxxaSgpOiB2b2lkIHtcbiAgICBjb25zdCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICBzY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgIHNjcmlwdC5zcmMgPSAnaHR0cHM6Ly9jaGVja291dC5jdWxxaS5jb20vanMvdjQnO1xuICAgIHNjcmlwdC5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnQ3VscWkgbG9hZGVkJyk7XG4gICAgICB0aGlzLmluaXRDdWxxaSgpO1xuICAgIH07XG4gICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xuICB9XG5cblxuICBnZW5lcmF0ZU9yZGVyKG9yZGVyOiBJT3JkZXJDdWxxaSk6IE9ic2VydmFibGU8UGFydGlhbDxJT3JkZXJDdWxxaVJlc3BvbnNlPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCgnaHR0cHM6Ly9hcGkuY3VscWkuY29tL3YyL29yZGVycycsIG9yZGVyLCB7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHsnZW52aXJvbm1lbnQuYXBpS2V5Q3VscWknfWBcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdlbmVyYXRlVG9rZW4oY3VscWlTZXR0aW5nczogSUN1bHFpU2V0dGluZ3MsIGN1bHFpT3B0aW9ucz86IElDdWxxaU9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoQ3VscWkpIHtcbiAgICAgIEN1bHFpLnNldHRpbmdzKGN1bHFpU2V0dGluZ3MpO1xuICAgICAgY29uc3Qgb3B0aW9uczogSUN1bHFpT3B0aW9ucyA9IHtcbiAgICAgICAgbGFuZzogXCJlc1wiLFxuICAgICAgICBpbnN0YWxsbWVudHM6IGZhbHNlLFxuICAgICAgICBwYXltZW50TWV0aG9kczoge1xuICAgICAgICAgIHRhcmpldGE6IHRydWUsXG4gICAgICAgICAgeWFwZTogdHJ1ZSxcbiAgICAgICAgICBiYW5jYU1vdmlsOiB0cnVlLFxuICAgICAgICAgIGFnZW50ZTogdHJ1ZSxcbiAgICAgICAgICBiaWxsZXRlcmE6IHRydWUsXG4gICAgICAgICAgY3VvdGVhbG86IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIC4uLmN1bHFpT3B0aW9uc1xuICAgICAgfTtcbiAgICAgIEN1bHFpLm9wdGlvbnMob3B0aW9ucyk7XG4gICAgICBDdWxxaS5vcGVuKCk7XG4gICAgfVxuICB9XG5cbiAgY3VscWkoKTogdm9pZCB7XG4gICAgaWYgKEN1bHFpLnRva2VuKSB7XG4gICAgICBjb25zdCB0b2tlbiA9IEN1bHFpLnRva2VuLmlkO1xuICAgICAgdGhpcy5zZXRUb2tlbkNyZWF0ZWQodG9rZW4pO1xuICAgIH0gZWxzZSBpZiAoQ3VscWkub3JkZXIpIHtcbiAgICAgIGNvbnN0IG9yZGVyID0gQ3VscWkub3JkZXI7XG4gICAgICB0aGlzLnNldE9yZGVyQ3JlYXRlZChvcmRlcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKCdFcnJvciA6JywgQ3VscWkuZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIGNsb3NlQ3VscWkoKTogdm9pZCB7XG4gICAgQ3VscWkuY2xvc2UoKTtcbiAgICB0aGlzLnRva2VuQ3JlYXRlZFN1YmplY3QudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLm9yZGVyQ3JlYXRlZFN1YmplY3QudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWN1bHFpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvbmd4LWN1bHFpL3NyYy9uZ3gtY3VscWkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ /*
2
+ * Public API Surface of ngx-culqi
3
+ */
4
+ export * from './lib/ngx-culqi.service';
5
+ export * from './lib/ngx-culqi.module';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1jdWxxaS9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LWN1bHFpXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWN1bHFpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWN1bHFpLm1vZHVsZSc7Il19
@@ -0,0 +1,115 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable } from '@angular/core';
3
+ import { BehaviorSubject } from 'rxjs';
4
+ import * as i1 from '@angular/common/http';
5
+
6
+ class NgxCulqiService {
7
+ constructor(http) {
8
+ this.http = http;
9
+ this.tokenCreatedSubject = new BehaviorSubject(null);
10
+ this.tokenCreated$ = this.tokenCreatedSubject.asObservable();
11
+ this.orderCreatedSubject = new BehaviorSubject(null);
12
+ this.orderCreated$ = this.orderCreatedSubject.asObservable();
13
+ window.culqi = this.culqi.bind(this);
14
+ this.loadScriptCulqi();
15
+ }
16
+ setTokenCreated(value) {
17
+ this.tokenCreatedSubject.next(value);
18
+ }
19
+ setOrderCreated(value) {
20
+ this.orderCreatedSubject.next(value);
21
+ }
22
+ initCulqi() {
23
+ Culqi.publicKey = 'environment.tokenCulqi';
24
+ }
25
+ loadScriptCulqi() {
26
+ const script = document.createElement('script');
27
+ script.type = 'text/javascript';
28
+ script.src = 'https://checkout.culqi.com/js/v4';
29
+ script.onload = () => {
30
+ console.log('Culqi loaded');
31
+ this.initCulqi();
32
+ };
33
+ document.head.appendChild(script);
34
+ }
35
+ generateOrder(order) {
36
+ return this.http.post('https://api.culqi.com/v2/orders', order, {
37
+ headers: {
38
+ Authorization: `Bearer ${'environment.apiKeyCulqi'}`
39
+ }
40
+ });
41
+ }
42
+ generateToken(culqiSettings, culqiOptions) {
43
+ if (Culqi) {
44
+ Culqi.settings(culqiSettings);
45
+ const options = {
46
+ lang: "es",
47
+ installments: false,
48
+ paymentMethods: {
49
+ tarjeta: true,
50
+ yape: true,
51
+ bancaMovil: true,
52
+ agente: true,
53
+ billetera: true,
54
+ cuotealo: true,
55
+ },
56
+ ...culqiOptions
57
+ };
58
+ Culqi.options(options);
59
+ Culqi.open();
60
+ }
61
+ }
62
+ culqi() {
63
+ if (Culqi.token) {
64
+ const token = Culqi.token.id;
65
+ this.setTokenCreated(token);
66
+ }
67
+ else if (Culqi.order) {
68
+ const order = Culqi.order;
69
+ this.setOrderCreated(order);
70
+ }
71
+ else {
72
+ console.log('Error :', Culqi.error);
73
+ }
74
+ }
75
+ closeCulqi() {
76
+ Culqi.close();
77
+ this.tokenCreatedSubject.unsubscribe();
78
+ this.orderCreatedSubject.unsubscribe();
79
+ }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: NgxCulqiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
81
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: NgxCulqiService, providedIn: 'root' }); }
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: NgxCulqiService, decorators: [{
84
+ type: Injectable,
85
+ args: [{
86
+ providedIn: 'root'
87
+ }]
88
+ }], ctorParameters: () => [{ type: i1.HttpClient }] });
89
+
90
+ class NgCulqiModule {
91
+ static forRoot(environment) {
92
+ console.log('NgCulqiModule.forRoot() environment', environment);
93
+ return {
94
+ ngModule: NgCulqiModule,
95
+ providers: [
96
+ NgxCulqiService,
97
+ {
98
+ provide: 'env',
99
+ useValue: environment
100
+ }
101
+ ]
102
+ };
103
+ }
104
+ }
105
+
106
+ /*
107
+ * Public API Surface of ngx-culqi
108
+ */
109
+
110
+ /**
111
+ * Generated bundle index. Do not edit.
112
+ */
113
+
114
+ export { NgCulqiModule, NgxCulqiService };
115
+ //# sourceMappingURL=ngx-culqi.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngx-culqi.mjs","sources":["../../../projects/ngx-culqi/src/lib/ngx-culqi.service.ts","../../../projects/ngx-culqi/src/lib/ngx-culqi.module.ts","../../../projects/ngx-culqi/src/public-api.ts","../../../projects/ngx-culqi/src/ngx-culqi.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { ICulqiOptions, ICulqiSettings, IOrderCulqi, IOrderCulqiResponse } from './models/culqi.model';\nexport declare let Culqi: any;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NgxCulqiService {\n tokenCreatedSubject = new BehaviorSubject<string | null>(null);\n tokenCreated$ = this.tokenCreatedSubject.asObservable();\n\n orderCreatedSubject = new BehaviorSubject<string | null>(null);\n orderCreated$ = this.orderCreatedSubject.asObservable();\n\n constructor(private http: HttpClient) {\n (window as any).culqi = this.culqi.bind(this);\n this.loadScriptCulqi();\n }\n\n setTokenCreated(value: string): void {\n this.tokenCreatedSubject.next(value);\n }\n\n setOrderCreated(value: string): void {\n this.orderCreatedSubject.next(value);\n }\n\n initCulqi(): void {\n Culqi.publicKey = 'environment.tokenCulqi';\n }\n\n loadScriptCulqi(): void {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = 'https://checkout.culqi.com/js/v4';\n script.onload = () => {\n console.log('Culqi loaded');\n this.initCulqi();\n };\n document.head.appendChild(script);\n }\n\n\n generateOrder(order: IOrderCulqi): Observable<Partial<IOrderCulqiResponse>> {\n return this.http.post('https://api.culqi.com/v2/orders', order, {\n headers: {\n Authorization: `Bearer ${'environment.apiKeyCulqi'}`\n }\n });\n }\n\n generateToken(culqiSettings: ICulqiSettings, culqiOptions?: ICulqiOptions): void {\n if (Culqi) {\n Culqi.settings(culqiSettings);\n const options: ICulqiOptions = {\n lang: \"es\",\n installments: false,\n paymentMethods: {\n tarjeta: true,\n yape: true,\n bancaMovil: true,\n agente: true,\n billetera: true,\n cuotealo: true,\n },\n ...culqiOptions\n };\n Culqi.options(options);\n Culqi.open();\n }\n }\n\n culqi(): void {\n if (Culqi.token) {\n const token = Culqi.token.id;\n this.setTokenCreated(token);\n } else if (Culqi.order) {\n const order = Culqi.order;\n this.setOrderCreated(order);\n } else {\n console.log('Error :', Culqi.error);\n }\n }\n\n closeCulqi(): void {\n Culqi.close();\n this.tokenCreatedSubject.unsubscribe();\n this.orderCreatedSubject.unsubscribe();\n }\n}\n","import { ModuleWithProviders } from '@angular/core';\nimport { NgxCulqiService } from './ngx-culqi.service';\n\nexport class NgCulqiModule {\n public static forRoot(environment: any): ModuleWithProviders<NgCulqiModule> {\n console.log('NgCulqiModule.forRoot() environment', environment);\n return {\n ngModule: NgCulqiModule,\n providers: [\n NgxCulqiService,\n {\n provide: 'env',\n useValue: environment\n }\n ]\n };\n }\n}","/*\n * Public API Surface of ngx-culqi\n */\n\nexport * from './lib/ngx-culqi.service';\nexport * from './lib/ngx-culqi.module';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="ngx-culqi" />
5
+ export * from './public-api';
@@ -0,0 +1,69 @@
1
+ export interface ICulqiSettings {
2
+ title: string;
3
+ currency: string;
4
+ amount: number;
5
+ order: string | undefined;
6
+ xculqirsaid: string;
7
+ rsapublickey: string;
8
+ }
9
+ export interface ICulqiOptions {
10
+ lang?: string;
11
+ installments?: boolean;
12
+ paymentMethods?: IPaymentMethods;
13
+ style?: IStyle;
14
+ }
15
+ export interface IPaymentMethods {
16
+ tarjeta: boolean;
17
+ yape: boolean;
18
+ bancaMovil: boolean;
19
+ agente: boolean;
20
+ billetera: boolean;
21
+ cuotealo: boolean;
22
+ }
23
+ export interface IStyle {
24
+ logo: string;
25
+ bannerColor?: string;
26
+ buttonBackground?: string;
27
+ menuColor?: string;
28
+ linksColor?: string;
29
+ buttonText?: string;
30
+ buttonTextColor?: string;
31
+ priceColor?: string;
32
+ }
33
+ export interface IOrderCulqi {
34
+ amount: number;
35
+ currency_code: string;
36
+ description: string;
37
+ order_number: number;
38
+ client_details: IClientDetails;
39
+ expiration_date: number;
40
+ confirm: boolean;
41
+ }
42
+ export interface IClientDetails {
43
+ first_name: string;
44
+ last_name: string;
45
+ email: string;
46
+ phone_number: string;
47
+ }
48
+ export interface IOrderCulqiResponse {
49
+ object: string;
50
+ id: string;
51
+ amount: number;
52
+ payment_code: null;
53
+ currency_code: string;
54
+ description: string;
55
+ order_number: string;
56
+ state: string;
57
+ total_fee: null;
58
+ net_amount: null;
59
+ fee_details: null;
60
+ creation_date: number;
61
+ expiration_date: number;
62
+ updated_at: number;
63
+ paid_at: null;
64
+ available_on: null;
65
+ metadata: null;
66
+ qr: null;
67
+ cuotealo: null;
68
+ url_pe: null;
69
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"culqi.model.d.ts","sourceRoot":"","sources":["../../../../projects/ngx-culqi/src/lib/models/culqi.model.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACxB;AACD,MAAM,WAAW,aAAa;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,MAAM;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,cAAc,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,IAAI,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,IAAI,CAAC;IACjB,WAAW,EAAE,IAAI,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC;IACd,YAAY,EAAE,IAAI,CAAC;IACnB,QAAQ,EAAE,IAAI,CAAC;IACf,EAAE,EAAE,IAAI,CAAC;IACT,QAAQ,EAAE,IAAI,CAAC;IACf,MAAM,EAAE,IAAI,CAAC;CAChB"}
@@ -0,0 +1,4 @@
1
+ import { ModuleWithProviders } from '@angular/core';
2
+ export declare class NgCulqiModule {
3
+ static forRoot(environment: any): ModuleWithProviders<NgCulqiModule>;
4
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngx-culqi.module.d.ts","sourceRoot":"","sources":["../../../projects/ngx-culqi/src/lib/ngx-culqi.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,qBAAa,aAAa;WACR,OAAO,CAAC,WAAW,EAAE,GAAG,GAAG,mBAAmB,CAAC,aAAa,CAAC;CAa9E"}
@@ -0,0 +1,23 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { BehaviorSubject, Observable } from 'rxjs';
3
+ import { ICulqiOptions, ICulqiSettings, IOrderCulqi, IOrderCulqiResponse } from './models/culqi.model';
4
+ import * as i0 from "@angular/core";
5
+ export declare let Culqi: any;
6
+ export declare class NgxCulqiService {
7
+ private http;
8
+ tokenCreatedSubject: BehaviorSubject<string | null>;
9
+ tokenCreated$: Observable<string | null>;
10
+ orderCreatedSubject: BehaviorSubject<string | null>;
11
+ orderCreated$: Observable<string | null>;
12
+ constructor(http: HttpClient);
13
+ setTokenCreated(value: string): void;
14
+ setOrderCreated(value: string): void;
15
+ initCulqi(): void;
16
+ loadScriptCulqi(): void;
17
+ generateOrder(order: IOrderCulqi): Observable<Partial<IOrderCulqiResponse>>;
18
+ generateToken(culqiSettings: ICulqiSettings, culqiOptions?: ICulqiOptions): void;
19
+ culqi(): void;
20
+ closeCulqi(): void;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgxCulqiService, never>;
22
+ static ɵprov: i0.ɵɵInjectableDeclaration<NgxCulqiService>;
23
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngx-culqi.service.d.ts","sourceRoot":"","sources":["../../../projects/ngx-culqi/src/lib/ngx-culqi.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;;AACvG,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,GAAG,CAAC;AAE9B,qBAGa,eAAe;IAOd,OAAO,CAAC,IAAI;IANxB,mBAAmB,iCAA4C;IAC/D,aAAa,4BAA2C;IAExD,mBAAmB,iCAA4C;IAC/D,aAAa,4BAA2C;gBAEpC,IAAI,EAAE,UAAU;IAKpC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIpC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIpC,SAAS,IAAI,IAAI;IAIjB,eAAe,IAAI,IAAI;IAYvB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAQ3E,aAAa,CAAC,aAAa,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,aAAa,GAAG,IAAI;IAqBhF,KAAK,IAAI,IAAI;IAYb,UAAU,IAAI,IAAI;yCA7EP,eAAe;6CAAf,eAAe;CAkF3B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngx-culqi.d.ts","sourceRoot":"","sources":["../../projects/ngx-culqi/src/ngx-culqi.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,cAAc,CAAC"}
package/package.json ADDED
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "ngx-culqi",
3
+ "version": "2.0.0-rc.1",
4
+ "description": "Culqi Library for the Angular framework.",
5
+ "author": "Luis Eduardo <luiseperezp.10@gmail.com>",
6
+ "license": "MIT",
7
+ "keywords": [
8
+ "javascript",
9
+ "node",
10
+ "npm",
11
+ "culqi",
12
+ "angular",
13
+ "ngx-culqi"
14
+ ],
15
+ "peerDependencies": {
16
+ "@angular/common": "^18.0.0",
17
+ "@angular/core": "^18.0.0"
18
+ },
19
+ "dependencies": {
20
+ "tslib": "^2.3.0"
21
+ },
22
+ "sideEffects": false,
23
+ "repository": {
24
+ "type": "git",
25
+ "url": "git+https://github.com/lperezp/ngx-culqi.git"
26
+ },
27
+ "bugs": {
28
+ "url": "https://github.com/lperezp/ngx-culqi/issues"
29
+ },
30
+ "module": "fesm2022/ngx-culqi.mjs",
31
+ "typings": "index.d.ts",
32
+ "exports": {
33
+ "./package.json": {
34
+ "default": "./package.json"
35
+ },
36
+ ".": {
37
+ "types": "./index.d.ts",
38
+ "esm2022": "./esm2022/ngx-culqi.mjs",
39
+ "esm": "./esm2022/ngx-culqi.mjs",
40
+ "default": "./fesm2022/ngx-culqi.mjs"
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,2 @@
1
+ export * from './lib/ngx-culqi.service';
2
+ export * from './lib/ngx-culqi.module';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../projects/ngx-culqi/src/public-api.ts"],"names":[],"mappings":"AAIA,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC"}