Trim trailing newlines (#999)

* trim newlines for text elements

* fix comment
This commit is contained in:
David Luzar 2020-03-18 13:01:33 +01:00 committed by GitHub
parent 6fe40516bf
commit 23b785de68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,6 +1,17 @@
import { KEYS } from "../keys";
import { selectNode } from "../utils";
function trimText(text: string) {
// whitespace only → trim all because we'd end up inserting invisible element
if (!text.trim()) {
return "";
}
// replace leading/trailing newlines (only) otherwise it messes up bounding
// box calculation (there's also a bug in FF which inserts trailing newline
// for multiline texts)
return text.replace(/^\n+|\n+$/g, "");
}
type TextWysiwygParams = {
initText: string;
x: number;
@ -101,7 +112,7 @@ export function textWysiwyg({
function handleSubmit() {
if (editable.innerText) {
onSubmit(editable.innerText);
onSubmit(trimText(editable.innerText));
} else {
onCancel();
}