@atlaskit/editor-core 187.31.6 → 187.32.0

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.
Files changed (203) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/dist/cjs/create-editor/ReactEditorViewInternal.js +1 -1
  3. package/dist/cjs/plugins/analytics/plugin.js +14 -12
  4. package/dist/cjs/plugins/annotation/index.js +15 -13
  5. package/dist/cjs/plugins/avatar-group/index.js +16 -14
  6. package/dist/cjs/plugins/base/plugin.js +12 -10
  7. package/dist/cjs/plugins/before-primaryToolbar/index.js +3 -2
  8. package/dist/cjs/plugins/block-type/index.js +32 -30
  9. package/dist/cjs/plugins/breakout/index.js +10 -8
  10. package/dist/cjs/plugins/caption/index.js +7 -6
  11. package/dist/cjs/plugins/caption/pm-plugins/main.js +2 -2
  12. package/dist/cjs/plugins/code-bidi-warning/index.js +2 -4
  13. package/dist/cjs/plugins/code-block/index.js +14 -11
  14. package/dist/cjs/plugins/code-block/pm-plugins/ide-ux.js +2 -2
  15. package/dist/cjs/plugins/collab-edit/index.js +16 -14
  16. package/dist/cjs/plugins/collab-edit/plugin.js +5 -5
  17. package/dist/cjs/plugins/date/index.js +18 -17
  18. package/dist/cjs/plugins/emoji/index.js +35 -33
  19. package/dist/cjs/plugins/expand/index.js +14 -13
  20. package/dist/cjs/plugins/extension/index.js +16 -15
  21. package/dist/cjs/plugins/extension/pm-plugins/main.js +4 -4
  22. package/dist/cjs/plugins/extension/ui/Extension/Extension/index.js +11 -2
  23. package/dist/cjs/plugins/feedback-dialog/index.js +5 -4
  24. package/dist/cjs/plugins/find-replace/index.js +17 -15
  25. package/dist/cjs/plugins/floating-toolbar/index.js +31 -30
  26. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +3 -3
  27. package/dist/cjs/plugins/help-dialog/index.js +18 -17
  28. package/dist/cjs/plugins/insert-block/index.js +52 -51
  29. package/dist/cjs/plugins/insert-block/ui/ToolbarInsertBlock/index.js +11 -11
  30. package/dist/cjs/plugins/layout/index.js +15 -14
  31. package/dist/cjs/plugins/max-content-size/index.js +4 -3
  32. package/dist/cjs/plugins/media/index.js +49 -47
  33. package/dist/cjs/plugins/media/nodeviews/mediaSingle.js +2 -2
  34. package/dist/cjs/plugins/media/pm-plugins/main.js +7 -7
  35. package/dist/cjs/plugins/media/toolbar/index.js +29 -24
  36. package/dist/cjs/plugins/media/toolbar/linking.js +4 -4
  37. package/dist/cjs/plugins/media/toolbar/utils.js +22 -2
  38. package/dist/cjs/plugins/media/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +4 -4
  39. package/dist/cjs/plugins/media/ui/ResizableMediaSingle/index.js +2 -2
  40. package/dist/cjs/plugins/mentions/index.js +17 -15
  41. package/dist/cjs/plugins/panel/index.js +13 -12
  42. package/dist/cjs/plugins/paste/index.js +13 -10
  43. package/dist/cjs/plugins/paste/pm-plugins/analytics.js +8 -8
  44. package/dist/cjs/plugins/paste/pm-plugins/main.js +10 -10
  45. package/dist/cjs/plugins/placeholder/index.js +9 -7
  46. package/dist/cjs/plugins/placeholder-text/index.js +23 -16
  47. package/dist/cjs/plugins/quick-insert/index.js +13 -12
  48. package/dist/cjs/plugins/rule/index.js +8 -7
  49. package/dist/cjs/plugins/save-on-enter/index.js +4 -3
  50. package/dist/cjs/plugins/selection/index.js +5 -4
  51. package/dist/cjs/plugins/status/index.js +20 -14
  52. package/dist/cjs/plugins/submit-editor/index.js +4 -3
  53. package/dist/cjs/plugins/tasks-and-decisions/index.js +6 -5
  54. package/dist/cjs/plugins/text-color/index.js +17 -15
  55. package/dist/cjs/plugins/toolbar-lists-indentation/index.js +31 -26
  56. package/dist/cjs/plugins/toolbar-lists-indentation/pm-plugins/indentation-buttons.js +1 -1
  57. package/dist/cjs/plugins/toolbar-lists-indentation/ui/onItemActivated.js +4 -4
  58. package/dist/cjs/plugins/type-ahead/index.js +21 -20
  59. package/dist/cjs/ui/ElementBrowser/InsertMenu.js +11 -11
  60. package/dist/cjs/ui/ToolbarFeedback/index.js +1 -1
  61. package/dist/cjs/use-preset.js +2 -2
  62. package/dist/cjs/version-wrapper.js +1 -1
  63. package/dist/es2019/create-editor/ReactEditorViewInternal.js +1 -1
  64. package/dist/es2019/plugins/analytics/plugin.js +11 -8
  65. package/dist/es2019/plugins/annotation/index.js +4 -1
  66. package/dist/es2019/plugins/avatar-group/index.js +8 -5
  67. package/dist/es2019/plugins/base/plugin.js +6 -3
  68. package/dist/es2019/plugins/before-primaryToolbar/index.js +4 -2
  69. package/dist/es2019/plugins/block-type/index.js +14 -11
  70. package/dist/es2019/plugins/breakout/index.js +6 -3
  71. package/dist/es2019/plugins/caption/index.js +3 -1
  72. package/dist/es2019/plugins/caption/pm-plugins/main.js +2 -2
  73. package/dist/es2019/plugins/code-bidi-warning/index.js +2 -4
  74. package/dist/es2019/plugins/code-block/index.js +15 -9
  75. package/dist/es2019/plugins/code-block/pm-plugins/ide-ux.js +2 -2
  76. package/dist/es2019/plugins/collab-edit/index.js +9 -6
  77. package/dist/es2019/plugins/collab-edit/plugin.js +5 -5
  78. package/dist/es2019/plugins/date/index.js +6 -3
  79. package/dist/es2019/plugins/emoji/index.js +16 -13
  80. package/dist/es2019/plugins/expand/index.js +7 -4
  81. package/dist/es2019/plugins/extension/index.js +11 -8
  82. package/dist/es2019/plugins/extension/pm-plugins/main.js +4 -4
  83. package/dist/es2019/plugins/extension/ui/Extension/Extension/index.js +13 -2
  84. package/dist/es2019/plugins/feedback-dialog/index.js +4 -2
  85. package/dist/es2019/plugins/find-replace/index.js +8 -5
  86. package/dist/es2019/plugins/floating-toolbar/index.js +6 -4
  87. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +3 -3
  88. package/dist/es2019/plugins/help-dialog/index.js +9 -6
  89. package/dist/es2019/plugins/insert-block/index.js +12 -9
  90. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +11 -11
  91. package/dist/es2019/plugins/layout/index.js +8 -5
  92. package/dist/es2019/plugins/max-content-size/index.js +3 -1
  93. package/dist/es2019/plugins/media/index.js +14 -10
  94. package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +2 -2
  95. package/dist/es2019/plugins/media/pm-plugins/main.js +7 -7
  96. package/dist/es2019/plugins/media/toolbar/index.js +29 -25
  97. package/dist/es2019/plugins/media/toolbar/linking.js +4 -4
  98. package/dist/es2019/plugins/media/toolbar/utils.js +18 -0
  99. package/dist/es2019/plugins/media/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +4 -4
  100. package/dist/es2019/plugins/media/ui/ResizableMediaSingle/index.js +2 -2
  101. package/dist/es2019/plugins/mentions/index.js +9 -6
  102. package/dist/es2019/plugins/panel/index.js +5 -2
  103. package/dist/es2019/plugins/paste/index.js +9 -5
  104. package/dist/es2019/plugins/paste/pm-plugins/analytics.js +8 -8
  105. package/dist/es2019/plugins/paste/pm-plugins/main.js +10 -10
  106. package/dist/es2019/plugins/placeholder/index.js +10 -7
  107. package/dist/es2019/plugins/placeholder-text/index.js +12 -4
  108. package/dist/es2019/plugins/quick-insert/index.js +3 -1
  109. package/dist/es2019/plugins/rule/index.js +5 -3
  110. package/dist/es2019/plugins/save-on-enter/index.js +3 -1
  111. package/dist/es2019/plugins/selection/index.js +3 -1
  112. package/dist/es2019/plugins/status/index.js +11 -3
  113. package/dist/es2019/plugins/submit-editor/index.js +3 -1
  114. package/dist/es2019/plugins/tasks-and-decisions/index.js +6 -4
  115. package/dist/es2019/plugins/text-color/index.js +6 -3
  116. package/dist/es2019/plugins/toolbar-lists-indentation/index.js +9 -5
  117. package/dist/es2019/plugins/toolbar-lists-indentation/pm-plugins/indentation-buttons.js +1 -1
  118. package/dist/es2019/plugins/toolbar-lists-indentation/ui/onItemActivated.js +4 -4
  119. package/dist/es2019/plugins/type-ahead/index.js +3 -1
  120. package/dist/es2019/ui/ElementBrowser/InsertMenu.js +11 -11
  121. package/dist/es2019/ui/ToolbarFeedback/index.js +1 -1
  122. package/dist/es2019/use-preset.js +2 -2
  123. package/dist/es2019/version-wrapper.js +1 -1
  124. package/dist/esm/create-editor/ReactEditorViewInternal.js +1 -1
  125. package/dist/esm/plugins/analytics/plugin.js +14 -12
  126. package/dist/esm/plugins/annotation/index.js +15 -13
  127. package/dist/esm/plugins/avatar-group/index.js +16 -14
  128. package/dist/esm/plugins/base/plugin.js +12 -10
  129. package/dist/esm/plugins/before-primaryToolbar/index.js +3 -2
  130. package/dist/esm/plugins/block-type/index.js +32 -30
  131. package/dist/esm/plugins/breakout/index.js +10 -8
  132. package/dist/esm/plugins/caption/index.js +7 -6
  133. package/dist/esm/plugins/caption/pm-plugins/main.js +2 -2
  134. package/dist/esm/plugins/code-bidi-warning/index.js +2 -4
  135. package/dist/esm/plugins/code-block/index.js +14 -11
  136. package/dist/esm/plugins/code-block/pm-plugins/ide-ux.js +2 -2
  137. package/dist/esm/plugins/collab-edit/index.js +16 -14
  138. package/dist/esm/plugins/collab-edit/plugin.js +5 -5
  139. package/dist/esm/plugins/date/index.js +18 -17
  140. package/dist/esm/plugins/emoji/index.js +35 -33
  141. package/dist/esm/plugins/expand/index.js +14 -13
  142. package/dist/esm/plugins/extension/index.js +16 -15
  143. package/dist/esm/plugins/extension/pm-plugins/main.js +4 -4
  144. package/dist/esm/plugins/extension/ui/Extension/Extension/index.js +11 -2
  145. package/dist/esm/plugins/feedback-dialog/index.js +5 -4
  146. package/dist/esm/plugins/find-replace/index.js +17 -15
  147. package/dist/esm/plugins/floating-toolbar/index.js +31 -30
  148. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +3 -3
  149. package/dist/esm/plugins/help-dialog/index.js +18 -17
  150. package/dist/esm/plugins/insert-block/index.js +52 -51
  151. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +11 -11
  152. package/dist/esm/plugins/layout/index.js +15 -14
  153. package/dist/esm/plugins/max-content-size/index.js +4 -3
  154. package/dist/esm/plugins/media/index.js +49 -47
  155. package/dist/esm/plugins/media/nodeviews/mediaSingle.js +2 -2
  156. package/dist/esm/plugins/media/pm-plugins/main.js +7 -7
  157. package/dist/esm/plugins/media/toolbar/index.js +30 -25
  158. package/dist/esm/plugins/media/toolbar/linking.js +4 -4
  159. package/dist/esm/plugins/media/toolbar/utils.js +19 -0
  160. package/dist/esm/plugins/media/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +4 -4
  161. package/dist/esm/plugins/media/ui/ResizableMediaSingle/index.js +2 -2
  162. package/dist/esm/plugins/mentions/index.js +17 -15
  163. package/dist/esm/plugins/panel/index.js +13 -12
  164. package/dist/esm/plugins/paste/index.js +13 -10
  165. package/dist/esm/plugins/paste/pm-plugins/analytics.js +8 -8
  166. package/dist/esm/plugins/paste/pm-plugins/main.js +10 -10
  167. package/dist/esm/plugins/placeholder/index.js +9 -7
  168. package/dist/esm/plugins/placeholder-text/index.js +23 -16
  169. package/dist/esm/plugins/quick-insert/index.js +13 -12
  170. package/dist/esm/plugins/rule/index.js +8 -7
  171. package/dist/esm/plugins/save-on-enter/index.js +4 -3
  172. package/dist/esm/plugins/selection/index.js +5 -4
  173. package/dist/esm/plugins/status/index.js +20 -14
  174. package/dist/esm/plugins/submit-editor/index.js +4 -3
  175. package/dist/esm/plugins/tasks-and-decisions/index.js +6 -5
  176. package/dist/esm/plugins/text-color/index.js +17 -15
  177. package/dist/esm/plugins/toolbar-lists-indentation/index.js +31 -26
  178. package/dist/esm/plugins/toolbar-lists-indentation/pm-plugins/indentation-buttons.js +1 -1
  179. package/dist/esm/plugins/toolbar-lists-indentation/ui/onItemActivated.js +4 -4
  180. package/dist/esm/plugins/type-ahead/index.js +21 -20
  181. package/dist/esm/ui/ElementBrowser/InsertMenu.js +11 -11
  182. package/dist/esm/ui/ToolbarFeedback/index.js +1 -1
  183. package/dist/esm/use-preset.js +2 -2
  184. package/dist/esm/version-wrapper.js +1 -1
  185. package/dist/types/labs/next/presets/default.d.ts +62 -618
  186. package/dist/types/plugins/avatar-group/index.d.ts +1 -1
  187. package/dist/types/plugins/before-primaryToolbar/index.d.ts +1 -1
  188. package/dist/types/plugins/caption/index.d.ts +1 -1
  189. package/dist/types/plugins/media/toolbar/utils.d.ts +2 -1
  190. package/dist/types/plugins/media/types.d.ts +1 -0
  191. package/dist/types/plugins/selection/index.d.ts +2 -2
  192. package/dist/types/plugins/text-color/index.d.ts +3 -2
  193. package/dist/types/use-preset.d.ts +2 -2
  194. package/dist/types-ts4.5/labs/next/presets/default.d.ts +96 -716
  195. package/dist/types-ts4.5/plugins/avatar-group/index.d.ts +1 -1
  196. package/dist/types-ts4.5/plugins/before-primaryToolbar/index.d.ts +1 -1
  197. package/dist/types-ts4.5/plugins/caption/index.d.ts +1 -1
  198. package/dist/types-ts4.5/plugins/media/toolbar/utils.d.ts +2 -1
  199. package/dist/types-ts4.5/plugins/media/types.d.ts +1 -0
  200. package/dist/types-ts4.5/plugins/selection/index.d.ts +2 -2
  201. package/dist/types-ts4.5/plugins/text-color/index.d.ts +3 -2
  202. package/dist/types-ts4.5/use-preset.d.ts +2 -2
  203. package/package.json +4 -4
@@ -22,7 +22,7 @@ import { messages } from '@atlaskit/media-ui';
22
22
  import { cardMessages } from '@atlaskit/editor-common/messages';
23
23
  import { getBooleanFF } from '@atlaskit/platform-feature-flags';
24
24
  import { FilePreviewItem } from './filePreviewItem';
25
- import { downloadMedia, getSelectedMediaSingle, removeMediaGroupNode, getPixelWidthOfElement } from './utils';
25
+ import { downloadMedia, getSelectedMediaSingle, removeMediaGroupNode, getPixelWidthOfElement, calcNewLayout } from './utils';
26
26
  import { isVideo } from '../utils/media-single';
27
27
  import { changeInlineToMediaCard, changeMediaCardToInline, removeInlineCard, setBorderMark, toggleBorderMark } from './commands';
28
28
  import { MediaInlineNodeSelector, MediaSingleNodeSelector } from '../nodeviews/styles';
@@ -200,7 +200,7 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
200
200
  allowResizingInTables = options.allowResizingInTables,
201
201
  allowAltTextOnImages = options.allowAltTextOnImages;
202
202
  var toolbarButtons = [];
203
- var _ref = (_pluginInjectionApi$d = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : pluginInjectionApi.dependencies.decorations.actions) !== null && _pluginInjectionApi$d !== void 0 ? _pluginInjectionApi$d : {},
203
+ var _ref = (_pluginInjectionApi$d = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : pluginInjectionApi.decorations.actions) !== null && _pluginInjectionApi$d !== void 0 ? _pluginInjectionApi$d : {},
204
204
  hoverDecoration = _ref.hoverDecoration;
205
205
  if (shouldShowImageBorder(state)) {
206
206
  toolbarButtons.push({
@@ -215,12 +215,12 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
215
215
  var borderMark = currentMediaNodeBorderMark(state);
216
216
  return /*#__PURE__*/React.createElement(ImageBorderItem, {
217
217
  toggleBorder: function toggleBorder() {
218
- var _pluginInjectionApi$d2, _pluginInjectionApi$d3;
219
- toggleBorderMark(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d2 = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d2 === void 0 ? void 0 : (_pluginInjectionApi$d3 = _pluginInjectionApi$d2.analytics) === null || _pluginInjectionApi$d3 === void 0 ? void 0 : _pluginInjectionApi$d3.actions)(state, dispatch);
218
+ var _pluginInjectionApi$a;
219
+ toggleBorderMark(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a === void 0 ? void 0 : _pluginInjectionApi$a.actions)(state, dispatch);
220
220
  },
221
221
  setBorder: function setBorder(attrs) {
222
- var _pluginInjectionApi$d4, _pluginInjectionApi$d5;
223
- setBorderMark(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d4 = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d4 === void 0 ? void 0 : (_pluginInjectionApi$d5 = _pluginInjectionApi$d4.analytics) === null || _pluginInjectionApi$d5 === void 0 ? void 0 : _pluginInjectionApi$d5.actions)(attrs)(state, dispatch);
222
+ var _pluginInjectionApi$a2;
223
+ setBorderMark(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a2 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a2 === void 0 ? void 0 : _pluginInjectionApi$a2.actions)(attrs)(state, dispatch);
224
224
  },
225
225
  showSomewhatSemanticTooltips: getEditorFeatureFlags === null || getEditorFeatureFlags === void 0 ? void 0 : getEditorFeatureFlags().useSomewhatSemanticTextColorNames,
226
226
  borderMark: borderMark,
@@ -233,8 +233,8 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
233
233
  });
234
234
  }
235
235
  if (allowAdvancedToolBarOptions) {
236
- var _pluginInjectionApi$d6;
237
- var widthPlugin = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : pluginInjectionApi.dependencies.width;
236
+ var _pluginInjectionApi$a3;
237
+ var widthPlugin = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : pluginInjectionApi.width;
238
238
  var isChangingLayoutDisabled = false;
239
239
  if (getBooleanFF('platform.editor.media.extended-resize-experience')) {
240
240
  var _widthPlugin$sharedSt;
@@ -247,7 +247,7 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
247
247
  }
248
248
  }
249
249
  }
250
- var layoutButtons = buildLayoutButtons(state, intl, state.schema.nodes.mediaSingle, widthPlugin, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d6 = pluginInjectionApi.dependencies.analytics) === null || _pluginInjectionApi$d6 === void 0 ? void 0 : _pluginInjectionApi$d6.actions, allowResizing, allowResizingInTables, true, true, isChangingLayoutDisabled);
250
+ var layoutButtons = buildLayoutButtons(state, intl, state.schema.nodes.mediaSingle, widthPlugin, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a3 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a3 === void 0 ? void 0 : _pluginInjectionApi$a3.actions, allowResizing, allowResizingInTables, true, true, isChangingLayoutDisabled);
251
251
  toolbarButtons = [].concat(_toConsumableArray(toolbarButtons), _toConsumableArray(layoutButtons));
252
252
  if (layoutButtons.length) {
253
253
  toolbarButtons.push({
@@ -273,7 +273,10 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
273
273
  if (!selectedMediaNode) {
274
274
  return null;
275
275
  }
276
- var widthType = selectedMediaSingleNode.node.attrs.widthType;
276
+ var _selectedMediaSingleN = selectedMediaSingleNode.node.attrs,
277
+ mediaSingleWidth = _selectedMediaSingleN.width,
278
+ widthType = _selectedMediaSingleN.widthType,
279
+ layout = _selectedMediaSingleN.layout;
277
280
  var _selectedMediaNode$at = selectedMediaNode.attrs,
278
281
  mediaWidth = _selectedMediaNode$at.width,
279
282
  mediaHeight = _selectedMediaNode$at.height;
@@ -282,9 +285,10 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
282
285
  var isVideoFile = isVideo(selectedMediaNode.attrs.__fileMimeType);
283
286
  var minWidth = calcMinWidth(isVideoFile, maxWidthForNestedNode || contentWidth);
284
287
  var isLegacy = widthType !== 'pixel';
285
- var pixelWidth = getPixelWidthOfElement(editorView, selectedMediaSingleNode.pos + 1,
288
+ var pixelWidthFromElement = getPixelWidthOfElement(editorView, selectedMediaSingleNode.pos + 1,
286
289
  // get pos of media node
287
290
  mediaWidth || DEFAULT_IMAGE_WIDTH);
291
+ var pixelWidth = isLegacy ? pixelWidthFromElement : mediaSingleWidth;
288
292
  return /*#__PURE__*/React.createElement(PixelEntry, {
289
293
  intl: intl,
290
294
  width: pluginState.isResizing ? pluginState.resizingWidth : pixelWidth,
@@ -311,7 +315,8 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
311
315
  var width = _ref2.width;
312
316
  var tr = state.tr.setNodeMarkup(selectedMediaSingleNode.pos, undefined, _objectSpread(_objectSpread({}, selectedMediaSingleNode.node.attrs), {}, {
313
317
  width: width,
314
- widthType: 'pixel'
318
+ widthType: 'pixel',
319
+ layout: calcNewLayout(width, layout, contentWidth, options.fullWidthEnabled)
315
320
  }));
316
321
  tr.setMeta('scrollIntoView', false);
317
322
  tr.setSelection(NodeSelection.create(tr.doc, selectedMediaSingleNode.pos));
@@ -319,7 +324,7 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
319
324
  },
320
325
  onMigrate: function onMigrate() {
321
326
  var tr = state.tr.setNodeMarkup(selectedMediaSingleNode.pos, undefined, _objectSpread(_objectSpread({}, selectedMediaSingleNode.node.attrs), {}, {
322
- width: pixelWidth,
327
+ width: pixelWidthFromElement,
323
328
  widthType: 'pixel'
324
329
  }));
325
330
  tr.setMeta('scrollIntoView', false);
@@ -370,10 +375,10 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
370
375
  };
371
376
  var openLink = function openLink() {
372
377
  if (editorView) {
373
- var _pluginInjectionApi$d7;
378
+ var _pluginInjectionApi$a4;
374
379
  var tr = editorView.state.tr,
375
380
  dispatch = editorView.dispatch;
376
- pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d7 = pluginInjectionApi.dependencies.analytics) === null || _pluginInjectionApi$d7 === void 0 ? void 0 : _pluginInjectionApi$d7.actions.attachAnalyticsEvent({
381
+ pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a4 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a4 === void 0 ? void 0 : _pluginInjectionApi$a4.actions.attachAnalyticsEvent({
377
382
  eventType: EVENT_TYPE.TRACK,
378
383
  action: ACTION.VISITED,
379
384
  actionSubject: ACTION_SUBJECT.MEDIA,
@@ -399,8 +404,8 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
399
404
  }
400
405
  }
401
406
  if (allowAltTextOnImages) {
402
- var _pluginInjectionApi$d8;
403
- toolbarButtons.push(altTextButton(intl, state, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d8 = pluginInjectionApi.dependencies.analytics) === null || _pluginInjectionApi$d8 === void 0 ? void 0 : _pluginInjectionApi$d8.actions), {
407
+ var _pluginInjectionApi$a5;
408
+ toolbarButtons.push(altTextButton(intl, state, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a5 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a5 === void 0 ? void 0 : _pluginInjectionApi$a5.actions), {
404
409
  type: 'separator'
405
410
  });
406
411
  }
@@ -431,7 +436,7 @@ var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToo
431
436
  return items;
432
437
  };
433
438
  export var floatingToolbar = function floatingToolbar(state, intl) {
434
- var _pluginInjectionApi$d9;
439
+ var _pluginInjectionApi$d2;
435
440
  var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
436
441
  var pluginInjectionApi = arguments.length > 3 ? arguments[3] : undefined;
437
442
  var _state$schema$nodes = state.schema.nodes,
@@ -447,7 +452,7 @@ export var floatingToolbar = function floatingToolbar(state, intl) {
447
452
  getEditorFeatureFlags = options.getEditorFeatureFlags;
448
453
  var mediaPluginState = stateKey.getState(state);
449
454
  var mediaLinkingState = getMediaLinkingState(state);
450
- var _ref3 = (_pluginInjectionApi$d9 = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : pluginInjectionApi.dependencies.decorations.actions) !== null && _pluginInjectionApi$d9 !== void 0 ? _pluginInjectionApi$d9 : {},
455
+ var _ref3 = (_pluginInjectionApi$d2 = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : pluginInjectionApi.decorations.actions) !== null && _pluginInjectionApi$d2 !== void 0 ? _pluginInjectionApi$d2 : {},
451
456
  hoverDecoration = _ref3.hoverDecoration;
452
457
  if (!mediaPluginState) {
453
458
  return;
@@ -469,10 +474,10 @@ export var floatingToolbar = function floatingToolbar(state, intl) {
469
474
  if (allowAltTextOnImages) {
470
475
  var mediaAltTextPluginState = getMediaAltTextPluginState(state);
471
476
  if (mediaAltTextPluginState.isAltTextEditorOpen) {
472
- var _pluginInjectionApi$d10;
477
+ var _pluginInjectionApi$f;
473
478
  return getAltTextToolbar(baseToolbar, {
474
479
  altTextValidator: altTextValidator,
475
- forceFocusSelector: pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d10 = pluginInjectionApi.dependencies.floatingToolbar.actions) === null || _pluginInjectionApi$d10 === void 0 ? void 0 : _pluginInjectionApi$d10.forceFocusSelector
480
+ forceFocusSelector: pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$f = pluginInjectionApi.floatingToolbar.actions) === null || _pluginInjectionApi$f === void 0 ? void 0 : _pluginInjectionApi$f.forceFocusSelector
476
481
  });
477
482
  }
478
483
  }
@@ -483,22 +488,22 @@ export var floatingToolbar = function floatingToolbar(state, intl) {
483
488
  selectedNodeType = state.selection.node.type;
484
489
  }
485
490
  if (allowMediaInline && (parentMediaGroupNode === null || parentMediaGroupNode === void 0 ? void 0 : parentMediaGroupNode.node.type) === mediaGroup) {
486
- var _pluginInjectionApi$d11, _pluginInjectionApi$d12;
491
+ var _pluginInjectionApi$a6;
487
492
  var mediaOffset = state.selection.$from.parentOffset + 1;
488
493
  baseToolbar.getDomRef = function () {
489
494
  var _mediaPluginState$ele;
490
495
  var selector = mediaFilmstripItemDOMSelector(mediaOffset);
491
496
  return (_mediaPluginState$ele = mediaPluginState.element) === null || _mediaPluginState$ele === void 0 ? void 0 : _mediaPluginState$ele.querySelector(selector);
492
497
  };
493
- items = generateMediaCardFloatingToolbar(state, intl, mediaPluginState, hoverDecoration, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d11 = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d11 === void 0 ? void 0 : (_pluginInjectionApi$d12 = _pluginInjectionApi$d11.analytics) === null || _pluginInjectionApi$d12 === void 0 ? void 0 : _pluginInjectionApi$d12.actions);
498
+ items = generateMediaCardFloatingToolbar(state, intl, mediaPluginState, hoverDecoration, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a6 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a6 === void 0 ? void 0 : _pluginInjectionApi$a6.actions);
494
499
  } else if (allowMediaInline && selectedNodeType && selectedNodeType === mediaInline) {
495
- var _pluginInjectionApi$d13, _pluginInjectionApi$d14;
500
+ var _pluginInjectionApi$a7;
496
501
  baseToolbar.getDomRef = function () {
497
502
  var _mediaPluginState$ele2;
498
503
  var element = (_mediaPluginState$ele2 = mediaPluginState.element) === null || _mediaPluginState$ele2 === void 0 ? void 0 : _mediaPluginState$ele2.querySelector(".".concat(MediaInlineNodeSelector));
499
504
  return element || mediaPluginState.element;
500
505
  };
501
- items = generateMediaInlineFloatingToolbar(state, intl, mediaPluginState, hoverDecoration, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d13 = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d13 === void 0 ? void 0 : (_pluginInjectionApi$d14 = _pluginInjectionApi$d13.analytics) === null || _pluginInjectionApi$d14 === void 0 ? void 0 : _pluginInjectionApi$d14.actions);
506
+ items = generateMediaInlineFloatingToolbar(state, intl, mediaPluginState, hoverDecoration, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a7 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a7 === void 0 ? void 0 : _pluginInjectionApi$a7.actions);
502
507
  } else {
503
508
  baseToolbar.getDomRef = function () {
504
509
  var _mediaPluginState$ele3;
@@ -50,8 +50,8 @@ export var getLinkingToolbar = function getLinkingToolbar(toolbarBaseConfig, med
50
50
  intl: intl,
51
51
  editing: editing,
52
52
  onUnlink: function onUnlink() {
53
- var _pluginInjectionApi$d, _pluginInjectionApi$d2;
54
- return unlink(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d === void 0 ? void 0 : (_pluginInjectionApi$d2 = _pluginInjectionApi$d.analytics) === null || _pluginInjectionApi$d2 === void 0 ? void 0 : _pluginInjectionApi$d2.actions)(view.state, view.dispatch, view);
53
+ var _pluginInjectionApi$a;
54
+ return unlink(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a === void 0 ? void 0 : _pluginInjectionApi$a.actions)(view.state, view.dispatch, view);
55
55
  },
56
56
  onBack: function onBack(href, meta) {
57
57
  if (href.trim() && meta.inputMethod) {
@@ -60,14 +60,14 @@ export var getLinkingToolbar = function getLinkingToolbar(toolbarBaseConfig, med
60
60
  hideLinkingToolbar(view.state, view.dispatch, view);
61
61
  },
62
62
  onCancel: function onCancel() {
63
- var _pluginInjectionApi$d3;
63
+ var _pluginInjectionApi$f;
64
64
  hideLinkingToolbar(view.state, view.dispatch, view, true);
65
65
  /** Focus should move to the 'Add link' button when the toolbar closes
66
66
  * and not close the floating toolbar.
67
67
  */
68
68
  var tr = view.state.tr,
69
69
  dispatch = view.dispatch;
70
- pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d3 = pluginInjectionApi.dependencies.floatingToolbar.actions) === null || _pluginInjectionApi$d3 === void 0 ? void 0 : _pluginInjectionApi$d3.forceFocusSelector(FORCE_FOCUS_SELECTOR)(tr);
70
+ pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$f = pluginInjectionApi.floatingToolbar.actions) === null || _pluginInjectionApi$f === void 0 ? void 0 : _pluginInjectionApi$f.forceFocusSelector(FORCE_FOCUS_SELECTOR)(tr);
71
71
  dispatch(tr);
72
72
  },
73
73
  onSubmit: function onSubmit(href, meta) {
@@ -2,6 +2,8 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
2
  import _regeneratorRuntime from "@babel/runtime/regenerator";
3
3
  import { getMediaClient } from '@atlaskit/media-client';
4
4
  import { findParentNodeOfType, removeParentNodeOfType, removeSelectedNode, findSelectedNodeOfType } from '@atlaskit/editor-prosemirror/utils';
5
+ import { akEditorFullWidthLayoutWidth } from '@atlaskit/editor-shared-styles';
6
+ import { wrappedLayouts } from '@atlaskit/editor-common/media-single';
5
7
  export var getSelectedMediaContainerNodeAttrs = function getSelectedMediaContainerNodeAttrs(mediaPluginState) {
6
8
  var selectedNode = mediaPluginState.selectedMediaContainerNode();
7
9
  if (selectedNode && selectedNode.attrs) {
@@ -69,4 +71,21 @@ export var getPixelWidthOfElement = function getPixelWidthOfElement(editorView,
69
71
  return domNode.offsetWidth;
70
72
  }
71
73
  return mediaWidth;
74
+ };
75
+ export var calcNewLayout = function calcNewLayout(width, layout, contentWidth) {
76
+ var fullWidthMode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
77
+ var isWrappedLayout = wrappedLayouts.indexOf(layout) > -1;
78
+ if (width >= akEditorFullWidthLayoutWidth) {
79
+ // If width is greater than or equal to full editor width
80
+ return 'full-width';
81
+ }
82
+ if (fullWidthMode) {
83
+ // If under editor full width mode
84
+ return isWrappedLayout ? layout : 'center';
85
+ }
86
+ if (width > contentWidth) {
87
+ // If width is greater than content length and not nested
88
+ return 'wide';
89
+ }
90
+ return isWrappedLayout && width !== contentWidth ? layout : 'center';
72
91
  };
@@ -125,8 +125,8 @@ var ResizableMediaSingleNext = /*#__PURE__*/function (_React$Component) {
125
125
  return _this.wrapper = wrapper;
126
126
  });
127
127
  _defineProperty(_assertThisInitialized(_this), "displayGuideline", function (guidelines) {
128
- var _this$props$pluginInj, _this$props$pluginInj2, _this$props$pluginInj3, _this$props$pluginInj4;
129
- return (_this$props$pluginInj = _this.props.pluginInjectionApi) === null || _this$props$pluginInj === void 0 ? void 0 : (_this$props$pluginInj2 = _this$props$pluginInj.dependencies) === null || _this$props$pluginInj2 === void 0 ? void 0 : (_this$props$pluginInj3 = _this$props$pluginInj2.guideline) === null || _this$props$pluginInj3 === void 0 ? void 0 : (_this$props$pluginInj4 = _this$props$pluginInj3.actions) === null || _this$props$pluginInj4 === void 0 ? void 0 : _this$props$pluginInj4.displayGuideline(_this.props.view)({
128
+ var _this$props$pluginInj, _this$props$pluginInj2, _this$props$pluginInj3;
129
+ return (_this$props$pluginInj = _this.props.pluginInjectionApi) === null || _this$props$pluginInj === void 0 ? void 0 : (_this$props$pluginInj2 = _this$props$pluginInj.guideline) === null || _this$props$pluginInj2 === void 0 ? void 0 : (_this$props$pluginInj3 = _this$props$pluginInj2.actions) === null || _this$props$pluginInj3 === void 0 ? void 0 : _this$props$pluginInj3.displayGuideline(_this.props.view)({
130
130
  guidelines: guidelines
131
131
  });
132
132
  });
@@ -156,8 +156,8 @@ var ResizableMediaSingleNext = /*#__PURE__*/function (_React$Component) {
156
156
  return Math.min(contentWidth || akEditorDefaultLayoutWidth, isVideoFile ? MEDIA_SINGLE_VIDEO_MIN_PIXEL_WIDTH : MEDIA_SINGLE_DEFAULT_MIN_PIXEL_WIDTH);
157
157
  }));
158
158
  _defineProperty(_assertThisInitialized(_this), "getRelativeGuides", function () {
159
- var _this$props$pluginInj5, _this$props$pluginInj6, _this$props$pluginInj7, _this$props$pluginInj8;
160
- var guidelinePluginState = (_this$props$pluginInj5 = _this.props.pluginInjectionApi) === null || _this$props$pluginInj5 === void 0 ? void 0 : (_this$props$pluginInj6 = _this$props$pluginInj5.dependencies) === null || _this$props$pluginInj6 === void 0 ? void 0 : (_this$props$pluginInj7 = _this$props$pluginInj6.guideline) === null || _this$props$pluginInj7 === void 0 ? void 0 : (_this$props$pluginInj8 = _this$props$pluginInj7.sharedState) === null || _this$props$pluginInj8 === void 0 ? void 0 : _this$props$pluginInj8.currentState();
159
+ var _this$props$pluginInj4, _this$props$pluginInj5, _this$props$pluginInj6;
160
+ var guidelinePluginState = (_this$props$pluginInj4 = _this.props.pluginInjectionApi) === null || _this$props$pluginInj4 === void 0 ? void 0 : (_this$props$pluginInj5 = _this$props$pluginInj4.guideline) === null || _this$props$pluginInj5 === void 0 ? void 0 : (_this$props$pluginInj6 = _this$props$pluginInj5.sharedState) === null || _this$props$pluginInj6 === void 0 ? void 0 : _this$props$pluginInj6.currentState();
161
161
  var _ref = (guidelinePluginState === null || guidelinePluginState === void 0 ? void 0 : guidelinePluginState.rect) || {
162
162
  top: 0,
163
163
  left: 0
@@ -36,11 +36,11 @@ var ResizableMediaSingle = /*#__PURE__*/function (_React$Component) {
36
36
  isVideoFile: true
37
37
  });
38
38
  _defineProperty(_assertThisInitialized(_this), "displayGrid", function (visible, gridType, highlight) {
39
- var _pluginInjectionApi$d, _pluginInjectionApi$d2, _pluginInjectionApi$d3;
39
+ var _pluginInjectionApi$g, _pluginInjectionApi$g2;
40
40
  var _this$props = _this.props,
41
41
  pluginInjectionApi = _this$props.pluginInjectionApi,
42
42
  view = _this$props.view;
43
- pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d === void 0 ? void 0 : (_pluginInjectionApi$d2 = _pluginInjectionApi$d.grid) === null || _pluginInjectionApi$d2 === void 0 ? void 0 : (_pluginInjectionApi$d3 = _pluginInjectionApi$d2.actions) === null || _pluginInjectionApi$d3 === void 0 ? void 0 : _pluginInjectionApi$d3.displayGrid(view)({
43
+ pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$g = pluginInjectionApi.grid) === null || _pluginInjectionApi$g === void 0 ? void 0 : (_pluginInjectionApi$g2 = _pluginInjectionApi$g.actions) === null || _pluginInjectionApi$g2 === void 0 ? void 0 : _pluginInjectionApi$g2.displayGrid(view)({
44
44
  visible: visible,
45
45
  gridType: gridType,
46
46
  highlight: highlight
@@ -18,12 +18,14 @@ var getSharedState = function getSharedState(editorState) {
18
18
  }
19
19
  return mentionPluginKey.getState(editorState);
20
20
  };
21
- var mentionsPlugin = function mentionsPlugin(options, api) {
21
+ var mentionsPlugin = function mentionsPlugin(_ref) {
22
+ var options = _ref.config,
23
+ api = _ref.api;
22
24
  var sessionId = uuid();
23
25
  var fireEvent = function fireEvent(payload) {
24
- var _api$dependencies$ana, _api$dependencies$ana2;
25
- var _ref = (_api$dependencies$ana = api === null || api === void 0 ? void 0 : (_api$dependencies$ana2 = api.dependencies.analytics) === null || _api$dependencies$ana2 === void 0 ? void 0 : _api$dependencies$ana2.sharedState.currentState()) !== null && _api$dependencies$ana !== void 0 ? _api$dependencies$ana : {},
26
- createAnalyticsEvent = _ref.createAnalyticsEvent;
26
+ var _api$analytics$shared, _api$analytics;
27
+ var _ref2 = (_api$analytics$shared = api === null || api === void 0 ? void 0 : (_api$analytics = api.analytics) === null || _api$analytics === void 0 ? void 0 : _api$analytics.sharedState.currentState()) !== null && _api$analytics$shared !== void 0 ? _api$analytics$shared : {},
28
+ createAnalyticsEvent = _ref2.createAnalyticsEvent;
27
29
  if (!createAnalyticsEvent) {
28
30
  return;
29
31
  }
@@ -54,17 +56,17 @@ var mentionsPlugin = function mentionsPlugin(options, api) {
54
56
  }
55
57
  }];
56
58
  },
57
- secondaryToolbarComponent: function secondaryToolbarComponent(_ref2) {
58
- var editorView = _ref2.editorView,
59
- disabled = _ref2.disabled;
59
+ secondaryToolbarComponent: function secondaryToolbarComponent(_ref3) {
60
+ var editorView = _ref3.editorView,
61
+ disabled = _ref3.disabled;
60
62
  return /*#__PURE__*/React.createElement(WithPluginState, {
61
63
  editorView: editorView,
62
64
  plugins: {
63
65
  mentionState: mentionPluginKey
64
66
  },
65
- render: function render(_ref3) {
66
- var _ref3$mentionState = _ref3.mentionState,
67
- mentionState = _ref3$mentionState === void 0 ? {} : _ref3$mentionState;
67
+ render: function render(_ref4) {
68
+ var _ref4$mentionState = _ref4.mentionState,
69
+ mentionState = _ref4$mentionState === void 0 ? {} : _ref4$mentionState;
68
70
  return !mentionState.mentionProvider ? null : /*#__PURE__*/React.createElement(ToolbarMention, {
69
71
  editorView: editorView,
70
72
  isDisabled: disabled || isTypeAheadAllowed(editorView.state)
@@ -74,8 +76,8 @@ var mentionsPlugin = function mentionsPlugin(options, api) {
74
76
  },
75
77
  getSharedState: getSharedState,
76
78
  pluginsOptions: {
77
- quickInsert: function quickInsert(_ref4) {
78
- var formatMessage = _ref4.formatMessage;
79
+ quickInsert: function quickInsert(_ref5) {
80
+ var formatMessage = _ref5.formatMessage;
79
81
  return [{
80
82
  id: 'mention',
81
83
  title: formatMessage(messages.mention),
@@ -87,19 +89,19 @@ var mentionsPlugin = function mentionsPlugin(options, api) {
87
89
  return /*#__PURE__*/React.createElement(IconMention, null);
88
90
  },
89
91
  action: function action(insert, state) {
90
- var _api$dependencies$ana3;
92
+ var _api$analytics2;
91
93
  var tr = insert(undefined);
92
94
  var pluginState = getSharedState(state);
93
95
  if (pluginState && pluginState.canInsertMention === false) {
94
96
  return false;
95
97
  }
96
- api === null || api === void 0 ? void 0 : api.dependencies.typeAhead.commands.openTypeAheadAtCursor({
98
+ api === null || api === void 0 ? void 0 : api.typeAhead.commands.openTypeAheadAtCursor({
97
99
  triggerHandler: typeAhead,
98
100
  inputMethod: INPUT_METHOD.QUICK_INSERT
99
101
  })({
100
102
  tr: tr
101
103
  });
102
- api === null || api === void 0 ? void 0 : (_api$dependencies$ana3 = api.dependencies.analytics) === null || _api$dependencies$ana3 === void 0 ? void 0 : _api$dependencies$ana3.actions.attachAnalyticsEvent({
104
+ api === null || api === void 0 ? void 0 : (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions.attachAnalyticsEvent({
103
105
  action: ACTION.INVOKED,
104
106
  actionSubject: ACTION_SUBJECT.TYPEAHEAD,
105
107
  actionSubjectId: ACTION_SUBJECT_ID.TYPEAHEAD_MENTION,
@@ -12,9 +12,10 @@ import { T50 } from '@atlaskit/theme/colors';
12
12
  // Insertions via the drop down menu
13
13
  // tslint-ignore-next-line
14
14
  import { createWrapSelectionTransaction } from '../block-type/commands/block-type';
15
- var panelPlugin = function panelPlugin() {
16
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
17
- var api = arguments.length > 1 ? arguments[1] : undefined;
15
+ var panelPlugin = function panelPlugin(_ref) {
16
+ var _ref$config = _ref.config,
17
+ options = _ref$config === void 0 ? {} : _ref$config,
18
+ api = _ref.api;
18
19
  return {
19
20
  name: 'panel',
20
21
  nodes: function nodes() {
@@ -27,9 +28,9 @@ var panelPlugin = function panelPlugin() {
27
28
  pmPlugins: function pmPlugins() {
28
29
  return [{
29
30
  name: 'panel',
30
- plugin: function plugin(_ref) {
31
- var providerFactory = _ref.providerFactory,
32
- dispatch = _ref.dispatch;
31
+ plugin: function plugin(_ref2) {
32
+ var providerFactory = _ref2.providerFactory,
33
+ dispatch = _ref2.dispatch;
33
34
  return createPlugin(dispatch, providerFactory, options);
34
35
  }
35
36
  }, {
@@ -40,8 +41,8 @@ var panelPlugin = function panelPlugin() {
40
41
  }];
41
42
  },
42
43
  pluginsOptions: {
43
- quickInsert: function quickInsert(_ref2) {
44
- var formatMessage = _ref2.formatMessage;
44
+ quickInsert: function quickInsert(_ref3) {
45
+ var formatMessage = _ref3.formatMessage;
45
46
  var quickInsertOptions = [{
46
47
  id: 'infopanel',
47
48
  title: formatMessage(messages.infoPanel),
@@ -153,7 +154,7 @@ var panelPlugin = function panelPlugin() {
153
154
  return quickInsertOptions;
154
155
  },
155
156
  floatingToolbar: function floatingToolbar(state, intl, providerFactory) {
156
- return getToolbarConfig(state, intl, options, providerFactory, api === null || api === void 0 ? void 0 : api.dependencies.decorations.actions.hoverDecoration);
157
+ return getToolbarConfig(state, intl, options, providerFactory, api === null || api === void 0 ? void 0 : api.decorations.actions.hoverDecoration);
157
158
  }
158
159
  }
159
160
  };
@@ -171,9 +172,9 @@ var panelPlugin = function panelPlugin() {
171
172
  * applyTransaction(tr);
172
173
  * }
173
174
  */
174
- function createPanelAction(_ref3) {
175
- var state = _ref3.state,
176
- attributes = _ref3.attributes;
175
+ function createPanelAction(_ref4) {
176
+ var state = _ref4.state,
177
+ attributes = _ref4.attributes;
177
178
  var tr = createWrapSelectionTransaction({
178
179
  state: state,
179
180
  type: state.schema.nodes.panel,
@@ -1,19 +1,22 @@
1
1
  import { createPlugin } from './pm-plugins/main';
2
- var pastePlugin = function pastePlugin(_ref, api) {
3
- var _api$dependencies, _api$dependencies$fea;
4
- var cardOptions = _ref.cardOptions,
5
- sanitizePrivateContent = _ref.sanitizePrivateContent;
6
- var featureFlags = (api === null || api === void 0 ? void 0 : (_api$dependencies = api.dependencies) === null || _api$dependencies === void 0 ? void 0 : (_api$dependencies$fea = _api$dependencies.featureFlags) === null || _api$dependencies$fea === void 0 ? void 0 : _api$dependencies$fea.sharedState.currentState()) || {};
2
+ var pastePlugin = function pastePlugin(_ref) {
3
+ var _api$featureFlags;
4
+ var config = _ref.config,
5
+ api = _ref.api;
6
+ var _ref2 = config !== null && config !== void 0 ? config : {},
7
+ cardOptions = _ref2.cardOptions,
8
+ sanitizePrivateContent = _ref2.sanitizePrivateContent;
9
+ var featureFlags = (api === null || api === void 0 ? void 0 : (_api$featureFlags = api.featureFlags) === null || _api$featureFlags === void 0 ? void 0 : _api$featureFlags.sharedState.currentState()) || {};
7
10
  return {
8
11
  name: 'paste',
9
12
  pmPlugins: function pmPlugins() {
10
13
  return [{
11
14
  name: 'paste',
12
- plugin: function plugin(_ref2) {
13
- var schema = _ref2.schema,
14
- providerFactory = _ref2.providerFactory,
15
- dispatchAnalyticsEvent = _ref2.dispatchAnalyticsEvent,
16
- dispatch = _ref2.dispatch;
15
+ plugin: function plugin(_ref3) {
16
+ var schema = _ref3.schema,
17
+ providerFactory = _ref3.providerFactory,
18
+ dispatchAnalyticsEvent = _ref3.dispatchAnalyticsEvent,
19
+ dispatch = _ref3.dispatch;
17
20
  return createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFlags, api, cardOptions, sanitizePrivateContent, providerFactory);
18
21
  }
19
22
  }];
@@ -224,10 +224,10 @@ export var handlePasteAsPlainTextWithAnalytics = function handlePasteAsPlainText
224
224
  }))(handlePasteAsPlainText(slice, event));
225
225
  };
226
226
  export var handlePasteIntoTaskAndDecisionWithAnalytics = function handlePasteIntoTaskAndDecisionWithAnalytics(view, event, slice, type, pluginInjectionApi) {
227
- var _pluginInjectionApi$d, _pluginInjectionApi$d2;
227
+ var _pluginInjectionApi$c, _pluginInjectionApi$c2;
228
228
  return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
229
229
  type: type
230
- }))(handlePasteIntoTaskOrDecisionOrPanel(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d = pluginInjectionApi.dependencies.card) === null || _pluginInjectionApi$d === void 0 ? void 0 : (_pluginInjectionApi$d2 = _pluginInjectionApi$d.actions) === null || _pluginInjectionApi$d2 === void 0 ? void 0 : _pluginInjectionApi$d2.queueCardsFromChangedTr));
230
+ }))(handlePasteIntoTaskOrDecisionOrPanel(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$c = pluginInjectionApi.card) === null || _pluginInjectionApi$c === void 0 ? void 0 : (_pluginInjectionApi$c2 = _pluginInjectionApi$c.actions) === null || _pluginInjectionApi$c2 === void 0 ? void 0 : _pluginInjectionApi$c2.queueCardsFromChangedTr));
231
231
  };
232
232
  export var handlePasteIntoCaptionWithAnalytics = function handlePasteIntoCaptionWithAnalytics(view, event, slice, type) {
233
233
  return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
@@ -245,22 +245,22 @@ export var handleMediaSingleWithAnalytics = function handleMediaSingleWithAnalyt
245
245
  }))(handleMediaSingle(INPUT_METHOD.CLIPBOARD, editorAnalyticsAPI)(slice));
246
246
  };
247
247
  export var handlePastePreservingMarksWithAnalytics = function handlePastePreservingMarksWithAnalytics(view, event, slice, type, pluginInjectionApi) {
248
- var _pluginInjectionApi$d3, _pluginInjectionApi$d4;
248
+ var _pluginInjectionApi$c3, _pluginInjectionApi$c4;
249
249
  return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
250
250
  type: type
251
- }))(handlePastePreservingMarks(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d3 = pluginInjectionApi.dependencies.card) === null || _pluginInjectionApi$d3 === void 0 ? void 0 : (_pluginInjectionApi$d4 = _pluginInjectionApi$d3.actions) === null || _pluginInjectionApi$d4 === void 0 ? void 0 : _pluginInjectionApi$d4.queueCardsFromChangedTr));
251
+ }))(handlePastePreservingMarks(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$c3 = pluginInjectionApi.card) === null || _pluginInjectionApi$c3 === void 0 ? void 0 : (_pluginInjectionApi$c4 = _pluginInjectionApi$c3.actions) === null || _pluginInjectionApi$c4 === void 0 ? void 0 : _pluginInjectionApi$c4.queueCardsFromChangedTr));
252
252
  };
253
253
  export var handleMarkdownWithAnalytics = function handleMarkdownWithAnalytics(view, event, slice, pluginInjectionApi) {
254
- var _pluginInjectionApi$d5, _pluginInjectionApi$d6;
254
+ var _pluginInjectionApi$c5, _pluginInjectionApi$c6;
255
255
  return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
256
256
  type: PasteTypes.markdown
257
- }))(handleMarkdown(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d5 = pluginInjectionApi.dependencies.card) === null || _pluginInjectionApi$d5 === void 0 ? void 0 : (_pluginInjectionApi$d6 = _pluginInjectionApi$d5.actions) === null || _pluginInjectionApi$d6 === void 0 ? void 0 : _pluginInjectionApi$d6.queueCardsFromChangedTr));
257
+ }))(handleMarkdown(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$c5 = pluginInjectionApi.card) === null || _pluginInjectionApi$c5 === void 0 ? void 0 : (_pluginInjectionApi$c6 = _pluginInjectionApi$c5.actions) === null || _pluginInjectionApi$c6 === void 0 ? void 0 : _pluginInjectionApi$c6.queueCardsFromChangedTr));
258
258
  };
259
259
  export var handleRichTextWithAnalytics = function handleRichTextWithAnalytics(view, event, slice, pluginInjectionApi) {
260
- var _pluginInjectionApi$d7, _pluginInjectionApi$d8;
260
+ var _pluginInjectionApi$c7, _pluginInjectionApi$c8;
261
261
  return injectAnalyticsPayloadBeforeCommand(createPasteAnalyticsPayloadBySelection(event, slice, {
262
262
  type: PasteTypes.richText
263
- }))(handleRichText(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d7 = pluginInjectionApi.dependencies.card) === null || _pluginInjectionApi$d7 === void 0 ? void 0 : (_pluginInjectionApi$d8 = _pluginInjectionApi$d7.actions) === null || _pluginInjectionApi$d8 === void 0 ? void 0 : _pluginInjectionApi$d8.queueCardsFromChangedTr));
263
+ }))(handleRichText(slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$c7 = pluginInjectionApi.card) === null || _pluginInjectionApi$c7 === void 0 ? void 0 : (_pluginInjectionApi$c8 = _pluginInjectionApi$c7.actions) === null || _pluginInjectionApi$c8 === void 0 ? void 0 : _pluginInjectionApi$c8.queueCardsFromChangedTr));
264
264
  };
265
265
  function injectAnalyticsPayloadBeforeCommand(createPayloadByTransaction) {
266
266
  return function (mainCommand) {
@@ -102,7 +102,7 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFl
102
102
  }
103
103
  },
104
104
  handlePaste: function handlePaste(view, rawEvent, slice) {
105
- var _text, _analyticsPlugin$perf, _analyticsPlugin$perf2, _schema$nodes, _schema$nodes2, _schema$nodes3, _pluginInjectionApi$d4, _pluginInjectionApi$d5;
105
+ var _text, _analyticsPlugin$perf, _analyticsPlugin$perf2, _schema$nodes, _schema$nodes2, _schema$nodes3, _pluginInjectionApi$a;
106
106
  var event = rawEvent;
107
107
  if (!event.clipboardData) {
108
108
  return false;
@@ -197,9 +197,9 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFl
197
197
  });
198
198
  return tableExists;
199
199
  });
200
- if (!isPastingTextInsidePlaceholderText && !isPastingTable && !isPastingOverLayoutColumns && pluginInjectionApi !== null && pluginInjectionApi !== void 0 && pluginInjectionApi.dependencies.betterTypeHistory) {
201
- var _pluginInjectionApi$d;
202
- tr = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d = pluginInjectionApi.dependencies.betterTypeHistory) === null || _pluginInjectionApi$d === void 0 ? void 0 : _pluginInjectionApi$d.actions.flagPasteEvent(tr);
200
+ if (!isPastingTextInsidePlaceholderText && !isPastingTable && !isPastingOverLayoutColumns && pluginInjectionApi !== null && pluginInjectionApi !== void 0 && pluginInjectionApi.betterTypeHistory) {
201
+ var _pluginInjectionApi$b;
202
+ tr = pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$b = pluginInjectionApi.betterTypeHistory) === null || _pluginInjectionApi$b === void 0 ? void 0 : _pluginInjectionApi$b.actions.flagPasteEvent(tr);
203
203
  }
204
204
  addLinkMetadata(view.state.selection, tr, {
205
205
  action: isPlainText ? ACTION.PASTED_AS_PLAIN : ACTION.PASTED,
@@ -227,14 +227,14 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFl
227
227
  // force a "paste as plain text" action by clearing the markdownSlice.
228
228
  markdownSlice = !((_markdownSlice = markdownSlice) !== null && _markdownSlice !== void 0 && _markdownSlice.size) ? undefined : markdownSlice;
229
229
  if (markdownSlice) {
230
- var _pluginInjectionApi$d2, _pluginInjectionApi$d3;
230
+ var _pluginInjectionApi$c, _pluginInjectionApi$c2;
231
231
  // linkify text prior to converting to macro
232
232
  if (handlePasteLinkOnSelectedTextWithAnalytics(view, event, markdownSlice, PasteTypes.markdown)(state, dispatch)) {
233
233
  return true;
234
234
  }
235
235
 
236
236
  // run macro autoconvert prior to other conversions
237
- if (handleMacroAutoConvert(text, markdownSlice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d2 = pluginInjectionApi.dependencies.card) === null || _pluginInjectionApi$d2 === void 0 ? void 0 : (_pluginInjectionApi$d3 = _pluginInjectionApi$d2.actions) === null || _pluginInjectionApi$d3 === void 0 ? void 0 : _pluginInjectionApi$d3.queueCardsFromChangedTr, cardOptions, extensionAutoConverter)(state, dispatch, view)) {
237
+ if (handleMacroAutoConvert(text, markdownSlice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$c = pluginInjectionApi.card) === null || _pluginInjectionApi$c === void 0 ? void 0 : (_pluginInjectionApi$c2 = _pluginInjectionApi$c.actions) === null || _pluginInjectionApi$c2 === void 0 ? void 0 : _pluginInjectionApi$c2.queueCardsFromChangedTr, cardOptions, extensionAutoConverter)(state, dispatch, view)) {
238
238
  // TODO: handleMacroAutoConvert dispatch twice, so we can't use the helper
239
239
  sendPasteAnalyticsEvent(view, event, markdownSlice, {
240
240
  type: PasteTypes.markdown
@@ -266,7 +266,7 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFl
266
266
  if (handleCodeBlockWithAnalytics(view, event, slice, text)(state, dispatch)) {
267
267
  return true;
268
268
  }
269
- if (handleMediaSingleWithAnalytics(view, event, slice, isPastedFile ? PasteTypes.binary : PasteTypes.richText, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d4 = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d4 === void 0 ? void 0 : (_pluginInjectionApi$d5 = _pluginInjectionApi$d4.analytics) === null || _pluginInjectionApi$d5 === void 0 ? void 0 : _pluginInjectionApi$d5.actions)(state, dispatch, view)) {
269
+ if (handleMediaSingleWithAnalytics(view, event, slice, isPastedFile ? PasteTypes.binary : PasteTypes.richText, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a === void 0 ? void 0 : _pluginInjectionApi$a.actions)(state, dispatch, view)) {
270
270
  return true;
271
271
  }
272
272
  if (handleSelectedTableWithAnalytics(view, event, slice)(state, dispatch)) {
@@ -299,7 +299,7 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFl
299
299
 
300
300
  // finally, handle rich-text copy-paste
301
301
  if (isRichText) {
302
- var _pluginInjectionApi$d6, _pluginInjectionApi$d7, _pluginInjectionApi$d8;
302
+ var _pluginInjectionApi$c3, _pluginInjectionApi$c4, _pluginInjectionApi$l;
303
303
  // linkify the text where possible
304
304
  slice = linkifyContent(state.schema)(slice);
305
305
  if (handlePasteLinkOnSelectedTextWithAnalytics(view, event, slice, PasteTypes.richText)(state, dispatch)) {
@@ -307,7 +307,7 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFl
307
307
  }
308
308
 
309
309
  // run macro autoconvert prior to other conversions
310
- if (handleMacroAutoConvert(text, slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d6 = pluginInjectionApi.dependencies.card) === null || _pluginInjectionApi$d6 === void 0 ? void 0 : (_pluginInjectionApi$d7 = _pluginInjectionApi$d6.actions) === null || _pluginInjectionApi$d7 === void 0 ? void 0 : _pluginInjectionApi$d7.queueCardsFromChangedTr, cardOptions, extensionAutoConverter)(state, dispatch, view)) {
310
+ if (handleMacroAutoConvert(text, slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$c3 = pluginInjectionApi.card) === null || _pluginInjectionApi$c3 === void 0 ? void 0 : (_pluginInjectionApi$c4 = _pluginInjectionApi$c3.actions) === null || _pluginInjectionApi$c4 === void 0 ? void 0 : _pluginInjectionApi$c4.queueCardsFromChangedTr, cardOptions, extensionAutoConverter)(state, dispatch, view)) {
311
311
  // TODO: handleMacroAutoConvert dispatch twice, so we can't use the helper
312
312
  sendPasteAnalyticsEvent(view, event, slice, {
313
313
  type: PasteTypes.richText
@@ -364,7 +364,7 @@ export function createPlugin(schema, dispatchAnalyticsEvent, dispatch, featureFl
364
364
  if (handlePasteIntoCaptionWithAnalytics(view, event, slice, PasteTypes.richText)(state, dispatch)) {
365
365
  return true;
366
366
  }
367
- if (handlePastePanelOrDecisionIntoListWithAnalytics(view, event, slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d8 = pluginInjectionApi.dependencies.list) === null || _pluginInjectionApi$d8 === void 0 ? void 0 : _pluginInjectionApi$d8.actions.findRootParentListNode)(state, dispatch)) {
367
+ if (handlePastePanelOrDecisionIntoListWithAnalytics(view, event, slice, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$l = pluginInjectionApi.list) === null || _pluginInjectionApi$l === void 0 ? void 0 : _pluginInjectionApi$l.actions.findRootParentListNode)(state, dispatch)) {
368
368
  return true;
369
369
  }
370
370
  if (featureFlags !== null && featureFlags !== void 0 && featureFlags.restartNumberedLists && handlePasteNonNestableBlockNodesIntoListWithAnalytics(view, event, slice)(state, dispatch)) {