ecabs-components 1.0.70 → 1.0.73

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 (34) hide show
  1. package/esm2022/lib/base/directives/date-mask.directive.mjs +22 -6
  2. package/esm2022/lib/base/directives/time-mask.directive.mjs +61 -0
  3. package/esm2022/lib/base/directives/time-mask.directive.module.mjs +18 -0
  4. package/esm2022/lib/base/models/select.models.mjs +2 -0
  5. package/esm2022/lib/base/utils/object-utils.mjs +27 -0
  6. package/esm2022/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.component.mjs +2 -2
  7. package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.component.mjs +4 -4
  8. package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.mjs +9 -10
  9. package/esm2022/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.component.mjs +3 -3
  10. package/esm2022/lib/ecabs-increment/ecabs-increment.component.mjs +2 -2
  11. package/esm2022/lib/ecabs-picker-header/ecabs-picker-header.component.mjs +2 -2
  12. package/esm2022/lib/ecabs-radio-button-list/ecabs-radio-button-list.component.mjs +1 -1
  13. package/esm2022/lib/ecabs-select/ecabs-select.component.mjs +1 -1
  14. package/esm2022/lib/ecabs-timepicker/componets/ecabs-time-list-panel/ecabs-time-list-panel.component.mjs +6 -2
  15. package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.component.mjs +42 -83
  16. package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.module.mjs +17 -4
  17. package/esm2022/public-api.mjs +5 -2
  18. package/fesm2022/ecabs-components.mjs +148 -121
  19. package/fesm2022/ecabs-components.mjs.map +1 -1
  20. package/lib/base/directives/date-mask.directive.d.ts +3 -0
  21. package/lib/base/directives/time-mask.directive.d.ts +15 -0
  22. package/lib/base/directives/time-mask.directive.module.d.ts +8 -0
  23. package/lib/base/models/select.models.d.ts +5 -0
  24. package/lib/base/utils/object-utils.d.ts +6 -0
  25. package/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.d.ts +14 -14
  26. package/lib/ecabs-radio-button-list/ecabs-radio-button-list.component.d.ts +2 -5
  27. package/lib/ecabs-select/ecabs-select.component.d.ts +2 -4
  28. package/lib/ecabs-timepicker/ecabs-timepicker.component.d.ts +7 -4
  29. package/lib/ecabs-timepicker/ecabs-timepicker.module.d.ts +3 -1
  30. package/package.json +1 -1
  31. package/public-api.d.ts +4 -1
  32. package/src/assets/styles/tailwind/index.scss +1 -1
  33. package/esm2022/lib/ecabs-date-time-range-picker/time-range.directive.mjs +0 -62
  34. package/lib/ecabs-date-time-range-picker/time-range.directive.d.ts +0 -15
@@ -1,4 +1,4 @@
1
- import { Directive, Input } from '@angular/core';
1
+ import { Directive, HostListener, Input, } from '@angular/core';
2
2
  import * as textMask from 'vanilla-text-mask/dist/vanillaTextMask';
3
3
  import { createAutoCorrectedDatePipe } from '../consts/date-mask.consts';
4
4
  import * as i0 from "@angular/core";
@@ -49,14 +49,22 @@ export class MaskDateDirective {
49
49
  /\d/,
50
50
  /\d/,
51
51
  ]; // dd/mm/yyyy, hh:mm:ss
52
+ config;
52
53
  constructor(element) {
53
54
  this.element = element;
54
55
  }
56
+ onNgModelChange(value) {
57
+ this.config.showMask = true;
58
+ if (!this.containsNumber(value.toString())) {
59
+ this.config.showMask = false;
60
+ this.maskedInputController.textMaskInputElement.update('');
61
+ }
62
+ }
55
63
  ngOnInit() {
56
- this.maskedInputController = textMask.maskInput({
64
+ this.config = {
57
65
  inputElement: this.element.nativeElement,
58
66
  guide: true,
59
- showMask: false,
67
+ showMask: true,
60
68
  pipe: this.isDateTimeMask
61
69
  ? this.considerSeconds
62
70
  ? createAutoCorrectedDatePipe('dd/mm/yyyy, HH:MM:SS')
@@ -68,13 +76,18 @@ export class MaskDateDirective {
68
76
  ? this.maskDateTimeWithSeconds
69
77
  : this.maskDateTime
70
78
  : this.mask,
71
- });
79
+ };
80
+ this.maskedInputController = textMask.maskInput(this.config);
72
81
  }
73
82
  ngOnDestroy() {
74
83
  this.maskedInputController?.destroy();
75
84
  }
85
+ containsNumber(value) {
86
+ // Check if the string contains any digit between 0 and 9
87
+ return /\d/.test(value);
88
+ }
76
89
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
77
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: MaskDateDirective, selector: "[appMaskDate]", inputs: { isDateTimeMask: "isDateTimeMask", considerSeconds: "considerSeconds" }, ngImport: i0 });
90
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: MaskDateDirective, selector: "[appMaskDate]", inputs: { isDateTimeMask: "isDateTimeMask", considerSeconds: "considerSeconds" }, host: { listeners: { "ngModelChange": "onNgModelChange($event)" } }, ngImport: i0 });
78
91
  }
79
92
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskDateDirective, decorators: [{
80
93
  type: Directive,
@@ -85,5 +98,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
85
98
  type: Input
86
99
  }], considerSeconds: [{
87
100
  type: Input
101
+ }], onNgModelChange: [{
102
+ type: HostListener,
103
+ args: ['ngModelChange', ['$event']]
88
104
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1tYXNrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9iYXNlL2RpcmVjdGl2ZXMvZGF0ZS1tYXNrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxLQUFLLFFBQVEsTUFBTSx3Q0FBd0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFLekUsTUFBTSxPQUFPLGlCQUFpQjtJQWdEQztJQS9DcEIsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUN2QixlQUFlLEdBQUcsS0FBSyxDQUFDO0lBRWpDLHFCQUFxQixDQUFDO0lBQ3RCLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsYUFBYTtJQUNoRixZQUFZLEdBQUc7UUFDYixJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtRQUNKLElBQUk7UUFDSixJQUFJO1FBQ0osR0FBRztRQUNILEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtLQUNMLENBQUMsQ0FBQyxvQkFBb0I7SUFDdkIsdUJBQXVCLEdBQUc7UUFDeEIsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7S0FDTCxDQUFDLENBQUMsdUJBQXVCO0lBRTFCLFlBQTZCLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7SUFBRyxDQUFDO0lBRXBELFFBQVE7UUFDTixJQUFJLENBQUMscUJBQXFCLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQztZQUM5QyxZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhO1lBQ3hDLEtBQUssRUFBRSxJQUFJO1lBQ1gsUUFBUSxFQUFFLEtBQUs7WUFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLGNBQWM7Z0JBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZTtvQkFDcEIsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLHNCQUFzQixDQUFDO29CQUNyRCxDQUFDLENBQUMsMkJBQTJCLENBQUMsbUJBQW1CLENBQUM7Z0JBQ3BELENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxZQUFZLENBQUM7WUFDN0MsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixJQUFJLEVBQUUsSUFBSSxDQUFDLGNBQWM7Z0JBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZTtvQkFDcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyx1QkFBdUI7b0JBQzlCLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWTtnQkFDckIsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMscUJBQXFCLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDeEMsQ0FBQzt3R0F2RVUsaUJBQWlCOzRGQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7aUJBQzFCO2lHQUVVLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIHRleHRNYXNrIGZyb20gJ3ZhbmlsbGEtdGV4dC1tYXNrL2Rpc3QvdmFuaWxsYVRleHRNYXNrJztcclxuaW1wb3J0IHsgY3JlYXRlQXV0b0NvcnJlY3RlZERhdGVQaXBlIH0gZnJvbSAnLi4vY29uc3RzL2RhdGUtbWFzay5jb25zdHMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYXBwTWFza0RhdGVdJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hc2tEYXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGlzRGF0ZVRpbWVNYXNrID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY29uc2lkZXJTZWNvbmRzID0gZmFsc2U7XHJcblxyXG4gIG1hc2tlZElucHV0Q29udHJvbGxlcjtcclxuICBtYXNrID0gWy9cXGQvLCAvXFxkLywgJy8nLCAvXFxkLywgL1xcZC8sICcvJywgL1xcZC8sIC9cXGQvLCAvXFxkLywgL1xcZC9dOyAvLyBkZC9tbS95eXl5XHJcbiAgbWFza0RhdGVUaW1lID0gW1xyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICcvJyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAnLycsXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICcsJyxcclxuICAgICcgJyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAnOicsXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gIF07IC8vIGRkL21tL3l5eXksIGhoOm1tXHJcbiAgbWFza0RhdGVUaW1lV2l0aFNlY29uZHMgPSBbXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgJy8nLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICcvJyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgJywnLFxyXG4gICAgJyAnLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICc6JyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAnOicsXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gIF07IC8vIGRkL21tL3l5eXksIGhoOm1tOnNzXHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudDogRWxlbWVudFJlZikge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1hc2tlZElucHV0Q29udHJvbGxlciA9IHRleHRNYXNrLm1hc2tJbnB1dCh7XHJcbiAgICAgIGlucHV0RWxlbWVudDogdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgIGd1aWRlOiB0cnVlLFxyXG4gICAgICBzaG93TWFzazogZmFsc2UsXHJcbiAgICAgIHBpcGU6IHRoaXMuaXNEYXRlVGltZU1hc2tcclxuICAgICAgICA/IHRoaXMuY29uc2lkZXJTZWNvbmRzXHJcbiAgICAgICAgICA/IGNyZWF0ZUF1dG9Db3JyZWN0ZWREYXRlUGlwZSgnZGQvbW0veXl5eSwgSEg6TU06U1MnKVxyXG4gICAgICAgICAgOiBjcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVBpcGUoJ2RkL21tL3l5eXksIEhIOk1NJylcclxuICAgICAgICA6IGNyZWF0ZUF1dG9Db3JyZWN0ZWREYXRlUGlwZSgnZGQvbW0veXl5eScpLFxyXG4gICAgICBrZWVwQ2hhclBvc2l0aW9uczogdHJ1ZSxcclxuICAgICAgbWFzazogdGhpcy5pc0RhdGVUaW1lTWFza1xyXG4gICAgICAgID8gdGhpcy5jb25zaWRlclNlY29uZHNcclxuICAgICAgICAgID8gdGhpcy5tYXNrRGF0ZVRpbWVXaXRoU2Vjb25kc1xyXG4gICAgICAgICAgOiB0aGlzLm1hc2tEYXRlVGltZVxyXG4gICAgICAgIDogdGhpcy5tYXNrLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMubWFza2VkSW5wdXRDb250cm9sbGVyPy5kZXN0cm95KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1tYXNrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9iYXNlL2RpcmVjdGl2ZXMvZGF0ZS1tYXNrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFLLFFBQVEsTUFBTSx3Q0FBd0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFLekUsTUFBTSxPQUFPLGlCQUFpQjtJQWlEQztJQWhEcEIsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUN2QixlQUFlLEdBQUcsS0FBSyxDQUFDO0lBRWpDLHFCQUFxQixDQUFDO0lBQ3RCLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsYUFBYTtJQUNoRixZQUFZLEdBQUc7UUFDYixJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtRQUNKLElBQUk7UUFDSixJQUFJO1FBQ0osR0FBRztRQUNILEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtLQUNMLENBQUMsQ0FBQyxvQkFBb0I7SUFDdkIsdUJBQXVCLEdBQUc7UUFDeEIsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7S0FDTCxDQUFDLENBQUMsdUJBQXVCO0lBQzFCLE1BQU0sQ0FBTTtJQUVaLFlBQTZCLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7SUFBRyxDQUFDO0lBRVQsZUFBZSxDQUFDLEtBQUs7UUFDOUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBRTVCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFO1lBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUM3QixJQUFJLENBQUMscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1osWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYTtZQUN4QyxLQUFLLEVBQUUsSUFBSTtZQUNYLFFBQVEsRUFBRSxJQUFJO1lBQ2QsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWU7b0JBQ3BCLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDckQsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLG1CQUFtQixDQUFDO2dCQUNwRCxDQUFDLENBQUMsMkJBQTJCLENBQUMsWUFBWSxDQUFDO1lBQzdDLGlCQUFpQixFQUFFLElBQUk7WUFDdkIsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWU7b0JBQ3BCLENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCO29CQUM5QixDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVk7Z0JBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSTtTQUNkLENBQUM7UUFFRixJQUFJLENBQUMscUJBQXFCLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMscUJBQXFCLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVPLGNBQWMsQ0FBQyxLQUFhO1FBQ2xDLHlEQUF5RDtRQUN6RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQzt3R0F4RlUsaUJBQWlCOzRGQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7aUJBQzFCO2lHQUVVLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFpRHFDLGVBQWU7c0JBQXpELFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgdGV4dE1hc2sgZnJvbSAndmFuaWxsYS10ZXh0LW1hc2svZGlzdC92YW5pbGxhVGV4dE1hc2snO1xyXG5pbXBvcnQgeyBjcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVBpcGUgfSBmcm9tICcuLi9jb25zdHMvZGF0ZS1tYXNrLmNvbnN0cyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1thcHBNYXNrRGF0ZV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFza0RhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgaXNEYXRlVGltZU1hc2sgPSBmYWxzZTtcclxuICBASW5wdXQoKSBjb25zaWRlclNlY29uZHMgPSBmYWxzZTtcclxuXHJcbiAgbWFza2VkSW5wdXRDb250cm9sbGVyO1xyXG4gIG1hc2sgPSBbL1xcZC8sIC9cXGQvLCAnLycsIC9cXGQvLCAvXFxkLywgJy8nLCAvXFxkLywgL1xcZC8sIC9cXGQvLCAvXFxkL107IC8vIGRkL21tL3l5eXlcclxuICBtYXNrRGF0ZVRpbWUgPSBbXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgJy8nLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICcvJyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgJywnLFxyXG4gICAgJyAnLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICc6JyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgXTsgLy8gZGQvbW0veXl5eSwgaGg6bW1cclxuICBtYXNrRGF0ZVRpbWVXaXRoU2Vjb25kcyA9IFtcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAnLycsXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgJy8nLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAnLCcsXHJcbiAgICAnICcsXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgJzonLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICc6JyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgXTsgLy8gZGQvbW0veXl5eSwgaGg6bW06c3NcclxuICBjb25maWc6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlbGVtZW50OiBFbGVtZW50UmVmKSB7fVxyXG5cclxuICBASG9zdExpc3RlbmVyKCduZ01vZGVsQ2hhbmdlJywgWyckZXZlbnQnXSkgb25OZ01vZGVsQ2hhbmdlKHZhbHVlKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbmZpZy5zaG93TWFzayA9IHRydWU7XHJcblxyXG4gICAgaWYgKCF0aGlzLmNvbnRhaW5zTnVtYmVyKHZhbHVlLnRvU3RyaW5nKCkpKSB7XHJcbiAgICAgIHRoaXMuY29uZmlnLnNob3dNYXNrID0gZmFsc2U7XHJcbiAgICAgIHRoaXMubWFza2VkSW5wdXRDb250cm9sbGVyLnRleHRNYXNrSW5wdXRFbGVtZW50LnVwZGF0ZSgnJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29uZmlnID0ge1xyXG4gICAgICBpbnB1dEVsZW1lbnQ6IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LFxyXG4gICAgICBndWlkZTogdHJ1ZSxcclxuICAgICAgc2hvd01hc2s6IHRydWUsXHJcbiAgICAgIHBpcGU6IHRoaXMuaXNEYXRlVGltZU1hc2tcclxuICAgICAgICA/IHRoaXMuY29uc2lkZXJTZWNvbmRzXHJcbiAgICAgICAgICA/IGNyZWF0ZUF1dG9Db3JyZWN0ZWREYXRlUGlwZSgnZGQvbW0veXl5eSwgSEg6TU06U1MnKVxyXG4gICAgICAgICAgOiBjcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVBpcGUoJ2RkL21tL3l5eXksIEhIOk1NJylcclxuICAgICAgICA6IGNyZWF0ZUF1dG9Db3JyZWN0ZWREYXRlUGlwZSgnZGQvbW0veXl5eScpLFxyXG4gICAgICBrZWVwQ2hhclBvc2l0aW9uczogdHJ1ZSxcclxuICAgICAgbWFzazogdGhpcy5pc0RhdGVUaW1lTWFza1xyXG4gICAgICAgID8gdGhpcy5jb25zaWRlclNlY29uZHNcclxuICAgICAgICAgID8gdGhpcy5tYXNrRGF0ZVRpbWVXaXRoU2Vjb25kc1xyXG4gICAgICAgICAgOiB0aGlzLm1hc2tEYXRlVGltZVxyXG4gICAgICAgIDogdGhpcy5tYXNrLFxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLm1hc2tlZElucHV0Q29udHJvbGxlciA9IHRleHRNYXNrLm1hc2tJbnB1dCh0aGlzLmNvbmZpZyk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMubWFza2VkSW5wdXRDb250cm9sbGVyPy5kZXN0cm95KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbnRhaW5zTnVtYmVyKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIC8vIENoZWNrIGlmIHRoZSBzdHJpbmcgY29udGFpbnMgYW55IGRpZ2l0IGJldHdlZW4gMCBhbmQgOVxyXG4gICAgcmV0dXJuIC9cXGQvLnRlc3QodmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,61 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as textMask from 'vanilla-text-mask/dist/vanillaTextMask';
3
+ import * as i0 from "@angular/core";
4
+ export class MaskTimeDirective {
5
+ element;
6
+ timeRange = false;
7
+ all;
8
+ maskedInputController;
9
+ maskTimeRange = [
10
+ /\d/,
11
+ /\d/,
12
+ ':',
13
+ /\d/,
14
+ /\d/,
15
+ ' ',
16
+ '-',
17
+ ' ',
18
+ /\d/,
19
+ /\d/,
20
+ ':',
21
+ /\d/,
22
+ /\d/,
23
+ ];
24
+ maskTime = [/\d/, /\d/, ':', /\d/, /\d/];
25
+ constructor(element) {
26
+ this.element = element;
27
+ }
28
+ ngOnInit() {
29
+ const all = this.all;
30
+ const timeRange = this.timeRange;
31
+ this.maskedInputController = textMask.maskInput({
32
+ inputElement: this.element.nativeElement,
33
+ guide: true,
34
+ showMask: false,
35
+ keepCharPositions: true,
36
+ mask: timeRange ? this.maskTimeRange : this.maskTime,
37
+ pipe: function (conformedValue) {
38
+ if (conformedValue === (timeRange ? '__:__ - __:__' : '__:__')) {
39
+ return all;
40
+ }
41
+ return conformedValue;
42
+ },
43
+ });
44
+ }
45
+ ngOnDestroy() {
46
+ this.maskedInputController.destroy();
47
+ }
48
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
49
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: MaskTimeDirective, selector: "[appTime]", inputs: { timeRange: "timeRange", all: "all" }, ngImport: i0 });
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirective, decorators: [{
52
+ type: Directive,
53
+ args: [{
54
+ selector: '[appTime]',
55
+ }]
56
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { timeRange: [{
57
+ type: Input
58
+ }], all: [{
59
+ type: Input
60
+ }] } });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1tYXNrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9iYXNlL2RpcmVjdGl2ZXMvdGltZS1tYXNrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxLQUFLLFFBQVEsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFLbkUsTUFBTSxPQUFPLGlCQUFpQjtJQXNCQztJQXJCcEIsU0FBUyxHQUFhLEtBQUssQ0FBQztJQUM1QixHQUFHLENBQVM7SUFFckIscUJBQXFCLENBQUM7SUFDdEIsYUFBYSxHQUFHO1FBQ2QsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsSUFBSTtRQUNKLElBQUk7UUFDSixHQUFHO1FBQ0gsR0FBRztRQUNILEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtRQUNKLEdBQUc7UUFDSCxJQUFJO1FBQ0osSUFBSTtLQUNMLENBQUM7SUFDRixRQUFRLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFekMsWUFBNkIsT0FBbUI7UUFBbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtJQUFHLENBQUM7SUFFcEQsUUFBUTtRQUNOLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDckIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNqQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQztZQUM5QyxZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhO1lBQ3hDLEtBQUssRUFBRSxJQUFJO1lBQ1gsUUFBUSxFQUFFLEtBQUs7WUFDZixpQkFBaUIsRUFBRSxJQUFJO1lBQ3ZCLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ3BELElBQUksRUFBRSxVQUFVLGNBQWM7Z0JBQzVCLElBQUksY0FBYyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUM5RCxPQUFPLEdBQUcsQ0FBQztpQkFDWjtnQkFFRCxPQUFPLGNBQWMsQ0FBQztZQUN4QixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMscUJBQXFCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdkMsQ0FBQzt3R0E3Q1UsaUJBQWlCOzRGQUFqQixpQkFBaUI7OzRGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCO2lHQUVVLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgdGV4dE1hc2sgZnJvbSAndmFuaWxsYS10ZXh0LW1hc2svZGlzdC92YW5pbGxhVGV4dE1hc2snO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYXBwVGltZV0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFza1RpbWVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgdGltZVJhbmdlPzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGFsbDogc3RyaW5nO1xyXG5cclxuICBtYXNrZWRJbnB1dENvbnRyb2xsZXI7XHJcbiAgbWFza1RpbWVSYW5nZSA9IFtcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgICAnOicsXHJcbiAgICAvXFxkLyxcclxuICAgIC9cXGQvLFxyXG4gICAgJyAnLFxyXG4gICAgJy0nLFxyXG4gICAgJyAnLFxyXG4gICAgL1xcZC8sXHJcbiAgICAvXFxkLyxcclxuICAgICc6JyxcclxuICAgIC9cXGQvLFxyXG4gICAgL1xcZC8sXHJcbiAgXTtcclxuICBtYXNrVGltZSA9IFsvXFxkLywgL1xcZC8sICc6JywgL1xcZC8sIC9cXGQvXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlbGVtZW50OiBFbGVtZW50UmVmKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGFsbCA9IHRoaXMuYWxsO1xyXG4gICAgY29uc3QgdGltZVJhbmdlID0gdGhpcy50aW1lUmFuZ2U7XHJcbiAgICB0aGlzLm1hc2tlZElucHV0Q29udHJvbGxlciA9IHRleHRNYXNrLm1hc2tJbnB1dCh7XHJcbiAgICAgIGlucHV0RWxlbWVudDogdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgIGd1aWRlOiB0cnVlLFxyXG4gICAgICBzaG93TWFzazogZmFsc2UsXHJcbiAgICAgIGtlZXBDaGFyUG9zaXRpb25zOiB0cnVlLFxyXG4gICAgICBtYXNrOiB0aW1lUmFuZ2UgPyB0aGlzLm1hc2tUaW1lUmFuZ2UgOiB0aGlzLm1hc2tUaW1lLFxyXG4gICAgICBwaXBlOiBmdW5jdGlvbiAoY29uZm9ybWVkVmFsdWUpIHtcclxuICAgICAgICBpZiAoY29uZm9ybWVkVmFsdWUgPT09ICh0aW1lUmFuZ2UgPyAnX186X18gLSBfXzpfXycgOiAnX186X18nKSkge1xyXG4gICAgICAgICAgcmV0dXJuIGFsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBjb25mb3JtZWRWYWx1ZTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLm1hc2tlZElucHV0Q29udHJvbGxlci5kZXN0cm95KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { MaskTimeDirective } from './time-mask.directive';
4
+ import * as i0 from "@angular/core";
5
+ export class MaskTimeDirectiveModule {
6
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, declarations: [MaskTimeDirective], imports: [CommonModule], exports: [MaskTimeDirective] });
8
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, imports: [CommonModule] });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaskTimeDirectiveModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ imports: [CommonModule],
14
+ declarations: [MaskTimeDirective],
15
+ exports: [MaskTimeDirective],
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1tYXNrLmRpcmVjdGl2ZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lY2Ficy1jb21wb25lbnRzL3NyYy9saWIvYmFzZS9kaXJlY3RpdmVzL3RpbWUtbWFzay5kaXJlY3RpdmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQU8xRCxNQUFNLE9BQU8sdUJBQXVCO3dHQUF2Qix1QkFBdUI7eUdBQXZCLHVCQUF1QixpQkFIbkIsaUJBQWlCLGFBRHRCLFlBQVksYUFFWixpQkFBaUI7eUdBRWhCLHVCQUF1QixZQUp4QixZQUFZOzs0RkFJWCx1QkFBdUI7a0JBTG5DLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWFza1RpbWVEaXJlY3RpdmUgfSBmcm9tICcuL3RpbWUtbWFzay5kaXJlY3RpdmUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICBkZWNsYXJhdGlvbnM6IFtNYXNrVGltZURpcmVjdGl2ZV0sXHJcbiAgZXhwb3J0czogW01hc2tUaW1lRGlyZWN0aXZlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hc2tUaW1lRGlyZWN0aXZlTW9kdWxlIHt9XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Lm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9iYXNlL21vZGVscy9zZWxlY3QubW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNlbGVjdE9wdGlvbiB7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICB2YWx1ZTogYW55O1xyXG4gIGRpc2FibGVkPzogYm9vbGVhbjtcclxufVxyXG4iXX0=
@@ -0,0 +1,27 @@
1
+ const getValue = (obj, sortParams) => {
2
+ const value = obj[sortParams.property];
3
+ switch (sortParams.dataType) {
4
+ case 'date': {
5
+ const date = new Date(value);
6
+ return isNaN(date.getTime()) ? 0 : date.getTime();
7
+ }
8
+ case 'string':
9
+ return value.toLowerCase();
10
+ case 'number':
11
+ return typeof value === 'number' ? value : parseFloat(value);
12
+ default:
13
+ return value;
14
+ }
15
+ };
16
+ export const sortGeneric = (objX, objY, sortParams) => {
17
+ const valueX = getValue(objX, sortParams);
18
+ const valueY = getValue(objY, sortParams);
19
+ if (valueX > valueY) {
20
+ return sortParams.isDescending ? -1 : 1;
21
+ }
22
+ else if (valueX < valueY) {
23
+ return sortParams.isDescending ? 1 : -1;
24
+ }
25
+ return 0;
26
+ };
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2Jhc2UvdXRpbHMvb2JqZWN0LXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sUUFBUSxHQUFHLENBQUksR0FBTSxFQUFFLFVBQXFCLEVBQU8sRUFBRTtJQUN6RCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXZDLFFBQVEsVUFBVSxDQUFDLFFBQVEsRUFBRTtRQUMzQixLQUFLLE1BQU0sQ0FBQyxDQUFDO1lBQ1gsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBWSxDQUFDLENBQUM7WUFFcEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ25EO1FBRUQsS0FBSyxRQUFRO1lBQ1gsT0FBUSxLQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXpDLEtBQUssUUFBUTtZQUNYLE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFZLENBQUMsQ0FBQztRQUV0RTtZQUNFLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQ3pCLElBQU8sRUFDUCxJQUFPLEVBQ1AsVUFBcUIsRUFDYixFQUFFO0lBQ1YsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztJQUMxQyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBRTFDLElBQUksTUFBTSxHQUFHLE1BQU0sRUFBRTtRQUNuQixPQUFPLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDekM7U0FBTSxJQUFJLE1BQU0sR0FBRyxNQUFNLEVBQUU7UUFDMUIsT0FBTyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3pDO0lBRUQsT0FBTyxDQUFDLENBQUM7QUFDWCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNvcnRlcjxUPiB7XHJcbiAgcHJvcGVydHk6IEV4dHJhY3Q8a2V5b2YgVCwgc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZT47XHJcbiAgaXNEZXNjZW5kaW5nOiBib29sZWFuO1xyXG4gIGRhdGFUeXBlPzogJ3N0cmluZycgfCAnbnVtYmVyJyB8ICdkYXRlJztcclxufVxyXG5cclxuY29uc3QgZ2V0VmFsdWUgPSA8VD4ob2JqOiBULCBzb3J0UGFyYW1zOiBTb3J0ZXI8VD4pOiBhbnkgPT4ge1xyXG4gIGNvbnN0IHZhbHVlID0gb2JqW3NvcnRQYXJhbXMucHJvcGVydHldO1xyXG5cclxuICBzd2l0Y2ggKHNvcnRQYXJhbXMuZGF0YVR5cGUpIHtcclxuICAgIGNhc2UgJ2RhdGUnOiB7XHJcbiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh2YWx1ZSBhcyBhbnkpO1xyXG5cclxuICAgICAgcmV0dXJuIGlzTmFOKGRhdGUuZ2V0VGltZSgpKSA/IDAgOiBkYXRlLmdldFRpbWUoKTtcclxuICAgIH1cclxuXHJcbiAgICBjYXNlICdzdHJpbmcnOlxyXG4gICAgICByZXR1cm4gKHZhbHVlIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKTtcclxuXHJcbiAgICBjYXNlICdudW1iZXInOlxyXG4gICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyA/IHZhbHVlIDogcGFyc2VGbG9hdCh2YWx1ZSBhcyBhbnkpO1xyXG5cclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3Qgc29ydEdlbmVyaWMgPSA8VD4oXHJcbiAgb2JqWDogVCxcclxuICBvYmpZOiBULFxyXG4gIHNvcnRQYXJhbXM6IFNvcnRlcjxUPixcclxuKTogbnVtYmVyID0+IHtcclxuICBjb25zdCB2YWx1ZVggPSBnZXRWYWx1ZShvYmpYLCBzb3J0UGFyYW1zKTtcclxuICBjb25zdCB2YWx1ZVkgPSBnZXRWYWx1ZShvYmpZLCBzb3J0UGFyYW1zKTtcclxuXHJcbiAgaWYgKHZhbHVlWCA+IHZhbHVlWSkge1xyXG4gICAgcmV0dXJuIHNvcnRQYXJhbXMuaXNEZXNjZW5kaW5nID8gLTEgOiAxO1xyXG4gIH0gZWxzZSBpZiAodmFsdWVYIDwgdmFsdWVZKSB7XHJcbiAgICByZXR1cm4gc29ydFBhcmFtcy5pc0Rlc2NlbmRpbmcgPyAxIDogLTE7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gMDtcclxufTtcclxuIl19