@tiptap/vue-3 2.5.0-beta.1 → 2.5.0-beta.3

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.
Files changed (188) hide show
  1. package/dist/index.cjs +453 -447
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.js +453 -445
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.umd.js +453 -447
  6. package/dist/index.umd.js.map +1 -1
  7. package/dist/packages/core/src/CommandManager.d.ts +20 -0
  8. package/dist/packages/core/src/Editor.d.ts +161 -0
  9. package/dist/packages/core/src/EventEmitter.d.ts +11 -0
  10. package/dist/packages/core/src/Extension.d.ts +343 -0
  11. package/dist/packages/core/src/ExtensionManager.d.ts +55 -0
  12. package/dist/packages/core/src/InputRule.d.ts +42 -0
  13. package/dist/packages/core/src/Mark.d.ts +451 -0
  14. package/dist/packages/core/src/Node.d.ts +611 -0
  15. package/dist/packages/core/src/NodePos.d.ts +44 -0
  16. package/dist/packages/core/src/NodeView.d.ts +31 -0
  17. package/dist/packages/core/src/PasteRule.d.ts +50 -0
  18. package/dist/packages/core/src/Tracker.d.ts +11 -0
  19. package/dist/packages/core/src/commands/blur.d.ts +13 -0
  20. package/dist/packages/core/src/commands/clearContent.d.ts +14 -0
  21. package/dist/packages/core/src/commands/clearNodes.d.ts +13 -0
  22. package/dist/packages/core/src/commands/command.d.ts +18 -0
  23. package/dist/packages/core/src/commands/createParagraphNear.d.ts +13 -0
  24. package/dist/packages/core/src/commands/cut.d.ts +20 -0
  25. package/dist/packages/core/src/commands/deleteCurrentNode.d.ts +13 -0
  26. package/dist/packages/core/src/commands/deleteNode.d.ts +15 -0
  27. package/dist/packages/core/src/commands/deleteRange.d.ts +14 -0
  28. package/dist/packages/core/src/commands/deleteSelection.d.ts +13 -0
  29. package/dist/packages/core/src/commands/enter.d.ts +13 -0
  30. package/dist/packages/core/src/commands/exitCode.d.ts +13 -0
  31. package/dist/packages/core/src/commands/extendMarkRange.d.ts +25 -0
  32. package/dist/packages/core/src/commands/first.d.ts +14 -0
  33. package/dist/packages/core/src/commands/focus.d.ts +27 -0
  34. package/dist/packages/core/src/commands/forEach.d.ts +14 -0
  35. package/dist/packages/core/src/commands/index.d.ts +55 -0
  36. package/dist/packages/core/src/commands/insertContent.d.ts +34 -0
  37. package/dist/packages/core/src/commands/insertContentAt.d.ts +47 -0
  38. package/dist/packages/core/src/commands/join.d.ts +41 -0
  39. package/dist/packages/core/src/commands/joinItemBackward.d.ts +13 -0
  40. package/dist/packages/core/src/commands/joinItemForward.d.ts +13 -0
  41. package/dist/packages/core/src/commands/joinTextblockBackward.d.ts +12 -0
  42. package/dist/packages/core/src/commands/joinTextblockForward.d.ts +12 -0
  43. package/dist/packages/core/src/commands/keyboardShortcut.d.ts +14 -0
  44. package/dist/packages/core/src/commands/lift.d.ts +17 -0
  45. package/dist/packages/core/src/commands/liftEmptyBlock.d.ts +13 -0
  46. package/dist/packages/core/src/commands/liftListItem.d.ts +15 -0
  47. package/dist/packages/core/src/commands/newlineInCode.d.ts +13 -0
  48. package/dist/packages/core/src/commands/resetAttributes.d.ts +16 -0
  49. package/dist/packages/core/src/commands/scrollIntoView.d.ts +13 -0
  50. package/dist/packages/core/src/commands/selectAll.d.ts +13 -0
  51. package/dist/packages/core/src/commands/selectNodeBackward.d.ts +13 -0
  52. package/dist/packages/core/src/commands/selectNodeForward.d.ts +13 -0
  53. package/dist/packages/core/src/commands/selectParentNode.d.ts +13 -0
  54. package/dist/packages/core/src/commands/selectTextblockEnd.d.ts +13 -0
  55. package/dist/packages/core/src/commands/selectTextblockStart.d.ts +13 -0
  56. package/dist/packages/core/src/commands/setContent.d.ts +40 -0
  57. package/dist/packages/core/src/commands/setMark.d.ts +15 -0
  58. package/dist/packages/core/src/commands/setMeta.d.ts +15 -0
  59. package/dist/packages/core/src/commands/setNode.d.ts +16 -0
  60. package/dist/packages/core/src/commands/setNodeSelection.d.ts +14 -0
  61. package/dist/packages/core/src/commands/setTextSelection.d.ts +14 -0
  62. package/dist/packages/core/src/commands/sinkListItem.d.ts +15 -0
  63. package/dist/packages/core/src/commands/splitBlock.d.ts +17 -0
  64. package/dist/packages/core/src/commands/splitListItem.d.ts +15 -0
  65. package/dist/packages/core/src/commands/toggleList.d.ts +18 -0
  66. package/dist/packages/core/src/commands/toggleMark.d.ts +30 -0
  67. package/dist/packages/core/src/commands/toggleNode.d.ts +17 -0
  68. package/dist/packages/core/src/commands/toggleWrap.d.ts +16 -0
  69. package/dist/packages/core/src/commands/undoInputRule.d.ts +13 -0
  70. package/dist/packages/core/src/commands/unsetAllMarks.d.ts +13 -0
  71. package/dist/packages/core/src/commands/unsetMark.d.ts +25 -0
  72. package/dist/packages/core/src/commands/updateAttributes.d.ts +24 -0
  73. package/dist/packages/core/src/commands/wrapIn.d.ts +16 -0
  74. package/dist/packages/core/src/commands/wrapInList.d.ts +16 -0
  75. package/dist/packages/core/src/extensions/clipboardTextSerializer.d.ts +5 -0
  76. package/dist/packages/core/src/extensions/commands.d.ts +3 -0
  77. package/dist/packages/core/src/extensions/editable.d.ts +2 -0
  78. package/dist/packages/core/src/extensions/focusEvents.d.ts +2 -0
  79. package/dist/packages/core/src/extensions/index.d.ts +6 -0
  80. package/dist/packages/core/src/extensions/keymap.d.ts +2 -0
  81. package/dist/packages/core/src/extensions/tabindex.d.ts +2 -0
  82. package/dist/packages/core/src/helpers/combineTransactionSteps.d.ts +10 -0
  83. package/dist/packages/core/src/helpers/createChainableState.d.ts +10 -0
  84. package/dist/packages/core/src/helpers/createDocument.d.ts +12 -0
  85. package/dist/packages/core/src/helpers/createNodeFromContent.d.ts +15 -0
  86. package/dist/packages/core/src/helpers/defaultBlockAt.d.ts +7 -0
  87. package/dist/packages/core/src/helpers/findChildren.d.ts +9 -0
  88. package/dist/packages/core/src/helpers/findChildrenInRange.d.ts +10 -0
  89. package/dist/packages/core/src/helpers/findParentNode.d.ts +16 -0
  90. package/dist/packages/core/src/helpers/findParentNodeClosestToPos.d.ts +17 -0
  91. package/dist/packages/core/src/helpers/generateHTML.d.ts +8 -0
  92. package/dist/packages/core/src/helpers/generateJSON.d.ts +8 -0
  93. package/dist/packages/core/src/helpers/generateText.d.ts +12 -0
  94. package/dist/packages/core/src/helpers/getAttributes.d.ts +9 -0
  95. package/dist/packages/core/src/helpers/getAttributesFromExtensions.d.ts +6 -0
  96. package/dist/packages/core/src/helpers/getChangedRanges.d.ts +11 -0
  97. package/dist/packages/core/src/helpers/getDebugJSON.d.ts +8 -0
  98. package/dist/packages/core/src/helpers/getExtensionField.d.ts +9 -0
  99. package/dist/packages/core/src/helpers/getHTMLFromFragment.d.ts +2 -0
  100. package/dist/packages/core/src/helpers/getMarkAttributes.d.ts +3 -0
  101. package/dist/packages/core/src/helpers/getMarkRange.d.ts +3 -0
  102. package/dist/packages/core/src/helpers/getMarkType.d.ts +2 -0
  103. package/dist/packages/core/src/helpers/getMarksBetween.d.ts +3 -0
  104. package/dist/packages/core/src/helpers/getNodeAtPosition.d.ts +11 -0
  105. package/dist/packages/core/src/helpers/getNodeAttributes.d.ts +3 -0
  106. package/dist/packages/core/src/helpers/getNodeType.d.ts +2 -0
  107. package/dist/packages/core/src/helpers/getRenderedAttributes.d.ts +3 -0
  108. package/dist/packages/core/src/helpers/getSchema.d.ts +4 -0
  109. package/dist/packages/core/src/helpers/getSchemaByResolvedExtensions.d.ts +10 -0
  110. package/dist/packages/core/src/helpers/getSchemaTypeByName.d.ts +8 -0
  111. package/dist/packages/core/src/helpers/getSchemaTypeNameByName.d.ts +8 -0
  112. package/dist/packages/core/src/helpers/getSplittedAttributes.d.ts +9 -0
  113. package/dist/packages/core/src/helpers/getText.d.ts +15 -0
  114. package/dist/packages/core/src/helpers/getTextBetween.d.ts +14 -0
  115. package/dist/packages/core/src/helpers/getTextContentFromNodes.d.ts +8 -0
  116. package/dist/packages/core/src/helpers/getTextSerializersFromSchema.d.ts +8 -0
  117. package/dist/packages/core/src/helpers/index.d.ts +50 -0
  118. package/dist/packages/core/src/helpers/injectExtensionAttributesToParseRule.d.ts +9 -0
  119. package/dist/packages/core/src/helpers/isActive.d.ts +2 -0
  120. package/dist/packages/core/src/helpers/isAtEndOfNode.d.ts +2 -0
  121. package/dist/packages/core/src/helpers/isAtStartOfNode.d.ts +2 -0
  122. package/dist/packages/core/src/helpers/isExtensionRulesEnabled.d.ts +2 -0
  123. package/dist/packages/core/src/helpers/isList.d.ts +2 -0
  124. package/dist/packages/core/src/helpers/isMarkActive.d.ts +3 -0
  125. package/dist/packages/core/src/helpers/isNodeActive.d.ts +3 -0
  126. package/dist/packages/core/src/helpers/isNodeEmpty.d.ts +2 -0
  127. package/dist/packages/core/src/helpers/isNodeSelection.d.ts +2 -0
  128. package/dist/packages/core/src/helpers/isTextSelection.d.ts +2 -0
  129. package/dist/packages/core/src/helpers/posToDOMRect.d.ts +2 -0
  130. package/dist/packages/core/src/helpers/resolveFocusPosition.d.ts +4 -0
  131. package/dist/packages/core/src/helpers/selectionToInsertionEnd.d.ts +2 -0
  132. package/dist/packages/core/src/helpers/splitExtensions.d.ts +9 -0
  133. package/dist/packages/core/src/index.d.ts +24 -0
  134. package/dist/packages/core/src/inputRules/index.d.ts +5 -0
  135. package/dist/packages/core/src/inputRules/markInputRule.d.ts +13 -0
  136. package/dist/packages/core/src/inputRules/nodeInputRule.d.ts +23 -0
  137. package/dist/packages/core/src/inputRules/textInputRule.d.ts +10 -0
  138. package/dist/packages/core/src/inputRules/textblockTypeInputRule.d.ts +15 -0
  139. package/dist/packages/core/src/inputRules/wrappingInputRule.d.ts +28 -0
  140. package/dist/packages/core/src/pasteRules/index.d.ts +3 -0
  141. package/dist/packages/core/src/pasteRules/markPasteRule.d.ts +13 -0
  142. package/dist/packages/core/src/pasteRules/nodePasteRule.d.ts +13 -0
  143. package/dist/packages/core/src/pasteRules/textPasteRule.d.ts +10 -0
  144. package/dist/packages/core/src/style.d.ts +1 -0
  145. package/dist/packages/core/src/types.d.ts +250 -0
  146. package/dist/packages/core/src/utilities/callOrReturn.d.ts +9 -0
  147. package/dist/packages/core/src/utilities/createStyleTag.d.ts +1 -0
  148. package/dist/packages/core/src/utilities/deleteProps.d.ts +6 -0
  149. package/dist/packages/core/src/utilities/elementFromString.d.ts +1 -0
  150. package/dist/packages/core/src/utilities/escapeForRegEx.d.ts +1 -0
  151. package/dist/packages/core/src/utilities/findDuplicates.d.ts +1 -0
  152. package/dist/packages/core/src/utilities/fromString.d.ts +1 -0
  153. package/dist/packages/core/src/utilities/index.d.ts +20 -0
  154. package/dist/packages/core/src/utilities/isAndroid.d.ts +1 -0
  155. package/dist/packages/core/src/utilities/isEmptyObject.d.ts +1 -0
  156. package/dist/packages/core/src/utilities/isFunction.d.ts +1 -0
  157. package/dist/packages/core/src/utilities/isMacOS.d.ts +1 -0
  158. package/dist/packages/core/src/utilities/isNumber.d.ts +1 -0
  159. package/dist/packages/core/src/utilities/isPlainObject.d.ts +1 -0
  160. package/dist/packages/core/src/utilities/isRegExp.d.ts +1 -0
  161. package/dist/packages/core/src/utilities/isString.d.ts +1 -0
  162. package/dist/packages/core/src/utilities/isiOS.d.ts +1 -0
  163. package/dist/packages/core/src/utilities/mergeAttributes.d.ts +1 -0
  164. package/dist/packages/core/src/utilities/mergeDeep.d.ts +1 -0
  165. package/dist/packages/core/src/utilities/minMax.d.ts +1 -0
  166. package/dist/packages/core/src/utilities/objectIncludes.d.ts +8 -0
  167. package/dist/packages/core/src/utilities/removeDuplicates.d.ts +8 -0
  168. package/dist/packages/extension-bubble-menu/src/bubble-menu-plugin.d.ts +76 -0
  169. package/dist/packages/extension-bubble-menu/src/bubble-menu.d.ts +15 -0
  170. package/dist/packages/extension-bubble-menu/src/index.d.ts +4 -0
  171. package/dist/packages/extension-floating-menu/src/floating-menu-plugin.d.ts +66 -0
  172. package/dist/packages/extension-floating-menu/src/floating-menu.d.ts +15 -0
  173. package/dist/packages/extension-floating-menu/src/index.d.ts +4 -0
  174. package/dist/packages/vue-3/src/BubbleMenu.d.ts +72 -72
  175. package/dist/packages/vue-3/src/Editor.d.ts +23 -24
  176. package/dist/packages/vue-3/src/EditorContent.d.ts +17 -17
  177. package/dist/packages/vue-3/src/FloatingMenu.d.ts +57 -57
  178. package/dist/packages/vue-3/src/NodeViewContent.d.ts +13 -13
  179. package/dist/packages/vue-3/src/NodeViewWrapper.d.ts +13 -13
  180. package/dist/packages/vue-3/src/VueNodeViewRenderer.d.ts +48 -48
  181. package/dist/packages/vue-3/src/VueRenderer.d.ts +36 -22
  182. package/dist/packages/vue-3/src/index.d.ts +10 -10
  183. package/dist/packages/vue-3/src/useEditor.d.ts +3 -3
  184. package/package.json +5 -5
  185. package/src/Editor.ts +3 -5
  186. package/src/EditorContent.ts +12 -26
  187. package/src/VueNodeViewRenderer.ts +7 -3
  188. package/src/VueRenderer.ts +32 -17
@@ -1,72 +1,72 @@
1
- import { PropType } from 'vue';
2
- export declare const BubbleMenu: import("vue").DefineComponent<{
3
- pluginKey: {
4
- type: PropType<string | import("prosemirror-state").PluginKey<any>>;
5
- default: string;
6
- };
7
- editor: {
8
- type: PropType<import("@tiptap/core").Editor>;
9
- required: true;
10
- };
11
- updateDelay: {
12
- type: PropType<number | undefined>;
13
- default: undefined;
14
- };
15
- tippyOptions: {
16
- type: PropType<Partial<import("tippy.js").Props> | undefined>;
17
- default: () => {};
18
- };
19
- shouldShow: {
20
- type: PropType<(props: {
21
- editor: import("@tiptap/core").Editor;
22
- view: import("prosemirror-view").EditorView;
23
- state: import("prosemirror-state").EditorState;
24
- oldState?: import("prosemirror-state").EditorState | undefined;
25
- from: number;
26
- to: number;
27
- }) => boolean>;
28
- default: null;
29
- };
30
- }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
31
- [key: string]: any;
32
- }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
33
- pluginKey: {
34
- type: PropType<string | import("prosemirror-state").PluginKey<any>>;
35
- default: string;
36
- };
37
- editor: {
38
- type: PropType<import("@tiptap/core").Editor>;
39
- required: true;
40
- };
41
- updateDelay: {
42
- type: PropType<number | undefined>;
43
- default: undefined;
44
- };
45
- tippyOptions: {
46
- type: PropType<Partial<import("tippy.js").Props> | undefined>;
47
- default: () => {};
48
- };
49
- shouldShow: {
50
- type: PropType<(props: {
51
- editor: import("@tiptap/core").Editor;
52
- view: import("prosemirror-view").EditorView;
53
- state: import("prosemirror-state").EditorState;
54
- oldState?: import("prosemirror-state").EditorState | undefined;
55
- from: number;
56
- to: number;
57
- }) => boolean>;
58
- default: null;
59
- };
60
- }>>, {
61
- pluginKey: string | import("prosemirror-state").PluginKey<any>;
62
- updateDelay: number | undefined;
63
- tippyOptions: Partial<import("tippy.js").Props> | undefined;
64
- shouldShow: (props: {
65
- editor: import("@tiptap/core").Editor;
66
- view: import("prosemirror-view").EditorView;
67
- state: import("prosemirror-state").EditorState;
68
- oldState?: import("prosemirror-state").EditorState | undefined;
69
- from: number;
70
- to: number;
71
- }) => boolean;
72
- }>;
1
+ import { PropType } from 'vue';
2
+ export declare const BubbleMenu: import("vue").DefineComponent<{
3
+ pluginKey: {
4
+ type: PropType<string | import("prosemirror-state").PluginKey<any>>;
5
+ default: string;
6
+ };
7
+ editor: {
8
+ type: PropType<import("@tiptap/core").Editor>;
9
+ required: true;
10
+ };
11
+ updateDelay: {
12
+ type: PropType<number | undefined>;
13
+ default: undefined;
14
+ };
15
+ tippyOptions: {
16
+ type: PropType<Partial<import("tippy.js").Props> | undefined>;
17
+ default: () => {};
18
+ };
19
+ shouldShow: {
20
+ type: PropType<(props: {
21
+ editor: import("@tiptap/core").Editor;
22
+ view: import("prosemirror-view").EditorView;
23
+ state: import("prosemirror-state").EditorState;
24
+ oldState?: import("prosemirror-state").EditorState | undefined;
25
+ from: number;
26
+ to: number;
27
+ }) => boolean>;
28
+ default: null;
29
+ };
30
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
31
+ [key: string]: any;
32
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
33
+ pluginKey: {
34
+ type: PropType<string | import("prosemirror-state").PluginKey<any>>;
35
+ default: string;
36
+ };
37
+ editor: {
38
+ type: PropType<import("@tiptap/core").Editor>;
39
+ required: true;
40
+ };
41
+ updateDelay: {
42
+ type: PropType<number | undefined>;
43
+ default: undefined;
44
+ };
45
+ tippyOptions: {
46
+ type: PropType<Partial<import("tippy.js").Props> | undefined>;
47
+ default: () => {};
48
+ };
49
+ shouldShow: {
50
+ type: PropType<(props: {
51
+ editor: import("@tiptap/core").Editor;
52
+ view: import("prosemirror-view").EditorView;
53
+ state: import("prosemirror-state").EditorState;
54
+ oldState?: import("prosemirror-state").EditorState | undefined;
55
+ from: number;
56
+ to: number;
57
+ }) => boolean>;
58
+ default: null;
59
+ };
60
+ }>>, {
61
+ pluginKey: string | import("prosemirror-state").PluginKey<any>;
62
+ updateDelay: number | undefined;
63
+ tippyOptions: Partial<import("tippy.js").Props> | undefined;
64
+ shouldShow: (props: {
65
+ editor: import("@tiptap/core").Editor;
66
+ view: import("prosemirror-view").EditorView;
67
+ state: import("prosemirror-state").EditorState;
68
+ oldState?: import("prosemirror-state").EditorState | undefined;
69
+ from: number;
70
+ to: number;
71
+ }) => boolean;
72
+ }>;
@@ -1,24 +1,23 @@
1
- import { Editor as CoreEditor, EditorOptions } from '@tiptap/core';
2
- import { EditorState, Plugin, PluginKey } from '@tiptap/pm/state';
3
- import { ComponentInternalInstance, ComponentPublicInstance } from 'vue';
4
- import { VueRenderer } from './VueRenderer.js';
5
- export declare type ContentComponent = ComponentInternalInstance & {
6
- ctx: ComponentPublicInstance;
7
- };
8
- export declare class Editor extends CoreEditor {
9
- private reactiveState;
10
- private reactiveExtensionStorage;
11
- vueRenderers: Map<string, VueRenderer>;
12
- contentComponent: ContentComponent | null;
13
- constructor(options?: Partial<EditorOptions>);
14
- get state(): EditorState;
15
- get storage(): Record<string, any>;
16
- /**
17
- * Register a ProseMirror plugin.
18
- */
19
- registerPlugin(plugin: Plugin, handlePlugins?: (newPlugin: Plugin, plugins: Plugin[]) => Plugin[]): void;
20
- /**
21
- * Unregister a ProseMirror plugin.
22
- */
23
- unregisterPlugin(nameOrPluginKey: string | PluginKey): void;
24
- }
1
+ import { Editor as CoreEditor, EditorOptions } from '@tiptap/core';
2
+ import { EditorState, Plugin, PluginKey } from '@tiptap/pm/state';
3
+ import { AppContext, ComponentInternalInstance, ComponentPublicInstance } from 'vue';
4
+ export type ContentComponent = ComponentInternalInstance & {
5
+ ctx: ComponentPublicInstance;
6
+ };
7
+ export declare class Editor extends CoreEditor {
8
+ private reactiveState;
9
+ private reactiveExtensionStorage;
10
+ contentComponent: ContentComponent | null;
11
+ appContext: AppContext | null;
12
+ constructor(options?: Partial<EditorOptions>);
13
+ get state(): EditorState;
14
+ get storage(): Record<string, any>;
15
+ /**
16
+ * Register a ProseMirror plugin.
17
+ */
18
+ registerPlugin(plugin: Plugin, handlePlugins?: (newPlugin: Plugin, plugins: Plugin[]) => Plugin[]): void;
19
+ /**
20
+ * Unregister a ProseMirror plugin.
21
+ */
22
+ unregisterPlugin(nameOrPluginKey: string | PluginKey): void;
23
+ }
@@ -1,17 +1,17 @@
1
- import { DefineComponent, PropType, Ref } from 'vue';
2
- import { Editor } from './Editor.js';
3
- export declare const EditorContent: DefineComponent<{
4
- editor: {
5
- default: null;
6
- type: PropType<Editor>;
7
- };
8
- }, {
9
- rootEl: Ref<Element | undefined>;
10
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
11
- editor: {
12
- default: null;
13
- type: PropType<Editor>;
14
- };
15
- }>>, {
16
- editor: Editor;
17
- }>;
1
+ import { PropType, Ref } from 'vue';
2
+ import { Editor } from './Editor.js';
3
+ export declare const EditorContent: import("vue").DefineComponent<{
4
+ editor: {
5
+ default: null;
6
+ type: PropType<Editor>;
7
+ };
8
+ }, {
9
+ rootEl: Ref<Element | undefined>;
10
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
11
+ editor: {
12
+ default: null;
13
+ type: PropType<Editor>;
14
+ };
15
+ }>>, {
16
+ editor: Editor;
17
+ }>;
@@ -1,57 +1,57 @@
1
- import { PropType } from 'vue';
2
- export declare const FloatingMenu: import("vue").DefineComponent<{
3
- pluginKey: {
4
- type: null;
5
- default: string;
6
- };
7
- editor: {
8
- type: PropType<import("@tiptap/core").Editor>;
9
- required: true;
10
- };
11
- tippyOptions: {
12
- type: PropType<Partial<import("tippy.js").Props> | undefined>;
13
- default: () => {};
14
- };
15
- shouldShow: {
16
- type: PropType<(props: {
17
- editor: import("@tiptap/core").Editor;
18
- view: import("prosemirror-view").EditorView;
19
- state: import("prosemirror-state").EditorState;
20
- oldState?: import("prosemirror-state").EditorState | undefined;
21
- }) => boolean>;
22
- default: null;
23
- };
24
- }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
25
- [key: string]: any;
26
- }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
27
- pluginKey: {
28
- type: null;
29
- default: string;
30
- };
31
- editor: {
32
- type: PropType<import("@tiptap/core").Editor>;
33
- required: true;
34
- };
35
- tippyOptions: {
36
- type: PropType<Partial<import("tippy.js").Props> | undefined>;
37
- default: () => {};
38
- };
39
- shouldShow: {
40
- type: PropType<(props: {
41
- editor: import("@tiptap/core").Editor;
42
- view: import("prosemirror-view").EditorView;
43
- state: import("prosemirror-state").EditorState;
44
- oldState?: import("prosemirror-state").EditorState | undefined;
45
- }) => boolean>;
46
- default: null;
47
- };
48
- }>>, {
49
- tippyOptions: Partial<import("tippy.js").Props> | undefined;
50
- shouldShow: (props: {
51
- editor: import("@tiptap/core").Editor;
52
- view: import("prosemirror-view").EditorView;
53
- state: import("prosemirror-state").EditorState;
54
- oldState?: import("prosemirror-state").EditorState | undefined;
55
- }) => boolean;
56
- pluginKey: any;
57
- }>;
1
+ import { PropType } from 'vue';
2
+ export declare const FloatingMenu: import("vue").DefineComponent<{
3
+ pluginKey: {
4
+ type: null;
5
+ default: string;
6
+ };
7
+ editor: {
8
+ type: PropType<import("@tiptap/core").Editor>;
9
+ required: true;
10
+ };
11
+ tippyOptions: {
12
+ type: PropType<Partial<import("tippy.js").Props> | undefined>;
13
+ default: () => {};
14
+ };
15
+ shouldShow: {
16
+ type: PropType<(props: {
17
+ editor: import("@tiptap/core").Editor;
18
+ view: import("prosemirror-view").EditorView;
19
+ state: import("prosemirror-state").EditorState;
20
+ oldState?: import("prosemirror-state").EditorState | undefined;
21
+ }) => boolean>;
22
+ default: null;
23
+ };
24
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
25
+ [key: string]: any;
26
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
27
+ pluginKey: {
28
+ type: null;
29
+ default: string;
30
+ };
31
+ editor: {
32
+ type: PropType<import("@tiptap/core").Editor>;
33
+ required: true;
34
+ };
35
+ tippyOptions: {
36
+ type: PropType<Partial<import("tippy.js").Props> | undefined>;
37
+ default: () => {};
38
+ };
39
+ shouldShow: {
40
+ type: PropType<(props: {
41
+ editor: import("@tiptap/core").Editor;
42
+ view: import("prosemirror-view").EditorView;
43
+ state: import("prosemirror-state").EditorState;
44
+ oldState?: import("prosemirror-state").EditorState | undefined;
45
+ }) => boolean>;
46
+ default: null;
47
+ };
48
+ }>>, {
49
+ tippyOptions: Partial<import("tippy.js").Props> | undefined;
50
+ shouldShow: (props: {
51
+ editor: import("@tiptap/core").Editor;
52
+ view: import("prosemirror-view").EditorView;
53
+ state: import("prosemirror-state").EditorState;
54
+ oldState?: import("prosemirror-state").EditorState | undefined;
55
+ }) => boolean;
56
+ pluginKey: any;
57
+ }>;
@@ -1,13 +1,13 @@
1
- export declare const NodeViewContent: import("vue").DefineComponent<{
2
- as: {
3
- type: StringConstructor;
4
- default: string;
5
- };
6
- }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
- as: {
8
- type: StringConstructor;
9
- default: string;
10
- };
11
- }>>, {
12
- as: string;
13
- }>;
1
+ export declare const NodeViewContent: import("vue").DefineComponent<{
2
+ as: {
3
+ type: StringConstructor;
4
+ default: string;
5
+ };
6
+ }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
+ as: {
8
+ type: StringConstructor;
9
+ default: string;
10
+ };
11
+ }>>, {
12
+ as: string;
13
+ }>;
@@ -1,13 +1,13 @@
1
- export declare const NodeViewWrapper: import("vue").DefineComponent<{
2
- as: {
3
- type: StringConstructor;
4
- default: string;
5
- };
6
- }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
- as: {
8
- type: StringConstructor;
9
- default: string;
10
- };
11
- }>>, {
12
- as: string;
13
- }>;
1
+ export declare const NodeViewWrapper: import("vue").DefineComponent<{
2
+ as: {
3
+ type: StringConstructor;
4
+ default: string;
5
+ };
6
+ }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
+ as: {
8
+ type: StringConstructor;
9
+ default: string;
10
+ };
11
+ }>>, {
12
+ as: string;
13
+ }>;
@@ -1,48 +1,48 @@
1
- import { DecorationWithType, NodeViewRenderer, NodeViewRendererOptions } from '@tiptap/core';
2
- import { Node as ProseMirrorNode } from '@tiptap/pm/model';
3
- import { Decoration } from '@tiptap/pm/view';
4
- import { Component, PropType } from 'vue';
5
- export declare const nodeViewProps: {
6
- editor: {
7
- type: PropType<import("@tiptap/core").Editor>;
8
- required: true;
9
- };
10
- node: {
11
- type: PropType<ProseMirrorNode>;
12
- required: true;
13
- };
14
- decorations: {
15
- type: PropType<DecorationWithType[]>;
16
- required: true;
17
- };
18
- selected: {
19
- type: PropType<boolean>;
20
- required: true;
21
- };
22
- extension: {
23
- type: PropType<import("@tiptap/core").Node<any, any>>;
24
- required: true;
25
- };
26
- getPos: {
27
- type: PropType<() => number>;
28
- required: true;
29
- };
30
- updateAttributes: {
31
- type: PropType<(attributes: Record<string, any>) => void>;
32
- required: true;
33
- };
34
- deleteNode: {
35
- type: PropType<() => void>;
36
- required: true;
37
- };
38
- };
39
- export interface VueNodeViewRendererOptions extends NodeViewRendererOptions {
40
- update: ((props: {
41
- oldNode: ProseMirrorNode;
42
- oldDecorations: Decoration[];
43
- newNode: ProseMirrorNode;
44
- newDecorations: Decoration[];
45
- updateProps: () => void;
46
- }) => boolean) | null;
47
- }
48
- export declare function VueNodeViewRenderer(component: Component, options?: Partial<VueNodeViewRendererOptions>): NodeViewRenderer;
1
+ import { DecorationWithType, NodeViewRenderer, NodeViewRendererOptions } from '@tiptap/core';
2
+ import { Node as ProseMirrorNode } from '@tiptap/pm/model';
3
+ import { Decoration } from '@tiptap/pm/view';
4
+ import { Component, PropType } from 'vue';
5
+ export declare const nodeViewProps: {
6
+ editor: {
7
+ type: PropType<import("@tiptap/core").Editor>;
8
+ required: true;
9
+ };
10
+ node: {
11
+ type: PropType<ProseMirrorNode>;
12
+ required: true;
13
+ };
14
+ decorations: {
15
+ type: PropType<DecorationWithType[]>;
16
+ required: true;
17
+ };
18
+ selected: {
19
+ type: PropType<boolean>;
20
+ required: true;
21
+ };
22
+ extension: {
23
+ type: PropType<import("@tiptap/core").Node<any, any>>;
24
+ required: true;
25
+ };
26
+ getPos: {
27
+ type: PropType<() => number>;
28
+ required: true;
29
+ };
30
+ updateAttributes: {
31
+ type: PropType<(attributes: Record<string, any>) => void>;
32
+ required: true;
33
+ };
34
+ deleteNode: {
35
+ type: PropType<() => void>;
36
+ required: true;
37
+ };
38
+ };
39
+ export interface VueNodeViewRendererOptions extends NodeViewRendererOptions {
40
+ update: ((props: {
41
+ oldNode: ProseMirrorNode;
42
+ oldDecorations: Decoration[];
43
+ newNode: ProseMirrorNode;
44
+ newDecorations: Decoration[];
45
+ updateProps: () => void;
46
+ }) => boolean) | null;
47
+ }
48
+ export declare function VueNodeViewRenderer(component: Component, options?: Partial<VueNodeViewRendererOptions>): NodeViewRenderer;
@@ -1,22 +1,36 @@
1
- import { Editor } from '@tiptap/core';
2
- import { Component } from 'vue';
3
- import { Editor as ExtendedEditor } from './Editor.js';
4
- export interface VueRendererOptions {
5
- editor: Editor;
6
- props?: Record<string, any>;
7
- }
8
- /**
9
- * This class is used to render Vue components inside the editor.
10
- */
11
- export declare class VueRenderer {
12
- id: string;
13
- editor: ExtendedEditor;
14
- component: Component;
15
- teleportElement: Element;
16
- element: Element;
17
- props: Record<string, any>;
18
- constructor(component: Component, { props, editor }: VueRendererOptions);
19
- get ref(): any;
20
- updateProps(props?: Record<string, any>): void;
21
- destroy(): void;
22
- }
1
+ import { Editor } from '@tiptap/core';
2
+ import { Component, h } from 'vue';
3
+ import { Editor as ExtendedEditor } from './Editor.js';
4
+ export interface VueRendererOptions {
5
+ editor: Editor;
6
+ props?: Record<string, any>;
7
+ }
8
+ type ExtendedVNode = ReturnType<typeof h> | null;
9
+ interface RenderedComponent {
10
+ vNode: ExtendedVNode;
11
+ destroy: () => void;
12
+ el: Element | null;
13
+ }
14
+ /**
15
+ * This class is used to render Vue components inside the editor.
16
+ */
17
+ export declare class VueRenderer {
18
+ id: string;
19
+ renderedComponent: RenderedComponent;
20
+ editor: ExtendedEditor;
21
+ component: Component;
22
+ el: Element | null;
23
+ props: Record<string, any>;
24
+ constructor(component: Component, { props, editor }: VueRendererOptions);
25
+ get element(): Element | null;
26
+ renderComponent(): {
27
+ vNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
28
+ [key: string]: any;
29
+ }>;
30
+ destroy: () => void;
31
+ el: Element | null;
32
+ };
33
+ updateProps(props?: Record<string, any>): void;
34
+ destroy(): void;
35
+ }
36
+ export {};
@@ -1,10 +1,10 @@
1
- export * from './BubbleMenu.js';
2
- export { Editor } from './Editor.js';
3
- export * from './EditorContent.js';
4
- export * from './FloatingMenu.js';
5
- export * from './NodeViewContent.js';
6
- export * from './NodeViewWrapper.js';
7
- export * from './useEditor.js';
8
- export * from './VueNodeViewRenderer.js';
9
- export * from './VueRenderer.js';
10
- export * from '@tiptap/core';
1
+ export * from './BubbleMenu.js';
2
+ export { Editor } from './Editor.js';
3
+ export * from './EditorContent.js';
4
+ export * from './FloatingMenu.js';
5
+ export * from './NodeViewContent.js';
6
+ export * from './NodeViewWrapper.js';
7
+ export * from './useEditor.js';
8
+ export * from './VueNodeViewRenderer.js';
9
+ export * from './VueRenderer.js';
10
+ export * from '@tiptap/core';
@@ -1,3 +1,3 @@
1
- import { EditorOptions } from '@tiptap/core';
2
- import { Editor } from './Editor.js';
3
- export declare const useEditor: (options?: Partial<EditorOptions>) => import("vue").ShallowRef<Editor | undefined>;
1
+ import { EditorOptions } from '@tiptap/core';
2
+ import { Editor } from './Editor.js';
3
+ export declare const useEditor: (options?: Partial<EditorOptions>) => import("vue").ShallowRef<Editor | undefined>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tiptap/vue-3",
3
3
  "description": "Vue components for tiptap",
4
- "version": "2.5.0-beta.1",
4
+ "version": "2.5.0-beta.3",
5
5
  "homepage": "https://tiptap.dev",
6
6
  "keywords": [
7
7
  "tiptap",
@@ -29,12 +29,12 @@
29
29
  "dist"
30
30
  ],
31
31
  "dependencies": {
32
- "@tiptap/extension-bubble-menu": "^2.5.0-beta.1",
33
- "@tiptap/extension-floating-menu": "^2.5.0-beta.1"
32
+ "@tiptap/extension-bubble-menu": "^2.5.0-beta.3",
33
+ "@tiptap/extension-floating-menu": "^2.5.0-beta.3"
34
34
  },
35
35
  "devDependencies": {
36
- "@tiptap/core": "^2.5.0-beta.1",
37
- "@tiptap/pm": "^2.5.0-beta.1",
36
+ "@tiptap/core": "^2.5.0-beta.3",
37
+ "@tiptap/pm": "^2.5.0-beta.3",
38
38
  "vue": "^3.0.0"
39
39
  },
40
40
  "peerDependencies": {
package/src/Editor.ts CHANGED
@@ -1,16 +1,14 @@
1
1
  import { Editor as CoreEditor, EditorOptions } from '@tiptap/core'
2
2
  import { EditorState, Plugin, PluginKey } from '@tiptap/pm/state'
3
3
  import {
4
+ AppContext,
4
5
  ComponentInternalInstance,
5
6
  ComponentPublicInstance,
6
7
  customRef,
7
8
  markRaw,
8
- reactive,
9
9
  Ref,
10
10
  } from 'vue'
11
11
 
12
- import { VueRenderer } from './VueRenderer.js'
13
-
14
12
  function useDebouncedRef<T>(value: T) {
15
13
  return customRef<T>((track, trigger) => {
16
14
  return {
@@ -42,10 +40,10 @@ export class Editor extends CoreEditor {
42
40
 
43
41
  private reactiveExtensionStorage: Ref<Record<string, any>>
44
42
 
45
- public vueRenderers = reactive<Map<string, VueRenderer>>(new Map())
46
-
47
43
  public contentComponent: ContentComponent | null = null
48
44
 
45
+ public appContext: AppContext | null = null
46
+
49
47
  constructor(options: Partial<EditorOptions> = {}) {
50
48
  super(options)
51
49