react-lightweight-charts-simple
Version:
A simple react wrapper for lightweight-charts library
49 lines (48 loc) • 1.29 kB
TypeScript
import { IChartApi } from 'lightweight-charts';
export declare enum ChartAutoResizerTriggerSource {
/**
* Indicate to use `window.addEventListener('resize', handler)`.
*/
windowResize = 1,
/**
* Indicate to use `new ResizeObserver(handler).observe(parentElement)`.
*/
parentResize = 2
}
export declare type ResizeHandler = (
/**
* chart object
*/
chart: IChartApi,
/**
* new chart width
*/
width: number,
/**
* new chart height
*/
height: number,
/**
* container element
*/
container: HTMLDivElement | null) => void;
export interface ChartAutoResizerProps {
/**
* Source to trigger, from window's `resize` event or use `ResizeObserver`
*
* Default is `.parentResize` if `ResizeObserver` exists,
* use `.windowResize` otherwise.
*/
triggerSource?: ChartAutoResizerTriggerSource;
/**
* Callback when resize triggered.
*/
onResize?: ResizeHandler;
}
/**
* Utility component for resizing the chart when window size changed.
*
* ❗Only use inside `<Chart />`.
* Turn chart option `disableAutoResize = true` to prevent multiple resizer called.
*/
export declare const ChartAutoResizer: ({ triggerSource, onResize, }: ChartAutoResizerProps) => null;