@cwellt_software/cwellt-reactjs-lib 1.6.3 → 1.7.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/index.cjs.js +2479 -146
- package/dist/index.css +1 -1
- package/dist/index.d.ts +679 -2
- package/dist/index.es.js +2465 -147
- package/dist/src/components/custom/report-viewer/CwReportGauge.d.ts +19 -0
- package/dist/src/components/custom/report-viewer/CwReportGauge.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/CwReportLineChart.d.ts +21 -0
- package/dist/src/components/custom/report-viewer/CwReportLineChart.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/CwReportPage.d.ts +36 -0
- package/dist/src/components/custom/report-viewer/CwReportPage.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/CwReportParameterForm.d.ts +26 -0
- package/dist/src/components/custom/report-viewer/CwReportParameterForm.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/CwReportPieChart.d.ts +13 -0
- package/dist/src/components/custom/report-viewer/CwReportPieChart.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/CwReportToolbar.d.ts +40 -0
- package/dist/src/components/custom/report-viewer/CwReportToolbar.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/CwReportViewer.d.ts +50 -0
- package/dist/src/components/custom/report-viewer/CwReportViewer.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/ReportItem.d.ts +21 -0
- package/dist/src/components/custom/report-viewer/ReportItem.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/ReportTextbox.d.ts +10 -0
- package/dist/src/components/custom/report-viewer/ReportTextbox.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlChartMarkers.d.ts +26 -0
- package/dist/src/components/custom/report-viewer/logic/rdlChartMarkers.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlChartScale.d.ts +75 -0
- package/dist/src/components/custom/report-viewer/logic/rdlChartScale.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlFind.d.ts +38 -0
- package/dist/src/components/custom/report-viewer/logic/rdlFind.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlGauge.d.ts +40 -0
- package/dist/src/components/custom/report-viewer/logic/rdlGauge.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlListMarkers.d.ts +12 -0
- package/dist/src/components/custom/report-viewer/logic/rdlListMarkers.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlNumberFormat.d.ts +8 -0
- package/dist/src/components/custom/report-viewer/logic/rdlNumberFormat.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlPageGeometry.d.ts +38 -0
- package/dist/src/components/custom/report-viewer/logic/rdlPageGeometry.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlParameterValues.d.ts +42 -0
- package/dist/src/components/custom/report-viewer/logic/rdlParameterValues.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlStyle.d.ts +62 -0
- package/dist/src/components/custom/report-viewer/logic/rdlStyle.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlTableLayout.d.ts +33 -0
- package/dist/src/components/custom/report-viewer/logic/rdlTableLayout.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlToggles.d.ts +20 -0
- package/dist/src/components/custom/report-viewer/logic/rdlToggles.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/rdlUnits.d.ts +9 -0
- package/dist/src/components/custom/report-viewer/logic/rdlUnits.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/reportOutputGuard.d.ts +20 -0
- package/dist/src/components/custom/report-viewer/logic/reportOutputGuard.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/logic/reportViewerLayout.d.ts +17 -0
- package/dist/src/components/custom/report-viewer/logic/reportViewerLayout.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/rdlTypes.d.ts +333 -0
- package/dist/src/components/custom/report-viewer/rdlTypes.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/reportChartShared.d.ts +53 -0
- package/dist/src/components/custom/report-viewer/reportChartShared.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/reportRenderContext.d.ts +25 -0
- package/dist/src/components/custom/report-viewer/reportRenderContext.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/useReportParameterForm.d.ts +30 -0
- package/dist/src/components/custom/report-viewer/useReportParameterForm.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/useReportViewerState.d.ts +74 -0
- package/dist/src/components/custom/report-viewer/useReportViewerState.d.ts.map +1 -0
- package/dist/src/components/custom/report-viewer/useSidebarResize.d.ts +22 -0
- package/dist/src/components/custom/report-viewer/useSidebarResize.d.ts.map +1 -0
- package/dist/src/components/display/data/tooltip_manager/CwTooltipManager.d.ts +1 -1
- package/dist/src/components/display/data/tooltip_manager/CwTooltipManager.d.ts.map +1 -1
- package/dist/src/index.d.ts +15 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/playground/PlaygroundApp.d.ts.map +1 -1
- package/dist/src/playground/pages/ReportViewerPage.d.ts +8 -0
- package/dist/src/playground/pages/ReportViewerPage.d.ts.map +1 -0
- package/dist/src/playground/pages/reportViewerFakeData.d.ts +13 -0
- package/dist/src/playground/pages/reportViewerFakeData.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlChartMarkers.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlChartMarkers.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlChartScale.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlChartScale.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlFind.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlFind.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlGauge.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlGauge.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlNumberFormat.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlNumberFormat.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlParameterValues.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlParameterValues.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlTableLayout.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlTableLayout.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlText.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlText.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlToggles.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlToggles.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/rdlUnits.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/rdlUnits.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/reportOutputGuard.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/reportOutputGuard.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/reportViewerLayout.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/reportViewerLayout.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/useReportParameterForm.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/useReportParameterForm.test.d.ts.map +1 -0
- package/dist/test/components/custom/report-viewer/useReportViewerState.test.d.ts +2 -0
- package/dist/test/components/custom/report-viewer/useReportViewerState.test.d.ts.map +1 -0
- package/dist/test/helpers/renderHookHeadless.d.ts +8 -0
- package/dist/test/helpers/renderHookHeadless.d.ts.map +1 -0
- package/package.json +89 -89
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { RdlRenderGaugePanel } from "./rdlTypes";
|
|
2
|
+
export interface CwReportGaugeProps {
|
|
3
|
+
/** The gauge panel as the render tree delivers it. */
|
|
4
|
+
panel: RdlRenderGaugePanel;
|
|
5
|
+
/** Drawing size in CSS pixels. */
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
/** Zoom factor of the page (scales the gauge text). @default 1 */
|
|
9
|
+
zoom?: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A gauge panel: its gauges side by side (RadialGauge = 270 degree dial with colored ranges and a
|
|
13
|
+
* needle or bar per pointer, LinearGauge = horizontal track with range bands, a bar or marker per
|
|
14
|
+
* pointer and the major ticks), the state indicators at their percent boxes and the panel labels
|
|
15
|
+
* below. The pointer value is not printed; only the report's own labels are. Only the first scale of
|
|
16
|
+
* a gauge is drawn.
|
|
17
|
+
*/
|
|
18
|
+
export declare function CwReportGauge({ panel, width, height, zoom }: CwReportGaugeProps): import("react").JSX.Element;
|
|
19
|
+
//# sourceMappingURL=CwReportGauge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CwReportGauge.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/CwReportGauge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAkB,mBAAmB,EAAmE,MAAM,YAAY,CAAC;AAGvI,MAAM,WAAW,kBAAkB;IAClC,sDAAsD;IACtD,KAAK,EAAE,mBAAmB,CAAC;IAC3B,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAgLD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAQ,EAAE,EAAE,kBAAkB,+BAkCnF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { RdlRenderChart } from "./rdlTypes";
|
|
2
|
+
export interface CwReportLineChartProps {
|
|
3
|
+
/** The chart as the render tree delivers it. */
|
|
4
|
+
chart: RdlRenderChart;
|
|
5
|
+
/** Drawing size in CSS pixels. */
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
/** Zoom factor of the page (scales the chart text). @default 1 */
|
|
9
|
+
zoom?: number;
|
|
10
|
+
/** Culture of the report (`RdlRenderResult.Culture`) for the value axis format. */
|
|
11
|
+
culture?: string | null;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A report chart over categories: Line (Smooth / Stepped), Area, Column and Scatter series share one
|
|
15
|
+
* value axis; a chart made only of Bar series is drawn horizontally. Scatter series draw only their
|
|
16
|
+
* markers, line series draw markers too when the report sets a marker type. Null values leave gaps.
|
|
17
|
+
* The legend sits where the RDL legend Position says. Own SVG, no chart library; hover shows
|
|
18
|
+
* category, series and value.
|
|
19
|
+
*/
|
|
20
|
+
export declare function CwReportLineChart({ chart, width, height, zoom, culture }: CwReportLineChartProps): import("react").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=CwReportLineChart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CwReportLineChart.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/CwReportLineChart.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,cAAc,EAAwB,MAAM,YAAY,CAAC;AAcvE,MAAM,WAAW,sBAAsB;IACtC,gDAAgD;IAChD,KAAK,EAAE,cAAc,CAAC;IACtB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAqQD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAQ,EAAE,OAAO,EAAE,EAAE,sBAAsB,+BAiGpG"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type RdlFindMatch } from "./logic/rdlFind";
|
|
2
|
+
import { type RdlPageMargins } from "./logic/rdlPageGeometry";
|
|
3
|
+
import type { RdlFlippedToggles } from "./logic/rdlToggles";
|
|
4
|
+
import type { RdlRenderPage } from "./rdlTypes";
|
|
5
|
+
export interface CwReportPageProps {
|
|
6
|
+
/** The page of the render result to draw. */
|
|
7
|
+
page: RdlRenderPage;
|
|
8
|
+
/** Width of the report body in points (`RdlRenderResult.BodyWidth`). */
|
|
9
|
+
bodyWidth: number;
|
|
10
|
+
/** Zoom factor, 1 = 100%. @default 1 */
|
|
11
|
+
zoom?: number;
|
|
12
|
+
/** Culture of the render (`RdlRenderResult.Culture`), used for chart value axis formats. */
|
|
13
|
+
culture?: string | null;
|
|
14
|
+
/** Margins around the body on the sheet, in points. @default 18pt on every side */
|
|
15
|
+
margins?: RdlPageMargins;
|
|
16
|
+
/** Drilldown toggles the user flipped in this render. @default none */
|
|
17
|
+
flippedToggles?: RdlFlippedToggles;
|
|
18
|
+
/** A drilldown +/- icon was clicked. */
|
|
19
|
+
onToggle?: (toggleId: string) => void;
|
|
20
|
+
/** An interactive sort indicator was clicked. */
|
|
21
|
+
onSort?: (sortId: string) => void;
|
|
22
|
+
/** URL of an embedded / database image (`RdlRenderImage.ImageId`). */
|
|
23
|
+
getImageUrl?: (imageId: string) => string;
|
|
24
|
+
/** Find matches on this page to highlight (from `findInPage`). */
|
|
25
|
+
findMatches?: readonly RdlFindMatch[];
|
|
26
|
+
/** Index of the current match in `findMatches`; it is highlighted strongly and scrolled into view. @default -1 */
|
|
27
|
+
activeMatchIndex?: number;
|
|
28
|
+
className?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* One page of a rendered RDL report drawn as a sheet of paper: page header, body and page footer,
|
|
32
|
+
* every item absolutely positioned in points scaled by the zoom. Presentational: toggle state,
|
|
33
|
+
* sorting, images and find matches come from the host.
|
|
34
|
+
*/
|
|
35
|
+
export declare function CwReportPage({ page, bodyWidth, zoom, culture, margins, flippedToggles, onToggle, onSort, getImageUrl, findMatches, activeMatchIndex, className }: CwReportPageProps): import("react").JSX.Element;
|
|
36
|
+
//# sourceMappingURL=CwReportPage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CwReportPage.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/CwReportPage.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAA2C,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEvG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,aAAa,EAAwB,MAAM,YAAY,CAAC;AAKtE,MAAM,WAAW,iBAAiB;IACjC,6CAA6C;IAC7C,IAAI,EAAE,aAAa,CAAC;IACpB,wEAAwE;IACxE,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4FAA4F;IAC5F,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mFAAmF;IACnF,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,uEAAuE;IACvE,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,wCAAwC;IACxC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,iDAAiD;IACjD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,sEAAsE;IACtE,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1C,kEAAkE;IAClE,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACtC,kHAAkH;IAClH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AA4BD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,IAAQ,EACR,OAAO,EACP,OAAyB,EACzB,cAAyB,EACzB,QAAQ,EACR,MAAM,EACN,WAAW,EACX,WAAwB,EACxB,gBAAqB,EACrB,SAAS,EACT,EAAE,iBAAiB,+BA0CnB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ReportParameterFormController } from "./useReportParameterForm";
|
|
2
|
+
export interface CwReportParameterFormProps {
|
|
3
|
+
/**
|
|
4
|
+
* The editor state from `useReportParameterForm(form, { onResolve, onRender })`, called by the host:
|
|
5
|
+
* it carries the parameter form from the API (null while it loads for the first time).
|
|
6
|
+
*/
|
|
7
|
+
controller: ReportParameterFormController;
|
|
8
|
+
/** The form is being loaded or re-resolved. */
|
|
9
|
+
loading?: boolean;
|
|
10
|
+
/** Disables "View report" (e.g. while a render runs). */
|
|
11
|
+
rendering?: boolean;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The report parameter form in the server's order: dropdowns (multi-value as tag selector with
|
|
15
|
+
* select-all), date-time pickers, True/False, numbers and text. There is no NULL control: an empty
|
|
16
|
+
* field of a nullable parameter is sent as NULL (see rdlParameterValues), as in the old WinOps
|
|
17
|
+
* report page. Hidden parameters are not drawn; server-filled ones are read-only. Presentational:
|
|
18
|
+
* the host owns the editor state (`useReportParameterForm`); a change to a parameter others depend
|
|
19
|
+
* on calls its `onResolve`, "View report" its `onRender` with the values as invariant text
|
|
20
|
+
* (`toRdlParameterValues`).
|
|
21
|
+
*
|
|
22
|
+
* The form fills its parent's height when the parent gives it one: the fields scroll and the
|
|
23
|
+
* "View report" footer stays pinned at the bottom. In an unbounded parent it simply grows.
|
|
24
|
+
*/
|
|
25
|
+
export declare function CwReportParameterForm({ controller, loading, rendering }: CwReportParameterFormProps): import("react").JSX.Element;
|
|
26
|
+
//# sourceMappingURL=CwReportParameterForm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CwReportParameterForm.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/CwReportParameterForm.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAG9E,MAAM,WAAW,0BAA0B;IAC1C;;;OAGG;IACH,UAAU,EAAE,6BAA6B,CAAC;IAC1C,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AA2JD;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,UAAU,EAAE,OAAe,EAAE,SAAiB,EAAE,EAAE,0BAA0B,+BAoDnH"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { RdlRenderChart } from "./rdlTypes";
|
|
2
|
+
export interface CwReportPieChartProps {
|
|
3
|
+
/** The chart as the render tree delivers it; its first series is drawn over the categories. */
|
|
4
|
+
chart: RdlRenderChart;
|
|
5
|
+
/** Drawing size in CSS pixels. */
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
/** Zoom factor of the page (scales the chart text). @default 1 */
|
|
9
|
+
zoom?: number;
|
|
10
|
+
}
|
|
11
|
+
/** A pie of the chart's first series over its categories (RDL series Type "Shape"). Own SVG. */
|
|
12
|
+
export declare function CwReportPieChart({ chart, width, height, zoom }: CwReportPieChartProps): import("react").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=CwReportPieChart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CwReportPieChart.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/CwReportPieChart.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAajD,MAAM,WAAW,qBAAqB;IACrC,+FAA+F;IAC/F,KAAK,EAAE,cAAc,CAAC;IACtB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,gGAAgG;AAChG,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAQ,EAAE,EAAE,qBAAqB,+BAsDzF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type CwReportZoom } from "./logic/rdlPageGeometry";
|
|
2
|
+
import type { RdlExportFormat } from "./rdlTypes";
|
|
3
|
+
export interface CwReportToolbarProps {
|
|
4
|
+
/** Current page, 1-based. */
|
|
5
|
+
pageNumber: number;
|
|
6
|
+
pageCount: number;
|
|
7
|
+
onPage: (pageNumber: number) => void;
|
|
8
|
+
/** Re-runs the report with the current parameters. Hidden when not given. */
|
|
9
|
+
onRefresh?: () => void;
|
|
10
|
+
/** Back to where the viewer was opened from. Hidden when not given. */
|
|
11
|
+
onBack?: () => void;
|
|
12
|
+
zoom: CwReportZoom;
|
|
13
|
+
onZoomChange: (zoom: CwReportZoom) => void;
|
|
14
|
+
/** Find text of the current page. */
|
|
15
|
+
findText: string;
|
|
16
|
+
onFindTextChange: (text: string) => void;
|
|
17
|
+
/** Goes to the next match (cycling). */
|
|
18
|
+
onFindNext: () => void;
|
|
19
|
+
findMatchCount: number;
|
|
20
|
+
/** Index of the current match, -1 for none. */
|
|
21
|
+
findMatchIndex: number;
|
|
22
|
+
onExport: (format: RdlExportFormat) => void;
|
|
23
|
+
onPrint: () => void;
|
|
24
|
+
/** Render warnings; nothing is shown while the list is empty. */
|
|
25
|
+
warnings?: readonly string[];
|
|
26
|
+
/** Shows the parameter panel toggle when given. */
|
|
27
|
+
onToggleParameters?: () => void;
|
|
28
|
+
parametersVisible?: boolean;
|
|
29
|
+
/** No report rendered yet: navigation, find, export and print are disabled. */
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
/** Name of the report, shown right after find (shortened with "...", full name as tooltip). */
|
|
32
|
+
reportName?: string | null;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The report viewer toolbar, like the old ReportViewer: page navigation, refresh, back, zoom,
|
|
36
|
+
* find on the current page, export (PDF / Excel / Word) and print. Warnings stay invisible until
|
|
37
|
+
* there are some (Dark Cockpit). Presentational: every action is a callback.
|
|
38
|
+
*/
|
|
39
|
+
export declare function CwReportToolbar({ pageNumber, pageCount, onPage, onRefresh, onBack, zoom, onZoomChange, findText, onFindTextChange, onFindNext, findMatchCount, findMatchIndex, onExport, onPrint, warnings, onToggleParameters, parametersVisible, disabled, reportName }: CwReportToolbarProps): import("react").JSX.Element;
|
|
40
|
+
//# sourceMappingURL=CwReportToolbar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CwReportToolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/CwReportToolbar.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,MAAM,WAAW,oBAAoB;IACpC,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,wCAAwC;IACxC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC5C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,mDAAmD;IACnD,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+FAA+F;IAC/F,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAqDD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAC/B,UAAU,EACV,SAAS,EACT,MAAM,EACN,SAAS,EACT,MAAM,EACN,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,cAAc,EACd,QAAQ,EACR,OAAO,EACP,QAAa,EACb,kBAAkB,EAClB,iBAAwB,EACxB,QAAgB,EAChB,UAAU,EACV,EAAE,oBAAoB,+BA6GtB"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { RdlReportDefinition } from "./rdlTypes";
|
|
2
|
+
import type { ReportParameterFormController } from "./useReportParameterForm";
|
|
3
|
+
import type { ReportViewerState } from "./useReportViewerState";
|
|
4
|
+
export interface CwReportViewerProps {
|
|
5
|
+
/** Report definition (name); optional. */
|
|
6
|
+
definition?: RdlReportDefinition | null;
|
|
7
|
+
/**
|
|
8
|
+
* The viewer state from `useReportViewerState(result, { onPage, onView, onExport, onPrint })`,
|
|
9
|
+
* called by the host: the current render (null before the first one), zoom, drilldown, find, the
|
|
10
|
+
* parameter panel and the export / print confirmation.
|
|
11
|
+
*/
|
|
12
|
+
state: ReportViewerState;
|
|
13
|
+
/**
|
|
14
|
+
* The parameter form from `useReportParameterForm(parameters, { onResolve, onRender })`, called by
|
|
15
|
+
* the host. Drawn in the sidebar; without a sidebar its `submit` runs "View report" on the canvas.
|
|
16
|
+
*/
|
|
17
|
+
parameterForm: ReportParameterFormController;
|
|
18
|
+
/** The parameter form is loading or being re-resolved. */
|
|
19
|
+
loadingParameters?: boolean;
|
|
20
|
+
/** A render, page or sort request is running. */
|
|
21
|
+
loadingRender?: boolean;
|
|
22
|
+
/** A failed request, shown in place of the page. */
|
|
23
|
+
error?: string | null;
|
|
24
|
+
/** An interactive sort was clicked. */
|
|
25
|
+
onSort: (sortId: string) => void;
|
|
26
|
+
onRefresh: () => void;
|
|
27
|
+
/** Shows a back button when given. */
|
|
28
|
+
onBack?: () => void;
|
|
29
|
+
/** URL of an embedded / database image of the current render. */
|
|
30
|
+
getImageUrl: (imageId: string) => string;
|
|
31
|
+
/** Initial width of the parameter sidebar in pixels. */
|
|
32
|
+
sidebarWidth?: number;
|
|
33
|
+
/** Minimum width of the parameter sidebar in pixels. */
|
|
34
|
+
minSidebarWidth?: number;
|
|
35
|
+
/** Maximum width of the parameter sidebar in pixels. */
|
|
36
|
+
maxSidebarWidth?: number;
|
|
37
|
+
/** Whether the parameter sidebar can be resized (drag or arrow keys on its edge). */
|
|
38
|
+
resizable?: boolean;
|
|
39
|
+
className?: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* The RDL report viewer: a resizable, collapsible parameter sidebar on the left, the toolbar and
|
|
43
|
+
* the page on a neutral canvas on the right, like the old ReportViewer. The sidebar only exists
|
|
44
|
+
* when the user has a parameter to fill in. Presentational: it fetches nothing and owns no report
|
|
45
|
+
* state. The host calls `useReportViewerState` and `useReportParameterForm` and passes their results
|
|
46
|
+
* as `state` and `parameterForm`; every request goes out through the callbacks given to those hooks
|
|
47
|
+
* (or `onSort` / `onRefresh` / `onBack`) and comes back as their arguments.
|
|
48
|
+
*/
|
|
49
|
+
export declare function CwReportViewer({ definition, state, parameterForm, loadingParameters, loadingRender, error, onSort, onRefresh, onBack, getImageUrl, sidebarWidth, minSidebarWidth, maxSidebarWidth, resizable, className }: CwReportViewerProps): import("react").JSX.Element;
|
|
50
|
+
//# sourceMappingURL=CwReportViewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CwReportViewer.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/CwReportViewer.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,MAAM,WAAW,mBAAmB;IACnC,0CAA0C;IAC1C,UAAU,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACxC;;;;OAIG;IACH,KAAK,EAAE,iBAAiB,CAAC;IACzB;;;OAGG;IACH,aAAa,EAAE,6BAA6B,CAAC;IAC7C,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iDAAiD;IACjD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,uCAAuC;IACvC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,iEAAiE;IACjE,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IACzC,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAmBD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,EAC9B,UAAU,EACV,KAAK,EACL,aAAa,EACb,iBAAyB,EACzB,aAAqB,EACrB,KAAK,EACL,MAAM,EACN,SAAS,EACT,MAAM,EACN,WAAW,EACX,YAAkB,EAClB,eAAqB,EACrB,eAAqB,EACrB,SAAgB,EAChB,SAAS,EACT,EAAE,mBAAmB,+BAoMrB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { RdlRenderItem } from "./rdlTypes";
|
|
2
|
+
/** Position and size of an item in points, relative to its container. */
|
|
3
|
+
export interface RdlFrame {
|
|
4
|
+
top: number;
|
|
5
|
+
left: number;
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
}
|
|
9
|
+
export interface ReportItemProps {
|
|
10
|
+
item: RdlRenderItem;
|
|
11
|
+
itemKey: string;
|
|
12
|
+
/** Overrides the item's own geometry (a table cell fills its cell). */
|
|
13
|
+
frame?: RdlFrame;
|
|
14
|
+
}
|
|
15
|
+
/** One render-tree item, absolutely positioned in its container; nothing when its toggles hide it. */
|
|
16
|
+
export declare function ReportItem({ item, itemKey, frame }: ReportItemProps): import("react").JSX.Element | null;
|
|
17
|
+
export declare function ReportItems({ items, parentKey }: {
|
|
18
|
+
items: readonly RdlRenderItem[];
|
|
19
|
+
parentKey: string;
|
|
20
|
+
}): import("react").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=ReportItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReportItem.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/ReportItem.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAIX,aAAa,EAKb,MAAM,YAAY,CAAC;AAKpB,yEAAyE;AACzE,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CACf;AAwJD,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,KAAK,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,sGAAsG;AACtG,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,eAAe,sCAgBnE;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,aAAa,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,+BAQvG"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type CSSProperties } from "react";
|
|
2
|
+
import type { RdlRenderTextbox } from "./rdlTypes";
|
|
3
|
+
export interface ReportTextboxProps {
|
|
4
|
+
textbox: RdlRenderTextbox;
|
|
5
|
+
itemKey: string;
|
|
6
|
+
frameStyle: CSSProperties;
|
|
7
|
+
}
|
|
8
|
+
/** A textbox: paragraphs as blocks, runs as inline spans, plain text only (never HTML). */
|
|
9
|
+
export declare function ReportTextbox({ textbox, itemKey, frameStyle }: ReportTextboxProps): import("react").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=ReportTextbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReportTextbox.d.ts","sourceRoot":"","sources":["../../../../../src/components/custom/report-viewer/ReportTextbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,OAAO,CAAC;AAO3D,OAAO,KAAK,EAAgC,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAkEjF,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,aAAa,CAAC;CAC1B;AAED,2FAA2F;AAC3F,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,kBAAkB,+BAqFjF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export type RdlMarkerShape = "square" | "circle" | "diamond" | "triangle" | "cross" | "star4" | "star5" | "star6" | "star10";
|
|
2
|
+
/** The marker size when the series sets none, as the server uses it. */
|
|
3
|
+
export declare const RDL_DEFAULT_MARKER_SIZE_PT = 5;
|
|
4
|
+
/**
|
|
5
|
+
* The marker a series draws, or null for none. The server resolves Auto to a shape, so a missing type
|
|
6
|
+
* or None means no marker. Should an Auto (or an unknown name) still arrive, a scatter series cycles
|
|
7
|
+
* the shapes per series, so its points stay visible; a line series then draws none.
|
|
8
|
+
*/
|
|
9
|
+
export declare function seriesMarker(markerType: string | null | undefined, scatter: boolean, seriesIndex: number): RdlMarkerShape | null;
|
|
10
|
+
/** The marker size in pixels at a zoom (RDL size, default 5pt), at least 3 px so it stays visible. */
|
|
11
|
+
export declare function markerSizePx(markerSize: string | null | undefined, zoom: number): number;
|
|
12
|
+
/** SVG path of a marker of `size` (its width; an X has arms of that length along its diagonals) centered on (cx, cy); every shape is filled. */
|
|
13
|
+
export declare function markerPath(shape: RdlMarkerShape, cx: number, cy: number, size: number): string;
|
|
14
|
+
export interface RdlLegendPlacement {
|
|
15
|
+
/** The side of the chart the legend sits on. */
|
|
16
|
+
edge: "top" | "bottom" | "left" | "right";
|
|
17
|
+
/** Along that side: left / top = start, center, right / bottom = end. */
|
|
18
|
+
align: "start" | "center" | "end";
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* The RDL ChartLegend Position as an edge and an alignment: the first word is the edge, the second
|
|
22
|
+
* the alignment along it (TopLeft = top edge, left aligned; LeftTop = left edge, top aligned).
|
|
23
|
+
* Missing or unknown = RightCenter, the RDL default.
|
|
24
|
+
*/
|
|
25
|
+
export declare function legendPlacement(position: string | null | undefined): RdlLegendPlacement;
|
|
26
|
+
//# sourceMappingURL=rdlChartMarkers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdlChartMarkers.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/report-viewer/logic/rdlChartMarkers.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;AAiB7H,wEAAwE;AACxE,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAE5C;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAOhI;AAED,sGAAsG;AACtG,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAExF;AAqBD,gJAAgJ;AAChJ,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA0B9F;AAED,MAAM,WAAW,kBAAkB;IAClC,gDAAgD;IAChD,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC1C,yEAAyE;IACzE,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;CAClC;AAaD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,kBAAkB,CASvF"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { RdlRenderChartAxisLabel, RdlRenderChartSeries } from "../rdlTypes";
|
|
2
|
+
/** RDL "BrightPastel" palette, the Report Builder default for new charts. */
|
|
3
|
+
export declare const CHART_COLORS: readonly string[];
|
|
4
|
+
/** The palette for an RDL palette name (any case); a missing or unknown name is "Default", the RDL default. */
|
|
5
|
+
export declare function chartPalette(name: string | null | undefined): readonly string[];
|
|
6
|
+
/** The color of series `index`: its own color, else the palette entry. */
|
|
7
|
+
export declare function seriesColor(series: Pick<RdlRenderChartSeries, "Color">, index: number, palette: readonly string[]): string;
|
|
8
|
+
export interface RdlValueScale {
|
|
9
|
+
min: number;
|
|
10
|
+
max: number;
|
|
11
|
+
/** Grid line values from min to max, evenly spaced. */
|
|
12
|
+
ticks: number[];
|
|
13
|
+
}
|
|
14
|
+
/** The nice step for a value range (> 0): range / 5 rounded to 1, 2, 5 or 10 times its magnitude. */
|
|
15
|
+
export declare function niceAxisStep(range: number): number;
|
|
16
|
+
/**
|
|
17
|
+
* A value axis over the given values, the same rule as the server's PDF: the range always includes
|
|
18
|
+
* 0, nulls are ignored, the step is `niceAxisStep(range)` and the bounds are rounded out to whole
|
|
19
|
+
* steps (data max 113 gives 0..120 in steps of 20). All-null or all-zero data gives 0..1.
|
|
20
|
+
*/
|
|
21
|
+
export declare function computeValueScale(values: readonly (number | null | undefined)[]): RdlValueScale;
|
|
22
|
+
export interface RdlCategoryAxisLabel {
|
|
23
|
+
/** Pixel coordinate along the category axis. */
|
|
24
|
+
at: number;
|
|
25
|
+
text: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The server's category axis labels (`RdlRenderChart.CategoryAxisLabels`) along an axis that starts
|
|
29
|
+
* at `start` with `band` pixels per category: position 0 is the first category's point (the middle
|
|
30
|
+
* of its band), fractions fall between two categories. Labels outside the categories are dropped.
|
|
31
|
+
*/
|
|
32
|
+
export declare function categoryAxisLabels(labels: readonly RdlRenderChartAxisLabel[], categoryCount: number, start: number, band: number): RdlCategoryAxisLabel[];
|
|
33
|
+
export interface RdlAxisLabelPlacement {
|
|
34
|
+
x: number;
|
|
35
|
+
anchor: "start" | "middle" | "end";
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Centers a label of `width` on `center`, moved inside [min, max] when it would cross an end: a
|
|
39
|
+
* category label never runs past the value axis (and its origin label) or the plot's right edge.
|
|
40
|
+
*/
|
|
41
|
+
export declare function placeAxisLabel(center: number, width: number, min: number, max: number): RdlAxisLabelPlacement;
|
|
42
|
+
/** Maps a value of the scale to a pixel coordinate between `from` (scale min) and `to` (scale max). */
|
|
43
|
+
export declare function scaleValue(value: number, scale: Pick<RdlValueScale, "min" | "max">, from: number, to: number): number;
|
|
44
|
+
export interface RdlChartPoint {
|
|
45
|
+
index: number;
|
|
46
|
+
value: number;
|
|
47
|
+
x: number;
|
|
48
|
+
y: number;
|
|
49
|
+
}
|
|
50
|
+
/** Splits a series into runs of consecutive non-null points: a null value leaves a gap in the line. */
|
|
51
|
+
export declare function lineSegments(values: readonly (number | null)[], x: (index: number) => number, y: (value: number) => number): RdlChartPoint[][];
|
|
52
|
+
/** SVG path of one segment: straight, stepped (horizontal then vertical) or smooth (Catmull-Rom as cubic Beziers). */
|
|
53
|
+
export declare function segmentPath(points: readonly RdlChartPoint[], subtype: string | null | undefined): string;
|
|
54
|
+
export interface RdlPieSlice {
|
|
55
|
+
index: number;
|
|
56
|
+
value: number;
|
|
57
|
+
/** Share of the total, 0..1. */
|
|
58
|
+
fraction: number;
|
|
59
|
+
startAngle: number;
|
|
60
|
+
endAngle: number;
|
|
61
|
+
}
|
|
62
|
+
/** Pie slices of positive values (null, zero and negative values get no slice); angles in radians from 12 o'clock, clockwise. */
|
|
63
|
+
export declare function pieSlices(values: readonly (number | null)[]): RdlPieSlice[];
|
|
64
|
+
/** A point on a circle; angle in radians from 12 o'clock, clockwise. */
|
|
65
|
+
export declare function polar(cx: number, cy: number, radius: number, angle: number): {
|
|
66
|
+
x: number;
|
|
67
|
+
y: number;
|
|
68
|
+
};
|
|
69
|
+
/** SVG path of an arc band (or a pie wedge when innerRadius is 0) between two angles. */
|
|
70
|
+
export declare function arcPath(cx: number, cy: number, outerRadius: number, innerRadius: number, start: number, end: number): string;
|
|
71
|
+
/** Clamps a gauge value into the scale; null stays at the minimum. */
|
|
72
|
+
export declare function clampGaugeValue(value: number | null | undefined, minimum: number, maximum: number): number;
|
|
73
|
+
/** Formats an axis or data value compactly: integers without decimals, else up to 2 decimals. */
|
|
74
|
+
export declare function formatChartValue(value: number): string;
|
|
75
|
+
//# sourceMappingURL=rdlChartScale.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdlChartScale.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/report-viewer/logic/rdlChartScale.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { RdlRenderPage } from "../rdlTypes";
|
|
2
|
+
import { type RdlFlippedToggles } from "./rdlToggles";
|
|
3
|
+
/** Key prefixes of the three page sections. */
|
|
4
|
+
export declare const RDL_SECTION_KEYS: {
|
|
5
|
+
readonly header: "h";
|
|
6
|
+
readonly body: "b";
|
|
7
|
+
readonly footer: "f";
|
|
8
|
+
};
|
|
9
|
+
export declare function rdlItemKey(parentKey: string, index: number): string;
|
|
10
|
+
export declare function rdlCellKey(tableKey: string, rowIndex: number, cellIndex: number): string;
|
|
11
|
+
export declare function rdlRunKey(textboxKey: string, paragraphIndex: number, runIndex: number): string;
|
|
12
|
+
export interface RdlTextRun {
|
|
13
|
+
key: string;
|
|
14
|
+
text: string;
|
|
15
|
+
}
|
|
16
|
+
export interface RdlFindMatch {
|
|
17
|
+
/** Key of the run the match is in. */
|
|
18
|
+
key: string;
|
|
19
|
+
start: number;
|
|
20
|
+
length: number;
|
|
21
|
+
}
|
|
22
|
+
/** Every visible text run of a page in document order: header, body, footer. */
|
|
23
|
+
export declare function collectPageText(page: RdlRenderPage, flipped: RdlFlippedToggles): RdlTextRun[];
|
|
24
|
+
/**
|
|
25
|
+
* Case-insensitive, non-overlapping matches of `query` in the runs, in run order, with the casing rules of
|
|
26
|
+
* `locale` (default: the browser's, so "istanbul" finds "İSTANBUL" in Turkish). A match does not span two runs.
|
|
27
|
+
*/
|
|
28
|
+
export declare function findInRuns(runs: readonly RdlTextRun[], query: string, locale?: string): RdlFindMatch[];
|
|
29
|
+
/** Find over the visible text of one page. */
|
|
30
|
+
export declare function findInPage(page: RdlRenderPage, query: string, flipped: RdlFlippedToggles): RdlFindMatch[];
|
|
31
|
+
/**
|
|
32
|
+
* The active match index: -1 without matches; the stored index clamped into the matches when it belongs to the
|
|
33
|
+
* current page and query (a stored -1 from an empty search becomes 0 once a drilldown reveals matches); else 0.
|
|
34
|
+
*/
|
|
35
|
+
export declare function activeMatchIndex(storedIndex: number, storedForCurrentSearch: boolean, count: number): number;
|
|
36
|
+
/** The next match index after `current`, cycling; -1 when there are no matches. */
|
|
37
|
+
export declare function nextMatchIndex(current: number, count: number): number;
|
|
38
|
+
//# sourceMappingURL=rdlFind.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdlFind.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/report-viewer/logic/rdlFind.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,aAAa,EAAoB,MAAM,aAAa,CAAC;AAElF,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAOpE,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB;;;;CAAmD,CAAC;AAEjF,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAExF;AAED,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE9F;AAED,MAAM,WAAW,UAAU;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC5B,sCAAsC;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CACf;AAoCD,gFAAgF;AAChF,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,iBAAiB,GAAG,UAAU,EAAE,CAM7F;AAwBD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAgBtG;AAED,8CAA8C;AAC9C,wBAAgB,UAAU,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,YAAY,EAAE,CAEzG;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,sBAAsB,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAG5G;AAED,mFAAmF;AACnF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGrE"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { RdlRenderStateIndicator } from "../rdlTypes";
|
|
2
|
+
export interface RdlEllipse {
|
|
3
|
+
cx: number;
|
|
4
|
+
cy: number;
|
|
5
|
+
rx: number;
|
|
6
|
+
ry: number;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* The ellipse a state indicator fills: its percent box of the panel, stretched to an oval in a box
|
|
10
|
+
* that is not square, like the old viewer. Null when the active state has no color or the box is empty.
|
|
11
|
+
*/
|
|
12
|
+
export declare function stateIndicatorEllipse(indicator: RdlRenderStateIndicator, panelWidth: number, panelHeight: number): RdlEllipse | null;
|
|
13
|
+
/** The value span a Bar pointer covers: from the scale minimum to the value clamped into the scale. */
|
|
14
|
+
export declare function gaugeBarSpan(value: number | null | undefined, minimum: number, maximum: number): {
|
|
15
|
+
from: number;
|
|
16
|
+
to: number;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* The major tick values of a gauge scale: every `interval` from the minimum up to the maximum (the
|
|
20
|
+
* server computes it); without a usable interval the chart axis' nice step of the range is used.
|
|
21
|
+
*/
|
|
22
|
+
export declare function gaugeTicks(minimum: number, maximum: number, interval: number | null | undefined): number[];
|
|
23
|
+
/**
|
|
24
|
+
* A thickness given in percent of the gauge's own size (for a horizontal linear gauge its height, as
|
|
25
|
+
* the chart engine measures range and pointer widths), or the default fraction when it is missing.
|
|
26
|
+
*/
|
|
27
|
+
export declare function gaugeThickness(percent: number | null | undefined, gaugeSize: number, defaultFraction: number): number;
|
|
28
|
+
/** How far a band of `thickness` reaches above (`up`) and below (`down`) the scale line. */
|
|
29
|
+
export interface RdlGaugeBandExtent {
|
|
30
|
+
up: number;
|
|
31
|
+
down: number;
|
|
32
|
+
}
|
|
33
|
+
/** Cross (or none) is centred on the scale line, Inside lies above it, Outside below it. */
|
|
34
|
+
export declare function gaugeBandExtent(placement: string | null | undefined, thickness: number): RdlGaugeBandExtent;
|
|
35
|
+
/**
|
|
36
|
+
* The y of the scale line of a horizontal linear gauge `height` tall: the bands (ranges and pointers)
|
|
37
|
+
* and the tick labels below them (`labelSpace`) are centred as one block.
|
|
38
|
+
*/
|
|
39
|
+
export declare function linearGaugeScaleY(height: number, bands: readonly RdlGaugeBandExtent[], labelSpace: number): number;
|
|
40
|
+
//# sourceMappingURL=rdlGauge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdlGauge.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/report-viewer/logic/rdlGauge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAM3D,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACX;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAQpI;AAED,uGAAuG;AACvG,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAE7H;AAMD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,CAa1G;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAGrH;AAED,4FAA4F;AAC5F,MAAM,WAAW,kBAAkB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACb;AAED,4FAA4F;AAC5F,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,kBAAkB,CAM3G;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,kBAAkB,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAIlH"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { RdlRenderParagraph } from "../rdlTypes";
|
|
2
|
+
/** Indent of one list level, in points. */
|
|
3
|
+
export declare const RDL_LIST_INDENT_PT = 18;
|
|
4
|
+
/**
|
|
5
|
+
* The list marker of every paragraph (null = no list). Numbering counts consecutive numbered
|
|
6
|
+
* paragraphs of the same level: a non-list paragraph resets every level, a paragraph at a level
|
|
7
|
+
* resets the levels below it, and a bulleted paragraph resets the numbering of its own level.
|
|
8
|
+
*/
|
|
9
|
+
export declare function computeListMarkers(paragraphs: readonly RdlRenderParagraph[]): (string | null)[];
|
|
10
|
+
/** Left indent of a paragraph in points: one list indent per level (a list paragraph has at least level 1). */
|
|
11
|
+
export declare function paragraphIndentPt(paragraph: RdlRenderParagraph): number;
|
|
12
|
+
//# sourceMappingURL=rdlListMarkers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdlListMarkers.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/report-viewer/logic/rdlListMarkers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,2CAA2C;AAC3C,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAYrC;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,SAAS,kBAAkB,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAiB/F;AAED,+GAA+G;AAC/G,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,CAGvE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A value in a .NET numeric format ("N0", "F1", "P0", "0", "0.0", "#,##0.00", "0%", ...) and a culture
|
|
3
|
+
* ("de-CH"; missing or unknown = invariant-like en-US). Null for a missing or unsupported format.
|
|
4
|
+
* The standard "P" uses the culture's percent pattern (e.g. "12 %" in de-DE); a custom "%" appends the
|
|
5
|
+
* sign directly, as .NET does.
|
|
6
|
+
*/
|
|
7
|
+
export declare function formatRdlNumber(value: number, format: string | null | undefined, culture?: string | null): string | null;
|
|
8
|
+
//# sourceMappingURL=rdlNumberFormat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdlNumberFormat.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/report-viewer/logic/rdlNumberFormat.ts"],"names":[],"mappings":"AAiEA;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAmBxH"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { RdlRenderPage } from "../rdlTypes";
|
|
2
|
+
/** Zoom of the viewer: a factor (1 = 100%) or a fit mode measured against the visible area. */
|
|
3
|
+
export type CwReportZoom = number | "pageWidth" | "wholePage";
|
|
4
|
+
/** The zoom steps of the toolbar, 50% to 200%. */
|
|
5
|
+
export declare const REPORT_ZOOM_STEPS: readonly number[];
|
|
6
|
+
/** Margins around the body on the drawn sheet, in points. */
|
|
7
|
+
export interface RdlPageMargins {
|
|
8
|
+
top: number;
|
|
9
|
+
right: number;
|
|
10
|
+
bottom: number;
|
|
11
|
+
left: number;
|
|
12
|
+
}
|
|
13
|
+
/** Default margins of a standalone CwReportPage: a quarter inch, so content never touches the paper edge. */
|
|
14
|
+
export declare const DEFAULT_PAGE_MARGIN_PT = 18;
|
|
15
|
+
/**
|
|
16
|
+
* Margins of the sheet in the viewer: none. Like the old ReportViewer, the screen shows the content
|
|
17
|
+
* (header, body, footer) without the RDL page margins; PDF and print come from the server with them.
|
|
18
|
+
*/
|
|
19
|
+
export declare const SCREEN_PAGE_MARGINS: RdlPageMargins;
|
|
20
|
+
/** Width of the page content in points: the page's own `Width` (body plus items reaching past it) when the server sends it, else the body width. */
|
|
21
|
+
export declare function pageContentWidthPt(page: Pick<RdlRenderPage, "Width">, bodyWidth: number): number;
|
|
22
|
+
/** Size of the drawn sheet in points: margins + header + body + footer, as wide as the content so every item lies on it. */
|
|
23
|
+
export declare function pageSheetSizePt(page: RdlRenderPage, bodyWidth: number, margins: RdlPageMargins): {
|
|
24
|
+
width: number;
|
|
25
|
+
height: number;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* The zoom factor to draw with. "pageWidth" fits the sheet width into the available width,
|
|
29
|
+
* "wholePage" fits the whole sheet; available sizes are CSS pixels. Clamped to 10%..400%.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveZoomFactor(zoom: CwReportZoom, sheetPt: {
|
|
32
|
+
width: number;
|
|
33
|
+
height: number;
|
|
34
|
+
}, available: {
|
|
35
|
+
width: number;
|
|
36
|
+
height: number;
|
|
37
|
+
}): number;
|
|
38
|
+
//# sourceMappingURL=rdlPageGeometry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rdlPageGeometry.d.ts","sourceRoot":"","sources":["../../../../../../src/components/custom/report-viewer/logic/rdlPageGeometry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,+FAA+F;AAC/F,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC;AAE9D,kDAAkD;AAClD,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAAiC,CAAC;AAKjF,6DAA6D;AAC7D,MAAM,WAAW,cAAc;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AAED,6GAA6G;AAC7G,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,cAAyD,CAAC;AAE5F,oJAAoJ;AACpJ,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhG;AAED,4HAA4H;AAC5H,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAKlI;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAChC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1C,SAAS,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC1C,MAAM,CAQR"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { RdlParameterValue, RdlParameterValues, RdlReportParameter } from "../rdlTypes";
|
|
2
|
+
/** One editor value: text (TextBox, numbers as typed, dropdown option values), a boolean or a date-time. */
|
|
3
|
+
export type RdlEditorScalar = string | boolean | Temporal.PlainDateTime;
|
|
4
|
+
/** The editor state of one parameter: its values, none (or only empty text) for an empty field. */
|
|
5
|
+
export interface RdlParameterEdit {
|
|
6
|
+
values: RdlEditorScalar[];
|
|
7
|
+
}
|
|
8
|
+
export type RdlParameterEdits = Record<string, RdlParameterEdit>;
|
|
9
|
+
/** Reads the date and time of an ISO 8601 text (any offset is ignored, the wall clock is kept). Null when it is not a date. */
|
|
10
|
+
export declare function parseRdlDateTime(text: string): Temporal.PlainDateTime | null;
|
|
11
|
+
/** A date-time as invariant text "YYYY-MM-DDTHH:mm:ss". */
|
|
12
|
+
export declare function formatRdlDateTime(value: Temporal.PlainDateTime): string;
|
|
13
|
+
/** A typed API value as the text of an option or an editor (null stays null). */
|
|
14
|
+
export declare function rdlValueToText(value: RdlParameterValue): string | null;
|
|
15
|
+
/** The editor state of one parameter from the values the server sent; a NULL value is an empty field. */
|
|
16
|
+
export declare function initialParameterEdit(parameter: RdlReportParameter): RdlParameterEdit;
|
|
17
|
+
/** The editor state of a whole form. */
|
|
18
|
+
export declare function initialParameterEdits(parameters: readonly RdlReportParameter[]): RdlParameterEdits;
|
|
19
|
+
/** One editor value as invariant text. */
|
|
20
|
+
export declare function editorScalarToInvariant(parameter: Pick<RdlReportParameter, "DataType">, value: RdlEditorScalar): string;
|
|
21
|
+
/**
|
|
22
|
+
* The values the API takes (RdlParameterValuesRequest.Values): every parameter, each as an array of
|
|
23
|
+
* invariant text. An empty field is [null] when the parameter is nullable, [""] for a single text,
|
|
24
|
+
* else []. A parameter without an edit sends the values the server gave it.
|
|
25
|
+
*
|
|
26
|
+
* A nullable boolean whose value is NULL shows neither True nor False and keeps sending NULL until
|
|
27
|
+
* the user picks one; from then on it sends "true" / "false" (a radio group cannot be emptied again).
|
|
28
|
+
*/
|
|
29
|
+
export declare function toRdlParameterValues(parameters: readonly RdlReportParameter[], edits: RdlParameterEdits): RdlParameterValues;
|
|
30
|
+
/** True when any other parameter lists `name` in its DependsOn: a change must re-resolve the form. */
|
|
31
|
+
export declare function hasDependentParameters(parameters: readonly RdlReportParameter[], name: string): boolean;
|
|
32
|
+
/** Whether the user edits the parameter (hidden and server-filled parameters are not editable). */
|
|
33
|
+
export declare function isEditableParameter(parameter: RdlReportParameter): boolean;
|
|
34
|
+
/** Whether the form has anything for the user to fill in (some parameter is neither hidden nor server-filled). */
|
|
35
|
+
export declare function hasEditableParameters(parameters: readonly RdlReportParameter[]): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Client-side checks before "View report": a value is required unless the parameter is nullable
|
|
38
|
+
* (empty = NULL) or allows blank text (AllowBlank), and numbers / dates must parse. Hidden and
|
|
39
|
+
* server-filled parameters are the server's business. Returns parameter name to message.
|
|
40
|
+
*/
|
|
41
|
+
export declare function validateParameterEdits(parameters: readonly RdlReportParameter[], edits: RdlParameterEdits): Record<string, string>;
|
|
42
|
+
//# sourceMappingURL=rdlParameterValues.d.ts.map
|