Commit Graph

343 Commits

Author SHA1 Message Date
bdbch
8c017d88f6 chore: merged main branch into beta branch 2024-06-26 23:53:44 +02:00
bdbch
81d3b8a671
feat(core): normalize setContent and insertContentAt (#4895)
When `parseOptions.whitespace === 'full' or parseOptions.whitespace === true` setting content will no longer strip whitespaces on setContent
2024-06-25 16:50:46 +02:00
bdbch
01aa68da3a fix: add column resize cursor to tables in demos 2024-06-21 11:25:31 +02:00
Sven Adlung
ba76209ddf
docs: add collaboration split pane demo 2024-06-20 10:48:51 +02:00
svenadlung
c7f58a99a0 docs: fix TW demo dark mode issue 2024-06-19 12:19:16 +02:00
Nazar
d122980cec
fix(core): update tabindex on state change (#5231) (#5232) 2024-06-14 05:35:50 +02:00
Daniel Pivovarov
33de6fef67
fix(horizontal-rule): fix insertion behavior (#4898) 2024-06-14 04:51:52 +02:00
Nick the Sick
ca2a2284f0
Merge branch 'main' into develop 2024-06-13 07:05:09 +02:00
Sven Adlung
aba6657d70
docs: demos styling 2024-06-12 11:52:54 +02:00
Nick the Sick
7e7ae195e7
test: wait a little longer, pre-optimize some deps 2024-06-12 06:33:03 +02:00
Nick Perez
a95ba3fa6f
fix(extension-link): make links exitable resolving #3293 (#5181) 2024-06-07 16:38:54 +02:00
Henry Stelle
ff6e00a356
feat(extension-link): add support for default protocol (#5022) 2024-06-07 16:37:48 +02:00
Nick Perez
f635d7b4f5
fix: revert font-family escaping introduced by #4545 (#5164)
Using `CSS.escape` is the wrong tool for the job here:
 - it is meant for CSS selectors and does not handle CSS variables properly.
 - you can't use `var(--title)` as a font-family because it was getting escaped to `var\(--title\)`
2024-06-04 09:37:43 +02:00
svenadlung
7c8d21745d test(images): fix failing tests 2024-05-27 17:22:55 +02:00
svenadlung
6050d20281 docs: fix YouTube extension demo tests 2024-05-27 16:43:18 +02:00
svenadlung
eaf41d70d9 docs: use nocookie version in YouTube extension demo 2024-05-27 16:22:03 +02:00
Nick Perez
1ff58aea21
test: get tests running on macOS again by leveraging built-in platform detection (#5144) 2024-05-14 14:42:57 +02:00
Dalius C
4900a27c53
fix: NodePos querySelectorAll function (#5094)
* fix nodepos queryselector

* fix NodePos querySelectorAll function

* tests

* remove test variable

* test fix
2024-05-08 12:22:13 +02:00
Dominik Biedebach
173f609972 fix images demo test 2024-04-11 12:02:37 +02:00
svenadlung
4c602e76db adjust tests 2024-04-09 14:22:05 +02:00
bdbch
22ced31872
fix(core): fix nodepos child lookup (#5038) 2024-04-09 13:12:28 +02:00
Sven Adlung
96b6abcf6e
feat(core): apply input and paste rules when using insertContent methods (#5046) 2024-04-09 13:04:16 +02:00
Dominik Biedebach
21aa96dee8 fix: fix test path 2024-02-07 15:22:54 +01:00
svenadlung
8e36d65b6f Merge branch 'main' into develop 2024-01-29 13:16:04 +01:00
bdbch
8954007b2b
fix: fix newline stripping via insertContent
* fix(core): fix whitespace handling in elementFromString function

* demos: add button to insert HTML content with span tags

* Move tests and demo to insertContent demo

---------

Co-authored-by: bdbch <dominik@bdbch.com>
2024-01-29 13:15:39 +01:00
Sven Adlung
681aa577bf
fix: fix imports, fix demos, unpin y-prosemirror
* use @tiptap/pm

* unpin y-prosemirror

* fix lock file

* fix IsolatingClear demo

* fix OnUpdateRenderer demo

* fix YouTube demo video

* update demos

* remove unneeded function call
2024-01-29 13:03:52 +01:00
bdbch
2235908c28 fix(core): fix new lines being added via elementFromString (#4767)
Co-authored-by: bdbch <dominik@bdbch.com>
2024-01-10 13:44:56 +01:00
bdbch
b7a2504f16
fix(core): fix new lines being added via elementFromString (#4767)
Co-authored-by: bdbch <dominik@bdbch.com>
2024-01-10 13:43:48 +01:00
bdbch
46e391aa9d merge main 2024-01-08 22:30:06 +01:00
Jan Thurau
8938acb085 fixes tests in marks/link 2024-01-08 22:26:27 +01:00
bdbch
135a12f7aa
fix(core): fix insertContentAt keeping new lines in html content (#4465)
* fix(core): fix insertContentAt keeping new lines in html content

* test(core): add tests

* chore: remove stray console.log

* chore: remove buttons from demo

* fix(core): fix replacement on multiple breaks
2024-01-08 20:21:45 +01:00
Dominik Biedebach
ed72d3ef72 merge main 2024-01-08 15:07:16 +01:00
Dominik Biedebach
d495d92a1f fix(link): fix tests 2024-01-08 15:06:45 +01:00
Dominik Biedebach
8c99685545 sync with main 2024-01-08 12:54:37 +01:00
bdbch
eaee9c7177
Fix/link pasting (#4700)
* revert link paste handling to behavior before

* fix(link): fix linking while typing

* add validate support for autolinking back

* revert autolink behaviour

* fix autolinking on pasting text

* remove broken link

* fix react link test

* fix savvy test

---------

Co-authored-by: bdbch <dominik@bdbch.com>
2024-01-08 12:48:14 +01:00
bdbch
894c732d29
chore(pm): update all prosemirror package dependencies (#4714)
* chore(pm): update all prosemirror package dependencies

* rchore(core): remove filterTransaction from state

* fix(demo): fix typings in vue demo

* feat(core): add missing prosemirror commands for joining textblocks

* adoc: added documentation for missing commands

---------

Co-authored-by: bdbch <dominik@bdbch.com>
2024-01-02 13:38:28 +01:00
Dominik Biedebach
2456ac7a74 Merge branch 'main' of github.com:ueberdosis/tiptap into develop 2023-12-15 12:32:00 +01:00
bdbch
f6d7e00a74
fix(typography): require spaces after divisions to not break date formats (#4696) 2023-12-14 15:10:08 +01:00
Jan Thurau
de8d4bf149
fixes typo 2023-11-20 21:13:41 +01:00
Jakub Kolčář
82f16d2d91
link click handler fixed 2023-11-20 21:13:40 +01:00
Jan Thurau
4dfd839360
fix 2023-11-17 10:32:38 +01:00
Jan Thurau
6485a5fcb4
fixes tests in marks/link 2023-11-17 10:26:25 +01:00
Timo Santi
6b2edc5d82
[Bug]: HTML output of Table is missing colgroup element (#4281)
* [Bug]: HTML output of Table is missing colgroup element
Fixes #4280

* Fixed typo and added some documentation
2023-10-10 04:22:58 +02:00
bdbch
ff929b179d
feat(placeholder): allow editor-is-empty class on any node (#4335) 2023-08-18 10:52:33 -07:00
bdbch
a251946858
fix(core): fix error when merging class attributes (#4340)
* fix(core): fix error when merging class attributes
* added test
2023-08-17 09:05:48 -07:00
bdbch
0d7daedfa4
hotfix(core): Fix input rules not working if at last position of a block (#4337)
* chore(core): remove log

* fix(core): fix inputRules breaking if last item in hierarchy

* fix(core): use default doc node if no parent default node is found

* chore: update .eslintrc

* chore: fix linting

* chore: fix linting
2023-08-16 11:40:47 -07:00
bdbch
4fe87d35e5
add overrides to typography extension (#4287) 2023-08-10 20:30:56 -07:00
bdbch
afaa87fcad
fix demo for cut command (#4313) 2023-08-10 18:12:55 -07:00
bdbch
7e7057ea43
chore(lists): move list keymap to extra extension (#4290)
* move list keymap to extra extension

* update docs and readme

* move list helpers out of core
2023-08-10 16:44:46 -07:00
bdbch
fd35db4d09
fix(strikethrough): update strikethrough shortcut (#4288)
* update strikethrough shortcut
* update tests
2023-08-05 11:38:35 +02:00
svenadlung
6383fd5408 fix(demos): add missing extensions 2023-07-25 13:34:55 +02:00
svenadlung
bdc51d12b5 Merge branch 'main' into develop
# Conflicts:
#	CHANGELOG.md
#	demos/CHANGELOG.md
#	demos/package-lock.json
#	demos/package.json
#	demos/src/Examples/CollaborativeEditing/React/index.jsx
#	lerna.json
#	package-lock.json
#	packages/core/CHANGELOG.md
#	packages/core/package.json
#	packages/extension-blockquote/CHANGELOG.md
#	packages/extension-blockquote/package.json
#	packages/extension-bold/CHANGELOG.md
#	packages/extension-bold/package.json
#	packages/extension-bubble-menu/CHANGELOG.md
#	packages/extension-bubble-menu/package.json
#	packages/extension-bullet-list/CHANGELOG.md
#	packages/extension-bullet-list/package.json
#	packages/extension-character-count/CHANGELOG.md
#	packages/extension-character-count/package.json
#	packages/extension-code-block-lowlight/CHANGELOG.md
#	packages/extension-code-block-lowlight/package.json
#	packages/extension-code-block/CHANGELOG.md
#	packages/extension-code-block/package.json
#	packages/extension-code/CHANGELOG.md
#	packages/extension-code/package.json
#	packages/extension-collaboration-cursor/CHANGELOG.md
#	packages/extension-collaboration-cursor/package.json
#	packages/extension-collaboration/CHANGELOG.md
#	packages/extension-collaboration/package.json
#	packages/extension-color/CHANGELOG.md
#	packages/extension-color/package.json
#	packages/extension-document/CHANGELOG.md
#	packages/extension-document/package.json
#	packages/extension-dropcursor/CHANGELOG.md
#	packages/extension-dropcursor/package.json
#	packages/extension-floating-menu/CHANGELOG.md
#	packages/extension-floating-menu/package.json
#	packages/extension-focus/CHANGELOG.md
#	packages/extension-focus/package.json
#	packages/extension-font-family/CHANGELOG.md
#	packages/extension-font-family/package.json
#	packages/extension-gapcursor/CHANGELOG.md
#	packages/extension-gapcursor/package.json
#	packages/extension-hard-break/CHANGELOG.md
#	packages/extension-hard-break/package.json
#	packages/extension-heading/CHANGELOG.md
#	packages/extension-heading/package.json
#	packages/extension-highlight/CHANGELOG.md
#	packages/extension-highlight/package.json
#	packages/extension-history/CHANGELOG.md
#	packages/extension-history/package.json
#	packages/extension-horizontal-rule/CHANGELOG.md
#	packages/extension-horizontal-rule/package.json
#	packages/extension-image/CHANGELOG.md
#	packages/extension-image/package.json
#	packages/extension-italic/CHANGELOG.md
#	packages/extension-italic/package.json
#	packages/extension-link/CHANGELOG.md
#	packages/extension-link/package.json
#	packages/extension-list-item/CHANGELOG.md
#	packages/extension-list-item/package.json
#	packages/extension-mention/CHANGELOG.md
#	packages/extension-mention/package.json
#	packages/extension-ordered-list/CHANGELOG.md
#	packages/extension-ordered-list/package.json
#	packages/extension-paragraph/CHANGELOG.md
#	packages/extension-paragraph/package.json
#	packages/extension-placeholder/CHANGELOG.md
#	packages/extension-placeholder/package.json
#	packages/extension-strike/CHANGELOG.md
#	packages/extension-strike/package.json
#	packages/extension-subscript/CHANGELOG.md
#	packages/extension-subscript/package.json
#	packages/extension-superscript/CHANGELOG.md
#	packages/extension-superscript/package.json
#	packages/extension-table-cell/CHANGELOG.md
#	packages/extension-table-cell/package.json
#	packages/extension-table-header/CHANGELOG.md
#	packages/extension-table-header/package.json
#	packages/extension-table-row/CHANGELOG.md
#	packages/extension-table-row/package.json
#	packages/extension-table/CHANGELOG.md
#	packages/extension-table/package.json
#	packages/extension-task-item/CHANGELOG.md
#	packages/extension-task-item/package.json
#	packages/extension-task-list/CHANGELOG.md
#	packages/extension-task-list/package.json
#	packages/extension-text-align/CHANGELOG.md
#	packages/extension-text-align/package.json
#	packages/extension-text-style/CHANGELOG.md
#	packages/extension-text-style/package.json
#	packages/extension-text/CHANGELOG.md
#	packages/extension-text/package.json
#	packages/extension-typography/CHANGELOG.md
#	packages/extension-typography/package.json
#	packages/extension-underline/CHANGELOG.md
#	packages/extension-underline/package.json
#	packages/extension-youtube/CHANGELOG.md
#	packages/extension-youtube/package.json
#	packages/html/CHANGELOG.md
#	packages/html/package.json
#	packages/pm/CHANGELOG.md
#	packages/pm/package.json
#	packages/react/CHANGELOG.md
#	packages/react/package.json
#	packages/starter-kit/CHANGELOG.md
#	packages/starter-kit/package.json
#	packages/suggestion/CHANGELOG.md
#	packages/suggestion/package.json
#	packages/vue-2/CHANGELOG.md
#	packages/vue-2/package.json
#	packages/vue-3/CHANGELOG.md
#	packages/vue-3/package.json
2023-07-17 13:03:44 +02:00
svenadlung
39589eda22 reenable collab demo 2023-07-11 09:33:53 -07:00
bdbch
d689e2d9c1
React context implementation for Tiptap (#4192)
* feat(react): add react context implementation

* chore(docs): updated react docs & demos for new context

* chore(docs): added slot docs

* chore(docs): fix typo

* chore(react): use correct editor package

* fix typo in react installation docs

* update react typings to latest version

* fix types

---------

Co-authored-by: bdbch <dominik@bdbch.com>
2023-07-11 18:20:43 +02:00
bdbch
cc2a0f1bc9 update demo 2023-07-11 10:28:10 +02:00
bdbch
e661bbbbc9 update demo 2023-07-11 10:27:57 +02:00
bdbch
b38c1143a0 temporary disable collaboration demo 2023-07-11 10:18:15 +02:00
bdbch
f3466b62b8 temporary disable collaboration demo 2023-07-11 10:11:32 +02:00
Dominik Biedebach
c1d18543b0 fix(tests): fix link rel tests 2023-07-07 16:01:34 +02:00
Hari Acharya
d710846ecb
fix(react): check props.clientRect before creating ReactRenderer (#4138)
* moved validation to top of function
* fixed
2023-07-07 15:08:18 +02:00
Dominik
7e38c0fa0a
New Cut Command & Position Mapping for insertContentAt (#4141)
* feature(core): add cut commandd and map positions for insertContent

* docs(core): added docs for cut command

* chore(demos): added demo for cut command

---------

Co-authored-by: bdbch <dominik@bdbch.com>
2023-07-07 13:17:13 +02:00
Cameron Hessler
7b4c792034
fix(core) Allow text style to be clearable on new lines (#4151)
* Fix text style not clearing on new line

Fixes #3702

* Fix preserving marks when wrapping/setting nodes

* Uncomment tests

* Revert "Uncomment tests"

This reverts commit 8979bbda81.

* Revert "Fix preserving marks when wrapping/setting nodes"

This reverts commit fe3613b587.
2023-07-07 11:21:28 +02:00
Tommy
9ddef25e46
fix list styles nested inside of task item (#4172) 2023-07-07 10:50:42 +02:00
Ben Asher
e97630c639
Require file extensions for imports and exports (#4001)
* Require .js endings

* add extension alias for cypress to resolve ts files with js endings
2023-06-30 21:03:49 +02:00
Jan Thurau
4ad21341f2
react docs 2023-06-02 18:26:24 +02:00
Jan Thurau
89bce5e650
WIP: trying to fix prod builds, adds first lexical example 2023-06-01 18:21:47 +02:00
Jan Thurau
87925f2b91
docs: tutorials: adds react examples, makes it possible to add Lexical-React as a code type 2023-05-31 22:39:18 +02:00
Patrick Baber
614fc8082c
feat: add tiptap class
* update docs
* update demos
2023-05-25 13:45:06 +02:00
Jan Thurau
6e420b602c
TiptapCollab blog post series: WIP 2 2023-05-14 23:10:12 +02:00
Martin Kriegeskorte
56bc957598 bump tailwind; add tailwind to demos 2023-05-08 11:37:20 +02:00
Jan Thurau
63a56639fc
TiptapCollab blog post series: first WIP 2023-05-07 21:14:57 +02:00
Dominik
e7d7d49637
fix(extension-link): fix link not being kept when pasting url with link (#3975)
* fix(extension-link): fix llinks not being kept when pasted text includes url

* fix(extension-link): fix links not being linked correctly on the correct pos

* fix(link): fix pasting behavior and move all to one plugin

* fix(link): dont do custom behavior if no links were pasted

* fix(link): copied text link should be kept

* fix(link): fix autolink overriding pasted links

* fix(link): fix links not pasting the correct link on selected text
2023-04-26 14:17:59 +02:00
Dominik
7278ee2b05
fix: clear nodes when cursor at start of empty isolating parent (#3943)
* fix: clear nodes when cursor at start of empty isolating parent

* fix: dont break backspace behavior when childCount is over 1

* fix: check if parent is textblock

* fix: add strict pos check for parent isolating pos

* demo: add isolation clear demo
2023-04-05 14:59:58 +02:00
svenadlung
c5496c1b27 feat: add box-shadow to collab demo 2023-03-31 17:10:48 +02:00
svenadlung
87840b0f08 feat: Tiptap collab demo styling 2023-03-31 17:03:38 +02:00
Sven Adlung
958925f256
feat: landingpage demo (#3925) 2023-03-31 15:01:42 +02:00
svenadlung
5a142fd41c update demo styles 2023-03-30 15:32:04 +02:00
Jan Thurau
d28a86ff30
Merge pull request #3895 from ueberdosis/feature/ttCollabProvider
Updates @hocuspocus/provider, moves demo to TiptapCollab
2023-03-28 11:31:31 +02:00
Jan Thurau
ad9a50239a
TiptapCollab 2023-03-28 10:39:21 +02:00
Kento Moriwaki
357f3b609c
Fixing reoccurring issue #3331 and improving related PR #3533 (#3862)
* Add custom paragraph example

* Remove unnecessary queueMicrotask
2023-03-27 15:43:02 +02:00
Dominik
40715ecfc2
chore: add Dev demo folder (#3887) 2023-03-27 15:21:03 +02:00
Dominik
65371b7353
Handle NodeViews in BubbleMenu positioning (#3881)
* fix(bubble-menu): use correct children of node view renderers for clientRect

* fix(bubble-menu): remove lodash

* fix(bubble-menu): support vue node views

* fix(demos): revert bubble menu demo
2023-03-27 15:20:45 +02:00
Dominik
43970fd496
Improve Cypress Test runner performance with parallelization (#3817)
* test: only run integration tests

* test: only run integration tests

* test: try using test spec matrix

* test: try using test spec matrix

* test: try using test spec matrix

* test: try using test spec matrix

* test: try using test spec matrix

* tests: update test branches
2023-03-03 14:42:11 +01:00
Dominik
6283cee5c7
fix(react): allow updating event handlers on editor (#3811) 2023-03-03 11:35:53 +01:00
Dominik
f5895c63c4
fix(tests): add assertion for each valid/invalid link (#3815)
* fix(tests): add assertion for each valid/invalid link

* chore(tests): disable video generation
2023-03-03 11:35:05 +01:00
Tim Raderschad
bdc4980343
fix: use prose-base class for sm screens to prevent override of prose-invert (#3810) 2023-03-03 00:31:41 +01:00
Dominik Biedebach
02eec8aaef fix(tests): fix tests for lists 2023-02-28 10:57:01 +01:00
Dominik
3c07ca0b9c
fix(core): fix destroyed view causing errors on dispatchTransaction (#3799) 2023-02-28 10:50:43 +01:00
Dominik
acf186d2ac
chore: allow new ReactComponentContent components to be created (#3782)
* chore: allow users to create new react nodeview editor content components

* style: remove trailing spaces
2023-02-27 19:31:40 +01:00
Dominik
0300630a5b
fix(core): allow insertContentAt and insertContent text node arrays (#3790)
* fix(core): allow insertContentAt and insertContent to handle array of text nodes

* fix(core): allow insertContent via json including a text content
2023-02-27 19:26:14 +01:00
Hari Haran
36bb1e1041
feat: #3540 Ability to preserve marks on lists (#3541)
* feat: #3540 Ability to preserve marks on lists

* feat: preserveAttrs in list items

* `keepMarks` is working, but need help with `keepAttrs`

* fix: conflict

* avoid casting
2023-02-22 10:13:28 +01:00
Rico
cb84d9a396
Use Tailwind CDN direclty? (#3643)
I realized that if I use Tailwind's CDN directly, you can have it react to dark mode directly.
2023-02-18 17:44:47 +01:00
Dominik
f387ad3dd4
feat(pm): new prosemirror package for dependency resolving
* chore:(core): migrate to tsup

* chore: migrate blockquote and bold to tsup

* chore: migrated bubble-menu and bullet-list to tsup

* chore: migrated more packages to tsup

* chore: migrate code and character extensions to tsup

* chore: update package.json to simplify build for all packages

* chore: move all packages to tsup as a build process

* chore: change ci build task

* feat(pm): add prosemirror meta package

* rfix: resolve issues with build paths & export mappings

* docs: update documentation to include notes for @tiptap/pm

* chore(pm): update tsconfig

* chore(packages): update packages

* fix(pm): add package export infos & fix dependencies

* chore(general): start moving to pm package as deps

* chore: move to tiptap pm package internally

* fix(demos): fix demos working with new pm package

* fix(tables): fix tables package

* fix(tables): fix tables package

* chore(demos): pinned typescript version

* chore: remove unnecessary tsconfig

* chore: fix netlify build

* fix(demos): fix package resolving for pm packages

* fix(tests): fix package resolving for pm packages

* fix(tests): fix package resolving for pm packages

* chore(tests): fix tests not running correctly after pm package

* chore(pm): add files to files array

* chore: update build workflow

* chore(tests): increase timeout time back to 12s

* chore(docs): update docs

* chore(docs): update installation guides & pm information to docs

* chore(docs): add link to prosemirror docs

* fix(vue-3): add missing build step

* chore(docs): comment out cdn link

* chore(docs): remove semicolons from docs

* chore(docs): remove unnecessary installation note

* chore(docs): remove unnecessary installation note
2023-02-02 17:37:33 +01:00
Martin Kriegeskorte
312866044a docs: inject collaboration rooms in build process 2022-12-14 11:59:38 +01:00
Martin Kriegeskorte
14b166e7e8 docs: rotate rooms 2022-12-13 16:57:25 +01:00
Gustavo Rocha
14fb467bc8
Check if url exists (#3484) 2022-12-07 00:46:28 +01:00
Patrick Baber
6b378306f8 docs: rotate demo rooms 2022-11-29 09:43:07 +01:00
Dominik Biedebach
5150095c6b fix(tests): fix autolink validation test 2022-11-25 10:38:45 +01:00
Martin Kriegeskorte
c155d2482d docs: rotate demo rooms 2022-11-18 15:50:36 +01:00
svenadlung
5fb4d98c12 Merge branch 'main' of github.com:ueberdosis/tiptap
# Conflicts:
#	README.md
2022-11-07 21:42:04 +01:00