@atlaskit/renderer 126.0.1 → 126.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/afm-jira/tsconfig.json +1 -1
  3. package/dist/cjs/consts.js +1 -0
  4. package/dist/cjs/react/nodes/bodiedExtension.js +7 -5
  5. package/dist/cjs/react/nodes/extension.js +16 -10
  6. package/dist/cjs/react/nodes/inlineCard.js +2 -1
  7. package/dist/cjs/react/nodes/table.js +12 -4
  8. package/dist/cjs/ui/ExtensionRenderer.js +2 -1
  9. package/dist/cjs/ui/Renderer/RendererStyleContainer.js +20 -1
  10. package/dist/cjs/ui/Renderer/index.js +1 -1
  11. package/dist/es2019/consts.js +1 -0
  12. package/dist/es2019/react/nodes/bodiedExtension.js +6 -4
  13. package/dist/es2019/react/nodes/extension.js +15 -11
  14. package/dist/es2019/react/nodes/inlineCard.js +2 -1
  15. package/dist/es2019/react/nodes/table.js +12 -4
  16. package/dist/es2019/ui/ExtensionRenderer.js +2 -1
  17. package/dist/es2019/ui/Renderer/RendererStyleContainer.js +20 -1
  18. package/dist/es2019/ui/Renderer/index.js +1 -1
  19. package/dist/esm/consts.js +1 -0
  20. package/dist/esm/react/nodes/bodiedExtension.js +7 -5
  21. package/dist/esm/react/nodes/extension.js +16 -10
  22. package/dist/esm/react/nodes/inlineCard.js +2 -1
  23. package/dist/esm/react/nodes/table.js +12 -4
  24. package/dist/esm/ui/ExtensionRenderer.js +2 -1
  25. package/dist/esm/ui/Renderer/RendererStyleContainer.js +20 -1
  26. package/dist/esm/ui/Renderer/index.js +1 -1
  27. package/dist/types/analytics/events.d.ts +9 -1
  28. package/dist/types/consts.d.ts +1 -0
  29. package/dist/types/react/nodes/bodiedExtension.d.ts +2 -1
  30. package/dist/types/react/nodes/extension.d.ts +61 -60
  31. package/dist/types/react/nodes/inlineCard.d.ts +47 -41
  32. package/dist/types/react/nodes/table.d.ts +39 -38
  33. package/dist/types/ui/ExtensionRenderer.d.ts +3 -2
  34. package/dist/types-ts4.5/analytics/events.d.ts +9 -1
  35. package/dist/types-ts4.5/consts.d.ts +1 -0
  36. package/dist/types-ts4.5/react/nodes/bodiedExtension.d.ts +2 -1
  37. package/dist/types-ts4.5/react/nodes/extension.d.ts +61 -60
  38. package/dist/types-ts4.5/react/nodes/inlineCard.d.ts +47 -41
  39. package/dist/types-ts4.5/react/nodes/table.d.ts +39 -38
  40. package/dist/types-ts4.5/ui/ExtensionRenderer.d.ts +3 -2
  41. package/package.json +7 -7
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @atlaskit/renderer
2
2
 
3
+ ## 126.1.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`7f41011a1b0ff`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/7f41011a1b0ff) -
8
+ EDITOR-1665 update sync block experience events to use general experience ids, keep existing error
9
+ events and add success events
10
+ - Updated dependencies
11
+
12
+ ## 126.1.0
13
+
14
+ ### Minor Changes
15
+
16
+ - [`7386aea2dbc51`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/7386aea2dbc51) -
17
+ [ux] EDITOR-4611 - Inline Bodied Extension: Implement inlined bodied extension style
18
+
3
19
  ## 126.0.1
4
20
 
5
21
  ### Patch Changes
@@ -1,5 +1,5 @@
1
1
  {
2
- "extends": "../../../../tsconfig.entry-points.jira.json",
2
+ "extends": "../../../../tsconfig.local-consumption.json",
3
3
  "compilerOptions": {
4
4
  "declaration": true,
5
5
  "target": "es5",
@@ -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,9 +161,10 @@ 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
- var _default = exports.default = (0, _ui.overflowShadow)(Extension, {
167
+ var _default_1 = (0, _ui.overflowShadow)(Extension, {
163
168
  overflowSelector: ".".concat(_consts.RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER)
164
- });
169
+ });
170
+ var _default = exports.default = _default_1;
@@ -323,4 +323,5 @@ var InlineCard = function InlineCard(props) {
323
323
  })
324
324
  }))), CompetitorPromptComponent)));
325
325
  };
326
- var _default = exports.default = (0, _SmartCardStorage.withSmartCardStorage)(InlineCard);
326
+ var _default_1 = (0, _SmartCardStorage.withSmartCardStorage)(InlineCard);
327
+ var _default = exports.default = _default_1;
@@ -98,7 +98,10 @@ var shouldHeaderStick = exports.shouldHeaderStick = function shouldHeaderStick(s
98
98
  var shouldHeaderPinBottom = exports.shouldHeaderPinBottom = function shouldHeaderPinBottom(scrollTop, tableBottom, rowHeight) {
99
99
  return tableBottom - rowHeight <= scrollTop && !(tableBottom < scrollTop);
100
100
  };
101
- var addSortableColumn = exports.addSortableColumn = function addSortableColumn(rows, tableOrderStatus, onSorting) {
101
+ var addSortableColumn = exports.addSortableColumn = function addSortableColumn(rows, tableOrderStatus, onSorting
102
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
103
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
104
+ ) {
102
105
  return _react.default.Children.map(rows, function (row, index) {
103
106
  if (index === 0) {
104
107
  return /*#__PURE__*/_react.default.cloneElement(_react.default.Children.only(row), {
@@ -109,7 +112,9 @@ var addSortableColumn = exports.addSortableColumn = function addSortableColumn(r
109
112
  return row;
110
113
  });
111
114
  };
112
- var isHeaderRowEnabled = exports.isHeaderRowEnabled = function isHeaderRowEnabled(rows) {
115
+ var isHeaderRowEnabled = exports.isHeaderRowEnabled = function isHeaderRowEnabled(rows
116
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
117
+ ) {
113
118
  if (!rows.length) {
114
119
  return false;
115
120
  }
@@ -155,7 +160,9 @@ var TableWrapper = function TableWrapper(_ref2) {
155
160
  "aria-label": formatMessage(_messages.tableMessages.tableScrollRegion)
156
161
  }, children);
157
162
  };
158
- var tableCanBeSticky = exports.tableCanBeSticky = function tableCanBeSticky(node, children) {
163
+ var tableCanBeSticky = exports.tableCanBeSticky = function tableCanBeSticky(node, children
164
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
165
+ ) {
159
166
  return isHeaderRowEnabled(children) && node && node.firstChild && !hasRowspan(node.firstChild);
160
167
  };
161
168
  /**
@@ -752,4 +759,5 @@ var TableWithWidth = function TableWithWidth(props) {
752
759
  });
753
760
  }
754
761
  };
755
- var _default = exports.default = (0, _SmartCardStorage.withSmartCardStorage)(TableWithWidth);
762
+ var _default_1 = (0, _SmartCardStorage.withSmartCardStorage)(TableWithWidth);
763
+ var _default = exports.default = _default_1;
@@ -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 = "0.0.0-development";
73
+ var packageVersion = "126.1.0";
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,9 +143,10 @@ 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
- export default overflowShadow(Extension, {
149
+ const _default_1 = overflowShadow(Extension, {
147
150
  overflowSelector: `.${RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER}`
148
- });
151
+ });
152
+ export default _default_1;
@@ -307,4 +307,5 @@ const InlineCard = props => {
307
307
  })
308
308
  }))), CompetitorPromptComponent)));
309
309
  };
310
- export default withSmartCardStorage(InlineCard);
310
+ const _default_1 = withSmartCardStorage(InlineCard);
311
+ export default _default_1;
@@ -67,7 +67,10 @@ export const getRefTop = refElement => {
67
67
  };
68
68
  export const shouldHeaderStick = (scrollTop, tableTop, tableBottom, rowHeight) => tableTop <= scrollTop && !(tableBottom - rowHeight <= scrollTop);
69
69
  export const shouldHeaderPinBottom = (scrollTop, tableBottom, rowHeight) => tableBottom - rowHeight <= scrollTop && !(tableBottom < scrollTop);
70
- export const addSortableColumn = (rows, tableOrderStatus, onSorting) => {
70
+ export const addSortableColumn = (rows, tableOrderStatus, onSorting
71
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
72
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
+ ) => {
71
74
  return React.Children.map(rows, (row, index) => {
72
75
  if (index === 0) {
73
76
  return /*#__PURE__*/React.cloneElement(React.Children.only(row), {
@@ -78,7 +81,9 @@ export const addSortableColumn = (rows, tableOrderStatus, onSorting) => {
78
81
  return row;
79
82
  });
80
83
  };
81
- export const isHeaderRowEnabled = rows => {
84
+ export const isHeaderRowEnabled = (rows
85
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
86
+ ) => {
82
87
  if (!rows.length) {
83
88
  return false;
84
89
  }
@@ -126,7 +131,9 @@ const TableWrapper = ({
126
131
  "aria-label": formatMessage(tableMessages.tableScrollRegion)
127
132
  }, children);
128
133
  };
129
- export const tableCanBeSticky = (node, children) => {
134
+ export const tableCanBeSticky = (node, children
135
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
136
+ ) => {
130
137
  return isHeaderRowEnabled(children) && node && node.firstChild && !hasRowspan(node.firstChild);
131
138
  };
132
139
  /**
@@ -689,4 +696,5 @@ const TableWithWidth = props => {
689
696
  });
690
697
  }
691
698
  };
692
- export default withSmartCardStorage(TableWithWidth);
699
+ const _default_1 = withSmartCardStorage(TableWithWidth);
700
+ export default _default_1;
@@ -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 = "0.0.0-development";
59
+ const packageVersion = "126.1.0";
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,9 +153,10 @@ 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
- export default overflowShadow(Extension, {
159
+ var _default_1 = overflowShadow(Extension, {
155
160
  overflowSelector: ".".concat(RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER)
156
- });
161
+ });
162
+ export default _default_1;
@@ -314,4 +314,5 @@ var InlineCard = function InlineCard(props) {
314
314
  })
315
315
  }))), CompetitorPromptComponent)));
316
316
  };
317
- export default withSmartCardStorage(InlineCard);
317
+ var _default_1 = withSmartCardStorage(InlineCard);
318
+ export default _default_1;