Add optional cancel function for text areas

This commit is contained in:
Rene Pfeuffer
2019-12-10 11:59:30 +01:00
parent 0ae185ef01
commit 01ad8c7bb9

View File

@@ -11,6 +11,7 @@ type Props = {
helpText?: string;
disabled?: boolean;
onSubmit?: () => void;
onCancel?: () => void;
};
class Textarea extends React.Component<Props> {
@@ -33,6 +34,13 @@ class Textarea extends React.Component<Props> {
}
};
onKeyDown = (event: KeyboardEvent<HTMLTextAreaElement>) => {
const { onCancel } = this.props;
if (onCancel && event.key === "Escape") {
onCancel();
}
};
render() {
const { placeholder, value, label, helpText, disabled } = this.props;
@@ -50,6 +58,7 @@ class Textarea extends React.Component<Props> {
value={value}
disabled={!!disabled}
onKeyPress={this.onKeyPress}
onKeyDown={this.onKeyDown}
/>
</div>
</div>