v0.15.0
Highlights
- A new minor version, since we've introduced a new lexical eslint plugin (#5908), which enforces consistency around usage of the
$
method notation. - New error codes generated published at publish time (#6005)
- A significant number of fixes related to tables selection, cursor handling and a more robust copy-pasting behaviour
- Improvements to the Lexical DevTools plugin and documentation
What's Changed
- Fix copying html table with unequal number of cells in a row by @KatsiarynaDzibrova in #5824
- Add $ prefix to updateToolbar on react-rich example by @2wheeh in #5887
- Minor refactor on ListMaxIndentLevelPlugin by @2wheeh in #5886
- Fix inserting text from Grammarly when full node is selected with forward selection by @Piliuta in #5856
- feat(@lexical/devtools): Added Edge support by @StyleT in #5915
- Add setTimeout for mousemove handler by @AlexanderReznik in #5919
- feat(@lexical/devtools): Publish pipeline added by @StyleT in #5924
- fix(@lexical/utils): fix #5918 by re-exporting shared/* constants with explicit types by @etrepum in #5920
- docs: generate packages sidebar from filesystem & group @lexical/react by @etrepum in #5931
- feat(@lexical/devtools): Added styling to devtools panel (#5925) by @StyleT in #5929
- Fix bug with block decorator nodes erroring on indent by @thegreatercurve in #5923
- Maintain text decoration styles on paste by @Shubhankerism in #5938
- fix build-release regression introduced in #5920 by @etrepum in #5936
- Add support for PowerShell Syntax Highlighting by @hanselabreu in #5909
- Fix selecting table selects an image after by @KatsiarynaDzibrova in #5917
- Preserve selection in tables with open typeahead menu on vertical arrow key press by @serey-roth in #5820
- feat(@lexical/devtools): Added interactive editor picker by @StyleT in #5926
- fix(@lexical/devtools): Misc fixes before first public release by @StyleT in #5942
- chore(@lexical/history): Remove redundant register call by @2wheeh in #5932
- add flow types for LexicalEditorRefPlugin by @acywatson in #5939
- fix: markdown import code block with prefix by @samuelint in #5780
- Collapsible Section Fixes by @ivailop7 in #5935
- fix(@lexical/devtools): Fix of the edge cases with restricted pages in Edge/FF by @StyleT in #5945
- Refactor AutoCompleteNode: Add comment and move styling to theme. fixes(#5943) by @mrAJAY1 in #5944
- Revert "Fix #5720 update the resolvedOffset correctly on image selection and drag" by @thegreatercurve in #5952
- Fix insertText outdated selection after node replacement by @zurfyx in #5954
- Fix failing insertNodes when selection is null by @zurfyx in #5956
- Revert "Revert "Fix #5720 update the resolvedOffset correctly on imag… …e selection and drag" (#5952)" by @zurfyx in #5955
- Fix insertText with element selection by @zurfyx in #5959
- Fix TableCell child nodes on paste by @Shubhankerism in #5951
- Refactor table resizer rendering logic by @AlexanderReznik in #5957
- Refactor build scripts and npm package process by @etrepum in #5876
- fix: use runner.arch in cache keys for github workflows by @etrepum in #5971
- Fixed the issue of playground crashing when the selected node contain… by @i-tengfei in #5960
- feat(@lexical/website): Packages documentation automatic generation by @etrepum in #5965
- Fix check for menu cannot fit on top by @JingkangZhang in #5743
- fix(@lexical/devtools): Fixed permissions for Edge and improved devtools tab layout by @StyleT in #5972
- fix(@lexical/devtools): Fixed publish pipeline by @StyleT in #5973
- Documentation: add PR template by @potatowagon in #5851
- refactor: cleanup unused react imports in tests files by @potatowagon in #5983
- Fix #5738 wrong selection on mouse click by @Sahejkm in #5969
- [lexical-playground] Bug Fix: skip auto-scrolling on table resize by @KatsiarynaDzibrova in #5986
- [TreeView] Minor enhancement: Add option to obfuscate text in the TreeView plugin by @Sahejkm in #5990
- fix(build): fix build-www rewriteImports to always rewrite flow modules by @etrepum in #5995
- add flow annotations by @acywatson in #5997
- add flow for devtools by @acywatson in #5998
- Fix table of contents for headings in tables and collapsible sections by @KatsiarynaDzibrova in #5946
- Fix add root element count by @zurfyx in #6002
- Root element count invariant & test by @zurfyx in #6003
- fix(build): clean up of build-www rewriteImports (follow-up to #5995) by @etrepum in #5999
- Fix: #5976 Passing an empty ParagraphNode to $dfs incorrectly returns content from subsequent paragraphs by @matsuyama-k1 in #5977
- [@lexical/website] Documentation: Added FAQ page around Lexical collaborative mode by @StyleT in #5993
- [lexical-website] Bug Fix: add allow-popups-to-escape-sandbox to iframe sandbox flags by @etrepum in #5988
- fix: allow tsc to typecheck tests, fix type issues in those tests by @etrepum in #5982
- [lexical-html] Feature: Support copy pasting block and inline nodes properly by @potatowagon in #5857
- [lexical-utils] ci: fix typing to fix integrity test by @potatowagon in #6019
- [build] Chore: Upgrade rollup and vite to latest versions by @etrepum in #6018
- [playground] Bug Fix: change default dev port to 3000 by @etrepum in #6026
- [CI] Refactor: clean up github workflows for cache correctness by @etrepum in #6029
- feat(@lexical/eslint-plugin): new package with eslint rules for lexical by @etrepum in #5908
- CharacterLimit prefer replace over insertBefore by @zurfyx in #6032
- Dev warning for failed DOM selection by @zurfyx in #6033
- [build] Bug Fix: ensure unique artifact name for e2e tests by @etrepum in #6035
- Add flow declarations in LexicalDevtoolsCore.js.flow by @Sahejkm in #6037
- [lexical-plaintext] Feature: add escape key handler by @jeffreyclu in #5991
- Fix font size update in table selection by @Shubhankerism in #6046
- Fix #5703 Infinite loop on hashtag transform by @Sahejkm in #6045
- [@lexical/devtools] Bug Fix: Fixed NPM "build:zip" command for Chrome and added build/dev steps for Safari by @StyleT in #6052
- [lexical-playground][lexical-text] Bug Fix: handling hashtag following multiple invalid matches by @2wheeh in #6053
- [lexical-table][lexical-playground] Bug Fix: Table selection stuck by @AlexanderReznik in #6049
- Revert #6053 first till proper fix is shipped in #6056 by @Sahejkm in #6058
- [Lexical] Update outdated flow file for LexicalMarkdown by @Sahejkm in #6057
- Fix autolink styles on creation by @Shubhankerism in #6069
- [Leixcal][Hashtag] Fix prevSibling not getting updated after replacement of match as followup #6053 by @Sahejkm in #6067
- Revert importDOM changes from #5951 by @Shubhankerism in #6060
- Fix #6051 Deprecate keycode to code by @Sahejkm in #6054
- [lexical-text] Test for handling multiple matches on hashtags by @2wheeh in #6056
- [lexical-yjs] Bug fix: Fix cursor position after undo in collab mode by @KatsiarynaDzibrova in #6070
- [*] Chore: Fix all new lint warnings, plus manual exports clean-up by @etrepum in #5979
- [build] Refactor: move error-codes generation to existing babel plugin by @etrepum in #6005
- [examples/react-rich-collab] Feature: Added collaboration focused example by @StyleT in #6043
- [lexical-link][lexical-react] Chore: Fix deprecated usage of toggleLink with $toggleLink by @etrepum in #6081
New Contributors
- @KatsiarynaDzibrova made their first contribution in #5824
- @hanselabreu made their first contribution in #5909
- @samuelint made their first contribution in #5780
- @i-tengfei made their first contribution in #5960
- @JingkangZhang made their first contribution in #5743
- @jeffreyclu made their first contribution in #5991
Full Changelog: v0.14.5...v0.15.0