Commit Graph

744 Commits

Author SHA1 Message Date
Philipp Kühn
a96a57dd81 code style 2021-12-03 10:40:56 +01:00
philippkuehn
b4ab7f079b ci: fix code style linting errors 2021-12-03 09:36:51 +00:00
BrianHung
de39853026
fix: initialize autofocus selection in createView (#2212)
* initialize autofocus selection in `createView`

* fix missing variable and null error

* remove unused imports
2021-12-03 10:35:17 +01:00
Philipp Kühn
3d68981b47
feat: Add support for autolink (#2226)
* wip

* WIP

* add autolink implementation

* refactoring

* set keepOnSplit to false

* refactoring

* improve changed ranges detection

* move some helpers into core

Co-authored-by: Philipp Kühn <philippkuehn@MacBook-Pro-von-Philipp.local>
2021-12-03 08:53:58 +01:00
Philipp Kühn
40a9404c94 add newline-after-var rule to eslint config 2021-12-03 00:03:39 +01:00
Philipp Kühn
20b6d79f33 fix: remove defaultOptions fallback, fix #2219 2021-12-02 20:04:45 +01:00
Philipp Kühn
fa18ffe6d7 update eslint config 2021-12-01 15:40:50 +01:00
Philipp Kühn
e0f64904b6 feat: add scrollIntoView option to focus command, fix #2172 2021-11-25 17:18:30 +01:00
Philipp Kühn
403c147d4d feat: add defaultBlockAt helper 2021-11-23 14:32:54 +01:00
Philipp Kühn
3c571c9a3f feat: add 'all' option to focus command, fix #2181 2021-11-22 10:17:06 +01:00
Philipp Kühn
cd14731612 fix: improve default gapcursor position when surrounded by margins 2021-11-18 14:02:53 +01:00
Philipp Kühn
7ea55279a3 refactoring 2021-11-18 12:46:21 +01:00
aguingand
3158c37324
feat: Allow array of extensions for enableInputRules and enablePasteRules options (#2119) 2021-11-18 12:44:34 +01:00
Philipp Kühn
7e1ca4c8bd refactoring 2021-11-18 12:38:02 +01:00
Jon Noronha
10fea3b44e
fix: Ignore iOS mutations when unfocused (#2170) 2021-11-18 12:37:21 +01:00
Philipp Kühn
53ffce5018 fix: prevent removing inline nodes when using insertContentAt, fix #2156 2021-11-10 21:16:02 +01:00
Jason Galea
6583edeb1f
fix: update getJSON return type to JSONContent (#2153) 2021-11-10 00:24:18 +01:00
Philipp Kühn
a0a88acd13 fix: don't remove the tiptap styles on destroy, fix #2120, fix #2143 2021-11-09 17:16:38 +01:00
Philipp Kühn
5da313a548 fix: fix a bug when parsing attributes if no parseHTML method is provided, fix #2058 2021-11-08 21:27:46 +01:00
Philipp Kühn
8fc915cade
fix: Improve behavior when using insertContent (#2147)
* check if we can replace the wrapping node by the newly inserted content
    /

* we dont need this anymore

* set selection to inserted content instead of below

* improve hr cursor behavior
2021-11-08 20:37:12 +01:00
Philipp Kühn
ce7f52a8f0 fix: improve JSONContent type to allow pure JSON content 2021-11-03 21:11:24 +01:00
Philipp Kühn
010418d0fd fix: prevent RangeError for posToDOMRect, fix #2112 2021-10-31 12:03:24 +01:00
Philipp Kühn
9afadeb7fe
feat!: Replace defaultOptions with addOptions (#2088)
* add new addOptions option

* replace defaultOptions with addOptions for all extensions

* replace defaultOptions with addOptions for all demos

* replace defaultOptions with addOptions in docs

* refactoring

* refactoring

* drop object support for addOptions

* fix optional options

* fix tests
2021-10-26 18:31:13 +02:00
Philipp Kühn
ef254cead7 fix: fix storage context when using configure 2021-10-25 00:27:24 +02:00
Jon Noronha
bebaa4045e
fix: Separate drags from drops in stopEvent (#2070)
* Separate drags from drops in stopEvent

* Move !isDropEvent
2021-10-22 21:27:58 +02:00
Philipp Kühn
0e94afe42a fix: improve default styling for .ProseMirror-separator 2021-10-22 15:05:18 +02:00
Philipp Kühn
ff67ee1da3 fix: fix a bug where paste rules doesn’t worked at the start of the document, see #1225 2021-10-22 09:04:09 +02:00
Philipp Kühn
7ffabf251c
feat: Add extension storage (#2069) 2021-10-22 08:52:54 +02:00
Philipp Kühn
22c82ba61f fix: check for storedMarks in getMarkAttributes, fix #2039 2021-10-14 20:45:44 +02:00
Philipp Kühn
4295c6bd21 fix: fix type for insertContent command 2021-10-14 12:30:16 +02:00
Philipp Kühn
9f2c36896b feat: add updateSelection option to insertContentAt command 2021-10-14 12:08:39 +02:00
Philipp Kühn
4303637a78
feat: Allow to use commands within InputRule and PasteRule (#2035)
* add optional state prop to commandmanager

* add commands, chain and can getter to commandmanager

* use custom CommandManager for input rules and paste rules

* export commandmanager
2021-10-14 11:56:40 +02:00
Philipp Kühn
3958bf1c22 fix: allow to re-apply current mark for input rules and paste rules, fix #2003 2021-10-10 22:23:32 +02:00
Philipp Kühn
9d281e9e99 fix: do not apply paste rules for ProseMirror HTML 2021-10-10 19:25:50 +02:00
Philipp Kühn
770c4e18e1 fix: fix mappes positions for paste rules, fix #2002 2021-10-08 22:40:06 +02:00
Philipp Kühn
723b955cec
feat: Integrate input rules and paste rules into the core (#1997)
* refactoring

* improve link regex

* WIP: add new markPasteRule und linkify to image mark

* move copy of inputrule to core

* trigger codeblock inputrule on enter

* refactoring

* add regex match to markpasterulematch

* refactoring

* improve link regex

* WIP: add new markPasteRule und linkify to image mark

* move copy of inputrule to core

* trigger codeblock inputrule on enter

* refactoring

* add regex match to markpasterulematch

* update linkify

* wip

* wip

* log

* wip

* remove debug code

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* rename matcher

* add data to ExtendedRegExpMatchArray

* remove logging

* add code option to marks, prevent inputrules in code mark

* remove link regex

* fix codeblock inputrule on enter

* refactoring

* refactoring

* refactoring

* refactoring

* fix position bug

* add test

* export InputRule and PasteRule

* clean up link demo

* fix types
2021-10-08 15:02:09 +02:00
Philipp Kühn
f8efdf797a fix: fix order of executed plugins, fix #1547 2021-10-03 18:55:33 +02:00
Philipp Kühn
e61521c858 refactoring 2021-09-30 09:38:57 +02:00
Philipp Kühn
8db5a943d2 refactoring 2021-09-30 09:34:45 +02:00
HuiiBuh
54e85fd284
feat: #1898 Made the EventEmitter generic to improve the types of the tiptap events (#1959) 2021-09-30 09:25:40 +02:00
Philipp Kühn
2c9cf03398 fix: getHTMLFromFragment now expects a fragment instead of node 2021-09-28 21:34:57 +02:00
Philipp Kühn
b42e442a5a fix: add support for CellSelection in isActive helper, fix #1947 2021-09-27 23:33:32 +02:00
Philipp Kühn
32ae3868ea fix: handle backspace also on shift 2021-09-27 23:03:51 +02:00
Philipp Kühn
aa25d362f9 refactoring 2021-09-27 23:03:23 +02:00
Philipp Kühn
e5c765c8e4 refactoring 2021-09-22 22:45:27 +02:00
Philipp Kühn
c91b2f29be refactoring 2021-09-22 21:14:07 +02:00
Philipp Kühn
fcca1e6f4d fix: improve performance for isActive method, see #1930 2021-09-22 19:43:55 +02:00
philippkuehn
39e1be59bb ci: fix code style linting errors 2021-09-22 11:00:24 +00:00
Nokola
8ee0d67b83
fix: nodeInputRule() support for group match (#1574)
* Fix: nodeInputRule() support for group match

Fixes in nodeInputRule()
- add support for "first group match, if any" similar to https://prosemirror.net/docs/ref/#inputrules
- fix issue where rewriting includes extra unnecessary character from the match

* Insert last typed in nodeInputRule group match
2021-09-22 12:59:25 +02:00
Philipp Kühn
bad16d9f3a fix: call selectAll on 'cmd+a', set a TextSelection instead of AllSelection, fix #1908 2021-09-22 00:03:32 +02:00
Philipp Kühn
0255dbdfcd refactoring 2021-09-21 20:21:36 +02:00
Flávio Carvalho
4178281a74 feat: add enableCoreExtensions flag (#1923) 2021-09-21 20:21:36 +02:00
Philipp Kühn
15f90ec591 fix: fix extension name for clipboardTextSerializer 2021-09-18 21:06:48 +02:00
Philipp Kühn
6437790431 fix: improve active mark detection for inline nodes, fix #1893 2021-09-15 23:25:28 +02:00
Philipp Kühn
6faceef3f6 fix bug in clipboardTextSerializer 2021-09-09 23:58:43 +02:00
Philipp Kühn
4ecd41b922 fix lint error 2021-09-09 23:56:17 +02:00
Philipp Kühn
fe6a3e7491
feat: add getText() and generateText() methods (fix #1428) (#1875)
* move getTextBetween method

* add getText method

* refactoring

* refactoring

* refactoring

* move renderText to schema, add generateText method

* add GenerateText demo

* docs: update

* remove demo from html page
2021-09-09 23:51:05 +02:00
Philipp Kühn
8a3b47a529 feat: parseHTML for attributes should return the value instead of an object now, fix #1863 2021-09-08 23:53:44 +02:00
Philipp Kühn
d3285e9308 refactoring 2021-09-08 12:04:02 +02:00
Philipp Kühn
a5dca087ee fix calculating mark range for unsetMark command 2021-09-08 12:02:43 +02:00
Philipp Kühn
14e458ea7d
feat: add extendEmptyMarkRange option to mark commands (#1859) 2021-09-08 09:32:22 +02:00
Philipp Kühn
3a0693869d fix: fix focus on iOS, fix #1806 2021-08-26 22:32:32 +02:00
Philipp Kühn
f65e1b32a1 fix: add topNode to getDebugJSON 2021-08-24 17:11:13 +02:00
Philipp Kühn
12602e77ef fix: add missing ProseMirror styles 2021-08-20 21:11:39 +02:00
Philipp Kühn
64409cad66 feat: allow wildcards when checking attributes in isActive, fix #1752 2021-08-20 10:51:46 +02:00
Philipp Kühn
920d9a0113 fix lint error 2021-08-13 15:50:18 +02:00
Philipp Kühn
9cf99fedc0 refactor: remove deprecated packages 2021-08-13 15:47:53 +02:00
Philipp Kühn
7f6ed0b1c0 feat: add transaction to all events if possible, see #1461 2021-08-13 14:01:50 +02:00
Philipp Kühn
956566eaad
fix: fix some react focus issues (#1724), fix #1716, fix #1608, fix #1520
* remove async createNodeViews

* focus asynchronously to fix weird bugs in react
2021-08-12 18:03:45 +02:00
Philipp Kühn
9425e7249a fix: improve calculation for min/max positions in selections, fix #1588 2021-08-11 15:06:31 +02:00
Philipp Kühn
f6f8cf9f93 fix: fix isEditable check on initialization 2021-08-09 17:40:45 +02:00
Philipp Kühn
80296aa8d0 refactoring 2021-08-09 17:24:18 +02:00
Robert van Hoesel
e6f67caef3
fix: fix updating editorProps via setOptions (#1540), fix #1518 2021-08-09 17:19:50 +02:00
castroCrea
aabdfd6f7d
fix: add CreateNodeFromContentOptions to insertContent (#1678)
*  Add CreateNodeFromContentOptions  to insertContent

* 📝 Add it to the doc
2021-08-09 15:40:17 +02:00
Philipp Kühn
c9869c8d30 fix: revert async focus, fix #1658 2021-07-30 09:33:55 +02:00
Hans Pagel
47d1d3425c
Examples: Syntax highlighting for React (#1583)
* Docs: Syntax highlighting - add react example

* Docs: Clean up syntax highlighting demo, make use of functional component

* fix: focus view asynchronously, fix #1520

Co-authored-by: Sven Adlung <info@svenadlung.de>
Co-authored-by: Philipp Kühn <kontakt@philipp-kuehn.com>
2021-07-28 23:42:11 +02:00
Philipp Kühn
c2ccf68e8b fix: fix a bug in markPasteRule 2021-07-28 17:18:08 +02:00
Philipp Kühn
73f1c50bca feat: add deleteNode command 2021-07-28 11:19:42 +02:00
Philipp Kühn
d720edbe24
feat!: provide more context to update function of node views, fix #1611
* add more powerful update option to node views

* add object params for all node view option props
2021-07-27 12:26:24 +02:00
Philipp Kühn
651e6911e3 feat: add ignoreMutation option to NodeViewRenderer, fix #1538 2021-07-26 18:44:02 +02:00
Philipp Kühn
4636b1a1a5 fix type for getAttributes 2021-07-26 15:36:12 +02:00
Joe Vallender
9ffd58cf25
feat: Allow a rule to be skipped from the getAttributes callback in markPasteRule (#1625)
For example: you are matching URLs with a Regex but want to make additional checks on the match array before deciding if you want to apply the mark or not. Returning null or false won't attempt to apply the mark. Currently the return value of getAttributes is applied unconditionally.
2021-07-26 15:13:05 +02:00
sibiraj-s
8ed6ac4219 Export NodeViewRendererOptions 2021-07-17 08:53:05 +02:00
Philipp Kühn
b4eda709a6 update splitListItem (https://github.com/ProseMirror/prosemirror/issues/1146) 2021-07-09 10:33:57 +02:00
Philipp Kühn
502b5b1cc9 fix: improve types for generateHTML 2021-06-17 23:41:42 +02:00
Philipp Kühn
2deb07fb00 fix: check for atom nodes in ignoreMutation handler, fix #1448 2021-06-14 15:56:24 +02:00
Philipp Kühn
f7890c0b42 refactoring 2021-06-14 15:35:43 +02:00
Philipp Kühn
fbc8fffb70 fix: remove editable check in updateAttributes, fix #1415 2021-06-14 15:34:09 +02:00
Philipp Kühn
b97bebe021 fix: fix a bug when insert newline at node start, fix #1411 2021-06-07 23:55:18 +02:00
Philipp Kühn
a757716f68 feat: add Tracker class 2021-06-04 23:57:41 +02:00
Philipp Kühn
8e29b5f854 improve types 2021-06-04 22:58:50 +02:00
Philipp Kühn
783ce4e3ac feat: add forEach command 2021-06-04 22:25:53 +02:00
Philipp Kühn
78e2a6e775 add generic to commands type 2021-06-04 21:56:29 +02:00
Philipp Kühn
d037c5656a fix: fix merging options on configure for multiple extension instances 2021-06-03 13:13:43 +02:00
Philipp Kühn
36dad2bbae feat: add setMeta command 2021-06-02 10:50:10 +02:00
Philipp Kühn
485fb8c74c fix: remove custom coordsAtPos method, fix #583 2021-06-01 18:57:46 +02:00
Philipp Kühn
2a4e02ade3 fix: prevent dispatch empty fragment when parsing content with insertContent 2021-06-01 18:20:01 +02:00
philippkuehn
f54b9c9b42 ci: fix code style linting errors 2021-05-31 17:20:25 +00:00
Markus Machatschek
52dd6e0e64 Prevent tiptap from creating duplicate style tags when injecting css 2021-05-31 19:12:05 +02:00
Philipp Kühn
3c4cc96fee fix: check for excluded marks in isMarkActive, fix #1388 2021-05-29 21:02:59 +02:00
Philipp Kühn
370966847e fix: fix error when calculating contentMatch within clearNodes command, fix #1361 2021-05-28 17:37:28 +02:00
Philipp Kühn
7b74d5849f fix lint errors 2021-05-28 15:16:33 +02:00
Philipp Kühn
e52f41ae78 fix: fix fragile schema validity test in splitBlock 2021-05-28 13:55:54 +02:00
Philipp Kühn
939fc3d93a fix: prevent bug when editor is destroyed very fast 2021-05-28 12:14:12 +02:00
Philipp Kühn
c0e68d5a25 fix: do not check for node selection within posToDOMRect 2021-05-24 20:40:24 +02:00
Philipp Kühn
a4ec4ffcfd fix: check for NodeSelection within posToDOMRect 2021-05-24 08:46:51 +02:00
Philipp Kühn
940fd69b61 fix: remove empty attributes in getDebugJSON 2021-05-19 18:27:12 +02:00
Philipp Kühn
8f101810fe fix: preserve whitespace when using insertContent command 2021-05-19 15:15:56 +02:00
Philipp Kühn
2f7a6adca5 feat: allow number for setTextSelection and insertContentAt 2021-05-19 00:25:36 +02:00
Philipp Kühn
fcee5f82c6 feat: add deleteNode method to node views 2021-05-19 00:03:41 +02:00
Philipp Kühn
f829b45bf0 fix: add marks to JSONContent type 2021-05-18 22:51:53 +02:00
Philipp Kühn
2ba3cad891 not sure about this one 2021-05-17 21:00:22 +02:00
Philipp Kühn
ff7dd9b919 feat: add support for checking for attributes in extendMarkRange 2021-05-17 13:00:54 +02:00
Philipp Kühn
5b8808a899 fix: fix export for getAttributes 2021-05-17 11:58:27 +02:00
Philipp Kühn
463661c5ed feat: add findChildrenInRange helper 2021-05-17 11:29:41 +02:00
Philipp Kühn
2bd17c7dc6 feat: export isList, fix #1326 2021-05-17 11:25:18 +02:00
Philipp Kühn
28737b1631 fix: fix missing extensions when using addExtension, fix #1309 2021-05-13 20:44:51 +02:00
Andrea Vaccari
655957d733 fix(core): Increment i in defaultBlockAt 2021-05-13 11:39:26 -05:00
Philipp Kühn
a35b2533eb fix: fix a bug in detecting a current list in toggleList command 2021-05-13 14:43:27 +02:00
Philipp Kühn
2a79f59c6d
Merge pull request #1301 from zcuric/feature/export-mark-helpers
feat: export mark helpers
2021-05-11 17:04:01 +02:00
Philipp Kühn
655c5647f0 fix: fix a bug when configurating the same extension multiple times 2021-05-11 17:03:34 +02:00
Zdravko Curic
313ab0eac7 feat: export mark helpers 2021-05-11 11:22:28 +02:00
Philipp Kühn
b4e2b6fc9d fix: set correct priority when extending extensions, fix #1288 2021-05-10 00:13:32 +02:00
Philipp Kühn
072905cb95 feat: add editor.getAttributes, deprecate editor.getNodeAttributes and editor.getMarkAttributes 2021-05-07 11:10:18 +02:00
Philipp Kühn
b0755cbad6
Merge pull request #1273 from ueberdosis/feature/generate-json-from-html
New Feature: Generate JSON from HTML
2021-05-07 10:37:17 +02:00
Philipp Kühn
0610fce06a
Merge pull request #1278 from zcuric/main
feat: expose node helpers
2021-05-07 10:35:34 +02:00
Philipp Kühn
129ad83167 fix: add support for priority and nested extension for getSchema 2021-05-07 10:25:55 +02:00
Philipp Kühn
cbc0dd8920 fix: remove editor from addExtensions context 2021-05-07 10:24:48 +02:00
Philipp Kühn
ae17bd101c refactoring 2021-05-07 10:08:30 +02:00
Philipp Kühn
7da647d99f fix: fix a bug that messed up pasted link attributes, fix #1284 2021-05-07 09:54:40 +02:00
Philipp Kühn
26e672e2f0 feat: add addExtensions option 2021-05-06 18:39:47 +02:00
Zdravko Curic
6048f9b31b feat: expose node helpers to core 2021-05-06 14:52:44 +02:00
Philipp Kühn
9399e3061f remove some deprecated commands 2021-05-05 23:45:17 +02:00
Hans Pagel
7feb19eb72 feature: add generateJSON utility function to generate JSON from a HTML string 2021-05-05 21:24:24 +02:00
Philipp Kühn
86d570fb79 feat: remove deprecated commands insertHTML, insertNode and insertText 2021-05-05 20:50:01 +02:00
Philipp Kühn
0030f083b0 docs: update content 2021-05-05 19:42:47 +02:00
Philipp Kühn
71740687f4 use replaceWith instead of replaceRangeWith in insertContentAt 2021-05-05 18:48:22 +02:00
Philipp Kühn
12b6f0e4f7 use tr.replaceRangeWith instead of tr.insert for insertContent command 2021-05-05 14:50:27 +02:00
Philipp Kühn
b5c51723ea remove insertText from insertContent 2021-05-05 14:13:58 +02:00
Philipp Kühn
63902d4bdb remove replaceRange from mention node 2021-05-05 13:49:32 +02:00
Philipp Kühn
ec838a11f2 improve Content type 2021-05-05 13:08:19 +02:00
Philipp Kühn
9ff7e2400e add insertContentAt command 2021-05-05 13:00:30 +02:00
Philipp Kühn
b131330ca1 don’t check for canReplaceWith within replaceRange 2021-05-04 20:51:32 +02:00
Philipp Kühn
b3fb0228e0 fix: ignore editable in dispatchTransaction, fix #1239 2021-05-04 10:46:32 +02:00
Philipp Kühn
80cf8bb71b throw error for missing mark/node type 2021-05-03 09:50:57 +02:00
Mark Zepeda
7426be019e
Fix returning true/false in can().chain().run()
I think this was previously meant to return a function in the proxy object getter, but now it's a standalone function and should return the result of the callbacks.
2021-05-02 20:04:10 -05:00
Philipp Kühn
0b67f18e3a fix: fix onBeforeCreate event handler, fix #1236 2021-04-27 21:52:22 +02:00
Philipp Kühn
234d23887b fix: prevent a bug for node views when pressing enter on iOS, fix #1214 2021-04-27 21:07:12 +02:00
Philipp Kühn
fb3990d333 use minMax fo selection commands 2021-04-27 11:52:50 +02:00
Philipp Kühn
811bf693eb feat: add setNodeSelection and setTextSelection commands 2021-04-27 11:41:24 +02:00