@firestitch/system 18.0.23 → 18.0.25
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { OnInit } from '@angular/core';
|
|
1
|
+
import { EventEmitter, OnInit } from '@angular/core';
|
|
2
2
|
import { MatDialog } from '@angular/material/dialog';
|
|
3
3
|
import { FsApi } from '@firestitch/api';
|
|
4
4
|
import { FsListAction, FsListComponent, FsListConfig } from '@firestitch/list';
|
|
@@ -12,6 +12,7 @@ export declare class ServerLogsComponent implements OnInit {
|
|
|
12
12
|
data: any[];
|
|
13
13
|
paging: any;
|
|
14
14
|
}>;
|
|
15
|
+
acknowledgedAll: EventEmitter<void>;
|
|
15
16
|
config: FsListConfig;
|
|
16
17
|
actions: FsListAction[];
|
|
17
18
|
LogTypes: {};
|
|
@@ -21,5 +22,5 @@ export declare class ServerLogsComponent implements OnInit {
|
|
|
21
22
|
open(log: any): void;
|
|
22
23
|
private _configList;
|
|
23
24
|
static ɵfac: i0.ɵɵFactoryDeclaration<ServerLogsComponent, never>;
|
|
24
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ServerLogsComponent, "fs-system-server-logs", never, { "loadLogs": { "alias": "loadLogs"; "required": false; }; }, {}, never, never, false, never>;
|
|
25
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ServerLogsComponent, "fs-system-server-logs", never, { "loadLogs": { "alias": "loadLogs"; "required": false; }; }, { "acknowledgedAll": "acknowledgedAll"; }, never, never, false, never>;
|
|
25
26
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
2
|
import { MatDialog } from '@angular/material/dialog';
|
|
3
3
|
import { FsApi } from '@firestitch/api';
|
|
4
4
|
import { index } from '@firestitch/common';
|
|
@@ -18,6 +18,7 @@ export class ServerLogsComponent {
|
|
|
18
18
|
_api;
|
|
19
19
|
list;
|
|
20
20
|
loadLogs;
|
|
21
|
+
acknowledgedAll = new EventEmitter();
|
|
21
22
|
config = null;
|
|
22
23
|
actions = [];
|
|
23
24
|
LogTypes = index(LogTypes, 'value', 'name');
|
|
@@ -34,8 +35,8 @@ export class ServerLogsComponent {
|
|
|
34
35
|
.put(`system/logs/server/${log.id}/${acknowledge}`)
|
|
35
36
|
.subscribe((response) => {
|
|
36
37
|
this.list
|
|
37
|
-
.updateData(response, (
|
|
38
|
-
return
|
|
38
|
+
.updateData(response.log, (item) => {
|
|
39
|
+
return item.id === log.id;
|
|
39
40
|
});
|
|
40
41
|
});
|
|
41
42
|
}
|
|
@@ -48,7 +49,21 @@ export class ServerLogsComponent {
|
|
|
48
49
|
}
|
|
49
50
|
_configList() {
|
|
50
51
|
this.config = {
|
|
51
|
-
actions:
|
|
52
|
+
actions: [
|
|
53
|
+
...this.actions,
|
|
54
|
+
{
|
|
55
|
+
primary: false,
|
|
56
|
+
label: 'Acknowledge all',
|
|
57
|
+
click: () => {
|
|
58
|
+
this._api
|
|
59
|
+
.put('system/logs/server/acknowledge')
|
|
60
|
+
.subscribe(() => {
|
|
61
|
+
this.list.reload();
|
|
62
|
+
this.acknowledgedAll.emit();
|
|
63
|
+
});
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
],
|
|
52
67
|
paging: {
|
|
53
68
|
strategy: PaginationStrategy.Many,
|
|
54
69
|
},
|
|
@@ -67,15 +82,17 @@ export class ServerLogsComponent {
|
|
|
67
82
|
};
|
|
68
83
|
}
|
|
69
84
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ServerLogsComponent, deps: [{ token: i1.MatDialog }, { token: i2.FsApi }], target: i0.ɵɵFactoryTarget.Component });
|
|
70
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ServerLogsComponent, selector: "fs-system-server-logs", inputs: { loadLogs: "loadLogs" }, viewQueries: [{ propertyName: "list", first: true, predicate: FsListComponent, descendants: true }], ngImport: i0, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template
|
|
85
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ServerLogsComponent, selector: "fs-system-server-logs", inputs: { loadLogs: "loadLogs" }, outputs: { acknowledgedAll: "acknowledgedAll" }, viewQueries: [{ propertyName: "list", first: true, predicate: FsListComponent, descendants: true }], ngImport: i0, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a (click)=\"toggleAcknowledged(row)\">\n <fs-badge\n [size]=\"10\"\n [tooltip]=\"row.acknowledged ? 'Acknowledged' : 'Unacknowledged'\"\n [color]=\"row.acknowledged ? '#E3E3E3' : '#F30000'\">\n </fs-badge>\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Message\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a\n href=\"javascript:;\"\n (click)=\"open(row)\">\n {{ row.message }}\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Type\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n {{ LogTypes[row.type] }}\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Date\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <fs-date-ago [date]=\"row.createDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n</fs-list>", styles: ["fs-list ::ng-deep .col-date,fs-list ::ng-deep .col-type{white-space:nowrap}\n"], dependencies: [{ kind: "component", type: i3.FsDateAgoComponent, selector: "fs-date-ago", inputs: ["date", "showTime", "format", "showTooltip", "tooltipDateFormat"] }, { kind: "component", type: i4.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }, { kind: "directive", type: i4.FsListColumnDirective, selector: "fs-list-column", inputs: ["show", "title", "name", "customizable", "sortable", "sortableDefault", "sortableDirection", "direction", "align", "width", "class"] }, { kind: "directive", type: i4.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }, { kind: "directive", type: i4.FsListHeaderDirective, selector: "[fs-list-header]", inputs: ["colspan", "align", "class"] }, { kind: "component", type: i5.FsBadgeComponent, selector: "fs-badge", inputs: ["color", "text", "tooltip", "size", "shape", "image", "icon", "iconSize", "iconSizePercent", "iconColor", "backgroundSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
71
86
|
}
|
|
72
87
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ServerLogsComponent, decorators: [{
|
|
73
88
|
type: Component,
|
|
74
|
-
args: [{ selector: 'fs-system-server-logs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template
|
|
89
|
+
args: [{ selector: 'fs-system-server-logs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a (click)=\"toggleAcknowledged(row)\">\n <fs-badge\n [size]=\"10\"\n [tooltip]=\"row.acknowledged ? 'Acknowledged' : 'Unacknowledged'\"\n [color]=\"row.acknowledged ? '#E3E3E3' : '#F30000'\">\n </fs-badge>\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Message\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a\n href=\"javascript:;\"\n (click)=\"open(row)\">\n {{ row.message }}\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Type\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n {{ LogTypes[row.type] }}\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Date\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <fs-date-ago [date]=\"row.createDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n</fs-list>", styles: ["fs-list ::ng-deep .col-date,fs-list ::ng-deep .col-type{white-space:nowrap}\n"] }]
|
|
75
90
|
}], ctorParameters: () => [{ type: i1.MatDialog }, { type: i2.FsApi }], propDecorators: { list: [{
|
|
76
91
|
type: ViewChild,
|
|
77
92
|
args: [FsListComponent]
|
|
78
93
|
}], loadLogs: [{
|
|
79
94
|
type: Input
|
|
95
|
+
}], acknowledgedAll: [{
|
|
96
|
+
type: Output
|
|
80
97
|
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLWxvZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL3N5c3RlbS9jb21wb25lbnRzL3NlcnZlci1sb2dzL3NlcnZlci1sb2dzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9zeXN0ZW0vY29tcG9uZW50cy9zZXJ2ZXItbG9ncy9zZXJ2ZXItbG9ncy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFckQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDOUMsT0FBTyxFQUFnQixlQUFlLEVBQWdCLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHbkcsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7QUFTbEQsTUFBTSxPQUFPLG1CQUFtQjtJQWNwQjtJQUNBO0lBWkgsSUFBSSxDQUFrQjtJQUViLFFBQVEsQ0FBMEQ7SUFFakUsZUFBZSxHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRW5FLE1BQU0sR0FBaUIsSUFBSSxDQUFDO0lBQzVCLE9BQU8sR0FBbUIsRUFBRSxDQUFD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IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBGc0FwaSB9IGZyb20gJ0BmaXJlc3RpdGNoL2FwaSc7XG5pbXBvcnQgeyBpbmRleCB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5pbXBvcnQgeyBJdGVtVHlwZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQgeyBGc0xpc3RBY3Rpb24sIEZzTGlzdENvbXBvbmVudCwgRnNMaXN0Q29uZmlnLCBQYWdpbmF0aW9uU3RyYXRlZ3kgfSBmcm9tICdAZmlyZXN0aXRjaC9saXN0JztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBMb2dUeXBlcyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbnN0cyc7XG5cbmltcG9ydCB7IFNlcnZlckxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtc3lzdGVtLXNlcnZlci1sb2dzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlcnZlci1sb2dzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VydmVyLWxvZ3MuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNlcnZlckxvZ3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBWaWV3Q2hpbGQoRnNMaXN0Q29tcG9uZW50KSBcbiAgcHVibGljIGxpc3Q6IEZzTGlzdENvbXBvbmVudDtcblxuICBASW5wdXQoKSBwdWJsaWMgbG9hZExvZ3M6IChkYXRhOiBhbnkpID0+IE9ic2VydmFibGU8eyBkYXRhOiBhbnlbXSwgcGFnaW5nOiBhbnkgfT47XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBhY2tub3dsZWRnZWRBbGw6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgY29uZmlnOiBGc0xpc3RDb25maWcgPSBudWxsO1xuICBwdWJsaWMgYWN0aW9uczogRnNMaXN0QWN0aW9uW10gPSBbXTtcbiAgcHVibGljIExvZ1R5cGVzID0gaW5kZXgoTG9nVHlwZXMsICd2YWx1ZScsICduYW1lJyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSBfYXBpOiBGc0FwaSxcbiAgKSB7IH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5fY29uZmlnTGlzdCgpO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZUFja25vd2xlZGdlZChsb2cpIHtcbiAgICBjb25zdCBhY2tub3dsZWRnZSA9IGxvZy5hY2tub3dsZWRnZWQgPyAndW5hY2tub3dsZWRnZScgOiAnYWNrbm93bGVkZ2UnO1xuICAgIHRoaXMuX2FwaVxuICAgICAgLnB1dChgc3lzdGVtL2xvZ3Mvc2VydmVyLyR7bG9nLmlkfS8ke2Fja25vd2xlZGdlfWApXG4gICAgICAuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLmxpc3RcbiAgICAgICAgICAudXBkYXRlRGF0YShyZXNwb25zZS5sb2csXG4gICAgICAgICAgICAoaXRlbTogYW55KSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBpdGVtLmlkID09PSBsb2cuaWQ7XG4gICAgICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9wZW4obG9nKSB7XG4gICAgdGhpcy5fZGlhbG9nXG4gICAgICAub3BlbihTZXJ2ZXJMb2dDb21wb25lbnQsIHtcbiAgICAgICAgZGF0YTogeyBsb2c6IGxvZyB9LFxuICAgICAgICB3aWR0aDogJzg1JScsXG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ0xpc3QoKSB7XG4gICAgdGhpcy5jb25maWcgPSB7XG4gICAgICBhY3Rpb25zOiBbXG4gICAgICAgIC4uLnRoaXMuYWN0aW9ucyxcbiAgICAgICAge1xuICAgICAgICAgIHByaW1hcnk6IGZhbHNlLFxuICAgICAgICAgIGxhYmVsOiAnQWNrbm93bGVkZ2UgYWxsJyxcbiAgICAgICAgICBjbGljazogKCkgPT4gIHtcbiAgICAgICAgICAgIHRoaXMuX2FwaVxuICAgICAgICAgICAgICAucHV0KCdzeXN0ZW0vbG9ncy9zZXJ2ZXIvYWNrbm93bGVkZ2UnKVxuICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmxpc3QucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5hY2tub3dsZWRnZWRBbGwuZW1pdCgpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHBhZ2luZzogIHtcbiAgICAgICAgc3RyYXRlZ3k6IFBhZ2luYXRpb25TdHJhdGVneS5NYW55LFxuICAgICAgfSxcbiAgICAgIGZpbHRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6IEl0ZW1UeXBlLktleXdvcmQsXG4gICAgICAgICAgbmFtZTogJ2tleXdvcmQnLFxuICAgICAgICAgIGxhYmVsOiAnU2VhcmNoJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBmZXRjaDogKHF1ZXJ5KSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlcbiAgICAgICAgICAuZ2V0KCdzeXN0ZW0vbG9ncy9zZXJ2ZXInLCBxdWVyeSwgeyBrZXk6IG51bGwgfSlcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcG9uc2U6IGFueSkgPT4gKHsgZGF0YTogcmVzcG9uc2UubG9ncywgcGFnaW5nOiByZXNwb25zZS5wYWdpbmcgfSkpLFxuICAgICAgICAgICk7XG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cbiIsIjxmcy1saXN0IFtjb25maWddPVwiY29uZmlnXCI+XG4gIDxmcy1saXN0LWNvbHVtbiB3aWR0aD1cIjElXCI+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAgIGZzLWxpc3QtY2VsbFxuICAgICAgICBsZXQtcm93PVwicm93XCI+XG4gICAgICA8YSAoY2xpY2spPVwidG9nZ2xlQWNrbm93bGVkZ2VkKHJvdylcIj5cbiAgICAgICAgPGZzLWJhZGdlXG4gICAgICAgICAgW3NpemVdPVwiMTBcIlxuICAgICAgICAgIFt0b29sdGlwXT1cInJvdy5hY2tub3dsZWRnZWQgPyAnQWNrbm93bGVkZ2VkJyA6ICdVbmFja25vd2xlZGdlZCdcIlxuICAgICAgICAgIFtjb2xvcl09XCJyb3cuYWNrbm93bGVkZ2VkID8gJyNFM0UzRTMnIDogJyNGMzAwMDAnXCI+XG4gICAgICAgIDwvZnMtYmFkZ2U+XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9mcy1saXN0LWNvbHVtbj5cbiAgPGZzLWxpc3QtY29sdW1uPlxuICAgIDxuZy10ZW1wbGF0ZSBmcy1saXN0LWhlYWRlcj5cbiAgICAgIE1lc3NhZ2VcbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICBmcy1saXN0LWNlbGxcbiAgICAgICAgbGV0LXJvdz1cInJvd1wiPlxuICAgICAgPGFcbiAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgICAgICAoY2xpY2spPVwib3Blbihyb3cpXCI+XG4gICAgICAgIHt7IHJvdy5tZXNzYWdlIH19XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9mcy1saXN0LWNvbHVtbj5cbiAgPGZzLWxpc3QtY29sdW1uIGNsYXNzPVwiY29sLWRhdGVcIj5cbiAgICA8bmctdGVtcGxhdGUgZnMtbGlzdC1oZWFkZXI+XG4gICAgICBUeXBlXG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgZnMtbGlzdC1jZWxsXG4gICAgICAgIGxldC1yb3c9XCJyb3dcIj5cbiAgICAgIHt7IExvZ1R5cGVzW3Jvdy50eXBlXSB9fVxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZnMtbGlzdC1jb2x1bW4+XG4gIDxmcy1saXN0LWNvbHVtbiBjbGFzcz1cImNvbC1kYXRlXCI+XG4gICAgPG5nLXRlbXBsYXRlIGZzLWxpc3QtaGVhZGVyPlxuICAgICAgRGF0ZVxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAgIGZzLWxpc3QtY2VsbFxuICAgICAgICBsZXQtcm93PVwicm93XCI+XG4gICAgICA8ZnMtZGF0ZS1hZ28gW2RhdGVdPVwicm93LmNyZWF0ZURhdGVcIj48L2ZzLWRhdGUtYWdvPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZnMtbGlzdC1jb2x1bW4+XG48L2ZzLWxpc3Q+Il19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i1$1 from '@angular/common';
|
|
2
2
|
import { CommonModule, JsonPipe } from '@angular/common';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { Component, ChangeDetectionStrategy, Inject, ViewChild, Input, NgModule, Injectable, inject, ChangeDetectorRef,
|
|
4
|
+
import { Component, ChangeDetectionStrategy, Inject, ViewChild, Input, NgModule, Injectable, inject, ChangeDetectorRef, EventEmitter, Output, Pipe, InjectionToken } from '@angular/core';
|
|
5
5
|
import * as i5$3 from '@angular/forms';
|
|
6
6
|
import { FormsModule } from '@angular/forms';
|
|
7
7
|
import { RouterModule } from '@angular/router';
|
|
@@ -1506,6 +1506,7 @@ class ServerLogsComponent {
|
|
|
1506
1506
|
_api;
|
|
1507
1507
|
list;
|
|
1508
1508
|
loadLogs;
|
|
1509
|
+
acknowledgedAll = new EventEmitter();
|
|
1509
1510
|
config = null;
|
|
1510
1511
|
actions = [];
|
|
1511
1512
|
LogTypes = index(LogTypes, 'value', 'name');
|
|
@@ -1522,8 +1523,8 @@ class ServerLogsComponent {
|
|
|
1522
1523
|
.put(`system/logs/server/${log.id}/${acknowledge}`)
|
|
1523
1524
|
.subscribe((response) => {
|
|
1524
1525
|
this.list
|
|
1525
|
-
.updateData(response, (
|
|
1526
|
-
return
|
|
1526
|
+
.updateData(response.log, (item) => {
|
|
1527
|
+
return item.id === log.id;
|
|
1527
1528
|
});
|
|
1528
1529
|
});
|
|
1529
1530
|
}
|
|
@@ -1536,7 +1537,21 @@ class ServerLogsComponent {
|
|
|
1536
1537
|
}
|
|
1537
1538
|
_configList() {
|
|
1538
1539
|
this.config = {
|
|
1539
|
-
actions:
|
|
1540
|
+
actions: [
|
|
1541
|
+
...this.actions,
|
|
1542
|
+
{
|
|
1543
|
+
primary: false,
|
|
1544
|
+
label: 'Acknowledge all',
|
|
1545
|
+
click: () => {
|
|
1546
|
+
this._api
|
|
1547
|
+
.put('system/logs/server/acknowledge')
|
|
1548
|
+
.subscribe(() => {
|
|
1549
|
+
this.list.reload();
|
|
1550
|
+
this.acknowledgedAll.emit();
|
|
1551
|
+
});
|
|
1552
|
+
},
|
|
1553
|
+
},
|
|
1554
|
+
],
|
|
1540
1555
|
paging: {
|
|
1541
1556
|
strategy: PaginationStrategy.Many,
|
|
1542
1557
|
},
|
|
@@ -1555,16 +1570,18 @@ class ServerLogsComponent {
|
|
|
1555
1570
|
};
|
|
1556
1571
|
}
|
|
1557
1572
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ServerLogsComponent, deps: [{ token: i1.MatDialog }, { token: i1$2.FsApi }], target: i0.ɵɵFactoryTarget.Component });
|
|
1558
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ServerLogsComponent, selector: "fs-system-server-logs", inputs: { loadLogs: "loadLogs" }, viewQueries: [{ propertyName: "list", first: true, predicate: FsListComponent, descendants: true }], ngImport: i0, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template
|
|
1573
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: ServerLogsComponent, selector: "fs-system-server-logs", inputs: { loadLogs: "loadLogs" }, outputs: { acknowledgedAll: "acknowledgedAll" }, viewQueries: [{ propertyName: "list", first: true, predicate: FsListComponent, descendants: true }], ngImport: i0, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a (click)=\"toggleAcknowledged(row)\">\n <fs-badge\n [size]=\"10\"\n [tooltip]=\"row.acknowledged ? 'Acknowledged' : 'Unacknowledged'\"\n [color]=\"row.acknowledged ? '#E3E3E3' : '#F30000'\">\n </fs-badge>\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Message\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a\n href=\"javascript:;\"\n (click)=\"open(row)\">\n {{ row.message }}\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Type\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n {{ LogTypes[row.type] }}\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Date\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <fs-date-ago [date]=\"row.createDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n</fs-list>", styles: ["fs-list ::ng-deep .col-date,fs-list ::ng-deep .col-type{white-space:nowrap}\n"], dependencies: [{ kind: "component", type: i4$2.FsDateAgoComponent, selector: "fs-date-ago", inputs: ["date", "showTime", "format", "showTooltip", "tooltipDateFormat"] }, { kind: "component", type: i5.FsListComponent, selector: "fs-list", inputs: ["config", "loaderLines"], outputs: ["filtersReady"] }, { kind: "directive", type: i5.FsListColumnDirective, selector: "fs-list-column", inputs: ["show", "title", "name", "customizable", "sortable", "sortableDefault", "sortableDirection", "direction", "align", "width", "class"] }, { kind: "directive", type: i5.FsListCellDirective, selector: "[fs-list-cell]", inputs: ["colspan", "align", "class"] }, { kind: "directive", type: i5.FsListHeaderDirective, selector: "[fs-list-header]", inputs: ["colspan", "align", "class"] }, { kind: "component", type: i5$2.FsBadgeComponent, selector: "fs-badge", inputs: ["color", "text", "tooltip", "size", "shape", "image", "icon", "iconSize", "iconSizePercent", "iconColor", "backgroundSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1559
1574
|
}
|
|
1560
1575
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: ServerLogsComponent, decorators: [{
|
|
1561
1576
|
type: Component,
|
|
1562
|
-
args: [{ selector: 'fs-system-server-logs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template
|
|
1577
|
+
args: [{ selector: 'fs-system-server-logs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fs-list [config]=\"config\">\n <fs-list-column width=\"1%\">\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a (click)=\"toggleAcknowledged(row)\">\n <fs-badge\n [size]=\"10\"\n [tooltip]=\"row.acknowledged ? 'Acknowledged' : 'Unacknowledged'\"\n [color]=\"row.acknowledged ? '#E3E3E3' : '#F30000'\">\n </fs-badge>\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column>\n <ng-template fs-list-header>\n Message\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <a\n href=\"javascript:;\"\n (click)=\"open(row)\">\n {{ row.message }}\n </a>\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Type\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n {{ LogTypes[row.type] }}\n </ng-template>\n </fs-list-column>\n <fs-list-column class=\"col-date\">\n <ng-template fs-list-header>\n Date\n </ng-template>\n <ng-template\n fs-list-cell\n let-row=\"row\">\n <fs-date-ago [date]=\"row.createDate\"></fs-date-ago>\n </ng-template>\n </fs-list-column>\n</fs-list>", styles: ["fs-list ::ng-deep .col-date,fs-list ::ng-deep .col-type{white-space:nowrap}\n"] }]
|
|
1563
1578
|
}], ctorParameters: () => [{ type: i1.MatDialog }, { type: i1$2.FsApi }], propDecorators: { list: [{
|
|
1564
1579
|
type: ViewChild,
|
|
1565
1580
|
args: [FsListComponent]
|
|
1566
1581
|
}], loadLogs: [{
|
|
1567
1582
|
type: Input
|
|
1583
|
+
}], acknowledgedAll: [{
|
|
1584
|
+
type: Output
|
|
1568
1585
|
}] } });
|
|
1569
1586
|
|
|
1570
1587
|
class KeyNameValuePipe {
|