@multiplatform.one/frappe-ui 7.88.0 → 7.88.1
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/cjs/FrappeReportBuilder.cjs +2 -1
- package/dist/cjs/FrappeReportBuilder.native.js +2 -1
- package/dist/cjs/FrappeReportBuilder.native.js.map +1 -1
- package/dist/cjs/report/ReportGrid.cjs +18 -4
- package/dist/cjs/report/ReportGrid.native.js +28 -4
- package/dist/cjs/report/ReportGrid.native.js.map +1 -1
- package/dist/cjs/report/ReportViewToolbar.cjs +8 -13
- package/dist/cjs/report/ReportViewToolbar.native.js +8 -13
- package/dist/cjs/report/ReportViewToolbar.native.js.map +1 -1
- package/dist/esm/FrappeReportBuilder.mjs +2 -1
- package/dist/esm/FrappeReportBuilder.mjs.map +1 -1
- package/dist/esm/FrappeReportBuilder.native.js +2 -1
- package/dist/esm/FrappeReportBuilder.native.js.map +1 -1
- package/dist/esm/report/ReportGrid.mjs +17 -4
- package/dist/esm/report/ReportGrid.mjs.map +1 -1
- package/dist/esm/report/ReportGrid.native.js +27 -4
- package/dist/esm/report/ReportGrid.native.js.map +1 -1
- package/dist/esm/report/ReportViewToolbar.mjs +8 -13
- package/dist/esm/report/ReportViewToolbar.mjs.map +1 -1
- package/dist/esm/report/ReportViewToolbar.native.js +8 -13
- package/dist/esm/report/ReportViewToolbar.native.js.map +1 -1
- package/dist/jsx/FrappeReportBuilder.mjs +2 -1
- package/dist/jsx/FrappeReportBuilder.mjs.map +1 -1
- package/dist/jsx/FrappeReportBuilder.native.js +2 -1
- package/dist/jsx/FrappeReportBuilder.native.js.map +1 -1
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/report/ReportGrid.mjs +17 -4
- package/dist/jsx/report/ReportGrid.mjs.map +1 -1
- package/dist/jsx/report/ReportGrid.native.js +28 -4
- package/dist/jsx/report/ReportGrid.native.js.map +1 -1
- package/dist/jsx/report/ReportViewToolbar.mjs +8 -13
- package/dist/jsx/report/ReportViewToolbar.mjs.map +1 -1
- package/dist/jsx/report/ReportViewToolbar.native.js +8 -13
- package/dist/jsx/report/ReportViewToolbar.native.js.map +1 -1
- package/package.json +16 -16
- package/src/FrappeReportBuilder.stories.tsx +1 -0
- package/src/FrappeReportBuilder.tsx +2 -1
- package/src/report/ReportGrid.spec.tsx +14 -1
- package/src/report/ReportGrid.tsx +24 -3
- package/src/report/ReportViewToolbar.spec.tsx +32 -2
- package/src/report/ReportViewToolbar.tsx +29 -24
- package/types/FrappeReportBuilder.d.ts.map +1 -1
- package/types/report/ReportGrid.d.ts +5 -0
- package/types/report/ReportGrid.d.ts.map +1 -1
- package/types/report/ReportViewToolbar.d.ts.map +1 -1
|
@@ -13,7 +13,7 @@ import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
|
13
13
|
import { fireEvent, screen, waitFor } from "@testing-library/react";
|
|
14
14
|
import React from "react";
|
|
15
15
|
import { describe, expect, it, vi } from "vitest";
|
|
16
|
-
import { ReportGrid, type ReportGridProps } from "./ReportGrid";
|
|
16
|
+
import { ReportGrid, type ReportGridProps, stretchColumns } from "./ReportGrid";
|
|
17
17
|
import { buildGridRows, type ReportColumnDef, type ReportRow } from "./reportViewModel";
|
|
18
18
|
|
|
19
19
|
const columns: ReportColumnDef[] = [
|
|
@@ -173,3 +173,16 @@ describe("ReportGrid inner interactive content wins", () => {
|
|
|
173
173
|
expect(body!.querySelectorAll('[role="button"], button')).toHaveLength(0);
|
|
174
174
|
});
|
|
175
175
|
});
|
|
176
|
+
|
|
177
|
+
describe("a wide report fills its viewport (FZ-8907)", () => {
|
|
178
|
+
it("spreads spare width over the columns so the grid meets the viewport edge", () => {
|
|
179
|
+
const stretched = stretchColumns(columns, 56, 1056);
|
|
180
|
+
expect(stretched.reduce((sum, column) => sum + column.width, 0)).toBe(1000);
|
|
181
|
+
expect(stretched[0]!.width).toBeGreaterThan(columns[0]!.width);
|
|
182
|
+
expect(stretched[1]!.width / stretched[0]!.width).toBeCloseTo(120 / 160, 1);
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
it("keeps natural widths when the columns already overflow", () => {
|
|
186
|
+
expect(stretchColumns(columns, 56, 300).map((column) => column.width)).toEqual([160, 120, 160]);
|
|
187
|
+
});
|
|
188
|
+
});
|
|
@@ -67,8 +67,8 @@ function fitColumns(
|
|
|
67
67
|
...(column.fieldname === titleFieldname
|
|
68
68
|
? { width: { flex: 1, min: "$10" as const } }
|
|
69
69
|
: REPORT_NUMERIC_FIELDTYPES.has(column.fieldtype)
|
|
70
|
-
? { width: "$
|
|
71
|
-
: { width: "$
|
|
70
|
+
? { width: "$10" as const }
|
|
71
|
+
: { width: "$9" as const }),
|
|
72
72
|
})),
|
|
73
73
|
data as Array<Record<string, any>>,
|
|
74
74
|
viewportWidth,
|
|
@@ -80,6 +80,25 @@ function fitColumns(
|
|
|
80
80
|
}));
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
+
/**
|
|
84
|
+
* A wide report fills its viewport: spare width goes to every column in
|
|
85
|
+
* proportion, so the grid's right edge meets the toolbar's (FZ-8907).
|
|
86
|
+
*/
|
|
87
|
+
export function stretchColumns(
|
|
88
|
+
columns: readonly ReportColumnDef[],
|
|
89
|
+
fixedWidth: number,
|
|
90
|
+
viewportWidth: number,
|
|
91
|
+
): ReportColumnDef[] {
|
|
92
|
+
const natural = columns.reduce((sum, column) => sum + column.width, 0);
|
|
93
|
+
const room = viewportWidth - fixedWidth;
|
|
94
|
+
if (natural <= 0 || room <= natural) return [...columns];
|
|
95
|
+
const scale = room / natural;
|
|
96
|
+
const widths = columns.map((column) => Math.floor(column.width * scale));
|
|
97
|
+
const last = widths.length - 1;
|
|
98
|
+
widths[last] = (widths[last] ?? 0) + room - widths.reduce((sum, width) => sum + width, 0);
|
|
99
|
+
return columns.map((column, index) => ({ ...column, width: widths[index] ?? column.width }));
|
|
100
|
+
}
|
|
101
|
+
|
|
83
102
|
// ── LC-49/LC-50 row keyboard contract ───────────────────────────────
|
|
84
103
|
// Local mirror of the table package's `isInteractiveInnerTarget`
|
|
85
104
|
// (public/table/src/utils/rowPress.ts — internal util, not on the
|
|
@@ -291,8 +310,10 @@ export function ReportGrid({
|
|
|
291
310
|
const compact = useLayoutSizeClass() === "compact";
|
|
292
311
|
const [viewportWidth, setViewportWidth] = useState(0);
|
|
293
312
|
const titleFieldname = titleField ?? columnsIn[0]?.fieldname;
|
|
294
|
-
const columns = compact ? fitColumns(columnsIn, rows, titleFieldname, viewportWidth) : columnsIn;
|
|
295
313
|
const rowNumberWidth = compact ? 0 : ROW_NUMBER_WIDTH;
|
|
314
|
+
const columns = compact
|
|
315
|
+
? fitColumns(columnsIn, rows, titleFieldname, viewportWidth)
|
|
316
|
+
: stretchColumns(columnsIn, rowNumberWidth, viewportWidth);
|
|
296
317
|
|
|
297
318
|
const handleSortPress = useCallback(
|
|
298
319
|
(fieldname: string) => {
|
|
@@ -105,8 +105,7 @@ describe("ReportToolbar actions are icons, delete is direct (LC-260, LC-261, LC-
|
|
|
105
105
|
const result = renderToolbar({ onClearColumnFilters: vi.fn(), columnFilterCount: 2 });
|
|
106
106
|
expect(result.getButton("Export CSV")?.textContent?.trim()).toBe("");
|
|
107
107
|
expect(result.getButton("Save report")?.textContent?.trim()).toBe("");
|
|
108
|
-
|
|
109
|
-
expect(columnsTrigger?.textContent).toContain("2/2");
|
|
108
|
+
expect(result.getButton("Columns, 2 of 2")?.textContent?.trim()).toBe("");
|
|
110
109
|
expect(document.body.textContent).not.toContain("·");
|
|
111
110
|
});
|
|
112
111
|
|
|
@@ -130,3 +129,34 @@ describe("ReportToolbar actions are icons, delete is direct (LC-260, LC-261, LC-
|
|
|
130
129
|
expect(onDeleteReport).toHaveBeenCalledWith("RPT-1");
|
|
131
130
|
});
|
|
132
131
|
});
|
|
132
|
+
|
|
133
|
+
describe("ReportToolbar fits a phone row: group-by and the report picker are glyphs (FZ-8907, LC-260)", () => {
|
|
134
|
+
const savedReports = [{ name: "RPT-1", reportName: "Open moves" }];
|
|
135
|
+
|
|
136
|
+
it("draws group-by and the report picker as glyphs named in their labels", () => {
|
|
137
|
+
const result = renderToolbar({ savedReports });
|
|
138
|
+
expect(result.getButton("Group by")?.textContent?.trim()).toBe("");
|
|
139
|
+
expect(result.getButton("Select Report")?.textContent?.trim()).toBe("");
|
|
140
|
+
});
|
|
141
|
+
|
|
142
|
+
it("names the active grouping and report in the label, never as words in the row", () => {
|
|
143
|
+
const result = renderToolbar({ groupBy: "status", savedReports, currentReport: "RPT-1" });
|
|
144
|
+
expect(result.getButton("Group by: Status")?.textContent?.trim()).toBe("");
|
|
145
|
+
expect(result.getButton("Report: Open moves")?.textContent?.trim()).toBe("");
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
it("carries no word in the row", () => {
|
|
149
|
+
const result = renderToolbar({ groupBy: "status", savedReports, currentReport: "RPT-1" });
|
|
150
|
+
const toolbar = result.container.querySelector('[aria-label="Report"]') ?? result.container;
|
|
151
|
+
expect(toolbar.textContent?.replace(/\s+/g, "")).toBe("");
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
it("draws every trigger as the same glyph, the column picker too", () => {
|
|
155
|
+
const result = renderToolbar({ savedReports });
|
|
156
|
+
const kinds = ["Columns, 2 of 2", "Group by", "Select Report"].map((label) =>
|
|
157
|
+
result.getButton(label)?.getAttribute("data-mp-icon-button"),
|
|
158
|
+
);
|
|
159
|
+
expect(kinds[0]).toBeTruthy();
|
|
160
|
+
expect(new Set(kinds).size).toBe(1);
|
|
161
|
+
});
|
|
162
|
+
});
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// The report view's ONE control row (audit: the old surface stacked three
|
|
2
2
|
// toolbar bands with the column count shown twice), on the MPO Toolbar
|
|
3
|
-
// (LC-175). Start
|
|
4
|
-
//
|
|
3
|
+
// (LC-175). Start: the column picker, group-by and the saved-report
|
|
4
|
+
// selector as glyphs of one size and ink (LC-260, FZ-8907), save
|
|
5
|
+
// affordances, then the filter chips (?f= base
|
|
5
6
|
// filters + column-filter summary). End (pinned): Export. Page size lives in
|
|
6
7
|
// the footer pager (list-screen parity), not here.
|
|
7
8
|
import {
|
|
@@ -108,18 +109,14 @@ export function ReportViewToolbar({
|
|
|
108
109
|
{/* Column add/remove picker (persisted per doctype) */}
|
|
109
110
|
<DropdownMenu>
|
|
110
111
|
<DropdownMenu.Trigger asChild>
|
|
111
|
-
<
|
|
112
|
-
size="$3"
|
|
113
|
-
chromeless
|
|
112
|
+
<IconButton
|
|
114
113
|
icon={ColumnsIcon}
|
|
115
114
|
aria-label={t("report.columns", {
|
|
116
115
|
defaultValue: "Columns, {{enabled}} of {{total}}",
|
|
117
116
|
enabled: selected.length,
|
|
118
117
|
total: columns.length,
|
|
119
118
|
})}
|
|
120
|
-
|
|
121
|
-
{`${selected.length}/${columns.length}`}
|
|
122
|
-
</Button>
|
|
119
|
+
/>
|
|
123
120
|
</DropdownMenu.Trigger>
|
|
124
121
|
<DropdownMenu.Content maxHeight={overlayListMaxHeight}>
|
|
125
122
|
<DropdownMenu.Label>{t("report.pickColumns", "Report columns")}</DropdownMenu.Label>
|
|
@@ -152,14 +149,18 @@ export function ReportViewToolbar({
|
|
|
152
149
|
{/* Group-by (rendered as in-grid group header rows) */}
|
|
153
150
|
<DropdownMenu>
|
|
154
151
|
<DropdownMenu.Trigger asChild>
|
|
155
|
-
<
|
|
156
|
-
{
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
152
|
+
<IconButton
|
|
153
|
+
icon={RowsIcon}
|
|
154
|
+
selected={Boolean(groupByColumn)}
|
|
155
|
+
aria-label={
|
|
156
|
+
groupByColumn
|
|
157
|
+
? t("report.groupByActive", {
|
|
158
|
+
defaultValue: "Group by: {{field}}",
|
|
159
|
+
field: groupByColumn.label,
|
|
160
|
+
})
|
|
161
|
+
: t("report.groupBy", "Group by")
|
|
162
|
+
}
|
|
163
|
+
/>
|
|
163
164
|
</DropdownMenu.Trigger>
|
|
164
165
|
<DropdownMenu.Content maxHeight={overlayListMaxHeight}>
|
|
165
166
|
<DropdownMenu.CheckboxItem
|
|
@@ -187,14 +188,18 @@ export function ReportViewToolbar({
|
|
|
187
188
|
{(onSaveReport || savedReports.length > 0) && (
|
|
188
189
|
<DropdownMenu>
|
|
189
190
|
<DropdownMenu.Trigger asChild>
|
|
190
|
-
<
|
|
191
|
-
{
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
191
|
+
<IconButton
|
|
192
|
+
icon={StackIcon}
|
|
193
|
+
selected={Boolean(currentSummary)}
|
|
194
|
+
aria-label={
|
|
195
|
+
currentSummary
|
|
196
|
+
? t("report.savedReportActive", {
|
|
197
|
+
defaultValue: "Report: {{name}}",
|
|
198
|
+
name: currentSummary.reportName,
|
|
199
|
+
})
|
|
200
|
+
: t("report.savedReport", "Select Report")
|
|
201
|
+
}
|
|
202
|
+
/>
|
|
198
203
|
</DropdownMenu.Trigger>
|
|
199
204
|
<DropdownMenu.Content maxHeight={overlayListMaxHeight}>
|
|
200
205
|
<DropdownMenu.CheckboxItem
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrappeReportBuilder.d.ts","sourceRoot":"","sources":["../src/FrappeReportBuilder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,+BAA+B,CAAC;AAYvC,OAAc,EAA6C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA4B3C,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAE7C,MAAM,WAAW,wBAAyB,SAAQ,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;IAC7E,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,EAAE,CAAC;IAClD;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,qFAAqF;IACrF,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;OAGG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;IACtD,oFAAoF;IACpF,cAAc,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IACxC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,yEAAyE;IACzE,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnE,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC;IACrD,4CAA4C;IAC5C,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,oDAAoD;IACpD,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAsHD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CAMlE;
|
|
1
|
+
{"version":3,"file":"FrappeReportBuilder.d.ts","sourceRoot":"","sources":["../src/FrappeReportBuilder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,+BAA+B,CAAC;AAYvC,OAAc,EAA6C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA4B3C,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAE7C,MAAM,WAAW,wBAAyB,SAAQ,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;IAC7E,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,EAAE,CAAC;IAClD;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,qFAAqF;IACrF,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;OAGG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;IACtD,oFAAoF;IACpF,cAAc,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IACxC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,yEAAyE;IACzE,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnE,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC;IACrD,4CAA4C;IAC5C,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,oDAAoD;IACpD,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAsHD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CAMlE;AAkpBD,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { type ReportColumnDef, type ReportGridRow, type ReportSortState, type ReportTotalsCell } from "./reportViewModel";
|
|
2
|
+
/**
|
|
3
|
+
* A wide report fills its viewport: spare width goes to every column in
|
|
4
|
+
* proportion, so the grid's right edge meets the toolbar's (FZ-8907).
|
|
5
|
+
*/
|
|
6
|
+
export declare function stretchColumns(columns: readonly ReportColumnDef[], fixedWidth: number, viewportWidth: number): ReportColumnDef[];
|
|
2
7
|
export interface ReportGridProps {
|
|
3
8
|
columns: readonly ReportColumnDef[];
|
|
4
9
|
rows: readonly ReportGridRow[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReportGrid.d.ts","sourceRoot":"","sources":["../../src/report/ReportGrid.tsx"],"names":[],"mappings":"AAmCA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,aAAa,EAElB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ReportGrid.d.ts","sourceRoot":"","sources":["../../src/report/ReportGrid.tsx"],"names":[],"mappings":"AAmCA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,aAAa,EAElB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,mBAAmB,CAAC;AAwC3B;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,SAAS,eAAe,EAAE,EACnC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,GACpB,eAAe,EAAE,CASnB;AA8CD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,SAAS,eAAe,EAAE,CAAC;IACpC,IAAI,EAAE,SAAS,aAAa,EAAE,CAAC;IAC/B,IAAI,EAAE,eAAe,CAAC;IACtB,YAAY,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IAC9C,+DAA+D;IAC/D,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE,oEAAoE;IACpE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,uEAAuE;IACvE,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACpC,yDAAyD;IACzD,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACpC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAO1F;AAwGD,wBAAgB,UAAU,CAAC,EACzB,OAAO,EAAE,SAAS,EAClB,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,UAAU,EACV,MAAM,EACN,aAAa,EACb,UAAU,EACV,UAAU,EACV,OAAO,GACR,EAAE,eAAe,2CAqZjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReportViewToolbar.d.ts","sourceRoot":"","sources":["../../src/report/ReportViewToolbar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ReportViewToolbar.d.ts","sourceRoot":"","sources":["../../src/report/ReportViewToolbar.tsx"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,MAAM,WAAW,sBAAsB;IACrC,qDAAqD;IACrD,OAAO,EAAE,SAAS,eAAe,EAAE,CAAC;IACpC,sDAAsD;IACtD,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACpD,oEAAoE;IACpE,WAAW,EAAE,aAAa,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,6DAA6D;IAC7D,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5C,uDAAuD;IACvD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,2EAA2E;IAC3E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,0DAA0D;IAC1D,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,QAAQ,EACR,cAAc,EACd,cAAc,EACd,OAAO,EACP,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,cAAc,GACf,EAAE,sBAAsB,2CA+RxB"}
|