@osovitny/anatoly 3.17.159 → 3.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/fesm2022/osovitny-anatoly.mjs +554 -523
  2. package/fesm2022/osovitny-anatoly.mjs.map +1 -1
  3. package/lib/billing/utils.d.ts +2 -1
  4. package/lib/core/converts/convert.d.ts +1 -1
  5. package/lib/core/guid.d.ts +1 -1
  6. package/lib/core/is.d.ts +5 -5
  7. package/lib/ui/components/base/components/component.d.ts +1 -1
  8. package/lib/ui/components/base/components/edit.component.d.ts +1 -1
  9. package/lib/ui/components/base/components/enum-edit.component.d.ts +1 -1
  10. package/lib/ui/components/data-grid/control-panel.component.d.ts +6 -5
  11. package/lib/ui/components/dropdownlists/country/country.dropdownlist.d.ts +1 -3
  12. package/lib/ui/components/index.d.ts +1 -1
  13. package/lib/ui/directives/index.d.ts +1 -1
  14. package/lib/ui/directives/replacer/replacer.base.directive.d.ts +1 -1
  15. package/lib/ui/forms/index.d.ts +1 -1
  16. package/lib/ui/pipes/index.d.ts +1 -1
  17. package/package.json +58 -60
  18. package/esm2022/lib/anatoly.module.mjs +0 -62
  19. package/esm2022/lib/billing/billing.module.mjs +0 -81
  20. package/esm2022/lib/billing/components/buttons/buyaccess-button.component.mjs +0 -104
  21. package/esm2022/lib/billing/components/buttons/subscribe-plan-button.component.mjs +0 -113
  22. package/esm2022/lib/billing/components/exports.mjs +0 -28
  23. package/esm2022/lib/billing/components/index.mjs +0 -31
  24. package/esm2022/lib/billing/components/order-summary/order-summary.component.mjs +0 -154
  25. package/esm2022/lib/billing/components/payment-methods/payment-methods.component.mjs +0 -106
  26. package/esm2022/lib/billing/components/payment-options/payment-options.component.mjs +0 -97
  27. package/esm2022/lib/billing/components/pm/braintree/braintree.component.mjs +0 -155
  28. package/esm2022/lib/billing/components/pm/paypal/paypal-button.component.mjs +0 -159
  29. package/esm2022/lib/billing/components/pm/paypal/paypal-subscribe-button.component.mjs +0 -149
  30. package/esm2022/lib/billing/components/pm/paypal/paypal.component.mjs +0 -317
  31. package/esm2022/lib/billing/components/pm/stripe/stripe.component.mjs +0 -109
  32. package/esm2022/lib/billing/exports.mjs +0 -19
  33. package/esm2022/lib/billing/models/paypal-models.mjs +0 -16
  34. package/esm2022/lib/billing/services/payments.service.mjs +0 -170
  35. package/esm2022/lib/billing/services/paypal-script.service.mjs +0 -90
  36. package/esm2022/lib/billing/utils.mjs +0 -28
  37. package/esm2022/lib/core/browser.mjs +0 -24
  38. package/esm2022/lib/core/consts/app-settings.mjs +0 -55
  39. package/esm2022/lib/core/consts/core-settings.mjs +0 -29
  40. package/esm2022/lib/core/consts/formats.mjs +0 -27
  41. package/esm2022/lib/core/consts/ga.mjs +0 -26
  42. package/esm2022/lib/core/consts/storageKeys.mjs +0 -23
  43. package/esm2022/lib/core/converts/convert.mjs +0 -103
  44. package/esm2022/lib/core/converts/dateConvert.mjs +0 -60
  45. package/esm2022/lib/core/converts/tz/tzParseTimezone.mjs +0 -122
  46. package/esm2022/lib/core/converts/tz/tzTokenizeDate.mjs +0 -101
  47. package/esm2022/lib/core/converts/xmlFormatter.mjs +0 -34
  48. package/esm2022/lib/core/core.module.mjs +0 -112
  49. package/esm2022/lib/core/dom.mjs +0 -153
  50. package/esm2022/lib/core/enums/billing.mjs +0 -56
  51. package/esm2022/lib/core/enums/enums.mjs +0 -35
  52. package/esm2022/lib/core/enums/index.mjs +0 -17
  53. package/esm2022/lib/core/exports.mjs +0 -67
  54. package/esm2022/lib/core/go/apps-go.service.mjs +0 -88
  55. package/esm2022/lib/core/go/go.service.mjs +0 -86
  56. package/esm2022/lib/core/guards/once-import.guard.mjs +0 -21
  57. package/esm2022/lib/core/guards/starter.guard.mjs +0 -46
  58. package/esm2022/lib/core/guid.mjs +0 -22
  59. package/esm2022/lib/core/interceptors/httpInterceptor.mjs +0 -161
  60. package/esm2022/lib/core/is.mjs +0 -98
  61. package/esm2022/lib/core/localization/localization.module.mjs +0 -45
  62. package/esm2022/lib/core/localization/localization.service.mjs +0 -164
  63. package/esm2022/lib/core/localization/localize.pipe.mjs +0 -83
  64. package/esm2022/lib/core/localization/settings.module.mjs +0 -103
  65. package/esm2022/lib/core/localization/utils.mjs +0 -41
  66. package/esm2022/lib/core/logging/globalErrorHandler.mjs +0 -41
  67. package/esm2022/lib/core/logging/logging.service.mjs +0 -40
  68. package/esm2022/lib/core/models/qs.mjs +0 -17
  69. package/esm2022/lib/core/notifications/alerts.mjs +0 -116
  70. package/esm2022/lib/core/notifications/interfaces/notification.mjs +0 -17
  71. package/esm2022/lib/core/notifications/services/notification-service.mjs +0 -83
  72. package/esm2022/lib/core/performance/stopwatch.mjs +0 -50
  73. package/esm2022/lib/core/services/appcontext.service.mjs +0 -186
  74. package/esm2022/lib/core/services/dm.service.mjs +0 -69
  75. package/esm2022/lib/core/services/google-analytics.service.mjs +0 -75
  76. package/esm2022/lib/core/services/idle.service.mjs +0 -77
  77. package/esm2022/lib/core/services/loading.service.mjs +0 -67
  78. package/esm2022/lib/core/services/script.service.mjs +0 -77
  79. package/esm2022/lib/core/services/starter.service.mjs +0 -85
  80. package/esm2022/lib/core/services/web-storage.service.mjs +0 -66
  81. package/esm2022/lib/core/subs.mjs +0 -31
  82. package/esm2022/lib/core/utils/qsutils.mjs +0 -84
  83. package/esm2022/lib/core/utils/utils.mjs +0 -112
  84. package/esm2022/lib/data/base/api.service.mjs +0 -94
  85. package/esm2022/lib/data/base/grid/grid-edit.service.mjs +0 -80
  86. package/esm2022/lib/data/base/grid/grid-read.service.mjs +0 -60
  87. package/esm2022/lib/data/data.module.mjs +0 -66
  88. package/esm2022/lib/data/exports.mjs +0 -29
  89. package/esm2022/lib/data/services/billing/currencies-api.service.mjs +0 -41
  90. package/esm2022/lib/data/services/billing/currencies-storage.service.mjs +0 -92
  91. package/esm2022/lib/data/services/billing/discountcodes-api.service.mjs +0 -37
  92. package/esm2022/lib/data/services/billing/payments-api.service.mjs +0 -64
  93. package/esm2022/lib/data/services/billing/subscriptions-api.service.mjs +0 -61
  94. package/esm2022/lib/data/services/billing/transactions-api.service.mjs +0 -43
  95. package/esm2022/lib/data/services/core-api.service.mjs +0 -44
  96. package/esm2022/lib/data/services/emails-api.service.mjs +0 -47
  97. package/esm2022/lib/external/fa.module.mjs +0 -45
  98. package/esm2022/lib/external/kendo.module.mjs +0 -179
  99. package/esm2022/lib/iam/b2c/b2c.mjs +0 -40
  100. package/esm2022/lib/iam/b2c/consts.mjs +0 -25
  101. package/esm2022/lib/iam/b2c/index.mjs +0 -21
  102. package/esm2022/lib/iam/configs.mjs +0 -109
  103. package/esm2022/lib/iam/consts.mjs +0 -22
  104. package/esm2022/lib/iam/exports.mjs +0 -22
  105. package/esm2022/lib/iam/guards/admin.guard.mjs +0 -46
  106. package/esm2022/lib/iam/guards/authentication.guard.mjs +0 -30
  107. package/esm2022/lib/iam/guards/index.mjs +0 -20
  108. package/esm2022/lib/iam/iam-pages.module.mjs +0 -57
  109. package/esm2022/lib/iam/iam-pages.routes.mjs +0 -45
  110. package/esm2022/lib/iam/iam.module.mjs +0 -84
  111. package/esm2022/lib/iam/pages/signin.page.mjs +0 -40
  112. package/esm2022/lib/iam/pages/signout.page.mjs +0 -40
  113. package/esm2022/lib/iam/pages/signup.page.mjs +0 -40
  114. package/esm2022/lib/iam/redirect.mjs +0 -29
  115. package/esm2022/lib/iam/services/auth.service.mjs +0 -436
  116. package/esm2022/lib/iam/storage.mjs +0 -42
  117. package/esm2022/lib/iam/utils.mjs +0 -49
  118. package/esm2022/lib/ui/components/base/components/component.mjs +0 -76
  119. package/esm2022/lib/ui/components/base/components/edit.component.mjs +0 -146
  120. package/esm2022/lib/ui/components/base/components/enum-edit.component.mjs +0 -92
  121. package/esm2022/lib/ui/components/base/dialog.mjs +0 -71
  122. package/esm2022/lib/ui/components/base/list.mjs +0 -100
  123. package/esm2022/lib/ui/components/base/pages/edit.page.mjs +0 -32
  124. package/esm2022/lib/ui/components/base/pages/page.mjs +0 -32
  125. package/esm2022/lib/ui/components/base/pages/paged.page.mjs +0 -68
  126. package/esm2022/lib/ui/components/card/card-body.component.mjs +0 -37
  127. package/esm2022/lib/ui/components/card/card-footer.component.mjs +0 -37
  128. package/esm2022/lib/ui/components/card/card-header.component.mjs +0 -51
  129. package/esm2022/lib/ui/components/card/card.component.mjs +0 -41
  130. package/esm2022/lib/ui/components/check-icon/check-icon.component.mjs +0 -43
  131. package/esm2022/lib/ui/components/copy-2-clipboard/copy-2-clipboard.component.mjs +0 -57
  132. package/esm2022/lib/ui/components/data-grid/control-panel.component.mjs +0 -201
  133. package/esm2022/lib/ui/components/datapager/datapager.component.mjs +0 -95
  134. package/esm2022/lib/ui/components/dropdownlists/country/country.dropdownlist.mjs +0 -96
  135. package/esm2022/lib/ui/components/dropdownlists/moderationstatus/moderationstatus.dropdownlist.mjs +0 -88
  136. package/esm2022/lib/ui/components/dropdownlists/publishstatus/publishstatus.dropdownlist.mjs +0 -88
  137. package/esm2022/lib/ui/components/dropdownlists/timezone/timezone.dropdownlist.mjs +0 -112
  138. package/esm2022/lib/ui/components/exports.mjs +0 -53
  139. package/esm2022/lib/ui/components/feature-will-be-ready/feature-will-be-ready.component.mjs +0 -55
  140. package/esm2022/lib/ui/components/html-editor/base-editor.component.mjs +0 -94
  141. package/esm2022/lib/ui/components/html-editor/defaultoptions.mjs +0 -87
  142. package/esm2022/lib/ui/components/html-editor/html-editor.component.mjs +0 -114
  143. package/esm2022/lib/ui/components/identity/signin-button.component.mjs +0 -105
  144. package/esm2022/lib/ui/components/identity/signout-button.component.mjs +0 -105
  145. package/esm2022/lib/ui/components/identity/signup-button.component.mjs +0 -105
  146. package/esm2022/lib/ui/components/index.mjs +0 -57
  147. package/esm2022/lib/ui/components/no-mobile-support/no-mobile-support.component.mjs +0 -45
  148. package/esm2022/lib/ui/components/nodata/nodata.component.mjs +0 -76
  149. package/esm2022/lib/ui/components/spinners/loading/loading.component.mjs +0 -53
  150. package/esm2022/lib/ui/components/spinners/pagespinner/pagespinner.component.mjs +0 -85
  151. package/esm2022/lib/ui/components/spinners/pagespinner/spinkits.mjs +0 -12
  152. package/esm2022/lib/ui/components/urlslug/urlslug.component.mjs +0 -130
  153. package/esm2022/lib/ui/components/you-agree-to-our-terms/you-agree-to-our-terms.component.mjs +0 -63
  154. package/esm2022/lib/ui/dialogs/contact-us/contact-us.dialog.mjs +0 -78
  155. package/esm2022/lib/ui/dialogs/exports.mjs +0 -16
  156. package/esm2022/lib/ui/dialogs/index.mjs +0 -19
  157. package/esm2022/lib/ui/directives/exports.mjs +0 -19
  158. package/esm2022/lib/ui/directives/hover.directive.mjs +0 -50
  159. package/esm2022/lib/ui/directives/index.mjs +0 -22
  160. package/esm2022/lib/ui/directives/native-element.directive.mjs +0 -37
  161. package/esm2022/lib/ui/directives/replacer/a-replacer.directive.mjs +0 -48
  162. package/esm2022/lib/ui/directives/replacer/image-replacer.directive.mjs +0 -44
  163. package/esm2022/lib/ui/directives/replacer/replacer.base.directive.mjs +0 -44
  164. package/esm2022/lib/ui/exports.mjs +0 -22
  165. package/esm2022/lib/ui/forms/components/address/address.component.mjs +0 -240
  166. package/esm2022/lib/ui/forms/components/company/company.component.mjs +0 -138
  167. package/esm2022/lib/ui/forms/contact-us/contact-us.mjs +0 -213
  168. package/esm2022/lib/ui/forms/exports.mjs +0 -20
  169. package/esm2022/lib/ui/forms/index.mjs +0 -21
  170. package/esm2022/lib/ui/pipes/exports.mjs +0 -19
  171. package/esm2022/lib/ui/pipes/filesize.pipe.mjs +0 -42
  172. package/esm2022/lib/ui/pipes/index.mjs +0 -22
  173. package/esm2022/lib/ui/pipes/replace-text.pipe.mjs +0 -37
  174. package/esm2022/lib/ui/pipes/safeHtml.pipe.mjs +0 -34
  175. package/esm2022/lib/ui/ui.module.mjs +0 -122
  176. package/esm2022/lib/ui/validation/exports.mjs +0 -19
  177. package/esm2022/lib/ui/validation/form-validation-summary.component.mjs +0 -90
  178. package/esm2022/lib/ui/validation/index.mjs +0 -21
  179. package/esm2022/lib/ui/validation/item-validation-summary.component.mjs +0 -53
  180. package/esm2022/lib/ui/validation/validation-summary.component.mjs +0 -124
  181. package/esm2022/osovitny-anatoly.mjs +0 -5
  182. package/esm2022/public-api.mjs +0 -22
@@ -1,113 +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
- function SubscribePlanButtonComponent_div_0_div_1_button_1_Template(rf, ctx) { if (rf & 1) {
22
- i0.ɵɵelementStart(0, "button", 4);
23
- i0.ɵɵtext(1, " Your Plan ");
24
- i0.ɵɵelementEnd();
25
- } }
26
- function SubscribePlanButtonComponent_div_0_div_1_button_2_Template(rf, ctx) { if (rf & 1) {
27
- i0.ɵɵelementStart(0, "button", 5);
28
- i0.ɵɵtext(1, " Requested ");
29
- i0.ɵɵelementEnd();
30
- } }
31
- function SubscribePlanButtonComponent_div_0_div_1_button_3_Template(rf, ctx) { if (rf & 1) {
32
- const _r6 = i0.ɵɵgetCurrentView();
33
- i0.ɵɵelementStart(0, "button", 6);
34
- i0.ɵɵlistener("click", function SubscribePlanButtonComponent_div_0_div_1_button_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r5.onPlanSelect()); });
35
- i0.ɵɵtext(1, " Subscribe ");
36
- i0.ɵɵelementEnd();
37
- } }
38
- function SubscribePlanButtonComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
39
- i0.ɵɵelementStart(0, "div");
40
- i0.ɵɵtemplate(1, SubscribePlanButtonComponent_div_0_div_1_button_1_Template, 2, 0, "button", 1)(2, SubscribePlanButtonComponent_div_0_div_1_button_2_Template, 2, 0, "button", 2)(3, SubscribePlanButtonComponent_div_0_div_1_button_3_Template, 2, 0, "button", 3);
41
- i0.ɵɵelementEnd();
42
- } if (rf & 2) {
43
- const ctx_r1 = i0.ɵɵnextContext(2);
44
- i0.ɵɵadvance();
45
- i0.ɵɵproperty("ngIf", ctx_r1.plan == ctx_r1.currentPlanId);
46
- i0.ɵɵadvance();
47
- i0.ɵɵproperty("ngIf", ctx_r1.plan == ctx_r1.requestedPlanId);
48
- i0.ɵɵadvance();
49
- i0.ɵɵproperty("ngIf", ctx_r1.plan != ctx_r1.currentPlanId && ctx_r1.plan != ctx_r1.requestedPlanId);
50
- } }
51
- function SubscribePlanButtonComponent_div_0_Template(rf, ctx) { if (rf & 1) {
52
- i0.ɵɵelementStart(0, "div");
53
- i0.ɵɵtemplate(1, SubscribePlanButtonComponent_div_0_div_1_Template, 4, 3, "div", 0);
54
- i0.ɵɵelementEnd();
55
- } if (rf & 2) {
56
- const ctx_r0 = i0.ɵɵnextContext();
57
- i0.ɵɵadvance();
58
- i0.ɵɵproperty("ngIf", ctx_r0.isUserSignedIn && ctx_r0.visibleIfUserSignedIn);
59
- } }
60
- export class SubscribePlanButtonComponent {
61
- constructor(appContext) {
62
- this.appContext = appContext;
63
- this.contextUpdated = false;
64
- this.isUserSignedIn = false;
65
- this.currentPlanId = -1;
66
- this.requestedPlanId = -1;
67
- this.visibleIfUserSignedIn = false;
68
- //Outputs
69
- this.planselect = new EventEmitter();
70
- }
71
- ngOnInit() {
72
- this.setDefaults();
73
- this.setValues();
74
- }
75
- setDefaults() {
76
- }
77
- setValues() {
78
- this.appContext.updated$.subscribe((context) => {
79
- if (!context) {
80
- return;
81
- }
82
- this.isUserSignedIn = context.isUserSignedIn;
83
- if (this.isUserSignedIn) {
84
- let billing = context.billing.profile;
85
- this.currentPlanId = billing.planId;
86
- this.requestedPlanId = billing.requestedPlanId ?? -1;
87
- }
88
- this.contextUpdated = true;
89
- });
90
- }
91
- //Events
92
- onPlanSelect() {
93
- this.planselect.emit(this.plan);
94
- }
95
- static { this.ɵfac = function SubscribePlanButtonComponent_Factory(t) { return new (t || SubscribePlanButtonComponent)(i0.ɵɵdirectiveInject(i1.AppContextService)); }; }
96
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SubscribePlanButtonComponent, selectors: [["anatoly-billing-subscribe-plan-button"]], inputs: { plan: "plan", visibleIfUserSignedIn: "visibleIfUserSignedIn" }, outputs: { planselect: "planselect" }, decls: 1, vars: 1, consts: [[4, "ngIf"], ["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) {
97
- i0.ɵɵtemplate(0, SubscribePlanButtonComponent_div_0_Template, 2, 1, "div", 0);
98
- } if (rf & 2) {
99
- i0.ɵɵproperty("ngIf", ctx.contextUpdated);
100
- } }, dependencies: [i2.NgIf], encapsulation: 2 }); }
101
- }
102
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SubscribePlanButtonComponent, [{
103
- type: Component,
104
- args: [{ selector: 'anatoly-billing-subscribe-plan-button', template: "<div *ngIf=\"contextUpdated\">\r\n <!--\r\n <div *ngIf=\"!isUserSignedIn\">\r\n <anatoly-signup-button classes=\"btn btn-block btn-primary\" />\r\n </div>\r\n -->\r\n\r\n <div *ngIf=\"isUserSignedIn && visibleIfUserSignedIn\">\r\n <button class=\"btn btn-block btn-success selectPlan\" *ngIf=\"plan == currentPlanId\">\r\n Your Plan\r\n </button>\r\n\r\n <button class=\"btn btn-block btn-warning selectPlan\" *ngIf=\"plan == requestedPlanId\">\r\n Requested\r\n </button>\r\n\r\n <button class=\"btn btn-block btn-warning selectPlan\" *ngIf=\"plan != currentPlanId && plan != requestedPlanId\"\r\n (click)=\"onPlanSelect()\">\r\n Subscribe\r\n </button>\r\n </div>\r\n</div>\r\n" }]
105
- }], () => [{ type: i1.AppContextService }], { plan: [{
106
- type: Input
107
- }], visibleIfUserSignedIn: [{
108
- type: Input
109
- }], planselect: [{
110
- type: Output
111
- }] }); })();
112
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SubscribePlanButtonComponent, { className: "SubscribePlanButtonComponent", filePath: "lib\\billing\\components\\buttons\\subscribe-plan-button.component.ts", lineNumber: 27 }); })();
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvYnV0dG9ucy9zdWJzY3JpYmUtcGxhbi1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2JpbGxpbmcvY29tcG9uZW50cy9idXR0b25zL3N1YnNjcmliZS1wbGFuLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztJQ1QzRSxpQ0FBbUY7SUFDakYsMkJBQ0Y7SUFBQSxpQkFBUzs7O0lBRVQsaUNBQXNGO0lBQ3BGLDJCQUNGO0lBQUEsaUJBQVM7Ozs7SUFFVCxpQ0FDaUM7SUFBekIseUxBQVMsZUFBQSxxQkFBYyxDQUFBLElBQUM7SUFDOUIsMkJBQ0Y7SUFBQSxpQkFBUzs7O0lBWlgsMkJBQXFEO0lBQ25ELCtGQUVTLGtGQUFBLGtGQUFBO0lBVVgsaUJBQU07OztJQVprRCxjQUEyQjtJQUEzQiwwREFBMkI7SUFJMUIsY0FBNkI7SUFBN0IsNERBQTZCO0lBSTdCLGNBQXNEO0lBQXRELG1HQUFzRDs7O0lBaEJqSCwyQkFBNEI7SUFPMUIsbUZBYU07SUFDUixpQkFBTTs7O0lBZEUsY0FBNkM7SUFBN0MsNEVBQTZDOztBRG1CckQsTUFBTSxPQUFPLDRCQUE0QjtJQWF2QyxZQUFvQixVQUE2QjtRQUE3QixlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQVpqRCxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixrQkFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ25CLG9CQUFlLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFJWiwwQkFBcUIsR0FBWSxLQUFLLENBQUM7UUFFaEQsU0FBUztRQUNDLGVBQVUsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUc3RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVPLFdBQVc7SUFDbkIsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM3QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsT0FBTztZQUNULENBQUM7WUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7WUFFN0MsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO2dCQUN0QyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN2RCxDQUFDO1lBRUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtJQUNSLFlBQVk7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs2RkE3Q1UsNEJBQTRCO29FQUE1Qiw0QkFBNEI7WUMxQnpDLDZFQXFCTTs7WUFyQkEseUNBQW9COzs7aUZEMEJiLDRCQUE0QjtjQUp4QyxTQUFTOzJCQUNFLHVDQUF1QztrREFVeEMsSUFBSTtrQkFBWixLQUFLO1lBQ0cscUJBQXFCO2tCQUE3QixLQUFLO1lBR0ksVUFBVTtrQkFBbkIsTUFBTTs7a0ZBWEksNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbS5vc292aXRueUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seS5vc292aXRueUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDEgSnVuIDIwMThcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBcHBDb250ZXh0U2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2FwcGNvbnRleHQuc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhbmF0b2x5LWJpbGxpbmctc3Vic2NyaWJlLXBsYW4tYnV0dG9uJyxcclxuICB0ZW1wbGF0ZVVybDogXCIuL3N1YnNjcmliZS1wbGFuLWJ1dHRvbi5jb21wb25lbnQuaHRtbFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Vic2NyaWJlUGxhbkJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29udGV4dFVwZGF0ZWQgPSBmYWxzZTtcclxuICBpc1VzZXJTaWduZWRJbiA9IGZhbHNlO1xyXG4gIGN1cnJlbnRQbGFuSWQgPSAtMTtcclxuICByZXF1ZXN0ZWRQbGFuSWQgPSAtMTtcclxuXHJcbiAgLy9JbnB1dHNcclxuICBASW5wdXQoKSBwbGFuOiBudW1iZXI7XHJcbiAgQElucHV0KCkgdmlzaWJsZUlmVXNlclNpZ25lZEluOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8vT3V0cHV0c1xyXG4gIEBPdXRwdXQoKSBwbGFuc2VsZWN0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBDb250ZXh0OiBBcHBDb250ZXh0U2VydmljZSkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldERlZmF1bHRzKCk7XHJcbiAgICB0aGlzLnNldFZhbHVlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXREZWZhdWx0cygpIHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VmFsdWVzKCkge1xyXG4gICAgdGhpcy5hcHBDb250ZXh0LnVwZGF0ZWQkLnN1YnNjcmliZSgoY29udGV4dCkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRleHQpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuaXNVc2VyU2lnbmVkSW4gPSBjb250ZXh0LmlzVXNlclNpZ25lZEluO1xyXG5cclxuICAgICAgaWYgKHRoaXMuaXNVc2VyU2lnbmVkSW4pIHtcclxuICAgICAgICBsZXQgYmlsbGluZyA9IGNvbnRleHQuYmlsbGluZy5wcm9maWxlO1xyXG4gICAgICAgIHRoaXMuY3VycmVudFBsYW5JZCA9IGJpbGxpbmcucGxhbklkO1xyXG4gICAgICAgIHRoaXMucmVxdWVzdGVkUGxhbklkID0gYmlsbGluZy5yZXF1ZXN0ZWRQbGFuSWQgPz8gLTE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29udGV4dFVwZGF0ZWQgPSB0cnVlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0V2ZW50c1xyXG4gIG9uUGxhblNlbGVjdCgpIHtcclxuICAgIHRoaXMucGxhbnNlbGVjdC5lbWl0KHRoaXMucGxhbik7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgKm5nSWY9XCJjb250ZXh0VXBkYXRlZFwiPlxyXG4gIDwhLS1cclxuICA8ZGl2ICpuZ0lmPVwiIWlzVXNlclNpZ25lZEluXCI+XHJcbiAgICA8YW5hdG9seS1zaWdudXAtYnV0dG9uIGNsYXNzZXM9XCJidG4gYnRuLWJsb2NrIGJ0bi1wcmltYXJ5XCIgLz5cclxuICA8L2Rpdj5cclxuICAtLT5cclxuXHJcbiAgPGRpdiAqbmdJZj1cImlzVXNlclNpZ25lZEluICYmIHZpc2libGVJZlVzZXJTaWduZWRJblwiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tYmxvY2sgYnRuLXN1Y2Nlc3Mgc2VsZWN0UGxhblwiICpuZ0lmPVwicGxhbiA9PSBjdXJyZW50UGxhbklkXCI+XHJcbiAgICAgIFlvdXIgUGxhblxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tYmxvY2sgIGJ0bi13YXJuaW5nIHNlbGVjdFBsYW5cIiAqbmdJZj1cInBsYW4gPT0gcmVxdWVzdGVkUGxhbklkXCI+XHJcbiAgICAgIFJlcXVlc3RlZFxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tYmxvY2sgIGJ0bi13YXJuaW5nIHNlbGVjdFBsYW5cIiAqbmdJZj1cInBsYW4gIT0gY3VycmVudFBsYW5JZCAmJiBwbGFuICE9IHJlcXVlc3RlZFBsYW5JZFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblBsYW5TZWxlY3QoKVwiPlxyXG4gICAgICBTdWJzY3JpYmVcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -1,28 +0,0 @@
1
- /*
2
- <file>
3
- Project:
4
- @osovitny/anatoly
5
-
6
- Authors:
7
- Vadim Osovitny vadim.osovitny@osovitny.com
8
-
9
- Created:
10
- 11 Nov 2024
11
-
12
- Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
13
- </file>
14
- */
15
- export * from './buttons/buyaccess-button.component';
16
- export * from './buttons/subscribe-plan-button.component';
17
- export * from "./order-summary/order-summary.component";
18
- export * from "./payment-methods/payment-methods.component";
19
- export * from "./payment-options/payment-options.component";
20
- //braintree
21
- export * from "./pm/braintree/braintree.component";
22
- //paypal
23
- export * from "./pm/paypal/paypal-button.component";
24
- export * from "./pm/paypal/paypal-subscribe-button.component";
25
- export * from "./pm/paypal/paypal.component";
26
- //stripe
27
- export * from "./pm/stripe/stripe.component";
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvZXhwb3J0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVELFdBQVc7QUFDWCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELFFBQVE7QUFDUixjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxRQUFRO0FBQ1IsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAxMSBOb3YgMjAyNFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vYnV0dG9ucy9idXlhY2Nlc3MtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYnV0dG9ucy9zdWJzY3JpYmUtcGxhbi1idXR0b24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSBcIi4vb3JkZXItc3VtbWFyeS9vcmRlci1zdW1tYXJ5LmNvbXBvbmVudFwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9wYXltZW50LW1ldGhvZHMvcGF5bWVudC1tZXRob2RzLmNvbXBvbmVudFwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9wYXltZW50LW9wdGlvbnMvcGF5bWVudC1vcHRpb25zLmNvbXBvbmVudFwiO1xyXG5cclxuLy9icmFpbnRyZWVcclxuZXhwb3J0ICogZnJvbSBcIi4vcG0vYnJhaW50cmVlL2JyYWludHJlZS5jb21wb25lbnRcIjtcclxuXHJcbi8vcGF5cGFsXHJcbmV4cG9ydCAqIGZyb20gXCIuL3BtL3BheXBhbC9wYXlwYWwtYnV0dG9uLmNvbXBvbmVudFwiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9wbS9wYXlwYWwvcGF5cGFsLXN1YnNjcmliZS1idXR0b24uY29tcG9uZW50XCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL3BtL3BheXBhbC9wYXlwYWwuY29tcG9uZW50XCI7XHJcblxyXG4vL3N0cmlwZVxyXG5leHBvcnQgKiBmcm9tIFwiLi9wbS9zdHJpcGUvc3RyaXBlLmNvbXBvbmVudFwiO1xyXG4iXX0=
@@ -1,31 +0,0 @@
1
- /*
2
- <file>
3
- Project:
4
- @osovitny/anatoly
5
-
6
- Authors:
7
- Vadim Osovitny vadim.osovitny@osovitny.com
8
-
9
- Created:
10
- 8 Nov 2024
11
-
12
- Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
13
- </file>
14
- */
15
- import { BuyAccessButtonComponent, SubscribePlanButtonComponent, OrderSummaryComponent, PaymentMethodsComponent, PaymentOptionsComponent,
16
- //PM
17
- BraintreeDialog, PaypalButtonComponent, PaypalSubscribeButtonComponent, PayPalComponent, StripeDialog } from "./exports";
18
- export const COMPONENTS = [
19
- BuyAccessButtonComponent,
20
- SubscribePlanButtonComponent,
21
- OrderSummaryComponent,
22
- PaymentMethodsComponent,
23
- PaymentOptionsComponent,
24
- //PM
25
- BraintreeDialog,
26
- PaypalButtonComponent,
27
- PaypalSubscribeButtonComponent,
28
- PayPalComponent,
29
- StripeDialog
30
- ];
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7O0VBYUU7QUFFRixPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDRCQUE0QixFQUM1QixxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLHVCQUF1QjtBQUV2QixJQUFJO0FBQ0osZUFBZSxFQUNmLHFCQUFxQixFQUNyQiw4QkFBOEIsRUFDOUIsZUFBZSxFQUNmLFlBQVksRUFDYixNQUFNLFdBQVcsQ0FBQztBQUVuQixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsd0JBQXdCO0lBQ3hCLDRCQUE0QjtJQUM1QixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLHVCQUF1QjtJQUV2QixJQUFJO0lBQ0osZUFBZTtJQUNmLHFCQUFxQjtJQUNyQiw4QkFBOEI7SUFDOUIsZUFBZTtJQUNmLFlBQVk7Q0FDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbS5vc292aXRueUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDggTm92IDIwMjRcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5pbXBvcnQge1xyXG4gIEJ1eUFjY2Vzc0J1dHRvbkNvbXBvbmVudCxcclxuICBTdWJzY3JpYmVQbGFuQnV0dG9uQ29tcG9uZW50LFxyXG4gIE9yZGVyU3VtbWFyeUNvbXBvbmVudCxcclxuICBQYXltZW50TWV0aG9kc0NvbXBvbmVudCxcclxuICBQYXltZW50T3B0aW9uc0NvbXBvbmVudCxcclxuXHJcbiAgLy9QTVxyXG4gIEJyYWludHJlZURpYWxvZyxcclxuICBQYXlwYWxCdXR0b25Db21wb25lbnQsXHJcbiAgUGF5cGFsU3Vic2NyaWJlQnV0dG9uQ29tcG9uZW50LFxyXG4gIFBheVBhbENvbXBvbmVudCxcclxuICBTdHJpcGVEaWFsb2dcclxufSBmcm9tIFwiLi9leHBvcnRzXCI7XHJcblxyXG5leHBvcnQgY29uc3QgQ09NUE9ORU5UUyA9IFtcclxuICBCdXlBY2Nlc3NCdXR0b25Db21wb25lbnQsXHJcbiAgU3Vic2NyaWJlUGxhbkJ1dHRvbkNvbXBvbmVudCxcclxuICBPcmRlclN1bW1hcnlDb21wb25lbnQsXHJcbiAgUGF5bWVudE1ldGhvZHNDb21wb25lbnQsXHJcbiAgUGF5bWVudE9wdGlvbnNDb21wb25lbnQsXHJcblxyXG4gIC8vUE1cclxuICBCcmFpbnRyZWVEaWFsb2csXHJcbiAgUGF5cGFsQnV0dG9uQ29tcG9uZW50LFxyXG4gIFBheXBhbFN1YnNjcmliZUJ1dHRvbkNvbXBvbmVudCxcclxuICBQYXlQYWxDb21wb25lbnQsXHJcbiAgU3RyaXBlRGlhbG9nXHJcbl07XHJcbiJdfQ==
@@ -1,154 +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
- 29 May 2024
12
-
13
- Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
14
- </file>
15
- */
16
- //Node
17
- import { Component } from "@angular/core";
18
- //App
19
- import { ComponentBase } from "../../../ui/components/base/components/component";
20
- import { DiscountCodeStatus } from "../../../core/enums/billing";
21
- import * as i0 from "@angular/core";
22
- import * as i1 from "../../services/payments.service";
23
- import * as i2 from "../../../data/services/billing/discountcodes-api.service";
24
- import * as i3 from "../../../core/notifications/services/notification-service";
25
- import * as i4 from "@angular/common";
26
- import * as i5 from "@angular/forms";
27
- const _c0 = a0 => ({ "show": a0 });
28
- function OrderSummaryComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
29
- const _r2 = i0.ɵɵgetCurrentView();
30
- i0.ɵɵelementStart(0, "div", 12)(1, "div", 13)(2, "input", 14);
31
- i0.ɵɵlistener("ngModelChange", function OrderSummaryComponent_Conditional_17_Template_input_ngModelChange_2_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.promoCode = $event); });
32
- i0.ɵɵelementEnd();
33
- i0.ɵɵelementStart(3, "button", 15);
34
- i0.ɵɵlistener("click", function OrderSummaryComponent_Conditional_17_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r2); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onApplyPromoCode()); });
35
- i0.ɵɵtext(4, "Apply");
36
- i0.ɵɵelementEnd()()();
37
- } if (rf & 2) {
38
- const ctx_r0 = i0.ɵɵnextContext();
39
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c0, ctx_r0.showPromoCode));
40
- i0.ɵɵadvance(2);
41
- i0.ɵɵproperty("ngModel", ctx_r0.promoCode);
42
- } }
43
- const _c1 = ["*"];
44
- export class OrderSummaryComponent extends ComponentBase {
45
- constructor(ps, api, ns) {
46
- super();
47
- this.ps = ps;
48
- this.api = api;
49
- this.ns = ns;
50
- this.showPromoCode = false;
51
- }
52
- ngOnInit() {
53
- this.setDefaults();
54
- this.setValues();
55
- }
56
- setDefaults() {
57
- }
58
- setValues() {
59
- }
60
- //Tos
61
- toTotal() {
62
- return this.ps.getTotal();
63
- }
64
- //Events
65
- onTogglePromoCode() {
66
- this.showPromoCode = !this.showPromoCode;
67
- }
68
- onApplyPromoCode() {
69
- if (!this.promoCode) {
70
- this.ns.info("Please enter a promo code");
71
- return;
72
- }
73
- this.api.getDiscountCode(this.promoCode).subscribe({
74
- next: (data) => {
75
- if (!data) {
76
- this.ns.error("Invalid Promo Code");
77
- return;
78
- }
79
- switch (data.status) {
80
- case DiscountCodeStatus.Exist:
81
- this.ps.applyDiscountCode(this.promoCode, data.code);
82
- this.discount = this.ps.getDiscountCodeAsString();
83
- this.ns.success("Discount applied successfully");
84
- break;
85
- case DiscountCodeStatus.NotFound:
86
- this.ns.error("Invalid Promo Code");
87
- break;
88
- case DiscountCodeStatus.AlreadyUsed:
89
- this.ns.error("Promo Code already applied");
90
- break;
91
- default:
92
- this.ns.error("Invalid Promo Code");
93
- break;
94
- }
95
- },
96
- error: (e) => {
97
- this.ns.error();
98
- },
99
- });
100
- }
101
- static { this.ɵfac = function OrderSummaryComponent_Factory(t) { return new (t || OrderSummaryComponent)(i0.ɵɵdirectiveInject(i1.PaymentsService), i0.ɵɵdirectiveInject(i2.DiscountCodesApiService), i0.ɵɵdirectiveInject(i3.NotificationService)); }; }
102
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OrderSummaryComponent, selectors: [["anatoly-billing-order-summary"]], features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c1, decls: 30, vars: 7, consts: [[1, "card"], [1, "card-header"], [1, "card-title"], [1, "card-body"], [1, "order-summary"], [1, "subtotal"], [1, "divider"], [1, "add-promo-code", 3, "ngClass", "click"], [1, "has-arrow"], ["class", "add-promo-code", 3, "ngClass"], [1, "discounts"], [1, "total"], [1, "add-promo-code", 3, "ngClass"], [1, "promo-code"], ["type", "text", "placeholder", "Promo code", 1, "input-text", 3, "ngModel", "ngModelChange"], [1, "btn", 3, "click"]], template: function OrderSummaryComponent_Template(rf, ctx) { if (rf & 1) {
103
- i0.ɵɵprojectionDef();
104
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "h2");
105
- i0.ɵɵtext(4, "Order Summary");
106
- i0.ɵɵelementEnd()()();
107
- i0.ɵɵelementStart(5, "div", 3)(6, "div", 4);
108
- i0.ɵɵprojection(7);
109
- i0.ɵɵelementStart(8, "div", 5)(9, "span");
110
- i0.ɵɵtext(10, "Subtotal:");
111
- i0.ɵɵelementEnd();
112
- i0.ɵɵelementStart(11, "strong");
113
- i0.ɵɵtext(12);
114
- i0.ɵɵelementEnd()();
115
- i0.ɵɵelement(13, "div", 6);
116
- i0.ɵɵelementStart(14, "div", 7);
117
- i0.ɵɵlistener("click", function OrderSummaryComponent_Template_div_click_14_listener() { return ctx.onTogglePromoCode(); });
118
- i0.ɵɵelementStart(15, "span", 8);
119
- i0.ɵɵtext(16, "Add a Promo Code:");
120
- i0.ɵɵelementEnd()();
121
- i0.ɵɵtemplate(17, OrderSummaryComponent_Conditional_17_Template, 5, 4, "div", 9);
122
- i0.ɵɵelement(18, "div", 6);
123
- i0.ɵɵelementStart(19, "div", 10)(20, "span");
124
- i0.ɵɵtext(21, "Discounts & Savings:");
125
- i0.ɵɵelementEnd();
126
- i0.ɵɵelementStart(22, "strong");
127
- i0.ɵɵtext(23);
128
- i0.ɵɵelementEnd()();
129
- i0.ɵɵelement(24, "div", 6);
130
- i0.ɵɵelementStart(25, "div", 11)(26, "span");
131
- i0.ɵɵtext(27, "Total:");
132
- i0.ɵɵelementEnd();
133
- i0.ɵɵelementStart(28, "strong");
134
- i0.ɵɵtext(29);
135
- i0.ɵɵelementEnd()()()()();
136
- } if (rf & 2) {
137
- i0.ɵɵadvance(12);
138
- i0.ɵɵtextInterpolate1("$", ctx.ps.subtotal, "");
139
- i0.ɵɵadvance(2);
140
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0, ctx.showPromoCode));
141
- i0.ɵɵadvance(3);
142
- i0.ɵɵconditional(17, ctx.showPromoCode ? 17 : -1);
143
- i0.ɵɵadvance(6);
144
- i0.ɵɵtextInterpolate(ctx.discount);
145
- i0.ɵɵadvance(6);
146
- i0.ɵɵtextInterpolate1("$", ctx.toTotal(), "");
147
- } }, dependencies: [i4.NgClass, i5.DefaultValueAccessor, i5.NgControlStatus, i5.NgModel], encapsulation: 2 }); }
148
- }
149
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OrderSummaryComponent, [{
150
- type: Component,
151
- args: [{ selector: "anatoly-billing-order-summary", template: "<div class='card'>\r\n <div class='card-header'>\r\n <div class='card-title'>\r\n <h2>Order Summary</h2>\r\n </div>\r\n </div>\r\n <div class='card-body'>\r\n <div class='order-summary'>\r\n <ng-content></ng-content>\r\n\r\n <div class='subtotal'>\r\n <span>Subtotal:</span><strong>${{ ps.subtotal }}</strong>\r\n </div>\r\n <div class='divider'></div>\r\n <div class=\"add-promo-code\" [ngClass]=\"{ 'show': showPromoCode }\" (click)=\"onTogglePromoCode()\">\r\n <span class='has-arrow'>Add a Promo Code:</span>\r\n </div>\r\n\r\n @if (showPromoCode) {\r\n <div class=\"add-promo-code\" [ngClass]=\"{ 'show': showPromoCode }\">\r\n <div class=\"promo-code\">\r\n <input type=\"text\" [(ngModel)]=\"promoCode\" class=\"input-text\" placeholder=\"Promo code\">\r\n <button class=\"btn\" (click)=\"onApplyPromoCode()\">Apply</button>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class='divider'></div>\r\n <div class='discounts'>\r\n <span>Discounts & Savings:</span>\r\n <strong>{{ discount }}</strong>\r\n </div>\r\n <div class='divider'></div>\r\n <div class='total'>\r\n <span>Total:</span>\r\n <strong>${{ toTotal() }}</strong>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
152
- }], () => [{ type: i1.PaymentsService }, { type: i2.DiscountCodesApiService }, { type: i3.NotificationService }], null); })();
153
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(OrderSummaryComponent, { className: "OrderSummaryComponent", filePath: "lib\\billing\\components\\order-summary\\order-summary.component.ts", lineNumber: 31 }); })();
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItc3VtbWFyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL29yZGVyLXN1bW1hcnkvb3JkZXItc3VtbWFyeS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL29yZGVyLXN1bW1hcnkvb3JkZXItc3VtbWFyeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLEtBQUs7QUFDTCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFJakYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7Ozs7SUNMekQsK0JBQWtFLGNBQUEsZ0JBQUE7SUFFM0MsNk9BQXVCO0lBQTFDLGlCQUF1RjtJQUN2RixrQ0FBaUQ7SUFBN0IsMktBQVMsZUFBQSx5QkFBa0IsQ0FBQSxJQUFDO0lBQUMscUJBQUs7SUFBQSxpQkFBUyxFQUFBLEVBQUE7OztJQUh2QywwRUFBcUM7SUFFMUMsZUFBdUI7SUFBdkIsMENBQXVCOzs7QURTdEQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGFBQWE7SUFLdEQsWUFDUyxFQUFtQixFQUNsQixHQUE0QixFQUM1QixFQUF1QjtRQUMvQixLQUFLLEVBQUUsQ0FBQztRQUhELE9BQUUsR0FBRixFQUFFLENBQWlCO1FBQ2xCLFFBQUcsR0FBSCxHQUFHLENBQXlCO1FBQzVCLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBUGpDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO0lBU3RCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU8sV0FBVztJQUNuQixDQUFDO0lBRU8sU0FBUztJQUNqQixDQUFDO0lBRUQsS0FBSztJQUNMLE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFFBQVE7SUFDUixpQkFBaUI7UUFDZixJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1lBQzFDLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNqRCxJQUFJLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNWLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7b0JBQ3BDLE9BQU87Z0JBQ1QsQ0FBQztnQkFFRCxRQUFRLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDcEIsS0FBSyxrQkFBa0IsQ0FBQyxLQUFLO3dCQUMzQixJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUNyRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsdUJBQXVCLEVBQUUsQ0FBQzt3QkFFbEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsK0JBQStCLENBQUMsQ0FBQzt3QkFDakQsTUFBTTtvQkFFUixLQUFLLGtCQUFrQixDQUFDLFFBQVE7d0JBQzlCLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7d0JBQ3BDLE1BQU07b0JBRVIsS0FBSyxrQkFBa0IsQ0FBQyxXQUFXO3dCQUNqQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO3dCQUM1QyxNQUFNO29CQUVSO3dCQUNFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7d0JBQ3BDLE1BQU07Z0JBQ1YsQ0FBQztZQUNILENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDWCxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO3NGQXZFVSxxQkFBcUI7b0VBQXJCLHFCQUFxQjs7WUM5QmxDLDhCQUFrQixhQUFBLGFBQUEsU0FBQTtZQUdSLDZCQUFhO1lBQUEsaUJBQUssRUFBQSxFQUFBO1lBRzFCLDhCQUF1QixhQUFBO1lBRW5CLGtCQUF5QjtZQUV6Qiw4QkFBc0IsV0FBQTtZQUNkLDBCQUFTO1lBQUEsaUJBQU87WUFBQSwrQkFBUTtZQUFBLGFBQWtCO1lBQUEsaUJBQVMsRUFBQTtZQUUzRCwwQkFBMkI7WUFDM0IsK0JBQWdHO1lBQTlCLGdHQUFTLHVCQUFtQixJQUFDO1lBQzdGLGdDQUF3QjtZQUFBLGtDQUFpQjtZQUFBLGlCQUFPLEVBQUE7WUFHbEQsZ0ZBT0M7WUFFRCwwQkFBMkI7WUFDM0IsZ0NBQXVCLFlBQUE7WUFDZixxQ0FBb0I7WUFBQSxpQkFBTztZQUNqQywrQkFBUTtZQUFBLGFBQWM7WUFBQSxpQkFBUyxFQUFBO1lBRWpDLDBCQUEyQjtZQUMzQixnQ0FBbUIsWUFBQTtZQUNYLHVCQUFNO1lBQUEsaUJBQU87WUFDbkIsK0JBQVE7WUFBQSxhQUFnQjtZQUFBLGlCQUFTLEVBQUEsRUFBQSxFQUFBLEVBQUE7O1lBeEJILGdCQUFrQjtZQUFsQiwrQ0FBa0I7WUFHdEIsZUFBcUM7WUFBckMsdUVBQXFDO1lBSWpFLGVBT0M7WUFQRCxpREFPQztZQUtTLGVBQWM7WUFBZCxrQ0FBYztZQUtkLGVBQWdCO1lBQWhCLDZDQUFnQjs7O2lGRExuQixxQkFBcUI7Y0FKakMsU0FBUzsyQkFDRSwrQkFBK0I7O2tGQUc5QixxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5Lm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjkgTWF5IDIwMjRcclxuXHJcbiAgIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBDb21wb25lbnRCYXNlIH0gZnJvbSBcIi4uLy4uLy4uL3VpL2NvbXBvbmVudHMvYmFzZS9jb21wb25lbnRzL2NvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBQYXltZW50c1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvcGF5bWVudHMuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEaXNjb3VudENvZGVzQXBpU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9kYXRhL3NlcnZpY2VzL2JpbGxpbmcvZGlzY291bnRjb2Rlcy1hcGkuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvbm90aWZpY2F0aW9ucy9zZXJ2aWNlcy9ub3RpZmljYXRpb24tc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEaXNjb3VudENvZGVTdGF0dXMgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9lbnVtcy9iaWxsaW5nXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhbmF0b2x5LWJpbGxpbmctb3JkZXItc3VtbWFyeVwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vb3JkZXItc3VtbWFyeS5jb21wb25lbnQuaHRtbFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3JkZXJTdW1tYXJ5Q29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50QmFzZSB7XHJcbiAgc2hvd1Byb21vQ29kZSA9IGZhbHNlO1xyXG4gIHByb21vQ29kZTtcclxuICBkaXNjb3VudDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcHM6IFBheW1lbnRzU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBpOiBEaXNjb3VudENvZGVzQXBpU2VydmljZSxcclxuICAgIHByaXZhdGUgbnM6IE5vdGlmaWNhdGlvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0RGVmYXVsdHMoKTtcclxuICAgIHRoaXMuc2V0VmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldERlZmF1bHRzKCkge1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRWYWx1ZXMoKSB7XHJcbiAgfVxyXG5cclxuICAvL1Rvc1xyXG4gIHRvVG90YWwoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLnBzLmdldFRvdGFsKCk7XHJcbiAgfVxyXG5cclxuICAvL0V2ZW50c1xyXG4gIG9uVG9nZ2xlUHJvbW9Db2RlKCkge1xyXG4gICAgdGhpcy5zaG93UHJvbW9Db2RlID0gIXRoaXMuc2hvd1Byb21vQ29kZTtcclxuICB9XHJcblxyXG4gIG9uQXBwbHlQcm9tb0NvZGUoKSB7XHJcbiAgICBpZiAoIXRoaXMucHJvbW9Db2RlKSB7XHJcbiAgICAgIHRoaXMubnMuaW5mbyhcIlBsZWFzZSBlbnRlciBhIHByb21vIGNvZGVcIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmFwaS5nZXREaXNjb3VudENvZGUodGhpcy5wcm9tb0NvZGUpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoIWRhdGEpIHtcclxuICAgICAgICAgIHRoaXMubnMuZXJyb3IoXCJJbnZhbGlkIFByb21vIENvZGVcIik7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzd2l0Y2ggKGRhdGEuc3RhdHVzKSB7XHJcbiAgICAgICAgICBjYXNlIERpc2NvdW50Q29kZVN0YXR1cy5FeGlzdDpcclxuICAgICAgICAgICAgdGhpcy5wcy5hcHBseURpc2NvdW50Q29kZSh0aGlzLnByb21vQ29kZSwgZGF0YS5jb2RlKTtcclxuICAgICAgICAgICAgdGhpcy5kaXNjb3VudCA9IHRoaXMucHMuZ2V0RGlzY291bnRDb2RlQXNTdHJpbmcoKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMubnMuc3VjY2VzcyhcIkRpc2NvdW50IGFwcGxpZWQgc3VjY2Vzc2Z1bGx5XCIpO1xyXG4gICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICBjYXNlIERpc2NvdW50Q29kZVN0YXR1cy5Ob3RGb3VuZDpcclxuICAgICAgICAgICAgdGhpcy5ucy5lcnJvcihcIkludmFsaWQgUHJvbW8gQ29kZVwiKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgY2FzZSBEaXNjb3VudENvZGVTdGF0dXMuQWxyZWFkeVVzZWQ6XHJcbiAgICAgICAgICAgIHRoaXMubnMuZXJyb3IoXCJQcm9tbyBDb2RlIGFscmVhZHkgYXBwbGllZFwiKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgdGhpcy5ucy5lcnJvcihcIkludmFsaWQgUHJvbW8gQ29kZVwiKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGUpID0+IHtcclxuICAgICAgICB0aGlzLm5zLmVycm9yKCk7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz0nY2FyZCc+XHJcbiAgPGRpdiBjbGFzcz0nY2FyZC1oZWFkZXInPlxyXG4gICAgPGRpdiBjbGFzcz0nY2FyZC10aXRsZSc+XHJcbiAgICAgIDxoMj5PcmRlciBTdW1tYXJ5PC9oMj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9J2NhcmQtYm9keSc+XHJcbiAgICA8ZGl2IGNsYXNzPSdvcmRlci1zdW1tYXJ5Jz5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz0nc3VidG90YWwnPlxyXG4gICAgICAgIDxzcGFuPlN1YnRvdGFsOjwvc3Bhbj48c3Ryb25nPiR7eyBwcy5zdWJ0b3RhbCB9fTwvc3Ryb25nPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz0nZGl2aWRlcic+PC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJhZGQtcHJvbW8tY29kZVwiIFtuZ0NsYXNzXT1cInsgJ3Nob3cnOiBzaG93UHJvbW9Db2RlIH1cIiAoY2xpY2spPVwib25Ub2dnbGVQcm9tb0NvZGUoKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPSdoYXMtYXJyb3cnPkFkZCBhIFByb21vIENvZGU6PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIEBpZiAoc2hvd1Byb21vQ29kZSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZGQtcHJvbW8tY29kZVwiIFtuZ0NsYXNzXT1cInsgJ3Nob3cnOiBzaG93UHJvbW9Db2RlIH1cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9tby1jb2RlXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwicHJvbW9Db2RlXCIgY2xhc3M9XCJpbnB1dC10ZXh0XCIgcGxhY2Vob2xkZXI9XCJQcm9tbyBjb2RlXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG5cIiAoY2xpY2spPVwib25BcHBseVByb21vQ29kZSgpXCI+QXBwbHk8L2J1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPSdkaXZpZGVyJz48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz0nZGlzY291bnRzJz5cclxuICAgICAgICA8c3Bhbj5EaXNjb3VudHMgJiBTYXZpbmdzOjwvc3Bhbj5cclxuICAgICAgICA8c3Ryb25nPnt7IGRpc2NvdW50IH19PC9zdHJvbmc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPSdkaXZpZGVyJz48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz0ndG90YWwnPlxyXG4gICAgICAgIDxzcGFuPlRvdGFsOjwvc3Bhbj5cclxuICAgICAgICA8c3Ryb25nPiR7eyB0b1RvdGFsKCkgfX08L3N0cm9uZz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,106 +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
- 29 May 2024
12
-
13
- Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
14
- </file>
15
- */
16
- //Node
17
- import { Component } from "@angular/core";
18
- //App
19
- import { ComponentBase } from "../../../ui/components/base/components/component";
20
- import { PaymentMethod } from "../../../core/enums/billing";
21
- import * as i0 from "@angular/core";
22
- import * as i1 from "../../services/payments.service";
23
- import * as i2 from "../../../ui/directives/replacer/image-replacer.directive";
24
- function PaymentMethodsComponent_For_9_Template(rf, ctx) { if (rf & 1) {
25
- const _r7 = i0.ɵɵgetCurrentView();
26
- i0.ɵɵelementStart(0, "li", 5);
27
- i0.ɵɵlistener("click", function PaymentMethodsComponent_For_9_Template_li_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r7); const item_r1 = restoredCtx.$implicit; const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.onPaymentSelect(item_r1)); });
28
- i0.ɵɵelementStart(1, "div", 6);
29
- i0.ɵɵtext(2);
30
- i0.ɵɵelementEnd();
31
- i0.ɵɵelementStart(3, "div", 7);
32
- i0.ɵɵelement(4, "img", 8);
33
- i0.ɵɵelementEnd()();
34
- } if (rf & 2) {
35
- const item_r1 = ctx.$implicit;
36
- i0.ɵɵclassProp("selected", item_r1.selected);
37
- i0.ɵɵadvance(2);
38
- i0.ɵɵtextInterpolate1("Pay with ", item_r1.title, "");
39
- i0.ɵɵadvance(2);
40
- i0.ɵɵpropertyInterpolate1("src", "./dist/@lib/images/payment-icons/", item_r1.icon, ".png", i0.ɵɵsanitizeUrl)("alt", "payment-icon ", item_r1.title, "");
41
- } }
42
- export class PaymentMethodsComponent extends ComponentBase {
43
- constructor(ps) {
44
- super();
45
- this.ps = ps;
46
- this.paymentMethods = [
47
- { id: PaymentMethod.CreditCard, title: "", icon: "cards", selected: true },
48
- { id: PaymentMethod.PayPal, title: "", icon: "paypal", selected: false },
49
- { id: PaymentMethod.Stripe, title: "", icon: "stripe", selected: false },
50
- { id: PaymentMethod.Venmo, title: "", icon: "venmo", selected: false },
51
- {
52
- id: PaymentMethod.ApplePay,
53
- title: "",
54
- icon: "applepay",
55
- selected: false,
56
- },
57
- {
58
- id: PaymentMethod.GooglePay,
59
- title: "",
60
- icon: "googlepay",
61
- selected: false,
62
- },
63
- {
64
- id: PaymentMethod.Wallet,
65
- title: "",
66
- icon: "wallet",
67
- selected: false,
68
- },
69
- ];
70
- }
71
- ngOnInit() {
72
- this.setDefaults();
73
- this.setValues();
74
- }
75
- setDefaults() {
76
- let selectedPM = this.paymentMethods.filter((value) => value.selected == true)[0];
77
- this.ps.selectedPaymentMethod = selectedPM.id;
78
- }
79
- setValues() { }
80
- //Events
81
- onPaymentSelect(paymentMethod) {
82
- //1. Unselect items
83
- this.paymentMethods.forEach((payment) => (payment.selected = false));
84
- //2. Set selected PaymentMethod
85
- paymentMethod.selected = true;
86
- this.ps.selectedPaymentMethod = paymentMethod.id;
87
- }
88
- static { this.ɵfac = function PaymentMethodsComponent_Factory(t) { return new (t || PaymentMethodsComponent)(i0.ɵɵdirectiveInject(i1.PaymentsService)); }; }
89
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PaymentMethodsComponent, selectors: [["anatoly-billing-payment-methods"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 10, vars: 0, consts: [[1, "card", "p-0", "mb-3"], [1, "card-header"], [1, "card-title"], [1, "card-body"], [1, "payment__select-method"], [3, "click"], [1, "payment-name"], [1, "icon-img"], [3, "src", "alt"], [3, "selected"]], template: function PaymentMethodsComponent_Template(rf, ctx) { if (rf & 1) {
90
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "h2");
91
- i0.ɵɵtext(4, "Select a payment method");
92
- i0.ɵɵelementEnd()()();
93
- i0.ɵɵelementStart(5, "div", 3)(6, "div", 4)(7, "ul");
94
- i0.ɵɵrepeaterCreate(8, PaymentMethodsComponent_For_9_Template, 5, 5, "li", 9, i0.ɵɵrepeaterTrackByIdentity);
95
- i0.ɵɵelementEnd()()()();
96
- } if (rf & 2) {
97
- i0.ɵɵadvance(8);
98
- i0.ɵɵrepeater(ctx.paymentMethods);
99
- } }, dependencies: [i2.ImageReplacerDirective], encapsulation: 2 }); }
100
- }
101
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaymentMethodsComponent, [{
102
- type: Component,
103
- args: [{ selector: "anatoly-billing-payment-methods", template: "<div class='card p-0 mb-3'>\r\n <div class='card-header'>\r\n <div class='card-title'>\r\n <h2>Select a payment method</h2>\r\n </div>\r\n </div>\r\n <div class='card-body'>\r\n <div class='payment__select-method'>\r\n <ul>\r\n @for (item of paymentMethods; track item) {\r\n <li (click)='onPaymentSelect(item)' [class.selected]='item.selected'>\r\n <div class='payment-name'>Pay with {{ item.title }}</div>\r\n <div class='icon-img'>\r\n <img src='./dist/@lib/images/payment-icons/{{item.icon}}.png' alt='payment-icon {{item.title}}'>\r\n </div>\r\n </li>\r\n }\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
104
- }], () => [{ type: i1.PaymentsService }], null); })();
105
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PaymentMethodsComponent, { className: "PaymentMethodsComponent", filePath: "lib\\billing\\components\\payment-methods\\payment-methods.component.ts", lineNumber: 29 }); })();
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1tZXRob2RzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvcGF5bWVudC1tZXRob2RzL3BheW1lbnQtbWV0aG9kcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL3BheW1lbnQtbWV0aG9kcy9wYXltZW50LW1ldGhvZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxLQUFLO0FBQ0wsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRWpGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7O0lDWmxELDZCQUFxRTtJQUFqRSwyTkFBUyxlQUFBLCtCQUFxQixDQUFBLElBQUM7SUFDakMsOEJBQTBCO0lBQUEsWUFBeUI7SUFBQSxpQkFBTTtJQUN6RCw4QkFBc0I7SUFDcEIseUJBQWdHO0lBQ2xHLGlCQUFNLEVBQUE7OztJQUo0Qiw0Q0FBZ0M7SUFDeEMsZUFBeUI7SUFBekIscURBQXlCO0lBRTVDLGVBQXdEO0lBQXhELDZHQUF3RCwyQ0FBQTs7QURlM0UsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUEwQnhELFlBQW1CLEVBQW1CO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRFMsT0FBRSxHQUFGLEVBQUUsQ0FBaUI7UUF6QnRDLG1CQUFjLEdBQUc7WUFDZixFQUFFLEVBQUUsRUFBRSxhQUFhLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO1lBQzFFLEVBQUUsRUFBRSxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUU7WUFDeEUsRUFBRSxFQUFFLEVBQUUsYUFBYSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtZQUN4RSxFQUFFLEVBQUUsRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO1lBQ3RFO2dCQUNFLEVBQUUsRUFBRSxhQUFhLENBQUMsUUFBUTtnQkFDMUIsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFFBQVEsRUFBRSxLQUFLO2FBQ2hCO1lBQ0Q7Z0JBQ0UsRUFBRSxFQUFFLGFBQWEsQ0FBQyxTQUFTO2dCQUMzQixLQUFLLEVBQUUsRUFBRTtnQkFDVCxJQUFJLEVBQUUsV0FBVztnQkFDakIsUUFBUSxFQUFFLEtBQUs7YUFDaEI7WUFDRDtnQkFDRSxFQUFFLEVBQUUsYUFBYSxDQUFDLE1BQU07Z0JBQ3hCLEtBQUssRUFBRSxFQUFFO2dCQUNULElBQUksRUFBRSxRQUFRO2dCQUNkLFFBQVEsRUFBRSxLQUFLO2FBQ2hCO1NBQ0YsQ0FBQztJQUlGLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FDekMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksSUFBSSxDQUNsQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsSUFBSSxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsR0FBRyxVQUFVLENBQUMsRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFTyxTQUFTLEtBQUksQ0FBQztJQUV0QixRQUFRO0lBQ1IsZUFBZSxDQUFDLGFBQWE7UUFDM0IsbUJBQW1CO1FBQ25CLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVyRSwrQkFBK0I7UUFDL0IsYUFBYSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDOUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsR0FBRyxhQUFhLENBQUMsRUFBRSxDQUFDO0lBQ25ELENBQUM7d0ZBcERVLHVCQUF1QjtvRUFBdkIsdUJBQXVCO1lDNUJwQyw4QkFBMkIsYUFBQSxhQUFBLFNBQUE7WUFHakIsdUNBQXVCO1lBQUEsaUJBQUssRUFBQSxFQUFBO1lBR3BDLDhCQUF1QixhQUFBLFNBQUE7WUFHakIsMkdBT0M7WUFDSCxpQkFBSyxFQUFBLEVBQUEsRUFBQTs7WUFSSCxlQU9DO1lBUEQsaUNBT0M7OztpRkRZSSx1QkFBdUI7Y0FKbkMsU0FBUzsyQkFDRSxpQ0FBaUM7O2tGQUdoQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5Lm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjkgTWF5IDIwMjRcclxuXHJcbiAgIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBDb21wb25lbnRCYXNlIH0gZnJvbSBcIi4uLy4uLy4uL3VpL2NvbXBvbmVudHMvYmFzZS9jb21wb25lbnRzL2NvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBQYXltZW50c1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvcGF5bWVudHMuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvZW51bXMvYmlsbGluZ1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiYW5hdG9seS1iaWxsaW5nLXBheW1lbnQtbWV0aG9kc1wiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vcGF5bWVudC1tZXRob2RzLmNvbXBvbmVudC5odG1sXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYXltZW50TWV0aG9kc0NvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudEJhc2Uge1xyXG4gIHBheW1lbnRNZXRob2RzID0gW1xyXG4gICAgeyBpZDogUGF5bWVudE1ldGhvZC5DcmVkaXRDYXJkLCB0aXRsZTogXCJcIiwgaWNvbjogXCJjYXJkc1wiLCBzZWxlY3RlZDogdHJ1ZSB9LFxyXG4gICAgeyBpZDogUGF5bWVudE1ldGhvZC5QYXlQYWwsIHRpdGxlOiBcIlwiLCBpY29uOiBcInBheXBhbFwiLCBzZWxlY3RlZDogZmFsc2UgfSxcclxuICAgIHsgaWQ6IFBheW1lbnRNZXRob2QuU3RyaXBlLCB0aXRsZTogXCJcIiwgaWNvbjogXCJzdHJpcGVcIiwgc2VsZWN0ZWQ6IGZhbHNlIH0sXHJcbiAgICB7IGlkOiBQYXltZW50TWV0aG9kLlZlbm1vLCB0aXRsZTogXCJcIiwgaWNvbjogXCJ2ZW5tb1wiLCBzZWxlY3RlZDogZmFsc2UgfSxcclxuICAgIHtcclxuICAgICAgaWQ6IFBheW1lbnRNZXRob2QuQXBwbGVQYXksXHJcbiAgICAgIHRpdGxlOiBcIlwiLFxyXG4gICAgICBpY29uOiBcImFwcGxlcGF5XCIsXHJcbiAgICAgIHNlbGVjdGVkOiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGlkOiBQYXltZW50TWV0aG9kLkdvb2dsZVBheSxcclxuICAgICAgdGl0bGU6IFwiXCIsXHJcbiAgICAgIGljb246IFwiZ29vZ2xlcGF5XCIsXHJcbiAgICAgIHNlbGVjdGVkOiBmYWxzZSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGlkOiBQYXltZW50TWV0aG9kLldhbGxldCxcclxuICAgICAgdGl0bGU6IFwiXCIsXHJcbiAgICAgIGljb246IFwid2FsbGV0XCIsXHJcbiAgICAgIHNlbGVjdGVkOiBmYWxzZSxcclxuICAgIH0sXHJcbiAgXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHBzOiBQYXltZW50c1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0RGVmYXVsdHMoKTtcclxuICAgIHRoaXMuc2V0VmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldERlZmF1bHRzKCkge1xyXG4gICAgbGV0IHNlbGVjdGVkUE0gPSB0aGlzLnBheW1lbnRNZXRob2RzLmZpbHRlcihcclxuICAgICAgKHZhbHVlKSA9PiB2YWx1ZS5zZWxlY3RlZCA9PSB0cnVlLFxyXG4gICAgKVswXTtcclxuICAgIHRoaXMucHMuc2VsZWN0ZWRQYXltZW50TWV0aG9kID0gc2VsZWN0ZWRQTS5pZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VmFsdWVzKCkge31cclxuXHJcbiAgLy9FdmVudHNcclxuICBvblBheW1lbnRTZWxlY3QocGF5bWVudE1ldGhvZCkge1xyXG4gICAgLy8xLiBVbnNlbGVjdCBpdGVtc1xyXG4gICAgdGhpcy5wYXltZW50TWV0aG9kcy5mb3JFYWNoKChwYXltZW50KSA9PiAocGF5bWVudC5zZWxlY3RlZCA9IGZhbHNlKSk7XHJcblxyXG4gICAgLy8yLiBTZXQgc2VsZWN0ZWQgUGF5bWVudE1ldGhvZFxyXG4gICAgcGF5bWVudE1ldGhvZC5zZWxlY3RlZCA9IHRydWU7XHJcbiAgICB0aGlzLnBzLnNlbGVjdGVkUGF5bWVudE1ldGhvZCA9IHBheW1lbnRNZXRob2QuaWQ7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9J2NhcmQgcC0wIG1iLTMnPlxyXG4gIDxkaXYgY2xhc3M9J2NhcmQtaGVhZGVyJz5cclxuICAgIDxkaXYgY2xhc3M9J2NhcmQtdGl0bGUnPlxyXG4gICAgICA8aDI+U2VsZWN0IGEgcGF5bWVudCBtZXRob2Q8L2gyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz0nY2FyZC1ib2R5Jz5cclxuICAgIDxkaXYgY2xhc3M9J3BheW1lbnRfX3NlbGVjdC1tZXRob2QnPlxyXG4gICAgICA8dWw+XHJcbiAgICAgICAgQGZvciAoaXRlbSBvZiBwYXltZW50TWV0aG9kczsgdHJhY2sgaXRlbSkge1xyXG4gICAgICAgICAgPGxpIChjbGljayk9J29uUGF5bWVudFNlbGVjdChpdGVtKScgW2NsYXNzLnNlbGVjdGVkXT0naXRlbS5zZWxlY3RlZCc+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9J3BheW1lbnQtbmFtZSc+UGF5IHdpdGgge3sgaXRlbS50aXRsZSB9fTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPSdpY29uLWltZyc+XHJcbiAgICAgICAgICAgICAgPGltZyBzcmM9Jy4vZGlzdC9AbGliL2ltYWdlcy9wYXltZW50LWljb25zL3t7aXRlbS5pY29ufX0ucG5nJyBhbHQ9J3BheW1lbnQtaWNvbiB7e2l0ZW0udGl0bGV9fSc+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICB9XHJcbiAgICAgIDwvdWw+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,97 +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
- 29 May 2024
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
- //App
19
- import { ComponentBase } from "../../../ui/components/base/components/component";
20
- import { PaymentType } from "../../../core/enums/billing";
21
- import * as i0 from "@angular/core";
22
- import * as i1 from "../../services/payments.service";
23
- import * as i2 from "@angular/common";
24
- const _c0 = a0 => ({ "active": a0 });
25
- export class PaymentOptionsComponent extends ComponentBase {
26
- constructor(ps) {
27
- super();
28
- this.ps = ps;
29
- this.change = new EventEmitter();
30
- }
31
- ngOnInit() {
32
- this.setDefaults();
33
- this.setValues();
34
- }
35
- setDefaults() {
36
- this.ps.selectedPaymentType = PaymentType.FullPayment;
37
- }
38
- setValues() { }
39
- //Events
40
- onPaymentTypeSelect(pt) {
41
- this.ps.selectedPaymentType = pt;
42
- this.change.emit();
43
- }
44
- static { this.ɵfac = function PaymentOptionsComponent_Factory(t) { return new (t || PaymentOptionsComponent)(i0.ɵɵdirectiveInject(i1.PaymentsService)); }; }
45
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PaymentOptionsComponent, selectors: [["anatoly-billing-payment-options"]], inputs: { priceWeekly: "priceWeekly", priceUpfront: "priceUpfront", numberOfWeeks: "numberOfWeeks" }, outputs: { change: "change" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 19, vars: 9, consts: [[1, "payment-options"], [1, "pay-weekly", 3, "ngClass", "click"], [1, "info"], [1, "price"], [1, "pay-upfront", 3, "ngClass", "click"]], template: function PaymentOptionsComponent_Template(rf, ctx) { if (rf & 1) {
46
- i0.ɵɵelementStart(0, "div", 0)(1, "h4");
47
- i0.ɵɵtext(2, "Payment options");
48
- i0.ɵɵelementEnd();
49
- i0.ɵɵelementStart(3, "div", 1);
50
- i0.ɵɵlistener("click", function PaymentOptionsComponent_Template_div_click_3_listener() { return ctx.onPaymentTypeSelect(2); });
51
- i0.ɵɵelementStart(4, "div", 2)(5, "h4");
52
- i0.ɵɵtext(6, "Pay weekly");
53
- i0.ɵɵelementEnd();
54
- i0.ɵɵelementStart(7, "p");
55
- i0.ɵɵtext(8, "Cancel anytime");
56
- i0.ɵɵelementEnd()();
57
- i0.ɵɵelementStart(9, "div", 3);
58
- i0.ɵɵtext(10);
59
- i0.ɵɵelementEnd()();
60
- i0.ɵɵelementStart(11, "div", 4);
61
- i0.ɵɵlistener("click", function PaymentOptionsComponent_Template_div_click_11_listener() { return ctx.onPaymentTypeSelect(1); });
62
- i0.ɵɵelementStart(12, "div", 2)(13, "h4");
63
- i0.ɵɵtext(14, "Pay upfront");
64
- i0.ɵɵelementEnd();
65
- i0.ɵɵelementStart(15, "p");
66
- i0.ɵɵtext(16);
67
- i0.ɵɵelementEnd()();
68
- i0.ɵɵelementStart(17, "div", 3);
69
- i0.ɵɵtext(18);
70
- i0.ɵɵelementEnd()()();
71
- } if (rf & 2) {
72
- i0.ɵɵadvance(3);
73
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0, ctx.ps.selectedPaymentType == 2));
74
- i0.ɵɵadvance(7);
75
- i0.ɵɵtextInterpolate1("$", ctx.priceWeekly, "");
76
- i0.ɵɵadvance();
77
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c0, ctx.ps.selectedPaymentType == 1));
78
- i0.ɵɵadvance(5);
79
- i0.ɵɵtextInterpolate1("Covers the full ", ctx.numberOfWeeks, " weeks ");
80
- i0.ɵɵadvance(2);
81
- i0.ɵɵtextInterpolate1("$", ctx.priceUpfront, "");
82
- } }, dependencies: [i2.NgClass], encapsulation: 2 }); }
83
- }
84
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaymentOptionsComponent, [{
85
- type: Component,
86
- args: [{ selector: "anatoly-billing-payment-options", template: "<div class='payment-options'>\r\n <h4>Payment options</h4>\r\n <div (click)='onPaymentTypeSelect(2)' [ngClass]='{\"active\": ps.selectedPaymentType == 2 }' class='pay-weekly'>\r\n <div class='info'>\r\n <h4>Pay weekly</h4>\r\n <p>Cancel anytime</p>\r\n </div>\r\n <div class='price'>${{ priceWeekly }}</div>\r\n </div>\r\n\r\n <div (click)='onPaymentTypeSelect(1)' [ngClass]='{\"active\": ps.selectedPaymentType == 1 }' class='pay-upfront'>\r\n <div class='info'>\r\n <h4>Pay upfront</h4>\r\n <p>Covers the full {{ numberOfWeeks }} weeks </p>\r\n </div>\r\n <div class='price'>${{ priceUpfront }}</div>\r\n </div>\r\n</div>\r\n" }]
87
- }], () => [{ type: i1.PaymentsService }], { priceWeekly: [{
88
- type: Input
89
- }], priceUpfront: [{
90
- type: Input
91
- }], numberOfWeeks: [{
92
- type: Input
93
- }], change: [{
94
- type: Output
95
- }] }); })();
96
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PaymentOptionsComponent, { className: "PaymentOptionsComponent", filePath: "lib\\billing\\components\\payment-options\\payment-options.component.ts", lineNumber: 29 }); })();
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1vcHRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9iaWxsaW5nL2NvbXBvbmVudHMvcGF5bWVudC1vcHRpb25zL3BheW1lbnQtb3B0aW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvYmlsbGluZy9jb21wb25lbnRzL3BheW1lbnQtb3B0aW9ucy9wYXltZW50LW9wdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxLQUFLO0FBQ0wsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRWpGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFNMUQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGFBQWE7SUFPeEQsWUFBbUIsRUFBbUI7UUFDcEMsS0FBSyxFQUFFLENBQUM7UUFEUyxPQUFFLEdBQUYsRUFBRSxDQUFpQjtRQUY1QixXQUFNLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFJekQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLEdBQUcsV0FBVyxDQUFDLFdBQVcsQ0FBQztJQUN4RCxDQUFDO0lBRU8sU0FBUyxLQUFJLENBQUM7SUFFdEIsUUFBUTtJQUNSLG1CQUFtQixDQUFDLEVBQUU7UUFDcEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO3dGQTFCVSx1QkFBdUI7b0VBQXZCLHVCQUF1QjtZQzVCcEMsOEJBQTZCLFNBQUE7WUFDdkIsK0JBQWU7WUFBQSxpQkFBSztZQUN4Qiw4QkFBOEc7WUFBekcsaUdBQVMsd0JBQW9CLENBQUMsQ0FBQyxJQUFDO1lBQ25DLDhCQUFrQixTQUFBO1lBQ1osMEJBQVU7WUFBQSxpQkFBSztZQUNuQix5QkFBRztZQUFBLDhCQUFjO1lBQUEsaUJBQUksRUFBQTtZQUV2Qiw4QkFBbUI7WUFBQSxhQUFrQjtZQUFBLGlCQUFNLEVBQUE7WUFHN0MsK0JBQStHO1lBQTFHLGtHQUFTLHdCQUFvQixDQUFDLENBQUMsSUFBQztZQUNuQywrQkFBa0IsVUFBQTtZQUNaLDRCQUFXO1lBQUEsaUJBQUs7WUFDcEIsMEJBQUc7WUFBQSxhQUEwQztZQUFBLGlCQUFJLEVBQUE7WUFFbkQsK0JBQW1CO1lBQUEsYUFBbUI7WUFBQSxpQkFBTSxFQUFBLEVBQUE7O1lBYlIsZUFBb0Q7WUFBcEQscUZBQW9EO1lBS3JFLGVBQWtCO1lBQWxCLCtDQUFrQjtZQUdELGNBQW9EO1lBQXBELHFGQUFvRDtZQUduRixlQUEwQztZQUExQyx1RUFBMEM7WUFFNUIsZUFBbUI7WUFBbkIsZ0RBQW1COzs7aUZEYTdCLHVCQUF1QjtjQUpuQyxTQUFTOzJCQUNFLGlDQUFpQztnREFJbEMsV0FBVztrQkFBbkIsS0FBSztZQUNHLFlBQVk7a0JBQXBCLEtBQUs7WUFDRyxhQUFhO2tCQUFyQixLQUFLO1lBRUksTUFBTTtrQkFBZixNQUFNOztrRkFMSSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5Lm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjkgTWF5IDIwMjRcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQ29tcG9uZW50QmFzZSB9IGZyb20gXCIuLi8uLi8uLi91aS9jb21wb25lbnRzL2Jhc2UvY29tcG9uZW50cy9jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUGF5bWVudHNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3BheW1lbnRzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUGF5bWVudFR5cGUgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9lbnVtcy9iaWxsaW5nXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhbmF0b2x5LWJpbGxpbmctcGF5bWVudC1vcHRpb25zXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9wYXltZW50LW9wdGlvbnMuY29tcG9uZW50Lmh0bWxcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIFBheW1lbnRPcHRpb25zQ29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50QmFzZSB7XHJcbiAgQElucHV0KCkgcHJpY2VXZWVrbHk7XHJcbiAgQElucHV0KCkgcHJpY2VVcGZyb250O1xyXG4gIEBJbnB1dCgpIG51bWJlck9mV2Vla3M7XHJcblxyXG4gIEBPdXRwdXQoKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcHM6IFBheW1lbnRzU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXREZWZhdWx0cygpO1xyXG4gICAgdGhpcy5zZXRWYWx1ZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGVmYXVsdHMoKSB7XHJcbiAgICB0aGlzLnBzLnNlbGVjdGVkUGF5bWVudFR5cGUgPSBQYXltZW50VHlwZS5GdWxsUGF5bWVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VmFsdWVzKCkge31cclxuXHJcbiAgLy9FdmVudHNcclxuICBvblBheW1lbnRUeXBlU2VsZWN0KHB0KSB7XHJcbiAgICB0aGlzLnBzLnNlbGVjdGVkUGF5bWVudFR5cGUgPSBwdDtcclxuICAgIHRoaXMuY2hhbmdlLmVtaXQoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz0ncGF5bWVudC1vcHRpb25zJz5cclxuICA8aDQ+UGF5bWVudCBvcHRpb25zPC9oND5cclxuICA8ZGl2IChjbGljayk9J29uUGF5bWVudFR5cGVTZWxlY3QoMiknIFtuZ0NsYXNzXT0ne1wiYWN0aXZlXCI6IHBzLnNlbGVjdGVkUGF5bWVudFR5cGUgPT0gMiB9JyBjbGFzcz0ncGF5LXdlZWtseSc+XHJcbiAgICA8ZGl2IGNsYXNzPSdpbmZvJz5cclxuICAgICAgPGg0PlBheSB3ZWVrbHk8L2g0PlxyXG4gICAgICA8cD5DYW5jZWwgYW55dGltZTwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz0ncHJpY2UnPiR7eyBwcmljZVdlZWtseSB9fTwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IChjbGljayk9J29uUGF5bWVudFR5cGVTZWxlY3QoMSknIFtuZ0NsYXNzXT0ne1wiYWN0aXZlXCI6IHBzLnNlbGVjdGVkUGF5bWVudFR5cGUgPT0gMSB9JyBjbGFzcz0ncGF5LXVwZnJvbnQnPlxyXG4gICAgPGRpdiBjbGFzcz0naW5mbyc+XHJcbiAgICAgIDxoND5QYXkgdXBmcm9udDwvaDQ+XHJcbiAgICAgIDxwPkNvdmVycyB0aGUgZnVsbCB7eyBudW1iZXJPZldlZWtzIH19IHdlZWtzIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz0ncHJpY2UnPiR7eyBwcmljZVVwZnJvbnQgfX08L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==