@atlaskit/renderer 114.9.1 → 114.10.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,17 @@
1
1
  # @atlaskit/renderer
2
2
 
3
+ ## 114.10.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#144384](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/144384)
8
+ [`3a650f8970f01`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/3a650f8970f01) -
9
+ Adding emoji load callbacks to Renderer EmojiConfig
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies
14
+
3
15
  ## 114.9.1
4
16
 
5
17
  ### Patch Changes
@@ -63,7 +63,9 @@ var EmojiNode = /*#__PURE__*/function (_PureComponent) {
63
63
  fallback: fallback,
64
64
  shortName: shortName
65
65
  }),
66
- editorEmoji: true
66
+ editorEmoji: true,
67
+ onEmojiLoadSuccess: resourceConfig === null || resourceConfig === void 0 ? void 0 : resourceConfig.onEmojiLoadSuccess,
68
+ onEmojiLoadFail: resourceConfig === null || resourceConfig === void 0 ? void 0 : resourceConfig.onEmojiLoadFail
67
69
  });
68
70
  });
69
71
  _this.providerFactory = props.providers || new _providerFactory.ProviderFactory();
@@ -110,6 +110,14 @@ function resolveNodePos(node) {
110
110
  var resolvedPos = 0;
111
111
  var prev = node.previousSibling;
112
112
  while (prev) {
113
+ if ((0, _platformFeatureFlags.fg)('platform_editor_annotation_position_comment_nodes')) {
114
+ if (prev.nodeType === Node.COMMENT_NODE) {
115
+ // Comment nodes should not result in the position being
116
+ // incremented, so we skip them.
117
+ prev = prev.previousSibling;
118
+ continue;
119
+ }
120
+ }
113
121
  if (prev && (isTextNode(prev) || isHighlightTextNode(prev))) {
114
122
  resolvedPos += (prev.textContent || '').length;
115
123
  } else if (prev) {
@@ -67,7 +67,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
67
67
  var NORMAL_SEVERITY_THRESHOLD = exports.NORMAL_SEVERITY_THRESHOLD = 2000;
68
68
  var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
69
69
  var packageName = "@atlaskit/renderer";
70
- var packageVersion = "114.9.1";
70
+ var packageVersion = "114.10.0";
71
71
  var setAsQueryContainerStyles = (0, _react2.css)({
72
72
  containerName: 'ak-renderer-wrapper',
73
73
  containerType: 'inline-size',
@@ -13,6 +13,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
13
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
15
  var _react = _interopRequireWildcard(require("react"));
16
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
16
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
18
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
19
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
@@ -63,11 +64,24 @@ var AnnotationsDraftContextWrapper = exports.AnnotationsDraftContextWrapper = /*
63
64
  return (0, _createClass2.default)(AnnotationsDraftContextWrapper, [{
64
65
  key: "render",
65
66
  value: function render() {
66
- var children = this.props.children;
67
+ var _this$props = this.props,
68
+ children = _this$props.children,
69
+ isNestedRender = _this$props.isNestedRender;
67
70
  var position = this.state.position;
68
71
  var applyAnnotationDraftAt = this.applyAnnotationDraftAt;
69
72
  var clearAnnotationDraft = this.clearAnnotationDraft;
70
- return /*#__PURE__*/_react.default.createElement(AnnotationsDraftContext.Provider, {
73
+
74
+ /*
75
+ * If this is a nested render, we do not provide the draft context
76
+ * because it has already been provided higher up the component tree
77
+ * and we need the original context to create draft annotations on extensions.
78
+ */
79
+ return isNestedRender && (0, _platformFeatureFlags.fg)('confluence_frontend_fix_extension_draft_annotation') ? /*#__PURE__*/_react.default.createElement("span", {
80
+ "data-testid": "context-wrapper-without-provider"
81
+ }, children({
82
+ applyAnnotationDraftAt: applyAnnotationDraftAt,
83
+ clearAnnotationDraft: clearAnnotationDraft
84
+ })) : /*#__PURE__*/_react.default.createElement(AnnotationsDraftContext.Provider, {
71
85
  value: position
72
86
  }, children({
73
87
  applyAnnotationDraftAt: applyAnnotationDraftAt,
@@ -57,7 +57,8 @@ var AnnotationsWrapper = exports.AnnotationsWrapper = function AnnotationsWrappe
57
57
  allowCommentsOnMedia: (_annotationProvider$i = annotationProvider === null || annotationProvider === void 0 || (_annotationProvider$i2 = annotationProvider.inlineComment) === null || _annotationProvider$i2 === void 0 ? void 0 : _annotationProvider$i2.allowCommentsOnMedia) !== null && _annotationProvider$i !== void 0 ? _annotationProvider$i : false
58
58
  }, /*#__PURE__*/_react.default.createElement(_AnnotationHoverContext.AnnotationHoverContext, null, /*#__PURE__*/_react.default.createElement(_wrapper.AnnotationsContextWrapper, {
59
59
  createAnalyticsEvent: createAnalyticsEvent,
60
- rendererRef: rendererRef
60
+ rendererRef: rendererRef,
61
+ isNestedRender: isNestedRender
61
62
  }, /*#__PURE__*/_react.default.createElement(LoadAnnotations, {
62
63
  adfDocument: adfDocument,
63
64
  isNestedRender: isNestedRender,
@@ -22,7 +22,8 @@ var AnnotationsContextWrapper = exports.AnnotationsContextWrapper = function Ann
22
22
  clearDraftRange = _useAnnotationRangeDi.clearDraftRange;
23
23
  var rendererRef = props.rendererRef,
24
24
  createAnalyticsEvent = props.createAnalyticsEvent,
25
- children = props.children;
25
+ children = props.children,
26
+ isNestedRender = props.isNestedRender;
26
27
  var inlineCommentProvider = providers && providers.inlineComment;
27
28
  var selectionComponent = inlineCommentProvider && inlineCommentProvider.selectionComponent;
28
29
  var hoverComponent = inlineCommentProvider && inlineCommentProvider.hoverComponent;
@@ -62,6 +63,7 @@ var AnnotationsContextWrapper = exports.AnnotationsContextWrapper = function Ann
62
63
  }
63
64
  return /*#__PURE__*/_react.default.createElement(_context.AnnotationsDraftContextWrapper, {
64
65
  setDraftRange: setRangeForDraft,
65
- clearDraftRange: clearRangeForDraft
66
+ clearDraftRange: clearRangeForDraft,
67
+ isNestedRender: isNestedRender
66
68
  }, render);
67
69
  };
@@ -50,7 +50,9 @@ class EmojiNode extends PureComponent {
50
50
  fallback,
51
51
  shortName
52
52
  }),
53
- editorEmoji: true
53
+ editorEmoji: true,
54
+ onEmojiLoadSuccess: resourceConfig === null || resourceConfig === void 0 ? void 0 : resourceConfig.onEmojiLoadSuccess,
55
+ onEmojiLoadFail: resourceConfig === null || resourceConfig === void 0 ? void 0 : resourceConfig.onEmojiLoadFail
54
56
  });
55
57
  });
56
58
  this.providerFactory = props.providers || new ProviderFactory();
@@ -105,6 +105,14 @@ function resolveNodePos(node) {
105
105
  let resolvedPos = 0;
106
106
  let prev = node.previousSibling;
107
107
  while (prev) {
108
+ if (fg('platform_editor_annotation_position_comment_nodes')) {
109
+ if (prev.nodeType === Node.COMMENT_NODE) {
110
+ // Comment nodes should not result in the position being
111
+ // incremented, so we skip them.
112
+ prev = prev.previousSibling;
113
+ continue;
114
+ }
115
+ }
108
116
  if (prev && (isTextNode(prev) || isHighlightTextNode(prev))) {
109
117
  resolvedPos += (prev.textContent || '').length;
110
118
  } else if (prev) {
@@ -48,7 +48,7 @@ import { removeEmptySpaceAroundContent } from './rendererHelper';
48
48
  export const NORMAL_SEVERITY_THRESHOLD = 2000;
49
49
  export const DEGRADED_SEVERITY_THRESHOLD = 3000;
50
50
  const packageName = "@atlaskit/renderer";
51
- const packageVersion = "114.9.1";
51
+ const packageVersion = "114.10.0";
52
52
  const setAsQueryContainerStyles = css({
53
53
  containerName: 'ak-renderer-wrapper',
54
54
  containerType: 'inline-size',
@@ -1,5 +1,6 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import React, { createContext } from 'react';
3
+ import { fg } from '@atlaskit/platform-feature-flags';
3
4
  export const AnnotationsDraftContext = /*#__PURE__*/createContext(null);
4
5
  export const ProvidersContext = /*#__PURE__*/createContext(null);
5
6
  export const InlineCommentsStateContext = /*#__PURE__*/createContext({});
@@ -42,14 +43,26 @@ export class AnnotationsDraftContextWrapper extends React.Component {
42
43
  }
43
44
  render() {
44
45
  const {
45
- children
46
+ children,
47
+ isNestedRender
46
48
  } = this.props;
47
49
  const {
48
50
  position
49
51
  } = this.state;
50
52
  const applyAnnotationDraftAt = this.applyAnnotationDraftAt;
51
53
  const clearAnnotationDraft = this.clearAnnotationDraft;
52
- return /*#__PURE__*/React.createElement(AnnotationsDraftContext.Provider, {
54
+
55
+ /*
56
+ * If this is a nested render, we do not provide the draft context
57
+ * because it has already been provided higher up the component tree
58
+ * and we need the original context to create draft annotations on extensions.
59
+ */
60
+ return isNestedRender && fg('confluence_frontend_fix_extension_draft_annotation') ? /*#__PURE__*/React.createElement("span", {
61
+ "data-testid": "context-wrapper-without-provider"
62
+ }, children({
63
+ applyAnnotationDraftAt,
64
+ clearAnnotationDraft
65
+ })) : /*#__PURE__*/React.createElement(AnnotationsDraftContext.Provider, {
53
66
  value: position
54
67
  }, children({
55
68
  applyAnnotationDraftAt,
@@ -54,7 +54,8 @@ export const AnnotationsWrapper = props => {
54
54
  allowCommentsOnMedia: (_annotationProvider$i = annotationProvider === null || annotationProvider === void 0 ? void 0 : (_annotationProvider$i2 = annotationProvider.inlineComment) === null || _annotationProvider$i2 === void 0 ? void 0 : _annotationProvider$i2.allowCommentsOnMedia) !== null && _annotationProvider$i !== void 0 ? _annotationProvider$i : false
55
55
  }, /*#__PURE__*/React.createElement(AnnotationHoverContext, null, /*#__PURE__*/React.createElement(AnnotationsContextWrapper, {
56
56
  createAnalyticsEvent: createAnalyticsEvent,
57
- rendererRef: rendererRef
57
+ rendererRef: rendererRef,
58
+ isNestedRender: isNestedRender
58
59
  }, /*#__PURE__*/React.createElement(LoadAnnotations, {
59
60
  adfDocument: adfDocument,
60
61
  isNestedRender: isNestedRender,
@@ -16,7 +16,8 @@ export const AnnotationsContextWrapper = props => {
16
16
  const {
17
17
  rendererRef,
18
18
  createAnalyticsEvent,
19
- children
19
+ children,
20
+ isNestedRender
20
21
  } = props;
21
22
  const inlineCommentProvider = providers && providers.inlineComment;
22
23
  const selectionComponent = inlineCommentProvider && inlineCommentProvider.selectionComponent;
@@ -58,6 +59,7 @@ export const AnnotationsContextWrapper = props => {
58
59
  }
59
60
  return /*#__PURE__*/React.createElement(AnnotationsDraftContextWrapper, {
60
61
  setDraftRange: setRangeForDraft,
61
- clearDraftRange: clearRangeForDraft
62
+ clearDraftRange: clearRangeForDraft,
63
+ isNestedRender: isNestedRender
62
64
  }, render);
63
65
  };
@@ -58,7 +58,9 @@ var EmojiNode = /*#__PURE__*/function (_PureComponent) {
58
58
  fallback: fallback,
59
59
  shortName: shortName
60
60
  }),
61
- editorEmoji: true
61
+ editorEmoji: true,
62
+ onEmojiLoadSuccess: resourceConfig === null || resourceConfig === void 0 ? void 0 : resourceConfig.onEmojiLoadSuccess,
63
+ onEmojiLoadFail: resourceConfig === null || resourceConfig === void 0 ? void 0 : resourceConfig.onEmojiLoadFail
62
64
  });
63
65
  });
64
66
  _this.providerFactory = props.providers || new ProviderFactory();
@@ -101,6 +101,14 @@ function resolveNodePos(node) {
101
101
  var resolvedPos = 0;
102
102
  var prev = node.previousSibling;
103
103
  while (prev) {
104
+ if (fg('platform_editor_annotation_position_comment_nodes')) {
105
+ if (prev.nodeType === Node.COMMENT_NODE) {
106
+ // Comment nodes should not result in the position being
107
+ // incremented, so we skip them.
108
+ prev = prev.previousSibling;
109
+ continue;
110
+ }
111
+ }
104
112
  if (prev && (isTextNode(prev) || isHighlightTextNode(prev))) {
105
113
  resolvedPos += (prev.textContent || '').length;
106
114
  } else if (prev) {
@@ -57,7 +57,7 @@ import { removeEmptySpaceAroundContent } from './rendererHelper';
57
57
  export var NORMAL_SEVERITY_THRESHOLD = 2000;
58
58
  export var DEGRADED_SEVERITY_THRESHOLD = 3000;
59
59
  var packageName = "@atlaskit/renderer";
60
- var packageVersion = "114.9.1";
60
+ var packageVersion = "114.10.0";
61
61
  var setAsQueryContainerStyles = css({
62
62
  containerName: 'ak-renderer-wrapper',
63
63
  containerType: 'inline-size',
@@ -7,6 +7,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
7
7
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
8
8
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
9
9
  import React, { createContext } from 'react';
10
+ import { fg } from '@atlaskit/platform-feature-flags';
10
11
  export var AnnotationsDraftContext = /*#__PURE__*/createContext(null);
11
12
  export var ProvidersContext = /*#__PURE__*/createContext(null);
12
13
  export var InlineCommentsStateContext = /*#__PURE__*/createContext({});
@@ -53,11 +54,24 @@ export var AnnotationsDraftContextWrapper = /*#__PURE__*/function (_React$Compon
53
54
  return _createClass(AnnotationsDraftContextWrapper, [{
54
55
  key: "render",
55
56
  value: function render() {
56
- var children = this.props.children;
57
+ var _this$props = this.props,
58
+ children = _this$props.children,
59
+ isNestedRender = _this$props.isNestedRender;
57
60
  var position = this.state.position;
58
61
  var applyAnnotationDraftAt = this.applyAnnotationDraftAt;
59
62
  var clearAnnotationDraft = this.clearAnnotationDraft;
60
- return /*#__PURE__*/React.createElement(AnnotationsDraftContext.Provider, {
63
+
64
+ /*
65
+ * If this is a nested render, we do not provide the draft context
66
+ * because it has already been provided higher up the component tree
67
+ * and we need the original context to create draft annotations on extensions.
68
+ */
69
+ return isNestedRender && fg('confluence_frontend_fix_extension_draft_annotation') ? /*#__PURE__*/React.createElement("span", {
70
+ "data-testid": "context-wrapper-without-provider"
71
+ }, children({
72
+ applyAnnotationDraftAt: applyAnnotationDraftAt,
73
+ clearAnnotationDraft: clearAnnotationDraft
74
+ })) : /*#__PURE__*/React.createElement(AnnotationsDraftContext.Provider, {
61
75
  value: position
62
76
  }, children({
63
77
  applyAnnotationDraftAt: applyAnnotationDraftAt,
@@ -50,7 +50,8 @@ export var AnnotationsWrapper = function AnnotationsWrapper(props) {
50
50
  allowCommentsOnMedia: (_annotationProvider$i = annotationProvider === null || annotationProvider === void 0 || (_annotationProvider$i2 = annotationProvider.inlineComment) === null || _annotationProvider$i2 === void 0 ? void 0 : _annotationProvider$i2.allowCommentsOnMedia) !== null && _annotationProvider$i !== void 0 ? _annotationProvider$i : false
51
51
  }, /*#__PURE__*/React.createElement(AnnotationHoverContext, null, /*#__PURE__*/React.createElement(AnnotationsContextWrapper, {
52
52
  createAnalyticsEvent: createAnalyticsEvent,
53
- rendererRef: rendererRef
53
+ rendererRef: rendererRef,
54
+ isNestedRender: isNestedRender
54
55
  }, /*#__PURE__*/React.createElement(LoadAnnotations, {
55
56
  adfDocument: adfDocument,
56
57
  isNestedRender: isNestedRender,
@@ -13,7 +13,8 @@ export var AnnotationsContextWrapper = function AnnotationsContextWrapper(props)
13
13
  clearDraftRange = _useAnnotationRangeDi.clearDraftRange;
14
14
  var rendererRef = props.rendererRef,
15
15
  createAnalyticsEvent = props.createAnalyticsEvent,
16
- children = props.children;
16
+ children = props.children,
17
+ isNestedRender = props.isNestedRender;
17
18
  var inlineCommentProvider = providers && providers.inlineComment;
18
19
  var selectionComponent = inlineCommentProvider && inlineCommentProvider.selectionComponent;
19
20
  var hoverComponent = inlineCommentProvider && inlineCommentProvider.hoverComponent;
@@ -53,6 +54,7 @@ export var AnnotationsContextWrapper = function AnnotationsContextWrapper(props)
53
54
  }
54
55
  return /*#__PURE__*/React.createElement(AnnotationsDraftContextWrapper, {
55
56
  setDraftRange: setRangeForDraft,
56
- clearDraftRange: clearRangeForDraft
57
+ clearDraftRange: clearRangeForDraft,
58
+ isNestedRender: isNestedRender
57
59
  }, render);
58
60
  };
@@ -11,6 +11,7 @@ type Props = {
11
11
  setDraftRange: () => void;
12
12
  clearDraftRange: () => void;
13
13
  children: RenderCallbackType;
14
+ isNestedRender?: boolean;
14
15
  };
15
16
  type State = {
16
17
  position: Position | null;
@@ -3,6 +3,7 @@ import type { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';
3
3
  type Props = {
4
4
  rendererRef: React.RefObject<HTMLDivElement>;
5
5
  createAnalyticsEvent?: CreateUIAnalyticsEvent;
6
+ isNestedRender?: boolean;
6
7
  };
7
8
  export declare const AnnotationsContextWrapper: (props: React.PropsWithChildren<Props>) => JSX.Element;
8
9
  export {};
@@ -11,6 +11,7 @@ type Props = {
11
11
  setDraftRange: () => void;
12
12
  clearDraftRange: () => void;
13
13
  children: RenderCallbackType;
14
+ isNestedRender?: boolean;
14
15
  };
15
16
  type State = {
16
17
  position: Position | null;
@@ -3,6 +3,7 @@ import type { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';
3
3
  type Props = {
4
4
  rendererRef: React.RefObject<HTMLDivElement>;
5
5
  createAnalyticsEvent?: CreateUIAnalyticsEvent;
6
+ isNestedRender?: boolean;
6
7
  };
7
8
  export declare const AnnotationsContextWrapper: (props: React.PropsWithChildren<Props>) => JSX.Element;
8
9
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/renderer",
3
- "version": "114.9.1",
3
+ "version": "114.10.0",
4
4
  "description": "Renderer component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -31,16 +31,16 @@
31
31
  "@atlaskit/analytics-next": "^11.0.0",
32
32
  "@atlaskit/button": "^23.0.0",
33
33
  "@atlaskit/code": "^17.0.0",
34
- "@atlaskit/editor-common": "^103.8.0",
34
+ "@atlaskit/editor-common": "^103.14.0",
35
35
  "@atlaskit/editor-json-transformer": "^8.24.0",
36
36
  "@atlaskit/editor-palette": "^2.1.0",
37
37
  "@atlaskit/editor-prosemirror": "7.0.0",
38
38
  "@atlaskit/editor-shared-styles": "^3.4.0",
39
- "@atlaskit/emoji": "^69.0.0",
40
- "@atlaskit/feature-gate-js-client": "^5.0.0",
39
+ "@atlaskit/emoji": "^69.1.0",
40
+ "@atlaskit/feature-gate-js-client": "^5.2.0",
41
41
  "@atlaskit/icon": "^25.6.0",
42
- "@atlaskit/link-datasource": "^4.3.0",
43
- "@atlaskit/media-card": "^79.1.0",
42
+ "@atlaskit/link-datasource": "^4.5.0",
43
+ "@atlaskit/media-card": "^79.2.0",
44
44
  "@atlaskit/media-client": "^32.0.0",
45
45
  "@atlaskit/media-client-react": "^4.0.0",
46
46
  "@atlaskit/media-common": "^12.0.0",
@@ -49,12 +49,12 @@
49
49
  "@atlaskit/media-viewer": "^52.0.0",
50
50
  "@atlaskit/platform-feature-flags": "^1.1.0",
51
51
  "@atlaskit/platform-feature-flags-react": "^0.1.0",
52
- "@atlaskit/react-ufo": "^3.5.0",
52
+ "@atlaskit/react-ufo": "^3.6.0",
53
53
  "@atlaskit/smart-card": "^36.8.0",
54
54
  "@atlaskit/status": "^3.0.0",
55
55
  "@atlaskit/task-decision": "^19.1.0",
56
56
  "@atlaskit/theme": "^18.0.0",
57
- "@atlaskit/tmp-editor-statsig": "^4.9.0",
57
+ "@atlaskit/tmp-editor-statsig": "^4.13.0",
58
58
  "@atlaskit/tokens": "^4.8.0",
59
59
  "@atlaskit/tooltip": "^20.0.0",
60
60
  "@atlaskit/visually-hidden": "^3.0.0",
@@ -123,6 +123,9 @@
123
123
  "cc_complexit_fe_improve_table_sorting": {
124
124
  "type": "boolean"
125
125
  },
126
+ "platform_editor_annotation_position_comment_nodes": {
127
+ "type": "boolean"
128
+ },
126
129
  "platform_editor_typography_ugc": {
127
130
  "type": "boolean"
128
131
  },
@@ -215,6 +218,9 @@
215
218
  },
216
219
  "cc_complexit_fe_memoValidation_redundant_calls": {
217
220
  "type": "boolean"
221
+ },
222
+ "confluence_frontend_fix_extension_draft_annotation": {
223
+ "type": "boolean"
218
224
  }
219
225
  },
220
226
  "af:exports": {