Better function name?

pull/3059/head
Bryan Terce 6 years ago
parent e687b982b4
commit 0fbcda12aa
No known key found for this signature in database
GPG Key ID: DF2E2829CA6E5BF4

@ -42,8 +42,11 @@ function link(next: Wrapper, prev: Wrapper) {
if (next) next.prev = prev; if (next) next.prev = prev;
} }
function at_each_boundary(child: INode, next_sibling: Wrapper): boolean { function trimmable_at(child: INode, next_sibling: Wrapper): boolean {
return next_sibling.node.find_nearest(/EachBlock/) === child.find_nearest(/EachBlock/) || next_sibling.node.prev.type === 'EachBlock'; // Whitespace is trimmable if one of the following is true:
// The child and its sibling share a common nearest each block (not at an each block boundary)
// The next sibling's previous node is an each block
return (next_sibling.node.find_nearest(/EachBlock/) === child.find_nearest(/EachBlock/)) || next_sibling.node.prev.type === 'EachBlock';
} }
export default class FragmentWrapper { export default class FragmentWrapper {
@ -89,7 +92,7 @@ export default class FragmentWrapper {
if (this.nodes.length === 0) { if (this.nodes.length === 0) {
const should_trim = ( const should_trim = (
// @ts-ignore todo: probably error, should it be next_sibling.node.data? // @ts-ignore todo: probably error, should it be next_sibling.node.data?
next_sibling ? (next_sibling.node.type === 'Text' && /^\s/.test(next_sibling.data) && at_each_boundary(child, next_sibling)) : !child.has_ancestor('EachBlock') next_sibling ? (next_sibling.node.type === 'Text' && /^\s/.test(next_sibling.data) && trimmable_at(child, next_sibling)) : !child.has_ancestor('EachBlock')
); );
if (should_trim) { if (should_trim) {

Loading…
Cancel
Save