@ctzhian/tiptap 1.13.9 → 2.1.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.
Files changed (83) hide show
  1. package/dist/Editor/demo.js +133 -123
  2. package/dist/Editor/index.js +17 -0
  3. package/dist/EditorToolbar/index.js +11 -9
  4. package/dist/asset/css/index.css +5 -7
  5. package/dist/component/ActionDropdown/index.d.ts +5 -0
  6. package/dist/component/ActionDropdown/index.js +8 -3
  7. package/dist/component/CustomBubbleMenu/index.js +1 -1
  8. package/dist/component/CustomDragHandle/index.js +3 -59
  9. package/dist/component/FloatingPopover/index.d.ts +2 -2
  10. package/dist/component/HoverPopover/index.d.ts +2 -0
  11. package/dist/component/HoverPopover/index.js +22 -3
  12. package/dist/component/Icons/delete-back-2-line-icon.d.ts +6 -0
  13. package/dist/component/Icons/delete-back-2-line-icon.js +13 -0
  14. package/dist/component/Icons/{expand-horizontal-line.js → expand-horizontal-line-icon.js} +1 -1
  15. package/dist/component/Icons/index.d.ts +3 -2
  16. package/dist/component/Icons/index.js +4 -3
  17. package/dist/component/Menu/index.js +5 -1
  18. package/dist/contants/enums.d.ts +9 -0
  19. package/dist/contants/enums.js +61 -1
  20. package/dist/extension/component/Alert/index.js +141 -137
  21. package/dist/extension/component/Flow/Edit.d.ts +1 -1
  22. package/dist/extension/component/Flow/Edit.js +3 -31
  23. package/dist/extension/component/Flow/index.js +20 -19
  24. package/dist/extension/component/Image/index.d.ts +1 -0
  25. package/dist/extension/component/Image/index.js +16 -2
  26. package/dist/extension/component/Link/index.js +1 -1
  27. package/dist/extension/component/TableCellHandleMenu/index.d.ts +9 -0
  28. package/dist/extension/component/TableCellHandleMenu/index.js +500 -0
  29. package/dist/extension/component/TableExtendButton/TableExtendButton.css +30 -0
  30. package/dist/extension/component/TableExtendButton/index.d.ts +23 -0
  31. package/dist/extension/component/TableExtendButton/index.js +201 -0
  32. package/dist/extension/component/TableExtendButton/use-table-extend-row-column.d.ts +15 -0
  33. package/dist/extension/component/TableExtendButton/use-table-extend-row-column.js +87 -0
  34. package/dist/extension/component/TableHandle/TableHandleMenu.css +36 -0
  35. package/dist/extension/component/TableHandle/TableHandleMenu.d.ts +17 -0
  36. package/dist/extension/component/TableHandle/TableHandleMenu.js +685 -0
  37. package/dist/extension/component/TableHandle/index.d.ts +28 -0
  38. package/dist/extension/component/TableHandle/index.js +93 -0
  39. package/dist/extension/component/TableHandle/use-table-handle-positioning.d.ts +40 -0
  40. package/dist/extension/component/TableHandle/use-table-handle-positioning.js +193 -0
  41. package/dist/extension/component/TableHandle/use-table-handle-state.d.ts +22 -0
  42. package/dist/extension/component/TableHandle/use-table-handle-state.js +45 -0
  43. package/dist/extension/component/TableSelectionOverlay/index.d.ts +16 -0
  44. package/dist/extension/component/TableSelectionOverlay/index.js +452 -0
  45. package/dist/extension/component/Video/Insert.js +4 -2
  46. package/dist/extension/component/Video/Readonly.js +4 -11
  47. package/dist/extension/component/Video/index.d.ts +2 -1
  48. package/dist/extension/component/Video/index.js +447 -65
  49. package/dist/extension/extension/ImeComposition.d.ts +2 -0
  50. package/dist/extension/extension/ImeComposition.js +145 -0
  51. package/dist/extension/extension/index.d.ts +1 -0
  52. package/dist/extension/extension/index.js +1 -0
  53. package/dist/extension/index.js +2 -2
  54. package/dist/extension/node/FileHandler.d.ts +1 -1
  55. package/dist/extension/node/Flow/index.d.ts +0 -3
  56. package/dist/extension/node/Flow/index.js +7 -4
  57. package/dist/extension/node/Link/index.js +4 -3
  58. package/dist/extension/node/Table.js +236 -117
  59. package/dist/extension/node/TableHandler/create-image.d.ts +9 -0
  60. package/dist/extension/node/TableHandler/create-image.js +235 -0
  61. package/dist/extension/node/TableHandler/index.d.ts +15 -0
  62. package/dist/extension/node/TableHandler/index.js +33 -0
  63. package/dist/extension/node/TableHandler/plugin.d.ts +49 -0
  64. package/dist/extension/node/TableHandler/plugin.js +1030 -0
  65. package/dist/extension/node/TableOfContents/index.d.ts +5 -3
  66. package/dist/extension/node/TableOfContents/index.js +22 -2
  67. package/dist/extension/node/Video.d.ts +1 -0
  68. package/dist/extension/node/Video.js +38 -6
  69. package/dist/hook/index.js +1 -1
  70. package/dist/index.css +45 -29
  71. package/dist/type/index.d.ts +2 -0
  72. package/dist/util/index.d.ts +9 -0
  73. package/dist/util/index.js +26 -0
  74. package/dist/util/table-utils.d.ts +161 -0
  75. package/dist/util/table-utils.js +605 -0
  76. package/package.json +2 -1
  77. package/dist/extension/component/Table/ContextMenu.d.ts +0 -11
  78. package/dist/extension/component/Table/ContextMenu.js +0 -186
  79. package/dist/extension/component/Table/TableContextMenuPlugin.d.ts +0 -9
  80. package/dist/extension/component/Table/TableContextMenuPlugin.js +0 -336
  81. package/dist/extension/component/Table/index.d.ts +0 -2
  82. package/dist/extension/component/Table/index.js +0 -2
  83. /package/dist/component/Icons/{expand-horizontal-line.d.ts → expand-horizontal-line-icon.d.ts} +0 -0
@@ -0,0 +1,15 @@
1
+ import { Extension } from '@tiptap/core';
2
+ import type { TableHandlesState } from './plugin';
3
+ declare module '@tiptap/core' {
4
+ interface Commands<ReturnType> {
5
+ tableHandle: {
6
+ freezeHandles: () => ReturnType;
7
+ unfreezeHandles: () => ReturnType;
8
+ };
9
+ }
10
+ interface EditorEvents {
11
+ tableHandleState: TableHandlesState;
12
+ }
13
+ }
14
+ export declare const TableHandleExtension: Extension<any, any>;
15
+ export * from './plugin';
@@ -0,0 +1,33 @@
1
+ import { Extension } from '@tiptap/core';
2
+ import { TableHandlePlugin, tableHandlePluginKey } from "./plugin";
3
+ export var TableHandleExtension = Extension.create({
4
+ name: 'tableHandleExtension',
5
+ addCommands: function addCommands() {
6
+ return {
7
+ freezeHandles: function freezeHandles() {
8
+ return function (_ref) {
9
+ var tr = _ref.tr,
10
+ dispatch = _ref.dispatch;
11
+ if (dispatch) tr.setMeta(tableHandlePluginKey, true);
12
+ return true;
13
+ };
14
+ },
15
+ unfreezeHandles: function unfreezeHandles() {
16
+ return function (_ref2) {
17
+ var tr = _ref2.tr,
18
+ dispatch = _ref2.dispatch;
19
+ if (dispatch) tr.setMeta(tableHandlePluginKey, false);
20
+ return true;
21
+ };
22
+ }
23
+ };
24
+ },
25
+ addProseMirrorPlugins: function addProseMirrorPlugins() {
26
+ var _this = this;
27
+ var editor = this.editor;
28
+ return [TableHandlePlugin(editor, function (state) {
29
+ _this.editor.emit('tableHandleState', state);
30
+ })];
31
+ }
32
+ });
33
+ export * from "./plugin";
@@ -0,0 +1,49 @@
1
+ import type { Editor } from '@tiptap/core';
2
+ import type { Node as TiptapNode } from '@tiptap/pm/model';
3
+ import { Plugin, PluginKey } from '@tiptap/pm/state';
4
+ export type TableHandlesState = {
5
+ show: boolean;
6
+ showAddOrRemoveRowsButton: boolean;
7
+ showAddOrRemoveColumnsButton: boolean;
8
+ referencePosCell?: DOMRect;
9
+ referencePosTable: DOMRect;
10
+ referencePosLastRow?: DOMRect;
11
+ referencePosLastCol?: DOMRect;
12
+ block: TiptapNode;
13
+ blockPos: number;
14
+ colIndex: number | undefined;
15
+ rowIndex: number | undefined;
16
+ draggingState?: {
17
+ draggedCellOrientation: 'row' | 'col';
18
+ originalIndex: number;
19
+ mousePos: number;
20
+ initialOffset: number;
21
+ originalCellSize?: {
22
+ width: number;
23
+ height: number;
24
+ };
25
+ } | undefined;
26
+ widgetContainer: HTMLElement | undefined;
27
+ };
28
+ export declare const tableHandlePluginKey: PluginKey<any>;
29
+ export declare function TableHandlePlugin(editor: Editor, emitUpdate: (state: TableHandlesState) => void): Plugin;
30
+ /**
31
+ * Callback for column drag handle
32
+ */
33
+ export declare const colDragStart: (event: {
34
+ dataTransfer: DataTransfer | null;
35
+ currentTarget: EventTarget & Element;
36
+ clientX: number;
37
+ }) => void;
38
+ /**
39
+ * Callback for row drag handle
40
+ */
41
+ export declare const rowDragStart: (event: {
42
+ dataTransfer: DataTransfer | null;
43
+ currentTarget: EventTarget & Element;
44
+ clientY: number;
45
+ }) => void;
46
+ /**
47
+ * Drag end cleanup
48
+ */
49
+ export declare const dragEnd: () => void;