matrix-react-sdk
Version:
SDK for matrix.org using React
49 lines (48 loc) • 1.4 kB
TypeScript
import React, { AriaRole } from "react";
import { Room } from "matrix-js-sdk/src/matrix";
import { IWidget } from "matrix-widget-api";
import ResizeNotifier from "../../../utils/ResizeNotifier";
import { Container } from "../../../stores/widgets/WidgetLayoutStore";
interface IProps {
userId: string;
room: Room;
resizeNotifier: ResizeNotifier;
showApps?: boolean;
maxHeight: number;
role?: AriaRole;
}
interface IState {
apps: {
[Container.Top]: IWidget[];
[Container.Center]: IWidget[];
[Container.Right]?: IWidget[];
};
resizingVertical: boolean;
resizingHorizontal: boolean;
resizing: boolean;
}
export default class AppsDrawer extends React.Component<IProps, IState> {
private unmounted;
private resizeContainer?;
private resizer;
private dispatcherRef?;
static defaultProps: Partial<IProps>;
constructor(props: IProps);
componentDidMount(): void;
componentWillUnmount(): void;
private onIsResizing;
private createResizer;
private collectResizer;
private getAppsHash;
componentDidUpdate(prevProps: IProps, prevState: IState): void;
private relaxResizer;
private loadResizerPreferences;
private isResizing;
private onAction;
private getApps;
private topApps;
private centerApps;
private updateApps;
render(): React.ReactNode;
}
export {};