@osovitny/anatoly 3.17.79 → 3.17.80
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/esm2022/lib/billing/billing.module.mjs +9 -12
- package/esm2022/lib/billing/components/braintree/braintree.component.mjs +155 -0
- package/esm2022/lib/billing/components/exports.mjs +22 -0
- package/esm2022/lib/billing/components/index.mjs +25 -0
- package/esm2022/lib/billing/components/paypal/paypal-button.component.mjs +157 -0
- package/esm2022/lib/billing/components/paypal/paypal.component.mjs +316 -0
- package/esm2022/lib/billing/components/stripe/stripe.component.mjs +109 -0
- package/esm2022/lib/billing/exports.mjs +3 -4
- package/esm2022/lib/billing/services/payments.service.mjs +173 -0
- package/fesm2022/osovitny-anatoly.mjs +17 -20
- package/fesm2022/osovitny-anatoly.mjs.map +1 -1
- package/lib/billing/billing.module.d.ts +4 -4
- package/lib/billing/{payments/components → components}/braintree/braintree.component.d.ts +3 -3
- package/lib/billing/components/index.d.ts +2 -0
- package/lib/billing/{payments/components → components}/paypal/paypal-button.component.d.ts +3 -3
- package/lib/billing/{payments/components → components}/paypal/paypal.component.d.ts +3 -3
- package/lib/billing/{payments/components → components}/stripe/stripe.component.d.ts +2 -2
- package/lib/billing/exports.d.ts +2 -2
- package/lib/billing/{payments/services → services}/payments.service.d.ts +4 -4
- package/lib/ui/forms/index.d.ts +1 -1
- package/package.json +1 -1
- package/esm2022/lib/billing/payments/components/braintree/braintree.component.mjs +0 -155
- package/esm2022/lib/billing/payments/components/exports.mjs +0 -22
- package/esm2022/lib/billing/payments/components/index.mjs +0 -25
- package/esm2022/lib/billing/payments/components/paypal/paypal-button.component.mjs +0 -157
- package/esm2022/lib/billing/payments/components/paypal/paypal.component.mjs +0 -316
- package/esm2022/lib/billing/payments/components/stripe/stripe.component.mjs +0 -109
- package/esm2022/lib/billing/payments/services/payments.service.mjs +0 -173
- package/lib/billing/payments/components/index.d.ts +0 -2
- /package/lib/billing/{payments/components → components}/exports.d.ts +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./
|
|
3
|
-
import * as i2 from "./
|
|
4
|
-
import * as i3 from "./
|
|
5
|
-
import * as i4 from "./
|
|
2
|
+
import * as i1 from "./components/paypal/paypal-button.component";
|
|
3
|
+
import * as i2 from "./components/paypal/paypal.component";
|
|
4
|
+
import * as i3 from "./components/braintree/braintree.component";
|
|
5
|
+
import * as i4 from "./components/stripe/stripe.component";
|
|
6
6
|
import * as i5 from "@angular/common";
|
|
7
7
|
import * as i6 from "../external/fa.module";
|
|
8
8
|
import * as i7 from "../external/kendo.module";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DialogBase } from '
|
|
1
|
+
import { DialogBase } from '../../../ui/components/base/dialog';
|
|
2
2
|
import { PaymentsService } from '../../services/payments.service';
|
|
3
|
-
import { NotificationService } from '
|
|
3
|
+
import { NotificationService } from '../../../core/notifications/services/notification-service';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class BraintreeDialog extends DialogBase {
|
|
6
6
|
ps: PaymentsService;
|
|
@@ -21,5 +21,5 @@ export declare class BraintreeDialog extends DialogBase {
|
|
|
21
21
|
onClose(): void;
|
|
22
22
|
get visible(): boolean;
|
|
23
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<BraintreeDialog, never>;
|
|
24
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<BraintreeDialog, "anatoly-
|
|
24
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BraintreeDialog, "anatoly-billing-braintree-dialog", never, { "paidFor": { "alias": "paidFor"; "required": false; }; "title": { "alias": "title"; "required": false; }; "description": { "alias": "description"; "required": false; }; "image": { "alias": "image"; "required": false; }; }, {}, never, never, false, never>;
|
|
25
25
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ComponentBase } from '
|
|
1
|
+
import { ComponentBase } from '../../../ui/components/base/components/component';
|
|
2
2
|
import { PaymentsService } from '../../services/payments.service';
|
|
3
|
-
import { IPayPalConfig } from '
|
|
3
|
+
import { IPayPalConfig } from '../../models/paypal-models';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class PaypalButtonComponent extends ComponentBase {
|
|
6
6
|
ps: PaymentsService;
|
|
@@ -14,5 +14,5 @@ export declare class PaypalButtonComponent extends ComponentBase {
|
|
|
14
14
|
private initPayPal;
|
|
15
15
|
get visible(): boolean;
|
|
16
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<PaypalButtonComponent, never>;
|
|
17
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PaypalButtonComponent, "anatoly-
|
|
17
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PaypalButtonComponent, "anatoly-billing-paypal-button", never, { "paidForTitle": { "alias": "paidForTitle"; "required": false; }; "paidFor": { "alias": "paidFor"; "required": false; }; }, {}, never, never, false, never>;
|
|
18
18
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, SimpleChanges } from "@angular/core";
|
|
2
|
-
import { IPayPalConfig } from '
|
|
3
|
-
import { PayPalScriptService } from '
|
|
2
|
+
import { IPayPalConfig } from '../../models/paypal-models';
|
|
3
|
+
import { PayPalScriptService } from '../../services/paypal-script.service';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class PayPalComponent implements OnChanges, OnDestroy, AfterViewInit {
|
|
6
6
|
private paypalScriptService;
|
|
@@ -46,5 +46,5 @@ export declare class PayPalComponent implements OnChanges, OnDestroy, AfterViewI
|
|
|
46
46
|
private initPayPal;
|
|
47
47
|
private generateGuid;
|
|
48
48
|
static ɵfac: i0.ɵɵFactoryDeclaration<PayPalComponent, never>;
|
|
49
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PayPalComponent, "anatoly-
|
|
49
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PayPalComponent, "anatoly-billing-paypal-container", never, { "config": { "alias": "config"; "required": false; }; "registerScript": { "alias": "registerScript"; "required": false; }; }, { "scriptLoaded": "scriptLoaded"; }, never, never, false, never>;
|
|
50
50
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DialogBase } from '
|
|
1
|
+
import { DialogBase } from '../../../ui/components/base/dialog';
|
|
2
2
|
import { PaymentsService } from '../../services/payments.service';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare class StripeDialog extends DialogBase {
|
|
@@ -17,5 +17,5 @@ export declare class StripeDialog extends DialogBase {
|
|
|
17
17
|
onClose(): void;
|
|
18
18
|
get visible(): boolean;
|
|
19
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<StripeDialog, never>;
|
|
20
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<StripeDialog, "anatoly-
|
|
20
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<StripeDialog, "anatoly-billing-stripe-dialog", never, { "paidFor": { "alias": "paidFor"; "required": false; }; "title": { "alias": "title"; "required": false; }; "description": { "alias": "description"; "required": false; }; "image": { "alias": "image"; "required": false; }; }, {}, never, never, false, never>;
|
|
21
21
|
}
|
package/lib/billing/exports.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export * from './
|
|
1
|
+
export * from './components/exports';
|
|
2
|
+
export * from './services/payments.service';
|
|
3
3
|
export * from './services/paypal-script.service';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { NgZone } from '@angular/core';
|
|
2
|
-
import { PaymentStage } from '
|
|
3
|
-
import { PaymentsApiService } from '
|
|
4
|
-
import { NotificationService } from '
|
|
5
|
-
import { GoogleAnalyticsService } from '
|
|
2
|
+
import { PaymentStage } from '../../core/enums/billing';
|
|
3
|
+
import { PaymentsApiService } from '../../data/services/billing/payments-api.service';
|
|
4
|
+
import { NotificationService } from '../../core/notifications/services/notification-service';
|
|
5
|
+
import { GoogleAnalyticsService } from '../../core/services/google-analytics.service';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export declare class PaymentsService {
|
|
8
8
|
private zone;
|
package/lib/ui/forms/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { AddressComponent, CompanyComponent, ContactUsForm } from './exports';
|
|
2
|
-
export declare const FORMS: (typeof
|
|
2
|
+
export declare const FORMS: (typeof ContactUsForm | typeof AddressComponent | typeof CompanyComponent)[];
|
package/package.json
CHANGED
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
<file>
|
|
3
|
-
Project:
|
|
4
|
-
@osovitny/anatoly
|
|
5
|
-
|
|
6
|
-
Authors:
|
|
7
|
-
Dhruv Agarwal dhruv.agarwal@osovitny.com
|
|
8
|
-
|
|
9
|
-
Created:
|
|
10
|
-
14 Aug 2024
|
|
11
|
-
|
|
12
|
-
Description:
|
|
13
|
-
Credit Card payment form via braintree integration
|
|
14
|
-
|
|
15
|
-
Copyright (c) 2016-2024 Osovitny Inc. All rights reserved.
|
|
16
|
-
</file>
|
|
17
|
-
*/
|
|
18
|
-
//Node
|
|
19
|
-
import { Component, Input } from '@angular/core';
|
|
20
|
-
import * as dropin from 'braintree-web-drop-in';
|
|
21
|
-
//App
|
|
22
|
-
import { DialogBase } from '../../../../ui/components/base/dialog';
|
|
23
|
-
import * as i0 from "@angular/core";
|
|
24
|
-
import * as i1 from "../../services/payments.service";
|
|
25
|
-
import * as i2 from "../../../../core/notifications/services/notification-service";
|
|
26
|
-
import * as i3 from "@progress/kendo-angular-dialog";
|
|
27
|
-
function BraintreeDialog_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
28
|
-
const _r2 = i0.ɵɵgetCurrentView();
|
|
29
|
-
i0.ɵɵelementStart(0, "div", 1)(1, "kendo-dialog", 2);
|
|
30
|
-
i0.ɵɵlistener("close", function BraintreeDialog_Conditional_0_Template_kendo_dialog_close_1_listener() { i0.ɵɵrestoreView(_r2); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onClose()); });
|
|
31
|
-
i0.ɵɵelementStart(2, "kendo-dialog-titlebar");
|
|
32
|
-
i0.ɵɵtext(3, "Pay with Credit Card");
|
|
33
|
-
i0.ɵɵelementEnd();
|
|
34
|
-
i0.ɵɵelementStart(4, "div", 3);
|
|
35
|
-
i0.ɵɵelement(5, "div", 4);
|
|
36
|
-
i0.ɵɵelementEnd();
|
|
37
|
-
i0.ɵɵelementStart(6, "kendo-dialog-actions", 5)(7, "button", 6);
|
|
38
|
-
i0.ɵɵlistener("click", function BraintreeDialog_Conditional_0_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r2); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onPay()); });
|
|
39
|
-
i0.ɵɵtext(8, "Pay");
|
|
40
|
-
i0.ɵɵelementEnd();
|
|
41
|
-
i0.ɵɵelementStart(9, "button", 7);
|
|
42
|
-
i0.ɵɵlistener("click", function BraintreeDialog_Conditional_0_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r2); const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.onClose()); });
|
|
43
|
-
i0.ɵɵtext(10, "Cancel");
|
|
44
|
-
i0.ɵɵelementEnd()()()();
|
|
45
|
-
} if (rf & 2) {
|
|
46
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
47
|
-
i0.ɵɵadvance();
|
|
48
|
-
i0.ɵɵproperty("width", 480)("height", 560)("themeColor", ctx_r0.themeColor);
|
|
49
|
-
} }
|
|
50
|
-
export class BraintreeDialog extends DialogBase {
|
|
51
|
-
constructor(ps, ns) {
|
|
52
|
-
super();
|
|
53
|
-
this.ps = ps;
|
|
54
|
-
this.ns = ns;
|
|
55
|
-
}
|
|
56
|
-
ngOnInit() {
|
|
57
|
-
this.setValues();
|
|
58
|
-
}
|
|
59
|
-
setValues() {
|
|
60
|
-
this.ps.showBraintreeDialog$.subscribe((isOpen) => {
|
|
61
|
-
this.isOpen = true;
|
|
62
|
-
this.initializeEmbedForm();
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
initializeEmbedForm() {
|
|
66
|
-
const that = this;
|
|
67
|
-
// let totalPrice = this.bs.getTotal().toString();
|
|
68
|
-
// let currency = this.bs.currency;
|
|
69
|
-
this.ps.createBraintreeToken().subscribe((response) => {
|
|
70
|
-
if (response?.token) {
|
|
71
|
-
dropin.create({
|
|
72
|
-
authorization: response?.token,
|
|
73
|
-
container: '#braintree-container',
|
|
74
|
-
card: {
|
|
75
|
-
cardholderName: true
|
|
76
|
-
},
|
|
77
|
-
//UNCOMMENT BELOW FOR GOOGLEPAY / VENMO
|
|
78
|
-
// googlePay: {
|
|
79
|
-
// merchantId: '',
|
|
80
|
-
// transactionInfo: {
|
|
81
|
-
// currencyCode: currency,
|
|
82
|
-
// totalPriceStatus: 'FINAL',
|
|
83
|
-
// totalPrice: totalPrice,
|
|
84
|
-
// }
|
|
85
|
-
// },
|
|
86
|
-
// venmo: {
|
|
87
|
-
// allowNewBrowserTab: false
|
|
88
|
-
// },
|
|
89
|
-
dataCollector: true
|
|
90
|
-
}, function (createErr, instance) {
|
|
91
|
-
if (instance) {
|
|
92
|
-
that.braintreeInstance = instance;
|
|
93
|
-
instance._dataCollector._instance.getDeviceData().then((deviceData) => {
|
|
94
|
-
that.deviceData = deviceData;
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
that.ns.error('Credit Card Payment is facing issues. Please try other payment methods.');
|
|
99
|
-
that.closeDialog();
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
submitPayment(payload) {
|
|
106
|
-
this.ps.pay(this.paidFor, payload.nonce, 'COMPLETED', this.deviceData);
|
|
107
|
-
}
|
|
108
|
-
closeDialog() {
|
|
109
|
-
super.close();
|
|
110
|
-
this.braintreeInstance = null;
|
|
111
|
-
}
|
|
112
|
-
//Events
|
|
113
|
-
onPay() {
|
|
114
|
-
if (this.braintreeInstance && this.deviceData) {
|
|
115
|
-
const that = this;
|
|
116
|
-
this.braintreeInstance.requestPaymentMethod(function (requestPaymentErr, payload) {
|
|
117
|
-
that.submitPayment(payload);
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
onClose() {
|
|
122
|
-
const closeDialog = this.closeDialog;
|
|
123
|
-
if (this.braintreeInstance) {
|
|
124
|
-
this.braintreeInstance.teardown(function (err) {
|
|
125
|
-
closeDialog();
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
closeDialog();
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
get visible() {
|
|
133
|
-
return this.isOpen && this.ps.getTotal() > 0;
|
|
134
|
-
}
|
|
135
|
-
static { this.ɵfac = function BraintreeDialog_Factory(t) { return new (t || BraintreeDialog)(i0.ɵɵdirectiveInject(i1.PaymentsService), i0.ɵɵdirectiveInject(i2.NotificationService)); }; }
|
|
136
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BraintreeDialog, selectors: [["anatoly-payments-braintree-dialog"]], inputs: { paidFor: "paidFor", title: "title", description: "description", image: "image" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [["class", "send-message__kendo-dialog"], [1, "send-message__kendo-dialog"], [3, "width", "height", "themeColor", "close"], [1, "kendo-dialog-content"], ["id", "braintree-container"], ["layout", "end"], ["type", "button", 1, "btn", "btn-sm", "btn-success", 3, "click"], ["type", "button", 1, "btn", "btn-sm", "btn-danger", 3, "click"]], template: function BraintreeDialog_Template(rf, ctx) { if (rf & 1) {
|
|
137
|
-
i0.ɵɵtemplate(0, BraintreeDialog_Conditional_0_Template, 11, 3, "div", 0);
|
|
138
|
-
} if (rf & 2) {
|
|
139
|
-
i0.ɵɵconditional(0, ctx.visible ? 0 : -1);
|
|
140
|
-
} }, dependencies: [i3.DialogComponent, i3.DialogTitleBarComponent, i3.DialogActionsComponent], encapsulation: 2 }); }
|
|
141
|
-
}
|
|
142
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BraintreeDialog, [{
|
|
143
|
-
type: Component,
|
|
144
|
-
args: [{ selector: 'anatoly-payments-braintree-dialog', template: "@if (visible) {\r\n <div class='send-message__kendo-dialog'>\r\n <kendo-dialog [width]='480' [height]='560' [themeColor]='themeColor' (close)='onClose()'>\r\n <kendo-dialog-titlebar>Pay with Credit Card</kendo-dialog-titlebar>\r\n <div class='kendo-dialog-content'>\r\n <div id=\"braintree-container\"></div>\r\n </div>\r\n <kendo-dialog-actions layout='end'>\r\n <button class='btn btn-sm btn-success' type='button' (click)='onPay()'>Pay</button>\r\n <button class='btn btn-sm btn-danger' type='button' (click)='onClose()'>Cancel</button>\r\n </kendo-dialog-actions>\r\n </kendo-dialog>\r\n </div>\r\n}\r\n" }]
|
|
145
|
-
}], () => [{ type: i1.PaymentsService }, { type: i2.NotificationService }], { paidFor: [{
|
|
146
|
-
type: Input
|
|
147
|
-
}], title: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}], description: [{
|
|
150
|
-
type: Input
|
|
151
|
-
}], image: [{
|
|
152
|
-
type: Input
|
|
153
|
-
}] }); })();
|
|
154
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BraintreeDialog, { className: "BraintreeDialog", filePath: "lib\\billing\\payments\\components\\braintree\\braintree.component.ts", lineNumber: 32 }); })();
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJhaW50cmVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL3BheW1lbnRzL2NvbXBvbmVudHMvYnJhaW50cmVlL2JyYWludHJlZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9wYXltZW50cy9jb21wb25lbnRzL2JyYWludHJlZS9icmFpbnRyZWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkU7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxLQUFLLE1BQU0sTUFBTSx1QkFBdUIsQ0FBQztBQUVoRCxLQUFLO0FBQ0wsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7O0lDdEJqRSw4QkFBd0Msc0JBQUE7SUFDK0IsMEtBQVMsZUFBQSxnQkFBUyxDQUFBLElBQUM7SUFDdEYsNkNBQXVCO0lBQUEsb0NBQW9CO0lBQUEsaUJBQXdCO0lBQ25FLDhCQUFrQztJQUNoQyx5QkFBb0M7SUFDdEMsaUJBQU07SUFDTiwrQ0FBbUMsZ0JBQUE7SUFDb0Isb0tBQVMsZUFBQSxjQUFPLENBQUEsSUFBQztJQUFDLG1CQUFHO0lBQUEsaUJBQVM7SUFDbkYsaUNBQXlFO0lBQXBCLG9LQUFTLGVBQUEsZ0JBQVMsQ0FBQSxJQUFDO0lBQUMsdUJBQU07SUFBQSxpQkFBUyxFQUFBLEVBQUEsRUFBQTs7O0lBUDlFLGNBQWE7SUFBYiwyQkFBYSxlQUFBLGlDQUFBOztBRDZCL0IsTUFBTSxPQUFPLGVBQWdCLFNBQVEsVUFBVTtJQVM3QyxZQUNTLEVBQW1CLEVBQ2xCLEVBQXVCO1FBQy9CLEtBQUssRUFB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Q0FBQyxVQUFTLEdBQUc7Z0JBQzFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUNJLENBQUM7WUFDSixXQUFXLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDL0MsQ0FBQztnRkF2R1UsZUFBZTtvRUFBZixlQUFlO1lDL0I1Qix5RUFhQzs7WUFiRCx5Q0FhQzs7O2lGRGtCWSxlQUFlO2NBSjNCLFNBQVM7MkJBQ0UsbUNBQW1DO2tGQU9wQyxPQUFPO2tCQUFmLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxXQUFXO2tCQUFuQixLQUFLO1lBQ0csS0FBSztrQkFBYixLQUFLOztrRkFQSyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBEaHJ1diBBZ2Fyd2FsIGRocnV2LmFnYXJ3YWxAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxNCBBdWcgMjAyNFxyXG5cclxuICBEZXNjcmlwdGlvbjpcclxuICAgIENyZWRpdCBDYXJkIHBheW1lbnQgZm9ybSB2aWEgYnJhaW50cmVlIGludGVncmF0aW9uXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDI0IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgZHJvcGluIGZyb20gJ2JyYWludHJlZS13ZWItZHJvcC1pbic7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBEaWFsb2dCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkvY29tcG9uZW50cy9iYXNlL2RpYWxvZyc7XHJcbmltcG9ydCB7IFBheW1lbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BheW1lbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9ub3RpZmljYXRpb25zL3NlcnZpY2VzL25vdGlmaWNhdGlvbi1zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5hdG9seS1wYXltZW50cy1icmFpbnRyZWUtZGlhbG9nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnJhaW50cmVlLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQnJhaW50cmVlRGlhbG9nIGV4dGVuZHMgRGlhbG9nQmFzZSB7XHJcbiAgYnJhaW50cmVlSW5zdGFuY2U6IGFueTtcclxuICBkZXZpY2VEYXRhOiBhbnk7XHJcblxyXG4gIEBJbnB1dCgpIHBhaWRGb3I7XHJcbiAgQElucHV0KCkgdGl0bGU7XHJcbiAgQElucHV0KCkgZGVzY3JpcHRpb247XHJcbiAgQElucHV0KCkgaW1hZ2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHBzOiBQYXltZW50c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIG5zOiBOb3RpZmljYXRpb25TZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldFZhbHVlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRWYWx1ZXMoKSB7XHJcbiAgICB0aGlzLnBzLnNob3dCcmFpbnRyZWVEaWFsb2ckLnN1YnNjcmliZSgoaXNPcGVuKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcclxuICAgICAgdGhpcy5pbml0aWFsaXplRW1iZWRGb3JtKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGluaXRpYWxpemVFbWJlZEZvcm0oKSB7XHJcbiAgICBjb25zdCB0aGF0ID0gdGhpcztcclxuICAgIC8vIGxldCB0b3RhbFByaWNlID0gdGhpcy5icy5nZXRUb3RhbCgpLnRvU3RyaW5nKCk7XHJcbiAgICAvLyBsZXQgY3VycmVuY3kgPSB0aGlzLmJzLmN1cnJlbmN5O1xyXG5cclxuICAgIHRoaXMucHMuY3JlYXRlQnJhaW50cmVlVG9rZW4oKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIGlmKHJlc3BvbnNlPy50b2tlbikge1xyXG4gICAgICAgIGRyb3Bpbi5jcmVhdGUoe1xyXG4gICAgICAgICAgYXV0aG9yaXphdGlvbjogcmVzcG9uc2U/LnRva2VuLFxyXG4gICAgICAgICAgY29udGFpbmVyOiAnI2JyYWludHJlZS1jb250YWluZXInLFxyXG4gICAgICAgICAgY2FyZDoge1xyXG4gICAgICAgICAgICBjYXJkaG9sZGVyTmFtZTogdHJ1ZVxyXG4gICAgICAgICAgfSxcclxuXHJcbiAgICAgICAgICAvL1VOQ09NTUVOVCBCRUxPVyBGT1IgR09PR0xFUEFZIC8gVkVOTU9cclxuICAgICAgICAgIC8vIGdvb2dsZVBheToge1xyXG4gICAgICAgICAgLy8gICBtZXJjaGFudElkOiAnJyxcclxuICAgICAgICAgIC8vICAgdHJhbnNhY3Rpb25JbmZvOiB7XHJcbiAgICAgICAgICAvLyAgICAgY3VycmVuY3lDb2RlOiBjdXJyZW5jeSxcclxuICAgICAgICAgIC8vICAgICB0b3RhbFByaWNlU3RhdHVzOiAnRklOQUwnLFxyXG4gICAgICAgICAgLy8gICAgIHRvdGFsUHJpY2U6IHRvdGFsUHJpY2UsXHJcbiAgICAgICAgICAvLyAgIH1cclxuICAgICAgICAgIC8vIH0sXHJcbiAgICAgICAgICAvLyB2ZW5tbzoge1xyXG4gICAgICAgICAgLy8gICBhbGxvd05ld0Jyb3dzZXJUYWI6IGZhbHNlXHJcbiAgICAgICAgICAvLyB9LFxyXG4gICAgICAgICAgZGF0YUNvbGxlY3RvcjogdHJ1ZVxyXG4gICAgICAgIH0sIGZ1bmN0aW9uKGNyZWF0ZUVyciwgaW5zdGFuY2UpIHtcclxuICAgICAgICAgIGlmIChpbnN0YW5jZSkge1xyXG4gICAgICAgICAgICB0aGF0LmJyYWludHJlZUluc3RhbmNlID0gaW5zdGFuY2U7XHJcbiAgICAgICAgICAgIGluc3RhbmNlLl9kYXRhQ29sbGVjdG9yLl9pbnN0YW5jZS5nZXREZXZpY2VEYXRhKCkudGhlbigoZGV2aWNlRGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoYXQuZGV2aWNlRGF0YSA9IGRldmljZURhdGE7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhhdC5ucy5lcnJvcignQ3JlZGl0IENhcmQgUGF5bWVudCBpcyBmYWNpbmcgaXNzdWVzLiBQbGVhc2UgdHJ5IG90aGVyIHBheW1lbnQgbWV0aG9kcy4nKVxyXG4gICAgICAgICAgICB0aGF0LmNsb3NlRGlhbG9nKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0UGF5bWVudChwYXlsb2FkKSB7XHJcbiAgICB0aGlzLnBzLnBheSh0aGlzLnBhaWRGb3IsIHBheWxvYWQubm9uY2UsICdDT01QTEVURUQnLCB0aGlzLmRldmljZURhdGEpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VEaWFsb2coKSB7XHJcbiAgICBzdXBlci5jbG9zZSgpO1xyXG4gICAgdGhpcy5icmFpbnRyZWVJbnN0YW5jZSA9IG51bGw7XHJcbiAgfVxyXG5cclxuICAvL0V2ZW50c1xyXG4gIG9uUGF5KCkge1xyXG4gICAgaWYgKHRoaXMuYnJhaW50cmVlSW5zdGFuY2UgJiYgdGhpcy5kZXZpY2VEYXRhKSB7XHJcbiAgICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xyXG4gICAgICB0aGlzLmJyYWludHJlZUluc3RhbmNlLnJlcXVlc3RQYXltZW50TWV0aG9kKGZ1bmN0aW9uKHJlcXVlc3RQYXltZW50RXJyLCBwYXlsb2FkKSB7XHJcbiAgICAgICAgdGhhdC5zdWJtaXRQYXltZW50KHBheWxvYWQpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2xvc2UoKSB7XHJcbiAgICBjb25zdCBjbG9zZURpYWxvZyA9IHRoaXMuY2xvc2VEaWFsb2c7XHJcblxyXG4gICAgaWYgKHRoaXMuYnJhaW50cmVlSW5zdGFuY2UpIHtcclxuICAgICAgdGhpcy5icmFpbnRyZWVJbnN0YW5jZS50ZWFyZG93bihmdW5jdGlvbihlcnIpIHtcclxuICAgICAgICBjbG9zZURpYWxvZygpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBjbG9zZURpYWxvZygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB2aXNpYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNPcGVuICYmIHRoaXMucHMuZ2V0VG90YWwoKSA+IDA7XHJcbiAgfVxyXG59XHJcbiIsIkBpZiAodmlzaWJsZSkge1xyXG4gIDxkaXYgY2xhc3M9J3NlbmQtbWVzc2FnZV9fa2VuZG8tZGlhbG9nJz5cclxuICAgIDxrZW5kby1kaWFsb2cgW3dpZHRoXT0nNDgwJyBbaGVpZ2h0XT0nNTYwJyBbdGhlbWVDb2xvcl09J3RoZW1lQ29sb3InIChjbG9zZSk9J29uQ2xvc2UoKSc+XHJcbiAgICAgIDxrZW5kby1kaWFsb2ctdGl0bGViYXI+UGF5IHdpdGggQ3JlZGl0IENhcmQ8L2tlbmRvLWRpYWxvZy10aXRsZWJhcj5cclxuICAgICAgPGRpdiBjbGFzcz0na2VuZG8tZGlhbG9nLWNvbnRlbnQnPlxyXG4gICAgICAgIDxkaXYgaWQ9XCJicmFpbnRyZWUtY29udGFpbmVyXCI+PC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8a2VuZG8tZGlhbG9nLWFjdGlvbnMgbGF5b3V0PSdlbmQnPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9J2J0biBidG4tc20gYnRuLXN1Y2Nlc3MnIHR5cGU9J2J1dHRvbicgKGNsaWNrKT0nb25QYXkoKSc+UGF5PC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz0nYnRuIGJ0bi1zbSBidG4tZGFuZ2VyJyB0eXBlPSdidXR0b24nICAoY2xpY2spPSdvbkNsb3NlKCknPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICA8L2tlbmRvLWRpYWxvZy1hY3Rpb25zPlxyXG4gICAgPC9rZW5kby1kaWFsb2c+XHJcbiAgPC9kaXY+XHJcbn1cclxuIl19
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
<file>
|
|
3
|
-
Project:
|
|
4
|
-
@osovitny/anatoly
|
|
5
|
-
|
|
6
|
-
Authors:
|
|
7
|
-
Vadim Osovitny vadim.osovitny@osovitny.com
|
|
8
|
-
|
|
9
|
-
Created:
|
|
10
|
-
11 Nov 2024
|
|
11
|
-
|
|
12
|
-
Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
|
|
13
|
-
</file>
|
|
14
|
-
*/
|
|
15
|
-
//braintree
|
|
16
|
-
export * from './braintree/braintree.component';
|
|
17
|
-
//paypal
|
|
18
|
-
export * from './paypal/paypal-button.component';
|
|
19
|
-
export * from './paypal/paypal.component';
|
|
20
|
-
//stripe
|
|
21
|
-
export * from './stripe/stripe.component';
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL3BheW1lbnRzL2NvbXBvbmVudHMvZXhwb3J0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsV0FBVztBQUNYLGNBQWMsaUNBQWlDLENBQUM7QUFFaEQsUUFBUTtBQUNSLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxRQUFRO0FBQ1IsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxMSBOb3YgMjAyNFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vYnJhaW50cmVlXHJcbmV4cG9ydCAqIGZyb20gJy4vYnJhaW50cmVlL2JyYWludHJlZS5jb21wb25lbnQnO1xyXG5cclxuLy9wYXlwYWxcclxuZXhwb3J0ICogZnJvbSAnLi9wYXlwYWwvcGF5cGFsLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3BheXBhbC9wYXlwYWwuY29tcG9uZW50JztcclxuXHJcbi8vc3RyaXBlXHJcbmV4cG9ydCAqIGZyb20gJy4vc3RyaXBlL3N0cmlwZS5jb21wb25lbnQnO1xyXG5cclxuIl19
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
<file>
|
|
3
|
-
Project:
|
|
4
|
-
@osovitny/anatoly
|
|
5
|
-
|
|
6
|
-
Authors:
|
|
7
|
-
Vadim Osovitny vadim.osovitny@osovitny.com
|
|
8
|
-
|
|
9
|
-
Created:
|
|
10
|
-
8 Nov 2024
|
|
11
|
-
|
|
12
|
-
Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
|
|
13
|
-
</file>
|
|
14
|
-
*/
|
|
15
|
-
import { PaypalButtonComponent, PayPalComponent,
|
|
16
|
-
//Dialogs
|
|
17
|
-
BraintreeDialog, StripeDialog } from './exports';
|
|
18
|
-
export const PAYMENTS_COMPONENTS = [
|
|
19
|
-
PaypalButtonComponent,
|
|
20
|
-
PayPalComponent,
|
|
21
|
-
//Dialogs
|
|
22
|
-
BraintreeDialog,
|
|
23
|
-
StripeDialog
|
|
24
|
-
];
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9wYXltZW50cy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7O0VBYUU7QUFFRixPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGVBQWU7QUFFZixTQUFTO0FBQ1QsZUFBZSxFQUNmLFlBQVksRUFDYixNQUFNLFdBQVcsQ0FBQztBQUVuQixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRztJQUNqQyxxQkFBcUI7SUFDckIsZUFBZTtJQUVmLFNBQVM7SUFDVCxlQUFlO0lBQ2YsWUFBWTtDQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgOCBOb3YgMjAyNFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbmltcG9ydCB7XHJcbiAgUGF5cGFsQnV0dG9uQ29tcG9uZW50LFxyXG4gIFBheVBhbENvbXBvbmVudCxcclxuXHJcbiAgLy9EaWFsb2dzXHJcbiAgQnJhaW50cmVlRGlhbG9nLFxyXG4gIFN0cmlwZURpYWxvZ1xyXG59IGZyb20gJy4vZXhwb3J0cyc7XHJcblxyXG5leHBvcnQgY29uc3QgUEFZTUVOVFNfQ09NUE9ORU5UUyA9IFtcclxuICBQYXlwYWxCdXR0b25Db21wb25lbnQsXHJcbiAgUGF5UGFsQ29tcG9uZW50LFxyXG5cclxuICAvL0RpYWxvZ3NcclxuICBCcmFpbnRyZWVEaWFsb2csXHJcbiAgU3RyaXBlRGlhbG9nXHJcbl07XHJcbiJdfQ==
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
<file>
|
|
3
|
-
Project:
|
|
4
|
-
Atlas Cross
|
|
5
|
-
|
|
6
|
-
Authors:
|
|
7
|
-
Vadim Osovitny vadim.osovitny@osovitny.com
|
|
8
|
-
|
|
9
|
-
Created:
|
|
10
|
-
14 Jun 2024
|
|
11
|
-
|
|
12
|
-
Description:
|
|
13
|
-
https://github.com/braintree/braintree-web-drop-in/issues/433
|
|
14
|
-
It's impossible to trigger the paypal flow programmatically, as opening a popup window must be as a result of
|
|
15
|
-
a direct user action. If it is not, the browser will usually block it.
|
|
16
|
-
|
|
17
|
-
https://stackoverflow.com/questions/43276570/trigger-paypal-checkout-button-click
|
|
18
|
-
This isn't something that's supported by the PayPal button right now. The official policy is, only a click on the button
|
|
19
|
-
itself should open a checkout window.
|
|
20
|
-
|
|
21
|
-
shipping_preference:
|
|
22
|
-
https://developer.paypal.com/docs/api/payments/v1/?mark=shipping_preference%20#definition-application_context
|
|
23
|
-
|
|
24
|
-
Copyright (c) 2023-2024 Atlas Cross Inc. All rights reserved.
|
|
25
|
-
</file>
|
|
26
|
-
*/
|
|
27
|
-
//Node
|
|
28
|
-
import { Component, Input } from '@angular/core';
|
|
29
|
-
//App
|
|
30
|
-
import { AppCoreSettings } from '../../../../core/consts/core-settings';
|
|
31
|
-
import { ComponentBase } from '../../../../ui/components/base/components/component';
|
|
32
|
-
import { PaymentMethod, PaymentStage } from '../../../../core/enums/billing';
|
|
33
|
-
import * as i0 from "@angular/core";
|
|
34
|
-
import * as i1 from "../../services/payments.service";
|
|
35
|
-
import * as i2 from "./paypal.component";
|
|
36
|
-
function PaypalButtonComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
37
|
-
i0.ɵɵelement(0, "anatoly-payments-paypal-container", 0);
|
|
38
|
-
} if (rf & 2) {
|
|
39
|
-
const ctx_r0 = i0.ɵɵnextContext();
|
|
40
|
-
i0.ɵɵproperty("config", ctx_r0.payPalConfig);
|
|
41
|
-
} }
|
|
42
|
-
export class PaypalButtonComponent extends ComponentBase {
|
|
43
|
-
constructor(ps) {
|
|
44
|
-
super();
|
|
45
|
-
this.ps = ps;
|
|
46
|
-
this.paidForTitle = 'Payment for Prodiuct';
|
|
47
|
-
}
|
|
48
|
-
ngOnInit() {
|
|
49
|
-
this.setDefaults();
|
|
50
|
-
this.setValues();
|
|
51
|
-
}
|
|
52
|
-
setDefaults() {
|
|
53
|
-
}
|
|
54
|
-
setValues() {
|
|
55
|
-
this.initPayPal();
|
|
56
|
-
this.ps.discountCodeApplied$.subscribe((data) => {
|
|
57
|
-
this.initPayPal();
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
initPayPal() {
|
|
61
|
-
let that = this;
|
|
62
|
-
let clientId = AppCoreSettings.external.pm.payPal.clientId;
|
|
63
|
-
let totalPrice = this.ps.getTotal().toString();
|
|
64
|
-
let currency = this.ps.currency;
|
|
65
|
-
this.payPalConfig = {
|
|
66
|
-
currency: currency,
|
|
67
|
-
clientId: clientId,
|
|
68
|
-
advanced: {
|
|
69
|
-
commit: 'true',
|
|
70
|
-
extraQueryParams: [
|
|
71
|
-
{
|
|
72
|
-
name: "disable-funding",
|
|
73
|
-
value: "credit,card"
|
|
74
|
-
}
|
|
75
|
-
]
|
|
76
|
-
},
|
|
77
|
-
style: {
|
|
78
|
-
color: 'white'
|
|
79
|
-
},
|
|
80
|
-
createOrderOnClient: (data) => ({
|
|
81
|
-
intent: 'CAPTURE',
|
|
82
|
-
application_context: {
|
|
83
|
-
shipping_preference: "NO_SHIPPING"
|
|
84
|
-
},
|
|
85
|
-
purchase_units: [
|
|
86
|
-
{
|
|
87
|
-
amount: {
|
|
88
|
-
currency_code: currency,
|
|
89
|
-
value: totalPrice,
|
|
90
|
-
breakdown: {
|
|
91
|
-
item_total: {
|
|
92
|
-
currency_code: currency,
|
|
93
|
-
value: totalPrice
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
},
|
|
97
|
-
items: [
|
|
98
|
-
{
|
|
99
|
-
name: this.paidForTitle,
|
|
100
|
-
quantity: '1',
|
|
101
|
-
category: 'DIGITAL_GOODS',
|
|
102
|
-
unit_amount: {
|
|
103
|
-
currency_code: currency,
|
|
104
|
-
value: totalPrice
|
|
105
|
-
},
|
|
106
|
-
}
|
|
107
|
-
]
|
|
108
|
-
}
|
|
109
|
-
]
|
|
110
|
-
}),
|
|
111
|
-
onApprove: (data, actions) => {
|
|
112
|
-
return actions.order.capture().then(function (orderData) {
|
|
113
|
-
try {
|
|
114
|
-
let payment = orderData.purchase_units[0].payments.captures[0];
|
|
115
|
-
let paymentId = payment.id;
|
|
116
|
-
let status = payment.status;
|
|
117
|
-
let amount = payment.amount.value;
|
|
118
|
-
let currencyCode = payment.amount.currency_code;
|
|
119
|
-
let details = JSON.stringify(orderData);
|
|
120
|
-
that.ps.pay(that.paidFor, paymentId, status, details);
|
|
121
|
-
}
|
|
122
|
-
catch {
|
|
123
|
-
that.ps.paymentFailed(PaymentStage.External);
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
},
|
|
127
|
-
onCancel: (data, actions) => {
|
|
128
|
-
that.ps.paymentInProgress = false;
|
|
129
|
-
},
|
|
130
|
-
onError: err => {
|
|
131
|
-
that.ps.paymentInProgress = false;
|
|
132
|
-
},
|
|
133
|
-
onClick: (data, actions) => {
|
|
134
|
-
that.ps.paymentInProgress = true;
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
get visible() {
|
|
139
|
-
return this.ps.selectedPaymentMethod == PaymentMethod.PayPal && this.ps.getTotal() > 0;
|
|
140
|
-
}
|
|
141
|
-
static { this.ɵfac = function PaypalButtonComponent_Factory(t) { return new (t || PaypalButtonComponent)(i0.ɵɵdirectiveInject(i1.PaymentsService)); }; }
|
|
142
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PaypalButtonComponent, selectors: [["anatoly-payments-paypal-button"]], inputs: { paidForTitle: "paidForTitle", paidFor: "paidFor" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [[3, "config"]], template: function PaypalButtonComponent_Template(rf, ctx) { if (rf & 1) {
|
|
143
|
-
i0.ɵɵtemplate(0, PaypalButtonComponent_Conditional_0_Template, 1, 1, "anatoly-payments-paypal-container", 0);
|
|
144
|
-
} if (rf & 2) {
|
|
145
|
-
i0.ɵɵconditional(0, ctx.visible ? 0 : -1);
|
|
146
|
-
} }, dependencies: [i2.PayPalComponent], encapsulation: 2 }); }
|
|
147
|
-
}
|
|
148
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaypalButtonComponent, [{
|
|
149
|
-
type: Component,
|
|
150
|
-
args: [{ selector: 'anatoly-payments-paypal-button', template: "@if (visible) {\r\n <anatoly-payments-paypal-container [config]='payPalConfig' />\r\n}\r\n" }]
|
|
151
|
-
}], () => [{ type: i1.PaymentsService }], { paidForTitle: [{
|
|
152
|
-
type: Input
|
|
153
|
-
}], paidFor: [{
|
|
154
|
-
type: Input
|
|
155
|
-
}] }); })();
|
|
156
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PaypalButtonComponent, { className: "PaypalButtonComponent", filePath: "lib\\billing\\payments\\components\\paypal\\paypal-button.component.ts", lineNumber: 42 }); })();
|
|
157
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5cGFsLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9wYXltZW50cy9jb21wb25lbnRzL3BheXBhbC9wYXlwYWwtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL3BheW1lbnRzL2NvbXBvbmVudHMvcGF5cGFsL3BheXBhbC1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUF5QkU7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsS0FBSztBQUNMLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scURBQXFELENBQUM7QUFFcEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7SUNqQzNFLHVEQUE2RDs7O0lBQTFCLDRDQUF1Qjs7QUR3QzVELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxhQUFhO0lBTXRELFlBQW1CLEVBQW1CO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRFMsT0FBRSxHQUFGLEVBQUUsQ0FBaUI7UUFIN0IsaUJBQVksR0FBRyxzQkFBc0IsQ0FBQztJQUsvQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVPLFdBQVc7SUFDbkIsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFbEIsSUFBSSxD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QU8sRUFBRSxFQUFFO2dCQUMxQixJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztZQUNwQyxDQUFDO1lBRUQsT0FBTyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUNiLElBQUksQ0FBQyxFQUFFLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1lBQ3BDLENBQUM7WUFFRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxFQUFFLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQ25DLENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMscUJBQXFCLElBQUksYUFBYSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN6RixDQUFDO3NGQW5IVSxxQkFBcUI7b0VBQXJCLHFCQUFxQjtZQ3pDbEMsNEdBRUM7O1lBRkQseUNBRUM7OztpRkR1Q1kscUJBQXFCO2NBSmpDLFNBQVM7MkJBQ0UsZ0NBQWdDO2dEQU1qQyxZQUFZO2tCQUFwQixLQUFLO1lBQ0csT0FBTztrQkFBZixLQUFLOztrRkFKSyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQXRsYXMgQ3Jvc3NcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTQgSnVuIDIwMjRcclxuXHJcbiAgRGVzY3JpcHRpb246XHJcbiAgICBodHRwczovL2dpdGh1Yi5jb20vYnJhaW50cmVlL2JyYWludHJlZS13ZWItZHJvcC1pbi9pc3N1ZXMvNDMzXHJcbiAgICBJdCdzIGltcG9zc2libGUgdG8gdHJpZ2dlciB0aGUgcGF5cGFsIGZsb3cgcHJvZ3JhbW1hdGljYWxseSwgYXMgb3BlbmluZyBhIHBvcHVwIHdpbmRvdyBtdXN0IGJlIGFzIGEgcmVzdWx0IG9mXHJcbiAgICBhIGRpcmVjdCB1c2VyIGFjdGlvbi4gSWYgaXQgaXMgbm90LCB0aGUgYnJvd3NlciB3aWxsIHVzdWFsbHkgYmxvY2sgaXQuXHJcblxyXG4gICAgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNDMyNzY1NzAvdHJpZ2dlci1wYXlwYWwtY2hlY2tvdXQtYnV0dG9uLWNsaWNrXHJcbiAgICBUaGlzIGlzbid0IHNvbWV0aGluZyB0aGF0J3Mgc3VwcG9ydGVkIGJ5IHRoZSBQYXlQYWwgYnV0dG9uIHJpZ2h0IG5vdy4gVGhlIG9mZmljaWFsIHBvbGljeSBpcywgb25seSBhIGNsaWNrIG9uIHRoZSBidXR0b25cclxuICAgIGl0c2VsZiBzaG91bGQgb3BlbiBhIGNoZWNrb3V0IHdpbmRvdy5cclxuXHJcbiAgICBzaGlwcGluZ19wcmVmZXJlbmNlOlxyXG4gICAgaHR0cHM6Ly9kZXZlbG9wZXIucGF5cGFsLmNvbS9kb2NzL2FwaS9wYXltZW50cy92MS8/bWFyaz1zaGlwcGluZ19wcmVmZXJlbmNlJTIwI2RlZmluaXRpb24tYXBwbGljYXRpb25fY29udGV4dFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMjMtMjAyNCBBdGxhcyBDcm9zcyBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBcHBDb3JlU2V0dGluZ3MgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2NvbnN0cy9jb3JlLXNldHRpbmdzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50QmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL3VpL2NvbXBvbmVudHMvYmFzZS9jb21wb25lbnRzL2NvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBheW1lbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BheW1lbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQYXltZW50TWV0aG9kLCBQYXltZW50U3RhZ2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2VudW1zL2JpbGxpbmcnO1xyXG5pbXBvcnQgeyBJQ3JlYXRlT3JkZXJSZXF1ZXN0LCBJUGF5UGFsQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3BheXBhbC1tb2RlbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhbmF0b2x5LXBheW1lbnRzLXBheXBhbC1idXR0b24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYXlwYWwtYnV0dG9uLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUGF5cGFsQnV0dG9uQ29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50QmFzZSB7XHJcbiAgcGF5UGFsQ29uZmlnPzogSVBheVBhbENvbmZpZztcclxuXHJcbiAgQElucHV0KCkgcGFpZEZvclRpdGxlID0gJ1BheW1lbnQgZm9yIFByb2RpdWN0JztcclxuICBASW5wdXQoKSBwYWlkRm9yO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcHM6IFBheW1lbnRzU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXREZWZhdWx0cygpO1xyXG4gICAgdGhpcy5zZXRWYWx1ZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGVmYXVsdHMoKSB7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFZhbHVlcygpIHtcclxuICAgIHRoaXMuaW5pdFBheVBhbCgpO1xyXG5cclxuICAgIHRoaXMucHMuZGlzY291bnRDb2RlQXBwbGllZCQuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgIHRoaXMuaW5pdFBheVBhbCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRQYXlQYWwoKSB7XHJcbiAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICBsZXQgY2xpZW50SWQgPSBBcHBDb3JlU2V0dGluZ3MuZXh0ZXJuYWwucG0ucGF5UGFsLmNsaWVudElkO1xyXG4gICAgbGV0IHRvdGFsUHJpY2UgPSB0aGlzLnBzLmdldFRvdGFsKCkudG9TdHJpbmcoKTtcclxuICAgIGxldCBjdXJyZW5jeSA9IHRoaXMucHMuY3VycmVuY3k7XHJcblxyXG4gICAgdGhpcy5wYXlQYWxDb25maWcgPSB7XHJcbiAgICAgIGN1cnJlbmN5OiBjdXJyZW5jeSxcclxuICAgICAgY2xpZW50SWQ6IGNsaWVudElkLFxyXG4gICAgICBhZHZhbmNlZDoge1xyXG4gICAgICAgIGNvbW1pdDogJ3RydWUnLFxyXG4gICAgICAgIGV4dHJhUXVlcnlQYXJhbXM6IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbmFtZTogXCJkaXNhYmxlLWZ1bmRpbmdcIixcclxuICAgICAgICAgICAgdmFsdWU6IFwiY3JlZGl0LGNhcmRcIlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIF1cclxuICAgICAgfSxcclxuICAgICAgc3R5bGU6IHtcclxuICAgICAgICBjb2xvcjogJ3doaXRlJ1xyXG4gICAgICB9LFxyXG5cclxuICAgICAgY3JlYXRlT3JkZXJPbkNsaWVudDogKGRhdGEpID0+IDxJQ3JlYXRlT3JkZXJSZXF1ZXN0PntcclxuICAgICAgICBpbnRlbnQ6ICdDQVBUVVJFJyxcclxuICAgICAgICBhcHBsaWNhdGlvbl9jb250ZXh0OiB7XHJcbiAgICAgICAgICBzaGlwcGluZ19wcmVmZXJlbmNlOiBcIk5PX1NISVBQSU5HXCJcclxuICAgICAgICB9LFxyXG4gICAgICAgIHB1cmNoYXNlX3VuaXRzOiBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGFtb3VudDoge1xyXG4gICAgICAgICAgICAgIGN1cnJlbmN5X2NvZGU6IGN1cnJlbmN5LFxyXG4gICAgICAgICAgICAgIHZhbHVlOiB0b3RhbFByaWNlLFxyXG4gICAgICAgICAgICAgIGJyZWFrZG93bjoge1xyXG4gICAgICAgICAgICAgICAgaXRlbV90b3RhbDoge1xyXG4gICAgICAgICAgICAgICAgICBjdXJyZW5jeV9jb2RlOiBjdXJyZW5jeSxcclxuICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvdGFsUHJpY2VcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGl0ZW1zOiBbXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgbmFtZTogdGhpcy5wYWlkRm9yVGl0bGUsXHJcbiAgICAgICAgICAgICAgICBxdWFudGl0eTogJzEnLFxyXG4gICAgICAgICAgICAgICAgY2F0ZWdvcnk6ICdESUdJVEFMX0dPT0RTJyxcclxuICAgICAgICAgICAgICAgIHVuaXRfYW1vdW50OiB7XHJcbiAgICAgICAgICAgICAgICAgIGN1cnJlbmN5X2NvZGU6IGN1cnJlbmN5LFxyXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogdG90YWxQcmljZVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICAgIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0sXHJcblxyXG4gICAgICBvbkFwcHJvdmU6IChkYXRhLCBhY3Rpb25zKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIGFjdGlvbnMub3JkZXIuY2FwdHVyZSgpLnRoZW4oZnVuY3Rpb24gKG9yZGVyRGF0YSkge1xyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgbGV0IHBheW1lbnQgPSBvcmRlckRhdGEucHVyY2hhc2VfdW5pdHNbMF0ucGF5bWVudHMuY2FwdHVyZXNbMF07XHJcbiAgICAgICAgICAgIGxldCBwYXltZW50SWQgPSBwYXltZW50LmlkO1xyXG4gICAgICAgICAgICBsZXQgc3RhdHVzID0gcGF5bWVudC5zdGF0dXM7XHJcbiAgICAgICAgICAgIGxldCBhbW91bnQgPSBwYXltZW50LmFtb3VudC52YWx1ZTtcclxuICAgICAgICAgICAgbGV0IGN1cnJlbmN5Q29kZSA9IHBheW1lbnQuYW1vdW50LmN1cnJlbmN5X2NvZGU7XHJcbiAgICAgICAgICAgIGxldCBkZXRhaWxzID0gSlNPTi5zdHJpbmdpZnkob3JkZXJEYXRhKTtcclxuXHJcbiAgICAgICAgICAgIHRoYXQucHMucGF5KHRoYXQucGFpZEZvciwgcGF5bWVudElkLCBzdGF0dXMsIGRldGFpbHMpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgY2F0Y2hcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdGhhdC5wcy5wYXltZW50RmFpbGVkKFBheW1lbnRTdGFnZS5FeHRlcm5hbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcblxyXG4gICAgICBvbkNhbmNlbDogKGRhdGEsIGFjdGlvbnMpID0+IHtcclxuICAgICAgICB0aGF0LnBzLnBheW1lbnRJblByb2dyZXNzID0gZmFsc2U7XHJcbiAgICAgIH0sXHJcblxyXG4gICAgICBvbkVycm9yOiBlcnIgPT4ge1xyXG4gICAgICAgIHRoYXQucHMucGF5bWVudEluUHJvZ3Jlc3MgPSBmYWxzZTtcclxuICAgICAgfSxcclxuXHJcbiAgICAgIG9uQ2xpY2s6IChkYXRhLCBhY3Rpb25zKSA9PiB7XHJcbiAgICAgICAgdGhhdC5wcy5wYXltZW50SW5Qcm9ncmVzcyA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHZpc2libGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wcy5zZWxlY3RlZFBheW1lbnRNZXRob2QgPT0gUGF5bWVudE1ldGhvZC5QYXlQYWwgJiYgdGhpcy5wcy5nZXRUb3RhbCgpID4gMDtcclxuICB9XHJcbn1cclxuIiwiQGlmICh2aXNpYmxlKSB7XHJcbiAgPGFuYXRvbHktcGF5bWVudHMtcGF5cGFsLWNvbnRhaW5lciBbY29uZmlnXT0ncGF5UGFsQ29uZmlnJyAvPlxyXG59XHJcbiJdfQ==
|