@atlaskit/editor-plugin-block-controls 3.15.5 → 3.15.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,25 @@
1
1
  # @atlaskit/editor-plugin-block-controls
2
2
 
3
+ ## 3.15.7
4
+
5
+ ### Patch Changes
6
+
7
+ - [#163125](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/163125)
8
+ [`d0ae2ab52765d`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/d0ae2ab52765d) -
9
+ [ux] ED-28034 fix block controls positioning for new resizing experience behind
10
+ platform_editor_breakout_resizing
11
+ - Updated dependencies
12
+
13
+ ## 3.15.6
14
+
15
+ ### Patch Changes
16
+
17
+ - [#161993](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/161993)
18
+ [`bd93cafe79061`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/bd93cafe79061) -
19
+ [ED-27277] When quick insert is triggered by quick insert button and the selection is in code
20
+ block node, place slash in a new line after the node
21
+ - Updated dependencies
22
+
3
23
  ## 3.15.5
4
24
 
5
25
  ### Patch Changes
@@ -263,6 +263,7 @@ var _apply = exports.apply = function apply(api, formatMessage, tr, currentState
263
263
  }
264
264
  var resizerMeta = tr.getMeta('is-resizer-resizing');
265
265
  isResizerResizing = resizerMeta !== null && resizerMeta !== void 0 ? resizerMeta : isResizerResizing;
266
+ var hasJustFinishedResizing = resizerMeta === false;
266
267
  multiSelectDnD = (_meta$multiSelectDnD = meta === null || meta === void 0 ? void 0 : meta.multiSelectDnD) !== null && _meta$multiSelectDnD !== void 0 ? _meta$multiSelectDnD : multiSelectDnD;
267
268
  if (multiSelectDnD && flags.isMultiSelectEnabled) {
268
269
  multiSelectDnD = (meta === null || meta === void 0 ? void 0 : meta.isDragging) === false || tr.selection.empty ? undefined : multiSelectDnD;
@@ -281,7 +282,7 @@ var _apply = exports.apply = function apply(api, formatMessage, tr, currentState
281
282
 
282
283
  // Re-create node decorations
283
284
  var isDecSetEmpty = decorations === _view2.DecorationSet.empty;
284
- var isNodeDecsMissing = isDecSetEmpty || maybeNodeCountChanged;
285
+ var isNodeDecsMissing = isDecSetEmpty || maybeNodeCountChanged || (0, _experiments.editorExperiment)('platform_editor_breakout_resizing', true) && hasJustFinishedResizing;
285
286
  var shouldRedrawNodeDecs = !isResizerResizing && (isNodeDecsMissing || (meta === null || meta === void 0 ? void 0 : meta.isDragging));
286
287
  var isActiveNodeModified = false;
287
288
  if (api && shouldRedrawNodeDecs) {
@@ -367,17 +368,17 @@ var _apply = exports.apply = function apply(api, formatMessage, tr, currentState
367
368
  } else if (api) {
368
369
  var _latestActiveNode5;
369
370
  if (shouldRecreateHandle) {
370
- var _activeNode9, _activeNode10, _latestActiveNode, _latestActiveNode2, _latestActiveNode3, _latestActiveNode4;
371
- var _oldHandle = (0, _decorationsDragHandle.findHandleDec)(decorations, (_activeNode9 = activeNode) === null || _activeNode9 === void 0 ? void 0 : _activeNode9.pos, (_activeNode10 = activeNode) === null || _activeNode10 === void 0 ? void 0 : _activeNode10.pos);
371
+ var _activeNode9, _activeNode0, _latestActiveNode, _latestActiveNode2, _latestActiveNode3, _latestActiveNode4;
372
+ var _oldHandle = (0, _decorationsDragHandle.findHandleDec)(decorations, (_activeNode9 = activeNode) === null || _activeNode9 === void 0 ? void 0 : _activeNode9.pos, (_activeNode0 = activeNode) === null || _activeNode0 === void 0 ? void 0 : _activeNode0.pos);
372
373
  decorations = decorations.remove(_oldHandle);
373
374
  var handleDec = (0, _decorationsDragHandle.dragHandleDecoration)(api, formatMessage, (_latestActiveNode = latestActiveNode) === null || _latestActiveNode === void 0 ? void 0 : _latestActiveNode.pos, (_latestActiveNode2 = latestActiveNode) === null || _latestActiveNode2 === void 0 ? void 0 : _latestActiveNode2.anchorName, (_latestActiveNode3 = latestActiveNode) === null || _latestActiveNode3 === void 0 ? void 0 : _latestActiveNode3.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode4 = latestActiveNode) === null || _latestActiveNode4 === void 0 ? void 0 : _latestActiveNode4.handleOptions, anchorRectCache);
374
375
  decorations = decorations.add(newState.doc, [handleDec]);
375
376
  }
376
377
  if (shouldRecreateQuickInsertButton && ((_latestActiveNode5 = latestActiveNode) === null || _latestActiveNode5 === void 0 ? void 0 : _latestActiveNode5.rootPos) !== undefined && (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
377
- var _activeNode11, _activeNode12, _latestActiveNode6, _latestActiveNode7, _latestActiveNode8, _latestActiveNode9, _latestActiveNode10;
378
- var _oldQuickInsertButton = (0, _decorationsQuickInsertButton.findQuickInsertInsertButtonDecoration)(decorations, (_activeNode11 = activeNode) === null || _activeNode11 === void 0 ? void 0 : _activeNode11.rootPos, (_activeNode12 = activeNode) === null || _activeNode12 === void 0 ? void 0 : _activeNode12.rootPos);
378
+ var _activeNode1, _activeNode10, _latestActiveNode6, _latestActiveNode7, _latestActiveNode8, _latestActiveNode9, _latestActiveNode0;
379
+ var _oldQuickInsertButton = (0, _decorationsQuickInsertButton.findQuickInsertInsertButtonDecoration)(decorations, (_activeNode1 = activeNode) === null || _activeNode1 === void 0 ? void 0 : _activeNode1.rootPos, (_activeNode10 = activeNode) === null || _activeNode10 === void 0 ? void 0 : _activeNode10.rootPos);
379
380
  decorations = decorations.remove(_oldQuickInsertButton);
380
- var quickInsertButton = (0, _decorationsQuickInsertButton.quickInsertButtonDecoration)(api, formatMessage, (_latestActiveNode6 = latestActiveNode) === null || _latestActiveNode6 === void 0 ? void 0 : _latestActiveNode6.rootPos, (_latestActiveNode7 = latestActiveNode) === null || _latestActiveNode7 === void 0 ? void 0 : _latestActiveNode7.anchorName, (_latestActiveNode8 = latestActiveNode) === null || _latestActiveNode8 === void 0 ? void 0 : _latestActiveNode8.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode9 = latestActiveNode) === null || _latestActiveNode9 === void 0 ? void 0 : _latestActiveNode9.rootAnchorName, (_latestActiveNode10 = latestActiveNode) === null || _latestActiveNode10 === void 0 ? void 0 : _latestActiveNode10.rootNodeType, anchorRectCache);
381
+ var quickInsertButton = (0, _decorationsQuickInsertButton.quickInsertButtonDecoration)(api, formatMessage, (_latestActiveNode6 = latestActiveNode) === null || _latestActiveNode6 === void 0 ? void 0 : _latestActiveNode6.rootPos, (_latestActiveNode7 = latestActiveNode) === null || _latestActiveNode7 === void 0 ? void 0 : _latestActiveNode7.anchorName, (_latestActiveNode8 = latestActiveNode) === null || _latestActiveNode8 === void 0 ? void 0 : _latestActiveNode8.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode9 = latestActiveNode) === null || _latestActiveNode9 === void 0 ? void 0 : _latestActiveNode9.rootAnchorName, (_latestActiveNode0 = latestActiveNode) === null || _latestActiveNode0 === void 0 ? void 0 : _latestActiveNode0.rootNodeType, anchorRectCache);
381
382
  decorations = decorations.add(newState.doc, [quickInsertButton]);
382
383
  }
383
384
  }
@@ -407,12 +408,12 @@ var _apply = exports.apply = function apply(api, formatMessage, tr, currentState
407
408
  }
408
409
  var newActiveNode;
409
410
  if ((0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
410
- var _latestActiveNode11, _latestActiveNode12;
411
+ var _latestActiveNode1, _latestActiveNode10;
411
412
  // remove isEmptyDoc check and let decorations render and determine their own visibility
412
- newActiveNode = !(meta !== null && meta !== void 0 && meta.activeNode) && (0, _decorationsDragHandle.findHandleDec)(decorations, (_latestActiveNode11 = latestActiveNode) === null || _latestActiveNode11 === void 0 ? void 0 : _latestActiveNode11.pos, (_latestActiveNode12 = latestActiveNode) === null || _latestActiveNode12 === void 0 ? void 0 : _latestActiveNode12.pos).length === 0 ? null : latestActiveNode;
413
+ newActiveNode = !(meta !== null && meta !== void 0 && meta.activeNode) && (0, _decorationsDragHandle.findHandleDec)(decorations, (_latestActiveNode1 = latestActiveNode) === null || _latestActiveNode1 === void 0 ? void 0 : _latestActiveNode1.pos, (_latestActiveNode10 = latestActiveNode) === null || _latestActiveNode10 === void 0 ? void 0 : _latestActiveNode10.pos).length === 0 ? null : latestActiveNode;
413
414
  } else {
414
- var _latestActiveNode13, _latestActiveNode14;
415
- newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && (0, _decorationsDragHandle.findHandleDec)(decorations, (_latestActiveNode13 = latestActiveNode) === null || _latestActiveNode13 === void 0 ? void 0 : _latestActiveNode13.pos, (_latestActiveNode14 = latestActiveNode) === null || _latestActiveNode14 === void 0 ? void 0 : _latestActiveNode14.pos).length === 0 ? null : latestActiveNode;
415
+ var _latestActiveNode11, _latestActiveNode12;
416
+ newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && (0, _decorationsDragHandle.findHandleDec)(decorations, (_latestActiveNode11 = latestActiveNode) === null || _latestActiveNode11 === void 0 ? void 0 : _latestActiveNode11.pos, (_latestActiveNode12 = latestActiveNode) === null || _latestActiveNode12 === void 0 ? void 0 : _latestActiveNode12.pos).length === 0 ? null : latestActiveNode;
416
417
  }
417
418
  var isMenuOpenNew = isMenuOpen;
418
419
  if (_consts.BLOCK_MENU_ENABLED && (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
@@ -15,8 +15,7 @@ var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
15
15
  var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
16
16
  var _blockMenuItems = require("./block-menu-items");
17
17
  var _consts = require("./consts");
18
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
19
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
20
19
  var useBlockMenuPluginState = (0, _hooks.sharedPluginStateHookMigratorFactory)(function (api) {
21
20
  var isMenuOpen = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'blockControls.isMenuOpen');
22
21
  var menuTriggerBy = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'blockControls.menuTriggerBy');
@@ -43,15 +43,20 @@ var QUICK_INSERT_DIMENSIONS = exports.QUICK_INSERT_DIMENSIONS = {
43
43
  };
44
44
  var QUICK_INSERT_LEFT_OFFSET = exports.QUICK_INSERT_LEFT_OFFSET = 16;
45
45
  var nodeTypeExcludeList = ['embedCard', 'mediaSingle', 'table'];
46
+ var breakoutResizableNodes = ['expand', 'layoutSection', 'codeBlock'];
46
47
  var dragHandleGap = exports.dragHandleGap = function dragHandleGap(nodeType, parentNodeType) {
47
- if (nodeType === 'layoutSection') {
48
- return DRAG_HANDLE_DEFAULT_GAP + 20;
49
- }
50
48
  if (parentNodeType && parentNodeType !== 'doc') {
51
49
  return DRAG_HANDLE_NARROW_GAP;
52
50
  }
53
- if (nodeType === 'layoutSection' && (0, _experiments.editorExperiment)('advanced_layouts', true)) {
54
- return DRAG_HANDLE_MAX_GAP + 12;
51
+ if ((0, _experiments.editorExperiment)('platform_editor_breakout_resizing', true) && breakoutResizableNodes.includes(nodeType)) {
52
+ if (nodeType === 'layoutSection') {
53
+ return DRAG_HANDLE_MAX_GAP + 20;
54
+ } else {
55
+ return DRAG_HANDLE_MAX_GAP;
56
+ }
57
+ }
58
+ if (nodeType === 'layoutSection') {
59
+ return DRAG_HANDLE_DEFAULT_GAP + 20;
55
60
  }
56
61
  if (nodeTypeExcludeList.includes(nodeType)) {
57
62
  return DRAG_HANDLE_MAX_GAP;
@@ -61,8 +66,12 @@ var dragHandleGap = exports.dragHandleGap = function dragHandleGap(nodeType, par
61
66
 
62
67
  // use for returning hap only for root level elements
63
68
  var rootElementGap = exports.rootElementGap = function rootElementGap(nodeType) {
64
- if (nodeTypeExcludeList.includes(nodeType)) {
65
- return DRAG_HANDLE_MAX_GAP;
69
+ if (nodeTypeExcludeList.includes(nodeType) || (0, _experiments.editorExperiment)('platform_editor_breakout_resizing', true) && breakoutResizableNodes.includes(nodeType)) {
70
+ if (nodeType === 'layoutSection') {
71
+ return DRAG_HANDLE_MAX_GAP + 20;
72
+ } else {
73
+ return DRAG_HANDLE_MAX_GAP;
74
+ }
66
75
  }
67
76
  if (nodeType === 'layoutSection') {
68
77
  return DRAG_HANDLE_MAX_GAP + 12;
@@ -29,8 +29,7 @@ var _anchorName = require("./utils/anchor-name");
29
29
  var _documentChecks = require("./utils/document-checks");
30
30
  var _editorCommands = require("./utils/editor-commands");
31
31
  var _visibilityContainer = require("./visibility-container");
32
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
33
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
32
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
34
33
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
35
34
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /**
36
35
  * @jsxRuntime classic
@@ -207,7 +206,13 @@ var TypeAheadControl = exports.TypeAheadControl = function TypeAheadControl(_ref
207
206
  if (!isSelectionInsideNode || (0, _documentChecks.isNonEditableBlock)(start, view)) {
208
207
  api.core.actions.execute((0, _editorCommands.createNewLine)(start));
209
208
  }
210
- if (isSelectionInsideNode) {
209
+ var codeBlock = view.state.schema.nodes.codeBlock;
210
+ var selection = view.state.selection;
211
+ var codeBlockParentNode = (0, _utils.findParentNodeOfType)(codeBlock)(selection);
212
+ if (codeBlockParentNode && (0, _platformFeatureFlags.fg)('platform_editor_controls_patch_11')) {
213
+ // Slash command is not meant to be triggered inside code block, hence always insert slash in a new line following
214
+ api.core.actions.execute((0, _editorCommands.createNewLine)(codeBlockParentNode.pos));
215
+ } else if (isSelectionInsideNode) {
211
216
  // text or element with be deselected and the / added immediately after the paragraph
212
217
  // unless the selection is empty
213
218
  var currentSelection = view.state.selection;
@@ -5,9 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.isSelectionInNode = exports.isNonEditableBlock = exports.isNestedNodeSelected = exports.isInTextSelection = void 0;
7
7
  var _state = require("@atlaskit/editor-prosemirror/state");
8
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
8
9
  var isNestedNodeSelected = exports.isNestedNodeSelected = function isNestedNodeSelected(view) {
9
10
  var selection = view.state.selection;
10
- return selection instanceof _state.NodeSelection && selection.$from.depth > 1;
11
+ return selection instanceof _state.NodeSelection && selection.$from.depth > ((0, _platformFeatureFlags.fg)('platform_editor_controls_patch_11') ? 0 : 1);
11
12
  };
12
13
  var isSelectionInNode = exports.isSelectionInNode = function isSelectionInNode(start, view) {
13
14
  var node = view.state.doc.nodeAt(start);
@@ -263,6 +263,7 @@ export const apply = (api, formatMessage, tr, currentState, newState, flags, nod
263
263
  }
264
264
  const resizerMeta = tr.getMeta('is-resizer-resizing');
265
265
  isResizerResizing = resizerMeta !== null && resizerMeta !== void 0 ? resizerMeta : isResizerResizing;
266
+ const hasJustFinishedResizing = resizerMeta === false;
266
267
  multiSelectDnD = (_meta$multiSelectDnD = meta === null || meta === void 0 ? void 0 : meta.multiSelectDnD) !== null && _meta$multiSelectDnD !== void 0 ? _meta$multiSelectDnD : multiSelectDnD;
267
268
  if (multiSelectDnD && flags.isMultiSelectEnabled) {
268
269
  multiSelectDnD = (meta === null || meta === void 0 ? void 0 : meta.isDragging) === false || tr.selection.empty ? undefined : multiSelectDnD;
@@ -281,7 +282,7 @@ export const apply = (api, formatMessage, tr, currentState, newState, flags, nod
281
282
 
282
283
  // Re-create node decorations
283
284
  const isDecSetEmpty = decorations === DecorationSet.empty;
284
- const isNodeDecsMissing = isDecSetEmpty || maybeNodeCountChanged;
285
+ const isNodeDecsMissing = isDecSetEmpty || maybeNodeCountChanged || editorExperiment('platform_editor_breakout_resizing', true) && hasJustFinishedResizing;
285
286
  const shouldRedrawNodeDecs = !isResizerResizing && (isNodeDecsMissing || (meta === null || meta === void 0 ? void 0 : meta.isDragging));
286
287
  let isActiveNodeModified = false;
287
288
  if (api && shouldRedrawNodeDecs) {
@@ -365,17 +366,17 @@ export const apply = (api, formatMessage, tr, currentState, newState, flags, nod
365
366
  } else if (api) {
366
367
  var _latestActiveNode5;
367
368
  if (shouldRecreateHandle) {
368
- var _activeNode9, _activeNode10, _latestActiveNode, _latestActiveNode2, _latestActiveNode3, _latestActiveNode4;
369
- const oldHandle = findHandleDec(decorations, (_activeNode9 = activeNode) === null || _activeNode9 === void 0 ? void 0 : _activeNode9.pos, (_activeNode10 = activeNode) === null || _activeNode10 === void 0 ? void 0 : _activeNode10.pos);
369
+ var _activeNode9, _activeNode0, _latestActiveNode, _latestActiveNode2, _latestActiveNode3, _latestActiveNode4;
370
+ const oldHandle = findHandleDec(decorations, (_activeNode9 = activeNode) === null || _activeNode9 === void 0 ? void 0 : _activeNode9.pos, (_activeNode0 = activeNode) === null || _activeNode0 === void 0 ? void 0 : _activeNode0.pos);
370
371
  decorations = decorations.remove(oldHandle);
371
372
  const handleDec = dragHandleDecoration(api, formatMessage, (_latestActiveNode = latestActiveNode) === null || _latestActiveNode === void 0 ? void 0 : _latestActiveNode.pos, (_latestActiveNode2 = latestActiveNode) === null || _latestActiveNode2 === void 0 ? void 0 : _latestActiveNode2.anchorName, (_latestActiveNode3 = latestActiveNode) === null || _latestActiveNode3 === void 0 ? void 0 : _latestActiveNode3.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode4 = latestActiveNode) === null || _latestActiveNode4 === void 0 ? void 0 : _latestActiveNode4.handleOptions, anchorRectCache);
372
373
  decorations = decorations.add(newState.doc, [handleDec]);
373
374
  }
374
375
  if (shouldRecreateQuickInsertButton && ((_latestActiveNode5 = latestActiveNode) === null || _latestActiveNode5 === void 0 ? void 0 : _latestActiveNode5.rootPos) !== undefined && editorExperiment('platform_editor_controls', 'variant1')) {
375
- var _activeNode11, _activeNode12, _latestActiveNode6, _latestActiveNode7, _latestActiveNode8, _latestActiveNode9, _latestActiveNode10;
376
- const oldQuickInsertButton = findQuickInsertInsertButtonDecoration(decorations, (_activeNode11 = activeNode) === null || _activeNode11 === void 0 ? void 0 : _activeNode11.rootPos, (_activeNode12 = activeNode) === null || _activeNode12 === void 0 ? void 0 : _activeNode12.rootPos);
376
+ var _activeNode1, _activeNode10, _latestActiveNode6, _latestActiveNode7, _latestActiveNode8, _latestActiveNode9, _latestActiveNode0;
377
+ const oldQuickInsertButton = findQuickInsertInsertButtonDecoration(decorations, (_activeNode1 = activeNode) === null || _activeNode1 === void 0 ? void 0 : _activeNode1.rootPos, (_activeNode10 = activeNode) === null || _activeNode10 === void 0 ? void 0 : _activeNode10.rootPos);
377
378
  decorations = decorations.remove(oldQuickInsertButton);
378
- const quickInsertButton = quickInsertButtonDecoration(api, formatMessage, (_latestActiveNode6 = latestActiveNode) === null || _latestActiveNode6 === void 0 ? void 0 : _latestActiveNode6.rootPos, (_latestActiveNode7 = latestActiveNode) === null || _latestActiveNode7 === void 0 ? void 0 : _latestActiveNode7.anchorName, (_latestActiveNode8 = latestActiveNode) === null || _latestActiveNode8 === void 0 ? void 0 : _latestActiveNode8.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode9 = latestActiveNode) === null || _latestActiveNode9 === void 0 ? void 0 : _latestActiveNode9.rootAnchorName, (_latestActiveNode10 = latestActiveNode) === null || _latestActiveNode10 === void 0 ? void 0 : _latestActiveNode10.rootNodeType, anchorRectCache);
379
+ const quickInsertButton = quickInsertButtonDecoration(api, formatMessage, (_latestActiveNode6 = latestActiveNode) === null || _latestActiveNode6 === void 0 ? void 0 : _latestActiveNode6.rootPos, (_latestActiveNode7 = latestActiveNode) === null || _latestActiveNode7 === void 0 ? void 0 : _latestActiveNode7.anchorName, (_latestActiveNode8 = latestActiveNode) === null || _latestActiveNode8 === void 0 ? void 0 : _latestActiveNode8.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode9 = latestActiveNode) === null || _latestActiveNode9 === void 0 ? void 0 : _latestActiveNode9.rootAnchorName, (_latestActiveNode0 = latestActiveNode) === null || _latestActiveNode0 === void 0 ? void 0 : _latestActiveNode0.rootNodeType, anchorRectCache);
379
380
  decorations = decorations.add(newState.doc, [quickInsertButton]);
380
381
  }
381
382
  }
@@ -405,12 +406,12 @@ export const apply = (api, formatMessage, tr, currentState, newState, flags, nod
405
406
  }
406
407
  let newActiveNode;
407
408
  if (editorExperiment('platform_editor_controls', 'variant1')) {
408
- var _latestActiveNode11, _latestActiveNode12;
409
+ var _latestActiveNode1, _latestActiveNode10;
409
410
  // remove isEmptyDoc check and let decorations render and determine their own visibility
410
- newActiveNode = !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode11 = latestActiveNode) === null || _latestActiveNode11 === void 0 ? void 0 : _latestActiveNode11.pos, (_latestActiveNode12 = latestActiveNode) === null || _latestActiveNode12 === void 0 ? void 0 : _latestActiveNode12.pos).length === 0 ? null : latestActiveNode;
411
+ newActiveNode = !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode1 = latestActiveNode) === null || _latestActiveNode1 === void 0 ? void 0 : _latestActiveNode1.pos, (_latestActiveNode10 = latestActiveNode) === null || _latestActiveNode10 === void 0 ? void 0 : _latestActiveNode10.pos).length === 0 ? null : latestActiveNode;
411
412
  } else {
412
- var _latestActiveNode13, _latestActiveNode14;
413
- newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode13 = latestActiveNode) === null || _latestActiveNode13 === void 0 ? void 0 : _latestActiveNode13.pos, (_latestActiveNode14 = latestActiveNode) === null || _latestActiveNode14 === void 0 ? void 0 : _latestActiveNode14.pos).length === 0 ? null : latestActiveNode;
413
+ var _latestActiveNode11, _latestActiveNode12;
414
+ newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode11 = latestActiveNode) === null || _latestActiveNode11 === void 0 ? void 0 : _latestActiveNode11.pos, (_latestActiveNode12 = latestActiveNode) === null || _latestActiveNode12 === void 0 ? void 0 : _latestActiveNode12.pos).length === 0 ? null : latestActiveNode;
414
415
  }
415
416
  let isMenuOpenNew = isMenuOpen;
416
417
  if (BLOCK_MENU_ENABLED && editorExperiment('platform_editor_controls', 'variant1')) {
@@ -34,15 +34,20 @@ export const QUICK_INSERT_DIMENSIONS = {
34
34
  };
35
35
  export const QUICK_INSERT_LEFT_OFFSET = 16;
36
36
  const nodeTypeExcludeList = ['embedCard', 'mediaSingle', 'table'];
37
+ const breakoutResizableNodes = ['expand', 'layoutSection', 'codeBlock'];
37
38
  export const dragHandleGap = (nodeType, parentNodeType) => {
38
- if (nodeType === 'layoutSection') {
39
- return DRAG_HANDLE_DEFAULT_GAP + 20;
40
- }
41
39
  if (parentNodeType && parentNodeType !== 'doc') {
42
40
  return DRAG_HANDLE_NARROW_GAP;
43
41
  }
44
- if (nodeType === 'layoutSection' && editorExperiment('advanced_layouts', true)) {
45
- return DRAG_HANDLE_MAX_GAP + 12;
42
+ if (editorExperiment('platform_editor_breakout_resizing', true) && breakoutResizableNodes.includes(nodeType)) {
43
+ if (nodeType === 'layoutSection') {
44
+ return DRAG_HANDLE_MAX_GAP + 20;
45
+ } else {
46
+ return DRAG_HANDLE_MAX_GAP;
47
+ }
48
+ }
49
+ if (nodeType === 'layoutSection') {
50
+ return DRAG_HANDLE_DEFAULT_GAP + 20;
46
51
  }
47
52
  if (nodeTypeExcludeList.includes(nodeType)) {
48
53
  return DRAG_HANDLE_MAX_GAP;
@@ -52,8 +57,12 @@ export const dragHandleGap = (nodeType, parentNodeType) => {
52
57
 
53
58
  // use for returning hap only for root level elements
54
59
  export const rootElementGap = nodeType => {
55
- if (nodeTypeExcludeList.includes(nodeType)) {
56
- return DRAG_HANDLE_MAX_GAP;
60
+ if (nodeTypeExcludeList.includes(nodeType) || editorExperiment('platform_editor_breakout_resizing', true) && breakoutResizableNodes.includes(nodeType)) {
61
+ if (nodeType === 'layoutSection') {
62
+ return DRAG_HANDLE_MAX_GAP + 20;
63
+ } else {
64
+ return DRAG_HANDLE_MAX_GAP;
65
+ }
57
66
  }
58
67
  if (nodeType === 'layoutSection') {
59
68
  return DRAG_HANDLE_MAX_GAP + 12;
@@ -13,7 +13,7 @@ import { blockControlsMessages as messages } from '@atlaskit/editor-common/messa
13
13
  import { tableControlsSpacing } from '@atlaskit/editor-common/styles';
14
14
  import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
15
15
  import { TextSelection } from '@atlaskit/editor-prosemirror/state';
16
- import { findParentNode } from '@atlaskit/editor-prosemirror/utils';
16
+ import { findParentNode, findParentNodeOfType } from '@atlaskit/editor-prosemirror/utils';
17
17
  import { CellSelection } from '@atlaskit/editor-tables/cell-selection';
18
18
  import AddIcon from '@atlaskit/icon/utility/add';
19
19
  import { fg } from '@atlaskit/platform-feature-flags';
@@ -197,7 +197,17 @@ export const TypeAheadControl = ({
197
197
  if (!isSelectionInsideNode || isNonEditableBlock(start, view)) {
198
198
  api.core.actions.execute(createNewLine(start));
199
199
  }
200
- if (isSelectionInsideNode) {
200
+ const {
201
+ codeBlock
202
+ } = view.state.schema.nodes;
203
+ const {
204
+ selection
205
+ } = view.state;
206
+ const codeBlockParentNode = findParentNodeOfType(codeBlock)(selection);
207
+ if (codeBlockParentNode && fg('platform_editor_controls_patch_11')) {
208
+ // Slash command is not meant to be triggered inside code block, hence always insert slash in a new line following
209
+ api.core.actions.execute(createNewLine(codeBlockParentNode.pos));
210
+ } else if (isSelectionInsideNode) {
201
211
  // text or element with be deselected and the / added immediately after the paragraph
202
212
  // unless the selection is empty
203
213
  const currentSelection = view.state.selection;
@@ -1,7 +1,8 @@
1
1
  import { NodeSelection, TextSelection } from '@atlaskit/editor-prosemirror/state';
2
+ import { fg } from '@atlaskit/platform-feature-flags';
2
3
  export const isNestedNodeSelected = view => {
3
4
  const selection = view.state.selection;
4
- return selection instanceof NodeSelection && selection.$from.depth > 1;
5
+ return selection instanceof NodeSelection && selection.$from.depth > (fg('platform_editor_controls_patch_11') ? 0 : 1);
5
6
  };
6
7
  export const isSelectionInNode = (start, view) => {
7
8
  const node = view.state.doc.nodeAt(start);
@@ -256,6 +256,7 @@ var _apply = function apply(api, formatMessage, tr, currentState, newState, flag
256
256
  }
257
257
  var resizerMeta = tr.getMeta('is-resizer-resizing');
258
258
  isResizerResizing = resizerMeta !== null && resizerMeta !== void 0 ? resizerMeta : isResizerResizing;
259
+ var hasJustFinishedResizing = resizerMeta === false;
259
260
  multiSelectDnD = (_meta$multiSelectDnD = meta === null || meta === void 0 ? void 0 : meta.multiSelectDnD) !== null && _meta$multiSelectDnD !== void 0 ? _meta$multiSelectDnD : multiSelectDnD;
260
261
  if (multiSelectDnD && flags.isMultiSelectEnabled) {
261
262
  multiSelectDnD = (meta === null || meta === void 0 ? void 0 : meta.isDragging) === false || tr.selection.empty ? undefined : multiSelectDnD;
@@ -274,7 +275,7 @@ var _apply = function apply(api, formatMessage, tr, currentState, newState, flag
274
275
 
275
276
  // Re-create node decorations
276
277
  var isDecSetEmpty = decorations === DecorationSet.empty;
277
- var isNodeDecsMissing = isDecSetEmpty || maybeNodeCountChanged;
278
+ var isNodeDecsMissing = isDecSetEmpty || maybeNodeCountChanged || editorExperiment('platform_editor_breakout_resizing', true) && hasJustFinishedResizing;
278
279
  var shouldRedrawNodeDecs = !isResizerResizing && (isNodeDecsMissing || (meta === null || meta === void 0 ? void 0 : meta.isDragging));
279
280
  var isActiveNodeModified = false;
280
281
  if (api && shouldRedrawNodeDecs) {
@@ -360,17 +361,17 @@ var _apply = function apply(api, formatMessage, tr, currentState, newState, flag
360
361
  } else if (api) {
361
362
  var _latestActiveNode5;
362
363
  if (shouldRecreateHandle) {
363
- var _activeNode9, _activeNode10, _latestActiveNode, _latestActiveNode2, _latestActiveNode3, _latestActiveNode4;
364
- var _oldHandle = findHandleDec(decorations, (_activeNode9 = activeNode) === null || _activeNode9 === void 0 ? void 0 : _activeNode9.pos, (_activeNode10 = activeNode) === null || _activeNode10 === void 0 ? void 0 : _activeNode10.pos);
364
+ var _activeNode9, _activeNode0, _latestActiveNode, _latestActiveNode2, _latestActiveNode3, _latestActiveNode4;
365
+ var _oldHandle = findHandleDec(decorations, (_activeNode9 = activeNode) === null || _activeNode9 === void 0 ? void 0 : _activeNode9.pos, (_activeNode0 = activeNode) === null || _activeNode0 === void 0 ? void 0 : _activeNode0.pos);
365
366
  decorations = decorations.remove(_oldHandle);
366
367
  var handleDec = dragHandleDecoration(api, formatMessage, (_latestActiveNode = latestActiveNode) === null || _latestActiveNode === void 0 ? void 0 : _latestActiveNode.pos, (_latestActiveNode2 = latestActiveNode) === null || _latestActiveNode2 === void 0 ? void 0 : _latestActiveNode2.anchorName, (_latestActiveNode3 = latestActiveNode) === null || _latestActiveNode3 === void 0 ? void 0 : _latestActiveNode3.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode4 = latestActiveNode) === null || _latestActiveNode4 === void 0 ? void 0 : _latestActiveNode4.handleOptions, anchorRectCache);
367
368
  decorations = decorations.add(newState.doc, [handleDec]);
368
369
  }
369
370
  if (shouldRecreateQuickInsertButton && ((_latestActiveNode5 = latestActiveNode) === null || _latestActiveNode5 === void 0 ? void 0 : _latestActiveNode5.rootPos) !== undefined && editorExperiment('platform_editor_controls', 'variant1')) {
370
- var _activeNode11, _activeNode12, _latestActiveNode6, _latestActiveNode7, _latestActiveNode8, _latestActiveNode9, _latestActiveNode10;
371
- var _oldQuickInsertButton = findQuickInsertInsertButtonDecoration(decorations, (_activeNode11 = activeNode) === null || _activeNode11 === void 0 ? void 0 : _activeNode11.rootPos, (_activeNode12 = activeNode) === null || _activeNode12 === void 0 ? void 0 : _activeNode12.rootPos);
371
+ var _activeNode1, _activeNode10, _latestActiveNode6, _latestActiveNode7, _latestActiveNode8, _latestActiveNode9, _latestActiveNode0;
372
+ var _oldQuickInsertButton = findQuickInsertInsertButtonDecoration(decorations, (_activeNode1 = activeNode) === null || _activeNode1 === void 0 ? void 0 : _activeNode1.rootPos, (_activeNode10 = activeNode) === null || _activeNode10 === void 0 ? void 0 : _activeNode10.rootPos);
372
373
  decorations = decorations.remove(_oldQuickInsertButton);
373
- var quickInsertButton = quickInsertButtonDecoration(api, formatMessage, (_latestActiveNode6 = latestActiveNode) === null || _latestActiveNode6 === void 0 ? void 0 : _latestActiveNode6.rootPos, (_latestActiveNode7 = latestActiveNode) === null || _latestActiveNode7 === void 0 ? void 0 : _latestActiveNode7.anchorName, (_latestActiveNode8 = latestActiveNode) === null || _latestActiveNode8 === void 0 ? void 0 : _latestActiveNode8.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode9 = latestActiveNode) === null || _latestActiveNode9 === void 0 ? void 0 : _latestActiveNode9.rootAnchorName, (_latestActiveNode10 = latestActiveNode) === null || _latestActiveNode10 === void 0 ? void 0 : _latestActiveNode10.rootNodeType, anchorRectCache);
374
+ var quickInsertButton = quickInsertButtonDecoration(api, formatMessage, (_latestActiveNode6 = latestActiveNode) === null || _latestActiveNode6 === void 0 ? void 0 : _latestActiveNode6.rootPos, (_latestActiveNode7 = latestActiveNode) === null || _latestActiveNode7 === void 0 ? void 0 : _latestActiveNode7.anchorName, (_latestActiveNode8 = latestActiveNode) === null || _latestActiveNode8 === void 0 ? void 0 : _latestActiveNode8.nodeType, nodeViewPortalProviderAPI, (_latestActiveNode9 = latestActiveNode) === null || _latestActiveNode9 === void 0 ? void 0 : _latestActiveNode9.rootAnchorName, (_latestActiveNode0 = latestActiveNode) === null || _latestActiveNode0 === void 0 ? void 0 : _latestActiveNode0.rootNodeType, anchorRectCache);
374
375
  decorations = decorations.add(newState.doc, [quickInsertButton]);
375
376
  }
376
377
  }
@@ -400,12 +401,12 @@ var _apply = function apply(api, formatMessage, tr, currentState, newState, flag
400
401
  }
401
402
  var newActiveNode;
402
403
  if (editorExperiment('platform_editor_controls', 'variant1')) {
403
- var _latestActiveNode11, _latestActiveNode12;
404
+ var _latestActiveNode1, _latestActiveNode10;
404
405
  // remove isEmptyDoc check and let decorations render and determine their own visibility
405
- newActiveNode = !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode11 = latestActiveNode) === null || _latestActiveNode11 === void 0 ? void 0 : _latestActiveNode11.pos, (_latestActiveNode12 = latestActiveNode) === null || _latestActiveNode12 === void 0 ? void 0 : _latestActiveNode12.pos).length === 0 ? null : latestActiveNode;
406
+ newActiveNode = !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode1 = latestActiveNode) === null || _latestActiveNode1 === void 0 ? void 0 : _latestActiveNode1.pos, (_latestActiveNode10 = latestActiveNode) === null || _latestActiveNode10 === void 0 ? void 0 : _latestActiveNode10.pos).length === 0 ? null : latestActiveNode;
406
407
  } else {
407
- var _latestActiveNode13, _latestActiveNode14;
408
- newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode13 = latestActiveNode) === null || _latestActiveNode13 === void 0 ? void 0 : _latestActiveNode13.pos, (_latestActiveNode14 = latestActiveNode) === null || _latestActiveNode14 === void 0 ? void 0 : _latestActiveNode14.pos).length === 0 ? null : latestActiveNode;
408
+ var _latestActiveNode11, _latestActiveNode12;
409
+ newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, (_latestActiveNode11 = latestActiveNode) === null || _latestActiveNode11 === void 0 ? void 0 : _latestActiveNode11.pos, (_latestActiveNode12 = latestActiveNode) === null || _latestActiveNode12 === void 0 ? void 0 : _latestActiveNode12.pos).length === 0 ? null : latestActiveNode;
409
410
  }
410
411
  var isMenuOpenNew = isMenuOpen;
411
412
  if (BLOCK_MENU_ENABLED && editorExperiment('platform_editor_controls', 'variant1')) {
@@ -36,15 +36,20 @@ export var QUICK_INSERT_DIMENSIONS = {
36
36
  };
37
37
  export var QUICK_INSERT_LEFT_OFFSET = 16;
38
38
  var nodeTypeExcludeList = ['embedCard', 'mediaSingle', 'table'];
39
+ var breakoutResizableNodes = ['expand', 'layoutSection', 'codeBlock'];
39
40
  export var dragHandleGap = function dragHandleGap(nodeType, parentNodeType) {
40
- if (nodeType === 'layoutSection') {
41
- return DRAG_HANDLE_DEFAULT_GAP + 20;
42
- }
43
41
  if (parentNodeType && parentNodeType !== 'doc') {
44
42
  return DRAG_HANDLE_NARROW_GAP;
45
43
  }
46
- if (nodeType === 'layoutSection' && editorExperiment('advanced_layouts', true)) {
47
- return DRAG_HANDLE_MAX_GAP + 12;
44
+ if (editorExperiment('platform_editor_breakout_resizing', true) && breakoutResizableNodes.includes(nodeType)) {
45
+ if (nodeType === 'layoutSection') {
46
+ return DRAG_HANDLE_MAX_GAP + 20;
47
+ } else {
48
+ return DRAG_HANDLE_MAX_GAP;
49
+ }
50
+ }
51
+ if (nodeType === 'layoutSection') {
52
+ return DRAG_HANDLE_DEFAULT_GAP + 20;
48
53
  }
49
54
  if (nodeTypeExcludeList.includes(nodeType)) {
50
55
  return DRAG_HANDLE_MAX_GAP;
@@ -54,8 +59,12 @@ export var dragHandleGap = function dragHandleGap(nodeType, parentNodeType) {
54
59
 
55
60
  // use for returning hap only for root level elements
56
61
  export var rootElementGap = function rootElementGap(nodeType) {
57
- if (nodeTypeExcludeList.includes(nodeType)) {
58
- return DRAG_HANDLE_MAX_GAP;
62
+ if (nodeTypeExcludeList.includes(nodeType) || editorExperiment('platform_editor_breakout_resizing', true) && breakoutResizableNodes.includes(nodeType)) {
63
+ if (nodeType === 'layoutSection') {
64
+ return DRAG_HANDLE_MAX_GAP + 20;
65
+ } else {
66
+ return DRAG_HANDLE_MAX_GAP;
67
+ }
59
68
  }
60
69
  if (nodeType === 'layoutSection') {
61
70
  return DRAG_HANDLE_MAX_GAP + 12;
@@ -17,7 +17,7 @@ import { blockControlsMessages as messages } from '@atlaskit/editor-common/messa
17
17
  import { tableControlsSpacing } from '@atlaskit/editor-common/styles';
18
18
  import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector';
19
19
  import { TextSelection } from '@atlaskit/editor-prosemirror/state';
20
- import { findParentNode } from '@atlaskit/editor-prosemirror/utils';
20
+ import { findParentNode, findParentNodeOfType } from '@atlaskit/editor-prosemirror/utils';
21
21
  import { CellSelection } from '@atlaskit/editor-tables/cell-selection';
22
22
  import AddIcon from '@atlaskit/icon/utility/add';
23
23
  import { fg } from '@atlaskit/platform-feature-flags';
@@ -201,7 +201,13 @@ export var TypeAheadControl = function TypeAheadControl(_ref) {
201
201
  if (!isSelectionInsideNode || isNonEditableBlock(start, view)) {
202
202
  api.core.actions.execute(createNewLine(start));
203
203
  }
204
- if (isSelectionInsideNode) {
204
+ var codeBlock = view.state.schema.nodes.codeBlock;
205
+ var selection = view.state.selection;
206
+ var codeBlockParentNode = findParentNodeOfType(codeBlock)(selection);
207
+ if (codeBlockParentNode && fg('platform_editor_controls_patch_11')) {
208
+ // Slash command is not meant to be triggered inside code block, hence always insert slash in a new line following
209
+ api.core.actions.execute(createNewLine(codeBlockParentNode.pos));
210
+ } else if (isSelectionInsideNode) {
205
211
  // text or element with be deselected and the / added immediately after the paragraph
206
212
  // unless the selection is empty
207
213
  var currentSelection = view.state.selection;
@@ -1,7 +1,8 @@
1
1
  import { NodeSelection, TextSelection } from '@atlaskit/editor-prosemirror/state';
2
+ import { fg } from '@atlaskit/platform-feature-flags';
2
3
  export var isNestedNodeSelected = function isNestedNodeSelected(view) {
3
4
  var selection = view.state.selection;
4
- return selection instanceof NodeSelection && selection.$from.depth > 1;
5
+ return selection instanceof NodeSelection && selection.$from.depth > (fg('platform_editor_controls_patch_11') ? 0 : 1);
5
6
  };
6
7
  export var isSelectionInNode = function isSelectionInNode(start, view) {
7
8
  var node = view.state.doc.nodeAt(start);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-block-controls",
3
- "version": "3.15.5",
3
+ "version": "3.15.7",
4
4
  "description": "Block controls plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -33,7 +33,7 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@atlaskit/adf-schema": "^47.6.0",
36
- "@atlaskit/editor-common": "^106.0.0",
36
+ "@atlaskit/editor-common": "^106.1.0",
37
37
  "@atlaskit/editor-plugin-accessibility-utils": "^2.0.0",
38
38
  "@atlaskit/editor-plugin-analytics": "^2.3.0",
39
39
  "@atlaskit/editor-plugin-editor-disabled": "^2.0.0",
@@ -56,7 +56,7 @@
56
56
  "@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^3.2.0",
57
57
  "@atlaskit/primitives": "^14.8.0",
58
58
  "@atlaskit/theme": "^18.0.0",
59
- "@atlaskit/tmp-editor-statsig": "^5.5.0",
59
+ "@atlaskit/tmp-editor-statsig": "^5.6.0",
60
60
  "@atlaskit/tokens": "^4.9.0",
61
61
  "@atlaskit/tooltip": "^20.2.0",
62
62
  "@babel/runtime": "^7.0.0",
@@ -196,6 +196,9 @@
196
196
  },
197
197
  "dst-a11y__replace-anchor-with-link__editor-jenga": {
198
198
  "type": "boolean"
199
+ },
200
+ "platform_editor_controls_patch_11": {
201
+ "type": "boolean"
199
202
  }
200
203
  }
201
204
  }