@atlaskit/editor-plugin-block-controls 13.2.6 → 13.2.7
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 +9 -0
- package/dist/cjs/blockControlsPlugin.js +7 -1
- package/dist/cjs/editor-commands/move-node.js +17 -2
- package/dist/es2019/blockControlsPlugin.js +7 -1
- package/dist/es2019/editor-commands/move-node.js +18 -3
- package/dist/esm/blockControlsPlugin.js +7 -1
- package/dist/esm/editor-commands/move-node.js +17 -2
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-block-controls
|
|
2
2
|
|
|
3
|
+
## 13.2.7
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`d86bd1324d82b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/d86bd1324d82b) -
|
|
8
|
+
Fix table cell selection when moving a table with the keyboard shortcut behind the
|
|
9
|
+
`platform_editor_fix_table_move_shortcut` experiment.
|
|
10
|
+
- Updated dependencies
|
|
11
|
+
|
|
3
12
|
## 13.2.6
|
|
4
13
|
|
|
5
14
|
### Patch Changes
|
|
@@ -333,10 +333,16 @@ var blockControlsPlugin = exports.blockControlsPlugin = function blockControlsPl
|
|
|
333
333
|
var $from = $expandedAnchor.min($expandedHead);
|
|
334
334
|
var $to = $expandedAnchor.max($expandedHead);
|
|
335
335
|
var expandedNormalisedSel;
|
|
336
|
-
if ($from.nodeAfter === $to.nodeBefore) {
|
|
336
|
+
if ((0, _expValEquals.expValEquals)('platform_editor_fix_table_move_shortcut', 'isEnabled', true) && $from.nodeAfter && $from.nodeAfter === $to.nodeBefore) {
|
|
337
|
+
// Single node
|
|
338
|
+
(0, _getSelection.selectNode)(tr, $from.pos, $from.nodeAfter.type.name, api);
|
|
339
|
+
expandedNormalisedSel = tr.selection;
|
|
340
|
+
} else if ($from.nodeAfter === $to.nodeBefore) {
|
|
341
|
+
// Single node
|
|
337
342
|
(0, _getSelection.selectNode)(tr, $from.pos, $expandedAnchor.node().type.name, api);
|
|
338
343
|
expandedNormalisedSel = tr.selection;
|
|
339
344
|
} else if (((_$to$nodeBefore = $to.nodeBefore) === null || _$to$nodeBefore === void 0 ? void 0 : _$to$nodeBefore.type.name) === 'mediaSingle' || ((_$from$nodeAfter = $from.nodeAfter) === null || _$from$nodeAfter === void 0 ? void 0 : _$from$nodeAfter.type.name) === 'mediaSingle') {
|
|
345
|
+
// Media
|
|
340
346
|
expandedNormalisedSel = new _state.TextSelection($expandedAnchor, $expandedHead);
|
|
341
347
|
tr.setSelection(expandedNormalisedSel);
|
|
342
348
|
} else {
|
|
@@ -178,11 +178,26 @@ var moveNodeViaShortcut = exports.moveNodeViaShortcut = function moveNodeViaShor
|
|
|
178
178
|
var LAYOUT_COL_DEPTH = 3;
|
|
179
179
|
hoistedPos = state.doc.resolve(from).before(LAYOUT_COL_DEPTH);
|
|
180
180
|
}
|
|
181
|
-
var
|
|
181
|
+
var table = (0, _expValEquals.expValEquals)('platform_editor_fix_table_move_shortcut', 'isEnabled', true) && (0, _utils3.isTableSelected)(selection) ? (0, _utils3.findTable)(selection) : undefined;
|
|
182
|
+
var currentNodePos;
|
|
183
|
+
if (table) {
|
|
184
|
+
currentNodePos = table.pos;
|
|
185
|
+
} else if (!getFocusedHandle(state) && !selection.empty) {
|
|
186
|
+
currentNodePos = hoistedPos !== null && hoistedPos !== void 0 ? hoistedPos : from;
|
|
187
|
+
} else {
|
|
188
|
+
currentNodePos = getCurrentNodePos(state);
|
|
189
|
+
}
|
|
182
190
|
if (currentNodePos > -1) {
|
|
183
191
|
var _state$doc$nodeAt;
|
|
184
192
|
var $currentNodePos = state.doc.resolve(currentNodePos);
|
|
185
|
-
var nodeAfterPos
|
|
193
|
+
var nodeAfterPos;
|
|
194
|
+
if (table) {
|
|
195
|
+
nodeAfterPos = table.pos + table.node.nodeSize;
|
|
196
|
+
} else if (!getFocusedHandle(state)) {
|
|
197
|
+
nodeAfterPos = Math.max(expandedAnchor, expandedHead);
|
|
198
|
+
} else {
|
|
199
|
+
nodeAfterPos = $currentNodePos.posAtIndex($currentNodePos.index() + 1);
|
|
200
|
+
}
|
|
186
201
|
var isTopLevelNode = $currentNodePos.depth === 0;
|
|
187
202
|
var moveToPos = -1;
|
|
188
203
|
var isLayoutColumnSelected = selection instanceof _state.NodeSelection && selection.node.type.name === 'layoutColumn';
|
|
@@ -326,10 +326,16 @@ export const blockControlsPlugin = ({
|
|
|
326
326
|
const $from = $expandedAnchor.min($expandedHead);
|
|
327
327
|
const $to = $expandedAnchor.max($expandedHead);
|
|
328
328
|
let expandedNormalisedSel;
|
|
329
|
-
if ($from.nodeAfter === $to.nodeBefore) {
|
|
329
|
+
if (expValEquals('platform_editor_fix_table_move_shortcut', 'isEnabled', true) && $from.nodeAfter && $from.nodeAfter === $to.nodeBefore) {
|
|
330
|
+
// Single node
|
|
331
|
+
selectNode(tr, $from.pos, $from.nodeAfter.type.name, api);
|
|
332
|
+
expandedNormalisedSel = tr.selection;
|
|
333
|
+
} else if ($from.nodeAfter === $to.nodeBefore) {
|
|
334
|
+
// Single node
|
|
330
335
|
selectNode(tr, $from.pos, $expandedAnchor.node().type.name, api);
|
|
331
336
|
expandedNormalisedSel = tr.selection;
|
|
332
337
|
} else if (((_$to$nodeBefore = $to.nodeBefore) === null || _$to$nodeBefore === void 0 ? void 0 : _$to$nodeBefore.type.name) === 'mediaSingle' || ((_$from$nodeAfter = $from.nodeAfter) === null || _$from$nodeAfter === void 0 ? void 0 : _$from$nodeAfter.type.name) === 'mediaSingle') {
|
|
338
|
+
// Media
|
|
333
339
|
expandedNormalisedSel = new TextSelection($expandedAnchor, $expandedHead);
|
|
334
340
|
tr.setSelection(expandedNormalisedSel);
|
|
335
341
|
} else {
|
|
@@ -161,7 +161,6 @@ const getFocusedHandle = state => {
|
|
|
161
161
|
};
|
|
162
162
|
export const moveNodeViaShortcut = (api, direction, formatMessage) => {
|
|
163
163
|
return state => {
|
|
164
|
-
var _hoistedPos;
|
|
165
164
|
const {
|
|
166
165
|
selection
|
|
167
166
|
} = state;
|
|
@@ -176,11 +175,27 @@ export const moveNodeViaShortcut = (api, direction, formatMessage) => {
|
|
|
176
175
|
const LAYOUT_COL_DEPTH = 3;
|
|
177
176
|
hoistedPos = state.doc.resolve(from).before(LAYOUT_COL_DEPTH);
|
|
178
177
|
}
|
|
179
|
-
const
|
|
178
|
+
const table = expValEquals('platform_editor_fix_table_move_shortcut', 'isEnabled', true) && isTableSelected(selection) ? findTable(selection) : undefined;
|
|
179
|
+
let currentNodePos;
|
|
180
|
+
if (table) {
|
|
181
|
+
currentNodePos = table.pos;
|
|
182
|
+
} else if (!getFocusedHandle(state) && !selection.empty) {
|
|
183
|
+
var _hoistedPos;
|
|
184
|
+
currentNodePos = (_hoistedPos = hoistedPos) !== null && _hoistedPos !== void 0 ? _hoistedPos : from;
|
|
185
|
+
} else {
|
|
186
|
+
currentNodePos = getCurrentNodePos(state);
|
|
187
|
+
}
|
|
180
188
|
if (currentNodePos > -1) {
|
|
181
189
|
var _state$doc$nodeAt;
|
|
182
190
|
const $currentNodePos = state.doc.resolve(currentNodePos);
|
|
183
|
-
|
|
191
|
+
let nodeAfterPos;
|
|
192
|
+
if (table) {
|
|
193
|
+
nodeAfterPos = table.pos + table.node.nodeSize;
|
|
194
|
+
} else if (!getFocusedHandle(state)) {
|
|
195
|
+
nodeAfterPos = Math.max(expandedAnchor, expandedHead);
|
|
196
|
+
} else {
|
|
197
|
+
nodeAfterPos = $currentNodePos.posAtIndex($currentNodePos.index() + 1);
|
|
198
|
+
}
|
|
184
199
|
const isTopLevelNode = $currentNodePos.depth === 0;
|
|
185
200
|
let moveToPos = -1;
|
|
186
201
|
const isLayoutColumnSelected = selection instanceof NodeSelection && selection.node.type.name === 'layoutColumn';
|
|
@@ -326,10 +326,16 @@ export var blockControlsPlugin = function blockControlsPlugin(_ref) {
|
|
|
326
326
|
var $from = $expandedAnchor.min($expandedHead);
|
|
327
327
|
var $to = $expandedAnchor.max($expandedHead);
|
|
328
328
|
var expandedNormalisedSel;
|
|
329
|
-
if ($from.nodeAfter === $to.nodeBefore) {
|
|
329
|
+
if (expValEquals('platform_editor_fix_table_move_shortcut', 'isEnabled', true) && $from.nodeAfter && $from.nodeAfter === $to.nodeBefore) {
|
|
330
|
+
// Single node
|
|
331
|
+
selectNode(tr, $from.pos, $from.nodeAfter.type.name, api);
|
|
332
|
+
expandedNormalisedSel = tr.selection;
|
|
333
|
+
} else if ($from.nodeAfter === $to.nodeBefore) {
|
|
334
|
+
// Single node
|
|
330
335
|
selectNode(tr, $from.pos, $expandedAnchor.node().type.name, api);
|
|
331
336
|
expandedNormalisedSel = tr.selection;
|
|
332
337
|
} else if (((_$to$nodeBefore = $to.nodeBefore) === null || _$to$nodeBefore === void 0 ? void 0 : _$to$nodeBefore.type.name) === 'mediaSingle' || ((_$from$nodeAfter = $from.nodeAfter) === null || _$from$nodeAfter === void 0 ? void 0 : _$from$nodeAfter.type.name) === 'mediaSingle') {
|
|
338
|
+
// Media
|
|
333
339
|
expandedNormalisedSel = new TextSelection($expandedAnchor, $expandedHead);
|
|
334
340
|
tr.setSelection(expandedNormalisedSel);
|
|
335
341
|
} else {
|
|
@@ -172,11 +172,26 @@ export var moveNodeViaShortcut = function moveNodeViaShortcut(api, direction, fo
|
|
|
172
172
|
var LAYOUT_COL_DEPTH = 3;
|
|
173
173
|
hoistedPos = state.doc.resolve(from).before(LAYOUT_COL_DEPTH);
|
|
174
174
|
}
|
|
175
|
-
var
|
|
175
|
+
var table = expValEquals('platform_editor_fix_table_move_shortcut', 'isEnabled', true) && isTableSelected(selection) ? findTable(selection) : undefined;
|
|
176
|
+
var currentNodePos;
|
|
177
|
+
if (table) {
|
|
178
|
+
currentNodePos = table.pos;
|
|
179
|
+
} else if (!getFocusedHandle(state) && !selection.empty) {
|
|
180
|
+
currentNodePos = hoistedPos !== null && hoistedPos !== void 0 ? hoistedPos : from;
|
|
181
|
+
} else {
|
|
182
|
+
currentNodePos = getCurrentNodePos(state);
|
|
183
|
+
}
|
|
176
184
|
if (currentNodePos > -1) {
|
|
177
185
|
var _state$doc$nodeAt;
|
|
178
186
|
var $currentNodePos = state.doc.resolve(currentNodePos);
|
|
179
|
-
var nodeAfterPos
|
|
187
|
+
var nodeAfterPos;
|
|
188
|
+
if (table) {
|
|
189
|
+
nodeAfterPos = table.pos + table.node.nodeSize;
|
|
190
|
+
} else if (!getFocusedHandle(state)) {
|
|
191
|
+
nodeAfterPos = Math.max(expandedAnchor, expandedHead);
|
|
192
|
+
} else {
|
|
193
|
+
nodeAfterPos = $currentNodePos.posAtIndex($currentNodePos.index() + 1);
|
|
194
|
+
}
|
|
180
195
|
var isTopLevelNode = $currentNodePos.depth === 0;
|
|
181
196
|
var moveToPos = -1;
|
|
182
197
|
var isLayoutColumnSelected = selection instanceof NodeSelection && selection.node.type.name === 'layoutColumn';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-block-controls",
|
|
3
|
-
"version": "13.2.
|
|
3
|
+
"version": "13.2.7",
|
|
4
4
|
"description": "Block controls plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^4.1.0",
|
|
49
49
|
"@atlaskit/primitives": "^20.6.0",
|
|
50
50
|
"@atlaskit/theme": "^26.1.0",
|
|
51
|
-
"@atlaskit/tmp-editor-statsig": "^125.
|
|
51
|
+
"@atlaskit/tmp-editor-statsig": "^125.1.0",
|
|
52
52
|
"@atlaskit/tokens": "^15.8.0",
|
|
53
53
|
"@atlaskit/tooltip": "^23.1.0",
|
|
54
54
|
"@babel/runtime": "^7.0.0",
|