src/lib/error/angular-error.component.ts
| selector | rxap-angular-error |
| imports |
DataGridModule
KeyValuePipe
NgForOf
NgIf
|
| styleUrls | ./angular-error.component.scss |
| templateUrl | ./angular-error.component.html |
Properties |
|
Accessors |
| Public Readonly error |
Type : AngularErrorDialogData
|
Default value : inject(RXAP_ERROR_DIALOG_ERROR)
|
|
Defined in src/lib/error/angular-error.component.ts:23
|
| hasTags |
gethasTags()
|
|
Defined in src/lib/error/angular-error.component.ts:25
|
| hasContexts |
gethasContexts()
|
|
Defined in src/lib/error/angular-error.component.ts:29
|
| hasExtra |
gethasExtra()
|
|
Defined in src/lib/error/angular-error.component.ts:33
|
import {
KeyValuePipe,
NgForOf,
NgIf,
} from '@angular/common';
import {
Component,
inject,
} from '@angular/core';
import { DataGridModule } from '@rxap/data-grid';
import { IErrorDialogComponent } from '../error-dialog/error-dialog.component';
import { RXAP_ERROR_DIALOG_ERROR } from '../tokens';
import { AngularErrorDialogData } from './angular-error-dialog-data';
@Component({
selector: 'rxap-angular-error',
imports: [DataGridModule, KeyValuePipe, NgForOf, NgIf],
templateUrl: './angular-error.component.html',
styleUrls: ['./angular-error.component.scss']
})
export class AngularErrorComponent implements IErrorDialogComponent<AngularErrorDialogData> {
public readonly error: AngularErrorDialogData = inject(RXAP_ERROR_DIALOG_ERROR);
public get hasTags(): boolean {
return Object.keys(this.error.tags).length > 0;
}
public get hasContexts(): boolean {
return Object.keys(this.error.contexts).length > 0;
}
public get hasExtra(): boolean {
return Object.keys(this.error.extra).length > 0;
}
}
<rxap-data-grid [data]="error">
<ng-container *ngIf="error.name" rxapDataGridRowDef="name"></ng-container>
<ng-container rxapDataGridRowDef="message"></ng-container>
<ng-container *ngIf="hasExtra || hasTags || hasContexts || error.stack" rxapDataGridRowDef>
<th *rxapDataGridHeaderCellDef>
<span i18n>Details</span>
</th>
</ng-container>
<ng-container *ngIf="error.stack" rxapDataGridRowDef="stack">
<td *rxapDataGridCellDef="let value">
<pre>{{ value }}</pre>
</td>
</ng-container>
<ng-container *ngIf="hasTags" rxapDataGridRowDef="tags">
<td *rxapDataGridCellDef="let value">
<rxap-data-grid [data]="value" auto></rxap-data-grid>
</td>
</ng-container>
<ng-container *ngIf="hasExtra" rxapDataGridRowDef="extra">
<td *rxapDataGridCellDef="let value">
<rxap-data-grid [data]="value" auto></rxap-data-grid>
</td>
</ng-container>
<ng-container *ngIf="hasContexts" rxapDataGridRowDef="contexts">
<td *rxapDataGridCellDef="let value">
<rxap-data-grid [data]="value" auto></rxap-data-grid>
</td>
</ng-container>
</rxap-data-grid>
./angular-error.component.scss