@atlaskit/editor-core 187.31.7 → 187.32.1

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 (210) hide show
  1. package/CHANGELOG.md +40 -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/feedback-dialog/index.js +5 -4
  23. package/dist/cjs/plugins/find-replace/index.js +17 -15
  24. package/dist/cjs/plugins/floating-toolbar/index.js +31 -30
  25. package/dist/cjs/plugins/floating-toolbar/ui/ScrollButtons.js +29 -24
  26. package/dist/cjs/plugins/floating-toolbar/ui/Toolbar.js +5 -5
  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/media/utils/media-single.js +19 -4
  41. package/dist/cjs/plugins/mentions/index.js +17 -15
  42. package/dist/cjs/plugins/panel/index.js +13 -12
  43. package/dist/cjs/plugins/paste/index.js +13 -10
  44. package/dist/cjs/plugins/paste/pm-plugins/analytics.js +8 -8
  45. package/dist/cjs/plugins/paste/pm-plugins/main.js +10 -10
  46. package/dist/cjs/plugins/placeholder/index.js +9 -7
  47. package/dist/cjs/plugins/placeholder-text/index.js +23 -16
  48. package/dist/cjs/plugins/quick-insert/index.js +13 -12
  49. package/dist/cjs/plugins/rule/index.js +8 -7
  50. package/dist/cjs/plugins/save-on-enter/index.js +4 -3
  51. package/dist/cjs/plugins/selection/index.js +5 -4
  52. package/dist/cjs/plugins/status/index.js +20 -14
  53. package/dist/cjs/plugins/submit-editor/index.js +4 -3
  54. package/dist/cjs/plugins/tasks-and-decisions/index.js +6 -5
  55. package/dist/cjs/plugins/text-color/index.js +17 -15
  56. package/dist/cjs/plugins/toolbar-lists-indentation/index.js +31 -26
  57. package/dist/cjs/plugins/toolbar-lists-indentation/pm-plugins/indentation-buttons.js +1 -1
  58. package/dist/cjs/plugins/toolbar-lists-indentation/ui/onItemActivated.js +4 -4
  59. package/dist/cjs/plugins/type-ahead/index.js +21 -20
  60. package/dist/cjs/ui/ElementBrowser/InsertMenu.js +11 -11
  61. package/dist/cjs/ui/ToolbarFeedback/index.js +1 -1
  62. package/dist/cjs/use-preset.js +2 -2
  63. package/dist/cjs/version-wrapper.js +1 -1
  64. package/dist/es2019/create-editor/ReactEditorViewInternal.js +1 -1
  65. package/dist/es2019/plugins/analytics/plugin.js +11 -8
  66. package/dist/es2019/plugins/annotation/index.js +4 -1
  67. package/dist/es2019/plugins/avatar-group/index.js +8 -5
  68. package/dist/es2019/plugins/base/plugin.js +6 -3
  69. package/dist/es2019/plugins/before-primaryToolbar/index.js +4 -2
  70. package/dist/es2019/plugins/block-type/index.js +14 -11
  71. package/dist/es2019/plugins/breakout/index.js +6 -3
  72. package/dist/es2019/plugins/caption/index.js +3 -1
  73. package/dist/es2019/plugins/caption/pm-plugins/main.js +2 -2
  74. package/dist/es2019/plugins/code-bidi-warning/index.js +2 -4
  75. package/dist/es2019/plugins/code-block/index.js +15 -9
  76. package/dist/es2019/plugins/code-block/pm-plugins/ide-ux.js +2 -2
  77. package/dist/es2019/plugins/collab-edit/index.js +9 -6
  78. package/dist/es2019/plugins/collab-edit/plugin.js +5 -5
  79. package/dist/es2019/plugins/date/index.js +6 -3
  80. package/dist/es2019/plugins/emoji/index.js +16 -13
  81. package/dist/es2019/plugins/expand/index.js +7 -4
  82. package/dist/es2019/plugins/extension/index.js +11 -8
  83. package/dist/es2019/plugins/extension/pm-plugins/main.js +4 -4
  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/ScrollButtons.js +9 -4
  88. package/dist/es2019/plugins/floating-toolbar/ui/Toolbar.js +4 -4
  89. package/dist/es2019/plugins/help-dialog/index.js +9 -6
  90. package/dist/es2019/plugins/insert-block/index.js +12 -9
  91. package/dist/es2019/plugins/insert-block/ui/ToolbarInsertBlock/index.js +11 -11
  92. package/dist/es2019/plugins/layout/index.js +8 -5
  93. package/dist/es2019/plugins/max-content-size/index.js +3 -1
  94. package/dist/es2019/plugins/media/index.js +14 -10
  95. package/dist/es2019/plugins/media/nodeviews/mediaSingle.js +2 -2
  96. package/dist/es2019/plugins/media/pm-plugins/main.js +7 -7
  97. package/dist/es2019/plugins/media/toolbar/index.js +29 -25
  98. package/dist/es2019/plugins/media/toolbar/linking.js +4 -4
  99. package/dist/es2019/plugins/media/toolbar/utils.js +18 -0
  100. package/dist/es2019/plugins/media/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +4 -4
  101. package/dist/es2019/plugins/media/ui/ResizableMediaSingle/index.js +2 -2
  102. package/dist/es2019/plugins/media/utils/media-single.js +22 -4
  103. package/dist/es2019/plugins/mentions/index.js +9 -6
  104. package/dist/es2019/plugins/panel/index.js +5 -2
  105. package/dist/es2019/plugins/paste/index.js +9 -5
  106. package/dist/es2019/plugins/paste/pm-plugins/analytics.js +8 -8
  107. package/dist/es2019/plugins/paste/pm-plugins/main.js +10 -10
  108. package/dist/es2019/plugins/placeholder/index.js +10 -7
  109. package/dist/es2019/plugins/placeholder-text/index.js +12 -4
  110. package/dist/es2019/plugins/quick-insert/index.js +3 -1
  111. package/dist/es2019/plugins/rule/index.js +5 -3
  112. package/dist/es2019/plugins/save-on-enter/index.js +3 -1
  113. package/dist/es2019/plugins/selection/index.js +3 -1
  114. package/dist/es2019/plugins/status/index.js +11 -3
  115. package/dist/es2019/plugins/submit-editor/index.js +3 -1
  116. package/dist/es2019/plugins/tasks-and-decisions/index.js +6 -4
  117. package/dist/es2019/plugins/text-color/index.js +6 -3
  118. package/dist/es2019/plugins/toolbar-lists-indentation/index.js +9 -5
  119. package/dist/es2019/plugins/toolbar-lists-indentation/pm-plugins/indentation-buttons.js +1 -1
  120. package/dist/es2019/plugins/toolbar-lists-indentation/ui/onItemActivated.js +4 -4
  121. package/dist/es2019/plugins/type-ahead/index.js +3 -1
  122. package/dist/es2019/ui/ElementBrowser/InsertMenu.js +11 -11
  123. package/dist/es2019/ui/ToolbarFeedback/index.js +1 -1
  124. package/dist/es2019/use-preset.js +2 -2
  125. package/dist/es2019/version-wrapper.js +1 -1
  126. package/dist/esm/create-editor/ReactEditorViewInternal.js +1 -1
  127. package/dist/esm/plugins/analytics/plugin.js +14 -12
  128. package/dist/esm/plugins/annotation/index.js +15 -13
  129. package/dist/esm/plugins/avatar-group/index.js +16 -14
  130. package/dist/esm/plugins/base/plugin.js +12 -10
  131. package/dist/esm/plugins/before-primaryToolbar/index.js +3 -2
  132. package/dist/esm/plugins/block-type/index.js +32 -30
  133. package/dist/esm/plugins/breakout/index.js +10 -8
  134. package/dist/esm/plugins/caption/index.js +7 -6
  135. package/dist/esm/plugins/caption/pm-plugins/main.js +2 -2
  136. package/dist/esm/plugins/code-bidi-warning/index.js +2 -4
  137. package/dist/esm/plugins/code-block/index.js +14 -11
  138. package/dist/esm/plugins/code-block/pm-plugins/ide-ux.js +2 -2
  139. package/dist/esm/plugins/collab-edit/index.js +16 -14
  140. package/dist/esm/plugins/collab-edit/plugin.js +5 -5
  141. package/dist/esm/plugins/date/index.js +18 -17
  142. package/dist/esm/plugins/emoji/index.js +35 -33
  143. package/dist/esm/plugins/expand/index.js +14 -13
  144. package/dist/esm/plugins/extension/index.js +16 -15
  145. package/dist/esm/plugins/extension/pm-plugins/main.js +4 -4
  146. package/dist/esm/plugins/feedback-dialog/index.js +5 -4
  147. package/dist/esm/plugins/find-replace/index.js +17 -15
  148. package/dist/esm/plugins/floating-toolbar/index.js +31 -30
  149. package/dist/esm/plugins/floating-toolbar/ui/ScrollButtons.js +28 -23
  150. package/dist/esm/plugins/floating-toolbar/ui/Toolbar.js +4 -4
  151. package/dist/esm/plugins/help-dialog/index.js +18 -17
  152. package/dist/esm/plugins/insert-block/index.js +52 -51
  153. package/dist/esm/plugins/insert-block/ui/ToolbarInsertBlock/index.js +11 -11
  154. package/dist/esm/plugins/layout/index.js +15 -14
  155. package/dist/esm/plugins/max-content-size/index.js +4 -3
  156. package/dist/esm/plugins/media/index.js +49 -47
  157. package/dist/esm/plugins/media/nodeviews/mediaSingle.js +2 -2
  158. package/dist/esm/plugins/media/pm-plugins/main.js +7 -7
  159. package/dist/esm/plugins/media/toolbar/index.js +30 -25
  160. package/dist/esm/plugins/media/toolbar/linking.js +4 -4
  161. package/dist/esm/plugins/media/toolbar/utils.js +19 -0
  162. package/dist/esm/plugins/media/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +4 -4
  163. package/dist/esm/plugins/media/ui/ResizableMediaSingle/index.js +2 -2
  164. package/dist/esm/plugins/media/utils/media-single.js +19 -4
  165. package/dist/esm/plugins/mentions/index.js +17 -15
  166. package/dist/esm/plugins/panel/index.js +13 -12
  167. package/dist/esm/plugins/paste/index.js +13 -10
  168. package/dist/esm/plugins/paste/pm-plugins/analytics.js +8 -8
  169. package/dist/esm/plugins/paste/pm-plugins/main.js +10 -10
  170. package/dist/esm/plugins/placeholder/index.js +9 -7
  171. package/dist/esm/plugins/placeholder-text/index.js +23 -16
  172. package/dist/esm/plugins/quick-insert/index.js +13 -12
  173. package/dist/esm/plugins/rule/index.js +8 -7
  174. package/dist/esm/plugins/save-on-enter/index.js +4 -3
  175. package/dist/esm/plugins/selection/index.js +5 -4
  176. package/dist/esm/plugins/status/index.js +20 -14
  177. package/dist/esm/plugins/submit-editor/index.js +4 -3
  178. package/dist/esm/plugins/tasks-and-decisions/index.js +6 -5
  179. package/dist/esm/plugins/text-color/index.js +17 -15
  180. package/dist/esm/plugins/toolbar-lists-indentation/index.js +31 -26
  181. package/dist/esm/plugins/toolbar-lists-indentation/pm-plugins/indentation-buttons.js +1 -1
  182. package/dist/esm/plugins/toolbar-lists-indentation/ui/onItemActivated.js +4 -4
  183. package/dist/esm/plugins/type-ahead/index.js +21 -20
  184. package/dist/esm/ui/ElementBrowser/InsertMenu.js +11 -11
  185. package/dist/esm/ui/ToolbarFeedback/index.js +1 -1
  186. package/dist/esm/use-preset.js +2 -2
  187. package/dist/esm/version-wrapper.js +1 -1
  188. package/dist/types/labs/next/presets/default.d.ts +62 -618
  189. package/dist/types/plugins/avatar-group/index.d.ts +1 -1
  190. package/dist/types/plugins/before-primaryToolbar/index.d.ts +1 -1
  191. package/dist/types/plugins/caption/index.d.ts +1 -1
  192. package/dist/types/plugins/floating-toolbar/ui/ScrollButtons.d.ts +3 -3
  193. package/dist/types/plugins/floating-toolbar/ui/Toolbar.d.ts +1 -2
  194. package/dist/types/plugins/media/toolbar/utils.d.ts +2 -1
  195. package/dist/types/plugins/media/types.d.ts +1 -0
  196. package/dist/types/plugins/selection/index.d.ts +2 -2
  197. package/dist/types/plugins/text-color/index.d.ts +3 -2
  198. package/dist/types/use-preset.d.ts +2 -2
  199. package/dist/types-ts4.5/labs/next/presets/default.d.ts +96 -716
  200. package/dist/types-ts4.5/plugins/avatar-group/index.d.ts +1 -1
  201. package/dist/types-ts4.5/plugins/before-primaryToolbar/index.d.ts +1 -1
  202. package/dist/types-ts4.5/plugins/caption/index.d.ts +1 -1
  203. package/dist/types-ts4.5/plugins/floating-toolbar/ui/ScrollButtons.d.ts +3 -3
  204. package/dist/types-ts4.5/plugins/floating-toolbar/ui/Toolbar.d.ts +1 -2
  205. package/dist/types-ts4.5/plugins/media/toolbar/utils.d.ts +2 -1
  206. package/dist/types-ts4.5/plugins/media/types.d.ts +1 -0
  207. package/dist/types-ts4.5/plugins/selection/index.d.ts +2 -2
  208. package/dist/types-ts4.5/plugins/text-color/index.d.ts +3 -2
  209. package/dist/types-ts4.5/use-preset.d.ts +2 -2
  210. package/package.json +3 -3
@@ -24,11 +24,12 @@ import { ReactMediaInlineNode } from './nodeviews/mediaInline';
24
24
  import { getBooleanFF } from '@atlaskit/platform-feature-flags';
25
25
  import { stateKey } from './pm-plugins/plugin-key';
26
26
  export { insertMediaSingleNode } from './utils/media-single';
27
- var mediaPlugin = function mediaPlugin() {
28
- var _api$dependencies, _api$dependencies$fea;
29
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
30
- var api = arguments.length > 1 ? arguments[1] : undefined;
31
- 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()) || {};
27
+ var mediaPlugin = function mediaPlugin(_ref) {
28
+ var _api$featureFlags;
29
+ var _ref$config = _ref.config,
30
+ options = _ref$config === void 0 ? {} : _ref$config,
31
+ api = _ref.api;
32
+ var featureFlags = (api === null || api === void 0 ? void 0 : (_api$featureFlags = api.featureFlags) === null || _api$featureFlags === void 0 ? void 0 : _api$featureFlags.sharedState.currentState()) || {};
32
33
  return {
33
34
  name: 'media',
34
35
  getSharedState: function getSharedState(editorState) {
@@ -38,12 +39,12 @@ var mediaPlugin = function mediaPlugin() {
38
39
  return stateKey.getState(editorState) || null;
39
40
  },
40
41
  nodes: function nodes() {
41
- var _ref = options || {},
42
- _ref$allowMediaGroup = _ref.allowMediaGroup,
43
- allowMediaGroup = _ref$allowMediaGroup === void 0 ? true : _ref$allowMediaGroup,
44
- _ref$allowMediaSingle = _ref.allowMediaSingle,
45
- allowMediaSingle = _ref$allowMediaSingle === void 0 ? false : _ref$allowMediaSingle,
46
- mediaFeatureFlags = _ref.featureFlags;
42
+ var _ref2 = options || {},
43
+ _ref2$allowMediaGroup = _ref2.allowMediaGroup,
44
+ allowMediaGroup = _ref2$allowMediaGroup === void 0 ? true : _ref2$allowMediaGroup,
45
+ _ref2$allowMediaSingl = _ref2.allowMediaSingle,
46
+ allowMediaSingle = _ref2$allowMediaSingl === void 0 ? false : _ref2$allowMediaSingl,
47
+ mediaFeatureFlags = _ref2.featureFlags;
47
48
  var captions = getMediaFeatureFlag('captions', mediaFeatureFlags);
48
49
  var allowMediaInline = getMediaFeatureFlag('mediaInline', mediaFeatureFlags);
49
50
  var mediaSingleOption = getBooleanFF('platform.editor.media.extended-resize-experience') ? {
@@ -82,16 +83,16 @@ var mediaPlugin = function mediaPlugin() {
82
83
  pmPlugins: function pmPlugins() {
83
84
  var pmPlugins = [{
84
85
  name: 'media',
85
- plugin: function plugin(_ref2) {
86
- var schema = _ref2.schema,
87
- dispatch = _ref2.dispatch,
88
- getIntl = _ref2.getIntl,
89
- eventDispatcher = _ref2.eventDispatcher,
90
- providerFactory = _ref2.providerFactory,
91
- errorReporter = _ref2.errorReporter,
92
- portalProviderAPI = _ref2.portalProviderAPI,
93
- reactContext = _ref2.reactContext,
94
- dispatchAnalyticsEvent = _ref2.dispatchAnalyticsEvent;
86
+ plugin: function plugin(_ref3) {
87
+ var schema = _ref3.schema,
88
+ dispatch = _ref3.dispatch,
89
+ getIntl = _ref3.getIntl,
90
+ eventDispatcher = _ref3.eventDispatcher,
91
+ providerFactory = _ref3.providerFactory,
92
+ errorReporter = _ref3.errorReporter,
93
+ portalProviderAPI = _ref3.portalProviderAPI,
94
+ reactContext = _ref3.reactContext,
95
+ dispatchAnalyticsEvent = _ref3.dispatchAnalyticsEvent;
95
96
  return createPlugin(schema, {
96
97
  providerFactory: providerFactory,
97
98
  nodeViews: {
@@ -111,15 +112,15 @@ var mediaPlugin = function mediaPlugin() {
111
112
  }, {
112
113
  name: 'mediaKeymap',
113
114
  plugin: function plugin() {
114
- var _api$dependencies$ana;
115
- return keymapPlugin(options, api === null || api === void 0 ? void 0 : (_api$dependencies$ana = api.dependencies.analytics) === null || _api$dependencies$ana === void 0 ? void 0 : _api$dependencies$ana.actions);
115
+ var _api$analytics;
116
+ return keymapPlugin(options, api === null || api === void 0 ? void 0 : (_api$analytics = api.analytics) === null || _api$analytics === void 0 ? void 0 : _api$analytics.actions);
116
117
  }
117
118
  }];
118
119
  if (options && options.allowMediaSingle) {
119
120
  pmPlugins.push({
120
121
  name: 'mediaSingleKeymap',
121
- plugin: function plugin(_ref3) {
122
- var schema = _ref3.schema;
122
+ plugin: function plugin(_ref4) {
123
+ var schema = _ref4.schema;
123
124
  return keymapMediaSinglePlugin(schema);
124
125
  }
125
126
  });
@@ -131,25 +132,25 @@ var mediaPlugin = function mediaPlugin() {
131
132
  });
132
133
  pmPlugins.push({
133
134
  name: 'mediaAltTextKeymap',
134
- plugin: function plugin(_ref4) {
135
- var _api$dependencies$ana2;
136
- var schema = _ref4.schema;
137
- return keymapMediaAltTextPlugin(schema, api === null || api === void 0 ? void 0 : (_api$dependencies$ana2 = api.dependencies.analytics) === null || _api$dependencies$ana2 === void 0 ? void 0 : _api$dependencies$ana2.actions);
135
+ plugin: function plugin(_ref5) {
136
+ var _api$analytics2;
137
+ var schema = _ref5.schema;
138
+ return keymapMediaAltTextPlugin(schema, api === null || api === void 0 ? void 0 : (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions);
138
139
  }
139
140
  });
140
141
  }
141
142
  if (options && options.allowLinking) {
142
143
  pmPlugins.push({
143
144
  name: 'mediaLinking',
144
- plugin: function plugin(_ref5) {
145
- var dispatch = _ref5.dispatch;
145
+ plugin: function plugin(_ref6) {
146
+ var dispatch = _ref6.dispatch;
146
147
  return linkingPlugin(dispatch);
147
148
  }
148
149
  });
149
150
  pmPlugins.push({
150
151
  name: 'mediaLinkingKeymap',
151
- plugin: function plugin(_ref6) {
152
- var schema = _ref6.schema;
152
+ plugin: function plugin(_ref7) {
153
+ var schema = _ref7.schema;
153
154
  return keymapLinkingPlugin(schema);
154
155
  }
155
156
  });
@@ -185,16 +186,16 @@ var mediaPlugin = function mediaPlugin() {
185
186
  });
186
187
  return pmPlugins;
187
188
  },
188
- contentComponent: function contentComponent(_ref7) {
189
- var editorView = _ref7.editorView,
190
- appearance = _ref7.appearance;
189
+ contentComponent: function contentComponent(_ref8) {
190
+ var editorView = _ref8.editorView,
191
+ appearance = _ref8.appearance;
191
192
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(WithPluginState, {
192
193
  editorView: editorView,
193
194
  plugins: {
194
195
  mediaState: pluginKey
195
196
  },
196
- render: function render(_ref8) {
197
- var mediaState = _ref8.mediaState;
197
+ render: function render(_ref9) {
198
+ var mediaState = _ref9.mediaState;
198
199
  return /*#__PURE__*/React.createElement(MediaPickerComponents, {
199
200
  editorDomElement: editorView.dom,
200
201
  mediaState: mediaState,
@@ -204,10 +205,10 @@ var mediaPlugin = function mediaPlugin() {
204
205
  }
205
206
  }));
206
207
  },
207
- secondaryToolbarComponent: function secondaryToolbarComponent(_ref9) {
208
- var editorView = _ref9.editorView,
209
- eventDispatcher = _ref9.eventDispatcher,
210
- disabled = _ref9.disabled;
208
+ secondaryToolbarComponent: function secondaryToolbarComponent(_ref10) {
209
+ var editorView = _ref10.editorView,
210
+ eventDispatcher = _ref10.eventDispatcher,
211
+ disabled = _ref10.disabled;
211
212
  return /*#__PURE__*/React.createElement(ToolbarMedia, {
212
213
  editorView: editorView,
213
214
  eventDispatcher: eventDispatcher,
@@ -217,8 +218,8 @@ var mediaPlugin = function mediaPlugin() {
217
218
  });
218
219
  },
219
220
  pluginsOptions: {
220
- quickInsert: function quickInsert(_ref10) {
221
- var formatMessage = _ref10.formatMessage;
221
+ quickInsert: function quickInsert(_ref11) {
222
+ var formatMessage = _ref11.formatMessage;
222
223
  return [{
223
224
  id: 'media',
224
225
  title: formatMessage(messages.mediaFiles),
@@ -229,11 +230,11 @@ var mediaPlugin = function mediaPlugin() {
229
230
  return /*#__PURE__*/React.createElement(IconImages, null);
230
231
  },
231
232
  action: function action(insert, state) {
232
- var _api$dependencies$ana3;
233
+ var _api$analytics3;
233
234
  var pluginState = pluginKey.getState(state);
234
235
  pluginState === null || pluginState === void 0 ? void 0 : pluginState.showMediaPicker();
235
236
  var tr = insert('');
236
- 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({
237
+ api === null || api === void 0 ? void 0 : (_api$analytics3 = api.analytics) === null || _api$analytics3 === void 0 ? void 0 : _api$analytics3.actions.attachAnalyticsEvent({
237
238
  action: ACTION.OPENED,
238
239
  actionSubject: ACTION_SUBJECT.PICKER,
239
240
  actionSubjectId: ACTION_SUBJECT_ID.PICKER_CLOUD,
@@ -255,7 +256,8 @@ var mediaPlugin = function mediaPlugin() {
255
256
  allowLinking: options && options.allowLinking,
256
257
  allowAdvancedToolBarOptions: options && options.allowAdvancedToolBarOptions,
257
258
  allowAltTextOnImages: options && options.allowAltTextOnImages,
258
- altTextValidator: options && options.altTextValidator
259
+ altTextValidator: options && options.altTextValidator,
260
+ fullWidthEnabled: options && options.fullWidthEnabled
259
261
  }, api);
260
262
  }
261
263
  }
@@ -230,7 +230,7 @@ var MediaSingleNode = /*#__PURE__*/function (_Component) {
230
230
  (_this$captionPlaceHol = _this.captionPlaceHolderRef.current) === null || _this$captionPlaceHol === void 0 ? void 0 : _this$captionPlaceHol.click();
231
231
  });
232
232
  _defineProperty(_assertThisInitialized(_this), "clickPlaceholder", function () {
233
- var _pluginInjectionApi$d, _pluginInjectionApi$d2;
233
+ var _pluginInjectionApi$a;
234
234
  var _this$props = _this.props,
235
235
  view = _this$props.view,
236
236
  getPos = _this$props.getPos,
@@ -239,7 +239,7 @@ var MediaSingleNode = /*#__PURE__*/function (_Component) {
239
239
  if (typeof getPos === 'boolean') {
240
240
  return;
241
241
  }
242
- insertAndSelectCaptionFromMediaSinglePos(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)(getPos(), node)(view.state, view.dispatch);
242
+ insertAndSelectCaptionFromMediaSinglePos(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a === void 0 ? void 0 : _pluginInjectionApi$a.actions)(getPos(), node)(view.state, view.dispatch);
243
243
  });
244
244
  return _this;
245
245
  }
@@ -226,16 +226,16 @@ export var MediaPluginStateImplementation = /*#__PURE__*/function () {
226
226
  });
227
227
  }
228
228
  if (isMediaSingle(state.schema, mediaStateWithContext.fileMimeType)) {
229
- var _this$pluginInjection, _pluginInjectionApi$d, _pluginInjectionApi$d2;
229
+ var _this$pluginInjection, _pluginInjectionApi$a;
230
230
  // read width state right before inserting to get up-to-date and define values
231
- var widthPluginState = (_this$pluginInjection = _this.pluginInjectionApi) === null || _this$pluginInjection === void 0 ? void 0 : _this$pluginInjection.dependencies.width.sharedState.currentState();
232
- insertMediaSingleNode(_this.view, mediaStateWithContext, _this.getInputMethod(pickerType), collection, _this.mediaOptions && _this.mediaOptions.alignLeftOnInsert, _this.newInsertionBehaviour, widthPluginState, 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);
231
+ var widthPluginState = (_this$pluginInjection = _this.pluginInjectionApi) === null || _this$pluginInjection === void 0 ? void 0 : _this$pluginInjection.width.sharedState.currentState();
232
+ insertMediaSingleNode(_this.view, mediaStateWithContext, _this.getInputMethod(pickerType), collection, _this.mediaOptions && _this.mediaOptions.alignLeftOnInsert, _this.newInsertionBehaviour, widthPluginState, pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a === void 0 ? void 0 : _pluginInjectionApi$a.actions);
233
233
  } else if (getMediaFeatureFlag('mediaInline', (_this$mediaOptions2 = _this.mediaOptions) === null || _this$mediaOptions2 === void 0 ? void 0 : _this$mediaOptions2.featureFlags) && !isInEmptyLine(state) && (!isInsidePotentialEmptyParagraph(state) || isInListItem(state)) && canInsertMediaInline(state)) {
234
- var _pluginInjectionApi$d3, _pluginInjectionApi$d4;
235
- insertMediaInlineNode(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d3 = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d3 === void 0 ? void 0 : (_pluginInjectionApi$d4 = _pluginInjectionApi$d3.analytics) === null || _pluginInjectionApi$d4 === void 0 ? void 0 : _pluginInjectionApi$d4.actions)(_this.view, mediaStateWithContext, collection, _this.getInputMethod(pickerType));
234
+ var _pluginInjectionApi$a2;
235
+ insertMediaInlineNode(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a2 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a2 === void 0 ? void 0 : _pluginInjectionApi$a2.actions)(_this.view, mediaStateWithContext, collection, _this.getInputMethod(pickerType));
236
236
  } else {
237
- var _pluginInjectionApi$d5, _pluginInjectionApi$d6;
238
- insertMediaGroupNode(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$d5 = pluginInjectionApi.dependencies) === null || _pluginInjectionApi$d5 === void 0 ? void 0 : (_pluginInjectionApi$d6 = _pluginInjectionApi$d5.analytics) === null || _pluginInjectionApi$d6 === void 0 ? void 0 : _pluginInjectionApi$d6.actions)(_this.view, [mediaStateWithContext], collection, _this.getInputMethod(pickerType));
237
+ var _pluginInjectionApi$a3;
238
+ insertMediaGroupNode(pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$a3 = pluginInjectionApi.analytics) === null || _pluginInjectionApi$a3 === void 0 ? void 0 : _pluginInjectionApi$a3.actions)(_this.view, [mediaStateWithContext], collection, _this.getInputMethod(pickerType));
239
239
  }
240
240
 
241
241
  // do events when media state changes
@@ -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
@@ -171,14 +171,29 @@ export function transformSliceForMedia(slice, schema) {
171
171
  orderedList = _schema$nodes2.orderedList,
172
172
  media = _schema$nodes2.media,
173
173
  mediaInline = _schema$nodes2.mediaInline,
174
- expand = _schema$nodes2.expand;
174
+ expand = _schema$nodes2.expand,
175
+ nestedExpand = _schema$nodes2.nestedExpand;
175
176
  return function (selection) {
176
177
  var newSlice = slice;
177
- if (hasParentNodeOfType([layoutSection, table, bulletList, orderedList, expand])(selection)) {
178
+ if (hasParentNodeOfType([layoutSection, table, bulletList, orderedList, expand, nestedExpand])(selection)) {
178
179
  newSlice = mapSlice(newSlice, function (node) {
179
- var attrs = hasParentNodeOfType([layoutSection, table])(selection) ? {
180
+ var extendedOrLegacyAttrs = getBooleanFF('platform.editor.media.extended-resize-experience') ? {
181
+ layout: node.attrs.layout,
182
+ widthType: node.attrs.widthType,
183
+ width: node.attrs.width
184
+ } : {
180
185
  layout: node.attrs.layout
181
- } : {};
186
+ };
187
+ var attrs = {};
188
+ if (hasParentNodeOfType([layoutSection, table])(selection)) {
189
+ // Supports layouts
190
+ attrs = _objectSpread({}, extendedOrLegacyAttrs);
191
+ } else if (hasParentNodeOfType([bulletList, orderedList, expand, nestedExpand])(selection)) {
192
+ // does not support other layouts
193
+ attrs = _objectSpread(_objectSpread({}, extendedOrLegacyAttrs), {}, {
194
+ layout: 'center'
195
+ });
196
+ }
182
197
  return node.type.name === 'mediaSingle' ? mediaSingle.createChecked(attrs, node.content, node.marks) : node;
183
198
  });
184
199
  }