@halo-dev/richtext-editor 0.0.0-alpha.9 → 2.13.0
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/dist/components/Editor.vue.d.ts +44 -0
- package/dist/components/EditorBubbleMenu.vue.d.ts +14 -0
- package/dist/components/EditorHeader.vue.d.ts +11 -17
- package/dist/components/block/BlockActionButton.vue.d.ts +41 -0
- package/dist/components/block/BlockActionInput.vue.d.ts +38 -0
- package/dist/components/block/BlockActionSeparator.vue.d.ts +2 -0
- package/dist/components/block/BlockCard.vue.d.ts +44 -0
- package/dist/components/block/index.d.ts +4 -0
- package/dist/components/bubble/BubbleItem.vue.d.ts +76 -0
- package/dist/components/bubble/BubbleMenuPlugin.d.ts +53 -0
- package/dist/components/bubble/index.d.ts +2 -0
- package/dist/components/common/ColorPickerDropdown.vue.d.ts +41 -0
- package/dist/components/icon/MdiDeleteForeverOutline.vue.d.ts +2 -0
- package/dist/components/index.d.ts +7 -0
- package/dist/components/toolbar/ToolbarItem.vue.d.ts +50 -0
- package/dist/components/toolbar/ToolbarSubItem.vue.d.ts +50 -0
- package/dist/components/toolbar/index.d.ts +2 -0
- package/dist/components/toolbox/ToolboxItem.vue.d.ts +51 -0
- package/dist/components/toolbox/index.d.ts +1 -0
- package/dist/dev/main.d.ts +1 -0
- package/dist/extensions/audio/AudioView.vue.d.ts +31 -0
- package/dist/extensions/audio/BubbleItemAudioLink.vue.d.ts +39 -0
- package/dist/extensions/audio/index.d.ts +13 -0
- package/dist/extensions/blockquote/index.d.ts +4 -0
- package/dist/extensions/bold/index.d.ts +4 -0
- package/dist/extensions/bullet-list/index.d.ts +4 -0
- package/dist/extensions/code/index.d.ts +4 -0
- package/dist/extensions/code-block/CodeBlockViewRenderer.vue.d.ts +31 -0
- package/dist/extensions/code-block/code-block.d.ts +14 -1
- package/dist/extensions/code-block/lowlight.d.ts +15 -1
- package/dist/extensions/color/ColorBubbleItem.vue.d.ts +39 -0
- package/dist/extensions/color/ColorToolbarItem.vue.d.ts +56 -0
- package/dist/extensions/color/index.d.ts +4 -0
- package/dist/extensions/columns/column.d.ts +3 -0
- package/dist/extensions/columns/columns.d.ts +15 -0
- package/dist/extensions/columns/index.d.ts +2 -0
- package/dist/extensions/commands-menu/CommandsView.vue.d.ts +13 -19
- package/dist/extensions/commands-menu/commands.d.ts +1 -1
- package/dist/extensions/commands-menu/index.d.ts +0 -2
- package/dist/extensions/draggable/index.d.ts +14 -0
- package/dist/extensions/font-size/index.d.ts +14 -0
- package/dist/extensions/heading/index.d.ts +4 -0
- package/dist/extensions/highlight/HighlightBubbleItem.vue.d.ts +39 -0
- package/dist/extensions/highlight/HighlightToolbarItem.vue.d.ts +56 -0
- package/dist/extensions/highlight/index.d.ts +4 -0
- package/dist/extensions/history/index.d.ts +4 -0
- package/dist/extensions/iframe/BubbleItemIframeLink.vue.d.ts +39 -0
- package/dist/extensions/iframe/BubbleItemIframeSize.vue.d.ts +16 -0
- package/dist/extensions/iframe/IframeView.vue.d.ts +31 -0
- package/dist/extensions/iframe/index.d.ts +13 -0
- package/dist/extensions/image/BubbleItemImageAlt.vue.d.ts +39 -0
- package/dist/extensions/image/BubbleItemImageHref.vue.d.ts +39 -0
- package/dist/extensions/image/BubbleItemImageLink.vue.d.ts +39 -0
- package/dist/extensions/image/BubbleItemImageSize.vue.d.ts +39 -0
- package/dist/extensions/image/ImageView.vue.d.ts +31 -0
- package/dist/extensions/image/index.d.ts +4 -0
- package/dist/extensions/indent/index.d.ts +22 -0
- package/dist/extensions/index.d.ts +38 -30
- package/dist/extensions/italic/index.d.ts +4 -0
- package/dist/extensions/link/LinkBubbleButton.vue.d.ts +39 -0
- package/dist/extensions/link/index.d.ts +4 -0
- package/dist/extensions/list-keymap/index.d.ts +7 -0
- package/dist/extensions/node-selected/index.d.ts +6 -0
- package/dist/extensions/ordered-list/index.d.ts +4 -0
- package/dist/extensions/paragraph/index.d.ts +4 -0
- package/dist/extensions/search-and-replace/SearchAndReplace.vue.d.ts +33 -0
- package/dist/extensions/search-and-replace/SearchAndReplacePlugin.d.ts +108 -0
- package/dist/extensions/search-and-replace/index.d.ts +34 -0
- package/dist/extensions/strike/index.d.ts +4 -0
- package/dist/extensions/subscript/index.d.ts +4 -0
- package/dist/extensions/superscript/index.d.ts +4 -0
- package/dist/extensions/table/index.d.ts +4 -0
- package/dist/extensions/table/table-cell.d.ts +6 -0
- package/dist/extensions/table/table-header.d.ts +6 -0
- package/dist/extensions/table/table-row.d.ts +2 -0
- package/dist/extensions/table/util.d.ts +27 -0
- package/dist/extensions/task-list/index.d.ts +4 -0
- package/dist/extensions/text/index.d.ts +3 -0
- package/dist/extensions/text-align/index.d.ts +4 -0
- package/dist/extensions/trailing-node/index.d.ts +9 -0
- package/dist/extensions/underline/index.d.ts +4 -0
- package/dist/extensions/video/BubbleItemVideoLink.vue.d.ts +39 -0
- package/dist/extensions/video/BubbleItemVideoSize.vue.d.ts +39 -0
- package/dist/extensions/video/VideoView.vue.d.ts +31 -0
- package/dist/extensions/video/index.d.ts +13 -0
- package/dist/index.d.ts +8 -5
- package/dist/locales/index.d.ts +7 -0
- package/dist/rich-text-editor.es.js +48938 -85657
- package/dist/rich-text-editor.iife.js +146 -89087
- package/dist/style.css +10 -1423
- package/dist/tiptap/core/index.d.ts +1 -0
- package/dist/tiptap/index.d.ts +6 -0
- package/dist/tiptap/pm/index.d.ts +20 -0
- package/dist/tiptap/vue-3/index.d.ts +1 -0
- package/dist/types/index.d.ts +115 -0
- package/dist/utils/anchor.d.ts +2 -0
- package/dist/utils/delete-node.d.ts +2 -0
- package/dist/utils/index.d.ts +2 -0
- package/package.json +83 -77
- package/dist/extensions/commands-menu/suggestion.d.ts +0 -21
- package/dist/extensions/katex/index.d.ts +0 -2
- package/dist/menus/index.d.ts +0 -26
- package/dist/rich-text-editor.es.js.map +0 -1
- package/dist/rich-text-editor.iife.js.map +0 -1
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Editor } from '../../tiptap/vue-3';
|
|
2
|
+
import { type Component } from "vue";
|
|
3
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
4
|
+
editor: Editor;
|
|
5
|
+
isActive?: (({ editor }: {
|
|
6
|
+
editor: Editor;
|
|
7
|
+
}) => boolean) | undefined;
|
|
8
|
+
visible?: (({ editor }: {
|
|
9
|
+
editor: Editor;
|
|
10
|
+
}) => boolean) | undefined;
|
|
11
|
+
icon?: Component | undefined;
|
|
12
|
+
title?: string | undefined;
|
|
13
|
+
action?: (({ editor }: {
|
|
14
|
+
editor: Editor;
|
|
15
|
+
}) => void) | undefined;
|
|
16
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
17
|
+
editor: Editor;
|
|
18
|
+
isActive?: (({ editor }: {
|
|
19
|
+
editor: Editor;
|
|
20
|
+
}) => boolean) | undefined;
|
|
21
|
+
visible?: (({ editor }: {
|
|
22
|
+
editor: Editor;
|
|
23
|
+
}) => boolean) | undefined;
|
|
24
|
+
icon?: Component | undefined;
|
|
25
|
+
title?: string | undefined;
|
|
26
|
+
action?: (({ editor }: {
|
|
27
|
+
editor: Editor;
|
|
28
|
+
}) => void) | undefined;
|
|
29
|
+
}>>>, {}, {}>;
|
|
30
|
+
export default _default;
|
|
31
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
32
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
33
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
34
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
35
|
+
} : {
|
|
36
|
+
type: import('vue').PropType<T[K]>;
|
|
37
|
+
required: true;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Editor, Node } from '../../tiptap/vue-3';
|
|
2
|
+
import type { Node as ProseMirrorNode, Decoration } from '../../tiptap/pm';
|
|
3
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
4
|
+
editor: Editor;
|
|
5
|
+
node: ProseMirrorNode;
|
|
6
|
+
decorations: Decoration[];
|
|
7
|
+
selected: boolean;
|
|
8
|
+
extension: Node<any, any>;
|
|
9
|
+
getPos: () => number;
|
|
10
|
+
updateAttributes: (attributes: Record<string, any>) => void;
|
|
11
|
+
deleteNode: () => void;
|
|
12
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
13
|
+
editor: Editor;
|
|
14
|
+
node: ProseMirrorNode;
|
|
15
|
+
decorations: Decoration[];
|
|
16
|
+
selected: boolean;
|
|
17
|
+
extension: Node<any, any>;
|
|
18
|
+
getPos: () => number;
|
|
19
|
+
updateAttributes: (attributes: Record<string, any>) => void;
|
|
20
|
+
deleteNode: () => void;
|
|
21
|
+
}>>>, {}, {}>;
|
|
22
|
+
export default _default;
|
|
23
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
24
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
25
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
26
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
27
|
+
} : {
|
|
28
|
+
type: import('vue').PropType<T[K]>;
|
|
29
|
+
required: true;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type KeyboardShortcutCommand, Extension } from '../../tiptap/vue-3';
|
|
2
|
+
declare module "@/tiptap" {
|
|
3
|
+
interface Commands<ReturnType> {
|
|
4
|
+
indent: {
|
|
5
|
+
indent: () => ReturnType;
|
|
6
|
+
outdent: () => ReturnType;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
type IndentOptions = {
|
|
11
|
+
names: Array<string>;
|
|
12
|
+
indentRange: number;
|
|
13
|
+
minIndentLevel: number;
|
|
14
|
+
maxIndentLevel: number;
|
|
15
|
+
defaultIndentLevel: number;
|
|
16
|
+
HTMLAttributes: Record<string, any>;
|
|
17
|
+
};
|
|
18
|
+
declare const Indent: Extension<IndentOptions, never>;
|
|
19
|
+
export declare const clamp: (val: number, min: number, max: number) => number;
|
|
20
|
+
export declare const getIndent: () => KeyboardShortcutCommand;
|
|
21
|
+
export declare const getOutdent: (outdentOnlyAtHead: boolean) => KeyboardShortcutCommand;
|
|
22
|
+
export default Indent;
|
|
@@ -1,35 +1,43 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
1
|
+
import ExtensionHistory from "./history";
|
|
2
|
+
import ExtensionHeading from "./heading";
|
|
3
|
+
import ExtensionBold from "./bold";
|
|
4
|
+
import ExtensionItalic from "./italic";
|
|
5
|
+
import ExtensionStrike from "./strike";
|
|
6
|
+
import ExtensionUnderline from "./underline";
|
|
7
|
+
import ExtensionHighlight from "./highlight";
|
|
8
|
+
import ExtensionBlockquote from "./blockquote";
|
|
9
|
+
import ExtensionCode from "./code";
|
|
10
|
+
import ExtensionSuperscript from "./superscript";
|
|
11
|
+
import ExtensionSubscript from "./subscript";
|
|
12
|
+
import ExtensionBulletList from "./bullet-list";
|
|
13
|
+
import ExtensionOrderedList from "./ordered-list";
|
|
14
|
+
import ExtensionTaskList from "./task-list";
|
|
15
|
+
import ExtensionListKeymap from "./list-keymap";
|
|
16
|
+
import ExtensionTable from "./table";
|
|
17
|
+
import ExtensionTextAlign from "./text-align";
|
|
18
|
+
import ExtensionTextStyle from "@tiptap/extension-text-style";
|
|
19
|
+
import ExtensionLink from "./link";
|
|
20
|
+
import ExtensionColor from "./color";
|
|
21
|
+
import ExtensionFontSize from "./font-size";
|
|
6
22
|
import ExtensionDropcursor from "@tiptap/extension-dropcursor";
|
|
7
23
|
import ExtensionGapcursor from "@tiptap/extension-gapcursor";
|
|
8
24
|
import ExtensionHardBreak from "@tiptap/extension-hard-break";
|
|
9
|
-
import ExtensionHeading from "@tiptap/extension-heading";
|
|
10
|
-
import ExtensionHistory from "@tiptap/extension-history";
|
|
11
25
|
import ExtensionHorizontalRule from "@tiptap/extension-horizontal-rule";
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import ExtensionOrderedList from "@tiptap/extension-ordered-list";
|
|
15
|
-
import ExtensionParagraph from "@tiptap/extension-paragraph";
|
|
16
|
-
import ExtensionStrike from "@tiptap/extension-strike";
|
|
17
|
-
import ExtensionText from "@tiptap/extension-text";
|
|
18
|
-
import ExtensionImage from "@tiptap/extension-image";
|
|
19
|
-
import ExtensionTaskList from "@tiptap/extension-task-list";
|
|
20
|
-
import ExtensionTaskItem from "@tiptap/extension-task-item";
|
|
21
|
-
import ExtensionLink from "@tiptap/extension-link";
|
|
22
|
-
import ExtensionTextAlign from "@tiptap/extension-text-align";
|
|
23
|
-
import ExtensionUnderline from "@tiptap/extension-underline";
|
|
24
|
-
import ExtensionTable from "@tiptap/extension-table";
|
|
25
|
-
import ExtensionTableHeader from "@tiptap/extension-table-header";
|
|
26
|
-
import ExtensionTableCell from "@tiptap/extension-table-cell";
|
|
27
|
-
import ExtensionTableRow from "@tiptap/extension-table-row";
|
|
28
|
-
import ExtensionSubscript from "@tiptap/extension-subscript";
|
|
29
|
-
import ExtensionSuperscript from "@tiptap/extension-superscript";
|
|
26
|
+
import ExtensionDocument from "@tiptap/extension-document";
|
|
27
|
+
import ExtensionParagraph from "./paragraph";
|
|
30
28
|
import ExtensionPlaceholder from "@tiptap/extension-placeholder";
|
|
31
|
-
import {
|
|
32
|
-
import { ExtensionCodeBlock, lowlight } from '
|
|
33
|
-
import
|
|
34
|
-
|
|
35
|
-
|
|
29
|
+
import { ExtensionCommands } from "../extensions/commands-menu";
|
|
30
|
+
import { ExtensionCodeBlock, lowlight } from './code-block';
|
|
31
|
+
import ExtensionIframe from "./iframe";
|
|
32
|
+
import ExtensionVideo from "./video";
|
|
33
|
+
import ExtensionAudio from "./audio";
|
|
34
|
+
import ExtensionImage from "./image";
|
|
35
|
+
import ExtensionIndent from "./indent";
|
|
36
|
+
import { ExtensionColumns, ExtensionColumn } from "./columns";
|
|
37
|
+
import ExtensionText from "./text";
|
|
38
|
+
import ExtensionDraggable from "./draggable";
|
|
39
|
+
import ExtensionNodeSelected from "./node-selected";
|
|
40
|
+
import ExtensionTrailingNode from "./trailing-node";
|
|
41
|
+
import ExtensionSearchAndReplace from "./search-and-replace";
|
|
42
|
+
declare const allExtensions: (import("@tiptap/core").Extension<any, any> | import("@tiptap/core").Node<any, any> | import("@tiptap/core").Mark<import("../types").ExtensionOptions & import("@tiptap/extension-superscript").SuperscriptExtensionOptions, any>)[];
|
|
43
|
+
export { allExtensions, ExtensionBlockquote, ExtensionBold, ExtensionBulletList, ExtensionCode, ExtensionDocument, ExtensionDropcursor, ExtensionGapcursor, ExtensionHardBreak, ExtensionHeading, ExtensionHistory, ExtensionHorizontalRule, ExtensionItalic, ExtensionOrderedList, ExtensionStrike, ExtensionText, ExtensionImage, ExtensionTaskList, ExtensionLink, ExtensionTextAlign, ExtensionTextStyle, ExtensionUnderline, ExtensionTable, ExtensionSubscript, ExtensionSuperscript, ExtensionParagraph, ExtensionPlaceholder, ExtensionHighlight, ExtensionCommands, ExtensionCodeBlock, lowlight, ExtensionIframe, ExtensionVideo, ExtensionAudio, ExtensionColor, ExtensionFontSize, ExtensionIndent, ExtensionDraggable, ExtensionColumns, ExtensionColumn, ExtensionNodeSelected, ExtensionTrailingNode, ExtensionListKeymap, ExtensionSearchAndReplace, };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { type Component } from "vue";
|
|
2
|
+
import type { Editor } from '../../tiptap/vue-3';
|
|
3
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
4
|
+
editor: Editor;
|
|
5
|
+
isActive: ({ editor }: {
|
|
6
|
+
editor: Editor;
|
|
7
|
+
}) => boolean;
|
|
8
|
+
visible?: (({ editor }: {
|
|
9
|
+
editor: Editor;
|
|
10
|
+
}) => boolean) | undefined;
|
|
11
|
+
icon?: Component | undefined;
|
|
12
|
+
title?: string | undefined;
|
|
13
|
+
action?: (({ editor }: {
|
|
14
|
+
editor: Editor;
|
|
15
|
+
}) => void) | undefined;
|
|
16
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
17
|
+
editor: Editor;
|
|
18
|
+
isActive: ({ editor }: {
|
|
19
|
+
editor: Editor;
|
|
20
|
+
}) => boolean;
|
|
21
|
+
visible?: (({ editor }: {
|
|
22
|
+
editor: Editor;
|
|
23
|
+
}) => boolean) | undefined;
|
|
24
|
+
icon?: Component | undefined;
|
|
25
|
+
title?: string | undefined;
|
|
26
|
+
action?: (({ editor }: {
|
|
27
|
+
editor: Editor;
|
|
28
|
+
}) => void) | undefined;
|
|
29
|
+
}>>>, {}, {}>;
|
|
30
|
+
export default _default;
|
|
31
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
32
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
33
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
34
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
35
|
+
} : {
|
|
36
|
+
type: import('vue').PropType<T[K]>;
|
|
37
|
+
required: true;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type ListKeymapOptions } from "@tiptap/extension-list-keymap";
|
|
2
|
+
/**
|
|
3
|
+
* Optimize the listKeymap extension until the issue with @tiptap/extension-list-keymap is resolved.
|
|
4
|
+
* https://github.com/ueberdosis/tiptap/issues/4395
|
|
5
|
+
*/
|
|
6
|
+
declare const ExtensionListKeymap: import("@tiptap/core").Extension<ListKeymapOptions, any>;
|
|
7
|
+
export default ExtensionListKeymap;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { type PropType } from "vue";
|
|
2
|
+
import type { PluginKey, Editor } from '../../tiptap';
|
|
3
|
+
import type { SearchAndReplacePluginState } from "./SearchAndReplacePlugin";
|
|
4
|
+
declare const _default: import("vue").DefineComponent<{
|
|
5
|
+
editor: {
|
|
6
|
+
type: PropType<Editor>;
|
|
7
|
+
required: true;
|
|
8
|
+
};
|
|
9
|
+
pluginKey: {
|
|
10
|
+
type: PropType<PluginKey<SearchAndReplacePluginState>>;
|
|
11
|
+
required: true;
|
|
12
|
+
};
|
|
13
|
+
visible: {
|
|
14
|
+
type: BooleanConstructor;
|
|
15
|
+
default: boolean;
|
|
16
|
+
};
|
|
17
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
18
|
+
editor: {
|
|
19
|
+
type: PropType<Editor>;
|
|
20
|
+
required: true;
|
|
21
|
+
};
|
|
22
|
+
pluginKey: {
|
|
23
|
+
type: PropType<PluginKey<SearchAndReplacePluginState>>;
|
|
24
|
+
required: true;
|
|
25
|
+
};
|
|
26
|
+
visible: {
|
|
27
|
+
type: BooleanConstructor;
|
|
28
|
+
default: boolean;
|
|
29
|
+
};
|
|
30
|
+
}>>, {
|
|
31
|
+
visible: boolean;
|
|
32
|
+
}, {}>;
|
|
33
|
+
export default _default;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import type { PMNode, Selection } from '../../tiptap';
|
|
2
|
+
import { Decoration, EditorView, Plugin, PluginKey, Transaction } from '../../tiptap/pm';
|
|
3
|
+
import { Editor } from '../../tiptap/vue-3';
|
|
4
|
+
export interface SearchAndReplacePluginProps {
|
|
5
|
+
editor: Editor;
|
|
6
|
+
element: HTMLElement;
|
|
7
|
+
searchResultClass?: string;
|
|
8
|
+
findSearchClass?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare const searchAndReplacePluginKey: PluginKey<SearchAndReplacePluginState>;
|
|
11
|
+
export type SearchAndReplacePluginViewProps = SearchAndReplacePluginProps & {
|
|
12
|
+
view: EditorView;
|
|
13
|
+
};
|
|
14
|
+
export declare class SearchAndReplacePluginView {
|
|
15
|
+
editor: Editor;
|
|
16
|
+
view: EditorView;
|
|
17
|
+
containerElement: HTMLElement;
|
|
18
|
+
constructor({ view, editor, element }: SearchAndReplacePluginViewProps);
|
|
19
|
+
update(): boolean;
|
|
20
|
+
destroy(): boolean;
|
|
21
|
+
}
|
|
22
|
+
export interface TextNodesWithPosition {
|
|
23
|
+
text: string;
|
|
24
|
+
pos: number;
|
|
25
|
+
index: number;
|
|
26
|
+
}
|
|
27
|
+
export interface SearchResultWithPosition {
|
|
28
|
+
pos: number;
|
|
29
|
+
index: number;
|
|
30
|
+
from: number;
|
|
31
|
+
to: number;
|
|
32
|
+
}
|
|
33
|
+
export declare class SearchAndReplacePluginState {
|
|
34
|
+
private _findIndex;
|
|
35
|
+
editor: Editor;
|
|
36
|
+
enable: boolean;
|
|
37
|
+
findIndexFlag: boolean;
|
|
38
|
+
findCount: number;
|
|
39
|
+
searchTerm: string;
|
|
40
|
+
replaceTerm: string;
|
|
41
|
+
regex: boolean;
|
|
42
|
+
caseSensitive: boolean;
|
|
43
|
+
wholeWord: boolean;
|
|
44
|
+
results: SearchResultWithPosition[];
|
|
45
|
+
searchResultDecorations: Decoration[];
|
|
46
|
+
findIndexDecoration: Decoration | undefined;
|
|
47
|
+
constructor({ editor, enable, regex, caseSensitive, wholeWord, }: {
|
|
48
|
+
editor: Editor;
|
|
49
|
+
enable?: boolean;
|
|
50
|
+
regex?: boolean;
|
|
51
|
+
caseSensitive?: boolean;
|
|
52
|
+
wholeWord?: boolean;
|
|
53
|
+
});
|
|
54
|
+
get findIndex(): number;
|
|
55
|
+
set findIndex(newValue: number);
|
|
56
|
+
apply(tr: Transaction): SearchAndReplacePluginState;
|
|
57
|
+
scrollIntoFindIndexView(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Validate if findIndex is within the range
|
|
60
|
+
* If results.length === 0, take 0
|
|
61
|
+
* If less than or equal to -1, take results.length - 1
|
|
62
|
+
* If greater than results.length - 1, take 0
|
|
63
|
+
*
|
|
64
|
+
* @param index new findIndex
|
|
65
|
+
* @returns validated findIndex
|
|
66
|
+
*/
|
|
67
|
+
verifySetIndex(index: number): number;
|
|
68
|
+
/**
|
|
69
|
+
* Execute full-text search functionality.
|
|
70
|
+
*
|
|
71
|
+
* @param Transaction
|
|
72
|
+
* @returns
|
|
73
|
+
* @memberof SearchAndReplacePluginState
|
|
74
|
+
*/
|
|
75
|
+
processSearches({ doc, selection, }: Transaction): SearchAndReplacePluginState;
|
|
76
|
+
/**
|
|
77
|
+
* Highlight the current result based on findIndex.
|
|
78
|
+
*
|
|
79
|
+
* @memberof SearchAndReplacePluginState
|
|
80
|
+
*/
|
|
81
|
+
processFindIndexDecoration(): void;
|
|
82
|
+
/**
|
|
83
|
+
* Generate highlighted results based on the 'results'.
|
|
84
|
+
*
|
|
85
|
+
* @memberof SearchAndReplacePluginState
|
|
86
|
+
*/
|
|
87
|
+
processResultDecorations(): void;
|
|
88
|
+
/**
|
|
89
|
+
* Reset findIndex based on the current cursor position.
|
|
90
|
+
*
|
|
91
|
+
* @param selection Current cursor position.
|
|
92
|
+
*/
|
|
93
|
+
getNearestResultBySelection(selection: Selection): void;
|
|
94
|
+
/**
|
|
95
|
+
* Convert the entire text into flattened text with positions.
|
|
96
|
+
*
|
|
97
|
+
* @param doc The entire document
|
|
98
|
+
* @returns Flattened text with positions
|
|
99
|
+
*/
|
|
100
|
+
getFullText(doc: PMNode): TextNodesWithPosition[];
|
|
101
|
+
/**
|
|
102
|
+
* Get the regular expression object based on the current search term.
|
|
103
|
+
*
|
|
104
|
+
* @returns Regular expression object
|
|
105
|
+
*/
|
|
106
|
+
getRegex: () => RegExp;
|
|
107
|
+
}
|
|
108
|
+
export declare const SearchAndReplacePlugin: (options: SearchAndReplacePluginProps) => Plugin<SearchAndReplacePluginState>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Extension } from '../../tiptap/vue-3';
|
|
2
|
+
import type { ExtensionOptions } from '../../types';
|
|
3
|
+
declare module "@/tiptap" {
|
|
4
|
+
interface Commands<ReturnType> {
|
|
5
|
+
searchAndReplace: {
|
|
6
|
+
/**
|
|
7
|
+
* @description Replace first instance of search result with given replace term.
|
|
8
|
+
*/
|
|
9
|
+
replace: () => ReturnType;
|
|
10
|
+
/**
|
|
11
|
+
* @description Replace all instances of search result with given replace term.
|
|
12
|
+
*/
|
|
13
|
+
replaceAll: () => ReturnType;
|
|
14
|
+
/**
|
|
15
|
+
* @description Find next instance of search result.
|
|
16
|
+
*/
|
|
17
|
+
findNext: () => ReturnType;
|
|
18
|
+
/**
|
|
19
|
+
* @description Find previous instance of search result.
|
|
20
|
+
*/
|
|
21
|
+
findPrevious: () => ReturnType;
|
|
22
|
+
/**
|
|
23
|
+
* @description Open search panel.
|
|
24
|
+
*/
|
|
25
|
+
openSearch: () => ReturnType;
|
|
26
|
+
/**
|
|
27
|
+
* @description Close search panel.
|
|
28
|
+
*/
|
|
29
|
+
closeSearch: () => ReturnType;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
declare const SearchAndReplace: Extension<ExtensionOptions, any>;
|
|
34
|
+
export default SearchAndReplace;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { SuperscriptExtensionOptions } from "@tiptap/extension-superscript";
|
|
2
|
+
import type { ExtensionOptions } from '../../types';
|
|
3
|
+
declare const Superscript: import('../../tiptap/vue-3').Mark<ExtensionOptions & SuperscriptExtensionOptions, any>;
|
|
4
|
+
export default Superscript;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Node, CellSelection } from '../../tiptap/pm';
|
|
2
|
+
import type { EditorState, Selection, Transaction } from '../../tiptap/pm';
|
|
3
|
+
export declare const selectTable: (tr: Transaction) => Transaction;
|
|
4
|
+
export declare const selectColumn: (index: number) => (tr: Transaction) => Transaction;
|
|
5
|
+
export declare const selectRow: (index: number) => (tr: Transaction) => Transaction;
|
|
6
|
+
export declare const getCellsInColumn: (columnIndex: number | number[]) => (selection: Selection) => {
|
|
7
|
+
pos: number;
|
|
8
|
+
start: number;
|
|
9
|
+
node: Node | null | undefined;
|
|
10
|
+
}[] | undefined;
|
|
11
|
+
export declare const getCellsInRow: (rowIndex: number | number[]) => (selection: Selection) => {
|
|
12
|
+
pos: number;
|
|
13
|
+
start: number;
|
|
14
|
+
node: Node | null | undefined;
|
|
15
|
+
}[] | undefined;
|
|
16
|
+
export declare const findTable: (selection: Selection) => {
|
|
17
|
+
pos: number;
|
|
18
|
+
start: number;
|
|
19
|
+
depth: number;
|
|
20
|
+
node: Node;
|
|
21
|
+
} | undefined;
|
|
22
|
+
export declare const isRectSelected: (rect: any) => (selection: CellSelection) => boolean;
|
|
23
|
+
export declare const isCellSelection: (selection: any) => boolean;
|
|
24
|
+
export declare const isColumnSelected: (columnIndex: number) => (selection: any) => boolean;
|
|
25
|
+
export declare const isRowSelected: (rowIndex: number) => (selection: any) => boolean;
|
|
26
|
+
export declare const isTableSelected: (selection: any) => boolean;
|
|
27
|
+
export declare const hasTableBefore: (editorState: EditorState) => boolean;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Extension } from '../../tiptap/vue-3';
|
|
2
|
+
/**
|
|
3
|
+
* Extension based on:
|
|
4
|
+
* - https://github.com/ueberdosis/tiptap/tree/main/demos/src/Experiments/TrailingNode
|
|
5
|
+
* - https://github.com/ueberdosis/tiptap/blob/v1/packages/tiptap-extensions/src/extensions/TrailingNode.js
|
|
6
|
+
* - https://github.com/remirror/remirror/blob/e0f1bec4a1e8073ce8f5500d62193e52321155b9/packages/prosemirror-trailing-node/src/trailing-node-plugin.ts
|
|
7
|
+
*/
|
|
8
|
+
declare const TrailingNode: Extension<any, any>;
|
|
9
|
+
export default TrailingNode;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Editor } from '../../tiptap/vue-3';
|
|
2
|
+
import { type Component } from "vue";
|
|
3
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
4
|
+
editor: Editor;
|
|
5
|
+
isActive: ({ editor }: {
|
|
6
|
+
editor: Editor;
|
|
7
|
+
}) => boolean;
|
|
8
|
+
visible?: (({ editor }: {
|
|
9
|
+
editor: Editor;
|
|
10
|
+
}) => boolean) | undefined;
|
|
11
|
+
icon?: Component | undefined;
|
|
12
|
+
title?: string | undefined;
|
|
13
|
+
action?: (({ editor }: {
|
|
14
|
+
editor: Editor;
|
|
15
|
+
}) => void) | undefined;
|
|
16
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
17
|
+
editor: Editor;
|
|
18
|
+
isActive: ({ editor }: {
|
|
19
|
+
editor: Editor;
|
|
20
|
+
}) => boolean;
|
|
21
|
+
visible?: (({ editor }: {
|
|
22
|
+
editor: Editor;
|
|
23
|
+
}) => boolean) | undefined;
|
|
24
|
+
icon?: Component | undefined;
|
|
25
|
+
title?: string | undefined;
|
|
26
|
+
action?: (({ editor }: {
|
|
27
|
+
editor: Editor;
|
|
28
|
+
}) => void) | undefined;
|
|
29
|
+
}>>>, {}, {}>;
|
|
30
|
+
export default _default;
|
|
31
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
32
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
33
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
34
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
35
|
+
} : {
|
|
36
|
+
type: import('vue').PropType<T[K]>;
|
|
37
|
+
required: true;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Editor } from '../../tiptap/vue-3';
|
|
2
|
+
import { type Component } from "vue";
|
|
3
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
4
|
+
editor: Editor;
|
|
5
|
+
isActive?: (({ editor }: {
|
|
6
|
+
editor: Editor;
|
|
7
|
+
}) => boolean) | undefined;
|
|
8
|
+
visible?: (({ editor }: {
|
|
9
|
+
editor: Editor;
|
|
10
|
+
}) => boolean) | undefined;
|
|
11
|
+
icon?: Component | undefined;
|
|
12
|
+
title?: string | undefined;
|
|
13
|
+
action?: (({ editor }: {
|
|
14
|
+
editor: Editor;
|
|
15
|
+
}) => void) | undefined;
|
|
16
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
17
|
+
editor: Editor;
|
|
18
|
+
isActive?: (({ editor }: {
|
|
19
|
+
editor: Editor;
|
|
20
|
+
}) => boolean) | undefined;
|
|
21
|
+
visible?: (({ editor }: {
|
|
22
|
+
editor: Editor;
|
|
23
|
+
}) => boolean) | undefined;
|
|
24
|
+
icon?: Component | undefined;
|
|
25
|
+
title?: string | undefined;
|
|
26
|
+
action?: (({ editor }: {
|
|
27
|
+
editor: Editor;
|
|
28
|
+
}) => void) | undefined;
|
|
29
|
+
}>>>, {}, {}>;
|
|
30
|
+
export default _default;
|
|
31
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
32
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
33
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
34
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
35
|
+
} : {
|
|
36
|
+
type: import('vue').PropType<T[K]>;
|
|
37
|
+
required: true;
|
|
38
|
+
};
|
|
39
|
+
};
|