This codemod shows how to migrate cursor and selection handling from Slate v0.88 to v0.104, including the Preventing runtime errors from null selections.
const selection = editor.selection as Range | null;
if (selection) {
const start = Range.start(selection);
// Selection is now safely typed and null-checked
}
Key Changes
Added explicit type casting to Range | null
Implemented null safety check using conditional block
Ensures selection exists before accessing its properties
Migration Benefits
Prevents runtime errors from null selections
Provides better TypeScript type safety
Follows current best practices for Slate selection handling
Ready to evolve your codebase?
Build tailored, compiler-aware skills to assess, plan, and automate complex codebase changes.