@atlaskit/editor-plugin-block-controls 3.3.5 → 3.3.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 +17 -0
- package/dist/cjs/editor-commands/move-node.js +1 -1
- package/dist/cjs/editor-commands/move-to-layout.js +2 -2
- package/dist/cjs/pm-plugins/handle-mouse-over.js +1 -1
- package/dist/cjs/pm-plugins/main.js +3 -2
- package/dist/cjs/pm-plugins/utils/active-anchor-tracker.js +1 -1
- package/dist/cjs/pm-plugins/utils/getSelection.js +2 -1
- package/dist/cjs/ui/consts.js +6 -2
- package/dist/cjs/ui/drag-handle.js +2 -2
- package/dist/cjs/ui/quick-insert-button.js +1 -1
- package/dist/es2019/editor-commands/move-node.js +1 -1
- package/dist/es2019/editor-commands/move-to-layout.js +2 -2
- package/dist/es2019/pm-plugins/handle-mouse-over.js +1 -1
- package/dist/es2019/pm-plugins/main.js +3 -2
- package/dist/es2019/pm-plugins/utils/active-anchor-tracker.js +1 -1
- package/dist/es2019/pm-plugins/utils/getSelection.js +2 -1
- package/dist/es2019/ui/consts.js +5 -1
- package/dist/es2019/ui/drag-handle.js +5 -3
- package/dist/es2019/ui/global-styles.js +2 -2
- package/dist/es2019/ui/quick-insert-button.js +1 -1
- package/dist/esm/editor-commands/move-node.js +1 -1
- package/dist/esm/editor-commands/move-to-layout.js +2 -2
- package/dist/esm/pm-plugins/handle-mouse-over.js +1 -1
- package/dist/esm/pm-plugins/main.js +3 -2
- package/dist/esm/pm-plugins/utils/active-anchor-tracker.js +1 -1
- package/dist/esm/pm-plugins/utils/getSelection.js +2 -1
- package/dist/esm/ui/consts.js +5 -1
- package/dist/esm/ui/drag-handle.js +5 -3
- package/dist/esm/ui/quick-insert-button.js +1 -1
- package/dist/types/ui/consts.d.ts +1 -0
- package/dist/types-ts4.5/ui/consts.d.ts +1 -0
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-block-controls
|
|
2
2
|
|
|
3
|
+
## 3.3.7
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#124718](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/124718)
|
|
8
|
+
[`d923941c82bb4`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/d923941c82bb4) -
|
|
9
|
+
Disable block menu in Editor controls
|
|
10
|
+
|
|
11
|
+
## 3.3.6
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- [#121718](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/121718)
|
|
16
|
+
[`ea6771bd5b498`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/ea6771bd5b498) -
|
|
17
|
+
[ux] ED-26814 fix copy and paste non bodied macro in list item
|
|
18
|
+
- Updated dependencies
|
|
19
|
+
|
|
3
20
|
## 3.3.5
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
|
@@ -379,7 +379,7 @@ var moveNode = exports.moveNode = function moveNode(api) {
|
|
|
379
379
|
var destParent = $to.node($to.depth);
|
|
380
380
|
var sourceNode = $handlePos.nodeAfter;
|
|
381
381
|
|
|
382
|
-
//TODO: Does this need to be updated with new selection logic above? ^
|
|
382
|
+
//TODO: ED-26959 - Does this need to be updated with new selection logic above? ^
|
|
383
383
|
// Move a layout column to top level
|
|
384
384
|
if (sourceNode && isDragLayoutColumnToTopLevel($handlePos, $to)) {
|
|
385
385
|
// need update after we support single column layout.
|
|
@@ -207,7 +207,7 @@ var canMoveToLayout = function canMoveToLayout(api, from, to, tr, moveNodeAtCurs
|
|
|
207
207
|
sourceTo = Math.max(anchor, head);
|
|
208
208
|
sourceContent = tr.doc.slice(sourceFrom, sourceTo).content;
|
|
209
209
|
|
|
210
|
-
// TODO: this might become expensive for large content, consider removing it if check has been done beforehand
|
|
210
|
+
// TODO: ED-26959 - this might become expensive for large content, consider removing it if check has been done beforehand
|
|
211
211
|
if ((0, _checkFragment.containsNodeOfType)(sourceContent, 'layoutSection')) {
|
|
212
212
|
return;
|
|
213
213
|
}
|
|
@@ -286,7 +286,7 @@ var getBreakoutMode = function getBreakoutMode(content, breakout) {
|
|
|
286
286
|
}
|
|
287
287
|
};
|
|
288
288
|
|
|
289
|
-
// TODO: As part of platform_editor_element_drag_and_drop_multiselect clean up,
|
|
289
|
+
// TODO: ED-26959 - As part of platform_editor_element_drag_and_drop_multiselect clean up,
|
|
290
290
|
// source content variable that has type of `PMNode | Fragment` should be updated to `Fragment` only
|
|
291
291
|
var moveToLayout = exports.moveToLayout = function moveToLayout(api) {
|
|
292
292
|
return function (from, to, options) {
|
|
@@ -67,7 +67,7 @@ var handleMouseOver = exports.handleMouseOver = function handleMouseOver(view, e
|
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
// We want to exlude handles from showing for wrapped nodes
|
|
70
|
-
// TODO We should be able remove these check if we decided to
|
|
70
|
+
// TODO: ED-26959 - We should be able remove these check if we decided to
|
|
71
71
|
// go we not decoration for wrapped image solution.
|
|
72
72
|
if (['wrap-right', 'wrap-left'].includes(rootElement.getAttribute('layout') || '')) {
|
|
73
73
|
return false;
|
|
@@ -21,6 +21,7 @@ var _element = require("@atlaskit/pragmatic-drag-and-drop-auto-scroll/element");
|
|
|
21
21
|
var _combine = require("@atlaskit/pragmatic-drag-and-drop/combine");
|
|
22
22
|
var _adapter = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
|
|
23
23
|
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
24
|
+
var _consts = require("../ui/consts");
|
|
24
25
|
var _decorationsAnchor = require("./decorations-anchor");
|
|
25
26
|
var _decorationsDragHandle = require("./decorations-drag-handle");
|
|
26
27
|
var _decorationsDropTarget = require("./decorations-drop-target");
|
|
@@ -363,7 +364,7 @@ var newApply = exports.newApply = function newApply(api, formatMessage, tr, curr
|
|
|
363
364
|
}
|
|
364
365
|
var newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && (0, _decorationsDragHandle.findHandleDec)(decorations, latestActiveNode === null || latestActiveNode === void 0 ? void 0 : latestActiveNode.pos, latestActiveNode === null || latestActiveNode === void 0 ? void 0 : latestActiveNode.pos).length === 0 ? null : latestActiveNode;
|
|
365
366
|
var isMenuOpenNew = isMenuOpen;
|
|
366
|
-
if ((0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
|
|
367
|
+
if (_consts.BLOCK_MENU_ENABLED && (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
|
|
367
368
|
if (meta !== null && meta !== void 0 && meta.closeMenu) {
|
|
368
369
|
isMenuOpenNew = false;
|
|
369
370
|
} else if (meta !== null && meta !== void 0 && meta.toggleMenu) {
|
|
@@ -633,7 +634,7 @@ var createPlugin = exports.createPlugin = function createPlugin(api, getIntl, no
|
|
|
633
634
|
return false;
|
|
634
635
|
}
|
|
635
636
|
|
|
636
|
-
// TODO: Review usage of posAtDOM here
|
|
637
|
+
// TODO: ED-26959 - Review usage of posAtDOM here
|
|
637
638
|
var domPos = Math.max(view.posAtDOM(nodeElement, 0) - 1, 0);
|
|
638
639
|
var nodeTarget = state.doc.nodeAt(domPos);
|
|
639
640
|
var isSameNode = !!(nodeTarget && draggable !== null && draggable !== void 0 && draggable.eq(nodeTarget));
|
|
@@ -59,7 +59,7 @@ var ActiveAnchorTracker = exports.ActiveAnchorTracker = /*#__PURE__*/function ()
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
}]);
|
|
62
|
-
}(); // TODO We should use a scoped ActiveAnchorTracker rather than the global static object.
|
|
62
|
+
}(); // TODO: ED-26959 - We should use a scoped ActiveAnchorTracker rather than the global static object.
|
|
63
63
|
// Move this into the plugin scope once the newApply functions becomes default apply.
|
|
64
64
|
var defaultActiveAnchorTracker = exports.defaultActiveAnchorTracker = new ActiveAnchorTracker();
|
|
65
65
|
var useActiveAnchorTracker = exports.useActiveAnchorTracker = function useActiveAnchorTracker(anchorName) {
|
|
@@ -59,7 +59,8 @@ var getSelection = exports.getSelection = function getSelection(tr, start) {
|
|
|
59
59
|
var nodeName = node === null || node === void 0 ? void 0 : node.type.name;
|
|
60
60
|
var isBlockQuoteWithMedia = nodeName === 'blockquote' && isNodeWithMedia(tr, start, nodeSize);
|
|
61
61
|
var isBlockQuoteWithMediaOrExtension = nodeName === 'blockquote' && isNodeWithMediaOrExtension(tr, start, nodeSize);
|
|
62
|
-
|
|
62
|
+
var isListWithMediaOrExtension = nodeName === 'bulletList' && isNodeWithMediaOrExtension(tr, start, nodeSize) || nodeName === 'orderedList' && isNodeWithMediaOrExtension(tr, start, nodeSize);
|
|
63
|
+
if (isNodeSelection && nodeName !== 'blockquote' || isListWithMediaOrExtension && (0, _platformFeatureFlags.fg)('platform_editor_non_macros_copy_and_paste_fix') || ((0, _platformFeatureFlags.fg)('platform_editor_non_macros_copy_and_paste_fix') ? isBlockQuoteWithMediaOrExtension : isBlockQuoteWithMedia) ||
|
|
63
64
|
// decisionList/layoutColumn node is not selectable, but we want to select the whole node not just text
|
|
64
65
|
['decisionList', 'layoutColumn'].includes(nodeName || '')) {
|
|
65
66
|
return new _state.NodeSelection($startPos);
|
package/dist/cjs/ui/consts.js
CHANGED
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.topPositionAdjustment = exports.spacingBetweenNodesForPreview = exports.spaceLookupMap = exports.rootElementGap = exports.nodeMargins = exports.getNestedNodeLeftPaddingMargin = exports.dropTargetMarginMap = exports.dragHandleGap = exports.QUICK_INSERT_WIDTH = exports.QUICK_INSERT_HEIGHT = exports.QUICK_INSERT_DIMENSIONS = exports.DRAG_HANDLE_ZINDEX = exports.DRAG_HANDLE_WIDTH = exports.DRAG_HANDLE_PARAGRAPH_TOP_ADJUSTMENT = exports.DRAG_HANDLE_NARROW_GAP = exports.DRAG_HANDLE_MAX_WIDTH_PLUS_GAP = exports.DRAG_HANDLE_MAX_SHIFT_CLICK_DEPTH = exports.DRAG_HANDLE_MAX_GAP = exports.DRAG_HANDLE_LAYOUT_SECTION_TOP_ADJUSTMENT = exports.DRAG_HANDLE_HEIGHT = exports.DRAG_HANDLE_H6_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H5_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H4_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H3_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H2_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H1_TOP_ADJUSTMENT = exports.DRAG_HANDLE_DIVIDER_TOP_ADJUSTMENT = exports.DRAG_HANDLE_DEFAULT_GAP = exports.DRAG_HANDLE_BORDER_RADIUS = exports.DEFAULT_COLUMN_DISTRIBUTIONS = exports.BLOCK_MENU_WIDTH = void 0;
|
|
7
|
+
exports.topPositionAdjustment = exports.spacingBetweenNodesForPreview = exports.spaceLookupMap = exports.rootElementGap = exports.nodeMargins = exports.getNestedNodeLeftPaddingMargin = exports.dropTargetMarginMap = exports.dragHandleGap = exports.QUICK_INSERT_WIDTH = exports.QUICK_INSERT_HEIGHT = exports.QUICK_INSERT_DIMENSIONS = exports.DRAG_HANDLE_ZINDEX = exports.DRAG_HANDLE_WIDTH = exports.DRAG_HANDLE_PARAGRAPH_TOP_ADJUSTMENT = exports.DRAG_HANDLE_NARROW_GAP = exports.DRAG_HANDLE_MAX_WIDTH_PLUS_GAP = exports.DRAG_HANDLE_MAX_SHIFT_CLICK_DEPTH = exports.DRAG_HANDLE_MAX_GAP = exports.DRAG_HANDLE_LAYOUT_SECTION_TOP_ADJUSTMENT = exports.DRAG_HANDLE_HEIGHT = exports.DRAG_HANDLE_H6_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H5_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H4_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H3_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H2_TOP_ADJUSTMENT = exports.DRAG_HANDLE_H1_TOP_ADJUSTMENT = exports.DRAG_HANDLE_DIVIDER_TOP_ADJUSTMENT = exports.DRAG_HANDLE_DEFAULT_GAP = exports.DRAG_HANDLE_BORDER_RADIUS = exports.DEFAULT_COLUMN_DISTRIBUTIONS = exports.BLOCK_MENU_WIDTH = exports.BLOCK_MENU_ENABLED = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
9
|
var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
|
|
10
10
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
@@ -344,4 +344,8 @@ var DEFAULT_COLUMN_DISTRIBUTIONS = exports.DEFAULT_COLUMN_DISTRIBUTIONS = {
|
|
|
344
344
|
4: 25,
|
|
345
345
|
5: 20
|
|
346
346
|
};
|
|
347
|
-
var BLOCK_MENU_WIDTH = exports.BLOCK_MENU_WIDTH = 220;
|
|
347
|
+
var BLOCK_MENU_WIDTH = exports.BLOCK_MENU_WIDTH = 220;
|
|
348
|
+
|
|
349
|
+
// Temporarily disable BLOCK MENU feature until Q4 FY25.
|
|
350
|
+
// For more details, refer to ticket ED-26972 https://product-fabric.atlassian.net/browse/ED-26972
|
|
351
|
+
var BLOCK_MENU_ENABLED = exports.BLOCK_MENU_ENABLED = false;
|
|
@@ -200,7 +200,7 @@ var DragHandle = exports.DragHandle = function DragHandle(_ref) {
|
|
|
200
200
|
var $anchor = (mSelect === null || mSelect === void 0 ? void 0 : mSelect.anchor) !== undefined ? tr.doc.resolve(mSelect === null || mSelect === void 0 ? void 0 : mSelect.anchor) : tr.selection.$anchor;
|
|
201
201
|
if (!isMultiSelect || tr.selection.empty || !e.shiftKey) {
|
|
202
202
|
tr = (0, _getSelection.selectNode)(tr, startPos, nodeType);
|
|
203
|
-
if ((0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
|
|
203
|
+
if (_consts.BLOCK_MENU_ENABLED && (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1')) {
|
|
204
204
|
var _api$blockControls;
|
|
205
205
|
api === null || api === void 0 || (_api$blockControls = api.blockControls) === null || _api$blockControls === void 0 || _api$blockControls.commands.toggleBlockMenu({
|
|
206
206
|
anchorName: anchorName
|
|
@@ -236,7 +236,7 @@ var DragHandle = exports.DragHandle = function DragHandle(_ref) {
|
|
|
236
236
|
view.focus();
|
|
237
237
|
}, [isMultiSelect, api === null || api === void 0 || (_api$core2 = api.core) === null || _api$core2 === void 0 ? void 0 : _api$core2.actions, api === null || api === void 0 ? void 0 : api.blockControls.sharedState, api === null || api === void 0 || (_api$blockControls3 = api.blockControls) === null || _api$blockControls3 === void 0 ? void 0 : _api$blockControls3.commands, api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions, view, dragHandleSelected, getPos, isTopLevelNode, nodeType, anchorName]);
|
|
238
238
|
|
|
239
|
-
// TODO - This needs to be investigated further. Drag preview generation is not always working
|
|
239
|
+
// TODO: ED-26959 - This needs to be investigated further. Drag preview generation is not always working
|
|
240
240
|
// as expected with a node selection. This workaround sets the selection to the node on mouseDown,
|
|
241
241
|
// but ensures the preview is generated correctly.
|
|
242
242
|
var handleMouseDown = (0, _react.useCallback)(function () {
|
|
@@ -50,7 +50,7 @@ var containerStaticStyles = (0, _primitives.xcss)({
|
|
|
50
50
|
zIndex: 'card'
|
|
51
51
|
});
|
|
52
52
|
|
|
53
|
-
// TODO: Share prop types between DragHandle - generic enough to create a type for block control decoration
|
|
53
|
+
// TODO: ED-26959 - Share prop types between DragHandle - generic enough to create a type for block control decoration
|
|
54
54
|
|
|
55
55
|
var isSelectionInNode = function isSelectionInNode(start, view) {
|
|
56
56
|
var node = view.state.doc.nodeAt(start);
|
|
@@ -381,7 +381,7 @@ export const moveNode = api => (start, to, inputMethod = INPUT_METHOD.DRAG_AND_D
|
|
|
381
381
|
const destParent = $to.node($to.depth);
|
|
382
382
|
const sourceNode = $handlePos.nodeAfter;
|
|
383
383
|
|
|
384
|
-
//TODO: Does this need to be updated with new selection logic above? ^
|
|
384
|
+
//TODO: ED-26959 - Does this need to be updated with new selection logic above? ^
|
|
385
385
|
// Move a layout column to top level
|
|
386
386
|
if (sourceNode && isDragLayoutColumnToTopLevel($handlePos, $to)) {
|
|
387
387
|
// need update after we support single column layout.
|
|
@@ -207,7 +207,7 @@ const canMoveToLayout = (api, from, to, tr, moveNodeAtCursorPos) => {
|
|
|
207
207
|
sourceTo = Math.max(anchor, head);
|
|
208
208
|
sourceContent = tr.doc.slice(sourceFrom, sourceTo).content;
|
|
209
209
|
|
|
210
|
-
// TODO: this might become expensive for large content, consider removing it if check has been done beforehand
|
|
210
|
+
// TODO: ED-26959 - this might become expensive for large content, consider removing it if check has been done beforehand
|
|
211
211
|
if (containsNodeOfType(sourceContent, 'layoutSection')) {
|
|
212
212
|
return;
|
|
213
213
|
}
|
|
@@ -277,7 +277,7 @@ const getBreakoutMode = (content, breakout) => {
|
|
|
277
277
|
}
|
|
278
278
|
};
|
|
279
279
|
|
|
280
|
-
// TODO: As part of platform_editor_element_drag_and_drop_multiselect clean up,
|
|
280
|
+
// TODO: ED-26959 - As part of platform_editor_element_drag_and_drop_multiselect clean up,
|
|
281
281
|
// source content variable that has type of `PMNode | Fragment` should be updated to `Fragment` only
|
|
282
282
|
export const moveToLayout = api => (from, to, options) => ({
|
|
283
283
|
tr
|
|
@@ -62,7 +62,7 @@ export const handleMouseOver = (view, event, api) => {
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
// We want to exlude handles from showing for wrapped nodes
|
|
65
|
-
// TODO We should be able remove these check if we decided to
|
|
65
|
+
// TODO: ED-26959 - We should be able remove these check if we decided to
|
|
66
66
|
// go we not decoration for wrapped image solution.
|
|
67
67
|
if (['wrap-right', 'wrap-left'].includes(rootElement.getAttribute('layout') || '')) {
|
|
68
68
|
return false;
|
|
@@ -12,6 +12,7 @@ import { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-sc
|
|
|
12
12
|
import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
|
|
13
13
|
import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
|
|
14
14
|
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
15
|
+
import { BLOCK_MENU_ENABLED } from '../ui/consts';
|
|
15
16
|
import { findNodeDecs, nodeDecorations } from './decorations-anchor';
|
|
16
17
|
import { dragHandleDecoration, emptyParagraphNodeDecorations, findHandleDec } from './decorations-drag-handle';
|
|
17
18
|
import { dropTargetDecorations, findDropTargetDecs } from './decorations-drop-target';
|
|
@@ -360,7 +361,7 @@ export const newApply = (api, formatMessage, tr, currentState, newState, flags,
|
|
|
360
361
|
}
|
|
361
362
|
const newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, latestActiveNode === null || latestActiveNode === void 0 ? void 0 : latestActiveNode.pos, latestActiveNode === null || latestActiveNode === void 0 ? void 0 : latestActiveNode.pos).length === 0 ? null : latestActiveNode;
|
|
362
363
|
let isMenuOpenNew = isMenuOpen;
|
|
363
|
-
if (editorExperiment('platform_editor_controls', 'variant1')) {
|
|
364
|
+
if (BLOCK_MENU_ENABLED && editorExperiment('platform_editor_controls', 'variant1')) {
|
|
364
365
|
if (meta !== null && meta !== void 0 && meta.closeMenu) {
|
|
365
366
|
isMenuOpenNew = false;
|
|
366
367
|
} else if (meta !== null && meta !== void 0 && meta.toggleMenu) {
|
|
@@ -615,7 +616,7 @@ export const createPlugin = (api, getIntl, nodeViewPortalProviderAPI) => {
|
|
|
615
616
|
return false;
|
|
616
617
|
}
|
|
617
618
|
|
|
618
|
-
// TODO: Review usage of posAtDOM here
|
|
619
|
+
// TODO: ED-26959 - Review usage of posAtDOM here
|
|
619
620
|
const domPos = Math.max(view.posAtDOM(nodeElement, 0) - 1, 0);
|
|
620
621
|
const nodeTarget = state.doc.nodeAt(domPos);
|
|
621
622
|
const isSameNode = !!(nodeTarget && draggable !== null && draggable !== void 0 && draggable.eq(nodeTarget));
|
|
@@ -39,7 +39,7 @@ export class ActiveAnchorTracker {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
// TODO We should use a scoped ActiveAnchorTracker rather than the global static object.
|
|
42
|
+
// TODO: ED-26959 - We should use a scoped ActiveAnchorTracker rather than the global static object.
|
|
43
43
|
// Move this into the plugin scope once the newApply functions becomes default apply.
|
|
44
44
|
export const defaultActiveAnchorTracker = new ActiveAnchorTracker();
|
|
45
45
|
export const useActiveAnchorTracker = (anchorName, activeAnchorTracker = defaultActiveAnchorTracker) => {
|
|
@@ -53,7 +53,8 @@ export const getSelection = (tr, start) => {
|
|
|
53
53
|
const nodeName = node === null || node === void 0 ? void 0 : node.type.name;
|
|
54
54
|
const isBlockQuoteWithMedia = nodeName === 'blockquote' && isNodeWithMedia(tr, start, nodeSize);
|
|
55
55
|
const isBlockQuoteWithMediaOrExtension = nodeName === 'blockquote' && isNodeWithMediaOrExtension(tr, start, nodeSize);
|
|
56
|
-
|
|
56
|
+
const isListWithMediaOrExtension = nodeName === 'bulletList' && isNodeWithMediaOrExtension(tr, start, nodeSize) || nodeName === 'orderedList' && isNodeWithMediaOrExtension(tr, start, nodeSize);
|
|
57
|
+
if (isNodeSelection && nodeName !== 'blockquote' || isListWithMediaOrExtension && fg('platform_editor_non_macros_copy_and_paste_fix') || (fg('platform_editor_non_macros_copy_and_paste_fix') ? isBlockQuoteWithMediaOrExtension : isBlockQuoteWithMedia) ||
|
|
57
58
|
// decisionList/layoutColumn node is not selectable, but we want to select the whole node not just text
|
|
58
59
|
['decisionList', 'layoutColumn'].includes(nodeName || '')) {
|
|
59
60
|
return new NodeSelection($startPos);
|
package/dist/es2019/ui/consts.js
CHANGED
|
@@ -353,4 +353,8 @@ export const DEFAULT_COLUMN_DISTRIBUTIONS = {
|
|
|
353
353
|
4: 25,
|
|
354
354
|
5: 20
|
|
355
355
|
};
|
|
356
|
-
export const BLOCK_MENU_WIDTH = 220;
|
|
356
|
+
export const BLOCK_MENU_WIDTH = 220;
|
|
357
|
+
|
|
358
|
+
// Temporarily disable BLOCK MENU feature until Q4 FY25.
|
|
359
|
+
// For more details, refer to ticket ED-26972 https://product-fabric.atlassian.net/browse/ED-26972
|
|
360
|
+
export const BLOCK_MENU_ENABLED = false;
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
* @jsxRuntime classic
|
|
3
3
|
* @jsx jsx
|
|
4
4
|
*/
|
|
5
|
+
|
|
5
6
|
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
7
|
+
|
|
6
8
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
7
9
|
import { css, jsx } from '@emotion/react';
|
|
8
10
|
import { bind } from 'bind-event-listener';
|
|
@@ -26,7 +28,7 @@ import { getMultiSelectAnalyticsAttributes } from '../pm-plugins/utils/analytics
|
|
|
26
28
|
import { getLeftPosition, getTopPosition } from '../pm-plugins/utils/drag-handle-positions';
|
|
27
29
|
import { isHandleCorrelatedToSelection, selectNode } from '../pm-plugins/utils/getSelection';
|
|
28
30
|
import { alignAnchorHeadInDirectionOfPos, expandSelectionHeadToNodeAtPos } from '../pm-plugins/utils/selection';
|
|
29
|
-
import { DRAG_HANDLE_BORDER_RADIUS, DRAG_HANDLE_HEIGHT, DRAG_HANDLE_MAX_SHIFT_CLICK_DEPTH, DRAG_HANDLE_WIDTH, DRAG_HANDLE_ZINDEX, dragHandleGap, nodeMargins, spacingBetweenNodesForPreview, topPositionAdjustment } from './consts';
|
|
31
|
+
import { BLOCK_MENU_ENABLED, DRAG_HANDLE_BORDER_RADIUS, DRAG_HANDLE_HEIGHT, DRAG_HANDLE_MAX_SHIFT_CLICK_DEPTH, DRAG_HANDLE_WIDTH, DRAG_HANDLE_ZINDEX, dragHandleGap, nodeMargins, spacingBetweenNodesForPreview, topPositionAdjustment } from './consts';
|
|
30
32
|
import { dragPreview } from './drag-preview';
|
|
31
33
|
const iconWrapperStyles = xcss({
|
|
32
34
|
display: 'flex',
|
|
@@ -181,7 +183,7 @@ export const DragHandle = ({
|
|
|
181
183
|
const $anchor = (mSelect === null || mSelect === void 0 ? void 0 : mSelect.anchor) !== undefined ? tr.doc.resolve(mSelect === null || mSelect === void 0 ? void 0 : mSelect.anchor) : tr.selection.$anchor;
|
|
182
184
|
if (!isMultiSelect || tr.selection.empty || !e.shiftKey) {
|
|
183
185
|
tr = selectNode(tr, startPos, nodeType);
|
|
184
|
-
if (editorExperiment('platform_editor_controls', 'variant1')) {
|
|
186
|
+
if (BLOCK_MENU_ENABLED && editorExperiment('platform_editor_controls', 'variant1')) {
|
|
185
187
|
var _api$blockControls;
|
|
186
188
|
api === null || api === void 0 ? void 0 : (_api$blockControls = api.blockControls) === null || _api$blockControls === void 0 ? void 0 : _api$blockControls.commands.toggleBlockMenu({
|
|
187
189
|
anchorName
|
|
@@ -217,7 +219,7 @@ export const DragHandle = ({
|
|
|
217
219
|
view.focus();
|
|
218
220
|
}, [isMultiSelect, api === null || api === void 0 ? void 0 : (_api$core2 = api.core) === null || _api$core2 === void 0 ? void 0 : _api$core2.actions, api === null || api === void 0 ? void 0 : api.blockControls.sharedState, api === null || api === void 0 ? void 0 : (_api$blockControls3 = api.blockControls) === null || _api$blockControls3 === void 0 ? void 0 : _api$blockControls3.commands, api === null || api === void 0 ? void 0 : (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions, view, dragHandleSelected, getPos, isTopLevelNode, nodeType, anchorName]);
|
|
219
221
|
|
|
220
|
-
// TODO - This needs to be investigated further. Drag preview generation is not always working
|
|
222
|
+
// TODO: ED-26959 - This needs to be investigated further. Drag preview generation is not always working
|
|
221
223
|
// as expected with a node selection. This workaround sets the selection to the node on mouseDown,
|
|
222
224
|
// but ensures the preview is generated correctly.
|
|
223
225
|
const handleMouseDown = useCallback(() => {
|
|
@@ -36,7 +36,7 @@ const extendedHoverZone = () => css({
|
|
|
36
36
|
zIndex: -1
|
|
37
37
|
}
|
|
38
38
|
},
|
|
39
|
-
// TODO
|
|
39
|
+
// TODO: ED-23995 - this style override needs to be moved to the Rule styles after FF cleanup - packages/editor/editor-common/src/styles/shared/rule.ts
|
|
40
40
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
|
|
41
41
|
'hr[data-drag-handler-anchor-name]': {
|
|
42
42
|
overflow: 'visible'
|
|
@@ -109,7 +109,7 @@ const extendedHoverZoneNested = () => css({
|
|
|
109
109
|
zIndex: 1
|
|
110
110
|
}
|
|
111
111
|
},
|
|
112
|
-
// TODO
|
|
112
|
+
// TODO: ED-23995 - this style override needs to be moved to the Rule styles after FF cleanup packages/editor/editor-common/src/styles/shared/rule.ts
|
|
113
113
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
|
|
114
114
|
'hr[data-drag-handler-anchor-name]': {
|
|
115
115
|
overflow: 'visible'
|
|
@@ -39,7 +39,7 @@ const containerStaticStyles = xcss({
|
|
|
39
39
|
zIndex: 'card'
|
|
40
40
|
});
|
|
41
41
|
|
|
42
|
-
// TODO: Share prop types between DragHandle - generic enough to create a type for block control decoration
|
|
42
|
+
// TODO: ED-26959 - Share prop types between DragHandle - generic enough to create a type for block control decoration
|
|
43
43
|
|
|
44
44
|
const isSelectionInNode = (start, view) => {
|
|
45
45
|
const node = view.state.doc.nodeAt(start);
|
|
@@ -373,7 +373,7 @@ export var moveNode = function moveNode(api) {
|
|
|
373
373
|
var destParent = $to.node($to.depth);
|
|
374
374
|
var sourceNode = $handlePos.nodeAfter;
|
|
375
375
|
|
|
376
|
-
//TODO: Does this need to be updated with new selection logic above? ^
|
|
376
|
+
//TODO: ED-26959 - Does this need to be updated with new selection logic above? ^
|
|
377
377
|
// Move a layout column to top level
|
|
378
378
|
if (sourceNode && isDragLayoutColumnToTopLevel($handlePos, $to)) {
|
|
379
379
|
// need update after we support single column layout.
|
|
@@ -201,7 +201,7 @@ var canMoveToLayout = function canMoveToLayout(api, from, to, tr, moveNodeAtCurs
|
|
|
201
201
|
sourceTo = Math.max(anchor, head);
|
|
202
202
|
sourceContent = tr.doc.slice(sourceFrom, sourceTo).content;
|
|
203
203
|
|
|
204
|
-
// TODO: this might become expensive for large content, consider removing it if check has been done beforehand
|
|
204
|
+
// TODO: ED-26959 - this might become expensive for large content, consider removing it if check has been done beforehand
|
|
205
205
|
if (containsNodeOfType(sourceContent, 'layoutSection')) {
|
|
206
206
|
return;
|
|
207
207
|
}
|
|
@@ -280,7 +280,7 @@ var getBreakoutMode = function getBreakoutMode(content, breakout) {
|
|
|
280
280
|
}
|
|
281
281
|
};
|
|
282
282
|
|
|
283
|
-
// TODO: As part of platform_editor_element_drag_and_drop_multiselect clean up,
|
|
283
|
+
// TODO: ED-26959 - As part of platform_editor_element_drag_and_drop_multiselect clean up,
|
|
284
284
|
// source content variable that has type of `PMNode | Fragment` should be updated to `Fragment` only
|
|
285
285
|
export var moveToLayout = function moveToLayout(api) {
|
|
286
286
|
return function (from, to, options) {
|
|
@@ -61,7 +61,7 @@ export var handleMouseOver = function handleMouseOver(view, event, api) {
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
// We want to exlude handles from showing for wrapped nodes
|
|
64
|
-
// TODO We should be able remove these check if we decided to
|
|
64
|
+
// TODO: ED-26959 - We should be able remove these check if we decided to
|
|
65
65
|
// go we not decoration for wrapped image solution.
|
|
66
66
|
if (['wrap-right', 'wrap-left'].includes(rootElement.getAttribute('layout') || '')) {
|
|
67
67
|
return false;
|
|
@@ -16,6 +16,7 @@ import { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-sc
|
|
|
16
16
|
import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
|
|
17
17
|
import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
|
|
18
18
|
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
19
|
+
import { BLOCK_MENU_ENABLED } from '../ui/consts';
|
|
19
20
|
import { findNodeDecs, nodeDecorations } from './decorations-anchor';
|
|
20
21
|
import { dragHandleDecoration, emptyParagraphNodeDecorations, findHandleDec } from './decorations-drag-handle';
|
|
21
22
|
import { dropTargetDecorations, findDropTargetDecs } from './decorations-drop-target';
|
|
@@ -356,7 +357,7 @@ export var newApply = function newApply(api, formatMessage, tr, currentState, ne
|
|
|
356
357
|
}
|
|
357
358
|
var newActiveNode = isEmptyDoc || !(meta !== null && meta !== void 0 && meta.activeNode) && findHandleDec(decorations, latestActiveNode === null || latestActiveNode === void 0 ? void 0 : latestActiveNode.pos, latestActiveNode === null || latestActiveNode === void 0 ? void 0 : latestActiveNode.pos).length === 0 ? null : latestActiveNode;
|
|
358
359
|
var isMenuOpenNew = isMenuOpen;
|
|
359
|
-
if (editorExperiment('platform_editor_controls', 'variant1')) {
|
|
360
|
+
if (BLOCK_MENU_ENABLED && editorExperiment('platform_editor_controls', 'variant1')) {
|
|
360
361
|
if (meta !== null && meta !== void 0 && meta.closeMenu) {
|
|
361
362
|
isMenuOpenNew = false;
|
|
362
363
|
} else if (meta !== null && meta !== void 0 && meta.toggleMenu) {
|
|
@@ -626,7 +627,7 @@ export var createPlugin = function createPlugin(api, getIntl, nodeViewPortalProv
|
|
|
626
627
|
return false;
|
|
627
628
|
}
|
|
628
629
|
|
|
629
|
-
// TODO: Review usage of posAtDOM here
|
|
630
|
+
// TODO: ED-26959 - Review usage of posAtDOM here
|
|
630
631
|
var domPos = Math.max(view.posAtDOM(nodeElement, 0) - 1, 0);
|
|
631
632
|
var nodeTarget = state.doc.nodeAt(domPos);
|
|
632
633
|
var isSameNode = !!(nodeTarget && draggable !== null && draggable !== void 0 && draggable.eq(nodeTarget));
|
|
@@ -54,7 +54,7 @@ export var ActiveAnchorTracker = /*#__PURE__*/function () {
|
|
|
54
54
|
}]);
|
|
55
55
|
}();
|
|
56
56
|
|
|
57
|
-
// TODO We should use a scoped ActiveAnchorTracker rather than the global static object.
|
|
57
|
+
// TODO: ED-26959 - We should use a scoped ActiveAnchorTracker rather than the global static object.
|
|
58
58
|
// Move this into the plugin scope once the newApply functions becomes default apply.
|
|
59
59
|
export var defaultActiveAnchorTracker = new ActiveAnchorTracker();
|
|
60
60
|
export var useActiveAnchorTracker = function useActiveAnchorTracker(anchorName) {
|
|
@@ -53,7 +53,8 @@ export var getSelection = function getSelection(tr, start) {
|
|
|
53
53
|
var nodeName = node === null || node === void 0 ? void 0 : node.type.name;
|
|
54
54
|
var isBlockQuoteWithMedia = nodeName === 'blockquote' && isNodeWithMedia(tr, start, nodeSize);
|
|
55
55
|
var isBlockQuoteWithMediaOrExtension = nodeName === 'blockquote' && isNodeWithMediaOrExtension(tr, start, nodeSize);
|
|
56
|
-
|
|
56
|
+
var isListWithMediaOrExtension = nodeName === 'bulletList' && isNodeWithMediaOrExtension(tr, start, nodeSize) || nodeName === 'orderedList' && isNodeWithMediaOrExtension(tr, start, nodeSize);
|
|
57
|
+
if (isNodeSelection && nodeName !== 'blockquote' || isListWithMediaOrExtension && fg('platform_editor_non_macros_copy_and_paste_fix') || (fg('platform_editor_non_macros_copy_and_paste_fix') ? isBlockQuoteWithMediaOrExtension : isBlockQuoteWithMedia) ||
|
|
57
58
|
// decisionList/layoutColumn node is not selectable, but we want to select the whole node not just text
|
|
58
59
|
['decisionList', 'layoutColumn'].includes(nodeName || '')) {
|
|
59
60
|
return new NodeSelection($startPos);
|
package/dist/esm/ui/consts.js
CHANGED
|
@@ -337,4 +337,8 @@ export var DEFAULT_COLUMN_DISTRIBUTIONS = {
|
|
|
337
337
|
4: 25,
|
|
338
338
|
5: 20
|
|
339
339
|
};
|
|
340
|
-
export var BLOCK_MENU_WIDTH = 220;
|
|
340
|
+
export var BLOCK_MENU_WIDTH = 220;
|
|
341
|
+
|
|
342
|
+
// Temporarily disable BLOCK MENU feature until Q4 FY25.
|
|
343
|
+
// For more details, refer to ticket ED-26972 https://product-fabric.atlassian.net/browse/ED-26972
|
|
344
|
+
export var BLOCK_MENU_ENABLED = false;
|
|
@@ -7,7 +7,9 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
7
7
|
* @jsxRuntime classic
|
|
8
8
|
* @jsx jsx
|
|
9
9
|
*/
|
|
10
|
+
|
|
10
11
|
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
12
|
+
|
|
11
13
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
12
14
|
import { css, jsx } from '@emotion/react';
|
|
13
15
|
import { bind } from 'bind-event-listener';
|
|
@@ -31,7 +33,7 @@ import { getMultiSelectAnalyticsAttributes } from '../pm-plugins/utils/analytics
|
|
|
31
33
|
import { getLeftPosition, getTopPosition } from '../pm-plugins/utils/drag-handle-positions';
|
|
32
34
|
import { isHandleCorrelatedToSelection, selectNode } from '../pm-plugins/utils/getSelection';
|
|
33
35
|
import { alignAnchorHeadInDirectionOfPos, expandSelectionHeadToNodeAtPos } from '../pm-plugins/utils/selection';
|
|
34
|
-
import { DRAG_HANDLE_BORDER_RADIUS, DRAG_HANDLE_HEIGHT, DRAG_HANDLE_MAX_SHIFT_CLICK_DEPTH, DRAG_HANDLE_WIDTH, DRAG_HANDLE_ZINDEX, dragHandleGap, nodeMargins, spacingBetweenNodesForPreview, topPositionAdjustment } from './consts';
|
|
36
|
+
import { BLOCK_MENU_ENABLED, DRAG_HANDLE_BORDER_RADIUS, DRAG_HANDLE_HEIGHT, DRAG_HANDLE_MAX_SHIFT_CLICK_DEPTH, DRAG_HANDLE_WIDTH, DRAG_HANDLE_ZINDEX, dragHandleGap, nodeMargins, spacingBetweenNodesForPreview, topPositionAdjustment } from './consts';
|
|
35
37
|
import { dragPreview } from './drag-preview';
|
|
36
38
|
var iconWrapperStyles = xcss({
|
|
37
39
|
display: 'flex',
|
|
@@ -195,7 +197,7 @@ export var DragHandle = function DragHandle(_ref) {
|
|
|
195
197
|
var $anchor = (mSelect === null || mSelect === void 0 ? void 0 : mSelect.anchor) !== undefined ? tr.doc.resolve(mSelect === null || mSelect === void 0 ? void 0 : mSelect.anchor) : tr.selection.$anchor;
|
|
196
198
|
if (!isMultiSelect || tr.selection.empty || !e.shiftKey) {
|
|
197
199
|
tr = selectNode(tr, startPos, nodeType);
|
|
198
|
-
if (editorExperiment('platform_editor_controls', 'variant1')) {
|
|
200
|
+
if (BLOCK_MENU_ENABLED && editorExperiment('platform_editor_controls', 'variant1')) {
|
|
199
201
|
var _api$blockControls;
|
|
200
202
|
api === null || api === void 0 || (_api$blockControls = api.blockControls) === null || _api$blockControls === void 0 || _api$blockControls.commands.toggleBlockMenu({
|
|
201
203
|
anchorName: anchorName
|
|
@@ -231,7 +233,7 @@ export var DragHandle = function DragHandle(_ref) {
|
|
|
231
233
|
view.focus();
|
|
232
234
|
}, [isMultiSelect, api === null || api === void 0 || (_api$core2 = api.core) === null || _api$core2 === void 0 ? void 0 : _api$core2.actions, api === null || api === void 0 ? void 0 : api.blockControls.sharedState, api === null || api === void 0 || (_api$blockControls3 = api.blockControls) === null || _api$blockControls3 === void 0 ? void 0 : _api$blockControls3.commands, api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions, view, dragHandleSelected, getPos, isTopLevelNode, nodeType, anchorName]);
|
|
233
235
|
|
|
234
|
-
// TODO - This needs to be investigated further. Drag preview generation is not always working
|
|
236
|
+
// TODO: ED-26959 - This needs to be investigated further. Drag preview generation is not always working
|
|
235
237
|
// as expected with a node selection. This workaround sets the selection to the node on mouseDown,
|
|
236
238
|
// but ensures the preview is generated correctly.
|
|
237
239
|
var handleMouseDown = useCallback(function () {
|
|
@@ -40,7 +40,7 @@ var containerStaticStyles = xcss({
|
|
|
40
40
|
zIndex: 'card'
|
|
41
41
|
});
|
|
42
42
|
|
|
43
|
-
// TODO: Share prop types between DragHandle - generic enough to create a type for block control decoration
|
|
43
|
+
// TODO: ED-26959 - Share prop types between DragHandle - generic enough to create a type for block control decoration
|
|
44
44
|
|
|
45
45
|
var isSelectionInNode = function isSelectionInNode(start, view) {
|
|
46
46
|
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.3.
|
|
3
|
+
"version": "3.3.7",
|
|
4
4
|
"description": "Block controls plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -33,14 +33,14 @@
|
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@atlaskit/adf-schema": "^47.6.0",
|
|
36
|
-
"@atlaskit/editor-common": "^102.
|
|
36
|
+
"@atlaskit/editor-common": "^102.3.0",
|
|
37
37
|
"@atlaskit/editor-plugin-accessibility-utils": "^2.0.0",
|
|
38
38
|
"@atlaskit/editor-plugin-analytics": "^2.1.0",
|
|
39
39
|
"@atlaskit/editor-plugin-editor-disabled": "^2.0.0",
|
|
40
40
|
"@atlaskit/editor-plugin-feature-flags": "^1.3.0",
|
|
41
41
|
"@atlaskit/editor-plugin-metrics": "^3.4.0",
|
|
42
|
-
"@atlaskit/editor-plugin-quick-insert": "^2.
|
|
43
|
-
"@atlaskit/editor-plugin-selection": "^2.
|
|
42
|
+
"@atlaskit/editor-plugin-quick-insert": "^2.1.0",
|
|
43
|
+
"@atlaskit/editor-plugin-selection": "^2.1.0",
|
|
44
44
|
"@atlaskit/editor-plugin-width": "^3.0.0",
|
|
45
45
|
"@atlaskit/editor-prosemirror": "7.0.0",
|
|
46
46
|
"@atlaskit/editor-shared-styles": "^3.4.0",
|
|
@@ -49,10 +49,10 @@
|
|
|
49
49
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
50
50
|
"@atlaskit/pragmatic-drag-and-drop": "^1.5.0",
|
|
51
51
|
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.0",
|
|
52
|
-
"@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^2.
|
|
52
|
+
"@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^2.2.0",
|
|
53
53
|
"@atlaskit/primitives": "^14.1.0",
|
|
54
54
|
"@atlaskit/theme": "^18.0.0",
|
|
55
|
-
"@atlaskit/tmp-editor-statsig": "^3.
|
|
55
|
+
"@atlaskit/tmp-editor-statsig": "^3.5.0",
|
|
56
56
|
"@atlaskit/tokens": "^4.3.0",
|
|
57
57
|
"@atlaskit/tooltip": "^20.0.0",
|
|
58
58
|
"@babel/runtime": "^7.0.0",
|