@atlaskit/renderer 126.0.0 → 126.1.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @atlaskit/renderer
2
2
 
3
+ ## 126.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`7386aea2dbc51`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/7386aea2dbc51) -
8
+ [ux] EDITOR-4611 - Inline Bodied Extension: Implement inlined bodied extension style
9
+
10
+ ## 126.0.1
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies
15
+
3
16
  ## 126.0.0
4
17
 
5
18
  ### Major Changes
@@ -11,6 +11,7 @@ var clPrefix = 'ak-renderer-';
11
11
  var RendererCssClassName = exports.RendererCssClassName = {
12
12
  DOCUMENT: "".concat(clPrefix, "document"),
13
13
  EXTENSION: "".concat(clPrefix, "extension"),
14
+ EXTENSION_AS_INLINE: "".concat(clPrefix, "extension-as-inline"),
14
15
  EXTENSION_CENTER_ALIGN: "".concat(clPrefix, "extension-center-align"),
15
16
  EXTENSION_OVERFLOW_CONTAINER: "".concat(clPrefix, "extension-overflow-container"),
16
17
  NUMBER_COLUMN: "".concat(clPrefix, "table-number-column"),
@@ -27,7 +27,8 @@ var BodiedExtension = function BodiedExtension(props) {
27
27
  extensionType = props.extensionType,
28
28
  parameters = props.parameters,
29
29
  extensionViewportSizes = props.extensionViewportSizes,
30
- localId = props.localId;
30
+ localId = props.localId,
31
+ shouldDisplayExtensionAsInline = props.shouldDisplayExtensionAsInline;
31
32
  var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
32
33
  createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
33
34
  var removeOverflow = _react.default.Children.toArray(children)
@@ -58,15 +59,16 @@ var BodiedExtension = function BodiedExtension(props) {
58
59
  , (0, _extends2.default)({}, props, {
59
60
  type: "bodiedExtension"
60
61
  }), function (_ref) {
61
- var result = _ref.result;
62
+ var node = _ref.node,
63
+ result = _ref.result;
62
64
  try {
63
65
  if (result && /*#__PURE__*/_react.default.isValidElement(result)) {
64
66
  // Return the content directly if it's a valid JSX.Element
65
67
  return (0, _extension.renderExtension)(result, layout, {
66
68
  isTopLevel: path.length < 1
67
- }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId);
69
+ }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId, shouldDisplayExtensionAsInline, node);
68
70
  }
69
- } catch (e) {
71
+ } catch (_unused) {
70
72
  /** We don't want this error to block renderer */
71
73
  /** We keep rendering the default content */
72
74
  }
@@ -74,7 +76,7 @@ var BodiedExtension = function BodiedExtension(props) {
74
76
  // Always return default content if anything goes wrong
75
77
  return (0, _extension.renderExtension)(children, layout, {
76
78
  isTopLevel: path.length < 1
77
- }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId);
79
+ }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId, shouldDisplayExtensionAsInline, node);
78
80
  }))));
79
81
  };
80
82
  var _default = exports.default = BodiedExtension;
@@ -53,6 +53,8 @@ var renderExtension = exports.renderExtension = function renderExtension(content
53
53
  var extensionViewportSizes = arguments.length > 5 ? arguments[5] : undefined;
54
54
  var nodeHeight = arguments.length > 6 ? arguments[6] : undefined;
55
55
  var localId = arguments.length > 7 ? arguments[7] : undefined;
56
+ var shouldDisplayExtensionAsInline = arguments.length > 8 ? arguments[8] : undefined;
57
+ var node = arguments.length > 9 ? arguments[9] : undefined;
56
58
  var overflowContainerClass = !removeOverflow ? _consts.RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER : '';
57
59
 
58
60
  // by default, we assume the extension is at top level, (direct child of doc node)
@@ -68,17 +70,20 @@ var renderExtension = exports.renderExtension = function renderExtension(content
68
70
  */
69
71
  var viewportSize = getViewportSize(extensionId, extensionViewportSizes);
70
72
  var extensionHeight = nodeHeight || viewportSize;
73
+ var isInline = (shouldDisplayExtensionAsInline === null || shouldDisplayExtensionAsInline === void 0 ? void 0 : shouldDisplayExtensionAsInline(node)) && (0, _expValEquals.expValEquals)('platform_editor_render_bodied_extension_as_inline', 'isEnabled', true);
74
+ var inlineClassName = isInline ? _consts.RendererCssClassName.EXTENSION_AS_INLINE : '';
71
75
  if ((0, _expValEquals.expValEquals)('platform_editor_renderer_extension_width_fix', 'isEnabled', true)) {
72
76
  return (0, _react.jsx)("div", {
73
77
  ref: options.handleRef
74
78
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
75
79
  ,
76
- className: "".concat(_consts.RendererCssClassName.EXTENSION, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
80
+ className: "".concat(_consts.RendererCssClassName.EXTENSION, " ").concat(inlineClassName, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
77
81
  style: {
82
+ width: isInline ? undefined : isTopLevel ?
78
83
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
79
- width: isTopLevel ? (0, _breakout.calcBreakoutWidthCss)(layout) : '100%',
84
+ (0, _breakout.calcBreakoutWidthCss)(layout) : '100%',
80
85
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
81
- minHeight: extensionHeight && "".concat(extensionHeight, "px")
86
+ minHeight: isInline ? undefined : extensionHeight && "".concat(extensionHeight, "px")
82
87
  },
83
88
  "data-layout": layout,
84
89
  "data-local-id": localId,
@@ -98,12 +103,12 @@ var renderExtension = exports.renderExtension = function renderExtension(content
98
103
  ref: options.handleRef
99
104
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
100
105
  ,
101
- className: "".concat(_consts.RendererCssClassName.EXTENSION, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
106
+ className: "".concat(_consts.RendererCssClassName.EXTENSION, " ").concat(inlineClassName, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
102
107
  style: {
103
108
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
104
- width: isTopLevel ? (0, _utils.calcBreakoutWidth)(layout, width) : '100%',
109
+ width: isInline ? undefined : isTopLevel ? (0, _utils.calcBreakoutWidth)(layout, width) : '100%',
105
110
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
106
- minHeight: "".concat(extensionHeight, "px")
111
+ minHeight: isInline ? undefined : "".concat(extensionHeight, "px")
107
112
  },
108
113
  "data-layout": layout,
109
114
  "data-local-id": localId
@@ -143,7 +148,7 @@ var Extension = function Extension(props) {
143
148
  handleRef: handleRef,
144
149
  shadowClassNames: shadowClassNames,
145
150
  tabIndex: (0, _platformFeatureFlags.fg)('platform_editor_dec_a11y_fixes') ? props.tabIndex : undefined
146
- }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId);
151
+ }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId, undefined, undefined);
147
152
  }
148
153
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
149
154
  } catch (e) {
@@ -156,7 +161,7 @@ var Extension = function Extension(props) {
156
161
  handleRef: handleRef,
157
162
  shadowClassNames: shadowClassNames,
158
163
  tabIndex: (0, _platformFeatureFlags.fg)('platform_editor_dec_a11y_fixes') ? props.tabIndex : undefined
159
- }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId);
164
+ }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId, undefined, undefined);
160
165
  });
161
166
  };
162
167
  var _default = exports.default = (0, _ui.overflowShadow)(Extension, {
@@ -122,11 +122,12 @@ function ExtensionRenderer(props) {
122
122
  });
123
123
  }
124
124
  }
125
- } catch (e) {
125
+ } catch (_unused) {
126
126
  /** We don't want this error to block renderer */
127
127
  /** We keep rendering the default content */
128
128
  }
129
129
  return children({
130
+ node: node,
130
131
  result: result
131
132
  });
132
133
  }, [actions, children, content, extensionHandlers, extensionKey, extensionType, localGetNodeRenderer, localId, marks, parameters, rendererContext === null || rendererContext === void 0 ? void 0 : rendererContext.adDoc, text, type]);
@@ -740,6 +740,23 @@ var extensionStyle = (0, _react.css)({
740
740
  fontSize: 'var(--ak-renderer-base-font-size)'
741
741
  }
742
742
  });
743
+ var extensionAsInlineStyle = (0, _react.css)({
744
+ '.ak-renderer-document .ak-renderer-extension-as-inline': {
745
+ display: 'inline-block',
746
+ // use !important here because the current width has !important applied to it and it's not working when used in React style prop
747
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
748
+ width: 'auto !important',
749
+ marginTop: 0
750
+ },
751
+ '.ak-renderer-extension-as-inline .ak-renderer-extension-overflow-container': {
752
+ display: 'inline-block',
753
+ overflowX: 'visible',
754
+ containerType: 'normal'
755
+ },
756
+ '.ak-renderer-extension-as-inline div, .ak-renderer-extension-as-inline p': {
757
+ display: 'inline-block'
758
+ }
759
+ });
743
760
  var shadowSharedStyle = (0, _react.css)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "& .".concat(_ui.shadowClassNames.RIGHT_SHADOW, "::before, .").concat(_ui.shadowClassNames.RIGHT_SHADOW, "::after, .").concat(_ui.shadowClassNames.LEFT_SHADOW, "::before, .").concat(_ui.shadowClassNames.LEFT_SHADOW, "::after"), {
744
761
  display: 'none',
745
762
  position: 'absolute',
@@ -1687,7 +1704,9 @@ var RendererStyleContainer = exports.RendererStyleContainer = function RendererS
1687
1704
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
1688
1705
  textHighlightPaddingStyles, tasksAndDecisionsStyles, smartCardStyles, smartCardStylesAvatarFix, (0, _experiments.editorExperiment)('platform_editor_preview_panel_linking_exp', true) && headerSmartCardStyles, smartCardStylesAvatarMarginFix, smartCardStylesAvatarListZeroMarginTop, (0, _platformFeatureFlags.fg)('editor_inline_comments_on_inline_nodes') && rendererAnnotationStyles,
1689
1706
  // eslint-disable-next-line @atlaskit/platform/no-preconditioning
1690
- (0, _platformFeatureFlags.fg)('editor_inline_comments_on_inline_nodes') && rendererAnnotationStylesCommentHeightFix, baseOtherStyles, allowNestedHeaderLinks && alignedHeadingAnchorStyle, mediaSingleSharedStyle,
1707
+ (0, _platformFeatureFlags.fg)('editor_inline_comments_on_inline_nodes') && rendererAnnotationStylesCommentHeightFix, baseOtherStyles,
1708
+ // this should be placed after baseOtherStyles
1709
+ (0, _expValEquals.expValEquals)('platform_editor_render_bodied_extension_as_inline', 'isEnabled', true) && extensionAsInlineStyle, allowNestedHeaderLinks && alignedHeadingAnchorStyle, mediaSingleSharedStyle,
1691
1710
  // merge firstWrappedMediaStyles with mediaSingleSharedStyle when clean up platform_editor_fix_media_in_renderer
1692
1711
  (0, _platformFeatureFlags.fg)('platform_editor_fix_media_in_renderer') && firstWrappedMediaStyles, tableSharedStyle, tableRendererHeaderStylesForTableCellOnly, (0, _platformFeatureFlags.fg)('platform_editor_bordered_panel_nested_in_table') && tableRendererNestedPanelStyles, isBackgroundClipBrowserFixNeeded() && tableStylesBackGroundClipForGeckoForTableCellOnly, (0, _platformFeatureFlags.fg)('platform_editor_nested_dnd_styles_changes') ? firstNodeWithNotMarginTopWithNestedDnD : firstNodeWithNotMarginTop, rendererTableStyles, (0, _table.isStickyScrollbarEnabled)(appearance) && stickyScrollbarStyles, rendererTableHeaderEqualHeightStylesForTableCellOnly, allowColumnSorting && rendererTableSortableColumnStyles, allowColumnSorting && allowNestedHeaderLinks && rendererTableHeaderEqualHeightStylesAllowNestedHeaderLinks, rendererTableColumnStyles, stickyHeaderStyles, codeBlockAndLayoutStyles, columnLayoutSharedStyle, isAdvancedLayoutsOn && columnLayoutResponsiveSharedStyle, isAdvancedLayoutsOn && columnLayoutResponsiveRendererStyles, isAdvancedLayoutsOn && layoutSectionForAdvancedLayoutsStyles, !useBlockRenderForCodeBlock && gridRenderForCodeBlockStyles, browser.safari && codeBlockInListSafariFixStyles, appearance === 'full-page' && !isPreviewPanelResponsivenessOn && responsiveBreakoutWidth, appearance === 'full-page' && isPreviewPanelResponsivenessOn && responsiveBreakoutWidthWithReducedPadding, (appearance === 'full-width' || appearance === 'max' && ((0, _expValEquals.expValEquals)('editor_tinymce_full_width_mode', 'isEnabled', true) || (0, _expValEquals.expValEquals)('confluence_max_width_content_appearance', 'isEnabled', true))) && responsiveBreakoutWidthFullWidth, (0, _expValEquals.expValEquals)('platform_editor_lovability_emoji_scaling', 'isEnabled', true) ? isCompactModeEnabled ? scaledDenseEmojiStyles : scaledEmojiStyles : isCompactModeEnabled ? denseStyles : undefined, (0, _expValEquals.expValEquals)('platform_synced_block', 'isEnabled', true) && syncBlockStyles],
1693
1712
  "data-testid": testId
@@ -70,7 +70,7 @@ var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
70
70
  var TABLE_INFO_TIMEOUT = 10000;
71
71
  var RENDER_EVENT_SAMPLE_RATE = 0.2;
72
72
  var packageName = "@atlaskit/renderer";
73
- var packageVersion = "125.4.1";
73
+ var packageVersion = "126.0.1";
74
74
  var setAsQueryContainerStyles = (0, _react2.css)({
75
75
  containerName: 'ak-renderer-wrapper',
76
76
  containerType: 'inline-size'
@@ -5,6 +5,7 @@ const clPrefix = 'ak-renderer-';
5
5
  export const RendererCssClassName = {
6
6
  DOCUMENT: `${clPrefix}document`,
7
7
  EXTENSION: `${clPrefix}extension`,
8
+ EXTENSION_AS_INLINE: `${clPrefix}extension-as-inline`,
8
9
  EXTENSION_CENTER_ALIGN: `${clPrefix}extension-center-align`,
9
10
  EXTENSION_OVERFLOW_CONTAINER: `${clPrefix}extension-overflow-container`,
10
11
  NUMBER_COLUMN: `${clPrefix}table-number-column`,
@@ -17,7 +17,8 @@ const BodiedExtension = props => {
17
17
  extensionType,
18
18
  parameters,
19
19
  extensionViewportSizes,
20
- localId
20
+ localId,
21
+ shouldDisplayExtensionAsInline
21
22
  } = props;
22
23
  const {
23
24
  createAnalyticsEvent
@@ -46,6 +47,7 @@ const BodiedExtension = props => {
46
47
  , _extends({}, props, {
47
48
  type: "bodiedExtension"
48
49
  }), ({
50
+ node,
49
51
  result
50
52
  }) => {
51
53
  try {
@@ -53,9 +55,9 @@ const BodiedExtension = props => {
53
55
  // Return the content directly if it's a valid JSX.Element
54
56
  return renderExtension(result, layout, {
55
57
  isTopLevel: path.length < 1
56
- }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId);
58
+ }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId, shouldDisplayExtensionAsInline, node);
57
59
  }
58
- } catch (e) {
60
+ } catch {
59
61
  /** We don't want this error to block renderer */
60
62
  /** We keep rendering the default content */
61
63
  }
@@ -63,7 +65,7 @@ const BodiedExtension = props => {
63
65
  // Always return default content if anything goes wrong
64
66
  return renderExtension(children, layout, {
65
67
  isTopLevel: path.length < 1
66
- }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId);
68
+ }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId, shouldDisplayExtensionAsInline, node);
67
69
  }))));
68
70
  };
69
71
  export default BodiedExtension;
@@ -36,7 +36,7 @@ const getViewportSize = (extensionId, extensionViewportSizes) => {
36
36
  const containerStyle = css({
37
37
  containerType: 'inline-size'
38
38
  });
39
- export const renderExtension = (content, layout, options = {}, removeOverflow, extensionId, extensionViewportSizes, nodeHeight, localId) => {
39
+ export const renderExtension = (content, layout, options = {}, removeOverflow, extensionId, extensionViewportSizes, nodeHeight, localId, shouldDisplayExtensionAsInline, node) => {
40
40
  const overflowContainerClass = !removeOverflow ? RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER : '';
41
41
 
42
42
  // by default, we assume the extension is at top level, (direct child of doc node)
@@ -52,17 +52,20 @@ export const renderExtension = (content, layout, options = {}, removeOverflow, e
52
52
  */
53
53
  const viewportSize = getViewportSize(extensionId, extensionViewportSizes);
54
54
  const extensionHeight = nodeHeight || viewportSize;
55
+ const isInline = (shouldDisplayExtensionAsInline === null || shouldDisplayExtensionAsInline === void 0 ? void 0 : shouldDisplayExtensionAsInline(node)) && expValEquals('platform_editor_render_bodied_extension_as_inline', 'isEnabled', true);
56
+ const inlineClassName = isInline ? RendererCssClassName.EXTENSION_AS_INLINE : '';
55
57
  if (expValEquals('platform_editor_renderer_extension_width_fix', 'isEnabled', true)) {
56
58
  return jsx("div", {
57
59
  ref: options.handleRef
58
60
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
59
61
  ,
60
- className: `${RendererCssClassName.EXTENSION} ${options.shadowClassNames} ${centerAlignClass}`,
62
+ className: `${RendererCssClassName.EXTENSION} ${inlineClassName} ${options.shadowClassNames} ${centerAlignClass}`,
61
63
  style: {
64
+ width: isInline ? undefined : isTopLevel ?
62
65
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
63
- width: isTopLevel ? calcBreakoutWidthCss(layout) : '100%',
66
+ calcBreakoutWidthCss(layout) : '100%',
64
67
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
65
- minHeight: extensionHeight && `${extensionHeight}px`
68
+ minHeight: isInline ? undefined : extensionHeight && `${extensionHeight}px`
66
69
  },
67
70
  "data-layout": layout,
68
71
  "data-local-id": localId,
@@ -82,12 +85,12 @@ export const renderExtension = (content, layout, options = {}, removeOverflow, e
82
85
  ref: options.handleRef
83
86
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
84
87
  ,
85
- className: `${RendererCssClassName.EXTENSION} ${options.shadowClassNames} ${centerAlignClass}`,
88
+ className: `${RendererCssClassName.EXTENSION} ${inlineClassName} ${options.shadowClassNames} ${centerAlignClass}`,
86
89
  style: {
87
90
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
88
- width: isTopLevel ? calcBreakoutWidth(layout, width) : '100%',
91
+ width: isInline ? undefined : isTopLevel ? calcBreakoutWidth(layout, width) : '100%',
89
92
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
90
- minHeight: `${extensionHeight}px`
93
+ minHeight: isInline ? undefined : `${extensionHeight}px`
91
94
  },
92
95
  "data-layout": layout,
93
96
  "data-local-id": localId
@@ -127,7 +130,7 @@ const Extension = props => {
127
130
  handleRef,
128
131
  shadowClassNames,
129
132
  tabIndex: fg('platform_editor_dec_a11y_fixes') ? props.tabIndex : undefined
130
- }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId);
133
+ }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId, undefined, undefined);
131
134
  }
132
135
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
133
136
  } catch (e) {
@@ -140,7 +143,7 @@ const Extension = props => {
140
143
  handleRef,
141
144
  shadowClassNames,
142
145
  tabIndex: fg('platform_editor_dec_a11y_fixes') ? props.tabIndex : undefined
143
- }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId);
146
+ }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId, undefined, undefined);
144
147
  });
145
148
  };
146
149
  export default overflowShadow(Extension, {
@@ -107,11 +107,12 @@ export default function ExtensionRenderer(props) {
107
107
  });
108
108
  }
109
109
  }
110
- } catch (e) {
110
+ } catch {
111
111
  /** We don't want this error to block renderer */
112
112
  /** We keep rendering the default content */
113
113
  }
114
114
  return children({
115
+ node,
115
116
  result
116
117
  });
117
118
  }, [actions, children, content, extensionHandlers, extensionKey, extensionType, localGetNodeRenderer, localId, marks, parameters, rendererContext === null || rendererContext === void 0 ? void 0 : rendererContext.adDoc, text, type]);
@@ -849,6 +849,23 @@ const extensionStyle = css({
849
849
  fontSize: 'var(--ak-renderer-base-font-size)'
850
850
  }
851
851
  });
852
+ const extensionAsInlineStyle = css({
853
+ '.ak-renderer-document .ak-renderer-extension-as-inline': {
854
+ display: 'inline-block',
855
+ // use !important here because the current width has !important applied to it and it's not working when used in React style prop
856
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
857
+ width: 'auto !important',
858
+ marginTop: 0
859
+ },
860
+ '.ak-renderer-extension-as-inline .ak-renderer-extension-overflow-container': {
861
+ display: 'inline-block',
862
+ overflowX: 'visible',
863
+ containerType: 'normal'
864
+ },
865
+ '.ak-renderer-extension-as-inline div, .ak-renderer-extension-as-inline p': {
866
+ display: 'inline-block'
867
+ }
868
+ });
852
869
  const shadowSharedStyle = css({
853
870
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-values, @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
854
871
  [`& .${shadowClassNames.RIGHT_SHADOW}::before, .${shadowClassNames.RIGHT_SHADOW}::after, .${shadowClassNames.LEFT_SHADOW}::before, .${shadowClassNames.LEFT_SHADOW}::after`]: {
@@ -2118,7 +2135,9 @@ export const RendererStyleContainer = props => {
2118
2135
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
2119
2136
  textHighlightPaddingStyles, tasksAndDecisionsStyles, smartCardStyles, smartCardStylesAvatarFix, editorExperiment('platform_editor_preview_panel_linking_exp', true) && headerSmartCardStyles, smartCardStylesAvatarMarginFix, smartCardStylesAvatarListZeroMarginTop, fg('editor_inline_comments_on_inline_nodes') && rendererAnnotationStyles,
2120
2137
  // eslint-disable-next-line @atlaskit/platform/no-preconditioning
2121
- fg('editor_inline_comments_on_inline_nodes') && rendererAnnotationStylesCommentHeightFix, baseOtherStyles, allowNestedHeaderLinks && alignedHeadingAnchorStyle, mediaSingleSharedStyle,
2138
+ fg('editor_inline_comments_on_inline_nodes') && rendererAnnotationStylesCommentHeightFix, baseOtherStyles,
2139
+ // this should be placed after baseOtherStyles
2140
+ expValEquals('platform_editor_render_bodied_extension_as_inline', 'isEnabled', true) && extensionAsInlineStyle, allowNestedHeaderLinks && alignedHeadingAnchorStyle, mediaSingleSharedStyle,
2122
2141
  // merge firstWrappedMediaStyles with mediaSingleSharedStyle when clean up platform_editor_fix_media_in_renderer
2123
2142
  fg('platform_editor_fix_media_in_renderer') && firstWrappedMediaStyles, tableSharedStyle, tableRendererHeaderStylesForTableCellOnly, fg('platform_editor_bordered_panel_nested_in_table') && tableRendererNestedPanelStyles, isBackgroundClipBrowserFixNeeded() && tableStylesBackGroundClipForGeckoForTableCellOnly, fg('platform_editor_nested_dnd_styles_changes') ? firstNodeWithNotMarginTopWithNestedDnD : firstNodeWithNotMarginTop, rendererTableStyles, isStickyScrollbarEnabled(appearance) && stickyScrollbarStyles, rendererTableHeaderEqualHeightStylesForTableCellOnly, allowColumnSorting && rendererTableSortableColumnStyles, allowColumnSorting && allowNestedHeaderLinks && rendererTableHeaderEqualHeightStylesAllowNestedHeaderLinks, rendererTableColumnStyles, stickyHeaderStyles, codeBlockAndLayoutStyles, columnLayoutSharedStyle, isAdvancedLayoutsOn && columnLayoutResponsiveSharedStyle, isAdvancedLayoutsOn && columnLayoutResponsiveRendererStyles, isAdvancedLayoutsOn && layoutSectionForAdvancedLayoutsStyles, !useBlockRenderForCodeBlock && gridRenderForCodeBlockStyles, browser.safari && codeBlockInListSafariFixStyles, appearance === 'full-page' && !isPreviewPanelResponsivenessOn && responsiveBreakoutWidth, appearance === 'full-page' && isPreviewPanelResponsivenessOn && responsiveBreakoutWidthWithReducedPadding, (appearance === 'full-width' || appearance === 'max' && (expValEquals('editor_tinymce_full_width_mode', 'isEnabled', true) || expValEquals('confluence_max_width_content_appearance', 'isEnabled', true))) && responsiveBreakoutWidthFullWidth, expValEquals('platform_editor_lovability_emoji_scaling', 'isEnabled', true) ? isCompactModeEnabled ? scaledDenseEmojiStyles : scaledEmojiStyles : isCompactModeEnabled ? denseStyles : undefined, expValEquals('platform_synced_block', 'isEnabled', true) && syncBlockStyles],
2124
2143
  "data-testid": testId
@@ -56,7 +56,7 @@ export const DEGRADED_SEVERITY_THRESHOLD = 3000;
56
56
  const TABLE_INFO_TIMEOUT = 10000;
57
57
  const RENDER_EVENT_SAMPLE_RATE = 0.2;
58
58
  const packageName = "@atlaskit/renderer";
59
- const packageVersion = "125.4.1";
59
+ const packageVersion = "126.0.1";
60
60
  const setAsQueryContainerStyles = css({
61
61
  containerName: 'ak-renderer-wrapper',
62
62
  containerType: 'inline-size'
@@ -5,6 +5,7 @@ var clPrefix = 'ak-renderer-';
5
5
  export var RendererCssClassName = {
6
6
  DOCUMENT: "".concat(clPrefix, "document"),
7
7
  EXTENSION: "".concat(clPrefix, "extension"),
8
+ EXTENSION_AS_INLINE: "".concat(clPrefix, "extension-as-inline"),
8
9
  EXTENSION_CENTER_ALIGN: "".concat(clPrefix, "extension-center-align"),
9
10
  EXTENSION_OVERFLOW_CONTAINER: "".concat(clPrefix, "extension-overflow-container"),
10
11
  NUMBER_COLUMN: "".concat(clPrefix, "table-number-column"),
@@ -18,7 +18,8 @@ var BodiedExtension = function BodiedExtension(props) {
18
18
  extensionType = props.extensionType,
19
19
  parameters = props.parameters,
20
20
  extensionViewportSizes = props.extensionViewportSizes,
21
- localId = props.localId;
21
+ localId = props.localId,
22
+ shouldDisplayExtensionAsInline = props.shouldDisplayExtensionAsInline;
22
23
  var _useAnalyticsEvents = useAnalyticsEvents(),
23
24
  createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
24
25
  var removeOverflow = React.Children.toArray(children)
@@ -49,15 +50,16 @@ var BodiedExtension = function BodiedExtension(props) {
49
50
  , _extends({}, props, {
50
51
  type: "bodiedExtension"
51
52
  }), function (_ref) {
52
- var result = _ref.result;
53
+ var node = _ref.node,
54
+ result = _ref.result;
53
55
  try {
54
56
  if (result && /*#__PURE__*/React.isValidElement(result)) {
55
57
  // Return the content directly if it's a valid JSX.Element
56
58
  return renderExtension(result, layout, {
57
59
  isTopLevel: path.length < 1
58
- }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId);
60
+ }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId, shouldDisplayExtensionAsInline, node);
59
61
  }
60
- } catch (e) {
62
+ } catch (_unused) {
61
63
  /** We don't want this error to block renderer */
62
64
  /** We keep rendering the default content */
63
65
  }
@@ -65,7 +67,7 @@ var BodiedExtension = function BodiedExtension(props) {
65
67
  // Always return default content if anything goes wrong
66
68
  return renderExtension(children, layout, {
67
69
  isTopLevel: path.length < 1
68
- }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId);
70
+ }, removeOverflow, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, undefined, localId, shouldDisplayExtensionAsInline, node);
69
71
  }))));
70
72
  };
71
73
  export default BodiedExtension;
@@ -45,6 +45,8 @@ export var renderExtension = function renderExtension(content, layout) {
45
45
  var extensionViewportSizes = arguments.length > 5 ? arguments[5] : undefined;
46
46
  var nodeHeight = arguments.length > 6 ? arguments[6] : undefined;
47
47
  var localId = arguments.length > 7 ? arguments[7] : undefined;
48
+ var shouldDisplayExtensionAsInline = arguments.length > 8 ? arguments[8] : undefined;
49
+ var node = arguments.length > 9 ? arguments[9] : undefined;
48
50
  var overflowContainerClass = !removeOverflow ? RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER : '';
49
51
 
50
52
  // by default, we assume the extension is at top level, (direct child of doc node)
@@ -60,17 +62,20 @@ export var renderExtension = function renderExtension(content, layout) {
60
62
  */
61
63
  var viewportSize = getViewportSize(extensionId, extensionViewportSizes);
62
64
  var extensionHeight = nodeHeight || viewportSize;
65
+ var isInline = (shouldDisplayExtensionAsInline === null || shouldDisplayExtensionAsInline === void 0 ? void 0 : shouldDisplayExtensionAsInline(node)) && expValEquals('platform_editor_render_bodied_extension_as_inline', 'isEnabled', true);
66
+ var inlineClassName = isInline ? RendererCssClassName.EXTENSION_AS_INLINE : '';
63
67
  if (expValEquals('platform_editor_renderer_extension_width_fix', 'isEnabled', true)) {
64
68
  return jsx("div", {
65
69
  ref: options.handleRef
66
70
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
67
71
  ,
68
- className: "".concat(RendererCssClassName.EXTENSION, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
72
+ className: "".concat(RendererCssClassName.EXTENSION, " ").concat(inlineClassName, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
69
73
  style: {
74
+ width: isInline ? undefined : isTopLevel ?
70
75
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
71
- width: isTopLevel ? calcBreakoutWidthCss(layout) : '100%',
76
+ calcBreakoutWidthCss(layout) : '100%',
72
77
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
73
- minHeight: extensionHeight && "".concat(extensionHeight, "px")
78
+ minHeight: isInline ? undefined : extensionHeight && "".concat(extensionHeight, "px")
74
79
  },
75
80
  "data-layout": layout,
76
81
  "data-local-id": localId,
@@ -90,12 +95,12 @@ export var renderExtension = function renderExtension(content, layout) {
90
95
  ref: options.handleRef
91
96
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
92
97
  ,
93
- className: "".concat(RendererCssClassName.EXTENSION, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
98
+ className: "".concat(RendererCssClassName.EXTENSION, " ").concat(inlineClassName, " ").concat(options.shadowClassNames, " ").concat(centerAlignClass),
94
99
  style: {
95
100
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
96
- width: isTopLevel ? calcBreakoutWidth(layout, width) : '100%',
101
+ width: isInline ? undefined : isTopLevel ? calcBreakoutWidth(layout, width) : '100%',
97
102
  // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
98
- minHeight: "".concat(extensionHeight, "px")
103
+ minHeight: isInline ? undefined : "".concat(extensionHeight, "px")
99
104
  },
100
105
  "data-layout": layout,
101
106
  "data-local-id": localId
@@ -135,7 +140,7 @@ var Extension = function Extension(props) {
135
140
  handleRef: handleRef,
136
141
  shadowClassNames: shadowClassNames,
137
142
  tabIndex: fg('platform_editor_dec_a11y_fixes') ? props.tabIndex : undefined
138
- }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId);
143
+ }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId, undefined, undefined);
139
144
  }
140
145
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
141
146
  } catch (e) {
@@ -148,7 +153,7 @@ var Extension = function Extension(props) {
148
153
  handleRef: handleRef,
149
154
  shadowClassNames: shadowClassNames,
150
155
  tabIndex: fg('platform_editor_dec_a11y_fixes') ? props.tabIndex : undefined
151
- }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId);
156
+ }, undefined, parameters === null || parameters === void 0 ? void 0 : parameters.extensionId, extensionViewportSizes, nodeHeight, localId, undefined, undefined);
152
157
  });
153
158
  };
154
159
  export default overflowShadow(Extension, {
@@ -113,11 +113,12 @@ export default function ExtensionRenderer(props) {
113
113
  });
114
114
  }
115
115
  }
116
- } catch (e) {
116
+ } catch (_unused) {
117
117
  /** We don't want this error to block renderer */
118
118
  /** We keep rendering the default content */
119
119
  }
120
120
  return children({
121
+ node: node,
121
122
  result: result
122
123
  });
123
124
  }, [actions, children, content, extensionHandlers, extensionKey, extensionType, localGetNodeRenderer, localId, marks, parameters, rendererContext === null || rendererContext === void 0 ? void 0 : rendererContext.adDoc, text, type]);
@@ -733,6 +733,23 @@ var extensionStyle = css({
733
733
  fontSize: 'var(--ak-renderer-base-font-size)'
734
734
  }
735
735
  });
736
+ var extensionAsInlineStyle = css({
737
+ '.ak-renderer-document .ak-renderer-extension-as-inline': {
738
+ display: 'inline-block',
739
+ // use !important here because the current width has !important applied to it and it's not working when used in React style prop
740
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
741
+ width: 'auto !important',
742
+ marginTop: 0
743
+ },
744
+ '.ak-renderer-extension-as-inline .ak-renderer-extension-overflow-container': {
745
+ display: 'inline-block',
746
+ overflowX: 'visible',
747
+ containerType: 'normal'
748
+ },
749
+ '.ak-renderer-extension-as-inline div, .ak-renderer-extension-as-inline p': {
750
+ display: 'inline-block'
751
+ }
752
+ });
736
753
  var shadowSharedStyle = css(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "& .".concat(shadowClassNames.RIGHT_SHADOW, "::before, .").concat(shadowClassNames.RIGHT_SHADOW, "::after, .").concat(shadowClassNames.LEFT_SHADOW, "::before, .").concat(shadowClassNames.LEFT_SHADOW, "::after"), {
737
754
  display: 'none',
738
755
  position: 'absolute',
@@ -1680,7 +1697,9 @@ export var RendererStyleContainer = function RendererStyleContainer(props) {
1680
1697
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values
1681
1698
  textHighlightPaddingStyles, tasksAndDecisionsStyles, smartCardStyles, smartCardStylesAvatarFix, editorExperiment('platform_editor_preview_panel_linking_exp', true) && headerSmartCardStyles, smartCardStylesAvatarMarginFix, smartCardStylesAvatarListZeroMarginTop, fg('editor_inline_comments_on_inline_nodes') && rendererAnnotationStyles,
1682
1699
  // eslint-disable-next-line @atlaskit/platform/no-preconditioning
1683
- fg('editor_inline_comments_on_inline_nodes') && rendererAnnotationStylesCommentHeightFix, baseOtherStyles, allowNestedHeaderLinks && alignedHeadingAnchorStyle, mediaSingleSharedStyle,
1700
+ fg('editor_inline_comments_on_inline_nodes') && rendererAnnotationStylesCommentHeightFix, baseOtherStyles,
1701
+ // this should be placed after baseOtherStyles
1702
+ expValEquals('platform_editor_render_bodied_extension_as_inline', 'isEnabled', true) && extensionAsInlineStyle, allowNestedHeaderLinks && alignedHeadingAnchorStyle, mediaSingleSharedStyle,
1684
1703
  // merge firstWrappedMediaStyles with mediaSingleSharedStyle when clean up platform_editor_fix_media_in_renderer
1685
1704
  fg('platform_editor_fix_media_in_renderer') && firstWrappedMediaStyles, tableSharedStyle, tableRendererHeaderStylesForTableCellOnly, fg('platform_editor_bordered_panel_nested_in_table') && tableRendererNestedPanelStyles, isBackgroundClipBrowserFixNeeded() && tableStylesBackGroundClipForGeckoForTableCellOnly, fg('platform_editor_nested_dnd_styles_changes') ? firstNodeWithNotMarginTopWithNestedDnD : firstNodeWithNotMarginTop, rendererTableStyles, isStickyScrollbarEnabled(appearance) && stickyScrollbarStyles, rendererTableHeaderEqualHeightStylesForTableCellOnly, allowColumnSorting && rendererTableSortableColumnStyles, allowColumnSorting && allowNestedHeaderLinks && rendererTableHeaderEqualHeightStylesAllowNestedHeaderLinks, rendererTableColumnStyles, stickyHeaderStyles, codeBlockAndLayoutStyles, columnLayoutSharedStyle, isAdvancedLayoutsOn && columnLayoutResponsiveSharedStyle, isAdvancedLayoutsOn && columnLayoutResponsiveRendererStyles, isAdvancedLayoutsOn && layoutSectionForAdvancedLayoutsStyles, !useBlockRenderForCodeBlock && gridRenderForCodeBlockStyles, browser.safari && codeBlockInListSafariFixStyles, appearance === 'full-page' && !isPreviewPanelResponsivenessOn && responsiveBreakoutWidth, appearance === 'full-page' && isPreviewPanelResponsivenessOn && responsiveBreakoutWidthWithReducedPadding, (appearance === 'full-width' || appearance === 'max' && (expValEquals('editor_tinymce_full_width_mode', 'isEnabled', true) || expValEquals('confluence_max_width_content_appearance', 'isEnabled', true))) && responsiveBreakoutWidthFullWidth, expValEquals('platform_editor_lovability_emoji_scaling', 'isEnabled', true) ? isCompactModeEnabled ? scaledDenseEmojiStyles : scaledEmojiStyles : isCompactModeEnabled ? denseStyles : undefined, expValEquals('platform_synced_block', 'isEnabled', true) && syncBlockStyles],
1686
1705
  "data-testid": testId
@@ -61,7 +61,7 @@ export var DEGRADED_SEVERITY_THRESHOLD = 3000;
61
61
  var TABLE_INFO_TIMEOUT = 10000;
62
62
  var RENDER_EVENT_SAMPLE_RATE = 0.2;
63
63
  var packageName = "@atlaskit/renderer";
64
- var packageVersion = "125.4.1";
64
+ var packageVersion = "126.0.1";
65
65
  var setAsQueryContainerStyles = css({
66
66
  containerName: 'ak-renderer-wrapper',
67
67
  containerType: 'inline-size'
@@ -1,6 +1,7 @@
1
1
  export declare const RendererCssClassName: {
2
2
  DOCUMENT: string;
3
3
  EXTENSION: string;
4
+ EXTENSION_AS_INLINE: string;
4
5
  EXTENSION_CENTER_ALIGN: string;
5
6
  EXTENSION_OVERFLOW_CONTAINER: string;
6
7
  NUMBER_COLUMN: string;
@@ -3,7 +3,7 @@ import type { Mark as PMMark, Node as PMNode } from '@atlaskit/editor-prosemirro
3
3
  import type { RendererContext, ExtensionViewportSize } from '../types';
4
4
  import type { Serializer } from '../../serializer';
5
5
  import type { ExtensionLayout } from '@atlaskit/adf-schema';
6
- import type { ExtensionHandlers } from '@atlaskit/editor-common/extensions';
6
+ import type { ExtensionHandlers, ExtensionParams, Parameters } from '@atlaskit/editor-common/extensions';
7
7
  import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
8
8
  interface Props {
9
9
  content?: any;
@@ -20,6 +20,7 @@ interface Props {
20
20
  providers: ProviderFactory;
21
21
  rendererContext: RendererContext;
22
22
  serializer: Serializer<any>;
23
+ shouldDisplayExtensionAsInline?: (extensionParams?: ExtensionParams<Parameters>) => boolean;
23
24
  startPos: number;
24
25
  }
25
26
  declare const BodiedExtension: (props: React.PropsWithChildren<Props>) => React.JSX.Element;
@@ -6,7 +6,7 @@ import React from 'react';
6
6
  import { type Mark as PMMark, type Node as PMNode } from '@atlaskit/editor-prosemirror/model';
7
7
  import { type RendererContext, type ExtensionViewportSize } from '../types';
8
8
  import { type ExtensionLayout } from '@atlaskit/adf-schema';
9
- import type { ExtensionHandlers } from '@atlaskit/editor-common/extensions';
9
+ import type { ExtensionHandlers, ExtensionParams, Parameters } from '@atlaskit/editor-common/extensions';
10
10
  import { type ProviderFactory } from '@atlaskit/editor-common/provider-factory';
11
11
  import type { OverflowShadowProps } from '@atlaskit/editor-common/ui';
12
12
  interface Props {
@@ -22,6 +22,7 @@ interface Props {
22
22
  path?: PMNode[];
23
23
  providers: ProviderFactory;
24
24
  rendererContext: RendererContext;
25
+ shouldDisplayExtensionAsInline?: (extensionParams?: ExtensionParams<Parameters>) => boolean;
25
26
  text?: string;
26
27
  }
27
28
  type AllOrNone<T> = T | {
@@ -30,7 +31,7 @@ type AllOrNone<T> = T | {
30
31
  type RenderExtensionOptions = {
31
32
  isTopLevel?: boolean;
32
33
  } & AllOrNone<OverflowShadowProps>;
33
- export declare const renderExtension: (content: any, layout: string, options?: RenderExtensionOptions, removeOverflow?: boolean, extensionId?: string, extensionViewportSizes?: ExtensionViewportSize[], nodeHeight?: string, localId?: string) => React.JSX.Element;
34
+ export declare const renderExtension: (content: any, layout: string, options?: RenderExtensionOptions, removeOverflow?: boolean, extensionId?: string, extensionViewportSizes?: ExtensionViewportSize[], nodeHeight?: string, localId?: string, shouldDisplayExtensionAsInline?: (extensionParams?: ExtensionParams<Parameters>) => boolean, node?: ExtensionParams<Parameters>) => React.JSX.Element;
34
35
  declare const _default: {
35
36
  new (props: Props & OverflowShadowProps): {
36
37
  overflowContainer?: HTMLElement | null;
@@ -6,12 +6,13 @@ import { jsx } from '@emotion/react';
6
6
  import React from 'react';
7
7
  import type { RendererContext } from '../react/types';
8
8
  import type { ExtensionLayout } from '@atlaskit/adf-schema';
9
- import type { ExtensionHandlers, MultiBodiedExtensionActions } from '@atlaskit/editor-common/extensions';
9
+ import type { ExtensionHandlers, ExtensionParams, MultiBodiedExtensionActions, Parameters } from '@atlaskit/editor-common/extensions';
10
10
  import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
11
11
  import type { Mark as PMMark } from '@atlaskit/editor-prosemirror/model';
12
12
  interface Props {
13
13
  actions?: MultiBodiedExtensionActions;
14
- children: ({ result }: {
14
+ children: ({ node, result, }: {
15
+ node: ExtensionParams<Parameters>;
15
16
  result?: JSX.Element | null;
16
17
  }) => JSX.Element;
17
18
  content?: any;
@@ -1,6 +1,7 @@
1
1
  export declare const RendererCssClassName: {
2
2
  DOCUMENT: string;
3
3
  EXTENSION: string;
4
+ EXTENSION_AS_INLINE: string;
4
5
  EXTENSION_CENTER_ALIGN: string;
5
6
  EXTENSION_OVERFLOW_CONTAINER: string;
6
7
  NUMBER_COLUMN: string;
@@ -3,7 +3,7 @@ import type { Mark as PMMark, Node as PMNode } from '@atlaskit/editor-prosemirro
3
3
  import type { RendererContext, ExtensionViewportSize } from '../types';
4
4
  import type { Serializer } from '../../serializer';
5
5
  import type { ExtensionLayout } from '@atlaskit/adf-schema';
6
- import type { ExtensionHandlers } from '@atlaskit/editor-common/extensions';
6
+ import type { ExtensionHandlers, ExtensionParams, Parameters } from '@atlaskit/editor-common/extensions';
7
7
  import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
8
8
  interface Props {
9
9
  content?: any;
@@ -20,6 +20,7 @@ interface Props {
20
20
  providers: ProviderFactory;
21
21
  rendererContext: RendererContext;
22
22
  serializer: Serializer<any>;
23
+ shouldDisplayExtensionAsInline?: (extensionParams?: ExtensionParams<Parameters>) => boolean;
23
24
  startPos: number;
24
25
  }
25
26
  declare const BodiedExtension: (props: React.PropsWithChildren<Props>) => React.JSX.Element;
@@ -6,7 +6,7 @@ import React from 'react';
6
6
  import { type Mark as PMMark, type Node as PMNode } from '@atlaskit/editor-prosemirror/model';
7
7
  import { type RendererContext, type ExtensionViewportSize } from '../types';
8
8
  import { type ExtensionLayout } from '@atlaskit/adf-schema';
9
- import type { ExtensionHandlers } from '@atlaskit/editor-common/extensions';
9
+ import type { ExtensionHandlers, ExtensionParams, Parameters } from '@atlaskit/editor-common/extensions';
10
10
  import { type ProviderFactory } from '@atlaskit/editor-common/provider-factory';
11
11
  import type { OverflowShadowProps } from '@atlaskit/editor-common/ui';
12
12
  interface Props {
@@ -22,6 +22,7 @@ interface Props {
22
22
  path?: PMNode[];
23
23
  providers: ProviderFactory;
24
24
  rendererContext: RendererContext;
25
+ shouldDisplayExtensionAsInline?: (extensionParams?: ExtensionParams<Parameters>) => boolean;
25
26
  text?: string;
26
27
  }
27
28
  type AllOrNone<T> = T | {
@@ -30,7 +31,7 @@ type AllOrNone<T> = T | {
30
31
  type RenderExtensionOptions = {
31
32
  isTopLevel?: boolean;
32
33
  } & AllOrNone<OverflowShadowProps>;
33
- export declare const renderExtension: (content: any, layout: string, options?: RenderExtensionOptions, removeOverflow?: boolean, extensionId?: string, extensionViewportSizes?: ExtensionViewportSize[], nodeHeight?: string, localId?: string) => React.JSX.Element;
34
+ export declare const renderExtension: (content: any, layout: string, options?: RenderExtensionOptions, removeOverflow?: boolean, extensionId?: string, extensionViewportSizes?: ExtensionViewportSize[], nodeHeight?: string, localId?: string, shouldDisplayExtensionAsInline?: (extensionParams?: ExtensionParams<Parameters>) => boolean, node?: ExtensionParams<Parameters>) => React.JSX.Element;
34
35
  declare const _default: {
35
36
  new (props: Props & OverflowShadowProps): {
36
37
  overflowContainer?: HTMLElement | null;
@@ -6,12 +6,13 @@ import { jsx } from '@emotion/react';
6
6
  import React from 'react';
7
7
  import type { RendererContext } from '../react/types';
8
8
  import type { ExtensionLayout } from '@atlaskit/adf-schema';
9
- import type { ExtensionHandlers, MultiBodiedExtensionActions } from '@atlaskit/editor-common/extensions';
9
+ import type { ExtensionHandlers, ExtensionParams, MultiBodiedExtensionActions, Parameters } from '@atlaskit/editor-common/extensions';
10
10
  import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
11
11
  import type { Mark as PMMark } from '@atlaskit/editor-prosemirror/model';
12
12
  interface Props {
13
13
  actions?: MultiBodiedExtensionActions;
14
- children: ({ result }: {
14
+ children: ({ node, result, }: {
15
+ node: ExtensionParams<Parameters>;
15
16
  result?: JSX.Element | null;
16
17
  }) => JSX.Element;
17
18
  content?: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/renderer",
3
- "version": "126.0.0",
3
+ "version": "126.1.0",
4
4
  "description": "Renderer component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -24,9 +24,9 @@
24
24
  },
25
25
  "dependencies": {
26
26
  "@atlaskit/adf-schema": "^51.5.0",
27
- "@atlaskit/adf-utils": "^19.26.0",
27
+ "@atlaskit/adf-utils": "^19.27.0",
28
28
  "@atlaskit/afm-i18n-platform-editor-renderer": "2.10.0",
29
- "@atlaskit/analytics-listeners": "^9.2.0",
29
+ "@atlaskit/analytics-listeners": "^9.3.0",
30
30
  "@atlaskit/analytics-namespaced-context": "^7.2.0",
31
31
  "@atlaskit/analytics-next": "^11.1.0",
32
32
  "@atlaskit/browser-apis": "^0.0.1",
@@ -43,7 +43,7 @@
43
43
  "@atlaskit/link-datasource": "^4.32.0",
44
44
  "@atlaskit/link-extractors": "^2.4.0",
45
45
  "@atlaskit/linking-common": "^9.9.0",
46
- "@atlaskit/media-card": "^79.13.0",
46
+ "@atlaskit/media-card": "^79.14.0",
47
47
  "@atlaskit/media-client": "^35.7.0",
48
48
  "@atlaskit/media-client-react": "^4.1.0",
49
49
  "@atlaskit/media-common": "^12.3.0",
@@ -52,13 +52,13 @@
52
52
  "@atlaskit/media-viewer": "^52.6.0",
53
53
  "@atlaskit/platform-feature-flags": "^1.1.0",
54
54
  "@atlaskit/platform-feature-flags-react": "^0.4.0",
55
- "@atlaskit/react-ufo": "^4.17.0",
55
+ "@atlaskit/react-ufo": "^5.0.0",
56
56
  "@atlaskit/smart-card": "^43.20.0",
57
57
  "@atlaskit/status": "^3.1.0",
58
58
  "@atlaskit/task-decision": "^19.2.0",
59
59
  "@atlaskit/theme": "^21.0.0",
60
- "@atlaskit/tmp-editor-statsig": "^16.23.0",
61
- "@atlaskit/tokens": "^10.0.0",
60
+ "@atlaskit/tmp-editor-statsig": "^16.27.0",
61
+ "@atlaskit/tokens": "^10.1.0",
62
62
  "@atlaskit/tooltip": "^20.14.0",
63
63
  "@atlaskit/visually-hidden": "^3.0.0",
64
64
  "@babel/runtime": "^7.0.0",