@osovitny/anatoly 2.14.42 → 2.14.44

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.
@@ -43,7 +43,6 @@ import { ButtonsModule } from '@progress/kendo-angular-buttons';
43
43
  Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
44
44
  </file>
45
45
  */
46
- const ContextInitState = JSON.parse((document.getElementById('contextInitState')).getAttribute('data-contextinitstate'));
47
46
  const AppCoreSettings = JSON.parse((document.getElementById('appCoreSettings')).getAttribute('data-appcoresettings'));
48
47
 
49
48
  /*
@@ -1456,12 +1455,6 @@ class AppContextService extends BaseApiService {
1456
1455
  this.clearCurrent();
1457
1456
  this.updateCurrent();
1458
1457
  }
1459
- isUserSignedIn() {
1460
- return ContextInitState.isUserSignedIn;
1461
- }
1462
- isUserAdmin() {
1463
- return ContextInitState.isUserAdmin;
1464
- }
1465
1458
  //Properties
1466
1459
  get current() {
1467
1460
  this.updateCurrentIfExpired();
@@ -2238,220 +2231,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
2238
2231
  </file>
2239
2232
  */
2240
2233
 
2241
- /*
2242
- <file>
2243
- Project:
2244
- @osovitny/anatoly
2245
-
2246
- Authors:
2247
- Vadim Osovitny
2248
- Anatoly Osovitny
2249
-
2250
- Created:
2251
- 28 Aug 2018
2252
-
2253
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2254
- </file>
2255
- */
2256
- class BaseComponent {
2257
- constructor() {
2258
- this.subs = new Subs();
2259
- //Component Data => usually loading from API
2260
- this.dataLoading = true;
2261
- this.dataLoaded = false;
2262
- this.dataFound = false;
2263
- }
2264
- getQSId() {
2265
- let id = Utils.getValueByNameInQS("id");
2266
- if (typeof id === "undefined" || id == "")
2267
- return null;
2268
- return id;
2269
- }
2270
- ngOnDestroy() {
2271
- this.subs.unsubscribe();
2272
- }
2273
- }
2274
- BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2275
- BaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseComponent, selector: "ng-component", ngImport: i0, template: '', isInline: true });
2276
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseComponent, decorators: [{
2277
- type: Component,
2278
- args: [{
2279
- template: ''
2280
- }]
2281
- }] });
2282
-
2283
- /*
2284
- <file>
2285
- Project:
2286
- @osovitny/anatoly
2287
-
2288
- Authors:
2289
- Vadim Osovitny
2290
- Anatoly Osovitny
2291
-
2292
- Created:
2293
- 20 Nov 2017
2294
-
2295
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2296
- </file>
2297
- */
2298
- class BaseEditComponent extends BaseComponent {
2299
- constructor() {
2300
- super();
2301
- this.formSubmitted = false;
2302
- }
2303
- isActionAdding() {
2304
- let id = Utils.getValueByNameInQS("id");
2305
- return typeof id === "undefined" || id == "";
2306
- }
2307
- getEntityId() {
2308
- return this.getQSId();
2309
- }
2310
- isControlValid(name, frmGroup = null) {
2311
- return !this.isControlInvalid(name, frmGroup);
2312
- }
2313
- isControlInvalid(name, frmGroup = null) {
2314
- if (typeof name === "undefined" || name == "") {
2315
- return false;
2316
- }
2317
- let fg = frmGroup ? frmGroup : this.formGroup;
2318
- if (!fg) {
2319
- return false;
2320
- }
2321
- if (fg.get(name)) {
2322
- return ((this.formSubmitted && fg.get(name).invalid) ||
2323
- (fg.get(name).touched && fg.get(name).invalid));
2324
- }
2325
- return false;
2326
- }
2327
- //FormGroup functions
2328
- getFormValue(name, frmGroup = null) {
2329
- let fg = frmGroup ? frmGroup : this.formGroup;
2330
- return fg.controls[name].value;
2331
- }
2332
- setFormValue(name, value, frmGroup = null) {
2333
- let fg = frmGroup ? frmGroup : this.formGroup;
2334
- fg.controls[name].setValue(value);
2335
- }
2336
- getFormGroupValue(groupName, name, frmGroup = null) {
2337
- let fg = frmGroup ? frmGroup : this.formGroup;
2338
- return fg.controls[groupName].get(name).value;
2339
- }
2340
- setFormGroupValue(groupName, name, value, frmGroup = null) {
2341
- let fg = frmGroup ? frmGroup : this.formGroup;
2342
- fg.controls[groupName].get(name).setValue(value);
2343
- }
2344
- /**
2345
- * Add control to form group
2346
- * @param name
2347
- * @param formControl
2348
- * @param frmGroup
2349
- */
2350
- addControl(name, formControl, frmGroup = null) {
2351
- let fg = frmGroup ? frmGroup : this.formGroup;
2352
- fg.addControl(name, formControl);
2353
- }
2354
- /**
2355
- * Removes control from form group
2356
- * @param name
2357
- * @param frmGroup
2358
- */
2359
- removeControl(name, frmGroup = null) {
2360
- let fg = frmGroup ? frmGroup : this.formGroup;
2361
- if (fg.get(name)) {
2362
- fg.removeControl(name);
2363
- }
2364
- }
2365
- /**
2366
- * return new form control
2367
- * @param formState
2368
- * @param validatorOrOpts
2369
- * @param asyncValidator
2370
- */
2371
- createFormControl(formState, validatorOrOpts, asyncValidator) {
2372
- return new FormControl(formState, validatorOrOpts, asyncValidator);
2373
- }
2374
- /**
2375
- * Set error to control
2376
- * @param controlName formControl name
2377
- * @param err error expect {erroname: boolean} format
2378
- * @param frmGroup
2379
- */
2380
- setControlError(controlName, err, frmGroup = null) {
2381
- let fg = frmGroup ? frmGroup : this.formGroup;
2382
- fg.get(controlName)?.setErrors(err);
2383
- }
2384
- /**
2385
- * Set {invalid: true} for the specified form
2386
- * @param controlName form control name
2387
- * @param frmGroup
2388
- */
2389
- setInValidError(controlName, frmGroup = null) {
2390
- let fg = frmGroup ? frmGroup : this.formGroup;
2391
- fg.get(controlName)?.setErrors({ invalid: true });
2392
- }
2393
- /**
2394
- * returns formgroup controls.
2395
- * main use case is used in html pages
2396
- */
2397
- get fc() {
2398
- return this.formGroup.controls;
2399
- }
2400
- }
2401
- BaseEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseEditComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2402
- BaseEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseEditComponent, selector: "ng-component", inputs: { formGroup: "formGroup", formSubmitted: "formSubmitted" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
2403
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseEditComponent, decorators: [{
2404
- type: Component,
2405
- args: [{
2406
- template: ''
2407
- }]
2408
- }], ctorParameters: function () { return []; }, propDecorators: { formGroup: [{
2409
- type: Input
2410
- }], formSubmitted: [{
2411
- type: Input
2412
- }] } });
2413
-
2414
- /*
2415
- <file>
2416
- Project:
2417
- @osovitny/anatoly
2418
-
2419
- Authors:
2420
- Vadim Osovitny
2421
- Anatoly Osovitny
2422
-
2423
- Created:
2424
- 24 Jan 2022
2425
-
2426
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2427
- </file>
2428
- */
2429
- class BaseDialog extends BaseEditComponent {
2430
- constructor() {
2431
- super();
2432
- this._opened = false;
2433
- }
2434
- get opened() {
2435
- return this._opened;
2436
- }
2437
- open() {
2438
- this._opened = true;
2439
- }
2440
- close() {
2441
- this._opened = false;
2442
- }
2443
- }
2444
- BaseDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseDialog, deps: [], target: i0.ɵɵFactoryTarget.Component });
2445
- BaseDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseDialog, selector: "ng-component", inputs: { opened: "opened" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
2446
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseDialog, decorators: [{
2447
- type: Component,
2448
- args: [{
2449
- template: ''
2450
- }]
2451
- }], ctorParameters: function () { return []; }, propDecorators: { opened: [{
2452
- type: Input
2453
- }] } });
2454
-
2455
2234
  /*
2456
2235
  <file>
2457
2236
  Project:
@@ -2592,6 +2371,157 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
2592
2371
  type: Output
2593
2372
  }] } });
2594
2373
 
2374
+ /*
2375
+ <file>
2376
+ Project:
2377
+ @osovitny/anatoly
2378
+
2379
+ Authors:
2380
+ Vadim Osovitny
2381
+ Anatoly Osovitny
2382
+
2383
+ Created:
2384
+ 29 July 2022
2385
+
2386
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2387
+ </file>
2388
+ */
2389
+ class CardComponent {
2390
+ }
2391
+ CardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2392
+ CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardComponent, selector: "anatoly-card", inputs: { class: "class" }, ngImport: i0, template: "<div class='card {{class}}'>\r\n <ng-content select='mex-card-header'></ng-content>\r\n <ng-content select='mex-card-body'></ng-content>\r\n <ng-content></ng-content>\r\n <ng-content select='mex-card-footer'></ng-content>\r\n</div>\r\n" });
2393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardComponent, decorators: [{
2394
+ type: Component,
2395
+ args: [{ selector: 'anatoly-card', template: "<div class='card {{class}}'>\r\n <ng-content select='mex-card-header'></ng-content>\r\n <ng-content select='mex-card-body'></ng-content>\r\n <ng-content></ng-content>\r\n <ng-content select='mex-card-footer'></ng-content>\r\n</div>\r\n" }]
2396
+ }], propDecorators: { class: [{
2397
+ type: Input
2398
+ }] } });
2399
+
2400
+ /*
2401
+ <file>
2402
+ Project:
2403
+ @osovitny/anatoly
2404
+
2405
+ Authors:
2406
+ Vadim Osovitny
2407
+ Anatoly Osovitny
2408
+
2409
+ Created:
2410
+ 29 July 2022
2411
+
2412
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2413
+ </file>
2414
+ */
2415
+ class CardHeaderComponent {
2416
+ constructor() {
2417
+ this.isTitleVisible = false;
2418
+ }
2419
+ set title(val) {
2420
+ if (val) {
2421
+ this.isTitleVisible = true;
2422
+ this.titleValue = val;
2423
+ }
2424
+ }
2425
+ ngOnInit() {
2426
+ if (this.title)
2427
+ this.isTitleVisible = true;
2428
+ }
2429
+ }
2430
+ CardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2431
+ CardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardHeaderComponent, selector: "anatoly-card-header", inputs: { class: "class", title: "title" }, ngImport: i0, template: "<div class='card-header {{class}}'>\r\n <h3 *ngIf='isTitleVisible' class='card-title'>{{titleValue}}</h3>\r\n <ng-content></ng-content>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1$5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2432
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardHeaderComponent, decorators: [{
2433
+ type: Component,
2434
+ args: [{ selector: 'anatoly-card-header', template: "<div class='card-header {{class}}'>\r\n <h3 *ngIf='isTitleVisible' class='card-title'>{{titleValue}}</h3>\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
2435
+ }], propDecorators: { class: [{
2436
+ type: Input
2437
+ }], title: [{
2438
+ type: Input
2439
+ }] } });
2440
+
2441
+ /*
2442
+ <file>
2443
+ Project:
2444
+ @osovitny/anatoly
2445
+
2446
+ Authors:
2447
+ Vadim Osovitny
2448
+ Anatoly Osovitny
2449
+
2450
+ Created:
2451
+ 29 July 2022
2452
+
2453
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2454
+ </file>
2455
+ */
2456
+ class CardBodyComponent {
2457
+ }
2458
+ CardBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2459
+ CardBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardBodyComponent, selector: "anatoly-card-body", inputs: { class: "class", styles: "styles" }, ngImport: i0, template: "<div class='card-body {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" });
2460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardBodyComponent, decorators: [{
2461
+ type: Component,
2462
+ args: [{ selector: 'anatoly-card-body', template: "<div class='card-body {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
2463
+ }], propDecorators: { class: [{
2464
+ type: Input
2465
+ }], styles: [{
2466
+ type: Input
2467
+ }] } });
2468
+
2469
+ /*
2470
+ <file>
2471
+ Project:
2472
+ @osovitny/anatoly
2473
+
2474
+ Authors:
2475
+ Vadim Osovitny
2476
+ Anatoly Osovitny
2477
+
2478
+ Created:
2479
+ 29 July 2022
2480
+
2481
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2482
+ </file>
2483
+ */
2484
+ class CardFooterComponent {
2485
+ }
2486
+ CardFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2487
+ CardFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardFooterComponent, selector: "anatoly-card-footer", inputs: { class: "class" }, ngImport: i0, template: "<div class='card-footer {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" });
2488
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardFooterComponent, decorators: [{
2489
+ type: Component,
2490
+ args: [{ selector: 'anatoly-card-footer', template: "<div class='card-footer {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
2491
+ }], propDecorators: { class: [{
2492
+ type: Input
2493
+ }] } });
2494
+
2495
+ /*
2496
+ <file>
2497
+ Project:
2498
+ @osovitny/anatoly
2499
+
2500
+ Authors:
2501
+ Vadim Osovitny
2502
+ Anatoly Osovitny
2503
+
2504
+ Created:
2505
+ 15 Aug 2022
2506
+
2507
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2508
+ </file>
2509
+ */
2510
+ class CheckIconComponent {
2511
+ constructor() {
2512
+ //Inputs
2513
+ this.checked = true;
2514
+ }
2515
+ }
2516
+ CheckIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CheckIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2517
+ CheckIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CheckIconComponent, selector: "anatoly-check-icon", inputs: { checked: "checked" }, ngImport: i0, template: "<i class='fas' [ngClass]=\"{ 'fa-check-circle text-success': checked, 'fa-times-circle text-danger':!checked }\"></i>\r\n<ng-content></ng-content>\r\n", dependencies: [{ kind: "directive", type: i1$5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2518
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CheckIconComponent, decorators: [{
2519
+ type: Component,
2520
+ args: [{ selector: 'anatoly-check-icon', template: "<i class='fas' [ngClass]=\"{ 'fa-check-circle text-success': checked, 'fa-times-circle text-danger':!checked }\"></i>\r\n<ng-content></ng-content>\r\n" }]
2521
+ }], ctorParameters: function () { return []; }, propDecorators: { checked: [{
2522
+ type: Input
2523
+ }] } });
2524
+
2595
2525
  /*
2596
2526
  <file>
2597
2527
  Project:
@@ -2678,6 +2608,179 @@ const DefaultEditorOptions = {
2678
2608
  imageUploadParams: { uploadType: "", uploadParentId: "" },
2679
2609
  };
2680
2610
 
2611
+ /*
2612
+ <file>
2613
+ Project:
2614
+ @osovitny/anatoly
2615
+
2616
+ Authors:
2617
+ Vadim Osovitny
2618
+ Anatoly Osovitny
2619
+
2620
+ Created:
2621
+ 28 Aug 2018
2622
+
2623
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2624
+ </file>
2625
+ */
2626
+ class BaseComponent {
2627
+ constructor() {
2628
+ this.subs = new Subs();
2629
+ //Component Data => usually loading from API
2630
+ this.dataLoading = true;
2631
+ this.dataLoaded = false;
2632
+ this.dataFound = false;
2633
+ }
2634
+ getQSId() {
2635
+ let id = Utils.getValueByNameInQS("id");
2636
+ if (typeof id === "undefined" || id == "")
2637
+ return null;
2638
+ return id;
2639
+ }
2640
+ ngOnDestroy() {
2641
+ this.subs.unsubscribe();
2642
+ }
2643
+ }
2644
+ BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2645
+ BaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseComponent, selector: "ng-component", ngImport: i0, template: '', isInline: true });
2646
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseComponent, decorators: [{
2647
+ type: Component,
2648
+ args: [{
2649
+ template: ''
2650
+ }]
2651
+ }] });
2652
+
2653
+ /*
2654
+ <file>
2655
+ Project:
2656
+ @osovitny/anatoly
2657
+
2658
+ Authors:
2659
+ Vadim Osovitny
2660
+ Anatoly Osovitny
2661
+
2662
+ Created:
2663
+ 20 Nov 2017
2664
+
2665
+ Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
2666
+ </file>
2667
+ */
2668
+ class BaseEditComponent extends BaseComponent {
2669
+ constructor() {
2670
+ super();
2671
+ this.formSubmitted = false;
2672
+ }
2673
+ isActionAdding() {
2674
+ let id = Utils.getValueByNameInQS("id");
2675
+ return typeof id === "undefined" || id == "";
2676
+ }
2677
+ getEntityId() {
2678
+ return this.getQSId();
2679
+ }
2680
+ isControlValid(name, frmGroup = null) {
2681
+ return !this.isControlInvalid(name, frmGroup);
2682
+ }
2683
+ isControlInvalid(name, frmGroup = null) {
2684
+ if (typeof name === "undefined" || name == "") {
2685
+ return false;
2686
+ }
2687
+ let fg = frmGroup ? frmGroup : this.formGroup;
2688
+ if (!fg) {
2689
+ return false;
2690
+ }
2691
+ if (fg.get(name)) {
2692
+ return ((this.formSubmitted && fg.get(name).invalid) ||
2693
+ (fg.get(name).touched && fg.get(name).invalid));
2694
+ }
2695
+ return false;
2696
+ }
2697
+ //FormGroup functions
2698
+ getFormValue(name, frmGroup = null) {
2699
+ let fg = frmGroup ? frmGroup : this.formGroup;
2700
+ return fg.controls[name].value;
2701
+ }
2702
+ setFormValue(name, value, frmGroup = null) {
2703
+ let fg = frmGroup ? frmGroup : this.formGroup;
2704
+ fg.controls[name].setValue(value);
2705
+ }
2706
+ getFormGroupValue(groupName, name, frmGroup = null) {
2707
+ let fg = frmGroup ? frmGroup : this.formGroup;
2708
+ return fg.controls[groupName].get(name).value;
2709
+ }
2710
+ setFormGroupValue(groupName, name, value, frmGroup = null) {
2711
+ let fg = frmGroup ? frmGroup : this.formGroup;
2712
+ fg.controls[groupName].get(name).setValue(value);
2713
+ }
2714
+ /**
2715
+ * Add control to form group
2716
+ * @param name
2717
+ * @param formControl
2718
+ * @param frmGroup
2719
+ */
2720
+ addControl(name, formControl, frmGroup = null) {
2721
+ let fg = frmGroup ? frmGroup : this.formGroup;
2722
+ fg.addControl(name, formControl);
2723
+ }
2724
+ /**
2725
+ * Removes control from form group
2726
+ * @param name
2727
+ * @param frmGroup
2728
+ */
2729
+ removeControl(name, frmGroup = null) {
2730
+ let fg = frmGroup ? frmGroup : this.formGroup;
2731
+ if (fg.get(name)) {
2732
+ fg.removeControl(name);
2733
+ }
2734
+ }
2735
+ /**
2736
+ * return new form control
2737
+ * @param formState
2738
+ * @param validatorOrOpts
2739
+ * @param asyncValidator
2740
+ */
2741
+ createFormControl(formState, validatorOrOpts, asyncValidator) {
2742
+ return new FormControl(formState, validatorOrOpts, asyncValidator);
2743
+ }
2744
+ /**
2745
+ * Set error to control
2746
+ * @param controlName formControl name
2747
+ * @param err error expect {erroname: boolean} format
2748
+ * @param frmGroup
2749
+ */
2750
+ setControlError(controlName, err, frmGroup = null) {
2751
+ let fg = frmGroup ? frmGroup : this.formGroup;
2752
+ fg.get(controlName)?.setErrors(err);
2753
+ }
2754
+ /**
2755
+ * Set {invalid: true} for the specified form
2756
+ * @param controlName form control name
2757
+ * @param frmGroup
2758
+ */
2759
+ setInValidError(controlName, frmGroup = null) {
2760
+ let fg = frmGroup ? frmGroup : this.formGroup;
2761
+ fg.get(controlName)?.setErrors({ invalid: true });
2762
+ }
2763
+ /**
2764
+ * returns formgroup controls.
2765
+ * main use case is used in html pages
2766
+ */
2767
+ get fc() {
2768
+ return this.formGroup.controls;
2769
+ }
2770
+ }
2771
+ BaseEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseEditComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2772
+ BaseEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseEditComponent, selector: "ng-component", inputs: { formGroup: "formGroup", formSubmitted: "formSubmitted" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
2773
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseEditComponent, decorators: [{
2774
+ type: Component,
2775
+ args: [{
2776
+ template: ''
2777
+ }]
2778
+ }], ctorParameters: function () { return []; }, propDecorators: { formGroup: [{
2779
+ type: Input
2780
+ }], formSubmitted: [{
2781
+ type: Input
2782
+ }] } });
2783
+
2681
2784
  /*
2682
2785
  <file>
2683
2786
  Project:
@@ -3210,40 +3313,38 @@ const Spinkit = {
3210
3313
  </file>
3211
3314
  */
3212
3315
  class PageSpinnerComponent {
3213
- constructor(router, document) {
3316
+ constructor(router) {
3214
3317
  this.router = router;
3215
- this.document = document;
3216
3318
  this.isSpinnerVisible = true;
3217
3319
  this.Spinkit = Spinkit;
3218
3320
  this.backgroundColor = '#2196f3';
3219
3321
  this.spinner = Spinkit.skLine;
3220
- this.router.events.subscribe({
3221
- next: (event) => {
3222
- if (event instanceof NavigationStart) {
3223
- this.isSpinnerVisible = true;
3224
- }
3225
- else if (event instanceof NavigationEnd || event instanceof NavigationCancel || event instanceof NavigationError) {
3226
- this.isSpinnerVisible = false;
3227
- }
3228
- },
3229
- error: (e) => {
3230
- this.isSpinnerVisible = false;
3322
+ router.events.subscribe({
3323
+ next: (routerEvent) => {
3324
+ this.checkRouterEvent(routerEvent);
3231
3325
  }
3232
3326
  });
3233
3327
  }
3328
+ checkRouterEvent(routerEvent) {
3329
+ if (routerEvent instanceof NavigationStart) {
3330
+ this.isSpinnerVisible = true;
3331
+ }
3332
+ if (routerEvent instanceof NavigationEnd ||
3333
+ routerEvent instanceof NavigationCancel ||
3334
+ routerEvent instanceof NavigationError) {
3335
+ this.isSpinnerVisible = false;
3336
+ }
3337
+ }
3234
3338
  ngOnDestroy() {
3235
3339
  this.isSpinnerVisible = false;
3236
3340
  }
3237
3341
  }
3238
- PageSpinnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: PageSpinnerComponent, deps: [{ token: i1.Router }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
3342
+ PageSpinnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: PageSpinnerComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
3239
3343
  PageSpinnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: PageSpinnerComponent, selector: "anatoly-pagespinner", inputs: { backgroundColor: "backgroundColor", spinner: "spinner" }, ngImport: i0, template: "<div id=\"http-loader\" *ngIf=\"isSpinnerVisible\">\r\n <div class=\"loader-bg\">\r\n <div class=\"sk-line-material\" [class.colored]=\"!backgroundColor\" *ngIf=\"spinner === Spinkit.skLine\">\r\n <div class=\"sk-child sk-bounce1\" [style.background-color]='backgroundColor'></div>\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1$5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
3240
3344
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: PageSpinnerComponent, decorators: [{
3241
3345
  type: Component,
3242
3346
  args: [{ selector: 'anatoly-pagespinner', encapsulation: ViewEncapsulation.None, template: "<div id=\"http-loader\" *ngIf=\"isSpinnerVisible\">\r\n <div class=\"loader-bg\">\r\n <div class=\"sk-line-material\" [class.colored]=\"!backgroundColor\" *ngIf=\"spinner === Spinkit.skLine\">\r\n <div class=\"sk-child sk-bounce1\" [style.background-color]='backgroundColor'></div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
3243
- }], ctorParameters: function () { return [{ type: i1.Router }, { type: Document, decorators: [{
3244
- type: Inject,
3245
- args: [DOCUMENT]
3246
- }] }]; }, propDecorators: { backgroundColor: [{
3347
+ }], ctorParameters: function () { return [{ type: i1.Router }]; }, propDecorators: { backgroundColor: [{
3247
3348
  type: Input
3248
3349
  }], spinner: [{
3249
3350
  type: Input
@@ -3259,114 +3360,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
3259
3360
  Anatoly Osovitny
3260
3361
 
3261
3362
  Created:
3262
- 29 July 2022
3263
-
3264
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3265
- </file>
3266
- */
3267
- class CardComponent {
3268
- }
3269
- CardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3270
- CardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardComponent, selector: "anatoly-card", inputs: { class: "class" }, ngImport: i0, template: "<div class='card {{class}}'>\r\n <ng-content select='mex-card-header'></ng-content>\r\n <ng-content select='mex-card-body'></ng-content>\r\n <ng-content></ng-content>\r\n <ng-content select='mex-card-footer'></ng-content>\r\n</div>\r\n" });
3271
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardComponent, decorators: [{
3272
- type: Component,
3273
- args: [{ selector: 'anatoly-card', template: "<div class='card {{class}}'>\r\n <ng-content select='mex-card-header'></ng-content>\r\n <ng-content select='mex-card-body'></ng-content>\r\n <ng-content></ng-content>\r\n <ng-content select='mex-card-footer'></ng-content>\r\n</div>\r\n" }]
3274
- }], propDecorators: { class: [{
3275
- type: Input
3276
- }] } });
3277
-
3278
- /*
3279
- <file>
3280
- Project:
3281
- @osovitny/anatoly
3282
-
3283
- Authors:
3284
- Vadim Osovitny
3285
- Anatoly Osovitny
3286
-
3287
- Created:
3288
- 29 July 2022
3289
-
3363
+ 24 Jan 2022
3364
+
3290
3365
  Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3291
3366
  </file>
3292
3367
  */
3293
- class CardHeaderComponent {
3368
+ class BaseDialog extends BaseEditComponent {
3294
3369
  constructor() {
3295
- this.isTitleVisible = false;
3370
+ super();
3371
+ this._opened = false;
3296
3372
  }
3297
- set title(val) {
3298
- if (val) {
3299
- this.isTitleVisible = true;
3300
- this.titleValue = val;
3301
- }
3373
+ get opened() {
3374
+ return this._opened;
3302
3375
  }
3303
- ngOnInit() {
3304
- if (this.title)
3305
- this.isTitleVisible = true;
3376
+ open() {
3377
+ this._opened = true;
3378
+ }
3379
+ close() {
3380
+ this._opened = false;
3306
3381
  }
3307
3382
  }
3308
- CardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3309
- CardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardHeaderComponent, selector: "anatoly-card-header", inputs: { class: "class", title: "title" }, ngImport: i0, template: "<div class='card-header {{class}}'>\r\n <h3 *ngIf='isTitleVisible' class='card-title'>{{titleValue}}</h3>\r\n <ng-content></ng-content>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1$5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3310
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardHeaderComponent, decorators: [{
3311
- type: Component,
3312
- args: [{ selector: 'anatoly-card-header', template: "<div class='card-header {{class}}'>\r\n <h3 *ngIf='isTitleVisible' class='card-title'>{{titleValue}}</h3>\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
3313
- }], propDecorators: { class: [{
3314
- type: Input
3315
- }], title: [{
3316
- type: Input
3317
- }] } });
3318
-
3319
- /*
3320
- <file>
3321
- Project:
3322
- @osovitny/anatoly
3323
-
3324
- Authors:
3325
- Vadim Osovitny
3326
- Anatoly Osovitny
3327
-
3328
- Created:
3329
- 29 July 2022
3330
-
3331
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3332
- </file>
3333
- */
3334
- class CardBodyComponent {
3335
- }
3336
- CardBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3337
- CardBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardBodyComponent, selector: "anatoly-card-body", inputs: { class: "class", styles: "styles" }, ngImport: i0, template: "<div class='card-body {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" });
3338
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardBodyComponent, decorators: [{
3339
- type: Component,
3340
- args: [{ selector: 'anatoly-card-body', template: "<div class='card-body {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
3341
- }], propDecorators: { class: [{
3342
- type: Input
3343
- }], styles: [{
3344
- type: Input
3345
- }] } });
3346
-
3347
- /*
3348
- <file>
3349
- Project:
3350
- @osovitny/anatoly
3351
-
3352
- Authors:
3353
- Vadim Osovitny
3354
- Anatoly Osovitny
3355
-
3356
- Created:
3357
- 29 July 2022
3358
-
3359
- Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
3360
- </file>
3361
- */
3362
- class CardFooterComponent {
3363
- }
3364
- CardFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3365
- CardFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: CardFooterComponent, selector: "anatoly-card-footer", inputs: { class: "class" }, ngImport: i0, template: "<div class='card-footer {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" });
3366
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: CardFooterComponent, decorators: [{
3383
+ BaseDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseDialog, deps: [], target: i0.ɵɵFactoryTarget.Component });
3384
+ BaseDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: BaseDialog, selector: "ng-component", inputs: { opened: "opened" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
3385
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: BaseDialog, decorators: [{
3367
3386
  type: Component,
3368
- args: [{ selector: 'anatoly-card-footer', template: "<div class='card-footer {{class}}'>\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
3369
- }], propDecorators: { class: [{
3387
+ args: [{
3388
+ template: ''
3389
+ }]
3390
+ }], ctorParameters: function () { return []; }, propDecorators: { opened: [{
3370
3391
  type: Input
3371
3392
  }] } });
3372
3393
 
@@ -4234,23 +4255,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
4234
4255
  const FroalaEditorModuleWithProviders = FroalaEditorModule.forRoot();
4235
4256
  const FroalaViewModuleWithProviders = FroalaViewModule.forRoot();
4236
4257
  const COMPONENTS = [
4258
+ //billing
4237
4259
  BuyAccessButtonComponent,
4238
4260
  SubscribePlanButtonComponent,
4239
- SignInButtonComponent,
4240
- SignUpButtonComponent,
4241
- SignOutButtonComponent,
4242
- NodataComponent,
4243
- //Spinners
4244
- PageSpinnerComponent,
4245
- LoadingComponent,
4246
4261
  //Cards
4247
4262
  CardComponent,
4248
4263
  CardHeaderComponent,
4249
4264
  CardBodyComponent,
4250
4265
  CardFooterComponent,
4266
+ //Check
4267
+ CheckIconComponent,
4251
4268
  //HtmlEditor
4252
4269
  HtmlEditorComponent,
4253
4270
  FormsHtmlEditorComponent,
4271
+ //identity
4272
+ SignInButtonComponent,
4273
+ SignUpButtonComponent,
4274
+ SignOutButtonComponent,
4275
+ ///
4276
+ NodataComponent,
4277
+ //Spinners
4278
+ PageSpinnerComponent,
4279
+ LoadingComponent,
4254
4280
  //Directives
4255
4281
  NativeElementDirective,
4256
4282
  //Forms
@@ -4272,23 +4298,29 @@ const COMPONENTS = [
4272
4298
  class AnatolyUIModule {
4273
4299
  }
4274
4300
  AnatolyUIModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: AnatolyUIModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4275
- AnatolyUIModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.6", ngImport: i0, type: AnatolyUIModule, declarations: [BuyAccessButtonComponent,
4301
+ AnatolyUIModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.6", ngImport: i0, type: AnatolyUIModule, declarations: [
4302
+ //billing
4303
+ BuyAccessButtonComponent,
4276
4304
  SubscribePlanButtonComponent,
4277
- SignInButtonComponent,
4278
- SignUpButtonComponent,
4279
- SignOutButtonComponent,
4280
- NodataComponent,
4281
- //Spinners
4282
- PageSpinnerComponent,
4283
- LoadingComponent,
4284
4305
  //Cards
4285
4306
  CardComponent,
4286
4307
  CardHeaderComponent,
4287
4308
  CardBodyComponent,
4288
4309
  CardFooterComponent,
4310
+ //Check
4311
+ CheckIconComponent,
4289
4312
  //HtmlEditor
4290
4313
  HtmlEditorComponent,
4291
4314
  FormsHtmlEditorComponent,
4315
+ //identity
4316
+ SignInButtonComponent,
4317
+ SignUpButtonComponent,
4318
+ SignOutButtonComponent,
4319
+ ///
4320
+ NodataComponent,
4321
+ //Spinners
4322
+ PageSpinnerComponent,
4323
+ LoadingComponent,
4292
4324
  //Directives
4293
4325
  NativeElementDirective,
4294
4326
  //Forms
@@ -4310,23 +4342,29 @@ AnatolyUIModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
4310
4342
  CommonModule,
4311
4343
  ReactiveFormsModule,
4312
4344
  FormsModule,
4313
- NgxCaptchaModule, i1$7.FroalaEditorModule, i1$7.FroalaViewModule], exports: [BuyAccessButtonComponent,
4345
+ NgxCaptchaModule, i1$7.FroalaEditorModule, i1$7.FroalaViewModule], exports: [
4346
+ //billing
4347
+ BuyAccessButtonComponent,
4314
4348
  SubscribePlanButtonComponent,
4315
- SignInButtonComponent,
4316
- SignUpButtonComponent,
4317
- SignOutButtonComponent,
4318
- NodataComponent,
4319
- //Spinners
4320
- PageSpinnerComponent,
4321
- LoadingComponent,
4322
4349
  //Cards
4323
4350
  CardComponent,
4324
4351
  CardHeaderComponent,
4325
4352
  CardBodyComponent,
4326
4353
  CardFooterComponent,
4354
+ //Check
4355
+ CheckIconComponent,
4327
4356
  //HtmlEditor
4328
4357
  HtmlEditorComponent,
4329
4358
  FormsHtmlEditorComponent,
4359
+ //identity
4360
+ SignInButtonComponent,
4361
+ SignUpButtonComponent,
4362
+ SignOutButtonComponent,
4363
+ ///
4364
+ NodataComponent,
4365
+ //Spinners
4366
+ PageSpinnerComponent,
4367
+ LoadingComponent,
4330
4368
  //Directives
4331
4369
  NativeElementDirective,
4332
4370
  //Forms
@@ -4382,5 +4420,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
4382
4420
  * Generated bundle index. Do not edit.
4383
4421
  */
4384
4422
 
4385
- export { AddressComponent, Alerts, AnatolyCoreModule, AnatolyDataModule, AnatolyHttpInterceptor, AnatolyUIModule, AppContextService, AppCoreSettings, BaseApiService, BaseComponent, BaseDialog, BaseEditComponent, BaseGoService, BaseGridEditService, BaseGridReadService, BaseHtmlEditorComponent, BuyAccessButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CompanyComponent, ContactUsDialog, ContactUsForm, ContextInitState, Convert, CoreApiService, DOM, DefaultEditorOptions, DigitalMarketingService, EmailsApiService, FileSizePipe, FormValidationSummaryComponent, FormsHtmlEditorComponent, FroalaEditorModuleWithProviders, FroalaViewModuleWithProviders, GlobalErrorHandler, GoogleAnalyticsService, Guid, HtmlEditorComponent, IdleService, InjectorInstance, ItemValidationSummaryComponent, LoadingComponent, LoadingService, LocalStorageService, LocalizationInjectorInstance, LocalizationModule, LocalizationService, LocalizationSettingsModule, LocalizePipe, LoggingService, NativeElementDirective, NodataComponent, NotificationService, NotificationsApiService, PageSpinnerComponent, ReplaceTextPipe, SafeHtmlPipe, SessionStorageService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, Subs, SubscribePlanButtonComponent, TimezoneDropdownlist, TranslateModuleAtRoot, UrlSlugComponent, Urls, Utils, ValidationSummaryComponent, customTranslateLoaderFactory, localizationInitializerFactory, throwIfAlreadyLoaded };
4423
+ export { AddressComponent, Alerts, AnatolyCoreModule, AnatolyDataModule, AnatolyHttpInterceptor, AnatolyUIModule, AppContextService, AppCoreSettings, BaseApiService, BaseComponent, BaseDialog, BaseEditComponent, BaseGoService, BaseGridEditService, BaseGridReadService, BaseHtmlEditorComponent, BuyAccessButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CheckIconComponent, CompanyComponent, ContactUsDialog, ContactUsForm, Convert, CoreApiService, DOM, DefaultEditorOptions, DigitalMarketingService, EmailsApiService, FileSizePipe, FormValidationSummaryComponent, FormsHtmlEditorComponent, FroalaEditorModuleWithProviders, FroalaViewModuleWithProviders, GlobalErrorHandler, GoogleAnalyticsService, Guid, HtmlEditorComponent, IdleService, InjectorInstance, ItemValidationSummaryComponent, LoadingComponent, LoadingService, LocalStorageService, LocalizationInjectorInstance, LocalizationModule, LocalizationService, LocalizationSettingsModule, LocalizePipe, LoggingService, NativeElementDirective, NodataComponent, NotificationService, NotificationsApiService, PageSpinnerComponent, ReplaceTextPipe, SafeHtmlPipe, SessionStorageService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, Subs, SubscribePlanButtonComponent, TimezoneDropdownlist, TranslateModuleAtRoot, UrlSlugComponent, Urls, Utils, ValidationSummaryComponent, customTranslateLoaderFactory, localizationInitializerFactory, throwIfAlreadyLoaded };
4386
4424
  //# sourceMappingURL=osovitny-anatoly.mjs.map