Back to Plate

5064 4971

docs/slate-issues/open-issues-dossiers/5064-4971.md

53.0.621.9 KB
Original Source

Issue #5064

Issue Summary

With certain CSS display values, the editor treats clicks outside its visible border as in-bounds clicks.

Thread Summary

No thread yet, but the report points at a crisp DOM/layout seam rather than app misuse.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Likely valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it in the DOM boundary bucket unless someone proves it is pure CSS misuse.

v2 Relevance

Indirect.

Red-Test Extraction Note

Ready with minor setup.


Issue #5051

Issue Summary

slate-html-serializer no longer works with modern Slate because that serializer line is effectively dead and unsupported.

Thread Summary

The first comment already says the serializer has been unsupported for years.

Repro Status

Strong enough.

Workaround Status

Strong.

Validity Assessment

Invalid.

Duplicate / Invalid / Stale Assessment

This is mostly unsupported or invalid current-contract behavior.

Maintainer Action Suggestion

close-invalid

Future Reply Direction

Close it as unsupported ecosystem drift, not as current Slate breakage.

v2 Relevance

None.

Red-Test Extraction Note

Not a direct test candidate.


Issue #5050

Issue Summary

Users want a beforeInsertText seam so they can reject input before the DOM and Slate state drift apart.

Thread Summary

Maintainer feedback in the thread is positive, which makes this a real API seam request rather than idle ideation.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

v2-roadmap

Future Reply Direction

Keep it as API roadmap input tied to the broader input contract story.

v2 Relevance

Direct.

Red-Test Extraction Note

Not a direct test candidate.


Issue #5044

Issue Summary

This is a vague framework integration failure report around Shopify and Next.js with a null crash, but the issue is too underspecified to drive architecture.

Thread Summary

The follow-ups are still 'it crashes for me' level, not enough to pin ownership.

Repro Status

Weak.

Workaround Status

Poor.

Validity Assessment

Unclear.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

ask-for-repro

Future Reply Direction

Ask for a reduced repro or de-weight it.

v2 Relevance

None.

Red-Test Extraction Note

Blocked on a tighter repro.


Issue #5037

Issue Summary

This is really a behavior request: hitting backspace at the start of the document should clear element formatting instead of doing nothing.

Thread Summary

No thread yet, and the ask is really about preferred editor behavior, not a broken core invariant.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

share-status

Future Reply Direction

Do not let product-behavior preference drive the core roadmap.

v2 Relevance

None.

Red-Test Extraction Note

Not a direct test candidate.


Issue #5034

Issue Summary

On Android, toggling readOnly clears editor.selection, which breaks read-only inspection and selection persistence.

Thread Summary

No thread yet, but the report is concrete and sits in an already-real Android lifecycle seam.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it in the Android lifecycle cluster.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready with minor setup.


Issue #5032

Issue Summary

This error comes from Prism or similar code-highlighting DOM mutation that Slate does not own, so it is mostly a consumer mutation problem.

Thread Summary

The first comment already explains the ownership problem: Prism rewrites DOM behind Slate’s back.

Repro Status

Strong enough.

Workaround Status

Strong.

Validity Assessment

Likely invalid.

Duplicate / Invalid / Stale Assessment

This is mostly unsupported or invalid current-contract behavior.

Maintainer Action Suggestion

close-invalid

Future Reply Direction

Point at the DOM mutation contract and close it.

v2 Relevance

None.

Red-Test Extraction Note

Not a direct test candidate.


Issue #5031

Issue Summary

Editor.above on an expanded range looks wrong according to the supplied example, which makes this a real API semantics question.

Thread Summary

No thread yet, but the example is sharp enough to turn directly into a behavior test.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it as a small but real core API correctness issue.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready now.


Issue #5028

Issue Summary

Editor.nodes needs a pass predicate so callers can skip whole subtrees more explicitly during traversal.

Thread Summary

No thread yet. The ask is clean and bounded.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

v2-roadmap

Future Reply Direction

Keep it as API-surface roadmap input.

v2 Relevance

Direct.

Red-Test Extraction Note

Not a direct test candidate.


Issue #5026

Issue Summary

Changing readOnly on Android breaks the native listener wiring, so insert/remove ops never reach onChange.

Thread Summary

The comment already points at #4994, which is the right duplicate target.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Treat this as a duplicate of #4994.

Maintainer Action Suggestion

mark-duplicate

Future Reply Direction

Mark it duplicate and keep the cluster concentrated.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready with minor setup.


Issue #5025

Issue Summary

Transforms.select happily accepts invalid locations, so the request is for a safer public contract or sanity check.

Thread Summary

No thread yet, but the contract complaint is straightforward.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

v2-roadmap

Future Reply Direction

Treat it as API-hardening roadmap input.

v2 Relevance

Direct.

Red-Test Extraction Note

Not a direct test candidate.


Issue #5023

Issue Summary

Chinese IME repeats inserted content because composition and beforeinput paths both end up inserting text.

Thread Summary

The thread is mostly people asking for a fix, which reinforces that the seam is real but unresolved.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it in the CJK composition cluster.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready with minor setup.


Issue #5019

Issue Summary

On Android with Gboard, the last composed word does not reach Slate state until a later trigger like space or punctuation.

Thread Summary

The comment already points at active work in #4988, which is enough to collapse this into that line.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Treat this as a duplicate of #4988.

Maintainer Action Suggestion

mark-duplicate

Future Reply Direction

Point at the active duplicate instead of carrying another Android flush issue separately.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready with minor setup.


Issue #5014

Issue Summary

Firefox plus CJK IME can duplicate input and even crash, which is another severe browser-specific composition failure.

Thread Summary

The thread is thin, but the severity and reproducibility are clear enough.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it as part of the Firefox/CJK cluster, not generic IME mush.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready with minor setup.


Issue #5012

Issue Summary

Every edit logs a useLayoutEffect SSR warning, which is really a React server-rendering/runtime integration problem.

Thread Summary

The thread wanders into Plate and SSR discussion, but the underlying useLayoutEffect warning is still real.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Likely valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it in the React runtime pile, but do not confuse it with core data-model pressure.

v2 Relevance

Indirect.

Red-Test Extraction Note

Blocked on a tighter repro.


Issue #5010

Issue Summary

Overriding insertText to reject input can leave the DOM and Slate model out of sync, which exposes a bad plugin seam around suppressed input.

Thread Summary

The thread includes a workaround, but it proves the current seam is leaky rather than safe.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it as a serious plugin/runtime seam bug.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready now.


Issue #5005

Issue Summary

Copying only a link loses the link metadata, which means inline-only clipboard extraction is not preserving marks or element semantics correctly.

Thread Summary

No thread yet, but the behavior claim is concrete enough to test.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it as a real clipboard/inline boundary bug.

v2 Relevance

Indirect.

Red-Test Extraction Note

Ready now.


Issue #5004

Issue Summary

onFocus fires even when the editor should still be considered blurred, which makes focus event semantics unreliable.

Thread Summary

No thread yet, but event ordering bugs usually need a direct test rather than more debate.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it as focus contract work.

v2 Relevance

Indirect.

Red-Test Extraction Note

Ready now.


Issue #5001

Issue Summary

When a path lookup fails, Slate throws a misleading circular-JSON error instead of the actual path failure, which is plain error-reporting debt.

Thread Summary

The comment does not really resolve it; it just asks the reporter to look elsewhere.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Treat it as error-surface cleanup, not as invalid usage.

v2 Relevance

Indirect.

Red-Test Extraction Note

Ready now.


Issue #5000

Issue Summary

The images example does not guard the cancel path from window.prompt, so the example inserts junk UI state.

Thread Summary

No thread needed; this is an example-quality bug.

Repro Status

Strong enough.

Workaround Status

Strong.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Fix the example and move on. It should not affect v2 architecture thinking.

v2 Relevance

None.

Red-Test Extraction Note

Not a direct test candidate.


Issue #4995

Issue Summary

scrollSelectionIntoView claims to be customizable, but it still forces built-in scrolling behavior that callers cannot fully override.

Thread Summary

The thread confirms people are using it for sticky toolbars and still hitting the limitation.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

v2-roadmap

Future Reply Direction

Treat it as selection bridge API debt, not just app styling fallout.

v2 Relevance

Direct.

Red-Test Extraction Note

Not a direct test candidate.


Issue #4994

Issue Summary

AndroidEditable does not react when readOnly changes, so the editor can appear editable while Slate state stays frozen.

Thread Summary

The thread confirms it even repros from desktop devtools Android emulation, which is useful extra signal.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it as the anchor issue for this Android lifecycle seam.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready with minor setup.


Issue #4989

Issue Summary

Horizontal arrow navigation can move the caret two positions at a time instead of one.

Thread Summary

No thread yet, but the recording claim is straightforward.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Likely valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it in the selection/caret bucket.

v2 Relevance

Indirect.

Red-Test Extraction Note

Ready now.


Issue #4984

Issue Summary

Selecting across a nested editor can throw because toDOMPoint crosses editor ownership boundaries incorrectly.

Thread Summary

No thread yet, but nested editor ownership bugs are high leverage and the seam is clear.

Repro Status

Strong enough.

Workaround Status

Poor.

Validity Assessment

Valid.

Duplicate / Invalid / Stale Assessment

Keep it in the right cluster and do not let it drift into unrelated themes.

Maintainer Action Suggestion

keep-open

Future Reply Direction

Keep it open as real nested-editor selection debt.

v2 Relevance

Direct.

Red-Test Extraction Note

Ready now.


Issue #4971

Issue Summary

The editor throws if a text node is null, which is invalid document shape rather than a valid Slate state.

Thread Summary

The comment confirms it happens, but the state is still invalid input, not a healthy Slate value.

Repro Status

Strong enough.

Workaround Status

Acceptable.

Validity Assessment

Likely invalid.

Duplicate / Invalid / Stale Assessment

This is mostly unsupported or invalid current-contract behavior.

Maintainer Action Suggestion

close-invalid

Future Reply Direction

Point at the document contract and close it unless a normalization gap is demonstrated.

v2 Relevance

None.

Red-Test Extraction Note

Not a direct test candidate.