Skip to content

Releases: quilljs/quill

Version 2.0.0

17 Apr 00:45
Compare
Choose a tag to compare

We are thrilled to announce the release of Quill 2.0! Please check out the announcement post.

Major Improvements

  • Quill is now a valid ESM package for better ecosystem (e.g. bundlers) and tree-shaking support
  • Nested Quill support #3590
  • Improved IME and spell corrector support #3807
  • Semantic cleanups for TEXT_CHANGE event #3778
  • History: Record selection in history module #3823
  • Auto detect scrolling container #3840
  • Clipboard: Improve support for pasting from Google Docs and Microsoft Word

Performance Improvements

Quill 2.0 includes many performance optimizations, the most important of which is the improved rendering speed for large content.

  • Improve inserting performance #3815
  • Avoid fetching selections when possible #3538
  • No need to setContents when container is empty #3539

Code Modernization

  • Migrated to TypeScript
  • Provided official TypeScript declarations
  • Migrated to Vitest for unit testing
  • Migrated to Playwright for E2E testing
  • Migrated website to Gatsby

All Changes

Read more

Version 2.0.0-rc.5

04 Apr 13:36
Compare
Choose a tag to compare
Version 2.0.0-rc.5 Pre-release
Pre-release
  • Clipboard Add support for Quill v1 list attributes
  • Fix overload declarations for quill.formatText() and other methods
  • Expose Bounds type for getBounds()
  • Expose Range type
  • Allow ref for insertBefore to be null

Version 2.0.0-rc.4

24 Mar 04:43
Compare
Choose a tag to compare
Version 2.0.0-rc.4 Pre-release
Pre-release
  • Include source maps for Parchment
  • Clipboard Support pasting links copied from iOS share sheets
  • Fix config parsing where undefined values were kept
  • Expose types for Quill options
  • Remove empty .css.js files generated by bundlers

Version 2.0.0-rc.3

16 Mar 02:46
Compare
Choose a tag to compare
Version 2.0.0-rc.3 Pre-release
Pre-release
  • Fix Quill#getSemanticHTML() for list items
  • Remove unnecessary Firefox workaround
  • Clipboard Fix redundant newlines when pasting from external sources
  • Add formats option for specifying allowed formats

Version 2.0.0-rc.2

15 Feb 08:05
Compare
Choose a tag to compare
Version 2.0.0-rc.2 Pre-release
Pre-release
  • Fix toolbar button state not updated in some cases
  • Narrower BubbleTheme.tooltip type
  • Fix Selection#getBounds() when starting range at end of text node
  • Improve compatibility with esbuild

Version 2.0.0-rc.1

12 Feb 04:37
Compare
Choose a tag to compare
Version 2.0.0-rc.1 Pre-release
Pre-release
  • Remove unnecessary lodash usages.

Version 2.0.0-rc.0

03 Feb 06:08
Compare
Choose a tag to compare
Version 2.0.0-rc.0 Pre-release
Pre-release
  • Clipboard Convert newlines between inline elements to a space.
  • Clipboard Avoid generating unsupported formats on paste.
  • Clipboard Improve support for pasting from Google Docs and Microsoft Word.
  • Clipboard Ignore whitespace between pasted empty paragraphs.
  • Syntax Support highlight.js v10 and v11.

Version 2.0.0-beta.2

30 Jan 10:38
Compare
Choose a tag to compare
Version 2.0.0-beta.2 Pre-release
Pre-release
  • Fix IME not working correctly in Safari.
  • Clipboard Support paste as plain text.
  • Fix Quill.getText() not respecting length parameter.
  • History Fix redo shortcut not working on Linux and Windows.

Version 2.0.0-beta.1

21 Jan 14:50
Compare
Choose a tag to compare
Version 2.0.0-beta.1 Pre-release
Pre-release
  • Fix syntax label from "Javascript" to "JavaScript".
  • Fix typing errors for emitter.
  • Inline SVG images for easier bundler setup.
  • Improve typing for Registry.

Version 2.0.0-beta.0

08 Dec 02:05
Compare
Choose a tag to compare
Version 2.0.0-beta.0 Pre-release
Pre-release

In the upcoming 2.0 release, Quill has been significantly modernized. Leveraging the latest browser-supported APIs, Quill now delivers a more efficient and reliable editing experience.

Major Improvements

  • Nested Quill support #3590
  • Improved IME and spell corrector support #3807
  • Semantic cleanups for TEXT_CHANGE event #3778
  • History: Record selection in history module #3823
  • Auto detect scrolling container #3840

Performance Improvements

Quill 2.0 includes many performance optimizations, the most important of which is the improved rendering speed for large content.

  • Improve inserting performance #3815
  • Avoid fetching selections when possible #3538
  • No need to setContents when container is empty #3539

Code Modernization

  • Migrated to TypeScript
  • Provided official TypeScript declarations
  • Migrated to Vitest for unit testing
  • Migrated to Playwright for E2E testing
  • Migrated website to Gatsby

All Changes

  • Fix UI node interactions with line-level navigation shortcuts #3898
  • Use <strike> instead of <s> for Strike format Commit
  • Keyboard: Backspace will keep the format when previous line is empty #3013
  • Keyboard: Discontinue inline formats on enter #3428
  • Fix length mismatch when copying code #3028
  • Keep list numbers continuous when separated by certain elements #3086
  • Header/paragraph doesn't reset list numbering in Firefox #3272
  • Fix Quill#setContents() on block embed ending Commit
  • Track all implicit newline indexes and shift for delete Commit
  • Clipboard: Fix pasting in checklist does not preserve indentation #3064
  • Clipboard: Prefer file over html when uploading Commit
  • Clipboard: Keep newlines in pre tag #3687
  • Clipboard: Cut across lines shouldn't affect the formatting of the line above #3286
  • getLeaf() should ignore non-leaf blots #3489
  • Selection: Fix getBounds of empty text nodes #3491
  • Keep cursor unlinked to avoid elements being pushed down inside #3534
  • Fix combineFormats with multiple values repeated #3336
  • Fix selection-change not firing on DOM mutations #3591
  • Improve Tab handling in code block #3593
  • Add SMS to link protocol whitelist #2851
  • Fix embed inherits formats unexpectedly #3783
  • Fix HTML and Delta not matching #3784
  • Fix inline embed insertions with applyDelta() #3793
  • Fix inserting newlines into formatted text #3582
  • History: Pass source for history actions #3514
  • History: Handle native undo/redo #3115
  • Fix block embed attributor errors #3825
  • Clipboard: getHTML() should include outer tag when range is entire line #3850

New Contributors

Full Changelog: v1.3.6...v2.0.0-beta.0