oolib 2.109.1 → 2.109.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.
|
@@ -1,2 +1,17 @@
|
|
|
1
1
|
import { ReactPortal } from 'react';
|
|
2
|
-
export default function TableCellResizerPlugin(
|
|
2
|
+
export default function TableCellResizerPlugin({ useLexicalComposerContext, useLexicalEditable, $getTableColumnIndexFromTableCellNode, $getTableNodeFromLexicalNodeOrThrow, $getTableRowIndexFromTableCellNode, $isTableCellNode, $isTableRowNode, $isTableSelection, getDOMCellFromTarget, $getNearestNodeFromDOMNode, $getSelection, TableCellNode, COMMAND_PRIORITY_HIGH, SELECTION_CHANGE_COMMAND, }: {
|
|
3
|
+
useLexicalComposerContext: any;
|
|
4
|
+
useLexicalEditable: any;
|
|
5
|
+
$getTableColumnIndexFromTableCellNode: any;
|
|
6
|
+
$getTableNodeFromLexicalNodeOrThrow: any;
|
|
7
|
+
$getTableRowIndexFromTableCellNode: any;
|
|
8
|
+
$isTableCellNode: any;
|
|
9
|
+
$isTableRowNode: any;
|
|
10
|
+
$isTableSelection: any;
|
|
11
|
+
getDOMCellFromTarget: any;
|
|
12
|
+
$getNearestNodeFromDOMNode: any;
|
|
13
|
+
$getSelection: any;
|
|
14
|
+
TableCellNode: any;
|
|
15
|
+
COMMAND_PRIORITY_HIGH: any;
|
|
16
|
+
SELECTION_CHANGE_COMMAND: any;
|
|
17
|
+
}): null | ReactPortal;
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
14
|
if (k2 === undefined) k2 = k;
|
|
4
15
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -22,14 +33,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
33
|
__setModuleDefault(result, mod);
|
|
23
34
|
return result;
|
|
24
35
|
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
37
|
+
// import {
|
|
38
|
+
// $getTableColumnIndexFromTableCellNode,
|
|
39
|
+
// $getTableNodeFromLexicalNodeOrThrow,
|
|
40
|
+
// $getTableRowIndexFromTableCellNode,
|
|
41
|
+
// $isTableCellNode,
|
|
42
|
+
// $isTableRowNode,
|
|
43
|
+
// $isTableSelection,
|
|
44
|
+
// getDOMCellFromTarget,
|
|
45
|
+
// TableCellNode,
|
|
46
|
+
// } from '@lexical/table';
|
|
47
|
+
// import {
|
|
48
|
+
// $getNearestNodeFromDOMNode,
|
|
49
|
+
// $getSelection,
|
|
50
|
+
// COMMAND_PRIORITY_HIGH,
|
|
51
|
+
// SELECTION_CHANGE_COMMAND,
|
|
52
|
+
// } from 'lexical';
|
|
33
53
|
var React = __importStar(require("react"));
|
|
34
54
|
var react_1 = require("react");
|
|
35
55
|
var react_dom_1 = require("react-dom");
|
|
@@ -37,7 +57,7 @@ var index_styled_1 = require("./index.styled");
|
|
|
37
57
|
var MIN_ROW_HEIGHT = 33;
|
|
38
58
|
var MIN_COLUMN_WIDTH = 50;
|
|
39
59
|
function TableCellResizer(_a) {
|
|
40
|
-
var editor = _a.editor;
|
|
60
|
+
var $getTableColumnIndexFromTableCellNode = _a.$getTableColumnIndexFromTableCellNode, $getTableNodeFromLexicalNodeOrThrow = _a.$getTableNodeFromLexicalNodeOrThrow, $getTableRowIndexFromTableCellNode = _a.$getTableRowIndexFromTableCellNode, $isTableCellNode = _a.$isTableCellNode, $isTableRowNode = _a.$isTableRowNode, $isTableSelection = _a.$isTableSelection, getDOMCellFromTarget = _a.getDOMCellFromTarget, $getNearestNodeFromDOMNode = _a.$getNearestNodeFromDOMNode, $getSelection = _a.$getSelection, COMMAND_PRIORITY_HIGH = _a.COMMAND_PRIORITY_HIGH, TableCellNode = _a.TableCellNode, SELECTION_CHANGE_COMMAND = _a.SELECTION_CHANGE_COMMAND, editor = _a.editor;
|
|
41
61
|
var targetRef = (0, react_1.useRef)(null);
|
|
42
62
|
var resizerRef = (0, react_1.useRef)(null);
|
|
43
63
|
var tableRectRef = (0, react_1.useRef)(null);
|
|
@@ -47,14 +67,14 @@ function TableCellResizer(_a) {
|
|
|
47
67
|
var _d = (0, react_1.useState)(false), isSelectingGrid = _d[0], updateIsSelectingGrid = _d[1];
|
|
48
68
|
var _e = (0, react_1.useState)(null), draggingDirection = _e[0], updateDraggingDirection = _e[1];
|
|
49
69
|
(0, react_1.useEffect)(function () {
|
|
50
|
-
return editor.registerCommand(
|
|
51
|
-
var selection =
|
|
52
|
-
var isTableSelection =
|
|
70
|
+
return editor.registerCommand(SELECTION_CHANGE_COMMAND, function (payload) {
|
|
71
|
+
var selection = $getSelection();
|
|
72
|
+
var isTableSelection = $isTableSelection(selection);
|
|
53
73
|
if (isSelectingGrid !== isTableSelection) {
|
|
54
74
|
updateIsSelectingGrid(isTableSelection);
|
|
55
75
|
}
|
|
56
76
|
return false;
|
|
57
|
-
},
|
|
77
|
+
}, COMMAND_PRIORITY_HIGH);
|
|
58
78
|
});
|
|
59
79
|
var resetState = (0, react_1.useCallback)(function () {
|
|
60
80
|
updateActiveCell(null);
|
|
@@ -79,14 +99,14 @@ function TableCellResizer(_a) {
|
|
|
79
99
|
}
|
|
80
100
|
if (targetRef.current !== target) {
|
|
81
101
|
targetRef.current = target;
|
|
82
|
-
var cell_1 =
|
|
102
|
+
var cell_1 = getDOMCellFromTarget(target);
|
|
83
103
|
if (cell_1 && activeCell !== cell_1) {
|
|
84
104
|
editor.update(function () {
|
|
85
|
-
var tableCellNode =
|
|
105
|
+
var tableCellNode = $getNearestNodeFromDOMNode(cell_1.elem);
|
|
86
106
|
if (!tableCellNode) {
|
|
87
107
|
throw new Error('TableCellResizer: Table cell node not found.');
|
|
88
108
|
}
|
|
89
|
-
var tableNode =
|
|
109
|
+
var tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
|
|
90
110
|
var tableElement = editor.getElementByKey(tableNode.getKey());
|
|
91
111
|
if (!tableElement) {
|
|
92
112
|
throw new Error('TableCellResizer: Table element not found.');
|
|
@@ -118,18 +138,18 @@ function TableCellResizer(_a) {
|
|
|
118
138
|
throw new Error('TableCellResizer: Expected active cell.');
|
|
119
139
|
}
|
|
120
140
|
editor.update(function () {
|
|
121
|
-
var tableCellNode =
|
|
122
|
-
if (
|
|
141
|
+
var tableCellNode = $getNearestNodeFromDOMNode(activeCell.elem);
|
|
142
|
+
if (!$isTableCellNode(tableCellNode)) {
|
|
123
143
|
throw new Error('TableCellResizer: Table cell node not found.');
|
|
124
144
|
}
|
|
125
|
-
var tableNode =
|
|
126
|
-
var tableRowIndex =
|
|
145
|
+
var tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
|
|
146
|
+
var tableRowIndex = $getTableRowIndexFromTableCellNode(tableCellNode);
|
|
127
147
|
var tableRows = tableNode.getChildren();
|
|
128
148
|
if (tableRowIndex >= tableRows.length || tableRowIndex < 0) {
|
|
129
149
|
throw new Error('Expected table cell to be inside of table row.');
|
|
130
150
|
}
|
|
131
151
|
var tableRow = tableRows[tableRowIndex];
|
|
132
|
-
if (
|
|
152
|
+
if (!$isTableRowNode(tableRow)) {
|
|
133
153
|
throw new Error('Expected table row');
|
|
134
154
|
}
|
|
135
155
|
tableRow.setHeight(newHeight);
|
|
@@ -140,16 +160,16 @@ function TableCellResizer(_a) {
|
|
|
140
160
|
throw new Error('TableCellResizer: Expected active cell.');
|
|
141
161
|
}
|
|
142
162
|
editor.update(function () {
|
|
143
|
-
var tableCellNode =
|
|
144
|
-
if (
|
|
163
|
+
var tableCellNode = $getNearestNodeFromDOMNode(activeCell.elem);
|
|
164
|
+
if (!$isTableCellNode(tableCellNode)) {
|
|
145
165
|
throw new Error('TableCellResizer: Table cell node not found.');
|
|
146
166
|
}
|
|
147
|
-
var tableNode =
|
|
148
|
-
var tableColumnIndex =
|
|
167
|
+
var tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
|
|
168
|
+
var tableColumnIndex = $getTableColumnIndexFromTableCellNode(tableCellNode);
|
|
149
169
|
var tableRows = tableNode.getChildren();
|
|
150
170
|
for (var r = 0; r < tableRows.length; r++) {
|
|
151
171
|
var tableRow = tableRows[r];
|
|
152
|
-
if (
|
|
172
|
+
if (!$isTableRowNode(tableRow)) {
|
|
153
173
|
throw new Error('Expected table row');
|
|
154
174
|
}
|
|
155
175
|
var rowCells = tableRow.getChildren();
|
|
@@ -166,7 +186,7 @@ function TableCellResizer(_a) {
|
|
|
166
186
|
throw new Error('Expected table cell to be inside of table row.');
|
|
167
187
|
}
|
|
168
188
|
var tableCell = rowCells[rowColumnIndexWithSpan];
|
|
169
|
-
if (
|
|
189
|
+
if (!$isTableCellNode(tableCell)) {
|
|
170
190
|
throw new Error('Expected table cell');
|
|
171
191
|
}
|
|
172
192
|
tableCell.setWidth(newWidth);
|
|
@@ -274,12 +294,27 @@ function TableCellResizer(_a) {
|
|
|
274
294
|
React.createElement(index_styled_1.StyledTableCellResizer, { className: "TableCellResizer__resizer TableCellResizer__ui", style: resizerStyles.right || undefined, onMouseDown: toggleResize('right') }),
|
|
275
295
|
React.createElement(index_styled_1.StyledTableCellResizer, { className: "TableCellResizer__resizer TableCellResizer__ui", style: resizerStyles.bottom || undefined, onMouseDown: toggleResize('bottom') })))));
|
|
276
296
|
}
|
|
277
|
-
function TableCellResizerPlugin() {
|
|
278
|
-
var
|
|
279
|
-
var
|
|
297
|
+
function TableCellResizerPlugin(_a) {
|
|
298
|
+
var useLexicalComposerContext = _a.useLexicalComposerContext, useLexicalEditable = _a.useLexicalEditable, $getTableColumnIndexFromTableCellNode = _a.$getTableColumnIndexFromTableCellNode, $getTableNodeFromLexicalNodeOrThrow = _a.$getTableNodeFromLexicalNodeOrThrow, $getTableRowIndexFromTableCellNode = _a.$getTableRowIndexFromTableCellNode, $isTableCellNode = _a.$isTableCellNode, $isTableRowNode = _a.$isTableRowNode, $isTableSelection = _a.$isTableSelection, getDOMCellFromTarget = _a.getDOMCellFromTarget, $getNearestNodeFromDOMNode = _a.$getNearestNodeFromDOMNode, $getSelection = _a.$getSelection, TableCellNode = _a.TableCellNode, COMMAND_PRIORITY_HIGH = _a.COMMAND_PRIORITY_HIGH, SELECTION_CHANGE_COMMAND = _a.SELECTION_CHANGE_COMMAND;
|
|
299
|
+
var editor = useLexicalComposerContext()[0];
|
|
300
|
+
var isEditable = useLexicalEditable();
|
|
280
301
|
return (0, react_1.useMemo)(function () {
|
|
281
302
|
return isEditable
|
|
282
|
-
? (0, react_dom_1.createPortal)(React.createElement(TableCellResizer, {
|
|
303
|
+
? (0, react_dom_1.createPortal)(React.createElement(TableCellResizer, __assign({}, {
|
|
304
|
+
$getTableColumnIndexFromTableCellNode: $getTableColumnIndexFromTableCellNode,
|
|
305
|
+
$getTableNodeFromLexicalNodeOrThrow: $getTableNodeFromLexicalNodeOrThrow,
|
|
306
|
+
$getTableRowIndexFromTableCellNode: $getTableRowIndexFromTableCellNode,
|
|
307
|
+
$isTableCellNode: $isTableCellNode,
|
|
308
|
+
$isTableRowNode: $isTableRowNode,
|
|
309
|
+
$isTableSelection: $isTableSelection,
|
|
310
|
+
getDOMCellFromTarget: getDOMCellFromTarget,
|
|
311
|
+
$getNearestNodeFromDOMNode: $getNearestNodeFromDOMNode,
|
|
312
|
+
$getSelection: $getSelection,
|
|
313
|
+
COMMAND_PRIORITY_HIGH: COMMAND_PRIORITY_HIGH,
|
|
314
|
+
SELECTION_CHANGE_COMMAND: SELECTION_CHANGE_COMMAND,
|
|
315
|
+
TableCellNode: TableCellNode,
|
|
316
|
+
editor: editor
|
|
317
|
+
})), document.body)
|
|
283
318
|
: null;
|
|
284
319
|
}, [editor, isEditable]);
|
|
285
320
|
}
|