I’ve just tagged 0.13.0. I didn’t have time to look into everything I wanted to look into, but I figured regular releases are a good thing, so here you are.
The main work this release has been on copy/paste behavior. This ended up causing a major refactor of the DOM parser and a rewrite of the way replacing a selection is done, which I think both improved the system. Paste behavior is still not perfect, but (assuming my tests aren’t missing any major regressions) it should be quite a lot better.
The other changes are mostly small bug fixes and reintroductions of a few features that were dropped in the 0.10→0.11 transition, but that people did actually really need. Read about them in the…
prosemirror-model 0.13.0 (2016-11-11)
ResolvedPos.sameDepth is now called
ResolvedPos.sharedDepth, and takes a raw, unresolved position as argument.
marks properties are now public.
Slice.maxOpen static method to create maximally open slices.
prosemirror-transform 0.13.0 (2016-11-11)
Fix issue where
Transform.replace would, in specific circumstances, unneccessarily drop content.
deleteRange provide a way to replace and delete content in a ‘do what I mean’ way, automatically expanding the replaced region over empty parent nodes and including the parent nodes in the inserted content when appropriate.
prosemirror-state 0.13.0 (2016-11-11)
EditorTransform.replaceSelection now takes a slice, no longer a node. The new
replaceSelectionWith method should be used to replace the selection with a node. Until the next release, calling it the old way will still work and emit a warning.
The documentation for
applyAction now actually reflects the arguments this method is given.
A state field’s
applyAction method is now passed the previous state as 4th argument, so that it has access to the new doc and selection.
A new utility function
NodeSelection.isSelectable can be used to test whether a node can be the target of a node selection.
prosemirror-view 0.13.0 (2016-11-11)
Selecting nodes on OS X is now done with cmd-leftclick rather than ctrl-leftclick.
Pasting text into a code block will now insert the raw text.
Widget decorations at the start or end of a textblock no longer block horizontal cursor motion through them.
Widget nodes at the end of textblocks are now reliably drawn during display updates.
DecorationSet.map now takes an options object which allows you to specify an
onRemove callback to be notified when remapping drops decorations.
prosemirror-commands 0.13.0 (2016-11-11)
autoJoin function allows you to wrap command functions so that when the command makes nodes of a certain type occur next to each other, they are automatically joined.