2022-09-13
Major Changes
Patch Changes
- Click event receives all entity reference marks, their ranges and their respective text on the clicked position
- Improve the calculation of changed ranges by utilising mapping
- Add an optional onclickmark handler to handle clicks on entity reference
- Fix
onSendableReceived
handler so it is actually debounced as intended.
Add two new commands cancelSendableSteps
and flushSendableSteps
which more control over the debounced functionality
- When href equals text content, treat the link as an auto link (if enabled)
- Transform a hard break into
\n
in Node.textContent
.
- Update pnpm-lock.yaml
- Support both ESM and CJS.
- Expose the return type of the throttle and debounce helpers
- add helper to get shortest entity reference
- Try to require JSDOM implicitly in node environment.
- Correct a bad import.
- Add a customisible floating button to completely delete React tables.
Fix creating React tables from markdown initial state.
Fix copy and paste of React tables, which resulted in duplicated controlled cells.
- Standardize the
contextmenu
and hover
events to return event as first parameter
- SSR features are removed.
- Update ProseMirror packages to latest versions.
- Set style
white-space
as break-spaces
to wrap end-of-lines spaces.
- Removes
domino
from the codebase.
- Delay trigger of
onUpdateLink
till the end of the execution queue to prevent updates on stale state.
- Removes the following CSS variables:
--rmr-color-selection-background: Highlight;
--rmr-color-selection-shadow: inherit;
--rmr-color-selection-text: HighlightText;
--rmr-color-selection-caret: inherit;
This brings more natural selection colors to the editor.
- Auto link adjacent character detection.
Remove auto link if the link becomes invalid.
Before:
"window.confirm" results in "[window.co](//window.co)nfirm"
After:
"window.confirm" results in "window.confirm"
New options findAutoLinks
and isValidUrl
that if provided are used instead of autoLinkAllowedTLDs
and autoLinkRegex
to find and validate a link.
URLs are very ambiguous the new options allow to find valid auto links without adding additional complexity to the link extension.
Library examples to find URLs in text.
It is worth mentioning that the autoLinkRegex
can be modified to exclude adjacent punctuations from an auto link.
Regex suggestion from @whawker
/(?:(?:(?:https?|ftp):)?\/\/)?(?:\S+(?::\S*)?@)?(?:(?:[\da-z\u00A1-\uFFFF][\w\u00A1-\uFFFF-]{0,62})?[\da-z\u00A1-\uFFFF]\.)*(?:(?:\d(?!\.)|[a-z\u00A1-\uFFFF])(?:[\da-z\u00A1-\uFFFF][\w\u00A1-\uFFFF-]{0,62})?[\da-z\u00A1-\uFFFF]\.)+[a-z\u00A1-\uFFFF]{2,}(?::\d{2,5})?(?:[#/?](?:(?! |[!"'(),.;?[\]{}-]).|-+|\((?:(?![ )]).)*\)|\[(?:(?![ \]]).)*]|'(?=\w)|\.(?! |\.|$)|,(?! |,|$)|;(?! |;|$)|!(?! |!|$)|\?(?! |\?|$))+|\/)?/gi;
Examples