@osovitny/anatoly 3.17.111 → 3.17.113

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.
Files changed (35) hide show
  1. package/esm2022/lib/billing/billing.module.mjs +19 -13
  2. package/esm2022/lib/billing/components/buttons/buyaccess-button.component.mjs +108 -0
  3. package/esm2022/lib/billing/components/buttons/subscribe-plan-button.component.mjs +119 -0
  4. package/esm2022/lib/billing/components/exports.mjs +7 -5
  5. package/esm2022/lib/billing/components/index.mjs +9 -7
  6. package/esm2022/lib/billing/components/pm/braintree/braintree.component.mjs +155 -0
  7. package/esm2022/lib/billing/components/pm/paypal/paypal-button.component.mjs +157 -0
  8. package/esm2022/lib/billing/components/pm/paypal/paypal.component.mjs +316 -0
  9. package/esm2022/lib/billing/components/pm/stripe/stripe.component.mjs +109 -0
  10. package/esm2022/lib/ui/components/exports.mjs +1 -4
  11. package/esm2022/lib/ui/components/index.mjs +1 -6
  12. package/esm2022/lib/ui/ui.module.mjs +37 -39
  13. package/fesm2022/osovitny-anatoly.mjs +1697 -1695
  14. package/fesm2022/osovitny-anatoly.mjs.map +1 -1
  15. package/lib/billing/billing.module.d.ts +15 -12
  16. package/lib/{ui/components/billing → billing/components/buttons}/buyaccess-button.component.d.ts +1 -1
  17. package/lib/{ui/components/billing → billing/components/buttons}/subscribe-plan-button.component.d.ts +1 -1
  18. package/lib/billing/components/exports.d.ts +6 -4
  19. package/lib/billing/components/index.d.ts +2 -2
  20. package/lib/billing/components/{braintree → pm/braintree}/braintree.component.d.ts +3 -3
  21. package/lib/billing/components/{paypal → pm/paypal}/paypal-button.component.d.ts +3 -3
  22. package/lib/billing/components/{paypal → pm/paypal}/paypal.component.d.ts +2 -2
  23. package/lib/billing/components/{stripe → pm/stripe}/stripe.component.d.ts +2 -2
  24. package/lib/ui/components/exports.d.ts +0 -2
  25. package/lib/ui/components/index.d.ts +2 -2
  26. package/lib/ui/forms/index.d.ts +1 -1
  27. package/lib/ui/pipes/index.d.ts +1 -1
  28. package/lib/ui/ui.module.d.ts +42 -44
  29. package/package.json +2 -2
  30. package/esm2022/lib/billing/components/braintree/braintree.component.mjs +0 -155
  31. package/esm2022/lib/billing/components/paypal/paypal-button.component.mjs +0 -157
  32. package/esm2022/lib/billing/components/paypal/paypal.component.mjs +0 -316
  33. package/esm2022/lib/billing/components/stripe/stripe.component.mjs +0 -109
  34. package/esm2022/lib/ui/components/billing/buyaccess-button.component.mjs +0 -108
  35. package/esm2022/lib/ui/components/billing/subscribe-plan-button.component.mjs +0 -119
@@ -17,22 +17,25 @@
17
17
  import { NgModule } from '@angular/core';
18
18
  import { CommonModule } from '@angular/common';
19
19
  import { FormsModule, ReactiveFormsModule } from "@angular/forms";
20
- //External Modules
20
+ //Modules
21
21
  import { FaModule } from '../external/fa.module';
22
22
  import { KendoModule } from '../external/kendo.module';
23
+ import { AnatolyUIModule } from '../ui/ui.module';
23
24
  //App
24
25
  import { ScriptService } from '../core/services/script.service';
25
26
  import { PayPalScriptService } from './services/paypal-script.service';
26
27
  import { PaymentsService } from './services/payments.service';
27
28
  import { COMPONENTS } from './components';
28
29
  import * as i0 from "@angular/core";
29
- import * as i1 from "./components/order-summary/order-summary.component";
30
- import * as i2 from "./components/payment-methods/payment-methods.component";
31
- import * as i3 from "./components/payment-options/payment-options.component";
32
- import * as i4 from "./components/paypal/paypal-button.component";
33
- import * as i5 from "./components/paypal/paypal.component";
34
- import * as i6 from "./components/braintree/braintree.component";
35
- import * as i7 from "./components/stripe/stripe.component";
30
+ import * as i1 from "./components/buttons/buyaccess-button.component";
31
+ import * as i2 from "./components/buttons/subscribe-plan-button.component";
32
+ import * as i3 from "./components/order-summary/order-summary.component";
33
+ import * as i4 from "./components/payment-methods/payment-methods.component";
34
+ import * as i5 from "./components/payment-options/payment-options.component";
35
+ import * as i6 from "./components/pm/braintree/braintree.component";
36
+ import * as i7 from "./components/pm/paypal/paypal-button.component";
37
+ import * as i8 from "./components/pm/paypal/paypal.component";
38
+ import * as i9 from "./components/pm/stripe/stripe.component";
36
39
  export class AnatolyBillingModule {
37
40
  static { this.ɵfac = function AnatolyBillingModule_Factory(t) { return new (t || AnatolyBillingModule)(); }; }
38
41
  static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: AnatolyBillingModule }); }
@@ -44,7 +47,8 @@ export class AnatolyBillingModule {
44
47
  ReactiveFormsModule,
45
48
  FormsModule,
46
49
  FaModule,
47
- KendoModule] }); }
50
+ KendoModule,
51
+ AnatolyUIModule] }); }
48
52
  }
49
53
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AnatolyBillingModule, [{
50
54
  type: NgModule,
@@ -54,7 +58,8 @@ export class AnatolyBillingModule {
54
58
  ReactiveFormsModule,
55
59
  FormsModule,
56
60
  FaModule,
57
- KendoModule
61
+ KendoModule,
62
+ AnatolyUIModule
58
63
  ],
59
64
  declarations: [
60
65
  COMPONENTS
@@ -69,9 +74,10 @@ export class AnatolyBillingModule {
69
74
  ]
70
75
  }]
71
76
  }], null, null); })();
72
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(AnatolyBillingModule, { declarations: [i1.OrderSummaryComponent, i2.PaymentMethodsComponent, i3.PaymentOptionsComponent, i4.PaypalButtonComponent, i5.PayPalComponent, i6.BraintreeDialog, i7.StripeDialog], imports: [CommonModule,
77
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(AnatolyBillingModule, { declarations: [i1.BuyAccessButtonComponent, i2.SubscribePlanButtonComponent, i3.OrderSummaryComponent, i4.PaymentMethodsComponent, i5.PaymentOptionsComponent, i6.BraintreeDialog, i7.PaypalButtonComponent, i8.PayPalComponent, i9.StripeDialog], imports: [CommonModule,
73
78
  ReactiveFormsModule,
74
79
  FormsModule,
75
80
  FaModule,
76
- KendoModule], exports: [i1.OrderSummaryComponent, i2.PaymentMethodsComponent, i3.PaymentOptionsComponent, i4.PaypalButtonComponent, i5.PayPalComponent, i6.BraintreeDialog, i7.StripeDialog] }); })();
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlsbGluZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9iaWxsaW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsa0JBQWtCO0FBQ2xCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFFdEQsS0FBSztBQUNMLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7O0FBdUIxQyxNQUFNLE9BQU8sb0JBQW9CO3FGQUFwQixvQkFBb0I7bUVBQXBCLG9CQUFvQjt3RUFOcEI7WUFDVCxhQUFhO1lBQ2IsbUJBQW1CO1lBQ25CLGVBQWU7U0FDaEIsWUFqQkMsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixXQUFXO1lBRVgsUUFBUTtZQUNSLFdBQVc7O2lGQWNGLG9CQUFvQjtjQXJCaEMsUUFBUTtlQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLG1CQUFtQjtvQkFDbkIsV0FBVztvQkFFWCxRQUFRO29CQUNSLFdBQVc7aUJBQ1o7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLFVBQVU7aUJBQ1g7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFVBQVU7aUJBQ1g7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULGFBQWE7b0JBQ2IsbUJBQW1CO29CQUNuQixlQUFlO2lCQUNoQjthQUNGOzt3RkFDWSxvQkFBb0IsbU1BbkI3QixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLFdBQVc7UUFFWCxRQUFRO1FBQ1IsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHkub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxNCBKdW4gMjAyNFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuLy9FeHRlcm5hbCBNb2R1bGVzXHJcbmltcG9ydCB7IEZhTW9kdWxlIH0gZnJvbSAnLi4vZXh0ZXJuYWwvZmEubW9kdWxlJ1xyXG5pbXBvcnQgeyBLZW5kb01vZHVsZSB9IGZyb20gJy4uL2V4dGVybmFsL2tlbmRvLm1vZHVsZSdcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IFNjcmlwdFNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3NlcnZpY2VzL3NjcmlwdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGF5UGFsU2NyaXB0U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcGF5cGFsLXNjcmlwdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGF5bWVudHNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wYXltZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ09NUE9ORU5UUyB9IGZyb20gJy4vY29tcG9uZW50cyc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuXHJcbiAgICBGYU1vZHVsZSxcclxuICAgIEtlbmRvTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIENPTVBPTkVOVFNcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIENPTVBPTkVOVFNcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgU2NyaXB0U2VydmljZSxcclxuICAgIFBheVBhbFNjcmlwdFNlcnZpY2UsXHJcbiAgICBQYXltZW50c1NlcnZpY2VcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbmF0b2x5QmlsbGluZ01vZHVsZSB7XHJcbn1cclxuIl19
81
+ KendoModule,
82
+ AnatolyUIModule], exports: [i1.BuyAccessButtonComponent, i2.SubscribePlanButtonComponent, i3.OrderSummaryComponent, i4.PaymentMethodsComponent, i5.PaymentOptionsComponent, i6.BraintreeDialog, i7.PaypalButtonComponent, i8.PayPalComponent, i9.StripeDialog] }); })();
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlsbGluZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9iaWxsaW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsU0FBUztBQUNULE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRWpELEtBQUs7QUFDTCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7O0FBd0IxQyxNQUFNLE9BQU8sb0JBQW9CO3FGQUFwQixvQkFBb0I7bUVBQXBCLG9CQUFvQjt3RUFOcEI7WUFDVCxhQUFhO1lBQ2IsbUJBQW1CO1lBQ25CLGVBQWU7U0FDaEIsWUFsQkMsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixXQUFXO1lBRVgsUUFBUTtZQUNSLFdBQVc7WUFDWCxlQUFlOztpRkFjTixvQkFBb0I7Y0F0QmhDLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixtQkFBbUI7b0JBQ25CLFdBQVc7b0JBRVgsUUFBUTtvQkFDUixXQUFXO29CQUNYLGVBQWU7aUJBQ2hCO2dCQUNELFlBQVksRUFBRTtvQkFDWixVQUFVO2lCQUNYO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxVQUFVO2lCQUNYO2dCQUNELFNBQVMsRUFBRTtvQkFDVCxhQUFhO29CQUNiLG1CQUFtQjtvQkFDbkIsZUFBZTtpQkFDaEI7YUFDRjs7d0ZBQ1ksb0JBQW9CLGlRQXBCN0IsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQixXQUFXO1FBRVgsUUFBUTtRQUNSLFdBQVc7UUFDWCxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbS5vc292aXRueUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seS5vc292aXRueUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDE0IEp1biAyMDI0XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG4vL01vZHVsZXNcclxuaW1wb3J0IHsgRmFNb2R1bGUgfSBmcm9tICcuLi9leHRlcm5hbC9mYS5tb2R1bGUnXHJcbmltcG9ydCB7IEtlbmRvTW9kdWxlIH0gZnJvbSAnLi4vZXh0ZXJuYWwva2VuZG8ubW9kdWxlJ1xyXG5pbXBvcnQgeyBBbmF0b2x5VUlNb2R1bGUgfSBmcm9tICcuLi91aS91aS5tb2R1bGUnXHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBTY3JpcHRTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXJ2aWNlcy9zY3JpcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFBheVBhbFNjcmlwdFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3BheXBhbC1zY3JpcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFBheW1lbnRzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcGF5bWVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IENPTVBPTkVOVFMgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcblxyXG4gICAgRmFNb2R1bGUsXHJcbiAgICBLZW5kb01vZHVsZSxcclxuICAgIEFuYXRvbHlVSU1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBDT01QT05FTlRTXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBDT01QT05FTlRTXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIFNjcmlwdFNlcnZpY2UsXHJcbiAgICBQYXlQYWxTY3JpcHRTZXJ2aWNlLFxyXG4gICAgUGF5bWVudHNTZXJ2aWNlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5hdG9seUJpbGxpbmdNb2R1bGUge1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,108 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim.osovitny@osovitny.com
8
+ Anatoly Osovitny anatoly.osovitny@osovitny.com
9
+
10
+ Created:
11
+ 14 Aug 2018
12
+
13
+ Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
18
+ import * as i0 from "@angular/core";
19
+ import * as i1 from "../../../core/services/appcontext.service";
20
+ import * as i2 from "@angular/common";
21
+ import * as i3 from "../../../ui/components/identity/signup-button.component";
22
+ function BuyAccessButtonComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
23
+ i0.ɵɵelementStart(0, "div");
24
+ i0.ɵɵelement(1, "anatoly-signup-button", 1);
25
+ i0.ɵɵelementEnd();
26
+ } }
27
+ function BuyAccessButtonComponent_div_0_div_2_button_1_Template(rf, ctx) { if (rf & 1) {
28
+ i0.ɵɵelementStart(0, "button", 4);
29
+ i0.ɵɵtext(1, " Your Plan ");
30
+ i0.ɵɵelementEnd();
31
+ } }
32
+ function BuyAccessButtonComponent_div_0_div_2_button_2_Template(rf, ctx) { if (rf & 1) {
33
+ const _r6 = i0.ɵɵgetCurrentView();
34
+ i0.ɵɵelementStart(0, "button", 5);
35
+ i0.ɵɵlistener("click", function BuyAccessButtonComponent_div_0_div_2_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r5.onPlanSelect()); });
36
+ i0.ɵɵtext(1, " Buy Now ");
37
+ i0.ɵɵelementEnd();
38
+ } }
39
+ function BuyAccessButtonComponent_div_0_div_2_Template(rf, ctx) { if (rf & 1) {
40
+ i0.ɵɵelementStart(0, "div");
41
+ i0.ɵɵtemplate(1, BuyAccessButtonComponent_div_0_div_2_button_1_Template, 2, 0, "button", 2)(2, BuyAccessButtonComponent_div_0_div_2_button_2_Template, 2, 0, "button", 3);
42
+ i0.ɵɵelementEnd();
43
+ } if (rf & 2) {
44
+ const ctx_r2 = i0.ɵɵnextContext(2);
45
+ i0.ɵɵadvance();
46
+ i0.ɵɵproperty("ngIf", ctx_r2.plan == ctx_r2.currentPlan);
47
+ i0.ɵɵadvance();
48
+ i0.ɵɵproperty("ngIf", ctx_r2.plan != ctx_r2.currentPlan && ctx_r2.currentPlan == 1);
49
+ } }
50
+ function BuyAccessButtonComponent_div_0_Template(rf, ctx) { if (rf & 1) {
51
+ i0.ɵɵelementStart(0, "div");
52
+ i0.ɵɵtemplate(1, BuyAccessButtonComponent_div_0_div_1_Template, 2, 0, "div", 0)(2, BuyAccessButtonComponent_div_0_div_2_Template, 3, 2, "div", 0);
53
+ i0.ɵɵelementEnd();
54
+ } if (rf & 2) {
55
+ const ctx_r0 = i0.ɵɵnextContext();
56
+ i0.ɵɵadvance();
57
+ i0.ɵɵproperty("ngIf", !ctx_r0.isUserSignedIn);
58
+ i0.ɵɵadvance();
59
+ i0.ɵɵproperty("ngIf", ctx_r0.isUserSignedIn && ctx_r0.visibleIfUserSignedIn);
60
+ } }
61
+ export class BuyAccessButtonComponent {
62
+ constructor(appContext) {
63
+ this.appContext = appContext;
64
+ this.contextUpdated = false;
65
+ this.isUserSignedIn = false;
66
+ this.currentPlan = -1;
67
+ this.currentPlanTitle = '';
68
+ this.visibleIfUserSignedIn = false;
69
+ this.planselect = new EventEmitter();
70
+ }
71
+ ngOnInit() {
72
+ this.appContext.updated$.subscribe((context) => {
73
+ if (!context) {
74
+ return;
75
+ }
76
+ this.isUserSignedIn = context.isUserSignedIn;
77
+ if (this.isUserSignedIn) {
78
+ this.currentPlan = context.account.billingPlan;
79
+ this.currentPlanTitle = context.account.billingPlanAsString;
80
+ }
81
+ this.contextUpdated = true;
82
+ });
83
+ }
84
+ //Events
85
+ onPlanSelect() {
86
+ this.planselect.emit(this.plan);
87
+ }
88
+ static { this.ɵfac = function BuyAccessButtonComponent_Factory(t) { return new (t || BuyAccessButtonComponent)(i0.ɵɵdirectiveInject(i1.AppContextService)); }; }
89
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BuyAccessButtonComponent, selectors: [["anatoly-billing-buyaccess-button"]], inputs: { plan: "plan", planTitle: "planTitle", visibleIfUserSignedIn: "visibleIfUserSignedIn" }, outputs: { planselect: "planselect" }, decls: 1, vars: 1, consts: [[4, "ngIf"], ["classes", "btn btn-block btn-primary"], ["class", "btn btn-block btn-success selectPlan", 4, "ngIf"], ["class", "btn btn-block btn-warning selectPlan", 3, "click", 4, "ngIf"], [1, "btn", "btn-block", "btn-success", "selectPlan"], [1, "btn", "btn-block", "btn-warning", "selectPlan", 3, "click"]], template: function BuyAccessButtonComponent_Template(rf, ctx) { if (rf & 1) {
90
+ i0.ɵɵtemplate(0, BuyAccessButtonComponent_div_0_Template, 3, 2, "div", 0);
91
+ } if (rf & 2) {
92
+ i0.ɵɵproperty("ngIf", ctx.contextUpdated);
93
+ } }, dependencies: [i2.NgIf, i3.SignUpButtonComponent], encapsulation: 2 }); }
94
+ }
95
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BuyAccessButtonComponent, [{
96
+ type: Component,
97
+ args: [{ selector: 'anatoly-billing-buyaccess-button', template: "<div *ngIf=\"contextUpdated\">\r\n <div *ngIf=\"!isUserSignedIn\">\r\n <anatoly-signup-button classes=\"btn btn-block btn-primary\"></anatoly-signup-button>\r\n </div>\r\n\r\n <div *ngIf=\"isUserSignedIn && visibleIfUserSignedIn\">\r\n <button class=\"btn btn-block btn-success selectPlan\"\r\n *ngIf=\"plan == currentPlan\">\r\n Your Plan\r\n </button>\r\n\r\n <button class=\"btn btn-block btn-warning selectPlan\"\r\n *ngIf=\"plan != currentPlan && currentPlan == 1\"\r\n (click)=\"onPlanSelect()\">\r\n Buy Now\r\n </button>\r\n </div>\r\n</div>\r\n" }]
98
+ }], () => [{ type: i1.AppContextService }], { plan: [{
99
+ type: Input
100
+ }], planTitle: [{
101
+ type: Input
102
+ }], visibleIfUserSignedIn: [{
103
+ type: Input
104
+ }], planselect: [{
105
+ type: Output
106
+ }] }); })();
107
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BuyAccessButtonComponent, { className: "BuyAccessButtonComponent", filePath: "lib\\billing\\components\\buttons\\buyaccess-button.component.ts", lineNumber: 27 }); })();
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL2J1dHRvbnMvYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL2J1dHRvbnMvYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7Ozs7SUNoQjNFLDJCQUE2QjtJQUMzQiwyQ0FBbUY7SUFDckYsaUJBQU07OztJQUdKLGlDQUNvQztJQUNsQywyQkFDRjtJQUFBLGlCQUFTOzs7O0lBRVQsaUNBRWlDO0lBQXpCLHFMQUFTLGVBQUEscUJBQWMsQ0FBQSxJQUFDO0lBQzlCLHlCQUNGO0lBQUEsaUJBQVM7OztJQVZYLDJCQUFxRDtJQUNuRCwyRkFHUyw4RUFBQTtJQU9YLGlCQUFNOzs7SUFUSyxjQUF5QjtJQUF6Qix3REFBeUI7SUFLekIsY0FBNkM7SUFBN0MsbUZBQTZDOzs7SUFaMUQsMkJBQTRCO0lBQzFCLCtFQUVNLGtFQUFBO0lBY1IsaUJBQU07OztJQWhCRSxjQUFxQjtJQUFyQiw2Q0FBcUI7SUFJckIsY0FBNkM7SUFBN0MsNEVBQTZDOztBRHFCckQsTUFBTSxPQUFPLHdCQUF3QjtJQVluQyxZQUFvQixVQUE2QjtRQUE3QixlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQVhqRCxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixnQkFBVyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUliLDBCQUFxQixHQUFZLEtBQUssQ0FBQztRQUV0QyxlQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFHN0QsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM3QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsT0FBTztZQUNULENBQUM7WUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFFN0MsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDO1lBQzlELENBQUM7WUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO0lBQ1IsWUFBWTtRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO3lGQW5DVSx3QkFBd0I7b0VBQXhCLHdCQUF3QjtZQzFCckMseUVBaUJNOztZQWpCQSx5Q0FBb0I7OztpRkQwQmIsd0JBQXdCO2NBSnBDLFNBQVM7MkJBQ0Usa0NBQWtDO2tEQVNuQyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxTQUFTO2tCQUFqQixLQUFLO1lBQ0cscUJBQXFCO2tCQUE3QixLQUFLO1lBRUksVUFBVTtrQkFBbkIsTUFBTTs7a0ZBVkksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbS5vc292aXRueUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seS5vc292aXRueUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDE0IEF1ZyAyMDE4XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQge0FwcENvbnRleHRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2FwcGNvbnRleHQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FuYXRvbHktYmlsbGluZy1idXlhY2Nlc3MtYnV0dG9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCdXlBY2Nlc3NCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnRleHRVcGRhdGVkID0gZmFsc2U7XHJcbiAgaXNVc2VyU2lnbmVkSW4gPSBmYWxzZTtcclxuICBjdXJyZW50UGxhbiA9IC0xO1xyXG4gIGN1cnJlbnRQbGFuVGl0bGUgPSAnJztcclxuXHJcbiAgQElucHV0KCkgcGxhbjogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHBsYW5UaXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHZpc2libGVJZlVzZXJTaWduZWRJbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgcGxhbnNlbGVjdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29udGV4dDogQXBwQ29udGV4dFNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hcHBDb250ZXh0LnVwZGF0ZWQkLnN1YnNjcmliZSgoY29udGV4dCkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRleHQpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuaXNVc2VyU2lnbmVkSW4gPSBjb250ZXh0LmlzVXNlclNpZ25lZEluO1xyXG5cclxuICAgICAgaWYgKHRoaXMuaXNVc2VyU2lnbmVkSW4pIHtcclxuICAgICAgICB0aGlzLmN1cnJlbnRQbGFuID0gY29udGV4dC5hY2NvdW50LmJpbGxpbmdQbGFuO1xyXG4gICAgICAgIHRoaXMuY3VycmVudFBsYW5UaXRsZSA9IGNvbnRleHQuYWNjb3VudC5iaWxsaW5nUGxhbkFzU3RyaW5nO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmNvbnRleHRVcGRhdGVkID0gdHJ1ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9FdmVudHNcclxuICBvblBsYW5TZWxlY3QoKSB7XHJcbiAgICB0aGlzLnBsYW5zZWxlY3QuZW1pdCh0aGlzLnBsYW4pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiY29udGV4dFVwZGF0ZWRcIj5cclxuICA8ZGl2ICpuZ0lmPVwiIWlzVXNlclNpZ25lZEluXCI+XHJcbiAgICA8YW5hdG9seS1zaWdudXAtYnV0dG9uIGNsYXNzZXM9XCJidG4gYnRuLWJsb2NrIGJ0bi1wcmltYXJ5XCI+PC9hbmF0b2x5LXNpZ251cC1idXR0b24+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJpc1VzZXJTaWduZWRJbiAmJiB2aXNpYmxlSWZVc2VyU2lnbmVkSW5cIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWJsb2NrIGJ0bi1zdWNjZXNzIHNlbGVjdFBsYW5cIlxyXG4gICAgICAgICAgICAqbmdJZj1cInBsYW4gPT0gY3VycmVudFBsYW5cIj5cclxuICAgICAgWW91ciBQbGFuXHJcbiAgICA8L2J1dHRvbj5cclxuXHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1ibG9jayAgYnRuLXdhcm5pbmcgc2VsZWN0UGxhblwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwicGxhbiAhPSBjdXJyZW50UGxhbiAmJiBjdXJyZW50UGxhbiA9PSAxXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uUGxhblNlbGVjdCgpXCI+XHJcbiAgICAgIEJ1eSBOb3dcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -0,0 +1,119 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny vadim.osovitny@osovitny.com
8
+ Anatoly Osovitny anatoly.osovitny@osovitny.com
9
+
10
+ Created:
11
+ 1 Jun 2018
12
+
13
+ Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
14
+ </file>
15
+ */
16
+ //Node
17
+ import { Component, EventEmitter, Input, Output } from "@angular/core";
18
+ import * as i0 from "@angular/core";
19
+ import * as i1 from "../../../core/services/appcontext.service";
20
+ import * as i2 from "@angular/common";
21
+ import * as i3 from "../../../ui/components/identity/signup-button.component";
22
+ function SubscribePlanButtonComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
23
+ i0.ɵɵelementStart(0, "div");
24
+ i0.ɵɵelement(1, "anatoly-signup-button", 1);
25
+ i0.ɵɵelementEnd();
26
+ } }
27
+ function SubscribePlanButtonComponent_div_0_div_2_button_1_Template(rf, ctx) { if (rf & 1) {
28
+ i0.ɵɵelementStart(0, "button", 5);
29
+ i0.ɵɵtext(1, " Your Plan ");
30
+ i0.ɵɵelementEnd();
31
+ } }
32
+ function SubscribePlanButtonComponent_div_0_div_2_button_2_Template(rf, ctx) { if (rf & 1) {
33
+ i0.ɵɵelementStart(0, "button", 6);
34
+ i0.ɵɵtext(1, " Requested ");
35
+ i0.ɵɵelementEnd();
36
+ } }
37
+ function SubscribePlanButtonComponent_div_0_div_2_button_3_Template(rf, ctx) { if (rf & 1) {
38
+ const _r7 = i0.ɵɵgetCurrentView();
39
+ i0.ɵɵelementStart(0, "button", 7);
40
+ i0.ɵɵlistener("click", function SubscribePlanButtonComponent_div_0_div_2_button_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r6.onPlanSelect()); });
41
+ i0.ɵɵtext(1, " Subscribe ");
42
+ i0.ɵɵelementEnd();
43
+ } }
44
+ function SubscribePlanButtonComponent_div_0_div_2_Template(rf, ctx) { if (rf & 1) {
45
+ i0.ɵɵelementStart(0, "div");
46
+ i0.ɵɵtemplate(1, SubscribePlanButtonComponent_div_0_div_2_button_1_Template, 2, 0, "button", 2)(2, SubscribePlanButtonComponent_div_0_div_2_button_2_Template, 2, 0, "button", 3)(3, SubscribePlanButtonComponent_div_0_div_2_button_3_Template, 2, 0, "button", 4);
47
+ i0.ɵɵelementEnd();
48
+ } if (rf & 2) {
49
+ const ctx_r2 = i0.ɵɵnextContext(2);
50
+ i0.ɵɵadvance();
51
+ i0.ɵɵproperty("ngIf", ctx_r2.plan == ctx_r2.currentPlan);
52
+ i0.ɵɵadvance();
53
+ i0.ɵɵproperty("ngIf", ctx_r2.plan == ctx_r2.requestedPlan);
54
+ i0.ɵɵadvance();
55
+ i0.ɵɵproperty("ngIf", ctx_r2.plan != ctx_r2.currentPlan && ctx_r2.plan != ctx_r2.requestedPlan);
56
+ } }
57
+ function SubscribePlanButtonComponent_div_0_Template(rf, ctx) { if (rf & 1) {
58
+ i0.ɵɵelementStart(0, "div");
59
+ i0.ɵɵtemplate(1, SubscribePlanButtonComponent_div_0_div_1_Template, 2, 0, "div", 0)(2, SubscribePlanButtonComponent_div_0_div_2_Template, 4, 3, "div", 0);
60
+ i0.ɵɵelementEnd();
61
+ } if (rf & 2) {
62
+ const ctx_r0 = i0.ɵɵnextContext();
63
+ i0.ɵɵadvance();
64
+ i0.ɵɵproperty("ngIf", !ctx_r0.isUserSignedIn);
65
+ i0.ɵɵadvance();
66
+ i0.ɵɵproperty("ngIf", ctx_r0.isUserSignedIn && ctx_r0.visibleIfUserSignedIn);
67
+ } }
68
+ export class SubscribePlanButtonComponent {
69
+ constructor(appContext) {
70
+ this.appContext = appContext;
71
+ this.contextUpdated = false;
72
+ this.isUserSignedIn = false;
73
+ this.currentPlan = -1;
74
+ this.currentPlanTitle = "";
75
+ this.requestedPlan = -1;
76
+ this.requestedPlanTitle = "";
77
+ this.visibleIfUserSignedIn = false;
78
+ this.planselect = new EventEmitter();
79
+ }
80
+ ngOnInit() {
81
+ this.appContext.updated$.subscribe((context) => {
82
+ if (!context) {
83
+ return;
84
+ }
85
+ this.isUserSignedIn = context.isUserSignedIn;
86
+ if (this.isUserSignedIn) {
87
+ this.currentPlan = context.account.billingPlan;
88
+ this.currentPlanTitle = context.account.billingPlanAsString;
89
+ this.requestedPlan = context.account.requestedBillingPlan;
90
+ this.requestedPlanTitle = context.account.requestedBillingPlanAsString;
91
+ }
92
+ this.contextUpdated = true;
93
+ });
94
+ }
95
+ //Events
96
+ onPlanSelect() {
97
+ this.planselect.emit(this.plan);
98
+ }
99
+ static { this.ɵfac = function SubscribePlanButtonComponent_Factory(t) { return new (t || SubscribePlanButtonComponent)(i0.ɵɵdirectiveInject(i1.AppContextService)); }; }
100
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SubscribePlanButtonComponent, selectors: [["anatoly-billing-subscribe-plan-button"]], inputs: { plan: "plan", planTitle: "planTitle", visibleIfUserSignedIn: "visibleIfUserSignedIn" }, outputs: { planselect: "planselect" }, decls: 1, vars: 1, consts: [[4, "ngIf"], ["classes", "btn btn-block btn-primary"], ["class", "btn btn-block btn-success selectPlan", 4, "ngIf"], ["class", "btn btn-block btn-warning selectPlan", 4, "ngIf"], ["class", "btn btn-block btn-warning selectPlan", 3, "click", 4, "ngIf"], [1, "btn", "btn-block", "btn-success", "selectPlan"], [1, "btn", "btn-block", "btn-warning", "selectPlan"], [1, "btn", "btn-block", "btn-warning", "selectPlan", 3, "click"]], template: function SubscribePlanButtonComponent_Template(rf, ctx) { if (rf & 1) {
101
+ i0.ɵɵtemplate(0, SubscribePlanButtonComponent_div_0_Template, 3, 2, "div", 0);
102
+ } if (rf & 2) {
103
+ i0.ɵɵproperty("ngIf", ctx.contextUpdated);
104
+ } }, dependencies: [i2.NgIf, i3.SignUpButtonComponent], encapsulation: 2 }); }
105
+ }
106
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SubscribePlanButtonComponent, [{
107
+ type: Component,
108
+ args: [{ selector: "anatoly-billing-subscribe-plan-button", template: "<div *ngIf=\"contextUpdated\">\r\n <div *ngIf=\"!isUserSignedIn\">\r\n <anatoly-signup-button classes=\"btn btn-block btn-primary\"></anatoly-signup-button>\r\n </div>\r\n\r\n <div *ngIf=\"isUserSignedIn && visibleIfUserSignedIn\">\r\n <button class=\"btn btn-block btn-success selectPlan\"\r\n *ngIf=\"plan == currentPlan\">\r\n Your Plan\r\n </button>\r\n\r\n <button class=\"btn btn-block btn-warning selectPlan\"\r\n *ngIf=\"plan == requestedPlan\">\r\n Requested\r\n </button>\r\n\r\n <button class=\"btn btn-block btn-warning selectPlan\"\r\n *ngIf=\"plan != currentPlan && plan != requestedPlan\"\r\n (click)=\"onPlanSelect()\">\r\n Subscribe\r\n </button>\r\n </div>\r\n</div>\r\n" }]
109
+ }], () => [{ type: i1.AppContextService }], { plan: [{
110
+ type: Input
111
+ }], planTitle: [{
112
+ type: Input
113
+ }], visibleIfUserSignedIn: [{
114
+ type: Input
115
+ }], planselect: [{
116
+ type: Output
117
+ }] }); })();
118
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SubscribePlanButtonComponent, { className: "SubscribePlanButtonComponent", filePath: "lib\\billing\\components\\buttons\\subscribe-plan-button.component.ts", lineNumber: 27 }); })();
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvYnV0dG9ucy9zdWJzY3JpYmUtcGxhbi1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2JpbGxpbmcvY29tcG9uZW50cy9idXR0b25zL3N1YnNjcmliZS1wbGFuLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7SUNoQjdFLDJCQUE2QjtJQUMzQiwyQ0FBbUY7SUFDckYsaUJBQU07OztJQUdKLGlDQUNvQztJQUNsQywyQkFDRjtJQUFBLGlCQUFTOzs7SUFFVCxpQ0FDc0M7SUFDcEMsMkJBQ0Y7SUFBQSxpQkFBUzs7OztJQUVULGlDQUVpQztJQUF6Qix5TEFBUyxlQUFBLHFCQUFjLENBQUEsSUFBQztJQUM5QiwyQkFDRjtJQUFBLGlCQUFTOzs7SUFmWCwyQkFBcUQ7SUFDbkQsK0ZBR1Msa0ZBQUEsa0ZBQUE7SUFZWCxpQkFBTTs7O0lBZEssY0FBeUI7SUFBekIsd0RBQXlCO0lBS3pCLGNBQTJCO0lBQTNCLDBEQUEyQjtJQUszQixjQUFrRDtJQUFsRCwrRkFBa0Q7OztJQWpCL0QsMkJBQTRCO0lBQzFCLG1GQUVNLHNFQUFBO0lBbUJSLGlCQUFNOzs7SUFyQkUsY0FBcUI7SUFBckIsNkNBQXFCO0lBSXJCLGNBQTZDO0lBQTdDLDRFQUE2Qzs7QURxQnJELE1BQU0sT0FBTyw0QkFBNEI7SUFjdkMsWUFBb0IsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFiakQsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsZ0JBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqQixxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsa0JBQWEsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNuQix1QkFBa0IsR0FBRyxFQUFFLENBQUM7UUFJZiwwQkFBcUIsR0FBWSxLQUFLLENBQUM7UUFFdEMsZUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzdELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDN0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNiLE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDO1lBRTdDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN4QixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO2dCQUMvQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztnQkFDNUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDO2dCQUMxRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQztZQUN6RSxDQUFDO1lBRUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtJQUNSLFlBQVk7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs2RkF2Q1UsNEJBQTRCO29FQUE1Qiw0QkFBNEI7WUMxQnpDLDZFQXNCTTs7WUF0QkEseUNBQW9COzs7aUZEMEJiLDRCQUE0QjtjQUp4QyxTQUFTOzJCQUNFLHVDQUF1QztrREFXeEMsSUFBSTtrQkFBWixLQUFLO1lBQ0csU0FBUztrQkFBakIsS0FBSztZQUNHLHFCQUFxQjtrQkFBN0IsS0FBSztZQUVJLFVBQVU7a0JBQW5CLE1BQU07O2tGQVpJLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHkub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxIEp1biAyMDE4XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQXBwQ29udGV4dFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9hcHBjb250ZXh0LnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImFuYXRvbHktYmlsbGluZy1zdWJzY3JpYmUtcGxhbi1idXR0b25cIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL3N1YnNjcmliZS1wbGFuLWJ1dHRvbi5jb21wb25lbnQuaHRtbFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Vic2NyaWJlUGxhbkJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29udGV4dFVwZGF0ZWQgPSBmYWxzZTtcclxuICBpc1VzZXJTaWduZWRJbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRQbGFuID0gLTE7XHJcbiAgY3VycmVudFBsYW5UaXRsZSA9IFwiXCI7XHJcbiAgcmVxdWVzdGVkUGxhbiA9IC0xO1xyXG4gIHJlcXVlc3RlZFBsYW5UaXRsZSA9IFwiXCI7XHJcblxyXG4gIEBJbnB1dCgpIHBsYW46IG51bWJlcjtcclxuICBASW5wdXQoKSBwbGFuVGl0bGU6IHN0cmluZztcclxuICBASW5wdXQoKSB2aXNpYmxlSWZVc2VyU2lnbmVkSW46IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHBsYW5zZWxlY3Q6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcENvbnRleHQ6IEFwcENvbnRleHRTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYXBwQ29udGV4dC51cGRhdGVkJC5zdWJzY3JpYmUoKGNvbnRleHQpID0+IHtcclxuICAgICAgaWYgKCFjb250ZXh0KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmlzVXNlclNpZ25lZEluID0gY29udGV4dC5pc1VzZXJTaWduZWRJbjtcclxuXHJcbiAgICAgIGlmICh0aGlzLmlzVXNlclNpZ25lZEluKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50UGxhbiA9IGNvbnRleHQuYWNjb3VudC5iaWxsaW5nUGxhbjtcclxuICAgICAgICB0aGlzLmN1cnJlbnRQbGFuVGl0bGUgPSBjb250ZXh0LmFjY291bnQuYmlsbGluZ1BsYW5Bc1N0cmluZztcclxuICAgICAgICB0aGlzLnJlcXVlc3RlZFBsYW4gPSBjb250ZXh0LmFjY291bnQucmVxdWVzdGVkQmlsbGluZ1BsYW47XHJcbiAgICAgICAgdGhpcy5yZXF1ZXN0ZWRQbGFuVGl0bGUgPSBjb250ZXh0LmFjY291bnQucmVxdWVzdGVkQmlsbGluZ1BsYW5Bc1N0cmluZztcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5jb250ZXh0VXBkYXRlZCA9IHRydWU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vRXZlbnRzXHJcbiAgb25QbGFuU2VsZWN0KCkge1xyXG4gICAgdGhpcy5wbGFuc2VsZWN0LmVtaXQodGhpcy5wbGFuKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiAqbmdJZj1cImNvbnRleHRVcGRhdGVkXCI+XHJcbiAgPGRpdiAqbmdJZj1cIiFpc1VzZXJTaWduZWRJblwiPlxyXG4gICAgPGFuYXRvbHktc2lnbnVwLWJ1dHRvbiBjbGFzc2VzPVwiYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeVwiPjwvYW5hdG9seS1zaWdudXAtYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2ICpuZ0lmPVwiaXNVc2VyU2lnbmVkSW4gJiYgdmlzaWJsZUlmVXNlclNpZ25lZEluXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1ibG9jayBidG4tc3VjY2VzcyBzZWxlY3RQbGFuXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuID09IGN1cnJlbnRQbGFuXCI+XHJcbiAgICAgIFlvdXIgUGxhblxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tYmxvY2sgIGJ0bi13YXJuaW5nIHNlbGVjdFBsYW5cIlxyXG4gICAgICAgICAgICAqbmdJZj1cInBsYW4gPT0gcmVxdWVzdGVkUGxhblwiPlxyXG4gICAgICBSZXF1ZXN0ZWRcclxuICAgIDwvYnV0dG9uPlxyXG5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWJsb2NrICBidG4td2FybmluZyBzZWxlY3RQbGFuXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuICE9IGN1cnJlbnRQbGFuICYmIHBsYW4gIT0gcmVxdWVzdGVkUGxhblwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblBsYW5TZWxlY3QoKVwiPlxyXG4gICAgICBTdWJzY3JpYmVcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -12,14 +12,16 @@
12
12
  Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
13
13
  </file>
14
14
  */
15
+ export * from './buttons/buyaccess-button.component';
16
+ export * from './buttons/subscribe-plan-button.component';
15
17
  export * from "./order-summary/order-summary.component";
16
18
  export * from "./payment-methods/payment-methods.component";
17
19
  export * from "./payment-options/payment-options.component";
18
20
  //braintree
19
- export * from "./braintree/braintree.component";
21
+ export * from "./pm/braintree/braintree.component";
20
22
  //paypal
21
- export * from "./paypal/paypal-button.component";
22
- export * from "./paypal/paypal.component";
23
+ export * from "./pm/paypal/paypal-button.component";
24
+ export * from "./pm/paypal/paypal.component";
23
25
  //stripe
24
- export * from "./stripe/stripe.component";
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvZXhwb3J0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsNkNBQTZDLENBQUM7QUFFNUQsV0FBVztBQUNYLGNBQWMsaUNBQWlDLENBQUM7QUFFaEQsUUFBUTtBQUNSLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxRQUFRO0FBQ1IsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxMSBOb3YgMjAyNFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gXCIuL29yZGVyLXN1bW1hcnkvb3JkZXItc3VtbWFyeS5jb21wb25lbnRcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vcGF5bWVudC1tZXRob2RzL3BheW1lbnQtbWV0aG9kcy5jb21wb25lbnRcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vcGF5bWVudC1vcHRpb25zL3BheW1lbnQtb3B0aW9ucy5jb21wb25lbnRcIjtcclxuXHJcbi8vYnJhaW50cmVlXHJcbmV4cG9ydCAqIGZyb20gXCIuL2JyYWludHJlZS9icmFpbnRyZWUuY29tcG9uZW50XCI7XHJcblxyXG4vL3BheXBhbFxyXG5leHBvcnQgKiBmcm9tIFwiLi9wYXlwYWwvcGF5cGFsLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vcGF5cGFsL3BheXBhbC5jb21wb25lbnRcIjtcclxuXHJcbi8vc3RyaXBlXHJcbmV4cG9ydCAqIGZyb20gXCIuL3N0cmlwZS9zdHJpcGUuY29tcG9uZW50XCI7XHJcbiJdfQ==
26
+ export * from "./pm/stripe/stripe.component";
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvZXhwb3J0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVELFdBQVc7QUFDWCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELFFBQVE7QUFDUixjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsOEJBQThCLENBQUM7QUFFN0MsUUFBUTtBQUNSLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTEgTm92IDIwMjRcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbnMvYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbnMvc3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gXCIuL29yZGVyLXN1bW1hcnkvb3JkZXItc3VtbWFyeS5jb21wb25lbnRcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vcGF5bWVudC1tZXRob2RzL3BheW1lbnQtbWV0aG9kcy5jb21wb25lbnRcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vcGF5bWVudC1vcHRpb25zL3BheW1lbnQtb3B0aW9ucy5jb21wb25lbnRcIjtcclxuXHJcbi8vYnJhaW50cmVlXHJcbmV4cG9ydCAqIGZyb20gXCIuL3BtL2JyYWludHJlZS9icmFpbnRyZWUuY29tcG9uZW50XCI7XHJcblxyXG4vL3BheXBhbFxyXG5leHBvcnQgKiBmcm9tIFwiLi9wbS9wYXlwYWwvcGF5cGFsLWJ1dHRvbi5jb21wb25lbnRcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vcG0vcGF5cGFsL3BheXBhbC5jb21wb25lbnRcIjtcclxuXHJcbi8vc3RyaXBlXHJcbmV4cG9ydCAqIGZyb20gXCIuL3BtL3N0cmlwZS9zdHJpcGUuY29tcG9uZW50XCI7XHJcbiJdfQ==
@@ -12,17 +12,19 @@
12
12
  Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
13
13
  </file>
14
14
  */
15
- import { OrderSummaryComponent, PaymentMethodsComponent, PaymentOptionsComponent, PaypalButtonComponent, PayPalComponent,
16
- //Dialogs
17
- BraintreeDialog, StripeDialog, } from "./exports";
15
+ import { BuyAccessButtonComponent, SubscribePlanButtonComponent, OrderSummaryComponent, PaymentMethodsComponent, PaymentOptionsComponent,
16
+ //PM
17
+ BraintreeDialog, PaypalButtonComponent, PayPalComponent, StripeDialog } from "./exports";
18
18
  export const COMPONENTS = [
19
+ BuyAccessButtonComponent,
20
+ SubscribePlanButtonComponent,
19
21
  OrderSummaryComponent,
20
22
  PaymentMethodsComponent,
21
23
  PaymentOptionsComponent,
24
+ //PM
25
+ BraintreeDialog,
22
26
  PaypalButtonComponent,
23
27
  PayPalComponent,
24
- //Dialogs
25
- BraintreeDialog,
26
- StripeDialog,
28
+ StripeDialog
27
29
  ];
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7O0VBYUU7QUFFRixPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLHVCQUF1QixFQUN2Qix1QkFBdUIsRUFFdkIscUJBQXFCLEVBQ3JCLGVBQWU7QUFFZixTQUFTO0FBQ1QsZUFBZSxFQUNmLFlBQVksR0FDYixNQUFNLFdBQVcsQ0FBQztBQUVuQixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIscUJBQXFCO0lBQ3JCLHVCQUF1QjtJQUN2Qix1QkFBdUI7SUFFdkIscUJBQXFCO0lBQ3JCLGVBQWU7SUFFZixTQUFTO0lBQ1QsZUFBZTtJQUNmLFlBQVk7Q0FDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbS5vc292aXRueUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDggTm92IDIwMjRcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5pbXBvcnQge1xyXG4gIE9yZGVyU3VtbWFyeUNvbXBvbmVudCxcclxuICBQYXltZW50TWV0aG9kc0NvbXBvbmVudCxcclxuICBQYXltZW50T3B0aW9uc0NvbXBvbmVudCxcclxuXHJcbiAgUGF5cGFsQnV0dG9uQ29tcG9uZW50LFxyXG4gIFBheVBhbENvbXBvbmVudCxcclxuXHJcbiAgLy9EaWFsb2dzXHJcbiAgQnJhaW50cmVlRGlhbG9nLFxyXG4gIFN0cmlwZURpYWxvZyxcclxufSBmcm9tIFwiLi9leHBvcnRzXCI7XHJcblxyXG5leHBvcnQgY29uc3QgQ09NUE9ORU5UUyA9IFtcclxuICBPcmRlclN1bW1hcnlDb21wb25lbnQsXHJcbiAgUGF5bWVudE1ldGhvZHNDb21wb25lbnQsXHJcbiAgUGF5bWVudE9wdGlvbnNDb21wb25lbnQsXHJcblxyXG4gIFBheXBhbEJ1dHRvbkNvbXBvbmVudCxcclxuICBQYXlQYWxDb21wb25lbnQsXHJcblxyXG4gIC8vRGlhbG9nc1xyXG4gIEJyYWludHJlZURpYWxvZyxcclxuICBTdHJpcGVEaWFsb2csXHJcbl07XHJcbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7O0VBYUU7QUFFRixPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDRCQUE0QixFQUM1QixxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLHVCQUF1QjtBQUV2QixJQUFJO0FBQ0osZUFBZSxFQUNmLHFCQUFxQixFQUNyQixlQUFlLEVBQ2YsWUFBWSxFQUNiLE1BQU0sV0FBVyxDQUFDO0FBRW5CLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4Qix3QkFBd0I7SUFDeEIsNEJBQTRCO0lBQzVCLHFCQUFxQjtJQUNyQix1QkFBdUI7SUFDdkIsdUJBQXVCO0lBRXZCLElBQUk7SUFDSixlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLGVBQWU7SUFDZixZQUFZO0NBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICA4IE5vdiAyMDI0XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuaW1wb3J0IHtcclxuICBCdXlBY2Nlc3NCdXR0b25Db21wb25lbnQsXHJcbiAgU3Vic2NyaWJlUGxhbkJ1dHRvbkNvbXBvbmVudCxcclxuICBPcmRlclN1bW1hcnlDb21wb25lbnQsXHJcbiAgUGF5bWVudE1ldGhvZHNDb21wb25lbnQsXHJcbiAgUGF5bWVudE9wdGlvbnNDb21wb25lbnQsXHJcblxyXG4gIC8vUE1cclxuICBCcmFpbnRyZWVEaWFsb2csXHJcbiAgUGF5cGFsQnV0dG9uQ29tcG9uZW50LFxyXG4gIFBheVBhbENvbXBvbmVudCxcclxuICBTdHJpcGVEaWFsb2dcclxufSBmcm9tIFwiLi9leHBvcnRzXCI7XHJcblxyXG5leHBvcnQgY29uc3QgQ09NUE9ORU5UUyA9IFtcclxuICBCdXlBY2Nlc3NCdXR0b25Db21wb25lbnQsXHJcbiAgU3Vic2NyaWJlUGxhbkJ1dHRvbkNvbXBvbmVudCxcclxuICBPcmRlclN1bW1hcnlDb21wb25lbnQsXHJcbiAgUGF5bWVudE1ldGhvZHNDb21wb25lbnQsXHJcbiAgUGF5bWVudE9wdGlvbnNDb21wb25lbnQsXHJcblxyXG4gIC8vUE1cclxuICBCcmFpbnRyZWVEaWFsb2csXHJcbiAgUGF5cGFsQnV0dG9uQ29tcG9uZW50LFxyXG4gIFBheVBhbENvbXBvbmVudCxcclxuICBTdHJpcGVEaWFsb2dcclxuXTtcclxuIl19
@@ -0,0 +1,155 @@
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-2025 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-billing-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-billing-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\\components\\pm\\braintree\\braintree.component.ts", lineNumber: 32 }); })();
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJhaW50cmVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvcG0vYnJhaW50cmVlL2JyYWludHJlZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL3BtL2JyYWludHJlZS9icmFpbnRyZWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkU7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxLQUFLLE1BQU0sTUFBTSx1QkFBdUIsQ0FBQztBQUVoRCxLQUFLO0FBQ0wsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7O0lDdEJqRSw4QkFBd0Msc0JBQUE7SUFDK0IsMEtBQVMsZUFBQSxnQkFBUyxDQUFBLElBQUM7SUFDdEYsNkNBQXVCO0lBQUEsb0NBQW9CO0lBQUEsaUJBQXdCO0lBQ25FLDhCQUFrQztJQUNoQyx5QkFBb0M7SUFDdEMsaUJBQU07SUFDTiwrQ0FBbUMsZ0JBQUE7SUFDb0Isb0tBQVMsZUFBQSxjQUFPLENBQUEsSUFBQztJQUFDLG1CQUFHO0lBQUEsaUJBQVM7SUFDbkYsaUNBQXlFO0lBQXBCLG9LQUFTLGVBQUEsZ0JBQVMsQ0FBQSxJQUFDO0lBQUMsdUJBQU07SUFBQSxpQkFBUyxFQUFBLEVBQUEsRUFBQTs7O0lBUDlFLGNBQWE7SUFBYiwyQkFBYSxlQUFBLGlDQUFBOztBRDZCL0IsTUFBTSxPQUFPLGVBQWdCLFNBQVEsVUFBVTtJQVM3QyxZQUNTLEVBQW1CLEVBQ2xCLEVBQXVCO1FBQy9CLEtBQUssRUFBRSxDQUFDO1FBRkQsT0FBRSxHQUFGLEVBQUUsQ0FBaUI7UUFDbEIsT0FBRSxHQUFGLEVBQUUsQ0FBcUI7SUFFakMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2hELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ25CLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUM7UUFDbEIsa0RBQWtEO1FBQ2xELG1DQUFtQztRQUVuQyxJQUFJLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDcEQsSUFBRyxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7Z0JBQ25CLE1BQU0sQ0FBQyxNQUFNLENBQUM7b0JBQ1osYUFBYSxFQUFFLFFBQVEsRUFBRSxLQUFLO29CQUM5QixTQUFTLEVBQUUsc0JBQXNCO29CQUNqQyxJQUFJLEVBQUU7d0JBQ0osY0FBYyxFQUFFLElBQUk7cUJBQ3JCO29CQUVELHVDQUF1QztvQkFDdkMsZUFBZTtvQkFDZixvQkFBb0I7b0JBQ3BCLHVCQUF1QjtvQkFDdkIsOEJBQThCO29CQUM5QixpQ0FBaUM7b0JBQ2pDLDhCQUE4QjtvQkFDOUIsTUFBTTtvQkFDTixLQUFLO29CQUNMLFdBQVc7b0JBQ1gsOEJBQThCO29CQUM5QixLQUFLO29CQUNMLGFBQWEsRUFBRSxJQUFJO2lCQUNwQixFQUFFLFVBQVMsU0FBUyxFQUFFLFFBQVE7b0JBQzdCLElBQUksUUFBUSxFQUFFLENBQUM7d0JBQ2IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFFBQVEsQ0FBQzt3QkFDbEMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7NEJBQ3BFLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO3dCQUMvQixDQUFDLENBQUMsQ0FBQTtvQkFDSixDQUFDO3lCQUNJLENBQUM7d0JBQ0osSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMseUVBQXlFLENBQUMsQ0FBQTt3QkFDeEYsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNyQixDQUFDO2dCQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWEsQ0FBQyxPQUFPO1FBQ25CLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxXQUFXO1FBQ1QsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQsUUFBUTtJQUNSLEtBQUs7UUFDSCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDOUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFTLGlCQUFpQixFQUFFLE9BQU87Z0JBQzdFLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBRXJDLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxVQUFTLEdBQUc7Z0JBQzFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUNJLENBQUM7WUFDSixXQUFXLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDL0MsQ0FBQztnRkF2R1UsZUFBZTtvRUFBZixlQUFlO1lDL0I1Qix5RUFhQzs7WUFiRCx5Q0FhQzs7O2lGRGtCWSxlQUFlO2NBSjNCLFNBQVM7MkJBQ0Usa0NBQWtDO2tGQU9uQyxPQUFPO2tCQUFmLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxXQUFXO2tCQUFuQixLQUFLO1lBQ0csS0FBSztrQkFBYixLQUFLOztrRkFQSyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBEaHJ1diBBZ2Fyd2FsIGRocnV2LmFnYXJ3YWxAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxNCBBdWcgMjAyNFxyXG5cclxuICBEZXNjcmlwdGlvbjpcclxuICAgIENyZWRpdCBDYXJkIHBheW1lbnQgZm9ybSB2aWEgYnJhaW50cmVlIGludGVncmF0aW9uXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgZHJvcGluIGZyb20gJ2JyYWludHJlZS13ZWItZHJvcC1pbic7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBEaWFsb2dCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkvY29tcG9uZW50cy9iYXNlL2RpYWxvZyc7XHJcbmltcG9ydCB7IFBheW1lbnRzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BheW1lbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9ub3RpZmljYXRpb25zL3NlcnZpY2VzL25vdGlmaWNhdGlvbi1zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5hdG9seS1iaWxsaW5nLWJyYWludHJlZS1kaWFsb2cnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9icmFpbnRyZWUuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCcmFpbnRyZWVEaWFsb2cgZXh0ZW5kcyBEaWFsb2dCYXNlIHtcclxuICBicmFpbnRyZWVJbnN0YW5jZTogYW55O1xyXG4gIGRldmljZURhdGE6IGFueTtcclxuXHJcbiAgQElucHV0KCkgcGFpZEZvcjtcclxuICBASW5wdXQoKSB0aXRsZTtcclxuICBASW5wdXQoKSBkZXNjcmlwdGlvbjtcclxuICBASW5wdXQoKSBpbWFnZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcHM6IFBheW1lbnRzU2VydmljZSxcclxuICAgIHByaXZhdGUgbnM6IE5vdGlmaWNhdGlvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0VmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFZhbHVlcygpIHtcclxuICAgIHRoaXMucHMuc2hvd0JyYWludHJlZURpYWxvZyQuc3Vic2NyaWJlKChpc09wZW4pID0+IHtcclxuICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xyXG4gICAgICB0aGlzLmluaXRpYWxpemVFbWJlZEZvcm0oKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZUVtYmVkRm9ybSgpIHtcclxuICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xyXG4gICAgLy8gbGV0IHRvdGFsUHJpY2UgPSB0aGlzLmJzLmdldFRvdGFsKCkudG9TdHJpbmcoKTtcclxuICAgIC8vIGxldCBjdXJyZW5jeSA9IHRoaXMuYnMuY3VycmVuY3k7XHJcblxyXG4gICAgdGhpcy5wcy5jcmVhdGVCcmFpbnRyZWVUb2tlbigpLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcclxuICAgICAgaWYocmVzcG9uc2U/LnRva2VuKSB7XHJcbiAgICAgICAgZHJvcGluLmNyZWF0ZSh7XHJcbiAgICAgICAgICBhdXRob3JpemF0aW9uOiByZXNwb25zZT8udG9rZW4sXHJcbiAgICAgICAgICBjb250YWluZXI6ICcjYnJhaW50cmVlLWNvbnRhaW5lcicsXHJcbiAgICAgICAgICBjYXJkOiB7XHJcbiAgICAgICAgICAgIGNhcmRob2xkZXJOYW1lOiB0cnVlXHJcbiAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgIC8vVU5DT01NRU5UIEJFTE9XIEZPUiBHT09HTEVQQVkgLyBWRU5NT1xyXG4gICAgICAgICAgLy8gZ29vZ2xlUGF5OiB7XHJcbiAgICAgICAgICAvLyAgIG1lcmNoYW50SWQ6ICcnLFxyXG4gICAgICAgICAgLy8gICB0cmFuc2FjdGlvbkluZm86IHtcclxuICAgICAgICAgIC8vICAgICBjdXJyZW5jeUNvZGU6IGN1cnJlbmN5LFxyXG4gICAgICAgICAgLy8gICAgIHRvdGFsUHJpY2VTdGF0dXM6ICdGSU5BTCcsXHJcbiAgICAgICAgICAvLyAgICAgdG90YWxQcmljZTogdG90YWxQcmljZSxcclxuICAgICAgICAgIC8vICAgfVxyXG4gICAgICAgICAgLy8gfSxcclxuICAgICAgICAgIC8vIHZlbm1vOiB7XHJcbiAgICAgICAgICAvLyAgIGFsbG93TmV3QnJvd3NlclRhYjogZmFsc2VcclxuICAgICAgICAgIC8vIH0sXHJcbiAgICAgICAgICBkYXRhQ29sbGVjdG9yOiB0cnVlXHJcbiAgICAgICAgfSwgZnVuY3Rpb24oY3JlYXRlRXJyLCBpbnN0YW5jZSkge1xyXG4gICAgICAgICAgaWYgKGluc3RhbmNlKSB7XHJcbiAgICAgICAgICAgIHRoYXQuYnJhaW50cmVlSW5zdGFuY2UgPSBpbnN0YW5jZTtcclxuICAgICAgICAgICAgaW5zdGFuY2UuX2RhdGFDb2xsZWN0b3IuX2luc3RhbmNlLmdldERldmljZURhdGEoKS50aGVuKChkZXZpY2VEYXRhKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhhdC5kZXZpY2VEYXRhID0gZGV2aWNlRGF0YTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICB0aGF0Lm5zLmVycm9yKCdDcmVkaXQgQ2FyZCBQYXltZW50IGlzIGZhY2luZyBpc3N1ZXMuIFBsZWFzZSB0cnkgb3RoZXIgcGF5bWVudCBtZXRob2RzLicpXHJcbiAgICAgICAgICAgIHRoYXQuY2xvc2VEaWFsb2coKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzdWJtaXRQYXltZW50KHBheWxvYWQpIHtcclxuICAgIHRoaXMucHMucGF5KHRoaXMucGFpZEZvciwgcGF5bG9hZC5ub25jZSwgJ0NPTVBMRVRFRCcsIHRoaXMuZGV2aWNlRGF0YSk7XHJcbiAgfVxyXG5cclxuICBjbG9zZURpYWxvZygpIHtcclxuICAgIHN1cGVyLmNsb3NlKCk7XHJcbiAgICB0aGlzLmJyYWludHJlZUluc3RhbmNlID0gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vRXZlbnRzXHJcbiAgb25QYXkoKSB7XHJcbiAgICBpZiAodGhpcy5icmFpbnRyZWVJbnN0YW5jZSAmJiB0aGlzLmRldmljZURhdGEpIHtcclxuICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XHJcbiAgICAgIHRoaXMuYnJhaW50cmVlSW5zdGFuY2UucmVxdWVzdFBheW1lbnRNZXRob2QoZnVuY3Rpb24ocmVxdWVzdFBheW1lbnRFcnIsIHBheWxvYWQpIHtcclxuICAgICAgICB0aGF0LnN1Ym1pdFBheW1lbnQocGF5bG9hZCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25DbG9zZSgpIHtcclxuICAgIGNvbnN0IGNsb3NlRGlhbG9nID0gdGhpcy5jbG9zZURpYWxvZztcclxuXHJcbiAgICBpZiAodGhpcy5icmFpbnRyZWVJbnN0YW5jZSkge1xyXG4gICAgICB0aGlzLmJyYWludHJlZUluc3RhbmNlLnRlYXJkb3duKGZ1bmN0aW9uKGVycikge1xyXG4gICAgICAgIGNsb3NlRGlhbG9nKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGNsb3NlRGlhbG9nKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHZpc2libGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5pc09wZW4gJiYgdGhpcy5wcy5nZXRUb3RhbCgpID4gMDtcclxuICB9XHJcbn1cclxuIiwiQGlmICh2aXNpYmxlKSB7XHJcbiAgPGRpdiBjbGFzcz0nc2VuZC1tZXNzYWdlX19rZW5kby1kaWFsb2cnPlxyXG4gICAgPGtlbmRvLWRpYWxvZyBbd2lkdGhdPSc0ODAnIFtoZWlnaHRdPSc1NjAnIFt0aGVtZUNvbG9yXT0ndGhlbWVDb2xvcicgKGNsb3NlKT0nb25DbG9zZSgpJz5cclxuICAgICAgPGtlbmRvLWRpYWxvZy10aXRsZWJhcj5QYXkgd2l0aCBDcmVkaXQgQ2FyZDwva2VuZG8tZGlhbG9nLXRpdGxlYmFyPlxyXG4gICAgICA8ZGl2IGNsYXNzPSdrZW5kby1kaWFsb2ctY29udGVudCc+XHJcbiAgICAgICAgPGRpdiBpZD1cImJyYWludHJlZS1jb250YWluZXJcIj48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxrZW5kby1kaWFsb2ctYWN0aW9ucyBsYXlvdXQ9J2VuZCc+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz0nYnRuIGJ0bi1zbSBidG4tc3VjY2VzcycgdHlwZT0nYnV0dG9uJyAoY2xpY2spPSdvblBheSgpJz5QYXk8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPSdidG4gYnRuLXNtIGJ0bi1kYW5nZXInIHR5cGU9J2J1dHRvbicgIChjbGljayk9J29uQ2xvc2UoKSc+Q2FuY2VsPC9idXR0b24+XHJcbiAgICAgIDwva2VuZG8tZGlhbG9nLWFjdGlvbnM+XHJcbiAgICA8L2tlbmRvLWRpYWxvZz5cclxuICA8L2Rpdj5cclxufVxyXG4iXX0=