@atlaskit/renderer 111.1.6 → 111.1.7

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,13 @@
1
1
  # @atlaskit/renderer
2
2
 
3
+ ## 111.1.7
4
+
5
+ ### Patch Changes
6
+
7
+ - [#150087](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/150087)
8
+ [`1ef4ceed97d4d`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/1ef4ceed97d4d) -
9
+ Fix CSS based renderer width fix not working in nested renderer
10
+
3
11
  ## 111.1.6
4
12
 
5
13
  ### Patch Changes
@@ -65,7 +65,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
65
65
  var NORMAL_SEVERITY_THRESHOLD = exports.NORMAL_SEVERITY_THRESHOLD = 2000;
66
66
  var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
67
67
  var packageName = "@atlaskit/renderer";
68
- var packageVersion = "111.1.6";
68
+ var packageVersion = "111.1.7";
69
69
  var setAsQueryContainerStyles = (0, _react2.css)({
70
70
  containerName: 'ak-renderer-wrapper',
71
71
  containerType: 'inline-size',
@@ -88,10 +88,12 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
88
88
  * deleted once that measurement occurs.
89
89
  */
90
90
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "renderedMeasurementDistortedDurationMonitor", (0, _measureRender.getDistortedDurationMonitor)());
91
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "featureFlags", (0, _memoizeOne.default)(function (featureFlags) {
91
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "createRendererContext", (0, _memoizeOne.default)(function (featureFlags, isTopLevelRenderer) {
92
92
  var normalizedFeatureFlags = (0, _normalizeFeatureFlags.normalizeFeatureFlags)(featureFlags);
93
93
  return {
94
- featureFlags: normalizedFeatureFlags
94
+ featureFlags: normalizedFeatureFlags,
95
+ // The context is uninitialized at the top level. In nested levels it's all false
96
+ isTopLevelRenderer: isTopLevelRenderer === undefined
95
97
  };
96
98
  }));
97
99
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fireAnalyticsEvent", function (event) {
@@ -250,8 +252,8 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
250
252
  var stickyHeaders = props.stickyHeaders ? props.stickyHeaders === true ? {} : props.stickyHeaders : undefined;
251
253
  var annotationProvider = props.annotationProvider;
252
254
  var allowAnnotationsDraftMode = Boolean(annotationProvider && annotationProvider.inlineComment && annotationProvider.inlineComment.allowDraftMode);
253
- var _this$featureFlags = this.featureFlags(props.featureFlags),
254
- featureFlags = _this$featureFlags.featureFlags;
255
+ var _this$createRendererC = this.createRendererContext(props.featureFlags, props.isTopLevelRenderer),
256
+ featureFlags = _this$createRendererC.featureFlags;
255
257
  return {
256
258
  startPos: props.startPos,
257
259
  providers: this.providerFactory,
@@ -313,7 +315,7 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
313
315
  allowWrapCodeBlock = _this$props.allowWrapCodeBlock,
314
316
  allowCustomPanels = _this$props.allowCustomPanels,
315
317
  media = _this$props.media;
316
- var featureFlags = this.featureFlags(this.props.featureFlags);
318
+ var rendererContext = this.createRendererContext(this.props.featureFlags, this.props.isTopLevelRenderer);
317
319
  var allowNestedHeaderLinks = (0, _links.isNestedHeaderLinksEnabled)(allowHeadingAnchorLinks);
318
320
  /**
319
321
  * Handle clicks inside renderer. If the click isn't on media, in the media picker, or on a
@@ -361,7 +363,7 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
361
363
  }
362
364
  };
363
365
  try {
364
- var _featureFlags$feature;
366
+ var _rendererContext$feat;
365
367
  var schema = this.getSchema(this.props.schema, this.props.adfStage);
366
368
  var _renderDocument = (0, _.renderDocument)(adfDocument, this.serializer, schema, adfStage, this.props.useSpecBasedValidator, this.id, this.fireAnalyticsEvent, this.props.unsupportedContentLevelsTracking, this.props.appearance),
367
369
  result = _renderDocument.result,
@@ -371,7 +373,7 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
371
373
  onComplete(stat);
372
374
  }
373
375
  var rendererOutput = (0, _react2.jsx)(_rendererContext.RendererContextProvider, {
374
- value: featureFlags
376
+ value: rendererContext
375
377
  }, (0, _react2.jsx)(_activeHeaderIdProvider.ActiveHeaderIdProvider, {
376
378
  value: (0, _links.getActiveHeadingId)(allowHeadingAnchorLinks)
377
379
  }, (0, _react2.jsx)(_analyticsContext.default.Provider, {
@@ -391,13 +393,14 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
391
393
  allowWrapCodeBlock: allowWrapCodeBlock,
392
394
  allowCustomPanels: allowCustomPanels,
393
395
  allowPlaceholderText: allowPlaceholderText,
394
- useBlockRenderForCodeBlock: (_featureFlags$feature = featureFlags.featureFlags.useBlockRenderForCodeBlock) !== null && _featureFlags$feature !== void 0 ? _featureFlags$feature : true,
396
+ useBlockRenderForCodeBlock: (_rendererContext$feat = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat !== void 0 ? _rendererContext$feat : true,
395
397
  addTelepointer: this.props.addTelepointer,
396
398
  innerRef: this.editorRef,
397
399
  onClick: handleWrapperOnClick,
398
400
  onMouseDown: this.onMouseDownEditView,
399
401
  ssr: media === null || media === void 0 ? void 0 : media.ssr,
400
- isInsideOfInlineExtension: this.props.isInsideOfInlineExtension
402
+ isInsideOfInlineExtension: this.props.isInsideOfInlineExtension,
403
+ isTopLevelRenderer: rendererContext.isTopLevelRenderer
401
404
  }, enableSsrInlineScripts ? (0, _react2.jsx)(_breakoutSsr.BreakoutSSRInlineScript, null) : null, (0, _react2.jsx)(RendererActionsInternalUpdater, {
402
405
  doc: pmDoc,
403
406
  schema: schema,
@@ -409,7 +412,7 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
409
412
  }, rendererOutput) : rendererOutput;
410
413
  return (0, _react2.jsx)(_react.Fragment, null, rendererResult);
411
414
  } catch (e) {
412
- var _featureFlags$feature2;
415
+ var _rendererContext$feat2;
413
416
  if (onError) {
414
417
  onError(e);
415
418
  }
@@ -421,9 +424,10 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
421
424
  allowPlaceholderText: allowPlaceholderText,
422
425
  allowColumnSorting: allowColumnSorting,
423
426
  allowNestedHeaderLinks: allowNestedHeaderLinks,
424
- useBlockRenderForCodeBlock: (_featureFlags$feature2 = featureFlags.featureFlags.useBlockRenderForCodeBlock) !== null && _featureFlags$feature2 !== void 0 ? _featureFlags$feature2 : true,
427
+ useBlockRenderForCodeBlock: (_rendererContext$feat2 = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat2 !== void 0 ? _rendererContext$feat2 : true,
425
428
  addTelepointer: this.props.addTelepointer,
426
- onClick: handleWrapperOnClick
429
+ onClick: handleWrapperOnClick,
430
+ isTopLevelRenderer: rendererContext.isTopLevelRenderer
427
431
  }, (0, _react2.jsx)(_ui.UnsupportedBlock, null));
428
432
  }
429
433
  }
@@ -447,11 +451,15 @@ var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/f
447
451
  function Renderer(props) {
448
452
  var _React$useContext = _react.default.useContext(_annotations.AnnotationsPositionContext),
449
453
  startPos = _React$useContext.startPos;
450
-
451
- // eslint-disable-next-line react/jsx-pascal-case
452
- return (0, _react2.jsx)(__RendererClassComponent, (0, _extends2.default)({}, props, {
453
- startPos: startPos
454
- }));
454
+ var _useRendererContext = (0, _rendererContext.useRendererContext)(),
455
+ isTopLevelRenderer = _useRendererContext.isTopLevelRenderer;
456
+ return (
457
+ // eslint-disable-next-line react/jsx-pascal-case
458
+ (0, _react2.jsx)(__RendererClassComponent, (0, _extends2.default)({}, props, {
459
+ startPos: startPos,
460
+ isTopLevelRenderer: isTopLevelRenderer
461
+ }))
462
+ );
455
463
  }
456
464
 
457
465
  // Usage notes:
@@ -492,7 +500,8 @@ var RendererWrapper = /*#__PURE__*/_react.default.memo(function (props) {
492
500
  addTelepointer = props.addTelepointer,
493
501
  ssr = props.ssr,
494
502
  isInsideOfInlineExtension = props.isInsideOfInlineExtension,
495
- allowTableResizing = props.allowTableResizing;
503
+ allowTableResizing = props.allowTableResizing,
504
+ isTopLevelRenderer = props.isTopLevelRenderer;
496
505
  var createTelepointer = function createTelepointer() {
497
506
  var telepointer = document.createElement('span');
498
507
  telepointer.textContent = "\u200B";
@@ -577,7 +586,10 @@ var RendererWrapper = /*#__PURE__*/_react.default.memo(function (props) {
577
586
  // Only apply container-type = inline-size when having a known width in full-page/full-width/comment mode.
578
587
  // Otherwise when appearance is unspecified the renderer size is decided by the content.
579
588
  // In this case we can't set the container-type = inline-size as it will collapse width to 0.
580
- return (appearance === 'full-page' || appearance === 'full-width' || appearance === 'comment') && (0, _platformFeatureFlags.fg)('platform-fix-table-ssr-resizing') ? (0, _react2.jsx)("div", {
589
+ return (appearance === 'full-page' || appearance === 'full-width' || appearance === 'comment') &&
590
+ // In case of having excerpt-include on page there are multiple renderers nested.
591
+ // Make sure only the root renderer is set to be query container.
592
+ isTopLevelRenderer && (0, _platformFeatureFlags.fg)('platform-fix-table-ssr-resizing') ? (0, _react2.jsx)("div", {
581
593
  css: setAsQueryContainerStyles
582
594
  }, renderer) : renderer;
583
595
  });
@@ -37,7 +37,7 @@ import { AnnotationsPositionContext, AnnotationsWrapper } from '../annotations';
37
37
  import { getActiveHeadingId, isNestedHeaderLinksEnabled } from '../../react/utils/links';
38
38
  import { findInTree } from '../../utils';
39
39
  import { isInteractiveElement } from './click-to-edit';
40
- import { RendererContextProvider } from '../../renderer-context';
40
+ import { useRendererContext, RendererContextProvider } from '../../renderer-context';
41
41
  import memoizeOne from 'memoize-one';
42
42
  import { ErrorBoundary } from './ErrorBoundary';
43
43
  import { EditorMediaClientProvider } from '../../react/utils/EditorMediaClientProvider';
@@ -45,7 +45,7 @@ import { nodeToReact } from '../../react/nodes';
45
45
  export const NORMAL_SEVERITY_THRESHOLD = 2000;
46
46
  export const DEGRADED_SEVERITY_THRESHOLD = 3000;
47
47
  const packageName = "@atlaskit/renderer";
48
- const packageVersion = "111.1.6";
48
+ const packageVersion = "111.1.7";
49
49
  const setAsQueryContainerStyles = css({
50
50
  containerName: 'ak-renderer-wrapper',
51
51
  containerType: 'inline-size',
@@ -64,10 +64,12 @@ export class __RendererClassComponent extends PureComponent {
64
64
  * deleted once that measurement occurs.
65
65
  */
66
66
  _defineProperty(this, "renderedMeasurementDistortedDurationMonitor", getDistortedDurationMonitor());
67
- _defineProperty(this, "featureFlags", memoizeOne(featureFlags => {
67
+ _defineProperty(this, "createRendererContext", memoizeOne((featureFlags, isTopLevelRenderer) => {
68
68
  const normalizedFeatureFlags = normalizeFeatureFlags(featureFlags);
69
69
  return {
70
- featureFlags: normalizedFeatureFlags
70
+ featureFlags: normalizedFeatureFlags,
71
+ // The context is uninitialized at the top level. In nested levels it's all false
72
+ isTopLevelRenderer: isTopLevelRenderer === undefined
71
73
  };
72
74
  }));
73
75
  _defineProperty(this, "fireAnalyticsEvent", event => {
@@ -228,7 +230,7 @@ export class __RendererClassComponent extends PureComponent {
228
230
  const allowAnnotationsDraftMode = Boolean(annotationProvider && annotationProvider.inlineComment && annotationProvider.inlineComment.allowDraftMode);
229
231
  const {
230
232
  featureFlags
231
- } = this.featureFlags(props.featureFlags);
233
+ } = this.createRendererContext(props.featureFlags, props.isTopLevelRenderer);
232
234
  return {
233
235
  startPos: props.startPos,
234
236
  providers: this.providerFactory,
@@ -289,7 +291,7 @@ export class __RendererClassComponent extends PureComponent {
289
291
  allowCustomPanels,
290
292
  media
291
293
  } = this.props;
292
- const featureFlags = this.featureFlags(this.props.featureFlags);
294
+ const rendererContext = this.createRendererContext(this.props.featureFlags, this.props.isTopLevelRenderer);
293
295
  const allowNestedHeaderLinks = isNestedHeaderLinksEnabled(allowHeadingAnchorLinks);
294
296
  /**
295
297
  * Handle clicks inside renderer. If the click isn't on media, in the media picker, or on a
@@ -337,7 +339,7 @@ export class __RendererClassComponent extends PureComponent {
337
339
  }
338
340
  };
339
341
  try {
340
- var _featureFlags$feature;
342
+ var _rendererContext$feat;
341
343
  const schema = this.getSchema(this.props.schema, this.props.adfStage);
342
344
  const {
343
345
  result,
@@ -348,7 +350,7 @@ export class __RendererClassComponent extends PureComponent {
348
350
  onComplete(stat);
349
351
  }
350
352
  const rendererOutput = jsx(RendererContextProvider, {
351
- value: featureFlags
353
+ value: rendererContext
352
354
  }, jsx(ActiveHeaderIdProvider, {
353
355
  value: getActiveHeadingId(allowHeadingAnchorLinks)
354
356
  }, jsx(AnalyticsContext.Provider, {
@@ -366,13 +368,14 @@ export class __RendererClassComponent extends PureComponent {
366
368
  allowWrapCodeBlock: allowWrapCodeBlock,
367
369
  allowCustomPanels: allowCustomPanels,
368
370
  allowPlaceholderText: allowPlaceholderText,
369
- useBlockRenderForCodeBlock: (_featureFlags$feature = featureFlags.featureFlags.useBlockRenderForCodeBlock) !== null && _featureFlags$feature !== void 0 ? _featureFlags$feature : true,
371
+ useBlockRenderForCodeBlock: (_rendererContext$feat = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat !== void 0 ? _rendererContext$feat : true,
370
372
  addTelepointer: this.props.addTelepointer,
371
373
  innerRef: this.editorRef,
372
374
  onClick: handleWrapperOnClick,
373
375
  onMouseDown: this.onMouseDownEditView,
374
376
  ssr: media === null || media === void 0 ? void 0 : media.ssr,
375
- isInsideOfInlineExtension: this.props.isInsideOfInlineExtension
377
+ isInsideOfInlineExtension: this.props.isInsideOfInlineExtension,
378
+ isTopLevelRenderer: rendererContext.isTopLevelRenderer
376
379
  }, enableSsrInlineScripts ? jsx(BreakoutSSRInlineScript, null) : null, jsx(RendererActionsInternalUpdater, {
377
380
  doc: pmDoc,
378
381
  schema: schema,
@@ -384,7 +387,7 @@ export class __RendererClassComponent extends PureComponent {
384
387
  }, rendererOutput) : rendererOutput;
385
388
  return jsx(Fragment, null, rendererResult);
386
389
  } catch (e) {
387
- var _featureFlags$feature2;
390
+ var _rendererContext$feat2;
388
391
  if (onError) {
389
392
  onError(e);
390
393
  }
@@ -396,9 +399,10 @@ export class __RendererClassComponent extends PureComponent {
396
399
  allowPlaceholderText: allowPlaceholderText,
397
400
  allowColumnSorting: allowColumnSorting,
398
401
  allowNestedHeaderLinks: allowNestedHeaderLinks,
399
- useBlockRenderForCodeBlock: (_featureFlags$feature2 = featureFlags.featureFlags.useBlockRenderForCodeBlock) !== null && _featureFlags$feature2 !== void 0 ? _featureFlags$feature2 : true,
402
+ useBlockRenderForCodeBlock: (_rendererContext$feat2 = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat2 !== void 0 ? _rendererContext$feat2 : true,
400
403
  addTelepointer: this.props.addTelepointer,
401
- onClick: handleWrapperOnClick
404
+ onClick: handleWrapperOnClick,
405
+ isTopLevelRenderer: rendererContext.isTopLevelRenderer
402
406
  }, jsx(UnsupportedBlock, null));
403
407
  }
404
408
  }
@@ -421,11 +425,16 @@ export function Renderer(props) {
421
425
  const {
422
426
  startPos
423
427
  } = React.useContext(AnnotationsPositionContext);
424
-
425
- // eslint-disable-next-line react/jsx-pascal-case
426
- return jsx(__RendererClassComponent, _extends({}, props, {
427
- startPos: startPos
428
- }));
428
+ const {
429
+ isTopLevelRenderer
430
+ } = useRendererContext();
431
+ return (
432
+ // eslint-disable-next-line react/jsx-pascal-case
433
+ jsx(__RendererClassComponent, _extends({}, props, {
434
+ startPos: startPos,
435
+ isTopLevelRenderer: isTopLevelRenderer
436
+ }))
437
+ );
429
438
  }
430
439
 
431
440
  // Usage notes:
@@ -465,7 +474,8 @@ const RendererWrapper = /*#__PURE__*/React.memo(props => {
465
474
  addTelepointer,
466
475
  ssr,
467
476
  isInsideOfInlineExtension,
468
- allowTableResizing
477
+ allowTableResizing,
478
+ isTopLevelRenderer
469
479
  } = props;
470
480
  const createTelepointer = () => {
471
481
  const telepointer = document.createElement('span');
@@ -549,7 +559,10 @@ const RendererWrapper = /*#__PURE__*/React.memo(props => {
549
559
  // Only apply container-type = inline-size when having a known width in full-page/full-width/comment mode.
550
560
  // Otherwise when appearance is unspecified the renderer size is decided by the content.
551
561
  // In this case we can't set the container-type = inline-size as it will collapse width to 0.
552
- return (appearance === 'full-page' || appearance === 'full-width' || appearance === 'comment') && fg('platform-fix-table-ssr-resizing') ? jsx("div", {
562
+ return (appearance === 'full-page' || appearance === 'full-width' || appearance === 'comment') &&
563
+ // In case of having excerpt-include on page there are multiple renderers nested.
564
+ // Make sure only the root renderer is set to be query container.
565
+ isTopLevelRenderer && fg('platform-fix-table-ssr-resizing') ? jsx("div", {
553
566
  css: setAsQueryContainerStyles
554
567
  }, renderer) : renderer;
555
568
  });
@@ -47,7 +47,7 @@ import { AnnotationsPositionContext, AnnotationsWrapper } from '../annotations';
47
47
  import { getActiveHeadingId, isNestedHeaderLinksEnabled } from '../../react/utils/links';
48
48
  import { findInTree } from '../../utils';
49
49
  import { isInteractiveElement } from './click-to-edit';
50
- import { RendererContextProvider } from '../../renderer-context';
50
+ import { useRendererContext, RendererContextProvider } from '../../renderer-context';
51
51
  import memoizeOne from 'memoize-one';
52
52
  import { ErrorBoundary } from './ErrorBoundary';
53
53
  import { EditorMediaClientProvider } from '../../react/utils/EditorMediaClientProvider';
@@ -55,7 +55,7 @@ import { nodeToReact } from '../../react/nodes';
55
55
  export var NORMAL_SEVERITY_THRESHOLD = 2000;
56
56
  export var DEGRADED_SEVERITY_THRESHOLD = 3000;
57
57
  var packageName = "@atlaskit/renderer";
58
- var packageVersion = "111.1.6";
58
+ var packageVersion = "111.1.7";
59
59
  var setAsQueryContainerStyles = css({
60
60
  containerName: 'ak-renderer-wrapper',
61
61
  containerType: 'inline-size',
@@ -78,10 +78,12 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
78
78
  * deleted once that measurement occurs.
79
79
  */
80
80
  _defineProperty(_assertThisInitialized(_this), "renderedMeasurementDistortedDurationMonitor", getDistortedDurationMonitor());
81
- _defineProperty(_assertThisInitialized(_this), "featureFlags", memoizeOne(function (featureFlags) {
81
+ _defineProperty(_assertThisInitialized(_this), "createRendererContext", memoizeOne(function (featureFlags, isTopLevelRenderer) {
82
82
  var normalizedFeatureFlags = normalizeFeatureFlags(featureFlags);
83
83
  return {
84
- featureFlags: normalizedFeatureFlags
84
+ featureFlags: normalizedFeatureFlags,
85
+ // The context is uninitialized at the top level. In nested levels it's all false
86
+ isTopLevelRenderer: isTopLevelRenderer === undefined
85
87
  };
86
88
  }));
87
89
  _defineProperty(_assertThisInitialized(_this), "fireAnalyticsEvent", function (event) {
@@ -240,8 +242,8 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
240
242
  var stickyHeaders = props.stickyHeaders ? props.stickyHeaders === true ? {} : props.stickyHeaders : undefined;
241
243
  var annotationProvider = props.annotationProvider;
242
244
  var allowAnnotationsDraftMode = Boolean(annotationProvider && annotationProvider.inlineComment && annotationProvider.inlineComment.allowDraftMode);
243
- var _this$featureFlags = this.featureFlags(props.featureFlags),
244
- featureFlags = _this$featureFlags.featureFlags;
245
+ var _this$createRendererC = this.createRendererContext(props.featureFlags, props.isTopLevelRenderer),
246
+ featureFlags = _this$createRendererC.featureFlags;
245
247
  return {
246
248
  startPos: props.startPos,
247
249
  providers: this.providerFactory,
@@ -303,7 +305,7 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
303
305
  allowWrapCodeBlock = _this$props.allowWrapCodeBlock,
304
306
  allowCustomPanels = _this$props.allowCustomPanels,
305
307
  media = _this$props.media;
306
- var featureFlags = this.featureFlags(this.props.featureFlags);
308
+ var rendererContext = this.createRendererContext(this.props.featureFlags, this.props.isTopLevelRenderer);
307
309
  var allowNestedHeaderLinks = isNestedHeaderLinksEnabled(allowHeadingAnchorLinks);
308
310
  /**
309
311
  * Handle clicks inside renderer. If the click isn't on media, in the media picker, or on a
@@ -351,7 +353,7 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
351
353
  }
352
354
  };
353
355
  try {
354
- var _featureFlags$feature;
356
+ var _rendererContext$feat;
355
357
  var schema = this.getSchema(this.props.schema, this.props.adfStage);
356
358
  var _renderDocument = renderDocument(adfDocument, this.serializer, schema, adfStage, this.props.useSpecBasedValidator, this.id, this.fireAnalyticsEvent, this.props.unsupportedContentLevelsTracking, this.props.appearance),
357
359
  result = _renderDocument.result,
@@ -361,7 +363,7 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
361
363
  onComplete(stat);
362
364
  }
363
365
  var rendererOutput = jsx(RendererContextProvider, {
364
- value: featureFlags
366
+ value: rendererContext
365
367
  }, jsx(ActiveHeaderIdProvider, {
366
368
  value: getActiveHeadingId(allowHeadingAnchorLinks)
367
369
  }, jsx(AnalyticsContext.Provider, {
@@ -381,13 +383,14 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
381
383
  allowWrapCodeBlock: allowWrapCodeBlock,
382
384
  allowCustomPanels: allowCustomPanels,
383
385
  allowPlaceholderText: allowPlaceholderText,
384
- useBlockRenderForCodeBlock: (_featureFlags$feature = featureFlags.featureFlags.useBlockRenderForCodeBlock) !== null && _featureFlags$feature !== void 0 ? _featureFlags$feature : true,
386
+ useBlockRenderForCodeBlock: (_rendererContext$feat = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat !== void 0 ? _rendererContext$feat : true,
385
387
  addTelepointer: this.props.addTelepointer,
386
388
  innerRef: this.editorRef,
387
389
  onClick: handleWrapperOnClick,
388
390
  onMouseDown: this.onMouseDownEditView,
389
391
  ssr: media === null || media === void 0 ? void 0 : media.ssr,
390
- isInsideOfInlineExtension: this.props.isInsideOfInlineExtension
392
+ isInsideOfInlineExtension: this.props.isInsideOfInlineExtension,
393
+ isTopLevelRenderer: rendererContext.isTopLevelRenderer
391
394
  }, enableSsrInlineScripts ? jsx(BreakoutSSRInlineScript, null) : null, jsx(RendererActionsInternalUpdater, {
392
395
  doc: pmDoc,
393
396
  schema: schema,
@@ -399,7 +402,7 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
399
402
  }, rendererOutput) : rendererOutput;
400
403
  return jsx(Fragment, null, rendererResult);
401
404
  } catch (e) {
402
- var _featureFlags$feature2;
405
+ var _rendererContext$feat2;
403
406
  if (onError) {
404
407
  onError(e);
405
408
  }
@@ -411,9 +414,10 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
411
414
  allowPlaceholderText: allowPlaceholderText,
412
415
  allowColumnSorting: allowColumnSorting,
413
416
  allowNestedHeaderLinks: allowNestedHeaderLinks,
414
- useBlockRenderForCodeBlock: (_featureFlags$feature2 = featureFlags.featureFlags.useBlockRenderForCodeBlock) !== null && _featureFlags$feature2 !== void 0 ? _featureFlags$feature2 : true,
417
+ useBlockRenderForCodeBlock: (_rendererContext$feat2 = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat2 !== void 0 ? _rendererContext$feat2 : true,
415
418
  addTelepointer: this.props.addTelepointer,
416
- onClick: handleWrapperOnClick
419
+ onClick: handleWrapperOnClick,
420
+ isTopLevelRenderer: rendererContext.isTopLevelRenderer
417
421
  }, jsx(UnsupportedBlock, null));
418
422
  }
419
423
  }
@@ -437,11 +441,15 @@ export var __RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
437
441
  export function Renderer(props) {
438
442
  var _React$useContext = React.useContext(AnnotationsPositionContext),
439
443
  startPos = _React$useContext.startPos;
440
-
441
- // eslint-disable-next-line react/jsx-pascal-case
442
- return jsx(__RendererClassComponent, _extends({}, props, {
443
- startPos: startPos
444
- }));
444
+ var _useRendererContext = useRendererContext(),
445
+ isTopLevelRenderer = _useRendererContext.isTopLevelRenderer;
446
+ return (
447
+ // eslint-disable-next-line react/jsx-pascal-case
448
+ jsx(__RendererClassComponent, _extends({}, props, {
449
+ startPos: startPos,
450
+ isTopLevelRenderer: isTopLevelRenderer
451
+ }))
452
+ );
445
453
  }
446
454
 
447
455
  // Usage notes:
@@ -482,7 +490,8 @@ var RendererWrapper = /*#__PURE__*/React.memo(function (props) {
482
490
  addTelepointer = props.addTelepointer,
483
491
  ssr = props.ssr,
484
492
  isInsideOfInlineExtension = props.isInsideOfInlineExtension,
485
- allowTableResizing = props.allowTableResizing;
493
+ allowTableResizing = props.allowTableResizing,
494
+ isTopLevelRenderer = props.isTopLevelRenderer;
486
495
  var createTelepointer = function createTelepointer() {
487
496
  var telepointer = document.createElement('span');
488
497
  telepointer.textContent = "\u200B";
@@ -567,7 +576,10 @@ var RendererWrapper = /*#__PURE__*/React.memo(function (props) {
567
576
  // Only apply container-type = inline-size when having a known width in full-page/full-width/comment mode.
568
577
  // Otherwise when appearance is unspecified the renderer size is decided by the content.
569
578
  // In this case we can't set the container-type = inline-size as it will collapse width to 0.
570
- return (appearance === 'full-page' || appearance === 'full-width' || appearance === 'comment') && fg('platform-fix-table-ssr-resizing') ? jsx("div", {
579
+ return (appearance === 'full-page' || appearance === 'full-width' || appearance === 'comment') &&
580
+ // In case of having excerpt-include on page there are multiple renderers nested.
581
+ // Make sure only the root renderer is set to be query container.
582
+ isTopLevelRenderer && fg('platform-fix-table-ssr-resizing') ? jsx("div", {
571
583
  css: setAsQueryContainerStyles
572
584
  }, renderer) : renderer;
573
585
  });
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import type { FeatureFlags } from '@atlaskit/editor-common/types';
3
3
  export type RendererContextProps = {
4
4
  featureFlags?: FeatureFlags;
5
+ isTopLevelRenderer?: boolean;
5
6
  };
6
7
  export declare const useRendererContext: () => RendererContextProps;
7
8
  export declare const RendererContextProvider: React.Provider<{}>;
@@ -35,7 +35,7 @@ export declare class __RendererClassComponent extends PureComponent<RendererProp
35
35
  startPos: number;
36
36
  }): void;
37
37
  private deriveSerializerProps;
38
- private featureFlags;
38
+ private createRendererContext;
39
39
  private fireAnalyticsEvent;
40
40
  private getSchema;
41
41
  private onMouseDownEditView;
@@ -65,6 +65,7 @@ export interface RendererProps {
65
65
  unsupportedContentLevelsTracking?: UnsupportedContentLevelsTracking;
66
66
  nodeComponents?: NodeComponentsProps;
67
67
  isInsideOfInlineExtension?: boolean;
68
+ isTopLevelRenderer?: boolean;
68
69
  /**
69
70
  * When enabled a trailing telepointer will be added to the rendered document
70
71
  * following content updates.
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import type { FeatureFlags } from '@atlaskit/editor-common/types';
3
3
  export type RendererContextProps = {
4
4
  featureFlags?: FeatureFlags;
5
+ isTopLevelRenderer?: boolean;
5
6
  };
6
7
  export declare const useRendererContext: () => RendererContextProps;
7
8
  export declare const RendererContextProvider: React.Provider<{}>;
@@ -35,7 +35,7 @@ export declare class __RendererClassComponent extends PureComponent<RendererProp
35
35
  startPos: number;
36
36
  }): void;
37
37
  private deriveSerializerProps;
38
- private featureFlags;
38
+ private createRendererContext;
39
39
  private fireAnalyticsEvent;
40
40
  private getSchema;
41
41
  private onMouseDownEditView;
@@ -65,6 +65,7 @@ export interface RendererProps {
65
65
  unsupportedContentLevelsTracking?: UnsupportedContentLevelsTracking;
66
66
  nodeComponents?: NodeComponentsProps;
67
67
  isInsideOfInlineExtension?: boolean;
68
+ isTopLevelRenderer?: boolean;
68
69
  /**
69
70
  * When enabled a trailing telepointer will be added to the rendered document
70
71
  * following content updates.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/renderer",
3
- "version": "111.1.6",
3
+ "version": "111.1.7",
4
4
  "description": "Renderer component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -36,8 +36,8 @@
36
36
  "@atlaskit/editor-shared-styles": "^3.0.0",
37
37
  "@atlaskit/emoji": "^67.8.0",
38
38
  "@atlaskit/feature-gate-js-client": "^4.19.0",
39
- "@atlaskit/icon": "^22.21.0",
40
- "@atlaskit/link-datasource": "^3.4.0",
39
+ "@atlaskit/icon": "^22.22.0",
40
+ "@atlaskit/link-datasource": "^3.5.0",
41
41
  "@atlaskit/media-card": "^78.5.0",
42
42
  "@atlaskit/media-client": "^28.0.0",
43
43
  "@atlaskit/media-client-react": "^2.2.0",
@@ -46,7 +46,7 @@
46
46
  "@atlaskit/media-ui": "^25.15.0",
47
47
  "@atlaskit/media-viewer": "^49.0.0",
48
48
  "@atlaskit/platform-feature-flags": "^0.3.0",
49
- "@atlaskit/smart-card": "^29.0.0",
49
+ "@atlaskit/smart-card": "^29.1.0",
50
50
  "@atlaskit/status": "^1.5.0",
51
51
  "@atlaskit/task-decision": "^17.11.0",
52
52
  "@atlaskit/theme": "^13.0.0",