@osovitny/anatoly 3.20.38 → 3.20.39

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.
@@ -3751,6 +3751,49 @@ class ScriptService {
3751
3751
  type: Injectable
3752
3752
  }], () => [{ type: i0.NgZone }], null); })();
3753
3753
 
3754
+ /*
3755
+ <file>
3756
+ Project:
3757
+ @osovitny/anatoly
3758
+
3759
+ Authors:
3760
+ Anatoly Osovitny anatoly.osovitny@osovitny.com
3761
+
3762
+ Created:
3763
+ 16 Dec 2025
3764
+
3765
+ Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
3766
+ </file>
3767
+ */
3768
+ //Node
3769
+ class Message2User {
3770
+ constructor(type, block, timeout) {
3771
+ this.type = type;
3772
+ this.block = block;
3773
+ this.timeout = timeout;
3774
+ }
3775
+ }
3776
+ class Message2UserService extends BehaviorSubject {
3777
+ constructor() {
3778
+ super(null);
3779
+ }
3780
+ init(configs) {
3781
+ this.configs = configs;
3782
+ }
3783
+ getConfig(type) {
3784
+ return this.configs?.find(config => config.type == type);
3785
+ }
3786
+ notify(type, block = true, timeout = null) {
3787
+ const message = new Message2User(type, block, timeout);
3788
+ this.next(message);
3789
+ }
3790
+ static { this.ɵfac = function Message2UserService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || Message2UserService)(); }; }
3791
+ static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: Message2UserService, factory: Message2UserService.ɵfac }); }
3792
+ }
3793
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(Message2UserService, [{
3794
+ type: Injectable
3795
+ }], () => [], null); })();
3796
+
3754
3797
  /*
3755
3798
  <file>
3756
3799
  Project:
@@ -4276,7 +4319,7 @@ class AReplacerDirective extends ReplacerDirectiveBase {
4276
4319
  </file>
4277
4320
  */
4278
4321
  //Node
4279
- const _c0$h = ["*"];
4322
+ const _c0$i = ["*"];
4280
4323
  function SignUpButtonComponent_a_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
4281
4324
  i0.ɵɵelementContainer(0);
4282
4325
  } }
@@ -4340,7 +4383,7 @@ class SignUpButtonComponent extends ComponentBase {
4340
4383
  }
4341
4384
  }
4342
4385
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵSignUpButtonComponent_BaseFactory; return function SignUpButtonComponent_Factory(__ngFactoryType__) { return (ɵSignUpButtonComponent_BaseFactory || (ɵSignUpButtonComponent_BaseFactory = i0.ɵɵgetInheritedFactory(SignUpButtonComponent)))(__ngFactoryType__ || SignUpButtonComponent); }; })(); }
4343
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignUpButtonComponent, selectors: [["anatoly-signup-button"]], inputs: { qs: "qs" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$h, decls: 4, vars: 2, consts: [["contentTemplate", ""], ["ref", ""], [3, "href", "class", 4, "ngIf"], [3, "routerLink", "class", 4, "ngIf"], [3, "href"], [4, "ngTemplateOutlet"], [3, "routerLink"], [4, "ngIf"]], template: function SignUpButtonComponent_Template(rf, ctx) { if (rf & 1) {
4386
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignUpButtonComponent, selectors: [["anatoly-signup-button"]], inputs: { qs: "qs" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$i, decls: 4, vars: 2, consts: [["contentTemplate", ""], ["ref", ""], [3, "href", "class", 4, "ngIf"], [3, "routerLink", "class", 4, "ngIf"], [3, "href"], [4, "ngTemplateOutlet"], [3, "routerLink"], [4, "ngIf"]], template: function SignUpButtonComponent_Template(rf, ctx) { if (rf & 1) {
4344
4387
  i0.ɵɵprojectionDef();
4345
4388
  i0.ɵɵtemplate(0, SignUpButtonComponent_a_0_Template, 2, 4, "a", 2)(1, SignUpButtonComponent_a_1_Template, 2, 4, "a", 3)(2, SignUpButtonComponent_ng_template_2_Template, 4, 1, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
4346
4389
  } if (rf & 2) {
@@ -4742,8 +4785,8 @@ class PromoCodesApiService extends ApiServiceBase {
4742
4785
  </file>
4743
4786
  */
4744
4787
  //Node
4745
- const _c0$g = ["*"];
4746
- const _c1$2 = a0 => ({ "show": a0 });
4788
+ const _c0$h = ["*"];
4789
+ const _c1$3 = a0 => ({ "show": a0 });
4747
4790
  function OrderSummaryComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
4748
4791
  const _r1 = i0.ɵɵgetCurrentView();
4749
4792
  i0.ɵɵelementStart(0, "div", 9)(1, "div", 12)(2, "input", 13);
@@ -4755,7 +4798,7 @@ function OrderSummaryComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
4755
4798
  i0.ɵɵelementEnd()()();
4756
4799
  } if (rf & 2) {
4757
4800
  const ctx_r1 = i0.ɵɵnextContext();
4758
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c1$2, ctx_r1.showPromoCode));
4801
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c1$3, ctx_r1.showPromoCode));
4759
4802
  i0.ɵɵadvance(2);
4760
4803
  i0.ɵɵtwoWayProperty("ngModel", ctx_r1.promoCode);
4761
4804
  } }
@@ -4817,7 +4860,7 @@ class OrderSummaryComponent extends ComponentBase {
4817
4860
  });
4818
4861
  }
4819
4862
  static { this.ɵfac = function OrderSummaryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || OrderSummaryComponent)(i0.ɵɵdirectiveInject(PaymentsService), i0.ɵɵdirectiveInject(PromoCodesApiService), i0.ɵɵdirectiveInject(NotificationService)); }; }
4820
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OrderSummaryComponent, selectors: [["anatoly-billing-order-summary"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$g, 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, "click", "ngClass"], [1, "has-arrow"], [1, "add-promo-code", 3, "ngClass"], [1, "discounts"], [1, "total"], [1, "promo-code"], ["type", "text", "placeholder", "Promo code", 1, "input-text", 3, "ngModelChange", "ngModel"], [1, "btn", 3, "click"]], template: function OrderSummaryComponent_Template(rf, ctx) { if (rf & 1) {
4863
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OrderSummaryComponent, selectors: [["anatoly-billing-order-summary"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$h, 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, "click", "ngClass"], [1, "has-arrow"], [1, "add-promo-code", 3, "ngClass"], [1, "discounts"], [1, "total"], [1, "promo-code"], ["type", "text", "placeholder", "Promo code", 1, "input-text", 3, "ngModelChange", "ngModel"], [1, "btn", 3, "click"]], template: function OrderSummaryComponent_Template(rf, ctx) { if (rf & 1) {
4821
4864
  i0.ɵɵprojectionDef();
4822
4865
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "h2");
4823
4866
  i0.ɵɵtext(4, "Order Summary");
@@ -4855,7 +4898,7 @@ class OrderSummaryComponent extends ComponentBase {
4855
4898
  i0.ɵɵadvance(12);
4856
4899
  i0.ɵɵtextInterpolate1("$", ctx.ps.subtotal);
4857
4900
  i0.ɵɵadvance(2);
4858
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c1$2, ctx.showPromoCode));
4901
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c1$3, ctx.showPromoCode));
4859
4902
  i0.ɵɵadvance(3);
4860
4903
  i0.ɵɵconditional(ctx.showPromoCode ? 17 : -1);
4861
4904
  i0.ɵɵadvance(6);
@@ -5026,7 +5069,7 @@ class PaymentMethodsComponent extends ComponentBase {
5026
5069
  </file>
5027
5070
  */
5028
5071
  //Node
5029
- const _c0$f = a0 => ({ "active": a0 });
5072
+ const _c0$g = a0 => ({ "active": a0 });
5030
5073
  class PaymentOptionsComponent extends ComponentBase {
5031
5074
  constructor(ps) {
5032
5075
  super();
@@ -5075,11 +5118,11 @@ class PaymentOptionsComponent extends ComponentBase {
5075
5118
  i0.ɵɵelementEnd()()();
5076
5119
  } if (rf & 2) {
5077
5120
  i0.ɵɵadvance(3);
5078
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0$f, ctx.ps.selectedPaymentType == 2));
5121
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c0$g, ctx.ps.selectedPaymentType == 2));
5079
5122
  i0.ɵɵadvance(7);
5080
5123
  i0.ɵɵtextInterpolate1("$", ctx.priceWeekly);
5081
5124
  i0.ɵɵadvance();
5082
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c0$f, ctx.ps.selectedPaymentType == 1));
5125
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c0$g, ctx.ps.selectedPaymentType == 1));
5083
5126
  i0.ɵɵadvance(5);
5084
5127
  i0.ɵɵtextInterpolate1("Covers the full ", ctx.numberOfWeeks, " weeks ");
5085
5128
  i0.ɵɵadvance(2);
@@ -5803,7 +5846,7 @@ class PayPalScriptService {
5803
5846
  Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
5804
5847
  </file>
5805
5848
  */
5806
- const _c0$e = ["payPalButtonContainer"];
5849
+ const _c0$f = ["payPalButtonContainer"];
5807
5850
  class PayPalComponent {
5808
5851
  set payPalButtonContainer(content) {
5809
5852
  this.payPalButtonContainerElem = content;
@@ -6071,7 +6114,7 @@ class PayPalComponent {
6071
6114
  }
6072
6115
  static { this.ɵfac = function PayPalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PayPalComponent)(i0.ɵɵdirectiveInject(PayPalScriptService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.NgZone)); }; }
6073
6116
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PayPalComponent, selectors: [["anatoly-billing-paypal-container"]], viewQuery: function PayPalComponent_Query(rf, ctx) { if (rf & 1) {
6074
- i0.ɵɵviewQuery(_c0$e, 5);
6117
+ i0.ɵɵviewQuery(_c0$f, 5);
6075
6118
  } if (rf & 2) {
6076
6119
  let _t;
6077
6120
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.payPalButtonContainer = _t.first);
@@ -7254,12 +7297,12 @@ class ListBase extends ComponentBase {
7254
7297
  </file>
7255
7298
  */
7256
7299
  //Node
7257
- const _c0$d = [[["card-header"]], [["card-body"]], "*", [["card-footer"]]];
7258
- const _c1$1 = ["card-header", "card-body", "*", "card-footer"];
7300
+ const _c0$e = [[["card-header"]], [["card-body"]], "*", [["card-footer"]]];
7301
+ const _c1$2 = ["card-header", "card-body", "*", "card-footer"];
7259
7302
  class CardComponent extends ComponentBase {
7260
7303
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵCardComponent_BaseFactory; return function CardComponent_Factory(__ngFactoryType__) { return (ɵCardComponent_BaseFactory || (ɵCardComponent_BaseFactory = i0.ɵɵgetInheritedFactory(CardComponent)))(__ngFactoryType__ || CardComponent); }; })(); }
7261
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardComponent, selectors: [["anatoly-card"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$1, decls: 5, vars: 3, template: function CardComponent_Template(rf, ctx) { if (rf & 1) {
7262
- i0.ɵɵprojectionDef(_c0$d);
7304
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardComponent, selectors: [["anatoly-card"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$2, decls: 5, vars: 3, template: function CardComponent_Template(rf, ctx) { if (rf & 1) {
7305
+ i0.ɵɵprojectionDef(_c0$e);
7263
7306
  i0.ɵɵelementStart(0, "div");
7264
7307
  i0.ɵɵprojection(1);
7265
7308
  i0.ɵɵprojection(2, 1);
@@ -7291,7 +7334,7 @@ class CardComponent extends ComponentBase {
7291
7334
  </file>
7292
7335
  */
7293
7336
  //Node
7294
- const _c0$c = ["*"];
7337
+ const _c0$d = ["*"];
7295
7338
  function CardHeaderComponent_h3_2_Template(rf, ctx) { if (rf & 1) {
7296
7339
  i0.ɵɵelementStart(0, "h3");
7297
7340
  i0.ɵɵtext(1);
@@ -7303,7 +7346,7 @@ function CardHeaderComponent_h3_2_Template(rf, ctx) { if (rf & 1) {
7303
7346
  } }
7304
7347
  class CardHeaderComponent extends ComponentBase {
7305
7348
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵCardHeaderComponent_BaseFactory; return function CardHeaderComponent_Factory(__ngFactoryType__) { return (ɵCardHeaderComponent_BaseFactory || (ɵCardHeaderComponent_BaseFactory = i0.ɵɵgetInheritedFactory(CardHeaderComponent)))(__ngFactoryType__ || CardHeaderComponent); }; })(); }
7306
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardHeaderComponent, selectors: [["anatoly-card-header"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$c, decls: 4, vars: 4, consts: [[1, "card-title"], [4, "ngIf"]], template: function CardHeaderComponent_Template(rf, ctx) { if (rf & 1) {
7349
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardHeaderComponent, selectors: [["anatoly-card-header"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$d, decls: 4, vars: 4, consts: [[1, "card-title"], [4, "ngIf"]], template: function CardHeaderComponent_Template(rf, ctx) { if (rf & 1) {
7307
7350
  i0.ɵɵprojectionDef();
7308
7351
  i0.ɵɵelementStart(0, "div")(1, "div", 0);
7309
7352
  i0.ɵɵtemplate(2, CardHeaderComponent_h3_2_Template, 2, 1, "h3", 1);
@@ -7337,10 +7380,10 @@ class CardHeaderComponent extends ComponentBase {
7337
7380
  </file>
7338
7381
  */
7339
7382
  //Node
7340
- const _c0$b = ["*"];
7383
+ const _c0$c = ["*"];
7341
7384
  class CardBodyComponent extends ComponentBase {
7342
7385
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵCardBodyComponent_BaseFactory; return function CardBodyComponent_Factory(__ngFactoryType__) { return (ɵCardBodyComponent_BaseFactory || (ɵCardBodyComponent_BaseFactory = i0.ɵɵgetInheritedFactory(CardBodyComponent)))(__ngFactoryType__ || CardBodyComponent); }; })(); }
7343
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardBodyComponent, selectors: [["anatoly-card-body"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$b, decls: 2, vars: 3, template: function CardBodyComponent_Template(rf, ctx) { if (rf & 1) {
7386
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardBodyComponent, selectors: [["anatoly-card-body"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$c, decls: 2, vars: 3, template: function CardBodyComponent_Template(rf, ctx) { if (rf & 1) {
7344
7387
  i0.ɵɵprojectionDef();
7345
7388
  i0.ɵɵelementStart(0, "div");
7346
7389
  i0.ɵɵprojection(1);
@@ -7370,10 +7413,10 @@ class CardBodyComponent extends ComponentBase {
7370
7413
  </file>
7371
7414
  */
7372
7415
  //Node
7373
- const _c0$a = ["*"];
7416
+ const _c0$b = ["*"];
7374
7417
  class CardFooterComponent extends ComponentBase {
7375
7418
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵCardFooterComponent_BaseFactory; return function CardFooterComponent_Factory(__ngFactoryType__) { return (ɵCardFooterComponent_BaseFactory || (ɵCardFooterComponent_BaseFactory = i0.ɵɵgetInheritedFactory(CardFooterComponent)))(__ngFactoryType__ || CardFooterComponent); }; })(); }
7376
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardFooterComponent, selectors: [["anatoly-card-footer"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$a, decls: 2, vars: 3, template: function CardFooterComponent_Template(rf, ctx) { if (rf & 1) {
7419
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CardFooterComponent, selectors: [["anatoly-card-footer"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$b, decls: 2, vars: 3, template: function CardFooterComponent_Template(rf, ctx) { if (rf & 1) {
7377
7420
  i0.ɵɵprojectionDef();
7378
7421
  i0.ɵɵelementStart(0, "div");
7379
7422
  i0.ɵɵprojection(1);
@@ -8293,14 +8336,14 @@ class HtmlEditorComponent extends HtmlEditorComponentBase {
8293
8336
  </file>
8294
8337
  */
8295
8338
  //Node
8296
- const _c0$9 = ["*"];
8339
+ const _c0$a = ["*"];
8297
8340
  class CheckIconComponent {
8298
8341
  constructor() {
8299
8342
  //Inputs
8300
8343
  this.checked = true;
8301
8344
  }
8302
8345
  static { this.ɵfac = function CheckIconComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CheckIconComponent)(); }; }
8303
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CheckIconComponent, selectors: [["anatoly-check-icon"]], inputs: { checked: "checked" }, standalone: false, ngContentSelectors: _c0$9, decls: 2, vars: 2, consts: [[3, "icon", "ngClass"]], template: function CheckIconComponent_Template(rf, ctx) { if (rf & 1) {
8346
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CheckIconComponent, selectors: [["anatoly-check-icon"]], inputs: { checked: "checked" }, standalone: false, ngContentSelectors: _c0$a, decls: 2, vars: 2, consts: [[3, "icon", "ngClass"]], template: function CheckIconComponent_Template(rf, ctx) { if (rf & 1) {
8304
8347
  i0.ɵɵprojectionDef();
8305
8348
  i0.ɵɵelement(0, "fa-icon", 0);
8306
8349
  i0.ɵɵprojection(1);
@@ -8331,8 +8374,8 @@ class CheckIconComponent {
8331
8374
  </file>
8332
8375
  */
8333
8376
  //Node
8334
- const _c0$8 = ["*"];
8335
- const _c1 = a0 => ({ "active": a0 });
8377
+ const _c0$9 = ["*"];
8378
+ const _c1$1 = a0 => ({ "active": a0 });
8336
8379
  function ControlPanelComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
8337
8380
  const _r1 = i0.ɵɵgetCurrentView();
8338
8381
  i0.ɵɵelementStart(0, "div", 2)(1, "a", 7);
@@ -8344,7 +8387,7 @@ function ControlPanelComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
8344
8387
  } if (rf & 2) {
8345
8388
  const ctx_r1 = i0.ɵɵnextContext();
8346
8389
  i0.ɵɵadvance();
8347
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(1, _c1, ctx_r1.filterVisible));
8390
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(1, _c1$1, ctx_r1.filterVisible));
8348
8391
  } }
8349
8392
  function ControlPanelComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
8350
8393
  const _r3 = i0.ɵɵgetCurrentView();
@@ -8386,11 +8429,11 @@ function ControlPanelComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
8386
8429
  } if (rf & 2) {
8387
8430
  const ctx_r1 = i0.ɵɵnextContext();
8388
8431
  i0.ɵɵadvance();
8389
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c1, ctx_r1.viewType == "grid"));
8432
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c1$1, ctx_r1.viewType == "grid"));
8390
8433
  i0.ɵɵadvance(6);
8391
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c1, ctx_r1.viewType == "list"));
8434
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(5, _c1$1, ctx_r1.viewType == "list"));
8392
8435
  i0.ɵɵadvance(3);
8393
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c1, ctx_r1.viewType == "table"));
8436
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(7, _c1$1, ctx_r1.viewType == "table"));
8394
8437
  } }
8395
8438
  function ControlPanelComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
8396
8439
  const _r5 = i0.ɵɵgetCurrentView();
@@ -8466,7 +8509,7 @@ class ControlPanelComponent extends ComponentBase {
8466
8509
  this.fireAdd();
8467
8510
  }
8468
8511
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵControlPanelComponent_BaseFactory; return function ControlPanelComponent_Factory(__ngFactoryType__) { return (ɵControlPanelComponent_BaseFactory || (ɵControlPanelComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ControlPanelComponent)))(__ngFactoryType__ || ControlPanelComponent); }; })(); }
8469
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ControlPanelComponent, selectors: [["anatoly-data-grid-control-panel"]], inputs: { sortByItems: "sortByItems", viewType: "viewType", filterButtonVisible: "filterButtonVisible", sortByVisible: "sortByVisible", viewTypesVisible: "viewTypesVisible", addButtonVisible: "addButtonVisible" }, outputs: { settingsChange: "settingsChange", add: "add" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$8, decls: 9, vars: 4, consts: [[1, "os-control-panel"], [1, "control-wrapper"], [1, "filter"], [1, "tools"], [1, "sort-by"], [1, "actions"], [1, "action-add"], ["href", "javascript:void(0)", 1, "btn", "btn-icon", "btn-primary", 3, "click", "ngClass"], ["height", "22", "viewBox", "0 0 32 32", "width", "20", "xmlns", "http://www.w3.org/2000/svg"], ["d", "M2 7h.142a3.981 3.981 0 0 0 7.716 0H30a1 1 0 0 0 0-2H9.858a3.981 3.981 0 0 0-7.716 0H2a1 1 0 0 0 0 2zm4-3a2 2 0 1 1-2 2 2 2 0 0 1 2-2zm24 11h-.142a3.981 3.981 0 0 0-7.716 0H2a1 1 0 0 0 0 2h20.142a3.981 3.981 0 0 0 7.716 0H30a1 1 0 0 0 0-2zm-4 3a2 2 0 1 1 2-2 2 2 0 0 1-2 2zm4 7H19.858a3.981 3.981 0 0 0-7.716 0H2a1 1 0 0 0 0 2h10.142a3.981 3.981 0 0 0 7.716 0H30a1 1 0 0 0 0-2zm-14 3a2 2 0 1 1 2-2 2 2 0 0 1-2 2z", "fill", "currentColor"], ["valueField", "value", "textField", "text", 3, "ngModelChange", "valueChange", "data", "valuePrimitive", "ngModel"], ["fill", "none", "height", "18", "viewBox", "0 0 18 18", "width", "18", "xmlns", "http://www.w3.org/2000/svg"], ["d", "M6 1H2C1.44772 1 1 1.44772 1 2V6C1 6.55228 1.44772 7 2 7H6C6.55228 7 7 6.55228 7 6V2C7 1.44772 6.55228 1 6 1Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["d", "M16 1H12C11.4477 1 11 1.44772 11 2V6C11 6.55228 11.4477 7 12 7H16C16.5523 7 17 6.55228 17 6V2C17 1.44772 16.5523 1 16 1Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["d", "M6 11H2C1.44772 11 1 11.4477 1 12V16C1 16.5523 1.44772 17 2 17H6C6.55228 17 7 16.5523 7 16V12C7 11.4477 6.55228 11 6 11Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["d", "M16 11H12C11.4477 11 11 11.4477 11 12V16C11 16.5523 11.4477 17 12 17H16C16.5523 17 17 16.5523 17 16V12C17 11.4477 16.5523 11 16 11Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["fill", "none", "height", "15", "viewBox", "0 0 19 15", "width", "19", "xmlns", "http://www.w3.org/2000/svg"], ["d", "M1.5 6C0.67 6 0 6.67 0 7.5C0 8.33 0.67 9 1.5 9C2.33 9 3 8.33 3 7.5C3 6.67 2.33 6 1.5 6ZM1.5 0C0.67 0 0 0.67 0 1.5C0 2.33 0.67 3 1.5 3C2.33 3 3 2.33 3 1.5C3 0.67 2.33 0 1.5 0ZM1.5 12C0.67 12 0 12.68 0 13.5C0 14.32 0.68 15 1.5 15C2.32 15 3 14.32 3 13.5C3 12.68 2.33 12 1.5 12ZM5.5 14.5H17.5C18.05 14.5 18.5 14.05 18.5 13.5C18.5 12.95 18.05 12.5 17.5 12.5H5.5C4.95 12.5 4.5 12.95 4.5 13.5C4.5 14.05 4.95 14.5 5.5 14.5ZM5.5 8.5H17.5C18.05 8.5 18.5 8.05 18.5 7.5C18.5 6.95 18.05 6.5 17.5 6.5H5.5C4.95 6.5 4.5 6.95 4.5 7.5C4.5 8.05 4.95 8.5 5.5 8.5ZM4.5 1.5C4.5 2.05 4.95 2.5 5.5 2.5H17.5C18.05 2.5 18.5 2.05 18.5 1.5C18.5 0.95 18.05 0.5 17.5 0.5H5.5C4.95 0.5 4.5 0.95 4.5 1.5Z", "fill", "currentColor"], ["xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 512 512", "height", "20", "width", "20", "fill", "none"], ["d", "M64 256l0-96 160 0 0 96L64 256zm0 64l160 0 0 96L64 416l0-96zm224 96l0-96 160 0 0 96-160 0zM448 256l-160 0 0-96 160 0 0 96zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32z", "fill", "currentColor"], ["href", "javascript:void(0)", 1, "btn", "btn-icon", "btn-primary", 3, "click"], ["icon", "plus"]], template: function ControlPanelComponent_Template(rf, ctx) { if (rf & 1) {
8512
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ControlPanelComponent, selectors: [["anatoly-data-grid-control-panel"]], inputs: { sortByItems: "sortByItems", viewType: "viewType", filterButtonVisible: "filterButtonVisible", sortByVisible: "sortByVisible", viewTypesVisible: "viewTypesVisible", addButtonVisible: "addButtonVisible" }, outputs: { settingsChange: "settingsChange", add: "add" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$9, decls: 9, vars: 4, consts: [[1, "os-control-panel"], [1, "control-wrapper"], [1, "filter"], [1, "tools"], [1, "sort-by"], [1, "actions"], [1, "action-add"], ["href", "javascript:void(0)", 1, "btn", "btn-icon", "btn-primary", 3, "click", "ngClass"], ["height", "22", "viewBox", "0 0 32 32", "width", "20", "xmlns", "http://www.w3.org/2000/svg"], ["d", "M2 7h.142a3.981 3.981 0 0 0 7.716 0H30a1 1 0 0 0 0-2H9.858a3.981 3.981 0 0 0-7.716 0H2a1 1 0 0 0 0 2zm4-3a2 2 0 1 1-2 2 2 2 0 0 1 2-2zm24 11h-.142a3.981 3.981 0 0 0-7.716 0H2a1 1 0 0 0 0 2h20.142a3.981 3.981 0 0 0 7.716 0H30a1 1 0 0 0 0-2zm-4 3a2 2 0 1 1 2-2 2 2 0 0 1-2 2zm4 7H19.858a3.981 3.981 0 0 0-7.716 0H2a1 1 0 0 0 0 2h10.142a3.981 3.981 0 0 0 7.716 0H30a1 1 0 0 0 0-2zm-14 3a2 2 0 1 1 2-2 2 2 0 0 1-2 2z", "fill", "currentColor"], ["valueField", "value", "textField", "text", 3, "ngModelChange", "valueChange", "data", "valuePrimitive", "ngModel"], ["fill", "none", "height", "18", "viewBox", "0 0 18 18", "width", "18", "xmlns", "http://www.w3.org/2000/svg"], ["d", "M6 1H2C1.44772 1 1 1.44772 1 2V6C1 6.55228 1.44772 7 2 7H6C6.55228 7 7 6.55228 7 6V2C7 1.44772 6.55228 1 6 1Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["d", "M16 1H12C11.4477 1 11 1.44772 11 2V6C11 6.55228 11.4477 7 12 7H16C16.5523 7 17 6.55228 17 6V2C17 1.44772 16.5523 1 16 1Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["d", "M6 11H2C1.44772 11 1 11.4477 1 12V16C1 16.5523 1.44772 17 2 17H6C6.55228 17 7 16.5523 7 16V12C7 11.4477 6.55228 11 6 11Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["d", "M16 11H12C11.4477 11 11 11.4477 11 12V16C11 16.5523 11.4477 17 12 17H16C16.5523 17 17 16.5523 17 16V12C17 11.4477 16.5523 11 16 11Z", "stroke", "currentColor", "stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2"], ["fill", "none", "height", "15", "viewBox", "0 0 19 15", "width", "19", "xmlns", "http://www.w3.org/2000/svg"], ["d", "M1.5 6C0.67 6 0 6.67 0 7.5C0 8.33 0.67 9 1.5 9C2.33 9 3 8.33 3 7.5C3 6.67 2.33 6 1.5 6ZM1.5 0C0.67 0 0 0.67 0 1.5C0 2.33 0.67 3 1.5 3C2.33 3 3 2.33 3 1.5C3 0.67 2.33 0 1.5 0ZM1.5 12C0.67 12 0 12.68 0 13.5C0 14.32 0.68 15 1.5 15C2.32 15 3 14.32 3 13.5C3 12.68 2.33 12 1.5 12ZM5.5 14.5H17.5C18.05 14.5 18.5 14.05 18.5 13.5C18.5 12.95 18.05 12.5 17.5 12.5H5.5C4.95 12.5 4.5 12.95 4.5 13.5C4.5 14.05 4.95 14.5 5.5 14.5ZM5.5 8.5H17.5C18.05 8.5 18.5 8.05 18.5 7.5C18.5 6.95 18.05 6.5 17.5 6.5H5.5C4.95 6.5 4.5 6.95 4.5 7.5C4.5 8.05 4.95 8.5 5.5 8.5ZM4.5 1.5C4.5 2.05 4.95 2.5 5.5 2.5H17.5C18.05 2.5 18.5 2.05 18.5 1.5C18.5 0.95 18.05 0.5 17.5 0.5H5.5C4.95 0.5 4.5 0.95 4.5 1.5Z", "fill", "currentColor"], ["xmlns", "http://www.w3.org/2000/svg", "viewBox", "0 0 512 512", "height", "20", "width", "20", "fill", "none"], ["d", "M64 256l0-96 160 0 0 96L64 256zm0 64l160 0 0 96L64 416l0-96zm224 96l0-96 160 0 0 96-160 0zM448 256l-160 0 0-96 160 0 0 96zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32z", "fill", "currentColor"], ["href", "javascript:void(0)", 1, "btn", "btn-icon", "btn-primary", 3, "click"], ["icon", "plus"]], template: function ControlPanelComponent_Template(rf, ctx) { if (rf & 1) {
8470
8513
  i0.ɵɵprojectionDef();
8471
8514
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
8472
8515
  i0.ɵɵconditionalCreate(2, ControlPanelComponent_Conditional_2_Template, 4, 3, "div", 2);
@@ -8617,7 +8660,7 @@ class DataPagerComponent extends ComponentBase {
8617
8660
  </file>
8618
8661
  */
8619
8662
  //Node
8620
- const _c0$7 = ["*"];
8663
+ const _c0$8 = ["*"];
8621
8664
  function SignInButtonComponent_a_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
8622
8665
  i0.ɵɵelementContainer(0);
8623
8666
  } }
@@ -8681,7 +8724,7 @@ class SignInButtonComponent extends ComponentBase {
8681
8724
  }
8682
8725
  }
8683
8726
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵSignInButtonComponent_BaseFactory; return function SignInButtonComponent_Factory(__ngFactoryType__) { return (ɵSignInButtonComponent_BaseFactory || (ɵSignInButtonComponent_BaseFactory = i0.ɵɵgetInheritedFactory(SignInButtonComponent)))(__ngFactoryType__ || SignInButtonComponent); }; })(); }
8684
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignInButtonComponent, selectors: [["anatoly-signin-button"]], inputs: { qs: "qs" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$7, decls: 4, vars: 2, consts: [["contentTemplate", ""], ["ref", ""], [3, "href", "class", 4, "ngIf"], [3, "routerLink", "class", 4, "ngIf"], [3, "href"], [4, "ngTemplateOutlet"], [3, "routerLink"], [4, "ngIf"]], template: function SignInButtonComponent_Template(rf, ctx) { if (rf & 1) {
8727
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignInButtonComponent, selectors: [["anatoly-signin-button"]], inputs: { qs: "qs" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$8, decls: 4, vars: 2, consts: [["contentTemplate", ""], ["ref", ""], [3, "href", "class", 4, "ngIf"], [3, "routerLink", "class", 4, "ngIf"], [3, "href"], [4, "ngTemplateOutlet"], [3, "routerLink"], [4, "ngIf"]], template: function SignInButtonComponent_Template(rf, ctx) { if (rf & 1) {
8685
8728
  i0.ɵɵprojectionDef();
8686
8729
  i0.ɵɵtemplate(0, SignInButtonComponent_a_0_Template, 2, 4, "a", 2)(1, SignInButtonComponent_a_1_Template, 2, 4, "a", 3)(2, SignInButtonComponent_ng_template_2_Template, 4, 1, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
8687
8730
  } if (rf & 2) {
@@ -8714,7 +8757,7 @@ class SignInButtonComponent extends ComponentBase {
8714
8757
  </file>
8715
8758
  */
8716
8759
  //Node
8717
- const _c0$6 = ["*"];
8760
+ const _c0$7 = ["*"];
8718
8761
  function SignOutButtonComponent_a_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
8719
8762
  i0.ɵɵelementContainer(0);
8720
8763
  } }
@@ -8778,7 +8821,7 @@ class SignOutButtonComponent extends ComponentBase {
8778
8821
  }
8779
8822
  }
8780
8823
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵSignOutButtonComponent_BaseFactory; return function SignOutButtonComponent_Factory(__ngFactoryType__) { return (ɵSignOutButtonComponent_BaseFactory || (ɵSignOutButtonComponent_BaseFactory = i0.ɵɵgetInheritedFactory(SignOutButtonComponent)))(__ngFactoryType__ || SignOutButtonComponent); }; })(); }
8781
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignOutButtonComponent, selectors: [["anatoly-signout-button"]], inputs: { qs: "qs" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$6, decls: 4, vars: 2, consts: [["contentTemplate", ""], ["ref", ""], [3, "href", "class", 4, "ngIf"], [3, "routerLink", "class", 4, "ngIf"], [3, "href"], [4, "ngTemplateOutlet"], [3, "routerLink"], [4, "ngIf"]], template: function SignOutButtonComponent_Template(rf, ctx) { if (rf & 1) {
8824
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignOutButtonComponent, selectors: [["anatoly-signout-button"]], inputs: { qs: "qs" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$7, decls: 4, vars: 2, consts: [["contentTemplate", ""], ["ref", ""], [3, "href", "class", 4, "ngIf"], [3, "routerLink", "class", 4, "ngIf"], [3, "href"], [4, "ngTemplateOutlet"], [3, "routerLink"], [4, "ngIf"]], template: function SignOutButtonComponent_Template(rf, ctx) { if (rf & 1) {
8782
8825
  i0.ɵɵprojectionDef();
8783
8826
  i0.ɵɵtemplate(0, SignOutButtonComponent_a_0_Template, 2, 4, "a", 2)(1, SignOutButtonComponent_a_1_Template, 2, 4, "a", 3)(2, SignOutButtonComponent_ng_template_2_Template, 4, 1, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
8784
8827
  } if (rf & 2) {
@@ -8811,7 +8854,7 @@ class SignOutButtonComponent extends ComponentBase {
8811
8854
  </file>
8812
8855
  */
8813
8856
  //Node
8814
- const _c0$5 = ["*"];
8857
+ const _c0$6 = ["*"];
8815
8858
  function NodataComponent_Conditional_0_div_2_Template(rf, ctx) { if (rf & 1) {
8816
8859
  i0.ɵɵelementStart(0, "div");
8817
8860
  i0.ɵɵelement(1, "fa-icon", 4);
@@ -8842,7 +8885,7 @@ class NodataComponent {
8842
8885
  this.heading = 'No data found';
8843
8886
  }
8844
8887
  static { this.ɵfac = function NodataComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NodataComponent)(); }; }
8845
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NodataComponent, selectors: [["anatoly-nodata"]], inputs: { dataLoading: "dataLoading", dataLoaded: "dataLoaded", dataFound: "dataFound", icon: "icon", iconSize: "iconSize", heading: "heading" }, standalone: false, ngContentSelectors: _c0$5, decls: 1, vars: 1, consts: [[1, "no-data"], [1, "loaded", "text-info"], [4, "ngIf"], [1, "no-data-heading"], [3, "icon", "size"]], template: function NodataComponent_Template(rf, ctx) { if (rf & 1) {
8888
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NodataComponent, selectors: [["anatoly-nodata"]], inputs: { dataLoading: "dataLoading", dataLoaded: "dataLoaded", dataFound: "dataFound", icon: "icon", iconSize: "iconSize", heading: "heading" }, standalone: false, ngContentSelectors: _c0$6, decls: 1, vars: 1, consts: [[1, "no-data"], [1, "loaded", "text-info"], [4, "ngIf"], [1, "no-data-heading"], [3, "icon", "size"]], template: function NodataComponent_Template(rf, ctx) { if (rf & 1) {
8846
8889
  i0.ɵɵprojectionDef();
8847
8890
  i0.ɵɵconditionalCreate(0, NodataComponent_Conditional_0_Template, 6, 2, "div", 0);
8848
8891
  } if (rf & 2) {
@@ -8907,6 +8950,153 @@ class NoMobileSupportComponent extends ComponentBase {
8907
8950
  }] }); })();
8908
8951
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NoMobileSupportComponent, { className: "NoMobileSupportComponent", filePath: "lib/ui/components/no-mobile-support/no-mobile-support.component.ts", lineNumber: 27 }); })();
8909
8952
 
8953
+ /*
8954
+ <file>
8955
+ Project:
8956
+ @osovitny/anatoly
8957
+
8958
+ Authors:
8959
+ Anatoly Osovitny anatoly.osovitny@osovitny.com
8960
+
8961
+ Created:
8962
+ 16 Dec 2025
8963
+
8964
+ Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
8965
+ </file>
8966
+ */
8967
+ //Node
8968
+ const _c0$5 = ["*"];
8969
+ const _c1 = a0 => ({ show: a0 });
8970
+ function Message2UserComponent_Conditional_0_Conditional_5_Template(rf, ctx) { if (rf & 1) {
8971
+ const _r1 = i0.ɵɵgetCurrentView();
8972
+ i0.ɵɵelementStart(0, "a", 15);
8973
+ i0.ɵɵlistener("click", function Message2UserComponent_Conditional_0_Conditional_5_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onCloseAndBlock()); });
8974
+ i0.ɵɵelement(1, "fa-icon", 16);
8975
+ i0.ɵɵelementEnd();
8976
+ } }
8977
+ function Message2UserComponent_Conditional_0_Conditional_6_Template(rf, ctx) { if (rf & 1) {
8978
+ const _r3 = i0.ɵɵgetCurrentView();
8979
+ i0.ɵɵelementStart(0, "a", 15);
8980
+ i0.ɵɵlistener("click", function Message2UserComponent_Conditional_0_Conditional_6_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onClose()); });
8981
+ i0.ɵɵelement(1, "fa-icon", 16);
8982
+ i0.ɵɵelementEnd();
8983
+ } }
8984
+ function Message2UserComponent_Conditional_0_Conditional_10_Template(rf, ctx) { if (rf & 1) {
8985
+ i0.ɵɵelementStart(0, "div", 8);
8986
+ i0.ɵɵelement(1, "img", 17);
8987
+ i0.ɵɵelementEnd();
8988
+ } if (rf & 2) {
8989
+ const ctx_r1 = i0.ɵɵnextContext(2);
8990
+ i0.ɵɵadvance();
8991
+ i0.ɵɵproperty("src", ctx_r1.config.image, i0.ɵɵsanitizeUrl)("alt", ctx_r1.config.title || "Message");
8992
+ } }
8993
+ function Message2UserComponent_Conditional_0_Conditional_19_Template(rf, ctx) { if (rf & 1) {
8994
+ const _r4 = i0.ɵɵgetCurrentView();
8995
+ i0.ɵɵelementStart(0, "a", 18);
8996
+ i0.ɵɵlistener("click", function Message2UserComponent_Conditional_0_Conditional_19_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onCloseAndBlock()); });
8997
+ i0.ɵɵelementStart(1, "span");
8998
+ i0.ɵɵtext(2, "Close");
8999
+ i0.ɵɵelementEnd()();
9000
+ } }
9001
+ function Message2UserComponent_Conditional_0_Conditional_20_Template(rf, ctx) { if (rf & 1) {
9002
+ const _r5 = i0.ɵɵgetCurrentView();
9003
+ i0.ɵɵelementStart(0, "a", 18);
9004
+ i0.ɵɵlistener("click", function Message2UserComponent_Conditional_0_Conditional_20_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onClose()); });
9005
+ i0.ɵɵelementStart(1, "span");
9006
+ i0.ɵɵtext(2, "Close");
9007
+ i0.ɵɵelementEnd()();
9008
+ } }
9009
+ function Message2UserComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
9010
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "anatoly-card")(3, "anatoly-card-header", 2)(4, "div", 3);
9011
+ i0.ɵɵconditionalCreate(5, Message2UserComponent_Conditional_0_Conditional_5_Template, 2, 0, "a", 4);
9012
+ i0.ɵɵconditionalCreate(6, Message2UserComponent_Conditional_0_Conditional_6_Template, 2, 0, "a", 4);
9013
+ i0.ɵɵelementEnd()();
9014
+ i0.ɵɵelementStart(7, "anatoly-card-body", 5)(8, "div", 6)(9, "div", 7);
9015
+ i0.ɵɵconditionalCreate(10, Message2UserComponent_Conditional_0_Conditional_10_Template, 2, 2, "div", 8);
9016
+ i0.ɵɵelementStart(11, "div", 9)(12, "h4", 10);
9017
+ i0.ɵɵtext(13);
9018
+ i0.ɵɵelementEnd();
9019
+ i0.ɵɵelementStart(14, "p", 11);
9020
+ i0.ɵɵtext(15);
9021
+ i0.ɵɵelementEnd()()();
9022
+ i0.ɵɵprojection(16);
9023
+ i0.ɵɵelementEnd()();
9024
+ i0.ɵɵelementStart(17, "anatoly-card-footer", 12)(18, "div", 13);
9025
+ i0.ɵɵconditionalCreate(19, Message2UserComponent_Conditional_0_Conditional_19_Template, 3, 0, "a", 14);
9026
+ i0.ɵɵconditionalCreate(20, Message2UserComponent_Conditional_0_Conditional_20_Template, 3, 0, "a", 14);
9027
+ i0.ɵɵelementEnd()()()()();
9028
+ } if (rf & 2) {
9029
+ const ctx_r1 = i0.ɵɵnextContext();
9030
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c1, ctx_r1.show));
9031
+ i0.ɵɵadvance(5);
9032
+ i0.ɵɵconditional((ctx_r1.message == null ? null : ctx_r1.message.block) ? 5 : -1);
9033
+ i0.ɵɵadvance();
9034
+ i0.ɵɵconditional(!(ctx_r1.message == null ? null : ctx_r1.message.block) ? 6 : -1);
9035
+ i0.ɵɵadvance(4);
9036
+ i0.ɵɵconditional((ctx_r1.config == null ? null : ctx_r1.config.image) ? 10 : -1);
9037
+ i0.ɵɵadvance(2);
9038
+ i0.ɵɵproperty("ngClass", "text-" + (ctx_r1.config == null ? null : ctx_r1.config.color));
9039
+ i0.ɵɵadvance();
9040
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.config == null ? null : ctx_r1.config.title, " ");
9041
+ i0.ɵɵadvance(2);
9042
+ i0.ɵɵtextInterpolate(ctx_r1.config == null ? null : ctx_r1.config.message);
9043
+ i0.ɵɵadvance(4);
9044
+ i0.ɵɵconditional((ctx_r1.message == null ? null : ctx_r1.message.block) ? 19 : -1);
9045
+ i0.ɵɵadvance();
9046
+ i0.ɵɵconditional(!(ctx_r1.message == null ? null : ctx_r1.message.block) ? 20 : -1);
9047
+ } }
9048
+ class Message2UserComponent extends ComponentBase {
9049
+ constructor(go, ns) {
9050
+ super();
9051
+ this.go = go;
9052
+ this.ns = ns;
9053
+ this.show = false;
9054
+ }
9055
+ ngOnInit() {
9056
+ this.setDefaults();
9057
+ this.setValues();
9058
+ }
9059
+ setDefaults() {
9060
+ }
9061
+ setValues() {
9062
+ this.subs.sink = this.ns.subscribe({
9063
+ next: (data) => {
9064
+ if (!data) {
9065
+ return;
9066
+ }
9067
+ this.show = true;
9068
+ this.message = data;
9069
+ this.config = this.ns.getConfig(data.type);
9070
+ if (this.message?.timeout) {
9071
+ setTimeout(() => {
9072
+ this.show = false;
9073
+ }, this.message.timeout);
9074
+ }
9075
+ },
9076
+ });
9077
+ }
9078
+ //Events
9079
+ onCloseAndBlock() {
9080
+ this.show = false;
9081
+ this.go.dashboard();
9082
+ }
9083
+ onClose() {
9084
+ this.show = false;
9085
+ }
9086
+ static { this.ɵfac = function Message2UserComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || Message2UserComponent)(i0.ɵɵdirectiveInject(GoServiceBase), i0.ɵɵdirectiveInject(Message2UserService)); }; }
9087
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Message2UserComponent, selectors: [["anatoly-message2user"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$5, decls: 1, vars: 1, consts: [[1, "message-user", 3, "ngClass"], [1, "message-user-inner"], ["title", "\u00A0"], [1, "card-tools"], ["href", "javascript:", 1, "btn", "btn-icon", "btn-info"], ["classes", "p-0"], [1, "message-content"], [1, "message-content", "text-center"], [1, "message-image", "mb-3"], [1, "message-text"], [1, "mb-2", 3, "ngClass"], [1, "mb-0"], ["classes", "bg-footer"], [1, "actions"], ["href", "javascript:", 1, "btn", "btn-secondary"], ["href", "javascript:", 1, "btn", "btn-icon", "btn-info", 3, "click"], ["icon", "close"], ["loading", "lazy", 1, "img-fluid", 3, "src", "alt"], ["href", "javascript:", 1, "btn", "btn-secondary", 3, "click"]], template: function Message2UserComponent_Template(rf, ctx) { if (rf & 1) {
9088
+ i0.ɵɵprojectionDef();
9089
+ i0.ɵɵconditionalCreate(0, Message2UserComponent_Conditional_0_Template, 21, 11, "div", 0);
9090
+ } if (rf & 2) {
9091
+ i0.ɵɵconditional(ctx.show ? 0 : -1);
9092
+ } }, dependencies: [i1$2.NgClass, i1$7.FaIconComponent, CardComponent, CardHeaderComponent, CardBodyComponent, CardFooterComponent, AReplacerDirective, ImageReplacerDirective], encapsulation: 2 }); }
9093
+ }
9094
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(Message2UserComponent, [{
9095
+ type: Component,
9096
+ args: [{ selector: 'anatoly-message2user', standalone: false, template: "@if (show) {\r\n <div class='message-user' [ngClass]='{show: show}'>\r\n <div class='message-user-inner '>\r\n <anatoly-card>\r\n <anatoly-card-header title='&nbsp;'>\r\n <div class='card-tools'>\r\n @if (message?.block) {\r\n <a href='javascript:' class='btn btn-icon btn-info' (click)='onCloseAndBlock()'>\r\n <fa-icon icon='close' />\r\n </a>\r\n }\r\n \r\n @if (!message?.block) {\r\n <a href='javascript:' class='btn btn-icon btn-info' (click)='onClose()'>\r\n <fa-icon icon='close' />\r\n </a>\r\n }\r\n </div>\r\n </anatoly-card-header>\r\n \r\n <anatoly-card-body classes='p-0'>\r\n <div class='message-content'>\r\n <div class='message-content text-center'>\r\n @if (config?.image) {\r\n <div class='message-image mb-3'>\r\n <img [src]=\"config.image\"\r\n [alt]=\"config.title || 'Message'\"\r\n class='img-fluid'\r\n loading=\"lazy\">\r\n </div>\r\n }\r\n <div class='message-text'>\r\n <h4 class='mb-2' [ngClass]=\"'text-' + config?.color\">\r\n {{ config?.title }}\r\n </h4>\r\n <p class='mb-0'>{{ config?.message }}</p>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n </div>\r\n </anatoly-card-body>\r\n \r\n <anatoly-card-footer classes='bg-footer'>\r\n <div class='actions'>\r\n @if (message?.block) {\r\n <a href='javascript:' class='btn btn-secondary' (click)='onCloseAndBlock()'>\r\n <span>Close</span>\r\n </a>\r\n }\r\n \r\n @if (!message?.block) {\r\n <a href='javascript:' class='btn btn-secondary' (click)='onClose()'>\r\n <span>Close</span>\r\n </a>\r\n }\r\n </div>\r\n </anatoly-card-footer>\r\n </anatoly-card>\r\n </div>\r\n </div>\r\n}\r\n" }]
9097
+ }], () => [{ type: GoServiceBase }, { type: Message2UserService }], null); })();
9098
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(Message2UserComponent, { className: "Message2UserComponent", filePath: "lib/ui/components/message2user/message2user.component.ts", lineNumber: 30 }); })();
9099
+
8910
9100
  /*
8911
9101
  <file>
8912
9102
  Project:
@@ -10325,6 +10515,8 @@ class AnatolyCoreModule {
10325
10515
  static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ providers: [
10326
10516
  //Guards
10327
10517
  StarterGuard,
10518
+ //GoService
10519
+ GoServiceBase,
10328
10520
  //Services
10329
10521
  BrowserService,
10330
10522
  DigitalMarketingService,
@@ -10360,6 +10552,8 @@ class AnatolyCoreModule {
10360
10552
  providers: [
10361
10553
  //Guards
10362
10554
  StarterGuard,
10555
+ //GoService
10556
+ GoServiceBase,
10363
10557
  //Services
10364
10558
  BrowserService,
10365
10559
  DigitalMarketingService,
@@ -11034,6 +11228,7 @@ const MAIN_COMPONENTS = [
11034
11228
  SignOutButtonComponent,
11035
11229
  NodataComponent,
11036
11230
  NoMobileSupportComponent,
11231
+ Message2UserComponent,
11037
11232
  //Spinners
11038
11233
  PageSpinnerComponent,
11039
11234
  LoadingComponent,
@@ -11201,7 +11396,7 @@ class AnatolyUIModule {
11201
11396
  ]
11202
11397
  }]
11203
11398
  }], null, null); })();
11204
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(AnatolyUIModule, { declarations: [CardComponent, CardHeaderComponent, CardBodyComponent, CardFooterComponent, CheckIconComponent, Copy2ClipboardComponent, ControlPanelComponent, DataPagerComponent, CountryDropdownlist, LanguageDropdownlist, ModerationStatusDropdownlist, PublishStatusDropdownlist, TimezoneDropdownlist, HtmlEditorComponent, SignInButtonComponent, SignUpButtonComponent, SignOutButtonComponent, NodataComponent, NoMobileSupportComponent, PageSpinnerComponent, LoadingComponent, UrlSlugComponent, FeatureWillBeReadyComponent, YouAgreeToOurTermsComponent, ContactUsDialog, HoveringDirective, AReplacerDirective, ImageReplacerDirective, NativeElementDirective, AddressComponent, CompanyComponent, ContactUsForm, SafeHtmlPipe, ReplaceTextPipe, FileSizePipe, FormValidationSummaryComponent, ItemValidationSummaryComponent], imports: [CommonModule,
11399
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(AnatolyUIModule, { declarations: [CardComponent, CardHeaderComponent, CardBodyComponent, CardFooterComponent, CheckIconComponent, Copy2ClipboardComponent, ControlPanelComponent, DataPagerComponent, CountryDropdownlist, LanguageDropdownlist, ModerationStatusDropdownlist, PublishStatusDropdownlist, TimezoneDropdownlist, HtmlEditorComponent, SignInButtonComponent, SignUpButtonComponent, SignOutButtonComponent, NodataComponent, NoMobileSupportComponent, Message2UserComponent, PageSpinnerComponent, LoadingComponent, UrlSlugComponent, FeatureWillBeReadyComponent, YouAgreeToOurTermsComponent, ContactUsDialog, HoveringDirective, AReplacerDirective, ImageReplacerDirective, NativeElementDirective, AddressComponent, CompanyComponent, ContactUsForm, SafeHtmlPipe, ReplaceTextPipe, FileSizePipe, FormValidationSummaryComponent, ItemValidationSummaryComponent], imports: [CommonModule,
11205
11400
  RouterModule,
11206
11401
  ReactiveFormsModule,
11207
11402
  FormsModule,
@@ -11209,7 +11404,7 @@ class AnatolyUIModule {
11209
11404
  FERootModule,
11210
11405
  //Modules
11211
11406
  FaModule,
11212
- KendoModule], exports: [CardComponent, CardHeaderComponent, CardBodyComponent, CardFooterComponent, CheckIconComponent, Copy2ClipboardComponent, ControlPanelComponent, DataPagerComponent, CountryDropdownlist, LanguageDropdownlist, ModerationStatusDropdownlist, PublishStatusDropdownlist, TimezoneDropdownlist, HtmlEditorComponent, SignInButtonComponent, SignUpButtonComponent, SignOutButtonComponent, NodataComponent, NoMobileSupportComponent, PageSpinnerComponent, LoadingComponent, UrlSlugComponent, FeatureWillBeReadyComponent, YouAgreeToOurTermsComponent, ContactUsDialog, HoveringDirective, AReplacerDirective, ImageReplacerDirective, NativeElementDirective, AddressComponent, CompanyComponent, ContactUsForm, SafeHtmlPipe, ReplaceTextPipe, FileSizePipe, FormValidationSummaryComponent, ItemValidationSummaryComponent] }); })();
11407
+ KendoModule], exports: [CardComponent, CardHeaderComponent, CardBodyComponent, CardFooterComponent, CheckIconComponent, Copy2ClipboardComponent, ControlPanelComponent, DataPagerComponent, CountryDropdownlist, LanguageDropdownlist, ModerationStatusDropdownlist, PublishStatusDropdownlist, TimezoneDropdownlist, HtmlEditorComponent, SignInButtonComponent, SignUpButtonComponent, SignOutButtonComponent, NodataComponent, NoMobileSupportComponent, Message2UserComponent, PageSpinnerComponent, LoadingComponent, UrlSlugComponent, FeatureWillBeReadyComponent, YouAgreeToOurTermsComponent, ContactUsDialog, HoveringDirective, AReplacerDirective, ImageReplacerDirective, NativeElementDirective, AddressComponent, CompanyComponent, ContactUsForm, SafeHtmlPipe, ReplaceTextPipe, FileSizePipe, FormValidationSummaryComponent, ItemValidationSummaryComponent] }); })();
11213
11408
 
11214
11409
  /*
11215
11410
  <file>
@@ -11443,5 +11638,5 @@ class AnatolyModule {
11443
11638
  * Generated bundle index. Do not edit.
11444
11639
  */
11445
11640
 
11446
- export { AReplacerDirective, AddressComponent, AdminGuard, Alerts, AnatolyBillingModule, AnatolyCoreModule, AnatolyDataModule, AnatolyHttpInterceptor, AnatolyIAMModule, AnatolyIAMPagesModule, AnatolyModule, AnatolyUIModule, ApiServiceBase, ApiUrl, AppContextService, AppCoreSettings, AppName, AppVersion, AppsGoServiceBase, AuthService, AuthenticationGuard, BillingService, BillingUtils, BraintreeDialog, BrowserService, BuyAccessButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CheckIconComponent, ClientApps, CompanyComponent, ComponentBase, ContactUsDialog, ContactUsForm, ControlPanelComponent, Convert, Copy2ClipboardComponent, CoreApiService, CountryDropdownlist, CurrenciesApiService, CurrenciesStorageService, DOM, DataPagerComponent, DataViewType, DateConvert, DefaultEditorOptions, DialogBase, DigitalMarketingService, DiscountCodeStatus, DiscountCodeType, EditComponentBase, EditPageBase, EmailsApiService, EnumEditComponentBase, FeatureWillBeReadyComponent, FileSizePipe, FormValidationSummaryComponent, GABillingEvents, GAEvents, GlobalErrorHandler, GoServiceBase, GoogleAnalyticsService, GridEditServiceBase, GridReadServiceBase, Guid, HoveringDirective, HtmlEditorComponent, HtmlEditorComponentBase, IdleService, ImageReplacerDirective, InjectorInstance$1 as InjectorInstance, IsDevMode, IsProdMode, ItemValidationSummaryComponent, L10nUtils, LanguageDropdownlist, ListBase, LoadingComponent, LoadingService, LocalStorageService, LocalizationModule, LocalizationService, LocalizePipe, LoggingService, MSALUtils, Mode, ModerationStatus, ModerationStatusDropdownlist, NativeElementDirective, NoMobileSupportComponent, NodataComponent, NotificationService, OrderSummaryComponent, PageBase, PageSpinnerComponent, PagedPageBase, PayPalComponent, PayPalScriptService, PaymentMethod, PaymentMethodsComponent, PaymentOptionsComponent, PaymentStage, PaymentType, PaymentsApiService, PaymentsService, PaypalButtonComponent, PaypalSubscribeButtonComponent, PromoCodesApiService, PublishStatus, PublishStatusDropdownlist, QSUtils, ReplaceTextPipe, SafeHtmlPipe, ScriptService, SessionStorageService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, StarterGuard, StarterService, Stopwatch, StripeDialog, Subs, SubscribePlanButtonComponent, SubscriptionProvider, SubscriptionsApiService, TimezoneDropdownlist, TransactionsApiService, UrlSlugComponent, Utils, ValidationSummaryComponent, XmlFormatter, YouAgreeToOurTermsComponent, dateFormats, dateTimeFormats, formatUrl, getAppCoreSettings, getAppSettingsById, getAppSettingsByName, getCurrentApp, getLocalizationInjector, is, resetAppCoreSettings, throwIfAlreadyLoaded, timeFormats, translateLoaderFactory };
11641
+ export { AReplacerDirective, AddressComponent, AdminGuard, Alerts, AnatolyBillingModule, AnatolyCoreModule, AnatolyDataModule, AnatolyHttpInterceptor, AnatolyIAMModule, AnatolyIAMPagesModule, AnatolyModule, AnatolyUIModule, ApiServiceBase, ApiUrl, AppContextService, AppCoreSettings, AppName, AppVersion, AppsGoServiceBase, AuthService, AuthenticationGuard, BillingService, BillingUtils, BraintreeDialog, BrowserService, BuyAccessButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CheckIconComponent, ClientApps, CompanyComponent, ComponentBase, ContactUsDialog, ContactUsForm, ControlPanelComponent, Convert, Copy2ClipboardComponent, CoreApiService, CountryDropdownlist, CurrenciesApiService, CurrenciesStorageService, DOM, DataPagerComponent, DataViewType, DateConvert, DefaultEditorOptions, DialogBase, DigitalMarketingService, DiscountCodeStatus, DiscountCodeType, EditComponentBase, EditPageBase, EmailsApiService, EnumEditComponentBase, FeatureWillBeReadyComponent, FileSizePipe, FormValidationSummaryComponent, GABillingEvents, GAEvents, GlobalErrorHandler, GoServiceBase, GoogleAnalyticsService, GridEditServiceBase, GridReadServiceBase, Guid, HoveringDirective, HtmlEditorComponent, HtmlEditorComponentBase, IdleService, ImageReplacerDirective, InjectorInstance$1 as InjectorInstance, IsDevMode, IsProdMode, ItemValidationSummaryComponent, L10nUtils, LanguageDropdownlist, ListBase, LoadingComponent, LoadingService, LocalStorageService, LocalizationModule, LocalizationService, LocalizePipe, LoggingService, MSALUtils, Message2User, Message2UserComponent, Message2UserService, Mode, ModerationStatus, ModerationStatusDropdownlist, NativeElementDirective, NoMobileSupportComponent, NodataComponent, NotificationService, OrderSummaryComponent, PageBase, PageSpinnerComponent, PagedPageBase, PayPalComponent, PayPalScriptService, PaymentMethod, PaymentMethodsComponent, PaymentOptionsComponent, PaymentStage, PaymentType, PaymentsApiService, PaymentsService, PaypalButtonComponent, PaypalSubscribeButtonComponent, PromoCodesApiService, PublishStatus, PublishStatusDropdownlist, QSUtils, ReplaceTextPipe, SafeHtmlPipe, ScriptService, SessionStorageService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, StarterGuard, StarterService, Stopwatch, StripeDialog, Subs, SubscribePlanButtonComponent, SubscriptionProvider, SubscriptionsApiService, TimezoneDropdownlist, TransactionsApiService, UrlSlugComponent, Utils, ValidationSummaryComponent, XmlFormatter, YouAgreeToOurTermsComponent, dateFormats, dateTimeFormats, formatUrl, getAppCoreSettings, getAppSettingsById, getAppSettingsByName, getCurrentApp, getLocalizationInjector, is, resetAppCoreSettings, throwIfAlreadyLoaded, timeFormats, translateLoaderFactory };
11447
11642
  //# sourceMappingURL=osovitny-anatoly.mjs.map