@atlaskit/renderer 120.2.1 → 120.2.3

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,23 @@
1
1
  # @atlaskit/renderer
2
2
 
3
+ ## 120.2.3
4
+
5
+ ### Patch Changes
6
+
7
+ - [#187434](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/187434)
8
+ [`32a92d196a307`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/32a92d196a307) -
9
+ Removes fg cc_complexit_fe_reduce_rerender_2
10
+
11
+ ## 120.2.2
12
+
13
+ ### Patch Changes
14
+
15
+ - [#188983](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/188983)
16
+ [`4db0e4a06b450`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/4db0e4a06b450) -
17
+ EDITOR-1122: Fix telepointer not updating when childList is mutated instead of characterData.
18
+ Behind platform_editor_ai_iw_adf_streaming
19
+ - Updated dependencies
20
+
3
21
  ## 120.2.1
4
22
 
5
23
  ### Patch Changes
@@ -51,6 +51,7 @@ var _getBaseFontSize = require("./get-base-font-size");
51
51
  var _rendererHelper = require("./rendererHelper");
52
52
  var _useMemoFromPropsDerivative = require("./useMemoFromPropsDerivative");
53
53
  var _PortalContext = require("./PortalContext");
54
+ var _expValEqualsNoExposure = require("@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure");
54
55
  var _excluded = ["portal"];
55
56
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
56
57
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -62,7 +63,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
62
63
  var NORMAL_SEVERITY_THRESHOLD = exports.NORMAL_SEVERITY_THRESHOLD = 2000;
63
64
  var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
64
65
  var packageName = "@atlaskit/renderer";
65
- var packageVersion = "120.2.0";
66
+ var packageVersion = "120.2.2";
66
67
  var setAsQueryContainerStyles = (0, _react2.css)({
67
68
  containerName: 'ak-renderer-wrapper',
68
69
  containerType: 'inline-size'
@@ -501,9 +502,7 @@ function Renderer(props) {
501
502
  // eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
502
503
  (0, _platformFeatureFlags.fg)('issue_table_single_line_row_height_fast_follows') ? (_props$isTopLevelRend = props.isTopLevelRenderer) !== null && _props$isTopLevelRend !== void 0 ? _props$isTopLevelRend : isTopLevelRenderer : isTopLevelRenderer,
503
504
  skipValidation: skipValidation,
504
- validationOverrides: (0, _platformFeatureFlags.fg)('cc_complexit_fe_reduce_rerender_2') ? validationOverrides : {
505
- allowNestedTables: allowNestedTables
506
- }
505
+ validationOverrides: validationOverrides
507
506
  }));
508
507
  }
509
508
 
@@ -570,7 +569,8 @@ var RendererWrapper = /*#__PURE__*/_react.default.memo(function (props) {
570
569
  lastChild && lastChild.appendChild(createTelepointer());
571
570
  }
572
571
  var mutateTelepointer = function mutateTelepointer(mutations) {
573
- mutations.forEach(function (mutation) {
572
+ mutations.forEach(function (mutation, index) {
573
+ var _mutation$addedNodes$, _mutation$removedNode;
574
574
  if (initialUpdate.current) {
575
575
  var oldTelepointer = _renderer.querySelector("#".concat(_style.TELEPOINTER_ID));
576
576
  if (oldTelepointer) {
@@ -592,6 +592,33 @@ var RendererWrapper = /*#__PURE__*/_react.default.memo(function (props) {
592
592
  parentNode.appendChild(createTelepointer());
593
593
  }
594
594
  }
595
+
596
+ /**
597
+ * When streaming ADF content, we may receive mutations where nodes get
598
+ * replaced, rather than have characterData updated.
599
+ *
600
+ * Telepointer changes will also cause a childList mutation, so we manually ignore it.
601
+ * Telepointer changes are always a singular node-adds or node-removes.
602
+ */
603
+ if ((0, _expValEqualsNoExposure.expValEqualsNoExposure)('platform_editor_ai_iw_adf_streaming', 'isEnabled', true) && mutation.type === 'childList' && !(mutation.addedNodes.length === 1 && ((_mutation$addedNodes$ = mutation.addedNodes[0]) === null || _mutation$addedNodes$ === void 0 ? void 0 : _mutation$addedNodes$.id) === _style.TELEPOINTER_ID || mutation.removedNodes.length === 1 && ((_mutation$removedNode = mutation.removedNodes[0]) === null || _mutation$removedNode === void 0 ? void 0 : _mutation$removedNode.id) === _style.TELEPOINTER_ID)) {
604
+ var _lastChild2 = _renderer.lastChild;
605
+ if (_lastChild2) {
606
+ /**
607
+ * We want to place telepointer inside content (which has data-renderer-start-pos) and
608
+ * inside lines in codeblocks (which have data-ds--code--row).
609
+ */
610
+ var contentElements = _lastChild2.querySelectorAll('[data-renderer-start-pos],[data-ds--code--row]');
611
+ var lastElement = contentElements[contentElements.length - 1];
612
+ var _oldTelepointer2 = _renderer.querySelector("#".concat(_style.TELEPOINTER_ID));
613
+ if (lastElement) {
614
+ _oldTelepointer2 === null || _oldTelepointer2 === void 0 || _oldTelepointer2.remove();
615
+ lastElement === null || lastElement === void 0 || lastElement.appendChild(createTelepointer());
616
+ } else {
617
+ _oldTelepointer2 === null || _oldTelepointer2 === void 0 || _oldTelepointer2.remove();
618
+ _lastChild2 === null || _lastChild2 === void 0 || _lastChild2.appendChild(createTelepointer());
619
+ }
620
+ }
621
+ }
595
622
  });
596
623
  };
597
624
  var observer = new MutationObserver(mutateTelepointer);
@@ -45,10 +45,11 @@ import { getBaseFontSize } from './get-base-font-size';
45
45
  import { removeEmptySpaceAroundContent } from './rendererHelper';
46
46
  import { useMemoFromPropsDerivative } from './useMemoFromPropsDerivative';
47
47
  import { PortalContext } from './PortalContext';
48
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
48
49
  export const NORMAL_SEVERITY_THRESHOLD = 2000;
49
50
  export const DEGRADED_SEVERITY_THRESHOLD = 3000;
50
51
  const packageName = "@atlaskit/renderer";
51
- const packageVersion = "120.2.0";
52
+ const packageVersion = "120.2.2";
52
53
  const setAsQueryContainerStyles = css({
53
54
  containerName: 'ak-renderer-wrapper',
54
55
  containerType: 'inline-size'
@@ -487,9 +488,7 @@ export function Renderer(props) {
487
488
  // eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
488
489
  fg('issue_table_single_line_row_height_fast_follows') ? (_props$isTopLevelRend = props.isTopLevelRenderer) !== null && _props$isTopLevelRend !== void 0 ? _props$isTopLevelRend : isTopLevelRenderer : isTopLevelRenderer,
489
490
  skipValidation: skipValidation,
490
- validationOverrides: fg('cc_complexit_fe_reduce_rerender_2') ? validationOverrides : {
491
- allowNestedTables
492
- }
491
+ validationOverrides: validationOverrides
493
492
  }));
494
493
  }
495
494
 
@@ -556,7 +555,8 @@ const RendererWrapper = /*#__PURE__*/React.memo(props => {
556
555
  lastChild && lastChild.appendChild(createTelepointer());
557
556
  }
558
557
  const mutateTelepointer = mutations => {
559
- mutations.forEach(mutation => {
558
+ mutations.forEach((mutation, index) => {
559
+ var _mutation$addedNodes$, _mutation$removedNode;
560
560
  if (initialUpdate.current) {
561
561
  const oldTelepointer = renderer.querySelector(`#${TELEPOINTER_ID}`);
562
562
  if (oldTelepointer) {
@@ -578,6 +578,33 @@ const RendererWrapper = /*#__PURE__*/React.memo(props => {
578
578
  parentNode.appendChild(createTelepointer());
579
579
  }
580
580
  }
581
+
582
+ /**
583
+ * When streaming ADF content, we may receive mutations where nodes get
584
+ * replaced, rather than have characterData updated.
585
+ *
586
+ * Telepointer changes will also cause a childList mutation, so we manually ignore it.
587
+ * Telepointer changes are always a singular node-adds or node-removes.
588
+ */
589
+ if (expValEqualsNoExposure('platform_editor_ai_iw_adf_streaming', 'isEnabled', true) && mutation.type === 'childList' && !(mutation.addedNodes.length === 1 && ((_mutation$addedNodes$ = mutation.addedNodes[0]) === null || _mutation$addedNodes$ === void 0 ? void 0 : _mutation$addedNodes$.id) === TELEPOINTER_ID || mutation.removedNodes.length === 1 && ((_mutation$removedNode = mutation.removedNodes[0]) === null || _mutation$removedNode === void 0 ? void 0 : _mutation$removedNode.id) === TELEPOINTER_ID)) {
590
+ const lastChild = renderer.lastChild;
591
+ if (lastChild) {
592
+ /**
593
+ * We want to place telepointer inside content (which has data-renderer-start-pos) and
594
+ * inside lines in codeblocks (which have data-ds--code--row).
595
+ */
596
+ const contentElements = lastChild.querySelectorAll('[data-renderer-start-pos],[data-ds--code--row]');
597
+ const lastElement = contentElements[contentElements.length - 1];
598
+ const oldTelepointer = renderer.querySelector(`#${TELEPOINTER_ID}`);
599
+ if (lastElement) {
600
+ oldTelepointer === null || oldTelepointer === void 0 ? void 0 : oldTelepointer.remove();
601
+ lastElement === null || lastElement === void 0 ? void 0 : lastElement.appendChild(createTelepointer());
602
+ } else {
603
+ oldTelepointer === null || oldTelepointer === void 0 ? void 0 : oldTelepointer.remove();
604
+ lastChild === null || lastChild === void 0 ? void 0 : lastChild.appendChild(createTelepointer());
605
+ }
606
+ }
607
+ }
581
608
  });
582
609
  };
583
610
  const observer = new MutationObserver(mutateTelepointer);
@@ -50,10 +50,11 @@ import { getBaseFontSize } from './get-base-font-size';
50
50
  import { removeEmptySpaceAroundContent } from './rendererHelper';
51
51
  import { useMemoFromPropsDerivative } from './useMemoFromPropsDerivative';
52
52
  import { PortalContext } from './PortalContext';
53
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
53
54
  export var NORMAL_SEVERITY_THRESHOLD = 2000;
54
55
  export var DEGRADED_SEVERITY_THRESHOLD = 3000;
55
56
  var packageName = "@atlaskit/renderer";
56
- var packageVersion = "120.2.0";
57
+ var packageVersion = "120.2.2";
57
58
  var setAsQueryContainerStyles = css({
58
59
  containerName: 'ak-renderer-wrapper',
59
60
  containerType: 'inline-size'
@@ -492,9 +493,7 @@ export function Renderer(props) {
492
493
  // eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
493
494
  fg('issue_table_single_line_row_height_fast_follows') ? (_props$isTopLevelRend = props.isTopLevelRenderer) !== null && _props$isTopLevelRend !== void 0 ? _props$isTopLevelRend : isTopLevelRenderer : isTopLevelRenderer,
494
495
  skipValidation: skipValidation,
495
- validationOverrides: fg('cc_complexit_fe_reduce_rerender_2') ? validationOverrides : {
496
- allowNestedTables: allowNestedTables
497
- }
496
+ validationOverrides: validationOverrides
498
497
  }));
499
498
  }
500
499
 
@@ -561,7 +560,8 @@ var RendererWrapper = /*#__PURE__*/React.memo(function (props) {
561
560
  lastChild && lastChild.appendChild(createTelepointer());
562
561
  }
563
562
  var mutateTelepointer = function mutateTelepointer(mutations) {
564
- mutations.forEach(function (mutation) {
563
+ mutations.forEach(function (mutation, index) {
564
+ var _mutation$addedNodes$, _mutation$removedNode;
565
565
  if (initialUpdate.current) {
566
566
  var oldTelepointer = _renderer.querySelector("#".concat(TELEPOINTER_ID));
567
567
  if (oldTelepointer) {
@@ -583,6 +583,33 @@ var RendererWrapper = /*#__PURE__*/React.memo(function (props) {
583
583
  parentNode.appendChild(createTelepointer());
584
584
  }
585
585
  }
586
+
587
+ /**
588
+ * When streaming ADF content, we may receive mutations where nodes get
589
+ * replaced, rather than have characterData updated.
590
+ *
591
+ * Telepointer changes will also cause a childList mutation, so we manually ignore it.
592
+ * Telepointer changes are always a singular node-adds or node-removes.
593
+ */
594
+ if (expValEqualsNoExposure('platform_editor_ai_iw_adf_streaming', 'isEnabled', true) && mutation.type === 'childList' && !(mutation.addedNodes.length === 1 && ((_mutation$addedNodes$ = mutation.addedNodes[0]) === null || _mutation$addedNodes$ === void 0 ? void 0 : _mutation$addedNodes$.id) === TELEPOINTER_ID || mutation.removedNodes.length === 1 && ((_mutation$removedNode = mutation.removedNodes[0]) === null || _mutation$removedNode === void 0 ? void 0 : _mutation$removedNode.id) === TELEPOINTER_ID)) {
595
+ var _lastChild2 = _renderer.lastChild;
596
+ if (_lastChild2) {
597
+ /**
598
+ * We want to place telepointer inside content (which has data-renderer-start-pos) and
599
+ * inside lines in codeblocks (which have data-ds--code--row).
600
+ */
601
+ var contentElements = _lastChild2.querySelectorAll('[data-renderer-start-pos],[data-ds--code--row]');
602
+ var lastElement = contentElements[contentElements.length - 1];
603
+ var _oldTelepointer2 = _renderer.querySelector("#".concat(TELEPOINTER_ID));
604
+ if (lastElement) {
605
+ _oldTelepointer2 === null || _oldTelepointer2 === void 0 || _oldTelepointer2.remove();
606
+ lastElement === null || lastElement === void 0 || lastElement.appendChild(createTelepointer());
607
+ } else {
608
+ _oldTelepointer2 === null || _oldTelepointer2 === void 0 || _oldTelepointer2.remove();
609
+ _lastChild2 === null || _lastChild2 === void 0 || _lastChild2.appendChild(createTelepointer());
610
+ }
611
+ }
612
+ }
586
613
  });
587
614
  };
588
615
  var observer = new MutationObserver(mutateTelepointer);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/renderer",
3
- "version": "120.2.1",
3
+ "version": "120.2.3",
4
4
  "description": "Renderer component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -68,7 +68,7 @@
68
68
  "uuid": "^3.1.0"
69
69
  },
70
70
  "peerDependencies": {
71
- "@atlaskit/editor-common": "^107.10.0",
71
+ "@atlaskit/editor-common": "^107.12.0",
72
72
  "@atlaskit/link-provider": "^3.4.0",
73
73
  "@atlaskit/media-core": "^37.0.0",
74
74
  "react": "^18.2.0",
@@ -139,9 +139,6 @@
139
139
  "platform_fix_nested_num_column_scaling": {
140
140
  "type": "boolean"
141
141
  },
142
- "cc_complexit_fe_reduce_rerender_2": {
143
- "type": "boolean"
144
- },
145
142
  "platform_editor_annotation_position_comment_nodes": {
146
143
  "type": "boolean"
147
144
  },