@atlaskit/editor-plugin-media 1.45.0 → 1.45.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # @atlaskit/editor-plugin-media
2
2
 
3
+ ## 1.45.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [#112186](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/112186)
8
+ [`9462d8ca2405a`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/9462d8ca2405a) -
9
+ Bump adf-schema to 47.2.1
10
+ - Updated dependencies
11
+
12
+ ## 1.45.1
13
+
14
+ ### Patch Changes
15
+
16
+ - [#112160](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/112160)
17
+ [`00ccb71f91143`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/00ccb71f91143) -
18
+ ED-26483 cleanup platform_editor_media_interaction_improvements
19
+
3
20
  ## 1.45.0
4
21
 
5
22
  ### Minor Changes
@@ -67,7 +67,7 @@ var MediaViewerFunctionalComponent = function MediaViewerFunctionalComponent(_re
67
67
  // when document changes are made while media viewer is open
68
68
 
69
69
  var mediaItems = (0, _react.useMemo)(function () {
70
- if (mediaState !== null && mediaState !== void 0 && mediaState.isMediaViewerVisible && (0, _platformFeatureFlags.fg)('platform_editor_media_interaction_improvements')) {
70
+ if (mediaState !== null && mediaState !== void 0 && mediaState.isMediaViewerVisible) {
71
71
  var mediaNodes = (0, _mediaCommon2.extractMediaNodes)(editorView.state.doc);
72
72
  return (0, _mediaCommon2.createMediaIdentifierArray)(mediaNodes);
73
73
  }
@@ -86,7 +86,7 @@ var MediaViewerFunctionalComponent = function MediaViewerFunctionalComponent(_re
86
86
  mediaClientConfig: mediaState === null || mediaState === void 0 ? void 0 : mediaState.mediaClientConfig,
87
87
  onClose: handleOnClose,
88
88
  selectedNodeAttrs: mediaState.mediaViewerSelectedMedia,
89
- items: (0, _platformFeatureFlags.fg)('platform_editor_media_interaction_improvements') ? mediaItems : undefined
89
+ items: mediaItems
90
90
  });
91
91
  };
92
92
  var mediaPlugin = exports.mediaPlugin = function mediaPlugin(_ref3) {
@@ -19,6 +19,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
19
19
  var _react = _interopRequireWildcard(require("react"));
20
20
  var _react2 = require("@emotion/react");
21
21
  var _hooks = require("@atlaskit/editor-common/hooks");
22
+ var _media = require("@atlaskit/editor-common/media");
22
23
  var _mediaSingle = require("@atlaskit/editor-common/media-single");
23
24
  var _providerFactory = require("@atlaskit/editor-common/provider-factory");
24
25
  var _reactNodeView = _interopRequireDefault(require("@atlaskit/editor-common/react-node-view"));
@@ -528,10 +529,12 @@ var MediaSingleNode = exports.default = /*#__PURE__*/function (_Component) {
528
529
  // remove typecasting
529
530
  , {
530
531
  ref: this.captionPlaceHolderRef,
531
- onClick: this.clickPlaceholder
532
+ onClick: this.clickPlaceholder,
533
+ placeholderMessage: mediaOptions.allowImagePreview ? _media.captionMessages.placeholderWithDoubleClickPrompt : _media.captionMessages.placeholder
532
534
  }) : (0, _react2.jsx)(_CaptionPlaceholder.CaptionPlaceholder, {
533
535
  ref: this.captionPlaceHolderRef,
534
- onClick: this.clickPlaceholder
536
+ onClick: this.clickPlaceholder,
537
+ placeholderMessage: mediaOptions.allowImagePreview ? _media.captionMessages.placeholderWithDoubleClickPrompt : _media.captionMessages.placeholder
535
538
  })));
536
539
  return (0, _react2.jsx)(_react.Fragment, null, canResize ? (0, _platformFeatureFlags.fg)('platform_editor_media_extended_resize_experience') ? (0, _react2.jsx)(_ResizableMediaSingleNext.default
537
540
  // Ignored via go/ees005
@@ -13,6 +13,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
13
13
  var _react = _interopRequireWildcard(require("react"));
14
14
  var _react2 = require("@emotion/react");
15
15
  var _hooks = require("@atlaskit/editor-common/hooks");
16
+ var _media = require("@atlaskit/editor-common/media");
16
17
  var _mediaSingle = require("@atlaskit/editor-common/media-single");
17
18
  var _ui = require("@atlaskit/editor-common/ui");
18
19
  var _utils = require("@atlaskit/editor-common/utils");
@@ -527,10 +528,12 @@ var MediaSingleNodeNext = exports.MediaSingleNodeNext = function MediaSingleNode
527
528
  // remove typecasting
528
529
  , {
529
530
  ref: captionPlaceHolderRef,
530
- onClick: clickPlaceholder
531
+ onClick: clickPlaceholder,
532
+ placeholderMessage: mediaOptions.allowImagePreview ? _media.captionMessages.placeholderWithDoubleClickPrompt : _media.captionMessages.placeholder
531
533
  }) : (0, _react2.jsx)(_CaptionPlaceholder.CaptionPlaceholder, {
532
534
  ref: captionPlaceHolderRef,
533
- onClick: clickPlaceholder
535
+ onClick: clickPlaceholder,
536
+ placeholderMessage: mediaOptions.allowImagePreview ? _media.captionMessages.placeholderWithDoubleClickPrompt : _media.captionMessages.placeholder
534
537
  })));
535
538
  return (0, _react2.jsx)(_react.Fragment, null, canResize ? (0, _platformFeatureFlags.fg)('platform_editor_media_extended_resize_experience') ? (0, _react2.jsx)(_ResizableMediaSingleNext.default, {
536
539
  view: view,
@@ -13,7 +13,6 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
13
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
14
  var _assert = _interopRequireDefault(require("assert"));
15
15
  var _react = _interopRequireDefault(require("react"));
16
- var _reactDom = _interopRequireDefault(require("react-dom"));
17
16
  var _reactIntlNext = require("react-intl-next");
18
17
  var _uuid = _interopRequireDefault(require("uuid"));
19
18
  var _analytics = require("@atlaskit/editor-common/analytics");
@@ -28,7 +27,6 @@ var _view2 = require("@atlaskit/editor-prosemirror/view");
28
27
  var _cellSelection = require("@atlaskit/editor-tables/cell-selection");
29
28
  var _mediaClient = require("@atlaskit/media-client");
30
29
  var _mediaCommon = require("@atlaskit/media-common");
31
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
32
30
  var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
33
31
  var _helpers = _interopRequireWildcard(require("../pm-plugins/commands/helpers"));
34
32
  var helpers = _helpers;
@@ -55,36 +53,20 @@ var MEDIA_PLUGIN_RESIZING_WIDTH_KEY = exports.MEDIA_PLUGIN_RESIZING_WIDTH_KEY =
55
53
  var createDropPlaceholder = function createDropPlaceholder(intl, nodeViewPortalProviderAPI, dropPlaceholderKey, allowDropLine) {
56
54
  var dropPlaceholder = document.createElement('div');
57
55
  var createElement = _react.default.createElement;
58
- if ((0, _platformFeatureFlags.fg)('platform_editor_react18_plugin_portalprovider')) {
59
- if (allowDropLine) {
60
- nodeViewPortalProviderAPI.render(function () {
61
- return createElement(_reactIntlNext.RawIntlProvider, {
62
- value: intl
63
- }, createElement(_DropPlaceholder.default, {
64
- type: 'single'
65
- }));
66
- }, dropPlaceholder, dropPlaceholderKey);
67
- } else {
68
- nodeViewPortalProviderAPI.render(function () {
69
- return createElement(_reactIntlNext.RawIntlProvider, {
70
- value: intl
71
- }, createElement(_DropPlaceholder.default));
72
- }, dropPlaceholder, dropPlaceholderKey);
73
- }
74
- } else {
75
- if (allowDropLine) {
76
- //eslint-disable-next-line react/no-deprecated
77
- _reactDom.default.render(createElement(_reactIntlNext.RawIntlProvider, {
56
+ if (allowDropLine) {
57
+ nodeViewPortalProviderAPI.render(function () {
58
+ return createElement(_reactIntlNext.RawIntlProvider, {
78
59
  value: intl
79
60
  }, createElement(_DropPlaceholder.default, {
80
61
  type: 'single'
81
- })), dropPlaceholder);
82
- } else {
83
- //eslint-disable-next-line react/no-deprecated
84
- _reactDom.default.render(createElement(_reactIntlNext.RawIntlProvider, {
62
+ }));
63
+ }, dropPlaceholder, dropPlaceholderKey);
64
+ } else {
65
+ nodeViewPortalProviderAPI.render(function () {
66
+ return createElement(_reactIntlNext.RawIntlProvider, {
85
67
  value: intl
86
- }, createElement(_DropPlaceholder.default)), dropPlaceholder);
87
- }
68
+ }, createElement(_DropPlaceholder.default));
69
+ }, dropPlaceholder, dropPlaceholderKey);
88
70
  }
89
71
  return dropPlaceholder;
90
72
  };
@@ -957,12 +939,7 @@ var createPlugin = exports.createPlugin = function createPlugin(_schema, options
957
939
  key: 'drop-placeholder',
958
940
  destroy: function destroy(elem) {
959
941
  if (elem instanceof HTMLElement) {
960
- if ((0, _platformFeatureFlags.fg)('platform_editor_react18_plugin_portalprovider')) {
961
- nodeViewPortalProviderAPI.remove(dropPlaceholderKey);
962
- } else {
963
- //eslint-disable-next-line react/no-deprecated
964
- _reactDom.default.unmountComponentAtNode(elem);
965
- }
942
+ nodeViewPortalProviderAPI.remove(dropPlaceholderKey);
966
943
  }
967
944
  }
968
945
  })].concat(mediaNodes);
@@ -1011,9 +988,11 @@ var createPlugin = exports.createPlugin = function createPlugin(_schema, options
1011
988
  return false;
1012
989
  },
1013
990
  handleDoubleClickOn: function handleDoubleClickOn(view) {
1014
- var _pluginInjectionApi$e;
1015
- if (!(0, _platformFeatureFlags.fg)('platform_editor_media_interaction_improvements')) {
1016
- return;
991
+ var _pluginState$mediaOpt, _pluginInjectionApi$e;
992
+ // Check if media viewer is enabled
993
+ var pluginState = getMediaPluginState(view.state);
994
+ if (!((_pluginState$mediaOpt = pluginState.mediaOptions) !== null && _pluginState$mediaOpt !== void 0 && _pluginState$mediaOpt.allowImagePreview)) {
995
+ return false;
1017
996
  }
1018
997
  var isLivePagesViewMode = (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 || (_pluginInjectionApi$e = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e === void 0 ? void 0 : _pluginInjectionApi$e.mode) === 'view';
1019
998
 
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.CaptionPlaceholderButton = exports.CaptionPlaceholder = void 0;
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
10
  var _react = _interopRequireWildcard(require("react"));
12
11
  var _react2 = require("@emotion/react");
@@ -24,24 +23,22 @@ var _templateObject;
24
23
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
25
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); }
26
25
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
27
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
26
  // eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression, @atlaskit/design-system/consistent-css-prop-usage -- Ignored via go/DSP-18766
30
27
  var placeholder = (0, _react2.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\tcolor: ", ";\n\twidth: 100%;\n\ttext-align: center;\n\tmargin-top: ", " !important;\n\tdisplay: block;\n"])), "var(--ds-text-subtlest, ".concat(_colors.N200, ")"), "var(--ds-space-100, 8px)");
31
28
  var placeholderButton = (0, _primitives.xcss)({
32
29
  width: '100%',
33
30
  marginTop: 'space.100'
34
31
  });
35
-
36
32
  // platform_editor_typography_ugc clean up
37
33
  // Remove this component
38
34
  var CaptionPlaceholder = exports.CaptionPlaceholder = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
39
- var onClick = _ref.onClick;
35
+ var onClick = _ref.onClick,
36
+ placeholderMessage = _ref.placeholderMessage;
40
37
  var handlePointerDown = (0, _react.useCallback)(function (e) {
41
38
  e.preventDefault();
42
39
  onClick();
43
40
  }, [onClick]);
44
- var message = (0, _platformFeatureFlags.fg)('platform_editor_media_interaction_improvements') ? _objectSpread({}, _media.captionMessages.placeholderWithDoubleClickPrompt) : _objectSpread({}, _media.captionMessages.placeholder);
41
+ var computedPlaceholderMessage = placeholderMessage ? placeholderMessage : _media.captionMessages.placeholder;
45
42
 
46
43
  // This issue is a temporary fix for users being able to edit captions on edge browsers. This will be removed
47
44
  // replaced with CaptionPlaceholderButton in the near future and this code can be removed.
@@ -57,7 +54,7 @@ var CaptionPlaceholder = exports.CaptionPlaceholder = /*#__PURE__*/_react.defaul
57
54
  }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage
58
55
  // Ignored via go/ees005
59
56
  // eslint-disable-next-line react/jsx-props-no-spreading
60
- , message))
57
+ , computedPlaceholderMessage))
61
58
  );
62
59
  }
63
60
  return (
@@ -71,17 +68,18 @@ var CaptionPlaceholder = exports.CaptionPlaceholder = /*#__PURE__*/_react.defaul
71
68
  }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage
72
69
  // Ignored via go/ees005
73
70
  // eslint-disable-next-line react/jsx-props-no-spreading
74
- , message))
71
+ , computedPlaceholderMessage))
75
72
  );
76
73
  });
77
74
  var CaptionPlaceholderButton = exports.CaptionPlaceholderButton = /*#__PURE__*/_react.default.forwardRef(function (_ref2, ref) {
78
- var onClick = _ref2.onClick;
75
+ var onClick = _ref2.onClick,
76
+ placeholderMessage = _ref2.placeholderMessage;
79
77
  var handleMouseDown = (0, _react.useCallback)(function (e) {
80
78
  // In firefox, button is focused when mouse down, which make editor lose focus
81
79
  // Hence we want to disabled it so that user can type in caption directly after click
82
80
  e.preventDefault();
83
81
  }, []);
84
- var message = (0, _platformFeatureFlags.fg)('platform_editor_media_interaction_improvements') ? _objectSpread({}, _media.captionMessages.placeholderWithDoubleClickPrompt) : _objectSpread({}, _media.captionMessages.placeholder);
82
+ var computedPlaceholderMessage = placeholderMessage ? placeholderMessage : _media.captionMessages.placeholder;
85
83
  return (0, _react2.jsx)(_primitives.Pressable, {
86
84
  ref: ref,
87
85
  backgroundColor: "color.background.neutral.subtle",
@@ -97,5 +95,5 @@ var CaptionPlaceholderButton = exports.CaptionPlaceholderButton = /*#__PURE__*/_
97
95
  }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage
98
96
  // Ignored via go/ees005
99
97
  // eslint-disable-next-line react/jsx-props-no-spreading
100
- , message)));
98
+ , computedPlaceholderMessage)));
101
99
  });
@@ -8,35 +8,7 @@ exports.CommentWithDotIcon = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  var _icon = _interopRequireDefault(require("@atlaskit/icon"));
11
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
12
11
  var _colors = require("@atlaskit/theme/colors");
13
- var IconCommentWithDotGlyph = function IconCommentWithDotGlyph() {
14
- return /*#__PURE__*/_react.default.createElement("svg", {
15
- width: "24",
16
- height: "24",
17
- viewBox: "0 0 24 24",
18
- fill: "none",
19
- xmlns: "http://www.w3.org/2000/svg"
20
- }, /*#__PURE__*/_react.default.createElement("path", {
21
- fillRule: "evenodd",
22
- clipRule: "evenodd",
23
- d: "M4.998 11.513C4.998 8.475 8.139 6.003 12 6.003C15.861 6.003 19.002 8.475 19.002 11.513C19.002 14.552 15.861 17.023 12 17.023C8.139 17.023 4.998 14.552 4.998 11.513ZM19.838 19.284V19.282C19.838 19.282 18.274 17.022 19.071 16.166L19.034 16.186C20.261 14.902 21 13.279 21 11.513C21 7.371 16.963 4 12 4C7.037 4 3 7.37 3 11.513C3 15.656 7.037 19.027 12 19.027C13.42 19.027 14.76 18.742 15.957 18.251C16.96 19.273 18.244 19.823 19.197 19.97L19.199 19.967C19.2515 19.9867 19.3069 19.9979 19.363 20C19.448 20 19.5317 19.9789 19.6067 19.9386C19.6816 19.8984 19.7453 19.8402 19.7923 19.7693C19.8392 19.6984 19.8679 19.6169 19.8757 19.5323C19.8835 19.4476 19.8712 19.3623 19.838 19.284Z",
24
- fill: "currentColor"
25
- }), /*#__PURE__*/_react.default.createElement("path", {
26
- d: "M16 9H8C7.44772 9 7 9.44772 7 10C7 10.5523 7.44772 11 8 11H16C16.5523 11 17 10.5523 17 10C17 9.44772 16.5523 9 16 9Z",
27
- fill: "currentColor"
28
- }), /*#__PURE__*/_react.default.createElement("path", {
29
- d: "M11 12H8C7.44772 12 7 12.4477 7 13C7 13.5523 7.44772 14 8 14H11C11.5523 14 12 13.5523 12 13C12 12.4477 11.5523 12 11 12Z",
30
- fill: "currentColor"
31
- }), /*#__PURE__*/_react.default.createElement("rect", {
32
- x: "14",
33
- y: "2",
34
- width: "8",
35
- height: "8",
36
- rx: "4",
37
- fill: "var(--ds-background-warning-bold, ".concat(_colors.Y300, ")")
38
- }));
39
- };
40
12
  var IconCommentConfluenceTypeWithDotGlyph = function IconCommentConfluenceTypeWithDotGlyph() {
41
13
  return /*#__PURE__*/_react.default.createElement("svg", {
42
14
  width: "24",
@@ -68,7 +40,7 @@ var IconCommentConfluenceTypeWithDotGlyph = function IconCommentConfluenceTypeWi
68
40
  };
69
41
  var CommentWithDotIcon = exports.CommentWithDotIcon = function CommentWithDotIcon(props) {
70
42
  return /*#__PURE__*/_react.default.createElement(_icon.default, (0, _extends2.default)({
71
- glyph: (0, _platformFeatureFlags.fg)('platform_editor_media_interaction_improvements') ? IconCommentConfluenceTypeWithDotGlyph : IconCommentWithDotGlyph
43
+ glyph: IconCommentConfluenceTypeWithDotGlyph
72
44
  // Ignored via go/ees005
73
45
  // eslint-disable-next-line react/jsx-props-no-spreading
74
46
  }, props));
@@ -61,7 +61,7 @@ const MediaViewerFunctionalComponent = ({
61
61
  // when document changes are made while media viewer is open
62
62
 
63
63
  const mediaItems = useMemo(() => {
64
- if (mediaState !== null && mediaState !== void 0 && mediaState.isMediaViewerVisible && fg('platform_editor_media_interaction_improvements')) {
64
+ if (mediaState !== null && mediaState !== void 0 && mediaState.isMediaViewerVisible) {
65
65
  const mediaNodes = extractMediaNodes(editorView.state.doc);
66
66
  return createMediaIdentifierArray(mediaNodes);
67
67
  }
@@ -80,7 +80,7 @@ const MediaViewerFunctionalComponent = ({
80
80
  mediaClientConfig: mediaState === null || mediaState === void 0 ? void 0 : mediaState.mediaClientConfig,
81
81
  onClose: handleOnClose,
82
82
  selectedNodeAttrs: mediaState.mediaViewerSelectedMedia,
83
- items: fg('platform_editor_media_interaction_improvements') ? mediaItems : undefined
83
+ items: mediaItems
84
84
  });
85
85
  };
86
86
  export const mediaPlugin = ({
@@ -11,6 +11,7 @@ import React, { Component, Fragment, useMemo } from 'react';
11
11
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
12
12
  import { css, jsx } from '@emotion/react';
13
13
  import { useSharedPluginState } from '@atlaskit/editor-common/hooks';
14
+ import { captionMessages } from '@atlaskit/editor-common/media';
14
15
  import { calcMediaSinglePixelWidth, DEFAULT_IMAGE_HEIGHT, DEFAULT_IMAGE_WIDTH, ExternalImageBadge, getMaxWidthForNestedNode, MEDIA_SINGLE_GUTTER_SIZE, MediaBadges } from '@atlaskit/editor-common/media-single';
15
16
  import { WithProviders } from '@atlaskit/editor-common/provider-factory';
16
17
  import ReactNodeView from '@atlaskit/editor-common/react-node-view';
@@ -445,10 +446,12 @@ export default class MediaSingleNode extends Component {
445
446
  // remove typecasting
446
447
  , {
447
448
  ref: this.captionPlaceHolderRef,
448
- onClick: this.clickPlaceholder
449
+ onClick: this.clickPlaceholder,
450
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
449
451
  }) : jsx(CaptionPlaceholder, {
450
452
  ref: this.captionPlaceHolderRef,
451
- onClick: this.clickPlaceholder
453
+ onClick: this.clickPlaceholder,
454
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
452
455
  })));
453
456
  return jsx(Fragment, null, canResize ? fg('platform_editor_media_extended_resize_experience') ? jsx(ResizableMediaSingleNext
454
457
  // Ignored via go/ees005
@@ -8,6 +8,7 @@ import React, { Fragment } from 'react';
8
8
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
9
9
  import { css, jsx } from '@emotion/react';
10
10
  import { usePreviousState } from '@atlaskit/editor-common/hooks';
11
+ import { captionMessages } from '@atlaskit/editor-common/media';
11
12
  import { calcMediaSinglePixelWidth, DEFAULT_IMAGE_HEIGHT, DEFAULT_IMAGE_WIDTH, ExternalImageBadge, getMaxWidthForNestedNode, MEDIA_SINGLE_GUTTER_SIZE, MediaBadges } from '@atlaskit/editor-common/media-single';
12
13
  import { MediaSingle } from '@atlaskit/editor-common/ui';
13
14
  import { browser } from '@atlaskit/editor-common/utils';
@@ -487,10 +488,12 @@ export const MediaSingleNodeNext = mediaSingleNodeNextProps => {
487
488
  // remove typecasting
488
489
  , {
489
490
  ref: captionPlaceHolderRef,
490
- onClick: clickPlaceholder
491
+ onClick: clickPlaceholder,
492
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
491
493
  }) : jsx(CaptionPlaceholder, {
492
494
  ref: captionPlaceHolderRef,
493
- onClick: clickPlaceholder
495
+ onClick: clickPlaceholder,
496
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
494
497
  })));
495
498
  return jsx(Fragment, null, canResize ? fg('platform_editor_media_extended_resize_experience') ? jsx(ResizableMediaSingleNext, {
496
499
  view: view,
@@ -1,7 +1,6 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import assert from 'assert';
3
3
  import React from 'react';
4
- import ReactDOM from 'react-dom';
5
4
  import { RawIntlProvider } from 'react-intl-next';
6
5
  import uuid from 'uuid';
7
6
  import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE, INPUT_METHOD } from '@atlaskit/editor-common/analytics';
@@ -16,7 +15,6 @@ import { Decoration, DecorationSet } from '@atlaskit/editor-prosemirror/view';
16
15
  import { CellSelection } from '@atlaskit/editor-tables/cell-selection';
17
16
  import { isFileIdentifier } from '@atlaskit/media-client';
18
17
  import { getMediaFeatureFlag } from '@atlaskit/media-common';
19
- import { fg } from '@atlaskit/platform-feature-flags';
20
18
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
21
19
  import { updateMediaNodeAttrs } from '../pm-plugins/commands/helpers';
22
20
  // Ignored via go/ees005
@@ -37,32 +35,16 @@ export const MEDIA_PLUGIN_RESIZING_WIDTH_KEY = 'mediaSinglePlugin.resizing-width
37
35
  const createDropPlaceholder = (intl, nodeViewPortalProviderAPI, dropPlaceholderKey, allowDropLine) => {
38
36
  const dropPlaceholder = document.createElement('div');
39
37
  const createElement = React.createElement;
40
- if (fg('platform_editor_react18_plugin_portalprovider')) {
41
- if (allowDropLine) {
42
- nodeViewPortalProviderAPI.render(() => createElement(RawIntlProvider, {
43
- value: intl
44
- }, createElement(DropPlaceholder, {
45
- type: 'single'
46
- })), dropPlaceholder, dropPlaceholderKey);
47
- } else {
48
- nodeViewPortalProviderAPI.render(() => createElement(RawIntlProvider, {
49
- value: intl
50
- }, createElement(DropPlaceholder)), dropPlaceholder, dropPlaceholderKey);
51
- }
38
+ if (allowDropLine) {
39
+ nodeViewPortalProviderAPI.render(() => createElement(RawIntlProvider, {
40
+ value: intl
41
+ }, createElement(DropPlaceholder, {
42
+ type: 'single'
43
+ })), dropPlaceholder, dropPlaceholderKey);
52
44
  } else {
53
- if (allowDropLine) {
54
- //eslint-disable-next-line react/no-deprecated
55
- ReactDOM.render(createElement(RawIntlProvider, {
56
- value: intl
57
- }, createElement(DropPlaceholder, {
58
- type: 'single'
59
- })), dropPlaceholder);
60
- } else {
61
- //eslint-disable-next-line react/no-deprecated
62
- ReactDOM.render(createElement(RawIntlProvider, {
63
- value: intl
64
- }, createElement(DropPlaceholder)), dropPlaceholder);
65
- }
45
+ nodeViewPortalProviderAPI.render(() => createElement(RawIntlProvider, {
46
+ value: intl
47
+ }, createElement(DropPlaceholder)), dropPlaceholder, dropPlaceholderKey);
66
48
  }
67
49
  return dropPlaceholder;
68
50
  };
@@ -846,12 +828,7 @@ export const createPlugin = (_schema, options, getIntl, pluginInjectionApi, node
846
828
  key: 'drop-placeholder',
847
829
  destroy: elem => {
848
830
  if (elem instanceof HTMLElement) {
849
- if (fg('platform_editor_react18_plugin_portalprovider')) {
850
- nodeViewPortalProviderAPI.remove(dropPlaceholderKey);
851
- } else {
852
- //eslint-disable-next-line react/no-deprecated
853
- ReactDOM.unmountComponentAtNode(elem);
854
- }
831
+ nodeViewPortalProviderAPI.remove(dropPlaceholderKey);
855
832
  }
856
833
  }
857
834
  }), ...mediaNodes];
@@ -902,9 +879,11 @@ export const createPlugin = (_schema, options, getIntl, pluginInjectionApi, node
902
879
  return false;
903
880
  },
904
881
  handleDoubleClickOn: view => {
905
- var _pluginInjectionApi$e, _pluginInjectionApi$e2;
906
- if (!fg('platform_editor_media_interaction_improvements')) {
907
- return;
882
+ var _pluginState$mediaOpt, _pluginInjectionApi$e, _pluginInjectionApi$e2;
883
+ // Check if media viewer is enabled
884
+ const pluginState = getMediaPluginState(view.state);
885
+ if (!((_pluginState$mediaOpt = pluginState.mediaOptions) !== null && _pluginState$mediaOpt !== void 0 && _pluginState$mediaOpt.allowImagePreview)) {
886
+ return false;
908
887
  }
909
888
  const isLivePagesViewMode = (pluginInjectionApi === null || pluginInjectionApi === void 0 ? void 0 : (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 ? void 0 : (_pluginInjectionApi$e2 = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e2 === void 0 ? void 0 : _pluginInjectionApi$e2.mode) === 'view';
910
889
 
@@ -24,21 +24,17 @@ const placeholderButton = xcss({
24
24
  width: '100%',
25
25
  marginTop: 'space.100'
26
26
  });
27
-
28
27
  // platform_editor_typography_ugc clean up
29
28
  // Remove this component
30
29
  export const CaptionPlaceholder = /*#__PURE__*/React.forwardRef(({
31
- onClick
30
+ onClick,
31
+ placeholderMessage
32
32
  }, ref) => {
33
33
  const handlePointerDown = useCallback(e => {
34
34
  e.preventDefault();
35
35
  onClick();
36
36
  }, [onClick]);
37
- const message = fg('platform_editor_media_interaction_improvements') ? {
38
- ...messages.placeholderWithDoubleClickPrompt
39
- } : {
40
- ...messages.placeholder
41
- };
37
+ const computedPlaceholderMessage = placeholderMessage ? placeholderMessage : messages.placeholder;
42
38
 
43
39
  // This issue is a temporary fix for users being able to edit captions on edge browsers. This will be removed
44
40
  // replaced with CaptionPlaceholderButton in the near future and this code can be removed.
@@ -54,7 +50,7 @@ export const CaptionPlaceholder = /*#__PURE__*/React.forwardRef(({
54
50
  }, jsx(FormattedMessage
55
51
  // Ignored via go/ees005
56
52
  // eslint-disable-next-line react/jsx-props-no-spreading
57
- , message))
53
+ , computedPlaceholderMessage))
58
54
  );
59
55
  }
60
56
  return (
@@ -68,22 +64,19 @@ export const CaptionPlaceholder = /*#__PURE__*/React.forwardRef(({
68
64
  }, jsx(FormattedMessage
69
65
  // Ignored via go/ees005
70
66
  // eslint-disable-next-line react/jsx-props-no-spreading
71
- , message))
67
+ , computedPlaceholderMessage))
72
68
  );
73
69
  });
74
70
  export const CaptionPlaceholderButton = /*#__PURE__*/React.forwardRef(({
75
- onClick
71
+ onClick,
72
+ placeholderMessage
76
73
  }, ref) => {
77
74
  const handleMouseDown = useCallback(e => {
78
75
  // In firefox, button is focused when mouse down, which make editor lose focus
79
76
  // Hence we want to disabled it so that user can type in caption directly after click
80
77
  e.preventDefault();
81
78
  }, []);
82
- const message = fg('platform_editor_media_interaction_improvements') ? {
83
- ...messages.placeholderWithDoubleClickPrompt
84
- } : {
85
- ...messages.placeholder
86
- };
79
+ const computedPlaceholderMessage = placeholderMessage ? placeholderMessage : messages.placeholder;
87
80
  return jsx(Pressable, {
88
81
  ref: ref,
89
82
  backgroundColor: "color.background.neutral.subtle",
@@ -99,5 +92,5 @@ export const CaptionPlaceholderButton = /*#__PURE__*/React.forwardRef(({
99
92
  }, jsx(FormattedMessage
100
93
  // Ignored via go/ees005
101
94
  // eslint-disable-next-line react/jsx-props-no-spreading
102
- , message)));
95
+ , computedPlaceholderMessage)));
103
96
  });
@@ -1,35 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React from 'react';
3
3
  import Icon from '@atlaskit/icon';
4
- import { fg } from '@atlaskit/platform-feature-flags';
5
- import { N0, Y300 } from '@atlaskit/theme/colors';
6
- const IconCommentWithDotGlyph = () => {
7
- return /*#__PURE__*/React.createElement("svg", {
8
- width: "24",
9
- height: "24",
10
- viewBox: "0 0 24 24",
11
- fill: "none",
12
- xmlns: "http://www.w3.org/2000/svg"
13
- }, /*#__PURE__*/React.createElement("path", {
14
- fillRule: "evenodd",
15
- clipRule: "evenodd",
16
- d: "M4.998 11.513C4.998 8.475 8.139 6.003 12 6.003C15.861 6.003 19.002 8.475 19.002 11.513C19.002 14.552 15.861 17.023 12 17.023C8.139 17.023 4.998 14.552 4.998 11.513ZM19.838 19.284V19.282C19.838 19.282 18.274 17.022 19.071 16.166L19.034 16.186C20.261 14.902 21 13.279 21 11.513C21 7.371 16.963 4 12 4C7.037 4 3 7.37 3 11.513C3 15.656 7.037 19.027 12 19.027C13.42 19.027 14.76 18.742 15.957 18.251C16.96 19.273 18.244 19.823 19.197 19.97L19.199 19.967C19.2515 19.9867 19.3069 19.9979 19.363 20C19.448 20 19.5317 19.9789 19.6067 19.9386C19.6816 19.8984 19.7453 19.8402 19.7923 19.7693C19.8392 19.6984 19.8679 19.6169 19.8757 19.5323C19.8835 19.4476 19.8712 19.3623 19.838 19.284Z",
17
- fill: "currentColor"
18
- }), /*#__PURE__*/React.createElement("path", {
19
- d: "M16 9H8C7.44772 9 7 9.44772 7 10C7 10.5523 7.44772 11 8 11H16C16.5523 11 17 10.5523 17 10C17 9.44772 16.5523 9 16 9Z",
20
- fill: "currentColor"
21
- }), /*#__PURE__*/React.createElement("path", {
22
- d: "M11 12H8C7.44772 12 7 12.4477 7 13C7 13.5523 7.44772 14 8 14H11C11.5523 14 12 13.5523 12 13C12 12.4477 11.5523 12 11 12Z",
23
- fill: "currentColor"
24
- }), /*#__PURE__*/React.createElement("rect", {
25
- x: "14",
26
- y: "2",
27
- width: "8",
28
- height: "8",
29
- rx: "4",
30
- fill: `var(--ds-background-warning-bold, ${Y300})`
31
- }));
32
- };
4
+ import { N0 } from '@atlaskit/theme/colors';
33
5
  const IconCommentConfluenceTypeWithDotGlyph = () => {
34
6
  return /*#__PURE__*/React.createElement("svg", {
35
7
  width: "24",
@@ -61,7 +33,7 @@ const IconCommentConfluenceTypeWithDotGlyph = () => {
61
33
  };
62
34
  export const CommentWithDotIcon = props => {
63
35
  return /*#__PURE__*/React.createElement(Icon, _extends({
64
- glyph: fg('platform_editor_media_interaction_improvements') ? IconCommentConfluenceTypeWithDotGlyph : IconCommentWithDotGlyph
36
+ glyph: IconCommentConfluenceTypeWithDotGlyph
65
37
  // Ignored via go/ees005
66
38
  // eslint-disable-next-line react/jsx-props-no-spreading
67
39
  }, props));
@@ -57,7 +57,7 @@ var MediaViewerFunctionalComponent = function MediaViewerFunctionalComponent(_re
57
57
  // when document changes are made while media viewer is open
58
58
 
59
59
  var mediaItems = useMemo(function () {
60
- if (mediaState !== null && mediaState !== void 0 && mediaState.isMediaViewerVisible && fg('platform_editor_media_interaction_improvements')) {
60
+ if (mediaState !== null && mediaState !== void 0 && mediaState.isMediaViewerVisible) {
61
61
  var mediaNodes = extractMediaNodes(editorView.state.doc);
62
62
  return createMediaIdentifierArray(mediaNodes);
63
63
  }
@@ -76,7 +76,7 @@ var MediaViewerFunctionalComponent = function MediaViewerFunctionalComponent(_re
76
76
  mediaClientConfig: mediaState === null || mediaState === void 0 ? void 0 : mediaState.mediaClientConfig,
77
77
  onClose: handleOnClose,
78
78
  selectedNodeAttrs: mediaState.mediaViewerSelectedMedia,
79
- items: fg('platform_editor_media_interaction_improvements') ? mediaItems : undefined
79
+ items: mediaItems
80
80
  });
81
81
  };
82
82
  export var mediaPlugin = function mediaPlugin(_ref3) {
@@ -24,6 +24,7 @@ import React, { Component, Fragment, useMemo } from 'react';
24
24
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
25
25
  import { css, jsx } from '@emotion/react';
26
26
  import { useSharedPluginState } from '@atlaskit/editor-common/hooks';
27
+ import { captionMessages } from '@atlaskit/editor-common/media';
27
28
  import { calcMediaSinglePixelWidth, DEFAULT_IMAGE_HEIGHT, DEFAULT_IMAGE_WIDTH, ExternalImageBadge, getMaxWidthForNestedNode, MEDIA_SINGLE_GUTTER_SIZE, MediaBadges } from '@atlaskit/editor-common/media-single';
28
29
  import { WithProviders } from '@atlaskit/editor-common/provider-factory';
29
30
  import ReactNodeView from '@atlaskit/editor-common/react-node-view';
@@ -522,10 +523,12 @@ var MediaSingleNode = /*#__PURE__*/function (_Component) {
522
523
  // remove typecasting
523
524
  , {
524
525
  ref: this.captionPlaceHolderRef,
525
- onClick: this.clickPlaceholder
526
+ onClick: this.clickPlaceholder,
527
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
526
528
  }) : jsx(CaptionPlaceholder, {
527
529
  ref: this.captionPlaceHolderRef,
528
- onClick: this.clickPlaceholder
530
+ onClick: this.clickPlaceholder,
531
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
529
532
  })));
530
533
  return jsx(Fragment, null, canResize ? fg('platform_editor_media_extended_resize_experience') ? jsx(ResizableMediaSingleNext
531
534
  // Ignored via go/ees005
@@ -14,6 +14,7 @@ import React, { Fragment } from 'react';
14
14
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
15
15
  import { css, jsx } from '@emotion/react';
16
16
  import { usePreviousState } from '@atlaskit/editor-common/hooks';
17
+ import { captionMessages } from '@atlaskit/editor-common/media';
17
18
  import { calcMediaSinglePixelWidth, DEFAULT_IMAGE_HEIGHT, DEFAULT_IMAGE_WIDTH, ExternalImageBadge, getMaxWidthForNestedNode, MEDIA_SINGLE_GUTTER_SIZE, MediaBadges } from '@atlaskit/editor-common/media-single';
18
19
  import { MediaSingle } from '@atlaskit/editor-common/ui';
19
20
  import { browser } from '@atlaskit/editor-common/utils';
@@ -520,10 +521,12 @@ export var MediaSingleNodeNext = function MediaSingleNodeNext(mediaSingleNodeNex
520
521
  // remove typecasting
521
522
  , {
522
523
  ref: captionPlaceHolderRef,
523
- onClick: clickPlaceholder
524
+ onClick: clickPlaceholder,
525
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
524
526
  }) : jsx(CaptionPlaceholder, {
525
527
  ref: captionPlaceHolderRef,
526
- onClick: clickPlaceholder
528
+ onClick: clickPlaceholder,
529
+ placeholderMessage: mediaOptions.allowImagePreview ? captionMessages.placeholderWithDoubleClickPrompt : captionMessages.placeholder
527
530
  })));
528
531
  return jsx(Fragment, null, canResize ? fg('platform_editor_media_extended_resize_experience') ? jsx(ResizableMediaSingleNext, {
529
532
  view: view,
@@ -10,7 +10,6 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
10
10
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11
11
  import assert from 'assert';
12
12
  import React from 'react';
13
- import ReactDOM from 'react-dom';
14
13
  import { RawIntlProvider } from 'react-intl-next';
15
14
  import uuid from 'uuid';
16
15
  import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE, INPUT_METHOD } from '@atlaskit/editor-common/analytics';
@@ -25,7 +24,6 @@ import { Decoration, DecorationSet } from '@atlaskit/editor-prosemirror/view';
25
24
  import { CellSelection } from '@atlaskit/editor-tables/cell-selection';
26
25
  import { isFileIdentifier } from '@atlaskit/media-client';
27
26
  import { getMediaFeatureFlag } from '@atlaskit/media-common';
28
- import { fg } from '@atlaskit/platform-feature-flags';
29
27
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
30
28
  import { updateMediaNodeAttrs } from '../pm-plugins/commands/helpers';
31
29
  // Ignored via go/ees005
@@ -46,36 +44,20 @@ export var MEDIA_PLUGIN_RESIZING_WIDTH_KEY = 'mediaSinglePlugin.resizing-width';
46
44
  var createDropPlaceholder = function createDropPlaceholder(intl, nodeViewPortalProviderAPI, dropPlaceholderKey, allowDropLine) {
47
45
  var dropPlaceholder = document.createElement('div');
48
46
  var createElement = React.createElement;
49
- if (fg('platform_editor_react18_plugin_portalprovider')) {
50
- if (allowDropLine) {
51
- nodeViewPortalProviderAPI.render(function () {
52
- return createElement(RawIntlProvider, {
53
- value: intl
54
- }, createElement(DropPlaceholder, {
55
- type: 'single'
56
- }));
57
- }, dropPlaceholder, dropPlaceholderKey);
58
- } else {
59
- nodeViewPortalProviderAPI.render(function () {
60
- return createElement(RawIntlProvider, {
61
- value: intl
62
- }, createElement(DropPlaceholder));
63
- }, dropPlaceholder, dropPlaceholderKey);
64
- }
65
- } else {
66
- if (allowDropLine) {
67
- //eslint-disable-next-line react/no-deprecated
68
- ReactDOM.render(createElement(RawIntlProvider, {
47
+ if (allowDropLine) {
48
+ nodeViewPortalProviderAPI.render(function () {
49
+ return createElement(RawIntlProvider, {
69
50
  value: intl
70
51
  }, createElement(DropPlaceholder, {
71
52
  type: 'single'
72
- })), dropPlaceholder);
73
- } else {
74
- //eslint-disable-next-line react/no-deprecated
75
- ReactDOM.render(createElement(RawIntlProvider, {
53
+ }));
54
+ }, dropPlaceholder, dropPlaceholderKey);
55
+ } else {
56
+ nodeViewPortalProviderAPI.render(function () {
57
+ return createElement(RawIntlProvider, {
76
58
  value: intl
77
- }, createElement(DropPlaceholder)), dropPlaceholder);
78
- }
59
+ }, createElement(DropPlaceholder));
60
+ }, dropPlaceholder, dropPlaceholderKey);
79
61
  }
80
62
  return dropPlaceholder;
81
63
  };
@@ -948,12 +930,7 @@ export var createPlugin = function createPlugin(_schema, options, getIntl, plugi
948
930
  key: 'drop-placeholder',
949
931
  destroy: function destroy(elem) {
950
932
  if (elem instanceof HTMLElement) {
951
- if (fg('platform_editor_react18_plugin_portalprovider')) {
952
- nodeViewPortalProviderAPI.remove(dropPlaceholderKey);
953
- } else {
954
- //eslint-disable-next-line react/no-deprecated
955
- ReactDOM.unmountComponentAtNode(elem);
956
- }
933
+ nodeViewPortalProviderAPI.remove(dropPlaceholderKey);
957
934
  }
958
935
  }
959
936
  })].concat(mediaNodes);
@@ -1002,9 +979,11 @@ export var createPlugin = function createPlugin(_schema, options, getIntl, plugi
1002
979
  return false;
1003
980
  },
1004
981
  handleDoubleClickOn: function handleDoubleClickOn(view) {
1005
- var _pluginInjectionApi$e;
1006
- if (!fg('platform_editor_media_interaction_improvements')) {
1007
- return;
982
+ var _pluginState$mediaOpt, _pluginInjectionApi$e;
983
+ // Check if media viewer is enabled
984
+ var pluginState = getMediaPluginState(view.state);
985
+ if (!((_pluginState$mediaOpt = pluginState.mediaOptions) !== null && _pluginState$mediaOpt !== void 0 && _pluginState$mediaOpt.allowImagePreview)) {
986
+ return false;
1008
987
  }
1009
988
  var isLivePagesViewMode = (pluginInjectionApi === null || pluginInjectionApi === void 0 || (_pluginInjectionApi$e = pluginInjectionApi.editorViewMode) === null || _pluginInjectionApi$e === void 0 || (_pluginInjectionApi$e = _pluginInjectionApi$e.sharedState.currentState()) === null || _pluginInjectionApi$e === void 0 ? void 0 : _pluginInjectionApi$e.mode) === 'view';
1010
989
 
@@ -1,8 +1,5 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
1
  import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
3
2
  var _templateObject;
4
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
3
  /**
7
4
  * @jsxRuntime classic
8
5
  * @jsx jsx
@@ -23,16 +20,16 @@ var placeholderButton = xcss({
23
20
  width: '100%',
24
21
  marginTop: 'space.100'
25
22
  });
26
-
27
23
  // platform_editor_typography_ugc clean up
28
24
  // Remove this component
29
25
  export var CaptionPlaceholder = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
30
- var onClick = _ref.onClick;
26
+ var onClick = _ref.onClick,
27
+ placeholderMessage = _ref.placeholderMessage;
31
28
  var handlePointerDown = useCallback(function (e) {
32
29
  e.preventDefault();
33
30
  onClick();
34
31
  }, [onClick]);
35
- var message = fg('platform_editor_media_interaction_improvements') ? _objectSpread({}, messages.placeholderWithDoubleClickPrompt) : _objectSpread({}, messages.placeholder);
32
+ var computedPlaceholderMessage = placeholderMessage ? placeholderMessage : messages.placeholder;
36
33
 
37
34
  // This issue is a temporary fix for users being able to edit captions on edge browsers. This will be removed
38
35
  // replaced with CaptionPlaceholderButton in the near future and this code can be removed.
@@ -48,7 +45,7 @@ export var CaptionPlaceholder = /*#__PURE__*/React.forwardRef(function (_ref, re
48
45
  }, jsx(FormattedMessage
49
46
  // Ignored via go/ees005
50
47
  // eslint-disable-next-line react/jsx-props-no-spreading
51
- , message))
48
+ , computedPlaceholderMessage))
52
49
  );
53
50
  }
54
51
  return (
@@ -62,17 +59,18 @@ export var CaptionPlaceholder = /*#__PURE__*/React.forwardRef(function (_ref, re
62
59
  }, jsx(FormattedMessage
63
60
  // Ignored via go/ees005
64
61
  // eslint-disable-next-line react/jsx-props-no-spreading
65
- , message))
62
+ , computedPlaceholderMessage))
66
63
  );
67
64
  });
68
65
  export var CaptionPlaceholderButton = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
69
- var onClick = _ref2.onClick;
66
+ var onClick = _ref2.onClick,
67
+ placeholderMessage = _ref2.placeholderMessage;
70
68
  var handleMouseDown = useCallback(function (e) {
71
69
  // In firefox, button is focused when mouse down, which make editor lose focus
72
70
  // Hence we want to disabled it so that user can type in caption directly after click
73
71
  e.preventDefault();
74
72
  }, []);
75
- var message = fg('platform_editor_media_interaction_improvements') ? _objectSpread({}, messages.placeholderWithDoubleClickPrompt) : _objectSpread({}, messages.placeholder);
73
+ var computedPlaceholderMessage = placeholderMessage ? placeholderMessage : messages.placeholder;
76
74
  return jsx(Pressable, {
77
75
  ref: ref,
78
76
  backgroundColor: "color.background.neutral.subtle",
@@ -88,5 +86,5 @@ export var CaptionPlaceholderButton = /*#__PURE__*/React.forwardRef(function (_r
88
86
  }, jsx(FormattedMessage
89
87
  // Ignored via go/ees005
90
88
  // eslint-disable-next-line react/jsx-props-no-spreading
91
- , message)));
89
+ , computedPlaceholderMessage)));
92
90
  });
@@ -1,35 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React from 'react';
3
3
  import Icon from '@atlaskit/icon';
4
- import { fg } from '@atlaskit/platform-feature-flags';
5
- import { N0, Y300 } from '@atlaskit/theme/colors';
6
- var IconCommentWithDotGlyph = function IconCommentWithDotGlyph() {
7
- return /*#__PURE__*/React.createElement("svg", {
8
- width: "24",
9
- height: "24",
10
- viewBox: "0 0 24 24",
11
- fill: "none",
12
- xmlns: "http://www.w3.org/2000/svg"
13
- }, /*#__PURE__*/React.createElement("path", {
14
- fillRule: "evenodd",
15
- clipRule: "evenodd",
16
- d: "M4.998 11.513C4.998 8.475 8.139 6.003 12 6.003C15.861 6.003 19.002 8.475 19.002 11.513C19.002 14.552 15.861 17.023 12 17.023C8.139 17.023 4.998 14.552 4.998 11.513ZM19.838 19.284V19.282C19.838 19.282 18.274 17.022 19.071 16.166L19.034 16.186C20.261 14.902 21 13.279 21 11.513C21 7.371 16.963 4 12 4C7.037 4 3 7.37 3 11.513C3 15.656 7.037 19.027 12 19.027C13.42 19.027 14.76 18.742 15.957 18.251C16.96 19.273 18.244 19.823 19.197 19.97L19.199 19.967C19.2515 19.9867 19.3069 19.9979 19.363 20C19.448 20 19.5317 19.9789 19.6067 19.9386C19.6816 19.8984 19.7453 19.8402 19.7923 19.7693C19.8392 19.6984 19.8679 19.6169 19.8757 19.5323C19.8835 19.4476 19.8712 19.3623 19.838 19.284Z",
17
- fill: "currentColor"
18
- }), /*#__PURE__*/React.createElement("path", {
19
- d: "M16 9H8C7.44772 9 7 9.44772 7 10C7 10.5523 7.44772 11 8 11H16C16.5523 11 17 10.5523 17 10C17 9.44772 16.5523 9 16 9Z",
20
- fill: "currentColor"
21
- }), /*#__PURE__*/React.createElement("path", {
22
- d: "M11 12H8C7.44772 12 7 12.4477 7 13C7 13.5523 7.44772 14 8 14H11C11.5523 14 12 13.5523 12 13C12 12.4477 11.5523 12 11 12Z",
23
- fill: "currentColor"
24
- }), /*#__PURE__*/React.createElement("rect", {
25
- x: "14",
26
- y: "2",
27
- width: "8",
28
- height: "8",
29
- rx: "4",
30
- fill: "var(--ds-background-warning-bold, ".concat(Y300, ")")
31
- }));
32
- };
4
+ import { N0 } from '@atlaskit/theme/colors';
33
5
  var IconCommentConfluenceTypeWithDotGlyph = function IconCommentConfluenceTypeWithDotGlyph() {
34
6
  return /*#__PURE__*/React.createElement("svg", {
35
7
  width: "24",
@@ -61,7 +33,7 @@ var IconCommentConfluenceTypeWithDotGlyph = function IconCommentConfluenceTypeWi
61
33
  };
62
34
  export var CommentWithDotIcon = function CommentWithDotIcon(props) {
63
35
  return /*#__PURE__*/React.createElement(Icon, _extends({
64
- glyph: fg('platform_editor_media_interaction_improvements') ? IconCommentConfluenceTypeWithDotGlyph : IconCommentWithDotGlyph
36
+ glyph: IconCommentConfluenceTypeWithDotGlyph
65
37
  // Ignored via go/ees005
66
38
  // eslint-disable-next-line react/jsx-props-no-spreading
67
39
  }, props));
@@ -3,9 +3,14 @@
3
3
  * @jsx jsx
4
4
  */
5
5
  import React from 'react';
6
- export declare const CaptionPlaceholder: React.ForwardRefExoticComponent<{
6
+ type CaptionPlaceholderProps = {
7
7
  onClick: () => void;
8
- } & React.RefAttributes<HTMLSpanElement>>;
9
- export declare const CaptionPlaceholderButton: React.ForwardRefExoticComponent<{
10
- onClick: () => void;
11
- } & React.RefAttributes<HTMLButtonElement>>;
8
+ placeholderMessage?: {
9
+ id: string;
10
+ defaultMessage: string;
11
+ description: string;
12
+ };
13
+ };
14
+ export declare const CaptionPlaceholder: React.ForwardRefExoticComponent<CaptionPlaceholderProps & React.RefAttributes<HTMLSpanElement>>;
15
+ export declare const CaptionPlaceholderButton: React.ForwardRefExoticComponent<CaptionPlaceholderProps & React.RefAttributes<HTMLButtonElement>>;
16
+ export {};
@@ -3,9 +3,14 @@
3
3
  * @jsx jsx
4
4
  */
5
5
  import React from 'react';
6
- export declare const CaptionPlaceholder: React.ForwardRefExoticComponent<{
6
+ type CaptionPlaceholderProps = {
7
7
  onClick: () => void;
8
- } & React.RefAttributes<HTMLSpanElement>>;
9
- export declare const CaptionPlaceholderButton: React.ForwardRefExoticComponent<{
10
- onClick: () => void;
11
- } & React.RefAttributes<HTMLButtonElement>>;
8
+ placeholderMessage?: {
9
+ id: string;
10
+ defaultMessage: string;
11
+ description: string;
12
+ };
13
+ };
14
+ export declare const CaptionPlaceholder: React.ForwardRefExoticComponent<CaptionPlaceholderProps & React.RefAttributes<HTMLSpanElement>>;
15
+ export declare const CaptionPlaceholderButton: React.ForwardRefExoticComponent<CaptionPlaceholderProps & React.RefAttributes<HTMLButtonElement>>;
16
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-media",
3
- "version": "1.45.0",
3
+ "version": "1.45.2",
4
4
  "description": "Media plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -32,15 +32,15 @@
32
32
  "./types": "./src/types/index.ts"
33
33
  },
34
34
  "dependencies": {
35
- "@atlaskit/adf-schema": "^46.1.0",
35
+ "@atlaskit/adf-schema": "^47.2.1",
36
36
  "@atlaskit/analytics-namespaced-context": "^6.13.0",
37
37
  "@atlaskit/analytics-next": "^10.3.0",
38
38
  "@atlaskit/button": "^20.5.0",
39
- "@atlaskit/editor-common": "^99.10.0",
39
+ "@atlaskit/editor-common": "^99.14.0",
40
40
  "@atlaskit/editor-palette": "1.7.0",
41
41
  "@atlaskit/editor-plugin-analytics": "^1.12.0",
42
- "@atlaskit/editor-plugin-annotation": "1.28.0",
43
- "@atlaskit/editor-plugin-connectivity": "^1.2.0",
42
+ "@atlaskit/editor-plugin-annotation": "1.28.1",
43
+ "@atlaskit/editor-plugin-connectivity": "^1.3.0",
44
44
  "@atlaskit/editor-plugin-decorations": "^1.5.0",
45
45
  "@atlaskit/editor-plugin-editor-disabled": "^1.5.0",
46
46
  "@atlaskit/editor-plugin-editor-viewmode": "^2.2.0",
@@ -48,13 +48,13 @@
48
48
  "@atlaskit/editor-plugin-focus": "^1.5.0",
49
49
  "@atlaskit/editor-plugin-grid": "^1.4.0",
50
50
  "@atlaskit/editor-plugin-guideline": "^1.4.0",
51
- "@atlaskit/editor-plugin-selection": "^1.7.0",
51
+ "@atlaskit/editor-plugin-selection": "^1.8.0",
52
52
  "@atlaskit/editor-plugin-width": "^2.1.0",
53
53
  "@atlaskit/editor-prosemirror": "7.0.0",
54
54
  "@atlaskit/editor-shared-styles": "^3.2.0",
55
55
  "@atlaskit/editor-tables": "^2.9.0",
56
56
  "@atlaskit/form": "^11.1.0",
57
- "@atlaskit/icon": "^23.7.0",
57
+ "@atlaskit/icon": "^23.9.0",
58
58
  "@atlaskit/media-card": "^78.19.0",
59
59
  "@atlaskit/media-client": "^31.1.0",
60
60
  "@atlaskit/media-client-react": "^3.0.0",
@@ -67,7 +67,7 @@
67
67
  "@atlaskit/primitives": "^13.5.0",
68
68
  "@atlaskit/textfield": "^6.8.0",
69
69
  "@atlaskit/theme": "^15.0.0",
70
- "@atlaskit/tmp-editor-statsig": "^2.43.0",
70
+ "@atlaskit/tmp-editor-statsig": "^2.46.0",
71
71
  "@atlaskit/tokens": "^3.3.0",
72
72
  "@atlaskit/tooltip": "^19.1.0",
73
73
  "@babel/runtime": "^7.0.0",
@@ -136,9 +136,6 @@
136
136
  "platform_editor_media_batch_updates": {
137
137
  "type": "boolean"
138
138
  },
139
- "platform_editor_media_interaction_improvements": {
140
- "type": "boolean"
141
- },
142
139
  "platform_editor_typography_ugc": {
143
140
  "type": "boolean"
144
141
  },
@@ -151,9 +148,6 @@
151
148
  "confluence_frontend_media_scroll_fix": {
152
149
  "type": "boolean"
153
150
  },
154
- "platform_editor_react18_plugin_portalprovider": {
155
- "type": "boolean"
156
- },
157
151
  "platform_editor_hide_external_media_badge": {
158
152
  "type": "boolean"
159
153
  },