@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 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 currentNodePos = !getFocusedHandle(state) && !selection.empty ? hoistedPos !== null && hoistedPos !== void 0 ? hoistedPos : from : getCurrentNodePos(state);
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 = !getFocusedHandle(state) ? Math.max(expandedAnchor, expandedHead) : $currentNodePos.posAtIndex($currentNodePos.index() + 1);
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 currentNodePos = !getFocusedHandle(state) && !selection.empty ? (_hoistedPos = hoistedPos) !== null && _hoistedPos !== void 0 ? _hoistedPos : from : getCurrentNodePos(state);
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
- const nodeAfterPos = !getFocusedHandle(state) ? Math.max(expandedAnchor, expandedHead) : $currentNodePos.posAtIndex($currentNodePos.index() + 1);
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 currentNodePos = !getFocusedHandle(state) && !selection.empty ? hoistedPos !== null && hoistedPos !== void 0 ? hoistedPos : from : getCurrentNodePos(state);
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 = !getFocusedHandle(state) ? Math.max(expandedAnchor, expandedHead) : $currentNodePos.posAtIndex($currentNodePos.index() + 1);
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.6",
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.0.0",
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",