What's Changed
- Fix sending of emptystring class for Prosemirror decoration by @ascott18 in #1004
- build(deps): bump actions/cache from v2.1.4 to v2.1.5 by @dependabot in #1024
- build(deps): bump actions/upload-artifact from v2.2.2 to v2.2.3 by @dependabot in #1025
- Add install instructions by @MarcelloTheArcane in #1196
- Fix a small typo by @swanson in #1211
- Add missing word by @swanson in #1216
- Clarify table header documentation by @swanson in #1215
- Typo fix by @swanson in #1217
- Make Horizontal Rule compatible with Typography extension by @chrisarmstrong in #1241
- Fix returning true/false in can().chain().run() by @Markario in #1252
- [Docs] Improve example integration with Laravel Livewire by @iksaku in #1255
- feat: better types for Vue 2 by @zcuric in #1253
- Fix typo by @DannyFeliz in #1262
- HorizontalRule is included in defaultExtensions by @Duncank in #1267
- VueRenderer's ref is undefined when in production mode by @thechrisoshow in #1271
- feat: expose node helpers by @zcuric in #1278
- New Feature: Generate JSON from HTML by @hanspagel in #1273
- feat: export mark helpers by @zcuric in #1301
- When text align is default, don't add a style attribute by @robguthrie in #1251
- docs: complete list of extensions with changed name by @Deckluhm in #1305
- fix(core): Increment
i
indefaultBlockAt
by @andreavaccari in #1315 - Fix text-align extension url by @ralbear in #1325
- docs: fix typo by @Priestch in #1339
- Allow passing of DependencyList to useEditor by @YousefED in #1376
- a small clerical error? by @akirarika in #1380
- Make HTML in docs valid by @MoPaMo in #1381
- Wording improvement by @jonathanmach in #1389
- Prevent tiptap from creating duplicate style tags when injecting css by @mmachatschek in #1399
- Adding type definition for result and removing the ts-nocheck by @sereneinserenade in #1419
- Fix name of FloatingMenu by @shadow-light in #1429
- New extensions: add subscript and superscript extensions (including docs and tests) by @hanspagel in #1404
- Exclude superscript from subscript, and vice versa. by @BrianHung in #1436
- Add keyboard shortcuts to toggle superscript and subscript marks. by @BrianHung in #1437
- Make drop cursor default to regular caret color by @shadow-light in #1444
- use forwardRef for react wrappers by @YousefED in #1452
- Mention: Add text attribute by @tomhrtly in #1322
- Fix removal of textStyle mark when any style resets by @bttger in #1465
- Fix parsing of mention nodes by @shadow-light in #1471
- Correct default for dropcursor color in docs by @shadow-light in #1479
- Improve gapcursor docs by @carlobeltrame in #1497
- VueRenderer documentation with version 3 by @Tazi0 in #1491
- Update introduction.md by @phillduffy in #1509
- Link to contribution guidelines in CONTRIBUTING.md by @robertvanhoesel in #1541
- build(deps): bump actions/setup-node from 2.1.5 to 2.2.0 by @dependabot in #1544
- export createTable by @YousefED in #1469
- doc update: onSelection โ onSelectionUpdate by @forresto in #1555
- update task-item.ts nodeview to update data-checked by @BrianHung in #1567
- Fix typo by @JavierMartinz in #1587
- Replace node-sass with dart sass and fix deprecation warning by @mmachatschek in #1590
- Readd russian history shortcuts by @mmachatschek in #1589
- Fix custom start for ordered lists by @mmachatschek in #1594
- Doc fix: Remove braces from isEmpty & isEditable by @WilliamIPark in #1599
- Export NodeViewRendererOptions by @sibiraj-s in #1607
- Update hostic-dom to fix style attributes by @sibiraj-s in #1618
- fix: export text align extension options by @iamursky in #1592
- fix: export starter kit extension options by @iamursky in #1593
- Adding types to Linter and making the structure a bit easier by @sereneinserenade in #1492
- Additional input rules for typography by @arthurmcgregor in #1624
- chore: add repository for all packages.json by @iamandrewluca in #1628
- Fix typo by @ValentaTomas in #1634
- Change TextAlignOptions to interface (not type) by @arthurmcgregor in #1623
- Allow a rule to be skipped from the getAttributes callback by @joevallender in #1625
- Fix multi character suggest by @flaviouk in #1620
- Provide more context to update function to enable fewer re-renders by @philippkuehn in #1648
- Examples: Syntax highlighting for React by @hanspagel in #1583
- Apply the correct regex in markPasteRule by @joevallender in #1671
- Fix typo by @Spone in #1693
- build(deps): bump actions/setup-node from 2.2.0 to 2.4.0 by @dependabot in #1697
- fix: use correct state when doc changed externally by @dkrym in #1646
- โจ Add CreateNodeFromContentOptions to insertContent by @castroCrea in #1678
- Use correct reference for options.editorProps by @robertvanhoesel in #1540
- โจ Add typography trademark by @castroCrea in #1699
- Menu improvements by @philippkuehn in #1714
- Docs: Disable history demo buttons when commands are not available by @domnantas in #1721
- fix some react focus issues by @philippkuehn in #1724
- Update alpine docs by @sibiraj-s in #1733
- Packages: Add a new
Color
extension to set the text color by @hanspagel in #1744 - docs: add color picker to color extension demo by @domnantas in #1790
- Fix Editor Reactivity by @nVitius in #1804
- Add missing comma in example by @carlobeltrame in #1849
- Allow triggering suggestions without prefix space by @jkosir in #1826
- fix: change
this.value
tovalue
in the vue examples with v-model by @MiloLug in #1813 - Fix: Donโt initialize tippy on requestAnimationFrame to avoid race conditions by @enriquecastl in #1820
- โจ Follow Ref on ForwardRef component in reactRenderer by @castroCrea in #1690
- feat: add extendEmptyMarkRange option to mark commands by @philippkuehn in #1859
- Include children in placeholder plugin by @nickdbush in #1416
- Horizontal rule demo: add selected style by @cadars in #1848
- feat: add getText() and generateText() methods (fix #1428) by @philippkuehn in #1875
- Fix usage example of CollaborationCursor by @carlobeltrame in #1911
- Add type for async items on suggestions (fix TS strict types complain) by @d8vjork in #1912
- Fix: code-block-lowlight child extensions do not highlight code by @enriquecastl in #1917
- Use pasteRegex in addPasteRules by @jvissers in #1922
- Docs: Clear up Prosemirror EditorProps usage by @domnantas in #1918
- Add enableCoreExtensions flag by @flaviouk in #1923
- Docs: Update command names in upgrade guide by @jakedolan in #1906
- Fix: nodeInputRule() support for group match by @nokola in #1574
- Fix "destory" method in view plugins. by @KaneCohen in #1882
- Fix 'Edit on Github' link url for examples in docs by @mmachatschek in #1929
- New example for custom documents (to force a heading on the top) by @hanspagel in #1948
- Added better types for event emitter by @HuiiBuh in #1959
- Use ref to move contentDOM by @philippkuehn in #1960
- fix: compatibility with lowlight v2 by @fengzilong in #1939
- build(deps): bump actions/setup-node from 2.4.0 to 2.4.1 by @dependabot in #1978
- Fix typo in hard-break.md by @davidkrijgsman in #1988
- Added Next.js installation guide & express setup for React by @alb in #1984
- Fixed typo in React installation guide by @alb in #1989
- docs: update styling by @hzpeng57 in #1998
- React collaboration demo by @svenadlung in #1991
- Integrate input rules and paste rules into the core by @philippkuehn in #1997
- Changing use of InputRule to textInputRule for Savvy example by @jakedolan in #2007
- docs: correct the wording by @mittalyashu in #2012
- Fix #2016 Image input rule by @nokola in #2020
- Improve
ReactRenderer
types by @rfgamaral in #2011 - Add
editor
dependency when registeringBubbleMenuPlugin
by @ValentaTomas in #2018 - Allow to use commands within InputRule and PasteRule by @philippkuehn in #2035
- build(deps): bump actions/checkout from 2.3.4 to 2.3.5 by @dependabot in #2051
- Add extension storage by @philippkuehn in #2069
- Separate drags from drops in stopEvent by @thatsjonsense in #2070
- Add editor to items prop in suggestion plugin by @philippkuehn in #2082
- Check node type above custom update fn by @thatsjonsense in #2081
- Add savvy example tests by @donovanglover in #2043
- Add unit tests for demos/src/Examples/Minimal/Vue by @AlexandruValeanu in #2047
- Added tests for Menus example by @alb in #2052
- Docs: Fixing onUpdate example by @chris-sev in #2084
- Fix menu example in doc by @phoenixgao in #2089
- Replace
defaultOptions
withaddOptions
by @philippkuehn in #2088 - docs: fix typo by @Deckluhm in #2093
- Use the new storage feature for the
CollaborationCursor
extension by @hanspagel in #2096 - Improve behavior when using insertContent by @philippkuehn in #2147
- build(deps): bump actions/checkout from 2.3.5 to 2.4.0 by @dependabot in #2145
- Switch from hostic dom to zeed dom by @philippkuehn in #2151
- fix typo in events.md by @millerrafi in #2152
- update getJSON return type to JSONContent by @lecstor in #2153
- Update image.md by @georgemandis in #2154
- update zeed dom by @floriankrueger in #2155
- Floating menu - remove composition check by @dkrym in #2137
- Remove console.log statement from codeblock-lowlight-plugin file by @enriquecastl in #2168
- Ignore iOS mutations when unfocused by @thatsjonsense in #2170
- feat: Allow array of extensions for
enableInputRules
andenablePasteRules
by @aguingand in #2119 - Export type ColorOptions by @apaar97 in #2180
- Split vue and react variant for interactivity demo by @svenadlung in #2186
- Add
setEditable
to the Editor documentation by @floriankrueger in #2199 - Bump actions/cache from 2.1.5 to 2.1.7 by @dependabot in #2207
- Bump actions/setup-node from 2.4.1 to 2.5.0 by @dependabot in #2208
- feat(ReactNodeViewRenderer): Add
as
option and pass through to ReactRenderer by @jessicalc in #2213 - Add support for autolink by @philippkuehn in #2226
- initialize autofocus selection in
createView
by @BrianHung in #2212 - Use named exports instead of default exports by @philippkuehn in #2238
- Svelte Example: remove wrong
type="context"
tag by @duruer in #2240 - A brand new
CharacterCount
extension by @philippkuehn in #2256 - join lists on toggleList by @philippkuehn in #2260
- build(deps): bump actions/upload-artifact from 2.2.3 to 2.3.0 by @dependabot in #2269
- fix: show FloatingMenu by default only if focused by @jaulz in #2275
- Improve backspace handling by @philippkuehn in #2284
- Make sure editor is available on first render by @ryanto in #2282
- fix typo in floating menu docs by @nucleartux in #2290
- Add setup for plain js demos by @philippkuehn in #2288
- build(deps): bump actions/upload-artifact from 2.3.0 to 2.3.1 by @dependabot in #2300
- Remove
element.current
fromuseEffect
inBubbleMenu
andFloatingMenu
by @ValentaTomas in #2297 - Using vue 2 and 3 when passing props to VueRenderer in Mention plugin by @domstrueboy in #2319
- Fix typo in readme by @stijndcl in #2333
- Fix typos in typescript.md by @hatefrad in #2339
- typo in docs/api/editor.md by @milahu in #2338
- Added setup script syntax to Vue 3 install docs by @NuroDev in #2324
- build(deps): bump actions/setup-node from 2.5.0 to 2.5.1 by @dependabot in #2343
- change reactrenderer component type definition by @lukesmurray in #2327
- Export type FontFamilyOptions by @apaar97 in #2345
- Update vue3.md Grammar Error In Docs by @Aiyush-G in #2349
- Fix typo in contributing.md by @webri in #2352
- Vue3 CLI doesn't have "npm run dev" by @Aiyush-G in #2350
- fix: export type
Level
for external use by @webri in #2354 - add way to cancel inputrules and pasterules by @philippkuehn in #2368
- Mark
@tiptap/react
and@tiptap/core
as side effect free by @dcastil in #2361 - Nuxt specific corrections by @gsqrt2 in #2410
- build(deps): bump nanoid from 3.1.30 to 3.2.0 by @dependabot in #2419
- build(deps): bump node-fetch from 2.6.6 to 2.6.7 by @dependabot in #2424
- fix: use toggleHeader from prosemirror-tables by @jpobley in #2412
- docs(nodes/image/react): remove v-if by @strdr4605 in #2461
- Fix: Typo in Focus Command Documentation of Editor by @AngadSethi in #2476
- expose hasAnchor to custom placeholder function by @YousefED in #2470
- Add key bindings for uppercase letters for bold, italic and underline by @mejo- in #2478
- Allow individual Typography rules to be disabled by @rfgamaral in #2449
- Docs/toc undo fix by @codemzy in #2484
- build(deps): bump nanoid from 3.1.30 to 3.2.0 in /demos by @dependabot in #2480
- chore: added visual studio code debugging launch options by @bdbch in #2695
- fix: don't override behaviour of Home / End in pc keymap by @scottsidwell in #2691
- fix: Mark the bubble/floating menu extensions as side effect free by @rfgamaral in #2677
- build(deps-dev): bump minimist from 1.2.5 to 1.2.6 by @dependabot in #2667
- build(deps): bump minimist from 1.2.5 to 1.2.6 in /demos by @dependabot in #2672
- fix: prevent suggestions from being active when editor is readonly by @scottsidwell in #2692
- fix: Allow tippyOptions.getReferenceClientRect in bubble menu to be overridden by @fleon in #2668
- fix: allow [] as a prefix for task items by @bdbch in #2698
- fix: improve Vue nodeViewProps typing by @DanSnow in #2681
- fix: remove extension-text-style from character-cout peer dependencies by @pradel in #2696
- fix(extension-link): prevent parsing
javascript:
pseudo-protocol by @phenax in #2646 - build(deps): bump actions/cache from 2.1.7 to 3.0.2 by @dependabot in #2701
- build(deps): bump actions/checkout from 2.4.0 to 3.0.0 by @dependabot in #2699
- build(deps): bump actions/upload-artifact from 2.3.1 to 3.0.0 by @dependabot in #2700
- build(deps): bump actions/setup-node from 2.5.1 to 3.1.1 by @dependabot in #2705
- Add support for React 18 by @dcastil in #2676
- fix broken GuideContent demos not rendering because of unexpected useโฆ by @bdbch in #2709
- Docs: fix file names in PHP installation by @aguingand in #2644
- Add support for CSS Modules by @XAHTEP26 in #2723
- Use vitejs/plugin-react and include react dependencies by @svenadlung in #2732
- build(deps-dev): bump minimist from 1.2.5 to 1.2.6 by @dependabot in #2725
- build(deps): bump actions/checkout from 3.0.0 to 3.0.2 by @dependabot in #2727
- feat: Add
onBeforeStart
andonBeforeUpdate
handlers to the render function by @rfgamaral in #2628 - feat: Add a generic type for suggestion items by @rfgamaral in #2610
- Reduce bundle size of @tiptap/extension-table package by @enriquecastl in #2622
- Update Suggestion package.json by @dphuang2 in #2739
- fix: Support inline nodes with content in @tiptap/suggestion by @thatsjonsense in #2648
- Allow class attribute through setLink() by @Ken-vdE in #2758
- update people by @patrickbaber in #2776
- fix: properly calculate setDragImage position by @dilizarov in #2768
- Ensure VueNodeViewRenderer will use Editor's Global Vue Instance by @ralphschindler in #2604
- refactor(global): remove yarn in favor for npm by @bdbch in #2775
- add support for CSP nonces in createStyleTag by @fekle in #2601
- add validate option to link extension by @bdbch in #2781
- Cypress tests for examples by @bdbch in #2777
- build(deps): bump actions/setup-node from 3.1.1 to 3.2.0 by @dependabot in #2793
- fix: extendMarkRange doesn't work when cursor is at end of mark, despite isActive() returning true for that mark by @JDinABox in #2717
- Expose "range" to textSerializer. Used in "getTextBetween" by @panta82 in #2684
- Export
getTextSerializersFromSchema
helper, and fix typo in its name by @sjdemartini in #2750 - fix: disable broken tests for experiements with further todo message by @bdbch in #2808
- Add
className
option and pass through to ReactRenderer by @anton-liubushkin in #2794 - Fix InputRule regex matcher ignoring non-text leaflets in textBefore by @bdbch in #2807
- Add option to allow task items to be checkable (uncontrolled) by @kaspnilsson in #2474
- feat: Required attributes by @thatsjonsense in #2640
- Update team by @montapro in #2791
- fix: Only trigger image input rule at the start or with a preceding space by @rfgamaral in #2830
- In Vue 2 VueRenderer, only Vue.extend() non-VueConstructor arguments by @ralphschindler in #2824
- fix(suggestion): ๐ make clientrect prop optional by @bdbch in #2813
- build(deps): bump actions/cache from 3.0.2 to 3.0.3 by @dependabot in #2851
- Fixed(vue-2):
Avoid mutating a prop directly
error message to reproduce by @HondryTravis in #2834 - Add support for custom protocols in extension-link by @shaunabanana in #2832
- fix(textStyle): Null-safe parseHTML getting no color/fontFamily from HTMLElement styles by @d8vjork in #2825
- build(deps): bump actions/upload-artifact from 3.0.0 to 3.1.0 by @dependabot in #2820
- Declare lowlight as a peerDependency in
@tiptap/extension-code-block-lowlight
by @enriquecastl in #2625 - add precommit hook for linting and automatic eslint fixes + update eslint packages by @bdbch in #2862
- Adding missing extensions to docs in https://tiptap.dev/api/extensions by @Lior539 in #2856
- docs(docs): add missing documentation for commands by @bdbch in #2861
- refactor: use index files for imports to simplify the export flow by @bdbch in #2870
- feat(extension/youtube): โจ new youtube embed extension by @bdbch in #2814
- build(deps): bump actions/cache from 3.0.3 to 3.0.4 by @dependabot in #2877
- build(deps): bump actions/setup-node from 3.2.0 to 3.3.0 by @dependabot in #2878
- chore: migrate to new versions of prosemirror packages by @bdbch in #2854
- docs: improve docs for youtube extension by @svenadlung in #2902
- Allow setting
whiteSpace
style forNodeViewWrapper
&NodeViewContent
by @EvitanRelta in #2884 - refactor(maintainment): set dependency versions for prosemirror and yโฆ by @bdbch in #2904
- feat: Allow multiple prefix characters to trigger a suggestion by @rfgamaral in #2896
- fix: editor don't has contentComponent attribute when suggestion onUpโฆ by @Young6118 in #2916
- Fix state update after component unmounted by @SavKS in #2857
- docs: fix livewire attribute by @ccchapman in #2928
- build(deps): bump parse-url from 6.0.0 to 6.0.2 by @dependabot in #2961
- fix(core): only respect text of node before current position (#2937) by @svenadlung in #2941
- chore: lint only staged files by @ahhshm in #2957
- fix(core): dont use selection for setContent replacement by @bdbch in #2934
- refactor: remove duplicated function by @ahhshm in #2956
- docs(figure): pass an object to
nodeInputRule
by @ahhshm in #2954 - docs: update alpine installation by @patrickbaber in #3081
- docs(extensions): mention community extensions and discussion thread by @sereneinserenade in #2991
- build(deps-dev): bump svelte from 3.48.0 to 3.49.0 in /demos by @dependabot in #2992
- build(deps-dev): bump svelte from 3.48.0 to 3.49.0 by @dependabot in #2993
- fix(core): isNodeSelection, isTextSelection not always false by @kivikakk in #3089
- build(deps): bump actions/setup-node from 3.3.0 to 3.4.1 by @dependabot in #2998
- build(deps): bump terser from 5.14.1 to 5.14.2 by @dependabot in #3009
- build(deps): bump actions/cache from 3.0.4 to 3.0.7 by @dependabot in #3087
- Fix pasteRulesPlugin always adding one extra character to text range by @Billiam in #2968
- fix: let StarterKit be imported as common js module via named import by @sipec in #2967
- fix(core): createCan command props shouldn't try dispatch (#3025) by @kivikakk in #3026
- build(deps): bump actions/cache from 3.0.7 to 3.0.8 by @dependabot in #3112
- fix(core): setNodeSelection should not clamp pos by Selection.atStart/atEnd by @kivikakk in #3091
- Make Suggestion extension use view.dom instead of document by @Faleij in #3093
- fix(core): make setEditable trigger onUpdate function by @bdbch in #2935
- fix: fix React Node View render problem in React 18 by @Darmody in #2985
- feature(core): add exit handling for marks by @bdbch in #2925
- build(deps-dev): bump vite from 2.9.12 to 2.9.13 in /demos by @dependabot in #3141
- build(deps-dev): bump vite from 2.9.12 to 2.9.13 by @dependabot in #3145
- fix: vue inject grammar warning by @zhxqc in #3144
- fix(core): make setEditable trigger all 'update' listeners by @Rhys-T in #3140
- fix: Typo by @NagariaHussain in #3132
- docs: fix naming by @masl in #3151
- Include bubble menu element when checking if the editor view still has focus by @StefKors in #3150
- Fix typo in docs by @carlobeltrame in #3162
- fix(extension-code-block-lowlight): Bump lowlight to 2.7.0, remove outdated @types by @tarngerine in #3002
- fix(core): insert PasteRule Node at matched position (#2942) by @edlb in #2943
- add-empty-editor-class-to-root-div by @BrianHung in #2665
- build(deps): bump parse-path from 4.0.4 to 5.0.0 by @dependabot in #3178
- fix: move React
flushSync
to microtask by @sampi in #3188 - Fix bubble menu and floating menu being available when editor is not editable by @bdbch in #3195
- feat: Add alias condition to code-block-lowlight by @dngwoodo in #3155
- feat(extension-typography): add servicemark input rule by @svenadlung in #3220
- fix(types): fix link and table type errors by @johnfraney in #3208
- test: fix failing test by @svenadlung in #3230
- feat(extension-link): Change autolink to only apply after breaking a word by @C-Hess in #3232
- chore(maintainment): ๐ update prosemirror packages by @bdbch in #3237
- fix(core): Can() does not work for setting marks by @C-Hess in #3223
- Ensure text blocks exist before referencing them by @ScopeyNZ in #3251
- fix(core): InputRules does not work for ranges containing multiple text nodes by @hamflx in #3205
- fix(core) - support attributes being null/undefined by @albertogiunta in #3245
- fix: set default allowedPrefixes null by @Matrixbirds in #3239
- fix(extension/link): fix last word value being undefined by @bdbch in #3258
- build(deps): bump d3-color from 3.0.1 to 3.1.0 in /demos by @dependabot in #3260
- docs: link YouTube node docs to proper GitHub url by @nielslanting in #3283
- fix: typo in docs by @danielyuenhx in #3265
- Fixed dragged text not being deleted after drop on another editor by @LuchoCateura in #3279
- Fixed using both color and highlight together by @nkonev in #3311
- Cleanup linkifyjs when the editor is destroyed by @educastellano in #3316
- Feature/youtube parameters by @LuchoCateura in #3307
- Fix installation and examples link by @catalinmiron in #3298
- fix(docs): typo by @Calvein in #3362
- fix(extension/placeholder): Resolve placeholder performance issues by @C-Hess in #3361
- build(deps): bump parse-url from 7.0.2 to 8.1.0 by @dependabot in #3384
- refactor(extension/bubble-menu): add debounce to bubble menu updates by @bdbch in #3385
- build(deps): bump actions/setup-node from 3.4.1 to 3.5.1 by @dependabot in #3318
- docs: Fix typos in CHANGELOG.md by @rvrvrv in #3328
- build(deps): bump actions/cache from 3.0.8 to 3.0.11 by @dependabot in #3317
- fix: remove blur event listener from tippy element (#3365) by @MihirGH in #3366
- fixes typo in suggestion.ts by @alejandrogarciasalas in #3386
- docs(svelte): fix link to get started with svelte by @taismassaro in #3396
- build(deps): bump loader-utils from 2.0.2 to 2.0.3 by @dependabot in #3395
- Update jobs.md by @montapro in #3432
- extension/table: Fix prosemirror-tables dependency not using a correct namespace by @bdbch in #3448
- typo: custom-extensions.md completely by @williamsk91 in #3447
- Fix #3435 - CommonJS and ESM loading confusion by @tomi-bigpi in #3436
- build(deps): bump loader-utils from 2.0.3 to 2.0.4 by @dependabot in #3426
- Fix cursor not following to new node when using a react node view by @ruipserra in #3331
- fix(core): implement deleteCurrentNode command & fix node joining on Delete key by @bdbch in #3192
- fix(link): allow to unset target attribute by @dargmuesli in #3425
- feat(commands): add joinUp and joinDown command & refactor join command code by @bdbch in #3455
- docs: rotate demo rooms by @patrickbaber in #3475
- Draft: Moves all prosemirror deps to peerDependencies & devDependencies by @janthurau in #3487
- fix(extension-bubble-menu): don't debounce without valid selection by @svenadlung in #3501
- refactor(extension-youtube): rename utility function name by @svenadlung in #3498
- Check if url is valid before creating YouTube player by @umgustavo in #3484
- Fix docs menus.md missing word by @kandros in #3457
- build(deps): bump minimatch from 3.0.4 to 3.1.2 in /demos by @dependabot in #3489
- Fix: custom text serializers should override text serializers defined in the schema by @tovaschreier in #3546
- Update sink-list-item.md by @vuau in #3629
- ๐งน Allow
editor.setEditable
to omit updates by @ZaymonFC in #3301 - Change Build Process to Lerna + tsup & prepare for prosemirror-meta package by @bdbch in #3555
- fix(typo): typescript.md by @N0N1m3 in #3657
- Update schema.md by @matrei in #3645
- New Feature: Prosemirror Meta Package by @bdbch in #3556
- Added CSS Required for Setup by @james-william-r in #3711
- Update installation guides by @svenadlung in #3698
- Make y-prosemirror a peer dependency (extension-collaboration) by @svenadlung in #3697
- Remove lodash types, replace pm deps (extension-bubble-menu) by @svenadlung in #3696
- Remove lodash dependencies in extension-floating-menu by @svenadlung in #3695
- build(deps): bump cypress-io/github-action from 4.2.0 to 5.0.8 by @dependabot in #3707
- build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 by @dependabot in #3687
- Move back from tsup/esbuild to rollup by @bdbch in #3720
- fix: Draggable nodes should respect drag handles by @matthewmullin01 in #3677
- build(deps): bump actions/cache from 3.0.11 to 3.2.5 by @dependabot in #3741
- build(deps): bump act10ns/slack from 1 to 2 by @dependabot in #3404
- build(deps): bump json5 from 1.0.1 to 1.0.2 by @dependabot in #3605
- build(deps): bump json5 from 2.2.1 to 2.2.3 in /demos by @dependabot in #3607
- build(deps): bump actions/checkout from 3.0.2 to 3.3.0 by @dependabot in #3609
- build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.2 by @dependabot in #3610
- build(deps): bump actions/setup-node from 3.5.1 to 3.6.0 by @dependabot in #3613
- Update regex to exclude channel URL unfurling by @JustMaier in #3750
- Fix type for BubbleMenu prop pluginKey by @rumbcam in #3678
- Extend
nodePasteRule
find
type to most genericPasteRuleFinder
by @jiegillet in #3759 - fix(extension-link): Click handler opens selected link instead of clicked link by @jmtaber129 in #3732
- fix(typography): dont create fractions in the middle of a string by @bdbch in #3762
- Use Tailwind CDN direclty? by @RicoTrevisan in #3643
- fix: override schema text serializers if provided in getText options by @harrisonlo in #3672
- chore: add eslintcache by @Simon-He95 in #3525
- document removing or overriding link attributes by @epelc in #3576
- Add onFirstRender callback option by @Flamenco in #3600
- Add Plugin Key to placeholder component. by @tazirahmb in #3652
- Export
createNodeFromContent
and other missing helpers by @jacksleight in #3558 - fix: Queue flushSync call by @kylealwyn in #3533
- build(deps): bump cypress-io/github-action from 5.0.8 to 5.0.9 by @dependabot in #3766
- feat: #3540 Ability to preserve marks on lists by @gethari in #3541
- Move y-prosemirror to peer-deps by @svenadlung in #3763
- fix: #3773 - Array for content breaks editor by @gethari in #3786
- Docs Update for Installation instructions for PHP Livewire by @peterfox in #3618
- add optionalSlashSlash to protocol options by @taras-turchenko-moc in #3675
- fix(core): allow insertContentAt and insertContent text node arrays by @bdbch in #3790
- chore: allow new ReactComponentContent components to be created by @bdbch in #3782
- fix(react): reset initialized when editorcontent is unmounting by @bdbch in #3781
- docs: add extension cli note to contributing docs by @bdbch in #3793
- fix: update typings for node view decorations by @bdbch in #3783
- build(deps): bump actions/cache from 3.2.5 to 3.2.6 by @dependabot in #3795
- Fix destroyed view causing errors on dispatchTransaction by @bdbch in #3799
- Only allow left mouse button to open links by @thecodrr in #3777
- Optimize empty document detection in
documentClear
plugin by @thecodrr in #3778 - fix: use prose-base class for sm screens by @cstrnt in #3810
- Adds attributes to toggleList by @katerlouis in #3776
- fix(tests): add assertion for each valid/invalid link by @bdbch in #3815
- feat(react): allow html attrs in react renderer by @bdbch in #3812
- fix(react): allow updating event handlers on editor by @bdbch in #3811
- Improve Cypress Test runner performance with parallelization by @bdbch in #3817
- build(deps): bump cypress-io/github-action from 5.0.9 to 5.2.0 by @dependabot in #3835
- fix: Ordered list start support broke in #3541 by @gethari in #3833
- Refactor typings (extension-youtube) by @svenadlung in #3842
- build(deps): bump actions/checkout from 3.3.0 to 3.4.0 by @dependabot in #3864
- build(deps): bump cypress-io/github-action from 5.2.0 to 5.5.0 by @dependabot in #3863
- build(deps-dev): bump webpack from 5.73.0 to 5.76.0 by @dependabot in #3855
- Docs: consistent naming of Tiptap by @svenadlung in #3882
- [PROPOSAL] dynamic default attributes by @mylesj in #3379
- style(core): fix linting issues by @bdbch in #3884
- Handle NodeViews in BubbleMenu positioning by @bdbch in #3881
- chore: add Dev demo folder by @bdbch in #3887
- CI: Remove slack notifications by @svenadlung in #3885
- Docs: Update nodes and extensions lists by @svenadlung in #3886
- Docs: Remove pro extension callout from collab docs by @svenadlung in #3883
- Fixing reoccurring issue #3331 and improving related PR #3533 by @KentoMoriwaki in #3862
- Release Candidate Preparation by @bdbch in #3890
- chore: add new release and prerelease actions by @bdbch in #3836
- Updates @hocuspocus/provider, moves demo to TiptapCollab by @janthurau in #3895
- Merge pull request #3895 from ueberdosis/feature/ttCollabProvider by @janthurau in #3897
- Collaboration: Fix history after late-registering plugins by @svenadlung in #3901
- ci: remove slack notifications by @svenadlung in #3898
- build(deps): bump actions/checkout from 3.4.0 to 3.5.0 by @dependabot in #3889
- build(deps): bump cypress-io/github-action from 5.5.0 to 5.5.1 by @dependabot in #3888
- build(deps): bump actions/cache from 3.2.6 to 3.3.1 by @dependabot in #3846
- docs: prepare for stable release by @svenadlung in #3892
- New Issue & Discussion Templates by @bdbch in #3907
- feat(core): add editor to this context in schema functions by @bdbch in #3909
New Contributors
- @ascott18 made their first contribution in #1004
- @swanson made their first contribution in #1211
- @chrisarmstrong made their first contribution in #1241
- @Markario made their first contribution in #1252
- @iksaku made their first contribution in #1255
- @zcuric made their first contribution in #1253
- @DannyFeliz made their first contribution in #1262
- @Duncank made their first contribution in #1267
- @thechrisoshow made their first contribution in #1271
- @robguthrie made their first contribution in #1251
- @Deckluhm made their first contribution in #1305
- @andreavaccari made their first contribution in #1315
- @ralbear made their first contribution in #1325
- @YousefED made their first contribution in #1376
- @akirarika made their first contribution in #1380
- @MoPaMo made their first contribution in #1381
- @jonathanmach made their first contribution in #1389
- @mmachatschek made their first contribution in #1399
- @sereneinserenade made their first contribution in #1419
- @shadow-light made their first contribution in #1429
- @tomhrtly made their first contribution in #1322
- @bttger made their first contribution in #1465
- @carlobeltrame made their first contribution in #1497
- @Tazi0 made their first contribution in #1491
- @phillduffy made their first contribution in #1509
- @robertvanhoesel made their first contribution in #1541
- @forresto made their first contribution in #1555
- @JavierMartinz made their first contribution in #1587
- @WilliamIPark made their first contribution in #1599
- @sibiraj-s made their first contribution in #1607
- @iamursky made their first contribution in #1592
- @arthurmcgregor made their first contribution in #1624
- @iamandrewluca made their first contribution in #1628
- @ValentaTomas made their first contribution in #1634
- @joevallender made their first contribution in #1625
- @flaviouk made their first contribution in #1620
- @philippkuehn made their first contribution in #1648
- @Spone made their first contribution in #1693
- @dkrym made their first contribution in #1646
- @castroCrea made their first contribution in #1678
- @domnantas made their first contribution in #1721
- @nVitius made their first contribution in #1804
- @jkosir made their first contribution in #1826
- @MiloLug made their first contribution in #1813
- @enriquecastl made their first contribution in #1820
- @nickdbush made their first contribution in #1416
- @cadars made their first contribution in #1848
- @d8vjork made their first contribution in #1912
- @jvissers made their first contribution in #1922
- @jakedolan made their first contribution in #1906
- @nokola made their first contribution in #1574
- @KaneCohen made their first contribution in #1882
- @HuiiBuh made their first contribution in #1959
- @fengzilong made their first contribution in #1939
- @davidkrijgsman made their first contribution in #1988
- @alb made their first contribution in #1984
- @hzpeng57 made their first contribution in #1998
- @svenadlung made their first contribution in #1991
- @mittalyashu made their first contribution in #2012
- @rfgamaral made their first contribution in #2011
- @thatsjonsense made their first contribution in #2070
- @donovanglover made their first contribution in #2043
- @AlexandruValeanu made their first contribution in #2047
- @chris-sev made their first contribution in #2084
- @phoenixgao made their first contribution in #2089
- @millerrafi made their first contribution in #2152
- @lecstor made their first contribution in #2153
- @georgemandis made their first contribution in #2154
- @floriankrueger made their first contribution in #2155
- @aguingand made their first contribution in #2119
- @apaar97 made their first contribution in #2180
- @jessicalc made their first contribution in #2213
- @duruer made their first contribution in #2240
- @jaulz made their first contribution in #2275
- @ryanto made their first contribution in #2282
- @nucleartux made their first contribution in #2290
- @domstrueboy made their first contribution in #2319
- @stijndcl made their first contribution in #2333
- @hatefrad made their first contribution in #2339
- @milahu made their first contribution in #2338
- @NuroDev made their first contribution in #2324
- @lukesmurray made their first contribution in #2327
- @Aiyush-G made their first contribution in #2349
- @webri made their first contribution in #2352
- @dcastil made their first contribution in #2361
- @gsqrt2 made their first contribution in #2410
- @jpobley made their first contribution in #2412
- @strdr4605 made their first contribution in #2461
- @AngadSethi made their first contribution in #2476
- @mejo- made their first contribution in #2478
- @codemzy made their first contribution in #2484
- @bdbch made their first contribution in #2695
- @scottsidwell made their first contribution in #2691
- @fleon made their first contribution in #2668
- @DanSnow made their first contribution in #2681
- @pradel made their first contribution in #2696
- @phenax made their first contribution in #2646
- @XAHTEP26 made their first contribution in #2723
- @dphuang2 made their first contribution in #2739
- @Ken-vdE made their first contribution in #2758
- @patrickbaber made their first contribution in #2776
- @dilizarov made their first contribution in #2768
- @ralphschindler made their first contribution in #2604
- @fekle made their first contribution in #2601
- @JDinABox made their first contribution in #2717
- @panta82 made their first contribution in #2684
- @sjdemartini made their first contribution in #2750
- @anton-liubushkin made their first contribution in #2794
- @kaspnilsson made their first contribution in #2474
- @montapro made their first contribution in #2791
- @HondryTravis made their first contribution in #2834
- @shaunabanana made their first contribution in #2832
- @Lior539 made their first contribution in #2856
- @EvitanRelta made their first contribution in #2884
- @Young6118 made their first contribution in #2916
- @SavKS made their first contribution in #2857
- @ccchapman made their first contribution in #2928
- @ahhshm made their first contribution in #2957
- @kivikakk made their first contribution in #3089
- @Billiam made their first contribution in #2968
- @sipec made their first contribution in #2967
- @Faleij made their first contribution in #3093
- @Darmody made their first contribution in #2985
- @zhxqc made their first contribution in #3144
- @Rhys-T made their first contribution in #3140
- @NagariaHussain made their first contribution in #3132
- @masl made their first contribution in #3151
- @StefKors made their first contribution in #3150
- @tarngerine made their first contribution in #3002
- @edlb made their first contribution in #2943
- @sampi made their first contribution in #3188
- @dngwoodo made their first contribution in #3155
- @johnfraney made their first contribution in #3208
- @C-Hess made their first contribution in #3232
- @ScopeyNZ made their first contribution in #3251
- @hamflx made their first contribution in #3205
- @albertogiunta made their first contribution in #3245
- @Matrixbirds made their first contribution in #3239
- @nielslanting made their first contribution in #3283
- @danielyuenhx made their first contribution in #3265
- @LuchoCateura made their first contribution in #3279
- @nkonev made their first contribution in #3311
- @educastellano made their first contribution in #3316
- @catalinmiron made their first contribution in #3298
- @Calvein made their first contribution in #3362
- @rvrvrv made their first contribution in #3328
- @MihirGH made their first contribution in #3366
- @alejandrogarciasalas made their first contribution in #3386
- @taismassaro made their first contribution in #3396
- @williamsk91 made their first contribution in #3447
- @tomi-bigpi made their first contribution in #3436
- @ruipserra made their first contribution in #3331
- @dargmuesli made their first contribution in #3425
- @janthurau made their first contribution in #3487
- @umgustavo made their first contribution in #3484
- @kandros made their first contribution in #3457
- @tovaschreier made their first contribution in #3546
- @vuau made their first contribution in #3629
- @ZaymonFC made their first contribution in #3301
- @N0N1m3 made their first contribution in #3657
- @matrei made their first contribution in #3645
- @james-william-r made their first contribution in #3711
- @matthewmullin01 made their first contribution in #3677
- @JustMaier made their first contribution in #3750
- @rumbcam made their first contribution in #3678
- @jiegillet made their first contribution in #3759
- @jmtaber129 made their first contribution in #3732
- @RicoTrevisan made their first contribution in #3643
- @harrisonlo made their first contribution in #3672
- @Simon-He95 made their first contribution in #3525
- @epelc made their first contribution in #3576
- @Flamenco made their first contribution in #3600
- @tazirahmb made their first contribution in #3652
- @jacksleight made their first contribution in #3558
- @kylealwyn made their first contribution in #3533
- @gethari made their first contribution in #3541
- @peterfox made their first contribution in #3618
- @taras-turchenko-moc made their first contribution in #3675
- @thecodrr made their first contribution in #3777
- @cstrnt made their first contribution in #3810
- @katerlouis made their first contribution in #3776
- @mylesj made their first contribution in #3379
- @KentoMoriwaki made their first contribution in #3862
Full Changelog: https://github.com/ueberdosis/tiptap/compare/tiptap@1.32.2...v2.0.0