@firestitch/report 18.19.0 → 18.21.0
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.
- package/app/reports/components/report-canvas/report-canvas.component.d.ts +5 -1
- package/app/reports/export/report-grid-export.d.ts +2 -1
- package/app/reports/interfaces/canvas-landing-input.interface.d.ts +1 -0
- package/app/reports/views/report/fs-ai-report.component.d.ts +3 -0
- package/esm2022/app/reports/canvas-landing-page.mjs +7 -1
- package/esm2022/app/reports/components/report-canvas/report-canvas.component.mjs +36 -4
- package/esm2022/app/reports/export/report-grid-export.mjs +4 -4
- package/esm2022/app/reports/export/report-pdf.service.mjs +2 -1
- package/esm2022/app/reports/export/report-pptx.service.mjs +4 -1
- package/esm2022/app/reports/interfaces/canvas-landing-input.interface.mjs +1 -1
- package/esm2022/app/reports/views/report/fs-ai-report.component.mjs +32 -8
- package/fesm2022/{firestitch-report-echarts-WOx5HoDM.mjs → firestitch-report-echarts-C8ZS6OWj.mjs} +2 -2
- package/fesm2022/{firestitch-report-echarts-WOx5HoDM.mjs.map → firestitch-report-echarts-C8ZS6OWj.mjs.map} +1 -1
- package/fesm2022/{firestitch-report-firestitch-report-DztXL6p8.mjs → firestitch-report-firestitch-report-DyKfI3_M.mjs} +81 -16
- package/fesm2022/firestitch-report-firestitch-report-DyKfI3_M.mjs.map +1 -0
- package/fesm2022/firestitch-report.mjs +1 -1
- package/package.json +2 -2
- package/fesm2022/firestitch-report-firestitch-report-DztXL6p8.mjs.map +0 -1
|
@@ -32,9 +32,11 @@ export declare class ReportCanvasComponent implements OnChanges, AfterViewInit {
|
|
|
32
32
|
report: Report;
|
|
33
33
|
editMode: boolean;
|
|
34
34
|
pageId: number | null;
|
|
35
|
+
busy: boolean;
|
|
35
36
|
componentSettings: EventEmitter<ReportComponent>;
|
|
36
37
|
reportChanged: EventEmitter<void>;
|
|
37
38
|
pageChanged: EventEmitter<number>;
|
|
39
|
+
refresh: EventEmitter<void>;
|
|
38
40
|
zoomPan: FsZoomPanComponent;
|
|
39
41
|
private _renderedComponents;
|
|
40
42
|
private _viewport;
|
|
@@ -64,6 +66,7 @@ export declare class ReportCanvasComponent implements OnChanges, AfterViewInit {
|
|
|
64
66
|
private _previousReportId;
|
|
65
67
|
private _emittedPageId;
|
|
66
68
|
private _editOnArrival;
|
|
69
|
+
private _keepPageId;
|
|
67
70
|
private _report;
|
|
68
71
|
private _pageValueComponents;
|
|
69
72
|
private _masterValueComponents;
|
|
@@ -104,6 +107,7 @@ export declare class ReportCanvasComponent implements OnChanges, AfterViewInit {
|
|
|
104
107
|
applyComponentSettings(componentId: number, settings: ComponentSettings): void;
|
|
105
108
|
selectComponent(componentId: number | null): void;
|
|
106
109
|
onCanvasPointerDown(): void;
|
|
110
|
+
refreshReport(): void;
|
|
107
111
|
onZoomed(scale: number): void;
|
|
108
112
|
zoomIn(): void;
|
|
109
113
|
zoomOut(): void;
|
|
@@ -139,6 +143,6 @@ export declare class ReportCanvasComponent implements OnChanges, AfterViewInit {
|
|
|
139
143
|
private _renderGuides;
|
|
140
144
|
private _clearGuides;
|
|
141
145
|
static ɵfac: i0.ɵɵFactoryDeclaration<ReportCanvasComponent, never>;
|
|
142
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ReportCanvasComponent, "app-report-canvas", never, { "report": { "alias": "report"; "required": false; }; "editMode": { "alias": "editMode"; "required": false; }; "pageId": { "alias": "pageId"; "required": false; }; }, { "componentSettings": "componentSettings"; "reportChanged": "reportChanged"; "pageChanged": "pageChanged"; }, never, never, true, never>;
|
|
146
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ReportCanvasComponent, "app-report-canvas", never, { "report": { "alias": "report"; "required": false; }; "editMode": { "alias": "editMode"; "required": false; }; "pageId": { "alias": "pageId"; "required": false; }; "busy": { "alias": "busy"; "required": false; }; }, { "componentSettings": "componentSettings"; "reportChanged": "reportChanged"; "pageChanged": "pageChanged"; "refresh": "refresh"; }, never, never, true, never>;
|
|
143
147
|
}
|
|
144
148
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GridLayout, GridTable } from '@firestitch/grid';
|
|
1
|
+
import { GridCellShade, GridLayout, GridTable } from '@firestitch/grid';
|
|
2
2
|
import { ReportFormatContext } from '../interfaces/report.interface';
|
|
3
3
|
export declare const GRID_EXPORT_COLUMNS = 60;
|
|
4
4
|
export interface GridExportCell {
|
|
@@ -8,6 +8,7 @@ export interface GridExportCell {
|
|
|
8
8
|
bold: boolean;
|
|
9
9
|
indent: number;
|
|
10
10
|
numeric: boolean;
|
|
11
|
+
shade: GridCellShade | null;
|
|
11
12
|
}
|
|
12
13
|
export interface GridExportTable {
|
|
13
14
|
head: GridExportCell[][];
|
|
@@ -12,6 +12,7 @@ export declare class FsAiReportComponent {
|
|
|
12
12
|
readonly pageChanged: import("@angular/core").OutputEmitterRef<number>;
|
|
13
13
|
readonly report: import("@angular/core").WritableSignal<Report>;
|
|
14
14
|
readonly editMode: import("@angular/core").WritableSignal<boolean>;
|
|
15
|
+
readonly busy: import("@angular/core").WritableSignal<boolean>;
|
|
15
16
|
readonly pageId: import("@angular/core").WritableSignal<number>;
|
|
16
17
|
readonly chatPageId: import("@angular/core").WritableSignal<number>;
|
|
17
18
|
readonly chatBasePath: import("@angular/core").Signal<string>;
|
|
@@ -47,6 +48,7 @@ export declare class FsAiReportComponent {
|
|
|
47
48
|
componentSettings(component: ReportComponentModel): void;
|
|
48
49
|
onCanvasPageChanged(pageId: number | null): void;
|
|
49
50
|
onCanvasReportChanged(): void;
|
|
51
|
+
onCanvasRefresh(): void;
|
|
50
52
|
exportPowerpoint(): void;
|
|
51
53
|
exportPdf(): void;
|
|
52
54
|
exportData(thisPage?: boolean, format?: ReportExportFormat): void;
|
|
@@ -58,6 +60,7 @@ export declare class FsAiReportComponent {
|
|
|
58
60
|
private _writePageToUrl;
|
|
59
61
|
private _pageIdFromUrl;
|
|
60
62
|
private _loadReport;
|
|
63
|
+
private _reportLoad;
|
|
61
64
|
private _reportGroups;
|
|
62
65
|
private _buildReportConfig;
|
|
63
66
|
private _openOnFirstSavedFilter;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
// Which page the canvas opens when its report input changes.
|
|
2
2
|
//
|
|
3
|
+
// - A Refresh keeps the page that was on screen, by id, wherever it moved; when
|
|
4
|
+
// it is gone, the first page. A page that arrived with the refresh was added
|
|
5
|
+
// elsewhere (the MCP, another tab), so it does not take the viewer there.
|
|
3
6
|
// - The same report with more pages than before: a page was just added in
|
|
4
7
|
// this tab, so the canvas lands on the last page. The asked-for page does
|
|
5
8
|
// not beat it: that is a stale value the host still holds.
|
|
@@ -13,6 +16,9 @@
|
|
|
13
16
|
export function canvasLandingPage(input) {
|
|
14
17
|
const pageCount = input.pageIds.length;
|
|
15
18
|
const sameReport = input.reportId === input.previousReportId;
|
|
19
|
+
if (input.keepPageId !== null) {
|
|
20
|
+
return Math.max(input.pageIds.indexOf(input.keepPageId), 0);
|
|
21
|
+
}
|
|
16
22
|
if (sameReport && input.previousPageCount > 0 && pageCount > input.previousPageCount) {
|
|
17
23
|
return pageCount - 1;
|
|
18
24
|
}
|
|
@@ -23,4 +29,4 @@ export function canvasLandingPage(input) {
|
|
|
23
29
|
const index = sameReport ? input.activePageIndex : 0;
|
|
24
30
|
return index < pageCount ? index : 0;
|
|
25
31
|
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLWxhbmRpbmctcGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvcmVwb3J0cy9jYW52YXMtbGFuZGluZy1wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLDZEQUE2RDtBQUM3RCxFQUFFO0FBQ0YsZ0ZBQWdGO0FBQ2hGLCtFQUErRTtBQUMvRSw0RUFBNEU7QUFDNUUsMEVBQTBFO0FBQzFFLDRFQUE0RTtBQUM1RSw2REFBNkQ7QUFDN0QsNkVBQTZFO0FBQzdFLG1CQUFtQjtBQUNuQix5RUFBeUU7QUFDekUsc0RBQXNEO0FBQ3RELDZFQUE2RTtBQUM3RSx5RUFBeUU7QUFDekUsdUJBQXVCO0FBQ3ZCLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUF5QjtJQUN6RCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUN2QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztJQUU3RCxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDOUIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsSUFBSSxVQUFVLElBQUksS0FBSyxDQUFDLGlCQUFpQixHQUFHLENBQUMsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDckYsT0FBTyxTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvRSxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2hCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVyRCxPQUFPLEtBQUssR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYW52YXNMYW5kaW5nSW5wdXQgfSBmcm9tICcuL2ludGVyZmFjZXMvY2FudmFzLWxhbmRpbmctaW5wdXQuaW50ZXJmYWNlJztcblxuXG4vLyBXaGljaCBwYWdlIHRoZSBjYW52YXMgb3BlbnMgd2hlbiBpdHMgcmVwb3J0IGlucHV0IGNoYW5nZXMuXG4vL1xuLy8gLSBBIFJlZnJlc2gga2VlcHMgdGhlIHBhZ2UgdGhhdCB3YXMgb24gc2NyZWVuLCBieSBpZCwgd2hlcmV2ZXIgaXQgbW92ZWQ7IHdoZW5cbi8vICAgaXQgaXMgZ29uZSwgdGhlIGZpcnN0IHBhZ2UuIEEgcGFnZSB0aGF0IGFycml2ZWQgd2l0aCB0aGUgcmVmcmVzaCB3YXMgYWRkZWRcbi8vICAgZWxzZXdoZXJlICh0aGUgTUNQLCBhbm90aGVyIHRhYiksIHNvIGl0IGRvZXMgbm90IHRha2UgdGhlIHZpZXdlciB0aGVyZS5cbi8vIC0gVGhlIHNhbWUgcmVwb3J0IHdpdGggbW9yZSBwYWdlcyB0aGFuIGJlZm9yZTogYSBwYWdlIHdhcyBqdXN0IGFkZGVkIGluXG4vLyAgIHRoaXMgdGFiLCBzbyB0aGUgY2FudmFzIGxhbmRzIG9uIHRoZSBsYXN0IHBhZ2UuIFRoZSBhc2tlZC1mb3IgcGFnZSBkb2VzXG4vLyAgIG5vdCBiZWF0IGl0OiB0aGF0IGlzIGEgc3RhbGUgdmFsdWUgdGhlIGhvc3Qgc3RpbGwgaG9sZHMuXG4vLyAtIE90aGVyd2lzZSB0aGUgYXNrZWQtZm9yIHBhZ2UgKGEgP3BhZ2U9IHRoZSByZXBvcnQgb3BlbmVkIHdpdGgpLCB3aGVuIHRoZVxuLy8gICByZXBvcnQgaGFzIGl0LlxuLy8gLSBBbm90aGVyIHJlcG9ydCB0aGF0IGFza3MgZm9yIG5vIHBhZ2UgaXQgaGFzIG9wZW5zIG9uIGl0cyBmaXJzdCBwYWdlOlxuLy8gICB0aGUgb2xkIHJlcG9ydCdzIHBhZ2UgbnVtYmVyIG1lYW5zIG5vdGhpbmcgdGhlcmUuXG4vLyAtIFRoZSBzYW1lIHJlcG9ydCBrZWVwcyB0aGUgcGFnZSBpdCBzaG93cyB3aGVuIHRoZSBhc2tlZC1mb3IgcGFnZSBkb2VzIG5vdFxuLy8gICByZXNvbHZlIChpdCBtYXkgc3RpbGwgYmUgbG9hZGluZyk7IGFuIGluZGV4IHBhc3QgdGhlIGxhc3QgcGFnZSBmYWxsc1xuLy8gICBiYWNrIHRvIHRoZSBmaXJzdC5cbmV4cG9ydCBmdW5jdGlvbiBjYW52YXNMYW5kaW5nUGFnZShpbnB1dDogQ2FudmFzTGFuZGluZ0lucHV0KTogbnVtYmVyIHtcbiAgY29uc3QgcGFnZUNvdW50ID0gaW5wdXQucGFnZUlkcy5sZW5ndGg7XG4gIGNvbnN0IHNhbWVSZXBvcnQgPSBpbnB1dC5yZXBvcnRJZCA9PT0gaW5wdXQucHJldmlvdXNSZXBvcnRJZDtcblxuICBpZiAoaW5wdXQua2VlcFBhZ2VJZCAhPT0gbnVsbCkge1xuICAgIHJldHVybiBNYXRoLm1heChpbnB1dC5wYWdlSWRzLmluZGV4T2YoaW5wdXQua2VlcFBhZ2VJZCksIDApO1xuICB9XG5cbiAgaWYgKHNhbWVSZXBvcnQgJiYgaW5wdXQucHJldmlvdXNQYWdlQ291bnQgPiAwICYmIHBhZ2VDb3VudCA+IGlucHV0LnByZXZpb3VzUGFnZUNvdW50KSB7XG4gICAgcmV0dXJuIHBhZ2VDb3VudCAtIDE7XG4gIH1cblxuICBjb25zdCBsaW5rZWQgPSBpbnB1dC5wYWdlSWQgPT0gbnVsbCA/IC0xIDogaW5wdXQucGFnZUlkcy5pbmRleE9mKGlucHV0LnBhZ2VJZCk7XG4gIGlmIChsaW5rZWQgPiAtMSkge1xuICAgIHJldHVybiBsaW5rZWQ7XG4gIH1cblxuICBjb25zdCBpbmRleCA9IHNhbWVSZXBvcnQgPyBpbnB1dC5hY3RpdmVQYWdlSW5kZXggOiAwO1xuXG4gIHJldHVybiBpbmRleCA8IHBhZ2VDb3VudCA/IGluZGV4IDogMDtcbn1cbiJdfQ==
|