@atlaskit/renderer 114.10.2 → 114.11.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.
- package/CHANGELOG.md +20 -0
- package/dist/cjs/actions/index.js +165 -3
- package/dist/cjs/react/nodes/embedCard.js +36 -10
- package/dist/cjs/react/nodes/tableRow.js +1 -1
- package/dist/cjs/ui/Renderer/RendererStyleContainer.js +12 -12
- package/dist/cjs/ui/Renderer/index.js +28 -440
- package/dist/cjs/ui/annotations/selection/mounter.js +16 -0
- package/dist/es2019/actions/index.js +163 -1
- package/dist/es2019/react/nodes/embedCard.js +36 -10
- package/dist/es2019/react/nodes/tableRow.js +1 -1
- package/dist/es2019/ui/Renderer/RendererStyleContainer.js +14 -14
- package/dist/es2019/ui/Renderer/index.js +21 -424
- package/dist/es2019/ui/annotations/selection/mounter.js +16 -0
- package/dist/esm/actions/index.js +165 -3
- package/dist/esm/react/nodes/embedCard.js +36 -10
- package/dist/esm/react/nodes/tableRow.js +1 -1
- package/dist/esm/ui/Renderer/RendererStyleContainer.js +12 -12
- package/dist/esm/ui/Renderer/index.js +27 -439
- package/dist/esm/ui/annotations/selection/mounter.js +16 -0
- package/dist/types/actions/index.d.ts +1 -0
- package/dist/types/ui/Renderer/index.d.ts +3 -31
- package/dist/types-ts4.5/actions/index.d.ts +1 -0
- package/dist/types-ts4.5/ui/Renderer/index.d.ts +3 -31
- package/package.json +19 -13
|
@@ -7,13 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.NORMAL_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = void 0;
|
|
9
9
|
exports.Renderer = Renderer;
|
|
10
|
-
exports.default = exports.
|
|
10
|
+
exports.default = exports.RendererWithAnalytics = exports.RendererFunctionalComponent = void 0;
|
|
11
11
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
14
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
15
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
18
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
14
|
var _schemaDefault = require("@atlaskit/adf-schema/schema-default");
|
|
@@ -31,7 +26,6 @@ var _types = require("@atlaskit/analytics-listeners/types");
|
|
|
31
26
|
var _analyticsNamespacedContext = require("@atlaskit/analytics-namespaced-context");
|
|
32
27
|
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
33
28
|
var _normalizeFeatureFlags = require("@atlaskit/editor-common/normalize-feature-flags");
|
|
34
|
-
var _memoizeOne = _interopRequireDefault(require("memoize-one"));
|
|
35
29
|
var _v = _interopRequireDefault(require("uuid/v4"));
|
|
36
30
|
var _ = require("../../");
|
|
37
31
|
var _analyticsContext = _interopRequireDefault(require("../../analytics/analyticsContext"));
|
|
@@ -57,9 +51,7 @@ var _rendererHelper = require("./rendererHelper");
|
|
|
57
51
|
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); }
|
|
58
52
|
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; }
|
|
59
53
|
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; }
|
|
60
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
61
|
-
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)); }
|
|
62
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /**
|
|
54
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /**
|
|
63
55
|
* @jsxRuntime classic
|
|
64
56
|
* @jsx jsx
|
|
65
57
|
*/ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
@@ -67,416 +59,14 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
67
59
|
var NORMAL_SEVERITY_THRESHOLD = exports.NORMAL_SEVERITY_THRESHOLD = 2000;
|
|
68
60
|
var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
|
|
69
61
|
var packageName = "@atlaskit/renderer";
|
|
70
|
-
var packageVersion = "114.
|
|
62
|
+
var packageVersion = "114.11.1";
|
|
71
63
|
var setAsQueryContainerStyles = (0, _react2.css)({
|
|
72
64
|
containerName: 'ak-renderer-wrapper',
|
|
73
65
|
containerType: 'inline-size',
|
|
74
66
|
contain: 'layout style inline-size'
|
|
75
67
|
});
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Exported due to enzyme test reliance on this component.
|
|
79
|
-
*/
|
|
80
|
-
// eslint-disable-next-line @repo/internal/react/no-class-components
|
|
81
|
-
var __RendererClassComponent = exports.__RendererClassComponent = /*#__PURE__*/function (_PureComponent) {
|
|
82
|
-
function __RendererClassComponent(props) {
|
|
83
|
-
var _this;
|
|
84
|
-
(0, _classCallCheck2.default)(this, __RendererClassComponent);
|
|
85
|
-
_this = _callSuper(this, __RendererClassComponent, [props]);
|
|
86
|
-
/**
|
|
87
|
-
* This is used in measuring the Renderer Mount time and is then
|
|
88
|
-
* deleted once that measurement occurs.
|
|
89
|
-
*/
|
|
90
|
-
(0, _defineProperty2.default)(_this, "renderedMeasurementDistortedDurationMonitor", (0, _measureRender.getDistortedDurationMonitor)());
|
|
91
|
-
(0, _defineProperty2.default)(_this, "createRendererContext", (0, _memoizeOne.default)(function (featureFlags, isTopLevelRenderer) {
|
|
92
|
-
var normalizedFeatureFlags = (0, _normalizeFeatureFlags.normalizeFeatureFlags)(featureFlags);
|
|
93
|
-
return {
|
|
94
|
-
featureFlags: normalizedFeatureFlags,
|
|
95
|
-
// The context is uninitialized at the top level. In nested levels it's all false
|
|
96
|
-
isTopLevelRenderer: isTopLevelRenderer === undefined
|
|
97
|
-
};
|
|
98
|
-
}));
|
|
99
|
-
(0, _defineProperty2.default)(_this, "fireAnalyticsEvent", function (event) {
|
|
100
|
-
var createAnalyticsEvent = _this.props.createAnalyticsEvent;
|
|
101
|
-
if (createAnalyticsEvent) {
|
|
102
|
-
var channel = _types.FabricChannel.editor;
|
|
103
|
-
createAnalyticsEvent(event).fire(channel);
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
(0, _defineProperty2.default)(_this, "getSchema", (0, _memoizeOne.default)(function (schema, adfStage) {
|
|
107
|
-
if (schema) {
|
|
108
|
-
return schema;
|
|
109
|
-
}
|
|
110
|
-
return (0, _schemaDefault.getSchemaBasedOnStage)(adfStage);
|
|
111
|
-
}));
|
|
112
|
-
(0, _defineProperty2.default)(_this, "onMouseDownEditView", function () {
|
|
113
|
-
// When the user is deselecting text on the screen by clicking, if they are clicking outside
|
|
114
|
-
// the current selection, by the time the onclick handler is called the window.getSelection()
|
|
115
|
-
// value will already be cleared.
|
|
116
|
-
// The mousedown callback is called before the selection is cleared.
|
|
117
|
-
var windowSelection = window.getSelection();
|
|
118
|
-
_this.mouseDownSelection = windowSelection !== null ? windowSelection.toString() : undefined;
|
|
119
|
-
});
|
|
120
|
-
(0, _defineProperty2.default)(_this, "handleMouseTripleClickInTables", function (event) {
|
|
121
|
-
var _parentElement, _parentElement2;
|
|
122
|
-
if (_browser.browser.ios || _browser.browser.android) {
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
var badBrowser = _browser.browser.chrome || _browser.browser.safari;
|
|
126
|
-
var tripleClick = event.detail >= 3;
|
|
127
|
-
if (!(badBrowser && tripleClick)) {
|
|
128
|
-
return;
|
|
129
|
-
}
|
|
130
|
-
var selection = window.getSelection();
|
|
131
|
-
if (!selection) {
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
var type = selection.type,
|
|
135
|
-
anchorNode = selection.anchorNode,
|
|
136
|
-
focusNode = selection.focusNode;
|
|
137
|
-
var rangeSelection = Boolean(type === 'Range' && anchorNode && focusNode);
|
|
138
|
-
if (!rangeSelection) {
|
|
139
|
-
return;
|
|
140
|
-
}
|
|
141
|
-
// Ignored via go/ees005
|
|
142
|
-
// eslint-disable-next-line @atlaskit/editor/no-as-casting
|
|
143
|
-
var target = event.target;
|
|
144
|
-
var tableCell = target.closest('td,th');
|
|
145
|
-
var clickedInCell = Boolean(tableCell);
|
|
146
|
-
if (!clickedInCell) {
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
// Ignored via go/ees005
|
|
150
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
151
|
-
var anchorInCell = tableCell.contains(anchorNode);
|
|
152
|
-
// Ignored via go/ees005
|
|
153
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
154
|
-
var focusInCell = tableCell.contains(focusNode);
|
|
155
|
-
var selectionStartsOrEndsOutsideClickedCell = !(anchorInCell && focusInCell);
|
|
156
|
-
if (!selectionStartsOrEndsOutsideClickedCell) {
|
|
157
|
-
return;
|
|
158
|
-
}
|
|
159
|
-
// If selection starts or ends in a different cell than the clicked cell,
|
|
160
|
-
// we select the node inside the clicked cell (or if both are in a different
|
|
161
|
-
// cell, we select the cell's contents instead). We want to select the nearest
|
|
162
|
-
// parent block, so that a whole line of text/content is selected (rather than
|
|
163
|
-
// selecting a span that would select one specific chunk of text).
|
|
164
|
-
var elementToSelect = anchorInCell ? // Ignored via go/ees005
|
|
165
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
166
|
-
(_parentElement = anchorNode.parentElement) === null || _parentElement === void 0 ? void 0 : _parentElement.closest('div,p') : focusInCell ? // Ignored via go/ees005
|
|
167
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
168
|
-
(_parentElement2 = focusNode.parentElement) === null || _parentElement2 === void 0 ? void 0 : _parentElement2.closest('div,p') : tableCell;
|
|
169
|
-
if (elementToSelect) {
|
|
170
|
-
selection.selectAllChildren(elementToSelect);
|
|
171
|
-
}
|
|
172
|
-
});
|
|
173
|
-
_this.providerFactory = props.dataProviders || new _providerFactory.ProviderFactory();
|
|
174
|
-
_this.serializer = new _.ReactSerializer(_this.deriveSerializerProps(props));
|
|
175
|
-
_this.editorRef = props.innerRef || /*#__PURE__*/_react.default.createRef();
|
|
176
|
-
_this.id = (0, _v.default)();
|
|
177
|
-
(0, _performanceMeasures.startMeasure)("Renderer Render Time: ".concat(_this.id));
|
|
178
|
-
return _this;
|
|
179
|
-
}
|
|
180
|
-
(0, _inherits2.default)(__RendererClassComponent, _PureComponent);
|
|
181
|
-
return (0, _createClass2.default)(__RendererClassComponent, [{
|
|
182
|
-
key: "anchorLinkAnalytics",
|
|
183
|
-
value: function anchorLinkAnalytics() {
|
|
184
|
-
var hash = window.location.hash && decodeURIComponent(window.location.hash.slice(1));
|
|
185
|
-
var disableHeadingIDs = this.props.disableHeadingIDs;
|
|
186
|
-
if (!disableHeadingIDs && hash && this.editorRef && this.editorRef.current instanceof HTMLElement) {
|
|
187
|
-
var anchorLinkElement = document.getElementById(hash);
|
|
188
|
-
// We are not use this.editorRef.querySelector here, instead we have this.editorRef.contains
|
|
189
|
-
// because querySelector might fail if there are special characters in hash, and CSS.escape is still experimental.
|
|
190
|
-
if (anchorLinkElement && this.editorRef.current.contains(anchorLinkElement)) {
|
|
191
|
-
this.fireAnalyticsEvent({
|
|
192
|
-
action: _analytics.ACTION.VIEWED,
|
|
193
|
-
actionSubject: _analytics.ACTION_SUBJECT.ANCHOR_LINK,
|
|
194
|
-
attributes: {
|
|
195
|
-
platform: _events.PLATFORM.WEB,
|
|
196
|
-
mode: _events.MODE.RENDERER
|
|
197
|
-
},
|
|
198
|
-
eventType: _analytics.EVENT_TYPE.UI
|
|
199
|
-
});
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
}, {
|
|
204
|
-
key: "componentDidMount",
|
|
205
|
-
value: function componentDidMount() {
|
|
206
|
-
var _this2 = this;
|
|
207
|
-
this.fireAnalyticsEvent({
|
|
208
|
-
action: _analytics.ACTION.STARTED,
|
|
209
|
-
actionSubject: _analytics.ACTION_SUBJECT.RENDERER,
|
|
210
|
-
attributes: {
|
|
211
|
-
platform: _events.PLATFORM.WEB
|
|
212
|
-
},
|
|
213
|
-
eventType: _analytics.EVENT_TYPE.UI
|
|
214
|
-
});
|
|
215
|
-
this.rafID = requestAnimationFrame(function () {
|
|
216
|
-
(0, _performanceMeasures.stopMeasure)("Renderer Render Time: ".concat(_this2.id), function (duration) {
|
|
217
|
-
var _analyticsEventSeveri, _analyticsEventSeveri2, _this2$props;
|
|
218
|
-
var analyticsEventSeverityTracking = _this2.props.analyticsEventSeverityTracking;
|
|
219
|
-
var forceSeverityTracking = typeof analyticsEventSeverityTracking === 'undefined' && (0, _utils.shouldForceTracking)();
|
|
220
|
-
var severity = !!forceSeverityTracking || analyticsEventSeverityTracking !== null && analyticsEventSeverityTracking !== void 0 && analyticsEventSeverityTracking.enabled ? (0, _utils.getAnalyticsEventSeverity)(duration, (_analyticsEventSeveri = analyticsEventSeverityTracking === null || analyticsEventSeverityTracking === void 0 ? void 0 : analyticsEventSeverityTracking.severityNormalThreshold) !== null && _analyticsEventSeveri !== void 0 ? _analyticsEventSeveri : NORMAL_SEVERITY_THRESHOLD, (_analyticsEventSeveri2 = analyticsEventSeverityTracking === null || analyticsEventSeverityTracking === void 0 ? void 0 : analyticsEventSeverityTracking.severityDegradedThreshold) !== null && _analyticsEventSeveri2 !== void 0 ? _analyticsEventSeveri2 : DEGRADED_SEVERITY_THRESHOLD) : undefined;
|
|
221
|
-
|
|
222
|
-
// ED-16320: Check for explicit disable so that by default
|
|
223
|
-
// it will still be enabled as it currently is. Then we can
|
|
224
|
-
// progressively opt out synthetic tenants.
|
|
225
|
-
var isTTRTrackingExplicitlyDisabled = ((_this2$props = _this2.props) === null || _this2$props === void 0 || (_this2$props = _this2$props.analyticsEventSeverityTracking) === null || _this2$props === void 0 ? void 0 : _this2$props.enabled) === false;
|
|
226
|
-
if (!isTTRTrackingExplicitlyDisabled) {
|
|
227
|
-
_this2.fireAnalyticsEvent({
|
|
228
|
-
action: _analytics.ACTION.RENDERED,
|
|
229
|
-
actionSubject: _analytics.ACTION_SUBJECT.RENDERER,
|
|
230
|
-
attributes: {
|
|
231
|
-
platform: _events.PLATFORM.WEB,
|
|
232
|
-
duration: duration,
|
|
233
|
-
distortedDuration:
|
|
234
|
-
// Ignored via go/ees005
|
|
235
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
236
|
-
_this2.renderedMeasurementDistortedDurationMonitor.distortedDuration,
|
|
237
|
-
ttfb: (0, _navigation.getResponseEndTime)(),
|
|
238
|
-
nodes: (0, _countNodes.countNodes)(_this2.props.document),
|
|
239
|
-
severity: severity
|
|
240
|
-
},
|
|
241
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
242
|
-
});
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
// Ignored via go/ees005
|
|
246
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
247
|
-
_this2.renderedMeasurementDistortedDurationMonitor.cleanup();
|
|
248
|
-
delete _this2.renderedMeasurementDistortedDurationMonitor;
|
|
249
|
-
});
|
|
250
|
-
_this2.anchorLinkAnalytics();
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
// Ignored via go/ees005
|
|
255
|
-
// eslint-disable-next-line react/no-unsafe
|
|
256
|
-
}, {
|
|
257
|
-
key: "UNSAFE_componentWillReceiveProps",
|
|
258
|
-
value: function UNSAFE_componentWillReceiveProps(nextProps) {
|
|
259
|
-
var nextMedia = nextProps.media || {};
|
|
260
|
-
var media = this.props.media || {};
|
|
261
|
-
if (nextProps.portal !== this.props.portal || nextProps.appearance !== this.props.appearance || nextProps.stickyHeaders !== this.props.stickyHeaders || nextProps.disableActions !== this.props.disableActions || nextProps.allowCustomPanels !== this.props.allowCustomPanels || nextProps.extensionHandlers !== this.props.extensionHandlers || nextProps.allowHeadingAnchorLinks !== this.props.allowHeadingAnchorLinks || nextProps.UNSTABLE_isPresentational !== this.props.UNSTABLE_isPresentational || nextMedia.allowLinking !== media.allowLinking) {
|
|
262
|
-
this.serializer = new _.ReactSerializer(this.deriveSerializerProps(nextProps));
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
}, {
|
|
266
|
-
key: "deriveSerializerProps",
|
|
267
|
-
value: function deriveSerializerProps(props) {
|
|
268
|
-
// if just passed a boolean, change shape into object to simplify type
|
|
269
|
-
var stickyHeaders = props.stickyHeaders ? props.stickyHeaders === true ? {} : props.stickyHeaders : undefined;
|
|
270
|
-
var annotationProvider = props.annotationProvider;
|
|
271
|
-
var allowAnnotationsDraftMode = Boolean(annotationProvider && annotationProvider.inlineComment && annotationProvider.inlineComment.allowDraftMode);
|
|
272
|
-
var _this$createRendererC = this.createRendererContext(props.featureFlags, props.isTopLevelRenderer),
|
|
273
|
-
featureFlags = _this$createRendererC.featureFlags;
|
|
274
|
-
return {
|
|
275
|
-
startPos: props.startPos,
|
|
276
|
-
providers: this.providerFactory,
|
|
277
|
-
eventHandlers: props.eventHandlers,
|
|
278
|
-
extensionHandlers: props.extensionHandlers,
|
|
279
|
-
portal: props.portal,
|
|
280
|
-
objectContext: _objectSpread({
|
|
281
|
-
adDoc: props.document,
|
|
282
|
-
schema: props.schema
|
|
283
|
-
}, props.rendererContext),
|
|
284
|
-
appearance: props.appearance,
|
|
285
|
-
disableHeadingIDs: props.disableHeadingIDs,
|
|
286
|
-
disableActions: props.disableActions,
|
|
287
|
-
allowHeadingAnchorLinks: props.allowHeadingAnchorLinks,
|
|
288
|
-
allowColumnSorting: props.allowColumnSorting,
|
|
289
|
-
fireAnalyticsEvent: this.fireAnalyticsEvent,
|
|
290
|
-
shouldOpenMediaViewer: props.shouldOpenMediaViewer,
|
|
291
|
-
allowAltTextOnImages: props.allowAltTextOnImages,
|
|
292
|
-
stickyHeaders: stickyHeaders,
|
|
293
|
-
allowMediaLinking: props.media && props.media.allowLinking,
|
|
294
|
-
surroundTextNodesWithTextWrapper: allowAnnotationsDraftMode,
|
|
295
|
-
media: props.media,
|
|
296
|
-
emojiResourceConfig: props.emojiResourceConfig,
|
|
297
|
-
smartLinks: props.smartLinks,
|
|
298
|
-
extensionViewportSizes: props.extensionViewportSizes,
|
|
299
|
-
allowCopyToClipboard: props.allowCopyToClipboard,
|
|
300
|
-
allowWrapCodeBlock: props.allowWrapCodeBlock,
|
|
301
|
-
allowCustomPanels: props.allowCustomPanels,
|
|
302
|
-
allowAnnotations: props.allowAnnotations,
|
|
303
|
-
allowSelectAllTrap: props.allowSelectAllTrap,
|
|
304
|
-
allowPlaceholderText: props.allowPlaceholderText,
|
|
305
|
-
nodeComponents: props.nodeComponents,
|
|
306
|
-
isPresentational: props.UNSTABLE_isPresentational,
|
|
307
|
-
// does not currently support SSR, should not be enabled in environments where Renderer is SSR-ed
|
|
308
|
-
allowWindowedCodeBlock: featureFlags === null || featureFlags === void 0 ? void 0 : featureFlags.allowWindowedCodeBlock,
|
|
309
|
-
isInsideOfInlineExtension: props.isInsideOfInlineExtension,
|
|
310
|
-
textHighlighter: props.textHighlighter || props.UNSTABLE_textHighlighter,
|
|
311
|
-
allowTableAlignment: props.UNSTABLE_allowTableAlignment,
|
|
312
|
-
allowTableResizing: props.UNSTABLE_allowTableResizing
|
|
313
|
-
};
|
|
314
|
-
}
|
|
315
|
-
}, {
|
|
316
|
-
key: "render",
|
|
317
|
-
value: function render() {
|
|
318
|
-
var _this3 = this;
|
|
319
|
-
var _this$props = this.props,
|
|
320
|
-
adfDocument = _this$props.document,
|
|
321
|
-
onComplete = _this$props.onComplete,
|
|
322
|
-
onError = _this$props.onError,
|
|
323
|
-
appearance = _this$props.appearance,
|
|
324
|
-
allowAnnotations = _this$props.allowAnnotations,
|
|
325
|
-
adfStage = _this$props.adfStage,
|
|
326
|
-
truncated = _this$props.truncated,
|
|
327
|
-
maxHeight = _this$props.maxHeight,
|
|
328
|
-
fadeOutHeight = _this$props.fadeOutHeight,
|
|
329
|
-
enableSsrInlineScripts = _this$props.enableSsrInlineScripts,
|
|
330
|
-
noOpSSRInlineScript = _this$props.noOpSSRInlineScript,
|
|
331
|
-
allowHeadingAnchorLinks = _this$props.allowHeadingAnchorLinks,
|
|
332
|
-
allowPlaceholderText = _this$props.allowPlaceholderText,
|
|
333
|
-
allowColumnSorting = _this$props.allowColumnSorting,
|
|
334
|
-
allowCopyToClipboard = _this$props.allowCopyToClipboard,
|
|
335
|
-
allowWrapCodeBlock = _this$props.allowWrapCodeBlock,
|
|
336
|
-
allowCustomPanels = _this$props.allowCustomPanels,
|
|
337
|
-
media = _this$props.media,
|
|
338
|
-
skipValidation = _this$props.skipValidation;
|
|
339
|
-
var rendererContext = this.createRendererContext(this.props.featureFlags, this.props.isTopLevelRenderer);
|
|
340
|
-
var allowNestedHeaderLinks = (0, _links.isNestedHeaderLinksEnabled)(allowHeadingAnchorLinks);
|
|
341
|
-
/**
|
|
342
|
-
* Handle clicks inside renderer. If the click isn't on media, in the media picker, or on a
|
|
343
|
-
* link, call the onUnhandledClick eventHandler (which in Jira for example, may switch the
|
|
344
|
-
* renderer out for the editor).
|
|
345
|
-
* @param event Click event anywhere inside renderer
|
|
346
|
-
*/
|
|
347
|
-
var handleWrapperOnClick = function handleWrapperOnClick(event) {
|
|
348
|
-
var _this3$props$eventHan;
|
|
349
|
-
// Ignored via go/ees005
|
|
350
|
-
// eslint-disable-next-line @atlaskit/editor/no-as-casting
|
|
351
|
-
var targetElement = event.target;
|
|
352
|
-
|
|
353
|
-
// ED-14862: When a user triple clicks to select a line of content inside a
|
|
354
|
-
// a table cell, but the browser incorrectly moves the selection start or end into
|
|
355
|
-
// a different table cell, we manually set the selection back to within the original
|
|
356
|
-
// table cell the user intended to target
|
|
357
|
-
_this3.handleMouseTripleClickInTables(event);
|
|
358
|
-
if (!((_this3$props$eventHan = _this3.props.eventHandlers) !== null && _this3$props$eventHan !== void 0 && _this3$props$eventHan.onUnhandledClick)) {
|
|
359
|
-
return;
|
|
360
|
-
}
|
|
361
|
-
if (!(targetElement instanceof window.Element)) {
|
|
362
|
-
return;
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
// Ignored via go/ees005
|
|
366
|
-
// eslint-disable-next-line @atlaskit/editor/no-as-casting
|
|
367
|
-
var rendererWrapper = event.currentTarget;
|
|
368
|
-
|
|
369
|
-
// Check if the click was on an interactive element
|
|
370
|
-
var isInteractiveElementInTree = (0, _utils2.findInTree)(targetElement, rendererWrapper, _clickToEdit.isInteractiveElement);
|
|
371
|
-
if (isInteractiveElementInTree) {
|
|
372
|
-
return;
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
// Ensure that selecting text in the renderer doesn't trigger onUnhandledClick
|
|
376
|
-
// This logic originated in jira-frontend:
|
|
377
|
-
// src/packages/issue/issue-view/src/views/field/rich-text/rich-text-inline-edit-view.js
|
|
378
|
-
|
|
379
|
-
// The selection is required to be checked in `onMouseDown` and here. If not here, a new
|
|
380
|
-
// selection isn't reported; if not in `onMouseDown`, a click outside the selection will
|
|
381
|
-
// return an empty selection, which will erroneously fire onUnhandledClick.
|
|
382
|
-
var windowSelection = window.getSelection();
|
|
383
|
-
var selection = windowSelection !== null ? windowSelection.toString() : undefined;
|
|
384
|
-
var hasSelection = selection && selection.length !== 0;
|
|
385
|
-
var hasSelectionMouseDown = _this3.mouseDownSelection && _this3.mouseDownSelection.length !== 0;
|
|
386
|
-
var allowEditBasedOnSelection = !hasSelection && !hasSelectionMouseDown;
|
|
387
|
-
if (allowEditBasedOnSelection) {
|
|
388
|
-
_this3.props.eventHandlers.onUnhandledClick(event);
|
|
389
|
-
}
|
|
390
|
-
};
|
|
391
|
-
try {
|
|
392
|
-
var _rendererContext$feat;
|
|
393
|
-
var schema = this.getSchema(this.props.schema, this.props.adfStage);
|
|
394
|
-
var _renderDocument = (0, _.renderDocument)(this.props.shouldRemoveEmptySpaceAroundContent ? (0, _rendererHelper.removeEmptySpaceAroundContent)(adfDocument) : adfDocument, this.serializer, schema, adfStage, this.props.useSpecBasedValidator, this.id, this.fireAnalyticsEvent, this.props.unsupportedContentLevelsTracking, this.props.appearance, this.props.includeNodesCountInStats, skipValidation),
|
|
395
|
-
result = _renderDocument.result,
|
|
396
|
-
stat = _renderDocument.stat,
|
|
397
|
-
pmDoc = _renderDocument.pmDoc;
|
|
398
|
-
if (onComplete) {
|
|
399
|
-
onComplete(stat);
|
|
400
|
-
}
|
|
401
|
-
var rendererOutput = (0, _react2.jsx)(_rendererContext.RendererContextProvider, {
|
|
402
|
-
value: rendererContext
|
|
403
|
-
}, (0, _react2.jsx)(_activeHeaderIdProvider.ActiveHeaderIdProvider, {
|
|
404
|
-
value: (0, _links.getActiveHeadingId)(allowHeadingAnchorLinks)
|
|
405
|
-
}, (0, _react2.jsx)(_analyticsContext.default.Provider, {
|
|
406
|
-
value: {
|
|
407
|
-
fireAnalyticsEvent: function fireAnalyticsEvent(event) {
|
|
408
|
-
return _this3.fireAnalyticsEvent(event);
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
}, (0, _react2.jsx)(_SmartCardStorage.Provider, null, (0, _react2.jsx)(_providerFactory.ProviderFactoryProvider, {
|
|
412
|
-
value: this.providerFactory
|
|
413
|
-
}, (0, _react2.jsx)(RendererWrapper, {
|
|
414
|
-
allowAnnotations: allowAnnotations,
|
|
415
|
-
appearance: appearance,
|
|
416
|
-
allowNestedHeaderLinks: allowNestedHeaderLinks,
|
|
417
|
-
allowColumnSorting: allowColumnSorting,
|
|
418
|
-
allowCopyToClipboard: allowCopyToClipboard,
|
|
419
|
-
allowWrapCodeBlock: allowWrapCodeBlock,
|
|
420
|
-
allowCustomPanels: allowCustomPanels,
|
|
421
|
-
allowPlaceholderText: allowPlaceholderText,
|
|
422
|
-
useBlockRenderForCodeBlock: (_rendererContext$feat = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat !== void 0 ? _rendererContext$feat : true,
|
|
423
|
-
addTelepointer: this.props.addTelepointer,
|
|
424
|
-
innerRef: this.editorRef,
|
|
425
|
-
onClick: handleWrapperOnClick,
|
|
426
|
-
onMouseDown: this.onMouseDownEditView,
|
|
427
|
-
ssr: media === null || media === void 0 ? void 0 : media.ssr,
|
|
428
|
-
isInsideOfInlineExtension: this.props.isInsideOfInlineExtension,
|
|
429
|
-
isTopLevelRenderer: rendererContext.isTopLevelRenderer
|
|
430
|
-
}, enableSsrInlineScripts || noOpSSRInlineScript ? (0, _react2.jsx)(_breakoutSsr.BreakoutSSRInlineScript, {
|
|
431
|
-
noOpSSRInlineScript: Boolean(noOpSSRInlineScript)
|
|
432
|
-
}) : null, (0, _react2.jsx)(RendererActionsInternalUpdater, {
|
|
433
|
-
doc: pmDoc,
|
|
434
|
-
schema: schema,
|
|
435
|
-
onAnalyticsEvent: this.fireAnalyticsEvent
|
|
436
|
-
}, result)))))));
|
|
437
|
-
var rendererResult = truncated ? (0, _react2.jsx)(_truncatedWrapper.TruncatedWrapper, {
|
|
438
|
-
height: maxHeight,
|
|
439
|
-
fadeHeight: fadeOutHeight
|
|
440
|
-
}, rendererOutput) : rendererOutput;
|
|
441
|
-
return (0, _react2.jsx)(_react.Fragment, null, rendererResult);
|
|
442
|
-
} catch (e) {
|
|
443
|
-
var _rendererContext$feat2;
|
|
444
|
-
if (onError) {
|
|
445
|
-
onError(e);
|
|
446
|
-
}
|
|
447
|
-
return (0, _react2.jsx)(RendererWrapper, {
|
|
448
|
-
allowAnnotations: allowAnnotations,
|
|
449
|
-
appearance: appearance,
|
|
450
|
-
allowCopyToClipboard: allowCopyToClipboard,
|
|
451
|
-
allowWrapCodeBlock: allowWrapCodeBlock,
|
|
452
|
-
allowPlaceholderText: allowPlaceholderText,
|
|
453
|
-
allowColumnSorting: allowColumnSorting,
|
|
454
|
-
allowNestedHeaderLinks: allowNestedHeaderLinks,
|
|
455
|
-
useBlockRenderForCodeBlock: (_rendererContext$feat2 = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat2 !== void 0 ? _rendererContext$feat2 : true,
|
|
456
|
-
addTelepointer: this.props.addTelepointer,
|
|
457
|
-
onClick: handleWrapperOnClick,
|
|
458
|
-
isTopLevelRenderer: rendererContext.isTopLevelRenderer
|
|
459
|
-
}, (0, _react2.jsx)(_ui.UnsupportedBlock, null));
|
|
460
|
-
}
|
|
461
|
-
}
|
|
462
|
-
}, {
|
|
463
|
-
key: "componentWillUnmount",
|
|
464
|
-
value: function componentWillUnmount() {
|
|
465
|
-
var dataProviders = this.props.dataProviders;
|
|
466
|
-
if (this.rafID) {
|
|
467
|
-
window.cancelAnimationFrame(this.rafID);
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
// if this is the ProviderFactory which was created in constructor
|
|
471
|
-
// it's safe to destroy it on Renderer unmount
|
|
472
|
-
if (!dataProviders) {
|
|
473
|
-
this.providerFactory.destroy();
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
}]);
|
|
477
|
-
}(_react.PureComponent);
|
|
478
68
|
var handleMouseTripleClickInTables = function handleMouseTripleClickInTables(event) {
|
|
479
|
-
var
|
|
69
|
+
var _parentElement, _parentElement2;
|
|
480
70
|
if (_browser.browser.ios || _browser.browser.android) {
|
|
481
71
|
return;
|
|
482
72
|
}
|
|
@@ -525,9 +115,9 @@ var handleMouseTripleClickInTables = function handleMouseTripleClickInTables(eve
|
|
|
525
115
|
|
|
526
116
|
var elementToSelect = anchorInCell ? // Ignored via go/ees005
|
|
527
117
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
528
|
-
(
|
|
118
|
+
(_parentElement = anchorNode.parentElement) === null || _parentElement === void 0 ? void 0 : _parentElement.closest('div,p') : focusInCell ? // Ignored via go/ees005
|
|
529
119
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
530
|
-
(
|
|
120
|
+
(_parentElement2 = focusNode.parentElement) === null || _parentElement2 === void 0 ? void 0 : _parentElement2.closest('div,p') : tableCell;
|
|
531
121
|
if (elementToSelect) {
|
|
532
122
|
selection.selectAllChildren(elementToSelect);
|
|
533
123
|
}
|
|
@@ -581,7 +171,11 @@ var handleWrapperOnClick = function handleWrapperOnClick(event, props, mouseDown
|
|
|
581
171
|
props.eventHandlers.onUnhandledClick(event);
|
|
582
172
|
}
|
|
583
173
|
};
|
|
584
|
-
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Exported due to enzyme test reliance on this component.
|
|
177
|
+
*/
|
|
178
|
+
var RendererFunctionalComponent = exports.RendererFunctionalComponent = function RendererFunctionalComponent(props) {
|
|
585
179
|
var createAnalyticsEvent = props.createAnalyticsEvent;
|
|
586
180
|
var mouseDownSelection = (0, _react.useRef)(undefined);
|
|
587
181
|
var providerFactory = (0, _react.useMemo)(function () {
|
|
@@ -729,9 +323,9 @@ var RendererFunctionalComponent = function RendererFunctionalComponent(props) {
|
|
|
729
323
|
});
|
|
730
324
|
rafID = requestAnimationFrame(function () {
|
|
731
325
|
(0, _performanceMeasures.stopMeasure)("Renderer Render Time: ".concat(id), function (duration) {
|
|
732
|
-
var
|
|
326
|
+
var _analyticsEventSeveri, _analyticsEventSeveri2;
|
|
733
327
|
var forceSeverityTracking = typeof analyticsEventSeverityTracking === 'undefined' && (0, _utils.shouldForceTracking)();
|
|
734
|
-
var severity = !!forceSeverityTracking || analyticsEventSeverityTracking !== null && analyticsEventSeverityTracking !== void 0 && analyticsEventSeverityTracking.enabled ? (0, _utils.getAnalyticsEventSeverity)(duration, (
|
|
328
|
+
var severity = !!forceSeverityTracking || analyticsEventSeverityTracking !== null && analyticsEventSeverityTracking !== void 0 && analyticsEventSeverityTracking.enabled ? (0, _utils.getAnalyticsEventSeverity)(duration, (_analyticsEventSeveri = analyticsEventSeverityTracking === null || analyticsEventSeverityTracking === void 0 ? void 0 : analyticsEventSeverityTracking.severityNormalThreshold) !== null && _analyticsEventSeveri !== void 0 ? _analyticsEventSeveri : NORMAL_SEVERITY_THRESHOLD, (_analyticsEventSeveri2 = analyticsEventSeverityTracking === null || analyticsEventSeverityTracking === void 0 ? void 0 : analyticsEventSeverityTracking.severityDegradedThreshold) !== null && _analyticsEventSeveri2 !== void 0 ? _analyticsEventSeveri2 : DEGRADED_SEVERITY_THRESHOLD) : undefined;
|
|
735
329
|
var isTTRTrackingExplicitlyDisabled = (analyticsEventSeverityTracking === null || analyticsEventSeverityTracking === void 0 ? void 0 : analyticsEventSeverityTracking.enabled) === false;
|
|
736
330
|
if (!isTTRTrackingExplicitlyDisabled) {
|
|
737
331
|
_fireAnalyticsEvent({
|
|
@@ -775,18 +369,21 @@ var RendererFunctionalComponent = function RendererFunctionalComponent(props) {
|
|
|
775
369
|
// having a dependency array means we run stopMeasure twice per render
|
|
776
370
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
777
371
|
}, []);
|
|
372
|
+
var rendererContext = (0, _react.useMemo)(function () {
|
|
373
|
+
return createRendererContext(props.featureFlags, props.isTopLevelRenderer);
|
|
374
|
+
}, [props.featureFlags, props.isTopLevelRenderer, createRendererContext]);
|
|
778
375
|
try {
|
|
779
|
-
var
|
|
376
|
+
var _rendererContext$feat, _props$media;
|
|
780
377
|
var schema = getSchema(props.schema, props.adfStage);
|
|
781
|
-
var
|
|
782
|
-
result =
|
|
783
|
-
stat =
|
|
784
|
-
pmDoc =
|
|
378
|
+
var _renderDocument = (0, _.renderDocument)(props.shouldRemoveEmptySpaceAroundContent ? (0, _rendererHelper.removeEmptySpaceAroundContent)(props.document) : props.document, serializer, schema, props.adfStage, props.useSpecBasedValidator, id, _fireAnalyticsEvent, props.unsupportedContentLevelsTracking, props.appearance, props.includeNodesCountInStats, props.skipValidation),
|
|
379
|
+
result = _renderDocument.result,
|
|
380
|
+
stat = _renderDocument.stat,
|
|
381
|
+
pmDoc = _renderDocument.pmDoc;
|
|
785
382
|
if (props.onComplete) {
|
|
786
383
|
props.onComplete(stat);
|
|
787
384
|
}
|
|
788
385
|
var rendererOutput = (0, _react2.jsx)(_rendererContext.RendererContextProvider, {
|
|
789
|
-
value:
|
|
386
|
+
value: rendererContext
|
|
790
387
|
}, (0, _react2.jsx)(_activeHeaderIdProvider.ActiveHeaderIdProvider, {
|
|
791
388
|
value: (0, _links.getActiveHeadingId)(props.allowHeadingAnchorLinks)
|
|
792
389
|
}, (0, _react2.jsx)(_analyticsContext.default.Provider, {
|
|
@@ -806,7 +403,7 @@ var RendererFunctionalComponent = function RendererFunctionalComponent(props) {
|
|
|
806
403
|
allowWrapCodeBlock: props.allowWrapCodeBlock,
|
|
807
404
|
allowCustomPanels: props.allowCustomPanels,
|
|
808
405
|
allowPlaceholderText: props.allowPlaceholderText,
|
|
809
|
-
useBlockRenderForCodeBlock: (
|
|
406
|
+
useBlockRenderForCodeBlock: (_rendererContext$feat = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat !== void 0 ? _rendererContext$feat : true,
|
|
810
407
|
addTelepointer: props.addTelepointer,
|
|
811
408
|
innerRef: editorRef,
|
|
812
409
|
onClick: function onClick(event) {
|
|
@@ -815,7 +412,7 @@ var RendererFunctionalComponent = function RendererFunctionalComponent(props) {
|
|
|
815
412
|
onMouseDown: onMouseDownEditView,
|
|
816
413
|
ssr: (_props$media = props.media) === null || _props$media === void 0 ? void 0 : _props$media.ssr,
|
|
817
414
|
isInsideOfInlineExtension: props.isInsideOfInlineExtension,
|
|
818
|
-
isTopLevelRenderer:
|
|
415
|
+
isTopLevelRenderer: rendererContext.isTopLevelRenderer,
|
|
819
416
|
shouldRemoveEmptySpaceAroundContent: props.shouldRemoveEmptySpaceAroundContent
|
|
820
417
|
}, props.enableSsrInlineScripts || props.noOpSSRInlineScript ? (0, _react2.jsx)(_breakoutSsr.BreakoutSSRInlineScript, {
|
|
821
418
|
noOpSSRInlineScript: Boolean(props.noOpSSRInlineScript)
|
|
@@ -830,7 +427,7 @@ var RendererFunctionalComponent = function RendererFunctionalComponent(props) {
|
|
|
830
427
|
}, rendererOutput) : rendererOutput;
|
|
831
428
|
return (0, _react2.jsx)(_react.Fragment, null, rendererResult);
|
|
832
429
|
} catch (e) {
|
|
833
|
-
var
|
|
430
|
+
var _rendererContext$feat2;
|
|
834
431
|
if (props.onError) {
|
|
835
432
|
props.onError(e);
|
|
836
433
|
}
|
|
@@ -842,12 +439,12 @@ var RendererFunctionalComponent = function RendererFunctionalComponent(props) {
|
|
|
842
439
|
allowPlaceholderText: props.allowPlaceholderText,
|
|
843
440
|
allowColumnSorting: props.allowColumnSorting,
|
|
844
441
|
allowNestedHeaderLinks: (0, _links.isNestedHeaderLinksEnabled)(props.allowHeadingAnchorLinks),
|
|
845
|
-
useBlockRenderForCodeBlock: (
|
|
442
|
+
useBlockRenderForCodeBlock: (_rendererContext$feat2 = rendererContext.featureFlags.useBlockRenderForCodeBlock) !== null && _rendererContext$feat2 !== void 0 ? _rendererContext$feat2 : true,
|
|
846
443
|
addTelepointer: props.addTelepointer,
|
|
847
444
|
onClick: function onClick(event) {
|
|
848
445
|
return handleWrapperOnClick(event, props, mouseDownSelection);
|
|
849
446
|
},
|
|
850
|
-
isTopLevelRenderer:
|
|
447
|
+
isTopLevelRenderer: rendererContext.isTopLevelRenderer
|
|
851
448
|
}, (0, _react2.jsx)(_ui.UnsupportedBlock, null));
|
|
852
449
|
}
|
|
853
450
|
};
|
|
@@ -858,16 +455,7 @@ function Renderer(props) {
|
|
|
858
455
|
isTopLevelRenderer = _useRendererContext.isTopLevelRenderer;
|
|
859
456
|
var _ref = (0, _react.useContext)(_ValidationContext.ValidationContext) || {},
|
|
860
457
|
skipValidation = _ref.skipValidation;
|
|
861
|
-
return (0,
|
|
862
|
-
// Ignored via go/ees005
|
|
863
|
-
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
864
|
-
, (0, _extends2.default)({}, props, {
|
|
865
|
-
startPos: startPos,
|
|
866
|
-
isTopLevelRenderer: isTopLevelRenderer,
|
|
867
|
-
skipValidation: skipValidation
|
|
868
|
-
})) :
|
|
869
|
-
// eslint-disable-next-line react/jsx-pascal-case
|
|
870
|
-
(0, _react2.jsx)(__RendererClassComponent
|
|
458
|
+
return (0, _react2.jsx)(RendererFunctionalComponent
|
|
871
459
|
// Ignored via go/ees005
|
|
872
460
|
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
873
461
|
, (0, _extends2.default)({}, props, {
|
|
@@ -63,6 +63,22 @@ var SelectionInlineCommentMounter = exports.SelectionInlineCommentMounter = /*#_
|
|
|
63
63
|
// but we want to prioritize draft positions if they are being used by consumers
|
|
64
64
|
var positionToAnnotate = draftDocumentPosition || documentPosition;
|
|
65
65
|
if (!positionToAnnotate || !applyAnnotation) {
|
|
66
|
+
// TODO: EDITOR-595 - This analytic event is temporary and should be removed once the following issue
|
|
67
|
+
// has been identified and fixed: https://atlassian.slack.com/archives/C08JK0WSCH5/p1745902609966999
|
|
68
|
+
if (createAnalyticsEvent && (0, _platformFeatureFlags.fg)('platform_renderer_annotations_create_debug_logging')) {
|
|
69
|
+
createAnalyticsEvent({
|
|
70
|
+
action: 'failed',
|
|
71
|
+
actionSubject: 'applyAnnotation',
|
|
72
|
+
actionSubjectId: 'inlineCommentFailureReason',
|
|
73
|
+
attributes: {
|
|
74
|
+
reason: 'Annotation Position invalid',
|
|
75
|
+
draftDocumentPosition: draftDocumentPosition,
|
|
76
|
+
documentPosition: documentPosition,
|
|
77
|
+
applyAnnotation: !!applyAnnotation
|
|
78
|
+
},
|
|
79
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
80
|
+
}).fire(_types.FabricChannel.editor);
|
|
81
|
+
}
|
|
66
82
|
return false;
|
|
67
83
|
}
|
|
68
84
|
|