Overview
Reusable accessible SVG charts and spreadsheet-safe CSV mechanics. Hosts own metrics, authorized records, filters, column selection and styling.
@absolutejs/reportsv0.1.1betaFrontend & UXAccessible SVG report charts and spreadsheet-safe CSV exports for AbsoluteJS
bun add @absolutejs/reportsReusable accessible SVG charts and spreadsheet-safe CSV mechanics. Hosts own metrics, authorized records, filters, column selection and styling.
toCsv(headers, rows) emits quoted UTF-8 BOM/CRLF CSV and neutralizes string formulas, including leading whitespace/control characters. Real numeric negatives stay numeric. Row widths must match headers.
downloadText(text, filename, mime?) downloads an already authorized response in the browser.
@absolutejs/reports/react exports BarChart, DonutChart and TrendChart. Pass {data:[{id,label,value,color?}],label,onSelect,selected?}. Selection works with mouse and keyboard, with labels/values outside the SVG. Use the abs-chart classes to match your application theme. Nonfinite/negative values display as zero.
CSV exports must reauthorize current access on the server. Do not export stale client caches after a user's membership changes. Chart callbacks return IDs only; chart primitives never fetch or infer permissions.
Outcomes
Reusable accessible SVG charts and spreadsheet-safe CSV mechanics. Hosts own metrics, authorized records, filters, column selection and styling.
Hardening checklist
Follow in order
Supported entry points declared by this project’s package manifest. Internal dist paths are not part of the package contract.
Public package entry point declared in package.json.
Scripts declared by this project’s package manifest.
Search the declarations exported by the current package type files. Expand a symbol to inspect its source-backed signature.
type CsvValue = string | number | boolean | null | undefined;@absolutejs/reports