@atlaskit/editor-plugin-block-controls 2.13.0 → 2.13.2

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,22 @@
1
1
  # @atlaskit/editor-plugin-block-controls
2
2
 
3
+ ## 2.13.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [#159192](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/159192)
8
+ [`0df45cd10dc0d`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/0df45cd10dc0d) -
9
+ ED-25539 fix bug drag a node to a node with breakout
10
+ - Updated dependencies
11
+
12
+ ## 2.13.1
13
+
14
+ ### Patch Changes
15
+
16
+ - [#159176](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/159176)
17
+ [`8f1d77592a9dc`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/8f1d77592a9dc) -
18
+ Bump adf-schema to 44.2.0
19
+
3
20
  ## 2.13.0
4
21
 
5
22
  ### Minor Changes
@@ -143,12 +143,22 @@ var moveToLayout = exports.moveToLayout = function moveToLayout(api) {
143
143
  var _toPos = options !== null && options !== void 0 && options.moveToEnd ? to + toNode.nodeSize : to;
144
144
  return moveToExistingLayout(toLayout, toLayoutPos, fromNodeWithoutBreakout, from, _toPos, tr);
145
145
  } else {
146
- var layoutContents = options !== null && options !== void 0 && options.moveToEnd ? [toNode, fromNodeWithoutBreakout] : [fromNodeWithoutBreakout, toNode];
146
+ var toNodeWithoutBreakout = toNode;
147
+
148
+ // remove breakout from node;
149
+ if (breakout && $to.nodeAfter && $to.nodeAfter.marks.some(function (m) {
150
+ return m.type === breakout;
151
+ })) {
152
+ tr.removeNodeMark(to, breakout);
153
+ // resolve again the source node after node updated (remove breakout marks)
154
+ toNodeWithoutBreakout = tr.doc.resolve(to).nodeAfter || toNode;
155
+ }
156
+ var layoutContents = options !== null && options !== void 0 && options.moveToEnd ? [toNodeWithoutBreakout, fromNodeWithoutBreakout] : [fromNodeWithoutBreakout, toNodeWithoutBreakout];
147
157
  var newLayout = createNewLayout(tr.doc.type.schema, layoutContents);
148
158
  if (newLayout) {
149
159
  tr.delete(from, from + fromNode.nodeSize);
150
160
  var mappedTo = tr.mapping.map(to);
151
- tr.delete(mappedTo, mappedTo + toNode.nodeSize).insert(mappedTo, newLayout).setSelection(new _state.NodeSelection(tr.doc.resolve(mappedTo))).scrollIntoView();
161
+ tr.delete(mappedTo, mappedTo + toNodeWithoutBreakout.nodeSize).insert(mappedTo, newLayout).setSelection(new _state.NodeSelection(tr.doc.resolve(mappedTo))).scrollIntoView();
152
162
  }
153
163
  return tr;
154
164
  }
@@ -141,12 +141,20 @@ export const moveToLayout = api => (from, to, options) => ({
141
141
  const toPos = options !== null && options !== void 0 && options.moveToEnd ? to + toNode.nodeSize : to;
142
142
  return moveToExistingLayout(toLayout, toLayoutPos, fromNodeWithoutBreakout, from, toPos, tr);
143
143
  } else {
144
- const layoutContents = options !== null && options !== void 0 && options.moveToEnd ? [toNode, fromNodeWithoutBreakout] : [fromNodeWithoutBreakout, toNode];
144
+ let toNodeWithoutBreakout = toNode;
145
+
146
+ // remove breakout from node;
147
+ if (breakout && $to.nodeAfter && $to.nodeAfter.marks.some(m => m.type === breakout)) {
148
+ tr.removeNodeMark(to, breakout);
149
+ // resolve again the source node after node updated (remove breakout marks)
150
+ toNodeWithoutBreakout = tr.doc.resolve(to).nodeAfter || toNode;
151
+ }
152
+ const layoutContents = options !== null && options !== void 0 && options.moveToEnd ? [toNodeWithoutBreakout, fromNodeWithoutBreakout] : [fromNodeWithoutBreakout, toNodeWithoutBreakout];
145
153
  const newLayout = createNewLayout(tr.doc.type.schema, layoutContents);
146
154
  if (newLayout) {
147
155
  tr.delete(from, from + fromNode.nodeSize);
148
156
  const mappedTo = tr.mapping.map(to);
149
- tr.delete(mappedTo, mappedTo + toNode.nodeSize).insert(mappedTo, newLayout).setSelection(new NodeSelection(tr.doc.resolve(mappedTo))).scrollIntoView();
157
+ tr.delete(mappedTo, mappedTo + toNodeWithoutBreakout.nodeSize).insert(mappedTo, newLayout).setSelection(new NodeSelection(tr.doc.resolve(mappedTo))).scrollIntoView();
150
158
  }
151
159
  return tr;
152
160
  }
@@ -137,12 +137,22 @@ export var moveToLayout = function moveToLayout(api) {
137
137
  var _toPos = options !== null && options !== void 0 && options.moveToEnd ? to + toNode.nodeSize : to;
138
138
  return moveToExistingLayout(toLayout, toLayoutPos, fromNodeWithoutBreakout, from, _toPos, tr);
139
139
  } else {
140
- var layoutContents = options !== null && options !== void 0 && options.moveToEnd ? [toNode, fromNodeWithoutBreakout] : [fromNodeWithoutBreakout, toNode];
140
+ var toNodeWithoutBreakout = toNode;
141
+
142
+ // remove breakout from node;
143
+ if (breakout && $to.nodeAfter && $to.nodeAfter.marks.some(function (m) {
144
+ return m.type === breakout;
145
+ })) {
146
+ tr.removeNodeMark(to, breakout);
147
+ // resolve again the source node after node updated (remove breakout marks)
148
+ toNodeWithoutBreakout = tr.doc.resolve(to).nodeAfter || toNode;
149
+ }
150
+ var layoutContents = options !== null && options !== void 0 && options.moveToEnd ? [toNodeWithoutBreakout, fromNodeWithoutBreakout] : [fromNodeWithoutBreakout, toNodeWithoutBreakout];
141
151
  var newLayout = createNewLayout(tr.doc.type.schema, layoutContents);
142
152
  if (newLayout) {
143
153
  tr.delete(from, from + fromNode.nodeSize);
144
154
  var mappedTo = tr.mapping.map(to);
145
- tr.delete(mappedTo, mappedTo + toNode.nodeSize).insert(mappedTo, newLayout).setSelection(new NodeSelection(tr.doc.resolve(mappedTo))).scrollIntoView();
155
+ tr.delete(mappedTo, mappedTo + toNodeWithoutBreakout.nodeSize).insert(mappedTo, newLayout).setSelection(new NodeSelection(tr.doc.resolve(mappedTo))).scrollIntoView();
146
156
  }
147
157
  return tr;
148
158
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-block-controls",
3
- "version": "2.13.0",
3
+ "version": "2.13.2",
4
4
  "description": "Block controls plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -30,13 +30,13 @@
30
30
  ".": "./src/index.ts"
31
31
  },
32
32
  "dependencies": {
33
- "@atlaskit/adf-schema": "^42.3.1",
34
- "@atlaskit/editor-common": "^94.8.0",
33
+ "@atlaskit/adf-schema": "^44.2.0",
34
+ "@atlaskit/editor-common": "^94.9.0",
35
35
  "@atlaskit/editor-plugin-accessibility-utils": "^1.2.0",
36
36
  "@atlaskit/editor-plugin-analytics": "^1.10.0",
37
37
  "@atlaskit/editor-plugin-editor-disabled": "^1.3.0",
38
38
  "@atlaskit/editor-plugin-feature-flags": "^1.2.0",
39
- "@atlaskit/editor-plugin-quick-insert": "^1.5.0",
39
+ "@atlaskit/editor-plugin-quick-insert": "^1.6.0",
40
40
  "@atlaskit/editor-plugin-width": "^1.3.0",
41
41
  "@atlaskit/editor-prosemirror": "6.0.0",
42
42
  "@atlaskit/editor-shared-styles": "^3.1.0",
@@ -48,7 +48,7 @@
48
48
  "@atlaskit/pragmatic-drag-and-drop-react-drop-indicator": "^1.1.0",
49
49
  "@atlaskit/primitives": "^13.0.0",
50
50
  "@atlaskit/theme": "^14.0.0",
51
- "@atlaskit/tmp-editor-statsig": "^2.10.0",
51
+ "@atlaskit/tmp-editor-statsig": "^2.11.0",
52
52
  "@atlaskit/tokens": "^2.0.0",
53
53
  "@atlaskit/tooltip": "^18.8.0",
54
54
  "@babel/runtime": "^7.0.0",