mirror of
https://github.com/ianstormtaylor/slate.git
synced 2025-02-01 05:16:10 +01:00
Replace "zero width whitspace" with "zero width no break" character (#2234)
This fixes https://github.com/ianstormtaylor/slate/issues/2231 where a rogue empty line appears before an inline block.
This commit is contained in:
parent
933c938765
commit
b1ec914467
@ -133,7 +133,7 @@ class Leaf extends React.Component {
|
||||
// COMPAT: Render text inside void nodes with a zero-width space.
|
||||
// So the node can contain selection but the text is not visible.
|
||||
if (schema.isVoid(parent)) {
|
||||
return <span data-slate-zero-width="z">{'\u200B'}</span>
|
||||
return <span data-slate-zero-width="z">{'\uFEFF'}</span>
|
||||
}
|
||||
|
||||
// COMPAT: If this is the last text node in an empty block, render a zero-
|
||||
@ -145,14 +145,14 @@ class Leaf extends React.Component {
|
||||
parent.text === '' &&
|
||||
parent.nodes.last() === node
|
||||
) {
|
||||
return <span data-slate-zero-width="n">{'\u200B'}</span>
|
||||
return <span data-slate-zero-width="n">{'\uFEFF'}</span>
|
||||
}
|
||||
|
||||
// COMPAT: If the text is empty, it's because it's on the edge of an inline
|
||||
// node, so we render a zero-width space so that the selection can be
|
||||
// inserted next to it still.
|
||||
if (text === '') {
|
||||
return <span data-slate-zero-width="z">{'\u200B'}</span>
|
||||
return <span data-slate-zero-width="z">{'\uFEFF'}</span>
|
||||
}
|
||||
|
||||
// COMPAT: Browsers will collapse trailing new lines at the end of blocks,
|
||||
|
@ -51,7 +51,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -59,7 +59,7 @@ export const output = `
|
||||
<div data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -70,7 +70,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -78,7 +78,7 @@ export const output = `
|
||||
<div data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -49,7 +49,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -57,7 +57,7 @@ export const output = `
|
||||
<div data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -68,7 +68,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -76,7 +76,7 @@ export const output = `
|
||||
<div data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -49,7 +49,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -57,7 +57,7 @@ export const output = `
|
||||
<div data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -68,7 +68,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
@ -76,7 +76,7 @@ export const output = `
|
||||
<div data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -42,7 +42,7 @@ export const output = `
|
||||
<div data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -39,7 +39,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
<a href="https://google.com">
|
||||
@ -49,7 +49,7 @@ export const output = `
|
||||
</a>
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
<a href="https://google.com">
|
||||
@ -59,7 +59,7 @@ export const output = `
|
||||
</a>
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
<a href="https://google.com">
|
||||
@ -69,7 +69,7 @@ export const output = `
|
||||
</a>
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -40,14 +40,14 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
<span data-slate-void="true" contenteditable="false">
|
||||
<span data-slate-spacer="true" style="height:0;color:transparent;outline:none;position:absolute">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</span>
|
||||
@ -57,7 +57,7 @@ export const output = `
|
||||
</span>
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n">​</span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -37,7 +37,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
<a href="https://google.com">
|
||||
@ -47,7 +47,7 @@ export const output = `
|
||||
</a>
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -19,7 +19,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
<span style="position:relative">
|
||||
@ -29,7 +29,7 @@ export const output = `
|
||||
</span>
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -17,7 +17,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n">\u200B</span>
|
||||
<span data-slate-zero-width="n">\uFEFF</span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
@ -41,7 +41,7 @@ export const output = `
|
||||
<div style="position:relative">
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="z">​</span>
|
||||
<span data-slate-zero-width="z"></span>
|
||||
</span>
|
||||
</span>
|
||||
<span data-slate-void="true">
|
||||
@ -51,7 +51,7 @@ export const output = `
|
||||
</span>
|
||||
<span>
|
||||
<span>
|
||||
<span data-slate-zero-width="n">​</span>
|
||||
<span data-slate-zero-width="n"></span>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
Loading…
x
Reference in New Issue
Block a user