@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
@@ -1,109 +0,0 @@
1
- /*
2
- <file>
3
- Project:
4
- @osovitny/anatoly
5
-
6
- Authors:
7
- Dhruv Agarwal dhruv.agarwal@osovitny.com
8
-
9
- Created:
10
- 5 Aug 2024
11
-
12
- Description:
13
- Credit Card payment form via stripe 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 { loadStripe } from '@stripe/stripe-js';
21
- import { firstValueFrom } from 'rxjs';
22
- //App
23
- import { AppCoreSettings } from '../../../core/consts/core-settings';
24
- import { DialogBase } from '../../../ui/components/base/dialog';
25
- import * as i0 from "@angular/core";
26
- import * as i1 from "../../services/payments.service";
27
- import * as i2 from "@progress/kendo-angular-dialog";
28
- function StripeDialog_Conditional_0_Template(rf, ctx) { if (rf & 1) {
29
- const _r2 = i0.ɵɵgetCurrentView();
30
- i0.ɵɵelementStart(0, "div", 1)(1, "kendo-dialog", 2);
31
- i0.ɵɵlistener("close", function StripeDialog_Conditional_0_Template_kendo_dialog_close_1_listener() { i0.ɵɵrestoreView(_r2); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onClose()); });
32
- i0.ɵɵelementStart(2, "kendo-dialog-titlebar");
33
- i0.ɵɵtext(3, "Pay with Stripe");
34
- i0.ɵɵelementEnd();
35
- i0.ɵɵelementStart(4, "div", 3);
36
- i0.ɵɵelement(5, "div", 4);
37
- i0.ɵɵelementEnd()()();
38
- } if (rf & 2) {
39
- const ctx_r0 = i0.ɵɵnextContext();
40
- i0.ɵɵadvance();
41
- i0.ɵɵproperty("width", 1080)("height", 800)("themeColor", ctx_r0.themeColor);
42
- } }
43
- export class StripeDialog extends DialogBase {
44
- constructor(ps) {
45
- super();
46
- this.ps = ps;
47
- }
48
- ngOnInit() {
49
- this.setValues();
50
- }
51
- setValues() {
52
- this.ps.showStripeDialog$.subscribe(async () => {
53
- this.isOpen = true;
54
- await this.initializeEmbedForm();
55
- });
56
- }
57
- async initializeEmbedForm() {
58
- let stripePk = AppCoreSettings.external.pm.stripe.publishableKey;
59
- this.stripe = await loadStripe(stripePk);
60
- const that = this;
61
- this.stripeCheckout = await this.stripe.initEmbeddedCheckout({
62
- fetchClientSecret: async () => {
63
- const response = await firstValueFrom(that.ps.createStripeSession(this.title, this.description, this.image));
64
- if (response) {
65
- that.sessionId = response.sessionId;
66
- return response?.sessionSecret ? response.sessionSecret : '';
67
- }
68
- return '';
69
- },
70
- onComplete: () => {
71
- that.ps.pay(this.paidFor, this.sessionId, 'COMPLETED', '');
72
- that.onClose();
73
- }
74
- });
75
- // Mount Checkout
76
- this.stripeCheckout.mount('#stripeCheckout');
77
- }
78
- //Events
79
- onClose() {
80
- if (this.stripeCheckout) {
81
- // Destroy Checkout instance
82
- this.stripeCheckout.destroy();
83
- }
84
- super.close();
85
- }
86
- get visible() {
87
- return this.isOpen && this.ps.getTotal() > 0;
88
- }
89
- static { this.ɵfac = function StripeDialog_Factory(t) { return new (t || StripeDialog)(i0.ɵɵdirectiveInject(i1.PaymentsService)); }; }
90
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: StripeDialog, selectors: [["anatoly-billing-stripe-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", "stripeCheckout"]], template: function StripeDialog_Template(rf, ctx) { if (rf & 1) {
91
- i0.ɵɵtemplate(0, StripeDialog_Conditional_0_Template, 6, 3, "div", 0);
92
- } if (rf & 2) {
93
- i0.ɵɵconditional(0, ctx.visible ? 0 : -1);
94
- } }, dependencies: [i2.DialogComponent, i2.DialogTitleBarComponent], encapsulation: 2 }); }
95
- }
96
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StripeDialog, [{
97
- type: Component,
98
- args: [{ selector: 'anatoly-billing-stripe-dialog', template: "@if (visible) {\r\n <div class='send-message__kendo-dialog'>\r\n <kendo-dialog [width]='1080' [height]='800' [themeColor]='themeColor' (close)='onClose()'>\r\n <kendo-dialog-titlebar>Pay with Stripe</kendo-dialog-titlebar> \r\n <div class='kendo-dialog-content'>\r\n <div id=\"stripeCheckout\"></div>\r\n </div>\r\n </kendo-dialog>\r\n </div>\r\n}\r\n" }]
99
- }], () => [{ type: i1.PaymentsService }], { paidFor: [{
100
- type: Input
101
- }], title: [{
102
- type: Input
103
- }], description: [{
104
- type: Input
105
- }], image: [{
106
- type: Input
107
- }] }); })();
108
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(StripeDialog, { className: "StripeDialog", filePath: "lib\\billing\\components\\stripe\\stripe.component.ts", lineNumber: 33 }); })();
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaXBlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvc3RyaXBlL3N0cmlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL3N0cmlwZS9zdHJpcGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkU7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsS0FBSztBQUNMLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7OztJQ3hCOUQsOEJBQXdDLHNCQUFBO0lBQ2dDLHVLQUFTLGVBQUEsZ0JBQVMsQ0FBQSxJQUFDO0lBQ3ZGLDZDQUF1QjtJQUFBLCtCQUFlO0lBQUEsaUJBQXdCO0lBQzlELDhCQUFrQztJQUNoQyx5QkFBK0I7SUFDakMsaUJBQU0sRUFBQSxFQUFBOzs7SUFKTSxjQUFjO0lBQWQsNEJBQWMsZUFBQSxpQ0FBQTs7QUQ4QmhDLE1BQU0sT0FBTyxZQUFhLFNBQVEsVUFBVTtJQVUxQyxZQUFtQixFQUFtQjtRQUNwQyxLQUFLLEVBQUUsQ0FBQztRQURTLE9BQUUsR0FBRixFQUFFLENBQWlCO0lBRXRDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDbkIsTUFBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLLENBQUMsbUJBQW1CO1FBQ3ZCLElBQUksUUFBUSxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUM7UUFFakUsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUM7WUFDM0QsaUJBQWlCLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQzVCLE1BQU0sUUFBUSxHQUFRLE1BQU0sY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNsSCxJQUFJLFFBQVEsRUFBRSxDQUFDO29CQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQztvQkFDcEMsT0FBTyxRQUFRLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQy9ELENBQUM7Z0JBRUQsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDO1lBQ0QsVUFBVSxFQUFFLEdBQUcsRUFBRTtnQkFDZixJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUVILGlCQUFpQjtRQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxRQUFRO0lBQ1IsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hCLDRCQUE0QjtZQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hDLENBQUM7UUFFRCxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDL0MsQ0FBQzs2RUE5RFUsWUFBWTtvRUFBWixZQUFZO1lDaEN6QixxRUFTQzs7WUFURCx5Q0FTQzs7O2lGRHVCWSxZQUFZO2NBSnhCLFNBQVM7MkJBQ0UsK0JBQStCO2dEQVFoQyxPQUFPO2tCQUFmLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxXQUFXO2tCQUFuQixLQUFLO1lBQ0csS0FBSztrQkFBYixLQUFLOztrRkFSSyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBEaHJ1diBBZ2Fyd2FsIGRocnV2LmFnYXJ3YWxAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICA1IEF1ZyAyMDI0XHJcblxyXG4gIERlc2NyaXB0aW9uOlxyXG4gICAgQ3JlZGl0IENhcmQgcGF5bWVudCBmb3JtIHZpYSBzdHJpcGUgaW50ZWdyYXRpb25cclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBsb2FkU3RyaXBlIH0gZnJvbSAnQHN0cmlwZS9zdHJpcGUtanMnO1xyXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQXBwQ29yZVNldHRpbmdzIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9jb25zdHMvY29yZS1zZXR0aW5ncyc7XHJcbmltcG9ydCB7IERpYWxvZ0Jhc2UgfSBmcm9tICcuLi8uLi8uLi91aS9jb21wb25lbnRzL2Jhc2UvZGlhbG9nJztcclxuaW1wb3J0IHsgUGF5bWVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGF5bWVudHMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FuYXRvbHktYmlsbGluZy1zdHJpcGUtZGlhbG9nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3RyaXBlLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RyaXBlRGlhbG9nIGV4dGVuZHMgRGlhbG9nQmFzZSB7XHJcbiAgc3RyaXBlOiBhbnk7XHJcbiAgc3RyaXBlQ2hlY2tvdXQ6IGFueTtcclxuICBzZXNzaW9uSWQ6IGFueTtcclxuXHJcbiAgQElucHV0KCkgcGFpZEZvcjtcclxuICBASW5wdXQoKSB0aXRsZTtcclxuICBASW5wdXQoKSBkZXNjcmlwdGlvbjtcclxuICBASW5wdXQoKSBpbWFnZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHBzOiBQYXltZW50c1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0VmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFZhbHVlcygpIHtcclxuICAgIHRoaXMucHMuc2hvd1N0cmlwZURpYWxvZyQuc3Vic2NyaWJlKGFzeW5jICgpID0+IHtcclxuICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xyXG4gICAgICBhd2FpdCB0aGlzLmluaXRpYWxpemVFbWJlZEZvcm0oKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgaW5pdGlhbGl6ZUVtYmVkRm9ybSgpIHtcclxuICAgIGxldCBzdHJpcGVQayA9IEFwcENvcmVTZXR0aW5ncy5leHRlcm5hbC5wbS5zdHJpcGUucHVibGlzaGFibGVLZXk7XHJcblxyXG4gICAgdGhpcy5zdHJpcGUgPSBhd2FpdCBsb2FkU3RyaXBlKHN0cmlwZVBrKTtcclxuICAgIGNvbnN0IHRoYXQgPSB0aGlzO1xyXG4gICAgdGhpcy5zdHJpcGVDaGVja291dCA9IGF3YWl0IHRoaXMuc3RyaXBlLmluaXRFbWJlZGRlZENoZWNrb3V0KHtcclxuICAgICAgZmV0Y2hDbGllbnRTZWNyZXQ6IGFzeW5jICgpID0+IHtcclxuICAgICAgICBjb25zdCByZXNwb25zZTogYW55ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhhdC5wcy5jcmVhdGVTdHJpcGVTZXNzaW9uKHRoaXMudGl0bGUsIHRoaXMuZGVzY3JpcHRpb24sIHRoaXMuaW1hZ2UpKTtcclxuICAgICAgICBpZiAocmVzcG9uc2UpIHtcclxuICAgICAgICAgIHRoYXQuc2Vzc2lvbklkID0gcmVzcG9uc2Uuc2Vzc2lvbklkO1xyXG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlPy5zZXNzaW9uU2VjcmV0ID8gcmVzcG9uc2Uuc2Vzc2lvblNlY3JldCA6ICcnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICB9LFxyXG4gICAgICBvbkNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgdGhhdC5wcy5wYXkodGhpcy5wYWlkRm9yLCB0aGlzLnNlc3Npb25JZCwgJ0NPTVBMRVRFRCcsICcnKTtcclxuICAgICAgICB0aGF0Lm9uQ2xvc2UoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gTW91bnQgQ2hlY2tvdXRcclxuICAgIHRoaXMuc3RyaXBlQ2hlY2tvdXQubW91bnQoJyNzdHJpcGVDaGVja291dCcpO1xyXG4gIH1cclxuXHJcbiAgLy9FdmVudHNcclxuICBvbkNsb3NlKCkge1xyXG4gICAgaWYgKHRoaXMuc3RyaXBlQ2hlY2tvdXQpIHtcclxuICAgICAgLy8gRGVzdHJveSBDaGVja291dCBpbnN0YW5jZVxyXG4gICAgICB0aGlzLnN0cmlwZUNoZWNrb3V0LmRlc3Ryb3koKTtcclxuICAgIH1cclxuXHJcbiAgICBzdXBlci5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB2aXNpYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNPcGVuICYmIHRoaXMucHMuZ2V0VG90YWwoKSA+IDA7XHJcbiAgfVxyXG59XHJcbiIsIkBpZiAodmlzaWJsZSkge1xyXG4gIDxkaXYgY2xhc3M9J3NlbmQtbWVzc2FnZV9fa2VuZG8tZGlhbG9nJz5cclxuICAgIDxrZW5kby1kaWFsb2cgW3dpZHRoXT0nMTA4MCcgW2hlaWdodF09JzgwMCcgW3RoZW1lQ29sb3JdPSd0aGVtZUNvbG9yJyAoY2xvc2UpPSdvbkNsb3NlKCknPlxyXG4gICAgICA8a2VuZG8tZGlhbG9nLXRpdGxlYmFyPlBheSB3aXRoIFN0cmlwZTwva2VuZG8tZGlhbG9nLXRpdGxlYmFyPiAgICAgICBcclxuICAgICAgPGRpdiBjbGFzcz0na2VuZG8tZGlhbG9nLWNvbnRlbnQnPlxyXG4gICAgICAgIDxkaXYgaWQ9XCJzdHJpcGVDaGVja291dFwiPjwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwva2VuZG8tZGlhbG9nPlxyXG4gIDwvZGl2PlxyXG59XHJcbiJdfQ==
@@ -1,108 +0,0 @@
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 "../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-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-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\\ui\\components\\billing\\buyaccess-button.component.ts", lineNumber: 27 }); })();
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9iaWxsaW5nL2J1eWFjY2Vzcy1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2NvbXBvbmVudHMvYmlsbGluZy9idXlhY2Nlc3MtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7OztJQ2hCM0UsMkJBQTZCO0lBQzNCLDJDQUFtRjtJQUNyRixpQkFBTTs7O0lBR0osaUNBQ29DO0lBQ2xDLDJCQUNGO0lBQUEsaUJBQVM7Ozs7SUFFVCxpQ0FFaUM7SUFBekIscUxBQVMsZUFBQSxxQkFBYyxDQUFBLElBQUM7SUFDOUIseUJBQ0Y7SUFBQSxpQkFBUzs7O0lBVlgsMkJBQXFEO0lBQ25ELDJGQUdTLDhFQUFBO0lBT1gsaUJBQU07OztJQVRLLGNBQXlCO0lBQXpCLHdEQUF5QjtJQUt6QixjQUE2QztJQUE3QyxtRkFBNkM7OztJQVoxRCwyQkFBNEI7SUFDMUIsK0VBRU0sa0VBQUE7SUFjUixpQkFBTTs7O0lBaEJFLGNBQXFCO0lBQXJCLDZDQUFxQjtJQUlyQixjQUE2QztJQUE3Qyw0RUFBNkM7O0FEcUJyRCxNQUFNLE9BQU8sd0JBQXdCO0lBWW5DLFlBQW9CLFVBQTZCO1FBQTdCLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBWGpELG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakIscUJBQWdCLEdBQUcsRUFBRSxDQUFDO1FBSWIsMEJBQXFCLEdBQVksS0FBSyxDQUFDO1FBRXRDLGVBQVUsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUc3RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzdDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDYixPQUFPO1lBQ1QsQ0FBQztZQUVELElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUU3QyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUM7WUFDOUQsQ0FBQztZQUVELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7SUFDUixZQUFZO1FBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7eUZBbkNVLHdCQUF3QjtvRUFBeEIsd0JBQXdCO1lDMUJyQyx5RUFpQk07O1lBakJBLHlDQUFvQjs7O2lGRDBCYix3QkFBd0I7Y0FKcEMsU0FBUzsyQkFDRSwwQkFBMEI7a0RBUzNCLElBQUk7a0JBQVosS0FBSztZQUNHLFNBQVM7a0JBQWpCLEtBQUs7WUFDRyxxQkFBcUI7a0JBQTdCLEtBQUs7WUFFSSxVQUFVO2tCQUFuQixNQUFNOztrRkFWSSx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5Lm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTQgQXVnIDIwMThcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7QXBwQ29udGV4dFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvYXBwY29udGV4dC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5hdG9seS1idXlhY2Nlc3MtYnV0dG9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCdXlBY2Nlc3NCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnRleHRVcGRhdGVkID0gZmFsc2U7XHJcbiAgaXNVc2VyU2lnbmVkSW4gPSBmYWxzZTtcclxuICBjdXJyZW50UGxhbiA9IC0xO1xyXG4gIGN1cnJlbnRQbGFuVGl0bGUgPSAnJztcclxuXHJcbiAgQElucHV0KCkgcGxhbjogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHBsYW5UaXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHZpc2libGVJZlVzZXJTaWduZWRJbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgcGxhbnNlbGVjdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29udGV4dDogQXBwQ29udGV4dFNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hcHBDb250ZXh0LnVwZGF0ZWQkLnN1YnNjcmliZSgoY29udGV4dCkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRleHQpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuaXNVc2VyU2lnbmVkSW4gPSBjb250ZXh0LmlzVXNlclNpZ25lZEluO1xyXG5cclxuICAgICAgaWYgKHRoaXMuaXNVc2VyU2lnbmVkSW4pIHtcclxuICAgICAgICB0aGlzLmN1cnJlbnRQbGFuID0gY29udGV4dC5hY2NvdW50LmJpbGxpbmdQbGFuO1xyXG4gICAgICAgIHRoaXMuY3VycmVudFBsYW5UaXRsZSA9IGNvbnRleHQuYWNjb3VudC5iaWxsaW5nUGxhbkFzU3RyaW5nO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmNvbnRleHRVcGRhdGVkID0gdHJ1ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9FdmVudHNcclxuICBvblBsYW5TZWxlY3QoKSB7XHJcbiAgICB0aGlzLnBsYW5zZWxlY3QuZW1pdCh0aGlzLnBsYW4pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiY29udGV4dFVwZGF0ZWRcIj5cclxuICA8ZGl2ICpuZ0lmPVwiIWlzVXNlclNpZ25lZEluXCI+XHJcbiAgICA8YW5hdG9seS1zaWdudXAtYnV0dG9uIGNsYXNzZXM9XCJidG4gYnRuLWJsb2NrIGJ0bi1wcmltYXJ5XCI+PC9hbmF0b2x5LXNpZ251cC1idXR0b24+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJpc1VzZXJTaWduZWRJbiAmJiB2aXNpYmxlSWZVc2VyU2lnbmVkSW5cIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWJsb2NrIGJ0bi1zdWNjZXNzIHNlbGVjdFBsYW5cIlxyXG4gICAgICAgICAgICAqbmdJZj1cInBsYW4gPT0gY3VycmVudFBsYW5cIj5cclxuICAgICAgWW91ciBQbGFuXHJcbiAgICA8L2J1dHRvbj5cclxuXHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1ibG9jayAgYnRuLXdhcm5pbmcgc2VsZWN0UGxhblwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwicGxhbiAhPSBjdXJyZW50UGxhbiAmJiBjdXJyZW50UGxhbiA9PSAxXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uUGxhblNlbGVjdCgpXCI+XHJcbiAgICAgIEJ1eSBOb3dcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -1,119 +0,0 @@
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 "../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-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-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\\ui\\components\\billing\\subscribe-plan-button.component.ts", lineNumber: 27 }); })();
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2JpbGxpbmcvc3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2JpbGxpbmcvc3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztJQ2hCN0UsMkJBQTZCO0lBQzNCLDJDQUFtRjtJQUNyRixpQkFBTTs7O0lBR0osaUNBQ29DO0lBQ2xDLDJCQUNGO0lBQUEsaUJBQVM7OztJQUVULGlDQUNzQztJQUNwQywyQkFDRjtJQUFBLGlCQUFTOzs7O0lBRVQsaUNBRWlDO0lBQXpCLHlMQUFTLGVBQUEscUJBQWMsQ0FBQSxJQUFDO0lBQzlCLDJCQUNGO0lBQUEsaUJBQVM7OztJQWZYLDJCQUFxRDtJQUNuRCwrRkFHUyxrRkFBQSxrRkFBQTtJQVlYLGlCQUFNOzs7SUFkSyxjQUF5QjtJQUF6Qix3REFBeUI7SUFLekIsY0FBMkI7SUFBM0IsMERBQTJCO0lBSzNCLGNBQWtEO0lBQWxELCtGQUFrRDs7O0lBakIvRCwyQkFBNEI7SUFDMUIsbUZBRU0sc0VBQUE7SUFtQlIsaUJBQU07OztJQXJCRSxjQUFxQjtJQUFyQiw2Q0FBcUI7SUFJckIsY0FBNkM7SUFBN0MsNEVBQTZDOztBRHFCckQsTUFBTSxPQUFPLDRCQUE0QjtJQWN2QyxZQUFvQixVQUE2QjtRQUE3QixlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQWJqRCxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixnQkFBVyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixrQkFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ25CLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUlmLDBCQUFxQixHQUFZLEtBQUssQ0FBQztRQUV0QyxlQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFHN0QsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM3QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsT0FBTztZQUNULENBQUM7WUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFFN0MsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDO2dCQUM1RCxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUM7Z0JBQzFELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLDRCQUE0QixDQUFDO1lBQ3pFLENBQUM7WUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO0lBQ1IsWUFBWTtRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDOzZGQXZDVSw0QkFBNEI7b0VBQTVCLDRCQUE0QjtZQzFCekMsNkVBc0JNOztZQXRCQSx5Q0FBb0I7OztpRkQwQmIsNEJBQTRCO2NBSnhDLFNBQVM7MkJBQ0UsK0JBQStCO2tEQVdoQyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxTQUFTO2tCQUFqQixLQUFLO1lBQ0cscUJBQXFCO2tCQUE3QixLQUFLO1lBRUksVUFBVTtrQkFBbkIsTUFBTTs7a0ZBWkksNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbS5vc292aXRueUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seS5vc292aXRueUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDEgSnVuIDIwMThcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBcHBDb250ZXh0U2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2FwcGNvbnRleHQuc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiYW5hdG9seS1zdWJzY3JpYmUtcGxhbi1idXR0b25cIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL3N1YnNjcmliZS1wbGFuLWJ1dHRvbi5jb21wb25lbnQuaHRtbFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Vic2NyaWJlUGxhbkJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29udGV4dFVwZGF0ZWQgPSBmYWxzZTtcclxuICBpc1VzZXJTaWduZWRJbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRQbGFuID0gLTE7XHJcbiAgY3VycmVudFBsYW5UaXRsZSA9IFwiXCI7XHJcbiAgcmVxdWVzdGVkUGxhbiA9IC0xO1xyXG4gIHJlcXVlc3RlZFBsYW5UaXRsZSA9IFwiXCI7XHJcblxyXG4gIEBJbnB1dCgpIHBsYW46IG51bWJlcjtcclxuICBASW5wdXQoKSBwbGFuVGl0bGU6IHN0cmluZztcclxuICBASW5wdXQoKSB2aXNpYmxlSWZVc2VyU2lnbmVkSW46IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHBsYW5zZWxlY3Q6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcENvbnRleHQ6IEFwcENvbnRleHRTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYXBwQ29udGV4dC51cGRhdGVkJC5zdWJzY3JpYmUoKGNvbnRleHQpID0+IHtcclxuICAgICAgaWYgKCFjb250ZXh0KSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmlzVXNlclNpZ25lZEluID0gY29udGV4dC5pc1VzZXJTaWduZWRJbjtcclxuXHJcbiAgICAgIGlmICh0aGlzLmlzVXNlclNpZ25lZEluKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50UGxhbiA9IGNvbnRleHQuYWNjb3VudC5iaWxsaW5nUGxhbjtcclxuICAgICAgICB0aGlzLmN1cnJlbnRQbGFuVGl0bGUgPSBjb250ZXh0LmFjY291bnQuYmlsbGluZ1BsYW5Bc1N0cmluZztcclxuICAgICAgICB0aGlzLnJlcXVlc3RlZFBsYW4gPSBjb250ZXh0LmFjY291bnQucmVxdWVzdGVkQmlsbGluZ1BsYW47XHJcbiAgICAgICAgdGhpcy5yZXF1ZXN0ZWRQbGFuVGl0bGUgPSBjb250ZXh0LmFjY291bnQucmVxdWVzdGVkQmlsbGluZ1BsYW5Bc1N0cmluZztcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5jb250ZXh0VXBkYXRlZCA9IHRydWU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vRXZlbnRzXHJcbiAgb25QbGFuU2VsZWN0KCkge1xyXG4gICAgdGhpcy5wbGFuc2VsZWN0LmVtaXQodGhpcy5wbGFuKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiAqbmdJZj1cImNvbnRleHRVcGRhdGVkXCI+XHJcbiAgPGRpdiAqbmdJZj1cIiFpc1VzZXJTaWduZWRJblwiPlxyXG4gICAgPGFuYXRvbHktc2lnbnVwLWJ1dHRvbiBjbGFzc2VzPVwiYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeVwiPjwvYW5hdG9seS1zaWdudXAtYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2ICpuZ0lmPVwiaXNVc2VyU2lnbmVkSW4gJiYgdmlzaWJsZUlmVXNlclNpZ25lZEluXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1ibG9jayBidG4tc3VjY2VzcyBzZWxlY3RQbGFuXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuID09IGN1cnJlbnRQbGFuXCI+XHJcbiAgICAgIFlvdXIgUGxhblxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tYmxvY2sgIGJ0bi13YXJuaW5nIHNlbGVjdFBsYW5cIlxyXG4gICAgICAgICAgICAqbmdJZj1cInBsYW4gPT0gcmVxdWVzdGVkUGxhblwiPlxyXG4gICAgICBSZXF1ZXN0ZWRcclxuICAgIDwvYnV0dG9uPlxyXG5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWJsb2NrICBidG4td2FybmluZyBzZWxlY3RQbGFuXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuICE9IGN1cnJlbnRQbGFuICYmIHBsYW4gIT0gcmVxdWVzdGVkUGxhblwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblBsYW5TZWxlY3QoKVwiPlxyXG4gICAgICBTdWJzY3JpYmVcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19