@atlaskit/editor-common 111.12.5 → 111.12.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 +14 -0
- package/dist/cjs/monitoring/error.js +1 -1
- package/dist/cjs/ui/DropList/index.js +1 -1
- package/dist/cjs/ui/HoverLinkOverlay/index.js +9 -186
- package/dist/cjs/utils/compareNodes.js +2 -2
- package/dist/es2019/monitoring/error.js +1 -1
- package/dist/es2019/ui/DropList/index.js +1 -1
- package/dist/es2019/ui/HoverLinkOverlay/index.js +9 -170
- package/dist/esm/monitoring/error.js +1 -1
- package/dist/esm/ui/DropList/index.js +1 -1
- package/dist/esm/ui/HoverLinkOverlay/index.js +9 -186
- package/dist/esm/utils/compareNodes.js +2 -2
- package/dist/types/ui/HoverLinkOverlay/index.d.ts +2 -1
- package/dist/types-ts4.5/ui/HoverLinkOverlay/index.d.ts +2 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @atlaskit/editor-common
|
|
2
2
|
|
|
3
|
+
## 111.12.7
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`a5a1710c6da4a`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/a5a1710c6da4a) -
|
|
8
|
+
Clean up of platform_editor_hoverlink_ui_fixes_exp
|
|
9
|
+
- Updated dependencies
|
|
10
|
+
|
|
11
|
+
## 111.12.6
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- Updated dependencies
|
|
16
|
+
|
|
3
17
|
## 111.12.5
|
|
4
18
|
|
|
5
19
|
### Patch Changes
|
|
@@ -19,7 +19,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
19
19
|
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); }
|
|
20
20
|
var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
21
21
|
var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
22
|
-
var packageVersion = "111.12.
|
|
22
|
+
var packageVersion = "111.12.6";
|
|
23
23
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
24
24
|
// Remove URL as it has UGC
|
|
25
25
|
// Ignored via go/ees007
|
|
@@ -24,7 +24,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
24
24
|
* @jsx jsx
|
|
25
25
|
*/ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
26
26
|
var packageName = "@atlaskit/editor-common";
|
|
27
|
-
var packageVersion = "111.12.
|
|
27
|
+
var packageVersion = "111.12.6";
|
|
28
28
|
var halfFocusRing = 1;
|
|
29
29
|
var dropOffset = '0, 8';
|
|
30
30
|
var fadeIn = (0, _react2.keyframes)({
|
|
@@ -16,7 +16,6 @@ var _growDiagonal = _interopRequireDefault(require("@atlaskit/icon/core/grow-dia
|
|
|
16
16
|
var _linkExternal = _interopRequireDefault(require("@atlaskit/icon/core/link-external"));
|
|
17
17
|
var _panelRight = _interopRequireDefault(require("@atlaskit/icon/core/panel-right"));
|
|
18
18
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
19
|
-
var _platformFeatureFlagsReact = require("@atlaskit/platform-feature-flags-react");
|
|
20
19
|
var _primitives = require("@atlaskit/primitives");
|
|
21
20
|
var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
|
|
22
21
|
var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
@@ -42,25 +41,16 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
42
41
|
* Otherwise, uses default value with token('space.025').
|
|
43
42
|
*/
|
|
44
43
|
var DYNAMIC_PADDING_BLOCK = "clamp(1px, calc((var(--ak-editor-base-font-size, ".concat(_editorSharedStyles.akEditorFullPageDefaultFontSize, "px) - ").concat(_editorSharedStyles.akEditorFullPageDenseFontSize, "px) * 999), ", "var(--ds-space-025, 2px)", ")");
|
|
45
|
-
var containerStylesOld = (0, _react2.css)({
|
|
46
|
-
position: 'relative'
|
|
47
|
-
});
|
|
48
44
|
var containerStyles = (0, _react2.css)({
|
|
49
|
-
position: 'relative'
|
|
50
|
-
whiteSpace: 'nowrap'
|
|
45
|
+
position: 'relative'
|
|
51
46
|
});
|
|
52
|
-
var
|
|
47
|
+
var iconWrapperStyles = (0, _primitives.xcss)({
|
|
53
48
|
display: 'inline-flex',
|
|
54
49
|
justifyContent: 'center',
|
|
55
50
|
alignItems: 'center',
|
|
56
51
|
height: '17px',
|
|
57
52
|
width: '17px'
|
|
58
53
|
});
|
|
59
|
-
var iconWrapperStyles = (0, _primitives.xcss)({
|
|
60
|
-
display: 'inline-flex',
|
|
61
|
-
justifyContent: 'center',
|
|
62
|
-
alignItems: 'center'
|
|
63
|
-
});
|
|
64
54
|
var hiddenTextStyle = (0, _react2.css)({
|
|
65
55
|
overflow: 'hidden',
|
|
66
56
|
whiteSpace: 'nowrap',
|
|
@@ -83,37 +73,18 @@ var linkStylesCommon = (0, _primitives.xcss)({
|
|
|
83
73
|
color: 'color.text.subtle',
|
|
84
74
|
textDecoration: 'none',
|
|
85
75
|
whiteSpace: 'nowrap',
|
|
76
|
+
top: '0px',
|
|
77
|
+
height: '1.2em',
|
|
86
78
|
':hover': {
|
|
87
79
|
backgroundColor: 'elevation.surface.hovered',
|
|
88
80
|
color: 'color.text.subtle',
|
|
89
81
|
textDecoration: 'none'
|
|
90
82
|
}
|
|
91
83
|
});
|
|
92
|
-
var linkStylesOld = (0, _primitives.xcss)({
|
|
93
|
-
top: '-1px'
|
|
94
|
-
});
|
|
95
|
-
var linkStylesHeightFix = (0, _primitives.xcss)({
|
|
96
|
-
top: '0px',
|
|
97
|
-
height: '1.2em'
|
|
98
|
-
});
|
|
99
|
-
var linkStylesNewWithHeightFix = (0, _primitives.xcss)({
|
|
100
|
-
top: '0px',
|
|
101
|
-
visibility: 'hidden',
|
|
102
|
-
height: '1.2em'
|
|
103
|
-
});
|
|
104
|
-
var linkStylesVisible = (0, _primitives.xcss)({
|
|
105
|
-
visibility: 'visible'
|
|
106
|
-
});
|
|
107
|
-
var iconAndLabelStyles = (0, _primitives.xcss)({
|
|
108
|
-
display: 'flex',
|
|
109
|
-
alignItems: 'center',
|
|
110
|
-
height: '100%',
|
|
111
|
-
gap: 'space.025'
|
|
112
|
-
});
|
|
113
84
|
var MIN_AVAILABLE_SPACE_WITH_LABEL_OVERLAY = 45;
|
|
114
85
|
var ICON_WIDTH = 16;
|
|
115
86
|
var DEFAULT_OPEN_TEXT_WIDTH = 28; // Default open text width in English
|
|
116
|
-
|
|
87
|
+
|
|
117
88
|
var visitCardLinkAnalytics = function visitCardLinkAnalytics(editorAnalyticsApi, inputMethod) {
|
|
118
89
|
return function (state, dispatch) {
|
|
119
90
|
if (!(state.selection instanceof _state.NodeSelection)) {
|
|
@@ -128,7 +99,7 @@ var visitCardLinkAnalytics = function visitCardLinkAnalytics(editorAnalyticsApi,
|
|
|
128
99
|
return true;
|
|
129
100
|
};
|
|
130
101
|
};
|
|
131
|
-
var
|
|
102
|
+
var HoverLinkOverlay = function HoverLinkOverlay(_ref) {
|
|
132
103
|
var children = _ref.children,
|
|
133
104
|
_ref$isVisible = _ref.isVisible,
|
|
134
105
|
isVisible = _ref$isVisible === void 0 ? false : _ref$isVisible,
|
|
@@ -248,7 +219,7 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
248
219
|
}
|
|
249
220
|
return (0, _react2.jsx)("span", {
|
|
250
221
|
ref: containerRef,
|
|
251
|
-
css:
|
|
222
|
+
css: containerStyles,
|
|
252
223
|
onDoubleClick: handleDoubleClick
|
|
253
224
|
// eslint-disable-next-line @atlassian/a11y/mouse-events-have-key-events
|
|
254
225
|
,
|
|
@@ -269,7 +240,7 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
269
240
|
maxLines: 1
|
|
270
241
|
}, label)), isHovered && (0, _react2.jsx)(_primitives.Anchor, {
|
|
271
242
|
ref: hoverLinkButtonRef,
|
|
272
|
-
xcss:
|
|
243
|
+
xcss: linkStylesCommon,
|
|
273
244
|
href: url,
|
|
274
245
|
target: "_blank",
|
|
275
246
|
style: {
|
|
@@ -278,7 +249,7 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
278
249
|
onClick: handleClick,
|
|
279
250
|
testId: "inline-card-hoverlink-overlay"
|
|
280
251
|
}, (0, _react2.jsx)(_primitives.Box, {
|
|
281
|
-
xcss:
|
|
252
|
+
xcss: iconWrapperStyles,
|
|
282
253
|
"data-inlinecard-button-overlay": "icon-wrapper-line-height",
|
|
283
254
|
testId: "inline-card-hoverlink-overlay-icon"
|
|
284
255
|
}, icon), showLabel && (0, _react2.jsx)(_primitives.Text, {
|
|
@@ -288,152 +259,4 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
288
259
|
testId: "inline-card-hoverlink-overlay-label"
|
|
289
260
|
}, label)));
|
|
290
261
|
};
|
|
291
|
-
var HoverLinkOverlayNew = function HoverLinkOverlayNew(_ref2) {
|
|
292
|
-
var children = _ref2.children,
|
|
293
|
-
_ref2$isVisible = _ref2.isVisible,
|
|
294
|
-
isVisible = _ref2$isVisible === void 0 ? false : _ref2$isVisible,
|
|
295
|
-
url = _ref2.url,
|
|
296
|
-
_ref2$compactPadding = _ref2.compactPadding,
|
|
297
|
-
compactPadding = _ref2$compactPadding === void 0 ? false : _ref2$compactPadding,
|
|
298
|
-
editorAnalyticsApi = _ref2.editorAnalyticsApi,
|
|
299
|
-
view = _ref2.view,
|
|
300
|
-
onClick = _ref2.onClick,
|
|
301
|
-
_ref2$showPanelButton = _ref2.showPanelButton,
|
|
302
|
-
showPanelButton = _ref2$showPanelButton === void 0 ? false : _ref2$showPanelButton,
|
|
303
|
-
showPanelButtonIcon = _ref2.showPanelButtonIcon;
|
|
304
|
-
var _useIntl2 = (0, _reactIntlNext.useIntl)(),
|
|
305
|
-
formatMessage = _useIntl2.formatMessage;
|
|
306
|
-
var containerRef = (0, _react.useRef)(null);
|
|
307
|
-
var iconRef = (0, _react.useRef)(null);
|
|
308
|
-
var iconLeftRef = (0, _react.useRef)(0);
|
|
309
|
-
var iconAndLabelRef = (0, _react.useRef)(null);
|
|
310
|
-
var minMaxWidthRef = (0, _react.useRef)();
|
|
311
|
-
var _useState5 = (0, _react.useState)(false),
|
|
312
|
-
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
313
|
-
showLabel = _useState6[0],
|
|
314
|
-
setShowLabel = _useState6[1];
|
|
315
|
-
var _useState7 = (0, _react.useState)(false),
|
|
316
|
-
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
317
|
-
isHovered = _useState8[0],
|
|
318
|
-
setHovered = _useState8[1];
|
|
319
|
-
var _useState9 = (0, _react.useState)(false),
|
|
320
|
-
_useState0 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
321
|
-
showOverlay = _useState0[0],
|
|
322
|
-
setShowOverlay = _useState0[1];
|
|
323
|
-
(0, _react.useLayoutEffect)(function () {
|
|
324
|
-
if (!isVisible && !isHovered) {
|
|
325
|
-
return;
|
|
326
|
-
}
|
|
327
|
-
if (!containerRef.current) {
|
|
328
|
-
return;
|
|
329
|
-
}
|
|
330
|
-
if (iconRef.current && iconAndLabelRef.current) {
|
|
331
|
-
var iconRect = iconRef.current.getBoundingClientRect();
|
|
332
|
-
iconLeftRef.current = iconRect.left;
|
|
333
|
-
minMaxWidthRef.current = {
|
|
334
|
-
min: iconRect.width,
|
|
335
|
-
max: iconAndLabelRef.current.getBoundingClientRect().width
|
|
336
|
-
};
|
|
337
|
-
}
|
|
338
|
-
if (!iconLeftRef.current || !minMaxWidthRef.current) {
|
|
339
|
-
return;
|
|
340
|
-
}
|
|
341
|
-
var containerDomRect = containerRef.current.getBoundingClientRect();
|
|
342
|
-
var containerStyles = getComputedStyle(containerRef.current);
|
|
343
|
-
var containerHeight = containerDomRect.height - parseFloat(containerStyles.paddingTop) - parseFloat(containerStyles.paddingBottom) - parseFloat(containerStyles.borderTopWidth) - parseFloat(containerStyles.borderBottomWidth);
|
|
344
|
-
var oneLine = parseFloat(containerStyles.lineHeight) >= containerHeight;
|
|
345
|
-
var firstLineWidth = containerDomRect.right - iconLeftRef.current;
|
|
346
|
-
|
|
347
|
-
// We don't want HoverLinkOverlay to cover the entire card if it is oneline. It allows the user to click on the card itself.
|
|
348
|
-
var reservedWidth = oneLine ? MIN_CARD_WIDTH_NOT_COVERED_BY_OVERLAY : 0;
|
|
349
|
-
var availableWidth = firstLineWidth - reservedWidth;
|
|
350
|
-
|
|
351
|
-
// True when icon and label can be shown
|
|
352
|
-
setShowLabel(availableWidth >= minMaxWidthRef.current.max);
|
|
353
|
-
// True when at least an icon can be shown
|
|
354
|
-
setShowOverlay(availableWidth >= minMaxWidthRef.current.min);
|
|
355
|
-
}, [isVisible, isHovered]);
|
|
356
|
-
var handleOverlayChange = function handleOverlayChange(isHovered) {
|
|
357
|
-
setHovered(isHovered);
|
|
358
|
-
};
|
|
359
|
-
var sendVisitLinkAnalytics = function sendVisitLinkAnalytics(inputMethod) {
|
|
360
|
-
if (editorAnalyticsApi && view) {
|
|
361
|
-
visitCardLinkAnalytics(editorAnalyticsApi, inputMethod)(view.state, view.dispatch);
|
|
362
|
-
}
|
|
363
|
-
};
|
|
364
|
-
var handleDoubleClick = function handleDoubleClick() {
|
|
365
|
-
if (!showPanelButton) {
|
|
366
|
-
sendVisitLinkAnalytics(_analytics.INPUT_METHOD.DOUBLE_CLICK);
|
|
367
|
-
|
|
368
|
-
// Double click opens the link in a new tab
|
|
369
|
-
window.open(url, '_blank');
|
|
370
|
-
}
|
|
371
|
-
};
|
|
372
|
-
var handleClick = function handleClick(event) {
|
|
373
|
-
if (showPanelButton && onClick) {
|
|
374
|
-
onClick(event);
|
|
375
|
-
} else {
|
|
376
|
-
sendVisitLinkAnalytics(_analytics.INPUT_METHOD.BUTTON);
|
|
377
|
-
}
|
|
378
|
-
};
|
|
379
|
-
var isPreviewButton = showPanelButton && (0, _experiments.editorExperiment)('platform_editor_preview_panel_linking_exp', true);
|
|
380
|
-
var label = isPreviewButton ? formatMessage(_messages.cardMessages.previewButtonTitle) : formatMessage(_messages.cardMessages.openButtonTitle);
|
|
381
|
-
var icon = null;
|
|
382
|
-
if (isPreviewButton && showPanelButtonIcon === 'panel') {
|
|
383
|
-
icon = (0, _react2.jsx)(_panelRight.default, {
|
|
384
|
-
label: ""
|
|
385
|
-
});
|
|
386
|
-
} else if (isPreviewButton && showPanelButtonIcon === 'modal') {
|
|
387
|
-
icon = (0, _react2.jsx)(_growDiagonal.default, {
|
|
388
|
-
label: ""
|
|
389
|
-
});
|
|
390
|
-
} else {
|
|
391
|
-
icon = (0, _react2.jsx)(_linkExternal.default, {
|
|
392
|
-
label: ""
|
|
393
|
-
});
|
|
394
|
-
}
|
|
395
|
-
return (0, _react2.jsx)("span", {
|
|
396
|
-
ref: containerRef,
|
|
397
|
-
css: containerStyles,
|
|
398
|
-
onDoubleClick: handleDoubleClick,
|
|
399
|
-
onMouseEnter: function onMouseEnter() {
|
|
400
|
-
return handleOverlayChange(true);
|
|
401
|
-
},
|
|
402
|
-
onMouseLeave: function onMouseLeave() {
|
|
403
|
-
return handleOverlayChange(false);
|
|
404
|
-
},
|
|
405
|
-
role: "presentation" // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
406
|
-
,
|
|
407
|
-
onFocus: function onFocus() {} // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
408
|
-
,
|
|
409
|
-
onBlur: function onBlur() {} // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
410
|
-
}, isHovered && (0, _react2.jsx)(_primitives.Anchor, {
|
|
411
|
-
xcss: [linkStylesCommon, linkStylesNewWithHeightFix, showOverlay && linkStylesVisible],
|
|
412
|
-
href: url,
|
|
413
|
-
target: "_blank",
|
|
414
|
-
style: {
|
|
415
|
-
paddingBlock: compactPadding ? '1px' : (0, _expValEquals.expValEquals)('confluence_compact_text_format', 'isEnabled', true) || (0, _expValEquals.expValEquals)('cc_editor_ai_content_mode', 'variant', 'test') && (0, _platformFeatureFlags.fg)('platform_editor_content_mode_button_mvp') ? DYNAMIC_PADDING_BLOCK : "var(--ds-space-025, 2px)"
|
|
416
|
-
},
|
|
417
|
-
onClick: handleClick,
|
|
418
|
-
testId: "inline-card-hoverlink-overlay"
|
|
419
|
-
}, (0, _react2.jsx)(_primitives.Box, {
|
|
420
|
-
as: "span",
|
|
421
|
-
xcss: iconAndLabelStyles,
|
|
422
|
-
ref: iconAndLabelRef
|
|
423
|
-
}, (0, _react2.jsx)(_primitives.Box, {
|
|
424
|
-
ref: iconRef,
|
|
425
|
-
as: "span",
|
|
426
|
-
xcss: iconWrapperStyles,
|
|
427
|
-
"data-inlinecard-button-overlay": "icon-wrapper-line-height",
|
|
428
|
-
testId: "inline-card-hoverlink-overlay-icon"
|
|
429
|
-
}, icon), (showLabel || !minMaxWidthRef.current) && (0, _react2.jsx)(_primitives.Text, {
|
|
430
|
-
size: "small",
|
|
431
|
-
color: "color.text.subtle",
|
|
432
|
-
maxLines: 1,
|
|
433
|
-
testId: "inline-card-hoverlink-overlay-label"
|
|
434
|
-
}, label))), children);
|
|
435
|
-
};
|
|
436
|
-
var HoverLinkOverlay = (0, _platformFeatureFlagsReact.componentWithCondition)(function () {
|
|
437
|
-
return (0, _expValEquals.expValEquals)('platform_editor_hoverlink_ui_fixes_exp', 'cohort', 'css_js_changes');
|
|
438
|
-
}, HoverLinkOverlayNew, HoverLinkOverlayOriginal);
|
|
439
262
|
var _default = exports.default = HoverLinkOverlay;
|
|
@@ -42,10 +42,10 @@ function createNormalizeTextParser() {
|
|
|
42
42
|
var locale = window.navigator.language;
|
|
43
43
|
var thousandSeparator = Intl.NumberFormat(locale).format(11111)
|
|
44
44
|
// @ts-ignore - TS1501 TypeScript 5.9.2 upgrade
|
|
45
|
-
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
45
|
+
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDDE0-\uDDE9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96\uDFF4-\uDFF6]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
46
46
|
var decimalSeparator = Intl.NumberFormat(locale).format(1.1)
|
|
47
47
|
// @ts-ignore - TS1501 TypeScript 5.9.2 upgrade
|
|
48
|
-
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
48
|
+
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDDE0-\uDDE9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96\uDFF4-\uDFF6]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
49
49
|
|
|
50
50
|
// Ignored via go/ees005
|
|
51
51
|
// eslint-disable-next-line require-unicode-regexp
|
|
@@ -4,7 +4,7 @@ import { isFedRamp } from './environment';
|
|
|
4
4
|
import { normaliseSentryBreadcrumbs, SERIALIZABLE_ATTRIBUTES } from './normalise-sentry-breadcrumbs';
|
|
5
5
|
const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
6
6
|
const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
7
|
-
const packageVersion = "111.12.
|
|
7
|
+
const packageVersion = "111.12.6";
|
|
8
8
|
const sanitiseSentryEvents = (data, _hint) => {
|
|
9
9
|
// Remove URL as it has UGC
|
|
10
10
|
// Ignored via go/ees007
|
|
@@ -14,7 +14,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
|
|
|
14
14
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
15
15
|
import Layer from '../Layer';
|
|
16
16
|
const packageName = "@atlaskit/editor-common";
|
|
17
|
-
const packageVersion = "111.12.
|
|
17
|
+
const packageVersion = "111.12.6";
|
|
18
18
|
const halfFocusRing = 1;
|
|
19
19
|
const dropOffset = '0, 8';
|
|
20
20
|
const fadeIn = keyframes({
|
|
@@ -14,7 +14,6 @@ import GrowDiagonalIcon from '@atlaskit/icon/core/grow-diagonal';
|
|
|
14
14
|
import LinkExternalIcon from '@atlaskit/icon/core/link-external';
|
|
15
15
|
import PanelRightIcon from '@atlaskit/icon/core/panel-right';
|
|
16
16
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
17
|
-
import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
|
|
18
17
|
// eslint-disable-next-line @atlaskit/design-system/no-emotion-primitives -- to be migrated to @atlaskit/primitives/compiled – go/akcss
|
|
19
18
|
import { Anchor, Box, Text, xcss } from '@atlaskit/primitives';
|
|
20
19
|
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
@@ -27,25 +26,16 @@ import { cardMessages } from '../../messages';
|
|
|
27
26
|
* Otherwise, uses default value with token('space.025').
|
|
28
27
|
*/
|
|
29
28
|
const DYNAMIC_PADDING_BLOCK = `clamp(1px, calc((var(--ak-editor-base-font-size, ${akEditorFullPageDefaultFontSize}px) - ${akEditorFullPageDenseFontSize}px) * 999), ${"var(--ds-space-025, 2px)"})`;
|
|
30
|
-
const containerStylesOld = css({
|
|
31
|
-
position: 'relative'
|
|
32
|
-
});
|
|
33
29
|
const containerStyles = css({
|
|
34
|
-
position: 'relative'
|
|
35
|
-
whiteSpace: 'nowrap'
|
|
30
|
+
position: 'relative'
|
|
36
31
|
});
|
|
37
|
-
const
|
|
32
|
+
const iconWrapperStyles = xcss({
|
|
38
33
|
display: 'inline-flex',
|
|
39
34
|
justifyContent: 'center',
|
|
40
35
|
alignItems: 'center',
|
|
41
36
|
height: '17px',
|
|
42
37
|
width: '17px'
|
|
43
38
|
});
|
|
44
|
-
const iconWrapperStyles = xcss({
|
|
45
|
-
display: 'inline-flex',
|
|
46
|
-
justifyContent: 'center',
|
|
47
|
-
alignItems: 'center'
|
|
48
|
-
});
|
|
49
39
|
const hiddenTextStyle = css({
|
|
50
40
|
overflow: 'hidden',
|
|
51
41
|
whiteSpace: 'nowrap',
|
|
@@ -68,37 +58,18 @@ const linkStylesCommon = xcss({
|
|
|
68
58
|
color: 'color.text.subtle',
|
|
69
59
|
textDecoration: 'none',
|
|
70
60
|
whiteSpace: 'nowrap',
|
|
61
|
+
top: '0px',
|
|
62
|
+
height: '1.2em',
|
|
71
63
|
':hover': {
|
|
72
64
|
backgroundColor: 'elevation.surface.hovered',
|
|
73
65
|
color: 'color.text.subtle',
|
|
74
66
|
textDecoration: 'none'
|
|
75
67
|
}
|
|
76
68
|
});
|
|
77
|
-
const linkStylesOld = xcss({
|
|
78
|
-
top: '-1px'
|
|
79
|
-
});
|
|
80
|
-
const linkStylesHeightFix = xcss({
|
|
81
|
-
top: '0px',
|
|
82
|
-
height: '1.2em'
|
|
83
|
-
});
|
|
84
|
-
const linkStylesNewWithHeightFix = xcss({
|
|
85
|
-
top: '0px',
|
|
86
|
-
visibility: 'hidden',
|
|
87
|
-
height: '1.2em'
|
|
88
|
-
});
|
|
89
|
-
const linkStylesVisible = xcss({
|
|
90
|
-
visibility: 'visible'
|
|
91
|
-
});
|
|
92
|
-
const iconAndLabelStyles = xcss({
|
|
93
|
-
display: 'flex',
|
|
94
|
-
alignItems: 'center',
|
|
95
|
-
height: '100%',
|
|
96
|
-
gap: 'space.025'
|
|
97
|
-
});
|
|
98
69
|
const MIN_AVAILABLE_SPACE_WITH_LABEL_OVERLAY = 45;
|
|
99
70
|
const ICON_WIDTH = 16;
|
|
100
71
|
const DEFAULT_OPEN_TEXT_WIDTH = 28; // Default open text width in English
|
|
101
|
-
|
|
72
|
+
|
|
102
73
|
const visitCardLinkAnalytics = (editorAnalyticsApi, inputMethod) => (state, dispatch) => {
|
|
103
74
|
if (!(state.selection instanceof NodeSelection)) {
|
|
104
75
|
return false;
|
|
@@ -115,7 +86,7 @@ const visitCardLinkAnalytics = (editorAnalyticsApi, inputMethod) => (state, disp
|
|
|
115
86
|
}
|
|
116
87
|
return true;
|
|
117
88
|
};
|
|
118
|
-
const
|
|
89
|
+
const HoverLinkOverlay = ({
|
|
119
90
|
children,
|
|
120
91
|
isVisible = false,
|
|
121
92
|
url,
|
|
@@ -228,7 +199,7 @@ const HoverLinkOverlayOriginal = ({
|
|
|
228
199
|
}
|
|
229
200
|
return jsx("span", {
|
|
230
201
|
ref: containerRef,
|
|
231
|
-
css:
|
|
202
|
+
css: containerStyles,
|
|
232
203
|
onDoubleClick: handleDoubleClick
|
|
233
204
|
// eslint-disable-next-line @atlassian/a11y/mouse-events-have-key-events
|
|
234
205
|
,
|
|
@@ -245,7 +216,7 @@ const HoverLinkOverlayOriginal = ({
|
|
|
245
216
|
maxLines: 1
|
|
246
217
|
}, label)), isHovered && jsx(Anchor, {
|
|
247
218
|
ref: hoverLinkButtonRef,
|
|
248
|
-
xcss:
|
|
219
|
+
xcss: linkStylesCommon,
|
|
249
220
|
href: url,
|
|
250
221
|
target: "_blank",
|
|
251
222
|
style: {
|
|
@@ -254,7 +225,7 @@ const HoverLinkOverlayOriginal = ({
|
|
|
254
225
|
onClick: handleClick,
|
|
255
226
|
testId: "inline-card-hoverlink-overlay"
|
|
256
227
|
}, jsx(Box, {
|
|
257
|
-
xcss:
|
|
228
|
+
xcss: iconWrapperStyles,
|
|
258
229
|
"data-inlinecard-button-overlay": "icon-wrapper-line-height",
|
|
259
230
|
testId: "inline-card-hoverlink-overlay-icon"
|
|
260
231
|
}, icon), showLabel && jsx(Text, {
|
|
@@ -264,136 +235,4 @@ const HoverLinkOverlayOriginal = ({
|
|
|
264
235
|
testId: "inline-card-hoverlink-overlay-label"
|
|
265
236
|
}, label)));
|
|
266
237
|
};
|
|
267
|
-
const HoverLinkOverlayNew = ({
|
|
268
|
-
children,
|
|
269
|
-
isVisible = false,
|
|
270
|
-
url,
|
|
271
|
-
compactPadding = false,
|
|
272
|
-
editorAnalyticsApi,
|
|
273
|
-
view,
|
|
274
|
-
onClick,
|
|
275
|
-
showPanelButton = false,
|
|
276
|
-
showPanelButtonIcon
|
|
277
|
-
}) => {
|
|
278
|
-
const {
|
|
279
|
-
formatMessage
|
|
280
|
-
} = useIntl();
|
|
281
|
-
const containerRef = useRef(null);
|
|
282
|
-
const iconRef = useRef(null);
|
|
283
|
-
const iconLeftRef = useRef(0);
|
|
284
|
-
const iconAndLabelRef = useRef(null);
|
|
285
|
-
const minMaxWidthRef = useRef();
|
|
286
|
-
const [showLabel, setShowLabel] = useState(false);
|
|
287
|
-
const [isHovered, setHovered] = useState(false);
|
|
288
|
-
const [showOverlay, setShowOverlay] = useState(false);
|
|
289
|
-
useLayoutEffect(() => {
|
|
290
|
-
if (!isVisible && !isHovered) {
|
|
291
|
-
return;
|
|
292
|
-
}
|
|
293
|
-
if (!containerRef.current) {
|
|
294
|
-
return;
|
|
295
|
-
}
|
|
296
|
-
if (iconRef.current && iconAndLabelRef.current) {
|
|
297
|
-
const iconRect = iconRef.current.getBoundingClientRect();
|
|
298
|
-
iconLeftRef.current = iconRect.left;
|
|
299
|
-
minMaxWidthRef.current = {
|
|
300
|
-
min: iconRect.width,
|
|
301
|
-
max: iconAndLabelRef.current.getBoundingClientRect().width
|
|
302
|
-
};
|
|
303
|
-
}
|
|
304
|
-
if (!iconLeftRef.current || !minMaxWidthRef.current) {
|
|
305
|
-
return;
|
|
306
|
-
}
|
|
307
|
-
const containerDomRect = containerRef.current.getBoundingClientRect();
|
|
308
|
-
const containerStyles = getComputedStyle(containerRef.current);
|
|
309
|
-
const containerHeight = containerDomRect.height - parseFloat(containerStyles.paddingTop) - parseFloat(containerStyles.paddingBottom) - parseFloat(containerStyles.borderTopWidth) - parseFloat(containerStyles.borderBottomWidth);
|
|
310
|
-
const oneLine = parseFloat(containerStyles.lineHeight) >= containerHeight;
|
|
311
|
-
const firstLineWidth = containerDomRect.right - iconLeftRef.current;
|
|
312
|
-
|
|
313
|
-
// We don't want HoverLinkOverlay to cover the entire card if it is oneline. It allows the user to click on the card itself.
|
|
314
|
-
const reservedWidth = oneLine ? MIN_CARD_WIDTH_NOT_COVERED_BY_OVERLAY : 0;
|
|
315
|
-
const availableWidth = firstLineWidth - reservedWidth;
|
|
316
|
-
|
|
317
|
-
// True when icon and label can be shown
|
|
318
|
-
setShowLabel(availableWidth >= minMaxWidthRef.current.max);
|
|
319
|
-
// True when at least an icon can be shown
|
|
320
|
-
setShowOverlay(availableWidth >= minMaxWidthRef.current.min);
|
|
321
|
-
}, [isVisible, isHovered]);
|
|
322
|
-
const handleOverlayChange = isHovered => {
|
|
323
|
-
setHovered(isHovered);
|
|
324
|
-
};
|
|
325
|
-
const sendVisitLinkAnalytics = inputMethod => {
|
|
326
|
-
if (editorAnalyticsApi && view) {
|
|
327
|
-
visitCardLinkAnalytics(editorAnalyticsApi, inputMethod)(view.state, view.dispatch);
|
|
328
|
-
}
|
|
329
|
-
};
|
|
330
|
-
const handleDoubleClick = () => {
|
|
331
|
-
if (!showPanelButton) {
|
|
332
|
-
sendVisitLinkAnalytics(INPUT_METHOD.DOUBLE_CLICK);
|
|
333
|
-
|
|
334
|
-
// Double click opens the link in a new tab
|
|
335
|
-
window.open(url, '_blank');
|
|
336
|
-
}
|
|
337
|
-
};
|
|
338
|
-
const handleClick = event => {
|
|
339
|
-
if (showPanelButton && onClick) {
|
|
340
|
-
onClick(event);
|
|
341
|
-
} else {
|
|
342
|
-
sendVisitLinkAnalytics(INPUT_METHOD.BUTTON);
|
|
343
|
-
}
|
|
344
|
-
};
|
|
345
|
-
const isPreviewButton = showPanelButton && editorExperiment('platform_editor_preview_panel_linking_exp', true);
|
|
346
|
-
const label = isPreviewButton ? formatMessage(cardMessages.previewButtonTitle) : formatMessage(cardMessages.openButtonTitle);
|
|
347
|
-
let icon = null;
|
|
348
|
-
if (isPreviewButton && showPanelButtonIcon === 'panel') {
|
|
349
|
-
icon = jsx(PanelRightIcon, {
|
|
350
|
-
label: ""
|
|
351
|
-
});
|
|
352
|
-
} else if (isPreviewButton && showPanelButtonIcon === 'modal') {
|
|
353
|
-
icon = jsx(GrowDiagonalIcon, {
|
|
354
|
-
label: ""
|
|
355
|
-
});
|
|
356
|
-
} else {
|
|
357
|
-
icon = jsx(LinkExternalIcon, {
|
|
358
|
-
label: ""
|
|
359
|
-
});
|
|
360
|
-
}
|
|
361
|
-
return jsx("span", {
|
|
362
|
-
ref: containerRef,
|
|
363
|
-
css: containerStyles,
|
|
364
|
-
onDoubleClick: handleDoubleClick,
|
|
365
|
-
onMouseEnter: () => handleOverlayChange(true),
|
|
366
|
-
onMouseLeave: () => handleOverlayChange(false),
|
|
367
|
-
role: "presentation" // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
368
|
-
,
|
|
369
|
-
onFocus: () => {} // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
370
|
-
,
|
|
371
|
-
onBlur: () => {} // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
372
|
-
}, isHovered && jsx(Anchor, {
|
|
373
|
-
xcss: [linkStylesCommon, linkStylesNewWithHeightFix, showOverlay && linkStylesVisible],
|
|
374
|
-
href: url,
|
|
375
|
-
target: "_blank",
|
|
376
|
-
style: {
|
|
377
|
-
paddingBlock: compactPadding ? '1px' : expValEquals('confluence_compact_text_format', 'isEnabled', true) || expValEquals('cc_editor_ai_content_mode', 'variant', 'test') && fg('platform_editor_content_mode_button_mvp') ? DYNAMIC_PADDING_BLOCK : "var(--ds-space-025, 2px)"
|
|
378
|
-
},
|
|
379
|
-
onClick: handleClick,
|
|
380
|
-
testId: "inline-card-hoverlink-overlay"
|
|
381
|
-
}, jsx(Box, {
|
|
382
|
-
as: "span",
|
|
383
|
-
xcss: iconAndLabelStyles,
|
|
384
|
-
ref: iconAndLabelRef
|
|
385
|
-
}, jsx(Box, {
|
|
386
|
-
ref: iconRef,
|
|
387
|
-
as: "span",
|
|
388
|
-
xcss: iconWrapperStyles,
|
|
389
|
-
"data-inlinecard-button-overlay": "icon-wrapper-line-height",
|
|
390
|
-
testId: "inline-card-hoverlink-overlay-icon"
|
|
391
|
-
}, icon), (showLabel || !minMaxWidthRef.current) && jsx(Text, {
|
|
392
|
-
size: "small",
|
|
393
|
-
color: "color.text.subtle",
|
|
394
|
-
maxLines: 1,
|
|
395
|
-
testId: "inline-card-hoverlink-overlay-label"
|
|
396
|
-
}, label))), children);
|
|
397
|
-
};
|
|
398
|
-
const HoverLinkOverlay = componentWithCondition(() => expValEquals('platform_editor_hoverlink_ui_fixes_exp', 'cohort', 'css_js_changes'), HoverLinkOverlayNew, HoverLinkOverlayOriginal);
|
|
399
238
|
export default HoverLinkOverlay;
|
|
@@ -10,7 +10,7 @@ import { isFedRamp } from './environment';
|
|
|
10
10
|
import { normaliseSentryBreadcrumbs, SERIALIZABLE_ATTRIBUTES } from './normalise-sentry-breadcrumbs';
|
|
11
11
|
var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
12
12
|
var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
13
|
-
var packageVersion = "111.12.
|
|
13
|
+
var packageVersion = "111.12.6";
|
|
14
14
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
15
15
|
// Remove URL as it has UGC
|
|
16
16
|
// Ignored via go/ees007
|
|
@@ -21,7 +21,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
|
|
|
21
21
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
22
22
|
import Layer from '../Layer';
|
|
23
23
|
var packageName = "@atlaskit/editor-common";
|
|
24
|
-
var packageVersion = "111.12.
|
|
24
|
+
var packageVersion = "111.12.6";
|
|
25
25
|
var halfFocusRing = 1;
|
|
26
26
|
var dropOffset = '0, 8';
|
|
27
27
|
var fadeIn = keyframes({
|
|
@@ -15,7 +15,6 @@ import GrowDiagonalIcon from '@atlaskit/icon/core/grow-diagonal';
|
|
|
15
15
|
import LinkExternalIcon from '@atlaskit/icon/core/link-external';
|
|
16
16
|
import PanelRightIcon from '@atlaskit/icon/core/panel-right';
|
|
17
17
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
18
|
-
import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
|
|
19
18
|
// eslint-disable-next-line @atlaskit/design-system/no-emotion-primitives -- to be migrated to @atlaskit/primitives/compiled – go/akcss
|
|
20
19
|
import { Anchor, Box, Text, xcss } from '@atlaskit/primitives';
|
|
21
20
|
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
@@ -28,25 +27,16 @@ import { cardMessages } from '../../messages';
|
|
|
28
27
|
* Otherwise, uses default value with token('space.025').
|
|
29
28
|
*/
|
|
30
29
|
var DYNAMIC_PADDING_BLOCK = "clamp(1px, calc((var(--ak-editor-base-font-size, ".concat(akEditorFullPageDefaultFontSize, "px) - ").concat(akEditorFullPageDenseFontSize, "px) * 999), ", "var(--ds-space-025, 2px)", ")");
|
|
31
|
-
var containerStylesOld = css({
|
|
32
|
-
position: 'relative'
|
|
33
|
-
});
|
|
34
30
|
var containerStyles = css({
|
|
35
|
-
position: 'relative'
|
|
36
|
-
whiteSpace: 'nowrap'
|
|
31
|
+
position: 'relative'
|
|
37
32
|
});
|
|
38
|
-
var
|
|
33
|
+
var iconWrapperStyles = xcss({
|
|
39
34
|
display: 'inline-flex',
|
|
40
35
|
justifyContent: 'center',
|
|
41
36
|
alignItems: 'center',
|
|
42
37
|
height: '17px',
|
|
43
38
|
width: '17px'
|
|
44
39
|
});
|
|
45
|
-
var iconWrapperStyles = xcss({
|
|
46
|
-
display: 'inline-flex',
|
|
47
|
-
justifyContent: 'center',
|
|
48
|
-
alignItems: 'center'
|
|
49
|
-
});
|
|
50
40
|
var hiddenTextStyle = css({
|
|
51
41
|
overflow: 'hidden',
|
|
52
42
|
whiteSpace: 'nowrap',
|
|
@@ -69,37 +59,18 @@ var linkStylesCommon = xcss({
|
|
|
69
59
|
color: 'color.text.subtle',
|
|
70
60
|
textDecoration: 'none',
|
|
71
61
|
whiteSpace: 'nowrap',
|
|
62
|
+
top: '0px',
|
|
63
|
+
height: '1.2em',
|
|
72
64
|
':hover': {
|
|
73
65
|
backgroundColor: 'elevation.surface.hovered',
|
|
74
66
|
color: 'color.text.subtle',
|
|
75
67
|
textDecoration: 'none'
|
|
76
68
|
}
|
|
77
69
|
});
|
|
78
|
-
var linkStylesOld = xcss({
|
|
79
|
-
top: '-1px'
|
|
80
|
-
});
|
|
81
|
-
var linkStylesHeightFix = xcss({
|
|
82
|
-
top: '0px',
|
|
83
|
-
height: '1.2em'
|
|
84
|
-
});
|
|
85
|
-
var linkStylesNewWithHeightFix = xcss({
|
|
86
|
-
top: '0px',
|
|
87
|
-
visibility: 'hidden',
|
|
88
|
-
height: '1.2em'
|
|
89
|
-
});
|
|
90
|
-
var linkStylesVisible = xcss({
|
|
91
|
-
visibility: 'visible'
|
|
92
|
-
});
|
|
93
|
-
var iconAndLabelStyles = xcss({
|
|
94
|
-
display: 'flex',
|
|
95
|
-
alignItems: 'center',
|
|
96
|
-
height: '100%',
|
|
97
|
-
gap: 'space.025'
|
|
98
|
-
});
|
|
99
70
|
var MIN_AVAILABLE_SPACE_WITH_LABEL_OVERLAY = 45;
|
|
100
71
|
var ICON_WIDTH = 16;
|
|
101
72
|
var DEFAULT_OPEN_TEXT_WIDTH = 28; // Default open text width in English
|
|
102
|
-
|
|
73
|
+
|
|
103
74
|
var visitCardLinkAnalytics = function visitCardLinkAnalytics(editorAnalyticsApi, inputMethod) {
|
|
104
75
|
return function (state, dispatch) {
|
|
105
76
|
if (!(state.selection instanceof NodeSelection)) {
|
|
@@ -114,7 +85,7 @@ var visitCardLinkAnalytics = function visitCardLinkAnalytics(editorAnalyticsApi,
|
|
|
114
85
|
return true;
|
|
115
86
|
};
|
|
116
87
|
};
|
|
117
|
-
var
|
|
88
|
+
var HoverLinkOverlay = function HoverLinkOverlay(_ref) {
|
|
118
89
|
var children = _ref.children,
|
|
119
90
|
_ref$isVisible = _ref.isVisible,
|
|
120
91
|
isVisible = _ref$isVisible === void 0 ? false : _ref$isVisible,
|
|
@@ -234,7 +205,7 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
234
205
|
}
|
|
235
206
|
return jsx("span", {
|
|
236
207
|
ref: containerRef,
|
|
237
|
-
css:
|
|
208
|
+
css: containerStyles,
|
|
238
209
|
onDoubleClick: handleDoubleClick
|
|
239
210
|
// eslint-disable-next-line @atlassian/a11y/mouse-events-have-key-events
|
|
240
211
|
,
|
|
@@ -255,7 +226,7 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
255
226
|
maxLines: 1
|
|
256
227
|
}, label)), isHovered && jsx(Anchor, {
|
|
257
228
|
ref: hoverLinkButtonRef,
|
|
258
|
-
xcss:
|
|
229
|
+
xcss: linkStylesCommon,
|
|
259
230
|
href: url,
|
|
260
231
|
target: "_blank",
|
|
261
232
|
style: {
|
|
@@ -264,7 +235,7 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
264
235
|
onClick: handleClick,
|
|
265
236
|
testId: "inline-card-hoverlink-overlay"
|
|
266
237
|
}, jsx(Box, {
|
|
267
|
-
xcss:
|
|
238
|
+
xcss: iconWrapperStyles,
|
|
268
239
|
"data-inlinecard-button-overlay": "icon-wrapper-line-height",
|
|
269
240
|
testId: "inline-card-hoverlink-overlay-icon"
|
|
270
241
|
}, icon), showLabel && jsx(Text, {
|
|
@@ -274,152 +245,4 @@ var HoverLinkOverlayOriginal = function HoverLinkOverlayOriginal(_ref) {
|
|
|
274
245
|
testId: "inline-card-hoverlink-overlay-label"
|
|
275
246
|
}, label)));
|
|
276
247
|
};
|
|
277
|
-
var HoverLinkOverlayNew = function HoverLinkOverlayNew(_ref2) {
|
|
278
|
-
var children = _ref2.children,
|
|
279
|
-
_ref2$isVisible = _ref2.isVisible,
|
|
280
|
-
isVisible = _ref2$isVisible === void 0 ? false : _ref2$isVisible,
|
|
281
|
-
url = _ref2.url,
|
|
282
|
-
_ref2$compactPadding = _ref2.compactPadding,
|
|
283
|
-
compactPadding = _ref2$compactPadding === void 0 ? false : _ref2$compactPadding,
|
|
284
|
-
editorAnalyticsApi = _ref2.editorAnalyticsApi,
|
|
285
|
-
view = _ref2.view,
|
|
286
|
-
onClick = _ref2.onClick,
|
|
287
|
-
_ref2$showPanelButton = _ref2.showPanelButton,
|
|
288
|
-
showPanelButton = _ref2$showPanelButton === void 0 ? false : _ref2$showPanelButton,
|
|
289
|
-
showPanelButtonIcon = _ref2.showPanelButtonIcon;
|
|
290
|
-
var _useIntl2 = useIntl(),
|
|
291
|
-
formatMessage = _useIntl2.formatMessage;
|
|
292
|
-
var containerRef = useRef(null);
|
|
293
|
-
var iconRef = useRef(null);
|
|
294
|
-
var iconLeftRef = useRef(0);
|
|
295
|
-
var iconAndLabelRef = useRef(null);
|
|
296
|
-
var minMaxWidthRef = useRef();
|
|
297
|
-
var _useState5 = useState(false),
|
|
298
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
299
|
-
showLabel = _useState6[0],
|
|
300
|
-
setShowLabel = _useState6[1];
|
|
301
|
-
var _useState7 = useState(false),
|
|
302
|
-
_useState8 = _slicedToArray(_useState7, 2),
|
|
303
|
-
isHovered = _useState8[0],
|
|
304
|
-
setHovered = _useState8[1];
|
|
305
|
-
var _useState9 = useState(false),
|
|
306
|
-
_useState0 = _slicedToArray(_useState9, 2),
|
|
307
|
-
showOverlay = _useState0[0],
|
|
308
|
-
setShowOverlay = _useState0[1];
|
|
309
|
-
useLayoutEffect(function () {
|
|
310
|
-
if (!isVisible && !isHovered) {
|
|
311
|
-
return;
|
|
312
|
-
}
|
|
313
|
-
if (!containerRef.current) {
|
|
314
|
-
return;
|
|
315
|
-
}
|
|
316
|
-
if (iconRef.current && iconAndLabelRef.current) {
|
|
317
|
-
var iconRect = iconRef.current.getBoundingClientRect();
|
|
318
|
-
iconLeftRef.current = iconRect.left;
|
|
319
|
-
minMaxWidthRef.current = {
|
|
320
|
-
min: iconRect.width,
|
|
321
|
-
max: iconAndLabelRef.current.getBoundingClientRect().width
|
|
322
|
-
};
|
|
323
|
-
}
|
|
324
|
-
if (!iconLeftRef.current || !minMaxWidthRef.current) {
|
|
325
|
-
return;
|
|
326
|
-
}
|
|
327
|
-
var containerDomRect = containerRef.current.getBoundingClientRect();
|
|
328
|
-
var containerStyles = getComputedStyle(containerRef.current);
|
|
329
|
-
var containerHeight = containerDomRect.height - parseFloat(containerStyles.paddingTop) - parseFloat(containerStyles.paddingBottom) - parseFloat(containerStyles.borderTopWidth) - parseFloat(containerStyles.borderBottomWidth);
|
|
330
|
-
var oneLine = parseFloat(containerStyles.lineHeight) >= containerHeight;
|
|
331
|
-
var firstLineWidth = containerDomRect.right - iconLeftRef.current;
|
|
332
|
-
|
|
333
|
-
// We don't want HoverLinkOverlay to cover the entire card if it is oneline. It allows the user to click on the card itself.
|
|
334
|
-
var reservedWidth = oneLine ? MIN_CARD_WIDTH_NOT_COVERED_BY_OVERLAY : 0;
|
|
335
|
-
var availableWidth = firstLineWidth - reservedWidth;
|
|
336
|
-
|
|
337
|
-
// True when icon and label can be shown
|
|
338
|
-
setShowLabel(availableWidth >= minMaxWidthRef.current.max);
|
|
339
|
-
// True when at least an icon can be shown
|
|
340
|
-
setShowOverlay(availableWidth >= minMaxWidthRef.current.min);
|
|
341
|
-
}, [isVisible, isHovered]);
|
|
342
|
-
var handleOverlayChange = function handleOverlayChange(isHovered) {
|
|
343
|
-
setHovered(isHovered);
|
|
344
|
-
};
|
|
345
|
-
var sendVisitLinkAnalytics = function sendVisitLinkAnalytics(inputMethod) {
|
|
346
|
-
if (editorAnalyticsApi && view) {
|
|
347
|
-
visitCardLinkAnalytics(editorAnalyticsApi, inputMethod)(view.state, view.dispatch);
|
|
348
|
-
}
|
|
349
|
-
};
|
|
350
|
-
var handleDoubleClick = function handleDoubleClick() {
|
|
351
|
-
if (!showPanelButton) {
|
|
352
|
-
sendVisitLinkAnalytics(INPUT_METHOD.DOUBLE_CLICK);
|
|
353
|
-
|
|
354
|
-
// Double click opens the link in a new tab
|
|
355
|
-
window.open(url, '_blank');
|
|
356
|
-
}
|
|
357
|
-
};
|
|
358
|
-
var handleClick = function handleClick(event) {
|
|
359
|
-
if (showPanelButton && onClick) {
|
|
360
|
-
onClick(event);
|
|
361
|
-
} else {
|
|
362
|
-
sendVisitLinkAnalytics(INPUT_METHOD.BUTTON);
|
|
363
|
-
}
|
|
364
|
-
};
|
|
365
|
-
var isPreviewButton = showPanelButton && editorExperiment('platform_editor_preview_panel_linking_exp', true);
|
|
366
|
-
var label = isPreviewButton ? formatMessage(cardMessages.previewButtonTitle) : formatMessage(cardMessages.openButtonTitle);
|
|
367
|
-
var icon = null;
|
|
368
|
-
if (isPreviewButton && showPanelButtonIcon === 'panel') {
|
|
369
|
-
icon = jsx(PanelRightIcon, {
|
|
370
|
-
label: ""
|
|
371
|
-
});
|
|
372
|
-
} else if (isPreviewButton && showPanelButtonIcon === 'modal') {
|
|
373
|
-
icon = jsx(GrowDiagonalIcon, {
|
|
374
|
-
label: ""
|
|
375
|
-
});
|
|
376
|
-
} else {
|
|
377
|
-
icon = jsx(LinkExternalIcon, {
|
|
378
|
-
label: ""
|
|
379
|
-
});
|
|
380
|
-
}
|
|
381
|
-
return jsx("span", {
|
|
382
|
-
ref: containerRef,
|
|
383
|
-
css: containerStyles,
|
|
384
|
-
onDoubleClick: handleDoubleClick,
|
|
385
|
-
onMouseEnter: function onMouseEnter() {
|
|
386
|
-
return handleOverlayChange(true);
|
|
387
|
-
},
|
|
388
|
-
onMouseLeave: function onMouseLeave() {
|
|
389
|
-
return handleOverlayChange(false);
|
|
390
|
-
},
|
|
391
|
-
role: "presentation" // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
392
|
-
,
|
|
393
|
-
onFocus: function onFocus() {} // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
394
|
-
,
|
|
395
|
-
onBlur: function onBlur() {} // remove as part of platform_editor_hoverlink_ui_fixes_exp cleanup
|
|
396
|
-
}, isHovered && jsx(Anchor, {
|
|
397
|
-
xcss: [linkStylesCommon, linkStylesNewWithHeightFix, showOverlay && linkStylesVisible],
|
|
398
|
-
href: url,
|
|
399
|
-
target: "_blank",
|
|
400
|
-
style: {
|
|
401
|
-
paddingBlock: compactPadding ? '1px' : expValEquals('confluence_compact_text_format', 'isEnabled', true) || expValEquals('cc_editor_ai_content_mode', 'variant', 'test') && fg('platform_editor_content_mode_button_mvp') ? DYNAMIC_PADDING_BLOCK : "var(--ds-space-025, 2px)"
|
|
402
|
-
},
|
|
403
|
-
onClick: handleClick,
|
|
404
|
-
testId: "inline-card-hoverlink-overlay"
|
|
405
|
-
}, jsx(Box, {
|
|
406
|
-
as: "span",
|
|
407
|
-
xcss: iconAndLabelStyles,
|
|
408
|
-
ref: iconAndLabelRef
|
|
409
|
-
}, jsx(Box, {
|
|
410
|
-
ref: iconRef,
|
|
411
|
-
as: "span",
|
|
412
|
-
xcss: iconWrapperStyles,
|
|
413
|
-
"data-inlinecard-button-overlay": "icon-wrapper-line-height",
|
|
414
|
-
testId: "inline-card-hoverlink-overlay-icon"
|
|
415
|
-
}, icon), (showLabel || !minMaxWidthRef.current) && jsx(Text, {
|
|
416
|
-
size: "small",
|
|
417
|
-
color: "color.text.subtle",
|
|
418
|
-
maxLines: 1,
|
|
419
|
-
testId: "inline-card-hoverlink-overlay-label"
|
|
420
|
-
}, label))), children);
|
|
421
|
-
};
|
|
422
|
-
var HoverLinkOverlay = componentWithCondition(function () {
|
|
423
|
-
return expValEquals('platform_editor_hoverlink_ui_fixes_exp', 'cohort', 'css_js_changes');
|
|
424
|
-
}, HoverLinkOverlayNew, HoverLinkOverlayOriginal);
|
|
425
248
|
export default HoverLinkOverlay;
|
|
@@ -33,10 +33,10 @@ export function createNormalizeTextParser() {
|
|
|
33
33
|
var locale = window.navigator.language;
|
|
34
34
|
var thousandSeparator = Intl.NumberFormat(locale).format(11111)
|
|
35
35
|
// @ts-ignore - TS1501 TypeScript 5.9.2 upgrade
|
|
36
|
-
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
36
|
+
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDDE0-\uDDE9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96\uDFF4-\uDFF6]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
37
37
|
var decimalSeparator = Intl.NumberFormat(locale).format(1.1)
|
|
38
38
|
// @ts-ignore - TS1501 TypeScript 5.9.2 upgrade
|
|
39
|
-
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
39
|
+
.replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDD40-\uDD49\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDED0-\uDEE3\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59\uDFF0-\uDFF9]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDDE0-\uDDE9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD818[\uDD30-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDD70-\uDD79\uDE80-\uDE96\uDFF4-\uDFF6]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9\uDDF1-\uDDFA]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
|
|
40
40
|
|
|
41
41
|
// Ignored via go/ees005
|
|
42
42
|
// eslint-disable-next-line require-unicode-regexp
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* @jsx jsx
|
|
4
4
|
*/
|
|
5
5
|
import React from 'react';
|
|
6
|
+
import { jsx } from '@emotion/react';
|
|
6
7
|
import type { HoverLinkOverlayProps } from './types';
|
|
7
|
-
declare const HoverLinkOverlay: React.
|
|
8
|
+
declare const HoverLinkOverlay: ({ children, isVisible, url, compactPadding, editorAnalyticsApi, view, onClick, showPanelButton, showPanelButtonIcon, }: React.PropsWithChildren<HoverLinkOverlayProps>) => jsx.JSX.Element;
|
|
8
9
|
export default HoverLinkOverlay;
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* @jsx jsx
|
|
4
4
|
*/
|
|
5
5
|
import React from 'react';
|
|
6
|
+
import { jsx } from '@emotion/react';
|
|
6
7
|
import type { HoverLinkOverlayProps } from './types';
|
|
7
|
-
declare const HoverLinkOverlay: React.
|
|
8
|
+
declare const HoverLinkOverlay: ({ children, isVisible, url, compactPadding, editorAnalyticsApi, view, onClick, showPanelButton, showPanelButtonIcon, }: React.PropsWithChildren<HoverLinkOverlayProps>) => jsx.JSX.Element;
|
|
8
9
|
export default HoverLinkOverlay;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-common",
|
|
3
|
-
"version": "111.12.
|
|
3
|
+
"version": "111.12.7",
|
|
4
4
|
"description": "A package that contains common classes and components for editor and renderer",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"@atlaskit/editor-toolbar": "^0.19.0",
|
|
51
51
|
"@atlaskit/editor-toolbar-model": "^0.3.0",
|
|
52
52
|
"@atlaskit/emoji": "^69.10.0",
|
|
53
|
-
"@atlaskit/icon": "^
|
|
53
|
+
"@atlaskit/icon": "^31.0.0",
|
|
54
54
|
"@atlaskit/icon-object": "^7.4.0",
|
|
55
55
|
"@atlaskit/link": "^3.3.0",
|
|
56
56
|
"@atlaskit/link-datasource": "^4.33.0",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"@atlaskit/task-decision": "^19.2.0",
|
|
82
82
|
"@atlaskit/textfield": "^8.2.0",
|
|
83
83
|
"@atlaskit/theme": "^21.0.0",
|
|
84
|
-
"@atlaskit/tmp-editor-statsig": "^
|
|
84
|
+
"@atlaskit/tmp-editor-statsig": "^25.0.0",
|
|
85
85
|
"@atlaskit/tokens": "^11.0.0",
|
|
86
86
|
"@atlaskit/tooltip": "^20.14.0",
|
|
87
87
|
"@atlaskit/width-detector": "^5.0.0",
|