@tiptap/core 2.0.0-beta.17 → 2.0.0-beta.170
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +1 -1
- package/README.md +2 -2
- package/dist/packages/core/src/CommandManager.d.ts +13 -6
- package/dist/packages/core/src/Editor.d.ts +23 -18
- package/dist/packages/core/src/EventEmitter.d.ts +8 -4
- package/dist/packages/core/src/Extension.d.ts +102 -26
- package/dist/packages/core/src/ExtensionManager.d.ts +7 -12
- package/dist/packages/core/src/InputRule.d.ts +42 -0
- package/dist/packages/core/src/Mark.d.ts +134 -30
- package/dist/packages/core/src/Node.d.ts +160 -32
- package/dist/packages/core/src/NodeView.d.ts +5 -9
- package/dist/packages/core/src/PasteRule.d.ts +42 -0
- package/dist/packages/core/src/Tracker.d.ts +11 -0
- package/dist/packages/core/src/commands/blur.d.ts +3 -3
- package/dist/packages/core/src/commands/clearContent.d.ts +3 -3
- package/dist/packages/core/src/commands/clearNodes.d.ts +3 -3
- package/dist/packages/core/src/commands/command.d.ts +2 -2
- package/dist/packages/core/src/commands/createParagraphNear.d.ts +3 -3
- package/dist/packages/core/src/commands/deleteNode.d.ts +13 -0
- package/dist/packages/core/src/commands/deleteRange.d.ts +3 -3
- package/dist/packages/core/src/commands/deleteSelection.d.ts +3 -3
- package/dist/packages/core/src/commands/enter.d.ts +3 -3
- package/dist/packages/core/src/commands/exitCode.d.ts +3 -3
- package/dist/packages/core/src/commands/extendMarkRange.d.ts +3 -3
- package/dist/packages/core/src/commands/first.d.ts +3 -3
- package/dist/packages/core/src/commands/focus.d.ts +5 -3
- package/dist/packages/core/src/commands/forEach.d.ts +14 -0
- package/dist/packages/core/src/commands/insertContent.d.ts +7 -3
- package/dist/packages/core/src/commands/insertContentAt.d.ts +16 -0
- package/dist/packages/core/src/commands/joinBackward.d.ts +3 -3
- package/dist/packages/core/src/commands/joinForward.d.ts +3 -3
- package/dist/packages/core/src/commands/keyboardShortcut.d.ts +3 -3
- package/dist/packages/core/src/commands/lift.d.ts +3 -3
- package/dist/packages/core/src/commands/liftEmptyBlock.d.ts +3 -3
- package/dist/packages/core/src/commands/liftListItem.d.ts +3 -3
- package/dist/packages/core/src/commands/newlineInCode.d.ts +3 -3
- package/dist/packages/core/src/commands/resetAttributes.d.ts +13 -0
- package/dist/packages/core/src/commands/scrollIntoView.d.ts +3 -3
- package/dist/packages/core/src/commands/selectAll.d.ts +3 -3
- package/dist/packages/core/src/commands/selectNodeBackward.d.ts +3 -3
- package/dist/packages/core/src/commands/selectNodeForward.d.ts +3 -3
- package/dist/packages/core/src/commands/selectParentNode.d.ts +3 -3
- package/dist/packages/core/src/commands/selectTextblockEnd.d.ts +12 -0
- package/dist/packages/core/src/commands/selectTextblockStart.d.ts +12 -0
- package/dist/packages/core/src/commands/setContent.d.ts +4 -3
- package/dist/packages/core/src/commands/setMark.d.ts +3 -3
- package/dist/packages/core/src/commands/setMeta.d.ts +12 -0
- package/dist/packages/core/src/commands/setNode.d.ts +3 -3
- package/dist/packages/core/src/commands/setNodeSelection.d.ts +12 -0
- package/dist/packages/core/src/commands/setTextSelection.d.ts +12 -0
- package/dist/packages/core/src/commands/sinkListItem.d.ts +3 -3
- package/dist/packages/core/src/commands/splitBlock.d.ts +3 -3
- package/dist/packages/core/src/commands/splitListItem.d.ts +3 -3
- package/dist/packages/core/src/commands/toggleList.d.ts +3 -3
- package/dist/packages/core/src/commands/toggleMark.d.ts +8 -3
- package/dist/packages/core/src/commands/toggleNode.d.ts +3 -3
- package/dist/packages/core/src/commands/toggleWrap.d.ts +3 -3
- package/dist/packages/core/src/commands/undoInputRule.d.ts +3 -3
- package/dist/packages/core/src/commands/unsetAllMarks.d.ts +3 -3
- package/dist/packages/core/src/commands/unsetMark.d.ts +8 -3
- package/dist/packages/core/src/commands/updateAttributes.d.ts +13 -0
- package/dist/packages/core/src/commands/wrapIn.d.ts +3 -3
- package/dist/packages/core/src/commands/wrapInList.d.ts +3 -3
- package/dist/packages/core/src/extensions/clipboardTextSerializer.d.ts +1 -1
- package/dist/packages/core/src/extensions/commands.d.ts +21 -15
- package/dist/packages/core/src/extensions/editable.d.ts +1 -1
- package/dist/packages/core/src/extensions/focusEvents.d.ts +1 -1
- package/dist/packages/core/src/extensions/index.d.ts +1 -0
- package/dist/packages/core/src/extensions/keymap.d.ts +1 -1
- package/dist/packages/core/src/extensions/tabindex.d.ts +2 -0
- package/dist/packages/core/src/helpers/combineTransactionSteps.d.ts +7 -0
- package/dist/packages/core/src/helpers/createChainableState.d.ts +5 -0
- package/dist/packages/core/src/helpers/createDocument.d.ts +3 -4
- package/dist/packages/core/src/helpers/createNodeFromContent.d.ts +4 -5
- package/dist/packages/core/src/helpers/defaultBlockAt.d.ts +2 -0
- package/dist/packages/core/src/helpers/findChildren.d.ts +3 -0
- package/dist/packages/core/src/helpers/findChildrenInRange.d.ts +6 -0
- package/dist/packages/core/src/helpers/findParentNode.d.ts +1 -1
- package/dist/packages/core/src/helpers/findParentNodeClosestToPos.d.ts +1 -1
- package/dist/packages/core/src/helpers/generateHTML.d.ts +2 -2
- package/dist/packages/core/src/helpers/generateJSON.d.ts +2 -0
- package/dist/packages/core/src/helpers/generateText.d.ts +5 -0
- package/dist/packages/core/src/helpers/getAttributes.d.ts +3 -0
- package/dist/packages/core/src/helpers/getAttributesFromExtensions.d.ts +1 -1
- package/dist/packages/core/src/helpers/getChangedRanges.d.ts +11 -0
- package/dist/packages/core/src/helpers/getDebugJSON.d.ts +8 -0
- package/dist/packages/core/src/helpers/getExtensionField.d.ts +2 -0
- package/dist/packages/core/src/helpers/getHTMLFromFragment.d.ts +2 -2
- package/dist/packages/core/src/helpers/getMarkAttributes.d.ts +1 -2
- package/dist/packages/core/src/helpers/getMarkRange.d.ts +1 -1
- package/dist/packages/core/src/helpers/getMarkType.d.ts +1 -1
- package/dist/packages/core/src/helpers/getMarksBetween.d.ts +2 -2
- package/dist/packages/core/src/helpers/getNodeAttributes.d.ts +1 -2
- package/dist/packages/core/src/helpers/getNodeType.d.ts +1 -1
- package/dist/packages/core/src/helpers/getRenderedAttributes.d.ts +2 -2
- package/dist/packages/core/src/helpers/getSchema.d.ts +1 -1
- package/dist/packages/core/src/helpers/getSchemaByResolvedExtensions.d.ts +3 -0
- package/dist/packages/core/src/helpers/getSchemaTypeByName.d.ts +1 -1
- package/dist/packages/core/src/helpers/getSchemaTypeNameByName.d.ts +1 -1
- package/dist/packages/core/src/helpers/getSplittedAttributes.d.ts +2 -2
- package/dist/packages/core/src/helpers/getText.d.ts +6 -0
- package/dist/packages/core/src/helpers/getTextBetween.d.ts +6 -0
- package/dist/packages/core/src/helpers/getTextSeralizersFromSchema.d.ts +3 -0
- package/dist/packages/core/src/helpers/injectExtensionAttributesToParseRule.d.ts +1 -1
- package/dist/packages/core/src/helpers/isActive.d.ts +1 -2
- package/dist/packages/core/src/helpers/isExtensionRulesEnabled.d.ts +2 -0
- package/dist/packages/core/src/helpers/isList.d.ts +1 -1
- package/dist/packages/core/src/helpers/isMarkActive.d.ts +1 -2
- package/dist/packages/core/src/helpers/isNodeActive.d.ts +1 -2
- package/dist/packages/core/src/helpers/isNodeEmpty.d.ts +1 -1
- package/dist/packages/core/src/helpers/isNodeSelection.d.ts +1 -1
- package/dist/packages/core/src/helpers/isTextSelection.d.ts +1 -1
- package/dist/packages/core/src/helpers/posToDOMRect.d.ts +2 -0
- package/dist/packages/core/src/helpers/resolveFocusPosition.d.ts +4 -0
- package/dist/packages/core/src/helpers/selectionToInsertionEnd.d.ts +1 -1
- package/dist/packages/core/src/helpers/splitExtensions.d.ts +4 -4
- package/dist/packages/core/src/index.d.ts +51 -20
- package/dist/packages/core/src/inputRules/markInputRule.d.ts +11 -2
- package/dist/packages/core/src/inputRules/nodeInputRule.d.ts +11 -2
- package/dist/packages/core/src/inputRules/textInputRule.d.ts +9 -0
- package/dist/packages/core/src/inputRules/textblockTypeInputRule.d.ts +14 -0
- package/dist/packages/core/src/inputRules/wrappingInputRule.d.ts +23 -0
- package/dist/packages/core/src/pasteRules/markPasteRule.d.ts +11 -2
- package/dist/packages/core/src/pasteRules/textPasteRule.d.ts +9 -0
- package/dist/packages/core/src/style.d.ts +1 -2
- package/dist/packages/core/src/types.d.ts +105 -52
- package/dist/packages/core/src/utilities/callOrReturn.d.ts +2 -1
- package/dist/packages/core/src/utilities/createStyleTag.d.ts +1 -1
- package/dist/packages/core/src/utilities/deleteProps.d.ts +1 -2
- package/dist/packages/core/src/utilities/elementFromString.d.ts +1 -1
- package/dist/packages/core/src/utilities/escapeForRegEx.d.ts +1 -0
- package/dist/packages/core/src/utilities/findDuplicates.d.ts +1 -0
- package/dist/packages/core/src/utilities/fromString.d.ts +1 -1
- package/dist/packages/core/src/utilities/isClass.d.ts +1 -1
- package/dist/packages/core/src/utilities/isEmptyObject.d.ts +1 -1
- package/dist/packages/core/src/utilities/isFunction.d.ts +1 -0
- package/dist/packages/core/src/utilities/isMacOS.d.ts +1 -0
- package/dist/packages/core/src/utilities/isNumber.d.ts +1 -0
- package/dist/packages/core/src/utilities/isObject.d.ts +1 -1
- package/dist/packages/core/src/utilities/isPlainObject.d.ts +1 -1
- package/dist/packages/core/src/utilities/isRegExp.d.ts +1 -0
- package/dist/packages/core/src/utilities/isiOS.d.ts +1 -0
- package/dist/packages/core/src/utilities/mergeAttributes.d.ts +1 -2
- package/dist/packages/core/src/utilities/mergeDeep.d.ts +1 -2
- package/dist/packages/core/src/utilities/minMax.d.ts +1 -1
- package/dist/packages/core/src/utilities/objectIncludes.d.ts +3 -2
- package/dist/packages/core/src/utilities/removeDuplicates.d.ts +8 -0
- package/dist/tiptap-core.cjs.js +3572 -2041
- package/dist/tiptap-core.cjs.js.map +1 -1
- package/dist/tiptap-core.esm.js +3544 -2044
- package/dist/tiptap-core.esm.js.map +1 -1
- package/dist/tiptap-core.umd.js +3430 -1898
- package/dist/tiptap-core.umd.js.map +1 -1
- package/package.json +20 -16
- package/src/CommandManager.ts +60 -62
- package/src/Editor.ts +109 -74
- package/src/EventEmitter.ts +14 -4
- package/src/Extension.ts +196 -41
- package/src/ExtensionManager.ts +242 -78
- package/src/InputRule.ts +268 -0
- package/src/Mark.ts +242 -47
- package/src/Node.ts +279 -52
- package/src/NodeView.ts +105 -42
- package/src/PasteRule.ts +246 -0
- package/src/Tracker.ts +42 -0
- package/src/commands/blur.ts +12 -6
- package/src/commands/clearContent.ts +3 -3
- package/src/commands/clearNodes.ts +29 -18
- package/src/commands/command.ts +2 -2
- package/src/commands/createParagraphNear.ts +3 -3
- package/src/commands/deleteNode.ts +36 -0
- package/src/commands/deleteRange.ts +3 -3
- package/src/commands/deleteSelection.ts +3 -3
- package/src/commands/enter.ts +3 -3
- package/src/commands/exitCode.ts +3 -3
- package/src/commands/extendMarkRange.ts +10 -10
- package/src/commands/first.ts +3 -3
- package/src/commands/focus.ts +45 -44
- package/src/commands/forEach.ts +24 -0
- package/src/commands/insertContent.ts +12 -24
- package/src/commands/insertContentAt.ts +107 -0
- package/src/commands/joinBackward.ts +3 -3
- package/src/commands/joinForward.ts +3 -3
- package/src/commands/keyboardShortcut.ts +6 -6
- package/src/commands/lift.ts +5 -5
- package/src/commands/liftEmptyBlock.ts +3 -3
- package/src/commands/liftListItem.ts +4 -4
- package/src/commands/newlineInCode.ts +3 -3
- package/src/commands/resetAttributes.ts +61 -0
- package/src/commands/scrollIntoView.ts +3 -3
- package/src/commands/selectAll.ts +8 -6
- package/src/commands/selectNodeBackward.ts +3 -3
- package/src/commands/selectNodeForward.ts +3 -3
- package/src/commands/selectParentNode.ts +3 -3
- package/src/commands/selectTextblockEnd.ts +19 -0
- package/src/commands/selectTextblockStart.ts +19 -0
- package/src/commands/setContent.ts +7 -11
- package/src/commands/setMark.ts +35 -12
- package/src/commands/setMeta.ts +18 -0
- package/src/commands/setNode.ts +27 -6
- package/src/commands/setNodeSelection.ts +28 -0
- package/src/commands/setTextSelection.ts +32 -0
- package/src/commands/sinkListItem.ts +4 -4
- package/src/commands/splitBlock.ts +14 -9
- package/src/commands/splitListItem.ts +41 -15
- package/src/commands/toggleList.ts +82 -18
- package/src/commands/toggleMark.ts +17 -7
- package/src/commands/toggleNode.ts +5 -5
- package/src/commands/toggleWrap.ts +8 -9
- package/src/commands/undoInputRule.ts +34 -5
- package/src/commands/unsetAllMarks.ts +7 -11
- package/src/commands/unsetMark.ts +34 -22
- package/src/commands/updateAttributes.ts +72 -0
- package/src/commands/wrapIn.ts +4 -10
- package/src/commands/wrapInList.ts +4 -4
- package/src/extensions/clipboardTextSerializer.ts +13 -35
- package/src/extensions/commands.ts +30 -21
- package/src/extensions/focusEvents.ts +0 -3
- package/src/extensions/index.ts +1 -0
- package/src/extensions/keymap.ts +111 -13
- package/src/extensions/tabindex.ts +19 -0
- package/src/helpers/combineTransactionSteps.ts +18 -0
- package/src/helpers/createChainableState.ts +37 -0
- package/src/helpers/createDocument.ts +5 -7
- package/src/helpers/createNodeFromContent.ts +15 -18
- package/src/helpers/defaultBlockAt.ts +13 -0
- package/src/helpers/findChildren.ts +17 -0
- package/src/helpers/findChildrenInRange.ts +31 -0
- package/src/helpers/findParentNode.ts +2 -2
- package/src/helpers/findParentNodeClosestToPos.ts +1 -1
- package/src/helpers/generateHTML.ts +5 -5
- package/src/helpers/generateJSON.ts +13 -0
- package/src/helpers/generateText.ts +29 -0
- package/src/helpers/getAttributes.ts +27 -0
- package/src/helpers/getAttributesFromExtensions.ts +28 -7
- package/src/helpers/getChangedRanges.ts +82 -0
- package/src/helpers/getDebugJSON.ts +53 -0
- package/src/helpers/getExtensionField.ts +25 -0
- package/src/helpers/getHTMLFromFragment.ts +6 -5
- package/src/helpers/getMarkAttributes.ts +12 -9
- package/src/helpers/getMarkRange.ts +34 -6
- package/src/helpers/getMarkType.ts +5 -1
- package/src/helpers/getMarksBetween.ts +31 -10
- package/src/helpers/getNodeAttributes.ts +7 -8
- package/src/helpers/getNodeType.ts +5 -1
- package/src/helpers/getRenderedAttributes.ts +4 -6
- package/src/helpers/getSchema.ts +6 -133
- package/src/helpers/getSchemaByResolvedExtensions.ts +147 -0
- package/src/helpers/getSchemaTypeByName.ts +2 -10
- package/src/helpers/getSchemaTypeNameByName.ts +1 -1
- package/src/helpers/getSplittedAttributes.ts +4 -4
- package/src/helpers/getText.ts +18 -0
- package/src/helpers/getTextBetween.ts +45 -0
- package/src/helpers/getTextSeralizersFromSchema.ts +9 -0
- package/src/helpers/injectExtensionAttributesToParseRule.ts +15 -17
- package/src/helpers/isActive.ts +4 -5
- package/src/helpers/isExtensionRulesEnabled.ts +15 -0
- package/src/helpers/isList.ts +14 -7
- package/src/helpers/isMarkActive.ts +43 -19
- package/src/helpers/isNodeActive.ts +26 -34
- package/src/helpers/isNodeEmpty.ts +1 -1
- package/src/helpers/isNodeSelection.ts +2 -2
- package/src/helpers/isTextSelection.ts +2 -2
- package/src/helpers/posToDOMRect.ts +34 -0
- package/src/helpers/resolveFocusPosition.ts +34 -0
- package/src/helpers/selectionToInsertionEnd.ts +1 -1
- package/src/helpers/splitExtensions.ts +1 -1
- package/src/index.ts +53 -20
- package/src/inputRules/markInputRule.ts +58 -39
- package/src/inputRules/nodeInputRule.ts +44 -11
- package/src/inputRules/textInputRule.ts +35 -0
- package/src/inputRules/textblockTypeInputRule.ts +37 -0
- package/src/inputRules/wrappingInputRule.ts +59 -0
- package/src/pasteRules/markPasteRule.ts +61 -53
- package/src/pasteRules/textPasteRule.ts +35 -0
- package/src/style.ts +16 -3
- package/src/types.ts +119 -37
- package/src/utilities/callOrReturn.ts +6 -3
- package/src/utilities/createStyleTag.ts +8 -1
- package/src/utilities/deleteProps.ts +2 -4
- package/src/utilities/elementFromString.ts +4 -5
- package/src/utilities/escapeForRegEx.ts +4 -0
- package/src/utilities/findDuplicates.ts +5 -0
- package/src/utilities/fromString.ts +2 -2
- package/src/utilities/isClass.ts +2 -2
- package/src/utilities/isEmptyObject.ts +2 -2
- package/src/utilities/isFunction.ts +3 -0
- package/src/utilities/isMacOS.ts +5 -0
- package/src/utilities/isNumber.ts +3 -0
- package/src/utilities/isObject.ts +6 -6
- package/src/utilities/isPlainObject.ts +8 -5
- package/src/utilities/isRegExp.ts +3 -0
- package/src/utilities/isString.ts +3 -0
- package/src/utilities/isiOS.ts +12 -0
- package/src/utilities/mergeAttributes.ts +2 -3
- package/src/utilities/mergeDeep.ts +2 -3
- package/src/utilities/minMax.ts +1 -1
- package/src/utilities/objectIncludes.ts +17 -5
- package/src/utilities/removeDuplicates.ts +15 -0
- package/CHANGELOG.md +0 -324
- package/dist/packages/core/src/commands/insertHTML.d.ts +0 -12
- package/dist/packages/core/src/commands/insertNode.d.ts +0 -13
- package/dist/packages/core/src/commands/insertText.d.ts +0 -12
- package/dist/packages/core/src/commands/replace.d.ts +0 -13
- package/dist/packages/core/src/commands/replaceRange.d.ts +0 -13
- package/dist/packages/core/src/commands/resetNodeAttributes.d.ts +0 -13
- package/dist/packages/core/src/commands/updateNodeAttributes.d.ts +0 -13
- package/dist/packages/core/src/utilities/removeElement.d.ts +0 -1
- package/dist/tiptap-core.bundle.umd.min.js +0 -17
- package/dist/tiptap-core.bundle.umd.min.js.map +0 -1
- package/src/commands/insertHTML.ts +0 -30
- package/src/commands/insertNode.ts +0 -33
- package/src/commands/insertText.ts +0 -22
- package/src/commands/replace.ts +0 -20
- package/src/commands/replaceRange.ts +0 -36
- package/src/commands/resetNodeAttributes.ts +0 -31
- package/src/commands/updateNodeAttributes.ts +0 -33
- package/src/utilities/removeElement.ts +0 -5
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { InputRule, InputRuleFinder } from '../InputRule';
|
|
2
|
+
import { NodeType } from 'prosemirror-model';
|
|
3
|
+
import { ExtendedRegExpMatchArray } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* Build an input rule that changes the type of a textblock when the
|
|
6
|
+
* matched text is typed into it. When using a regular expresion you’ll
|
|
7
|
+
* probably want the regexp to start with `^`, so that the pattern can
|
|
8
|
+
* only occur at the start of a textblock.
|
|
9
|
+
*/
|
|
10
|
+
export declare function textblockTypeInputRule(config: {
|
|
11
|
+
find: InputRuleFinder;
|
|
12
|
+
type: NodeType;
|
|
13
|
+
getAttributes?: Record<string, any> | ((match: ExtendedRegExpMatchArray) => Record<string, any>) | false | null;
|
|
14
|
+
}): InputRule;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { InputRule, InputRuleFinder } from '../InputRule';
|
|
2
|
+
import { NodeType, Node as ProseMirrorNode } from 'prosemirror-model';
|
|
3
|
+
import { ExtendedRegExpMatchArray } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* Build an input rule for automatically wrapping a textblock when a
|
|
6
|
+
* given string is typed. When using a regular expresion you’ll
|
|
7
|
+
* probably want the regexp to start with `^`, so that the pattern can
|
|
8
|
+
* only occur at the start of a textblock.
|
|
9
|
+
*
|
|
10
|
+
* `type` is the type of node to wrap in.
|
|
11
|
+
*
|
|
12
|
+
* By default, if there’s a node with the same type above the newly
|
|
13
|
+
* wrapped node, the rule will try to join those
|
|
14
|
+
* two nodes. You can pass a join predicate, which takes a regular
|
|
15
|
+
* expression match and the node before the wrapped node, and can
|
|
16
|
+
* return a boolean to indicate whether a join should happen.
|
|
17
|
+
*/
|
|
18
|
+
export declare function wrappingInputRule(config: {
|
|
19
|
+
find: InputRuleFinder;
|
|
20
|
+
type: NodeType;
|
|
21
|
+
getAttributes?: Record<string, any> | ((match: ExtendedRegExpMatchArray) => Record<string, any>) | false | null;
|
|
22
|
+
joinPredicate?: (match: ExtendedRegExpMatchArray, node: ProseMirrorNode) => boolean;
|
|
23
|
+
}): InputRule;
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PasteRule, PasteRuleFinder } from '../PasteRule';
|
|
2
2
|
import { MarkType } from 'prosemirror-model';
|
|
3
|
-
|
|
3
|
+
import { ExtendedRegExpMatchArray } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* Build an paste rule that adds a mark when the
|
|
6
|
+
* matched text is pasted into it.
|
|
7
|
+
*/
|
|
8
|
+
export declare function markPasteRule(config: {
|
|
9
|
+
find: PasteRuleFinder;
|
|
10
|
+
type: MarkType;
|
|
11
|
+
getAttributes?: Record<string, any> | ((match: ExtendedRegExpMatchArray) => Record<string, any>) | false | null;
|
|
12
|
+
}): PasteRule;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PasteRule, PasteRuleFinder } from '../PasteRule';
|
|
2
|
+
/**
|
|
3
|
+
* Build an paste rule that replaces text when the
|
|
4
|
+
* matched text is pasted into it.
|
|
5
|
+
*/
|
|
6
|
+
export declare function textPasteRule(config: {
|
|
7
|
+
find: PasteRuleFinder;
|
|
8
|
+
replace: string;
|
|
9
|
+
}): PasteRule;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
declare const style = ".ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n}\n\n.ProseMirror [contenteditable=\"false\"] {\n white-space: normal;\n}\n\n.ProseMirror [contenteditable=\"false\"] [contenteditable=\"true\"] {\n white-space: pre-wrap;\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\n.ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n}\n\n.ProseMirror-gapcursor:after {\n content: \"\";\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-hideselection *::selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection * {\n caret-color: transparent;\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}";
|
|
2
|
-
export default style;
|
|
1
|
+
export declare const style = ".ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: \"liga\" 0; /* the above doesn't seem to work in Edge */\n}\n\n.ProseMirror [contenteditable=\"false\"] {\n white-space: normal;\n}\n\n.ProseMirror [contenteditable=\"false\"] [contenteditable=\"true\"] {\n white-space: pre-wrap;\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n width: 1px !important;\n height: 1px !important;\n}\n\n.ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n margin: 0;\n}\n\n.ProseMirror-gapcursor:after {\n content: \"\";\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-hideselection *::selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection * {\n caret-color: transparent;\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n\n.tippy-box[data-animation=fade][data-state=hidden] {\n opacity: 0\n}";
|
|
@@ -5,49 +5,84 @@ import { Extension } from './Extension';
|
|
|
5
5
|
import { Node } from './Node';
|
|
6
6
|
import { Mark } from './Mark';
|
|
7
7
|
import { Editor } from './Editor';
|
|
8
|
-
import { Commands } from '.';
|
|
9
|
-
export declare type
|
|
10
|
-
export
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
onCreate: (props: {
|
|
8
|
+
import { Commands, ExtensionConfig, NodeConfig, MarkConfig } from '.';
|
|
9
|
+
export declare type AnyConfig = ExtensionConfig | NodeConfig | MarkConfig;
|
|
10
|
+
export declare type AnyExtension = Extension | Node | Mark;
|
|
11
|
+
export declare type Extensions = AnyExtension[];
|
|
12
|
+
export declare type ParentConfig<T> = Partial<{
|
|
13
|
+
[P in keyof T]: Required<T>[P] extends (...args: any) => any ? (...args: Parameters<Required<T>[P]>) => ReturnType<Required<T>[P]> : T[P];
|
|
14
|
+
}>;
|
|
15
|
+
export declare type Primitive = null | undefined | string | number | boolean | symbol | bigint;
|
|
16
|
+
export declare type RemoveThis<T> = T extends (...args: any) => any ? (...args: Parameters<T>) => ReturnType<T> : T;
|
|
17
|
+
export declare type MaybeReturnType<T> = T extends (...args: any) => any ? ReturnType<T> : T;
|
|
18
|
+
export declare type MaybeThisParameterType<T> = Exclude<T, Primitive> extends (...args: any) => any ? ThisParameterType<Exclude<T, Primitive>> : any;
|
|
19
|
+
export interface EditorEvents {
|
|
20
|
+
beforeCreate: {
|
|
22
21
|
editor: Editor;
|
|
23
|
-
}
|
|
24
|
-
|
|
22
|
+
};
|
|
23
|
+
create: {
|
|
25
24
|
editor: Editor;
|
|
26
|
-
}
|
|
27
|
-
|
|
25
|
+
};
|
|
26
|
+
update: {
|
|
28
27
|
editor: Editor;
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
transaction: Transaction;
|
|
29
|
+
};
|
|
30
|
+
selectionUpdate: {
|
|
31
31
|
editor: Editor;
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
transaction: Transaction;
|
|
33
|
+
};
|
|
34
|
+
transaction: {
|
|
34
35
|
editor: Editor;
|
|
35
36
|
transaction: Transaction;
|
|
36
|
-
}
|
|
37
|
-
|
|
37
|
+
};
|
|
38
|
+
focus: {
|
|
38
39
|
editor: Editor;
|
|
39
40
|
event: FocusEvent;
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
transaction: Transaction;
|
|
42
|
+
};
|
|
43
|
+
blur: {
|
|
42
44
|
editor: Editor;
|
|
43
45
|
event: FocusEvent;
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}) => void;
|
|
48
|
-
onDestroy: () => void;
|
|
46
|
+
transaction: Transaction;
|
|
47
|
+
};
|
|
48
|
+
destroy: void;
|
|
49
49
|
}
|
|
50
|
-
export declare type
|
|
50
|
+
export declare type EnableRules = (AnyExtension | string)[] | boolean;
|
|
51
|
+
export interface EditorOptions {
|
|
52
|
+
element: Element;
|
|
53
|
+
content: Content;
|
|
54
|
+
extensions: Extensions;
|
|
55
|
+
injectCSS: boolean;
|
|
56
|
+
autofocus: FocusPosition;
|
|
57
|
+
editable: boolean;
|
|
58
|
+
editorProps: EditorProps;
|
|
59
|
+
parseOptions: ParseOptions;
|
|
60
|
+
enableInputRules: EnableRules;
|
|
61
|
+
enablePasteRules: EnableRules;
|
|
62
|
+
enableCoreExtensions: boolean;
|
|
63
|
+
onBeforeCreate: (props: EditorEvents['beforeCreate']) => void;
|
|
64
|
+
onCreate: (props: EditorEvents['create']) => void;
|
|
65
|
+
onUpdate: (props: EditorEvents['update']) => void;
|
|
66
|
+
onSelectionUpdate: (props: EditorEvents['selectionUpdate']) => void;
|
|
67
|
+
onTransaction: (props: EditorEvents['transaction']) => void;
|
|
68
|
+
onFocus: (props: EditorEvents['focus']) => void;
|
|
69
|
+
onBlur: (props: EditorEvents['blur']) => void;
|
|
70
|
+
onDestroy: (props: EditorEvents['destroy']) => void;
|
|
71
|
+
}
|
|
72
|
+
export declare type HTMLContent = string;
|
|
73
|
+
export declare type JSONContent = {
|
|
74
|
+
type?: string;
|
|
75
|
+
attrs?: Record<string, any>;
|
|
76
|
+
content?: JSONContent[];
|
|
77
|
+
marks?: {
|
|
78
|
+
type: string;
|
|
79
|
+
attrs?: Record<string, any>;
|
|
80
|
+
[key: string]: any;
|
|
81
|
+
}[];
|
|
82
|
+
text?: string;
|
|
83
|
+
[key: string]: any;
|
|
84
|
+
};
|
|
85
|
+
export declare type Content = HTMLContent | JSONContent | JSONContent[] | null;
|
|
51
86
|
export declare type CommandProps = {
|
|
52
87
|
editor: Editor;
|
|
53
88
|
tr: Transaction;
|
|
@@ -60,17 +95,14 @@ export declare type CommandProps = {
|
|
|
60
95
|
};
|
|
61
96
|
export declare type Command = (props: CommandProps) => boolean;
|
|
62
97
|
export declare type CommandSpec = (...args: any[]) => Command;
|
|
98
|
+
export declare type KeyboardShortcutCommand = (props: {
|
|
99
|
+
editor: Editor;
|
|
100
|
+
}) => boolean;
|
|
63
101
|
export declare type Attribute = {
|
|
64
102
|
default: any;
|
|
65
103
|
rendered?: boolean;
|
|
66
|
-
renderHTML?: ((attributes:
|
|
67
|
-
|
|
68
|
-
}) => {
|
|
69
|
-
[key: string]: any;
|
|
70
|
-
} | null) | null;
|
|
71
|
-
parseHTML?: ((element: HTMLElement) => {
|
|
72
|
-
[key: string]: any;
|
|
73
|
-
} | null) | null;
|
|
104
|
+
renderHTML?: ((attributes: Record<string, any>) => Record<string, any> | null) | null;
|
|
105
|
+
parseHTML?: ((element: HTMLElement) => any | null) | null;
|
|
74
106
|
keepOnSplit: boolean;
|
|
75
107
|
};
|
|
76
108
|
export declare type Attributes = {
|
|
@@ -97,9 +129,6 @@ export declare type Diff<T extends keyof any, U extends keyof any> = ({
|
|
|
97
129
|
[x: string]: never;
|
|
98
130
|
})[T];
|
|
99
131
|
export declare type Overwrite<T, U> = Pick<T, Diff<keyof T, keyof U>> & U;
|
|
100
|
-
export declare type AnyObject = {
|
|
101
|
-
[key: string]: any;
|
|
102
|
-
};
|
|
103
132
|
export declare type ValuesOf<T> = T[keyof T];
|
|
104
133
|
export declare type KeysWithTypeOf<T, Type> = ({
|
|
105
134
|
[P in keyof T]: T[P] extends Type ? P : never;
|
|
@@ -111,35 +140,46 @@ export declare type NodeViewProps = {
|
|
|
111
140
|
selected: boolean;
|
|
112
141
|
extension: Node;
|
|
113
142
|
getPos: () => number;
|
|
114
|
-
updateAttributes: (attributes:
|
|
143
|
+
updateAttributes: (attributes: Record<string, any>) => void;
|
|
144
|
+
deleteNode: () => void;
|
|
115
145
|
};
|
|
146
|
+
export interface NodeViewRendererOptions {
|
|
147
|
+
stopEvent: ((props: {
|
|
148
|
+
event: Event;
|
|
149
|
+
}) => boolean) | null;
|
|
150
|
+
ignoreMutation: ((props: {
|
|
151
|
+
mutation: MutationRecord | {
|
|
152
|
+
type: 'selection';
|
|
153
|
+
target: Element;
|
|
154
|
+
};
|
|
155
|
+
}) => boolean) | null;
|
|
156
|
+
}
|
|
116
157
|
export declare type NodeViewRendererProps = {
|
|
117
158
|
editor: Editor;
|
|
118
159
|
node: ProseMirrorNode;
|
|
119
160
|
getPos: (() => number) | boolean;
|
|
120
|
-
HTMLAttributes:
|
|
121
|
-
[key: string]: any;
|
|
122
|
-
};
|
|
161
|
+
HTMLAttributes: Record<string, any>;
|
|
123
162
|
decorations: Decoration[];
|
|
124
163
|
extension: Node;
|
|
125
164
|
};
|
|
126
165
|
export declare type NodeViewRenderer = (props: NodeViewRendererProps) => (NodeView | {});
|
|
127
|
-
export declare type
|
|
166
|
+
export declare type AnyCommands = Record<string, (...args: any[]) => Command>;
|
|
167
|
+
export declare type UnionCommands<T = Command> = UnionToIntersection<ValuesOf<Pick<Commands<T>, KeysWithTypeOf<Commands<T>, {}>>>>;
|
|
128
168
|
export declare type RawCommands = {
|
|
129
|
-
[Item in keyof UnionCommands]: UnionCommands
|
|
169
|
+
[Item in keyof UnionCommands]: UnionCommands<Command>[Item];
|
|
130
170
|
};
|
|
131
171
|
export declare type SingleCommands = {
|
|
132
|
-
[Item in keyof
|
|
172
|
+
[Item in keyof UnionCommands]: UnionCommands<boolean>[Item];
|
|
133
173
|
};
|
|
134
174
|
export declare type ChainedCommands = {
|
|
135
|
-
[Item in keyof
|
|
175
|
+
[Item in keyof UnionCommands]: UnionCommands<ChainedCommands>[Item];
|
|
136
176
|
} & {
|
|
137
177
|
run: () => boolean;
|
|
138
178
|
};
|
|
139
179
|
export declare type CanCommands = SingleCommands & {
|
|
140
180
|
chain: () => ChainedCommands;
|
|
141
181
|
};
|
|
142
|
-
export declare type FocusPosition = 'start' | 'end' | number | boolean | null;
|
|
182
|
+
export declare type FocusPosition = 'start' | 'end' | 'all' | number | boolean | null;
|
|
143
183
|
export declare type Range = {
|
|
144
184
|
from: number;
|
|
145
185
|
to: number;
|
|
@@ -155,3 +195,16 @@ export declare type MarkRange = {
|
|
|
155
195
|
to: number;
|
|
156
196
|
};
|
|
157
197
|
export declare type Predicate = (node: ProseMirrorNode) => boolean;
|
|
198
|
+
export declare type NodeWithPos = {
|
|
199
|
+
node: ProseMirrorNode;
|
|
200
|
+
pos: number;
|
|
201
|
+
};
|
|
202
|
+
export declare type TextSerializer = (props: {
|
|
203
|
+
node: ProseMirrorNode;
|
|
204
|
+
pos: number;
|
|
205
|
+
parent: ProseMirrorNode;
|
|
206
|
+
index: number;
|
|
207
|
+
}) => string;
|
|
208
|
+
export declare type ExtendedRegExpMatchArray = RegExpMatchArray & {
|
|
209
|
+
data?: Record<string, any>;
|
|
210
|
+
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MaybeReturnType } from '../types';
|
|
1
2
|
/**
|
|
2
3
|
* Optionally calls `value` as a function.
|
|
3
4
|
* Otherwise it is returned directly.
|
|
@@ -5,4 +6,4 @@
|
|
|
5
6
|
* @param context Optional context to bind to function.
|
|
6
7
|
* @param props Optional props to pass to function.
|
|
7
8
|
*/
|
|
8
|
-
export
|
|
9
|
+
export declare function callOrReturn<T>(value: T, context?: any, ...props: any[]): MaybeReturnType<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function createStyleTag(style: string): HTMLStyleElement;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { AnyObject } from '../types';
|
|
2
1
|
/**
|
|
3
2
|
* Remove a property or an array of properties from an object
|
|
4
3
|
* @param obj Object
|
|
5
4
|
* @param key Key to remove
|
|
6
5
|
*/
|
|
7
|
-
export
|
|
6
|
+
export declare function deleteProps(obj: Record<string, any>, propOrProps: string | string[]): Record<string, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function elementFromString(value: string): HTMLElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function escapeForRegEx(string: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function findDuplicates(items: any[]): any[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function fromString(value: any): any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function isClass(value: any): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function isEmptyObject(value?: {}): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isFunction(value: any): value is Function;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isMacOS(): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isNumber(value: any): value is number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function isObject(value: any): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function isPlainObject(value: any): value is Record<string, any>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isRegExp(value: any): value is RegExp;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isiOS(): boolean;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export default function mergeAttributes(...objects: AnyObject[]): AnyObject;
|
|
1
|
+
export declare function mergeAttributes(...objects: Record<string, any>[]): Record<string, any>;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export default function mergeDeep(target: AnyObject, source: AnyObject): AnyObject;
|
|
1
|
+
export declare function mergeDeep(target: Record<string, any>, source: Record<string, any>): Record<string, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function minMax(value?: number, min?: number, max?: number): number;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { AnyObject } from '../types';
|
|
2
1
|
/**
|
|
3
2
|
* Check if object1 includes object2
|
|
4
3
|
* @param object1 Object
|
|
5
4
|
* @param object2 Object
|
|
6
5
|
*/
|
|
7
|
-
export
|
|
6
|
+
export declare function objectIncludes(object1: Record<string, any>, object2: Record<string, any>, options?: {
|
|
7
|
+
strict: boolean;
|
|
8
|
+
}): boolean;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Removes duplicated values within an array.
|
|
3
|
+
* Supports numbers, strings and objects.
|
|
4
|
+
*/
|
|
5
|
+
export declare function removeDuplicates<T>(array: T[], by?: {
|
|
6
|
+
(value: any, replacer?: ((this: any, key: string, value: any) => any) | undefined, space?: string | number | undefined): string;
|
|
7
|
+
(value: any, replacer?: (string | number)[] | null | undefined, space?: string | number | undefined): string;
|
|
8
|
+
}): T[];
|