react-container-query
Version:
Container Query for React Component
39 lines (38 loc) • 1 kB
TypeScript
/// <reference types="react" />
import React = require('react');
/**
* <ContainerQuery tagName='div' query={query}>
* {(params) => {
* <div className={classname(params.class)}></div>
* }}
* </ContainerQuery>
*/
export default class ContainerQuery extends React.Component<Props, State> {
private rol;
constructor(props: Props);
componentDidMount(): void;
render(): React.DOMElement<any, Element>;
componentWillUnmount(): void;
}
export interface Props extends React.HTMLProps<ContainerQuery> {
children?: ChildFunction | JSX.Element | JSX.Element[];
tagName?: string;
query: {
[key: string]: ContainerQueries;
};
}
export interface State {
params: Params;
}
export interface ChildFunction {
(params: Params): JSX.Element | JSX.Element[] | null;
}
export interface Params {
[key: string]: boolean;
}
export interface ContainerQueries {
minWidth?: number;
maxWidth?: number;
minHeight?: number;
maxHeight?: number;
}