@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.
Files changed (86) hide show
  1. package/dist/components/Editor.vue.d.ts +43 -1
  2. package/dist/components/EditorBubbleMenu.vue.d.ts +13 -1
  3. package/dist/components/EditorHeader.vue.d.ts +12 -1
  4. package/dist/components/block/BlockActionButton.vue.d.ts +30 -0
  5. package/dist/components/block/BlockActionInput.vue.d.ts +26 -0
  6. package/dist/components/block/BlockActionSeparator.vue.d.ts +2 -0
  7. package/dist/components/block/BlockCard.vue.d.ts +49 -0
  8. package/dist/components/bubble/BubbleItem.vue.d.ts +89 -0
  9. package/dist/components/bubble/BubbleMenuPlugin.d.ts +53 -0
  10. package/dist/components/common/ColorPickerDropdown.vue.d.ts +26 -0
  11. package/dist/components/index.d.ts +9 -0
  12. package/dist/components/toolbar/ToolbarItem.vue.d.ts +51 -0
  13. package/dist/components/toolbar/ToolbarSubItem.vue.d.ts +51 -0
  14. package/dist/components/toolbox/ToolboxItem.vue.d.ts +52 -0
  15. package/dist/extensions/audio/AudioView.vue.d.ts +71 -0
  16. package/dist/extensions/audio/BubbleItemAudioLink.vue.d.ts +58 -0
  17. package/dist/extensions/audio/index.d.ts +13 -0
  18. package/dist/extensions/blockquote/index.d.ts +4 -0
  19. package/dist/extensions/bold/index.d.ts +4 -0
  20. package/dist/extensions/bullet-list/index.d.ts +4 -0
  21. package/dist/extensions/code/index.d.ts +4 -0
  22. package/dist/extensions/code-block/CodeBlockViewRenderer.vue.d.ts +71 -0
  23. package/dist/extensions/code-block/code-block.d.ts +15 -0
  24. package/dist/extensions/code-block/index.d.ts +2 -0
  25. package/dist/extensions/code-block/lowlight.d.ts +16 -0
  26. package/dist/extensions/color/ColorBubbleItem.vue.d.ts +58 -0
  27. package/dist/extensions/color/ColorToolbarItem.vue.d.ts +61 -0
  28. package/dist/extensions/color/index.d.ts +4 -0
  29. package/dist/extensions/columns/column.d.ts +3 -0
  30. package/dist/extensions/columns/columns.d.ts +15 -0
  31. package/dist/extensions/columns/index.d.ts +2 -0
  32. package/dist/extensions/commands-menu/CommandsView.vue.d.ts +27 -0
  33. package/dist/extensions/commands-menu/commands.d.ts +3 -0
  34. package/dist/extensions/commands-menu/index.d.ts +1 -0
  35. package/dist/extensions/draggable/index.d.ts +14 -0
  36. package/dist/extensions/font-size/index.d.ts +14 -0
  37. package/dist/extensions/heading/index.d.ts +4 -0
  38. package/dist/extensions/highlight/HighlightBubbleItem.vue.d.ts +58 -0
  39. package/dist/extensions/highlight/HighlightToolbarItem.vue.d.ts +61 -0
  40. package/dist/extensions/highlight/index.d.ts +4 -0
  41. package/dist/extensions/history/index.d.ts +4 -0
  42. package/dist/extensions/iframe/BubbleItemIframeLink.vue.d.ts +58 -0
  43. package/dist/extensions/iframe/BubbleItemIframeSize.vue.d.ts +13 -0
  44. package/dist/extensions/iframe/IframeView.vue.d.ts +71 -0
  45. package/dist/extensions/iframe/index.d.ts +13 -0
  46. package/dist/extensions/image/BubbleItemImageAlt.vue.d.ts +58 -0
  47. package/dist/extensions/image/BubbleItemImageHref.vue.d.ts +58 -0
  48. package/dist/extensions/image/BubbleItemImageLink.vue.d.ts +58 -0
  49. package/dist/extensions/image/BubbleItemImageSize.vue.d.ts +58 -0
  50. package/dist/extensions/image/ImageView.vue.d.ts +71 -0
  51. package/dist/extensions/image/index.d.ts +4 -0
  52. package/dist/extensions/indent/index.d.ts +22 -0
  53. package/dist/extensions/index.d.ts +39 -0
  54. package/dist/extensions/italic/index.d.ts +4 -0
  55. package/dist/extensions/link/LinkBubbleButton.vue.d.ts +58 -0
  56. package/dist/extensions/link/index.d.ts +4 -0
  57. package/dist/extensions/node-selected/index.d.ts +6 -0
  58. package/dist/extensions/ordered-list/index.d.ts +4 -0
  59. package/dist/extensions/paragraph/index.d.ts +4 -0
  60. package/dist/extensions/strike/index.d.ts +4 -0
  61. package/dist/extensions/subscript/index.d.ts +4 -0
  62. package/dist/extensions/superscript/index.d.ts +4 -0
  63. package/dist/extensions/table/index.d.ts +4 -0
  64. package/dist/extensions/table/table-cell.d.ts +6 -0
  65. package/dist/extensions/table/table-header.d.ts +6 -0
  66. package/dist/extensions/table/table-row.d.ts +2 -0
  67. package/dist/extensions/table/util.d.ts +27 -0
  68. package/dist/extensions/task-list/index.d.ts +4 -0
  69. package/dist/extensions/text/index.d.ts +3 -0
  70. package/dist/extensions/text-align/index.d.ts +4 -0
  71. package/dist/extensions/trailing-node/index.d.ts +9 -0
  72. package/dist/extensions/underline/index.d.ts +4 -0
  73. package/dist/extensions/video/BubbleItemVideoLink.vue.d.ts +58 -0
  74. package/dist/extensions/video/BubbleItemVideoSize.vue.d.ts +58 -0
  75. package/dist/extensions/video/VideoView.vue.d.ts +71 -0
  76. package/dist/extensions/video/index.d.ts +13 -0
  77. package/dist/locales/index.d.ts +7 -0
  78. package/dist/rich-text-editor.es.js +26 -10
  79. package/dist/rich-text-editor.es.js.map +1 -1
  80. package/dist/rich-text-editor.iife.js +26 -10
  81. package/dist/rich-text-editor.iife.js.map +1 -1
  82. package/dist/style.css +10 -8
  83. package/dist/types/index.d.ts +117 -0
  84. package/dist/utils/delete-node.d.ts +2 -0
  85. package/dist/utils/index.d.ts +1 -0
  86. 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,2 @@
1
+ import type { Editor } from "@tiptap/core";
2
+ export declare const deleteNode: (nodeType: string, editor: Editor) => boolean;
@@ -0,0 +1 @@
1
+ export * from "./delete-node";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@halo-dev/richtext-editor",
3
- "version": "0.0.0-alpha.31",
3
+ "version": "0.0.0-alpha.32",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist"