@atlaskit/editor-plugin-media 2.3.10 → 2.3.12

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 (45) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/cjs/mediaPlugin.js +1 -1
  3. package/dist/cjs/nodeviews/mediaGroup.js +2 -1
  4. package/dist/cjs/nodeviews/mediaGroupNext.js +2 -1
  5. package/dist/cjs/nodeviews/mediaInline.js +3 -1
  6. package/dist/cjs/nodeviews/mediaSingle.js +6 -27
  7. package/dist/cjs/nodeviews/mediaSingleNext.js +7 -30
  8. package/dist/cjs/pm-plugins/main.js +0 -4
  9. package/dist/cjs/pm-plugins/utils/media-single.js +1 -2
  10. package/dist/cjs/ui/CommentBadge/index.js +3 -5
  11. package/dist/cjs/ui/MediaViewer/MediaViewerContainer.js +2 -1
  12. package/dist/cjs/ui/MediaViewer/PortalWrapper.js +2 -2
  13. package/dist/cjs/ui/toolbar/index.js +117 -64
  14. package/dist/cjs/ui/toolbar/mediaInline.js +121 -63
  15. package/dist/es2019/mediaPlugin.js +1 -1
  16. package/dist/es2019/nodeviews/mediaGroup.js +2 -1
  17. package/dist/es2019/nodeviews/mediaGroupNext.js +2 -1
  18. package/dist/es2019/nodeviews/mediaInline.js +3 -1
  19. package/dist/es2019/nodeviews/mediaSingle.js +4 -26
  20. package/dist/es2019/nodeviews/mediaSingleNext.js +6 -29
  21. package/dist/es2019/pm-plugins/main.js +0 -4
  22. package/dist/es2019/pm-plugins/utils/media-single.js +1 -2
  23. package/dist/es2019/ui/CommentBadge/index.js +3 -5
  24. package/dist/es2019/ui/MediaViewer/MediaViewerContainer.js +2 -1
  25. package/dist/es2019/ui/MediaViewer/PortalWrapper.js +2 -2
  26. package/dist/es2019/ui/toolbar/index.js +114 -64
  27. package/dist/es2019/ui/toolbar/mediaInline.js +114 -61
  28. package/dist/esm/mediaPlugin.js +1 -1
  29. package/dist/esm/nodeviews/mediaGroup.js +2 -1
  30. package/dist/esm/nodeviews/mediaGroupNext.js +2 -1
  31. package/dist/esm/nodeviews/mediaInline.js +3 -1
  32. package/dist/esm/nodeviews/mediaSingle.js +6 -27
  33. package/dist/esm/nodeviews/mediaSingleNext.js +7 -30
  34. package/dist/esm/pm-plugins/main.js +0 -4
  35. package/dist/esm/pm-plugins/utils/media-single.js +1 -2
  36. package/dist/esm/ui/CommentBadge/index.js +3 -5
  37. package/dist/esm/ui/MediaViewer/MediaViewerContainer.js +2 -1
  38. package/dist/esm/ui/MediaViewer/PortalWrapper.js +2 -2
  39. package/dist/esm/ui/toolbar/index.js +117 -64
  40. package/dist/esm/ui/toolbar/mediaInline.js +121 -63
  41. package/dist/types/pm-plugins/pixel-resizing/reducer.d.ts +2 -2
  42. package/dist/types/ui/CommentBadge/index.d.ts +2 -3
  43. package/dist/types-ts4.5/pm-plugins/pixel-resizing/reducer.d.ts +2 -2
  44. package/dist/types-ts4.5/ui/CommentBadge/index.d.ts +2 -3
  45. package/package.json +10 -7
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @atlaskit/editor-plugin-media
2
2
 
3
+ ## 2.3.12
4
+
5
+ ### Patch Changes
6
+
7
+ - [#128664](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/128664)
8
+ [`abca3266336d9`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/abca3266336d9) -
9
+ [ED-23250] Remove form element from MediaFromUrl and consolidate experiments and feature flags in
10
+ prepartion for jira release
11
+ - Updated dependencies
12
+
13
+ ## 2.3.11
14
+
15
+ ### Patch Changes
16
+
17
+ - [#128574](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/128574)
18
+ [`cba34b8397ba2`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/cba34b8397ba2) -
19
+ [ux] [ED-26973] Update floating toolbar for inline and thumbnail file
20
+ - Updated dependencies
21
+
3
22
  ## 2.3.10
4
23
 
5
24
  ### Patch Changes
@@ -307,7 +307,7 @@ var mediaPlugin = exports.mediaPlugin = function mediaPlugin(_ref3) {
307
307
  pluginsOptions: {
308
308
  quickInsert: function quickInsert(_ref14) {
309
309
  var formatMessage = _ref14.formatMessage;
310
- return (0, _experiments.editorExperiment)('add-media-from-url', true) ? [] : [{
310
+ return (0, _platformFeatureFlags.fg)('platform_editor_add_media_from_url_rollout') ? [] : [{
311
311
  id: 'media',
312
312
  title: formatMessage(_messages.toolbarInsertBlockMessages.mediaFiles),
313
313
  description: formatMessage(_messages.toolbarInsertBlockMessages.mediaFilesDescription),
@@ -24,6 +24,7 @@ var _close = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/close")
24
24
  var _mediaCommon = require("@atlaskit/media-common");
25
25
  var _mediaFilmstrip = require("@atlaskit/media-filmstrip");
26
26
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
27
+ var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
27
28
  var _pluginKey = require("../pm-plugins/plugin-key");
28
29
  var _useMediaProvider = require("../ui/hooks/useMediaProvider");
29
30
  var _mediaGroupNext = require("./mediaGroupNext");
@@ -181,7 +182,7 @@ var MediaGroup = /*#__PURE__*/function (_React$Component) {
181
182
  items: items,
182
183
  mediaClientConfig: viewMediaClientConfig,
183
184
  featureFlags: mediaOptions.featureFlags,
184
- shouldOpenMediaViewer: editorViewMode
185
+ shouldOpenMediaViewer: editorViewMode && (0, _experiments.editorExperiment)('platform_editor_controls', 'control')
185
186
  });
186
187
  });
187
188
  _this.mediaNodes = [];
@@ -18,6 +18,7 @@ var _utils = require("@atlaskit/editor-common/utils");
18
18
  var _close = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/close"));
19
19
  var _mediaCommon = require("@atlaskit/media-common");
20
20
  var _mediaFilmstrip = require("@atlaskit/media-filmstrip");
21
+ var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
21
22
  var _pluginKey = require("../pm-plugins/plugin-key");
22
23
  var _mediaNodeUpdater = require("./mediaNodeUpdater");
23
24
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
@@ -289,7 +290,7 @@ var MediaGroupNext = exports.MediaGroupNext = (0, _reactIntlNext.injectIntl)( /*
289
290
  items: items,
290
291
  mediaClientConfig: viewMediaClientConfig,
291
292
  featureFlags: featureFlags,
292
- shouldOpenMediaViewer: editorViewMode
293
+ shouldOpenMediaViewer: editorViewMode && (0, _experiments.editorExperiment)('platform_editor_controls', 'control')
293
294
  });
294
295
  }));
295
296
  MediaGroupNext.displayName = 'MediaGroup';
@@ -24,6 +24,7 @@ var _selectionBasedNodeView = require("@atlaskit/editor-common/selection-based-n
24
24
  var _mediaCard = require("@atlaskit/media-card");
25
25
  var _mediaClientReact = require("@atlaskit/media-client-react");
26
26
  var _mediaUi = require("@atlaskit/media-ui");
27
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
27
28
  var _isType = require("../pm-plugins/utils/is-type");
28
29
  var _MediaViewerContainer = require("../ui/MediaViewer/MediaViewerContainer");
29
30
  var _mediaNodeUpdater = require("./mediaNodeUpdater");
@@ -211,7 +212,8 @@ var MediaInline = exports.MediaInline = function MediaInline(props) {
211
212
  mediaNode: props.node,
212
213
  mediaPluginState: props.mediaPluginState,
213
214
  isEditorViewMode: props.editorViewMode,
214
- isSelected: props.isSelected
215
+ isSelected: props.isSelected,
216
+ isInline: (0, _platformFeatureFlags.fg)('platform_editor_render_media_viewer_as_inline')
215
217
  }, (0, _react2.jsx)(_mediaCard.MediaInlineCard, {
216
218
  isSelected: props.isSelected,
217
219
  identifier: identifier,
@@ -30,7 +30,6 @@ var _utils2 = require("@atlaskit/editor-prosemirror/utils");
30
30
  var _cellSelection = require("@atlaskit/editor-tables/cell-selection");
31
31
  var _mediaClient = require("@atlaskit/media-client");
32
32
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
33
- var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
34
33
  var _captions = require("../pm-plugins/commands/captions");
35
34
  var _main = require("../pm-plugins/main");
36
35
  var _mediaCommon = require("../pm-plugins/utils/media-common");
@@ -315,7 +314,6 @@ var MediaSingleNode = exports.default = /*#__PURE__*/function (_Component) {
315
314
  key: "componentDidMount",
316
315
  value: function () {
317
316
  var _componentDidMount = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
318
- var _this$props$node$firs2;
319
317
  var contextIdentifierProvider;
320
318
  return _regenerator.default.wrap(function _callee3$(_context3) {
321
319
  while (1) switch (_context3.prev = _context3.next) {
@@ -334,20 +332,7 @@ var MediaSingleNode = exports.default = /*#__PURE__*/function (_Component) {
334
332
  contextIdentifierProvider: _context3.t1
335
333
  };
336
334
  _context3.t0.setState.call(_context3.t0, _context3.t2);
337
- // No-op but logging an exposure when an external image is rendered
338
- // Remove this block when cleaning up platform_editor_add_media_from_url
339
- if (((_this$props$node$firs2 = this.props.node.firstChild) === null || _this$props$node$firs2 === void 0 ? void 0 : _this$props$node$firs2.attrs.type) === 'external') {
340
- if ((0, _experiments.editorExperiment)('add-media-from-url', true)) {
341
- (0, _experiments.editorExperiment)('add-media-from-url', true, {
342
- exposure: true
343
- });
344
- } else {
345
- (0, _experiments.editorExperiment)('add-media-from-url', false, {
346
- exposure: true
347
- });
348
- }
349
- }
350
- case 11:
335
+ case 10:
351
336
  case "end":
352
337
  return _context3.stop();
353
338
  }
@@ -474,7 +459,6 @@ var MediaSingleNode = exports.default = /*#__PURE__*/function (_Component) {
474
459
  var shouldShowPlaceholder = mediaOptions.allowCaptions && node.childCount !== 2 && isSelected && state.selection instanceof _state.NodeSelection;
475
460
  shouldShowPlaceholder = !editorDisabled && shouldShowPlaceholder;
476
461
  var isCurrentNodeDrafting = (annotationPluginState === null || annotationPluginState === void 0 ? void 0 : annotationPluginState.isDrafting) && (annotationPluginState === null || annotationPluginState === void 0 ? void 0 : annotationPluginState.targetNodeId) === (node === null || node === void 0 || (_node$firstChild = node.firstChild) === null || _node$firstChild === void 0 ? void 0 : _node$firstChild.attrs.id);
477
- var shouldShowExternalMediaBadge = attrs.type === 'external';
478
462
  var pos = getPos();
479
463
  var isInsideTable = pos !== undefined && (0, _utils2.findParentNodeOfTypeClosestToPos)(state.doc.resolve(pos), [state.schema.nodes.table]);
480
464
  var currentMediaElement = function currentMediaElement() {
@@ -493,29 +477,24 @@ var MediaSingleNode = exports.default = /*#__PURE__*/function (_Component) {
493
477
  ,
494
478
  className: _styles.MediaSingleNodeSelector,
495
479
  onClick: this.onMediaSingleClicked
496
- }, (0, _experiments.editorExperiment)('add-media-from-url', true) && (0, _react2.jsx)(_mediaSingle.MediaBadges, {
480
+ }, (0, _platformFeatureFlags.fg)('platform_editor_add_media_from_url_rollout') && (0, _react2.jsx)(_mediaSingle.MediaBadges, {
497
481
  mediaElement: currentMediaElement(),
498
482
  mediaHeight: height,
499
483
  mediaWidth: width,
500
484
  extendedResizeOffset: (0, _platformFeatureFlags.fg)('platform_editor_media_extended_resize_experience') && !isInsideTable
501
485
  }, function (_ref5) {
502
- var badgeSize = _ref5.badgeSize,
503
- visible = _ref5.visible;
504
- return (0, _react2.jsx)(_react.default.Fragment, null, (0, _platformFeatureFlags.fg)('platform_editor_hide_external_media_badge') ? visible && (0, _react2.jsx)(_mediaSingle.ExternalImageBadge, {
505
- badgeSize: badgeSize,
486
+ var visible = _ref5.visible;
487
+ return (0, _react2.jsx)(_react.default.Fragment, null, visible && (0, _react2.jsx)(_mediaSingle.ExternalImageBadge, {
506
488
  type: attrs.type,
507
489
  url: attrs.type === 'external' ? attrs.url : undefined
508
- }) : shouldShowExternalMediaBadge && visible && (0, _react2.jsx)(_mediaSingle.ExternalImageBadge, {
509
- badgeSize: badgeSize
510
490
  }), mediaOptions.allowCommentsOnMedia && (0, _react2.jsx)(_CommentBadge.CommentBadgeNextWrapper, {
511
491
  view: view,
512
492
  api: pluginInjectionApi,
513
493
  mediaNode: node === null || node === void 0 ? void 0 : node.firstChild,
514
494
  getPos: getPos,
515
- isDrafting: isCurrentNodeDrafting,
516
- badgeSize: badgeSize
495
+ isDrafting: isCurrentNodeDrafting
517
496
  }));
518
- }), !(0, _experiments.editorExperiment)('add-media-from-url', true) && mediaOptions.allowCommentsOnMedia && (0, _react2.jsx)(_CommentBadge.CommentBadge, {
497
+ }), !(0, _platformFeatureFlags.fg)('platform_editor_add_media_from_url_rollout') && mediaOptions.allowCommentsOnMedia && (0, _react2.jsx)(_CommentBadge.CommentBadge, {
519
498
  view: view,
520
499
  api: pluginInjectionApi,
521
500
  mediaNode: node === null || node === void 0 ? void 0 : node.firstChild,
@@ -21,7 +21,6 @@ var _state = require("@atlaskit/editor-prosemirror/state");
21
21
  var _utils2 = require("@atlaskit/editor-prosemirror/utils");
22
22
  var _mediaClient = require("@atlaskit/media-client");
23
23
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
24
- var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
25
24
  var _captions = require("../pm-plugins/commands/captions");
26
25
  var _mediaCommon = require("../pm-plugins/utils/media-common");
27
26
  var _CaptionPlaceholder = require("../ui/CaptionPlaceholder");
@@ -288,7 +287,7 @@ var useUpdateSizeCallback = function useUpdateSizeCallback(_ref5) {
288
287
  */
289
288
  var FALLBACK_MOST_COMMON_WIDTH = 760;
290
289
  var MediaSingleNodeNext = exports.MediaSingleNodeNext = function MediaSingleNodeNext(mediaSingleNodeNextProps) {
291
- var _pluginInjectionApi$m, _mediaNode$firstChild2;
290
+ var _pluginInjectionApi$m, _mediaNode$firstChild;
292
291
  var selected = mediaSingleNodeNextProps.selected,
293
292
  getPos = mediaSingleNodeNextProps.getPos,
294
293
  nextMediaNode = mediaSingleNodeNextProps.node,
@@ -364,22 +363,6 @@ var MediaSingleNodeNext = exports.MediaSingleNodeNext = function MediaSingleNode
364
363
  }
365
364
  });
366
365
  }, [contextIdentifierProviderPromise]);
367
- _react.default.useEffect(function () {
368
- var _mediaNode$firstChild;
369
- // No-op but logging an exposure when an external image is rendered
370
- // Remove this block when cleaning up platform_editor_add_media_from_url
371
- if (((_mediaNode$firstChild = mediaNode.firstChild) === null || _mediaNode$firstChild === void 0 ? void 0 : _mediaNode$firstChild.attrs.type) === 'external') {
372
- if ((0, _experiments.editorExperiment)('add-media-from-url', true)) {
373
- (0, _experiments.editorExperiment)('add-media-from-url', true, {
374
- exposure: true
375
- });
376
- } else {
377
- (0, _experiments.editorExperiment)('add-media-from-url', false, {
378
- exposure: true
379
- });
380
- }
381
- }
382
- }, [mediaNode]);
383
366
  var _ref6 = mediaNode.attrs,
384
367
  layout = _ref6.layout,
385
368
  widthType = _ref6.widthType,
@@ -454,8 +437,7 @@ var MediaSingleNodeNext = exports.MediaSingleNodeNext = function MediaSingleNode
454
437
  }, [mediaSingleWidthAttribute, widthType, width, layout, contentWidthForLegacyExperience, containerWidth]);
455
438
  var currentMaxWidth = isSelected ? pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$m = pluginInjectionApi.media) === null || _pluginInjectionApi$m === void 0 || (_pluginInjectionApi$m = _pluginInjectionApi$m.sharedState.currentState()) === null || _pluginInjectionApi$m === void 0 ? void 0 : _pluginInjectionApi$m.currentMaxWidth : undefined;
456
439
  var contentWidth = currentMaxWidth || lineLength;
457
- var isCurrentNodeDrafting = Boolean((annotationPluginState === null || annotationPluginState === void 0 ? void 0 : annotationPluginState.isDrafting) && (annotationPluginState === null || annotationPluginState === void 0 ? void 0 : annotationPluginState.targetNodeId) === (mediaNode === null || mediaNode === void 0 || (_mediaNode$firstChild2 = mediaNode.firstChild) === null || _mediaNode$firstChild2 === void 0 ? void 0 : _mediaNode$firstChild2.attrs.id));
458
- var shouldShowExternalMediaBadge = childMediaNodeAttrs.type === 'external';
440
+ var isCurrentNodeDrafting = Boolean((annotationPluginState === null || annotationPluginState === void 0 ? void 0 : annotationPluginState.isDrafting) && (annotationPluginState === null || annotationPluginState === void 0 ? void 0 : annotationPluginState.targetNodeId) === (mediaNode === null || mediaNode === void 0 || (_mediaNode$firstChild = mediaNode.firstChild) === null || _mediaNode$firstChild === void 0 ? void 0 : _mediaNode$firstChild.attrs.id));
459
441
  var mediaSingleWrapperRef = /*#__PURE__*/_react.default.createRef();
460
442
  var captionPlaceHolderRef = /*#__PURE__*/_react.default.createRef();
461
443
  var onMediaSingleClicked = _react.default.useCallback(function (event) {
@@ -492,29 +474,24 @@ var MediaSingleNodeNext = exports.MediaSingleNodeNext = function MediaSingleNode
492
474
  ,
493
475
  className: _styles.MediaSingleNodeSelector,
494
476
  onClick: onMediaSingleClicked
495
- }, (0, _experiments.editorExperiment)('add-media-from-url', true) && (0, _react2.jsx)(_mediaSingle.MediaBadges, {
477
+ }, (0, _platformFeatureFlags.fg)('platform_editor_add_media_from_url_rollout') && (0, _react2.jsx)(_mediaSingle.MediaBadges, {
496
478
  mediaElement: currentMediaElement(),
497
479
  mediaHeight: height,
498
480
  mediaWidth: width,
499
481
  extendedResizeOffset: (0, _platformFeatureFlags.fg)('platform_editor_media_extended_resize_experience') && !isInsideTable
500
482
  }, function (_ref7) {
501
- var badgeSize = _ref7.badgeSize,
502
- visible = _ref7.visible;
503
- return (0, _react2.jsx)(_react.default.Fragment, null, (0, _platformFeatureFlags.fg)('platform_editor_hide_external_media_badge') ? visible && (0, _react2.jsx)(_mediaSingle.ExternalImageBadge, {
504
- badgeSize: badgeSize,
483
+ var visible = _ref7.visible;
484
+ return (0, _react2.jsx)(_react.default.Fragment, null, visible && (0, _react2.jsx)(_mediaSingle.ExternalImageBadge, {
505
485
  type: childMediaNodeAttrs.type,
506
486
  url: childMediaNodeAttrs.type === 'external' ? childMediaNodeAttrs.url : undefined
507
- }) : shouldShowExternalMediaBadge && visible && (0, _react2.jsx)(_mediaSingle.ExternalImageBadge, {
508
- badgeSize: badgeSize
509
487
  }), mediaOptions.allowCommentsOnMedia && (0, _react2.jsx)(_CommentBadge.CommentBadgeNextWrapper, {
510
488
  view: view,
511
489
  api: pluginInjectionApi,
512
490
  mediaNode: mediaNode === null || mediaNode === void 0 ? void 0 : mediaNode.firstChild,
513
491
  getPos: getPos,
514
- isDrafting: isCurrentNodeDrafting,
515
- badgeSize: badgeSize
492
+ isDrafting: isCurrentNodeDrafting
516
493
  }));
517
- }), !(0, _experiments.editorExperiment)('add-media-from-url', true) && mediaOptions.allowCommentsOnMedia && (0, _react2.jsx)(_CommentBadge.CommentBadge, {
494
+ }), !(0, _platformFeatureFlags.fg)('platform_editor_add_media_from_url_rollout') && mediaOptions.allowCommentsOnMedia && (0, _react2.jsx)(_CommentBadge.CommentBadge, {
518
495
  view: view,
519
496
  api: pluginInjectionApi,
520
497
  mediaNode: mediaNode === null || mediaNode === void 0 ? void 0 : mediaNode.firstChild,
@@ -27,7 +27,6 @@ var _view2 = require("@atlaskit/editor-prosemirror/view");
27
27
  var _cellSelection = require("@atlaskit/editor-tables/cell-selection");
28
28
  var _mediaClient = require("@atlaskit/media-client");
29
29
  var _mediaCommon = require("@atlaskit/media-common");
30
- var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
31
30
  var _helpers = _interopRequireWildcard(require("../pm-plugins/commands/helpers"));
32
31
  var helpers = _helpers;
33
32
  var _mediaCommon2 = require("../pm-plugins/utils/media-common");
@@ -218,9 +217,6 @@ var MediaPluginStateImplementation = exports.MediaPluginStateImplementation = /*
218
217
  });
219
218
  (0, _defineProperty2.default)(this, "showMediaPicker", function () {
220
219
  if (_this.openMediaPickerBrowser) {
221
- (0, _experiments.editorExperiment)('add-media-from-url', false, {
222
- exposure: true
223
- });
224
220
  return _this.openMediaPickerBrowser();
225
221
  }
226
222
  _this.onPopupToggleCallback(true);
@@ -16,7 +16,6 @@ var _model = require("@atlaskit/editor-prosemirror/model");
16
16
  var _state = require("@atlaskit/editor-prosemirror/state");
17
17
  var _utils2 = require("@atlaskit/editor-prosemirror/utils");
18
18
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
19
- var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
20
19
  var _mediaCommon = require("../utils/media-common");
21
20
  var _analytics2 = require("./analytics");
22
21
  var _isType = require("./is-type");
@@ -107,7 +106,7 @@ var insertMediaAsMediaSingle = exports.insertMediaAsMediaSingle = function inser
107
106
  return false;
108
107
  }
109
108
  var resizeExperience = (0, _platformFeatureFlags.fg)('platform_editor_media_extended_resize_experience');
110
- var insertMediaPopup = (0, _experiments.editorExperiment)('add-media-from-url', true);
109
+ var insertMediaPopup = (0, _platformFeatureFlags.fg)('platform_editor_add_media_from_url_rollout');
111
110
  var mediaSingleAttrs = resizeExperience && insertMediaPopup ? {
112
111
  widthType: 'pixel',
113
112
  width: (0, _mediaSingle.getMediaSingleInitialWidth)((_node$attrs$width = node.attrs.width) !== null && _node$attrs$width !== void 0 ? _node$attrs$width : _mediaSingle.DEFAULT_IMAGE_WIDTH),
@@ -85,7 +85,7 @@ var CommentBadge = exports.CommentBadge = (0, _reactIntlNext.injectIntl)(Comment
85
85
  /**
86
86
  * Remove CommentBadgeWrapper component above
87
87
  * and rename CommentBadgeNextWrapper to CommentBadgeWrapper
88
- * when clean up platform_editor_add_media_from_url feature flag
88
+ * when clean up platform_editor_add_media_from_url_rollout feature flag
89
89
  */
90
90
 
91
91
  var CommentBadgeNextWrapper = exports.CommentBadgeNextWrapper = function CommentBadgeNextWrapper(_ref2) {
@@ -93,8 +93,7 @@ var CommentBadgeNextWrapper = exports.CommentBadgeNextWrapper = function Comment
93
93
  mediaNode = _ref2.mediaNode,
94
94
  view = _ref2.view,
95
95
  getPos = _ref2.getPos,
96
- isDrafting = _ref2.isDrafting,
97
- badgeSize = _ref2.badgeSize;
96
+ isDrafting = _ref2.isDrafting;
98
97
  var _useState3 = (0, _react.useState)(false),
99
98
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
100
99
  entered = _useState4[0],
@@ -140,7 +139,6 @@ var CommentBadgeNextWrapper = exports.CommentBadgeNextWrapper = function Comment
140
139
  },
141
140
  onMouseLeave: function onMouseLeave() {
142
141
  return setEntered(false);
143
- },
144
- badgeSize: badgeSize
142
+ }
145
143
  });
146
144
  };
@@ -9,6 +9,7 @@ exports.MediaViewerContainer = void 0;
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
  var _react2 = require("@emotion/react");
12
+ var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
12
13
  var _isType = require("../../pm-plugins/utils/is-type");
13
14
  var _utils = require("../../ui/toolbar/utils");
14
15
  var _PortalWrapper = require("./PortalWrapper");
@@ -52,7 +53,7 @@ var MediaViewerContainer = exports.MediaViewerContainer = function MediaViewerCo
52
53
  setShowMediaViewer(false);
53
54
  };
54
55
  var isVideoMedia = (0, _isType.isVideo)((_mediaNode$firstChild = mediaNode.firstChild) === null || _mediaNode$firstChild === void 0 ? void 0 : _mediaNode$firstChild.attrs.__fileMimeType);
55
- var shouldShowViewer = isEditorViewMode && showViewer && selectedNodeAttrs && mediaClientConfig && !isVideoMedia;
56
+ var shouldShowViewer = isEditorViewMode && showViewer && selectedNodeAttrs && mediaClientConfig && !isVideoMedia && (0, _experiments.editorExperiment)('platform_editor_controls', 'control');
56
57
  return (0, _react2.jsx)(_react.Fragment, null, isEditorViewMode ? (0, _react2.jsx)(_react.Fragment, null, isInline ?
57
58
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions
58
59
  (0, _react2.jsx)("span", {
@@ -8,7 +8,7 @@ exports.RenderMediaViewer = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _reactDom = _interopRequireDefault(require("react-dom"));
10
10
  var _mediaViewer = require("@atlaskit/media-viewer");
11
- var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
11
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
12
12
  var _utils = require("../../ui/toolbar/utils");
13
13
  var getIdentifier = function getIdentifier(attrs) {
14
14
  if ((0, _utils.isExternalMedia)(attrs)) {
@@ -33,7 +33,7 @@ var RenderMediaViewer = exports.RenderMediaViewer = function RenderMediaViewer(_
33
33
  selectedNodeAttrs = _ref.selectedNodeAttrs,
34
34
  _ref$items = _ref.items,
35
35
  items = _ref$items === void 0 ? [] : _ref$items;
36
- if ((0, _experiments.editorExperiment)('add-media-from-url', true)) {
36
+ if ((0, _platformFeatureFlags.fg)('platform_editor_add_media_from_url_rollout')) {
37
37
  var _identifier = getIdentifier(selectedNodeAttrs);
38
38
  var collectionName = (0, _utils.isExternalMedia)(selectedNodeAttrs) ? '' : selectedNodeAttrs.collection;
39
39
  return /*#__PURE__*/_reactDom.default.createPortal( /*#__PURE__*/_react.default.createElement(_mediaViewer.MediaViewer, {
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.handleShowMediaViewer = exports.floatingToolbar = void 0;
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
12
  var _react = _interopRequireDefault(require("react"));
13
13
  var _analytics = require("@atlaskit/editor-common/analytics");
14
14
  var _card = require("@atlaskit/editor-common/card");
@@ -91,41 +91,10 @@ var handleShowMediaViewer = exports.handleShowMediaViewer = function handleShowM
91
91
  };
92
92
  var generateMediaCardFloatingToolbar = function generateMediaCardFloatingToolbar(state, intl, mediaPluginState, hoverDecoration, pluginInjectionApi, editorAnalyticsAPI, forceFocusSelector, isViewOnly) {
93
93
  var _mediaPluginState$med, _pluginInjectionApi$c;
94
- if (isViewOnly) {
95
- return [];
96
- }
97
94
  var enforceMediaDataSecurityPolicy = mediaPluginState === null || mediaPluginState === void 0 || (_mediaPluginState$med = mediaPluginState.mediaClientConfig) === null || _mediaPluginState$med === void 0 ? void 0 : _mediaPluginState$med.enforceDataSecurityPolicy;
98
95
  var disableDownloadButton = typeof enforceMediaDataSecurityPolicy === 'boolean' ? enforceMediaDataSecurityPolicy : false;
99
- var mediaGroup = state.schema.nodes.mediaGroup;
100
- var items = [{
101
- id: 'editor.media.view.switcher.inline',
102
- type: 'button',
103
- icon: _imageInline.default,
104
- iconFallback: _card.IconInline,
105
- selected: false,
106
- focusEditoronEnter: true,
107
- disabled: false,
108
- onClick: (0, _commands3.changeMediaCardToInline)(editorAnalyticsAPI, forceFocusSelector),
109
- title: intl.formatMessage(_messages.cardMessages.inlineTitle),
110
- testId: 'inline-appearance',
111
- className: 'inline-appearance' // a11y. uses to force focus on item
112
- }, {
113
- id: 'editor.media.view.switcher.thumbnail',
114
- type: 'button',
115
- icon: _smartLinkCard.default,
116
- iconFallback: _card.IconCard,
117
- selected: true,
118
- disabled: false,
119
- focusEditoronEnter: true,
120
- onClick: function onClick() {
121
- return true;
122
- },
123
- title: intl.formatMessage(_messages.cardMessages.blockTitle),
124
- testId: 'thumbnail-appearance',
125
- className: 'thumbnail-appearance' // a11y. uses to force focus on item
126
- }, {
127
- type: 'separator'
128
- }, {
96
+ var isEditorControlsEnabled = (0, _experiments.editorExperiment)('platform_editor_controls', 'variant1');
97
+ var preview = {
129
98
  id: 'editor.media.viewer',
130
99
  testId: 'file-preview-toolbar-button',
131
100
  type: 'button',
@@ -141,9 +110,8 @@ var generateMediaCardFloatingToolbar = function generateMediaCardFloatingToolbar
141
110
  },
142
111
  disabled: (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$c = pluginInjectionApi.connectivity) === null || _pluginInjectionApi$c === void 0 || (_pluginInjectionApi$c = _pluginInjectionApi$c.sharedState) === null || _pluginInjectionApi$c === void 0 || (_pluginInjectionApi$c = _pluginInjectionApi$c.currentState()) === null || _pluginInjectionApi$c === void 0 ? void 0 : _pluginInjectionApi$c.mode) === 'offline',
143
112
  supportsViewMode: true
144
- }, {
145
- type: 'separator'
146
- }, {
113
+ };
114
+ var download = _objectSpread({
147
115
  id: 'editor.media.card.download',
148
116
  type: 'button',
149
117
  icon: _download.default,
@@ -153,33 +121,118 @@ var generateMediaCardFloatingToolbar = function generateMediaCardFloatingToolbar
153
121
  },
154
122
  title: intl.formatMessage(_mediaUi.messages.download),
155
123
  disabled: disableDownloadButton
156
- }, {
157
- type: 'separator'
158
- }, {
159
- type: 'copy-button',
160
- supportsViewMode: true,
161
- items: [{
162
- state: state,
163
- formatMessage: intl.formatMessage,
164
- nodeType: mediaGroup
165
- }]
166
- }, {
167
- type: 'separator'
168
- }, {
169
- id: 'editor.media.delete',
170
- type: 'button',
171
- appearance: 'danger',
172
- focusEditoronEnter: true,
173
- icon: _delete.default,
174
- iconFallback: _remove.default,
175
- onMouseEnter: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, true),
176
- onMouseLeave: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, false),
177
- onFocus: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, true),
178
- onBlur: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, false),
179
- title: intl.formatMessage(_messages.default.remove),
180
- onClick: handleRemoveMediaGroup,
181
- testId: 'media-toolbar-remove-button'
182
- }];
124
+ }, isEditorControlsEnabled && {
125
+ supportsViewMode: true
126
+ });
127
+ if (isViewOnly && !isEditorControlsEnabled) {
128
+ return [];
129
+ }
130
+ var mediaGroup = state.schema.nodes.mediaGroup;
131
+ var items = [];
132
+ if (!isEditorControlsEnabled) {
133
+ items.push({
134
+ id: 'editor.media.view.switcher.inline',
135
+ type: 'button',
136
+ icon: _imageInline.default,
137
+ iconFallback: _card.IconInline,
138
+ selected: false,
139
+ focusEditoronEnter: true,
140
+ disabled: false,
141
+ onClick: (0, _commands3.changeMediaCardToInline)(editorAnalyticsAPI, forceFocusSelector),
142
+ title: intl.formatMessage(_messages.cardMessages.inlineTitle),
143
+ testId: 'inline-appearance',
144
+ className: 'inline-appearance' // a11y. uses to force focus on item
145
+ }, {
146
+ id: 'editor.media.view.switcher.thumbnail',
147
+ type: 'button',
148
+ icon: _smartLinkCard.default,
149
+ iconFallback: _card.IconCard,
150
+ selected: true,
151
+ disabled: false,
152
+ focusEditoronEnter: true,
153
+ onClick: function onClick() {
154
+ return true;
155
+ },
156
+ title: intl.formatMessage(_messages.cardMessages.blockTitle),
157
+ testId: 'thumbnail-appearance',
158
+ className: 'thumbnail-appearance' // a11y. uses to force focus on item
159
+ }, {
160
+ type: 'separator'
161
+ }, preview, {
162
+ type: 'separator'
163
+ }, download, {
164
+ type: 'separator'
165
+ }, {
166
+ type: 'copy-button',
167
+ supportsViewMode: true,
168
+ items: [{
169
+ state: state,
170
+ formatMessage: intl.formatMessage,
171
+ nodeType: mediaGroup
172
+ }]
173
+ }, {
174
+ type: 'separator'
175
+ }, {
176
+ id: 'editor.media.delete',
177
+ type: 'button',
178
+ appearance: 'danger',
179
+ focusEditoronEnter: true,
180
+ icon: _delete.default,
181
+ iconFallback: _remove.default,
182
+ onMouseEnter: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, true),
183
+ onMouseLeave: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, false),
184
+ onFocus: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, true),
185
+ onBlur: hoverDecoration === null || hoverDecoration === void 0 ? void 0 : hoverDecoration(mediaGroup, false),
186
+ title: intl.formatMessage(_messages.default.remove),
187
+ onClick: handleRemoveMediaGroup,
188
+ testId: 'media-toolbar-remove-button'
189
+ });
190
+ } else {
191
+ var options = [{
192
+ id: 'editor.media.view.switcher.inline',
193
+ title: intl.formatMessage(_messages.cardMessages.inlineTitle),
194
+ onClick: (0, _commands3.changeMediaCardToInline)(editorAnalyticsAPI, forceFocusSelector),
195
+ icon: /*#__PURE__*/_react.default.createElement(_imageInline.default, {
196
+ label: "",
197
+ spacing: "spacious"
198
+ })
199
+ }, {
200
+ id: 'editor.media.view.switcher.thumbnail',
201
+ title: intl.formatMessage(_messages.cardMessages.blockTitle),
202
+ selected: true,
203
+ onClick: function onClick() {
204
+ return true;
205
+ },
206
+ icon: /*#__PURE__*/_react.default.createElement(_smartLinkCard.default, {
207
+ label: "",
208
+ spacing: "spacious"
209
+ })
210
+ }];
211
+ var switcherDropdown = {
212
+ title: intl.formatMessage(_mediaUi.messages.fileDisplayOptions),
213
+ id: 'media-group-inline-switcher-toolbar-item',
214
+ testId: 'media-group-inline-switcher-dropdown',
215
+ type: 'dropdown',
216
+ options: options,
217
+ icon: function icon() {
218
+ return /*#__PURE__*/_react.default.createElement(_smartLinkCard.default, {
219
+ label: "",
220
+ spacing: "spacious"
221
+ });
222
+ }
223
+ };
224
+ items.push(switcherDropdown, {
225
+ type: 'separator',
226
+ fullHeight: true
227
+ }, download, {
228
+ type: 'separator',
229
+ fullHeight: true,
230
+ supportsViewMode: true
231
+ }, preview, {
232
+ type: 'separator',
233
+ fullHeight: true
234
+ });
235
+ }
183
236
  return items;
184
237
  };
185
238
  var generateMediaSingleFloatingToolbar = function generateMediaSingleFloatingToolbar(state, intl, options, pluginState, mediaLinkingState, pluginInjectionApi) {