bways-report 0.1.2 → 0.1.4
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/README.md +150 -51
- package/esm2022/lib/core/errors/reporting-errors.mjs +2 -2
- package/esm2022/lib/core/index.mjs +3 -1
- package/esm2022/lib/core/models/report-datasource.model.mjs +1 -1
- package/esm2022/lib/core/models/report-definition.model.mjs +1 -1
- package/esm2022/lib/core/models/report-grid.model.mjs +1 -1
- package/esm2022/lib/core/services/report-session-context.service.mjs +50 -5
- package/esm2022/lib/core/utils/data-normalization.util.mjs +56 -0
- package/esm2022/lib/core/utils/report-parameter.util.mjs +180 -0
- package/esm2022/lib/data-access/adapters/http-datasource.adapter.mjs +82 -0
- package/esm2022/lib/data-access/adapters/http-lookup.adapter.mjs +34 -9
- package/esm2022/lib/data-access/adapters/http-masterdata.adapter.mjs +38 -0
- package/esm2022/lib/data-access/adapters/http-persistence.adapter.mjs +217 -0
- package/esm2022/lib/data-access/adapters/http-schema-discovery.adapter.mjs +3 -1
- package/esm2022/lib/data-access/adapters/index.mjs +8 -3
- package/esm2022/lib/data-access/adapters/local-storage-persistence.adapter.mjs +167 -0
- package/esm2022/lib/data-access/adapters/mock-datasource.adapter.mjs +60 -0
- package/esm2022/lib/data-access/contracts/api-dtos.mjs +6 -0
- package/esm2022/lib/data-access/contracts/index.mjs +2 -1
- package/esm2022/lib/features/designer/components/component-palette/component-palette.component.mjs +24 -3
- package/esm2022/lib/features/designer/components/design-canvas/design-canvas.component.mjs +572 -102
- package/esm2022/lib/features/designer/components/property-editor/property-editor-action.component.mjs +593 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-datasource.component.mjs +225 -25
- package/esm2022/lib/features/designer/components/property-editor/property-editor-grid.component.mjs +568 -12
- package/esm2022/lib/features/designer/components/property-editor/property-editor.component.mjs +238 -11
- package/esm2022/lib/features/designer/components/toolbar/designer-toolbar.component.mjs +191 -25
- package/esm2022/lib/features/designer/designer.component.mjs +245 -27
- package/esm2022/lib/features/designer/index.mjs +4 -1
- package/esm2022/lib/features/designer/rpt-report-designer.component.mjs +102 -0
- package/esm2022/lib/features/designer/services/designer-state.service.mjs +18 -10
- package/esm2022/lib/features/designer/services/report-template.service.mjs +318 -0
- package/esm2022/lib/features/designer/utilities/canvas-layout.util.mjs +41 -9
- package/esm2022/lib/features/export/index.mjs +2 -2
- package/esm2022/lib/features/export/models/export.models.mjs +1 -1
- package/esm2022/lib/features/export/services/report-export.service.mjs +420 -5
- package/esm2022/lib/features/routing/components/routed-report-runtime.component.mjs +2 -2
- package/esm2022/lib/features/runtime/dynamic-renderer.component.mjs +239 -33
- package/esm2022/lib/features/runtime/index.mjs +2 -1
- package/esm2022/lib/features/runtime/report-execution.service.mjs +56 -0
- package/esm2022/lib/features/runtime/report-grid-bridge.component.mjs +423 -30
- package/esm2022/lib/features/runtime/report-runtime.component.mjs +349 -7
- package/esm2022/lib/features/runtime/rpt-report.component.mjs +545 -0
- package/esm2022/lib/primitives/components/button/rpt-button.component.mjs +19 -8
- package/esm2022/lib/primitives/components/chart-bridge/report-chart-bridge.component.mjs +18 -7
- package/esm2022/lib/primitives/components/checkbox/rpt-checkbox.component.mjs +3 -3
- package/esm2022/lib/primitives/components/date/rpt-date.component.mjs +3 -3
- package/esm2022/lib/primitives/components/date-range/rpt-date-range.component.mjs +346 -0
- package/esm2022/lib/primitives/components/dropdown/rpt-dropdown.component.mjs +728 -74
- package/esm2022/lib/primitives/components/icon/rpt-icon.component.mjs +30 -1
- package/esm2022/lib/primitives/components/index.mjs +2 -1
- package/esm2022/lib/primitives/components/input/rpt-input.component.mjs +3 -3
- package/esm2022/lib/primitives/components/kpi-card/rpt-kpi-card.component.mjs +3 -3
- package/esm2022/lib/primitives/components/number/rpt-number.component.mjs +3 -3
- package/esm2022/lib/primitives/register-builtins.mjs +51 -2
- package/esm2022/lib/provide-reporting.mjs +145 -24
- package/fesm2022/bways-report.mjs +7797 -921
- package/fesm2022/bways-report.mjs.map +1 -1
- package/lib/core/index.d.ts +2 -0
- package/lib/core/models/report-datasource.model.d.ts +9 -0
- package/lib/core/models/report-definition.model.d.ts +2 -0
- package/lib/core/models/report-grid.model.d.ts +67 -1
- package/lib/core/services/report-session-context.service.d.ts +6 -1
- package/lib/core/utils/data-normalization.util.d.ts +15 -0
- package/lib/core/utils/report-parameter.util.d.ts +35 -0
- package/lib/data-access/adapters/http-datasource.adapter.d.ts +20 -0
- package/lib/data-access/adapters/http-lookup.adapter.d.ts +3 -0
- package/lib/data-access/adapters/http-masterdata.adapter.d.ts +13 -0
- package/lib/data-access/adapters/http-persistence.adapter.d.ts +27 -0
- package/lib/data-access/adapters/http-schema-discovery.adapter.d.ts +2 -0
- package/lib/data-access/adapters/index.d.ts +7 -2
- package/lib/data-access/adapters/local-storage-persistence.adapter.d.ts +19 -0
- package/lib/data-access/adapters/mock-datasource.adapter.d.ts +9 -0
- package/lib/data-access/contracts/api-dtos.d.ts +67 -0
- package/lib/data-access/contracts/index.d.ts +1 -0
- package/lib/features/designer/components/component-palette/component-palette.component.d.ts +2 -1
- package/lib/features/designer/components/design-canvas/design-canvas.component.d.ts +22 -0
- package/lib/features/designer/components/property-editor/parameter-binding-editor.component.d.ts +1 -1
- package/lib/features/designer/components/property-editor/property-editor-action.component.d.ts +33 -0
- package/lib/features/designer/components/property-editor/property-editor-datasource.component.d.ts +13 -0
- package/lib/features/designer/components/property-editor/property-editor-grid.component.d.ts +16 -2
- package/lib/features/designer/components/property-editor/property-editor.component.d.ts +9 -1
- package/lib/features/designer/components/toolbar/designer-toolbar.component.d.ts +12 -1
- package/lib/features/designer/designer.component.d.ts +11 -0
- package/lib/features/designer/index.d.ts +4 -0
- package/lib/features/designer/rpt-report-designer.component.d.ts +38 -0
- package/lib/features/designer/services/designer-state.service.d.ts +1 -1
- package/lib/features/designer/services/report-template.service.d.ts +32 -0
- package/lib/features/designer/utilities/canvas-layout.util.d.ts +4 -0
- package/lib/features/export/index.d.ts +2 -2
- package/lib/features/export/models/export.models.d.ts +23 -0
- package/lib/features/export/services/report-export.service.d.ts +31 -2
- package/lib/features/runtime/dynamic-renderer.component.d.ts +42 -2
- package/lib/features/runtime/index.d.ts +2 -0
- package/lib/features/runtime/report-execution.service.d.ts +16 -0
- package/lib/features/runtime/report-grid-bridge.component.d.ts +171 -6
- package/lib/features/runtime/report-runtime.component.d.ts +86 -1
- package/lib/features/runtime/rpt-report.component.d.ts +69 -0
- package/lib/primitives/components/button/rpt-button.component.d.ts +5 -2
- package/lib/primitives/components/chart-bridge/report-chart-bridge.component.d.ts +1 -0
- package/lib/primitives/components/date-range/rpt-date-range.component.d.ts +43 -0
- package/lib/primitives/components/dropdown/rpt-dropdown.component.d.ts +55 -7
- package/lib/primitives/components/index.d.ts +2 -0
- package/lib/provide-reporting.d.ts +79 -26
- package/package.json +2 -1
- package/schematics/collection.json +10 -0
- package/schematics/ng-add/index.js +45 -0
- package/schematics/ng-add/schema.json +17 -0
|
@@ -1,20 +1,31 @@
|
|
|
1
1
|
import { DesignerViewMode } from '../../services/designer-state.service';
|
|
2
|
+
import { ReportBlueprint } from '../../services/report-template.service';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export declare class DesignerToolbarComponent {
|
|
4
5
|
private readonly designerState;
|
|
6
|
+
private readonly templateService;
|
|
5
7
|
readonly definition: import("@angular/core").WritableSignal<import("bways-report").ReportDefinition>;
|
|
6
8
|
readonly viewMode: import("@angular/core").WritableSignal<DesignerViewMode>;
|
|
7
9
|
readonly isDirty: import("@angular/core").WritableSignal<boolean>;
|
|
8
10
|
readonly canUndo: import("@angular/core").Signal<boolean>;
|
|
9
11
|
readonly canRedo: import("@angular/core").Signal<boolean>;
|
|
12
|
+
readonly isTemplatesModalOpen: import("@angular/core").WritableSignal<boolean>;
|
|
13
|
+
readonly availableBlueprints: ReportBlueprint[];
|
|
14
|
+
readonly isLeftPanelCollapsed: import("@angular/core").InputSignal<boolean>;
|
|
15
|
+
readonly isRightPanelCollapsed: import("@angular/core").InputSignal<boolean>;
|
|
16
|
+
readonly toggleLeftPanel: import("@angular/core").OutputEmitterRef<void>;
|
|
17
|
+
readonly toggleRightPanel: import("@angular/core").OutputEmitterRef<void>;
|
|
10
18
|
readonly saveRequested: import("@angular/core").OutputEmitterRef<void>;
|
|
11
19
|
setMode(mode: DesignerViewMode): void;
|
|
12
20
|
undo(): void;
|
|
13
21
|
redo(): void;
|
|
14
22
|
saveReport(): void;
|
|
23
|
+
openTemplatesModal(): void;
|
|
24
|
+
closeTemplatesModal(): void;
|
|
25
|
+
applyBlueprint(blueprintId: string): void;
|
|
15
26
|
addResultGrid(): void;
|
|
16
27
|
selectGridSettings(): void;
|
|
17
28
|
exportJson(): void;
|
|
18
29
|
static ɵfac: i0.ɵɵFactoryDeclaration<DesignerToolbarComponent, never>;
|
|
19
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DesignerToolbarComponent, "rpt-designer-toolbar", never, {}, { "saveRequested": "saveRequested"; }, never, never, true, never>;
|
|
30
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DesignerToolbarComponent, "rpt-designer-toolbar", never, { "isLeftPanelCollapsed": { "alias": "isLeftPanelCollapsed"; "required": false; "isSignal": true; }; "isRightPanelCollapsed": { "alias": "isRightPanelCollapsed"; "required": false; "isSignal": true; }; }, { "toggleLeftPanel": "toggleLeftPanel"; "toggleRightPanel": "toggleRightPanel"; "saveRequested": "saveRequested"; }, never, never, true, never>;
|
|
20
31
|
}
|
|
@@ -20,8 +20,19 @@ export declare class DesignerComponent implements OnInit {
|
|
|
20
20
|
readonly previewData: import("@angular/core").WritableSignal<unknown[] | null>;
|
|
21
21
|
readonly saveMessage: import("@angular/core").WritableSignal<string | null>;
|
|
22
22
|
readonly copyStatus: import("@angular/core").WritableSignal<string>;
|
|
23
|
+
readonly isLeftPanelCollapsed: import("@angular/core").WritableSignal<boolean>;
|
|
24
|
+
readonly isRightPanelCollapsed: import("@angular/core").WritableSignal<boolean>;
|
|
25
|
+
toggleLeftPanel(): void;
|
|
26
|
+
toggleRightPanel(): void;
|
|
27
|
+
openLeftPanelOnly(): void;
|
|
28
|
+
openRightPanelOnly(): void;
|
|
29
|
+
closeAllPanels(): void;
|
|
30
|
+
onResize(): void;
|
|
31
|
+
onKeyDown(event: KeyboardEvent): void;
|
|
23
32
|
readonly formattedJson: import("@angular/core").Signal<string>;
|
|
24
33
|
private loadedReportId;
|
|
34
|
+
private loadedReportDef;
|
|
35
|
+
private lastEmittedDef;
|
|
25
36
|
constructor();
|
|
26
37
|
ngOnInit(): void;
|
|
27
38
|
onSave(): void;
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
export { DesignerComponent } from './designer.component';
|
|
2
|
+
export { RptReportDesignerComponent } from './rpt-report-designer.component';
|
|
2
3
|
export { DesignerStateService, } from './services';
|
|
3
4
|
export type { DesignerViewMode, DesignerActiveTab, } from './services';
|
|
4
5
|
export { ComponentPaletteComponent } from './components/component-palette/component-palette.component';
|
|
5
6
|
export { DesignCanvasComponent } from './components/design-canvas/design-canvas.component';
|
|
6
7
|
export { PropertyEditorComponent } from './components/property-editor/property-editor.component';
|
|
8
|
+
export { PropertyEditorActionComponent } from './components/property-editor/property-editor-action.component';
|
|
7
9
|
export { DesignerToolbarComponent } from './components/toolbar/designer-toolbar.component';
|
|
10
|
+
export { ReportTemplateService } from './services/report-template.service';
|
|
11
|
+
export type { ReportBlueprint } from './services/report-template.service';
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { ReportDefinition } from '../../core/models/report-definition.model';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* `<rpt-report-designer>` (and `<rpt-designer-view>`)
|
|
5
|
+
*
|
|
6
|
+
* 1-tag facade component for visual report building.
|
|
7
|
+
* Simplifies report creation and editing across Angular apps and ERP suites.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* ```html
|
|
11
|
+
* <!-- Load and edit by ID with automatic persistence -->
|
|
12
|
+
* <rpt-report-designer [id]="'sales-report'" (saved)="onReportSaved($event)" />
|
|
13
|
+
*
|
|
14
|
+
* <!-- Or pass in-memory report object -->
|
|
15
|
+
* <rpt-report-designer [report]="myReport" (saved)="onReportSaved($event)" />
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare class RptReportDesignerComponent {
|
|
19
|
+
/** Report ID to automatically load via configured ReportPersistenceAdapter */
|
|
20
|
+
readonly id: import("@angular/core").InputSignal<string | undefined>;
|
|
21
|
+
/** Report definition to load directly in memory */
|
|
22
|
+
readonly report: import("@angular/core").InputSignal<ReportDefinition | null>;
|
|
23
|
+
/** Whether to render a back/close button toolbar */
|
|
24
|
+
readonly showCloseButton: import("@angular/core").InputSignal<boolean>;
|
|
25
|
+
/** Label for close button */
|
|
26
|
+
readonly closeLabel: import("@angular/core").InputSignal<string>;
|
|
27
|
+
/** Emitted when user saves the report */
|
|
28
|
+
readonly saved: import("@angular/core").OutputEmitterRef<ReportDefinition>;
|
|
29
|
+
/** Emitted when user clicks the close button */
|
|
30
|
+
readonly closed: import("@angular/core").OutputEmitterRef<void>;
|
|
31
|
+
/** Emitted whenever the designer definition changes */
|
|
32
|
+
readonly definitionChange: import("@angular/core").OutputEmitterRef<ReportDefinition>;
|
|
33
|
+
onSave(definition: ReportDefinition): void;
|
|
34
|
+
onDefinitionChange(definition: ReportDefinition): void;
|
|
35
|
+
onClose(): void;
|
|
36
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RptReportDesignerComponent, never>;
|
|
37
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<RptReportDesignerComponent, "rpt-report-designer, rpt-designer-view", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "report": { "alias": "report"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; }, { "saved": "saved"; "closed": "closed"; "definitionChange": "definitionChange"; }, never, never, true, never>;
|
|
38
|
+
}
|
|
@@ -48,7 +48,7 @@ export declare class DesignerStateService {
|
|
|
48
48
|
/**
|
|
49
49
|
* Adds a new component of the specified type onto the canvas.
|
|
50
50
|
*/
|
|
51
|
-
addComponent(type: string, targetIndex?: number): ReportComponentDefinition;
|
|
51
|
+
addComponent(type: string, targetIndex?: number, overrides?: Partial<ReportComponentDefinition>): ReportComponentDefinition;
|
|
52
52
|
/**
|
|
53
53
|
* Removes a component by its ID.
|
|
54
54
|
*/
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ReportDefinition } from '../../../core/models/report-definition.model';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export interface ReportBlueprint {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
category: 'Registers & Logs' | 'Financial & Ledger' | 'Analytics & Executive' | 'Custom';
|
|
7
|
+
description: string;
|
|
8
|
+
icon?: string;
|
|
9
|
+
tags?: string[];
|
|
10
|
+
definition: Omit<ReportDefinition, 'id'>;
|
|
11
|
+
}
|
|
12
|
+
export declare class ReportTemplateService {
|
|
13
|
+
private readonly customBlueprints;
|
|
14
|
+
/**
|
|
15
|
+
* Returns all available report blueprints (built-in + user registered).
|
|
16
|
+
*/
|
|
17
|
+
getTemplates(): ReportBlueprint[];
|
|
18
|
+
/**
|
|
19
|
+
* Retrieves a blueprint by its unique identifier.
|
|
20
|
+
*/
|
|
21
|
+
getTemplateById(id: string): ReportBlueprint | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Instantiates a new ReportDefinition from a template with unique IDs.
|
|
24
|
+
*/
|
|
25
|
+
instantiateTemplate(templateId: string, customName?: string): ReportDefinition;
|
|
26
|
+
/**
|
|
27
|
+
* Registers a custom blueprint to make it available in the gallery.
|
|
28
|
+
*/
|
|
29
|
+
registerTemplate(blueprint: ReportBlueprint): void;
|
|
30
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ReportTemplateService, never>;
|
|
31
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ReportTemplateService>;
|
|
32
|
+
}
|
|
@@ -29,6 +29,10 @@ export declare const CANVAS_CARD_OVERHEAD = 48;
|
|
|
29
29
|
* accurately mirrors the runtime component height.
|
|
30
30
|
*/
|
|
31
31
|
export declare function resolveCanvasCardHeight(comp: ReportComponentDefinition, overrideComponentHeight?: number | null, overhead?: number): string;
|
|
32
|
+
/**
|
|
33
|
+
* Natural minimum height in pixels required for a component type to render without cramping or overflow.
|
|
34
|
+
*/
|
|
35
|
+
export declare function getComponentNaturalMinHeight(type: string): number;
|
|
32
36
|
/**
|
|
33
37
|
* Resolves the CSS min-height property for the canvas component card.
|
|
34
38
|
*/
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export type { ExportColumn, CsvExportOptions, JsonExportOptions } from './models/export.models';
|
|
2
|
-
export { ReportExportService, sanitizeCsvCell, generateCsvContent } from './services/report-export.service';
|
|
1
|
+
export type { ExportColumn, CsvExportOptions, ExcelExportOptions, HtmlExportOptions, JsonExportOptions, BrandedHeaderOptions, } from './models/export.models';
|
|
2
|
+
export { ReportExportService, sanitizeCsvCell, generateCsvContent, generateExcelXml, generateHtmlContent, formatFilterSummary, } from './services/report-export.service';
|
|
@@ -3,12 +3,35 @@ export interface ExportColumn {
|
|
|
3
3
|
header: string;
|
|
4
4
|
formatter?: (value: any, row?: Record<string, unknown>) => string;
|
|
5
5
|
}
|
|
6
|
+
export interface BrandedHeaderOptions {
|
|
7
|
+
companyName?: string;
|
|
8
|
+
branchName?: string;
|
|
9
|
+
reportTitle?: string;
|
|
10
|
+
generatedAt?: Date | string;
|
|
11
|
+
generatedBy?: string;
|
|
12
|
+
activeFilterSummary?: Record<string, unknown> | string;
|
|
13
|
+
}
|
|
6
14
|
export interface CsvExportOptions {
|
|
7
15
|
fileName?: string;
|
|
8
16
|
columns?: ExportColumn[];
|
|
9
17
|
includeHeader?: boolean;
|
|
10
18
|
delimiter?: string;
|
|
11
19
|
addBom?: boolean;
|
|
20
|
+
brandedHeader?: BrandedHeaderOptions;
|
|
21
|
+
}
|
|
22
|
+
export interface ExcelExportOptions {
|
|
23
|
+
fileName?: string;
|
|
24
|
+
sheetName?: string;
|
|
25
|
+
columns?: ExportColumn[];
|
|
26
|
+
includeHeader?: boolean;
|
|
27
|
+
brandedHeader?: BrandedHeaderOptions;
|
|
28
|
+
}
|
|
29
|
+
export interface HtmlExportOptions {
|
|
30
|
+
fileName?: string;
|
|
31
|
+
columns?: ExportColumn[];
|
|
32
|
+
brandedHeader?: BrandedHeaderOptions;
|
|
33
|
+
title?: string;
|
|
34
|
+
autoPrint?: boolean;
|
|
12
35
|
}
|
|
13
36
|
export interface JsonExportOptions {
|
|
14
37
|
fileName?: string;
|
|
@@ -1,19 +1,48 @@
|
|
|
1
|
-
import { CsvExportOptions, ExportColumn, JsonExportOptions } from '../models/export.models';
|
|
1
|
+
import { BrandedHeaderOptions, CsvExportOptions, ExcelExportOptions, ExportColumn, HtmlExportOptions, JsonExportOptions } from '../models/export.models';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
/**
|
|
4
4
|
* Sanitizes and escapes a single cell value for CSV output.
|
|
5
5
|
*/
|
|
6
6
|
export declare function sanitizeCsvCell(value: unknown, delimiter?: string): string;
|
|
7
|
+
/**
|
|
8
|
+
* Formats a record or string of active filter criteria into a clean text line.
|
|
9
|
+
*/
|
|
10
|
+
export declare function formatFilterSummary(summary?: Record<string, unknown> | string): string;
|
|
7
11
|
/**
|
|
8
12
|
* Pure generator function to create CSV content string from row data and columns.
|
|
9
13
|
*/
|
|
10
|
-
export declare function generateCsvContent(rows: Record<string, unknown>[], columns: ExportColumn[], delimiter?: string, includeHeader?: boolean, addBom?: boolean): string;
|
|
14
|
+
export declare function generateCsvContent(rows: Record<string, unknown>[], columns: ExportColumn[], delimiter?: string, includeHeader?: boolean, addBom?: boolean, brandedHeader?: BrandedHeaderOptions): string;
|
|
15
|
+
/**
|
|
16
|
+
* Generates an Excel-compatible XML Spreadsheet (SpreadsheetML) document string.
|
|
17
|
+
*/
|
|
18
|
+
export declare function generateExcelXml(rows: Record<string, unknown>[], columns: ExportColumn[], sheetName?: string, brandedHeader?: BrandedHeaderOptions): string;
|
|
19
|
+
/**
|
|
20
|
+
* Generates an HTML document string formatted for printing and clean PDF conversion.
|
|
21
|
+
*/
|
|
22
|
+
export declare function generateHtmlContent(rows: Record<string, unknown>[], columns: ExportColumn[], title?: string, brandedHeader?: BrandedHeaderOptions): string;
|
|
11
23
|
export declare class ReportExportService {
|
|
12
24
|
private readonly document;
|
|
25
|
+
private readonly sessionService;
|
|
26
|
+
/**
|
|
27
|
+
* Enriches branded header options with fallback session context data if available.
|
|
28
|
+
*/
|
|
29
|
+
private resolveBrandedHeader;
|
|
13
30
|
/**
|
|
14
31
|
* Generates and triggers browser download of a CSV file.
|
|
15
32
|
*/
|
|
16
33
|
exportCsv(rows: Record<string, unknown>[], options?: CsvExportOptions): void;
|
|
34
|
+
/**
|
|
35
|
+
* Generates and triggers browser download of an Excel spreadsheet (.xls SpreadsheetML).
|
|
36
|
+
*/
|
|
37
|
+
exportExcel(rows: Record<string, unknown>[], options?: ExcelExportOptions): void;
|
|
38
|
+
/**
|
|
39
|
+
* Generates and triggers browser download of a styled, printable HTML report file.
|
|
40
|
+
*/
|
|
41
|
+
exportHtml(rows: Record<string, unknown>[], options?: HtmlExportOptions): void;
|
|
42
|
+
/**
|
|
43
|
+
* Opens a printable window with branded styling and optionally calls window.print().
|
|
44
|
+
*/
|
|
45
|
+
printReport(rows: Record<string, unknown>[], options?: HtmlExportOptions): void;
|
|
17
46
|
/**
|
|
18
47
|
* Generates and triggers browser download of a JSON file.
|
|
19
48
|
*/
|
|
@@ -3,10 +3,14 @@ import { FormGroup } from '@angular/forms';
|
|
|
3
3
|
import { ReportDefinition } from '../../core/models/report-definition.model';
|
|
4
4
|
import { ReportComponentDefinition } from '../../core/models/report-component.model';
|
|
5
5
|
import { ComponentActionDefinition } from '../../core/models/component-event.model';
|
|
6
|
+
import { GridColumnDefinition, GridRowClickAction } from '../../core/models/report-grid.model';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
export declare class DynamicRendererComponent {
|
|
8
9
|
private readonly registry;
|
|
9
10
|
private readonly formBuilder;
|
|
11
|
+
private readonly router;
|
|
12
|
+
private readonly exportService;
|
|
13
|
+
private readonly sessionService;
|
|
10
14
|
readonly definition: import("@angular/core").InputSignal<ReportDefinition>;
|
|
11
15
|
readonly initialValues: import("@angular/core").InputSignal<Record<string, unknown>>;
|
|
12
16
|
readonly resultData: import("@angular/core").InputSignal<unknown[] | null>;
|
|
@@ -14,6 +18,34 @@ export declare class DynamicRendererComponent {
|
|
|
14
18
|
definition: ReportDefinition;
|
|
15
19
|
parameters: Record<string, unknown>;
|
|
16
20
|
}>;
|
|
21
|
+
readonly resetRequested: import("@angular/core").OutputEmitterRef<{
|
|
22
|
+
definition: ReportDefinition;
|
|
23
|
+
}>;
|
|
24
|
+
readonly exportRequested: import("@angular/core").OutputEmitterRef<{
|
|
25
|
+
format: string;
|
|
26
|
+
fileName?: string;
|
|
27
|
+
parameters: Record<string, unknown>;
|
|
28
|
+
data: unknown[] | null;
|
|
29
|
+
}>;
|
|
30
|
+
readonly printRequested: import("@angular/core").OutputEmitterRef<{
|
|
31
|
+
rptFileName?: string;
|
|
32
|
+
exportType?: string;
|
|
33
|
+
parameters: Record<string, unknown>;
|
|
34
|
+
}>;
|
|
35
|
+
readonly customActionTriggered: import("@angular/core").OutputEmitterRef<{
|
|
36
|
+
action: ComponentActionDefinition;
|
|
37
|
+
component: ReportComponentDefinition;
|
|
38
|
+
parameters: Record<string, unknown>;
|
|
39
|
+
}>;
|
|
40
|
+
readonly gridStateChanged: import("@angular/core").OutputEmitterRef<any>;
|
|
41
|
+
readonly columnDefsChanged: import("@angular/core").OutputEmitterRef<any>;
|
|
42
|
+
readonly selectionChange: import("@angular/core").OutputEmitterRef<any[]>;
|
|
43
|
+
readonly selectionChanged: import("@angular/core").OutputEmitterRef<any[]>;
|
|
44
|
+
readonly rowActionTriggered: import("@angular/core").OutputEmitterRef<{
|
|
45
|
+
action: GridRowClickAction;
|
|
46
|
+
row: Record<string, unknown>;
|
|
47
|
+
parameters: Record<string, unknown>;
|
|
48
|
+
}>;
|
|
17
49
|
readonly form: import("@angular/core").Signal<FormGroup<any>>;
|
|
18
50
|
readonly sortedComponents: import("@angular/core").Signal<ReportComponentDefinition[]>;
|
|
19
51
|
readonly totalGridColumns: import("@angular/core").Signal<number>;
|
|
@@ -22,9 +54,17 @@ export declare class DynamicRendererComponent {
|
|
|
22
54
|
getComponentInputs(comp: ReportComponentDefinition): Record<string, unknown>;
|
|
23
55
|
getGridColumn(comp: ReportComponentDefinition): string;
|
|
24
56
|
getGridRow(comp: ReportComponentDefinition): string;
|
|
57
|
+
getComponentHeight(comp: ReportComponentDefinition): string;
|
|
58
|
+
getComponentMinHeight(comp: ReportComponentDefinition): string;
|
|
25
59
|
isComponentVisible(comp: ReportComponentDefinition): boolean;
|
|
26
60
|
onSubmit(): void;
|
|
27
|
-
handleAction(action: ComponentActionDefinition): void;
|
|
61
|
+
handleAction(action: ComponentActionDefinition, comp?: ReportComponentDefinition): void;
|
|
62
|
+
onGridRowClick(event: {
|
|
63
|
+
row: Record<string, unknown>;
|
|
64
|
+
column?: GridColumnDefinition;
|
|
65
|
+
event?: MouseEvent;
|
|
66
|
+
}): void;
|
|
67
|
+
onGridSelectionChange(rows: any[]): void;
|
|
28
68
|
static ɵfac: i0.ɵɵFactoryDeclaration<DynamicRendererComponent, never>;
|
|
29
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DynamicRendererComponent, "rpt-dynamic-renderer", never, { "definition": { "alias": "definition"; "required": true; "isSignal": true; }; "initialValues": { "alias": "initialValues"; "required": false; "isSignal": true; }; "resultData": { "alias": "resultData"; "required": false; "isSignal": true; }; }, { "executeRequested": "executeRequested"; }, never, never, true, never>;
|
|
69
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DynamicRendererComponent, "rpt-dynamic-renderer", never, { "definition": { "alias": "definition"; "required": true; "isSignal": true; }; "initialValues": { "alias": "initialValues"; "required": false; "isSignal": true; }; "resultData": { "alias": "resultData"; "required": false; "isSignal": true; }; }, { "executeRequested": "executeRequested"; "resetRequested": "resetRequested"; "exportRequested": "exportRequested"; "printRequested": "printRequested"; "customActionTriggered": "customActionTriggered"; "gridStateChanged": "gridStateChanged"; "columnDefsChanged": "columnDefsChanged"; "selectionChange": "selectionChange"; "selectionChanged": "selectionChanged"; "rowActionTriggered": "rowActionTriggered"; }, never, never, true, never>;
|
|
30
70
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { ReportRuntimeComponent } from './report-runtime.component';
|
|
2
2
|
export { DynamicRendererComponent } from './dynamic-renderer.component';
|
|
3
3
|
export { ReportGridBridgeComponent } from './report-grid-bridge.component';
|
|
4
|
+
export { RptReportComponent } from './rpt-report.component';
|
|
5
|
+
export type { ReportViewPreset } from './rpt-report.component';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { ReportDefinition } from '../../core/models/report-definition.model';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Runs a report's result query. Shared by the Live Runtime, the designer's
|
|
6
|
+
* Live Preview and the designer canvas so all three behave identically.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ReportExecutionService {
|
|
9
|
+
private readonly adapter;
|
|
10
|
+
private readonly session;
|
|
11
|
+
/** Canvas field keys the user still has to fill before the report can run. */
|
|
12
|
+
getMissingFields(def: ReportDefinition, formValues: Record<string, unknown>): string[];
|
|
13
|
+
execute(def: ReportDefinition, formValues: Record<string, unknown>): Observable<unknown[]>;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ReportExecutionService, never>;
|
|
15
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ReportExecutionService>;
|
|
16
|
+
}
|
|
@@ -1,14 +1,51 @@
|
|
|
1
|
-
import { Type } from '@angular/core';
|
|
1
|
+
import { OnDestroy, Type } from '@angular/core';
|
|
2
2
|
import { GridColumnDefinition, ReportGridDefinition } from '../../core/models/report-grid.model';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class RptGridOutletDirective implements OnDestroy {
|
|
5
|
+
private readonly vcr;
|
|
6
|
+
private compRef;
|
|
7
|
+
private subs;
|
|
8
|
+
readonly componentType: import("@angular/core").InputSignal<Type<any> | null>;
|
|
9
|
+
readonly inputs: import("@angular/core").InputSignal<Record<string, unknown>>;
|
|
10
|
+
readonly gridStateChange: import("@angular/core").OutputEmitterRef<any>;
|
|
11
|
+
readonly columnDefsChange: import("@angular/core").OutputEmitterRef<any>;
|
|
12
|
+
readonly rowClick: import("@angular/core").OutputEmitterRef<{
|
|
13
|
+
row: Record<string, unknown>;
|
|
14
|
+
column?: any;
|
|
15
|
+
event?: any;
|
|
16
|
+
}>;
|
|
17
|
+
readonly selectionChange: import("@angular/core").OutputEmitterRef<any[]>;
|
|
18
|
+
constructor();
|
|
19
|
+
private recreateComponent;
|
|
20
|
+
private clear;
|
|
21
|
+
ngOnDestroy(): void;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RptGridOutletDirective, never>;
|
|
23
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<RptGridOutletDirective, "[rptGridOutlet]", never, { "componentType": { "alias": "rptGridOutlet"; "required": false; "isSignal": true; }; "inputs": { "alias": "inputs"; "required": false; "isSignal": true; }; }, { "gridStateChange": "gridStateChange"; "columnDefsChange": "columnDefsChange"; "rowClick": "rowClick"; "selectionChange": "selectionChange"; }, never, never, true, never>;
|
|
24
|
+
}
|
|
4
25
|
export declare class ReportGridBridgeComponent {
|
|
5
26
|
private readonly injectedGrid;
|
|
27
|
+
constructor();
|
|
6
28
|
readonly gridDefinition: import("@angular/core").InputSignal<ReportGridDefinition>;
|
|
7
29
|
readonly data: import("@angular/core").InputSignal<unknown[]>;
|
|
30
|
+
readonly gridStateChange: import("@angular/core").OutputEmitterRef<any>;
|
|
31
|
+
readonly columnDefsChange: import("@angular/core").OutputEmitterRef<any>;
|
|
32
|
+
readonly rowClick: import("@angular/core").OutputEmitterRef<{
|
|
33
|
+
row: Record<string, unknown>;
|
|
34
|
+
column?: GridColumnDefinition;
|
|
35
|
+
event?: MouseEvent;
|
|
36
|
+
}>;
|
|
37
|
+
readonly selectionChange: import("@angular/core").OutputEmitterRef<any[]>;
|
|
8
38
|
readonly customGridComponent: import("@angular/core").Signal<Type<unknown> | null>;
|
|
39
|
+
readonly selectedRows: import("@angular/core").WritableSignal<any[]>;
|
|
40
|
+
readonly hasRowClickAction: import("@angular/core").Signal<boolean>;
|
|
41
|
+
readonly isCheckboxSelectionEnabled: import("@angular/core").Signal<boolean>;
|
|
42
|
+
readonly effectiveRowSelection: import("@angular/core").Signal<"single" | "multiple">;
|
|
43
|
+
readonly isHeaderCheckboxSelectionEnabled: import("@angular/core").Signal<boolean>;
|
|
44
|
+
readonly isSelectionEnabled: import("@angular/core").Signal<boolean>;
|
|
9
45
|
readonly sortColumn: import("@angular/core").WritableSignal<string | null>;
|
|
10
46
|
readonly sortDirection: import("@angular/core").WritableSignal<"desc" | "asc">;
|
|
11
47
|
readonly currentPage: import("@angular/core").WritableSignal<number>;
|
|
48
|
+
readonly visibleColumns: import("@angular/core").Signal<GridColumnDefinition[]>;
|
|
12
49
|
readonly bridgedColumns: import("@angular/core").Signal<{
|
|
13
50
|
headerName: string;
|
|
14
51
|
header: string;
|
|
@@ -16,6 +53,8 @@ export declare class ReportGridBridgeComponent {
|
|
|
16
53
|
hide: boolean;
|
|
17
54
|
width: number | undefined;
|
|
18
55
|
aggFunc: "sum" | "avg" | "count" | "min" | "max" | undefined;
|
|
56
|
+
checkboxSelection: boolean | undefined;
|
|
57
|
+
headerCheckboxSelection: boolean | undefined;
|
|
19
58
|
field: string;
|
|
20
59
|
label: string;
|
|
21
60
|
dataType?: "string" | "number" | "date" | "boolean" | "currency";
|
|
@@ -27,7 +66,66 @@ export declare class ReportGridBridgeComponent {
|
|
|
27
66
|
pinned?: "left" | "right" | false;
|
|
28
67
|
order?: number;
|
|
29
68
|
aggregate?: "sum" | "avg" | "count" | "min" | "max" | "none";
|
|
69
|
+
action?: import("../../core/models/report-grid.model").GridRowClickAction;
|
|
30
70
|
}[]>;
|
|
71
|
+
readonly gridInstanceKey: import("@angular/core").Signal<string>;
|
|
72
|
+
readonly gridStateKey: import("@angular/core").Signal<string>;
|
|
73
|
+
readonly gridConfig: import("@angular/core").Signal<{
|
|
74
|
+
rowSelection: "single" | "multiple";
|
|
75
|
+
selectionMode: "single" | "multiple";
|
|
76
|
+
checkboxSelection: boolean;
|
|
77
|
+
headerCheckboxSelection: boolean;
|
|
78
|
+
stateKey: string;
|
|
79
|
+
pageSize?: number;
|
|
80
|
+
pagination?: boolean;
|
|
81
|
+
selectable?: boolean;
|
|
82
|
+
showRowNumbers?: boolean;
|
|
83
|
+
allowColumnReorder?: boolean;
|
|
84
|
+
allowExport?: boolean;
|
|
85
|
+
exportFormats?: ("csv" | "excel" | "pdf")[];
|
|
86
|
+
showFooter?: boolean;
|
|
87
|
+
height?: string;
|
|
88
|
+
groupModel?: string[];
|
|
89
|
+
sortModel?: unknown[];
|
|
90
|
+
reportState?: Record<string, unknown>;
|
|
91
|
+
presets?: unknown[];
|
|
92
|
+
sideBar: boolean | {
|
|
93
|
+
visible?: boolean;
|
|
94
|
+
panel?: ("columns" | "filters" | "highlights" | "export" | "analytics" | "chat")[];
|
|
95
|
+
};
|
|
96
|
+
globalSearch: boolean;
|
|
97
|
+
statusBar: boolean;
|
|
98
|
+
rowClickAction?: import("../../core/models/report-grid.model").GridRowClickAction;
|
|
99
|
+
}>;
|
|
100
|
+
readonly gridReportState: import("@angular/core").Signal<{
|
|
101
|
+
columnGroupDefs: null;
|
|
102
|
+
columnDefs: {
|
|
103
|
+
headerName: string;
|
|
104
|
+
header: string;
|
|
105
|
+
title: string;
|
|
106
|
+
hide: boolean;
|
|
107
|
+
width: number | undefined;
|
|
108
|
+
aggFunc: "sum" | "avg" | "count" | "min" | "max" | undefined;
|
|
109
|
+
checkboxSelection: boolean | undefined;
|
|
110
|
+
headerCheckboxSelection: boolean | undefined;
|
|
111
|
+
field: string;
|
|
112
|
+
label: string;
|
|
113
|
+
dataType?: "string" | "number" | "date" | "boolean" | "currency";
|
|
114
|
+
format?: string;
|
|
115
|
+
sortable?: boolean;
|
|
116
|
+
filterable?: boolean;
|
|
117
|
+
align?: "left" | "center" | "right";
|
|
118
|
+
visible?: boolean;
|
|
119
|
+
pinned?: "left" | "right" | false;
|
|
120
|
+
order?: number;
|
|
121
|
+
aggregate?: "sum" | "avg" | "count" | "min" | "max" | "none";
|
|
122
|
+
action?: import("../../core/models/report-grid.model").GridRowClickAction;
|
|
123
|
+
}[];
|
|
124
|
+
sortModel: any;
|
|
125
|
+
groupModel: string[];
|
|
126
|
+
activeFilters: {};
|
|
127
|
+
highlightRules: never[];
|
|
128
|
+
}>;
|
|
31
129
|
readonly gridInputs: import("@angular/core").Signal<{
|
|
32
130
|
columns: {
|
|
33
131
|
headerName: string;
|
|
@@ -36,6 +134,8 @@ export declare class ReportGridBridgeComponent {
|
|
|
36
134
|
hide: boolean;
|
|
37
135
|
width: number | undefined;
|
|
38
136
|
aggFunc: "sum" | "avg" | "count" | "min" | "max" | undefined;
|
|
137
|
+
checkboxSelection: boolean | undefined;
|
|
138
|
+
headerCheckboxSelection: boolean | undefined;
|
|
39
139
|
field: string;
|
|
40
140
|
label: string;
|
|
41
141
|
dataType?: "string" | "number" | "date" | "boolean" | "currency";
|
|
@@ -47,6 +147,7 @@ export declare class ReportGridBridgeComponent {
|
|
|
47
147
|
pinned?: "left" | "right" | false;
|
|
48
148
|
order?: number;
|
|
49
149
|
aggregate?: "sum" | "avg" | "count" | "min" | "max" | "none";
|
|
150
|
+
action?: import("../../core/models/report-grid.model").GridRowClickAction;
|
|
50
151
|
}[];
|
|
51
152
|
columnDefs: {
|
|
52
153
|
headerName: string;
|
|
@@ -55,6 +156,8 @@ export declare class ReportGridBridgeComponent {
|
|
|
55
156
|
hide: boolean;
|
|
56
157
|
width: number | undefined;
|
|
57
158
|
aggFunc: "sum" | "avg" | "count" | "min" | "max" | undefined;
|
|
159
|
+
checkboxSelection: boolean | undefined;
|
|
160
|
+
headerCheckboxSelection: boolean | undefined;
|
|
58
161
|
field: string;
|
|
59
162
|
label: string;
|
|
60
163
|
dataType?: "string" | "number" | "date" | "boolean" | "currency";
|
|
@@ -66,15 +169,69 @@ export declare class ReportGridBridgeComponent {
|
|
|
66
169
|
pinned?: "left" | "right" | false;
|
|
67
170
|
order?: number;
|
|
68
171
|
aggregate?: "sum" | "avg" | "count" | "min" | "max" | "none";
|
|
172
|
+
action?: import("../../core/models/report-grid.model").GridRowClickAction;
|
|
69
173
|
}[];
|
|
70
|
-
data: unknown[];
|
|
71
174
|
rowData: unknown[];
|
|
72
|
-
|
|
73
|
-
|
|
175
|
+
config: {
|
|
176
|
+
rowSelection: "single" | "multiple";
|
|
177
|
+
selectionMode: "single" | "multiple";
|
|
178
|
+
checkboxSelection: boolean;
|
|
179
|
+
headerCheckboxSelection: boolean;
|
|
180
|
+
stateKey: string;
|
|
181
|
+
pageSize?: number;
|
|
182
|
+
pagination?: boolean;
|
|
183
|
+
selectable?: boolean;
|
|
184
|
+
showRowNumbers?: boolean;
|
|
185
|
+
allowColumnReorder?: boolean;
|
|
186
|
+
allowExport?: boolean;
|
|
187
|
+
exportFormats?: ("csv" | "excel" | "pdf")[];
|
|
188
|
+
showFooter?: boolean;
|
|
189
|
+
height?: string;
|
|
190
|
+
groupModel?: string[];
|
|
191
|
+
sortModel?: unknown[];
|
|
192
|
+
reportState?: Record<string, unknown>;
|
|
193
|
+
presets?: unknown[];
|
|
194
|
+
sideBar: boolean | {
|
|
195
|
+
visible?: boolean;
|
|
196
|
+
panel?: ("columns" | "filters" | "highlights" | "export" | "analytics" | "chat")[];
|
|
197
|
+
};
|
|
198
|
+
globalSearch: boolean;
|
|
199
|
+
statusBar: boolean;
|
|
200
|
+
rowClickAction?: import("../../core/models/report-grid.model").GridRowClickAction;
|
|
201
|
+
};
|
|
202
|
+
reportState: {
|
|
203
|
+
columnGroupDefs: null;
|
|
204
|
+
columnDefs: {
|
|
205
|
+
headerName: string;
|
|
206
|
+
header: string;
|
|
207
|
+
title: string;
|
|
208
|
+
hide: boolean;
|
|
209
|
+
width: number | undefined;
|
|
210
|
+
aggFunc: "sum" | "avg" | "count" | "min" | "max" | undefined;
|
|
211
|
+
checkboxSelection: boolean | undefined;
|
|
212
|
+
headerCheckboxSelection: boolean | undefined;
|
|
213
|
+
field: string;
|
|
214
|
+
label: string;
|
|
215
|
+
dataType?: "string" | "number" | "date" | "boolean" | "currency";
|
|
216
|
+
format?: string;
|
|
217
|
+
sortable?: boolean;
|
|
218
|
+
filterable?: boolean;
|
|
219
|
+
align?: "left" | "center" | "right";
|
|
220
|
+
visible?: boolean;
|
|
221
|
+
pinned?: "left" | "right" | false;
|
|
222
|
+
order?: number;
|
|
223
|
+
aggregate?: "sum" | "avg" | "count" | "min" | "max" | "none";
|
|
224
|
+
action?: import("../../core/models/report-grid.model").GridRowClickAction;
|
|
225
|
+
}[];
|
|
226
|
+
sortModel: any;
|
|
227
|
+
groupModel: string[];
|
|
228
|
+
activeFilters: {};
|
|
229
|
+
highlightRules: never[];
|
|
230
|
+
};
|
|
74
231
|
pagination: boolean;
|
|
75
232
|
pageSize: number;
|
|
233
|
+
rowSelection: "single" | "multiple";
|
|
76
234
|
}>;
|
|
77
|
-
readonly visibleColumns: import("@angular/core").Signal<GridColumnDefinition[]>;
|
|
78
235
|
readonly showRowNumbers: import("@angular/core").Signal<boolean>;
|
|
79
236
|
readonly isPaginationEnabled: import("@angular/core").Signal<boolean>;
|
|
80
237
|
readonly pageSize: import("@angular/core").Signal<number>;
|
|
@@ -89,6 +246,14 @@ export declare class ReportGridBridgeComponent {
|
|
|
89
246
|
nextPage(): void;
|
|
90
247
|
formatValue(value: unknown, col: GridColumnDefinition): string;
|
|
91
248
|
computeAggregate(col: GridColumnDefinition): string;
|
|
249
|
+
onSelectionChange(selected: any): void;
|
|
250
|
+
isRowSelected(row: Record<string, unknown>): boolean;
|
|
251
|
+
isAllSelected(): boolean;
|
|
252
|
+
isPartiallySelected(): boolean;
|
|
253
|
+
toggleSelectAll(event: Event): void;
|
|
254
|
+
toggleRowSelection(row: Record<string, unknown>, event: Event): void;
|
|
255
|
+
onRowClick(row: Record<string, unknown>, event: MouseEvent): void;
|
|
256
|
+
onCellClick(row: Record<string, unknown>, col: GridColumnDefinition, event: MouseEvent): void;
|
|
92
257
|
static ɵfac: i0.ɵɵFactoryDeclaration<ReportGridBridgeComponent, never>;
|
|
93
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ReportGridBridgeComponent, "rpt-grid-bridge", never, { "gridDefinition": { "alias": "gridDefinition"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
258
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ReportGridBridgeComponent, "rpt-grid-bridge", never, { "gridDefinition": { "alias": "gridDefinition"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; }, { "gridStateChange": "gridStateChange"; "columnDefsChange": "columnDefsChange"; "rowClick": "rowClick"; "selectionChange": "selectionChange"; }, never, never, true, never>;
|
|
94
259
|
}
|