@report-designer/core 0.1.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/dist/aggregate-engine/aggregate-runtime.d.ts +14 -0
- package/dist/aggregate-engine/aggregate-runtime.d.ts.map +1 -0
- package/dist/aggregate-engine/aggregate-runtime.js +98 -0
- package/dist/aggregate-engine/aggregate-runtime.js.map +1 -0
- package/dist/aggregate-engine/aggregate-types.d.ts +14 -0
- package/dist/aggregate-engine/aggregate-types.d.ts.map +1 -0
- package/dist/aggregate-engine/aggregate-types.js +2 -0
- package/dist/aggregate-engine/aggregate-types.js.map +1 -0
- package/dist/aggregate-engine/index.d.ts +3 -0
- package/dist/aggregate-engine/index.d.ts.map +1 -0
- package/dist/aggregate-engine/index.js +3 -0
- package/dist/aggregate-engine/index.js.map +1 -0
- package/dist/band-planner/band-plan.d.ts +46 -0
- package/dist/band-planner/band-plan.d.ts.map +1 -0
- package/dist/band-planner/band-plan.js +2 -0
- package/dist/band-planner/band-plan.js.map +1 -0
- package/dist/band-planner/build-band-plan.d.ts +4 -0
- package/dist/band-planner/build-band-plan.d.ts.map +1 -0
- package/dist/band-planner/build-band-plan.js +84 -0
- package/dist/band-planner/build-band-plan.js.map +1 -0
- package/dist/band-planner/execute-band-plan.d.ts +8 -0
- package/dist/band-planner/execute-band-plan.d.ts.map +1 -0
- package/dist/band-planner/execute-band-plan.js +280 -0
- package/dist/band-planner/execute-band-plan.js.map +1 -0
- package/dist/band-planner/index.d.ts +4 -0
- package/dist/band-planner/index.d.ts.map +1 -0
- package/dist/band-planner/index.js +4 -0
- package/dist/band-planner/index.js.map +1 -0
- package/dist/chart/chart-capabilities.d.ts +40 -0
- package/dist/chart/chart-capabilities.d.ts.map +1 -0
- package/dist/chart/chart-capabilities.js +62 -0
- package/dist/chart/chart-capabilities.js.map +1 -0
- package/dist/chart/index.d.ts +2 -0
- package/dist/chart/index.d.ts.map +1 -0
- package/dist/chart/index.js +2 -0
- package/dist/chart/index.js.map +1 -0
- package/dist/command-engine/index.d.ts +49 -0
- package/dist/command-engine/index.d.ts.map +1 -0
- package/dist/command-engine/index.js +537 -0
- package/dist/command-engine/index.js.map +1 -0
- package/dist/conditional-format/index.d.ts +17 -0
- package/dist/conditional-format/index.d.ts.map +1 -0
- package/dist/conditional-format/index.js +171 -0
- package/dist/conditional-format/index.js.map +1 -0
- package/dist/data-dictionary/index.d.ts +3 -0
- package/dist/data-dictionary/index.d.ts.map +1 -0
- package/dist/data-dictionary/index.js +3 -0
- package/dist/data-dictionary/index.js.map +1 -0
- package/dist/data-dictionary/json-dictionary.d.ts +6 -0
- package/dist/data-dictionary/json-dictionary.d.ts.map +1 -0
- package/dist/data-dictionary/json-dictionary.js +195 -0
- package/dist/data-dictionary/json-dictionary.js.map +1 -0
- package/dist/data-dictionary/json-path.d.ts +9 -0
- package/dist/data-dictionary/json-path.d.ts.map +1 -0
- package/dist/data-dictionary/json-path.js +34 -0
- package/dist/data-dictionary/json-path.js.map +1 -0
- package/dist/event-engine/event-component-handles.d.ts +84 -0
- package/dist/event-engine/event-component-handles.d.ts.map +1 -0
- package/dist/event-engine/event-component-handles.js +276 -0
- package/dist/event-engine/event-component-handles.js.map +1 -0
- package/dist/event-engine/event-context.d.ts +23 -0
- package/dist/event-engine/event-context.d.ts.map +1 -0
- package/dist/event-engine/event-context.js +184 -0
- package/dist/event-engine/event-context.js.map +1 -0
- package/dist/event-engine/event-editor-contract.d.ts +39 -0
- package/dist/event-engine/event-editor-contract.d.ts.map +1 -0
- package/dist/event-engine/event-editor-contract.js +442 -0
- package/dist/event-engine/event-editor-contract.js.map +1 -0
- package/dist/event-engine/event-editor-data-contract.d.ts +10 -0
- package/dist/event-engine/event-editor-data-contract.d.ts.map +1 -0
- package/dist/event-engine/event-editor-data-contract.js +85 -0
- package/dist/event-engine/event-editor-data-contract.js.map +1 -0
- package/dist/event-engine/event-log.d.ts +3 -0
- package/dist/event-engine/event-log.d.ts.map +1 -0
- package/dist/event-engine/event-log.js +37 -0
- package/dist/event-engine/event-log.js.map +1 -0
- package/dist/event-engine/event-runner.d.ts +7 -0
- package/dist/event-engine/event-runner.d.ts.map +1 -0
- package/dist/event-engine/event-runner.js +265 -0
- package/dist/event-engine/event-runner.js.map +1 -0
- package/dist/event-engine/event-template.d.ts +14 -0
- package/dist/event-engine/event-template.d.ts.map +1 -0
- package/dist/event-engine/event-template.js +183 -0
- package/dist/event-engine/event-template.js.map +1 -0
- package/dist/event-engine/index.d.ts +9 -0
- package/dist/event-engine/index.d.ts.map +1 -0
- package/dist/event-engine/index.js +9 -0
- package/dist/event-engine/index.js.map +1 -0
- package/dist/event-engine/types.d.ts +129 -0
- package/dist/event-engine/types.d.ts.map +1 -0
- package/dist/event-engine/types.js +2 -0
- package/dist/event-engine/types.js.map +1 -0
- package/dist/expression-engine/ast.d.ts +35 -0
- package/dist/expression-engine/ast.d.ts.map +1 -0
- package/dist/expression-engine/ast.js +9 -0
- package/dist/expression-engine/ast.js.map +1 -0
- package/dist/expression-engine/chinese-money.d.ts +2 -0
- package/dist/expression-engine/chinese-money.d.ts.map +1 -0
- package/dist/expression-engine/chinese-money.js +90 -0
- package/dist/expression-engine/chinese-money.js.map +1 -0
- package/dist/expression-engine/evaluator.d.ts +26 -0
- package/dist/expression-engine/evaluator.d.ts.map +1 -0
- package/dist/expression-engine/evaluator.js +406 -0
- package/dist/expression-engine/evaluator.js.map +1 -0
- package/dist/expression-engine/index.d.ts +7 -0
- package/dist/expression-engine/index.d.ts.map +1 -0
- package/dist/expression-engine/index.js +5 -0
- package/dist/expression-engine/index.js.map +1 -0
- package/dist/expression-engine/lexer.d.ts +33 -0
- package/dist/expression-engine/lexer.d.ts.map +1 -0
- package/dist/expression-engine/lexer.js +169 -0
- package/dist/expression-engine/lexer.js.map +1 -0
- package/dist/expression-engine/parser.d.ts +8 -0
- package/dist/expression-engine/parser.d.ts.map +1 -0
- package/dist/expression-engine/parser.js +223 -0
- package/dist/expression-engine/parser.js.map +1 -0
- package/dist/expression-engine/report-functions.d.ts +3 -0
- package/dist/expression-engine/report-functions.d.ts.map +1 -0
- package/dist/expression-engine/report-functions.js +41 -0
- package/dist/expression-engine/report-functions.js.map +1 -0
- package/dist/fonts/index.d.ts +14 -0
- package/dist/fonts/index.d.ts.map +1 -0
- package/dist/fonts/index.js +73 -0
- package/dist/fonts/index.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/layout-engine/index.d.ts +3 -0
- package/dist/layout-engine/index.d.ts.map +1 -0
- package/dist/layout-engine/index.js +3 -0
- package/dist/layout-engine/index.js.map +1 -0
- package/dist/layout-engine/layout-band.d.ts +40 -0
- package/dist/layout-engine/layout-band.d.ts.map +1 -0
- package/dist/layout-engine/layout-band.js +1243 -0
- package/dist/layout-engine/layout-band.js.map +1 -0
- package/dist/layout-engine/measure.d.ts +10 -0
- package/dist/layout-engine/measure.d.ts.map +1 -0
- package/dist/layout-engine/measure.js +37 -0
- package/dist/layout-engine/measure.js.map +1 -0
- package/dist/pagination/index.d.ts +38 -0
- package/dist/pagination/index.d.ts.map +1 -0
- package/dist/pagination/index.js +114 -0
- package/dist/pagination/index.js.map +1 -0
- package/dist/pagination/page-number-pass.d.ts +3 -0
- package/dist/pagination/page-number-pass.d.ts.map +1 -0
- package/dist/pagination/page-number-pass.js +18 -0
- package/dist/pagination/page-number-pass.js.map +1 -0
- package/dist/pagination/paginate.d.ts +24 -0
- package/dist/pagination/paginate.d.ts.map +1 -0
- package/dist/pagination/paginate.js +904 -0
- package/dist/pagination/paginate.js.map +1 -0
- package/dist/render-document/index.d.ts +2 -0
- package/dist/render-document/index.d.ts.map +1 -0
- package/dist/render-document/index.js +2 -0
- package/dist/render-document/index.js.map +1 -0
- package/dist/render-document/types.d.ts +159 -0
- package/dist/render-document/types.d.ts.map +1 -0
- package/dist/render-document/types.js +2 -0
- package/dist/render-document/types.js.map +1 -0
- package/dist/render-engine/index.d.ts +65 -0
- package/dist/render-engine/index.d.ts.map +1 -0
- package/dist/render-engine/index.js +188 -0
- package/dist/render-engine/index.js.map +1 -0
- package/dist/rich-text/index.d.ts +2 -0
- package/dist/rich-text/index.d.ts.map +1 -0
- package/dist/rich-text/index.js +84 -0
- package/dist/rich-text/index.js.map +1 -0
- package/dist/table/table-structure.d.ts +10 -0
- package/dist/table/table-structure.d.ts.map +1 -0
- package/dist/table/table-structure.js +196 -0
- package/dist/table/table-structure.js.map +1 -0
- package/dist/template-model/index.d.ts +5 -0
- package/dist/template-model/index.d.ts.map +1 -0
- package/dist/template-model/index.js +5 -0
- package/dist/template-model/index.js.map +1 -0
- package/dist/template-model/normalize-template.d.ts +3 -0
- package/dist/template-model/normalize-template.d.ts.map +1 -0
- package/dist/template-model/normalize-template.js +167 -0
- package/dist/template-model/normalize-template.js.map +1 -0
- package/dist/template-model/schema.d.ts +10 -0
- package/dist/template-model/schema.d.ts.map +1 -0
- package/dist/template-model/schema.js +134 -0
- package/dist/template-model/schema.js.map +1 -0
- package/dist/template-model/template.d.ts +5 -0
- package/dist/template-model/template.d.ts.map +1 -0
- package/dist/template-model/template.js +194 -0
- package/dist/template-model/template.js.map +1 -0
- package/dist/template-model/types.d.ts +641 -0
- package/dist/template-model/types.d.ts.map +1 -0
- package/dist/template-model/types.js +36 -0
- package/dist/template-model/types.js.map +1 -0
- package/dist/text-format/index.d.ts +5 -0
- package/dist/text-format/index.d.ts.map +1 -0
- package/dist/text-format/index.js +311 -0
- package/dist/text-format/index.js.map +1 -0
- package/dist/text-style/index.d.ts +3 -0
- package/dist/text-style/index.d.ts.map +1 -0
- package/dist/text-style/index.js +2 -0
- package/dist/text-style/index.js.map +1 -0
- package/dist/text-style/resolve-text-style.d.ts +58 -0
- package/dist/text-style/resolve-text-style.d.ts.map +1 -0
- package/dist/text-style/resolve-text-style.js +155 -0
- package/dist/text-style/resolve-text-style.js.map +1 -0
- package/package.json +38 -0
|
@@ -0,0 +1,442 @@
|
|
|
1
|
+
export const EVENT_SCRIPT_DTS = `
|
|
2
|
+
type EventMode = 'preview' | 'print' | 'pdf';
|
|
3
|
+
type EventOwnerType = 'report' | 'page' | 'band' | 'component';
|
|
4
|
+
type EventLogLevel = 'info' | 'warning' | 'error';
|
|
5
|
+
|
|
6
|
+
interface EventTargetState {
|
|
7
|
+
ownerType: EventOwnerType;
|
|
8
|
+
ownerId: string;
|
|
9
|
+
eventName: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
interface EventLogEntry extends EventTargetState {
|
|
13
|
+
level: EventLogLevel;
|
|
14
|
+
message: string;
|
|
15
|
+
timestamp: string;
|
|
16
|
+
line?: number;
|
|
17
|
+
column?: number;
|
|
18
|
+
stackExcerpt?: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
interface EventLogCollector {
|
|
22
|
+
readonly entries: EventLogEntry[];
|
|
23
|
+
info(message: string, target?: Partial<EventTargetState>): void;
|
|
24
|
+
warning(message: string, target?: Partial<EventTargetState>): void;
|
|
25
|
+
error(message: string, target?: Partial<EventTargetState>): void;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
type ComponentType =
|
|
29
|
+
| 'text'
|
|
30
|
+
| 'image'
|
|
31
|
+
| 'chart'
|
|
32
|
+
| 'table'
|
|
33
|
+
| 'barcode'
|
|
34
|
+
| 'qrcode'
|
|
35
|
+
| 'checkbox'
|
|
36
|
+
| 'richtext'
|
|
37
|
+
| 'subreport'
|
|
38
|
+
| 'panel'
|
|
39
|
+
| 'line'
|
|
40
|
+
| 'shape'
|
|
41
|
+
| 'pagenumber'
|
|
42
|
+
| 'datetime';
|
|
43
|
+
|
|
44
|
+
interface ReportComponent {
|
|
45
|
+
id: string;
|
|
46
|
+
name?: string;
|
|
47
|
+
type: ComponentType;
|
|
48
|
+
x: number;
|
|
49
|
+
y: number;
|
|
50
|
+
width: number;
|
|
51
|
+
height: number;
|
|
52
|
+
visible?: unknown;
|
|
53
|
+
events?: Record<string, unknown>;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
interface TextComponent extends ReportComponent {
|
|
57
|
+
type: 'text';
|
|
58
|
+
text: string;
|
|
59
|
+
font?: Record<string, unknown>;
|
|
60
|
+
textAlign?: string;
|
|
61
|
+
verticalAlign?: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
interface ImageComponent extends ReportComponent {
|
|
65
|
+
type: 'image';
|
|
66
|
+
src: string;
|
|
67
|
+
fitMode?: string;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
interface ChartComponent extends ReportComponent {
|
|
71
|
+
type: 'chart';
|
|
72
|
+
chartType?: string;
|
|
73
|
+
variant?: string;
|
|
74
|
+
binding?: Record<string, unknown>;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
interface TableCell {
|
|
78
|
+
text?: string;
|
|
79
|
+
rowSpan?: number;
|
|
80
|
+
colSpan?: number;
|
|
81
|
+
width?: number;
|
|
82
|
+
[key: string]: unknown;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
interface TableRow {
|
|
86
|
+
id?: string;
|
|
87
|
+
height?: number;
|
|
88
|
+
cells: TableCell[];
|
|
89
|
+
[key: string]: unknown;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
interface TableComponent extends ReportComponent {
|
|
93
|
+
type: 'table';
|
|
94
|
+
rows?: TableRow[];
|
|
95
|
+
rowCount?: number;
|
|
96
|
+
columnCount?: number;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
interface BarcodeComponent extends ReportComponent {
|
|
100
|
+
type: 'barcode';
|
|
101
|
+
value: string;
|
|
102
|
+
format?: string;
|
|
103
|
+
showText?: boolean;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
interface QRCodeComponent extends ReportComponent {
|
|
107
|
+
type: 'qrcode';
|
|
108
|
+
value: string;
|
|
109
|
+
format?: string;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
interface CheckboxComponent extends ReportComponent {
|
|
113
|
+
type: 'checkbox';
|
|
114
|
+
checked: string | boolean;
|
|
115
|
+
label?: string;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
interface RichtextComponent extends ReportComponent {
|
|
119
|
+
type: 'richtext';
|
|
120
|
+
html: string;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
interface PanelComponent extends ReportComponent {
|
|
124
|
+
type: 'panel';
|
|
125
|
+
components: ReportComponent[];
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
interface LineComponent extends ReportComponent {
|
|
129
|
+
type: 'line';
|
|
130
|
+
startX: number;
|
|
131
|
+
startY: number;
|
|
132
|
+
endX: number;
|
|
133
|
+
endY: number;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
interface ShapeComponent extends ReportComponent {
|
|
137
|
+
type: 'shape';
|
|
138
|
+
shapeType?: string;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
interface PageNumberComponent extends ReportComponent {
|
|
142
|
+
type: 'pagenumber';
|
|
143
|
+
format?: string;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
interface DateTimeComponent extends ReportComponent {
|
|
147
|
+
type: 'datetime';
|
|
148
|
+
format?: string;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
type EventComponentBounds = Partial<Pick<ReportComponent, 'x' | 'y' | 'width' | 'height'>>;
|
|
152
|
+
|
|
153
|
+
interface EventComponentHandle<TComponent extends ReportComponent = ReportComponent> {
|
|
154
|
+
readonly component: TComponent;
|
|
155
|
+
readonly id: string;
|
|
156
|
+
readonly name: string | undefined;
|
|
157
|
+
readonly type: TComponent['type'];
|
|
158
|
+
setProperty(path: string, value: unknown): this;
|
|
159
|
+
getProperty(path: string): unknown;
|
|
160
|
+
setBounds(bounds: EventComponentBounds): this;
|
|
161
|
+
show(): this;
|
|
162
|
+
hide(): this;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
interface EventTextHandle extends EventComponentHandle<TextComponent> {
|
|
166
|
+
setText(text: string): this;
|
|
167
|
+
bindText(expression: string): this;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
interface EventImageHandle extends EventComponentHandle<ImageComponent> {
|
|
171
|
+
setSource(src: string): this;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
interface EventBarcodeHandle extends EventComponentHandle<BarcodeComponent> {
|
|
175
|
+
setValue(value: string): this;
|
|
176
|
+
setFormat(format: string): this;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
interface EventQRCodeHandle extends EventComponentHandle<QRCodeComponent> {
|
|
180
|
+
setValue(value: string): this;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
interface EventCheckboxHandle extends EventComponentHandle<CheckboxComponent> {
|
|
184
|
+
setChecked(checked: string | boolean): this;
|
|
185
|
+
setLabel(label: string): this;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
interface EventRichtextHandle extends EventComponentHandle<RichtextComponent> {
|
|
189
|
+
setHtml(html: string): this;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
interface EventTableCellMatch {
|
|
193
|
+
row: number;
|
|
194
|
+
column: number;
|
|
195
|
+
cell: TableCell;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
interface EventTableHandle extends EventComponentHandle<TableComponent> {
|
|
199
|
+
readonly rowCount: number;
|
|
200
|
+
readonly columnCount: number;
|
|
201
|
+
findCellText(text: string): EventTableCellMatch | undefined;
|
|
202
|
+
ensureColumnCount(columnCount: number): this;
|
|
203
|
+
ensureRowCount(rowCount: number): this;
|
|
204
|
+
insertColumnsAfter(afterColumn: number, count?: number): this;
|
|
205
|
+
insertRowsAfter(afterRow: number, count?: number): this;
|
|
206
|
+
setCellText(row: number, column: number, text: string): this;
|
|
207
|
+
setCell(row: number, column: number, cell: Partial<TableCell>): this;
|
|
208
|
+
mergeCells(row: number, column: number, rowSpan: number, colSpan: number): this;
|
|
209
|
+
setColumnWidth(column: number, width: number | undefined): this;
|
|
210
|
+
distributeColumns(startColumn?: number, count?: number): this;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
type EventTableComponentHandle = EventTableHandle;
|
|
214
|
+
type EventBaseComponentFactory = (name: string) => EventComponentHandle;
|
|
215
|
+
type EventTextComponentFactory = (name: string) => EventTextHandle;
|
|
216
|
+
type EventImageComponentFactory = (name: string) => EventImageHandle;
|
|
217
|
+
type EventTableComponentFactory = (name: string) => EventTableHandle;
|
|
218
|
+
type EventBarcodeComponentFactory = (name: string) => EventBarcodeHandle;
|
|
219
|
+
type EventQRCodeComponentFactory = (name: string) => EventQRCodeHandle;
|
|
220
|
+
type EventCheckboxComponentFactory = (name: string) => EventCheckboxHandle;
|
|
221
|
+
type EventRichtextComponentFactory = (name: string) => EventRichtextHandle;
|
|
222
|
+
type EventTypedComponentFactory = (name: string) => EventComponentHandle;
|
|
223
|
+
type EventComponentAccessor = EventBaseComponentFactory & Partial<ReportComponent>;
|
|
224
|
+
|
|
225
|
+
interface DynamicTextOptions {
|
|
226
|
+
name?: string;
|
|
227
|
+
x: number;
|
|
228
|
+
y: number;
|
|
229
|
+
width: number;
|
|
230
|
+
height: number;
|
|
231
|
+
text: string;
|
|
232
|
+
font?: Record<string, unknown>;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
interface DynamicImageOptions {
|
|
236
|
+
name?: string;
|
|
237
|
+
x: number;
|
|
238
|
+
y: number;
|
|
239
|
+
width: number;
|
|
240
|
+
height: number;
|
|
241
|
+
src: string;
|
|
242
|
+
fitMode?: string;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
interface DynamicBarcodeOptions {
|
|
246
|
+
name?: string;
|
|
247
|
+
x: number;
|
|
248
|
+
y: number;
|
|
249
|
+
width: number;
|
|
250
|
+
height: number;
|
|
251
|
+
value: string;
|
|
252
|
+
format?: string;
|
|
253
|
+
showText?: boolean;
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
interface EventContext {
|
|
257
|
+
mode: EventMode;
|
|
258
|
+
report?: unknown;
|
|
259
|
+
page?: unknown;
|
|
260
|
+
band?: unknown;
|
|
261
|
+
component?: EventComponentAccessor;
|
|
262
|
+
currentComponent?: ReportComponent;
|
|
263
|
+
row?: Record<string, unknown>;
|
|
264
|
+
rowIndex?: number;
|
|
265
|
+
dataSourceId?: string;
|
|
266
|
+
data: Record<string, unknown>;
|
|
267
|
+
parameters?: Record<string, unknown>;
|
|
268
|
+
variables?: Record<string, unknown>;
|
|
269
|
+
state: Record<string, unknown>;
|
|
270
|
+
target: EventTargetState;
|
|
271
|
+
log: EventLogCollector;
|
|
272
|
+
value?: unknown;
|
|
273
|
+
cancel?: () => void;
|
|
274
|
+
hide?: () => void;
|
|
275
|
+
setValue?: (value: unknown) => void;
|
|
276
|
+
getComponent?: (name: string) => ReportComponent | undefined;
|
|
277
|
+
setComponentProperty?: (name: string, path: string, value: unknown) => void;
|
|
278
|
+
bindText?: (name: string, expression: string) => void;
|
|
279
|
+
text?: EventTextComponentFactory;
|
|
280
|
+
image?: EventImageComponentFactory;
|
|
281
|
+
table?: EventTableComponentFactory;
|
|
282
|
+
barcode?: EventBarcodeComponentFactory;
|
|
283
|
+
qrcode?: EventQRCodeComponentFactory;
|
|
284
|
+
checkbox?: EventCheckboxComponentFactory;
|
|
285
|
+
richtext?: EventRichtextComponentFactory;
|
|
286
|
+
chart?: EventTypedComponentFactory;
|
|
287
|
+
line?: EventTypedComponentFactory;
|
|
288
|
+
shape?: EventTypedComponentFactory;
|
|
289
|
+
pageNumber?: EventTypedComponentFactory;
|
|
290
|
+
dateTime?: EventTypedComponentFactory;
|
|
291
|
+
panel?: EventTypedComponentFactory;
|
|
292
|
+
createText?: (options: DynamicTextOptions) => TextComponent;
|
|
293
|
+
createImage?: (options: DynamicImageOptions) => ImageComponent;
|
|
294
|
+
createBarcode?: (options: DynamicBarcodeOptions) => BarcodeComponent;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
interface ReportEventContext extends EventContext {
|
|
298
|
+
report: unknown;
|
|
299
|
+
target: EventTargetState & { ownerType: 'report' };
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
interface PageEventContext extends EventContext {
|
|
303
|
+
page: unknown;
|
|
304
|
+
target: EventTargetState & { ownerType: 'page' };
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
interface BandEventContext extends EventContext {
|
|
308
|
+
band: unknown;
|
|
309
|
+
row?: Record<string, unknown>;
|
|
310
|
+
rowIndex: number;
|
|
311
|
+
target: EventTargetState & { ownerType: 'band' };
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
interface ComponentEventContext extends EventContext {
|
|
315
|
+
component: EventComponentAccessor;
|
|
316
|
+
currentComponent: ReportComponent;
|
|
317
|
+
target: EventTargetState & { ownerType: 'component' };
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
interface ComponentGetValueEventContext extends ComponentEventContext {
|
|
321
|
+
setValue(value: unknown): void;
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
declare const ctx: EventContext;
|
|
325
|
+
`;
|
|
326
|
+
export const eventEditorContextTypeByEvent = {
|
|
327
|
+
report: {
|
|
328
|
+
beforePreview: 'ReportEventContext',
|
|
329
|
+
beforePrint: 'ReportEventContext',
|
|
330
|
+
beforeRender: 'ReportEventContext',
|
|
331
|
+
afterRender: 'ReportEventContext',
|
|
332
|
+
beforeData: 'ReportEventContext',
|
|
333
|
+
afterData: 'ReportEventContext',
|
|
334
|
+
},
|
|
335
|
+
page: {
|
|
336
|
+
beforePrint: 'PageEventContext',
|
|
337
|
+
afterPrint: 'PageEventContext',
|
|
338
|
+
},
|
|
339
|
+
band: {
|
|
340
|
+
beforePrint: 'BandEventContext',
|
|
341
|
+
afterPrint: 'BandEventContext',
|
|
342
|
+
beforeRow: 'BandEventContext',
|
|
343
|
+
afterRow: 'BandEventContext',
|
|
344
|
+
},
|
|
345
|
+
component: {
|
|
346
|
+
getValue: 'ComponentGetValueEventContext',
|
|
347
|
+
beforePrint: 'ComponentEventContext',
|
|
348
|
+
afterPrint: 'ComponentEventContext',
|
|
349
|
+
},
|
|
350
|
+
};
|
|
351
|
+
export const eventEditorHelpers = [
|
|
352
|
+
{
|
|
353
|
+
id: 'ctx.log.info',
|
|
354
|
+
snippet: 'ctx.log.info("${1:message}");',
|
|
355
|
+
descriptionKey: 'events.helper.log.info',
|
|
356
|
+
group: 'log',
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
id: 'ctx.log.warning',
|
|
360
|
+
snippet: 'ctx.log.warning("${1:message}");',
|
|
361
|
+
descriptionKey: 'events.helper.log.warning',
|
|
362
|
+
group: 'log',
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
id: 'ctx.log.error',
|
|
366
|
+
snippet: 'ctx.log.error("${1:message}");',
|
|
367
|
+
descriptionKey: 'events.helper.log.error',
|
|
368
|
+
group: 'log',
|
|
369
|
+
},
|
|
370
|
+
{
|
|
371
|
+
id: 'ctx.hide',
|
|
372
|
+
snippet: 'ctx.hide?.();',
|
|
373
|
+
descriptionKey: 'events.helper.flow.hide',
|
|
374
|
+
group: 'flow',
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
id: 'ctx.cancel',
|
|
378
|
+
snippet: 'ctx.cancel?.();',
|
|
379
|
+
descriptionKey: 'events.helper.flow.cancel',
|
|
380
|
+
group: 'flow',
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
id: 'ctx.setValue',
|
|
384
|
+
snippet: 'ctx.setValue?.("${1:value}");',
|
|
385
|
+
descriptionKey: 'events.helper.value.setValue',
|
|
386
|
+
group: 'value',
|
|
387
|
+
},
|
|
388
|
+
{
|
|
389
|
+
id: 'ctx.bindText',
|
|
390
|
+
snippet: 'ctx.bindText?.("${1:Text1}", "${2:{Data.Field}}");',
|
|
391
|
+
descriptionKey: 'events.helper.mutation.bindText',
|
|
392
|
+
group: 'mutation',
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
id: 'ctx.getComponent',
|
|
396
|
+
snippet: 'ctx.getComponent?.("${1:Text1}");',
|
|
397
|
+
descriptionKey: 'events.helper.mutation.getComponent',
|
|
398
|
+
group: 'mutation',
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
id: 'ctx.setComponentProperty',
|
|
402
|
+
snippet: 'ctx.setComponentProperty?.("${1:Text1}", "${2:text}", "${3:value}");',
|
|
403
|
+
descriptionKey: 'events.helper.mutation.setComponentProperty',
|
|
404
|
+
group: 'mutation',
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
id: 'ctx.createText',
|
|
408
|
+
snippet: 'ctx.createText?.({ x: ${1:0}, y: ${2:0}, width: ${3:40}, height: ${4:8}, text: "${5:New text}" });',
|
|
409
|
+
descriptionKey: 'events.helper.dynamic.createText',
|
|
410
|
+
group: 'dynamic',
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
id: 'ctx.createImage',
|
|
414
|
+
snippet: 'ctx.createImage?.({ x: ${1:0}, y: ${2:0}, width: ${3:40}, height: ${4:30}, src: "${5:image.png}" });',
|
|
415
|
+
descriptionKey: 'events.helper.dynamic.createImage',
|
|
416
|
+
group: 'dynamic',
|
|
417
|
+
},
|
|
418
|
+
{
|
|
419
|
+
id: 'ctx.createBarcode',
|
|
420
|
+
snippet: 'ctx.createBarcode?.({ x: ${1:0}, y: ${2:0}, width: ${3:40}, height: ${4:16}, value: "${5:123456}" });',
|
|
421
|
+
descriptionKey: 'events.helper.dynamic.createBarcode',
|
|
422
|
+
group: 'dynamic',
|
|
423
|
+
},
|
|
424
|
+
];
|
|
425
|
+
export function getEventEditorContextType(targetType, eventName) {
|
|
426
|
+
const targetEvents = eventEditorContextTypeByEvent[targetType];
|
|
427
|
+
const contextType = targetEvents[eventName];
|
|
428
|
+
if (contextType) {
|
|
429
|
+
return contextType;
|
|
430
|
+
}
|
|
431
|
+
if (targetType === 'report') {
|
|
432
|
+
return 'ReportEventContext';
|
|
433
|
+
}
|
|
434
|
+
if (targetType === 'page') {
|
|
435
|
+
return 'PageEventContext';
|
|
436
|
+
}
|
|
437
|
+
if (targetType === 'band') {
|
|
438
|
+
return 'BandEventContext';
|
|
439
|
+
}
|
|
440
|
+
return 'ComponentEventContext';
|
|
441
|
+
}
|
|
442
|
+
//# sourceMappingURL=event-editor-contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-editor-contract.js","sourceRoot":"","sources":["../../src/event-engine/event-editor-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { DataSource, ReportParameter } from '../template-model/types';
|
|
2
|
+
export interface EventEditorDataContractInput {
|
|
3
|
+
dataSources: Pick<DataSource, 'id' | 'name' | 'fields' | 'schema'>[];
|
|
4
|
+
parameters: Pick<ReportParameter, 'id' | 'name' | 'type'>[];
|
|
5
|
+
activeDataSourceId?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function toEventEditorTypeName(dataSourceId: string): string;
|
|
8
|
+
export declare function toEventEditorPropertyName(propertyName: string): string;
|
|
9
|
+
export declare function buildEventEditorDataDts(input: EventEditorDataContractInput): string;
|
|
10
|
+
//# sourceMappingURL=event-editor-data-contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-editor-data-contract.d.ts","sourceRoot":"","sources":["../../src/event-engine/event-editor-data-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAiB,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1F,MAAM,WAAW,4BAA4B;IAC3C,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;IACrE,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC5D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAMD,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAMtE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,GAAG,MAAM,CA4CnF"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
const VALID_IDENTIFIER_PATTERN = /^[A-Za-z_$][A-Za-z0-9_$]*$/;
|
|
2
|
+
export function toEventEditorTypeName(dataSourceId) {
|
|
3
|
+
const normalizedId = dataSourceId.replace(/[^A-Za-z0-9_$]/g, '_').replace(/^(\d)/, '_$1');
|
|
4
|
+
return `EventDataSource_${normalizedId || 'DataSource'}`;
|
|
5
|
+
}
|
|
6
|
+
export function toEventEditorPropertyName(propertyName) {
|
|
7
|
+
if (VALID_IDENTIFIER_PATTERN.test(propertyName)) {
|
|
8
|
+
return propertyName;
|
|
9
|
+
}
|
|
10
|
+
return JSON.stringify(propertyName);
|
|
11
|
+
}
|
|
12
|
+
export function buildEventEditorDataDts(input) {
|
|
13
|
+
const activeDataSource = input.dataSources.find((dataSource) => dataSource.id === input.activeDataSourceId);
|
|
14
|
+
const activeRowType = activeDataSource ? toEventEditorTypeName(activeDataSource.id) : 'Record<string, unknown>';
|
|
15
|
+
const dataSourceInterfaces = input.dataSources.map(buildDataSourceInterface).join('\n\n');
|
|
16
|
+
const dataRows = input.dataSources.map((dataSource) => {
|
|
17
|
+
return ` ${toEventEditorPropertyName(dataSource.id)}: ${toEventEditorTypeName(dataSource.id)}[];`;
|
|
18
|
+
});
|
|
19
|
+
const parameters = input.parameters.map((parameter) => {
|
|
20
|
+
const parameterName = parameter.name || parameter.id;
|
|
21
|
+
return ` ${toEventEditorPropertyName(parameterName)}?: ${toTypeScriptType(parameter.type)};`;
|
|
22
|
+
});
|
|
23
|
+
return [
|
|
24
|
+
dataSourceInterfaces,
|
|
25
|
+
[
|
|
26
|
+
'interface EventEditorDataRows {',
|
|
27
|
+
...dataRows,
|
|
28
|
+
' [key: string]: unknown;',
|
|
29
|
+
'}',
|
|
30
|
+
].join('\n'),
|
|
31
|
+
[
|
|
32
|
+
'interface EventEditorParameters {',
|
|
33
|
+
...parameters,
|
|
34
|
+
' [key: string]: unknown;',
|
|
35
|
+
'}',
|
|
36
|
+
].join('\n'),
|
|
37
|
+
[
|
|
38
|
+
'interface EventEditorVariables {',
|
|
39
|
+
' rowIndex?: number;',
|
|
40
|
+
' row?: Record<string, unknown>;',
|
|
41
|
+
' [key: string]: unknown;',
|
|
42
|
+
'}',
|
|
43
|
+
].join('\n'),
|
|
44
|
+
[
|
|
45
|
+
'interface EventEditorTypedContext {',
|
|
46
|
+
' data: EventEditorDataRows;',
|
|
47
|
+
' parameters?: EventEditorParameters;',
|
|
48
|
+
' variables?: EventEditorVariables;',
|
|
49
|
+
` row?: ${activeRowType};`,
|
|
50
|
+
'}',
|
|
51
|
+
].join('\n'),
|
|
52
|
+
]
|
|
53
|
+
.filter(Boolean)
|
|
54
|
+
.join('\n\n');
|
|
55
|
+
}
|
|
56
|
+
function buildDataSourceInterface(dataSource) {
|
|
57
|
+
const fields = dataSource.schema ?? dataSource.fields ?? [];
|
|
58
|
+
const fieldLines = fields.length > 0
|
|
59
|
+
? fields.map((field) => ` ${toEventEditorPropertyName(field.name)}: ${toFieldType(field)};`)
|
|
60
|
+
: [' [key: string]: unknown;'];
|
|
61
|
+
return [`interface ${toEventEditorTypeName(dataSource.id)} {`, ...fieldLines, '}'].join('\n');
|
|
62
|
+
}
|
|
63
|
+
function toFieldType(field) {
|
|
64
|
+
const type = toTypeScriptType(field.type);
|
|
65
|
+
if (!field.nullable || type === 'null') {
|
|
66
|
+
return type;
|
|
67
|
+
}
|
|
68
|
+
return `${type} | null`;
|
|
69
|
+
}
|
|
70
|
+
function toTypeScriptType(type) {
|
|
71
|
+
switch (type) {
|
|
72
|
+
case 'number':
|
|
73
|
+
return 'number';
|
|
74
|
+
case 'boolean':
|
|
75
|
+
return 'boolean';
|
|
76
|
+
case 'date':
|
|
77
|
+
case 'string':
|
|
78
|
+
return 'string';
|
|
79
|
+
case 'null':
|
|
80
|
+
return 'null';
|
|
81
|
+
default:
|
|
82
|
+
return 'unknown';
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=event-editor-data-contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-editor-data-contract.js","sourceRoot":"","sources":["../../src/event-engine/event-editor-data-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-log.d.ts","sourceRoot":"","sources":["../../src/event-engine/event-log.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAgC,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAQjG,wBAAgB,uBAAuB,CAAC,aAAa,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAAG,iBAAiB,CAgCxG"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
const emptyTarget = {
|
|
2
|
+
ownerType: 'report',
|
|
3
|
+
ownerId: '',
|
|
4
|
+
eventName: '',
|
|
5
|
+
};
|
|
6
|
+
export function createEventLogCollector(defaultTarget = {}) {
|
|
7
|
+
const entries = [];
|
|
8
|
+
const write = (level, message, target = {}) => {
|
|
9
|
+
entries.push({
|
|
10
|
+
...emptyTarget,
|
|
11
|
+
...defaultTarget,
|
|
12
|
+
...target,
|
|
13
|
+
level,
|
|
14
|
+
message,
|
|
15
|
+
timestamp: new Date().toISOString(),
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
return {
|
|
19
|
+
entries,
|
|
20
|
+
info(message, target) {
|
|
21
|
+
write('info', message, target);
|
|
22
|
+
},
|
|
23
|
+
warning(message, target) {
|
|
24
|
+
write('warning', message, target);
|
|
25
|
+
},
|
|
26
|
+
error(message, target) {
|
|
27
|
+
write('error', message, target);
|
|
28
|
+
},
|
|
29
|
+
push(entry) {
|
|
30
|
+
entries.push({
|
|
31
|
+
...entry,
|
|
32
|
+
timestamp: entry.timestamp ?? new Date().toISOString(),
|
|
33
|
+
});
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=event-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-log.js","sourceRoot":"","sources":["../../src/event-engine/event-log.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAqB;IACpC,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;CACd,CAAC;AAEF,MAAM,UAAU,uBAAuB,CAAC,gBAA2C,EAAE;IACnF,MAAM,OAAO,GAAoB,EAAE,CAAC;IAEpC,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAE,OAAe,EAAE,SAAoC,EAAE,EAAE,EAAE;QAC9F,OAAO,CAAC,IAAI,CAAC;YACX,GAAG,WAAW;YACd,GAAG,aAAa;YAChB,GAAG,MAAM;YACT,KAAK;YACL,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO;QACL,OAAO;QACP,IAAI,CAAC,OAAO,EAAE,MAAM;YAClB,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,CAAC,OAAO,EAAE,MAAM;YACrB,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QACD,KAAK,CAAC,OAAO,EAAE,MAAM;YACnB,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,KAAK;YACR,OAAO,CAAC,IAAI,CAAC;gBACX,GAAG,KAAK;gBACR,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACvD,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { EventRuntimeState, EventScriptValidationResult, RunEventScriptOptions } from './types';
|
|
2
|
+
export declare function createEventRuntimeState(options?: {
|
|
3
|
+
maxEventCount?: number;
|
|
4
|
+
}): EventRuntimeState;
|
|
5
|
+
export declare function validateEventScript(script: string): EventScriptValidationResult;
|
|
6
|
+
export declare function runEventScript(options: RunEventScriptOptions): void;
|
|
7
|
+
//# sourceMappingURL=event-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-runner.d.ts","sourceRoot":"","sources":["../../src/event-engine/event-runner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,iBAAiB,EACjB,2BAA2B,EAE3B,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAiCjB,wBAAgB,uBAAuB,CAAC,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,iBAAiB,CAKnG;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,2BAA2B,CAmB/E;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAoCnE"}
|