|
50 | 50 | outlined |
51 | 51 | class="grey-border-color download-button" |
52 | 52 | severity="info" |
53 | | - (click)="downloadMenu.toggle($event)" |
| 53 | + (onClick)="downloadMenu.toggle($event)" |
54 | 54 | /> |
55 | 55 |
|
56 | 56 | @if (reportsLink()) { |
|
69 | 69 |
|
70 | 70 | <p-table |
71 | 71 | [columns]="selectedColumnsComputed()" |
72 | | - [value]="tableData()" |
| 72 | + [value]="isLoading() ? skeletonData : tableData()" |
73 | 73 | [autoLayout]="true" |
74 | 74 | [scrollable]="true" |
75 | 75 | [sortMode]="'single'" |
|
96 | 96 | </ng-template> |
97 | 97 |
|
98 | 98 | <ng-template #body let-rowData let-columns="columns"> |
99 | | - <tr> |
100 | | - @for (col of columns; track col.field) { |
101 | | - <td class="relative"> |
102 | | - <div class="flex align-items-center hover-group"> |
103 | | - @if (col.isLink && isLink(rowData[col.field])) { |
104 | | - <a |
105 | | - [href]="getLinkUrl(rowData[col.field])" |
106 | | - [target]="getLinkTarget(rowData[col.field], col)" |
107 | | - class="text-primary no-underline hover:underline" |
108 | | - > |
| 99 | + @if (isLoading()) { |
| 100 | + <tr class="loading-row"> |
| 101 | + <td colspan="15"> |
| 102 | + <p-skeleton width="100%" height="3.3rem" borderRadius="0" /> |
| 103 | + </td> |
| 104 | + </tr> |
| 105 | + } @else { |
| 106 | + <tr> |
| 107 | + @for (col of columns; track col.field) { |
| 108 | + <td class="relative"> |
| 109 | + <div class="flex align-items-center hover-group"> |
| 110 | + @if (col.isLink && isLink(rowData[col.field])) { |
| 111 | + <a |
| 112 | + [href]="getLinkUrl(rowData[col.field])" |
| 113 | + [target]="getLinkTarget(rowData[col.field], col)" |
| 114 | + class="text-primary no-underline hover:underline" |
| 115 | + > |
| 116 | + @if (col.dateFormat) { |
| 117 | + {{ getCellValue(rowData[col.field]) | date: col.dateFormat }} |
| 118 | + } @else { |
| 119 | + {{ getCellValue(rowData[col.field]) }} |
| 120 | + } |
| 121 | + </a> |
| 122 | + } @else { |
109 | 123 | @if (col.dateFormat) { |
110 | 124 | {{ getCellValue(rowData[col.field]) | date: col.dateFormat }} |
111 | 125 | } @else { |
112 | 126 | {{ getCellValue(rowData[col.field]) }} |
113 | 127 | } |
114 | | - </a> |
115 | | - } @else { |
116 | | - @if (col.dateFormat) { |
117 | | - {{ getCellValue(rowData[col.field]) | date: col.dateFormat }} |
118 | | - } @else { |
119 | | - {{ getCellValue(rowData[col.field]) }} |
120 | 128 | } |
121 | | - } |
122 | 129 |
|
123 | | - @if (col.showIcon) { |
124 | | - <p-button |
125 | | - [pTooltip]="col.iconTooltip | translate" |
126 | | - class="icon-button pl-3" |
127 | | - [icon]="col.iconClass" |
128 | | - variant="text" |
129 | | - severity="info" |
130 | | - (click)="onIconClick(rowData, col)" |
131 | | - /> |
132 | | - } |
133 | | - </div> |
134 | | - </td> |
135 | | - } |
136 | | - </tr> |
| 130 | + @if (col.showIcon) { |
| 131 | + <p-button |
| 132 | + [pTooltip]="col.iconTooltip | translate" |
| 133 | + class="icon-button pl-3" |
| 134 | + [icon]="col.iconClass" |
| 135 | + variant="text" |
| 136 | + severity="info" |
| 137 | + (onClick)="onIconClick(rowData, col)" |
| 138 | + /> |
| 139 | + } |
| 140 | + </div> |
| 141 | + </td> |
| 142 | + } |
| 143 | + </tr> |
| 144 | + } |
137 | 145 | </ng-template> |
138 | 146 |
|
139 | 147 | <ng-template pTemplate="emptymessage"> |
|
154 | 162 | severity="contrast" |
155 | 163 | text |
156 | 164 | [disabled]="!prevLink()" |
157 | | - (click)="switchPage(prevLink())" |
| 165 | + (onClick)="switchPage(prevLink())" |
158 | 166 | > |
159 | 167 | </p-button> |
160 | 168 |
|
|
163 | 171 | severity="contrast" |
164 | 172 | text |
165 | 173 | [disabled]="!nextLink()" |
166 | | - (click)="switchPage(nextLink())" |
| 174 | + (onClick)="switchPage(nextLink())" |
167 | 175 | > |
168 | 176 | </p-button> |
169 | 177 | </div> |
|
0 commit comments