cmat 0.0.22 → 0.0.23

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 (67) hide show
  1. package/components/select-tree/select-tree.component.d.ts +1 -1
  2. package/fesm2022/cmat-components-adapter.mjs +9 -9
  3. package/fesm2022/cmat-components-breadcrumb.mjs +9 -9
  4. package/fesm2022/cmat-components-card.mjs +3 -3
  5. package/fesm2022/cmat-components-carousel.mjs +12 -12
  6. package/fesm2022/cmat-components-cascade.mjs +9 -9
  7. package/fesm2022/cmat-components-chip-input.mjs +3 -3
  8. package/fesm2022/cmat-components-custom-formly.mjs +87 -87
  9. package/fesm2022/cmat-components-date-range.mjs +3 -3
  10. package/fesm2022/cmat-components-drawer.mjs +6 -6
  11. package/fesm2022/cmat-components-fullscreen.mjs +3 -3
  12. package/fesm2022/cmat-components-highlight.mjs +6 -6
  13. package/fesm2022/cmat-components-image-viewer.mjs +3 -3
  14. package/fesm2022/cmat-components-json-editor.mjs +3 -3
  15. package/fesm2022/cmat-components-knob-input.mjs +3 -3
  16. package/fesm2022/cmat-components-masonry.mjs +3 -3
  17. package/fesm2022/cmat-components-material-color-picker.mjs +3 -3
  18. package/fesm2022/cmat-components-material-datetimepicker.mjs +42 -42
  19. package/fesm2022/cmat-components-navigation.mjs +39 -39
  20. package/fesm2022/cmat-components-opt-input.mjs +3 -3
  21. package/fesm2022/cmat-components-org-chart.mjs +9 -9
  22. package/fesm2022/cmat-components-pagination.mjs +12 -12
  23. package/fesm2022/cmat-components-password-strength.mjs +9 -9
  24. package/fesm2022/cmat-components-popover.mjs +9 -9
  25. package/fesm2022/cmat-components-progress-bar.mjs +3 -3
  26. package/fesm2022/cmat-components-rating.mjs +3 -3
  27. package/fesm2022/cmat-components-select-search.mjs +9 -9
  28. package/fesm2022/cmat-components-select-table.mjs +3 -3
  29. package/fesm2022/cmat-components-select-tree.mjs +6 -6
  30. package/fesm2022/cmat-components-select-tree.mjs.map +1 -1
  31. package/fesm2022/cmat-components-speed-dial.mjs +9 -9
  32. package/fesm2022/cmat-components-timeline.mjs +12 -12
  33. package/fesm2022/cmat-components-toast.mjs +9 -9
  34. package/fesm2022/cmat-components-transfer-picker.mjs +18 -18
  35. package/fesm2022/cmat-components-treetable.mjs +6 -6
  36. package/fesm2022/cmat-components-upload.mjs +9 -9
  37. package/fesm2022/cmat-directives-animate-on-scroll.mjs +6 -6
  38. package/fesm2022/cmat-directives-arrow-cursor.mjs +3 -3
  39. package/fesm2022/cmat-directives-autofocus.mjs +3 -3
  40. package/fesm2022/cmat-directives-data-exporter.mjs +21 -21
  41. package/fesm2022/cmat-directives-debounce.mjs +9 -9
  42. package/fesm2022/cmat-directives-digit-only.mjs +6 -6
  43. package/fesm2022/cmat-directives-equal-validator.mjs +3 -3
  44. package/fesm2022/cmat-lib-mock-api.mjs +6 -6
  45. package/fesm2022/cmat-pipes-bytes.mjs +3 -3
  46. package/fesm2022/cmat-pipes-date-format.mjs +3 -3
  47. package/fesm2022/cmat-pipes-find-by-key.mjs +3 -3
  48. package/fesm2022/cmat-pipes-group-by.mjs +3 -3
  49. package/fesm2022/cmat-pipes-keys.mjs +3 -3
  50. package/fesm2022/cmat-pipes-secure.mjs +3 -3
  51. package/fesm2022/cmat-pipes-uppercase.mjs +3 -3
  52. package/fesm2022/cmat-services-alert.mjs +3 -3
  53. package/fesm2022/cmat-services-config.mjs +6 -6
  54. package/fesm2022/cmat-services-confirmation.mjs +6 -6
  55. package/fesm2022/cmat-services-data.mjs +3 -3
  56. package/fesm2022/cmat-services-export-as.mjs +7 -7
  57. package/fesm2022/cmat-services-export-as.mjs.map +1 -1
  58. package/fesm2022/cmat-services-loading.mjs +6 -6
  59. package/fesm2022/cmat-services-local-storage.mjs +3 -3
  60. package/fesm2022/cmat-services-media-watcher.mjs +3 -3
  61. package/fesm2022/cmat-services-platform.mjs +3 -3
  62. package/fesm2022/cmat-services-splash-screen.mjs +3 -3
  63. package/fesm2022/cmat-services-title.mjs +3 -3
  64. package/fesm2022/cmat-services-translation.mjs +3 -3
  65. package/fesm2022/cmat-services-utils.mjs +3 -3
  66. package/package.json +26 -26
  67. package/styles/tailwind.scss +1 -5
@@ -22,10 +22,10 @@ class AbstractDebounceDirective {
22
22
  this.subscription$.next();
23
23
  this.subscription$.complete();
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: AbstractDebounceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
26
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: AbstractDebounceDirective, isStandalone: true, inputs: { debounceTime: "debounceTime" }, outputs: { emitChanged: "emitChanged" }, ngImport: i0 }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: AbstractDebounceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
26
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: AbstractDebounceDirective, isStandalone: true, inputs: { debounceTime: "debounceTime" }, outputs: { emitChanged: "emitChanged" }, ngImport: i0 }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: AbstractDebounceDirective, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: AbstractDebounceDirective, decorators: [{
29
29
  type: Directive
30
30
  }], ctorParameters: () => [], propDecorators: { debounceTime: [{
31
31
  type: Input
@@ -41,10 +41,10 @@ class CmatDebounceClickDirective extends AbstractDebounceDirective {
41
41
  event.preventDefault();
42
42
  this.emitEvent$.next(event);
43
43
  }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDebounceClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
45
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: CmatDebounceClickDirective, isStandalone: true, selector: "[cmatDebounceClick]", host: { listeners: { "click": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0 }); }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDebounceClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
45
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: CmatDebounceClickDirective, isStandalone: true, selector: "[cmatDebounceClick]", host: { listeners: { "click": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0 }); }
46
46
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDebounceClickDirective, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDebounceClickDirective, decorators: [{
48
48
  type: Directive,
49
49
  args: [{
50
50
  selector: '[cmatDebounceClick]',
@@ -63,10 +63,10 @@ class CmatDebounceKeyupDirective extends AbstractDebounceDirective {
63
63
  event.preventDefault();
64
64
  this.emitEvent$.next(event);
65
65
  }
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDebounceKeyupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
67
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: CmatDebounceKeyupDirective, isStandalone: true, selector: "input[cmatDebounceKeyup]", host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0 }); }
66
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDebounceKeyupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
67
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: CmatDebounceKeyupDirective, isStandalone: true, selector: "input[cmatDebounceKeyup]", host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0 }); }
68
68
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDebounceKeyupDirective, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDebounceKeyupDirective, decorators: [{
70
70
  type: Directive,
71
71
  args: [{
72
72
  selector: 'input[cmatDebounceKeyup]',
@@ -257,10 +257,10 @@ class CmatDigitOnlyDirective {
257
257
  key +
258
258
  oldValue.substring(selectionEnd));
259
259
  }
260
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDigitOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
261
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: CmatDigitOnlyDirective, isStandalone: true, selector: "[cmatDigitOnly]", inputs: { decimal: "decimal", decimalSeparator: "decimalSeparator", allowNegatives: "allowNegatives", allowPaste: "allowPaste", negativeSign: "negativeSign", min: "min", max: "max", pattern: "pattern" }, host: { listeners: { "beforeinput": "onBeforeInput($event)", "input": "onInputChange($event)", "keydown": "onKeyDown($event)", "paste": "onPaste($event)", "drop": "onDrop($event)" } }, usesOnChanges: true, ngImport: i0 }); }
260
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDigitOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
261
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: CmatDigitOnlyDirective, isStandalone: true, selector: "[cmatDigitOnly]", inputs: { decimal: "decimal", decimalSeparator: "decimalSeparator", allowNegatives: "allowNegatives", allowPaste: "allowPaste", negativeSign: "negativeSign", min: "min", max: "max", pattern: "pattern" }, host: { listeners: { "beforeinput": "onBeforeInput($event)", "input": "onInputChange($event)", "keydown": "onKeyDown($event)", "paste": "onPaste($event)", "drop": "onDrop($event)" } }, usesOnChanges: true, ngImport: i0 }); }
262
262
  }
263
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDigitOnlyDirective, decorators: [{
263
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDigitOnlyDirective, decorators: [{
264
264
  type: Directive,
265
265
  args: [{
266
266
  selector: '[cmatDigitOnly]',
@@ -364,10 +364,10 @@ class CmatMaskDirective {
364
364
  key +
365
365
  oldValue.substring(selectionStart);
366
366
  }
367
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMaskDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
368
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: CmatMaskDirective, isStandalone: true, selector: "[cmatMask]", host: { listeners: { "input": "onInputChange($event)", "keydown": "onKeyDown($event)" } }, ngImport: i0 }); }
367
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMaskDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
368
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: CmatMaskDirective, isStandalone: true, selector: "[cmatMask]", host: { listeners: { "input": "onInputChange($event)", "keydown": "onKeyDown($event)" } }, ngImport: i0 }); }
369
369
  }
370
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMaskDirective, decorators: [{
370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMaskDirective, decorators: [{
371
371
  type: Directive,
372
372
  args: [{
373
373
  selector: '[cmatMask]',
@@ -31,12 +31,12 @@ class CmatEqualValidatorDirective {
31
31
  }
32
32
  return this._reverse === 'true' ? CmatEqualValidatorDirective._validateReverse(c, other) : CmatEqualValidatorDirective._validateNoReverse(c, other);
33
33
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatEqualValidatorDirective, deps: [{ token: 'cmatValidateEqual', attribute: true }, { token: 'reverse', attribute: true }], target: i0.ɵɵFactoryTarget.Directive }); }
35
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: CmatEqualValidatorDirective, isStandalone: true, selector: "[cmatValidateEqual][formControlName],[cmatValidateEqual][formControl],[cmatValidateEqual][ngModel]", providers: [
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatEqualValidatorDirective, deps: [{ token: 'cmatValidateEqual', attribute: true }, { token: 'reverse', attribute: true }], target: i0.ɵɵFactoryTarget.Directive }); }
35
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.7", type: CmatEqualValidatorDirective, isStandalone: true, selector: "[cmatValidateEqual][formControlName],[cmatValidateEqual][formControl],[cmatValidateEqual][ngModel]", providers: [
36
36
  { provide: NG_VALIDATORS, useExisting: forwardRef(() => CmatEqualValidatorDirective), multi: true }
37
37
  ], ngImport: i0 }); }
38
38
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatEqualValidatorDirective, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatEqualValidatorDirective, decorators: [{
40
40
  type: Directive,
41
41
  args: [{
42
42
  selector: '[cmatValidateEqual][formControlName],[cmatValidateEqual][formControl],[cmatValidateEqual][ngModel]',
@@ -132,10 +132,10 @@ class CmatMockApiService {
132
132
  // Return the instance
133
133
  return cmatMockHttp;
134
134
  }
135
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMockApiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
136
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMockApiService, providedIn: 'root' }); }
135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMockApiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
136
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMockApiService, providedIn: 'root' }); }
137
137
  }
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMockApiService, decorators: [{
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMockApiService, decorators: [{
139
139
  type: Injectable,
140
140
  args: [{
141
141
  providedIn: 'root'
@@ -210,10 +210,10 @@ class CmatMockApiInterceptor {
210
210
  return throwError(() => response);
211
211
  }));
212
212
  }
213
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMockApiInterceptor, deps: [{ token: CMAT_MOCK_API_DEFAULT_DELAY }, { token: CmatMockApiService }], target: i0.ɵɵFactoryTarget.Injectable }); }
214
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMockApiInterceptor, providedIn: 'root' }); }
213
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMockApiInterceptor, deps: [{ token: CMAT_MOCK_API_DEFAULT_DELAY }, { token: CmatMockApiService }], target: i0.ɵɵFactoryTarget.Injectable }); }
214
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMockApiInterceptor, providedIn: 'root' }); }
215
215
  }
216
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMockApiInterceptor, decorators: [{
216
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMockApiInterceptor, decorators: [{
217
217
  type: Injectable,
218
218
  args: [{
219
219
  providedIn: 'root'
@@ -13,10 +13,10 @@ class CmatBytesPipe {
13
13
  const size = Math.floor(Math.log(bytes) / Math.log(1024));
14
14
  return (bytes / Math.pow(1024, Math.floor(size))).toFixed(1) + ' ' + units[size];
15
15
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatBytesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
17
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: CmatBytesPipe, isStandalone: true, name: "cmatBytes" }); }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatBytesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
17
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: CmatBytesPipe, isStandalone: true, name: "cmatBytes" }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatBytesPipe, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatBytesPipe, decorators: [{
20
20
  type: Pipe,
21
21
  args: [{
22
22
  name: 'cmatBytes',
@@ -8,10 +8,10 @@ class CmatDateFormatPipe {
8
8
  return dayjs(value).format(format);
9
9
  return '';
10
10
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDateFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
12
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: CmatDateFormatPipe, isStandalone: true, name: "cmatDateFormat" }); }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDateFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
12
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: CmatDateFormatPipe, isStandalone: true, name: "cmatDateFormat" }); }
13
13
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDateFormatPipe, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDateFormatPipe, decorators: [{
15
15
  type: Pipe,
16
16
  args: [{
17
17
  name: 'cmatDateFormat',
@@ -10,10 +10,10 @@ class CmatFindByKeyPipe {
10
10
  // If the value is a string...
11
11
  return source.find(sourceItem => sourceItem[key] === value);
12
12
  }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatFindByKeyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
14
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: CmatFindByKeyPipe, isStandalone: true, name: "cmatFindByKey", pure: false }); }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatFindByKeyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
14
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: CmatFindByKeyPipe, isStandalone: true, name: "cmatFindByKey", pure: false }); }
15
15
  }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatFindByKeyPipe, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatFindByKeyPipe, decorators: [{
17
17
  type: Pipe,
18
18
  args: [{
19
19
  name: 'cmatFindByKey',
@@ -17,10 +17,10 @@ class CmatGroupByPipe {
17
17
  }, {});
18
18
  return Object.keys(groupedObj).map(key => ({ key, value: groupedObj[key] }));
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatGroupByPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
21
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: CmatGroupByPipe, isStandalone: true, name: "cmatGroupBy" }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatGroupByPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
21
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: CmatGroupByPipe, isStandalone: true, name: "cmatGroupBy" }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatGroupByPipe, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatGroupByPipe, decorators: [{
24
24
  type: Pipe,
25
25
  args: [{
26
26
  name: 'cmatGroupBy',
@@ -14,10 +14,10 @@ class CmatKeysPipe {
14
14
  }
15
15
  return keys;
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatKeysPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
18
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: CmatKeysPipe, isStandalone: true, name: "cmatKeys" }); }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatKeysPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
18
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: CmatKeysPipe, isStandalone: true, name: "cmatKeys" }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatKeysPipe, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatKeysPipe, decorators: [{
21
21
  type: Pipe,
22
22
  args: [{
23
23
  name: 'cmatKeys',
@@ -34,10 +34,10 @@ class CmatSecurePipe {
34
34
  })
35
35
  .pipe(map((val) => this._sanitizer.bypassSecurityTrustUrl(URL.createObjectURL(val))));
36
36
  }
37
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatSecurePipe, deps: [{ token: i1.HttpClient }, { token: i2.DomSanitizer }, { token: i3.CmatUrlStateConfigService }], target: i0.ɵɵFactoryTarget.Pipe }); }
38
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: CmatSecurePipe, isStandalone: true, name: "cmatSecure" }); }
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatSecurePipe, deps: [{ token: i1.HttpClient }, { token: i2.DomSanitizer }, { token: i3.CmatUrlStateConfigService }], target: i0.ɵɵFactoryTarget.Pipe }); }
38
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: CmatSecurePipe, isStandalone: true, name: "cmatSecure" }); }
39
39
  }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatSecurePipe, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatSecurePipe, decorators: [{
41
41
  type: Pipe,
42
42
  args: [{
43
43
  name: 'cmatSecure',
@@ -5,10 +5,10 @@ class CmatUppercasePipe {
5
5
  transform(value) {
6
6
  return value.toUpperCase();
7
7
  }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatUppercasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: CmatUppercasePipe, isStandalone: true, name: "cmatUppercase" }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatUppercasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.1.7", ngImport: i0, type: CmatUppercasePipe, isStandalone: true, name: "cmatUppercase" }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatUppercasePipe, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatUppercasePipe, decorators: [{
12
12
  type: Pipe,
13
13
  args: [{
14
14
  name: 'cmatUppercase',
@@ -190,10 +190,10 @@ class CmatAlertService {
190
190
  this._messages.next({ severity: severity, summary: summary, detail: detail, isPostionBottom: isPostionBottom });
191
191
  }
192
192
  }
193
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatAlertService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
194
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatAlertService, providedIn: 'root' }); }
193
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatAlertService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
194
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatAlertService, providedIn: 'root' }); }
195
195
  }
196
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatAlertService, decorators: [{
196
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatAlertService, decorators: [{
197
197
  type: Injectable,
198
198
  args: [{
199
199
  providedIn: 'root'
@@ -22,10 +22,10 @@ class CmatConfigService {
22
22
  // Set the config
23
23
  this._config.next(this.config);
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfigService, deps: [{ token: CMAT_APP_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
26
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfigService, providedIn: 'root' }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfigService, deps: [{ token: CMAT_APP_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
26
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfigService, providedIn: 'root' }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfigService, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfigService, decorators: [{
29
29
  type: Injectable,
30
30
  args: [{
31
31
  providedIn: 'root'
@@ -51,10 +51,10 @@ class CmatUrlStateConfigService {
51
51
  // Execute the observable
52
52
  this._config.next(config);
53
53
  }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatUrlStateConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
55
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatUrlStateConfigService, providedIn: 'root' }); }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatUrlStateConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
55
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatUrlStateConfigService, providedIn: 'root' }); }
56
56
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatUrlStateConfigService, decorators: [{
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatUrlStateConfigService, decorators: [{
58
58
  type: Injectable,
59
59
  args: [{
60
60
  providedIn: 'root'
@@ -14,10 +14,10 @@ class CmatConfirmationDialogComponent {
14
14
  this.data = data;
15
15
  this.matDialogRef = matDialogRef;
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfirmationDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.6", type: CmatConfirmationDialogComponent, isStandalone: true, selector: "cmat-confirmation-dialog", ngImport: i0, template: "<div class=\"relative flex flex-col w-full h-full\">\r\n\r\n <!-- Dismiss button -->\r\n @if (data.dismissible) {\r\n <div class=\"absolute top-0 right-0 pt-4 pr-4\">\r\n <button type=\"button\" mat-icon-button [matDialogClose]=\"undefined\">\r\n <mat-icon class=\"text-secondary\" [svgIcon]=\"'heroicons_outline:x-mark'\"></mat-icon>\r\n </button>\r\n </div>\r\n }\r\n\r\n <!-- Content -->\r\n <div class=\"flex flex-col sm:flex-row items-center sm:items-start p-8 pb-6 sm:pb-8\">\r\n\r\n <!-- Icon -->\r\n @if (data.icon?.show) {\r\n <div class=\"flex flex-0 items-center justify-center w-10 h-10 sm:mr-4 rounded-full\" [ngClass]=\"{'text-primary-600 bg-primary-100 dark:text-primary-50 dark:bg-primary-600': data.icon?.color === 'primary',\r\n 'text-accent-600 bg-accent-100 dark:text-accent-50 dark:bg-accent-600': data.icon?.color === 'accent',\r\n 'text-warn-600 bg-warn-100 dark:text-warn-50 dark:bg-warn-600': data.icon?.color === 'warn',\r\n 'text-slate-600 bg-slate-100 dark:text-slate-50 dark:bg-slate-600': data.icon?.color === 'basic',\r\n 'text-blue-600 bg-blue-100 dark:text-blue-50 dark:bg-blue-600': data.icon?.color === 'info',\r\n 'text-emerald-500 bg-emerald-100 dark:text-emerald-50 dark:bg-emerald-500': data.icon?.color === 'success',\r\n 'text-amber-500 bg-amber-100 dark:text-amber-50 dark:bg-amber-500': data.icon?.color === 'warning',\r\n 'text-red-600 bg-red-100 dark:text-red-50 dark:bg-red-600': data.icon?.color === 'error'\r\n }\">\r\n @if (data.icon?.name) {\r\n <mat-icon class=\"text-current\" [svgIcon]=\"data.icon?.name||''\"></mat-icon>\r\n }\r\n </div>\r\n }\r\n\r\n @if (data.title || data.message) {\r\n <div\r\n class=\"flex flex-col items-center sm:items-start mt-4 sm:mt-0 sm:pr-8 gap-1 text-center sm:text-left\">\r\n <!-- Title -->\r\n @if (data.title) {\r\n <div class=\"text-xl leading-6 font-medium\" [innerHTML]=\"data.title\"></div>\r\n }\r\n <!-- Message -->\r\n @if (data.message) {\r\n <div class=\"text-secondary\" [innerHTML]=\"data.message\"></div>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n <!-- Actions -->\r\n @if (data.actions?.confirm?.show || data.actions?.cancel?.show) {\r\n <div\r\n class=\"flex items-center justify-center sm:justify-end px-6 py-4 flex-row gap-3 bg-slate-50 dark:bg-black/10\">\r\n <!-- Confirm -->\r\n @if (data.actions?.confirm?.show) {\r\n <button type=\"button\" mat-flat-button [color]=\"data.actions?.confirm?.color\"\r\n [matDialogClose]=\"'confirmed'\">\r\n {{data.actions?.confirm?.label}}\r\n </button>\r\n }\r\n <!-- Cancel -->\r\n @if (data.actions?.cancel?.show) {\r\n <button type=\"button\" mat-stroked-button [matDialogClose]=\"'cancelled'\">\r\n {{data.actions?.cancel?.label}}\r\n </button>\r\n }\r\n </div>\r\n }\r\n\r\n</div>", styles: [".cmat-confirmation-dialog-panel .mat-mdc-dialog-container{padding:0!important}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfirmationDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.7", type: CmatConfirmationDialogComponent, isStandalone: true, selector: "cmat-confirmation-dialog", ngImport: i0, template: "<div class=\"relative flex flex-col w-full h-full\">\r\n\r\n <!-- Dismiss button -->\r\n @if (data.dismissible) {\r\n <div class=\"absolute top-0 right-0 pt-4 pr-4\">\r\n <button type=\"button\" mat-icon-button [matDialogClose]=\"undefined\">\r\n <mat-icon class=\"text-secondary\" [svgIcon]=\"'heroicons_outline:x-mark'\"></mat-icon>\r\n </button>\r\n </div>\r\n }\r\n\r\n <!-- Content -->\r\n <div class=\"flex flex-col sm:flex-row items-center sm:items-start p-8 pb-6 sm:pb-8\">\r\n\r\n <!-- Icon -->\r\n @if (data.icon?.show) {\r\n <div class=\"flex flex-0 items-center justify-center w-10 h-10 sm:mr-4 rounded-full\" [ngClass]=\"{'text-primary-600 bg-primary-100 dark:text-primary-50 dark:bg-primary-600': data.icon?.color === 'primary',\r\n 'text-accent-600 bg-accent-100 dark:text-accent-50 dark:bg-accent-600': data.icon?.color === 'accent',\r\n 'text-warn-600 bg-warn-100 dark:text-warn-50 dark:bg-warn-600': data.icon?.color === 'warn',\r\n 'text-slate-600 bg-slate-100 dark:text-slate-50 dark:bg-slate-600': data.icon?.color === 'basic',\r\n 'text-blue-600 bg-blue-100 dark:text-blue-50 dark:bg-blue-600': data.icon?.color === 'info',\r\n 'text-emerald-500 bg-emerald-100 dark:text-emerald-50 dark:bg-emerald-500': data.icon?.color === 'success',\r\n 'text-amber-500 bg-amber-100 dark:text-amber-50 dark:bg-amber-500': data.icon?.color === 'warning',\r\n 'text-red-600 bg-red-100 dark:text-red-50 dark:bg-red-600': data.icon?.color === 'error'\r\n }\">\r\n @if (data.icon?.name) {\r\n <mat-icon class=\"text-current\" [svgIcon]=\"data.icon?.name||''\"></mat-icon>\r\n }\r\n </div>\r\n }\r\n\r\n @if (data.title || data.message) {\r\n <div\r\n class=\"flex flex-col items-center sm:items-start mt-4 sm:mt-0 sm:pr-8 gap-1 text-center sm:text-left\">\r\n <!-- Title -->\r\n @if (data.title) {\r\n <div class=\"text-xl leading-6 font-medium\" [innerHTML]=\"data.title\"></div>\r\n }\r\n <!-- Message -->\r\n @if (data.message) {\r\n <div class=\"text-secondary\" [innerHTML]=\"data.message\"></div>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n <!-- Actions -->\r\n @if (data.actions?.confirm?.show || data.actions?.cancel?.show) {\r\n <div\r\n class=\"flex items-center justify-center sm:justify-end px-6 py-4 flex-row gap-3 bg-slate-50 dark:bg-black/10\">\r\n <!-- Confirm -->\r\n @if (data.actions?.confirm?.show) {\r\n <button type=\"button\" mat-flat-button [color]=\"data.actions?.confirm?.color\"\r\n [matDialogClose]=\"'confirmed'\">\r\n {{data.actions?.confirm?.label}}\r\n </button>\r\n }\r\n <!-- Cancel -->\r\n @if (data.actions?.cancel?.show) {\r\n <button type=\"button\" mat-stroked-button [matDialogClose]=\"'cancelled'\">\r\n {{data.actions?.cancel?.label}}\r\n </button>\r\n }\r\n </div>\r\n }\r\n\r\n</div>", styles: [".cmat-confirmation-dialog-panel .mat-mdc-dialog-container{padding:0!important}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfirmationDialogComponent, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfirmationDialogComponent, decorators: [{
21
21
  type: Component,
22
22
  args: [{ selector: 'cmat-confirmation-dialog', encapsulation: ViewEncapsulation.None, imports: [MatButtonModule, MatDialogModule, MatIconModule, NgClass], template: "<div class=\"relative flex flex-col w-full h-full\">\r\n\r\n <!-- Dismiss button -->\r\n @if (data.dismissible) {\r\n <div class=\"absolute top-0 right-0 pt-4 pr-4\">\r\n <button type=\"button\" mat-icon-button [matDialogClose]=\"undefined\">\r\n <mat-icon class=\"text-secondary\" [svgIcon]=\"'heroicons_outline:x-mark'\"></mat-icon>\r\n </button>\r\n </div>\r\n }\r\n\r\n <!-- Content -->\r\n <div class=\"flex flex-col sm:flex-row items-center sm:items-start p-8 pb-6 sm:pb-8\">\r\n\r\n <!-- Icon -->\r\n @if (data.icon?.show) {\r\n <div class=\"flex flex-0 items-center justify-center w-10 h-10 sm:mr-4 rounded-full\" [ngClass]=\"{'text-primary-600 bg-primary-100 dark:text-primary-50 dark:bg-primary-600': data.icon?.color === 'primary',\r\n 'text-accent-600 bg-accent-100 dark:text-accent-50 dark:bg-accent-600': data.icon?.color === 'accent',\r\n 'text-warn-600 bg-warn-100 dark:text-warn-50 dark:bg-warn-600': data.icon?.color === 'warn',\r\n 'text-slate-600 bg-slate-100 dark:text-slate-50 dark:bg-slate-600': data.icon?.color === 'basic',\r\n 'text-blue-600 bg-blue-100 dark:text-blue-50 dark:bg-blue-600': data.icon?.color === 'info',\r\n 'text-emerald-500 bg-emerald-100 dark:text-emerald-50 dark:bg-emerald-500': data.icon?.color === 'success',\r\n 'text-amber-500 bg-amber-100 dark:text-amber-50 dark:bg-amber-500': data.icon?.color === 'warning',\r\n 'text-red-600 bg-red-100 dark:text-red-50 dark:bg-red-600': data.icon?.color === 'error'\r\n }\">\r\n @if (data.icon?.name) {\r\n <mat-icon class=\"text-current\" [svgIcon]=\"data.icon?.name||''\"></mat-icon>\r\n }\r\n </div>\r\n }\r\n\r\n @if (data.title || data.message) {\r\n <div\r\n class=\"flex flex-col items-center sm:items-start mt-4 sm:mt-0 sm:pr-8 gap-1 text-center sm:text-left\">\r\n <!-- Title -->\r\n @if (data.title) {\r\n <div class=\"text-xl leading-6 font-medium\" [innerHTML]=\"data.title\"></div>\r\n }\r\n <!-- Message -->\r\n @if (data.message) {\r\n <div class=\"text-secondary\" [innerHTML]=\"data.message\"></div>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n <!-- Actions -->\r\n @if (data.actions?.confirm?.show || data.actions?.cancel?.show) {\r\n <div\r\n class=\"flex items-center justify-center sm:justify-end px-6 py-4 flex-row gap-3 bg-slate-50 dark:bg-black/10\">\r\n <!-- Confirm -->\r\n @if (data.actions?.confirm?.show) {\r\n <button type=\"button\" mat-flat-button [color]=\"data.actions?.confirm?.color\"\r\n [matDialogClose]=\"'confirmed'\">\r\n {{data.actions?.confirm?.label}}\r\n </button>\r\n }\r\n <!-- Cancel -->\r\n @if (data.actions?.cancel?.show) {\r\n <button type=\"button\" mat-stroked-button [matDialogClose]=\"'cancelled'\">\r\n {{data.actions?.cancel?.label}}\r\n </button>\r\n }\r\n </div>\r\n }\r\n\r\n</div>", styles: [".cmat-confirmation-dialog-panel .mat-mdc-dialog-container{padding:0!important}\n"] }]
23
23
  }], ctorParameters: () => [{ type: undefined, decorators: [{
@@ -61,10 +61,10 @@ class CmatConfirmationService {
61
61
  panelClass: 'cmat-confirmation-dialog-panel'
62
62
  });
63
63
  }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfirmationService, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable }); }
65
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfirmationService, providedIn: 'root' }); }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfirmationService, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable }); }
65
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfirmationService, providedIn: 'root' }); }
66
66
  }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatConfirmationService, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatConfirmationService, decorators: [{
68
68
  type: Injectable,
69
69
  args: [{
70
70
  providedIn: 'root'
@@ -158,10 +158,10 @@ class CmatDataService {
158
158
  .pipe(tap((res) => res), catchError((err) => CmatUtilsService.handleError(err)));
159
159
  }
160
160
  }
161
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDataService, deps: [{ token: i1.HttpClient }, { token: i2.CmatUrlStateConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
162
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDataService, providedIn: 'root' }); }
161
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDataService, deps: [{ token: i1.HttpClient }, { token: i2.CmatUrlStateConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
162
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDataService, providedIn: 'root' }); }
163
163
  }
164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatDataService, decorators: [{
164
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatDataService, decorators: [{
165
165
  type: Injectable,
166
166
  args: [{
167
167
  providedIn: 'root'
@@ -99,7 +99,7 @@ class CmatExportAsService {
99
99
  const csvContent = 'data:text/csv;base64,' + this._btoa(csv.join('\n'));
100
100
  if (config.download) {
101
101
  this.downloadFromDataURL(config.fileName, csvContent);
102
- observer.next();
102
+ observer.next(null);
103
103
  }
104
104
  else {
105
105
  observer.next(csvContent);
@@ -122,7 +122,7 @@ class CmatExportAsService {
122
122
  const xlsContent = 'data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,' + out;
123
123
  if (config.download) {
124
124
  this.downloadFromDataURL(config.fileName, xlsContent);
125
- observer.next();
125
+ observer.next(null);
126
126
  }
127
127
  else {
128
128
  observer.next(xlsContent);
@@ -155,7 +155,7 @@ class CmatExportAsService {
155
155
  const dataStr = 'data:text/json;base64,' + jsonBase64;
156
156
  if (config.download) {
157
157
  this.downloadFromDataURL(config.fileName, dataStr);
158
- observer.next();
158
+ observer.next(null);
159
159
  }
160
160
  else {
161
161
  observer.next(data);
@@ -182,7 +182,7 @@ class CmatExportAsService {
182
182
  const base64 = 'data:text/xml;base64,' + this._btoa(xml);
183
183
  if (config.download) {
184
184
  this.downloadFromDataURL(config.fileName, base64);
185
- observer.next();
185
+ observer.next(null);
186
186
  }
187
187
  else {
188
188
  observer.next(base64);
@@ -193,10 +193,10 @@ class CmatExportAsService {
193
193
  _btoa(content) {
194
194
  return Buffer.from(content.toString(), 'utf-8').toString('base64');
195
195
  }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatExportAsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
197
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatExportAsService, providedIn: 'root' }); }
196
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatExportAsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
197
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatExportAsService, providedIn: 'root' }); }
198
198
  }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatExportAsService, decorators: [{
199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatExportAsService, decorators: [{
200
200
  type: Injectable,
201
201
  args: [{
202
202
  providedIn: 'root'
@@ -1 +1 @@
1
- {"version":3,"file":"cmat-services-export-as.mjs","sources":["../../../projects/cmat/services/export-as/export-as.service.ts","../../../projects/cmat/services/export-as/cmat-services-export-as.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport * as FileSaver from 'file-saver-es';\r\nimport { Observable } from 'rxjs';\r\nimport * as XLSX from 'xlsx';\r\nimport { ExportAsConfig } from './export-as-config.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CmatExportAsService {\r\n /**\r\n * Main base64 get method, it will return the file as base64 string\r\n * @param config your config\r\n */\r\n get(config: ExportAsConfig): Observable<any> {\r\n switch (config.type.toUpperCase()) {\r\n case 'CSV':\r\n return this._getCSV(config);\r\n case 'TXT':\r\n return this._getTXT(config);\r\n case 'XLS':\r\n return this._getXLS(config);\r\n case 'XLSX':\r\n return this._getXLSX(config);\r\n case 'JSON':\r\n return this._getJSON(config);\r\n case 'XML':\r\n return this._getXML(config);\r\n default:\r\n return new Observable((observer) => { observer.error('导出格式不支持.'); });\r\n }\r\n }\r\n\r\n /**\r\n * Save exported file in old javascript way\r\n * @param config your custom config\r\n * @param fileName Name of the file to be saved as\r\n */\r\n save(config: ExportAsConfig, fileName: string): Observable<string | null> {\r\n // set download\r\n config.download = true;\r\n // get file name with type\r\n config.fileName = fileName + '.' + config.type;\r\n return this.get(config);\r\n }\r\n\r\n /**\r\n * Converts content string to blob object\r\n * @param content string to be converted\r\n */\r\n contentToBlob(content: string): Observable<Blob> {\r\n return new Observable((observer) => {\r\n // get content string and extract mime type\r\n const arr = content.split(','), mime = (/:(.*?);/.exec(arr[0]))?.[1],\r\n bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n observer.next(new Blob([u8arr], { type: mime }));\r\n observer.complete();\r\n });\r\n }\r\n\r\n /**\r\n * Removes base64 file type from a string like \"data:text/csv;base64,\"\r\n * @param fileContent the base64 string to remove the type from\r\n */\r\n removeFileTypeFromBase64(fileContent: string): string {\r\n const re = /^data:[^]*;base64,/g;\r\n const newContent: string = re[Symbol.replace](fileContent, '');\r\n return newContent;\r\n }\r\n\r\n /**\r\n * Structure the base64 file content with the file type string\r\n * @param fileContent file content\r\n * @param fileMime file mime type \"text/csv\"\r\n */\r\n addFileTypeToBase64(fileContent: string, fileMime: string): string {\r\n return `data:${fileMime};base64,${fileContent}`;\r\n }\r\n\r\n downloadFromDataURL(fileName: string, dataURL: string): void {\r\n // create blob\r\n this.contentToBlob(dataURL).subscribe((blob) => {\r\n // download the blob\r\n this.downloadFromBlob(blob, fileName);\r\n });\r\n }\r\n\r\n downloadFromBlob(blob: Blob, fileName: string): void {\r\n FileSaver.saveAs(blob, fileName);\r\n }\r\n\r\n private _getCSV(config: ExportAsConfig): Observable<string | null> {\r\n return new Observable((observer) => {\r\n const element: HTMLElement | null = document.getElementById(config.elementIdOrContent);\r\n let csv: string[] = [];\r\n const rows: any = element?.querySelectorAll('table tr');\r\n rows.forEach((rowElement: { querySelectorAll: (arg0: string) => any; }) => {\r\n let row: string[] = [];\r\n const cols = rowElement.querySelectorAll('td, th');\r\n\r\n cols.array.forEach((col: { innerText: string; }) => {\r\n row.push('\"' + col.innerText + '\"');\r\n });\r\n csv.push(row.join(','));\r\n });\r\n\r\n const csvContent = 'data:text/csv;base64,' + this._btoa(csv.join('\\n'));\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, csvContent);\r\n observer.next();\r\n } else {\r\n observer.next(csvContent);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _getTXT(config: ExportAsConfig): Observable<string | null> {\r\n const nameFrags = config.fileName?.split('.');\r\n config.fileName = `${nameFrags?.[0]}.txt`;\r\n return this._getCSV(config);\r\n }\r\n\r\n private _getXLS(config: ExportAsConfig): Observable<string | null> {\r\n return new Observable((observer) => {\r\n const element: HTMLElement | null = document.getElementById(config.elementIdOrContent);\r\n const ws3 = XLSX.utils.table_to_sheet(element, config.options);\r\n const wb = XLSX.utils.book_new();\r\n XLSX.utils.book_append_sheet(wb, ws3, config.fileName);\r\n const out = XLSX.write(wb, { type: 'base64' });\r\n const xlsContent = 'data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,' + out;\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, xlsContent);\r\n observer.next();\r\n } else {\r\n observer.next(xlsContent);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _getXLSX(config: ExportAsConfig): Observable<string | null> {\r\n return this._getXLS(config);\r\n }\r\n\r\n\r\n private _getJSON(config: ExportAsConfig): Observable<any[] | null> {\r\n return new Observable((observer) => {\r\n const data = []; // first row needs fto be headers\r\n const headers = [];\r\n const table = document.getElementById(config.elementIdOrContent) as HTMLTableElement;\r\n for (let index = 0; index < table.rows[0].cells.length; index++) {\r\n headers[index] = table.rows[0].cells[index].innerHTML.toLowerCase().replace(/ /gi, '');\r\n }\r\n // go through cells\r\n for (let i = 1; i < table.rows.length; i++) {\r\n const tableRow = table.rows[i];\r\n let rowData: Record<string, string> = {};\r\n for (let j = 0; j < tableRow.cells.length; j++) {\r\n rowData[headers[j]] = tableRow.cells[j].innerHTML;\r\n }\r\n data.push(rowData);\r\n }\r\n const jsonString = JSON.stringify(data);\r\n const jsonBase64 = this._btoa(jsonString);\r\n const dataStr = 'data:text/json;base64,' + jsonBase64;\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, dataStr);\r\n observer.next();\r\n } else {\r\n observer.next(data);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _getXML(config: ExportAsConfig): Observable<string | null> {\r\n return new Observable((observer) => {\r\n let xml = '<?xml version=\"1.0\" encoding=\"UTF-8\"?><Root><Classes>';\r\n const tritem = document.getElementById(config.elementIdOrContent)?.getElementsByTagName('tr');\r\n\r\n if (tritem) {\r\n Array.from(tritem).forEach((celldata) => {\r\n if (celldata.cells.length > 0) {\r\n xml += '<Class name=\"' + celldata.cells[0].textContent + '\">\\n';\r\n for (let m = 1; m < celldata.cells.length; ++m) {\r\n xml += '\\t<data>' + celldata.cells[m].textContent + '</data>\\n';\r\n }\r\n xml += '</Class>\\n';\r\n }\r\n });\r\n\r\n }\r\n\r\n xml += '</Classes></Root>';\r\n const base64 = 'data:text/xml;base64,' + this._btoa(xml);\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, base64);\r\n observer.next();\r\n } else {\r\n observer.next(base64);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _btoa(content: string): string {\r\n return Buffer.from(content.toString(), 'utf-8').toString('base64')\r\n }\r\n\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmat-services-export-as.mjs","sources":["../../../projects/cmat/services/export-as/export-as.service.ts","../../../projects/cmat/services/export-as/cmat-services-export-as.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport * as FileSaver from 'file-saver-es';\r\nimport { Observable } from 'rxjs';\r\nimport * as XLSX from 'xlsx';\r\nimport { ExportAsConfig } from './export-as-config.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CmatExportAsService {\r\n /**\r\n * Main base64 get method, it will return the file as base64 string\r\n * @param config your config\r\n */\r\n get(config: ExportAsConfig): Observable<any> {\r\n switch (config.type.toUpperCase()) {\r\n case 'CSV':\r\n return this._getCSV(config);\r\n case 'TXT':\r\n return this._getTXT(config);\r\n case 'XLS':\r\n return this._getXLS(config);\r\n case 'XLSX':\r\n return this._getXLSX(config);\r\n case 'JSON':\r\n return this._getJSON(config);\r\n case 'XML':\r\n return this._getXML(config);\r\n default:\r\n return new Observable((observer) => { observer.error('导出格式不支持.'); });\r\n }\r\n }\r\n\r\n /**\r\n * Save exported file in old javascript way\r\n * @param config your custom config\r\n * @param fileName Name of the file to be saved as\r\n */\r\n save(config: ExportAsConfig, fileName: string): Observable<string | null> {\r\n // set download\r\n config.download = true;\r\n // get file name with type\r\n config.fileName = fileName + '.' + config.type;\r\n return this.get(config);\r\n }\r\n\r\n /**\r\n * Converts content string to blob object\r\n * @param content string to be converted\r\n */\r\n contentToBlob(content: string): Observable<Blob> {\r\n return new Observable((observer) => {\r\n // get content string and extract mime type\r\n const arr = content.split(','), mime = (/:(.*?);/.exec(arr[0]))?.[1],\r\n bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n observer.next(new Blob([u8arr], { type: mime }));\r\n observer.complete();\r\n });\r\n }\r\n\r\n /**\r\n * Removes base64 file type from a string like \"data:text/csv;base64,\"\r\n * @param fileContent the base64 string to remove the type from\r\n */\r\n removeFileTypeFromBase64(fileContent: string): string {\r\n const re = /^data:[^]*;base64,/g;\r\n const newContent: string = re[Symbol.replace](fileContent, '');\r\n return newContent;\r\n }\r\n\r\n /**\r\n * Structure the base64 file content with the file type string\r\n * @param fileContent file content\r\n * @param fileMime file mime type \"text/csv\"\r\n */\r\n addFileTypeToBase64(fileContent: string, fileMime: string): string {\r\n return `data:${fileMime};base64,${fileContent}`;\r\n }\r\n\r\n downloadFromDataURL(fileName: string, dataURL: string): void {\r\n // create blob\r\n this.contentToBlob(dataURL).subscribe((blob) => {\r\n // download the blob\r\n this.downloadFromBlob(blob, fileName);\r\n });\r\n }\r\n\r\n downloadFromBlob(blob: Blob, fileName: string): void {\r\n FileSaver.saveAs(blob, fileName);\r\n }\r\n\r\n private _getCSV(config: ExportAsConfig): Observable<string | null> {\r\n return new Observable((observer) => {\r\n const element: HTMLElement | null = document.getElementById(config.elementIdOrContent);\r\n let csv: string[] = [];\r\n const rows: any = element?.querySelectorAll('table tr');\r\n rows.forEach((rowElement: { querySelectorAll: (arg0: string) => any; }) => {\r\n let row: string[] = [];\r\n const cols = rowElement.querySelectorAll('td, th');\r\n\r\n cols.array.forEach((col: { innerText: string; }) => {\r\n row.push('\"' + col.innerText + '\"');\r\n });\r\n csv.push(row.join(','));\r\n });\r\n\r\n const csvContent = 'data:text/csv;base64,' + this._btoa(csv.join('\\n'));\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, csvContent);\r\n observer.next(null);\r\n } else {\r\n observer.next(csvContent);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _getTXT(config: ExportAsConfig): Observable<string | null> {\r\n const nameFrags = config.fileName?.split('.');\r\n config.fileName = `${nameFrags?.[0]}.txt`;\r\n return this._getCSV(config);\r\n }\r\n\r\n private _getXLS(config: ExportAsConfig): Observable<string | null> {\r\n return new Observable((observer) => {\r\n const element: HTMLElement | null = document.getElementById(config.elementIdOrContent);\r\n const ws3 = XLSX.utils.table_to_sheet(element, config.options);\r\n const wb = XLSX.utils.book_new();\r\n XLSX.utils.book_append_sheet(wb, ws3, config.fileName);\r\n const out = XLSX.write(wb, { type: 'base64' });\r\n const xlsContent = 'data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,' + out;\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, xlsContent);\r\n observer.next(null);\r\n } else {\r\n observer.next(xlsContent);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _getXLSX(config: ExportAsConfig): Observable<string | null> {\r\n return this._getXLS(config);\r\n }\r\n\r\n\r\n private _getJSON(config: ExportAsConfig): Observable<any[] | null> {\r\n return new Observable((observer) => {\r\n const data = []; // first row needs fto be headers\r\n const headers = [];\r\n const table = document.getElementById(config.elementIdOrContent) as HTMLTableElement;\r\n for (let index = 0; index < table.rows[0].cells.length; index++) {\r\n headers[index] = table.rows[0].cells[index].innerHTML.toLowerCase().replace(/ /gi, '');\r\n }\r\n // go through cells\r\n for (let i = 1; i < table.rows.length; i++) {\r\n const tableRow = table.rows[i];\r\n let rowData: Record<string, string> = {};\r\n for (let j = 0; j < tableRow.cells.length; j++) {\r\n rowData[headers[j]] = tableRow.cells[j].innerHTML;\r\n }\r\n data.push(rowData);\r\n }\r\n const jsonString = JSON.stringify(data);\r\n const jsonBase64 = this._btoa(jsonString);\r\n const dataStr = 'data:text/json;base64,' + jsonBase64;\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, dataStr);\r\n observer.next(null);\r\n } else {\r\n observer.next(data);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _getXML(config: ExportAsConfig): Observable<string | null> {\r\n return new Observable((observer) => {\r\n let xml = '<?xml version=\"1.0\" encoding=\"UTF-8\"?><Root><Classes>';\r\n const tritem = document.getElementById(config.elementIdOrContent)?.getElementsByTagName('tr');\r\n\r\n if (tritem) {\r\n Array.from(tritem).forEach((celldata) => {\r\n if (celldata.cells.length > 0) {\r\n xml += '<Class name=\"' + celldata.cells[0].textContent + '\">\\n';\r\n for (let m = 1; m < celldata.cells.length; ++m) {\r\n xml += '\\t<data>' + celldata.cells[m].textContent + '</data>\\n';\r\n }\r\n xml += '</Class>\\n';\r\n }\r\n });\r\n\r\n }\r\n\r\n xml += '</Classes></Root>';\r\n const base64 = 'data:text/xml;base64,' + this._btoa(xml);\r\n if (config.download) {\r\n this.downloadFromDataURL(config.fileName, base64);\r\n observer.next(null);\r\n } else {\r\n observer.next(base64);\r\n }\r\n observer.complete();\r\n });\r\n }\r\n\r\n private _btoa(content: string): string {\r\n return Buffer.from(content.toString(), 'utf-8').toString('base64')\r\n }\r\n\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -61,10 +61,10 @@ class CmatLoadingService {
61
61
  this._show$.next(false);
62
62
  }
63
63
  }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLoadingService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
65
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLoadingService, providedIn: 'root' }); }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLoadingService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
65
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLoadingService, providedIn: 'root' }); }
66
66
  }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLoadingService, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLoadingService, decorators: [{
68
68
  type: Injectable,
69
69
  args: [{
70
70
  providedIn: 'root'
@@ -89,10 +89,10 @@ class CmatLoadingInterceptor {
89
89
  this._cmatLoadingService.setLoadingStatus(false, req.url);
90
90
  }));
91
91
  }
92
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLoadingInterceptor, deps: [{ token: CmatLoadingService }], target: i0.ɵɵFactoryTarget.Injectable }); }
93
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLoadingInterceptor }); }
92
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLoadingInterceptor, deps: [{ token: CmatLoadingService }], target: i0.ɵɵFactoryTarget.Injectable }); }
93
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLoadingInterceptor }); }
94
94
  }
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLoadingInterceptor, decorators: [{
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLoadingInterceptor, decorators: [{
96
96
  type: Injectable
97
97
  }], ctorParameters: () => [{ type: CmatLoadingService }] });
98
98
 
@@ -11,10 +11,10 @@ class CmatLocalStorageService {
11
11
  removeItem(key) {
12
12
  localStorage.removeItem(key);
13
13
  }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
15
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLocalStorageService, providedIn: 'root' }); }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
15
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLocalStorageService, providedIn: 'root' }); }
16
16
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatLocalStorageService, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatLocalStorageService, decorators: [{
18
18
  type: Injectable,
19
19
  args: [{
20
20
  providedIn: 'root'
@@ -44,10 +44,10 @@ class CmatMediaWatcherService {
44
44
  onMediaQueryChange$(query) {
45
45
  return this._breakpointObserver.observe(query);
46
46
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMediaWatcherService, deps: [{ token: i1.BreakpointObserver }, { token: i2.CmatConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
48
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMediaWatcherService, providedIn: 'root' }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMediaWatcherService, deps: [{ token: i1.BreakpointObserver }, { token: i2.CmatConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
48
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMediaWatcherService, providedIn: 'root' }); }
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatMediaWatcherService, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatMediaWatcherService, decorators: [{
51
51
  type: Injectable,
52
52
  args: [{
53
53
  providedIn: 'root'
@@ -35,10 +35,10 @@ class CmatPlatformService {
35
35
  this.osName = 'os-android';
36
36
  }
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatPlatformService, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable }); }
39
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatPlatformService, providedIn: 'root' }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatPlatformService, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatPlatformService, providedIn: 'root' }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatPlatformService, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatPlatformService, decorators: [{
42
42
  type: Injectable,
43
43
  args: [{
44
44
  providedIn: 'root'
@@ -28,10 +28,10 @@ class CmatSplashScreenService {
28
28
  hide() {
29
29
  this._document.body.classList.add('cmat-splash-screen-hidden');
30
30
  }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatSplashScreenService, deps: [{ token: DOCUMENT }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
32
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatSplashScreenService, providedIn: 'root' }); }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatSplashScreenService, deps: [{ token: DOCUMENT }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
32
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatSplashScreenService, providedIn: 'root' }); }
33
33
  }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: CmatSplashScreenService, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImport: i0, type: CmatSplashScreenService, decorators: [{
35
35
  type: Injectable,
36
36
  args: [{
37
37
  providedIn: 'root'