Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | // Copyright 2015 tomkp
// Copyright 2022 YANDEX LLC
import React from 'react';
import type {SplitLayoutType} from './types';
export const RESIZER_DEFAULT_CLASSNAME = 'Resizer';
type Props = {
onMouseDown: React.MouseEventHandler;
onTouchStart: React.TouchEventHandler;
onTouchEnd: React.TouchEventHandler;
className?: string;
split?: SplitLayoutType;
style?: React.CSSProperties;
resizerClassName?: string;
onClick?: React.MouseEventHandler;
onDoubleClick?: React.MouseEventHandler;
};
export class Resizer extends React.Component<Props> {
render() {
const {
className,
onClick,
onDoubleClick,
onMouseDown,
onTouchEnd,
onTouchStart,
resizerClassName = RESIZER_DEFAULT_CLASSNAME,
split,
style,
} = this.props;
const classes = [resizerClassName, split, className];
return (
<span
role="presentation"
className={classes.join(' ')}
style={style}
onMouseDown={(event) => onMouseDown(event)}
onTouchStart={(event) => {
onTouchStart(event);
}}
onTouchEnd={(event) => {
event.preventDefault();
onTouchEnd(event);
}}
onClick={(event) => {
if (onClick) {
event.preventDefault();
onClick(event);
}
}}
onDoubleClick={(event) => {
if (onDoubleClick) {
event.preventDefault();
onDoubleClick(event);
}
}}
/>
);
}
}
|