@ng-nest/ui 21.0.9 → 21.0.11

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 (151) hide show
  1. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  2. package/fesm2022/ng-nest-ui-alert.mjs +10 -10
  3. package/fesm2022/ng-nest-ui-anchor.mjs +16 -16
  4. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  5. package/fesm2022/ng-nest-ui-attachments.mjs +16 -16
  6. package/fesm2022/ng-nest-ui-auto-complete.mjs +14 -14
  7. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  8. package/fesm2022/ng-nest-ui-avatar.mjs +16 -16
  9. package/fesm2022/ng-nest-ui-back-top.mjs +10 -10
  10. package/fesm2022/ng-nest-ui-badge.mjs +10 -10
  11. package/fesm2022/ng-nest-ui-base-form.mjs +32 -52
  12. package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
  13. package/fesm2022/ng-nest-ui-bubble.mjs +16 -16
  14. package/fesm2022/ng-nest-ui-button.mjs +16 -16
  15. package/fesm2022/ng-nest-ui-calendar.mjs +10 -10
  16. package/fesm2022/ng-nest-ui-card.mjs +10 -10
  17. package/fesm2022/ng-nest-ui-carousel.mjs +16 -16
  18. package/fesm2022/ng-nest-ui-cascade.mjs +14 -14
  19. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  20. package/fesm2022/ng-nest-ui-checkbox.mjs +10 -10
  21. package/fesm2022/ng-nest-ui-collapse.mjs +16 -16
  22. package/fesm2022/ng-nest-ui-color-picker.mjs +17 -17
  23. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  24. package/fesm2022/ng-nest-ui-color.mjs +10 -10
  25. package/fesm2022/ng-nest-ui-comment.mjs +16 -16
  26. package/fesm2022/ng-nest-ui-container.mjs +31 -31
  27. package/fesm2022/ng-nest-ui-core.mjs +20 -20
  28. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  29. package/fesm2022/ng-nest-ui-coversations.mjs +10 -10
  30. package/fesm2022/ng-nest-ui-crumb.mjs +10 -10
  31. package/fesm2022/ng-nest-ui-date-picker.mjs +51 -51
  32. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  33. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  34. package/fesm2022/ng-nest-ui-dialog.mjs +42 -40
  35. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  36. package/fesm2022/ng-nest-ui-divider.mjs +124 -0
  37. package/fesm2022/ng-nest-ui-divider.mjs.map +1 -0
  38. package/fesm2022/ng-nest-ui-doc.mjs +7 -7
  39. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  40. package/fesm2022/ng-nest-ui-drawer.mjs +31 -31
  41. package/fesm2022/ng-nest-ui-dropdown.mjs +13 -13
  42. package/fesm2022/ng-nest-ui-empty.mjs +10 -10
  43. package/fesm2022/ng-nest-ui-examples.mjs +7 -7
  44. package/fesm2022/ng-nest-ui-find.mjs +10 -10
  45. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  46. package/fesm2022/ng-nest-ui-form.mjs +23 -28
  47. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  48. package/fesm2022/ng-nest-ui-highlight.mjs +13 -13
  49. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  50. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  51. package/fesm2022/ng-nest-ui-image.mjs +100 -61
  52. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  53. package/fesm2022/ng-nest-ui-inner.mjs +10 -10
  54. package/fesm2022/ng-nest-ui-input-number.mjs +11 -11
  55. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  56. package/fesm2022/ng-nest-ui-input.mjs +24 -21
  57. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  58. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  59. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  60. package/fesm2022/ng-nest-ui-link.mjs +10 -10
  61. package/fesm2022/ng-nest-ui-list.mjs +19 -19
  62. package/fesm2022/ng-nest-ui-loading.mjs +10 -10
  63. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  64. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  65. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  66. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  67. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  68. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  69. package/fesm2022/ng-nest-ui-page-header.mjs +10 -10
  70. package/fesm2022/ng-nest-ui-pagination.mjs +10 -10
  71. package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
  72. package/fesm2022/ng-nest-ui-popconfirm.mjs +10 -10
  73. package/fesm2022/ng-nest-ui-popover.mjs +13 -13
  74. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  75. package/fesm2022/ng-nest-ui-progress.mjs +10 -10
  76. package/fesm2022/ng-nest-ui-prompts.mjs +10 -10
  77. package/fesm2022/ng-nest-ui-radio.mjs +10 -10
  78. package/fesm2022/ng-nest-ui-rate.mjs +10 -10
  79. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  80. package/fesm2022/ng-nest-ui-result.mjs +10 -10
  81. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  82. package/fesm2022/ng-nest-ui-scrollable.mjs +7 -7
  83. package/fesm2022/ng-nest-ui-select.mjs +15 -15
  84. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  85. package/fesm2022/ng-nest-ui-sender.mjs +14 -14
  86. package/fesm2022/ng-nest-ui-sender.mjs.map +1 -1
  87. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  88. package/fesm2022/ng-nest-ui-slider-select.mjs +10 -10
  89. package/fesm2022/ng-nest-ui-slider.mjs +10 -10
  90. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  91. package/fesm2022/ng-nest-ui-steps.mjs +10 -10
  92. package/fesm2022/ng-nest-ui-suggestion.mjs +10 -10
  93. package/fesm2022/ng-nest-ui-switch.mjs +10 -10
  94. package/fesm2022/ng-nest-ui-table-view.mjs +58 -63
  95. package/fesm2022/ng-nest-ui-table-view.mjs.map +1 -1
  96. package/fesm2022/ng-nest-ui-table.mjs +34 -34
  97. package/fesm2022/ng-nest-ui-tabs.mjs +25 -25
  98. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  99. package/fesm2022/ng-nest-ui-text-retract.mjs +10 -10
  100. package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
  101. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  102. package/fesm2022/ng-nest-ui-theme.mjs +10 -10
  103. package/fesm2022/ng-nest-ui-thought-chain.mjs +10 -10
  104. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  105. package/fesm2022/ng-nest-ui-time-picker.mjs +47 -36
  106. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  107. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  108. package/fesm2022/ng-nest-ui-timeline.mjs +10 -10
  109. package/fesm2022/ng-nest-ui-tooltip.mjs +13 -13
  110. package/fesm2022/ng-nest-ui-transfer.mjs +10 -10
  111. package/fesm2022/ng-nest-ui-tree-file.mjs +10 -10
  112. package/fesm2022/ng-nest-ui-tree-select.mjs +14 -14
  113. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  114. package/fesm2022/ng-nest-ui-tree.mjs +19 -19
  115. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  116. package/fesm2022/ng-nest-ui-upload.mjs +19 -19
  117. package/fesm2022/ng-nest-ui-welcome.mjs +10 -10
  118. package/fesm2022/ng-nest-ui.mjs +1 -0
  119. package/fesm2022/ng-nest-ui.mjs.map +1 -1
  120. package/package.json +5 -2
  121. package/types/ng-nest-ui-attachments.d.ts +4 -5
  122. package/types/ng-nest-ui-auto-complete.d.ts +8 -9
  123. package/types/ng-nest-ui-base-form.d.ts +8 -9
  124. package/types/ng-nest-ui-cascade.d.ts +8 -9
  125. package/types/ng-nest-ui-checkbox.d.ts +5 -6
  126. package/types/ng-nest-ui-color-picker.d.ts +8 -9
  127. package/types/ng-nest-ui-core.d.ts +8 -1
  128. package/types/ng-nest-ui-coversations.d.ts +4 -5
  129. package/types/ng-nest-ui-date-picker.d.ts +16 -18
  130. package/types/ng-nest-ui-dialog.d.ts +12 -0
  131. package/types/ng-nest-ui-divider.d.ts +113 -0
  132. package/types/ng-nest-ui-find.d.ts +6 -7
  133. package/types/ng-nest-ui-form.d.ts +9 -10
  134. package/types/ng-nest-ui-image.d.ts +2 -1
  135. package/types/ng-nest-ui-input-number.d.ts +8 -9
  136. package/types/ng-nest-ui-input.d.ts +14 -10
  137. package/types/ng-nest-ui-list.d.ts +4 -5
  138. package/types/ng-nest-ui-message-box.d.ts +2 -2
  139. package/types/ng-nest-ui-radio.d.ts +5 -6
  140. package/types/ng-nest-ui-rate.d.ts +4 -5
  141. package/types/ng-nest-ui-select.d.ts +8 -9
  142. package/types/ng-nest-ui-sender.d.ts +6 -7
  143. package/types/ng-nest-ui-slider-select.d.ts +4 -5
  144. package/types/ng-nest-ui-switch.d.ts +4 -5
  145. package/types/ng-nest-ui-textarea.d.ts +8 -9
  146. package/types/ng-nest-ui-theme.d.ts +4 -5
  147. package/types/ng-nest-ui-time-picker.d.ts +12 -11
  148. package/types/ng-nest-ui-transfer.d.ts +4 -5
  149. package/types/ng-nest-ui-tree-select.d.ts +8 -9
  150. package/types/ng-nest-ui-upload.d.ts +4 -5
  151. package/types/ng-nest-ui.d.ts +1 -0
@@ -1,7 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, InjectionToken, Directive, Input, inject, ElementRef, HostListener, HostBinding, booleanAttribute, signal, ViewEncapsulation, ChangeDetectionStrategy, Component, viewChild, contentChild, contentChildren, NgModule } from '@angular/core';
3
3
  import { CdkCellDef, CdkHeaderCellDef, CdkFooterCellDef, CdkColumnDef, CdkHeaderCell, CdkFooterCell, CdkCell, CdkHeaderRowDef, CdkFooterRowDef, CdkRowDef, CdkHeaderRow, CdkCellOutlet, CdkFooterRow, CdkRow, CdkNoDataRow, CdkTable, HeaderRowOutlet, DataRowOutlet, NoDataRowOutlet, FooterRowOutlet, CDK_TABLE, STICKY_POSITIONING_LISTENER, CdkTextColumn, CdkTableModule } from '@angular/cdk/table';
4
- import { _DisposeViewRepeaterStrategy, _VIEW_REPEATER_STRATEGY } from '@angular/cdk/collections';
5
4
  import { XConfigService } from '@ng-nest/ui/core';
6
5
 
7
6
  class XTableViewService {
@@ -12,20 +11,20 @@ class XTableViewService {
12
11
  this.activedHeaderCells = [];
13
12
  this.stickyHeaderRows = [];
14
13
  }
15
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
16
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewService }); }
14
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
15
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewService }); }
17
16
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewService, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewService, decorators: [{
19
18
  type: Injectable
20
19
  }] });
21
20
 
22
21
  const X_TABLE_VIEW_CONTEXT = new InjectionToken('X_TABLE_VIEW_CONTEXT');
23
22
 
24
23
  class XTableViewCellDef extends CdkCellDef {
25
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
26
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableViewCellDef, isStandalone: true, selector: "[xTableCellDef]", providers: [{ provide: CdkCellDef, useExisting: XTableViewCellDef }], usesInheritance: true, ngImport: i0 }); }
24
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
25
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableViewCellDef, isStandalone: true, selector: "[xTableCellDef]", providers: [{ provide: CdkCellDef, useExisting: XTableViewCellDef }], usesInheritance: true, ngImport: i0 }); }
27
26
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewCellDef, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewCellDef, decorators: [{
29
28
  type: Directive,
30
29
  args: [{
31
30
  selector: '[xTableCellDef]',
@@ -33,10 +32,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
33
32
  }]
34
33
  }] });
35
34
  class XTableHeaderCellDef extends CdkHeaderCellDef {
36
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
37
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableHeaderCellDef, isStandalone: true, selector: "[xTableHeaderCellDef]", providers: [{ provide: CdkHeaderCellDef, useExisting: XTableHeaderCellDef }], usesInheritance: true, ngImport: i0 }); }
35
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
36
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableHeaderCellDef, isStandalone: true, selector: "[xTableHeaderCellDef]", providers: [{ provide: CdkHeaderCellDef, useExisting: XTableHeaderCellDef }], usesInheritance: true, ngImport: i0 }); }
38
37
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderCellDef, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderCellDef, decorators: [{
40
39
  type: Directive,
41
40
  args: [{
42
41
  selector: '[xTableHeaderCellDef]',
@@ -44,10 +43,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
44
43
  }]
45
44
  }] });
46
45
  class XTableFooterCellDef extends CdkFooterCellDef {
47
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
48
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableFooterCellDef, isStandalone: true, selector: "[xTableFooterCellDef]", providers: [{ provide: CdkFooterCellDef, useExisting: XTableFooterCellDef }], usesInheritance: true, ngImport: i0 }); }
46
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterCellDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
47
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableFooterCellDef, isStandalone: true, selector: "[xTableFooterCellDef]", providers: [{ provide: CdkFooterCellDef, useExisting: XTableFooterCellDef }], usesInheritance: true, ngImport: i0 }); }
49
48
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterCellDef, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterCellDef, decorators: [{
51
50
  type: Directive,
52
51
  args: [{
53
52
  selector: '[xTableFooterCellDef]',
@@ -65,10 +64,10 @@ class XTableColumnDef extends CdkColumnDef {
65
64
  super._updateColumnCssClassName();
66
65
  this._columnCssClassName.push(`x-table-column-${this.cssClassFriendlyName}`);
67
66
  }
68
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableColumnDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
69
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableColumnDef, isStandalone: true, selector: "[xTableColumnDef]", inputs: { name: ["xTableColumnDef", "name"] }, providers: [{ provide: CdkColumnDef, useExisting: XTableColumnDef }], usesInheritance: true, ngImport: i0 }); }
67
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableColumnDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
68
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableColumnDef, isStandalone: true, selector: "[xTableColumnDef]", inputs: { name: ["xTableColumnDef", "name"] }, providers: [{ provide: CdkColumnDef, useExisting: XTableColumnDef }], usesInheritance: true, ngImport: i0 }); }
70
69
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableColumnDef, decorators: [{
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableColumnDef, decorators: [{
72
71
  type: Directive,
73
72
  args: [{
74
73
  selector: '[xTableColumnDef]',
@@ -111,10 +110,10 @@ class XTableHeaderCell extends CdkHeaderCell {
111
110
  cell.setActivedRow(cell);
112
111
  }
113
112
  }
114
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderCell, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
115
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableHeaderCell, isStandalone: true, selector: "x-table-header-cell, th[x-table-header-cell]", host: { attributes: { "role": "columnheader" }, listeners: { "click": "onClick()" }, properties: { "class.x-table-header-cell-actived": "this.isActived" }, classAttribute: "x-table-header-cell" }, usesInheritance: true, ngImport: i0 }); }
113
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderCell, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
114
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableHeaderCell, isStandalone: true, selector: "x-table-header-cell, th[x-table-header-cell]", host: { attributes: { "role": "columnheader" }, listeners: { "click": "onClick()" }, properties: { "class.x-table-header-cell-actived": "this.isActived" }, classAttribute: "x-table-header-cell" }, usesInheritance: true, ngImport: i0 }); }
116
115
  }
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderCell, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderCell, decorators: [{
118
117
  type: Directive,
119
118
  args: [{
120
119
  selector: 'x-table-header-cell, th[x-table-header-cell]',
@@ -131,10 +130,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
131
130
  args: ['click']
132
131
  }] } });
133
132
  class XTableFooterCell extends CdkFooterCell {
134
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterCell, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
135
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableFooterCell, isStandalone: true, selector: "x-table-footer-cell, td[x-table-footer-cell]", host: { classAttribute: "x-table-footer-cell" }, usesInheritance: true, ngImport: i0 }); }
133
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterCell, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
134
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableFooterCell, isStandalone: true, selector: "x-table-footer-cell, td[x-table-footer-cell]", host: { classAttribute: "x-table-footer-cell" }, usesInheritance: true, ngImport: i0 }); }
136
135
  }
137
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterCell, decorators: [{
136
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterCell, decorators: [{
138
137
  type: Directive,
139
138
  args: [{
140
139
  selector: 'x-table-footer-cell, td[x-table-footer-cell]',
@@ -221,10 +220,10 @@ class XTableViewCell extends CdkCell {
221
220
  return -1;
222
221
  return selectedIndex % rowsCount;
223
222
  }
224
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewCell, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
225
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableViewCell, isStandalone: true, selector: "x-table-cell, td[x-table-cell]", host: { listeners: { "click": "onClick()" }, properties: { "class.x-table-cell-selected": "this.isSelected" }, classAttribute: "x-table-cell" }, usesInheritance: true, ngImport: i0 }); }
223
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewCell, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
224
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableViewCell, isStandalone: true, selector: "x-table-cell, td[x-table-cell]", host: { listeners: { "click": "onClick()" }, properties: { "class.x-table-cell-selected": "this.isSelected" }, classAttribute: "x-table-cell" }, usesInheritance: true, ngImport: i0 }); }
226
225
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewCell, decorators: [{
226
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewCell, decorators: [{
228
227
  type: Directive,
229
228
  args: [{
230
229
  selector: 'x-table-cell, td[x-table-cell]',
@@ -248,10 +247,10 @@ class XTableHeaderRowDef extends CdkHeaderRowDef {
248
247
  getColumns() {
249
248
  return this.columns;
250
249
  }
251
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
252
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.6", type: XTableHeaderRowDef, isStandalone: true, selector: "[xTableHeaderRowDef]", inputs: { columns: ["xTableHeaderRowDef", "columns"], sticky: ["xTableHeaderRowDefSticky", "sticky", booleanAttribute] }, providers: [{ provide: CdkHeaderRowDef, useExisting: XTableHeaderRowDef }], usesInheritance: true, ngImport: i0 }); }
250
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
251
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.1.1", type: XTableHeaderRowDef, isStandalone: true, selector: "[xTableHeaderRowDef]", inputs: { columns: ["xTableHeaderRowDef", "columns"], sticky: ["xTableHeaderRowDefSticky", "sticky", booleanAttribute] }, providers: [{ provide: CdkHeaderRowDef, useExisting: XTableHeaderRowDef }], usesInheritance: true, ngImport: i0 }); }
253
252
  }
254
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderRowDef, decorators: [{
253
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderRowDef, decorators: [{
255
254
  type: Directive,
256
255
  args: [{
257
256
  selector: '[xTableHeaderRowDef]',
@@ -263,10 +262,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
263
262
  }]
264
263
  }] });
265
264
  class XTableFooterRowDef extends CdkFooterRowDef {
266
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
267
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.6", type: XTableFooterRowDef, isStandalone: true, selector: "[xTableFooterRowDef]", inputs: { columns: ["xTableFooterRowDef", "columns"], sticky: ["xTableFooterRowDefSticky", "sticky", booleanAttribute] }, providers: [{ provide: CdkFooterRowDef, useExisting: XTableFooterRowDef }], usesInheritance: true, ngImport: i0 }); }
265
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
266
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.1.1", type: XTableFooterRowDef, isStandalone: true, selector: "[xTableFooterRowDef]", inputs: { columns: ["xTableFooterRowDef", "columns"], sticky: ["xTableFooterRowDefSticky", "sticky", booleanAttribute] }, providers: [{ provide: CdkFooterRowDef, useExisting: XTableFooterRowDef }], usesInheritance: true, ngImport: i0 }); }
268
267
  }
269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterRowDef, decorators: [{
268
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterRowDef, decorators: [{
270
269
  type: Directive,
271
270
  args: [{
272
271
  selector: '[xTableFooterRowDef]',
@@ -278,10 +277,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
278
277
  }]
279
278
  }] });
280
279
  class XTableViewRowDef extends CdkRowDef {
281
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
282
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableViewRowDef, isStandalone: true, selector: "[xTableRowDef]", inputs: { columns: ["xTableRowDefColumns", "columns"], when: ["xTableRowDefWhen", "when"] }, providers: [{ provide: CdkRowDef, useExisting: XTableViewRowDef }], usesInheritance: true, ngImport: i0 }); }
280
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewRowDef, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
281
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableViewRowDef, isStandalone: true, selector: "[xTableRowDef]", inputs: { columns: ["xTableRowDefColumns", "columns"], when: ["xTableRowDefWhen", "when"] }, providers: [{ provide: CdkRowDef, useExisting: XTableViewRowDef }], usesInheritance: true, ngImport: i0 }); }
283
282
  }
284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewRowDef, decorators: [{
283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewRowDef, decorators: [{
285
284
  type: Directive,
286
285
  args: [{
287
286
  selector: '[xTableRowDef]',
@@ -332,10 +331,10 @@ class XTableHeaderRow extends CdkHeaderRow {
332
331
  }, { threshold: 0 });
333
332
  observer.observe(sentinel);
334
333
  }
335
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderRow, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
336
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: XTableHeaderRow, isStandalone: true, selector: "x-table-header-row, tr[x-table-header-row]", host: { attributes: { "role": "row" }, properties: { "class.x-table-sticky-top": "this.isSticking" }, classAttribute: "x-table-header-row" }, providers: [{ provide: CdkHeaderRow, useExisting: XTableHeaderRow }], exportAs: ["xTableHeaderRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
334
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderRow, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
335
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: XTableHeaderRow, isStandalone: true, selector: "x-table-header-row, tr[x-table-header-row]", host: { attributes: { "role": "row" }, properties: { "class.x-table-sticky-top": "this.isSticking" }, classAttribute: "x-table-header-row" }, providers: [{ provide: CdkHeaderRow, useExisting: XTableHeaderRow }], exportAs: ["xTableHeaderRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
337
336
  }
338
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableHeaderRow, decorators: [{
337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableHeaderRow, decorators: [{
339
338
  type: Component,
340
339
  args: [{
341
340
  selector: 'x-table-header-row, tr[x-table-header-row]',
@@ -355,10 +354,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
355
354
  args: ['class.x-table-sticky-top']
356
355
  }] } });
357
356
  class XTableFooterRow extends CdkFooterRow {
358
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterRow, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
359
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: XTableFooterRow, isStandalone: true, selector: "x-table-footer-row, tr[x-table-footer-row]", host: { attributes: { "role": "row" }, classAttribute: "x-table-footer-row" }, providers: [{ provide: CdkFooterRow, useExisting: XTableFooterRow }], exportAs: ["xTableFooterRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
357
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterRow, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
358
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: XTableFooterRow, isStandalone: true, selector: "x-table-footer-row, tr[x-table-footer-row]", host: { attributes: { "role": "row" }, classAttribute: "x-table-footer-row" }, providers: [{ provide: CdkFooterRow, useExisting: XTableFooterRow }], exportAs: ["xTableFooterRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
360
359
  }
361
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableFooterRow, decorators: [{
360
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableFooterRow, decorators: [{
362
361
  type: Component,
363
362
  args: [{
364
363
  selector: 'x-table-footer-row, tr[x-table-footer-row]',
@@ -382,10 +381,10 @@ class XTableViewRow extends CdkRow {
382
381
  get isActived() {
383
382
  return this.tableViewService.activedRows.includes(this);
384
383
  }
385
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewRow, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
386
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: XTableViewRow, isStandalone: true, selector: "x-table-row, tr[x-table-row]", host: { attributes: { "role": "row" }, properties: { "class.x-table-row-actived": "this.isActived" }, classAttribute: "x-table-row" }, providers: [{ provide: CdkRow, useExisting: XTableViewRow }], exportAs: ["xTableRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
384
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewRow, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
385
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: XTableViewRow, isStandalone: true, selector: "x-table-row, tr[x-table-row]", host: { attributes: { "role": "row" }, properties: { "class.x-table-row-actived": "this.isActived" }, classAttribute: "x-table-row" }, providers: [{ provide: CdkRow, useExisting: XTableViewRow }], exportAs: ["xTableRow"], usesInheritance: true, ngImport: i0, template: "<ng-container cdkCellOutlet></ng-container>", isInline: true, dependencies: [{ kind: "directive", type: CdkCellOutlet, selector: "[cdkCellOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
387
386
  }
388
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewRow, decorators: [{
387
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewRow, decorators: [{
389
388
  type: Component,
390
389
  args: [{
391
390
  selector: 'x-table-row, tr[x-table-row]',
@@ -409,10 +408,10 @@ class XTableNoDataRow extends CdkNoDataRow {
409
408
  super(...arguments);
410
409
  this._contentClassNames = ['x-table-no-data-row'];
411
410
  }
412
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableNoDataRow, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
413
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: XTableNoDataRow, isStandalone: true, selector: "ng-template[xTableNoDataRow]", providers: [{ provide: CdkNoDataRow, useExisting: XTableNoDataRow }], usesInheritance: true, ngImport: i0 }); }
411
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableNoDataRow, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
412
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: XTableNoDataRow, isStandalone: true, selector: "ng-template[xTableNoDataRow]", providers: [{ provide: CdkNoDataRow, useExisting: XTableNoDataRow }], usesInheritance: true, ngImport: i0 }); }
414
413
  }
415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableNoDataRow, decorators: [{
414
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableNoDataRow, decorators: [{
416
415
  type: Directive,
417
416
  args: [{
418
417
  selector: 'ng-template[xTableNoDataRow]',
@@ -435,10 +434,10 @@ class XTableViewProperty extends CdkTable {
435
434
  super(...arguments);
436
435
  this.config = inject(XConfigService).getConfigForComponent(X_TABLE_VIEW_CONFIG_NAME);
437
436
  }
438
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
439
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: XTableViewProperty, isStandalone: true, selector: "x-table-view-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
437
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
438
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: XTableViewProperty, isStandalone: true, selector: "x-table-view-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
440
439
  }
441
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewProperty, decorators: [{
440
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewProperty, decorators: [{
442
441
  type: Component,
443
442
  args: [{ selector: `${XTableViewPrefix}-property`, template: '' }]
444
443
  }] });
@@ -478,12 +477,10 @@ class XTableView extends XTableViewProperty {
478
477
  getRows() {
479
478
  return this.rows();
480
479
  }
481
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableView, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
482
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.6", type: XTableView, isStandalone: true, selector: "x-table-view, table[x-table-view]", host: { properties: { "class.x-table-fixed-layout": "fixedLayout" }, classAttribute: "x-table-view" }, providers: [
480
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableView, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
481
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: XTableView, isStandalone: true, selector: "x-table-view, table[x-table-view]", host: { properties: { "class.x-table-fixed-layout": "fixedLayout" }, classAttribute: "x-table-view" }, providers: [
483
482
  { provide: CdkTable, useExisting: XTableView },
484
483
  { provide: CDK_TABLE, useExisting: XTableView },
485
- // Prevent nested tables from seeing this table's StickyPositioningListener.
486
- { provide: _VIEW_REPEATER_STRATEGY, useClass: _DisposeViewRepeaterStrategy },
487
484
  { provide: STICKY_POSITIONING_LISTENER, useValue: null },
488
485
  {
489
486
  provide: X_TABLE_VIEW_CONTEXT,
@@ -492,7 +489,7 @@ class XTableView extends XTableViewProperty {
492
489
  XTableViewService
493
490
  ], queries: [{ propertyName: "headerRowRef", first: true, predicate: XTableHeaderRowDef, descendants: true, isSignal: true }, { propertyName: "headerRowRefs", predicate: XTableHeaderRowDef, isSignal: true }, { propertyName: "headerRows", predicate: XTableHeaderRow, isSignal: true }, { propertyName: "columnDefs", predicate: XTableColumnDef, isSignal: true }, { propertyName: "headerCells", predicate: XTableHeaderCell, isSignal: true }, { propertyName: "cells", predicate: XTableViewCell, isSignal: true }, { propertyName: "rows", predicate: XTableViewRow, isSignal: true }], viewQueries: [{ propertyName: "sentinelTop", first: true, predicate: ["sentinelTop"], descendants: true, isSignal: true }], exportAs: ["xTableView"], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"caption\" />\r\n<ng-content select=\"colgroup, col\" />\r\n\r\n<!--\r\n Unprojected content throws a hydration error so we need this to capture it.\r\n It gets removed on the client so it doesn't affect the layout.\r\n -->\r\n@if (_isServer) {\r\n <ng-content />\r\n}\r\n<div class=\"x-table-sentinel-top\" #sentinelTop></div>\r\n@if (_isNativeHtmlTable) {\r\n <thead>\r\n <ng-container headerRowOutlet />\r\n </thead>\r\n <tbody>\r\n <ng-container rowOutlet />\r\n <ng-container noDataRowOutlet />\r\n </tbody>\r\n <tfoot>\r\n <ng-container footerRowOutlet />\r\n </tfoot>\r\n} @else {\r\n <ng-container headerRowOutlet />\r\n <ng-container rowOutlet />\r\n <ng-container noDataRowOutlet />\r\n <ng-container footerRowOutlet />\r\n}\r\n", styles: [".x-table-view{margin:0;padding:0}.x-table-view{position:relative;border-collapse:separate;border-spacing:0}.x-table-view .x-table-header-cell,.x-table-view .x-table-footer-cell{padding:0 .5rem;text-align:left;font-weight:500;color:var(--x-text);border-top:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);border-right:var(--x-border-width) var(--x-border-style) var(--x-border);cursor:default;background-color:var(--x-background);white-space:nowrap}.x-table-view .x-table-header-cell:first-child,.x-table-view .x-table-footer-cell:first-child{border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-view .x-table-header-cell.x-table-header-cell-actived,.x-table-view .x-table-footer-cell.x-table-header-cell-actived{background-color:var(--x-background-a100)}.x-table-view .x-table-sticky{position:sticky;background-color:var(--x-background-a200)}.x-table-view .x-table-sentinel-top{visibility:hidden;position:absolute;top:0}.x-table-view .x-table-row-actived .x-table-cell:not(.x-table-cell-selected){background-color:var(--x-background-a100)}.x-table-view .x-table-cell{padding:0 .5rem;text-align:left;font-weight:500;color:var(--x-text);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);border-right:var(--x-border-width) var(--x-border-style) var(--x-border);cursor:default;white-space:nowrap;background-color:var(--x-background)}.x-table-view .x-table-cell:first-child{border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-table-view .x-table-cell.x-table-cell-selected{border-color:var(--x-border-a200);background-color:var(--x-primary-900)}.x-table-view .x-table-cell.x-table-sticky:not(.x-table-cell-selected){background-color:var(--x-background-a200)}.x-table-view .x-table-sticky-border-elem-top{border-bottom-style:solid;border-bottom-width:calc(2 * var(--x-border-width));border-bottom-color:var(--x-border-a900)}.x-table-view .x-table-sticky-border-elem-bottom{border-top-style:solid;border-top-width:calc(2 * var(--x-border-width));border-top-color:var(--x-border-a900)}.x-table-view .x-table-sticky-border-elem-left{border-right-style:solid;border-right-width:calc(2 * var(--x-border-width));border-right-color:var(--x-border-a900)}.x-table-view .x-table-sticky-border-elem-right{border-left-style:solid;border-left-width:calc(2 * var(--x-border-width));border-left-color:var(--x-border-a900)}\n"], dependencies: [{ kind: "directive", type: HeaderRowOutlet, selector: "[headerRowOutlet]" }, { kind: "directive", type: DataRowOutlet, selector: "[rowOutlet]" }, { kind: "directive", type: NoDataRowOutlet, selector: "[noDataRowOutlet]" }, { kind: "directive", type: FooterRowOutlet, selector: "[footerRowOutlet]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
494
491
  }
495
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableView, decorators: [{
492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableView, decorators: [{
496
493
  type: Component,
497
494
  args: [{ selector: 'x-table-view, table[x-table-view]', exportAs: 'xTableView', host: {
498
495
  class: 'x-table-view',
@@ -500,8 +497,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
500
497
  }, providers: [
501
498
  { provide: CdkTable, useExisting: XTableView },
502
499
  { provide: CDK_TABLE, useExisting: XTableView },
503
- // Prevent nested tables from seeing this table's StickyPositioningListener.
504
- { provide: _VIEW_REPEATER_STRATEGY, useClass: _DisposeViewRepeaterStrategy },
505
500
  { provide: STICKY_POSITIONING_LISTENER, useValue: null },
506
501
  {
507
502
  provide: X_TABLE_VIEW_CONTEXT,
@@ -512,8 +507,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
512
507
  }], propDecorators: { sentinelTop: [{ type: i0.ViewChild, args: ['sentinelTop', { isSignal: true }] }], headerRowRef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => XTableHeaderRowDef), { isSignal: true }] }], headerRowRefs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => XTableHeaderRowDef), { isSignal: true }] }], headerRows: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => XTableHeaderRow), { isSignal: true }] }], columnDefs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => XTableColumnDef), { isSignal: true }] }], headerCells: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => XTableHeaderCell), { isSignal: true }] }], cells: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => XTableViewCell), { isSignal: true }] }], rows: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => XTableViewRow), { isSignal: true }] }] } });
513
508
 
514
509
  class XTableTextColumn extends CdkTextColumn {
515
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableTextColumn, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
516
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.6", type: XTableTextColumn, isStandalone: true, selector: "x-table-text-column", usesInheritance: true, ngImport: i0, template: `
510
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableTextColumn, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
511
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: XTableTextColumn, isStandalone: true, selector: "x-table-text-column", usesInheritance: true, ngImport: i0, template: `
517
512
  <ng-container xTableColumnDef>
518
513
  <th x-table-header-cell *xTableHeaderCellDef [style.text-align]="justify">
519
514
  {{ headerText }}
@@ -524,7 +519,7 @@ class XTableTextColumn extends CdkTextColumn {
524
519
  </ng-container>
525
520
  `, isInline: true, dependencies: [{ kind: "directive", type: XTableColumnDef, selector: "[xTableColumnDef]", inputs: ["xTableColumnDef"] }, { kind: "directive", type: XTableHeaderCellDef, selector: "[xTableHeaderCellDef]" }, { kind: "directive", type: XTableHeaderCell, selector: "x-table-header-cell, th[x-table-header-cell]" }, { kind: "directive", type: XTableViewCellDef, selector: "[xTableCellDef]" }, { kind: "directive", type: XTableViewCell, selector: "x-table-cell, td[x-table-cell]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
526
521
  }
527
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableTextColumn, decorators: [{
522
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableTextColumn, decorators: [{
528
523
  type: Component,
529
524
  args: [{
530
525
  selector: 'x-table-text-column',
@@ -567,8 +562,8 @@ const EXPORTED_DECLARATIONS = [
567
562
  XTableTextColumn
568
563
  ];
569
564
  class XTableViewModule {
570
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
571
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.6", ngImport: i0, type: XTableViewModule, imports: [CdkTableModule,
565
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
566
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: XTableViewModule, imports: [CdkTableModule,
572
567
  // Table
573
568
  XTableView,
574
569
  // Template defs
@@ -609,9 +604,9 @@ class XTableViewModule {
609
604
  XTableFooterRow,
610
605
  XTableNoDataRow,
611
606
  XTableTextColumn] }); }
612
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewModule, imports: [CdkTableModule] }); }
607
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewModule, imports: [CdkTableModule] }); }
613
608
  }
614
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: XTableViewModule, decorators: [{
609
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XTableViewModule, decorators: [{
615
610
  type: NgModule,
616
611
  args: [{
617
612
  exports: [...EXPORTED_DECLARATIONS],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-table-view.mjs","sources":["../../../../lib/ng-nest/ui/table-view/table-view.service.ts","../../../../lib/ng-nest/ui/table-view/table-view.token.ts","../../../../lib/ng-nest/ui/table-view/cell.ts","../../../../lib/ng-nest/ui/table-view/row.ts","../../../../lib/ng-nest/ui/table-view/table-view.property.ts","../../../../lib/ng-nest/ui/table-view/table-view.component.ts","../../../../lib/ng-nest/ui/table-view/table-view.component.html","../../../../lib/ng-nest/ui/table-view/text-column.ts","../../../../lib/ng-nest/ui/table-view/table-view.module.ts","../../../../lib/ng-nest/ui/table-view/ng-nest-ui-table-view.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport type {\r\n XTableHeaderCellHandle,\r\n XTableHeaderRowHandle,\r\n XTableViewCellHandle,\r\n XTableViewRowHandle\r\n} from './table-view.property';\r\n\r\n@Injectable()\r\nexport class XTableViewService {\r\n selectedCells: XTableViewCellHandle[] = [];\r\n activedRows: XTableViewRowHandle[] = [];\r\n selectedHeaderCell: XTableHeaderCellHandle | null = null;\r\n activedHeaderCells: XTableHeaderCellHandle[] = [];\r\n stickyHeaderRows: XTableHeaderRowHandle[] = [];\r\n}\r\n","import { ElementRef, InjectionToken } from '@angular/core';\r\nimport type {\r\n XTableHeaderCellHandle,\r\n XTableHeaderRowDefHandle,\r\n XTableHeaderRowHandle,\r\n XTableViewCellHandle,\r\n XTableViewRowHandle\r\n} from './table-view.property';\r\n\r\nexport interface XTableViewContext {\r\n getHeaderRows(): readonly XTableHeaderRowHandle[];\r\n getHeaderRowRefs(): readonly XTableHeaderRowDefHandle[];\r\n getHeaderCells(): readonly XTableHeaderCellHandle[];\r\n getCells(): readonly XTableViewCellHandle[];\r\n getHeaderRowRef(): XTableHeaderRowDefHandle;\r\n getSentinelTop(): ElementRef<HTMLElement>;\r\n getRows(): readonly XTableViewRowHandle[];\r\n}\r\n\r\nexport const X_TABLE_VIEW_CONTEXT = new InjectionToken<XTableViewContext>('X_TABLE_VIEW_CONTEXT');\r\n","import { Directive, ElementRef, HostBinding, HostListener, inject, Input } from '@angular/core';\r\nimport {\r\n CdkCell,\r\n CdkCellDef,\r\n CdkColumnDef,\r\n CdkFooterCell,\r\n CdkFooterCellDef,\r\n CdkHeaderCell,\r\n CdkHeaderCellDef\r\n} from '@angular/cdk/table';\r\nimport { XTableViewService } from './table-view.service';\r\nimport { X_TABLE_VIEW_CONTEXT } from './table-view.token';\r\nimport type { XTableHeaderCellHandle, XTableViewCellHandle } from './table-view.property';\r\n\r\n@Directive({\r\n selector: '[xTableCellDef]',\r\n providers: [{ provide: CdkCellDef, useExisting: XTableViewCellDef }]\r\n})\r\nexport class XTableViewCellDef extends CdkCellDef {}\r\n\r\n@Directive({\r\n selector: '[xTableHeaderCellDef]',\r\n providers: [{ provide: CdkHeaderCellDef, useExisting: XTableHeaderCellDef }]\r\n})\r\nexport class XTableHeaderCellDef extends CdkHeaderCellDef {}\r\n\r\n@Directive({\r\n selector: '[xTableFooterCellDef]',\r\n providers: [{ provide: CdkFooterCellDef, useExisting: XTableFooterCellDef }]\r\n})\r\nexport class XTableFooterCellDef extends CdkFooterCellDef {}\r\n\r\n@Directive({\r\n selector: '[xTableColumnDef]',\r\n providers: [{ provide: CdkColumnDef, useExisting: XTableColumnDef }]\r\n})\r\nexport class XTableColumnDef extends CdkColumnDef {\r\n @Input('xTableColumnDef')\r\n override get name(): string {\r\n return this._name;\r\n }\r\n override set name(name: string) {\r\n this._setNameInput(name);\r\n }\r\n protected override _updateColumnCssClassName() {\r\n super._updateColumnCssClassName();\r\n this._columnCssClassName!.push(`x-table-column-${this.cssClassFriendlyName}`);\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: 'x-table-header-cell, th[x-table-header-cell]',\r\n host: {\r\n class: 'x-table-header-cell',\r\n role: 'columnheader'\r\n }\r\n})\r\nexport class XTableHeaderCell extends CdkHeaderCell implements XTableHeaderCellHandle {\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n tableView = inject(X_TABLE_VIEW_CONTEXT, { optional: true });\r\n elementRef = inject(ElementRef);\r\n\r\n @HostBinding('class.x-table-header-cell-actived') get isActived() {\r\n return this.tableViewService.activedHeaderCells.includes(this);\r\n }\r\n\r\n @HostListener('click') onClick() {\r\n this.tableViewService.activedHeaderCells = [this];\r\n\r\n const headerCells = this.tableView?.getHeaderCells() ?? [];\r\n const index = headerCells.indexOf(this);\r\n\r\n const cells = this.tableView?.getCells() ?? [];\r\n const columnsCount = (this.tableView?.getHeaderRowRef()?.getColumns() as string[]).length ?? 0;\r\n const rowsCount = this.tableView?.getRows().length ?? 0;\r\n\r\n if (columnsCount === 0 || rowsCount === 0) {\r\n return;\r\n }\r\n\r\n const columnCells: XTableViewCellHandle[] = [];\r\n for (let i = 0; i < rowsCount; i++) {\r\n const cellIndex = index * rowsCount + i;\r\n if (cellIndex < cells.length) {\r\n columnCells.push(cells[cellIndex]);\r\n }\r\n }\r\n\r\n this.tableViewService.selectedCells = [];\r\n\r\n for (let cell of columnCells) {\r\n this.tableViewService.selectedCells.push(cell);\r\n cell.setActivedRow(cell);\r\n }\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: 'x-table-footer-cell, td[x-table-footer-cell]',\r\n host: {\r\n class: 'x-table-footer-cell'\r\n }\r\n})\r\nexport class XTableFooterCell extends CdkFooterCell {}\r\n\r\n@Directive({\r\n selector: 'x-table-cell, td[x-table-cell]',\r\n host: {\r\n class: 'x-table-cell'\r\n }\r\n})\r\nexport class XTableViewCell extends CdkCell implements XTableViewCellHandle {\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n tableView = inject(X_TABLE_VIEW_CONTEXT, { optional: true });\r\n elementRef = inject(ElementRef);\r\n @HostBinding('class.x-table-cell-selected') get isSelected() {\r\n return this.tableViewService.selectedCells.includes(this);\r\n }\r\n\r\n @HostListener('click') onClick() {\r\n this.tableViewService.selectedCells = [this];\r\n this.tableViewService.activedRows = [];\r\n this.setActivedRow(this);\r\n this.setActivedColumn(this);\r\n }\r\n\r\n setActivedRow(cell: XTableViewCellHandle) {\r\n const rows = this.tableView?.getRows() ?? [];\r\n if (rows.length > 0) {\r\n const rowIndex = this.getRowIndex(cell);\r\n if (rowIndex >= 0 && rowIndex < rows.length) {\r\n const currentRow = rows[rowIndex];\r\n this.tableViewService.activedRows.push(currentRow);\r\n }\r\n }\r\n }\r\n\r\n setActivedColumn(cell: XTableViewCellHandle) {\r\n const headerCells = (this.tableView?.getHeaderCells() ?? []) as XTableHeaderCell[];\r\n const headerRowRefs = this.tableView?.getHeaderRowRefs() ?? [];\r\n const headerCellsArray = this.convertToColumnBasedArray(headerCells, headerRowRefs.length);\r\n const activedHeaderCells: XTableHeaderCell[] = [];\r\n for (let cells of headerCellsArray) {\r\n if (cells.length > 0) {\r\n const columnIndex = this.getColumnIndex(cell);\r\n if (columnIndex >= 0 && columnIndex < cells.length) {\r\n activedHeaderCells.push(cells[columnIndex]);\r\n }\r\n }\r\n }\r\n this.tableViewService.activedHeaderCells = activedHeaderCells;\r\n }\r\n\r\n private convertToColumnBasedArray<T>(input: T[], columnsPerRow: number): T[][] {\r\n const result: T[][] = [];\r\n\r\n for (let i = 0; i < columnsPerRow; i++) {\r\n result.push([]);\r\n }\r\n\r\n for (let i = 0; i < input.length; i++) {\r\n const columnIndex = i % columnsPerRow;\r\n result[columnIndex].push(input[i]);\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private getColumnIndex(cell: XTableViewCellHandle): number {\r\n if (!this.tableView || !this.tableView.getCells()) return -1;\r\n const cellsArray = this.tableView.getCells();\r\n const selectedIndex = cellsArray.indexOf(cell);\r\n if (selectedIndex === -1) return -1;\r\n const columnsPerRow = (this.tableView.getHeaderRowRef()?.getColumns() as string[]).length ?? 0;\r\n const rowsCount = this.tableView.getRows().length;\r\n if (columnsPerRow === 0 || rowsCount === 0) return -1;\r\n\r\n return Math.floor(selectedIndex / rowsCount);\r\n }\r\n\r\n private getRowIndex(cell: XTableViewCellHandle): number {\r\n if (!this.tableView || !this.tableView.getCells()) return -1;\r\n const cellsArray = this.tableView.getCells();\r\n const selectedIndex = cellsArray.indexOf(cell);\r\n if (selectedIndex === -1) return -1;\r\n const columnsPerRow = (this.tableView.getHeaderRowRef()?.getColumns() as string[]).length ?? 0;\r\n const rowsCount = this.tableView.getRows().length;\r\n if (columnsPerRow === 0 || rowsCount === 0) return -1;\r\n\r\n return selectedIndex % rowsCount;\r\n }\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Directive,\r\n HostBinding,\r\n ViewEncapsulation,\r\n booleanAttribute,\r\n inject,\r\n signal\r\n} from '@angular/core';\r\nimport {\r\n CdkCellOutlet,\r\n CdkFooterRow,\r\n CdkFooterRowDef,\r\n CdkHeaderRow,\r\n CdkHeaderRowDef,\r\n CdkNoDataRow,\r\n CdkRow,\r\n CdkRowDef\r\n} from '@angular/cdk/table';\r\nimport { XTableViewService } from './table-view.service';\r\nimport type { XTableHeaderRowDefHandle, XTableHeaderRowHandle, XTableViewRowHandle } from './table-view.property';\r\nimport { X_TABLE_VIEW_CONTEXT } from './table-view.token';\r\n\r\nconst ROW_TEMPLATE = `<ng-container cdkCellOutlet></ng-container>`;\r\n\r\n@Directive({\r\n selector: '[xTableHeaderRowDef]',\r\n providers: [{ provide: CdkHeaderRowDef, useExisting: XTableHeaderRowDef }],\r\n inputs: [\r\n { name: 'columns', alias: 'xTableHeaderRowDef' },\r\n { name: 'sticky', alias: 'xTableHeaderRowDefSticky', transform: booleanAttribute }\r\n ]\r\n})\r\nexport class XTableHeaderRowDef extends CdkHeaderRowDef implements XTableHeaderRowDefHandle {\r\n getSticky(): boolean {\r\n return this.sticky;\r\n }\r\n\r\n getColumns() {\r\n return this.columns as string[];\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: '[xTableFooterRowDef]',\r\n providers: [{ provide: CdkFooterRowDef, useExisting: XTableFooterRowDef }],\r\n inputs: [\r\n { name: 'columns', alias: 'xTableFooterRowDef' },\r\n { name: 'sticky', alias: 'xTableFooterRowDefSticky', transform: booleanAttribute }\r\n ]\r\n})\r\nexport class XTableFooterRowDef extends CdkFooterRowDef {}\r\n\r\n@Directive({\r\n selector: '[xTableRowDef]',\r\n providers: [{ provide: CdkRowDef, useExisting: XTableViewRowDef }],\r\n inputs: [\r\n { name: 'columns', alias: 'xTableRowDefColumns' },\r\n { name: 'when', alias: 'xTableRowDefWhen' }\r\n ]\r\n})\r\nexport class XTableViewRowDef<T> extends CdkRowDef<T> {}\r\n\r\n@Component({\r\n selector: 'x-table-header-row, tr[x-table-header-row]',\r\n template: ROW_TEMPLATE,\r\n host: {\r\n class: 'x-table-header-row',\r\n role: 'row'\r\n },\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'xTableHeaderRow',\r\n providers: [{ provide: CdkHeaderRow, useExisting: XTableHeaderRow }],\r\n imports: [CdkCellOutlet]\r\n})\r\nexport class XTableHeaderRow extends CdkHeaderRow implements XTableHeaderRowHandle {\r\n tableView = inject(X_TABLE_VIEW_CONTEXT, { optional: true });\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n sticking = signal(false);\r\n\r\n @HostBinding('class.x-table-sticky-top') get isSticking() {\r\n return this.sticking();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.listenerSticky();\r\n }\r\n\r\n listenerSticky() {\r\n const index = this.tableView?.getHeaderRows().findIndex((x) => x === this);\r\n if (index === undefined || index < 0) return;\r\n const rowLen = this.tableView?.getHeaderRowRefs()?.length ?? 0;\r\n if (rowLen === 0 || rowLen < index) return;\r\n const sticky = this.tableView?.getHeaderRowRefs()[index].getSticky();\r\n if (!sticky) return;\r\n const sentinel = this.tableView?.getSentinelTop()?.nativeElement!;\r\n const observer = new IntersectionObserver(\r\n ([entry]) => {\r\n const sticking = !entry.isIntersecting;\r\n if (sticking) {\r\n if (!this.tableViewService.stickyHeaderRows.includes(this)) {\r\n this.tableViewService.stickyHeaderRows.push(this);\r\n }\r\n } else {\r\n if (this.tableViewService.stickyHeaderRows.includes(this)) {\r\n this.tableViewService.stickyHeaderRows = this.tableViewService.stickyHeaderRows.filter(\r\n (item) => item !== this\r\n );\r\n }\r\n }\r\n this.sticking.set(sticking);\r\n },\r\n { threshold: 0 }\r\n );\r\n\r\n observer.observe(sentinel);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'x-table-footer-row, tr[x-table-footer-row]',\r\n template: ROW_TEMPLATE,\r\n host: {\r\n class: 'x-table-footer-row',\r\n role: 'row'\r\n },\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'xTableFooterRow',\r\n providers: [{ provide: CdkFooterRow, useExisting: XTableFooterRow }],\r\n imports: [CdkCellOutlet]\r\n})\r\nexport class XTableFooterRow extends CdkFooterRow {}\r\n\r\n@Component({\r\n selector: 'x-table-row, tr[x-table-row]',\r\n template: ROW_TEMPLATE,\r\n host: {\r\n class: 'x-table-row',\r\n role: 'row'\r\n },\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'xTableRow',\r\n providers: [{ provide: CdkRow, useExisting: XTableViewRow }],\r\n imports: [CdkCellOutlet]\r\n})\r\nexport class XTableViewRow extends CdkRow implements XTableViewRowHandle {\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n\r\n @HostBinding('class.x-table-row-actived') get isActived() {\r\n return this.tableViewService.activedRows.includes(this);\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: 'ng-template[xTableNoDataRow]',\r\n providers: [{ provide: CdkNoDataRow, useExisting: XTableNoDataRow }]\r\n})\r\nexport class XTableNoDataRow extends CdkNoDataRow {\r\n override _contentClassNames = ['x-table-no-data-row'];\r\n}\r\n","import { CdkTable } from '@angular/cdk/table';\r\nimport { Component, inject } from '@angular/core';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Table view\r\n * @selector x-table-view\r\n * @decorator component\r\n */\r\nexport const XTableViewPrefix = 'x-table-view';\r\nconst X_TABLE_VIEW_CONFIG_NAME = 'tableView';\r\n\r\n/**\r\n * Table view Property\r\n */\r\n@Component({ selector: `${XTableViewPrefix}-property`, template: '' })\r\nexport class XTableViewProperty<T> extends CdkTable<T> {\r\n config = inject(XConfigService).getConfigForComponent(X_TABLE_VIEW_CONFIG_NAME);\r\n}\r\n\r\nexport interface XTableHeaderRowHandle {\r\n listenerSticky(): void;\r\n}\r\n\r\nexport interface XTableViewRowHandle {}\r\n\r\nexport interface XTableHeaderRowDefHandle {\r\n getSticky(): boolean;\r\n getColumns(): string[];\r\n}\r\nexport interface XTableHeaderCellHandle {}\r\n\r\nexport interface XTableViewCellHandle {\r\n setActivedRow(cell: XTableViewCellHandle): void;\r\n setActivedColumn(cell: XTableViewCellHandle): void;\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n contentChild,\r\n contentChildren,\r\n ElementRef,\r\n inject,\r\n viewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {\r\n CdkTable,\r\n CDK_TABLE,\r\n STICKY_POSITIONING_LISTENER,\r\n HeaderRowOutlet,\r\n DataRowOutlet,\r\n NoDataRowOutlet,\r\n FooterRowOutlet\r\n} from '@angular/cdk/table';\r\nimport {\r\n _DisposeViewRepeaterStrategy,\r\n _RecycleViewRepeaterStrategy,\r\n _VIEW_REPEATER_STRATEGY\r\n} from '@angular/cdk/collections';\r\nimport { XTableViewProperty } from './table-view.property';\r\nimport { XTableViewService } from './table-view.service';\r\nimport { XTableViewCell, XTableColumnDef, XTableHeaderCell } from './cell';\r\nimport { XTableHeaderRow, XTableHeaderRowDef, XTableViewRow } from './row';\r\nimport { X_TABLE_VIEW_CONTEXT } from './table-view.token';\r\n\r\n@Component({\r\n selector: 'x-table-view, table[x-table-view]',\r\n exportAs: 'xTableView',\r\n templateUrl: 'table-view.component.html',\r\n styleUrl: 'table-view.component.scss',\r\n host: {\r\n class: 'x-table-view',\r\n '[class.x-table-fixed-layout]': 'fixedLayout'\r\n },\r\n providers: [\r\n { provide: CdkTable, useExisting: XTableView },\r\n { provide: CDK_TABLE, useExisting: XTableView },\r\n // Prevent nested tables from seeing this table's StickyPositioningListener.\r\n { provide: _VIEW_REPEATER_STRATEGY, useClass: _DisposeViewRepeaterStrategy },\r\n { provide: STICKY_POSITIONING_LISTENER, useValue: null },\r\n {\r\n provide: X_TABLE_VIEW_CONTEXT,\r\n useExisting: XTableView\r\n },\r\n XTableViewService\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n imports: [HeaderRowOutlet, DataRowOutlet, NoDataRowOutlet, FooterRowOutlet]\r\n})\r\nexport class XTableView<T> extends XTableViewProperty<T> {\r\n elementRef = inject(ElementRef);\r\n sentinelTop = viewChild<ElementRef<HTMLElement>>('sentinelTop');\r\n headerRowRef = contentChild(XTableHeaderRowDef);\r\n headerRowRefs = contentChildren(XTableHeaderRowDef);\r\n headerRows = contentChildren(XTableHeaderRow);\r\n columnDefs = contentChildren(XTableColumnDef);\r\n headerCells = contentChildren(XTableHeaderCell);\r\n\r\n cells = contentChildren(XTableViewCell);\r\n rows = contentChildren(XTableViewRow);\r\n\r\n /** Overrides the sticky CSS class set by the `CdkTable`. */\r\n protected override stickyCssClass = 'x-table-sticky';\r\n\r\n /** Overrides the need to add position: sticky on every sticky cell element in `CdkTable`. */\r\n protected override needsPositionStickyOnElement = false;\r\n\r\n getHeaderRows() {\r\n return this.headerRows();\r\n }\r\n\r\n getHeaderRowRefs() {\r\n return this.headerRowRefs();\r\n }\r\n\r\n getSentinelTop() {\r\n return this.sentinelTop();\r\n }\r\n\r\n getHeaderCells() {\r\n return this.headerCells();\r\n }\r\n\r\n getCells() {\r\n return this.cells();\r\n }\r\n\r\n getRows() {\r\n return this.rows();\r\n }\r\n}\r\n","<ng-content select=\"caption\" />\r\n<ng-content select=\"colgroup, col\" />\r\n\r\n<!--\r\n Unprojected content throws a hydration error so we need this to capture it.\r\n It gets removed on the client so it doesn't affect the layout.\r\n -->\r\n@if (_isServer) {\r\n <ng-content />\r\n}\r\n<div class=\"x-table-sentinel-top\" #sentinelTop></div>\r\n@if (_isNativeHtmlTable) {\r\n <thead>\r\n <ng-container headerRowOutlet />\r\n </thead>\r\n <tbody>\r\n <ng-container rowOutlet />\r\n <ng-container noDataRowOutlet />\r\n </tbody>\r\n <tfoot>\r\n <ng-container footerRowOutlet />\r\n </tfoot>\r\n} @else {\r\n <ng-container headerRowOutlet />\r\n <ng-container rowOutlet />\r\n <ng-container noDataRowOutlet />\r\n <ng-container footerRowOutlet />\r\n}\r\n","import { CdkTextColumn } from '@angular/cdk/table';\r\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\r\nimport { XTableColumnDef, XTableHeaderCellDef, XTableHeaderCell, XTableViewCellDef, XTableViewCell } from './cell';\r\n\r\n@Component({\r\n selector: 'x-table-text-column',\r\n template: `\r\n <ng-container xTableColumnDef>\r\n <th x-table-header-cell *xTableHeaderCellDef [style.text-align]=\"justify\">\r\n {{ headerText }}\r\n </th>\r\n <td x-table-cell *xTableCellDef=\"let data\" [style.text-align]=\"justify\">\r\n {{ dataAccessor(data, name) }}\r\n </td>\r\n </ng-container>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n imports: [XTableColumnDef, XTableHeaderCellDef, XTableHeaderCell, XTableViewCellDef, XTableViewCell]\r\n})\r\nexport class XTableTextColumn<T> extends CdkTextColumn<T> {}\r\n","import { NgModule } from '@angular/core';\r\nimport {\r\n XTableViewCell,\r\n XTableViewCellDef,\r\n XTableColumnDef,\r\n XTableFooterCell,\r\n XTableFooterCellDef,\r\n XTableHeaderCell,\r\n XTableHeaderCellDef\r\n} from './cell';\r\nimport {\r\n XTableFooterRow,\r\n XTableFooterRowDef,\r\n XTableHeaderRow,\r\n XTableHeaderRowDef,\r\n XTableNoDataRow,\r\n XTableViewRow,\r\n XTableViewRowDef\r\n} from './row';\r\nimport { XTableView } from './table-view.component';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { XTableTextColumn } from './text-column';\r\n\r\nconst EXPORTED_DECLARATIONS = [\r\n // Table\r\n XTableView,\r\n\r\n // Template defs\r\n XTableHeaderCellDef,\r\n XTableHeaderRowDef,\r\n XTableColumnDef,\r\n XTableViewCellDef,\r\n XTableViewRowDef,\r\n XTableFooterCellDef,\r\n XTableFooterRowDef,\r\n\r\n // Cell directives\r\n XTableHeaderCell,\r\n XTableViewCell,\r\n XTableFooterCell,\r\n\r\n // Row directives\r\n XTableHeaderRow,\r\n XTableViewRow,\r\n XTableFooterRow,\r\n XTableNoDataRow,\r\n\r\n XTableTextColumn\r\n];\r\n\r\n@NgModule({\r\n exports: [...EXPORTED_DECLARATIONS],\r\n imports: [CdkTableModule, ...EXPORTED_DECLARATIONS]\r\n})\r\nexport class XTableViewModule {}\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":"ng-nest-ui-table-view.mjs","sources":["../../../../lib/ng-nest/ui/table-view/table-view.service.ts","../../../../lib/ng-nest/ui/table-view/table-view.token.ts","../../../../lib/ng-nest/ui/table-view/cell.ts","../../../../lib/ng-nest/ui/table-view/row.ts","../../../../lib/ng-nest/ui/table-view/table-view.property.ts","../../../../lib/ng-nest/ui/table-view/table-view.component.ts","../../../../lib/ng-nest/ui/table-view/table-view.component.html","../../../../lib/ng-nest/ui/table-view/text-column.ts","../../../../lib/ng-nest/ui/table-view/table-view.module.ts","../../../../lib/ng-nest/ui/table-view/ng-nest-ui-table-view.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport type {\r\n XTableHeaderCellHandle,\r\n XTableHeaderRowHandle,\r\n XTableViewCellHandle,\r\n XTableViewRowHandle\r\n} from './table-view.property';\r\n\r\n@Injectable()\r\nexport class XTableViewService {\r\n selectedCells: XTableViewCellHandle[] = [];\r\n activedRows: XTableViewRowHandle[] = [];\r\n selectedHeaderCell: XTableHeaderCellHandle | null = null;\r\n activedHeaderCells: XTableHeaderCellHandle[] = [];\r\n stickyHeaderRows: XTableHeaderRowHandle[] = [];\r\n}\r\n","import { ElementRef, InjectionToken } from '@angular/core';\r\nimport type {\r\n XTableHeaderCellHandle,\r\n XTableHeaderRowDefHandle,\r\n XTableHeaderRowHandle,\r\n XTableViewCellHandle,\r\n XTableViewRowHandle\r\n} from './table-view.property';\r\n\r\nexport interface XTableViewContext {\r\n getHeaderRows(): readonly XTableHeaderRowHandle[];\r\n getHeaderRowRefs(): readonly XTableHeaderRowDefHandle[];\r\n getHeaderCells(): readonly XTableHeaderCellHandle[];\r\n getCells(): readonly XTableViewCellHandle[];\r\n getHeaderRowRef(): XTableHeaderRowDefHandle;\r\n getSentinelTop(): ElementRef<HTMLElement>;\r\n getRows(): readonly XTableViewRowHandle[];\r\n}\r\n\r\nexport const X_TABLE_VIEW_CONTEXT = new InjectionToken<XTableViewContext>('X_TABLE_VIEW_CONTEXT');\r\n","import { Directive, ElementRef, HostBinding, HostListener, inject, Input } from '@angular/core';\r\nimport {\r\n CdkCell,\r\n CdkCellDef,\r\n CdkColumnDef,\r\n CdkFooterCell,\r\n CdkFooterCellDef,\r\n CdkHeaderCell,\r\n CdkHeaderCellDef\r\n} from '@angular/cdk/table';\r\nimport { XTableViewService } from './table-view.service';\r\nimport { X_TABLE_VIEW_CONTEXT } from './table-view.token';\r\nimport type { XTableHeaderCellHandle, XTableViewCellHandle } from './table-view.property';\r\n\r\n@Directive({\r\n selector: '[xTableCellDef]',\r\n providers: [{ provide: CdkCellDef, useExisting: XTableViewCellDef }]\r\n})\r\nexport class XTableViewCellDef extends CdkCellDef {}\r\n\r\n@Directive({\r\n selector: '[xTableHeaderCellDef]',\r\n providers: [{ provide: CdkHeaderCellDef, useExisting: XTableHeaderCellDef }]\r\n})\r\nexport class XTableHeaderCellDef extends CdkHeaderCellDef {}\r\n\r\n@Directive({\r\n selector: '[xTableFooterCellDef]',\r\n providers: [{ provide: CdkFooterCellDef, useExisting: XTableFooterCellDef }]\r\n})\r\nexport class XTableFooterCellDef extends CdkFooterCellDef {}\r\n\r\n@Directive({\r\n selector: '[xTableColumnDef]',\r\n providers: [{ provide: CdkColumnDef, useExisting: XTableColumnDef }]\r\n})\r\nexport class XTableColumnDef extends CdkColumnDef {\r\n @Input('xTableColumnDef')\r\n override get name(): string {\r\n return this._name;\r\n }\r\n override set name(name: string) {\r\n this._setNameInput(name);\r\n }\r\n protected override _updateColumnCssClassName() {\r\n super._updateColumnCssClassName();\r\n this._columnCssClassName!.push(`x-table-column-${this.cssClassFriendlyName}`);\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: 'x-table-header-cell, th[x-table-header-cell]',\r\n host: {\r\n class: 'x-table-header-cell',\r\n role: 'columnheader'\r\n }\r\n})\r\nexport class XTableHeaderCell extends CdkHeaderCell implements XTableHeaderCellHandle {\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n tableView = inject(X_TABLE_VIEW_CONTEXT, { optional: true });\r\n elementRef = inject(ElementRef);\r\n\r\n @HostBinding('class.x-table-header-cell-actived') get isActived() {\r\n return this.tableViewService.activedHeaderCells.includes(this);\r\n }\r\n\r\n @HostListener('click') onClick() {\r\n this.tableViewService.activedHeaderCells = [this];\r\n\r\n const headerCells = this.tableView?.getHeaderCells() ?? [];\r\n const index = headerCells.indexOf(this);\r\n\r\n const cells = this.tableView?.getCells() ?? [];\r\n const columnsCount = (this.tableView?.getHeaderRowRef()?.getColumns() as string[]).length ?? 0;\r\n const rowsCount = this.tableView?.getRows().length ?? 0;\r\n\r\n if (columnsCount === 0 || rowsCount === 0) {\r\n return;\r\n }\r\n\r\n const columnCells: XTableViewCellHandle[] = [];\r\n for (let i = 0; i < rowsCount; i++) {\r\n const cellIndex = index * rowsCount + i;\r\n if (cellIndex < cells.length) {\r\n columnCells.push(cells[cellIndex]);\r\n }\r\n }\r\n\r\n this.tableViewService.selectedCells = [];\r\n\r\n for (let cell of columnCells) {\r\n this.tableViewService.selectedCells.push(cell);\r\n cell.setActivedRow(cell);\r\n }\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: 'x-table-footer-cell, td[x-table-footer-cell]',\r\n host: {\r\n class: 'x-table-footer-cell'\r\n }\r\n})\r\nexport class XTableFooterCell extends CdkFooterCell {}\r\n\r\n@Directive({\r\n selector: 'x-table-cell, td[x-table-cell]',\r\n host: {\r\n class: 'x-table-cell'\r\n }\r\n})\r\nexport class XTableViewCell extends CdkCell implements XTableViewCellHandle {\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n tableView = inject(X_TABLE_VIEW_CONTEXT, { optional: true });\r\n elementRef = inject(ElementRef);\r\n @HostBinding('class.x-table-cell-selected') get isSelected() {\r\n return this.tableViewService.selectedCells.includes(this);\r\n }\r\n\r\n @HostListener('click') onClick() {\r\n this.tableViewService.selectedCells = [this];\r\n this.tableViewService.activedRows = [];\r\n this.setActivedRow(this);\r\n this.setActivedColumn(this);\r\n }\r\n\r\n setActivedRow(cell: XTableViewCellHandle) {\r\n const rows = this.tableView?.getRows() ?? [];\r\n if (rows.length > 0) {\r\n const rowIndex = this.getRowIndex(cell);\r\n if (rowIndex >= 0 && rowIndex < rows.length) {\r\n const currentRow = rows[rowIndex];\r\n this.tableViewService.activedRows.push(currentRow);\r\n }\r\n }\r\n }\r\n\r\n setActivedColumn(cell: XTableViewCellHandle) {\r\n const headerCells = (this.tableView?.getHeaderCells() ?? []) as XTableHeaderCell[];\r\n const headerRowRefs = this.tableView?.getHeaderRowRefs() ?? [];\r\n const headerCellsArray = this.convertToColumnBasedArray(headerCells, headerRowRefs.length);\r\n const activedHeaderCells: XTableHeaderCell[] = [];\r\n for (let cells of headerCellsArray) {\r\n if (cells.length > 0) {\r\n const columnIndex = this.getColumnIndex(cell);\r\n if (columnIndex >= 0 && columnIndex < cells.length) {\r\n activedHeaderCells.push(cells[columnIndex]);\r\n }\r\n }\r\n }\r\n this.tableViewService.activedHeaderCells = activedHeaderCells;\r\n }\r\n\r\n private convertToColumnBasedArray<T>(input: T[], columnsPerRow: number): T[][] {\r\n const result: T[][] = [];\r\n\r\n for (let i = 0; i < columnsPerRow; i++) {\r\n result.push([]);\r\n }\r\n\r\n for (let i = 0; i < input.length; i++) {\r\n const columnIndex = i % columnsPerRow;\r\n result[columnIndex].push(input[i]);\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private getColumnIndex(cell: XTableViewCellHandle): number {\r\n if (!this.tableView || !this.tableView.getCells()) return -1;\r\n const cellsArray = this.tableView.getCells();\r\n const selectedIndex = cellsArray.indexOf(cell);\r\n if (selectedIndex === -1) return -1;\r\n const columnsPerRow = (this.tableView.getHeaderRowRef()?.getColumns() as string[]).length ?? 0;\r\n const rowsCount = this.tableView.getRows().length;\r\n if (columnsPerRow === 0 || rowsCount === 0) return -1;\r\n\r\n return Math.floor(selectedIndex / rowsCount);\r\n }\r\n\r\n private getRowIndex(cell: XTableViewCellHandle): number {\r\n if (!this.tableView || !this.tableView.getCells()) return -1;\r\n const cellsArray = this.tableView.getCells();\r\n const selectedIndex = cellsArray.indexOf(cell);\r\n if (selectedIndex === -1) return -1;\r\n const columnsPerRow = (this.tableView.getHeaderRowRef()?.getColumns() as string[]).length ?? 0;\r\n const rowsCount = this.tableView.getRows().length;\r\n if (columnsPerRow === 0 || rowsCount === 0) return -1;\r\n\r\n return selectedIndex % rowsCount;\r\n }\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Directive,\r\n HostBinding,\r\n ViewEncapsulation,\r\n booleanAttribute,\r\n inject,\r\n signal\r\n} from '@angular/core';\r\nimport {\r\n CdkCellOutlet,\r\n CdkFooterRow,\r\n CdkFooterRowDef,\r\n CdkHeaderRow,\r\n CdkHeaderRowDef,\r\n CdkNoDataRow,\r\n CdkRow,\r\n CdkRowDef\r\n} from '@angular/cdk/table';\r\nimport { XTableViewService } from './table-view.service';\r\nimport type { XTableHeaderRowDefHandle, XTableHeaderRowHandle, XTableViewRowHandle } from './table-view.property';\r\nimport { X_TABLE_VIEW_CONTEXT } from './table-view.token';\r\n\r\nconst ROW_TEMPLATE = `<ng-container cdkCellOutlet></ng-container>`;\r\n\r\n@Directive({\r\n selector: '[xTableHeaderRowDef]',\r\n providers: [{ provide: CdkHeaderRowDef, useExisting: XTableHeaderRowDef }],\r\n inputs: [\r\n { name: 'columns', alias: 'xTableHeaderRowDef' },\r\n { name: 'sticky', alias: 'xTableHeaderRowDefSticky', transform: booleanAttribute }\r\n ]\r\n})\r\nexport class XTableHeaderRowDef extends CdkHeaderRowDef implements XTableHeaderRowDefHandle {\r\n getSticky(): boolean {\r\n return this.sticky;\r\n }\r\n\r\n getColumns() {\r\n return this.columns as string[];\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: '[xTableFooterRowDef]',\r\n providers: [{ provide: CdkFooterRowDef, useExisting: XTableFooterRowDef }],\r\n inputs: [\r\n { name: 'columns', alias: 'xTableFooterRowDef' },\r\n { name: 'sticky', alias: 'xTableFooterRowDefSticky', transform: booleanAttribute }\r\n ]\r\n})\r\nexport class XTableFooterRowDef extends CdkFooterRowDef {}\r\n\r\n@Directive({\r\n selector: '[xTableRowDef]',\r\n providers: [{ provide: CdkRowDef, useExisting: XTableViewRowDef }],\r\n inputs: [\r\n { name: 'columns', alias: 'xTableRowDefColumns' },\r\n { name: 'when', alias: 'xTableRowDefWhen' }\r\n ]\r\n})\r\nexport class XTableViewRowDef<T> extends CdkRowDef<T> {}\r\n\r\n@Component({\r\n selector: 'x-table-header-row, tr[x-table-header-row]',\r\n template: ROW_TEMPLATE,\r\n host: {\r\n class: 'x-table-header-row',\r\n role: 'row'\r\n },\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'xTableHeaderRow',\r\n providers: [{ provide: CdkHeaderRow, useExisting: XTableHeaderRow }],\r\n imports: [CdkCellOutlet]\r\n})\r\nexport class XTableHeaderRow extends CdkHeaderRow implements XTableHeaderRowHandle {\r\n tableView = inject(X_TABLE_VIEW_CONTEXT, { optional: true });\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n sticking = signal(false);\r\n\r\n @HostBinding('class.x-table-sticky-top') get isSticking() {\r\n return this.sticking();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.listenerSticky();\r\n }\r\n\r\n listenerSticky() {\r\n const index = this.tableView?.getHeaderRows().findIndex((x) => x === this);\r\n if (index === undefined || index < 0) return;\r\n const rowLen = this.tableView?.getHeaderRowRefs()?.length ?? 0;\r\n if (rowLen === 0 || rowLen < index) return;\r\n const sticky = this.tableView?.getHeaderRowRefs()[index].getSticky();\r\n if (!sticky) return;\r\n const sentinel = this.tableView?.getSentinelTop()?.nativeElement!;\r\n const observer = new IntersectionObserver(\r\n ([entry]) => {\r\n const sticking = !entry.isIntersecting;\r\n if (sticking) {\r\n if (!this.tableViewService.stickyHeaderRows.includes(this)) {\r\n this.tableViewService.stickyHeaderRows.push(this);\r\n }\r\n } else {\r\n if (this.tableViewService.stickyHeaderRows.includes(this)) {\r\n this.tableViewService.stickyHeaderRows = this.tableViewService.stickyHeaderRows.filter(\r\n (item) => item !== this\r\n );\r\n }\r\n }\r\n this.sticking.set(sticking);\r\n },\r\n { threshold: 0 }\r\n );\r\n\r\n observer.observe(sentinel);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'x-table-footer-row, tr[x-table-footer-row]',\r\n template: ROW_TEMPLATE,\r\n host: {\r\n class: 'x-table-footer-row',\r\n role: 'row'\r\n },\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'xTableFooterRow',\r\n providers: [{ provide: CdkFooterRow, useExisting: XTableFooterRow }],\r\n imports: [CdkCellOutlet]\r\n})\r\nexport class XTableFooterRow extends CdkFooterRow {}\r\n\r\n@Component({\r\n selector: 'x-table-row, tr[x-table-row]',\r\n template: ROW_TEMPLATE,\r\n host: {\r\n class: 'x-table-row',\r\n role: 'row'\r\n },\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'xTableRow',\r\n providers: [{ provide: CdkRow, useExisting: XTableViewRow }],\r\n imports: [CdkCellOutlet]\r\n})\r\nexport class XTableViewRow extends CdkRow implements XTableViewRowHandle {\r\n tableViewService = inject(XTableViewService, { optional: true })!;\r\n\r\n @HostBinding('class.x-table-row-actived') get isActived() {\r\n return this.tableViewService.activedRows.includes(this);\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: 'ng-template[xTableNoDataRow]',\r\n providers: [{ provide: CdkNoDataRow, useExisting: XTableNoDataRow }]\r\n})\r\nexport class XTableNoDataRow extends CdkNoDataRow {\r\n override _contentClassNames = ['x-table-no-data-row'];\r\n}\r\n","import { CdkTable } from '@angular/cdk/table';\r\nimport { Component, inject } from '@angular/core';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Table view\r\n * @selector x-table-view\r\n * @decorator component\r\n */\r\nexport const XTableViewPrefix = 'x-table-view';\r\nconst X_TABLE_VIEW_CONFIG_NAME = 'tableView';\r\n\r\n/**\r\n * Table view Property\r\n */\r\n@Component({ selector: `${XTableViewPrefix}-property`, template: '' })\r\nexport class XTableViewProperty<T> extends CdkTable<T> {\r\n config = inject(XConfigService).getConfigForComponent(X_TABLE_VIEW_CONFIG_NAME);\r\n}\r\n\r\nexport interface XTableHeaderRowHandle {\r\n listenerSticky(): void;\r\n}\r\n\r\nexport interface XTableViewRowHandle {}\r\n\r\nexport interface XTableHeaderRowDefHandle {\r\n getSticky(): boolean;\r\n getColumns(): string[];\r\n}\r\nexport interface XTableHeaderCellHandle {}\r\n\r\nexport interface XTableViewCellHandle {\r\n setActivedRow(cell: XTableViewCellHandle): void;\r\n setActivedColumn(cell: XTableViewCellHandle): void;\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n contentChild,\r\n contentChildren,\r\n ElementRef,\r\n inject,\r\n viewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {\r\n CdkTable,\r\n CDK_TABLE,\r\n STICKY_POSITIONING_LISTENER,\r\n HeaderRowOutlet,\r\n DataRowOutlet,\r\n NoDataRowOutlet,\r\n FooterRowOutlet\r\n} from '@angular/cdk/table';\r\n\r\nimport { XTableViewProperty } from './table-view.property';\r\nimport { XTableViewService } from './table-view.service';\r\nimport { XTableViewCell, XTableColumnDef, XTableHeaderCell } from './cell';\r\nimport { XTableHeaderRow, XTableHeaderRowDef, XTableViewRow } from './row';\r\nimport { X_TABLE_VIEW_CONTEXT } from './table-view.token';\r\n\r\n@Component({\r\n selector: 'x-table-view, table[x-table-view]',\r\n exportAs: 'xTableView',\r\n templateUrl: 'table-view.component.html',\r\n styleUrl: 'table-view.component.scss',\r\n host: {\r\n class: 'x-table-view',\r\n '[class.x-table-fixed-layout]': 'fixedLayout'\r\n },\r\n providers: [\r\n { provide: CdkTable, useExisting: XTableView },\r\n { provide: CDK_TABLE, useExisting: XTableView },\r\n { provide: STICKY_POSITIONING_LISTENER, useValue: null },\r\n {\r\n provide: X_TABLE_VIEW_CONTEXT,\r\n useExisting: XTableView\r\n },\r\n XTableViewService\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n imports: [HeaderRowOutlet, DataRowOutlet, NoDataRowOutlet, FooterRowOutlet]\r\n})\r\nexport class XTableView<T> extends XTableViewProperty<T> {\r\n elementRef = inject(ElementRef);\r\n sentinelTop = viewChild<ElementRef<HTMLElement>>('sentinelTop');\r\n headerRowRef = contentChild(XTableHeaderRowDef);\r\n headerRowRefs = contentChildren(XTableHeaderRowDef);\r\n headerRows = contentChildren(XTableHeaderRow);\r\n columnDefs = contentChildren(XTableColumnDef);\r\n headerCells = contentChildren(XTableHeaderCell);\r\n\r\n cells = contentChildren(XTableViewCell);\r\n rows = contentChildren(XTableViewRow);\r\n\r\n /** Overrides the sticky CSS class set by the `CdkTable`. */\r\n protected override stickyCssClass = 'x-table-sticky';\r\n\r\n /** Overrides the need to add position: sticky on every sticky cell element in `CdkTable`. */\r\n protected override needsPositionStickyOnElement = false;\r\n\r\n getHeaderRows() {\r\n return this.headerRows();\r\n }\r\n\r\n getHeaderRowRefs() {\r\n return this.headerRowRefs();\r\n }\r\n\r\n getSentinelTop() {\r\n return this.sentinelTop();\r\n }\r\n\r\n getHeaderCells() {\r\n return this.headerCells();\r\n }\r\n\r\n getCells() {\r\n return this.cells();\r\n }\r\n\r\n getRows() {\r\n return this.rows();\r\n }\r\n}\r\n","<ng-content select=\"caption\" />\r\n<ng-content select=\"colgroup, col\" />\r\n\r\n<!--\r\n Unprojected content throws a hydration error so we need this to capture it.\r\n It gets removed on the client so it doesn't affect the layout.\r\n -->\r\n@if (_isServer) {\r\n <ng-content />\r\n}\r\n<div class=\"x-table-sentinel-top\" #sentinelTop></div>\r\n@if (_isNativeHtmlTable) {\r\n <thead>\r\n <ng-container headerRowOutlet />\r\n </thead>\r\n <tbody>\r\n <ng-container rowOutlet />\r\n <ng-container noDataRowOutlet />\r\n </tbody>\r\n <tfoot>\r\n <ng-container footerRowOutlet />\r\n </tfoot>\r\n} @else {\r\n <ng-container headerRowOutlet />\r\n <ng-container rowOutlet />\r\n <ng-container noDataRowOutlet />\r\n <ng-container footerRowOutlet />\r\n}\r\n","import { CdkTextColumn } from '@angular/cdk/table';\r\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\r\nimport { XTableColumnDef, XTableHeaderCellDef, XTableHeaderCell, XTableViewCellDef, XTableViewCell } from './cell';\r\n\r\n@Component({\r\n selector: 'x-table-text-column',\r\n template: `\r\n <ng-container xTableColumnDef>\r\n <th x-table-header-cell *xTableHeaderCellDef [style.text-align]=\"justify\">\r\n {{ headerText }}\r\n </th>\r\n <td x-table-cell *xTableCellDef=\"let data\" [style.text-align]=\"justify\">\r\n {{ dataAccessor(data, name) }}\r\n </td>\r\n </ng-container>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n imports: [XTableColumnDef, XTableHeaderCellDef, XTableHeaderCell, XTableViewCellDef, XTableViewCell]\r\n})\r\nexport class XTableTextColumn<T> extends CdkTextColumn<T> {}\r\n","import { NgModule } from '@angular/core';\r\nimport {\r\n XTableViewCell,\r\n XTableViewCellDef,\r\n XTableColumnDef,\r\n XTableFooterCell,\r\n XTableFooterCellDef,\r\n XTableHeaderCell,\r\n XTableHeaderCellDef\r\n} from './cell';\r\nimport {\r\n XTableFooterRow,\r\n XTableFooterRowDef,\r\n XTableHeaderRow,\r\n XTableHeaderRowDef,\r\n XTableNoDataRow,\r\n XTableViewRow,\r\n XTableViewRowDef\r\n} from './row';\r\nimport { XTableView } from './table-view.component';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { XTableTextColumn } from './text-column';\r\n\r\nconst EXPORTED_DECLARATIONS = [\r\n // Table\r\n XTableView,\r\n\r\n // Template defs\r\n XTableHeaderCellDef,\r\n XTableHeaderRowDef,\r\n XTableColumnDef,\r\n XTableViewCellDef,\r\n XTableViewRowDef,\r\n XTableFooterCellDef,\r\n XTableFooterRowDef,\r\n\r\n // Cell directives\r\n XTableHeaderCell,\r\n XTableViewCell,\r\n XTableFooterCell,\r\n\r\n // Row directives\r\n XTableHeaderRow,\r\n XTableViewRow,\r\n XTableFooterRow,\r\n XTableNoDataRow,\r\n\r\n XTableTextColumn\r\n];\r\n\r\n@NgModule({\r\n exports: [...EXPORTED_DECLARATIONS],\r\n imports: [CdkTableModule, ...EXPORTED_DECLARATIONS]\r\n})\r\nexport class XTableViewModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;MASa,iBAAiB,CAAA;AAD9B,IAAA,WAAA,GAAA;QAEE,IAAA,CAAA,aAAa,GAA2B,EAAE;QAC1C,IAAA,CAAA,WAAW,GAA0B,EAAE;QACvC,IAAA,CAAA,kBAAkB,GAAkC,IAAI;QACxD,IAAA,CAAA,kBAAkB,GAA6B,EAAE;QACjD,IAAA,CAAA,gBAAgB,GAA4B,EAAE;AAC/C,IAAA;iIANY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;qIAAjB,iBAAiB,EAAA,CAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B;;;ACWM,MAAM,oBAAoB,GAAG,IAAI,cAAc,CAAoB,sBAAsB,CAAC;;ACD3F,MAAO,iBAAkB,SAAQ,UAAU,CAAA;iIAApC,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,SAAA,EAFjB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEzD,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;oBAC3B,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAA,iBAAmB,EAAE;AACpE,iBAAA;;AAOK,MAAO,mBAAoB,SAAQ,gBAAgB,CAAA;iIAA5C,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,SAAA,EAFnB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEjE,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;oBACjC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAA,mBAAqB,EAAE;AAC5E,iBAAA;;AAOK,MAAO,mBAAoB,SAAQ,gBAAgB,CAAA;iIAA5C,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,SAAA,EAFnB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEjE,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;oBACjC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAA,mBAAqB,EAAE;AAC5E,iBAAA;;AAOK,MAAO,eAAgB,SAAQ,YAAY,CAAA;AAC/C,IAAA,IACa,IAAI,GAAA;QACf,OAAO,IAAI,CAAC,KAAK;IACnB;IACA,IAAa,IAAI,CAAC,IAAY,EAAA;AAC5B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IAC1B;IACmB,yBAAyB,GAAA;QAC1C,KAAK,CAAC,yBAAyB,EAAE;QACjC,IAAI,CAAC,mBAAoB,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,IAAI,CAAC,oBAAoB,CAAA,CAAE,CAAC;IAC/E;iIAXW,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,CAAA,iBAAA,EAAA,MAAA,CAAA,EAAA,EAAA,SAAA,EAFf,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEzD,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;oBAC7B,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAA,eAAiB,EAAE;AACpE,iBAAA;;sBAEE,KAAK;uBAAC,iBAAiB;;AAoBpB,MAAO,gBAAiB,SAAQ,aAAa,CAAA;AAPnD,IAAA,WAAA,GAAA;;QAQE,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAE;QACjE,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAmChC,IAAA;AAjCC,IAAA,IAAsD,SAAS,GAAA;QAC7D,OAAO,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC;IAChE;IAEuB,OAAO,GAAA;QAC5B,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC;QAEjD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE;QAC1D,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;QAEvC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC9C,QAAA,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,UAAU,EAAe,EAAC,MAAM,IAAI,CAAC;AAC9F,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC;QAEvD,IAAI,YAAY,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,EAAE;YACzC;QACF;QAEA,MAAM,WAAW,GAA2B,EAAE;AAC9C,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;AAClC,YAAA,MAAM,SAAS,GAAG,KAAK,GAAG,SAAS,GAAG,CAAC;AACvC,YAAA,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE;gBAC5B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACpC;QACF;AAEA,QAAA,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,EAAE;AAExC,QAAA,KAAK,IAAI,IAAI,IAAI,WAAW,EAAE;YAC5B,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;AAC9C,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QAC1B;IACF;iIArCW,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,cAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mCAAA,EAAA,gBAAA,EAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8CAA8C;AACxD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,qBAAqB;AAC5B,wBAAA,IAAI,EAAE;AACP;AACF,iBAAA;;sBAME,WAAW;uBAAC,mCAAmC;;sBAI/C,YAAY;uBAAC,OAAO;;AAqCjB,MAAO,gBAAiB,SAAQ,aAAa,CAAA;iIAAtC,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAN5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8CAA8C;AACxD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE;AACR;AACF,iBAAA;;AASK,MAAO,cAAe,SAAQ,OAAO,CAAA;AAN3C,IAAA,WAAA,GAAA;;QAOE,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAE;QACjE,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AA6EhC,IAAA;AA5EC,IAAA,IAAgD,UAAU,GAAA;QACxD,OAAO,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC3D;IAEuB,OAAO,GAAA;QAC5B,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC;AAC5C,QAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAG,EAAE;AACtC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;IAC7B;AAEA,IAAA,aAAa,CAAC,IAA0B,EAAA;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;AAC5C,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACvC,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE;AAC3C,gBAAA,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC;gBACjC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;YACpD;QACF;IACF;AAEA,IAAA,gBAAgB,CAAC,IAA0B,EAAA;AACzC,QAAA,MAAM,WAAW,IAAI,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,CAAuB;QAClF,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,IAAI,EAAE;AAC9D,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;QAC1F,MAAM,kBAAkB,GAAuB,EAAE;AACjD,QAAA,KAAK,IAAI,KAAK,IAAI,gBAAgB,EAAE;AAClC,YAAA,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;gBAC7C,IAAI,WAAW,IAAI,CAAC,IAAI,WAAW,GAAG,KAAK,CAAC,MAAM,EAAE;oBAClD,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAC7C;YACF;QACF;AACA,QAAA,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,GAAG,kBAAkB;IAC/D;IAEQ,yBAAyB,CAAI,KAAU,EAAE,aAAqB,EAAA;QACpE,MAAM,MAAM,GAAU,EAAE;AAExB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;AACtC,YAAA,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACjB;AAEA,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACrC,YAAA,MAAM,WAAW,GAAG,CAAC,GAAG,aAAa;YACrC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACpC;AAEA,QAAA,OAAO,MAAM;IACf;AAEQ,IAAA,cAAc,CAAC,IAA0B,EAAA;QAC/C,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;YAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QAC5C,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9C,IAAI,aAAa,KAAK,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;AACnC,QAAA,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,UAAU,EAAe,EAAC,MAAM,IAAI,CAAC;QAC9F,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM;AACjD,QAAA,IAAI,aAAa,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAErD,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,SAAS,CAAC;IAC9C;AAEQ,IAAA,WAAW,CAAC,IAA0B,EAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;YAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QAC5C,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9C,IAAI,aAAa,KAAK,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;AACnC,QAAA,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,UAAU,EAAe,EAAC,MAAM,IAAI,CAAC;QAC9F,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM;AACjD,QAAA,IAAI,aAAa,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAErD,OAAO,aAAa,GAAG,SAAS;IAClC;iIA/EW,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,UAAA,EAAA,EAAA,6BAAA,EAAA,iBAAA,EAAA,EAAA,cAAA,EAAA,cAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAN1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gCAAgC;AAC1C,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE;AACR;AACF,iBAAA;;sBAKE,WAAW;uBAAC,6BAA6B;;sBAIzC,YAAY;uBAAC,OAAO;;;AC/FvB,MAAM,YAAY,GAAG,CAAA,2CAAA,CAA6C;AAU5D,MAAO,kBAAmB,SAAQ,eAAe,CAAA;IACrD,SAAS,GAAA;QACP,OAAO,IAAI,CAAC,MAAM;IACpB;IAEA,UAAU,GAAA;QACR,OAAO,IAAI,CAAC,OAAmB;IACjC;iIAPW,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,oBAAA,EAAA,SAAA,CAAA,EAAA,MAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAHqC,gBAAgB,CAAA,EAAA,EAAA,SAAA,EAHvE,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAM/D,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;oBAChC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAA,kBAAoB,EAAE,CAAC;AAC1E,oBAAA,MAAM,EAAE;AACN,wBAAA,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,oBAAoB,EAAE;wBAChD,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,0BAA0B,EAAE,SAAS,EAAE,gBAAgB;AACjF;AACF,iBAAA;;AAmBK,MAAO,kBAAmB,SAAQ,eAAe,CAAA;iIAA1C,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,oBAAA,EAAA,SAAA,CAAA,EAAA,MAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAHqC,gBAAgB,CAAA,EAAA,EAAA,SAAA,EAHvE,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAM/D,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;oBAChC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAA,kBAAoB,EAAE,CAAC;AAC1E,oBAAA,MAAM,EAAE;AACN,wBAAA,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,oBAAoB,EAAE;wBAChD,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,0BAA0B,EAAE,SAAS,EAAE,gBAAgB;AACjF;AACF,iBAAA;;AAWK,MAAO,gBAAoB,SAAQ,SAAY,CAAA;iIAAxC,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,EAAA,SAAA,CAAA,EAAA,IAAA,EAAA,CAAA,kBAAA,EAAA,MAAA,CAAA,EAAA,EAAA,SAAA,EANhB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAMvD,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAA,gBAAkB,EAAE,CAAC;AAClE,oBAAA,MAAM,EAAE;AACN,wBAAA,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,qBAAqB,EAAE;AACjD,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB;AAC1C;AACF,iBAAA;;AAgBK,MAAO,eAAgB,SAAQ,YAAY,CAAA;AAbjD,IAAA,WAAA,GAAA;;QAcE,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC5D,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAE;AACjE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,oDAAC;AAuCzB,IAAA;AArCC,IAAA,IAA6C,UAAU,GAAA;AACrD,QAAA,OAAO,IAAI,CAAC,QAAQ,EAAE;IACxB;IAEA,eAAe,GAAA;QACb,IAAI,CAAC,cAAc,EAAE;IACvB;IAEA,cAAc,GAAA;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AAC1E,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,CAAC;YAAE;AACtC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,MAAM,IAAI,CAAC;AAC9D,QAAA,IAAI,MAAM,KAAK,CAAC,IAAI,MAAM,GAAG,KAAK;YAAE;AACpC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE;AACpE,QAAA,IAAI,CAAC,MAAM;YAAE;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,aAAc;QACjE,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CACvC,CAAC,CAAC,KAAK,CAAC,KAAI;AACV,YAAA,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,cAAc;YACtC,IAAI,QAAQ,EAAE;AACZ,gBAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC1D,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACnD;YACF;iBAAO;gBACL,IAAI,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBACzD,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CACpF,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CACxB;gBACH;YACF;AACA,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC7B,QAAA,CAAC,EACD,EAAE,SAAS,EAAE,CAAC,EAAE,CACjB;AAED,QAAA,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC5B;iIAzCW,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4CAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,KAAA,EAAA,EAAA,UAAA,EAAA,EAAA,0BAAA,EAAA,iBAAA,EAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,EAAA,SAAA,EAHf,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,yLAC1D,aAAa,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,OAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEZ,eAAe,EAAA,UAAA,EAAA,CAAA;kBAb3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4CAA4C;AACtD,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,oBAAoB;AAC3B,wBAAA,IAAI,EAAE;AACP,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,OAAO;oBAChD,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE,iBAAiB;oBAC3B,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAA,eAAiB,EAAE,CAAC;oBACpE,OAAO,EAAE,CAAC,aAAa;AACxB,iBAAA;;sBAME,WAAW;uBAAC,0BAA0B;;AAoDnC,MAAO,eAAgB,SAAQ,YAAY,CAAA;iIAApC,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4CAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,KAAA,EAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,EAAA,SAAA,EAHf,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,yLAC1D,aAAa,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,OAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEZ,eAAe,EAAA,UAAA,EAAA,CAAA;kBAb3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4CAA4C;AACtD,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,oBAAoB;AAC3B,wBAAA,IAAI,EAAE;AACP,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,OAAO;oBAChD,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE,iBAAiB;oBAC3B,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAA,eAAiB,EAAE,CAAC;oBACpE,OAAO,EAAE,CAAC,aAAa;AACxB,iBAAA;;AAgBK,MAAO,aAAc,SAAQ,MAAM,CAAA;AAbzC,IAAA,WAAA,GAAA;;QAcE,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAE;AAKlE,IAAA;AAHC,IAAA,IAA8C,SAAS,GAAA;QACrD,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;IACzD;iIALW,aAAa,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,KAAA,EAAA,EAAA,UAAA,EAAA,EAAA,2BAAA,EAAA,gBAAA,EAAA,EAAA,cAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAHb,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,mLAClD,aAAa,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,OAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEZ,aAAa,EAAA,UAAA,EAAA,CAAA;kBAbzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,aAAa;AACpB,wBAAA,IAAI,EAAE;AACP,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,OAAO;oBAChD,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE,WAAW;oBACrB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAA,aAAe,EAAE,CAAC;oBAC5D,OAAO,EAAE,CAAC,aAAa;AACxB,iBAAA;;sBAIE,WAAW;uBAAC,2BAA2B;;AASpC,MAAO,eAAgB,SAAQ,YAAY,CAAA;AAJjD,IAAA,WAAA,GAAA;;AAKW,QAAA,IAAA,CAAA,kBAAkB,GAAG,CAAC,qBAAqB,CAAC;AACtD,IAAA;iIAFY,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,SAAA,EAFf,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEzD,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;oBACxC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAA,eAAiB,EAAE;AACpE,iBAAA;;;AC5JD;;;;AAIG;AACI,MAAM,gBAAgB,GAAG;AAChC,MAAM,wBAAwB,GAAG,WAAW;AAE5C;;AAEG;AAEG,MAAO,kBAAsB,SAAQ,QAAW,CAAA;AADtD,IAAA,WAAA,GAAA;;QAEE,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,qBAAqB,CAAC,wBAAwB,CAAC;AAChF,IAAA;iIAFY,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,wGADkC,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;2FACtD,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,SAAS;mBAAC,EAAE,QAAQ,EAAE,CAAA,EAAG,gBAAgB,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE;;;ACkC/D,MAAO,UAAc,SAAQ,kBAAqB,CAAA;AAvBxD,IAAA,WAAA,GAAA;;AAwBE,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,IAAA,CAAA,WAAW,GAAG,SAAS,CAA0B,aAAa,uDAAC;AAC/D,QAAA,IAAA,CAAA,YAAY,GAAG,YAAY,CAAC,kBAAkB,wDAAC;AAC/C,QAAA,IAAA,CAAA,aAAa,GAAG,eAAe,CAAC,kBAAkB,yDAAC;AACnD,QAAA,IAAA,CAAA,UAAU,GAAG,eAAe,CAAC,eAAe,sDAAC;AAC7C,QAAA,IAAA,CAAA,UAAU,GAAG,eAAe,CAAC,eAAe,sDAAC;AAC7C,QAAA,IAAA,CAAA,WAAW,GAAG,eAAe,CAAC,gBAAgB,uDAAC;AAE/C,QAAA,IAAA,CAAA,KAAK,GAAG,eAAe,CAAC,cAAc,iDAAC;AACvC,QAAA,IAAA,CAAA,IAAI,GAAG,eAAe,CAAC,aAAa,gDAAC;;QAGlB,IAAA,CAAA,cAAc,GAAG,gBAAgB;;QAGjC,IAAA,CAAA,4BAA4B,GAAG,KAAK;AAyBxD,IAAA;IAvBC,aAAa,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,EAAE;IAC1B;IAEA,gBAAgB,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,aAAa,EAAE;IAC7B;IAEA,cAAc,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE;IAC3B;IAEA,cAAc,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE;IAC3B;IAEA,QAAQ,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE;IACrB;IAEA,OAAO,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,IAAI,EAAE;IACpB;iIAxCW,UAAU,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,4BAAA,EAAA,aAAA,EAAA,EAAA,cAAA,EAAA,cAAA,EAAA,EAAA,SAAA,EAdV;AACT,YAAA,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE;AAC9C,YAAA,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE;AAC/C,YAAA,EAAE,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,IAAI,EAAE;AACxD,YAAA;AACE,gBAAA,OAAO,EAAE,oBAAoB;AAC7B,gBAAA,WAAW,EAAE;AACd,aAAA;YACD;SACD,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAQ2B,kBAAkB,mFACd,kBAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,YAAA,EAAA,SAAA,EACrB,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,YAAA,EAAA,SAAA,EACf,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,aAAA,EAAA,SAAA,EACd,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAEtB,cAAc,uDACf,aAAa,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,aAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3DtC,4xBA4BA,EAAA,MAAA,EAAA,CAAA,k6EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDmBY,eAAe,8DAAE,aAAa,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,OAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAE/D,UAAU,EAAA,UAAA,EAAA,CAAA;kBAvBtB,SAAS;+BACE,mCAAmC,EAAA,QAAA,EACnC,YAAY,EAAA,IAAA,EAGhB;AACJ,wBAAA,KAAK,EAAE,cAAc;AACrB,wBAAA,8BAA8B,EAAE;qBACjC,EAAA,SAAA,EACU;AACT,wBAAA,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,YAAY,EAAE;AAC9C,wBAAA,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,YAAY,EAAE;AAC/C,wBAAA,EAAE,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,IAAI,EAAE;AACxD,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,WAAW,EAAA;AACZ,yBAAA;wBACD;AACD,qBAAA,EAAA,aAAA,EACc,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,OAAO,EAAA,OAAA,EACvC,CAAC,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,CAAC,EAAA,QAAA,EAAA,4xBAAA,EAAA,MAAA,EAAA,CAAA,k6EAAA,CAAA,EAAA;AAI1B,SAAA,CAAA,EAAA,cAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,aAAa,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAClC,kBAAkB,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MACd,kBAAkB,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MACrB,eAAe,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MACf,eAAe,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MACd,gBAAgB,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAEtB,cAAc,yFACf,aAAa,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AEvChC,MAAO,gBAAoB,SAAQ,aAAgB,CAAA;iIAA5C,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAdjB,CAAA;;;;;;;;;GAST,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAGS,eAAe,2FAAE,mBAAmB,EAAA,QAAA,EAAA,uBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,iBAAiB,4DAAE,cAAc,EAAA,QAAA,EAAA,gCAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,OAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAExF,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAhB5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;AAST,EAAA,CAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,OAAO;oBAChD,OAAO,EAAE,CAAC,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc;AACpG,iBAAA;;;ACID,MAAM,qBAAqB,GAAG;;IAE5B,UAAU;;IAGV,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,mBAAmB;IACnB,kBAAkB;;IAGlB,gBAAgB;IAChB,cAAc;IACd,gBAAgB;;IAGhB,eAAe;IACf,aAAa;IACb,eAAe;IACf,eAAe;IAEf;CACD;MAMY,gBAAgB,CAAA;iIAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAFjB,cAAc;;YA3BxB,UAAU;;YAGV,mBAAmB;YACnB,kBAAkB;YAClB,eAAe;YACf,iBAAiB;YACjB,gBAAgB;YAChB,mBAAmB;YACnB,kBAAkB;;YAGlB,gBAAgB;YAChB,cAAc;YACd,gBAAgB;;YAGhB,eAAe;YACf,aAAa;YACb,eAAe;YACf,eAAe;YAEf,gBAAgB,CAAA,EAAA,OAAA,EAAA;;YAtBhB,UAAU;;YAGV,mBAAmB;YACnB,kBAAkB;YAClB,eAAe;YACf,iBAAiB;YACjB,gBAAgB;YAChB,mBAAmB;YACnB,kBAAkB;;YAGlB,gBAAgB;YAChB,cAAc;YACd,gBAAgB;;YAGhB,eAAe;YACf,aAAa;YACb,eAAe;YACf,eAAe;YAEf,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAOL,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAFjB,cAAc,CAAA,EAAA,CAAA,CAAA;;2FAEb,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,GAAG,qBAAqB,CAAC;AACnC,oBAAA,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,qBAAqB;AACnD,iBAAA;;;ACrDD;;AAEG;;;;"}