brush-zoom — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited brush-zoom (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Interactive range selection and zoom/pan for charts. Brush allows selecting a data range; ZoomPan enables zooming and panning the view.
import { ChartBrush, ChartZoomPan } from 'reaviz';Most props are set internally by the parent chart. User-configurable:
| Prop | Type | Default | Description |
|---|---|---|---|
disabled | boolean | — | Disable brush |
fill | string | — | Brush selection fill color |
domain | [ChartDataTypes, ChartDataTypes] | — | Initial brush domain |
onBrushChange | (event: BrushChangeEvent) => void | — | Callback when brush range changes |
interface BrushChangeEvent {
start?: number;
end?: number;
}Most props are set internally by the parent chart. User-configurable:
| Prop | Type | Default | Description |
|---|---|---|---|
disabled | boolean | — | Disable zoom/pan |
pannable | boolean | true | Enable panning |
zoomable | boolean | true | Enable zooming |
maxZoom | number | 10 | Maximum zoom level |
zoomStep | number | 0.1 | Zoom increment per scroll |
disableMouseWheel | boolean | — | Disable scroll-to-zoom |
requireZoomModifier | boolean | — | Require modifier key (Ctrl/Cmd) to zoom |
domain | [ChartDataTypes, ChartDataTypes] | — | Controlled zoom domain |
onZoomPan | (event: ZoomPanChangeEvent) => void | — | Callback on zoom/pan |
interface ZoomPanChangeEvent {
domain: [ChartDataTypes, ChartDataTypes];
isZoomed: boolean;
}<AreaChart
data={data}
brush={<ChartBrush />}
/><AreaChart
data={data}
brush={
<ChartBrush
onBrushChange={(e) => console.log('Range:', e.start, e.end)}
/>
}
/><AreaChart
data={data}
zoomPan={<ChartZoomPan />}
/>const [domain, setDomain] = useState<[Date, Date]>();
<AreaChart
data={data}
zoomPan={
<ChartZoomPan
domain={domain}
onZoomPan={(e) => setDomain(e.domain)}
/>
}
/><ChartZoomPan requireZoomModifier /><ChartZoomPan disableMouseWheel /><ChartZoomPan zoomable={false} pannable />brush or zoomPan as a chart prop — they are null by default~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.