@atlaskit/editor-tables 2.9.2 → 2.9.4
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/CHANGELOG.md +17 -0
- package/dist/cjs/pm-plugins/input.js +1 -5
- package/dist/cjs/utils/handle-paste.js +9 -8
- package/dist/cjs/utils/move-column.js +1 -2
- package/dist/es2019/pm-plugins/input.js +1 -5
- package/dist/es2019/utils/handle-paste.js +9 -8
- package/dist/es2019/utils/move-column.js +1 -2
- package/dist/esm/pm-plugins/input.js +1 -5
- package/dist/esm/utils/handle-paste.js +9 -8
- package/dist/esm/utils/move-column.js +1 -2
- package/dist/types/utils/handle-paste.d.ts +5 -1
- package/dist/types-ts4.5/utils/handle-paste.d.ts +5 -1
- package/package.json +3 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @atlaskit/editor-tables
|
|
2
2
|
|
|
3
|
+
## 2.9.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#155329](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/155329)
|
|
8
|
+
[`516452df3b2b5`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/516452df3b2b5) -
|
|
9
|
+
clean up platform_editor_table_fix_move_column
|
|
10
|
+
- Updated dependencies
|
|
11
|
+
|
|
12
|
+
## 2.9.3
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- [#148184](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/148184)
|
|
17
|
+
[`cf70e8acad123`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/cf70e8acad123) -
|
|
18
|
+
EDITOR-321 Cleaned up feature gate `platform_editor_cell_selection_with_nested_tables`
|
|
19
|
+
|
|
3
20
|
## 2.9.2
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
|
@@ -9,7 +9,6 @@ exports.handleTripleClick = handleTripleClick;
|
|
|
9
9
|
var _keymap = require("@atlaskit/editor-prosemirror/keymap");
|
|
10
10
|
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
11
11
|
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
12
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
13
12
|
var _cellSelection = require("../cell-selection");
|
|
14
13
|
var _utils = require("../utils");
|
|
15
14
|
var _cells = require("../utils/cells");
|
|
@@ -212,14 +211,11 @@ function handleMouseDown(view, event, dragAndDropEnabled) {
|
|
|
212
211
|
var isStartCellInsideNestedTable = isInsideNestedTable(view, startEvent);
|
|
213
212
|
var isBothCellsInSameTable = isCurrCellInsideNestedTable === isStartCellInsideNestedTable;
|
|
214
213
|
var $moveAnchor;
|
|
215
|
-
var oldIfStatement = currDOMCell !== startDOMCell;
|
|
216
|
-
var newIfStatement = currDOMCell !== startDOMCell && isBothCellsInSameTable;
|
|
217
|
-
var checkCellsAreDifferent = (0, _platformFeatureFlags.fg)('platform_editor_cell_selection_with_nested_tables') ? newIfStatement : oldIfStatement;
|
|
218
214
|
if (anchor != null) {
|
|
219
215
|
// Continuing an existing cross-cell selection
|
|
220
216
|
$moveAnchor = view.state.doc.resolve(anchor);
|
|
221
217
|
// Ignored via go/ees005
|
|
222
|
-
} else if (
|
|
218
|
+
} else if (currDOMCell !== startDOMCell && isBothCellsInSameTable) {
|
|
223
219
|
// Moving out of the initial cell -- start a new cell selection
|
|
224
220
|
$moveAnchor = cellUnderMouse(view, startEvent);
|
|
225
221
|
if (!$moveAnchor) {
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.handlePaste = handlePaste;
|
|
7
7
|
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
8
8
|
var _utils = require("@atlaskit/editor-prosemirror/utils");
|
|
9
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
9
10
|
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
10
11
|
var _cellSelection = require("../cell-selection");
|
|
11
12
|
var _tableMap2 = require("../table-map");
|
|
@@ -16,21 +17,21 @@ var _copyPaste = require("./copy-paste");
|
|
|
16
17
|
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
|
|
17
18
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
18
19
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
19
|
-
|
|
20
|
+
var SKIP_NESTED_TABLE_PASTE_SOURCES = ['microsoft-excel', 'google-spreadsheets'];
|
|
21
|
+
function handlePaste(view, event, slice, options) {
|
|
20
22
|
var _slice$content$firstC;
|
|
21
23
|
if (!(0, _tables.isInTable)(view.state)) {
|
|
22
24
|
return false;
|
|
23
25
|
}
|
|
24
26
|
var schema = view.state.schema;
|
|
25
27
|
var isNestingAllowed = (0, _experiments.editorExperiment)('nested-tables-in-tables', true);
|
|
26
|
-
|
|
27
|
-
* TODO: There can be multiple variations.
|
|
28
|
-
* 1. The last cell is selected with content outside of the table
|
|
29
|
-
* 2. The first cell is selected with content outside of the table
|
|
30
|
-
*/
|
|
28
|
+
var isPasteFullTableInsideEmptyCellEnabled = (0, _platformFeatureFlags.fg)('platform_editor_paste_full_table_inside_empty_cell');
|
|
31
29
|
var isPartialTablePaste = slice.content.childCount === 1 && ((_slice$content$firstC = slice.content.firstChild) === null || _slice$content$firstC === void 0 ? void 0 : _slice$content$firstC.type) === schema.nodes.table && slice.openStart !== 0 && slice.openEnd !== 0;
|
|
32
30
|
var sel = view.state.selection;
|
|
33
|
-
|
|
31
|
+
var isCellSelection = sel instanceof _cellSelection.CellSelection;
|
|
32
|
+
if (isPasteFullTableInsideEmptyCellEnabled && isNestingAllowed && !isPartialTablePaste &&
|
|
33
|
+
// If the selection is not a cell selection, and the selection is empty then we can insert a nested table
|
|
34
|
+
!isCellSelection && sel.empty && !(options && SKIP_NESTED_TABLE_PASTE_SOURCES.includes(options.pasteSource))) {
|
|
34
35
|
var cellRes = (0, _utils.findParentNode)(function (node) {
|
|
35
36
|
return node.type === schema.nodes.tableCell || node.type === schema.nodes.tableHeader;
|
|
36
37
|
})(sel);
|
|
@@ -43,7 +44,7 @@ function handlePaste(view, event, slice) {
|
|
|
43
44
|
}
|
|
44
45
|
}
|
|
45
46
|
var cells = (0, _copyPaste.pastedCells)(slice);
|
|
46
|
-
if (
|
|
47
|
+
if (isCellSelection) {
|
|
47
48
|
if (!cells) {
|
|
48
49
|
cells = {
|
|
49
50
|
width: 1,
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.moveColumn = void 0;
|
|
8
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
10
9
|
var _cellSelection = require("../cell-selection");
|
|
11
10
|
var _tableMap = require("../table-map");
|
|
12
11
|
var _analyseTable = require("./analyse-table");
|
|
@@ -220,7 +219,7 @@ var moveColumn = exports.moveColumn = function moveColumn(state, originColumnInd
|
|
|
220
219
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
221
220
|
var node = table.node.nodeAt(rowTargetPosition);
|
|
222
221
|
var pos = table.start + rowTargetPosition;
|
|
223
|
-
var insertPos = direction === 'end' || tableMap.isCellMergedTopLeft(y, actualTargetIndex)
|
|
222
|
+
var insertPos = direction === 'end' || tableMap.isCellMergedTopLeft(y, actualTargetIndex) ? newTr.mapping.map(pos + node.nodeSize, 1) : newTr.mapping.map(pos, -1);
|
|
224
223
|
newTr.insert(insertPos, row.map(function (_ref, x) {
|
|
225
224
|
var node = _ref.node;
|
|
226
225
|
return normalizeCellNode(node, rowHeaderEnabled && y === 0, columnHeaderEnabled && actualTargetIndex === 0 && x === 0, types);
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
import { keydownHandler } from '@atlaskit/editor-prosemirror/keymap';
|
|
5
5
|
import { Slice } from '@atlaskit/editor-prosemirror/model';
|
|
6
6
|
import { Selection, TextSelection } from '@atlaskit/editor-prosemirror/state';
|
|
7
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
8
7
|
import { CellSelection } from '../cell-selection';
|
|
9
8
|
import { findTableClosestToPos, tableNodeTypes } from '../utils';
|
|
10
9
|
import { cellAround, nextCell } from '../utils/cells';
|
|
@@ -211,14 +210,11 @@ export function handleMouseDown(view, event, dragAndDropEnabled) {
|
|
|
211
210
|
const isStartCellInsideNestedTable = isInsideNestedTable(view, startEvent);
|
|
212
211
|
const isBothCellsInSameTable = isCurrCellInsideNestedTable === isStartCellInsideNestedTable;
|
|
213
212
|
let $moveAnchor;
|
|
214
|
-
const oldIfStatement = currDOMCell !== startDOMCell;
|
|
215
|
-
const newIfStatement = currDOMCell !== startDOMCell && isBothCellsInSameTable;
|
|
216
|
-
const checkCellsAreDifferent = fg('platform_editor_cell_selection_with_nested_tables') ? newIfStatement : oldIfStatement;
|
|
217
213
|
if (anchor != null) {
|
|
218
214
|
// Continuing an existing cross-cell selection
|
|
219
215
|
$moveAnchor = view.state.doc.resolve(anchor);
|
|
220
216
|
// Ignored via go/ees005
|
|
221
|
-
} else if (
|
|
217
|
+
} else if (currDOMCell !== startDOMCell && isBothCellsInSameTable) {
|
|
222
218
|
// Moving out of the initial cell -- start a new cell selection
|
|
223
219
|
$moveAnchor = cellUnderMouse(view, startEvent);
|
|
224
220
|
if (!$moveAnchor) {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Fragment } from '@atlaskit/editor-prosemirror/model';
|
|
2
2
|
import { findParentNode } from '@atlaskit/editor-prosemirror/utils';
|
|
3
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
3
4
|
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
4
5
|
import { CellSelection } from '../cell-selection';
|
|
5
6
|
import { TableMap } from '../table-map';
|
|
@@ -7,7 +8,8 @@ import { selectionCell } from '../utils/selection-cell';
|
|
|
7
8
|
import { tableNodeTypes } from '../utils/table-node-types';
|
|
8
9
|
import { isInTable } from '../utils/tables';
|
|
9
10
|
import { clipCells, fitSlice, insertCells, pastedCells } from './copy-paste';
|
|
10
|
-
|
|
11
|
+
const SKIP_NESTED_TABLE_PASTE_SOURCES = ['microsoft-excel', 'google-spreadsheets'];
|
|
12
|
+
export function handlePaste(view, event, slice, options) {
|
|
11
13
|
var _slice$content$firstC;
|
|
12
14
|
if (!isInTable(view.state)) {
|
|
13
15
|
return false;
|
|
@@ -16,14 +18,13 @@ export function handlePaste(view, event, slice) {
|
|
|
16
18
|
schema
|
|
17
19
|
} = view.state;
|
|
18
20
|
const isNestingAllowed = editorExperiment('nested-tables-in-tables', true);
|
|
19
|
-
|
|
20
|
-
* TODO: There can be multiple variations.
|
|
21
|
-
* 1. The last cell is selected with content outside of the table
|
|
22
|
-
* 2. The first cell is selected with content outside of the table
|
|
23
|
-
*/
|
|
21
|
+
const isPasteFullTableInsideEmptyCellEnabled = fg('platform_editor_paste_full_table_inside_empty_cell');
|
|
24
22
|
const isPartialTablePaste = slice.content.childCount === 1 && ((_slice$content$firstC = slice.content.firstChild) === null || _slice$content$firstC === void 0 ? void 0 : _slice$content$firstC.type) === schema.nodes.table && slice.openStart !== 0 && slice.openEnd !== 0;
|
|
25
23
|
const sel = view.state.selection;
|
|
26
|
-
|
|
24
|
+
const isCellSelection = sel instanceof CellSelection;
|
|
25
|
+
if (isPasteFullTableInsideEmptyCellEnabled && isNestingAllowed && !isPartialTablePaste &&
|
|
26
|
+
// If the selection is not a cell selection, and the selection is empty then we can insert a nested table
|
|
27
|
+
!isCellSelection && sel.empty && !(options && SKIP_NESTED_TABLE_PASTE_SOURCES.includes(options.pasteSource))) {
|
|
27
28
|
const cellRes = findParentNode(node => node.type === schema.nodes.tableCell || node.type === schema.nodes.tableHeader)(sel);
|
|
28
29
|
if (cellRes) {
|
|
29
30
|
var _cellRes$node$content;
|
|
@@ -34,7 +35,7 @@ export function handlePaste(view, event, slice) {
|
|
|
34
35
|
}
|
|
35
36
|
}
|
|
36
37
|
let cells = pastedCells(slice);
|
|
37
|
-
if (
|
|
38
|
+
if (isCellSelection) {
|
|
38
39
|
if (!cells) {
|
|
39
40
|
cells = {
|
|
40
41
|
width: 1,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
2
1
|
import { CellSelection } from '../cell-selection';
|
|
3
2
|
import { TableMap } from '../table-map';
|
|
4
3
|
import { determineTableHeaderStateFromTableNode } from './analyse-table';
|
|
@@ -212,7 +211,7 @@ export const moveColumn = (state, originColumnIndex, targetColumnIndex, options
|
|
|
212
211
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
213
212
|
const node = table.node.nodeAt(rowTargetPosition);
|
|
214
213
|
const pos = table.start + rowTargetPosition;
|
|
215
|
-
const insertPos = direction === 'end' || tableMap.isCellMergedTopLeft(y, actualTargetIndex)
|
|
214
|
+
const insertPos = direction === 'end' || tableMap.isCellMergedTopLeft(y, actualTargetIndex) ? newTr.mapping.map(pos + node.nodeSize, 1) : newTr.mapping.map(pos, -1);
|
|
216
215
|
newTr.insert(insertPos, row.map(({
|
|
217
216
|
node
|
|
218
217
|
}, x) => normalizeCellNode(node, rowHeaderEnabled && y === 0, columnHeaderEnabled && actualTargetIndex === 0 && x === 0, types)));
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
import { keydownHandler } from '@atlaskit/editor-prosemirror/keymap';
|
|
5
5
|
import { Slice } from '@atlaskit/editor-prosemirror/model';
|
|
6
6
|
import { Selection, TextSelection } from '@atlaskit/editor-prosemirror/state';
|
|
7
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
8
7
|
import { CellSelection } from '../cell-selection';
|
|
9
8
|
import { findTableClosestToPos, tableNodeTypes } from '../utils';
|
|
10
9
|
import { cellAround, nextCell } from '../utils/cells';
|
|
@@ -204,14 +203,11 @@ export function handleMouseDown(view, event, dragAndDropEnabled) {
|
|
|
204
203
|
var isStartCellInsideNestedTable = isInsideNestedTable(view, startEvent);
|
|
205
204
|
var isBothCellsInSameTable = isCurrCellInsideNestedTable === isStartCellInsideNestedTable;
|
|
206
205
|
var $moveAnchor;
|
|
207
|
-
var oldIfStatement = currDOMCell !== startDOMCell;
|
|
208
|
-
var newIfStatement = currDOMCell !== startDOMCell && isBothCellsInSameTable;
|
|
209
|
-
var checkCellsAreDifferent = fg('platform_editor_cell_selection_with_nested_tables') ? newIfStatement : oldIfStatement;
|
|
210
206
|
if (anchor != null) {
|
|
211
207
|
// Continuing an existing cross-cell selection
|
|
212
208
|
$moveAnchor = view.state.doc.resolve(anchor);
|
|
213
209
|
// Ignored via go/ees005
|
|
214
|
-
} else if (
|
|
210
|
+
} else if (currDOMCell !== startDOMCell && isBothCellsInSameTable) {
|
|
215
211
|
// Moving out of the initial cell -- start a new cell selection
|
|
216
212
|
$moveAnchor = cellUnderMouse(view, startEvent);
|
|
217
213
|
if (!$moveAnchor) {
|
|
@@ -3,6 +3,7 @@ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r)
|
|
|
3
3
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
4
4
|
import { Fragment } from '@atlaskit/editor-prosemirror/model';
|
|
5
5
|
import { findParentNode } from '@atlaskit/editor-prosemirror/utils';
|
|
6
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
6
7
|
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
7
8
|
import { CellSelection } from '../cell-selection';
|
|
8
9
|
import { TableMap } from '../table-map';
|
|
@@ -10,21 +11,21 @@ import { selectionCell } from '../utils/selection-cell';
|
|
|
10
11
|
import { tableNodeTypes } from '../utils/table-node-types';
|
|
11
12
|
import { isInTable } from '../utils/tables';
|
|
12
13
|
import { clipCells, fitSlice, insertCells, pastedCells } from './copy-paste';
|
|
13
|
-
|
|
14
|
+
var SKIP_NESTED_TABLE_PASTE_SOURCES = ['microsoft-excel', 'google-spreadsheets'];
|
|
15
|
+
export function handlePaste(view, event, slice, options) {
|
|
14
16
|
var _slice$content$firstC;
|
|
15
17
|
if (!isInTable(view.state)) {
|
|
16
18
|
return false;
|
|
17
19
|
}
|
|
18
20
|
var schema = view.state.schema;
|
|
19
21
|
var isNestingAllowed = editorExperiment('nested-tables-in-tables', true);
|
|
20
|
-
|
|
21
|
-
* TODO: There can be multiple variations.
|
|
22
|
-
* 1. The last cell is selected with content outside of the table
|
|
23
|
-
* 2. The first cell is selected with content outside of the table
|
|
24
|
-
*/
|
|
22
|
+
var isPasteFullTableInsideEmptyCellEnabled = fg('platform_editor_paste_full_table_inside_empty_cell');
|
|
25
23
|
var isPartialTablePaste = slice.content.childCount === 1 && ((_slice$content$firstC = slice.content.firstChild) === null || _slice$content$firstC === void 0 ? void 0 : _slice$content$firstC.type) === schema.nodes.table && slice.openStart !== 0 && slice.openEnd !== 0;
|
|
26
24
|
var sel = view.state.selection;
|
|
27
|
-
|
|
25
|
+
var isCellSelection = sel instanceof CellSelection;
|
|
26
|
+
if (isPasteFullTableInsideEmptyCellEnabled && isNestingAllowed && !isPartialTablePaste &&
|
|
27
|
+
// If the selection is not a cell selection, and the selection is empty then we can insert a nested table
|
|
28
|
+
!isCellSelection && sel.empty && !(options && SKIP_NESTED_TABLE_PASTE_SOURCES.includes(options.pasteSource))) {
|
|
28
29
|
var cellRes = findParentNode(function (node) {
|
|
29
30
|
return node.type === schema.nodes.tableCell || node.type === schema.nodes.tableHeader;
|
|
30
31
|
})(sel);
|
|
@@ -37,7 +38,7 @@ export function handlePaste(view, event, slice) {
|
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
40
|
var cells = pastedCells(slice);
|
|
40
|
-
if (
|
|
41
|
+
if (isCellSelection) {
|
|
41
42
|
if (!cells) {
|
|
42
43
|
cells = {
|
|
43
44
|
width: 1,
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
3
2
|
import { CellSelection } from '../cell-selection';
|
|
4
3
|
import { TableMap } from '../table-map';
|
|
5
4
|
import { determineTableHeaderStateFromTableNode } from './analyse-table';
|
|
@@ -213,7 +212,7 @@ export var moveColumn = function moveColumn(state, originColumnIndex, targetColu
|
|
|
213
212
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
214
213
|
var node = table.node.nodeAt(rowTargetPosition);
|
|
215
214
|
var pos = table.start + rowTargetPosition;
|
|
216
|
-
var insertPos = direction === 'end' || tableMap.isCellMergedTopLeft(y, actualTargetIndex)
|
|
215
|
+
var insertPos = direction === 'end' || tableMap.isCellMergedTopLeft(y, actualTargetIndex) ? newTr.mapping.map(pos + node.nodeSize, 1) : newTr.mapping.map(pos, -1);
|
|
217
216
|
newTr.insert(insertPos, row.map(function (_ref, x) {
|
|
218
217
|
var node = _ref.node;
|
|
219
218
|
return normalizeCellNode(node, rowHeaderEnabled && y === 0, columnHeaderEnabled && actualTargetIndex === 0 && x === 0, types);
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import { type Slice } from '@atlaskit/editor-prosemirror/model';
|
|
2
2
|
import { type EditorView } from '@atlaskit/editor-prosemirror/view';
|
|
3
|
-
|
|
3
|
+
type PasteOptions = {
|
|
4
|
+
pasteSource: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function handlePaste(view: EditorView, event: ClipboardEvent, slice: Slice, options?: PasteOptions): boolean;
|
|
7
|
+
export {};
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import { type Slice } from '@atlaskit/editor-prosemirror/model';
|
|
2
2
|
import { type EditorView } from '@atlaskit/editor-prosemirror/view';
|
|
3
|
-
|
|
3
|
+
type PasteOptions = {
|
|
4
|
+
pasteSource: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function handlePaste(view: EditorView, event: ClipboardEvent, slice: Slice, options?: PasteOptions): boolean;
|
|
7
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-tables",
|
|
3
|
-
"version": "2.9.
|
|
3
|
+
"version": "2.9.4",
|
|
4
4
|
"description": "A package that contains common classes and utility functions for editor tables",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@atlaskit/editor-prosemirror": "7.0.0",
|
|
31
31
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
32
|
-
"@atlaskit/tmp-editor-statsig": "^4.
|
|
32
|
+
"@atlaskit/tmp-editor-statsig": "^4.22.0",
|
|
33
33
|
"@babel/runtime": "^7.0.0"
|
|
34
34
|
},
|
|
35
35
|
"techstack": {
|
|
@@ -50,10 +50,7 @@
|
|
|
50
50
|
}
|
|
51
51
|
},
|
|
52
52
|
"platform-feature-flags": {
|
|
53
|
-
"
|
|
54
|
-
"type": "boolean"
|
|
55
|
-
},
|
|
56
|
-
"platform_editor_cell_selection_with_nested_tables": {
|
|
53
|
+
"platform_editor_paste_full_table_inside_empty_cell": {
|
|
57
54
|
"type": "boolean"
|
|
58
55
|
}
|
|
59
56
|
},
|