@atlaskit/editor-plugin-block-controls 7.2.10 → 7.2.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/dist/cjs/pm-plugins/handle-mouse-down.js +14 -2
- package/dist/cjs/pm-plugins/handle-mouse-over.js +13 -3
- package/dist/cjs/pm-plugins/main.js +1 -1
- package/dist/es2019/pm-plugins/handle-mouse-down.js +14 -2
- package/dist/es2019/pm-plugins/handle-mouse-over.js +13 -3
- package/dist/es2019/pm-plugins/main.js +1 -1
- package/dist/esm/pm-plugins/handle-mouse-down.js +14 -2
- package/dist/esm/pm-plugins/handle-mouse-over.js +13 -3
- package/dist/esm/pm-plugins/main.js +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-block-controls
|
|
2
2
|
|
|
3
|
+
## 7.2.11
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`606c3303a0d61`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/606c3303a0d61) -
|
|
8
|
+
[ux] ED-29331 fix block controls misalignment on first line of empty document with
|
|
9
|
+
platform_editor_native_anchor_support on
|
|
10
|
+
- Updated dependencies
|
|
11
|
+
|
|
3
12
|
## 7.2.10
|
|
4
13
|
|
|
5
14
|
### Patch Changes
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.handleMouseDown = void 0;
|
|
7
7
|
var _styles = require("@atlaskit/editor-common/styles");
|
|
8
|
+
var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
|
|
8
9
|
var _expValEqualsNoExposure = require("@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure");
|
|
9
10
|
var handleMouseDown = exports.handleMouseDown = function handleMouseDown(api) {
|
|
10
11
|
return function (view, event) {
|
|
@@ -12,7 +13,6 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(api) {
|
|
|
12
13
|
return false;
|
|
13
14
|
}
|
|
14
15
|
if (!view.editable) {
|
|
15
|
-
var _rootNode$type$name, _rootNode$type$name2;
|
|
16
16
|
var targetPos = view.posAtDOM(event.target, 0);
|
|
17
17
|
// always fetch top level position for mouseDown to avoid drag handle positions being incorrect
|
|
18
18
|
var rootPos = view.state.doc.resolve(targetPos).before(1);
|
|
@@ -20,7 +20,19 @@ var handleMouseDown = exports.handleMouseDown = function handleMouseDown(api) {
|
|
|
20
20
|
if (!rootNode) {
|
|
21
21
|
return false;
|
|
22
22
|
}
|
|
23
|
-
|
|
23
|
+
if ((0, _expValEquals.expValEquals)('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
24
|
+
var _rootNode$type$name, _rootNode$type$name2;
|
|
25
|
+
var anchorName = api === null || api === void 0 ? void 0 : api.core.actions.getAnchorIdForNode(rootNode, rootPos);
|
|
26
|
+
|
|
27
|
+
// don't show the handles if we can't find an anchor
|
|
28
|
+
if (!anchorName) {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
api === null || api === void 0 || api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.showDragHandleAt(rootPos, anchorName, (_rootNode$type$name = rootNode.type.name) !== null && _rootNode$type$name !== void 0 ? _rootNode$type$name : '', undefined, rootPos, anchorName, (_rootNode$type$name2 = rootNode.type.name) !== null && _rootNode$type$name2 !== void 0 ? _rootNode$type$name2 : ''));
|
|
32
|
+
} else {
|
|
33
|
+
var _rootNode$type$name3, _rootNode$type$name4;
|
|
34
|
+
api === null || api === void 0 || api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.showDragHandleAt(rootPos, '', (_rootNode$type$name3 = rootNode.type.name) !== null && _rootNode$type$name3 !== void 0 ? _rootNode$type$name3 : '', undefined, rootPos, '', (_rootNode$type$name4 = rootNode.type.name) !== null && _rootNode$type$name4 !== void 0 ? _rootNode$type$name4 : ''));
|
|
35
|
+
}
|
|
24
36
|
} else {
|
|
25
37
|
var isDragHandle = event.target.closest((0, _expValEqualsNoExposure.expValEqualsNoExposure)('platform_editor_block_menu', 'isEnabled', true) ? _styles.DRAG_HANDLE_SELECTOR : '[data-editor-block-ctrl-drag-handle]') !== null;
|
|
26
38
|
api === null || api === void 0 || api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.setSelectedViaDragHandle(isDragHandle));
|
|
@@ -100,10 +100,20 @@ var handleMouseOver = exports.handleMouseOver = function handleMouseOver(view, e
|
|
|
100
100
|
rootElement = parentElement;
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
|
+
var anchorName;
|
|
104
|
+
if ((0, _expValEquals.expValEquals)('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
105
|
+
anchorName = rootElement.getAttribute((0, _domAttrName.getAnchorAttrName)());
|
|
106
|
+
|
|
107
|
+
// don't show handles if we can't find an anchor
|
|
108
|
+
if (!anchorName) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
} else {
|
|
112
|
+
// Ignored via go/ees005
|
|
113
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
114
|
+
anchorName = rootElement.getAttribute((0, _domAttrName.getAnchorAttrName)());
|
|
115
|
+
}
|
|
103
116
|
|
|
104
|
-
// Ignored via go/ees005
|
|
105
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
106
|
-
var anchorName = rootElement.getAttribute((0, _domAttrName.getAnchorAttrName)());
|
|
107
117
|
// No need to update handle position if its already there
|
|
108
118
|
if ((activeNode === null || activeNode === void 0 ? void 0 : activeNode.anchorName) === anchorName) {
|
|
109
119
|
return false;
|
|
@@ -503,7 +503,7 @@ var _apply = exports.apply = function apply(api, formatMessage, tr, currentState
|
|
|
503
503
|
}
|
|
504
504
|
}
|
|
505
505
|
var isEmptyDoc = (0, _utils.isEmptyDocument)(newState.doc);
|
|
506
|
-
if (isEmptyDoc) {
|
|
506
|
+
if (isEmptyDoc && !(0, _expValEquals.expValEquals)('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
507
507
|
var hasNodeDecoration = !!(0, _decorationsAnchor.findNodeDecs)(newState, decorations).length;
|
|
508
508
|
if (!hasNodeDecoration) {
|
|
509
509
|
decorations = decorations.add(newState.doc, [(0, _decorationsDragHandle.emptyParagraphNodeDecorations)()]);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { DRAG_HANDLE_SELECTOR } from '@atlaskit/editor-common/styles';
|
|
2
|
+
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
2
3
|
import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
|
|
3
4
|
export const handleMouseDown = api => (view, event) => {
|
|
4
5
|
if (!(event.target instanceof HTMLElement)) {
|
|
5
6
|
return false;
|
|
6
7
|
}
|
|
7
8
|
if (!view.editable) {
|
|
8
|
-
var _rootNode$type$name, _rootNode$type$name2;
|
|
9
9
|
const targetPos = view.posAtDOM(event.target, 0);
|
|
10
10
|
// always fetch top level position for mouseDown to avoid drag handle positions being incorrect
|
|
11
11
|
const rootPos = view.state.doc.resolve(targetPos).before(1);
|
|
@@ -13,7 +13,19 @@ export const handleMouseDown = api => (view, event) => {
|
|
|
13
13
|
if (!rootNode) {
|
|
14
14
|
return false;
|
|
15
15
|
}
|
|
16
|
-
|
|
16
|
+
if (expValEquals('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
17
|
+
var _rootNode$type$name, _rootNode$type$name2;
|
|
18
|
+
const anchorName = api === null || api === void 0 ? void 0 : api.core.actions.getAnchorIdForNode(rootNode, rootPos);
|
|
19
|
+
|
|
20
|
+
// don't show the handles if we can't find an anchor
|
|
21
|
+
if (!anchorName) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
api === null || api === void 0 ? void 0 : api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.showDragHandleAt(rootPos, anchorName, (_rootNode$type$name = rootNode.type.name) !== null && _rootNode$type$name !== void 0 ? _rootNode$type$name : '', undefined, rootPos, anchorName, (_rootNode$type$name2 = rootNode.type.name) !== null && _rootNode$type$name2 !== void 0 ? _rootNode$type$name2 : ''));
|
|
25
|
+
} else {
|
|
26
|
+
var _rootNode$type$name3, _rootNode$type$name4;
|
|
27
|
+
api === null || api === void 0 ? void 0 : api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.showDragHandleAt(rootPos, '', (_rootNode$type$name3 = rootNode.type.name) !== null && _rootNode$type$name3 !== void 0 ? _rootNode$type$name3 : '', undefined, rootPos, '', (_rootNode$type$name4 = rootNode.type.name) !== null && _rootNode$type$name4 !== void 0 ? _rootNode$type$name4 : ''));
|
|
28
|
+
}
|
|
17
29
|
} else {
|
|
18
30
|
const isDragHandle = event.target.closest(expValEqualsNoExposure('platform_editor_block_menu', 'isEnabled', true) ? DRAG_HANDLE_SELECTOR : '[data-editor-block-ctrl-drag-handle]') !== null;
|
|
19
31
|
api === null || api === void 0 ? void 0 : api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.setSelectedViaDragHandle(isDragHandle));
|
|
@@ -90,10 +90,20 @@ export const handleMouseOver = (view, event, api) => {
|
|
|
90
90
|
rootElement = parentElement;
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
|
+
let anchorName;
|
|
94
|
+
if (expValEquals('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
95
|
+
anchorName = rootElement.getAttribute(getAnchorAttrName());
|
|
96
|
+
|
|
97
|
+
// don't show handles if we can't find an anchor
|
|
98
|
+
if (!anchorName) {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
} else {
|
|
102
|
+
// Ignored via go/ees005
|
|
103
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
104
|
+
anchorName = rootElement.getAttribute(getAnchorAttrName());
|
|
105
|
+
}
|
|
93
106
|
|
|
94
|
-
// Ignored via go/ees005
|
|
95
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
96
|
-
const anchorName = rootElement.getAttribute(getAnchorAttrName());
|
|
97
107
|
// No need to update handle position if its already there
|
|
98
108
|
if ((activeNode === null || activeNode === void 0 ? void 0 : activeNode.anchorName) === anchorName) {
|
|
99
109
|
return false;
|
|
@@ -501,7 +501,7 @@ export const apply = (api, formatMessage, tr, currentState, newState, flags, nod
|
|
|
501
501
|
}
|
|
502
502
|
}
|
|
503
503
|
const isEmptyDoc = isEmptyDocument(newState.doc);
|
|
504
|
-
if (isEmptyDoc) {
|
|
504
|
+
if (isEmptyDoc && !expValEquals('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
505
505
|
const hasNodeDecoration = !!findNodeDecs(newState, decorations).length;
|
|
506
506
|
if (!hasNodeDecoration) {
|
|
507
507
|
decorations = decorations.add(newState.doc, [emptyParagraphNodeDecorations()]);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DRAG_HANDLE_SELECTOR } from '@atlaskit/editor-common/styles';
|
|
2
|
+
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
2
3
|
import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
|
|
3
4
|
export var handleMouseDown = function handleMouseDown(api) {
|
|
4
5
|
return function (view, event) {
|
|
@@ -6,7 +7,6 @@ export var handleMouseDown = function handleMouseDown(api) {
|
|
|
6
7
|
return false;
|
|
7
8
|
}
|
|
8
9
|
if (!view.editable) {
|
|
9
|
-
var _rootNode$type$name, _rootNode$type$name2;
|
|
10
10
|
var targetPos = view.posAtDOM(event.target, 0);
|
|
11
11
|
// always fetch top level position for mouseDown to avoid drag handle positions being incorrect
|
|
12
12
|
var rootPos = view.state.doc.resolve(targetPos).before(1);
|
|
@@ -14,7 +14,19 @@ export var handleMouseDown = function handleMouseDown(api) {
|
|
|
14
14
|
if (!rootNode) {
|
|
15
15
|
return false;
|
|
16
16
|
}
|
|
17
|
-
|
|
17
|
+
if (expValEquals('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
18
|
+
var _rootNode$type$name, _rootNode$type$name2;
|
|
19
|
+
var anchorName = api === null || api === void 0 ? void 0 : api.core.actions.getAnchorIdForNode(rootNode, rootPos);
|
|
20
|
+
|
|
21
|
+
// don't show the handles if we can't find an anchor
|
|
22
|
+
if (!anchorName) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
api === null || api === void 0 || api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.showDragHandleAt(rootPos, anchorName, (_rootNode$type$name = rootNode.type.name) !== null && _rootNode$type$name !== void 0 ? _rootNode$type$name : '', undefined, rootPos, anchorName, (_rootNode$type$name2 = rootNode.type.name) !== null && _rootNode$type$name2 !== void 0 ? _rootNode$type$name2 : ''));
|
|
26
|
+
} else {
|
|
27
|
+
var _rootNode$type$name3, _rootNode$type$name4;
|
|
28
|
+
api === null || api === void 0 || api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.showDragHandleAt(rootPos, '', (_rootNode$type$name3 = rootNode.type.name) !== null && _rootNode$type$name3 !== void 0 ? _rootNode$type$name3 : '', undefined, rootPos, '', (_rootNode$type$name4 = rootNode.type.name) !== null && _rootNode$type$name4 !== void 0 ? _rootNode$type$name4 : ''));
|
|
29
|
+
}
|
|
18
30
|
} else {
|
|
19
31
|
var isDragHandle = event.target.closest(expValEqualsNoExposure('platform_editor_block_menu', 'isEnabled', true) ? DRAG_HANDLE_SELECTOR : '[data-editor-block-ctrl-drag-handle]') !== null;
|
|
20
32
|
api === null || api === void 0 || api.core.actions.execute(api === null || api === void 0 ? void 0 : api.blockControls.commands.setSelectedViaDragHandle(isDragHandle));
|
|
@@ -93,10 +93,20 @@ export var handleMouseOver = function handleMouseOver(view, event, api) {
|
|
|
93
93
|
rootElement = parentElement;
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
|
+
var anchorName;
|
|
97
|
+
if (expValEquals('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
98
|
+
anchorName = rootElement.getAttribute(getAnchorAttrName());
|
|
99
|
+
|
|
100
|
+
// don't show handles if we can't find an anchor
|
|
101
|
+
if (!anchorName) {
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
// Ignored via go/ees005
|
|
106
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
107
|
+
anchorName = rootElement.getAttribute(getAnchorAttrName());
|
|
108
|
+
}
|
|
96
109
|
|
|
97
|
-
// Ignored via go/ees005
|
|
98
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
99
|
-
var anchorName = rootElement.getAttribute(getAnchorAttrName());
|
|
100
110
|
// No need to update handle position if its already there
|
|
101
111
|
if ((activeNode === null || activeNode === void 0 ? void 0 : activeNode.anchorName) === anchorName) {
|
|
102
112
|
return false;
|
|
@@ -496,7 +496,7 @@ var _apply = function apply(api, formatMessage, tr, currentState, newState, flag
|
|
|
496
496
|
}
|
|
497
497
|
}
|
|
498
498
|
var isEmptyDoc = isEmptyDocument(newState.doc);
|
|
499
|
-
if (isEmptyDoc) {
|
|
499
|
+
if (isEmptyDoc && !expValEquals('platform_editor_native_anchor_support', 'isEnabled', true)) {
|
|
500
500
|
var hasNodeDecoration = !!findNodeDecs(newState, decorations).length;
|
|
501
501
|
if (!hasNodeDecoration) {
|
|
502
502
|
decorations = decorations.add(newState.doc, [emptyParagraphNodeDecorations()]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-block-controls",
|
|
3
|
-
"version": "7.2.
|
|
3
|
+
"version": "7.2.11",
|
|
4
4
|
"description": "Block controls plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^3.2.0",
|
|
53
53
|
"@atlaskit/primitives": "^15.0.0",
|
|
54
54
|
"@atlaskit/theme": "^21.0.0",
|
|
55
|
-
"@atlaskit/tmp-editor-statsig": "^13.
|
|
55
|
+
"@atlaskit/tmp-editor-statsig": "^13.12.0",
|
|
56
56
|
"@atlaskit/tokens": "^6.5.0",
|
|
57
57
|
"@atlaskit/tooltip": "^20.5.0",
|
|
58
58
|
"@babel/runtime": "^7.0.0",
|