@atlaskit/editor-common 111.11.3 → 111.11.5
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 +21 -0
- package/dist/cjs/analytics/types/table-events.js +1 -0
- package/dist/cjs/monitoring/error.js +1 -1
- package/dist/cjs/node-anchor/node-anchor-provider.js +84 -37
- package/dist/cjs/ui/DropList/index.js +1 -1
- package/dist/cjs/ui-menu/ArrowKeyNavigationProvider/MenuArrowKeyNavigationProvider/index.js +7 -1
- package/dist/es2019/analytics/types/table-events.js +1 -0
- package/dist/es2019/monitoring/error.js +1 -1
- package/dist/es2019/node-anchor/node-anchor-provider.js +84 -37
- package/dist/es2019/ui/DropList/index.js +1 -1
- package/dist/es2019/ui-menu/ArrowKeyNavigationProvider/MenuArrowKeyNavigationProvider/index.js +7 -1
- package/dist/esm/analytics/types/table-events.js +1 -0
- package/dist/esm/monitoring/error.js +1 -1
- package/dist/esm/node-anchor/node-anchor-provider.js +84 -37
- package/dist/esm/ui/DropList/index.js +1 -1
- package/dist/esm/ui-menu/ArrowKeyNavigationProvider/MenuArrowKeyNavigationProvider/index.js +7 -1
- package/dist/types/analytics/types/ai-streaming.d.ts +1 -0
- package/dist/types/analytics/types/table-events.d.ts +6 -1
- package/dist/types/element-browser/components/ElementSearch.d.ts +1 -1
- package/dist/types/link/ConfigureLinkOverlay/Dropdown.d.ts +1 -1
- package/dist/types/link/ConfigureLinkOverlay/index.d.ts +1 -1
- package/dist/types/styles/shared/headings.d.ts +1 -1
- package/dist/types/styles/shared/media-single.d.ts +2 -2
- package/dist/types/styles/shared/native-anchor.d.ts +1 -1
- package/dist/types/styles/shared/table.d.ts +1 -1
- package/dist/types/styles/shared/tableCell.d.ts +1 -1
- package/dist/types/ui/IntlProviderIfMissingWrapper/index.d.ts +2 -1
- package/dist/types/ui/MediaSingle/styled.d.ts +2 -2
- package/dist/types/ui/ResizerLegacy/styled.d.ts +1 -1
- package/dist/types/ui-menu/ArrowKeyNavigationProvider/types.d.ts +7 -1
- package/dist/types/ui-menu/ToolbarButton/index.d.ts +1 -1
- package/dist/types-ts4.5/analytics/types/ai-streaming.d.ts +1 -0
- package/dist/types-ts4.5/analytics/types/table-events.d.ts +6 -1
- package/dist/types-ts4.5/element-browser/components/ElementSearch.d.ts +1 -1
- package/dist/types-ts4.5/link/ConfigureLinkOverlay/Dropdown.d.ts +1 -1
- package/dist/types-ts4.5/link/ConfigureLinkOverlay/index.d.ts +1 -1
- package/dist/types-ts4.5/styles/shared/headings.d.ts +1 -1
- package/dist/types-ts4.5/styles/shared/media-single.d.ts +2 -2
- package/dist/types-ts4.5/styles/shared/native-anchor.d.ts +1 -1
- package/dist/types-ts4.5/styles/shared/table.d.ts +1 -1
- package/dist/types-ts4.5/styles/shared/tableCell.d.ts +1 -1
- package/dist/types-ts4.5/ui/IntlProviderIfMissingWrapper/index.d.ts +2 -1
- package/dist/types-ts4.5/ui/MediaSingle/styled.d.ts +2 -2
- package/dist/types-ts4.5/ui/ResizerLegacy/styled.d.ts +1 -1
- package/dist/types-ts4.5/ui-menu/ArrowKeyNavigationProvider/types.d.ts +7 -1
- package/dist/types-ts4.5/ui-menu/ToolbarButton/index.d.ts +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# @atlaskit/editor-common
|
|
2
2
|
|
|
3
|
+
## 111.11.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`7f6ca0d7b6afc`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/7f6ca0d7b6afc) -
|
|
8
|
+
Updated the table drag menu to fire a track analytic event when the menu is opened
|
|
9
|
+
- [`1ce3b7e203e89`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/1ce3b7e203e89) -
|
|
10
|
+
Add traceid attribute to noDocChange event
|
|
11
|
+
- [`3b3aa281c8524`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/3b3aa281c8524) -
|
|
12
|
+
Editor 4149 Fix keyboard navigation inside turn into
|
|
13
|
+
- [`49dad8567c387`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/49dad8567c387) -
|
|
14
|
+
EDITOR-4948 - Change performance mode threshold condition to include doc size, node count, and LCM
|
|
15
|
+
check.
|
|
16
|
+
- Updated dependencies
|
|
17
|
+
|
|
18
|
+
## 111.11.4
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- Updated dependencies
|
|
23
|
+
|
|
3
24
|
## 111.11.3
|
|
4
25
|
|
|
5
26
|
### Patch Changes
|
|
@@ -35,6 +35,7 @@ var TABLE_ACTION = exports.TABLE_ACTION = /*#__PURE__*/function (TABLE_ACTION) {
|
|
|
35
35
|
TABLE_ACTION["MOVED_COLUMN"] = "movedColumn";
|
|
36
36
|
TABLE_ACTION["CLONED_ROW"] = "clonedRow";
|
|
37
37
|
TABLE_ACTION["CLONED_COLUMN"] = "clonedColumn";
|
|
38
|
+
TABLE_ACTION["DRAG_MENU_OPENED"] = "dragMenuOpened";
|
|
38
39
|
/**
|
|
39
40
|
* This is a unique action that's used to track legacy table move behaviour flow of insert+copy+paste. Please use
|
|
40
41
|
* the MOVED_ROW | MOVED_COLUMN actions if you want to track events which move row/cols in a single step.
|
|
@@ -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 = "
|
|
22
|
+
var packageVersion = "111.11.4";
|
|
23
23
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
24
24
|
// Remove URL as it has UGC
|
|
25
25
|
// Ignored via go/ees007
|
|
@@ -13,36 +13,23 @@ var _expVal = require("@atlaskit/tmp-editor-statsig/expVal");
|
|
|
13
13
|
var _utils = require("../utils");
|
|
14
14
|
var _dynamicBitArray = require("./dynamic-bit-array");
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* Note: legacy-content macros add a damped contribution based on ADF length to avoid
|
|
19
|
-
* parsing nested ADF on every check, which is inefficient.
|
|
20
|
-
*/
|
|
21
|
-
var countNodesInDoc = function countNodesInDoc(doc, lcmDampingFactor) {
|
|
22
|
-
var nodeCount = 0;
|
|
23
|
-
doc.descendants(function (node) {
|
|
24
|
-
var _node$attrs;
|
|
25
|
-
nodeCount += 1;
|
|
26
|
-
if (((_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.extensionKey) === 'legacy-content') {
|
|
27
|
-
var _node$attrs2;
|
|
28
|
-
var adfLength = (_node$attrs2 = node.attrs) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.parameters) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.adf) === null || _node$attrs2 === void 0 ? void 0 : _node$attrs2.length;
|
|
29
|
-
if (typeof adfLength === 'number' && lcmDampingFactor > 0) {
|
|
30
|
-
nodeCount += Math.ceil(adfLength / lcmDampingFactor);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
return nodeCount;
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Guard against test overrides returning booleans for numeric params.
|
|
16
|
+
* Gets a numeric experiment param, returning undefined if the value is not a valid number.
|
|
17
|
+
* This guards against test overrides returning booleans or strings for numeric params.
|
|
39
18
|
*/
|
|
40
|
-
var getNumericExperimentParam = function getNumericExperimentParam(
|
|
41
|
-
var rawValue = (0, _expVal.expVal)(
|
|
19
|
+
var getNumericExperimentParam = function getNumericExperimentParam(paramName, fallbackValue) {
|
|
20
|
+
var rawValue = (0, _expVal.expVal)('cc_editor_limited_mode_expanded', paramName, fallbackValue);
|
|
42
21
|
if (typeof rawValue === 'number') {
|
|
43
22
|
return rawValue;
|
|
44
23
|
}
|
|
45
|
-
|
|
24
|
+
|
|
25
|
+
// Handle string values from test overrides
|
|
26
|
+
if (typeof rawValue === 'string') {
|
|
27
|
+
var parsed = parseInt(rawValue, 10);
|
|
28
|
+
if (!isNaN(parsed)) {
|
|
29
|
+
return parsed;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return undefined;
|
|
46
33
|
};
|
|
47
34
|
var NodeAnchorProvider = exports.NodeAnchorProvider = /*#__PURE__*/function () {
|
|
48
35
|
function NodeAnchorProvider() {
|
|
@@ -119,23 +106,83 @@ var NodeAnchorProvider = exports.NodeAnchorProvider = /*#__PURE__*/function () {
|
|
|
119
106
|
var nodeIdProviderMap = new WeakMap();
|
|
120
107
|
var LIMITED_MODE_NODE_SIZE_THRESHOLD = 40000;
|
|
121
108
|
|
|
122
|
-
|
|
123
|
-
|
|
109
|
+
/**
|
|
110
|
+
* Calculates custom document size including LCM ADF lengths (for non-expanded path).
|
|
111
|
+
* This function can be removed when cc_editor_limited_mode_expanded is cleaned up.
|
|
112
|
+
*/
|
|
113
|
+
var getCustomDocSize = function getCustomDocSize(doc) {
|
|
114
|
+
var lcmAdfLength = 0;
|
|
115
|
+
doc.descendants(function (node) {
|
|
116
|
+
var _node$attrs;
|
|
117
|
+
if (((_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.extensionKey) === 'legacy-content') {
|
|
118
|
+
var _node$attrs$parameter, _node$attrs2;
|
|
119
|
+
lcmAdfLength += (_node$attrs$parameter = (_node$attrs2 = node.attrs) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.parameters) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.adf) === null || _node$attrs2 === void 0 ? void 0 : _node$attrs2.length) !== null && _node$attrs$parameter !== void 0 ? _node$attrs$parameter : 0;
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
return doc.nodeSize + lcmAdfLength;
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Determines whether limited mode should be enabled.
|
|
127
|
+
* This logic mirrors the limited mode plugin implementation, but lives here to avoid a circular dependency.
|
|
128
|
+
* If it changes, update the matching logic in `editor-plugin-limited-mode/src/pm-plugins/main.ts`.
|
|
129
|
+
*
|
|
130
|
+
* Under the expanded gate, limited mode is activated when ANY of the following conditions are met:
|
|
131
|
+
* 1. Document size exceeds `docSizeThreshold` (if defined) - checked first as O(1)
|
|
132
|
+
* 2. Node count exceeds `nodeCountThreshold` (if defined)
|
|
133
|
+
* 3. Document contains a legacy-content macro (LCM) (if `includeLcmInThreshold` is true)
|
|
134
|
+
*
|
|
135
|
+
* Performance optimisations:
|
|
136
|
+
* - Doc size is checked first (O(1)) - if it exceeds threshold, we skip traversal entirely.
|
|
137
|
+
* - If `includeLcmInThreshold` is enabled and we find an LCM, we exit traversal early.
|
|
138
|
+
* - If neither node count nor LCM conditions are configured, we skip traversal entirely.
|
|
139
|
+
*/
|
|
124
140
|
var isLimitedModeEnabled = function isLimitedModeEnabled(editorView) {
|
|
141
|
+
var doc = editorView.state.doc;
|
|
125
142
|
if ((0, _expVal.expVal)('cc_editor_limited_mode_expanded', 'isEnabled', false)) {
|
|
126
|
-
var
|
|
127
|
-
var
|
|
128
|
-
var
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
143
|
+
var nodeCountThreshold = getNumericExperimentParam('nodeCountThreshold', 5000);
|
|
144
|
+
var docSizeThreshold = getNumericExperimentParam('docSizeThreshold', 30000);
|
|
145
|
+
var includeLcmInThreshold = Boolean((0, _expVal.expVal)('cc_editor_limited_mode_expanded', 'includeLcmInThreshold', false));
|
|
146
|
+
|
|
147
|
+
// Early exit: doc size exceeds threshold - O(1), no traversal needed
|
|
148
|
+
if (docSizeThreshold !== undefined && doc.nodeSize > docSizeThreshold) {
|
|
149
|
+
return true;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
// Early exit: no traversal needed if neither condition is configured
|
|
153
|
+
var needNodeCount = nodeCountThreshold !== undefined;
|
|
154
|
+
if (!needNodeCount && !includeLcmInThreshold) {
|
|
155
|
+
return false;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
// Single traversal for node count and/or LCM detection
|
|
159
|
+
var nodeCount = 0;
|
|
160
|
+
var hasLcm = false;
|
|
161
|
+
doc.descendants(function (node) {
|
|
133
162
|
var _node$attrs3;
|
|
163
|
+
nodeCount += 1;
|
|
134
164
|
if (((_node$attrs3 = node.attrs) === null || _node$attrs3 === void 0 ? void 0 : _node$attrs3.extensionKey) === 'legacy-content') {
|
|
135
|
-
|
|
136
|
-
|
|
165
|
+
hasLcm = true;
|
|
166
|
+
|
|
167
|
+
// Early exit: LCM found and condition is enabled - no need to continue counting
|
|
168
|
+
if (includeLcmInThreshold) {
|
|
169
|
+
return false;
|
|
170
|
+
}
|
|
137
171
|
}
|
|
138
172
|
});
|
|
173
|
+
|
|
174
|
+
// LCM condition takes precedence (if we early exited traversal, this is why)
|
|
175
|
+
if (includeLcmInThreshold && hasLcm) {
|
|
176
|
+
return true;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
// Check node count threshold
|
|
180
|
+
if (needNodeCount && nodeCount > nodeCountThreshold) {
|
|
181
|
+
return true;
|
|
182
|
+
}
|
|
183
|
+
return false;
|
|
184
|
+
} else {
|
|
185
|
+
var customDocSize = getCustomDocSize(doc);
|
|
139
186
|
return customDocSize > LIMITED_MODE_NODE_SIZE_THRESHOLD;
|
|
140
187
|
}
|
|
141
188
|
};
|
|
@@ -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 = "
|
|
27
|
+
var packageVersion = "111.11.4";
|
|
28
28
|
var halfFocusRing = 1;
|
|
29
29
|
var dropOffset = '0, 8';
|
|
30
30
|
var fadeIn = (0, _react2.keyframes)({
|
|
@@ -74,7 +74,10 @@ var MenuArrowKeyNavigationProvider = exports.MenuArrowKeyNavigationProvider = fu
|
|
|
74
74
|
}
|
|
75
75
|
}, [currentSelectedItemIndex, onSelection, incrementIndex, decrementIndex]);
|
|
76
76
|
(0, _react.useLayoutEffect)(function () {
|
|
77
|
-
|
|
77
|
+
// Backwards compatible behaviour:
|
|
78
|
+
// - `true` disables all key handling (no listeners attached)
|
|
79
|
+
// - a function is evaluated per event inside the handler
|
|
80
|
+
if (disableArrowKeyNavigation === true) {
|
|
78
81
|
return;
|
|
79
82
|
}
|
|
80
83
|
|
|
@@ -84,6 +87,9 @@ var MenuArrowKeyNavigationProvider = exports.MenuArrowKeyNavigationProvider = fu
|
|
|
84
87
|
*/
|
|
85
88
|
var handleKeyDown = function handleKeyDown(event) {
|
|
86
89
|
var _wrapperRef$current;
|
|
90
|
+
if (typeof disableArrowKeyNavigation === 'function' && disableArrowKeyNavigation(event)) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
87
93
|
var targetElement = event.target;
|
|
88
94
|
|
|
89
95
|
// Tab key on menu items can be handled in the parent components of dropdown menus with KeydownHandlerContext
|
|
@@ -29,6 +29,7 @@ export let TABLE_ACTION = /*#__PURE__*/function (TABLE_ACTION) {
|
|
|
29
29
|
TABLE_ACTION["MOVED_COLUMN"] = "movedColumn";
|
|
30
30
|
TABLE_ACTION["CLONED_ROW"] = "clonedRow";
|
|
31
31
|
TABLE_ACTION["CLONED_COLUMN"] = "clonedColumn";
|
|
32
|
+
TABLE_ACTION["DRAG_MENU_OPENED"] = "dragMenuOpened";
|
|
32
33
|
/**
|
|
33
34
|
* This is a unique action that's used to track legacy table move behaviour flow of insert+copy+paste. Please use
|
|
34
35
|
* the MOVED_ROW | MOVED_COLUMN actions if you want to track events which move row/cols in a single step.
|
|
@@ -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 = "
|
|
7
|
+
const packageVersion = "111.11.4";
|
|
8
8
|
const sanitiseSentryEvents = (data, _hint) => {
|
|
9
9
|
// Remove URL as it has UGC
|
|
10
10
|
// Ignored via go/ees007
|
|
@@ -5,36 +5,23 @@ import { isEmptyDocument } from '../utils';
|
|
|
5
5
|
import { DynamicBitArray } from './dynamic-bit-array';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* Note: legacy-content macros add a damped contribution based on ADF length to avoid
|
|
11
|
-
* parsing nested ADF on every check, which is inefficient.
|
|
12
|
-
*/
|
|
13
|
-
const countNodesInDoc = (doc, lcmDampingFactor) => {
|
|
14
|
-
let nodeCount = 0;
|
|
15
|
-
doc.descendants(node => {
|
|
16
|
-
var _node$attrs;
|
|
17
|
-
nodeCount += 1;
|
|
18
|
-
if (((_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.extensionKey) === 'legacy-content') {
|
|
19
|
-
var _node$attrs2, _node$attrs2$paramete, _node$attrs2$paramete2;
|
|
20
|
-
const adfLength = (_node$attrs2 = node.attrs) === null || _node$attrs2 === void 0 ? void 0 : (_node$attrs2$paramete = _node$attrs2.parameters) === null || _node$attrs2$paramete === void 0 ? void 0 : (_node$attrs2$paramete2 = _node$attrs2$paramete.adf) === null || _node$attrs2$paramete2 === void 0 ? void 0 : _node$attrs2$paramete2.length;
|
|
21
|
-
if (typeof adfLength === 'number' && lcmDampingFactor > 0) {
|
|
22
|
-
nodeCount += Math.ceil(adfLength / lcmDampingFactor);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
return nodeCount;
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Guard against test overrides returning booleans for numeric params.
|
|
8
|
+
* Gets a numeric experiment param, returning undefined if the value is not a valid number.
|
|
9
|
+
* This guards against test overrides returning booleans or strings for numeric params.
|
|
31
10
|
*/
|
|
32
|
-
const getNumericExperimentParam = (
|
|
33
|
-
const rawValue = expVal(
|
|
11
|
+
const getNumericExperimentParam = (paramName, fallbackValue) => {
|
|
12
|
+
const rawValue = expVal('cc_editor_limited_mode_expanded', paramName, fallbackValue);
|
|
34
13
|
if (typeof rawValue === 'number') {
|
|
35
14
|
return rawValue;
|
|
36
15
|
}
|
|
37
|
-
|
|
16
|
+
|
|
17
|
+
// Handle string values from test overrides
|
|
18
|
+
if (typeof rawValue === 'string') {
|
|
19
|
+
const parsed = parseInt(rawValue, 10);
|
|
20
|
+
if (!isNaN(parsed)) {
|
|
21
|
+
return parsed;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return undefined;
|
|
38
25
|
};
|
|
39
26
|
export class NodeAnchorProvider {
|
|
40
27
|
constructor(limitedMode = false, emptyDoc = false) {
|
|
@@ -95,23 +82,83 @@ export class NodeAnchorProvider {
|
|
|
95
82
|
const nodeIdProviderMap = new WeakMap();
|
|
96
83
|
const LIMITED_MODE_NODE_SIZE_THRESHOLD = 40000;
|
|
97
84
|
|
|
98
|
-
|
|
99
|
-
|
|
85
|
+
/**
|
|
86
|
+
* Calculates custom document size including LCM ADF lengths (for non-expanded path).
|
|
87
|
+
* This function can be removed when cc_editor_limited_mode_expanded is cleaned up.
|
|
88
|
+
*/
|
|
89
|
+
const getCustomDocSize = doc => {
|
|
90
|
+
let lcmAdfLength = 0;
|
|
91
|
+
doc.descendants(node => {
|
|
92
|
+
var _node$attrs;
|
|
93
|
+
if (((_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.extensionKey) === 'legacy-content') {
|
|
94
|
+
var _node$attrs$parameter, _node$attrs2, _node$attrs2$paramete, _node$attrs2$paramete2;
|
|
95
|
+
lcmAdfLength += (_node$attrs$parameter = (_node$attrs2 = node.attrs) === null || _node$attrs2 === void 0 ? void 0 : (_node$attrs2$paramete = _node$attrs2.parameters) === null || _node$attrs2$paramete === void 0 ? void 0 : (_node$attrs2$paramete2 = _node$attrs2$paramete.adf) === null || _node$attrs2$paramete2 === void 0 ? void 0 : _node$attrs2$paramete2.length) !== null && _node$attrs$parameter !== void 0 ? _node$attrs$parameter : 0;
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
return doc.nodeSize + lcmAdfLength;
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Determines whether limited mode should be enabled.
|
|
103
|
+
* This logic mirrors the limited mode plugin implementation, but lives here to avoid a circular dependency.
|
|
104
|
+
* If it changes, update the matching logic in `editor-plugin-limited-mode/src/pm-plugins/main.ts`.
|
|
105
|
+
*
|
|
106
|
+
* Under the expanded gate, limited mode is activated when ANY of the following conditions are met:
|
|
107
|
+
* 1. Document size exceeds `docSizeThreshold` (if defined) - checked first as O(1)
|
|
108
|
+
* 2. Node count exceeds `nodeCountThreshold` (if defined)
|
|
109
|
+
* 3. Document contains a legacy-content macro (LCM) (if `includeLcmInThreshold` is true)
|
|
110
|
+
*
|
|
111
|
+
* Performance optimisations:
|
|
112
|
+
* - Doc size is checked first (O(1)) - if it exceeds threshold, we skip traversal entirely.
|
|
113
|
+
* - If `includeLcmInThreshold` is enabled and we find an LCM, we exit traversal early.
|
|
114
|
+
* - If neither node count nor LCM conditions are configured, we skip traversal entirely.
|
|
115
|
+
*/
|
|
100
116
|
const isLimitedModeEnabled = editorView => {
|
|
117
|
+
const doc = editorView.state.doc;
|
|
101
118
|
if (expVal('cc_editor_limited_mode_expanded', 'isEnabled', false)) {
|
|
102
|
-
const
|
|
103
|
-
const
|
|
104
|
-
const
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
119
|
+
const nodeCountThreshold = getNumericExperimentParam('nodeCountThreshold', 5000);
|
|
120
|
+
const docSizeThreshold = getNumericExperimentParam('docSizeThreshold', 30000);
|
|
121
|
+
const includeLcmInThreshold = Boolean(expVal('cc_editor_limited_mode_expanded', 'includeLcmInThreshold', false));
|
|
122
|
+
|
|
123
|
+
// Early exit: doc size exceeds threshold - O(1), no traversal needed
|
|
124
|
+
if (docSizeThreshold !== undefined && doc.nodeSize > docSizeThreshold) {
|
|
125
|
+
return true;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
// Early exit: no traversal needed if neither condition is configured
|
|
129
|
+
const needNodeCount = nodeCountThreshold !== undefined;
|
|
130
|
+
if (!needNodeCount && !includeLcmInThreshold) {
|
|
131
|
+
return false;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// Single traversal for node count and/or LCM detection
|
|
135
|
+
let nodeCount = 0;
|
|
136
|
+
let hasLcm = false;
|
|
137
|
+
doc.descendants(node => {
|
|
109
138
|
var _node$attrs3;
|
|
139
|
+
nodeCount += 1;
|
|
110
140
|
if (((_node$attrs3 = node.attrs) === null || _node$attrs3 === void 0 ? void 0 : _node$attrs3.extensionKey) === 'legacy-content') {
|
|
111
|
-
|
|
112
|
-
|
|
141
|
+
hasLcm = true;
|
|
142
|
+
|
|
143
|
+
// Early exit: LCM found and condition is enabled - no need to continue counting
|
|
144
|
+
if (includeLcmInThreshold) {
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
113
147
|
}
|
|
114
148
|
});
|
|
149
|
+
|
|
150
|
+
// LCM condition takes precedence (if we early exited traversal, this is why)
|
|
151
|
+
if (includeLcmInThreshold && hasLcm) {
|
|
152
|
+
return true;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
// Check node count threshold
|
|
156
|
+
if (needNodeCount && nodeCount > nodeCountThreshold) {
|
|
157
|
+
return true;
|
|
158
|
+
}
|
|
159
|
+
return false;
|
|
160
|
+
} else {
|
|
161
|
+
const customDocSize = getCustomDocSize(doc);
|
|
115
162
|
return customDocSize > LIMITED_MODE_NODE_SIZE_THRESHOLD;
|
|
116
163
|
}
|
|
117
164
|
};
|
|
@@ -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 = "
|
|
17
|
+
const packageVersion = "111.11.4";
|
|
18
18
|
const halfFocusRing = 1;
|
|
19
19
|
const dropOffset = '0, 8';
|
|
20
20
|
const fadeIn = keyframes({
|
package/dist/es2019/ui-menu/ArrowKeyNavigationProvider/MenuArrowKeyNavigationProvider/index.js
CHANGED
|
@@ -56,7 +56,10 @@ export const MenuArrowKeyNavigationProvider = ({
|
|
|
56
56
|
}
|
|
57
57
|
}, [currentSelectedItemIndex, onSelection, incrementIndex, decrementIndex]);
|
|
58
58
|
useLayoutEffect(() => {
|
|
59
|
-
|
|
59
|
+
// Backwards compatible behaviour:
|
|
60
|
+
// - `true` disables all key handling (no listeners attached)
|
|
61
|
+
// - a function is evaluated per event inside the handler
|
|
62
|
+
if (disableArrowKeyNavigation === true) {
|
|
60
63
|
return;
|
|
61
64
|
}
|
|
62
65
|
|
|
@@ -66,6 +69,9 @@ export const MenuArrowKeyNavigationProvider = ({
|
|
|
66
69
|
*/
|
|
67
70
|
const handleKeyDown = event => {
|
|
68
71
|
var _wrapperRef$current;
|
|
72
|
+
if (typeof disableArrowKeyNavigation === 'function' && disableArrowKeyNavigation(event)) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
69
75
|
const targetElement = event.target;
|
|
70
76
|
|
|
71
77
|
// Tab key on menu items can be handled in the parent components of dropdown menus with KeydownHandlerContext
|
|
@@ -29,6 +29,7 @@ export var TABLE_ACTION = /*#__PURE__*/function (TABLE_ACTION) {
|
|
|
29
29
|
TABLE_ACTION["MOVED_COLUMN"] = "movedColumn";
|
|
30
30
|
TABLE_ACTION["CLONED_ROW"] = "clonedRow";
|
|
31
31
|
TABLE_ACTION["CLONED_COLUMN"] = "clonedColumn";
|
|
32
|
+
TABLE_ACTION["DRAG_MENU_OPENED"] = "dragMenuOpened";
|
|
32
33
|
/**
|
|
33
34
|
* This is a unique action that's used to track legacy table move behaviour flow of insert+copy+paste. Please use
|
|
34
35
|
* the MOVED_ROW | MOVED_COLUMN actions if you want to track events which move row/cols in a single step.
|
|
@@ -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 = "
|
|
13
|
+
var packageVersion = "111.11.4";
|
|
14
14
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
15
15
|
// Remove URL as it has UGC
|
|
16
16
|
// Ignored via go/ees007
|
|
@@ -7,36 +7,23 @@ import { isEmptyDocument } from '../utils';
|
|
|
7
7
|
import { DynamicBitArray } from './dynamic-bit-array';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* Note: legacy-content macros add a damped contribution based on ADF length to avoid
|
|
13
|
-
* parsing nested ADF on every check, which is inefficient.
|
|
14
|
-
*/
|
|
15
|
-
var countNodesInDoc = function countNodesInDoc(doc, lcmDampingFactor) {
|
|
16
|
-
var nodeCount = 0;
|
|
17
|
-
doc.descendants(function (node) {
|
|
18
|
-
var _node$attrs;
|
|
19
|
-
nodeCount += 1;
|
|
20
|
-
if (((_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.extensionKey) === 'legacy-content') {
|
|
21
|
-
var _node$attrs2;
|
|
22
|
-
var adfLength = (_node$attrs2 = node.attrs) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.parameters) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.adf) === null || _node$attrs2 === void 0 ? void 0 : _node$attrs2.length;
|
|
23
|
-
if (typeof adfLength === 'number' && lcmDampingFactor > 0) {
|
|
24
|
-
nodeCount += Math.ceil(adfLength / lcmDampingFactor);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
return nodeCount;
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* Guard against test overrides returning booleans for numeric params.
|
|
10
|
+
* Gets a numeric experiment param, returning undefined if the value is not a valid number.
|
|
11
|
+
* This guards against test overrides returning booleans or strings for numeric params.
|
|
33
12
|
*/
|
|
34
|
-
var getNumericExperimentParam = function getNumericExperimentParam(
|
|
35
|
-
var rawValue = expVal(
|
|
13
|
+
var getNumericExperimentParam = function getNumericExperimentParam(paramName, fallbackValue) {
|
|
14
|
+
var rawValue = expVal('cc_editor_limited_mode_expanded', paramName, fallbackValue);
|
|
36
15
|
if (typeof rawValue === 'number') {
|
|
37
16
|
return rawValue;
|
|
38
17
|
}
|
|
39
|
-
|
|
18
|
+
|
|
19
|
+
// Handle string values from test overrides
|
|
20
|
+
if (typeof rawValue === 'string') {
|
|
21
|
+
var parsed = parseInt(rawValue, 10);
|
|
22
|
+
if (!isNaN(parsed)) {
|
|
23
|
+
return parsed;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return undefined;
|
|
40
27
|
};
|
|
41
28
|
export var NodeAnchorProvider = /*#__PURE__*/function () {
|
|
42
29
|
function NodeAnchorProvider() {
|
|
@@ -113,23 +100,83 @@ export var NodeAnchorProvider = /*#__PURE__*/function () {
|
|
|
113
100
|
var nodeIdProviderMap = new WeakMap();
|
|
114
101
|
var LIMITED_MODE_NODE_SIZE_THRESHOLD = 40000;
|
|
115
102
|
|
|
116
|
-
|
|
117
|
-
|
|
103
|
+
/**
|
|
104
|
+
* Calculates custom document size including LCM ADF lengths (for non-expanded path).
|
|
105
|
+
* This function can be removed when cc_editor_limited_mode_expanded is cleaned up.
|
|
106
|
+
*/
|
|
107
|
+
var getCustomDocSize = function getCustomDocSize(doc) {
|
|
108
|
+
var lcmAdfLength = 0;
|
|
109
|
+
doc.descendants(function (node) {
|
|
110
|
+
var _node$attrs;
|
|
111
|
+
if (((_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs.extensionKey) === 'legacy-content') {
|
|
112
|
+
var _node$attrs$parameter, _node$attrs2;
|
|
113
|
+
lcmAdfLength += (_node$attrs$parameter = (_node$attrs2 = node.attrs) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.parameters) === null || _node$attrs2 === void 0 || (_node$attrs2 = _node$attrs2.adf) === null || _node$attrs2 === void 0 ? void 0 : _node$attrs2.length) !== null && _node$attrs$parameter !== void 0 ? _node$attrs$parameter : 0;
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
return doc.nodeSize + lcmAdfLength;
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Determines whether limited mode should be enabled.
|
|
121
|
+
* This logic mirrors the limited mode plugin implementation, but lives here to avoid a circular dependency.
|
|
122
|
+
* If it changes, update the matching logic in `editor-plugin-limited-mode/src/pm-plugins/main.ts`.
|
|
123
|
+
*
|
|
124
|
+
* Under the expanded gate, limited mode is activated when ANY of the following conditions are met:
|
|
125
|
+
* 1. Document size exceeds `docSizeThreshold` (if defined) - checked first as O(1)
|
|
126
|
+
* 2. Node count exceeds `nodeCountThreshold` (if defined)
|
|
127
|
+
* 3. Document contains a legacy-content macro (LCM) (if `includeLcmInThreshold` is true)
|
|
128
|
+
*
|
|
129
|
+
* Performance optimisations:
|
|
130
|
+
* - Doc size is checked first (O(1)) - if it exceeds threshold, we skip traversal entirely.
|
|
131
|
+
* - If `includeLcmInThreshold` is enabled and we find an LCM, we exit traversal early.
|
|
132
|
+
* - If neither node count nor LCM conditions are configured, we skip traversal entirely.
|
|
133
|
+
*/
|
|
118
134
|
var isLimitedModeEnabled = function isLimitedModeEnabled(editorView) {
|
|
135
|
+
var doc = editorView.state.doc;
|
|
119
136
|
if (expVal('cc_editor_limited_mode_expanded', 'isEnabled', false)) {
|
|
120
|
-
var
|
|
121
|
-
var
|
|
122
|
-
var
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
137
|
+
var nodeCountThreshold = getNumericExperimentParam('nodeCountThreshold', 5000);
|
|
138
|
+
var docSizeThreshold = getNumericExperimentParam('docSizeThreshold', 30000);
|
|
139
|
+
var includeLcmInThreshold = Boolean(expVal('cc_editor_limited_mode_expanded', 'includeLcmInThreshold', false));
|
|
140
|
+
|
|
141
|
+
// Early exit: doc size exceeds threshold - O(1), no traversal needed
|
|
142
|
+
if (docSizeThreshold !== undefined && doc.nodeSize > docSizeThreshold) {
|
|
143
|
+
return true;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
// Early exit: no traversal needed if neither condition is configured
|
|
147
|
+
var needNodeCount = nodeCountThreshold !== undefined;
|
|
148
|
+
if (!needNodeCount && !includeLcmInThreshold) {
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
// Single traversal for node count and/or LCM detection
|
|
153
|
+
var nodeCount = 0;
|
|
154
|
+
var hasLcm = false;
|
|
155
|
+
doc.descendants(function (node) {
|
|
127
156
|
var _node$attrs3;
|
|
157
|
+
nodeCount += 1;
|
|
128
158
|
if (((_node$attrs3 = node.attrs) === null || _node$attrs3 === void 0 ? void 0 : _node$attrs3.extensionKey) === 'legacy-content') {
|
|
129
|
-
|
|
130
|
-
|
|
159
|
+
hasLcm = true;
|
|
160
|
+
|
|
161
|
+
// Early exit: LCM found and condition is enabled - no need to continue counting
|
|
162
|
+
if (includeLcmInThreshold) {
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
131
165
|
}
|
|
132
166
|
});
|
|
167
|
+
|
|
168
|
+
// LCM condition takes precedence (if we early exited traversal, this is why)
|
|
169
|
+
if (includeLcmInThreshold && hasLcm) {
|
|
170
|
+
return true;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
// Check node count threshold
|
|
174
|
+
if (needNodeCount && nodeCount > nodeCountThreshold) {
|
|
175
|
+
return true;
|
|
176
|
+
}
|
|
177
|
+
return false;
|
|
178
|
+
} else {
|
|
179
|
+
var customDocSize = getCustomDocSize(doc);
|
|
133
180
|
return customDocSize > LIMITED_MODE_NODE_SIZE_THRESHOLD;
|
|
134
181
|
}
|
|
135
182
|
};
|
|
@@ -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 = "
|
|
24
|
+
var packageVersion = "111.11.4";
|
|
25
25
|
var halfFocusRing = 1;
|
|
26
26
|
var dropOffset = '0, 8';
|
|
27
27
|
var fadeIn = keyframes({
|
|
@@ -65,7 +65,10 @@ export var MenuArrowKeyNavigationProvider = function MenuArrowKeyNavigationProvi
|
|
|
65
65
|
}
|
|
66
66
|
}, [currentSelectedItemIndex, onSelection, incrementIndex, decrementIndex]);
|
|
67
67
|
useLayoutEffect(function () {
|
|
68
|
-
|
|
68
|
+
// Backwards compatible behaviour:
|
|
69
|
+
// - `true` disables all key handling (no listeners attached)
|
|
70
|
+
// - a function is evaluated per event inside the handler
|
|
71
|
+
if (disableArrowKeyNavigation === true) {
|
|
69
72
|
return;
|
|
70
73
|
}
|
|
71
74
|
|
|
@@ -75,6 +78,9 @@ export var MenuArrowKeyNavigationProvider = function MenuArrowKeyNavigationProvi
|
|
|
75
78
|
*/
|
|
76
79
|
var handleKeyDown = function handleKeyDown(event) {
|
|
77
80
|
var _wrapperRef$current;
|
|
81
|
+
if (typeof disableArrowKeyNavigation === 'function' && disableArrowKeyNavigation(event)) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
78
84
|
var targetElement = event.target;
|
|
79
85
|
|
|
80
86
|
// Tab key on menu items can be handled in the parent components of dropdown menus with KeydownHandlerContext
|
|
@@ -11,6 +11,7 @@ type AIStreamingNoDocChangeAEP = OperationalAEP<ACTION.NO_DOC_CHANGE_FOUND, ACTI
|
|
|
11
11
|
command: string;
|
|
12
12
|
isSameDoc: boolean;
|
|
13
13
|
isSameDocIgnoreAttrs: boolean;
|
|
14
|
+
traceId: string | undefined;
|
|
14
15
|
}>;
|
|
15
16
|
type AIStreamingInvalidCommandAEP = OperationalAEP<ACTION.INVALID_COMMAND_FOUND, ACTION_SUBJECT.AI_STREAMING, ACTION_SUBJECT_ID.EXPERIENCE_APPLICATION, {
|
|
16
17
|
ancestors?: string[];
|
|
@@ -33,6 +33,7 @@ export declare enum TABLE_ACTION {
|
|
|
33
33
|
MOVED_COLUMN = "movedColumn",
|
|
34
34
|
CLONED_ROW = "clonedRow",
|
|
35
35
|
CLONED_COLUMN = "clonedColumn",
|
|
36
|
+
DRAG_MENU_OPENED = "dragMenuOpened",
|
|
36
37
|
/**
|
|
37
38
|
* This is a unique action that's used to track legacy table move behaviour flow of insert+copy+paste. Please use
|
|
38
39
|
* the MOVED_ROW | MOVED_COLUMN actions if you want to track events which move row/cols in a single step.
|
|
@@ -157,6 +158,10 @@ type TableReplaceAEP = TableAEP<TABLE_ACTION.REPLACED, {
|
|
|
157
158
|
inputMethod: INPUT_METHOD.KEYBOARD | INPUT_METHOD.CLIPBOARD;
|
|
158
159
|
} & TotalRowAndColCount, undefined>;
|
|
159
160
|
type TableAttemptedResizeAEP = UIAEP<TABLE_ACTION.ATTEMPTED_TABLE_WIDTH_CHANGE, ACTION_SUBJECT.TABLE, null, AttemptedResizeInfo, undefined>;
|
|
161
|
+
type TableDragMenuOpenedAEP = TableAEP<TABLE_ACTION.DRAG_MENU_OPENED, {
|
|
162
|
+
direction: 'row' | 'column';
|
|
163
|
+
inputMethod: INPUT_METHOD.KEYBOARD | INPUT_METHOD.MOUSE;
|
|
164
|
+
}, undefined>;
|
|
160
165
|
type TableCollapsedAEP = TableAEP<TABLE_ACTION.COLLAPSED, TotalRowAndColCount, undefined>;
|
|
161
166
|
type TableFixedAEP = TableAEP<TABLE_ACTION.FIXED, {
|
|
162
167
|
reason: string;
|
|
@@ -235,5 +240,5 @@ type TableHeightInfoAEP = TableAEP<TABLE_ACTION.TABLE_EDITOR_HEIGHT_INFO, {
|
|
|
235
240
|
type TableStickyHeaderEnabledAEP = UIAEP<TABLE_ACTION.STICKY_HEADER_METHOD_TOGGLED, ACTION_SUBJECT.TABLE, ACTION_SUBJECT_ID.TABLE_STICKY_HEADER, {
|
|
236
241
|
nativeStickyHeaderEnabled: boolean;
|
|
237
242
|
}, undefined>;
|
|
238
|
-
export type TableEventPayload = TableDeleteAEP | TableClearAEP | TableMergeSplitAEP | TableColorAEP | TableToggleHeaderAEP | TableChangeBreakoutAEP | TableCopyAndCutAEP | TableAddRowOrColumnAEP | TableSortColumnAEP | TableDeleteRowOrColumnAEP | TableReplaceAEP | TableAttemptedResizeAEP | TableDistributeColumnsWidthsAEP | TableCollapsedAEP | TableFixedAEP | TableOverflowChangedAEP | TableInitialOverflowCapturedAEP | TableResizedAEP | TableResizePerfSamplingAEP | TableRowOrColumnMovedAEP | TableMovedRowOrColumnAEP | TableClonedRowOrColumnAEP | TableChangedDisplayModeAEP | TableColumnResizedAEP | TableBackgroundColorFixAEP | TableChangedAlignmentAEP | TableWidthInfoAEP | TableHeightInfoAEP | TableStickyHeaderEnabledAEP;
|
|
243
|
+
export type TableEventPayload = TableDeleteAEP | TableClearAEP | TableMergeSplitAEP | TableColorAEP | TableToggleHeaderAEP | TableChangeBreakoutAEP | TableCopyAndCutAEP | TableAddRowOrColumnAEP | TableSortColumnAEP | TableDeleteRowOrColumnAEP | TableReplaceAEP | TableAttemptedResizeAEP | TableDistributeColumnsWidthsAEP | TableCollapsedAEP | TableDragMenuOpenedAEP | TableFixedAEP | TableOverflowChangedAEP | TableInitialOverflowCapturedAEP | TableResizedAEP | TableResizePerfSamplingAEP | TableRowOrColumnMovedAEP | TableMovedRowOrColumnAEP | TableClonedRowOrColumnAEP | TableChangedDisplayModeAEP | TableColumnResizedAEP | TableBackgroundColorFixAEP | TableChangedAlignmentAEP | TableWidthInfoAEP | TableHeightInfoAEP | TableStickyHeaderEnabledAEP;
|
|
239
244
|
export {};
|
|
@@ -19,5 +19,5 @@ interface Props {
|
|
|
19
19
|
}
|
|
20
20
|
declare const MemoizedElementSearchWithAnalytics: React.MemoExoticComponent<React.ForwardRefExoticComponent<Omit<Props & WrappedComponentProps, "intl"> & {
|
|
21
21
|
forwardedRef?: React.Ref<any>;
|
|
22
|
-
} & import("@atlaskit/analytics-next
|
|
22
|
+
} & import("@atlaskit/analytics-next").WithContextProps & React.RefAttributes<any>>>;
|
|
23
23
|
export default MemoizedElementSearchWithAnalytics;
|
|
@@ -15,5 +15,5 @@ export type DropdownProps = {
|
|
|
15
15
|
onOpenLinkClick?: (event: MouseEvent<HTMLAnchorElement>) => void;
|
|
16
16
|
testId: string;
|
|
17
17
|
};
|
|
18
|
-
declare const _default: import("react").ForwardRefExoticComponent<DropdownProps & import("@atlaskit/analytics-next
|
|
18
|
+
declare const _default: import("react").ForwardRefExoticComponent<DropdownProps & import("@atlaskit/analytics-next").WithContextProps & import("react").RefAttributes<any>>;
|
|
19
19
|
export default _default;
|
|
@@ -18,4 +18,4 @@ export interface OverlayButtonProps {
|
|
|
18
18
|
targetElementPos?: number;
|
|
19
19
|
testId?: string;
|
|
20
20
|
}
|
|
21
|
-
export declare const OverlayButton: import("react").ForwardRefExoticComponent<OverlayButtonProps & import("@atlaskit/analytics-next
|
|
21
|
+
export declare const OverlayButton: import("react").ForwardRefExoticComponent<OverlayButtonProps & import("@atlaskit/analytics-next").WithContextProps & import("react").RefAttributes<any>>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type ThemeState } from '@atlaskit/tokens';
|
|
2
|
-
export declare const headingsSharedStyles: (_typographyTheme?: ThemeState["typography"]) => import("@emotion/
|
|
2
|
+
export declare const headingsSharedStyles: (_typographyTheme?: ThemeState["typography"]) => import("@emotion/utils").SerializedStyles;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
declare const richMediaClassName = "rich-media-item";
|
|
2
|
-
declare const mediaSingleSharedStyle: import("@emotion/
|
|
3
|
-
declare const mediaSingleSharedStyleNew: import("@emotion/
|
|
2
|
+
declare const mediaSingleSharedStyle: import("@emotion/utils").SerializedStyles;
|
|
3
|
+
declare const mediaSingleSharedStyleNew: import("@emotion/utils").SerializedStyles;
|
|
4
4
|
export { mediaSingleSharedStyle, mediaSingleSharedStyleNew, richMediaClassName };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const ANCHOR_VARIABLE_NAME = "--ed-pm-node-anchor";
|
|
2
2
|
export declare const isCSSAttrAnchorSupported: import("memoize-one").MemoizedFn<() => boolean>;
|
|
3
3
|
export declare const isCSSAnchorSupported: import("memoize-one").MemoizedFn<() => boolean | undefined>;
|
|
4
|
-
export declare const nativeAnchorStyles: import("@emotion/
|
|
4
|
+
export declare const nativeAnchorStyles: import("@emotion/utils").SerializedStyles;
|
|
@@ -35,6 +35,6 @@ export declare const TableSharedCssClassName: {
|
|
|
35
35
|
readonly TABLE_COLUMN_CONTROLS_DECORATIONS: "pm-table-column-controls-decoration";
|
|
36
36
|
readonly TABLE_RESIZER_CONTAINER: "pm-table-resizer-container";
|
|
37
37
|
};
|
|
38
|
-
declare const tableSharedStyle: () => import("@emotion/
|
|
38
|
+
declare const tableSharedStyle: () => import("@emotion/utils").SerializedStyles;
|
|
39
39
|
export declare const calcTableWidth: (layout: TableLayout, containerWidth?: number, addControllerPadding?: boolean) => number | "inherit";
|
|
40
40
|
export { tableSharedStyle };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const tableCellBackgroundStyleOverride: () => import("@emotion/
|
|
1
|
+
export declare const tableCellBackgroundStyleOverride: () => import("@emotion/utils").SerializedStyles;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
interface WrapProps {
|
|
2
3
|
children: JSX.Element;
|
|
3
4
|
}
|
|
4
|
-
export default function IntlProviderIfMissingWrapper({ children }: WrapProps): JSX.Element;
|
|
5
|
+
export default function IntlProviderIfMissingWrapper({ children }: WrapProps): React.JSX.Element;
|
|
5
6
|
export {};
|
|
@@ -90,13 +90,13 @@ export interface MediaSingleWrapperProps {
|
|
|
90
90
|
* @param root0.isInRenderer
|
|
91
91
|
* @example
|
|
92
92
|
*/
|
|
93
|
-
export declare const MediaSingleDimensionHelper: ({ containerWidth, fullWidthMode, isResized, layout, mediaSingleWidth, width, isExtendedResizeExperienceOn, isNestedNode, isInsideOfInlineExtension, isInRenderer, }: MediaSingleWrapperProps) => import("@emotion/
|
|
93
|
+
export declare const MediaSingleDimensionHelper: ({ containerWidth, fullWidthMode, isResized, layout, mediaSingleWidth, width, isExtendedResizeExperienceOn, isNestedNode, isInsideOfInlineExtension, isInRenderer, }: MediaSingleWrapperProps) => import("@emotion/utils").SerializedStyles;
|
|
94
94
|
export interface MediaWrapperProps {
|
|
95
95
|
hasFallbackContainer?: boolean;
|
|
96
96
|
height?: number;
|
|
97
97
|
paddingBottom?: string;
|
|
98
98
|
}
|
|
99
|
-
export declare const mediaWrapperStyle: (props: MediaWrapperProps) => import("@emotion/
|
|
99
|
+
export declare const mediaWrapperStyle: (props: MediaWrapperProps) => import("@emotion/utils").SerializedStyles;
|
|
100
100
|
export declare const MediaWrapper: {
|
|
101
101
|
({ children, ...rest }: React.HTMLAttributes<HTMLDivElement> & MediaWrapperProps): jsx.JSX.Element;
|
|
102
102
|
displayName: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type MediaSingleWrapperProps as MediaSingleDimensionHelperProps } from '../MediaSingle/styled';
|
|
2
|
-
export declare const wrapperStyle: (props: MediaSingleDimensionHelperProps) => import("@emotion/
|
|
2
|
+
export declare const wrapperStyle: (props: MediaSingleDimensionHelperProps) => import("@emotion/utils").SerializedStyles;
|
|
@@ -25,7 +25,13 @@ export type ColorPaletteArrowKeyNavigationProps = ColorPaletteArrowKeyNavigation
|
|
|
25
25
|
};
|
|
26
26
|
export type MenuArrowKeyNavigationOptions = {
|
|
27
27
|
children?: React.ReactNode;
|
|
28
|
-
|
|
28
|
+
/**
|
|
29
|
+
* Disable keyboard handling for this provider.
|
|
30
|
+
*
|
|
31
|
+
* - `true`: disables all key handling (backwards compatible with previous behaviour)
|
|
32
|
+
* - `(event) => boolean`: disables handling for specific events (return `true` to bypass handling)
|
|
33
|
+
*/
|
|
34
|
+
disableArrowKeyNavigation?: boolean | ((event: KeyboardEvent) => boolean);
|
|
29
35
|
disableCloseOnArrowClick?: boolean;
|
|
30
36
|
keyDownHandlerContext?: KeyDownHandlerContext;
|
|
31
37
|
type: ArrowKeyNavigationType.MENU;
|
|
@@ -60,5 +60,5 @@ declare const ToolbarButton: React.ForwardRefExoticComponent<{
|
|
|
60
60
|
testId?: string;
|
|
61
61
|
title?: React.ReactNode;
|
|
62
62
|
titlePosition?: PositionType;
|
|
63
|
-
} & Pick<ButtonProps, "
|
|
63
|
+
} & Pick<ButtonProps, "children" | "rel" | "aria-controls" | "aria-label" | "onFocus" | "onBlur" | "onMouseEnter" | "onMouseLeave"> & React.RefAttributes<HTMLElement>>;
|
|
64
64
|
export default ToolbarButton;
|
|
@@ -11,6 +11,7 @@ type AIStreamingNoDocChangeAEP = OperationalAEP<ACTION.NO_DOC_CHANGE_FOUND, ACTI
|
|
|
11
11
|
command: string;
|
|
12
12
|
isSameDoc: boolean;
|
|
13
13
|
isSameDocIgnoreAttrs: boolean;
|
|
14
|
+
traceId: string | undefined;
|
|
14
15
|
}>;
|
|
15
16
|
type AIStreamingInvalidCommandAEP = OperationalAEP<ACTION.INVALID_COMMAND_FOUND, ACTION_SUBJECT.AI_STREAMING, ACTION_SUBJECT_ID.EXPERIENCE_APPLICATION, {
|
|
16
17
|
ancestors?: string[];
|
|
@@ -33,6 +33,7 @@ export declare enum TABLE_ACTION {
|
|
|
33
33
|
MOVED_COLUMN = "movedColumn",
|
|
34
34
|
CLONED_ROW = "clonedRow",
|
|
35
35
|
CLONED_COLUMN = "clonedColumn",
|
|
36
|
+
DRAG_MENU_OPENED = "dragMenuOpened",
|
|
36
37
|
/**
|
|
37
38
|
* This is a unique action that's used to track legacy table move behaviour flow of insert+copy+paste. Please use
|
|
38
39
|
* the MOVED_ROW | MOVED_COLUMN actions if you want to track events which move row/cols in a single step.
|
|
@@ -157,6 +158,10 @@ type TableReplaceAEP = TableAEP<TABLE_ACTION.REPLACED, {
|
|
|
157
158
|
inputMethod: INPUT_METHOD.KEYBOARD | INPUT_METHOD.CLIPBOARD;
|
|
158
159
|
} & TotalRowAndColCount, undefined>;
|
|
159
160
|
type TableAttemptedResizeAEP = UIAEP<TABLE_ACTION.ATTEMPTED_TABLE_WIDTH_CHANGE, ACTION_SUBJECT.TABLE, null, AttemptedResizeInfo, undefined>;
|
|
161
|
+
type TableDragMenuOpenedAEP = TableAEP<TABLE_ACTION.DRAG_MENU_OPENED, {
|
|
162
|
+
direction: 'row' | 'column';
|
|
163
|
+
inputMethod: INPUT_METHOD.KEYBOARD | INPUT_METHOD.MOUSE;
|
|
164
|
+
}, undefined>;
|
|
160
165
|
type TableCollapsedAEP = TableAEP<TABLE_ACTION.COLLAPSED, TotalRowAndColCount, undefined>;
|
|
161
166
|
type TableFixedAEP = TableAEP<TABLE_ACTION.FIXED, {
|
|
162
167
|
reason: string;
|
|
@@ -235,5 +240,5 @@ type TableHeightInfoAEP = TableAEP<TABLE_ACTION.TABLE_EDITOR_HEIGHT_INFO, {
|
|
|
235
240
|
type TableStickyHeaderEnabledAEP = UIAEP<TABLE_ACTION.STICKY_HEADER_METHOD_TOGGLED, ACTION_SUBJECT.TABLE, ACTION_SUBJECT_ID.TABLE_STICKY_HEADER, {
|
|
236
241
|
nativeStickyHeaderEnabled: boolean;
|
|
237
242
|
}, undefined>;
|
|
238
|
-
export type TableEventPayload = TableDeleteAEP | TableClearAEP | TableMergeSplitAEP | TableColorAEP | TableToggleHeaderAEP | TableChangeBreakoutAEP | TableCopyAndCutAEP | TableAddRowOrColumnAEP | TableSortColumnAEP | TableDeleteRowOrColumnAEP | TableReplaceAEP | TableAttemptedResizeAEP | TableDistributeColumnsWidthsAEP | TableCollapsedAEP | TableFixedAEP | TableOverflowChangedAEP | TableInitialOverflowCapturedAEP | TableResizedAEP | TableResizePerfSamplingAEP | TableRowOrColumnMovedAEP | TableMovedRowOrColumnAEP | TableClonedRowOrColumnAEP | TableChangedDisplayModeAEP | TableColumnResizedAEP | TableBackgroundColorFixAEP | TableChangedAlignmentAEP | TableWidthInfoAEP | TableHeightInfoAEP | TableStickyHeaderEnabledAEP;
|
|
243
|
+
export type TableEventPayload = TableDeleteAEP | TableClearAEP | TableMergeSplitAEP | TableColorAEP | TableToggleHeaderAEP | TableChangeBreakoutAEP | TableCopyAndCutAEP | TableAddRowOrColumnAEP | TableSortColumnAEP | TableDeleteRowOrColumnAEP | TableReplaceAEP | TableAttemptedResizeAEP | TableDistributeColumnsWidthsAEP | TableCollapsedAEP | TableDragMenuOpenedAEP | TableFixedAEP | TableOverflowChangedAEP | TableInitialOverflowCapturedAEP | TableResizedAEP | TableResizePerfSamplingAEP | TableRowOrColumnMovedAEP | TableMovedRowOrColumnAEP | TableClonedRowOrColumnAEP | TableChangedDisplayModeAEP | TableColumnResizedAEP | TableBackgroundColorFixAEP | TableChangedAlignmentAEP | TableWidthInfoAEP | TableHeightInfoAEP | TableStickyHeaderEnabledAEP;
|
|
239
244
|
export {};
|
|
@@ -19,5 +19,5 @@ interface Props {
|
|
|
19
19
|
}
|
|
20
20
|
declare const MemoizedElementSearchWithAnalytics: React.MemoExoticComponent<React.ForwardRefExoticComponent<Omit<Props & WrappedComponentProps, "intl"> & {
|
|
21
21
|
forwardedRef?: React.Ref<any>;
|
|
22
|
-
} & import("@atlaskit/analytics-next
|
|
22
|
+
} & import("@atlaskit/analytics-next").WithContextProps & React.RefAttributes<any>>>;
|
|
23
23
|
export default MemoizedElementSearchWithAnalytics;
|
|
@@ -15,5 +15,5 @@ export type DropdownProps = {
|
|
|
15
15
|
onOpenLinkClick?: (event: MouseEvent<HTMLAnchorElement>) => void;
|
|
16
16
|
testId: string;
|
|
17
17
|
};
|
|
18
|
-
declare const _default: import("react").ForwardRefExoticComponent<DropdownProps & import("@atlaskit/analytics-next
|
|
18
|
+
declare const _default: import("react").ForwardRefExoticComponent<DropdownProps & import("@atlaskit/analytics-next").WithContextProps & import("react").RefAttributes<any>>;
|
|
19
19
|
export default _default;
|
|
@@ -18,4 +18,4 @@ export interface OverlayButtonProps {
|
|
|
18
18
|
targetElementPos?: number;
|
|
19
19
|
testId?: string;
|
|
20
20
|
}
|
|
21
|
-
export declare const OverlayButton: import("react").ForwardRefExoticComponent<OverlayButtonProps & import("@atlaskit/analytics-next
|
|
21
|
+
export declare const OverlayButton: import("react").ForwardRefExoticComponent<OverlayButtonProps & import("@atlaskit/analytics-next").WithContextProps & import("react").RefAttributes<any>>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type ThemeState } from '@atlaskit/tokens';
|
|
2
|
-
export declare const headingsSharedStyles: (_typographyTheme?: ThemeState["typography"]) => import("@emotion/
|
|
2
|
+
export declare const headingsSharedStyles: (_typographyTheme?: ThemeState["typography"]) => import("@emotion/utils").SerializedStyles;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
declare const richMediaClassName = "rich-media-item";
|
|
2
|
-
declare const mediaSingleSharedStyle: import("@emotion/
|
|
3
|
-
declare const mediaSingleSharedStyleNew: import("@emotion/
|
|
2
|
+
declare const mediaSingleSharedStyle: import("@emotion/utils").SerializedStyles;
|
|
3
|
+
declare const mediaSingleSharedStyleNew: import("@emotion/utils").SerializedStyles;
|
|
4
4
|
export { mediaSingleSharedStyle, mediaSingleSharedStyleNew, richMediaClassName };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const ANCHOR_VARIABLE_NAME = "--ed-pm-node-anchor";
|
|
2
2
|
export declare const isCSSAttrAnchorSupported: import("memoize-one").MemoizedFn<() => boolean>;
|
|
3
3
|
export declare const isCSSAnchorSupported: import("memoize-one").MemoizedFn<() => boolean | undefined>;
|
|
4
|
-
export declare const nativeAnchorStyles: import("@emotion/
|
|
4
|
+
export declare const nativeAnchorStyles: import("@emotion/utils").SerializedStyles;
|
|
@@ -35,6 +35,6 @@ export declare const TableSharedCssClassName: {
|
|
|
35
35
|
readonly TABLE_COLUMN_CONTROLS_DECORATIONS: "pm-table-column-controls-decoration";
|
|
36
36
|
readonly TABLE_RESIZER_CONTAINER: "pm-table-resizer-container";
|
|
37
37
|
};
|
|
38
|
-
declare const tableSharedStyle: () => import("@emotion/
|
|
38
|
+
declare const tableSharedStyle: () => import("@emotion/utils").SerializedStyles;
|
|
39
39
|
export declare const calcTableWidth: (layout: TableLayout, containerWidth?: number, addControllerPadding?: boolean) => number | "inherit";
|
|
40
40
|
export { tableSharedStyle };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const tableCellBackgroundStyleOverride: () => import("@emotion/
|
|
1
|
+
export declare const tableCellBackgroundStyleOverride: () => import("@emotion/utils").SerializedStyles;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
interface WrapProps {
|
|
2
3
|
children: JSX.Element;
|
|
3
4
|
}
|
|
4
|
-
export default function IntlProviderIfMissingWrapper({ children }: WrapProps): JSX.Element;
|
|
5
|
+
export default function IntlProviderIfMissingWrapper({ children }: WrapProps): React.JSX.Element;
|
|
5
6
|
export {};
|
|
@@ -90,13 +90,13 @@ export interface MediaSingleWrapperProps {
|
|
|
90
90
|
* @param root0.isInRenderer
|
|
91
91
|
* @example
|
|
92
92
|
*/
|
|
93
|
-
export declare const MediaSingleDimensionHelper: ({ containerWidth, fullWidthMode, isResized, layout, mediaSingleWidth, width, isExtendedResizeExperienceOn, isNestedNode, isInsideOfInlineExtension, isInRenderer, }: MediaSingleWrapperProps) => import("@emotion/
|
|
93
|
+
export declare const MediaSingleDimensionHelper: ({ containerWidth, fullWidthMode, isResized, layout, mediaSingleWidth, width, isExtendedResizeExperienceOn, isNestedNode, isInsideOfInlineExtension, isInRenderer, }: MediaSingleWrapperProps) => import("@emotion/utils").SerializedStyles;
|
|
94
94
|
export interface MediaWrapperProps {
|
|
95
95
|
hasFallbackContainer?: boolean;
|
|
96
96
|
height?: number;
|
|
97
97
|
paddingBottom?: string;
|
|
98
98
|
}
|
|
99
|
-
export declare const mediaWrapperStyle: (props: MediaWrapperProps) => import("@emotion/
|
|
99
|
+
export declare const mediaWrapperStyle: (props: MediaWrapperProps) => import("@emotion/utils").SerializedStyles;
|
|
100
100
|
export declare const MediaWrapper: {
|
|
101
101
|
({ children, ...rest }: React.HTMLAttributes<HTMLDivElement> & MediaWrapperProps): jsx.JSX.Element;
|
|
102
102
|
displayName: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type MediaSingleWrapperProps as MediaSingleDimensionHelperProps } from '../MediaSingle/styled';
|
|
2
|
-
export declare const wrapperStyle: (props: MediaSingleDimensionHelperProps) => import("@emotion/
|
|
2
|
+
export declare const wrapperStyle: (props: MediaSingleDimensionHelperProps) => import("@emotion/utils").SerializedStyles;
|
|
@@ -25,7 +25,13 @@ export type ColorPaletteArrowKeyNavigationProps = ColorPaletteArrowKeyNavigation
|
|
|
25
25
|
};
|
|
26
26
|
export type MenuArrowKeyNavigationOptions = {
|
|
27
27
|
children?: React.ReactNode;
|
|
28
|
-
|
|
28
|
+
/**
|
|
29
|
+
* Disable keyboard handling for this provider.
|
|
30
|
+
*
|
|
31
|
+
* - `true`: disables all key handling (backwards compatible with previous behaviour)
|
|
32
|
+
* - `(event) => boolean`: disables handling for specific events (return `true` to bypass handling)
|
|
33
|
+
*/
|
|
34
|
+
disableArrowKeyNavigation?: boolean | ((event: KeyboardEvent) => boolean);
|
|
29
35
|
disableCloseOnArrowClick?: boolean;
|
|
30
36
|
keyDownHandlerContext?: KeyDownHandlerContext;
|
|
31
37
|
type: ArrowKeyNavigationType.MENU;
|
|
@@ -60,5 +60,5 @@ declare const ToolbarButton: React.ForwardRefExoticComponent<{
|
|
|
60
60
|
testId?: string;
|
|
61
61
|
title?: React.ReactNode;
|
|
62
62
|
titlePosition?: PositionType;
|
|
63
|
-
} & Pick<ButtonProps, "
|
|
63
|
+
} & Pick<ButtonProps, "children" | "rel" | "aria-controls" | "aria-label" | "onFocus" | "onBlur" | "onMouseEnter" | "onMouseLeave"> & React.RefAttributes<HTMLElement>>;
|
|
64
64
|
export default ToolbarButton;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-common",
|
|
3
|
-
"version": "111.11.
|
|
3
|
+
"version": "111.11.5",
|
|
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/"
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
"@atlaskit/primitives": "^18.0.0",
|
|
73
73
|
"@atlaskit/profilecard": "^24.34.0",
|
|
74
74
|
"@atlaskit/prosemirror-history": "^0.2.0",
|
|
75
|
-
"@atlaskit/react-ufo": "^5.
|
|
75
|
+
"@atlaskit/react-ufo": "^5.1.0",
|
|
76
76
|
"@atlaskit/section-message": "^8.12.0",
|
|
77
77
|
"@atlaskit/smart-card": "^43.23.0",
|
|
78
78
|
"@atlaskit/smart-user-picker": "^8.9.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": "^20.0.0",
|
|
85
85
|
"@atlaskit/tokens": "^11.0.0",
|
|
86
86
|
"@atlaskit/tooltip": "^20.14.0",
|
|
87
87
|
"@atlaskit/width-detector": "^5.0.0",
|
|
@@ -120,7 +120,7 @@
|
|
|
120
120
|
},
|
|
121
121
|
"devDependencies": {
|
|
122
122
|
"@atlaskit/media-core": "^37.0.0",
|
|
123
|
-
"@atlassian/a11y-jest-testing": "^0.
|
|
123
|
+
"@atlassian/a11y-jest-testing": "^0.9.0",
|
|
124
124
|
"@testing-library/dom": "^10.1.0",
|
|
125
125
|
"@testing-library/jest-dom": "^6.4.5",
|
|
126
126
|
"@testing-library/react": "^16.3.0",
|