@atlaskit/editor-plugin-paste 1.0.2 → 1.0.4

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,18 @@
1
1
  # @atlaskit/editor-plugin-paste
2
2
 
3
+ ## 1.0.4
4
+
5
+ ### Patch Changes
6
+
7
+ - [#74662](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/74662) [`03889d5b1256`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/03889d5b1256) - ED-22244 Allow copy paste of action within a panel into a panel
8
+ - Updated dependencies
9
+
10
+ ## 1.0.3
11
+
12
+ ### Patch Changes
13
+
14
+ - [#75368](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/75368) [`0a0d45e03ecf`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/0a0d45e03ecf) - ED-22245: Fixing the bug to paste links inside nested codeblock
15
+
3
16
  ## 1.0.2
4
17
 
5
18
  ### Patch Changes
@@ -40,6 +40,7 @@ var _utils3 = require("@atlaskit/editor-tables/utils");
40
40
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
41
41
  var _commands = require("./commands");
42
42
  var _edgeCases = require("./edge-cases");
43
+ var _lists = require("./edge-cases/lists");
43
44
  var _pluginFactory = require("./pm-plugins/plugin-factory");
44
45
  var _util = require("./util");
45
46
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
@@ -83,7 +84,7 @@ function handleMention(slice, schema) {
83
84
  }
84
85
  function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChangedTr) {
85
86
  return function (state, dispatch) {
86
- var _slice$content$firstC, _transformedSlice$con;
87
+ var _slice$content$firstC, _slice$content$firstC2, _transformedSlice$con;
87
88
  var schema = state.schema,
88
89
  selection = state.tr.selection;
89
90
  var codeMark = schema.marks.code,
@@ -101,23 +102,32 @@ function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChangedTr) {
101
102
  taskList = _schema$nodes.taskList,
102
103
  listItem = _schema$nodes.listItem,
103
104
  expand = _schema$nodes.expand,
104
- heading = _schema$nodes.heading;
105
+ heading = _schema$nodes.heading,
106
+ codeBlock = _schema$nodes.codeBlock;
105
107
  var selectionIsValidNode = state.selection instanceof _state.NodeSelection && ['decisionList', 'decisionItem', 'taskList', 'taskItem'].includes(state.selection.node.type.name);
106
108
  var selectionHasValidParentNode = (0, _utils2.hasParentNodeOfType)([decisionItem, taskItem, panel])(state.selection);
107
- var selectionIsPanel = (0, _utils2.hasParentNodeOfType)([panel])(state.selection);
109
+ var selectionIsCodeBlock = (0, _utils2.hasParentNodeOfType)([codeBlock])(state.selection);
110
+ var panelNode = (0, _util.isSelectionInsidePanel)(selection);
111
+ var selectionIsPanel = Boolean(panelNode);
112
+
113
+ // we avoid handling codeBlock-in-panel use case in this function
114
+ // returning false will allow code to flow into `handleCodeBlock` function
115
+ if (selectionIsPanel && selectionIsCodeBlock) {
116
+ return false;
117
+ }
108
118
 
109
119
  // Some types of content should be handled by the default handler, not this function.
110
120
  // Check through slice content to see if it contains an invalid node.
111
121
  var sliceIsInvalid = false;
122
+ var sliceHasTask = false;
112
123
  slice.content.nodesBetween(0, slice.content.size, function (node) {
113
124
  if (node.type === bulletList || node.type === orderedList || node.type === expand || node.type === heading || node.type === listItem) {
114
125
  sliceIsInvalid = true;
115
126
  }
116
127
  if (selectionIsPanel && node.type === taskList) {
117
- sliceIsInvalid = true;
128
+ sliceHasTask = true;
118
129
  }
119
130
  });
120
-
121
131
  // If the selection is a panel,
122
132
  // and the slice's first node is a paragraph
123
133
  // and it is not from a depth that would indicate it being from inside from another node (e.g. text from a decision)
@@ -135,6 +145,12 @@ function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChangedTr) {
135
145
  var transformedSlice = compose.apply(null, filters)(slice);
136
146
  var isFirstChildTaskNode = transformedSlice.content.firstChild.type === taskList || transformedSlice.content.firstChild.type === taskItem;
137
147
  var tr = (0, _history.closeHistory)(state.tr);
148
+ if (panelNode && sliceHasTask && ((_slice$content$firstC2 = slice.content.firstChild) === null || _slice$content$firstC2 === void 0 ? void 0 : _slice$content$firstC2.type) === panel && (0, _platformFeatureFlags.getBooleanFF)('platform.editor.handle-paste-for-action-in-panel') && (0, _util.isEmptyNode)(panelNode) && selection.$from.node() === selection.$to.node()) {
149
+ return Boolean((0, _lists.insertSliceInsideOfPanelNodeSelected)(panelNode)({
150
+ tr: tr,
151
+ slice: slice
152
+ }));
153
+ }
138
154
  var transformedSliceIsValidNode = (transformedSlice.content.firstChild.type.inlineContent || ['decisionList', 'decisionItem', 'taskItem', 'taskList', 'panel'].includes(transformedSlice.content.firstChild.type.name)) && (!(0, _utils.isInListItem)(state) || (0, _utils.isInListItem)(state) && isFirstChildTaskNode);
139
155
  // If the slice or the selection are valid nodes to handle,
140
156
  // and the slice is not a whole node (i.e. openStart is 1 and openEnd is 0)
@@ -189,7 +205,7 @@ function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChangedTr) {
189
205
  }
190
206
  function handlePasteNonNestableBlockNodesIntoList(slice) {
191
207
  return function (state, dispatch) {
192
- var _tr$doc$nodeAt, _slice$content$firstC2, _sliceContent$firstCh, _findParentNodeOfType;
208
+ var _tr$doc$nodeAt, _slice$content$firstC3, _sliceContent$firstCh, _findParentNodeOfType;
193
209
  var tr = state.tr;
194
210
  var selection = tr.selection;
195
211
  var $from = selection.$from,
@@ -264,7 +280,7 @@ function handlePasteNonNestableBlockNodesIntoList(slice) {
264
280
  }
265
281
 
266
282
  // handle the insertion of the slice
267
- if (((_slice$content$firstC2 = slice.content.firstChild) === null || _slice$content$firstC2 === void 0 ? void 0 : _slice$content$firstC2.type.name) === 'blockquote' && (0, _utils2.contains)(slice.content.firstChild, state.schema.nodes.listItem)) {
283
+ if (((_slice$content$firstC3 = slice.content.firstChild) === null || _slice$content$firstC3 === void 0 ? void 0 : _slice$content$firstC3.type.name) === 'blockquote' && (0, _utils2.contains)(slice.content.firstChild, state.schema.nodes.listItem)) {
268
284
  (0, _edgeCases.insertSliceForListsInsideBlockquote)({
269
285
  tr: tr,
270
286
  slice: slice
@@ -983,6 +999,6 @@ var handleSelectedTable = exports.handleSelectedTable = function handleSelectedT
983
999
  };
984
1000
  };
985
1001
  function checkTaskListInList(state, slice) {
986
- var _slice$content$firstC3;
987
- return Boolean((0, _utils.isInListItem)(state) && (0, _platformFeatureFlags.getBooleanFF)('platform.editor.allow-action-in-list') && ['taskList', 'taskItem'].includes(((_slice$content$firstC3 = slice.content.firstChild) === null || _slice$content$firstC3 === void 0 || (_slice$content$firstC3 = _slice$content$firstC3.type) === null || _slice$content$firstC3 === void 0 ? void 0 : _slice$content$firstC3.name) || ''));
1002
+ var _slice$content$firstC4;
1003
+ return Boolean((0, _utils.isInListItem)(state) && (0, _platformFeatureFlags.getBooleanFF)('platform.editor.allow-action-in-list') && ['taskList', 'taskItem'].includes(((_slice$content$firstC4 = slice.content.firstChild) === null || _slice$content$firstC4 === void 0 || (_slice$content$firstC4 = _slice$content$firstC4.type) === null || _slice$content$firstC4 === void 0 ? void 0 : _slice$content$firstC4.name) || ''));
988
1004
  }
@@ -14,8 +14,9 @@ import { getBooleanFF } from '@atlaskit/platform-feature-flags';
14
14
 
15
15
  import { startTrackingPastedMacroPositions, stopTrackingPastedMacroPositions } from './commands';
16
16
  import { insertSliceForLists, insertSliceForListsInsideBlockquote, insertSliceForTaskInsideList } from './edge-cases';
17
+ import { insertSliceInsideOfPanelNodeSelected } from './edge-cases/lists';
17
18
  import { getPluginState as getPastePluginState } from './pm-plugins/plugin-factory';
18
- import { addReplaceSelectedTableAnalytics, applyTextMarksToSlice, hasOnlyNodesOfType } from './util';
19
+ import { addReplaceSelectedTableAnalytics, applyTextMarksToSlice, hasOnlyNodesOfType, isEmptyNode, isSelectionInsidePanel } from './util';
19
20
 
20
21
  /** Helper type for single arg function */
21
22
 
@@ -49,7 +50,7 @@ export function handleMention(slice, schema) {
49
50
  }
50
51
  export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChangedTr) {
51
52
  return (state, dispatch) => {
52
- var _slice$content$firstC, _transformedSlice$con;
53
+ var _slice$content$firstC, _slice$content$firstC2, _transformedSlice$con;
53
54
  const {
54
55
  schema,
55
56
  tr: {
@@ -74,25 +75,34 @@ export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChange
74
75
  taskList,
75
76
  listItem,
76
77
  expand,
77
- heading
78
+ heading,
79
+ codeBlock
78
80
  }
79
81
  } = schema;
80
82
  const selectionIsValidNode = state.selection instanceof NodeSelection && ['decisionList', 'decisionItem', 'taskList', 'taskItem'].includes(state.selection.node.type.name);
81
83
  const selectionHasValidParentNode = hasParentNodeOfType([decisionItem, taskItem, panel])(state.selection);
82
- const selectionIsPanel = hasParentNodeOfType([panel])(state.selection);
84
+ const selectionIsCodeBlock = hasParentNodeOfType([codeBlock])(state.selection);
85
+ const panelNode = isSelectionInsidePanel(selection);
86
+ const selectionIsPanel = Boolean(panelNode);
87
+
88
+ // we avoid handling codeBlock-in-panel use case in this function
89
+ // returning false will allow code to flow into `handleCodeBlock` function
90
+ if (selectionIsPanel && selectionIsCodeBlock) {
91
+ return false;
92
+ }
83
93
 
84
94
  // Some types of content should be handled by the default handler, not this function.
85
95
  // Check through slice content to see if it contains an invalid node.
86
96
  let sliceIsInvalid = false;
97
+ let sliceHasTask = false;
87
98
  slice.content.nodesBetween(0, slice.content.size, node => {
88
99
  if (node.type === bulletList || node.type === orderedList || node.type === expand || node.type === heading || node.type === listItem) {
89
100
  sliceIsInvalid = true;
90
101
  }
91
102
  if (selectionIsPanel && node.type === taskList) {
92
- sliceIsInvalid = true;
103
+ sliceHasTask = true;
93
104
  }
94
105
  });
95
-
96
106
  // If the selection is a panel,
97
107
  // and the slice's first node is a paragraph
98
108
  // and it is not from a depth that would indicate it being from inside from another node (e.g. text from a decision)
@@ -110,6 +120,12 @@ export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChange
110
120
  const transformedSlice = compose.apply(null, filters)(slice);
111
121
  const isFirstChildTaskNode = transformedSlice.content.firstChild.type === taskList || transformedSlice.content.firstChild.type === taskItem;
112
122
  const tr = closeHistory(state.tr);
123
+ if (panelNode && sliceHasTask && ((_slice$content$firstC2 = slice.content.firstChild) === null || _slice$content$firstC2 === void 0 ? void 0 : _slice$content$firstC2.type) === panel && getBooleanFF('platform.editor.handle-paste-for-action-in-panel') && isEmptyNode(panelNode) && selection.$from.node() === selection.$to.node()) {
124
+ return Boolean(insertSliceInsideOfPanelNodeSelected(panelNode)({
125
+ tr,
126
+ slice
127
+ }));
128
+ }
113
129
  const transformedSliceIsValidNode = (transformedSlice.content.firstChild.type.inlineContent || ['decisionList', 'decisionItem', 'taskItem', 'taskList', 'panel'].includes(transformedSlice.content.firstChild.type.name)) && (!isInListItem(state) || isInListItem(state) && isFirstChildTaskNode);
114
130
  // If the slice or the selection are valid nodes to handle,
115
131
  // and the slice is not a whole node (i.e. openStart is 1 and openEnd is 0)
@@ -164,7 +180,7 @@ export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChange
164
180
  }
165
181
  export function handlePasteNonNestableBlockNodesIntoList(slice) {
166
182
  return (state, dispatch) => {
167
- var _tr$doc$nodeAt, _slice$content$firstC2, _sliceContent$firstCh, _findParentNodeOfType;
183
+ var _tr$doc$nodeAt, _slice$content$firstC3, _sliceContent$firstCh, _findParentNodeOfType;
168
184
  const {
169
185
  tr
170
186
  } = state;
@@ -246,7 +262,7 @@ export function handlePasteNonNestableBlockNodesIntoList(slice) {
246
262
  }
247
263
 
248
264
  // handle the insertion of the slice
249
- if (((_slice$content$firstC2 = slice.content.firstChild) === null || _slice$content$firstC2 === void 0 ? void 0 : _slice$content$firstC2.type.name) === 'blockquote' && contains(slice.content.firstChild, state.schema.nodes.listItem)) {
265
+ if (((_slice$content$firstC3 = slice.content.firstChild) === null || _slice$content$firstC3 === void 0 ? void 0 : _slice$content$firstC3.type.name) === 'blockquote' && contains(slice.content.firstChild, state.schema.nodes.listItem)) {
250
266
  insertSliceForListsInsideBlockquote({
251
267
  tr,
252
268
  slice
@@ -962,6 +978,6 @@ export const handleSelectedTable = editorAnalyticsAPI => slice => (state, dispat
962
978
  return false;
963
979
  };
964
980
  export function checkTaskListInList(state, slice) {
965
- var _slice$content$firstC3, _slice$content$firstC4;
966
- return Boolean(isInListItem(state) && getBooleanFF('platform.editor.allow-action-in-list') && ['taskList', 'taskItem'].includes(((_slice$content$firstC3 = slice.content.firstChild) === null || _slice$content$firstC3 === void 0 ? void 0 : (_slice$content$firstC4 = _slice$content$firstC3.type) === null || _slice$content$firstC4 === void 0 ? void 0 : _slice$content$firstC4.name) || ''));
981
+ var _slice$content$firstC4, _slice$content$firstC5;
982
+ return Boolean(isInListItem(state) && getBooleanFF('platform.editor.allow-action-in-list') && ['taskList', 'taskItem'].includes(((_slice$content$firstC4 = slice.content.firstChild) === null || _slice$content$firstC4 === void 0 ? void 0 : (_slice$content$firstC5 = _slice$content$firstC4.type) === null || _slice$content$firstC5 === void 0 ? void 0 : _slice$content$firstC5.name) || ''));
967
983
  }
@@ -22,8 +22,9 @@ import { getBooleanFF } from '@atlaskit/platform-feature-flags';
22
22
 
23
23
  import { startTrackingPastedMacroPositions, stopTrackingPastedMacroPositions } from './commands';
24
24
  import { insertSliceForLists, insertSliceForListsInsideBlockquote, insertSliceForTaskInsideList } from './edge-cases';
25
+ import { insertSliceInsideOfPanelNodeSelected } from './edge-cases/lists';
25
26
  import { getPluginState as getPastePluginState } from './pm-plugins/plugin-factory';
26
- import { addReplaceSelectedTableAnalytics, applyTextMarksToSlice, hasOnlyNodesOfType } from './util';
27
+ import { addReplaceSelectedTableAnalytics, applyTextMarksToSlice, hasOnlyNodesOfType, isEmptyNode, isSelectionInsidePanel } from './util';
27
28
 
28
29
  /** Helper type for single arg function */
29
30
 
@@ -61,7 +62,7 @@ export function handleMention(slice, schema) {
61
62
  }
62
63
  export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChangedTr) {
63
64
  return function (state, dispatch) {
64
- var _slice$content$firstC, _transformedSlice$con;
65
+ var _slice$content$firstC, _slice$content$firstC2, _transformedSlice$con;
65
66
  var schema = state.schema,
66
67
  selection = state.tr.selection;
67
68
  var codeMark = schema.marks.code,
@@ -79,23 +80,32 @@ export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChange
79
80
  taskList = _schema$nodes.taskList,
80
81
  listItem = _schema$nodes.listItem,
81
82
  expand = _schema$nodes.expand,
82
- heading = _schema$nodes.heading;
83
+ heading = _schema$nodes.heading,
84
+ codeBlock = _schema$nodes.codeBlock;
83
85
  var selectionIsValidNode = state.selection instanceof NodeSelection && ['decisionList', 'decisionItem', 'taskList', 'taskItem'].includes(state.selection.node.type.name);
84
86
  var selectionHasValidParentNode = hasParentNodeOfType([decisionItem, taskItem, panel])(state.selection);
85
- var selectionIsPanel = hasParentNodeOfType([panel])(state.selection);
87
+ var selectionIsCodeBlock = hasParentNodeOfType([codeBlock])(state.selection);
88
+ var panelNode = isSelectionInsidePanel(selection);
89
+ var selectionIsPanel = Boolean(panelNode);
90
+
91
+ // we avoid handling codeBlock-in-panel use case in this function
92
+ // returning false will allow code to flow into `handleCodeBlock` function
93
+ if (selectionIsPanel && selectionIsCodeBlock) {
94
+ return false;
95
+ }
86
96
 
87
97
  // Some types of content should be handled by the default handler, not this function.
88
98
  // Check through slice content to see if it contains an invalid node.
89
99
  var sliceIsInvalid = false;
100
+ var sliceHasTask = false;
90
101
  slice.content.nodesBetween(0, slice.content.size, function (node) {
91
102
  if (node.type === bulletList || node.type === orderedList || node.type === expand || node.type === heading || node.type === listItem) {
92
103
  sliceIsInvalid = true;
93
104
  }
94
105
  if (selectionIsPanel && node.type === taskList) {
95
- sliceIsInvalid = true;
106
+ sliceHasTask = true;
96
107
  }
97
108
  });
98
-
99
109
  // If the selection is a panel,
100
110
  // and the slice's first node is a paragraph
101
111
  // and it is not from a depth that would indicate it being from inside from another node (e.g. text from a decision)
@@ -113,6 +123,12 @@ export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChange
113
123
  var transformedSlice = compose.apply(null, filters)(slice);
114
124
  var isFirstChildTaskNode = transformedSlice.content.firstChild.type === taskList || transformedSlice.content.firstChild.type === taskItem;
115
125
  var tr = closeHistory(state.tr);
126
+ if (panelNode && sliceHasTask && ((_slice$content$firstC2 = slice.content.firstChild) === null || _slice$content$firstC2 === void 0 ? void 0 : _slice$content$firstC2.type) === panel && getBooleanFF('platform.editor.handle-paste-for-action-in-panel') && isEmptyNode(panelNode) && selection.$from.node() === selection.$to.node()) {
127
+ return Boolean(insertSliceInsideOfPanelNodeSelected(panelNode)({
128
+ tr: tr,
129
+ slice: slice
130
+ }));
131
+ }
116
132
  var transformedSliceIsValidNode = (transformedSlice.content.firstChild.type.inlineContent || ['decisionList', 'decisionItem', 'taskItem', 'taskList', 'panel'].includes(transformedSlice.content.firstChild.type.name)) && (!isInListItem(state) || isInListItem(state) && isFirstChildTaskNode);
117
133
  // If the slice or the selection are valid nodes to handle,
118
134
  // and the slice is not a whole node (i.e. openStart is 1 and openEnd is 0)
@@ -167,7 +183,7 @@ export function handlePasteIntoTaskOrDecisionOrPanel(slice, queueCardsFromChange
167
183
  }
168
184
  export function handlePasteNonNestableBlockNodesIntoList(slice) {
169
185
  return function (state, dispatch) {
170
- var _tr$doc$nodeAt, _slice$content$firstC2, _sliceContent$firstCh, _findParentNodeOfType;
186
+ var _tr$doc$nodeAt, _slice$content$firstC3, _sliceContent$firstCh, _findParentNodeOfType;
171
187
  var tr = state.tr;
172
188
  var selection = tr.selection;
173
189
  var $from = selection.$from,
@@ -242,7 +258,7 @@ export function handlePasteNonNestableBlockNodesIntoList(slice) {
242
258
  }
243
259
 
244
260
  // handle the insertion of the slice
245
- if (((_slice$content$firstC2 = slice.content.firstChild) === null || _slice$content$firstC2 === void 0 ? void 0 : _slice$content$firstC2.type.name) === 'blockquote' && contains(slice.content.firstChild, state.schema.nodes.listItem)) {
261
+ if (((_slice$content$firstC3 = slice.content.firstChild) === null || _slice$content$firstC3 === void 0 ? void 0 : _slice$content$firstC3.type.name) === 'blockquote' && contains(slice.content.firstChild, state.schema.nodes.listItem)) {
246
262
  insertSliceForListsInsideBlockquote({
247
263
  tr: tr,
248
264
  slice: slice
@@ -961,6 +977,6 @@ export var handleSelectedTable = function handleSelectedTable(editorAnalyticsAPI
961
977
  };
962
978
  };
963
979
  export function checkTaskListInList(state, slice) {
964
- var _slice$content$firstC3;
965
- return Boolean(isInListItem(state) && getBooleanFF('platform.editor.allow-action-in-list') && ['taskList', 'taskItem'].includes(((_slice$content$firstC3 = slice.content.firstChild) === null || _slice$content$firstC3 === void 0 || (_slice$content$firstC3 = _slice$content$firstC3.type) === null || _slice$content$firstC3 === void 0 ? void 0 : _slice$content$firstC3.name) || ''));
980
+ var _slice$content$firstC4;
981
+ return Boolean(isInListItem(state) && getBooleanFF('platform.editor.allow-action-in-list') && ['taskList', 'taskItem'].includes(((_slice$content$firstC4 = slice.content.firstChild) === null || _slice$content$firstC4 === void 0 || (_slice$content$firstC4 = _slice$content$firstC4.type) === null || _slice$content$firstC4 === void 0 ? void 0 : _slice$content$firstC4.name) || ''));
966
982
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-paste",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "Paste plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -33,7 +33,7 @@
33
33
  ".": "./src/index.ts"
34
34
  },
35
35
  "dependencies": {
36
- "@atlaskit/editor-common": "^78.3.0",
36
+ "@atlaskit/editor-common": "^78.4.0",
37
37
  "@atlaskit/editor-markdown-transformer": "^5.3.0",
38
38
  "@atlaskit/editor-plugin-analytics": "^1.0.0",
39
39
  "@atlaskit/editor-plugin-annotation": "^1.0.0",
@@ -125,6 +125,9 @@
125
125
  },
126
126
  "platform.editor.media.fix-copy-paste-excel_62g4s": {
127
127
  "type": "boolean"
128
+ },
129
+ "platform.editor.handle-paste-for-action-in-panel": {
130
+ "type": "boolean"
128
131
  }
129
132
  }
130
133
  }