@halo-dev/richtext-editor 0.0.0-alpha.31 → 0.0.0-alpha.32
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 +43 -1
- package/dist/components/EditorBubbleMenu.vue.d.ts +13 -1
- package/dist/components/EditorHeader.vue.d.ts +12 -1
- package/dist/components/block/BlockActionButton.vue.d.ts +30 -0
- package/dist/components/block/BlockActionInput.vue.d.ts +26 -0
- package/dist/components/block/BlockActionSeparator.vue.d.ts +2 -0
- package/dist/components/block/BlockCard.vue.d.ts +49 -0
- package/dist/components/bubble/BubbleItem.vue.d.ts +89 -0
- package/dist/components/bubble/BubbleMenuPlugin.d.ts +53 -0
- package/dist/components/common/ColorPickerDropdown.vue.d.ts +26 -0
- package/dist/components/index.d.ts +9 -0
- package/dist/components/toolbar/ToolbarItem.vue.d.ts +51 -0
- package/dist/components/toolbar/ToolbarSubItem.vue.d.ts +51 -0
- package/dist/components/toolbox/ToolboxItem.vue.d.ts +52 -0
- package/dist/extensions/audio/AudioView.vue.d.ts +71 -0
- package/dist/extensions/audio/BubbleItemAudioLink.vue.d.ts +58 -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 +71 -0
- package/dist/extensions/code-block/code-block.d.ts +15 -0
- package/dist/extensions/code-block/index.d.ts +2 -0
- package/dist/extensions/code-block/lowlight.d.ts +16 -0
- package/dist/extensions/color/ColorBubbleItem.vue.d.ts +58 -0
- package/dist/extensions/color/ColorToolbarItem.vue.d.ts +61 -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 +27 -0
- package/dist/extensions/commands-menu/commands.d.ts +3 -0
- package/dist/extensions/commands-menu/index.d.ts +1 -0
- 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 +58 -0
- package/dist/extensions/highlight/HighlightToolbarItem.vue.d.ts +61 -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 +58 -0
- package/dist/extensions/iframe/BubbleItemIframeSize.vue.d.ts +13 -0
- package/dist/extensions/iframe/IframeView.vue.d.ts +71 -0
- package/dist/extensions/iframe/index.d.ts +13 -0
- package/dist/extensions/image/BubbleItemImageAlt.vue.d.ts +58 -0
- package/dist/extensions/image/BubbleItemImageHref.vue.d.ts +58 -0
- package/dist/extensions/image/BubbleItemImageLink.vue.d.ts +58 -0
- package/dist/extensions/image/BubbleItemImageSize.vue.d.ts +58 -0
- package/dist/extensions/image/ImageView.vue.d.ts +71 -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 +39 -0
- package/dist/extensions/italic/index.d.ts +4 -0
- package/dist/extensions/link/LinkBubbleButton.vue.d.ts +58 -0
- package/dist/extensions/link/index.d.ts +4 -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/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 +58 -0
- package/dist/extensions/video/BubbleItemVideoSize.vue.d.ts +58 -0
- package/dist/extensions/video/VideoView.vue.d.ts +71 -0
- package/dist/extensions/video/index.d.ts +13 -0
- package/dist/locales/index.d.ts +7 -0
- package/dist/rich-text-editor.es.js +26 -10
- package/dist/rich-text-editor.es.js.map +1 -1
- package/dist/rich-text-editor.iife.js +26 -10
- package/dist/rich-text-editor.iife.js.map +1 -1
- package/dist/style.css +10 -8
- package/dist/types/index.d.ts +117 -0
- package/dist/utils/delete-node.d.ts +2 -0
- package/dist/utils/index.d.ts +1 -0
- package/package.json +1 -1
package/dist/style.css
CHANGED
|
@@ -20,15 +20,12 @@
|
|
|
20
20
|
height: 48px;
|
|
21
21
|
}
|
|
22
22
|
.halo-rich-text-editor .editor-content {
|
|
23
|
-
height: 100%;
|
|
24
23
|
width: 100%;
|
|
25
24
|
position: relative;
|
|
26
25
|
}
|
|
27
26
|
.halo-rich-text-editor .editor-content .ProseMirror {
|
|
28
|
-
height: 100%;
|
|
29
|
-
overflow: auto;
|
|
30
27
|
outline: none !important;
|
|
31
|
-
padding: 15px;
|
|
28
|
+
padding: 15px 20px;
|
|
32
29
|
}
|
|
33
30
|
.halo-rich-text-editor .editor-content .ProseMirror p {
|
|
34
31
|
margin-top: 0.75em;
|
|
@@ -962,6 +959,12 @@ video {
|
|
|
962
959
|
.w-full {
|
|
963
960
|
width: 100%;
|
|
964
961
|
}
|
|
962
|
+
.flex-1 {
|
|
963
|
+
flex: 1 1 0%;
|
|
964
|
+
}
|
|
965
|
+
.flex-shrink-0 {
|
|
966
|
+
flex-shrink: 0;
|
|
967
|
+
}
|
|
965
968
|
.transform {
|
|
966
969
|
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
967
970
|
}
|
|
@@ -1048,6 +1051,9 @@ video {
|
|
|
1048
1051
|
.overflow-y-auto {
|
|
1049
1052
|
overflow-y: auto;
|
|
1050
1053
|
}
|
|
1054
|
+
.overflow-x-hidden {
|
|
1055
|
+
overflow-x: hidden;
|
|
1056
|
+
}
|
|
1051
1057
|
.rounded {
|
|
1052
1058
|
border-radius: 0.25rem;
|
|
1053
1059
|
}
|
|
@@ -1265,10 +1271,6 @@ video {
|
|
|
1265
1271
|
display: block !important;
|
|
1266
1272
|
}
|
|
1267
1273
|
|
|
1268
|
-
.sm\:\!w-\[calc\(100\%-18rem\)\] {
|
|
1269
|
-
width: calc(100% - 18rem) !important;
|
|
1270
|
-
}
|
|
1271
|
-
|
|
1272
1274
|
.sm\:\!justify-center {
|
|
1273
1275
|
justify-content: center !important;
|
|
1274
1276
|
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import type { Editor, Range } from "@tiptap/core";
|
|
2
|
+
import type { Node, ResolvedPos, Slice } from "@tiptap/pm/model";
|
|
3
|
+
import type { EditorState } from "@tiptap/pm/state";
|
|
4
|
+
import type { EditorView } from "@tiptap/pm/view";
|
|
5
|
+
import type { Component } from "vue";
|
|
6
|
+
export interface ToolbarItem {
|
|
7
|
+
priority: number;
|
|
8
|
+
component: Component;
|
|
9
|
+
props: {
|
|
10
|
+
editor: Editor;
|
|
11
|
+
isActive: boolean;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
icon?: Component;
|
|
14
|
+
title?: string;
|
|
15
|
+
action?: () => void;
|
|
16
|
+
};
|
|
17
|
+
children?: ToolbarItem[];
|
|
18
|
+
}
|
|
19
|
+
interface BubbleMenuProps {
|
|
20
|
+
pluginKey?: string;
|
|
21
|
+
editor?: Editor;
|
|
22
|
+
shouldShow: (props: {
|
|
23
|
+
editor: Editor;
|
|
24
|
+
state: EditorState;
|
|
25
|
+
node?: HTMLElement;
|
|
26
|
+
view?: EditorView;
|
|
27
|
+
oldState?: EditorState;
|
|
28
|
+
from?: number;
|
|
29
|
+
to?: number;
|
|
30
|
+
}) => boolean;
|
|
31
|
+
tippyOptions?: Record<string, unknown>;
|
|
32
|
+
getRenderContainer?: (node: HTMLElement) => HTMLElement;
|
|
33
|
+
defaultAnimation?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export interface NodeBubbleMenu extends BubbleMenuProps {
|
|
36
|
+
component?: Component;
|
|
37
|
+
items?: BubbleItem[];
|
|
38
|
+
}
|
|
39
|
+
export interface BubbleItem {
|
|
40
|
+
priority: number;
|
|
41
|
+
component?: Component;
|
|
42
|
+
props?: {
|
|
43
|
+
isActive?: ({ editor }: {
|
|
44
|
+
editor: Editor;
|
|
45
|
+
}) => boolean;
|
|
46
|
+
visible?: ({ editor }: {
|
|
47
|
+
editor: Editor;
|
|
48
|
+
}) => boolean;
|
|
49
|
+
icon?: Component;
|
|
50
|
+
iconStyle?: string;
|
|
51
|
+
title?: string;
|
|
52
|
+
action?: ({ editor }: {
|
|
53
|
+
editor: Editor;
|
|
54
|
+
}) => Component | void;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export interface ToolboxItem {
|
|
58
|
+
priority: number;
|
|
59
|
+
component: Component;
|
|
60
|
+
props: {
|
|
61
|
+
editor: Editor;
|
|
62
|
+
icon?: Component;
|
|
63
|
+
title?: string;
|
|
64
|
+
description?: string;
|
|
65
|
+
action?: () => void;
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
export interface ExtensionOptions {
|
|
69
|
+
getToolbarItems?: ({ editor, }: {
|
|
70
|
+
editor: Editor;
|
|
71
|
+
}) => ToolbarItem | ToolbarItem[];
|
|
72
|
+
getCommandMenuItems?: () => CommandMenuItem | CommandMenuItem[];
|
|
73
|
+
getBubbleMenu?: ({ editor }: {
|
|
74
|
+
editor: Editor;
|
|
75
|
+
}) => NodeBubbleMenu;
|
|
76
|
+
getToolboxItems?: ({ editor, }: {
|
|
77
|
+
editor: Editor;
|
|
78
|
+
}) => ToolboxItem | ToolboxItem[];
|
|
79
|
+
getDraggable?: ({ editor }: {
|
|
80
|
+
editor: Editor;
|
|
81
|
+
}) => DraggableItem | boolean;
|
|
82
|
+
}
|
|
83
|
+
export interface CommandMenuItem {
|
|
84
|
+
priority: number;
|
|
85
|
+
icon: Component;
|
|
86
|
+
title: string;
|
|
87
|
+
keywords: string[];
|
|
88
|
+
command: ({ editor, range }: {
|
|
89
|
+
editor: Editor;
|
|
90
|
+
range: Range;
|
|
91
|
+
}) => void;
|
|
92
|
+
}
|
|
93
|
+
export interface DragSelectionNode {
|
|
94
|
+
$pos?: ResolvedPos;
|
|
95
|
+
node?: Node;
|
|
96
|
+
el: HTMLElement;
|
|
97
|
+
nodeOffset?: number;
|
|
98
|
+
dragDomOffset?: {
|
|
99
|
+
x?: number;
|
|
100
|
+
y?: number;
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
export interface DraggableItem {
|
|
104
|
+
getRenderContainer?: ({ dom, view, }: {
|
|
105
|
+
dom: HTMLElement;
|
|
106
|
+
view: EditorView;
|
|
107
|
+
}) => DragSelectionNode;
|
|
108
|
+
handleDrop?: ({ view, event, slice, insertPos, node, }: {
|
|
109
|
+
view: EditorView;
|
|
110
|
+
event: DragEvent;
|
|
111
|
+
slice: Slice;
|
|
112
|
+
insertPos: number;
|
|
113
|
+
node: Node;
|
|
114
|
+
}) => boolean | void;
|
|
115
|
+
allowPropagationDownward?: boolean;
|
|
116
|
+
}
|
|
117
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./delete-node";
|