zek 17.3.32 → 17.3.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/esm2022/lib/components/base.component.mjs +1 -1
  2. package/esm2022/lib/components/core-ui.component.mjs +5 -5
  3. package/esm2022/lib/components/core.component.mjs +1 -1
  4. package/esm2022/lib/components/edit-base.component.mjs +17 -17
  5. package/esm2022/lib/components/list-base.component.mjs +18 -18
  6. package/esm2022/lib/modules/age/age.pipe.mjs +2 -2
  7. package/esm2022/lib/modules/alert/toast/toast.mjs +3 -3
  8. package/esm2022/lib/modules/bb/bb.component.mjs +2 -2
  9. package/esm2022/lib/modules/card/card/card.mjs +1 -1
  10. package/esm2022/lib/modules/date-ago/date-ago.pipe.mjs +5 -5
  11. package/esm2022/lib/modules/datepicker/date-value-accessor.mjs +6 -6
  12. package/esm2022/lib/modules/file-viewer/file-viewer.mjs +2 -2
  13. package/esm2022/lib/modules/google-login-button/google-login-button.mjs +2 -2
  14. package/esm2022/lib/modules/google-login-button/loader.mjs +1 -1
  15. package/esm2022/lib/modules/modal/modal/modal.component.mjs +64 -48
  16. package/esm2022/lib/modules/numeric/numeric.directive.mjs +6 -6
  17. package/esm2022/lib/modules/pager/pager/pager.mjs +1 -1
  18. package/esm2022/lib/modules/progress/progress.mjs +3 -3
  19. package/esm2022/lib/modules/radio/radio.mjs +2 -2
  20. package/esm2022/lib/modules/recaptcha/loader.mjs +3 -3
  21. package/esm2022/lib/modules/select/select.mjs +5 -5
  22. package/esm2022/lib/modules/select2/select2.mjs +2 -2
  23. package/esm2022/lib/modules/select2-multiple/select2-multiple.mjs +3 -3
  24. package/esm2022/lib/modules/validators/validator.mjs +4 -4
  25. package/esm2022/lib/modules/wizard/wizard/wizard.mjs +2 -2
  26. package/esm2022/lib/services/alert.service.mjs +2 -2
  27. package/esm2022/lib/services/auth-guard.service.mjs +17 -2
  28. package/esm2022/lib/services/auth.service.mjs +10 -10
  29. package/esm2022/lib/services/http-error-handler.service.mjs +3 -3
  30. package/esm2022/lib/services/web.api.mjs +2 -2
  31. package/esm2022/lib/utils/array-helper.mjs +8 -8
  32. package/esm2022/lib/utils/bootstrap.helper.mjs +1 -1
  33. package/esm2022/lib/utils/convert.mjs +2 -2
  34. package/esm2022/lib/utils/css-helper.mjs +6 -6
  35. package/esm2022/lib/utils/date-helper.mjs +32 -47
  36. package/esm2022/lib/utils/error-helper.mjs +3 -3
  37. package/esm2022/lib/utils/excel-helper.mjs +13 -0
  38. package/esm2022/lib/utils/file.helper.mjs +4 -4
  39. package/esm2022/lib/utils/filter-helper.mjs +2 -2
  40. package/esm2022/lib/utils/handler.mjs +5 -5
  41. package/esm2022/lib/utils/html-helper.mjs +4 -4
  42. package/esm2022/lib/utils/index.mjs +2 -1
  43. package/esm2022/lib/utils/jwt-helper.mjs +4 -4
  44. package/esm2022/lib/utils/math-helper.mjs +1 -3
  45. package/esm2022/lib/utils/object-helper.mjs +3 -5
  46. package/esm2022/lib/utils/overlap-helper.mjs +4 -4
  47. package/esm2022/lib/utils/storage-helper.mjs +3 -3
  48. package/esm2022/lib/utils/string-helper.mjs +6 -5
  49. package/esm2022/lib/utils/thenBy.mjs +9 -9
  50. package/esm2022/lib/utils/time-helper.mjs +12 -13
  51. package/esm2022/lib/utils/tmp-helper.mjs +2 -2
  52. package/esm2022/lib/utils/url-helper.mjs +6 -6
  53. package/fesm2022/zek.mjs +313 -291
  54. package/fesm2022/zek.mjs.map +1 -1
  55. package/lib/modules/date-ago/date-ago.pipe.d.ts +3 -3
  56. package/lib/modules/modal/modal/modal.component.d.ts +22 -7
  57. package/lib/services/alert.service.d.ts +2 -2
  58. package/lib/services/auth-guard.service.d.ts +2 -1
  59. package/lib/utils/bootstrap.helper.d.ts +1 -1
  60. package/lib/utils/excel-helper.d.ts +3 -0
  61. package/lib/utils/handler.d.ts +1 -1
  62. package/lib/utils/index.d.ts +1 -0
  63. package/lib/utils/thenBy.d.ts +1 -1
  64. package/package.json +1 -1
package/fesm2022/zek.mjs CHANGED
@@ -1,17 +1,17 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, InjectionToken, Inject, Directive, inject, Input, EventEmitter, Output, ViewChild, Pipe, Component, forwardRef, NgModule, HostListener, ViewEncapsulation, ChangeDetectionStrategy, Optional } from '@angular/core';
2
+ import { Injectable, inject, InjectionToken, Inject, Directive, Input, EventEmitter, Output, ViewChild, Pipe, Component, forwardRef, NgModule, HostListener, ViewEncapsulation, ChangeDetectionStrategy, Optional } from '@angular/core';
3
3
  import * as i1 from '@angular/router';
4
- import { NavigationStart, ActivatedRoute, Router, RouterModule } from '@angular/router';
4
+ import { Router, NavigationStart, ActivatedRoute, RouterModule } from '@angular/router';
5
5
  import { BehaviorSubject, Subject, catchError, of, firstValueFrom, timer } from 'rxjs';
6
- import * as i1$1 from '@ngx-translate/core';
6
+ import * as i2 from '@ngx-translate/core';
7
7
  import { TranslateService, TranslateModule } from '@ngx-translate/core';
8
- import * as i1$2 from '@angular/common/http';
8
+ import * as i1$1 from '@angular/common/http';
9
9
  import { HttpParams, HttpHeaders, HTTP_INTERCEPTORS } from '@angular/common/http';
10
- import * as i1$3 from '@angular/common';
10
+ import * as i1$2 from '@angular/common';
11
11
  import { CommonModule, DatePipe } from '@angular/common';
12
- import * as i1$5 from '@angular/forms';
12
+ import * as i1$4 from '@angular/forms';
13
13
  import { NG_VALUE_ACCESSOR, FormsModule, NG_VALIDATORS } from '@angular/forms';
14
- import * as i1$4 from '@angular/platform-browser';
14
+ import * as i1$3 from '@angular/platform-browser';
15
15
  import { finalize, map, takeWhile } from 'rxjs/operators';
16
16
 
17
17
  var PrintType;
@@ -26,15 +26,13 @@ class ArrayHelper {
26
26
  static insert(value, index, v) {
27
27
  value.splice(index, 0, v);
28
28
  }
29
- ;
30
29
  static contains(value, v) {
31
- for (var i = 0; i < value.length; i++) {
30
+ for (let i = 0; i < value.length; i++) {
32
31
  if (value[i] === v)
33
32
  return true;
34
33
  }
35
34
  return false;
36
35
  }
37
- ;
38
36
  static isArray(arg) {
39
37
  return Array.isArray(arg) && arg.length > 0;
40
38
  }
@@ -49,9 +47,11 @@ class ArrayHelper {
49
47
  // return arr;
50
48
  // }
51
49
  static distinct(source) {
52
- let length = source.length, result = [], seen = new Set();
50
+ const length = source.length;
51
+ const result = [];
52
+ const seen = new Set();
53
53
  for (let index = 0; index < length; index++) {
54
- let value = source[index];
54
+ const value = source[index];
55
55
  if (seen.has(value))
56
56
  continue;
57
57
  seen.add(value);
@@ -118,12 +118,12 @@ class ArrayHelper {
118
118
  static enumToKeyPairBaseArray(value) {
119
119
  const keys = Object.keys(value);
120
120
  const slice = keys.length / 2;
121
- let result = [];
121
+ const result = [];
122
122
  // for (let i = 0; i < slice; i++) {
123
123
  // result.push({ key: +keys[i], value: keys[i + slice] } as T);
124
124
  // }
125
125
  for (let i = slice; i < keys.length; i++) {
126
- let name = keys[i];
126
+ const name = keys[i];
127
127
  result.push({ key: +value[name], value: name });
128
128
  }
129
129
  return result;
@@ -314,7 +314,7 @@ class Convert {
314
314
  static parseNumber(value) {
315
315
  if (typeof value === 'undefined' || value == null || (typeof value === 'string' && value.length === 0))
316
316
  return null;
317
- let n = Number(value);
317
+ const n = Number(value);
318
318
  return !isNaN(n) ? n : null;
319
319
  }
320
320
  static toNumber(value, defaultValue = 0) {
@@ -336,7 +336,7 @@ class CssHelper {
336
336
  if (!addClasses || addClasses === '') {
337
337
  return clazz;
338
338
  }
339
- let arr = ArrayHelper.distinct(this.parseClassNames(clazz).concat(this.parseClassNames(addClasses)));
339
+ const arr = ArrayHelper.distinct(this.parseClassNames(clazz).concat(this.parseClassNames(addClasses)));
340
340
  return Array.isArray(clazz) ? arr : arr.join(' ');
341
341
  }
342
342
  static removeClass(clazz, removeClasses) {
@@ -346,11 +346,11 @@ class CssHelper {
346
346
  if (!removeClasses || removeClasses === '' || removeClasses.length === 0) {
347
347
  return clazz;
348
348
  }
349
- let arrClasses = this.parseClassNames(clazz);
350
- let arrRemove = this.parseClassNames(removeClasses);
351
- var arr = [];
349
+ const arrClasses = this.parseClassNames(clazz);
350
+ const arrRemove = this.parseClassNames(removeClasses);
351
+ const arr = [];
352
352
  for (var i = 0; i < arrClasses.length; i++) {
353
- let val = arrClasses[i];
353
+ const val = arrClasses[i];
354
354
  if (!ArrayHelper.contains(arrRemove, val)) {
355
355
  arr.push(val);
356
356
  }
@@ -407,8 +407,8 @@ class OverlapHelper {
407
407
  }
408
408
  return end2 == end1 ? PeriodRelation.EnclosingEndTouching : PeriodRelation.Enclosing;
409
409
  }
410
- let periodContainsMyStart = this.hasInside(start2, end2, start1);
411
- let periodContainsMyEnd = this.hasInside(start2, end2, end1);
410
+ const periodContainsMyStart = this.hasInside(start2, end2, start1);
411
+ const periodContainsMyEnd = this.hasInside(start2, end2, end1);
412
412
  if (periodContainsMyStart && periodContainsMyEnd) {
413
413
  if (start2 == start1) {
414
414
  return PeriodRelation.InsideStartTouching;
@@ -433,7 +433,7 @@ class OverlapHelper {
433
433
  return this.hasInside(start1, end1, start2) || this.hasInside(start1, end1, end2) || (start2 < start1 && end2 > end1);
434
434
  }
435
435
  static overlaps(start1, end1, start2, end2) {
436
- var relation = this.getRelation(start1, end1, start2, end2);
436
+ const relation = this.getRelation(start1, end1, start2, end2);
437
437
  return relation != PeriodRelation.After &&
438
438
  relation != PeriodRelation.StartTouching &&
439
439
  relation != PeriodRelation.EndTouching &&
@@ -462,27 +462,26 @@ class TimeHelper {
462
462
  return '';
463
463
  }
464
464
  static toDate(time) {
465
- let date = new Date(0);
466
- let tmp = this.parseTime(time);
465
+ const date = new Date(0);
466
+ const tmp = this.parseTime(time);
467
467
  if (!tmp)
468
468
  return date;
469
- let timeDate = new Date('1970-01-01T' + time + 'Z');
469
+ const timeDate = new Date('1970-01-01T' + time + 'Z');
470
470
  date.setTime(date.getTime() + timeDate.getTime());
471
471
  return date;
472
472
  }
473
- ;
474
473
  static intersects(start1, end1, start2, end2) {
475
- let startDate1 = this.toDate(start1);
476
- let endDate1 = this.toDate(end1);
477
- let startDate2 = this.toDate(start2);
478
- let endDate2 = this.toDate(end2);
474
+ const startDate1 = this.toDate(start1);
475
+ const endDate1 = this.toDate(end1);
476
+ const startDate2 = this.toDate(start2);
477
+ const endDate2 = this.toDate(end2);
479
478
  return OverlapHelper.intersects(startDate1, endDate1, startDate2, endDate2);
480
479
  }
481
480
  static overlaps(start1, end1, start2, end2) {
482
- let startDate1 = this.toDate(start1);
483
- let endDate1 = this.toDate(end1);
484
- let startDate2 = this.toDate(start2);
485
- let endDate2 = this.toDate(end2);
481
+ const startDate1 = this.toDate(start1);
482
+ const endDate1 = this.toDate(end1);
483
+ const startDate2 = this.toDate(start2);
484
+ const endDate2 = this.toDate(end2);
486
485
  return OverlapHelper.overlaps(startDate1, endDate1, startDate2, endDate2);
487
486
  }
488
487
  }
@@ -491,10 +490,9 @@ class DateHelper {
491
490
  static minDate() {
492
491
  return new Date(0);
493
492
  }
494
- ;
495
493
  static equals(value1, value2) {
496
- let val1 = (value1 === undefined || value1 === null) ? null : value1;
497
- let val2 = (value2 === undefined || value2 === null) ? null : value2;
494
+ const val1 = (value1 === undefined || value1 === null) ? null : value1;
495
+ const val2 = (value2 === undefined || value2 === null) ? null : value2;
498
496
  if (val1 === val2) {
499
497
  return true;
500
498
  }
@@ -504,8 +502,8 @@ class DateHelper {
504
502
  return val1.getTime() === val2.getTime();
505
503
  }
506
504
  static getDates(start, end) {
507
- var dates = new Array();
508
- var date = new Date(start.valueOf());
505
+ const dates = new Array();
506
+ let date = new Date(start.valueOf());
509
507
  while (date <= end) {
510
508
  dates.push(new Date(date));
511
509
  date = this.addDays(date, 1);
@@ -513,24 +511,24 @@ class DateHelper {
513
511
  return dates;
514
512
  }
515
513
  static dateOnly(value) {
516
- let year = value.getFullYear();
517
- let month = value.getMonth();
518
- let day = value.getDate();
519
- let date = new Date(Date.UTC(year, month, day));
514
+ const year = value.getFullYear();
515
+ const month = value.getMonth();
516
+ const day = value.getDate();
517
+ const date = new Date(Date.UTC(year, month, day));
520
518
  return date;
521
519
  }
522
520
  static today() {
523
521
  return this.dateOnly(new Date());
524
522
  }
525
523
  static toISODateString(value) {
526
- let date = this.parseDate(value);
524
+ const date = this.parseDate(value);
527
525
  if (!date)
528
526
  return null;
529
- let year = date.getFullYear();
527
+ const year = date.getFullYear();
530
528
  // Add +1 to month since 0 is January
531
- let month = date.getMonth() + 1;
532
- let day = date.getDate();
533
- let str = `${year}-${month < 10 ? '0' : ''}${month}-${day < 10 ? '0' : ''}${day}`;
529
+ const month = date.getMonth() + 1;
530
+ const day = date.getDate();
531
+ const str = `${year}-${month < 10 ? '0' : ''}${month}-${day < 10 ? '0' : ''}${day}`;
534
532
  return str;
535
533
  }
536
534
  //** Offes seconds ( offsetmin * 60sec * 1000ms) */
@@ -542,42 +540,39 @@ class DateHelper {
542
540
  return new Date(utc.getTime() - this._utcDiff);
543
541
  }
544
542
  static addTime(value, time) {
545
- let tmp = TimeHelper.parseTime(time);
543
+ const tmp = TimeHelper.parseTime(time);
546
544
  if (!tmp)
547
545
  return value;
548
- let timeDate = new Date('1970-01-01T' + time + 'Z');
549
- let date = value;
546
+ const timeDate = new Date('1970-01-01T' + time + 'Z');
547
+ const date = value;
550
548
  date.setTime(date.getTime() + timeDate.getTime());
551
549
  return date;
552
550
  }
553
- ;
554
551
  static addYears(v, years) {
555
552
  if (!years)
556
553
  return v;
557
- let date = v;
554
+ const date = v;
558
555
  date.setFullYear(v.getFullYear() + years);
559
556
  return date;
560
557
  }
561
558
  static addMonths(v, months) {
562
559
  if (!months)
563
560
  return v;
564
- let date = v;
561
+ const date = v;
565
562
  date.setMonth(date.getMonth() + months);
566
563
  return date;
567
564
  }
568
- ;
569
565
  static addDays(v, days) {
570
566
  if (!days)
571
567
  return v;
572
- let date = v;
568
+ const date = v;
573
569
  date.setDate(date.getDate() + days);
574
570
  return date;
575
571
  }
576
- ;
577
572
  static addHours(v, hours) {
578
573
  if (!hours)
579
574
  return v;
580
- let date = new Date(v);
575
+ const date = new Date(v);
581
576
  //todo need to check if this line needs --> date = new Date(date.getTime());
582
577
  date.setHours(date.getHours() + hours);
583
578
  return date;
@@ -585,7 +580,7 @@ class DateHelper {
585
580
  static addMinutes(v, minutes) {
586
581
  if (!minutes)
587
582
  return v;
588
- let date = new Date(v);
583
+ const date = new Date(v);
589
584
  //todo need to check if this line needs --> date = new Date(date.getTime());
590
585
  date.setMinutes(date.getMinutes() + minutes);
591
586
  return date;
@@ -593,76 +588,65 @@ class DateHelper {
593
588
  static addSeconds(v, seconds) {
594
589
  if (!seconds)
595
590
  return v;
596
- let date = v;
591
+ const date = v;
597
592
  date.setSeconds(date.getSeconds() + seconds);
598
593
  return date;
599
594
  }
600
- ;
601
595
  static isToday(date) {
602
- let today = new Date();
596
+ const today = new Date();
603
597
  return this.isSameDate(date, today);
604
598
  }
605
- ;
606
599
  static clone(date) {
607
600
  return new Date(+date);
608
601
  }
609
- ;
610
602
  static isAnotherMonth(a, b) {
611
603
  return b && a.getMonth() !== b.getMonth();
612
604
  }
613
- ;
614
605
  static isWeekend(v) {
615
606
  return v.getDay() === 0 || v.getDay() === 6;
616
607
  }
617
- ;
618
608
  static isSameDate(a, b) {
619
609
  return b && a.getFullYear() === b.getFullYear() && a.getMonth() === b.getMonth() && a.getDate() === b.getDate();
620
610
  }
621
- ;
622
611
  static getAge(value, now) {
623
612
  if (value === undefined || value === null || value === '' || value !== value)
624
613
  return null;
625
614
  const date = this.toDate(value);
626
- let nowTime = now ? now.getTime() : Date.now();
627
- let timeDiff = nowTime - date.getTime();
615
+ const nowTime = now ? now.getTime() : Date.now();
616
+ const timeDiff = nowTime - date.getTime();
628
617
  return Math.floor((timeDiff / 86400000) / 365.25); //86400000 = (1000 * 60 * 60 * 24) = 1000 millisecond * 60second * 60minute * 24hour
629
618
  }
630
- ;
631
619
  static subtractMonths(endDate, starDate) {
632
- let start = starDate <= endDate ? starDate : endDate;
633
- let end = starDate <= endDate ? endDate : starDate;
634
- let plus = starDate <= endDate ? 1 : -1;
620
+ const start = starDate <= endDate ? starDate : endDate;
621
+ const end = starDate <= endDate ? endDate : starDate;
622
+ const plus = starDate <= endDate ? 1 : -1;
635
623
  let months = (end.getFullYear() - start.getFullYear()) * 12;
636
624
  months -= start.getMonth();
637
625
  months += end.getMonth();
638
626
  return months * plus;
639
627
  }
640
- ;
641
628
  static subtractDays(value, date) {
642
629
  if (!date)
643
630
  return null;
644
631
  date = this.toDate(date);
645
- let timeDiff = date.getTime() - value.getTime();
632
+ const timeDiff = date.getTime() - value.getTime();
646
633
  return Math.floor(timeDiff / 86400000); //86400000 = (1000 * 60 * 60 * 24) = 1000 millisecond * 60second * 60minute * 24hour
647
634
  }
648
- ;
649
635
  static subtractHours(value, date) {
650
636
  if (!date)
651
637
  return null;
652
638
  date = this.toDate(date);
653
- let timeDiff = date.getTime() - value.getTime();
639
+ const timeDiff = date.getTime() - value.getTime();
654
640
  return Math.floor((timeDiff % 86400000) / 3600000);
655
641
  }
656
- ;
657
642
  static subtractMinutes(value, date) {
658
643
  if (!date)
659
644
  return null;
660
645
  date = this.toDate(date);
661
- let timeDiff = date.getTime() - value.getTime();
646
+ const timeDiff = date.getTime() - value.getTime();
662
647
  //
663
648
  return Math.floor(((timeDiff % 86400000) % 3600000) / 60000);
664
649
  }
665
- ;
666
650
  static { this.ISO8601_DATE_REGEX = /^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/; }
667
651
  // 1 2 3 4 5 6 7 8 9 10 11
668
652
  static parseDate(value) {
@@ -767,10 +751,10 @@ class ErrorHelper {
767
751
  : error;
768
752
  const result = [];
769
753
  const properties = Object.keys(errors);
770
- for (let property of properties) {
754
+ for (const property of properties) {
771
755
  const messages = errors[property];
772
756
  if (messages instanceof Array) {
773
- for (let message of messages) {
757
+ for (const message of messages) {
774
758
  result.push({ key: property, value: message });
775
759
  }
776
760
  }
@@ -781,6 +765,19 @@ class ErrorHelper {
781
765
  }
782
766
  }
783
767
 
768
+ class ExcelHelper {
769
+ static getColumnName(columnNumber) {
770
+ let dividend = columnNumber;
771
+ let columnName = '';
772
+ while (dividend > 0) {
773
+ const modulo = Math.floor((dividend - 1) % 26);
774
+ columnName = String.fromCharCode(65 + modulo) + columnName;
775
+ dividend = Math.floor((dividend - modulo) / 26);
776
+ }
777
+ return columnName;
778
+ }
779
+ }
780
+
784
781
  class FileHelper {
785
782
  static getExtension(path) {
786
783
  if (path === undefined || path == null)
@@ -791,9 +788,9 @@ class FileHelper {
791
788
  const directorySeparatorChar = '\\';
792
789
  const altDirectorySeparatorChar = '/';
793
790
  const volumeSeparatorChar = ':';
794
- let length = path.length;
791
+ const length = path.length;
795
792
  for (let i = length; --i >= 0;) {
796
- let ch = path[i];
793
+ const ch = path[i];
797
794
  if (ch === '.') {
798
795
  if (i !== length - 1)
799
796
  return path.substring(i, length);
@@ -813,7 +810,7 @@ class FileHelper {
813
810
  nav.msSaveOrOpenBlob(blob, fileName);
814
811
  }
815
812
  else {
816
- let a = document.createElement('a');
813
+ const a = document.createElement('a');
817
814
  a.href = URL.createObjectURL(blob);
818
815
  a.download = fileName;
819
816
  a.target = '_blank';
@@ -844,8 +841,8 @@ class ObjectHelper {
844
841
  return true;
845
842
  // if (typeof obj === 'undefined' || obj === null)
846
843
  // return true;
847
- for (let prop in obj) {
848
- let v = obj[prop];
844
+ for (const prop in obj) {
845
+ const v = obj[prop];
849
846
  if (!this.isEmptyValue(v))
850
847
  return false;
851
848
  // if (typeof (obj[prop]) !== undefined && obj[prop] !== null && obj[prop] !== '') {
@@ -860,7 +857,6 @@ class ObjectHelper {
860
857
  static deleteNullKeys(val) {
861
858
  this.deleteNullFields(val);
862
859
  }
863
- ;
864
860
  static deleteNullFields(val) {
865
861
  if (!val)
866
862
  return;
@@ -872,7 +868,6 @@ class ObjectHelper {
872
868
  }
873
869
  return val;
874
870
  }
875
- ;
876
871
  static assignFields(target, source) {
877
872
  let t = target;
878
873
  let s = source;
@@ -910,7 +905,7 @@ class FilterHelper {
910
905
  static isEmpty(obj) {
911
906
  if (typeof obj === 'undefined' || obj === null)
912
907
  return true;
913
- let tmp = Object.assign({}, obj);
908
+ const tmp = Object.assign({}, obj);
914
909
  delete tmp.page;
915
910
  delete tmp.pageSize;
916
911
  delete tmp.sort;
@@ -918,9 +913,9 @@ class FilterHelper {
918
913
  }
919
914
  }
920
915
 
921
- var handler = (function () {
922
- var i = 1;
923
- var listeners = {};
916
+ const handler = (function () {
917
+ let i = 1;
918
+ const listeners = {};
924
919
  return {
925
920
  addListener: function (element, event, handler, options) {
926
921
  element.addEventListener(event, handler, options);
@@ -934,7 +929,7 @@ var handler = (function () {
934
929
  },
935
930
  removeListener: function (id) {
936
931
  if (id in listeners) {
937
- var h = listeners[id];
932
+ const h = listeners[id];
938
933
  h.element.removeEventListener(h.event, h.handler, h.options);
939
934
  delete listeners[id];
940
935
  }
@@ -955,7 +950,7 @@ class HtmlHelper {
955
950
  .replace(/>/g, '&gt;');
956
951
  }
957
952
  static addInput(type, name, id = name, force = false) {
958
- let node = document.createElement('input');
953
+ const node = document.createElement('input');
959
954
  node.type = type;
960
955
  node.name = name;
961
956
  node.id = id;
@@ -980,13 +975,13 @@ class HtmlHelper {
980
975
  //2022-02-24 document.getElementsByTagName('head')[0].appendChild(script);
981
976
  }
982
977
  static loadScripts(...scripts) {
983
- var promises = [];
978
+ const promises = [];
984
979
  scripts.forEach((script) => promises.push(this.internalLoadScript(script)));
985
980
  return Promise.all(promises);
986
981
  }
987
982
  static internalLoadScript(src) {
988
983
  return new Promise((resolve, reject) => {
989
- let script = document.createElement('script');
984
+ const script = document.createElement('script');
990
985
  script.src = src;
991
986
  script.type = 'text/javascript';
992
987
  if (script.readyState) { //IE
@@ -1010,9 +1005,9 @@ class HtmlHelper {
1010
1005
 
1011
1006
  class JwtHelper {
1012
1007
  static decode(token) {
1013
- let base64Url = token.split('.')[1];
1014
- let base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
1015
- let jsonPayload = decodeURIComponent(atob(base64).split('').map(function (c) {
1008
+ const base64Url = token.split('.')[1];
1009
+ const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
1010
+ const jsonPayload = decodeURIComponent(atob(base64).split('').map(function (c) {
1016
1011
  return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
1017
1012
  }).join(''));
1018
1013
  return JSON.parse(jsonPayload);
@@ -1023,13 +1018,11 @@ class MathHelper {
1023
1018
  static round(value, decimals = 0) {
1024
1019
  return Math.round(Number(value) * Math.pow(10, decimals)) / (Math.pow(10, decimals));
1025
1020
  }
1026
- ;
1027
1021
  static clamp(v, min, max) {
1028
1022
  return Math.max(min, Math.min(max, v));
1029
1023
  }
1030
1024
  static sum(...values) {
1031
1025
  return values.reduce((acc, cur) => acc + cur, 0);
1032
- ;
1033
1026
  }
1034
1027
  }
1035
1028
 
@@ -1127,13 +1120,13 @@ class StorageHelper {
1127
1120
  localStorage.setItem(key, value);
1128
1121
  }
1129
1122
  static get(key) {
1130
- let str = localStorage.getItem(key);
1123
+ const str = localStorage.getItem(key);
1131
1124
  if (!str) {
1132
1125
  return null;
1133
1126
  }
1134
1127
  // assume it is an object that has been stringified
1135
1128
  if (str[0] === '{') {
1136
- let v = JSON.parse(str);
1129
+ const v = JSON.parse(str);
1137
1130
  return v;
1138
1131
  }
1139
1132
  return str;
@@ -1172,7 +1165,7 @@ class StringHelper {
1172
1165
  static trim(val, ch) {
1173
1166
  if (!val || !ch)
1174
1167
  return val;
1175
- var start = 0, end = val.length;
1168
+ let start = 0, end = val.length;
1176
1169
  while (start < end && val[start] === ch)
1177
1170
  ++start;
1178
1171
  while (end > start && val[end - 1] === ch)
@@ -1182,7 +1175,8 @@ class StringHelper {
1182
1175
  static trimStart(val, ch) {
1183
1176
  if (!val || !ch)
1184
1177
  return val;
1185
- var start = 0, end = val.length;
1178
+ let start = 0;
1179
+ const end = val.length;
1186
1180
  while (start < end && val[start] === ch)
1187
1181
  ++start;
1188
1182
  return (start > 0) ? val.substring(start, end) : val;
@@ -1190,7 +1184,7 @@ class StringHelper {
1190
1184
  static trimEnd(val, ch) {
1191
1185
  if (!val || !ch)
1192
1186
  return val;
1193
- var start = 0, end = val.length;
1187
+ let start = 0, end = val.length;
1194
1188
  while (end > start && val[end - 1] === ch)
1195
1189
  --end;
1196
1190
  return (end < val.length) ? val.substring(start, end) : val;
@@ -1204,7 +1198,7 @@ class StringHelper {
1204
1198
  static trimAny(val, chars) {
1205
1199
  if (!val || !chars)
1206
1200
  return val;
1207
- var start = 0, end = val.length;
1201
+ let start = 0, end = val.length;
1208
1202
  while (start < end && chars.indexOf(val[start]) >= 0)
1209
1203
  ++start;
1210
1204
  while (end > start && chars.indexOf(val[end - 1]) >= 0)
@@ -1213,21 +1207,21 @@ class StringHelper {
1213
1207
  }
1214
1208
  }
1215
1209
 
1216
- var firstBy = (function () {
1210
+ const firstBy = (function () {
1217
1211
  function identity(v) { return v; }
1218
1212
  function ignoreCase(v) { return typeof (v) === "string" ? v.toLowerCase() : v; }
1219
1213
  function makeCompareFunction(f, opt) {
1220
1214
  opt = typeof (opt) === "number" ? { direction: opt } : opt || {};
1221
1215
  if (typeof (f) != "function") {
1222
- var prop = f;
1216
+ const prop = f;
1223
1217
  // make unary function
1224
1218
  f = function (v1) { return !!v1[prop] ? v1[prop] : ""; };
1225
1219
  }
1226
1220
  if (f.length === 1) {
1227
1221
  // f is a unary function mapping a single item to its sort score
1228
- var uf = f;
1229
- var preprocess = opt.ignoreCase ? ignoreCase : identity;
1230
- var cmp = opt.cmp || function (v1, v2) { return v1 < v2 ? -1 : v1 > v2 ? 1 : 0; };
1222
+ const uf = f;
1223
+ const preprocess = opt.ignoreCase ? ignoreCase : identity;
1224
+ const cmp = opt.cmp || function (v1, v2) { return v1 < v2 ? -1 : v1 > v2 ? 1 : 0; };
1231
1225
  f = function (v1, v2) { return cmp(preprocess(uf(v1)), preprocess(uf(v2))); };
1232
1226
  }
1233
1227
  if (opt.direction === -1)
@@ -1241,9 +1235,9 @@ var firstBy = (function () {
1241
1235
  /* should get value false for the first call. This can be done by calling the
1242
1236
  exported function, or the firstBy property on it (for es6 module compatibility)
1243
1237
  */
1244
- var x = (typeof (this) == "function" && !this.firstBy) ? this : false;
1245
- var y = makeCompareFunction(func, opt);
1246
- var f = x ? function (a, b) {
1238
+ const x = (typeof (this) == "function" && !this.firstBy) ? this : false;
1239
+ const y = makeCompareFunction(func, opt);
1240
+ const f = x ? function (a, b) {
1247
1241
  return x(a, b) || y(a, b);
1248
1242
  }
1249
1243
  : y;
@@ -1259,7 +1253,7 @@ class TmpHelper {
1259
1253
  static get(key, remove = true) {
1260
1254
  if (!key)
1261
1255
  return;
1262
- let v = this._obj[key];
1256
+ const v = this._obj[key];
1263
1257
  if (remove)
1264
1258
  this.remove(key);
1265
1259
  return v;
@@ -1284,16 +1278,16 @@ class UrlHelper {
1284
1278
  return url.substring(0, url.lastIndexOf('/') + 1);
1285
1279
  }
1286
1280
  static getAction(url) {
1287
- let action = url.substring(url.lastIndexOf('/') + 1);
1288
- let i = action.indexOf(';');
1281
+ const action = url.substring(url.lastIndexOf('/') + 1);
1282
+ const i = action.indexOf(';');
1289
1283
  return i === -1 ? action : action.substring(0, i);
1290
1284
  }
1291
1285
  static getNoParam(url) {
1292
- let i1 = url.indexOf('?');
1293
- let i2 = url.indexOf(';');
1286
+ const i1 = url.indexOf('?');
1287
+ const i2 = url.indexOf(';');
1294
1288
  if (i1 !== -1) {
1295
1289
  if (i2 !== -1) {
1296
- let min = i1 < i2 ? i1 : i2;
1290
+ const min = i1 < i2 ? i1 : i2;
1297
1291
  return url.substring(0, min);
1298
1292
  }
1299
1293
  return url.substring(0, i1);
@@ -1340,7 +1334,7 @@ class AuthService {
1340
1334
  }
1341
1335
  get user() {
1342
1336
  if (!this._isInitialized) {
1343
- let user = StorageHelper.get('login');
1337
+ const user = StorageHelper.get('login');
1344
1338
  if (user) {
1345
1339
  user.id = ObjectHelper.isDefined(user.id) ? Convert.parseNumber(user.id) : user.id;
1346
1340
  user.expired = ObjectHelper.isDefined(user.expired) ? DateHelper.parseDate(user.expired) : user.expired;
@@ -1357,7 +1351,7 @@ class AuthService {
1357
1351
  }
1358
1352
  _starRefreshTokenTimer() {
1359
1353
  this._stopRefreshTokenTimer();
1360
- let user = this._user;
1354
+ const user = this._user;
1361
1355
  if (user && user.refreshTokenTime) {
1362
1356
  let timeout = user.refreshTokenTime.getTime() - Date.now(); // - (60 * 1000);
1363
1357
  if (timeout < 0) {
@@ -1383,7 +1377,7 @@ class AuthService {
1383
1377
  }
1384
1378
  }
1385
1379
  isAuthenticated() {
1386
- let expired = this.getExpired() || new Date(0); // if getExpired is null return min JS date
1380
+ const expired = this.getExpired() || new Date(0); // if getExpired is null return min JS date
1387
1381
  const newValue = new Date() < expired;
1388
1382
  if (this._oldValue !== newValue) {
1389
1383
  this._oldValue = newValue;
@@ -1441,14 +1435,14 @@ class AuthService {
1441
1435
  this.login(null);
1442
1436
  }
1443
1437
  getExpired() {
1444
- let user = this.user;
1438
+ const user = this.user;
1445
1439
  if (user) {
1446
1440
  return user.expired;
1447
1441
  }
1448
1442
  return null;
1449
1443
  }
1450
1444
  getRefreshTokenExpired() {
1451
- let user = this.user;
1445
+ const user = this.user;
1452
1446
  if (user) {
1453
1447
  return user.refreshTokenTime;
1454
1448
  }
@@ -1496,9 +1490,9 @@ class AuthService {
1496
1490
  if (value) {
1497
1491
  for (let i = 0; i < permissions.length; i++) {
1498
1492
  const p = permissions[i];
1499
- let found = userPermissions[p];
1493
+ const found = userPermissions[p];
1500
1494
  if (found) {
1501
- let hasPermission = BitwiseHelper.hasFlag(found, value);
1495
+ const hasPermission = BitwiseHelper.hasFlag(found, value);
1502
1496
  if (hasPermission)
1503
1497
  return true;
1504
1498
  }
@@ -1507,7 +1501,7 @@ class AuthService {
1507
1501
  else {
1508
1502
  for (let i = 0; i < permissions.length; i++) {
1509
1503
  const p = permissions[i];
1510
- let found = userPermissions[p];
1504
+ const found = userPermissions[p];
1511
1505
  if (found)
1512
1506
  return true;
1513
1507
  }
@@ -1519,7 +1513,7 @@ class AuthService {
1519
1513
  // const allowedRoles = data.roles;
1520
1514
  // let isInRole = this.isInRole(allowedRoles);
1521
1515
  const permission = data.permission;
1522
- let hasPermission = this.hasPermission(permission);
1516
+ const hasPermission = this.hasPermission(permission);
1523
1517
  // return isInRole && hasPermission;
1524
1518
  return hasPermission;
1525
1519
  }
@@ -1530,6 +1524,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
1530
1524
  type: Injectable
1531
1525
  }] });
1532
1526
 
1527
+ const canActivate = (route, state) => {
1528
+ const authService = inject(AuthService);
1529
+ const router = inject(Router);
1530
+ if (!authService.isAuthenticated()) {
1531
+ router.navigate(['/login'], { queryParams: { returnUrl: state.url } });
1532
+ return false;
1533
+ }
1534
+ return authService.hasDataPermission(route.data);
1535
+ };
1536
+ /**
1537
+ * @deprecated Please use canActivate
1538
+ * @see {@link canActivate}
1539
+ */
1533
1540
  class AuthGuardService {
1534
1541
  constructor(authService, router) {
1535
1542
  this.authService = authService;
@@ -1633,7 +1640,7 @@ class AlertService {
1633
1640
  });
1634
1641
  }
1635
1642
  add(alertType, message, keepAfterRouteChange = false) {
1636
- let messages = [];
1643
+ const messages = [];
1637
1644
  messages.push(message);
1638
1645
  this.addRange(alertType, messages, keepAfterRouteChange);
1639
1646
  }
@@ -1754,10 +1761,10 @@ class HttpErrorHandler {
1754
1761
  : error;
1755
1762
  const errorMessages = [];
1756
1763
  const properties = Object.getOwnPropertyNames(errors);
1757
- for (let property of properties) {
1764
+ for (const property of properties) {
1758
1765
  const messages = errors[property];
1759
1766
  if (messages instanceof Array) {
1760
- for (let message of messages) {
1767
+ for (const message of messages) {
1761
1768
  const messageKey = `Validation.${message}`;
1762
1769
  let translatedMessage = this.translate.instant(messageKey);
1763
1770
  // if translation not found then use message
@@ -1802,12 +1809,12 @@ class HttpErrorHandler {
1802
1809
  break;
1803
1810
  }
1804
1811
  }
1805
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HttpErrorHandler, deps: [{ token: AlertService }, { token: i1$1.TranslateService }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
1812
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HttpErrorHandler, deps: [{ token: AlertService }, { token: i2.TranslateService }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
1806
1813
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HttpErrorHandler }); }
1807
1814
  }
1808
1815
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HttpErrorHandler, decorators: [{
1809
1816
  type: Injectable
1810
- }], ctorParameters: () => [{ type: AlertService }, { type: i1$1.TranslateService }, { type: i1.Router }] });
1817
+ }], ctorParameters: () => [{ type: AlertService }, { type: i2.TranslateService }, { type: i1.Router }] });
1811
1818
 
1812
1819
  const API_BASE_URL = new InjectionToken('API_BASE_URL');
1813
1820
  const DATE_FORMAT = new InjectionToken('DATE_FORMAT');
@@ -1854,7 +1861,7 @@ class WebApiClient {
1854
1861
  const field = obj[key];
1855
1862
  if (field === undefined || field === null || (typeof field === 'string' && field.length === 0))
1856
1863
  continue;
1857
- let value = field;
1864
+ const value = field;
1858
1865
  // if (typeof field === 'string' && field.length > 0) {
1859
1866
  // value = field.replace(/\+/gi, '%2B');
1860
1867
  // }
@@ -1917,12 +1924,12 @@ class WebApiClient {
1917
1924
  httpHeaders = httpHeaders.set('Authorization', token);
1918
1925
  return httpHeaders;
1919
1926
  }
1920
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: WebApiClient, deps: [{ token: i1$2.HttpClient }, { token: AuthService }, { token: API_BASE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
1927
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: WebApiClient, deps: [{ token: i1$1.HttpClient }, { token: AuthService }, { token: API_BASE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
1921
1928
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: WebApiClient }); }
1922
1929
  }
1923
1930
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: WebApiClient, decorators: [{
1924
1931
  type: Injectable
1925
- }], ctorParameters: () => [{ type: i1$2.HttpClient }, { type: AuthService }, { type: undefined, decorators: [{
1932
+ }], ctorParameters: () => [{ type: i1$1.HttpClient }, { type: AuthService }, { type: undefined, decorators: [{
1926
1933
  type: Inject,
1927
1934
  args: [API_BASE_URL]
1928
1935
  }] }] });
@@ -2106,7 +2113,7 @@ class CoreUiComponent extends CoreComponent {
2106
2113
  }
2107
2114
  set value(newValue) {
2108
2115
  if (this._value !== newValue) {
2109
- let cancelEventArgs = {
2116
+ const cancelEventArgs = {
2110
2117
  oldValue: this._value,
2111
2118
  newValue: newValue
2112
2119
  };
@@ -2140,7 +2147,7 @@ class CoreUiComponent extends CoreComponent {
2140
2147
  return this._readonly;
2141
2148
  }
2142
2149
  set readonly(value) {
2143
- let v = Convert.toBooleanProperty(value);
2150
+ const v = Convert.toBooleanProperty(value);
2144
2151
  if (this._readonly !== v) {
2145
2152
  this._readonly = v;
2146
2153
  this.onReadOnlyChanged();
@@ -2152,7 +2159,7 @@ class CoreUiComponent extends CoreComponent {
2152
2159
  return this._disabled;
2153
2160
  }
2154
2161
  set disabled(value) {
2155
- let v = Convert.toBooleanProperty(value);
2162
+ const v = Convert.toBooleanProperty(value);
2156
2163
  if (this._disabled !== v) {
2157
2164
  this._disabled = v;
2158
2165
  this.onDisabledChanged();
@@ -2164,7 +2171,7 @@ class CoreUiComponent extends CoreComponent {
2164
2171
  return this._required;
2165
2172
  }
2166
2173
  set required(value) {
2167
- let v = Convert.toBooleanProperty(value);
2174
+ const v = Convert.toBooleanProperty(value);
2168
2175
  if (this._required !== v) {
2169
2176
  this._required = v;
2170
2177
  this.onRequiredChanged();
@@ -2299,7 +2306,7 @@ class EditFormComponent extends BaseComponent {
2299
2306
  async approve() {
2300
2307
  if (this.id) {
2301
2308
  this.approveModel.ids = [this.id];
2302
- let approved = await this.internalApprove(this.approveModel);
2309
+ const approved = await this.internalApprove(this.approveModel);
2303
2310
  if (approved) {
2304
2311
  this.load();
2305
2312
  }
@@ -2320,7 +2327,7 @@ class EditFormComponent extends BaseComponent {
2320
2327
  async disapprove() {
2321
2328
  if (this.id) {
2322
2329
  this.approveModel.ids = [this.id];
2323
- let disapproved = await this.internalDisapprove(this.approveModel);
2330
+ const disapproved = await this.internalDisapprove(this.approveModel);
2324
2331
  if (disapproved) {
2325
2332
  this.load();
2326
2333
  }
@@ -2353,7 +2360,7 @@ class EditBaseComponent extends EditFormComponent {
2353
2360
  }
2354
2361
  async internalSave(navigateToReturnUrl) {
2355
2362
  this.alert.clear();
2356
- let data = await firstValueFrom(this.service.save(this.model));
2363
+ const data = await firstValueFrom(this.service.save(this.model));
2357
2364
  let success = false;
2358
2365
  if (typeof data === 'number' && data > 0) {
2359
2366
  success = true;
@@ -2363,7 +2370,7 @@ class EditBaseComponent extends EditFormComponent {
2363
2370
  success = true;
2364
2371
  }
2365
2372
  if (success) {
2366
- let message = await firstValueFrom(this.translate.get('Alert.SaveSuccess'));
2373
+ const message = await firstValueFrom(this.translate.get('Alert.SaveSuccess'));
2367
2374
  this.alert.success(message, null, 'fa-solid fa-floppy-disk');
2368
2375
  if (navigateToReturnUrl === true) {
2369
2376
  this.navigateReturnUrl();
@@ -2376,46 +2383,46 @@ class EditBaseComponent extends EditFormComponent {
2376
2383
  // }
2377
2384
  }
2378
2385
  else {
2379
- let message = await firstValueFrom(this.translate.get('Alert.SaveError'));
2386
+ const message = await firstValueFrom(this.translate.get('Alert.SaveError'));
2380
2387
  this.alert.error(message, null, 'fa-solid fa-floppy-disk');
2381
2388
  return false;
2382
2389
  }
2383
2390
  }
2384
2391
  async internalApprove(model) {
2385
- let data = await firstValueFrom(this.service.approve(model));
2392
+ const data = await firstValueFrom(this.service.approve(model));
2386
2393
  if (data && data.length > 0) {
2387
- let message = await firstValueFrom(this.translate.get('Alert.Approved'));
2394
+ const message = await firstValueFrom(this.translate.get('Alert.Approved'));
2388
2395
  this.alert.success(message, null, 'fa-solid fa-floppy-disk');
2389
2396
  return true;
2390
2397
  }
2391
2398
  else {
2392
- let message = await firstValueFrom(this.translate.get('Alert.ApproveError'));
2399
+ const message = await firstValueFrom(this.translate.get('Alert.ApproveError'));
2393
2400
  this.alert.error(message, null, 'fa-solid fa-floppy-disk');
2394
2401
  return false;
2395
2402
  }
2396
2403
  }
2397
2404
  async internalDisapprove(model) {
2398
- let data = await firstValueFrom(this.service.disapprove(model));
2405
+ const data = await firstValueFrom(this.service.disapprove(model));
2399
2406
  if (data && data.length > 0) {
2400
- let message = await firstValueFrom(this.translate.get('Alert.Disapproved'));
2407
+ const message = await firstValueFrom(this.translate.get('Alert.Disapproved'));
2401
2408
  this.alert.success(message, null, 'fa-solid fa-floppy-disk');
2402
2409
  return true;
2403
2410
  }
2404
2411
  else {
2405
- let message = await firstValueFrom(this.translate.get('Alert.DisapproveError'));
2412
+ const message = await firstValueFrom(this.translate.get('Alert.DisapproveError'));
2406
2413
  this.alert.error(message, null, 'fa-solid fa-floppy-disk');
2407
2414
  return false;
2408
2415
  }
2409
2416
  }
2410
2417
  async internalSubmit(model) {
2411
- let data = await firstValueFrom(this.service.approve(model));
2418
+ const data = await firstValueFrom(this.service.approve(model));
2412
2419
  if (data && data.length > 0) {
2413
- let message = await firstValueFrom(this.translate.get('Alert.Submitted'));
2420
+ const message = await firstValueFrom(this.translate.get('Alert.Submitted'));
2414
2421
  this.alert.success(message, null, 'fa-solid fa-floppy-disk');
2415
2422
  return true;
2416
2423
  }
2417
2424
  else {
2418
- let message = await firstValueFrom(this.translate.get('Alert.SubmitError'));
2425
+ const message = await firstValueFrom(this.translate.get('Alert.SubmitError'));
2419
2426
  this.alert.error(message, null, 'fa-solid fa-floppy-disk');
2420
2427
  return false;
2421
2428
  }
@@ -2433,9 +2440,9 @@ class EditBaseComponent extends EditFormComponent {
2433
2440
  super.print(this.id, printType);
2434
2441
  }
2435
2442
  async restore() {
2436
- let data = await firstValueFrom(this.service.restore(this.id));
2443
+ const data = await firstValueFrom(this.service.restore(this.id));
2437
2444
  if (data?.success) {
2438
- let message = await firstValueFrom(this.translate.get('Alert.Restored'));
2445
+ const message = await firstValueFrom(this.translate.get('Alert.Restored'));
2439
2446
  this.alert.success(message);
2440
2447
  this.load();
2441
2448
  }
@@ -2627,7 +2634,7 @@ class ListBaseComponent extends BaseComponent {
2627
2634
  initDefaultFilter() {
2628
2635
  }
2629
2636
  initStoredFilter() {
2630
- let filterParam = this.getQueryParam('filter') || this.getParam('filter');
2637
+ const filterParam = this.getQueryParam('filter') || this.getParam('filter');
2631
2638
  if (filterParam) {
2632
2639
  const tmp = StorageHelper.get('filter');
2633
2640
  if (tmp && tmp.url && tmp.url === this.url && tmp.filter) {
@@ -2690,18 +2697,18 @@ class ListBaseComponent extends BaseComponent {
2690
2697
  }
2691
2698
  async delete(id) {
2692
2699
  this.alert.clear();
2693
- let data = await firstValueFrom(this.service.delete(id));
2700
+ const data = await firstValueFrom(this.service.delete(id));
2694
2701
  if (data?.success) {
2695
- let message = await firstValueFrom(this.translate.get('Alert.Deleted'));
2702
+ const message = await firstValueFrom(this.translate.get('Alert.Deleted'));
2696
2703
  this.alert.error(message, null, 'fa-solid fa-trash');
2697
2704
  this.refresh();
2698
2705
  }
2699
2706
  }
2700
2707
  async delete2(id, id2) {
2701
2708
  this.alert.clear();
2702
- let data = await firstValueFrom(this.service.delete2(id, id2));
2709
+ const data = await firstValueFrom(this.service.delete2(id, id2));
2703
2710
  if (data?.success) {
2704
- let message = await firstValueFrom(this.translate.get('Alert.Deleted'));
2711
+ const message = await firstValueFrom(this.translate.get('Alert.Deleted'));
2705
2712
  this.alert.error(message, null, 'fa-solid fa-trash');
2706
2713
  this.refresh();
2707
2714
  }
@@ -2718,7 +2725,7 @@ class ListBaseComponent extends BaseComponent {
2718
2725
  }
2719
2726
  select(item) {
2720
2727
  item.selected = !item.selected;
2721
- let id = item.id;
2728
+ const id = item.id;
2722
2729
  if (id) {
2723
2730
  if (item.selected) {
2724
2731
  this.selectedIds.push(id);
@@ -2731,12 +2738,12 @@ class ListBaseComponent extends BaseComponent {
2731
2738
  showApproveModal(id) {
2732
2739
  if (!id || !this.approveModal)
2733
2740
  return;
2734
- let tmp = { ids: [id] };
2741
+ const tmp = { ids: [id] };
2735
2742
  this.approveModel = {};
2736
2743
  this.approveModal.show(tmp);
2737
2744
  }
2738
2745
  showApproveSelectedModal() {
2739
- let tmp = { ids: this.getSelectedIds() };
2746
+ const tmp = { ids: this.getSelectedIds() };
2740
2747
  if (!tmp.ids || tmp.ids.length === 0 || !this.approveModal)
2741
2748
  return;
2742
2749
  this.approveModel = {};
@@ -2746,22 +2753,22 @@ class ListBaseComponent extends BaseComponent {
2746
2753
  if (!m)
2747
2754
  return;
2748
2755
  this.alert.clear();
2749
- let data = await firstValueFrom(this.service.approve(m));
2756
+ const data = await firstValueFrom(this.service.approve(m));
2750
2757
  if (!data || data.length === 0)
2751
2758
  return;
2752
- let message = await firstValueFrom(this.translate.get(this.approvedMesage));
2759
+ const message = await firstValueFrom(this.translate.get(this.approvedMesage));
2753
2760
  this.alert.success(message, null, 'fa-solid fa-thumbs-up');
2754
2761
  this.refresh();
2755
2762
  }
2756
2763
  showDisapproveModal(id) {
2757
2764
  if (!id || !this.disapproveModal)
2758
2765
  return;
2759
- let tmp = { ids: [id] };
2766
+ const tmp = { ids: [id] };
2760
2767
  this.approveModel = {};
2761
2768
  this.disapproveModal.show(tmp);
2762
2769
  }
2763
2770
  showDisapproveSelectedModal() {
2764
- let tmp = { ids: this.getSelectedIds() };
2771
+ const tmp = { ids: this.getSelectedIds() };
2765
2772
  if (!tmp.ids || tmp.ids.length === 0 || !this.disapproveModal)
2766
2773
  return;
2767
2774
  this.approveModel = {};
@@ -2777,10 +2784,10 @@ class ListBaseComponent extends BaseComponent {
2777
2784
  delete m.comment;
2778
2785
  }
2779
2786
  this.alert.clear();
2780
- let data = await firstValueFrom(this.service.disapprove(m));
2787
+ const data = await firstValueFrom(this.service.disapprove(m));
2781
2788
  if (!data || data.length === 0)
2782
2789
  return;
2783
- let message = await firstValueFrom(this.translate.get(this.disapprovedMesage));
2790
+ const message = await firstValueFrom(this.translate.get(this.disapprovedMesage));
2784
2791
  this.alert.success(message, null, 'fa-solid fa-thumbs-down');
2785
2792
  this.refresh();
2786
2793
  }
@@ -2797,13 +2804,13 @@ class ListBaseComponent extends BaseComponent {
2797
2804
  showSum() { }
2798
2805
  async sum() {
2799
2806
  this.sumModel = null;
2800
- let data = await firstValueFrom(this.service.sum(this.internalFilter));
2807
+ const data = await firstValueFrom(this.service.sum(this.internalFilter));
2801
2808
  if (data) {
2802
2809
  this.sumModel = data;
2803
2810
  this.showSum();
2804
2811
  }
2805
2812
  else {
2806
- let message = await firstValueFrom(this.translate.get('Alert.SumError'));
2813
+ const message = await firstValueFrom(this.translate.get('Alert.SumError'));
2807
2814
  this.alert.error(message);
2808
2815
  }
2809
2816
  }
@@ -2815,7 +2822,7 @@ class ListBaseComponent extends BaseComponent {
2815
2822
  print(printType) {
2816
2823
  if (!this.model || !this.model.items)
2817
2824
  return;
2818
- let ids = this.getSelectedIds();
2825
+ const ids = this.getSelectedIds();
2819
2826
  for (const id of ids) {
2820
2827
  super.print(id, printType);
2821
2828
  }
@@ -2841,7 +2848,7 @@ class AgePipe {
2841
2848
  if (typeof value === 'undefined' || value === null || value === '' || value !== value)
2842
2849
  return null;
2843
2850
  const date = DateHelper.toDate(value);
2844
- let timeDiff = (now ? DateHelper.toDate(now).getTime() : Date.now()) - date.getTime();
2851
+ const timeDiff = (now ? DateHelper.toDate(now).getTime() : Date.now()) - date.getTime();
2845
2852
  return Math.floor((timeDiff / (1000 * 3600 * 24)) / 365.25);
2846
2853
  }
2847
2854
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: AgePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
@@ -2883,7 +2890,7 @@ class ZekAlert extends CoreComponent {
2883
2890
  this.cssIcon = BootstrapHelper.cssAlertIcon(this._type);
2884
2891
  }
2885
2892
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekAlert, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2886
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekAlert, isStandalone: true, selector: "zek-alert", inputs: { type: "type", showClose: "showClose", title: "title" }, usesInheritance: true, ngImport: i0, template: "<div class=\"alert {{cssAlert}} alert-dismissible fade show\" role=\"alert\">\r\n <button *ngIf=\"_showClose\" type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n <div class=\"row\">\r\n <div class=\"col-auto pe-1\" *ngIf=\"cssIcon\">\r\n <span class=\"flex-shrink-0\"><i class=\"{{cssIcon}}\"></i></span>\r\n </div>\r\n <div class=\"col-auto\">\r\n <div *ngIf=\"title\">\r\n <h5 class=\"alert-heading\">{{title}}</h5>\r\n </div>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
2893
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekAlert, isStandalone: true, selector: "zek-alert", inputs: { type: "type", showClose: "showClose", title: "title" }, usesInheritance: true, ngImport: i0, template: "<div class=\"alert {{cssAlert}} alert-dismissible fade show\" role=\"alert\">\r\n <button *ngIf=\"_showClose\" type=\"button\" class=\"btn-close\" data-bs-dismiss=\"alert\" aria-label=\"Close\"></button>\r\n <div class=\"row\">\r\n <div class=\"col-auto pe-1\" *ngIf=\"cssIcon\">\r\n <span class=\"flex-shrink-0\"><i class=\"{{cssIcon}}\"></i></span>\r\n </div>\r\n <div class=\"col-auto\">\r\n <div *ngIf=\"title\">\r\n <h5 class=\"alert-heading\">{{title}}</h5>\r\n </div>\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
2887
2894
  }
2888
2895
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekAlert, decorators: [{
2889
2896
  type: Component,
@@ -2904,7 +2911,7 @@ class ZekToast {
2904
2911
  return this._delay;
2905
2912
  }
2906
2913
  set delay(v) {
2907
- let tmp = clamp$1(Convert.toNumber(v) || 0);
2914
+ const tmp = clamp$1(Convert.toNumber(v) || 0);
2908
2915
  if (this._delay !== tmp) {
2909
2916
  this._delay = tmp;
2910
2917
  }
@@ -2964,7 +2971,7 @@ class ZekToast {
2964
2971
  if (this.icon && !toast.icon) {
2965
2972
  toast.icon = BootstrapHelper.cssAlertIcon(toast.type);
2966
2973
  }
2967
- var v = toast;
2974
+ let v = toast;
2968
2975
  switch (toast.type) {
2969
2976
  case 'primary':
2970
2977
  v.css = 'bg-primary text-white';
@@ -3001,7 +3008,7 @@ class ZekToast {
3001
3008
  }
3002
3009
  }
3003
3010
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekToast, deps: [{ token: AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
3004
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekToast, isStandalone: true, selector: "zek-toast", inputs: { delay: "delay", icon: "icon" }, ngImport: i0, template: "<div class=\"toast-container position-fixed top-0 end-0 p-3\">\r\n <div *ngFor=\"let toast of toasts\" class=\"toast fade show border-0 {{ toast.css }}\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" [attr.data-bs-delay]=\"_delay\">\r\n <div class=\"toast-header\">\r\n <span class=\"me-1\" *ngIf=\"icon && toast.icon\"><i class=\"{{ toast.icon }}\"></i></span>\r\n <strong class=\"me-auto\" *ngIf=\"toast.title\">{{ toast.title }}</strong>\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n <div class=\"toast-body\">\r\n {{ toast.message }}\r\n </div>\r\n </div>\r\n <!-- <div *ngFor=\"let toast of toasts\" class=\"toast fade show\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" data-bs-delay=\"3000\">\r\n <div class=\"toast-body\">\r\n <div class=\"row\">\r\n <div class=\"col-auto pe-1 border-start border-8 {{toast.borderColor}}\">\r\n <span *ngIf=\"toast.icon\" class=\"icon flex-shrink-0 {{toast.iconColor}}\"><i class=\"{{toast.icon}}\"></i></span>\r\n </div>\r\n <div class=\"col\">\r\n <div *ngIf=\"toast.title\"><h5>{{toast.title}}</h5></div>\r\n {{ toast.message }}\r\n </div>\r\n <div class=\"col-auto p-0\">\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div> -->\r\n</div>", styles: [":host>.toast-container{z-index:999999;opacity:.9}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3011
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekToast, isStandalone: true, selector: "zek-toast", inputs: { delay: "delay", icon: "icon" }, ngImport: i0, template: "<div class=\"toast-container position-fixed top-0 end-0 p-3\">\r\n <div *ngFor=\"let toast of toasts\" class=\"toast fade show border-0 {{ toast.css }}\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" [attr.data-bs-delay]=\"_delay\">\r\n <div class=\"toast-header\">\r\n <span class=\"me-1\" *ngIf=\"icon && toast.icon\"><i class=\"{{ toast.icon }}\"></i></span>\r\n <strong class=\"me-auto\" *ngIf=\"toast.title\">{{ toast.title }}</strong>\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n <div class=\"toast-body\">\r\n {{ toast.message }}\r\n </div>\r\n </div>\r\n <!-- <div *ngFor=\"let toast of toasts\" class=\"toast fade show\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" data-bs-delay=\"3000\">\r\n <div class=\"toast-body\">\r\n <div class=\"row\">\r\n <div class=\"col-auto pe-1 border-start border-8 {{toast.borderColor}}\">\r\n <span *ngIf=\"toast.icon\" class=\"icon flex-shrink-0 {{toast.iconColor}}\"><i class=\"{{toast.icon}}\"></i></span>\r\n </div>\r\n <div class=\"col\">\r\n <div *ngIf=\"toast.title\"><h5>{{toast.title}}</h5></div>\r\n {{ toast.message }}\r\n </div>\r\n <div class=\"col-auto p-0\">\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div> -->\r\n</div>", styles: [":host>.toast-container{z-index:999999;opacity:.9}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3005
3012
  }
3006
3013
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekToast, decorators: [{
3007
3014
  type: Component,
@@ -3055,7 +3062,7 @@ class ZekValidation {
3055
3062
  return BootstrapHelper.cssAlert(alert.type);
3056
3063
  }
3057
3064
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekValidation, deps: [{ token: AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
3058
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekValidation, isStandalone: true, selector: "zek-validation", ngImport: i0, template: "<div *ngFor=\"let alert of alerts\" class=\"alert {{ cssAlert(alert) }} alert-dismissible fade show mt-3\" role=\"alert\">\r\n <button (click)=\"remove(alert)\" type=\"button\" class=\"btn-close\" aria-label=\"Close\"></button>\r\n <div *ngFor=\"let message of alert.messages\">\r\n <i *ngIf=\"cssIcon(alert)\" class=\"{{ cssIcon(alert) }}\"></i>\r\n {{message}}\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3065
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekValidation, isStandalone: true, selector: "zek-validation", ngImport: i0, template: "<div *ngFor=\"let alert of alerts\" class=\"alert {{ cssAlert(alert) }} alert-dismissible fade show mt-3\" role=\"alert\">\r\n <button (click)=\"remove(alert)\" type=\"button\" class=\"btn-close\" aria-label=\"Close\"></button>\r\n <div *ngFor=\"let message of alert.messages\">\r\n <i *ngIf=\"cssIcon(alert)\" class=\"{{ cssIcon(alert) }}\"></i>\r\n {{message}}\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3059
3066
  }
3060
3067
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekValidation, decorators: [{
3061
3068
  type: Component,
@@ -3172,7 +3179,7 @@ class ZekButtonBrowse extends CoreUiComponent {
3172
3179
  }
3173
3180
  get modal() {
3174
3181
  if (!this._modal) {
3175
- let modalEl = document.getElementById(this.modalId);
3182
+ const modalEl = document.getElementById(this.modalId);
3176
3183
  this._modal = new bootstrap.Modal(modalEl, { backdrop: false });
3177
3184
  }
3178
3185
  return this._modal;
@@ -3247,7 +3254,7 @@ class ZekButtonBrowse extends CoreUiComponent {
3247
3254
  this.onBindText.emit();
3248
3255
  }
3249
3256
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekButtonBrowse, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3250
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekButtonBrowse, selector: "zek-bb", inputs: { id: "id", type: "type", text: "text", readOnly: "readOnly", hide: "hide", showInput: "showInput", multiSelect: "multiSelect", size: "size", scrollable: "scrollable", fullscreen: "fullscreen", showHeader: "showHeader" }, outputs: { onShowModal: "onShowModal", onChooseAll: "onChooseAll", onKeyPairChange: "onKeyPairChange", onBindText: "onBindText" }, providers: [ZEK_BB_CONTROL_VALUE_ACCESSOR], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"!hide && showInput\" class=\"input-group\">\r\n <input type=\"text\" class=\"form-control\" [ngClass]=\"{ 'ng-valid required': !required || value, 'ng-invalid': required && !value }\" (keyup)=\"_onKey($event)\" title=\"ID = {{value}}\" [value]=\"text\" [attr.readonly]=\"true\">\r\n <button type=\"button\" [disabled]=\"disabled || readOnly\" class=\"btn btn-outline-secondary\" (click)=\"showModal()\">\r\n <i class=\"fa-solid fa-ellipsis\"></i>\r\n </button>\r\n <button type=\"button\" [disabled]=\"disabled || readOnly\" class=\"btn btn-outline-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><a class=\"dropdown-item\" (click)=\"delete()\" href=\"javascript:void(0)\"> <i class=\"fa-solid fa-trash\"></i> Delete <kbd>delete</kbd> </a></li>\r\n </ul>\r\n</div>\r\n<div *ngIf=\"!hide || disabled || readOnly\" class=\"modal fade\" [id]=\"modalId\" tabindex=\"-1\" aria-labelledby=\"bb-modal-label\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <h5 class=\"modal-title\" id=\"{{modalId}}-label\">{{'Action.Choose' | translate }}</h5>\r\n <button type=\"button\" (click)=\"close()\" class=\"btn-close\" data-bs-dismiss2=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
3257
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekButtonBrowse, selector: "zek-bb", inputs: { id: "id", type: "type", text: "text", readOnly: "readOnly", hide: "hide", showInput: "showInput", multiSelect: "multiSelect", size: "size", scrollable: "scrollable", fullscreen: "fullscreen", showHeader: "showHeader" }, outputs: { onShowModal: "onShowModal", onChooseAll: "onChooseAll", onKeyPairChange: "onKeyPairChange", onBindText: "onBindText" }, providers: [ZEK_BB_CONTROL_VALUE_ACCESSOR], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"!hide && showInput\" class=\"input-group\">\r\n <input type=\"text\" class=\"form-control\" [ngClass]=\"{ 'ng-valid required': !required || value, 'ng-invalid': required && !value }\" (keyup)=\"_onKey($event)\" title=\"ID = {{value}}\" [value]=\"text\" [attr.readonly]=\"true\">\r\n <button type=\"button\" [disabled]=\"disabled || readOnly\" class=\"btn btn-outline-secondary\" (click)=\"showModal()\">\r\n <i class=\"fa-solid fa-ellipsis\"></i>\r\n </button>\r\n <button type=\"button\" [disabled]=\"disabled || readOnly\" class=\"btn btn-outline-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><a class=\"dropdown-item\" (click)=\"delete()\" href=\"javascript:void(0)\"> <i class=\"fa-solid fa-trash\"></i> Delete <kbd>delete</kbd> </a></li>\r\n </ul>\r\n</div>\r\n<div *ngIf=\"!hide || disabled || readOnly\" class=\"modal fade\" [id]=\"modalId\" tabindex=\"-1\" aria-labelledby=\"bb-modal-label\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <h5 class=\"modal-title\" id=\"{{modalId}}-label\">{{'Action.Choose' | translate }}</h5>\r\n <button type=\"button\" (click)=\"close()\" class=\"btn-close\" data-bs-dismiss2=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
3251
3258
  }
3252
3259
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekButtonBrowse, decorators: [{
3253
3260
  type: Component,
@@ -3309,7 +3316,7 @@ class ZekButtonBrowseModalToolbar {
3309
3316
  this.onChooseAll.emit();
3310
3317
  }
3311
3318
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekButtonBrowseModalToolbar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3312
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekButtonBrowseModalToolbar, selector: "zek-bb-modal-toolbar", inputs: { multiSelect: "multiSelect" }, outputs: { onSearch: "onSearch", onReset: "onReset", onChooseAll: "onChooseAll" }, ngImport: i0, template: "<ng-content select=\"[left]\"></ng-content>\r\n<button type=\"button\" (click)=\"search()\" class=\"btn btn-primary me-2\" id=\"bb-filter-button\" title=\"Filter\">\r\n <i class=\"fa-solid fa-filter\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button type=\"button\" (click)=\"reset()\" class=\"btn btn-secondary me-2\" title=\"Reset\">\r\n <i class=\"fa-solid fa-xmark\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button *ngIf=\"multiSelect\" type=\"button\" (click)=\"chooseAll()\" class=\"btn btn-secondary me-2\" title=\"Choose All\">\r\n <i class=\"fa-solid fa-hand-point-up\" aria-hidden=\"true\"></i>\r\n</button>\r\n<ng-content></ng-content>", dependencies: [{ kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3319
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekButtonBrowseModalToolbar, selector: "zek-bb-modal-toolbar", inputs: { multiSelect: "multiSelect" }, outputs: { onSearch: "onSearch", onReset: "onReset", onChooseAll: "onChooseAll" }, ngImport: i0, template: "<ng-content select=\"[left]\"></ng-content>\r\n<button type=\"button\" (click)=\"search()\" class=\"btn btn-primary me-2\" id=\"bb-filter-button\" title=\"Filter\">\r\n <i class=\"fa-solid fa-filter\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button type=\"button\" (click)=\"reset()\" class=\"btn btn-secondary me-2\" title=\"Reset\">\r\n <i class=\"fa-solid fa-xmark\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button *ngIf=\"multiSelect\" type=\"button\" (click)=\"chooseAll()\" class=\"btn btn-secondary me-2\" title=\"Choose All\">\r\n <i class=\"fa-solid fa-hand-point-up\" aria-hidden=\"true\"></i>\r\n</button>\r\n<ng-content></ng-content>", dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3313
3320
  }
3314
3321
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekButtonBrowseModalToolbar, decorators: [{
3315
3322
  type: Component,
@@ -3450,7 +3457,7 @@ class ZekCard {
3450
3457
  this.cdRef.detectChanges();
3451
3458
  }
3452
3459
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekCard, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3453
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekCard, isStandalone: true, selector: "zek-card", inputs: { css: "css" }, viewQueries: [{ propertyName: "headerWrapper", first: true, predicate: ["headerRef"], descendants: true }, { propertyName: "bodyRef", first: true, predicate: ["bodyRef"], descendants: true }, { propertyName: "footerRef", first: true, predicate: ["footerRef"], descendants: true }], ngImport: i0, template: "<div class=\"card {{css}}\">\r\n <div class=\"card-header\" #headerRef *ngIf=\"showHeader\">\r\n <ng-content select=\"[card-header]\"></ng-content>\r\n </div>\r\n <div class=\"card-body\" #bodyRef *ngIf=\"showBody\">\r\n <ng-content select=\"[card-body]\"></ng-content>\r\n </div>\r\n <ng-content></ng-content>\r\n <div class=\"card-footer\" #footerRef *ngIf=\"showFooter\">\r\n <ng-content select=\"[card-footer]\"></ng-content>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3460
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekCard, isStandalone: true, selector: "zek-card", inputs: { css: "css" }, viewQueries: [{ propertyName: "headerWrapper", first: true, predicate: ["headerRef"], descendants: true }, { propertyName: "bodyRef", first: true, predicate: ["bodyRef"], descendants: true }, { propertyName: "footerRef", first: true, predicate: ["footerRef"], descendants: true }], ngImport: i0, template: "<div class=\"card {{css}}\">\r\n <div class=\"card-header\" #headerRef *ngIf=\"showHeader\">\r\n <ng-content select=\"[card-header]\"></ng-content>\r\n </div>\r\n <div class=\"card-body\" #bodyRef *ngIf=\"showBody\">\r\n <ng-content select=\"[card-body]\"></ng-content>\r\n </div>\r\n <ng-content></ng-content>\r\n <div class=\"card-footer\" #footerRef *ngIf=\"showFooter\">\r\n <ng-content select=\"[card-footer]\"></ng-content>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
3454
3461
  }
3455
3462
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekCard, decorators: [{
3456
3463
  type: Component,
@@ -3489,7 +3496,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
3489
3496
  }]
3490
3497
  }] });
3491
3498
 
3492
- class DateAgoPipe {
3499
+ class ZekDateAgoPipe {
3493
3500
  transform(value, args) {
3494
3501
  if (value === undefined || value === null || value === '' || value !== value)
3495
3502
  return null;
@@ -3519,10 +3526,10 @@ class DateAgoPipe {
3519
3526
  }
3520
3527
  return date;
3521
3528
  }
3522
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: DateAgoPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3523
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: DateAgoPipe, isStandalone: true, name: "dateAgo" }); }
3529
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDateAgoPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3530
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ZekDateAgoPipe, isStandalone: true, name: "dateAgo" }); }
3524
3531
  }
3525
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: DateAgoPipe, decorators: [{
3532
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDateAgoPipe, decorators: [{
3526
3533
  type: Pipe,
3527
3534
  args: [{
3528
3535
  standalone: true,
@@ -3586,10 +3593,10 @@ class DateValueAccessor {
3586
3593
  this.onChangeDate(e); //execude
3587
3594
  });
3588
3595
  setTimeout(() => {
3589
- let min = this.el.nativeElement.getAttribute('min');
3590
- let max = this.el.nativeElement.getAttribute('max');
3591
- let minDate = min ? DateHelper.toDate(min) : null;
3592
- let maxDate = max ? DateHelper.toDate(max) : null;
3596
+ const min = this.el.nativeElement.getAttribute('min');
3597
+ const max = this.el.nativeElement.getAttribute('max');
3598
+ const minDate = min ? DateHelper.toDate(min) : null;
3599
+ const maxDate = max ? DateHelper.toDate(max) : null;
3593
3600
  this.datepicker.setOptions({
3594
3601
  minDate: minDate, //String|Date|Number
3595
3602
  maxDate: maxDate, //String|Date|Number
@@ -3667,7 +3674,7 @@ class DateValueAccessor {
3667
3674
  }
3668
3675
  //write from model to el.nativeElement
3669
3676
  writeValue(value) {
3670
- let date = DateHelper.parseDate(value);
3677
+ const date = DateHelper.parseDate(value);
3671
3678
  this.oldValue = date;
3672
3679
  if (date) {
3673
3680
  this.datepicker.setDate(date, { clear: true }); //to display in input
@@ -3802,7 +3809,7 @@ class ZekEditToolbar {
3802
3809
  this.onExport.emit(1);
3803
3810
  }
3804
3811
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekEditToolbar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3805
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekEditToolbar, isStandalone: true, selector: "zek-edit-toolbar", inputs: { showSave: "showSave", showCancel: "showCancel", showExport: "showExport", showPrint: "showPrint", readOnly: "readOnly" }, outputs: { onSave: "onSave", onCancel: "onCancel", onPrint: "onPrint", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <ng-content select=\"[left]\"></ng-content>\r\n <div *ngIf=\"showSave\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showCancel\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <!-- dropdown-toggle-split -->\r\n <span class=\"visually-hidden\">Toggle Dropend</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n <ng-content select=\"[print]\"></ng-content>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n <ng-content select=\"[export]\"></ng-content>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
3812
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekEditToolbar, isStandalone: true, selector: "zek-edit-toolbar", inputs: { showSave: "showSave", showCancel: "showCancel", showExport: "showExport", showPrint: "showPrint", readOnly: "readOnly" }, outputs: { onSave: "onSave", onCancel: "onCancel", onPrint: "onPrint", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <ng-content select=\"[left]\"></ng-content>\r\n <div *ngIf=\"showSave\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showCancel\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <!-- dropdown-toggle-split -->\r\n <span class=\"visually-hidden\">Toggle Dropend</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n <ng-content select=\"[print]\"></ng-content>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n <ng-content select=\"[export]\"></ng-content>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
3806
3813
  }
3807
3814
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekEditToolbar, decorators: [{
3808
3815
  type: Component,
@@ -3877,9 +3884,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
3877
3884
 
3878
3885
  let uniqueId$3 = 0;
3879
3886
  class ZekModal extends CoreComponent {
3880
- constructor(translate) {
3887
+ constructor() {
3881
3888
  super();
3882
- this.translate = translate;
3889
+ this.translate = inject(TranslateService);
3883
3890
  this._uniqueId = `zek-modal-${++uniqueId$3}`;
3884
3891
  /** The unique ID for the radio button. */
3885
3892
  this.id = this._uniqueId;
@@ -3922,7 +3929,7 @@ class ZekModal extends CoreComponent {
3922
3929
  });
3923
3930
  }
3924
3931
  setTimeout(() => {
3925
- let modalEl = this.getModalElement();
3932
+ const modalEl = this.getModalElement();
3926
3933
  if (modalEl) {
3927
3934
  this.shownHandler = handler.addListener(modalEl, 'shown.bs.modal', () => {
3928
3935
  this.onShown.emit();
@@ -4018,7 +4025,7 @@ class ZekModal extends CoreComponent {
4018
4025
  return document.getElementById(this.modalId);
4019
4026
  }
4020
4027
  getModal() {
4021
- let modalEl = this.getModalElement();
4028
+ const modalEl = this.getModalElement();
4022
4029
  return new bootstrap.Modal(modalEl, { backdrop: 'static' });
4023
4030
  }
4024
4031
  cssButton() {
@@ -4051,14 +4058,14 @@ class ZekModal extends CoreComponent {
4051
4058
  this._modal.hide();
4052
4059
  }
4053
4060
  else {
4054
- let btn = document.getElementById(this.cancelButtonId);
4061
+ const btn = document.getElementById(this.cancelButtonId);
4055
4062
  if (btn) {
4056
4063
  btn.click();
4057
4064
  }
4058
4065
  }
4059
4066
  }
4060
4067
  ok() {
4061
- let event = new ValidEventArgs();
4068
+ const event = new ValidEventArgs();
4062
4069
  this.onValidating.emit(event);
4063
4070
  if (!event.valid)
4064
4071
  return;
@@ -4070,13 +4077,13 @@ class ZekModal extends CoreComponent {
4070
4077
  e.preventDefault();
4071
4078
  this.ok();
4072
4079
  }
4073
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekModal, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
4074
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekModal, selector: "zek-modal", inputs: { id: "id", model: "model", showOk: "showOk", disabledOk: "disabledOk", showCancel: "showCancel", autoHide: "autoHide", title: "title", text: "text", icon: "icon", okButtonText: "okButtonText", componentType: "componentType", size: "size", large: "large", xl: "xl", scrollable: "scrollable", fullscreen: "fullscreen", showHeader: "showHeader", showFooter: "showFooter" }, outputs: { onShown: "onShown", onHidden: "onHidden", onOk: "onOk", onValidating: "onValidating" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4080
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekModal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4081
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekModal, selector: "zek-modal", inputs: { id: "id", model: "model", showOk: "showOk", disabledOk: "disabledOk", showCancel: "showCancel", autoHide: "autoHide", title: "title", text: "text", icon: "icon", okButtonText: "okButtonText", componentType: "componentType", size: "size", large: "large", xl: "xl", scrollable: "scrollable", fullscreen: "fullscreen", showHeader: "showHeader", showFooter: "showFooter" }, outputs: { onShown: "onShown", onHidden: "onHidden", onOk: "onOk", onValidating: "onValidating" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4075
4082
  }
4076
4083
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekModal, decorators: [{
4077
4084
  type: Component,
4078
4085
  args: [{ selector: 'zek-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
4079
- }], ctorParameters: () => [{ type: i1$1.TranslateService }], propDecorators: { id: [{
4086
+ }], ctorParameters: () => [], propDecorators: { id: [{
4080
4087
  type: Input
4081
4088
  }], model: [{
4082
4089
  type: Input
@@ -4121,81 +4128,96 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
4121
4128
  }], onValidating: [{
4122
4129
  type: Output
4123
4130
  }] } });
4131
+ /**
4132
+ * @deprecated Please use ZekModal
4133
+ */
4124
4134
  class ZekDeleteModal extends ZekModal {
4125
- constructor(translate) {
4126
- super(translate);
4135
+ constructor() {
4136
+ super();
4127
4137
  this.icon = 'fa-solid fa-trash';
4128
- translate.get('Action.Delete').subscribe((res) => this.title = res);
4129
- translate.get('Alert.DeleteQuestion').subscribe((res) => this.text = res);
4138
+ this.translate.get('Action.Delete').subscribe((res) => this.title = res);
4139
+ this.translate.get('Alert.DeleteQuestion').subscribe((res) => this.text = res);
4130
4140
  this.componentType = ComponentType.Delete;
4131
4141
  }
4132
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDeleteModal, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
4133
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekDeleteModal, selector: "zek-delete-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4142
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDeleteModal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4143
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekDeleteModal, selector: "zek-delete-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4134
4144
  }
4135
4145
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDeleteModal, decorators: [{
4136
4146
  type: Component,
4137
4147
  args: [{ selector: 'zek-delete-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
4138
- }], ctorParameters: () => [{ type: i1$1.TranslateService }] });
4148
+ }], ctorParameters: () => [] });
4149
+ /**
4150
+ * @deprecated Please use ZekModal
4151
+ */
4139
4152
  class ZekApproveModal extends ZekModal {
4140
- constructor(translate) {
4141
- super(translate);
4153
+ constructor() {
4154
+ super();
4142
4155
  this.icon = 'fa-solid fa-thumbs-up';
4143
- translate.get('Action.Approve').subscribe((res) => this.title = res);
4144
- translate.get('Alert.ApproveQuestion').subscribe((res) => this.text = res);
4156
+ this.translate.get('Action.Approve').subscribe((res) => this.title = res);
4157
+ this.translate.get('Alert.ApproveQuestion').subscribe((res) => this.text = res);
4145
4158
  this.componentType = ComponentType.Success;
4146
4159
  }
4147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekApproveModal, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
4148
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekApproveModal, selector: "zek-approve-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4160
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekApproveModal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4161
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekApproveModal, selector: "zek-approve-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4149
4162
  }
4150
4163
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekApproveModal, decorators: [{
4151
4164
  type: Component,
4152
4165
  args: [{ selector: 'zek-approve-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
4153
- }], ctorParameters: () => [{ type: i1$1.TranslateService }] });
4166
+ }], ctorParameters: () => [] });
4167
+ /**
4168
+ * @deprecated Please use ZekModal
4169
+ */
4154
4170
  class ZekSubmitModal extends ZekModal {
4155
- constructor(translate) {
4156
- super(translate);
4171
+ constructor() {
4172
+ super();
4157
4173
  this.icon = 'fa-solid fa-thumbs-up';
4158
- translate.get('Action.Submit').subscribe((res) => this.title = res);
4159
- translate.get('Alert.SubmitQuestion').subscribe((res) => this.text = res);
4174
+ this.translate.get('Action.Submit').subscribe((res) => this.title = res);
4175
+ this.translate.get('Alert.SubmitQuestion').subscribe((res) => this.text = res);
4160
4176
  this.componentType = ComponentType.Success;
4161
4177
  }
4162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSubmitModal, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
4163
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSubmitModal, selector: "zek-submit-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSubmitModal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4179
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSubmitModal, selector: "zek-submit-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4164
4180
  }
4165
4181
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSubmitModal, decorators: [{
4166
4182
  type: Component,
4167
4183
  args: [{ selector: 'zek-submit-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
4168
- }], ctorParameters: () => [{ type: i1$1.TranslateService }] });
4184
+ }], ctorParameters: () => [] });
4185
+ /**
4186
+ * @deprecated Please use ZekModal
4187
+ */
4169
4188
  class ZekDisapproveModal extends ZekModal {
4170
- constructor(translate) {
4171
- super(translate);
4189
+ constructor() {
4190
+ super();
4172
4191
  this.icon = 'fa-solid fa-thumbs-down';
4173
- translate.get('Action.Disapprove').subscribe((res) => this.title = res);
4174
- translate.get('Alert.DisapproveQuestion').subscribe((res) => this.text = res);
4192
+ this.translate.get('Action.Disapprove').subscribe((res) => this.title = res);
4193
+ this.translate.get('Alert.DisapproveQuestion').subscribe((res) => this.text = res);
4175
4194
  this.componentType = ComponentType.Delete;
4176
4195
  }
4177
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDisapproveModal, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
4178
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekDisapproveModal, selector: "zek-disapprove-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4196
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDisapproveModal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4197
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekDisapproveModal, selector: "zek-disapprove-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4179
4198
  }
4180
4199
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekDisapproveModal, decorators: [{
4181
4200
  type: Component,
4182
4201
  args: [{ selector: 'zek-disapprove-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
4183
- }], ctorParameters: () => [{ type: i1$1.TranslateService }] });
4202
+ }], ctorParameters: () => [] });
4203
+ /**
4204
+ * @deprecated Please use ZekModal
4205
+ */
4184
4206
  class ZekRestoreModal extends ZekModal {
4185
- constructor(translate) {
4186
- super(translate);
4207
+ constructor() {
4208
+ super();
4187
4209
  this.icon = 'fa-solid fa-rotate-right';
4188
- translate.get('Action.Restore').subscribe((res) => this.title = res);
4189
- translate.get('Action.RestoreQuestion').subscribe((res) => this.text = res);
4210
+ this.translate.get('Action.Restore').subscribe((res) => this.title = res);
4211
+ this.translate.get('Action.RestoreQuestion').subscribe((res) => this.text = res);
4190
4212
  this.componentType = ComponentType.Success;
4191
4213
  }
4192
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekRestoreModal, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
4193
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekRestoreModal, selector: "zek-restore-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4214
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekRestoreModal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4215
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekRestoreModal, selector: "zek-restore-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4194
4216
  }
4195
4217
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekRestoreModal, decorators: [{
4196
4218
  type: Component,
4197
4219
  args: [{ selector: 'zek-restore-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"{{okButtonId}}\" (click)=\"ok()\">\r\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}\r\n </button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"{{cancelButtonId}}\" data-bs-dismiss=\"modal\">\r\n <i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
4198
- }], ctorParameters: () => [{ type: i1$1.TranslateService }] });
4220
+ }], ctorParameters: () => [] });
4199
4221
 
4200
4222
  class ZekFilterModal extends ZekModal {
4201
4223
  constructor() {
@@ -4206,7 +4228,7 @@ class ZekFilterModal extends ZekModal {
4206
4228
  this.onReset.emit();
4207
4229
  }
4208
4230
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekFilterModal, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4209
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekFilterModal, selector: "zek-filter-modal", outputs: { onReset: "onReset" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{ 'Action.Filter' | translate }}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"ok()\"><i class=\"fa-solid fa-filter\"></i> {{ 'Action.Filter' | translate }}</button>\r\n <button *ngIf=\"showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"reset()\"><i class=\"fa-solid fa-xmark\"></i> {{ 'Action.Reset' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4231
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekFilterModal, selector: "zek-filter-modal", outputs: { onReset: "onReset" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"{{modalId}}\" tabindex=\"-1\" attr.aria-labelledby=\"{{lableId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [ngClass]=\"{\r\n 'modal-sm': size === 'sm',\r\n 'modal-lg': size === 'lg', \r\n 'modal-xl': size === 'xl'\r\n }\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"{{lableId}}\">{{ 'Action.Filter' | translate }}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"ok()\"><i class=\"fa-solid fa-filter\"></i> {{ 'Action.Filter' | translate }}</button>\r\n <button *ngIf=\"showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"reset()\"><i class=\"fa-solid fa-xmark\"></i> {{ 'Action.Reset' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4210
4232
  }
4211
4233
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekFilterModal, decorators: [{
4212
4234
  type: Component,
@@ -4225,7 +4247,7 @@ class ZekSumModal {
4225
4247
  }
4226
4248
  }
4227
4249
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSumModal, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4228
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSumModal, selector: "zek-sum-modal", inputs: { model: "model" }, viewQueries: [{ propertyName: "modal", first: true, predicate: ["sumModal"], descendants: true }], ngImport: i0, template: "<zek-modal #sumModal [showCancel]=\"false\" [title]=\"'Action.Sum' | translate\">\r\n <table class=\"table table-striped table-borderless table-hover\">\r\n <tbody>\r\n <tr *ngFor=\"let item of model\">\r\n <td class=\"w-75\">{{item.key}}</td>\r\n <td class=\"w-25\">\r\n <ng-container *ngIf=\"item.key != 'Count'; else elseBlock\">{{item.value | number:'1.2' }}</ng-container>\r\n <ng-template #elseBlock>{{item.value}}</ng-template>\r\n </td>\r\n <tr>\r\n </tbody>\r\n </table>\r\n</zek-modal>", dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ZekModal, selector: "zek-modal", inputs: ["id", "model", "showOk", "disabledOk", "showCancel", "autoHide", "title", "text", "icon", "okButtonText", "componentType", "size", "large", "xl", "scrollable", "fullscreen", "showHeader", "showFooter"], outputs: ["onShown", "onHidden", "onOk", "onValidating"] }, { kind: "pipe", type: i1$3.DecimalPipe, name: "number" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSumModal, selector: "zek-sum-modal", inputs: { model: "model" }, viewQueries: [{ propertyName: "modal", first: true, predicate: ["sumModal"], descendants: true }], ngImport: i0, template: "<zek-modal #sumModal [showCancel]=\"false\" [title]=\"'Action.Sum' | translate\">\r\n <table class=\"table table-striped table-borderless table-hover\">\r\n <tbody>\r\n <tr *ngFor=\"let item of model\">\r\n <td class=\"w-75\">{{item.key}}</td>\r\n <td class=\"w-25\">\r\n <ng-container *ngIf=\"item.key != 'Count'; else elseBlock\">{{item.value | number:'1.2' }}</ng-container>\r\n <ng-template #elseBlock>{{item.value}}</ng-template>\r\n </td>\r\n <tr>\r\n </tbody>\r\n </table>\r\n</zek-modal>", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ZekModal, selector: "zek-modal", inputs: ["id", "model", "showOk", "disabledOk", "showCancel", "autoHide", "title", "text", "icon", "okButtonText", "componentType", "size", "large", "xl", "scrollable", "fullscreen", "showHeader", "showFooter"], outputs: ["onShown", "onHidden", "onOk", "onValidating"] }, { kind: "pipe", type: i1$2.DecimalPipe, name: "number" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4229
4251
  }
4230
4252
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSumModal, decorators: [{
4231
4253
  type: Component,
@@ -4317,7 +4339,7 @@ class ZekSafePipe {
4317
4339
  return this.sanitizer.bypassSecurityTrustHtml(value);
4318
4340
  }
4319
4341
  }
4320
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSafePipe, deps: [{ token: i1$4.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
4342
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSafePipe, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
4321
4343
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ZekSafePipe, isStandalone: true, name: "safe" }); }
4322
4344
  }
4323
4345
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSafePipe, decorators: [{
@@ -4326,11 +4348,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
4326
4348
  standalone: true,
4327
4349
  name: 'safe'
4328
4350
  }]
4329
- }], ctorParameters: () => [{ type: i1$4.DomSanitizer }] });
4351
+ }], ctorParameters: () => [{ type: i1$3.DomSanitizer }] });
4330
4352
 
4331
4353
  class ZekFileViewer extends CoreComponent {
4332
4354
  show(url, extension) {
4333
- let ext = extension || FileHelper.getExtension(url);
4355
+ const ext = extension || FileHelper.getExtension(url);
4334
4356
  switch (ext) {
4335
4357
  case '.docx':
4336
4358
  case '.doc':
@@ -4362,7 +4384,7 @@ class ZekFileViewer extends CoreComponent {
4362
4384
  }
4363
4385
  }
4364
4386
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekFileViewer, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4365
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekFileViewer, isStandalone: true, selector: "zek-file-viewer", providers: [], viewQueries: [{ propertyName: "viewModal", first: true, predicate: ["viewModal"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<zek-modal #viewModal [fullscreen]=\"true\" [showHeader]=\"true\" [showFooter]=\"false\">\r\n <ng-container *ngIf=\"src\">\r\n <iframe id=\"office\" width=\"100%\" height=\"99%\" frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\" scrolling=\"no\" allowfullscreen=\"allowfullscreen\"\r\n [src]=\"src | safe:'resourceUrl'\">\r\n </iframe>\r\n </ng-container>\r\n</zek-modal>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ZekModalModule }, { kind: "component", type: ZekModal, selector: "zek-modal", inputs: ["id", "model", "showOk", "disabledOk", "showCancel", "autoHide", "title", "text", "icon", "okButtonText", "componentType", "size", "large", "xl", "scrollable", "fullscreen", "showHeader", "showFooter"], outputs: ["onShown", "onHidden", "onOk", "onValidating"] }, { kind: "pipe", type: ZekSafePipe, name: "safe" }] }); }
4387
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekFileViewer, isStandalone: true, selector: "zek-file-viewer", providers: [], viewQueries: [{ propertyName: "viewModal", first: true, predicate: ["viewModal"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<zek-modal #viewModal [fullscreen]=\"true\" [showHeader]=\"true\" [showFooter]=\"false\">\r\n <ng-container *ngIf=\"src\">\r\n <iframe id=\"office\" width=\"100%\" height=\"99%\" frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\" scrolling=\"no\" allowfullscreen=\"allowfullscreen\"\r\n [src]=\"src | safe:'resourceUrl'\">\r\n </iframe>\r\n </ng-container>\r\n</zek-modal>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ZekModalModule }, { kind: "component", type: ZekModal, selector: "zek-modal", inputs: ["id", "model", "showOk", "disabledOk", "showCancel", "autoHide", "title", "text", "icon", "okButtonText", "componentType", "size", "large", "xl", "scrollable", "fullscreen", "showHeader", "showFooter"], outputs: ["onShown", "onHidden", "onOk", "onValidating"] }, { kind: "pipe", type: ZekSafePipe, name: "safe" }] }); }
4366
4388
  }
4367
4389
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekFileViewer, decorators: [{
4368
4390
  type: Component,
@@ -4454,7 +4476,7 @@ class ZekGoogleLoginButton extends CoreComponent {
4454
4476
  });
4455
4477
  }
4456
4478
  renderButton() {
4457
- let options = { theme: "outline", size: "large" };
4479
+ const options = { theme: "outline", size: "large" };
4458
4480
  if (this._width)
4459
4481
  options.width = this._width;
4460
4482
  if (this._text)
@@ -4643,7 +4665,7 @@ class ZekGridToolbar {
4643
4665
  this.onRestore.emit(this.model);
4644
4666
  }
4645
4667
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekGridToolbar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4646
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekGridToolbar, isStandalone: true, selector: "zek-grid-toolbar", inputs: { model: "model", showEdit: "showEdit", editEnabled: "editEnabled", showDelete: "showDelete", deleteEnabled: "deleteEnabled", showRestore: "showRestore", restoreEnabled: "restoreEnabled", approveText: "approveText", showApprove: "showApprove", approveEnabled: "approveEnabled", disapproveText: "disapproveText", showDisapprove: "showDisapprove", disapproveEnabled: "disapproveEnabled" }, outputs: { onEdit: "onEdit", onDelete: "onDelete", onApprove: "onApprove", onDisapprove: "onDisapprove", onRestore: "onRestore" }, ngImport: i0, template: "<div class=\"btn-group btn-group-sm\" role=\"group\" aria-label=\"Table action group\">\r\n <button *ngIf=\"showEdit\" (click)=\"edit()\" type=\"button\" class=\"btn btn-secondary\" title=\"{{ 'Action.Edit' | translate }}\" [disabled]=\"!editEnabled\">\r\n <i class=\"fa-solid fa-pencil\"></i>\r\n </button>\r\n <button *ngIf=\"showApprove\" (click)=\"approve()\" type=\"button\" class=\"btn btn-success\" title=\"{{ approveText | translate }}\" [disabled]=\"!approveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-up\"></i>\r\n </button>\r\n <button *ngIf=\"showDisapprove\" (click)=\"disapprove()\" type=\"button\" class=\"btn btn-danger\" title=\"{{ disapproveText | translate }}\" [disabled]=\"!disapproveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-down\"></i>\r\n </button>\r\n <button *ngIf=\"showDelete\" (click)=\"delete()\" type=\"button\" class=\"btn btn-danger\" title=\"{{ 'Action.Delete' | translate }}\" [disabled]=\"!deleteEnabled\">\r\n <i class=\"fa-solid fa-trash\"></i>\r\n </button>\r\n <button *ngIf=\"showRestore\" (click)=\"restore()\" type=\"button\" class=\"btn btn-success\" title=\"{{ 'Action.Restore' | translate }}\" [disabled]=\"!restoreEnabled\">\r\n <i class=\"fa-solid fa-clock-rotate-left\"></i>\r\n </button>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4668
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekGridToolbar, isStandalone: true, selector: "zek-grid-toolbar", inputs: { model: "model", showEdit: "showEdit", editEnabled: "editEnabled", showDelete: "showDelete", deleteEnabled: "deleteEnabled", showRestore: "showRestore", restoreEnabled: "restoreEnabled", approveText: "approveText", showApprove: "showApprove", approveEnabled: "approveEnabled", disapproveText: "disapproveText", showDisapprove: "showDisapprove", disapproveEnabled: "disapproveEnabled" }, outputs: { onEdit: "onEdit", onDelete: "onDelete", onApprove: "onApprove", onDisapprove: "onDisapprove", onRestore: "onRestore" }, ngImport: i0, template: "<div class=\"btn-group btn-group-sm\" role=\"group\" aria-label=\"Table action group\">\r\n <button *ngIf=\"showEdit\" (click)=\"edit()\" type=\"button\" class=\"btn btn-secondary\" title=\"{{ 'Action.Edit' | translate }}\" [disabled]=\"!editEnabled\">\r\n <i class=\"fa-solid fa-pencil\"></i>\r\n </button>\r\n <button *ngIf=\"showApprove\" (click)=\"approve()\" type=\"button\" class=\"btn btn-success\" title=\"{{ approveText | translate }}\" [disabled]=\"!approveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-up\"></i>\r\n </button>\r\n <button *ngIf=\"showDisapprove\" (click)=\"disapprove()\" type=\"button\" class=\"btn btn-danger\" title=\"{{ disapproveText | translate }}\" [disabled]=\"!disapproveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-down\"></i>\r\n </button>\r\n <button *ngIf=\"showDelete\" (click)=\"delete()\" type=\"button\" class=\"btn btn-danger\" title=\"{{ 'Action.Delete' | translate }}\" [disabled]=\"!deleteEnabled\">\r\n <i class=\"fa-solid fa-trash\"></i>\r\n </button>\r\n <button *ngIf=\"showRestore\" (click)=\"restore()\" type=\"button\" class=\"btn btn-success\" title=\"{{ 'Action.Restore' | translate }}\" [disabled]=\"!restoreEnabled\">\r\n <i class=\"fa-solid fa-clock-rotate-left\"></i>\r\n </button>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4647
4669
  }
4648
4670
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekGridToolbar, decorators: [{
4649
4671
  type: Component,
@@ -4688,7 +4710,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
4688
4710
 
4689
4711
  class ZekGridToolbarBar extends ZekGridToolbar {
4690
4712
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekGridToolbarBar, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4691
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekGridToolbarBar, isStandalone: true, selector: "zek-grid-toolbar-bar", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" class=\"btn btn-light btn-sm\" data-bs-toggle=\"dropdown\">\r\n <i class=\"fa-solid fa-ellipsis\"></i>\r\n</button>\r\n<ul class=\"dropdown-menu\">\r\n <li><button *ngIf=\"showEdit\" (click)=\"edit()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!editEnabled\">\r\n <i class=\"fa-solid fa-pencil\"></i> {{ 'Action.Edit' | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showApprove\" (click)=\"approve()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!approveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-up\"></i> {{ approveText | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showDisapprove\" (click)=\"disapprove()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!disapproveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-down\"></i> {{ disapproveText | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showDelete\" (click)=\"delete()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!deleteEnabled\">\r\n <i class=\"fa-solid fa-trash\"></i> {{ 'Action.Delete' | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showRestore\" (click)=\"restore()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!restoreEnabled\">\r\n <i class=\"fa-solid fa-clock-rotate-left\"></i> {{ 'Action.Restore' | translate }}\r\n </button></li>\r\n <ng-content></ng-content>\r\n</ul>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4713
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekGridToolbarBar, isStandalone: true, selector: "zek-grid-toolbar-bar", usesInheritance: true, ngImport: i0, template: "<button type=\"button\" class=\"btn btn-light btn-sm\" data-bs-toggle=\"dropdown\">\r\n <i class=\"fa-solid fa-ellipsis\"></i>\r\n</button>\r\n<ul class=\"dropdown-menu\">\r\n <li><button *ngIf=\"showEdit\" (click)=\"edit()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!editEnabled\">\r\n <i class=\"fa-solid fa-pencil\"></i> {{ 'Action.Edit' | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showApprove\" (click)=\"approve()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!approveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-up\"></i> {{ approveText | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showDisapprove\" (click)=\"disapprove()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!disapproveEnabled\">\r\n <i class=\"fa-solid fa-thumbs-down\"></i> {{ disapproveText | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showDelete\" (click)=\"delete()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!deleteEnabled\">\r\n <i class=\"fa-solid fa-trash\"></i> {{ 'Action.Delete' | translate }}\r\n </button></li>\r\n <li><button *ngIf=\"showRestore\" (click)=\"restore()\" type=\"button\" class=\"dropdown-item\" [disabled]=\"!restoreEnabled\">\r\n <i class=\"fa-solid fa-clock-rotate-left\"></i> {{ 'Action.Restore' | translate }}\r\n </button></li>\r\n <ng-content></ng-content>\r\n</ul>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4692
4714
  }
4693
4715
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekGridToolbarBar, decorators: [{
4694
4716
  type: Component,
@@ -4768,7 +4790,7 @@ class ZekListToolbar {
4768
4790
  this.onExport.emit(1);
4769
4791
  }
4770
4792
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekListToolbar, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
4771
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekListToolbar, isStandalone: true, selector: "zek-list-toolbar", inputs: { isFiltered: "isFiltered", showCreate: "showCreate", showFilter: "showFilter", showPrint: "showPrint", showSum: "showSum", showExport: "showExport" }, outputs: { onRefresh: "onRefresh", onFilter: "onFilter", onPrint: "onPrint", onSum: "onSum", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Toolbar\">\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Action group\">\r\n <button *ngIf=\"showCreate\" type=\"button\" class=\"btn btn-primary\" (click)=\"create()\"><i class=\"fa-solid fa-plus\"></i> {{ 'Action.Create' | translate }}</button>\r\n </div>\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Filter group\">\r\n <button *ngIf=\"showFilter\" type=\"button\" class=\"btn btn-secondary\" [ngClass]=\"{'btn-outline-success': isFiltered, 'btn-secondary': !isFiltered }\" (click)=\"filter()\" data-bs-toggle0=\"modal\" data-bs-backdrop0=\"static\" data-bs-target0=\"#filter-modal\"><i class=\"fa-solid fa-filter\"></i> {{ 'Action.Filter' | translate }}</button>\r\n <button type=\"button\" class=\"btn btn-secondary\" title=\"{{ 'Action.Refresh' | translate }}\" (click)=\"refresh()\"><i class=\"fa-solid fa-rotate\"></i></button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showSum\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Sum group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"sum()\"><i class=\"fa-solid fa-sigma\"></i> {{ 'Action.Sum' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btn-group-export\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btn-group-export\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
4793
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekListToolbar, isStandalone: true, selector: "zek-list-toolbar", inputs: { isFiltered: "isFiltered", showCreate: "showCreate", showFilter: "showFilter", showPrint: "showPrint", showSum: "showSum", showExport: "showExport" }, outputs: { onRefresh: "onRefresh", onFilter: "onFilter", onPrint: "onPrint", onSum: "onSum", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Toolbar\">\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Action group\">\r\n <button *ngIf=\"showCreate\" type=\"button\" class=\"btn btn-primary\" (click)=\"create()\"><i class=\"fa-solid fa-plus\"></i> {{ 'Action.Create' | translate }}</button>\r\n </div>\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Filter group\">\r\n <button *ngIf=\"showFilter\" type=\"button\" class=\"btn btn-secondary\" [ngClass]=\"{'btn-outline-success': isFiltered, 'btn-secondary': !isFiltered }\" (click)=\"filter()\" data-bs-toggle0=\"modal\" data-bs-backdrop0=\"static\" data-bs-target0=\"#filter-modal\"><i class=\"fa-solid fa-filter\"></i> {{ 'Action.Filter' | translate }}</button>\r\n <button type=\"button\" class=\"btn btn-secondary\" title=\"{{ 'Action.Refresh' | translate }}\" (click)=\"refresh()\"><i class=\"fa-solid fa-rotate\"></i></button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showSum\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Sum group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"sum()\"><i class=\"fa-solid fa-sigma\"></i> {{ 'Action.Sum' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btn-group-export\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btn-group-export\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
4772
4794
  }
4773
4795
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekListToolbar, decorators: [{
4774
4796
  type: Component,
@@ -4869,7 +4891,7 @@ class ZekLoading {
4869
4891
  <div *ngIf="show" id="loading" class="progress">
4870
4892
  <div class="progress-bar progress-bar-striped progress-bar-animated bg-danger" role="progressbar" style="width:100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div>
4871
4893
  </div>
4872
- `, isInline: true, styles: ["#loading{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:fixed;inset:0;z-index:10000;background-color:#00000080;outline:0;height:3px}#loading>.progress-bar{-webkit-transition:none!important;transition:none!important}\n"], dependencies: [{ kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
4894
+ `, isInline: true, styles: ["#loading{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:fixed;inset:0;z-index:10000;background-color:#00000080;outline:0;height:3px}#loading>.progress-bar{-webkit-transition:none!important;transition:none!important}\n"], dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
4873
4895
  }
4874
4896
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekLoading, decorators: [{
4875
4897
  type: Component,
@@ -4914,7 +4936,7 @@ class NumericDirective {
4914
4936
  return this._digits;
4915
4937
  }
4916
4938
  set digits(v) {
4917
- let tmp = MathHelper.clamp(Convert.toNumber(v) || 0, 0, 29);
4939
+ const tmp = MathHelper.clamp(Convert.toNumber(v) || 0, 0, 29);
4918
4940
  this._digits = tmp;
4919
4941
  }
4920
4942
  get negative() {
@@ -4928,7 +4950,7 @@ class NumericDirective {
4928
4950
  return String(value).match(new RegExp(/^-?\d+$/));
4929
4951
  }
4930
4952
  else {
4931
- var regExpString = "^-?\\s*((\\d+(\\.\\d{0," +
4953
+ const regExpString = "^-?\\s*((\\d+(\\.\\d{0," +
4932
4954
  this._digits +
4933
4955
  "})?)|((\\d*(\\.\\d{1," +
4934
4956
  this._digits +
@@ -4941,7 +4963,7 @@ class NumericDirective {
4941
4963
  return String(value).match(new RegExp(/^\d+$/));
4942
4964
  }
4943
4965
  else {
4944
- var regExpString = "^\\s*((\\d+(\\.\\d{0," +
4966
+ const regExpString = "^\\s*((\\d+(\\.\\d{0," +
4945
4967
  this._digits +
4946
4968
  "})?)|((\\d*(\\.\\d{1," +
4947
4969
  this._digits +
@@ -4951,8 +4973,8 @@ class NumericDirective {
4951
4973
  }
4952
4974
  run(oldValue) {
4953
4975
  setTimeout(() => {
4954
- let currentValue = this.el.nativeElement.value;
4955
- let allowNegative = this._negative;
4976
+ const currentValue = this.el.nativeElement.value;
4977
+ const allowNegative = this._negative;
4956
4978
  if (allowNegative) {
4957
4979
  if (!["", "-"].includes(currentValue) &&
4958
4980
  !this.checkAllowNegative(currentValue)) {
@@ -5009,7 +5031,7 @@ class ZekPageTitle {
5009
5031
  this._isEditPage = Convert.toBooleanProperty(v);
5010
5032
  }
5011
5033
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekPageTitle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5012
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekPageTitle, isStandalone: true, selector: "zek-page-title", inputs: { icon: "icon", title: "title", isEditPage: "isEditPage", modelId: "modelId" }, ngImport: i0, template: "<h1 class=\"h2 pt-3 pb-2 mb-3 border-bottom\">\r\n <i *ngIf=\"icon\" class=\"{{icon}}\"></i><ng-container *ngIf=\"icon\">&nbsp;</ng-container>{{ title }}&nbsp;<ng-container *ngIf=\"isEditPage\">\r\n <small class=\"text-muted\" *ngIf=\"modelId && modelId > 0 else elseBlock\">[<ng-container>{{ 'Action.Edit' | translate }}</ng-container>]</small>\r\n <ng-template #elseBlock>\r\n <small class=\"text-muted\">[<ng-container>{{ 'Action.Create' | translate }}</ng-container>]</small>\r\n </ng-template>\r\n </ng-container>\r\n</h1>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
5034
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekPageTitle, isStandalone: true, selector: "zek-page-title", inputs: { icon: "icon", title: "title", isEditPage: "isEditPage", modelId: "modelId" }, ngImport: i0, template: "<h1 class=\"h2 pt-3 pb-2 mb-3 border-bottom\">\r\n <i *ngIf=\"icon\" class=\"{{icon}}\"></i><ng-container *ngIf=\"icon\">&nbsp;</ng-container>{{ title }}&nbsp;<ng-container *ngIf=\"isEditPage\">\r\n <small class=\"text-muted\" *ngIf=\"modelId && modelId > 0 else elseBlock\">[<ng-container>{{ 'Action.Edit' | translate }}</ng-container>]</small>\r\n <ng-template #elseBlock>\r\n <small class=\"text-muted\">[<ng-container>{{ 'Action.Create' | translate }}</ng-container>]</small>\r\n </ng-template>\r\n </ng-container>\r\n</h1>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
5013
5035
  }
5014
5036
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekPageTitle, decorators: [{
5015
5037
  type: Component,
@@ -5051,7 +5073,7 @@ class ZekPager {
5051
5073
  this.onPageSizeChange.emit(pageSize);
5052
5074
  }
5053
5075
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekPager, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5054
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekPager, isStandalone: true, selector: "zek-pager", inputs: { pager: "pager", showPageSize: "showPageSize", pagerAlign: "pagerAlign" }, outputs: { onPageChange: "onPageChange", onPageSizeChange: "onPageSizeChange" }, ngImport: i0, template: "<div *ngIf=\"pager\" class=\"row\">\r\n <div [ngClass]=\"{ 'col-sm-8': showPageSize, 'col-sm-12': !showPageSize}\">\r\n <nav aria-label=\"Pagination\">\r\n <ul class=\"pagination\" [ngClass]=\"{ 'justify-content-center': pagerAlign === 'center', 'justify-content-end': pagerAlign === 'end'}\">\r\n <li [class.disabled]=\"pager.isFirstPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(1)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"pager.isFirstPage ? 'true' : null\" aria-label=\"First\">\r\n <span aria-hidden=\"true\">&laquo;&laquo;</span>\r\n </a>\r\n </li>\r\n <li [class.disabled]=\"!pager.hasPreviousPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(pager.pageNumber - 1)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"!pager.hasPreviousPage ? 'true' : null\" aria-label=\"Previous\">\r\n <span aria-hidden=\"true\">&laquo;</span>\r\n </a>\r\n </li>\r\n <li *ngFor=\"let page of pager.pages\" [class.active]=\"page === pager.pageNumber\" class=\"page-item\"><a class=\"page-link\" (click)=\"setPage(page)\" href=\"javascript:void(0)\">{{page}}</a></li>\r\n <li [class.disabled]=\"!pager.hasNextPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(pager.pageNumber + 1)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"!pager.hasNextPage ? 'true' : null\" aria-label=\"Next\">\r\n <span aria-hidden=\"true\">&raquo;</span>\r\n </a>\r\n </li>\r\n <li [class.disabled]=\"pager.isLastPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(pager.pageCount)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"pager.isLastPage ? 'true' : null\" aria-label=\"Last\">\r\n <span aria-hidden=\"true\">&raquo;&raquo;</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n </div>\r\n <div class=\"col-sm-4\" *ngIf=\"showPageSize\">\r\n <div class=\"float-end\">\r\n <div class=\"dropdown\">\r\n <button class=\"btn btn-secondary dropdown-toggle\" type=\"button\" id=\"page-size-button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n {{pager.pageSize}}\r\n </button>\r\n <ul class=\"dropdown-menu dropdown-menu-end\" aria-labelledby=\"page-size-button\">\r\n <li><h6 class=\"dropdown-header\">{{ 'Pagination.PageSize' | translate }}</h6></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 10\" (click)=\"setPageSize(10)\" href=\"javascript:void(0)\">10</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 20\" (click)=\"setPageSize(20)\" href=\"javascript:void(0)\">20</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 50\" (click)=\"setPageSize(50)\" href=\"javascript:void(0)\">50</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 100\" (click)=\"setPageSize(100)\" href=\"javascript:void(0)\">100</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 500\" (click)=\"setPageSize(500)\" href=\"javascript:void(0)\">500</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"float-end mt-2\">\r\n {{pager.firstItemOnPage}} - {{pager.lastItemOnPage}} of {{pager.totalItemCount}} &nbsp;\r\n </div>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
5076
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekPager, isStandalone: true, selector: "zek-pager", inputs: { pager: "pager", showPageSize: "showPageSize", pagerAlign: "pagerAlign" }, outputs: { onPageChange: "onPageChange", onPageSizeChange: "onPageSizeChange" }, ngImport: i0, template: "<div *ngIf=\"pager\" class=\"row\">\r\n <div [ngClass]=\"{ 'col-sm-8': showPageSize, 'col-sm-12': !showPageSize}\">\r\n <nav aria-label=\"Pagination\">\r\n <ul class=\"pagination\" [ngClass]=\"{ 'justify-content-center': pagerAlign === 'center', 'justify-content-end': pagerAlign === 'end'}\">\r\n <li [class.disabled]=\"pager.isFirstPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(1)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"pager.isFirstPage ? 'true' : null\" aria-label=\"First\">\r\n <span aria-hidden=\"true\">&laquo;&laquo;</span>\r\n </a>\r\n </li>\r\n <li [class.disabled]=\"!pager.hasPreviousPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(pager.pageNumber - 1)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"!pager.hasPreviousPage ? 'true' : null\" aria-label=\"Previous\">\r\n <span aria-hidden=\"true\">&laquo;</span>\r\n </a>\r\n </li>\r\n <li *ngFor=\"let page of pager.pages\" [class.active]=\"page === pager.pageNumber\" class=\"page-item\"><a class=\"page-link\" (click)=\"setPage(page)\" href=\"javascript:void(0)\">{{page}}</a></li>\r\n <li [class.disabled]=\"!pager.hasNextPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(pager.pageNumber + 1)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"!pager.hasNextPage ? 'true' : null\" aria-label=\"Next\">\r\n <span aria-hidden=\"true\">&raquo;</span>\r\n </a>\r\n </li>\r\n <li [class.disabled]=\"pager.isLastPage\" class=\"page-item\">\r\n <a class=\"page-link\" (click)=\"setPage(pager.pageCount)\" href=\"javascript:void(0)\" [attr.aria-disabled]=\"pager.isLastPage ? 'true' : null\" aria-label=\"Last\">\r\n <span aria-hidden=\"true\">&raquo;&raquo;</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n </div>\r\n <div class=\"col-sm-4\" *ngIf=\"showPageSize\">\r\n <div class=\"float-end\">\r\n <div class=\"dropdown\">\r\n <button class=\"btn btn-secondary dropdown-toggle\" type=\"button\" id=\"page-size-button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n {{pager.pageSize}}\r\n </button>\r\n <ul class=\"dropdown-menu dropdown-menu-end\" aria-labelledby=\"page-size-button\">\r\n <li><h6 class=\"dropdown-header\">{{ 'Pagination.PageSize' | translate }}</h6></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 10\" (click)=\"setPageSize(10)\" href=\"javascript:void(0)\">10</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 20\" (click)=\"setPageSize(20)\" href=\"javascript:void(0)\">20</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 50\" (click)=\"setPageSize(50)\" href=\"javascript:void(0)\">50</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 100\" (click)=\"setPageSize(100)\" href=\"javascript:void(0)\">100</a></li>\r\n <li><a class=\"dropdown-item\" [class.active]=\"pager.pageSize === 500\" (click)=\"setPageSize(500)\" href=\"javascript:void(0)\">500</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div class=\"float-end mt-2\">\r\n {{pager.firstItemOnPage}} - {{pager.lastItemOnPage}} of {{pager.totalItemCount}} &nbsp;\r\n </div>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
5055
5077
  }
5056
5078
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekPager, decorators: [{
5057
5079
  type: Component,
@@ -5070,7 +5092,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
5070
5092
 
5071
5093
  class ZekFieldValidator {
5072
5094
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekFieldValidator, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5073
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekFieldValidator, isStandalone: true, selector: "zek-field-validator, [zek-field-validator]", inputs: { field: "field" }, host: { properties: { "class": "\"invalid-tooltip\"" } }, ngImport: i0, template: "<ng-container *ngIf=\"field && field.invalid && field.errors && (field.dirty || field.touched || field.formDirective?.submitted)\">\r\n <ng-container *ngIf=\"field.errors.required\">{{ 'Validation.Required' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.minlength\">{{ 'Validation.MinLengthFormat' | translate:{ value: field.errors.minlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.maxlength\">{{ 'Validation.MaxLengthFormat' | translate:{ value: field.errors.maxlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.min\">{{ 'Validation.Min' | translate:{ value: field.errors.min.min } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.max\">{{ 'Validation.Max' | translate:{ value: field.errors.min.max } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.email\">{{ 'Validation.Pattern' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.pattern\">{{ 'Validation.Pattern' | translate }}</ng-container><!-- {{ field.errors.pattern.requiredPattern }} -->\r\n <ng-container *ngIf=\"field.errors.mismatch\">{{ 'Validation.Mismatch' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.server\">{{field.errors.server}}</ng-container>\r\n</ng-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
5095
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekFieldValidator, isStandalone: true, selector: "zek-field-validator, [zek-field-validator]", inputs: { field: "field" }, host: { properties: { "class": "\"invalid-tooltip\"" } }, ngImport: i0, template: "<ng-container *ngIf=\"field && field.invalid && field.errors && (field.dirty || field.touched || field.formDirective?.submitted)\">\r\n <ng-container *ngIf=\"field.errors.required\">{{ 'Validation.Required' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.minlength\">{{ 'Validation.MinLengthFormat' | translate:{ value: field.errors.minlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.maxlength\">{{ 'Validation.MaxLengthFormat' | translate:{ value: field.errors.maxlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.min\">{{ 'Validation.Min' | translate:{ value: field.errors.min.min } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.max\">{{ 'Validation.Max' | translate:{ value: field.errors.min.max } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.email\">{{ 'Validation.Pattern' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.pattern\">{{ 'Validation.Pattern' | translate }}</ng-container><!-- {{ field.errors.pattern.requiredPattern }} -->\r\n <ng-container *ngIf=\"field.errors.mismatch\">{{ 'Validation.Mismatch' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.server\">{{field.errors.server}}</ng-container>\r\n</ng-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
5074
5096
  }
5075
5097
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekFieldValidator, decorators: [{
5076
5098
  type: Component,
@@ -5101,7 +5123,7 @@ class ZekPassword {
5101
5123
  this._type = this._type === 'password' ? 'text' : 'password';
5102
5124
  }
5103
5125
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekPassword, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5104
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekPassword, isStandalone: true, selector: "zek-password", inputs: { name: "name", required: "required", minlength: "minlength", maxlength: "maxlength", model: "model" }, outputs: { onChange: "modelChange" }, ngImport: i0, template: "<div class=\"input-group has-validation\">\r\n <input type=\"{{type}}\" class=\"form-control\" name=\"{{name}}\" id=\"{{name}}\" [attr.aria-describedby]=\"name+'-show'\"\r\n [required]=\"required\" [minlength]=\"minlength\" [maxlength]=\"maxlength\"\r\n [ngModel]=\"model\" (ngModelChange)=\"onChange.emit($event)\"\r\n #password=\"ngModel\"\r\n >\r\n <button class=\"btn btn-outline-secondary\" type=\"button\" id=\"{{name}}-show\" (click)=\"showHide()\"><i class=\"fa-solid fa-eye\"></i></button>\r\n <div zek-field-validator [field]=\"password\"></div>\r\n</div>", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$5.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1$5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ZekFieldValidator, selector: "zek-field-validator, [zek-field-validator]", inputs: ["field"] }] }); }
5126
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekPassword, isStandalone: true, selector: "zek-password", inputs: { name: "name", required: "required", minlength: "minlength", maxlength: "maxlength", model: "model" }, outputs: { onChange: "modelChange" }, ngImport: i0, template: "<div class=\"input-group has-validation\">\r\n <input type=\"{{type}}\" class=\"form-control\" name=\"{{name}}\" id=\"{{name}}\" [attr.aria-describedby]=\"name+'-show'\"\r\n [required]=\"required\" [minlength]=\"minlength\" [maxlength]=\"maxlength\"\r\n [ngModel]=\"model\" (ngModelChange)=\"onChange.emit($event)\"\r\n #password=\"ngModel\"\r\n >\r\n <button class=\"btn btn-outline-secondary\" type=\"button\" id=\"{{name}}-show\" (click)=\"showHide()\"><i class=\"fa-solid fa-eye\"></i></button>\r\n <div zek-field-validator [field]=\"password\"></div>\r\n</div>", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$4.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1$4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ZekFieldValidator, selector: "zek-field-validator, [zek-field-validator]", inputs: ["field"] }] }); }
5105
5127
  }
5106
5128
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekPassword, decorators: [{
5107
5129
  type: Component,
@@ -5139,7 +5161,7 @@ class ZekProgress {
5139
5161
  return this._value;
5140
5162
  }
5141
5163
  set value(v) {
5142
- let tmp = clamp(Convert.toNumber(v) || 0);
5164
+ const tmp = clamp(Convert.toNumber(v) || 0);
5143
5165
  if (this._value !== tmp) {
5144
5166
  this._value = tmp;
5145
5167
  }
@@ -5181,7 +5203,7 @@ class ZekProgress {
5181
5203
  return this._height;
5182
5204
  }
5183
5205
  set height(v) {
5184
- let tmp = Convert.toNumber(v) || 0;
5206
+ const tmp = Convert.toNumber(v) || 0;
5185
5207
  this._height = tmp > 0 ? tmp : null;
5186
5208
  }
5187
5209
  get background() {
@@ -5191,7 +5213,7 @@ class ZekProgress {
5191
5213
  this._background = v;
5192
5214
  }
5193
5215
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekProgress, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5194
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekProgress, isStandalone: true, selector: "zek-progress", inputs: { value: "value", showValue: "showValue", showTitle: "showTitle", striped: "striped", animated: "animated", label: "label", height: "height", background: "background" }, ngImport: i0, template: "<div class=\"progress\" [style.height.px]=\"height\" [title]=\"_title\" >\r\n <div class=\"progress-bar bg-{{background}}\" role=\"progressbar\"\r\n [class.progress-bar-striped]=\"striped || animated\"\r\n [class.progress-bar-animated]=\"animated\"\r\n [style.width.%]=\"value\"\r\n [attr.aria-valuenow]=\"value\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\">\r\n <ng-container *ngIf=\"showValue\">{{value}}%</ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
5216
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekProgress, isStandalone: true, selector: "zek-progress", inputs: { value: "value", showValue: "showValue", showTitle: "showTitle", striped: "striped", animated: "animated", label: "label", height: "height", background: "background" }, ngImport: i0, template: "<div class=\"progress\" [style.height.px]=\"height\" [title]=\"_title\" >\r\n <div class=\"progress-bar bg-{{background}}\" role=\"progressbar\"\r\n [class.progress-bar-striped]=\"striped || animated\"\r\n [class.progress-bar-animated]=\"animated\"\r\n [style.width.%]=\"value\"\r\n [attr.aria-valuenow]=\"value\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\">\r\n <ng-container *ngIf=\"showValue\">{{value}}%</ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
5195
5217
  }
5196
5218
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekProgress, decorators: [{
5197
5219
  type: Component,
@@ -5241,7 +5263,7 @@ class ZekRadio extends CoreUiComponent {
5241
5263
  return this._inline;
5242
5264
  }
5243
5265
  set inline(v) {
5244
- let newValue = Convert.toBooleanProperty(v);
5266
+ const newValue = Convert.toBooleanProperty(v);
5245
5267
  if (this._inline !== newValue) {
5246
5268
  this._inline = newValue;
5247
5269
  this.onInlineChanged();
@@ -5374,8 +5396,8 @@ urlParams, url, nonce) {
5374
5396
  onLoaded(grecaptcha);
5375
5397
  };
5376
5398
  const baseUrl = url || "https://www.google.com/recaptcha/api.js";
5377
- let params = urlParams || '';
5378
- let src = `${baseUrl}?render=${siteKey}&onload=recaptchaloaded${params}`;
5399
+ const params = urlParams || '';
5400
+ const src = `${baseUrl}?render=${siteKey}&onload=recaptchaloaded${params}`;
5379
5401
  HtmlHelper.loadScript(src, nonce, true, true);
5380
5402
  }
5381
5403
  const loader = { loadScript };
@@ -5619,13 +5641,13 @@ class ZekSelectMultiple extends CoreUiComponent {
5619
5641
  let notUnique = [];
5620
5642
  if (this.valueField) {
5621
5643
  for (const currentValue of value) {
5622
- let items = ArrayHelper.filterByKey(currentValue, this.valueField, this._data);
5644
+ const items = ArrayHelper.filterByKey(currentValue, this.valueField, this._data);
5623
5645
  notUnique = notUnique.concat(items);
5624
5646
  }
5625
5647
  }
5626
5648
  else {
5627
5649
  for (const currentValue of value) {
5628
- let items = this._data.filter(x => x === currentValue);
5650
+ const items = this._data.filter(x => x === currentValue);
5629
5651
  notUnique = notUnique.concat(items);
5630
5652
  }
5631
5653
  }
@@ -5652,7 +5674,7 @@ class ZekSelectMultiple extends CoreUiComponent {
5652
5674
  if (!v.checked) {
5653
5675
  v.checked = true;
5654
5676
  if (this.multiple) {
5655
- let tmp = [];
5677
+ const tmp = [];
5656
5678
  for (const item of this.normalized) {
5657
5679
  if (item.checked) {
5658
5680
  tmp.push(item.key);
@@ -5680,7 +5702,7 @@ class ZekSelectMultiple extends CoreUiComponent {
5680
5702
  }
5681
5703
  }
5682
5704
  _initText() {
5683
- let field = this.checkedTextField || this.textField || '';
5705
+ const field = this.checkedTextField || this.textField || '';
5684
5706
  if (field) {
5685
5707
  this._text = this._selected.filter(x => x !== undefined && x !== null).map(x => x[field]).join(', ');
5686
5708
  }
@@ -5689,7 +5711,7 @@ class ZekSelectMultiple extends CoreUiComponent {
5689
5711
  }
5690
5712
  }
5691
5713
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSelectMultiple, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
5692
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSelectMultiple, isStandalone: true, selector: "zek-select,[zek-select]", inputs: { id: "id", valueField: "valueField", textField: "textField", checkedTextField: "checkedTextField", css: "css", placeholder: "placeholder", label: "label", multiple: "multiple", data: "data" }, providers: [ZEK_SELECT_MULTIPLE_CONTROL_VALUE_ACCESSOR], usesInheritance: true, ngImport: i0, template: "<div class=\"dropdown\" id=\"dropdown-{{id}}\">\r\n <button class=\"btn btn-{{css}} dropdown-toggle\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n {{label}} <ng-container *ngIf=\"!_text\">{{placeholder}}</ng-container> {{_text}}\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <ng-container *ngIf=\"normalized\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" *ngFor=\"let item of normalized\" (click)=\"toggleChecked(item)\">\r\n <span *ngIf=\"item.checked\"><i class=\"fa-regular fa-square-check\"></i></span>\r\n <span *ngIf=\"!item.checked\"><i class=\"fa-regular fa-square\"></i></span>\r\n {{item.value}}\r\n </a></li>\r\n </ng-container>\r\n </ul>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }] }); }
5714
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSelectMultiple, isStandalone: true, selector: "zek-select,[zek-select]", inputs: { id: "id", valueField: "valueField", textField: "textField", checkedTextField: "checkedTextField", css: "css", placeholder: "placeholder", label: "label", multiple: "multiple", data: "data" }, providers: [ZEK_SELECT_MULTIPLE_CONTROL_VALUE_ACCESSOR], usesInheritance: true, ngImport: i0, template: "<div class=\"dropdown\" id=\"dropdown-{{id}}\">\r\n <button class=\"btn btn-{{css}} dropdown-toggle\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n {{label}} <ng-container *ngIf=\"!_text\">{{placeholder}}</ng-container> {{_text}}\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <ng-container *ngIf=\"normalized\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" *ngFor=\"let item of normalized\" (click)=\"toggleChecked(item)\">\r\n <span *ngIf=\"item.checked\"><i class=\"fa-regular fa-square-check\"></i></span>\r\n <span *ngIf=\"!item.checked\"><i class=\"fa-regular fa-square\"></i></span>\r\n {{item.value}}\r\n </a></li>\r\n </ng-container>\r\n </ul>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }] }); }
5693
5715
  }
5694
5716
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSelectMultiple, decorators: [{
5695
5717
  type: Component,
@@ -5782,7 +5804,7 @@ class ZekSelect2 {
5782
5804
  }
5783
5805
  filterData() {
5784
5806
  if (this.filter && this.filter !== '') {
5785
- let searchString = this.filter;
5807
+ const searchString = this.filter;
5786
5808
  if (this.textField === undefined || this.textField === null) {
5787
5809
  this.filteredData = this.data.filter(item => item.toLowerCase().indexOf(searchString.toLowerCase()) !== -1);
5788
5810
  }
@@ -5861,7 +5883,7 @@ class ZekSelect2 {
5861
5883
  }
5862
5884
  }
5863
5885
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSelect2, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5864
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSelect2, isStandalone: true, selector: "zek-select2,[zek-select2]", inputs: { data: "data", textField: "textField", valueField: "valueField", placeholder: "placeholder", value: "value" }, outputs: { selectedItemChange: "selectedItemChange", valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"input-group position-relative\" id=\"dropdown-menu-container-{{elementId}}\">\r\n <input type=\"text\" class=\"form-control\" placeholder=\"{{placeholder}}\" data-bs-toggle=\"dropdown\" id=\"input-{{elementId}}\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange($event)\" (focus)=\"onFocus($event)\" (blur)=\"inputUnfocused()\">\r\n <button class=\"btn btn-outline-secondary dropdown-toggle\" id=\"btn-{{elementId}}\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\"></button>\r\n <ul class=\"dropdown-menu dropdown-menu-start w-100 scrollable-menu\" id=\"dropdown-menu-{{elementId}}\">\r\n <ng-container *ngIf=\"textField\">\r\n <li *ngFor=\"let entry of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(entry)\" class=\"dropdown-item\">{{entry[textField]}}</a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!textField\">\r\n <li *ngFor=\"let entry of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(entry)\" class=\"dropdown-item\">{{textField}}</a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>\r\n<!-- <kendo-autocomplete\r\n [data]=\"data\"\r\n [filterable]=\"true\"\r\n (valueChange)=\"valueChange($event)\"\r\n (filterChange)=\"filterChange($event)\"\r\n (open)=\"open()\"\r\n (close)=\"close()\"\r\n (focus)=\"focus()\"\r\n (blur)=\"blur()\">\r\n</kendo-autocomplete> -->", styles: [".scrollable-menu{max-height:400px;overflow-y:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
5886
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSelect2, isStandalone: true, selector: "zek-select2,[zek-select2]", inputs: { data: "data", textField: "textField", valueField: "valueField", placeholder: "placeholder", value: "value" }, outputs: { selectedItemChange: "selectedItemChange", valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"input-group position-relative\" id=\"dropdown-menu-container-{{elementId}}\">\r\n <input type=\"text\" class=\"form-control\" placeholder=\"{{placeholder}}\" data-bs-toggle=\"dropdown\" id=\"input-{{elementId}}\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange($event)\" (focus)=\"onFocus($event)\" (blur)=\"inputUnfocused()\">\r\n <button class=\"btn btn-outline-secondary dropdown-toggle\" id=\"btn-{{elementId}}\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\"></button>\r\n <ul class=\"dropdown-menu dropdown-menu-start w-100 scrollable-menu\" id=\"dropdown-menu-{{elementId}}\">\r\n <ng-container *ngIf=\"textField\">\r\n <li *ngFor=\"let entry of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(entry)\" class=\"dropdown-item\">{{entry[textField]}}</a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!textField\">\r\n <li *ngFor=\"let entry of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(entry)\" class=\"dropdown-item\">{{textField}}</a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>\r\n<!-- <kendo-autocomplete\r\n [data]=\"data\"\r\n [filterable]=\"true\"\r\n (valueChange)=\"valueChange($event)\"\r\n (filterChange)=\"filterChange($event)\"\r\n (open)=\"open()\"\r\n (close)=\"close()\"\r\n (focus)=\"focus()\"\r\n (blur)=\"blur()\">\r\n</kendo-autocomplete> -->", styles: [".scrollable-menu{max-height:400px;overflow-y:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
5865
5887
  }
5866
5888
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSelect2, decorators: [{
5867
5889
  type: Component,
@@ -5939,7 +5961,7 @@ class ZekSelect2Multiple {
5939
5961
  }
5940
5962
  filterData() {
5941
5963
  if (this.filter && this.filter !== '') {
5942
- let searchString = this.filter;
5964
+ const searchString = this.filter;
5943
5965
  if (typeof this.textField === 'undefined' || this.textField === null) {
5944
5966
  this.filteredData = this.data.filter(item => item.toLowerCase().indexOf(searchString.toLowerCase()) !== -1);
5945
5967
  }
@@ -5960,7 +5982,7 @@ class ZekSelect2Multiple {
5960
5982
  this.setText();
5961
5983
  }
5962
5984
  setText() {
5963
- let fieldName = this.selectedField || this.textField;
5985
+ const fieldName = this.selectedField || this.textField;
5964
5986
  if (StringHelper.isNullOrEmpty((fieldName))) {
5965
5987
  this.text = this._selectedItems.join(', ');
5966
5988
  }
@@ -5989,7 +6011,7 @@ class ZekSelect2Multiple {
5989
6011
  this.valueChange.emit(v);
5990
6012
  }
5991
6013
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSelect2Multiple, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5992
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSelect2Multiple, isStandalone: true, selector: "zek-select2-multiple,[zek-select2-multiple]", inputs: { data: "data", textField: "textField", selectedField: "selectedField", valueField: "valueField", placeholder: "placeholder", value: "value" }, outputs: { selectedItemChange: "selectedItemChange", valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"input-group position-relative\" id=\"dropdown-menu-container-{{elementId}}\">\r\n <input type=\"text\" class=\"form-control\" placeholder=\"{{placeholder}}\" data-bs-toggle=\"dropdown\" data-bs-auto-close=\"outside\" id=\"input-{{elementId}}\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange($event)\" (focus)=\"onFocus($event)\" (blur)=\"inputUnfocused()\">\r\n <button class=\"btn btn-outline-secondary dropdown-toggle\" id=\"btn-{{elementId}}\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\"></button>\r\n <ul class=\"dropdown-menu dropdown-menu-start w-100 scrollable-menu\" id=\"dropdown-menu-{{elementId}}\">\r\n <ng-container *ngIf=\"textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"fa-regular fa-square-check\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"fa-regular fa-square\"></i></span>\r\n {{item[textField]}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"fa-regular fa-square-check\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"fa-regular fa-square\"></i></span>\r\n {{item}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
6014
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSelect2Multiple, isStandalone: true, selector: "zek-select2-multiple,[zek-select2-multiple]", inputs: { data: "data", textField: "textField", selectedField: "selectedField", valueField: "valueField", placeholder: "placeholder", value: "value" }, outputs: { selectedItemChange: "selectedItemChange", valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"input-group position-relative\" id=\"dropdown-menu-container-{{elementId}}\">\r\n <input type=\"text\" class=\"form-control\" placeholder=\"{{placeholder}}\" data-bs-toggle=\"dropdown\" data-bs-auto-close=\"outside\" id=\"input-{{elementId}}\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange($event)\" (focus)=\"onFocus($event)\" (blur)=\"inputUnfocused()\">\r\n <button class=\"btn btn-outline-secondary dropdown-toggle\" id=\"btn-{{elementId}}\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\"></button>\r\n <ul class=\"dropdown-menu dropdown-menu-start w-100 scrollable-menu\" id=\"dropdown-menu-{{elementId}}\">\r\n <ng-container *ngIf=\"textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"fa-regular fa-square-check\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"fa-regular fa-square\"></i></span>\r\n {{item[textField]}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"fa-regular fa-square-check\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"fa-regular fa-square\"></i></span>\r\n {{item}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
5993
6015
  }
5994
6016
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSelect2Multiple, decorators: [{
5995
6017
  type: Component,
@@ -6185,7 +6207,7 @@ class ZekSortButtonGroup {
6185
6207
  this.onChange.emit();
6186
6208
  }
6187
6209
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSortButtonGroup, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6188
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSortButtonGroup, isStandalone: true, selector: "zek-sort-button-group", inputs: { sort: "sort", asc: "asc", sortFields: "sortFields" }, outputs: { sortChange: "sortChange", ascChange: "ascChange", onChange: "onChange" }, ngImport: i0, template: "<div class=\"btn-group me-3\" role=\"group\" aria-label=\"Sort group\">\r\n <button type=\"button\" class=\"btn btn-light\" (click)=\"ascDescClick()\">\r\n <span *ngIf=\"asc === undefined || asc === null\"><i class=\"fa-solid fa-sort fa-fw\"></i></span>\r\n <span *ngIf=\"asc === true\"><i class=\"fa-solid fa-arrow-down-z-a fa-fw\"></i></span>\r\n <span *ngIf=\"asc === false\"><i class=\"fa-solid fa-arrow-up-z-a fa-fw\"></i></span>\r\n </button>\r\n <button *ngIf=\"sortFields && sortFields.length > 0\" class=\"btn btn-light dropdown-toggle\" type=\"button\" id=\"{{elementName}}\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <ng-container *ngIf=\"sortField; else elseFieldBlock\">{{ sortField.value | translate }}</ng-container>\r\n <ng-template #elseFieldBlock>{{ 'Action.Sort' | translate }}</ng-template>\r\n </button>\r\n <ul *ngIf=\"sortFields && sortFields.length > 0\" class=\"dropdown-menu\" [attr.aria-labelledby]=\"elementName\">\r\n <li><a *ngFor=\"let item of sortFields\" class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"sortFieldClick(item)\">{{ (item.value) | translate }}</a></li>\r\n </ul>\r\n</div><i class=\"\"></i>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
6210
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekSortButtonGroup, isStandalone: true, selector: "zek-sort-button-group", inputs: { sort: "sort", asc: "asc", sortFields: "sortFields" }, outputs: { sortChange: "sortChange", ascChange: "ascChange", onChange: "onChange" }, ngImport: i0, template: "<div class=\"btn-group me-3\" role=\"group\" aria-label=\"Sort group\">\r\n <button type=\"button\" class=\"btn btn-light\" (click)=\"ascDescClick()\">\r\n <span *ngIf=\"asc === undefined || asc === null\"><i class=\"fa-solid fa-sort fa-fw\"></i></span>\r\n <span *ngIf=\"asc === true\"><i class=\"fa-solid fa-arrow-down-z-a fa-fw\"></i></span>\r\n <span *ngIf=\"asc === false\"><i class=\"fa-solid fa-arrow-up-z-a fa-fw\"></i></span>\r\n </button>\r\n <button *ngIf=\"sortFields && sortFields.length > 0\" class=\"btn btn-light dropdown-toggle\" type=\"button\" id=\"{{elementName}}\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <ng-container *ngIf=\"sortField; else elseFieldBlock\">{{ sortField.value | translate }}</ng-container>\r\n <ng-template #elseFieldBlock>{{ 'Action.Sort' | translate }}</ng-template>\r\n </button>\r\n <ul *ngIf=\"sortFields && sortFields.length > 0\" class=\"dropdown-menu\" [attr.aria-labelledby]=\"elementName\">\r\n <li><a *ngFor=\"let item of sortFields\" class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"sortFieldClick(item)\">{{ (item.value) | translate }}</a></li>\r\n </ul>\r\n</div><i class=\"\"></i>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
6189
6211
  }
6190
6212
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekSortButtonGroup, decorators: [{
6191
6213
  type: Component,
@@ -6231,7 +6253,7 @@ class TimePipe {
6231
6253
  isValidDate(d) {
6232
6254
  return d instanceof Date && !isNaN(d.getTime());
6233
6255
  }
6234
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TimePipe, deps: [{ token: i1$3.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
6256
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TimePipe, deps: [{ token: i1$2.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
6235
6257
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: TimePipe, name: "time" }); }
6236
6258
  }
6237
6259
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TimePipe, decorators: [{
@@ -6239,7 +6261,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
6239
6261
  args: [{
6240
6262
  name: 'time'
6241
6263
  }]
6242
- }], ctorParameters: () => [{ type: i1$3.DatePipe }] });
6264
+ }], ctorParameters: () => [{ type: i1$2.DatePipe }] });
6243
6265
 
6244
6266
  class TimeModule {
6245
6267
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -6382,7 +6404,7 @@ class ZekLocalToUtcPipe {
6382
6404
  const date = DateHelper.localToUtc(DateHelper.toDate(value));
6383
6405
  return this._datePipe.transform(date, format);
6384
6406
  }
6385
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekLocalToUtcPipe, deps: [{ token: i1$3.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
6407
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekLocalToUtcPipe, deps: [{ token: i1$2.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
6386
6408
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ZekLocalToUtcPipe, name: "localToUtc" }); }
6387
6409
  }
6388
6410
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekLocalToUtcPipe, decorators: [{
@@ -6391,7 +6413,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
6391
6413
  name: 'localToUtc',
6392
6414
  pure: true
6393
6415
  }]
6394
- }], ctorParameters: () => [{ type: i1$3.DatePipe }] });
6416
+ }], ctorParameters: () => [{ type: i1$2.DatePipe }] });
6395
6417
  class ZekLocalToUtcModule {
6396
6418
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekLocalToUtcModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6397
6419
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ZekLocalToUtcModule, declarations: [ZekLocalToUtcPipe], exports: [ZekLocalToUtcPipe] }); }
@@ -6416,7 +6438,7 @@ class ZekUtcToLocalPipe {
6416
6438
  const date = DateHelper.utcToLocal(DateHelper.toDate(value));
6417
6439
  return this._datePipe.transform(date, format);
6418
6440
  }
6419
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekUtcToLocalPipe, deps: [{ token: i1$3.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
6441
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekUtcToLocalPipe, deps: [{ token: i1$2.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
6420
6442
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ZekUtcToLocalPipe, name: "utcToLocal" }); }
6421
6443
  }
6422
6444
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekUtcToLocalPipe, decorators: [{
@@ -6425,7 +6447,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
6425
6447
  name: 'utcToLocal',
6426
6448
  pure: true
6427
6449
  }]
6428
- }], ctorParameters: () => [{ type: i1$3.DatePipe }] });
6450
+ }], ctorParameters: () => [{ type: i1$2.DatePipe }] });
6429
6451
  class ZekUtcToLocalModule {
6430
6452
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekUtcToLocalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6431
6453
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: ZekUtcToLocalModule, declarations: [ZekUtcToLocalPipe], exports: [ZekUtcToLocalPipe] }); }
@@ -6525,8 +6547,8 @@ function rangeValidator(range) {
6525
6547
  return null; // don't validate empty values to allow optional controls
6526
6548
  }
6527
6549
  const value = parseFloat(control.value);
6528
- let max = range[0];
6529
- let min = range[1];
6550
+ const max = range[0];
6551
+ const min = range[1];
6530
6552
  if (!isNaN(value) && (value < min || value > max)) {
6531
6553
  return { 'range': { 'min': min, 'max': max, 'actual': control.value } };
6532
6554
  }
@@ -6541,7 +6563,7 @@ function matchValidator(input) {
6541
6563
  const targetCtrl = control.get(input);
6542
6564
  let targetValue;
6543
6565
  if (!targetCtrl) {
6544
- let el = document.getElementById(input);
6566
+ const el = document.getElementById(input);
6545
6567
  if (el) {
6546
6568
  targetValue = el.value;
6547
6569
  }
@@ -6716,7 +6738,7 @@ class ZekWizard {
6716
6738
  v = this.steps;
6717
6739
  if (this._step !== v) {
6718
6740
  this._step = v;
6719
- let found = this.stepsArray.find(x => x.step === this._step);
6741
+ const found = this.stepsArray.find(x => x.step === this._step);
6720
6742
  if (found) {
6721
6743
  this.progress = found.progress;
6722
6744
  }
@@ -6736,7 +6758,7 @@ class ZekWizard {
6736
6758
  this.step++;
6737
6759
  }
6738
6760
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekWizard, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6739
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekWizard, isStandalone: true, selector: "zek-wizard", inputs: { steps: "steps", step: "step" }, ngImport: i0, template: "<div class=\"position-relative m-4\">\r\n <div class=\"progress\" style=\"height: 1px;\">\r\n <div class=\"progress-bar\" role=\"progressbar\" [style.width.%]=\"progress\" [attr.aria-valuenow]=\"progress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\r\n </div>\r\n <!-- left: 33%!important -->\r\n <!-- [style.left.%]=\"item.progress\" -->\r\n <button *ngFor=\"let item of stepsArray\" [attr.style]=\"('width:2rem; height:2rem; left:' + item.progress + '%!important') | safe:'style'\" type=\"button\" class=\"position-absolute top-0 translate-middle btn btn-sm btn-primary rounded-pill\">{{ item.step }}</button>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: ZekSafePipe, name: "safe" }] }); }
6761
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekWizard, isStandalone: true, selector: "zek-wizard", inputs: { steps: "steps", step: "step" }, ngImport: i0, template: "<div class=\"position-relative m-4\">\r\n <div class=\"progress\" style=\"height: 1px;\">\r\n <div class=\"progress-bar\" role=\"progressbar\" [style.width.%]=\"progress\" [attr.aria-valuenow]=\"progress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\r\n </div>\r\n <!-- left: 33%!important -->\r\n <!-- [style.left.%]=\"item.progress\" -->\r\n <button *ngFor=\"let item of stepsArray\" [attr.style]=\"('width:2rem; height:2rem; left:' + item.progress + '%!important') | safe:'style'\" type=\"button\" class=\"position-absolute top-0 translate-middle btn btn-sm btn-primary rounded-pill\">{{ item.step }}</button>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: ZekSafePipe, name: "safe" }] }); }
6740
6762
  }
6741
6763
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekWizard, decorators: [{
6742
6764
  type: Component,
@@ -6749,7 +6771,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
6749
6771
 
6750
6772
  class ZekWizard2 extends ZekWizard {
6751
6773
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekWizard2, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6752
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekWizard2, isStandalone: true, selector: "zek-wizard2", usesInheritance: true, ngImport: i0, template: "<div class=\"m-2\">\r\n <button *ngFor=\"let item of stepsArray\"\r\n [class.btn-outline-secondary]=\"item.step >= steps\"\r\n [class.btn-primary]=\"item.step < steps\"\r\n type=\"button\"\r\n class=\"btn btn-sm mr me-2\"></button>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
6774
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: ZekWizard2, isStandalone: true, selector: "zek-wizard2", usesInheritance: true, ngImport: i0, template: "<div class=\"m-2\">\r\n <button *ngFor=\"let item of stepsArray\"\r\n [class.btn-outline-secondary]=\"item.step >= steps\"\r\n [class.btn-primary]=\"item.step < steps\"\r\n type=\"button\"\r\n class=\"btn btn-sm mr me-2\"></button>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
6753
6775
  }
6754
6776
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ZekWizard2, decorators: [{
6755
6777
  type: Component,
@@ -6790,5 +6812,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
6790
6812
  * Generated bundle index. Do not edit.
6791
6813
  */
6792
6814
 
6793
- export { API_BASE_URL, AgePipe, Alert, AlertService, ArrayHelper, AuthGuardService, AuthService, Base64Helper, BaseAlert, BaseComponent, BaseService, BitwiseHelper, BootstrapHelper, Color, ComponentType, Convert, CoreComponent, CoreUiComponent, CrudService, CssHelper, CustomHttpParamEncoder, DATE_FORMAT, DateAgoPipe, DateHelper, DateValueAccessor, DatepickerModule, EditBase, EditBaseComponent, EditComponent, EditFormComponent, ErrorHelper, FileBase, FileBytes, FileHelper, FileString, FilterBase, FilterHelper, GOOGLE_CLIENT_ID, Gender, HtmlHelper, HttpErrorHandler, JwtHelper, KeyPair, KeyPairChecked, KeyPairEx, KeyPairRequired, LANGUAGE, ListBase, ListBaseComponent, MATCH_VALIDATOR, MatchValidator, MathHelper, Month, NumericDirective, ObjectHelper, OverlapHelper, PagedList, Pager, PagerHelper, PeriodRelation, PrintType, RANGE_VALIDATOR, RECAPTCHA_SITE_KEY, RandomHelper, RangeValidator, ReCaptchaService, RecaptchaModule, StorageHelper, StringHelper, TimeHelper, TimeModule, TimePipe, TimerService, TmpHelper, Toast, Tree, UrlHelper, ValidEventArgs, ValidationHelper, Validators, ValidatorsModule, WebApiClient, WebApiModule, ZekAlert, ZekApproveModal, ZekAutoComplete, ZekButtonBrowse, ZekButtonBrowseModalBase, ZekButtonBrowseModalToolbar, ZekButtonBrowseModule, ZekCallbackPipe, ZekCard, ZekDeleteModal, ZekDisapproveModal, ZekEditToolbar, ZekFieldValidator, ZekFileSizePipe, ZekFileViewer, ZekFilterModal, ZekGoogleLoginButton, ZekGoogleLoginModule, ZekGridToolbar, ZekGridToolbarBar, ZekListToolbar, ZekLoading, ZekLoadingModule, ZekLocalToUtcModule, ZekLocalToUtcPipe, ZekModal, ZekModalModule, ZekPageTitle, ZekPager, ZekPassword, ZekProgress, ZekRadio, ZekReadOnlyDirective, ZekRestoreModal, ZekSafePipe, ZekSelect2, ZekSelect2Multiple, ZekSelectMultiple, ZekSort, ZekSortButtonGroup, ZekSubmitModal, ZekSumModal, ZekToast, ZekTooltip, ZekUtcToLocalModule, ZekUtcToLocalPipe, ZekValidation, ZekWizard, ZekWizard2, firstBy, handler, matchValidator, nullValidator, rangeValidator };
6815
+ export { API_BASE_URL, AgePipe, Alert, AlertService, ArrayHelper, AuthGuardService, AuthService, Base64Helper, BaseAlert, BaseComponent, BaseService, BitwiseHelper, BootstrapHelper, Color, ComponentType, Convert, CoreComponent, CoreUiComponent, CrudService, CssHelper, CustomHttpParamEncoder, DATE_FORMAT, DateHelper, DateValueAccessor, DatepickerModule, EditBase, EditBaseComponent, EditComponent, EditFormComponent, ErrorHelper, ExcelHelper, FileBase, FileBytes, FileHelper, FileString, FilterBase, FilterHelper, GOOGLE_CLIENT_ID, Gender, HtmlHelper, HttpErrorHandler, JwtHelper, KeyPair, KeyPairChecked, KeyPairEx, KeyPairRequired, LANGUAGE, ListBase, ListBaseComponent, MATCH_VALIDATOR, MatchValidator, MathHelper, Month, NumericDirective, ObjectHelper, OverlapHelper, PagedList, Pager, PagerHelper, PeriodRelation, PrintType, RANGE_VALIDATOR, RECAPTCHA_SITE_KEY, RandomHelper, RangeValidator, ReCaptchaService, RecaptchaModule, StorageHelper, StringHelper, TimeHelper, TimeModule, TimePipe, TimerService, TmpHelper, Toast, Tree, UrlHelper, ValidEventArgs, ValidationHelper, Validators, ValidatorsModule, WebApiClient, WebApiModule, ZekAlert, ZekApproveModal, ZekAutoComplete, ZekButtonBrowse, ZekButtonBrowseModalBase, ZekButtonBrowseModalToolbar, ZekButtonBrowseModule, ZekCallbackPipe, ZekCard, ZekDateAgoPipe, ZekDeleteModal, ZekDisapproveModal, ZekEditToolbar, ZekFieldValidator, ZekFileSizePipe, ZekFileViewer, ZekFilterModal, ZekGoogleLoginButton, ZekGoogleLoginModule, ZekGridToolbar, ZekGridToolbarBar, ZekListToolbar, ZekLoading, ZekLoadingModule, ZekLocalToUtcModule, ZekLocalToUtcPipe, ZekModal, ZekModalModule, ZekPageTitle, ZekPager, ZekPassword, ZekProgress, ZekRadio, ZekReadOnlyDirective, ZekRestoreModal, ZekSafePipe, ZekSelect2, ZekSelect2Multiple, ZekSelectMultiple, ZekSort, ZekSortButtonGroup, ZekSubmitModal, ZekSumModal, ZekToast, ZekTooltip, ZekUtcToLocalModule, ZekUtcToLocalPipe, ZekValidation, ZekWizard, ZekWizard2, canActivate, firstBy, handler, matchValidator, nullValidator, rangeValidator };
6794
6816
  //# sourceMappingURL=zek.mjs.map