@atlaskit/editor-common 78.18.2 → 78.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/analytics/types/enums.js +1 -0
  3. package/dist/cjs/extensibility/Extension/Extension/index.js +1 -0
  4. package/dist/cjs/extensibility/Extension/InlineExtension/index.js +7 -2
  5. package/dist/cjs/extensibility/MultiBodiedExtension/index.js +17 -10
  6. package/dist/cjs/extensibility/MultiBodiedExtension/styles.js +12 -2
  7. package/dist/cjs/monitoring/error.js +1 -1
  8. package/dist/cjs/ui/DropList/index.js +1 -1
  9. package/dist/cjs/utils/validator.js +9 -4
  10. package/dist/es2019/analytics/types/enums.js +1 -0
  11. package/dist/es2019/extensibility/Extension/Extension/index.js +1 -0
  12. package/dist/es2019/extensibility/Extension/InlineExtension/index.js +7 -2
  13. package/dist/es2019/extensibility/MultiBodiedExtension/index.js +17 -12
  14. package/dist/es2019/extensibility/MultiBodiedExtension/styles.js +11 -1
  15. package/dist/es2019/monitoring/error.js +1 -1
  16. package/dist/es2019/ui/DropList/index.js +1 -1
  17. package/dist/es2019/utils/validator.js +6 -1
  18. package/dist/esm/analytics/types/enums.js +1 -0
  19. package/dist/esm/extensibility/Extension/Extension/index.js +1 -0
  20. package/dist/esm/extensibility/Extension/InlineExtension/index.js +7 -2
  21. package/dist/esm/extensibility/MultiBodiedExtension/index.js +18 -11
  22. package/dist/esm/extensibility/MultiBodiedExtension/styles.js +11 -1
  23. package/dist/esm/monitoring/error.js +1 -1
  24. package/dist/esm/ui/DropList/index.js +1 -1
  25. package/dist/esm/utils/validator.js +9 -4
  26. package/dist/types/analytics/types/enums.d.ts +1 -0
  27. package/dist/types/extensibility/MultiBodiedExtension/styles.d.ts +2 -1
  28. package/dist/types-ts4.5/analytics/types/enums.d.ts +1 -0
  29. package/dist/types-ts4.5/extensibility/MultiBodiedExtension/styles.d.ts +2 -1
  30. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 78.19.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#83790](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/83790) [`f590476805da`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/f590476805da) - [ux] Adds uniform danger overlay for macro interaction design updates
8
+
9
+ ### Patch Changes
10
+
11
+ - [#82755](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/82755) [`c204f74b46a5`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/c204f74b46a5) - The media renderer node will now correctly render annotation marks if/when they're applied to the node.
12
+
13
+ ## 78.18.3
14
+
15
+ ### Patch Changes
16
+
17
+ - [#81323](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/81323) [`88bfdbce168d`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/88bfdbce168d) - [EDF-426] Added special handling for dom errors in renderer to resolve DOM errors from Google translate interactions. This is behind a platform flag (platform.editor.renderer-error-boundary-for-dom-errors) and adds a new analytics event (CAUGHT_DOM_ERROR).
18
+
3
19
  ## 78.18.2
4
20
 
5
21
  ### Patch Changes
@@ -15,6 +15,7 @@ var ACTION = exports.ACTION = /*#__PURE__*/function (ACTION) {
15
15
  ACTION["ACTIVATED"] = "activated";
16
16
  ACTION["ADDED"] = "added";
17
17
  ACTION["BROWSER_FREEZE"] = "browserFreeze";
18
+ ACTION["CAUGHT_DOM_ERROR"] = "caughtDomError";
18
19
  ACTION["CHANGED_BACKGROUND_COLOR"] = "changedBackgroundColor";
19
20
  ACTION["CHANGED_ICON"] = "changedIcon";
20
21
  ACTION["CHANGED_FULL_WIDTH_MODE"] = "changedFullWidthMode";
@@ -63,6 +63,7 @@ function ExtensionWithPluginState(props) {
63
63
  'with-overlay': !hasBody && !showMacroInteractionDesignUpdates,
64
64
  'with-border': showMacroInteractionDesignUpdates,
65
65
  'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered,
66
+ 'with-danger-overlay': showMacroInteractionDesignUpdates,
66
67
  'without-frame': removeBorder
67
68
  }, _styles2.widerLayoutClassName, shouldBreakout));
68
69
  var headerClassNames = (0, _classnames2.default)({
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _react2 = require("@emotion/react");
11
+ var _classnames = _interopRequireDefault(require("classnames"));
11
12
  var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
12
13
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
13
14
  var _hooks = require("../../../hooks");
@@ -30,7 +31,10 @@ var InlineExtension = function InlineExtension(props) {
30
31
  var _useSharedPluginState = (0, _hooks.useSharedPluginState)(pluginInjectionApi, ['width']),
31
32
  widthState = _useSharedPluginState.widthState;
32
33
  var hasChildren = !!children;
33
- var className = hasChildren ? 'with-overlay with-children' : 'with-overlay';
34
+ var classNames = (0, _classnames.default)('extension-container', 'inline', 'with-overlay', {
35
+ 'with-children': hasChildren,
36
+ 'with-danger-overlay': showMacroInteractionDesignUpdates
37
+ });
34
38
  var rendererContainerWidth = widthState ? widthState.width - _editorSharedStyles.akEditorGutterPadding * 2 : 0;
35
39
  var extendedInlineExtension = (0, _platformFeatureFlags.getBooleanFF)('platform.editor.inline_extension.extended_lcqdn') || false;
36
40
  var handleMouseEvent = function handleMouseEvent(didHover) {
@@ -44,8 +48,9 @@ var InlineExtension = function InlineExtension(props) {
44
48
  isNodeHovered: isNodeHovered,
45
49
  showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates
46
50
  }), (0, _react2.jsx)("div", {
51
+ "data-testid": "inline-extension-wrapper",
47
52
  css: [_styles2.wrapperStyle, extendedInlineExtension && _styles2.inlineWrapperStyels],
48
- className: "extension-container inline ".concat(className),
53
+ className: classNames,
49
54
  onMouseEnter: function onMouseEnter() {
50
55
  return handleMouseEvent(true);
51
56
  },
@@ -7,10 +7,10 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
  var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
11
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
14
  var _react = _interopRequireWildcard(require("react"));
15
15
  var _react2 = require("@emotion/react");
16
16
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -27,6 +27,13 @@ var _excluded = ["url"];
27
27
  /** @jsx jsx */
28
28
  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); }
29
29
  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 && Object.prototype.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; }
30
+ var getContainerCssExtendedStyles = function getContainerCssExtendedStyles(activeChildIndex, showMacroInteractionDesignUpdates) {
31
+ return (0, _react2.css)(_MultiBodiedExtension.sharedMultiBodiedExtensionStyles.mbeExtensionContainer, (0, _defineProperty2.default)({}, ".multiBodiedExtension-content-dom-wrapper > [data-extension-frame='true']:nth-of-type(".concat(activeChildIndex + 1, ")"), (0, _react2.css)(_MultiBodiedExtension.sharedMultiBodiedExtensionStyles.extensionFrameContent, showMacroInteractionDesignUpdates && _MultiBodiedExtension.removeMarginsAndBorder)));
32
+ };
33
+ var imageStyles = (0, _react2.css)({
34
+ maxHeight: '24px',
35
+ maxWidth: '24px'
36
+ });
30
37
  // Similar to the one in platform/packages/editor/editor-common/src/extensibility/Extension/Lozenge.tsx
31
38
  var getWrapperTitleContent = function getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates) {
32
39
  if (showMacroInteractionDesignUpdates) {
@@ -38,10 +45,7 @@ var getWrapperTitleContent = function getWrapperTitleContent(imageData, title, s
38
45
  return (0, _react2.jsx)("div", {
39
46
  className: "extension-title"
40
47
  }, (0, _react2.jsx)("img", (0, _extends2.default)({
41
- css: (0, _react2.css)({
42
- maxHeight: '24px',
43
- maxWidth: '24px'
44
- }),
48
+ css: imageStyles,
45
49
  src: url
46
50
  }, rest, {
47
51
  alt: title
@@ -101,7 +105,6 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
101
105
  var articleRef = _react.default.useCallback(function (node) {
102
106
  return handleContentDOMRef(node);
103
107
  }, [handleContentDOMRef]);
104
- var containerCssExtended = (0, _react2.css)(_MultiBodiedExtension.sharedMultiBodiedExtensionStyles.mbeExtensionContainer, (0, _defineProperty2.default)({}, ".multiBodiedExtension-content-dom-wrapper > [data-extension-frame='true']:nth-of-type(".concat(activeChildIndex + 1, ")"), (0, _react2.css)(_MultiBodiedExtension.sharedMultiBodiedExtensionStyles.extensionFrameContent, showMacroInteractionDesignUpdates && _MultiBodiedExtension.removeMarginsAndBorder)));
105
108
  var shouldBreakout =
106
109
  // Extension should breakout when the layout is set to 'full-width' or 'wide'.
107
110
  ['full-width', 'wide'].includes(node.attrs.layout) &&
@@ -120,7 +123,8 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
120
123
  var wrapperClassNames = (0, _classnames.default)('multiBodiedExtension--wrapper', 'extension-container', 'block', {
121
124
  'remove-margin-top': showMacroInteractionDesignUpdates,
122
125
  'with-border': showMacroInteractionDesignUpdates,
123
- 'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered
126
+ 'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered,
127
+ 'with-danger-overlay': showMacroInteractionDesignUpdates
124
128
  });
125
129
  var containerClassNames = (0, _classnames.default)('multiBodiedExtension--container', {
126
130
  'remove-padding': showMacroInteractionDesignUpdates
@@ -142,7 +146,7 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
142
146
  isNodeHovered: isNodeHovered
143
147
  }), (0, _react2.jsx)("div", {
144
148
  className: wrapperClassNames,
145
- css: _styles.mbeExtensionWrapperCSS,
149
+ css: _styles.mbeExtensionWrapperCSSStyles,
146
150
  "data-testid": "multiBodiedExtension--wrapper",
147
151
  style: mbeWrapperStyles,
148
152
  onMouseEnter: function onMouseEnter() {
@@ -151,9 +155,12 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
151
155
  onMouseLeave: function onMouseLeave() {
152
156
  return handleMouseEvent(false);
153
157
  }
154
- }, getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates), (0, _react2.jsx)("div", {
158
+ }, (0, _react2.jsx)("div", {
159
+ css: _styles.overlayStyles,
160
+ className: "multiBodiedExtension--overlay"
161
+ }), getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates), (0, _react2.jsx)("div", {
155
162
  className: containerClassNames,
156
- css: containerCssExtended,
163
+ css: getContainerCssExtendedStyles(activeChildIndex, showMacroInteractionDesignUpdates),
157
164
  "data-testid": "multiBodiedExtension--container",
158
165
  "data-active-child-index": activeChildIndex
159
166
  }, (0, _react2.jsx)("nav", {
@@ -3,12 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.mbeExtensionWrapperCSS = void 0;
6
+ exports.overlayStyles = exports.mbeExtensionWrapperCSSStyles = void 0;
7
7
  var _react = require("@emotion/react");
8
8
  var _colors = require("@atlaskit/theme/colors");
9
9
  var _styles = require("../Extension/styles");
10
10
  // Wrapper the extension title and extensionContainer
11
- var mbeExtensionWrapperCSS = exports.mbeExtensionWrapperCSS = (0, _react.css)(_styles.wrapperDefault, {
11
+ var mbeExtensionWrapperCSSStyles = exports.mbeExtensionWrapperCSSStyles = (0, _react.css)(_styles.wrapperDefault, {
12
12
  '&.remove-margin-top': {
13
13
  marginTop: 0
14
14
  },
@@ -30,4 +30,14 @@ var mbeExtensionWrapperCSS = exports.mbeExtensionWrapperCSS = (0, _react.css)(_s
30
30
  '&.with-hover-border': {
31
31
  border: "1px solid ".concat("var(--ds-border, ".concat(_colors.N30, ")"))
32
32
  }
33
+ });
34
+ var overlayStyles = exports.overlayStyles = (0, _react.css)({
35
+ borderRadius: "var(--ds-border-radius, 3px)",
36
+ position: 'absolute',
37
+ width: '100%',
38
+ height: '100%',
39
+ opacity: 0,
40
+ pointerEvents: 'none',
41
+ transition: 'opacity 0.3s',
42
+ zIndex: 1
33
43
  });
@@ -16,7 +16,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
16
16
  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 && Object.prototype.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; }
17
17
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
18
18
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
19
- var packageVersion = "78.18.2";
19
+ var packageVersion = "78.19.0";
20
20
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
21
21
  // Remove URL as it has UGC
22
22
  // TODO: Sanitise the URL instead of just removing it
@@ -22,7 +22,7 @@ var _templateObject, _templateObject2, _templateObject3;
22
22
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
23
23
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /** @jsx jsx */
24
24
  var packageName = "@atlaskit/editor-common";
25
- var packageVersion = "78.18.2";
25
+ var packageVersion = "78.19.0";
26
26
  var halfFocusRing = 1;
27
27
  var dropOffset = '0, 8';
28
28
  var DropList = /*#__PURE__*/function (_Component) {
@@ -427,7 +427,12 @@ var getValidNode = exports.getValidNode = function getValidNode(originalNode) {
427
427
  if (attrs.alt) {
428
428
  mediaAttrs.alt = attrs.alt;
429
429
  }
430
- return {
430
+ var getMarks = getValidMarks(marks, adfStage);
431
+ return getMarks ? {
432
+ type: type,
433
+ attrs: mediaAttrs,
434
+ marks: getMarks
435
+ } : {
431
436
  type: type,
432
437
  attrs: mediaAttrs
433
438
  };
@@ -446,11 +451,11 @@ var getValidNode = exports.getValidNode = function getValidNode(originalNode) {
446
451
  if (attrs.alt) {
447
452
  _mediaAttrs.alt = attrs.alt;
448
453
  }
449
- var getMarks = getValidMarks(marks, adfStage);
450
- return getMarks ? {
454
+ var _getMarks = getValidMarks(marks, adfStage);
455
+ return _getMarks ? {
451
456
  type: type,
452
457
  attrs: _mediaAttrs,
453
- marks: getMarks
458
+ marks: _getMarks
454
459
  } : {
455
460
  type: type,
456
461
  attrs: _mediaAttrs
@@ -9,6 +9,7 @@ export let ACTION = /*#__PURE__*/function (ACTION) {
9
9
  ACTION["ACTIVATED"] = "activated";
10
10
  ACTION["ADDED"] = "added";
11
11
  ACTION["BROWSER_FREEZE"] = "browserFreeze";
12
+ ACTION["CAUGHT_DOM_ERROR"] = "caughtDomError";
12
13
  ACTION["CHANGED_BACKGROUND_COLOR"] = "changedBackgroundColor";
13
14
  ACTION["CHANGED_ICON"] = "changedIcon";
14
15
  ACTION["CHANGED_FULL_WIDTH_MODE"] = "changedFullWidthMode";
@@ -52,6 +52,7 @@ function ExtensionWithPluginState(props) {
52
52
  'with-overlay': !hasBody && !showMacroInteractionDesignUpdates,
53
53
  'with-border': showMacroInteractionDesignUpdates,
54
54
  'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered,
55
+ 'with-danger-overlay': showMacroInteractionDesignUpdates,
55
56
  'without-frame': removeBorder,
56
57
  [widerLayoutClassName]: shouldBreakout
57
58
  });
@@ -1,6 +1,7 @@
1
1
  /** @jsx jsx */
2
2
  import React, { Fragment } from 'react';
3
3
  import { jsx } from '@emotion/react';
4
+ import classnames from 'classnames';
4
5
  import { akEditorGutterPadding } from '@atlaskit/editor-shared-styles';
5
6
  import { getBooleanFF } from '@atlaskit/platform-feature-flags';
6
7
  import { useSharedPluginState } from '../../../hooks';
@@ -22,7 +23,10 @@ const InlineExtension = props => {
22
23
  widthState
23
24
  } = useSharedPluginState(pluginInjectionApi, ['width']);
24
25
  const hasChildren = !!children;
25
- const className = hasChildren ? 'with-overlay with-children' : 'with-overlay';
26
+ const classNames = classnames('extension-container', 'inline', 'with-overlay', {
27
+ 'with-children': hasChildren,
28
+ 'with-danger-overlay': showMacroInteractionDesignUpdates
29
+ });
26
30
  const rendererContainerWidth = widthState ? widthState.width - akEditorGutterPadding * 2 : 0;
27
31
  const extendedInlineExtension = getBooleanFF('platform.editor.inline_extension.extended_lcqdn') || false;
28
32
  const handleMouseEvent = didHover => {
@@ -36,8 +40,9 @@ const InlineExtension = props => {
36
40
  isNodeHovered: isNodeHovered,
37
41
  showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates
38
42
  }), jsx("div", {
43
+ "data-testid": "inline-extension-wrapper",
39
44
  css: [wrapperStyle, extendedInlineExtension && inlineWrapperStyels],
40
- className: `extension-container inline ${className}`,
45
+ className: classNames,
41
46
  onMouseEnter: () => handleMouseEvent(true),
42
47
  onMouseLeave: () => handleMouseEvent(false)
43
48
  }, jsx("div", {
@@ -12,7 +12,14 @@ import { calculateBreakoutStyles, getExtensionLozengeData } from '../../utils';
12
12
  import { WithPluginState } from '../../with-plugin-state';
13
13
  import ExtensionLozenge from '../Extension/Lozenge';
14
14
  import { useMultiBodiedExtensionActions } from './action-api';
15
- import { mbeExtensionWrapperCSS } from './styles';
15
+ import { mbeExtensionWrapperCSSStyles, overlayStyles } from './styles';
16
+ const getContainerCssExtendedStyles = (activeChildIndex, showMacroInteractionDesignUpdates) => css(sharedMultiBodiedExtensionStyles.mbeExtensionContainer, {
17
+ [`.multiBodiedExtension-content-dom-wrapper > [data-extension-frame='true']:nth-of-type(${activeChildIndex + 1})`]: css(sharedMultiBodiedExtensionStyles.extensionFrameContent, showMacroInteractionDesignUpdates && removeMarginsAndBorder)
18
+ });
19
+ const imageStyles = css({
20
+ maxHeight: '24px',
21
+ maxWidth: '24px'
22
+ });
16
23
  // Similar to the one in platform/packages/editor/editor-common/src/extensibility/Extension/Lozenge.tsx
17
24
  const getWrapperTitleContent = (imageData, title, showMacroInteractionDesignUpdates) => {
18
25
  if (showMacroInteractionDesignUpdates) {
@@ -26,10 +33,7 @@ const getWrapperTitleContent = (imageData, title, showMacroInteractionDesignUpda
26
33
  return jsx("div", {
27
34
  className: "extension-title"
28
35
  }, jsx("img", _extends({
29
- css: css({
30
- maxHeight: '24px',
31
- maxWidth: '24px'
32
- }),
36
+ css: imageStyles,
33
37
  src: url
34
38
  }, rest, {
35
39
  alt: title
@@ -88,9 +92,6 @@ const MultiBodiedExtensionWithWidth = ({
88
92
  const articleRef = React.useCallback(node => {
89
93
  return handleContentDOMRef(node);
90
94
  }, [handleContentDOMRef]);
91
- const containerCssExtended = css(sharedMultiBodiedExtensionStyles.mbeExtensionContainer, {
92
- [`.multiBodiedExtension-content-dom-wrapper > [data-extension-frame='true']:nth-of-type(${activeChildIndex + 1})`]: css(sharedMultiBodiedExtensionStyles.extensionFrameContent, showMacroInteractionDesignUpdates && removeMarginsAndBorder)
93
- });
94
95
  const shouldBreakout =
95
96
  // Extension should breakout when the layout is set to 'full-width' or 'wide'.
96
97
  ['full-width', 'wide'].includes(node.attrs.layout) &&
@@ -110,7 +111,8 @@ const MultiBodiedExtensionWithWidth = ({
110
111
  const wrapperClassNames = classnames('multiBodiedExtension--wrapper', 'extension-container', 'block', {
111
112
  'remove-margin-top': showMacroInteractionDesignUpdates,
112
113
  'with-border': showMacroInteractionDesignUpdates,
113
- 'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered
114
+ 'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered,
115
+ 'with-danger-overlay': showMacroInteractionDesignUpdates
114
116
  });
115
117
  const containerClassNames = classnames('multiBodiedExtension--container', {
116
118
  'remove-padding': showMacroInteractionDesignUpdates
@@ -132,14 +134,17 @@ const MultiBodiedExtensionWithWidth = ({
132
134
  isNodeHovered: isNodeHovered
133
135
  }), jsx("div", {
134
136
  className: wrapperClassNames,
135
- css: mbeExtensionWrapperCSS,
137
+ css: mbeExtensionWrapperCSSStyles,
136
138
  "data-testid": "multiBodiedExtension--wrapper",
137
139
  style: mbeWrapperStyles,
138
140
  onMouseEnter: () => handleMouseEvent(true),
139
141
  onMouseLeave: () => handleMouseEvent(false)
140
- }, getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates), jsx("div", {
142
+ }, jsx("div", {
143
+ css: overlayStyles,
144
+ className: "multiBodiedExtension--overlay"
145
+ }), getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates), jsx("div", {
141
146
  className: containerClassNames,
142
- css: containerCssExtended,
147
+ css: getContainerCssExtendedStyles(activeChildIndex, showMacroInteractionDesignUpdates),
143
148
  "data-testid": "multiBodiedExtension--container",
144
149
  "data-active-child-index": activeChildIndex
145
150
  }, jsx("nav", {
@@ -3,7 +3,7 @@ import { N0, N30 } from '@atlaskit/theme/colors';
3
3
  import { wrapperDefault } from '../Extension/styles';
4
4
 
5
5
  // Wrapper the extension title and extensionContainer
6
- export const mbeExtensionWrapperCSS = css(wrapperDefault, {
6
+ export const mbeExtensionWrapperCSSStyles = css(wrapperDefault, {
7
7
  '&.remove-margin-top': {
8
8
  marginTop: 0
9
9
  },
@@ -25,4 +25,14 @@ export const mbeExtensionWrapperCSS = css(wrapperDefault, {
25
25
  '&.with-hover-border': {
26
26
  border: `1px solid ${`var(--ds-border, ${N30})`}`
27
27
  }
28
+ });
29
+ export const overlayStyles = css({
30
+ borderRadius: "var(--ds-border-radius, 3px)",
31
+ position: 'absolute',
32
+ width: '100%',
33
+ height: '100%',
34
+ opacity: 0,
35
+ pointerEvents: 'none',
36
+ transition: 'opacity 0.3s',
37
+ zIndex: 1
28
38
  });
@@ -1,6 +1,6 @@
1
1
  const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
2
2
  const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
3
- const packageVersion = "78.18.2";
3
+ const packageVersion = "78.19.0";
4
4
  const sanitiseSentryEvents = (data, _hint) => {
5
5
  // Remove URL as it has UGC
6
6
  // TODO: Sanitise the URL instead of just removing it
@@ -7,7 +7,7 @@ import { createAndFireEvent, withAnalyticsContext, withAnalyticsEvents } from '@
7
7
  import { N0, N50A, N60A, N900 } from '@atlaskit/theme/colors';
8
8
  import Layer from '../Layer';
9
9
  const packageName = "@atlaskit/editor-common";
10
- const packageVersion = "78.18.2";
10
+ const packageVersion = "78.19.0";
11
11
  const halfFocusRing = 1;
12
12
  const dropOffset = '0, 8';
13
13
  class DropList extends Component {
@@ -414,7 +414,12 @@ export const getValidNode = (originalNode, schema = defaultSchema, adfStage = 'f
414
414
  if (attrs.alt) {
415
415
  mediaAttrs.alt = attrs.alt;
416
416
  }
417
- return {
417
+ const getMarks = getValidMarks(marks, adfStage);
418
+ return getMarks ? {
419
+ type,
420
+ attrs: mediaAttrs,
421
+ marks: getMarks
422
+ } : {
418
423
  type,
419
424
  attrs: mediaAttrs
420
425
  };
@@ -9,6 +9,7 @@ export var ACTION = /*#__PURE__*/function (ACTION) {
9
9
  ACTION["ACTIVATED"] = "activated";
10
10
  ACTION["ADDED"] = "added";
11
11
  ACTION["BROWSER_FREEZE"] = "browserFreeze";
12
+ ACTION["CAUGHT_DOM_ERROR"] = "caughtDomError";
12
13
  ACTION["CHANGED_BACKGROUND_COLOR"] = "changedBackgroundColor";
13
14
  ACTION["CHANGED_ICON"] = "changedIcon";
14
15
  ACTION["CHANGED_FULL_WIDTH_MODE"] = "changedFullWidthMode";
@@ -54,6 +54,7 @@ function ExtensionWithPluginState(props) {
54
54
  'with-overlay': !hasBody && !showMacroInteractionDesignUpdates,
55
55
  'with-border': showMacroInteractionDesignUpdates,
56
56
  'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered,
57
+ 'with-danger-overlay': showMacroInteractionDesignUpdates,
57
58
  'without-frame': removeBorder
58
59
  }, widerLayoutClassName, shouldBreakout));
59
60
  var headerClassNames = classnames({
@@ -1,6 +1,7 @@
1
1
  /** @jsx jsx */
2
2
  import React, { Fragment } from 'react';
3
3
  import { jsx } from '@emotion/react';
4
+ import classnames from 'classnames';
4
5
  import { akEditorGutterPadding } from '@atlaskit/editor-shared-styles';
5
6
  import { getBooleanFF } from '@atlaskit/platform-feature-flags';
6
7
  import { useSharedPluginState } from '../../../hooks';
@@ -19,7 +20,10 @@ var InlineExtension = function InlineExtension(props) {
19
20
  var _useSharedPluginState = useSharedPluginState(pluginInjectionApi, ['width']),
20
21
  widthState = _useSharedPluginState.widthState;
21
22
  var hasChildren = !!children;
22
- var className = hasChildren ? 'with-overlay with-children' : 'with-overlay';
23
+ var classNames = classnames('extension-container', 'inline', 'with-overlay', {
24
+ 'with-children': hasChildren,
25
+ 'with-danger-overlay': showMacroInteractionDesignUpdates
26
+ });
23
27
  var rendererContainerWidth = widthState ? widthState.width - akEditorGutterPadding * 2 : 0;
24
28
  var extendedInlineExtension = getBooleanFF('platform.editor.inline_extension.extended_lcqdn') || false;
25
29
  var handleMouseEvent = function handleMouseEvent(didHover) {
@@ -33,8 +37,9 @@ var InlineExtension = function InlineExtension(props) {
33
37
  isNodeHovered: isNodeHovered,
34
38
  showMacroInteractionDesignUpdates: showMacroInteractionDesignUpdates
35
39
  }), jsx("div", {
40
+ "data-testid": "inline-extension-wrapper",
36
41
  css: [wrapperStyle, extendedInlineExtension && inlineWrapperStyels],
37
- className: "extension-container inline ".concat(className),
42
+ className: classNames,
38
43
  onMouseEnter: function onMouseEnter() {
39
44
  return handleMouseEvent(true);
40
45
  },
@@ -1,8 +1,8 @@
1
1
  import _objectDestructuringEmpty from "@babel/runtime/helpers/objectDestructuringEmpty";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
3
  import _extends from "@babel/runtime/helpers/extends";
5
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
6
6
  var _excluded = ["url"];
7
7
  /* eslint-disable @atlaskit/design-system/prefer-primitives */
8
8
  /** @jsx jsx */
@@ -17,7 +17,14 @@ import { calculateBreakoutStyles, getExtensionLozengeData } from '../../utils';
17
17
  import { WithPluginState } from '../../with-plugin-state';
18
18
  import ExtensionLozenge from '../Extension/Lozenge';
19
19
  import { useMultiBodiedExtensionActions } from './action-api';
20
- import { mbeExtensionWrapperCSS } from './styles';
20
+ import { mbeExtensionWrapperCSSStyles, overlayStyles } from './styles';
21
+ var getContainerCssExtendedStyles = function getContainerCssExtendedStyles(activeChildIndex, showMacroInteractionDesignUpdates) {
22
+ return css(sharedMultiBodiedExtensionStyles.mbeExtensionContainer, _defineProperty({}, ".multiBodiedExtension-content-dom-wrapper > [data-extension-frame='true']:nth-of-type(".concat(activeChildIndex + 1, ")"), css(sharedMultiBodiedExtensionStyles.extensionFrameContent, showMacroInteractionDesignUpdates && removeMarginsAndBorder)));
23
+ };
24
+ var imageStyles = css({
25
+ maxHeight: '24px',
26
+ maxWidth: '24px'
27
+ });
21
28
  // Similar to the one in platform/packages/editor/editor-common/src/extensibility/Extension/Lozenge.tsx
22
29
  var getWrapperTitleContent = function getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates) {
23
30
  if (showMacroInteractionDesignUpdates) {
@@ -29,10 +36,7 @@ var getWrapperTitleContent = function getWrapperTitleContent(imageData, title, s
29
36
  return jsx("div", {
30
37
  className: "extension-title"
31
38
  }, jsx("img", _extends({
32
- css: css({
33
- maxHeight: '24px',
34
- maxWidth: '24px'
35
- }),
39
+ css: imageStyles,
36
40
  src: url
37
41
  }, rest, {
38
42
  alt: title
@@ -92,7 +96,6 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
92
96
  var articleRef = React.useCallback(function (node) {
93
97
  return handleContentDOMRef(node);
94
98
  }, [handleContentDOMRef]);
95
- var containerCssExtended = css(sharedMultiBodiedExtensionStyles.mbeExtensionContainer, _defineProperty({}, ".multiBodiedExtension-content-dom-wrapper > [data-extension-frame='true']:nth-of-type(".concat(activeChildIndex + 1, ")"), css(sharedMultiBodiedExtensionStyles.extensionFrameContent, showMacroInteractionDesignUpdates && removeMarginsAndBorder)));
96
99
  var shouldBreakout =
97
100
  // Extension should breakout when the layout is set to 'full-width' or 'wide'.
98
101
  ['full-width', 'wide'].includes(node.attrs.layout) &&
@@ -111,7 +114,8 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
111
114
  var wrapperClassNames = classnames('multiBodiedExtension--wrapper', 'extension-container', 'block', {
112
115
  'remove-margin-top': showMacroInteractionDesignUpdates,
113
116
  'with-border': showMacroInteractionDesignUpdates,
114
- 'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered
117
+ 'with-hover-border': showMacroInteractionDesignUpdates && isNodeHovered,
118
+ 'with-danger-overlay': showMacroInteractionDesignUpdates
115
119
  });
116
120
  var containerClassNames = classnames('multiBodiedExtension--container', {
117
121
  'remove-padding': showMacroInteractionDesignUpdates
@@ -133,7 +137,7 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
133
137
  isNodeHovered: isNodeHovered
134
138
  }), jsx("div", {
135
139
  className: wrapperClassNames,
136
- css: mbeExtensionWrapperCSS,
140
+ css: mbeExtensionWrapperCSSStyles,
137
141
  "data-testid": "multiBodiedExtension--wrapper",
138
142
  style: mbeWrapperStyles,
139
143
  onMouseEnter: function onMouseEnter() {
@@ -142,9 +146,12 @@ var MultiBodiedExtensionWithWidth = function MultiBodiedExtensionWithWidth(_ref)
142
146
  onMouseLeave: function onMouseLeave() {
143
147
  return handleMouseEvent(false);
144
148
  }
145
- }, getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates), jsx("div", {
149
+ }, jsx("div", {
150
+ css: overlayStyles,
151
+ className: "multiBodiedExtension--overlay"
152
+ }), getWrapperTitleContent(imageData, title, showMacroInteractionDesignUpdates), jsx("div", {
146
153
  className: containerClassNames,
147
- css: containerCssExtended,
154
+ css: getContainerCssExtendedStyles(activeChildIndex, showMacroInteractionDesignUpdates),
148
155
  "data-testid": "multiBodiedExtension--container",
149
156
  "data-active-child-index": activeChildIndex
150
157
  }, jsx("nav", {
@@ -3,7 +3,7 @@ import { N0, N30 } from '@atlaskit/theme/colors';
3
3
  import { wrapperDefault } from '../Extension/styles';
4
4
 
5
5
  // Wrapper the extension title and extensionContainer
6
- export var mbeExtensionWrapperCSS = css(wrapperDefault, {
6
+ export var mbeExtensionWrapperCSSStyles = css(wrapperDefault, {
7
7
  '&.remove-margin-top': {
8
8
  marginTop: 0
9
9
  },
@@ -25,4 +25,14 @@ export var mbeExtensionWrapperCSS = css(wrapperDefault, {
25
25
  '&.with-hover-border': {
26
26
  border: "1px solid ".concat("var(--ds-border, ".concat(N30, ")"))
27
27
  }
28
+ });
29
+ export var overlayStyles = css({
30
+ borderRadius: "var(--ds-border-radius, 3px)",
31
+ position: 'absolute',
32
+ width: '100%',
33
+ height: '100%',
34
+ opacity: 0,
35
+ pointerEvents: 'none',
36
+ transition: 'opacity 0.3s',
37
+ zIndex: 1
28
38
  });
@@ -6,7 +6,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
6
6
  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; }
7
7
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
8
8
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
9
- var packageVersion = "78.18.2";
9
+ var packageVersion = "78.19.0";
10
10
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
11
11
  // Remove URL as it has UGC
12
12
  // TODO: Sanitise the URL instead of just removing it
@@ -17,7 +17,7 @@ import { createAndFireEvent, withAnalyticsContext, withAnalyticsEvents } from '@
17
17
  import { N0, N50A, N60A, N900 } from '@atlaskit/theme/colors';
18
18
  import Layer from '../Layer';
19
19
  var packageName = "@atlaskit/editor-common";
20
- var packageVersion = "78.18.2";
20
+ var packageVersion = "78.19.0";
21
21
  var halfFocusRing = 1;
22
22
  var dropOffset = '0, 8';
23
23
  var DropList = /*#__PURE__*/function (_Component) {
@@ -420,7 +420,12 @@ export var getValidNode = function getValidNode(originalNode) {
420
420
  if (attrs.alt) {
421
421
  mediaAttrs.alt = attrs.alt;
422
422
  }
423
- return {
423
+ var getMarks = getValidMarks(marks, adfStage);
424
+ return getMarks ? {
425
+ type: type,
426
+ attrs: mediaAttrs,
427
+ marks: getMarks
428
+ } : {
424
429
  type: type,
425
430
  attrs: mediaAttrs
426
431
  };
@@ -439,11 +444,11 @@ export var getValidNode = function getValidNode(originalNode) {
439
444
  if (attrs.alt) {
440
445
  _mediaAttrs.alt = attrs.alt;
441
446
  }
442
- var getMarks = getValidMarks(marks, adfStage);
443
- return getMarks ? {
447
+ var _getMarks = getValidMarks(marks, adfStage);
448
+ return _getMarks ? {
444
449
  type: type,
445
450
  attrs: _mediaAttrs,
446
- marks: getMarks
451
+ marks: _getMarks
447
452
  } : {
448
453
  type: type,
449
454
  attrs: _mediaAttrs
@@ -8,6 +8,7 @@ export declare enum ACTION {
8
8
  ACTIVATED = "activated",
9
9
  ADDED = "added",
10
10
  BROWSER_FREEZE = "browserFreeze",
11
+ CAUGHT_DOM_ERROR = "caughtDomError",
11
12
  CHANGED_BACKGROUND_COLOR = "changedBackgroundColor",
12
13
  CHANGED_ICON = "changedIcon",
13
14
  CHANGED_FULL_WIDTH_MODE = "changedFullWidthMode",
@@ -1 +1,2 @@
1
- export declare const mbeExtensionWrapperCSS: import("@emotion/react").SerializedStyles;
1
+ export declare const mbeExtensionWrapperCSSStyles: import("@emotion/react").SerializedStyles;
2
+ export declare const overlayStyles: import("@emotion/react").SerializedStyles;
@@ -8,6 +8,7 @@ export declare enum ACTION {
8
8
  ACTIVATED = "activated",
9
9
  ADDED = "added",
10
10
  BROWSER_FREEZE = "browserFreeze",
11
+ CAUGHT_DOM_ERROR = "caughtDomError",
11
12
  CHANGED_BACKGROUND_COLOR = "changedBackgroundColor",
12
13
  CHANGED_ICON = "changedIcon",
13
14
  CHANGED_FULL_WIDTH_MODE = "changedFullWidthMode",
@@ -1 +1,2 @@
1
- export declare const mbeExtensionWrapperCSS: import("@emotion/react").SerializedStyles;
1
+ export declare const mbeExtensionWrapperCSSStyles: import("@emotion/react").SerializedStyles;
2
+ export declare const overlayStyles: import("@emotion/react").SerializedStyles;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "78.18.2",
3
+ "version": "78.19.0",
4
4
  "description": "A package that contains common classes and components for editor and renderer",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"