@atlaskit/mention 23.0.3 → 23.0.4
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 +8 -0
- package/dist/cjs/api/MentionNameResolver.js +32 -2
- package/dist/cjs/components/Mention/ResourcedMention.js +1 -0
- package/dist/cjs/components/Mention/index.js +4 -1
- package/dist/cjs/components/MentionDescriptionByline/styles.js +1 -0
- package/dist/cjs/components/MentionItem/styles.js +14 -0
- package/dist/cjs/components/MentionList/styles.js +1 -0
- package/dist/cjs/components/MentionListError/GenericErrorIllustration.js +6 -0
- package/dist/cjs/components/MentionListError/styles.js +6 -0
- package/dist/cjs/components/MentionPicker/index.js +3 -1
- package/dist/cjs/components/MentionPicker/styles.js +3 -0
- package/dist/cjs/components/Scrollable/styles.js +1 -0
- package/dist/cjs/util/analytics.js +1 -1
- package/dist/es2019/api/MentionNameResolver.js +31 -2
- package/dist/es2019/components/Mention/ResourcedMention.js +1 -0
- package/dist/es2019/components/Mention/index.js +4 -1
- package/dist/es2019/components/MentionDescriptionByline/styles.js +1 -0
- package/dist/es2019/components/MentionItem/styles.js +14 -0
- package/dist/es2019/components/MentionList/styles.js +1 -0
- package/dist/es2019/components/MentionListError/GenericErrorIllustration.js +6 -0
- package/dist/es2019/components/MentionListError/styles.js +7 -0
- package/dist/es2019/components/MentionPicker/index.js +3 -1
- package/dist/es2019/components/MentionPicker/styles.js +3 -0
- package/dist/es2019/components/Scrollable/styles.js +2 -0
- package/dist/es2019/util/analytics.js +1 -1
- package/dist/esm/api/MentionNameResolver.js +34 -2
- package/dist/esm/components/Mention/ResourcedMention.js +1 -0
- package/dist/esm/components/Mention/index.js +4 -1
- package/dist/esm/components/MentionDescriptionByline/styles.js +1 -0
- package/dist/esm/components/MentionItem/styles.js +14 -0
- package/dist/esm/components/MentionList/styles.js +1 -0
- package/dist/esm/components/MentionListError/GenericErrorIllustration.js +6 -0
- package/dist/esm/components/MentionListError/styles.js +7 -0
- package/dist/esm/components/MentionPicker/index.js +3 -1
- package/dist/esm/components/MentionPicker/styles.js +3 -0
- package/dist/esm/components/Scrollable/styles.js +2 -0
- package/dist/esm/util/analytics.js +1 -1
- package/dist/types/api/ContextMentionResource.d.ts +2 -2
- package/dist/types/api/MentionNameClient.d.ts +1 -1
- package/dist/types/api/MentionNameResolver.d.ts +13 -3
- package/dist/types/api/PresenceResource.d.ts +2 -2
- package/dist/types/api/TeamMentionResource.d.ts +2 -2
- package/dist/types/api/analytics.d.ts +1 -1
- package/dist/types/components/Mention/PrimitiveMention.d.ts +1 -1
- package/dist/types/components/Mention/ResourcedMention.d.ts +3 -2
- package/dist/types/components/Mention/index.d.ts +3 -2
- package/dist/types/components/MentionDescriptionByline/TeamMentionDescriptionByline.d.ts +1 -1
- package/dist/types/components/MentionDescriptionByline/UserMentionDescriptionByline.d.ts +1 -1
- package/dist/types/components/MentionDescriptionByline/index.d.ts +1 -1
- package/dist/types/components/MentionDescriptionByline/types.d.ts +1 -1
- package/dist/types/components/MentionItem/MentionHighlightHelpers.d.ts +2 -2
- package/dist/types/components/MentionItem/index.d.ts +1 -1
- package/dist/types/components/MentionList/index.d.ts +1 -1
- package/dist/types/components/MentionPicker/index.d.ts +5 -5
- package/dist/types/components/MessagesIntlProvider/index.d.ts +1 -1
- package/dist/types/components/ResourcedMentionList/index.d.ts +4 -4
- package/dist/types/components/Scrollable/index.d.ts +1 -1
- package/dist/types/resource.d.ts +5 -5
- package/dist/types/team-resource.d.ts +3 -3
- package/dist/types/util/analytics.d.ts +2 -2
- package/dist/types/util/i18n.d.ts +1 -1
- package/dist/types/util/mouse.d.ts +1 -1
- package/dist/types-ts4.5/api/ContextMentionResource.d.ts +2 -2
- package/dist/types-ts4.5/api/MentionNameClient.d.ts +1 -1
- package/dist/types-ts4.5/api/MentionNameResolver.d.ts +13 -3
- package/dist/types-ts4.5/api/PresenceResource.d.ts +2 -2
- package/dist/types-ts4.5/api/TeamMentionResource.d.ts +2 -2
- package/dist/types-ts4.5/api/analytics.d.ts +1 -1
- package/dist/types-ts4.5/components/Mention/PrimitiveMention.d.ts +1 -1
- package/dist/types-ts4.5/components/Mention/ResourcedMention.d.ts +3 -2
- package/dist/types-ts4.5/components/Mention/index.d.ts +3 -2
- package/dist/types-ts4.5/components/MentionDescriptionByline/TeamMentionDescriptionByline.d.ts +1 -1
- package/dist/types-ts4.5/components/MentionDescriptionByline/UserMentionDescriptionByline.d.ts +1 -1
- package/dist/types-ts4.5/components/MentionDescriptionByline/index.d.ts +1 -1
- package/dist/types-ts4.5/components/MentionDescriptionByline/types.d.ts +1 -1
- package/dist/types-ts4.5/components/MentionItem/MentionHighlightHelpers.d.ts +2 -2
- package/dist/types-ts4.5/components/MentionItem/index.d.ts +1 -1
- package/dist/types-ts4.5/components/MentionList/index.d.ts +1 -1
- package/dist/types-ts4.5/components/MentionPicker/index.d.ts +5 -5
- package/dist/types-ts4.5/components/MessagesIntlProvider/index.d.ts +1 -1
- package/dist/types-ts4.5/components/ResourcedMentionList/index.d.ts +4 -4
- package/dist/types-ts4.5/components/Scrollable/index.d.ts +1 -1
- package/dist/types-ts4.5/resource.d.ts +5 -5
- package/dist/types-ts4.5/team-resource.d.ts +3 -3
- package/dist/types-ts4.5/util/analytics.d.ts +2 -2
- package/dist/types-ts4.5/util/i18n.d.ts +1 -1
- package/dist/types-ts4.5/util/mouse.d.ts +1 -1
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @atlaskit/mention
|
|
2
2
|
|
|
3
|
+
## 23.0.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#104781](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/104781)
|
|
8
|
+
[`c1f5107a8905`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/c1f5107a8905) -
|
|
9
|
+
Fix some mentions for the same user never loading in pages with many mentions
|
|
10
|
+
|
|
3
11
|
## 23.0.3
|
|
4
12
|
|
|
5
13
|
### Patch Changes
|
|
@@ -5,12 +5,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.DefaultMentionNameResolver = void 0;
|
|
8
|
+
exports.mergeNameResolverQueues = mergeNameResolverQueues;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
8
10
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
11
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
12
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
14
|
var _types = require("../types");
|
|
13
15
|
var _analytics = require("../util/analytics");
|
|
16
|
+
/** A queue for user ids */
|
|
14
17
|
var DefaultMentionNameResolver = exports.DefaultMentionNameResolver = /*#__PURE__*/function () {
|
|
15
18
|
function DefaultMentionNameResolver(client) {
|
|
16
19
|
var _this = this;
|
|
@@ -28,7 +31,7 @@ var DefaultMentionNameResolver = exports.DefaultMentionNameResolver = /*#__PURE_
|
|
|
28
31
|
queue = _this$splitQueueAtLim.queue,
|
|
29
32
|
extraQueue = _this$splitQueueAtLim.extraQueue;
|
|
30
33
|
_this.nameQueue = extraQueue;
|
|
31
|
-
_this.processingQueue =
|
|
34
|
+
_this.processingQueue = mergeNameResolverQueues(_this.processingQueue, queue);
|
|
32
35
|
_this.client.lookupMentionNames(Array.from(queue.keys())).then(function (response) {
|
|
33
36
|
response.forEach(function (mentionDetail) {
|
|
34
37
|
var id = mentionDetail.id;
|
|
@@ -147,4 +150,31 @@ var DefaultMentionNameResolver = exports.DefaultMentionNameResolver = /*#__PURE_
|
|
|
147
150
|
}]);
|
|
148
151
|
return DefaultMentionNameResolver;
|
|
149
152
|
}();
|
|
150
|
-
|
|
153
|
+
/**
|
|
154
|
+
* Merge the two queues making sure to merge callback arrays for items in queueB already in queueA.
|
|
155
|
+
* This addresses [this ticket](https://product-fabric.atlassian.net/browse/QS-3789).
|
|
156
|
+
*/
|
|
157
|
+
(0, _defineProperty2.default)(DefaultMentionNameResolver, "waitForBatch", 100);
|
|
158
|
+
function mergeNameResolverQueues(queueA, queueB) {
|
|
159
|
+
var queueBeingMerged = new Map((0, _toConsumableArray2.default)(queueA));
|
|
160
|
+
|
|
161
|
+
// now add the items from the second queue that are not already in the
|
|
162
|
+
// merged queue being built
|
|
163
|
+
(0, _toConsumableArray2.default)(queueB).forEach(function (item) {
|
|
164
|
+
var _item = (0, _slicedToArray2.default)(item, 2),
|
|
165
|
+
key = _item[0],
|
|
166
|
+
queueBCallbacks = _item[1];
|
|
167
|
+
var itemAlreadyInMergedQueue = queueBeingMerged.has(key);
|
|
168
|
+
if (!itemAlreadyInMergedQueue) {
|
|
169
|
+
queueBeingMerged.set(key, queueBCallbacks);
|
|
170
|
+
} else {
|
|
171
|
+
var _queueBeingMerged$get;
|
|
172
|
+
// item already in merged queue, merge the callback arrays
|
|
173
|
+
var queueACallbacks = (_queueBeingMerged$get = queueBeingMerged.get(key)) !== null && _queueBeingMerged$get !== void 0 ? _queueBeingMerged$get : [];
|
|
174
|
+
var mergedCallbacks = new Set([].concat((0, _toConsumableArray2.default)(queueBCallbacks), (0, _toConsumableArray2.default)(queueACallbacks)));
|
|
175
|
+
var deduplicatedCallbacks = Array.from(mergedCallbacks.values()); // prevents calling them twice
|
|
176
|
+
queueBeingMerged.set(key, deduplicatedCallbacks);
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
return queueBeingMerged;
|
|
180
|
+
}
|
|
@@ -124,6 +124,7 @@ var ResourcedMention = exports.default = /*#__PURE__*/function (_React$PureCompo
|
|
|
124
124
|
text: props.text || state.resolvedMentionName || '',
|
|
125
125
|
isHighlighted: state.isHighlighted,
|
|
126
126
|
accessLevel: props.accessLevel,
|
|
127
|
+
localId: props.localId,
|
|
127
128
|
onClick: props.onClick,
|
|
128
129
|
onMouseEnter: props.onMouseEnter,
|
|
129
130
|
onMouseLeave: props.onMouseLeave
|
|
@@ -122,7 +122,8 @@ var MentionInternal = exports.MentionInternal = /*#__PURE__*/function (_React$Pu
|
|
|
122
122
|
props = this.props;
|
|
123
123
|
var text = props.text,
|
|
124
124
|
id = props.id,
|
|
125
|
-
accessLevel = props.accessLevel
|
|
125
|
+
accessLevel = props.accessLevel,
|
|
126
|
+
localId = props.localId;
|
|
126
127
|
var mentionType = this.getMentionType();
|
|
127
128
|
var failedMention = text === "@".concat(UNKNOWN_USER_ID);
|
|
128
129
|
var mentionComponent = /*#__PURE__*/_react.default.createElement(_focusRing.default, null, /*#__PURE__*/_react.default.createElement(_PrimitiveMention.default, {
|
|
@@ -135,7 +136,9 @@ var MentionInternal = exports.MentionInternal = /*#__PURE__*/function (_React$Pu
|
|
|
135
136
|
return /*#__PURE__*/_react.default.createElement(_ufoExperiences.UfoErrorBoundary, {
|
|
136
137
|
id: id
|
|
137
138
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
139
|
+
id: localId,
|
|
138
140
|
"data-mention-id": id,
|
|
141
|
+
"data-local-id": localId,
|
|
139
142
|
"data-access-level": accessLevel,
|
|
140
143
|
spellCheck: false
|
|
141
144
|
}, /*#__PURE__*/_react.default.createElement(_MessagesIntlProvider.default, null, mentionType === _types.MentionType.RESTRICTED ? /*#__PURE__*/_react.default.createElement(_react.default.Suspense, {
|
|
@@ -9,4 +9,5 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
|
|
|
9
9
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
10
10
|
var _colors = require("@atlaskit/theme/colors");
|
|
11
11
|
var _templateObject;
|
|
12
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
12
13
|
var DescriptionBylineStyle = exports.DescriptionBylineStyle = _styled.default.span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n font-size: 12px;\n\n margin-top: ", ";\n\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])), "var(--ds-text-subtlest, ".concat(_colors.N100, ")"), "var(--ds-space-025, 2px)");
|
|
@@ -9,20 +9,34 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
|
|
|
9
9
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
10
10
|
var _colors = require("@atlaskit/theme/colors");
|
|
11
11
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
|
|
12
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
12
13
|
var RowStyle = exports.RowStyle = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n align-items: center;\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n overflow: hidden;\n padding: ", " ", ";\n text-overflow: ellipsis;\n vertical-align: middle;\n"])), "var(--ds-space-075, 6px)", "var(--ds-space-150, 12px)");
|
|
14
|
+
|
|
15
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
13
16
|
var AvatarStyle = exports.AvatarStyle = _styled.default.span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n flex: initial;\n opacity: ", ";\n"])), function (props) {
|
|
14
17
|
return props.restricted ? '0.5' : 'inherit';
|
|
15
18
|
});
|
|
19
|
+
|
|
20
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
16
21
|
var NameSectionStyle = exports.NameSectionStyle = _styled.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n flex: 1;\n min-width: 0;\n margin-left: ", ";\n opacity: ", ";\n"])), "var(--ds-space-150, 12px)", function (props) {
|
|
17
22
|
return props.restricted ? '0.5' : 'inherit';
|
|
18
23
|
});
|
|
24
|
+
|
|
25
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
19
26
|
var FullNameStyle = exports.FullNameStyle = _styled.default.span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: ", ";\n"])), "var(--ds-text, ".concat(_colors.N900, ")"));
|
|
27
|
+
|
|
28
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
20
29
|
var InfoSectionStyle = exports.InfoSectionStyle = _styled.default.div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: column;\n text-align: right;\n opacity: ", ";\n\n & {\n /* Lozenge */\n & > span {\n margin-bottom: ", ";\n }\n }\n"])), function (props) {
|
|
21
30
|
return props.restricted ? '0.5' : 'inherit';
|
|
22
31
|
}, "var(--ds-space-025, 2px)");
|
|
32
|
+
|
|
33
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
23
34
|
var TimeStyle = exports.TimeStyle = _styled.default.div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n margin-left: ", ";\n flex: none;\n color: ", ";\n font-size: 12px;\n"])), "var(--ds-space-250, 20px)", "var(--ds-text-subtlest, ".concat(_colors.N100, ")"));
|
|
24
35
|
var MENTION_ITEM_HEIGHT = exports.MENTION_ITEM_HEIGHT = 48;
|
|
36
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
25
37
|
var MentionItemStyle = exports.MentionItemStyle = _styled.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n background-color: ", ";\n display: block;\n overflow: hidden;\n list-style-type: none;\n height: ", "px;\n line-height: 1.2;\n cursor: pointer;\n"])), function (props) {
|
|
26
38
|
return props.selected ? "var(--ds-background-selected, ".concat(_colors.N30, ")") : 'transparent';
|
|
27
39
|
}, MENTION_ITEM_HEIGHT);
|
|
40
|
+
|
|
41
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
28
42
|
var AccessSectionStyle = exports.AccessSectionStyle = _styled.default.div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n padding-left: ", ";\n color: ", ";\n"])), "var(--ds-space-050, 4px)", "var(--ds-text-subtle, ".concat(_colors.N500, ")"));
|
|
@@ -9,6 +9,7 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
|
|
|
9
9
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
10
10
|
var _sharedStyles = require("../../shared-styles");
|
|
11
11
|
var _templateObject;
|
|
12
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
12
13
|
var MentionListStyle = exports.MentionListStyle = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: ", ";\n\n /* list style */\n width: ", ";\n color: ", ";\n\n border: 1px solid ", ";\n border-radius: ", ";\n box-shadow: ", ";\n"])), function (props) {
|
|
13
14
|
return props.empty ? 'none' : 'block';
|
|
14
15
|
}, _sharedStyles.mentionListWidth, "var(--ds-text-subtle, #333)", _sharedStyles.noDialogContainerBorderColor, _sharedStyles.noDialogContainerBorderRadius, _sharedStyles.noDialogContainerBoxShadow);
|
|
@@ -64,29 +64,35 @@ var GenericErrorIllustration = exports.GenericErrorIllustration = /*#__PURE__*/f
|
|
|
64
64
|
}, /*#__PURE__*/_react.default.createElement("g", {
|
|
65
65
|
"data-name": "Layer 1-2"
|
|
66
66
|
}, /*#__PURE__*/_react.default.createElement("path", {
|
|
67
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
67
68
|
className: "cls-1",
|
|
68
69
|
d: "M94.8,74.2l66.4,115.1a15.16,15.16,0,0,1-5.5,20.7,15.4,15.4,0,0,1-7.6,2H15.2A15.19,15.19,0,0,1,0,196.8a15.4,15.4,0,0,1,2-7.6l66.5-115a15.21,15.21,0,0,1,20.7-5.6A15.81,15.81,0,0,1,94.8,74.2Zm-7.6,83.5,2.9-44.3a9.26,9.26,0,0,0-8.6-9.8h-.6a9.18,9.18,0,0,0-9.2,9.2v.6l2.9,44.3a6.33,6.33,0,0,0,6.3,5.9h0A6.26,6.26,0,0,0,87.2,157.7ZM71.4,181.2a9.5,9.5,0,0,0,9.4,9.6h.9a9.79,9.79,0,0,0,8.8-10.5,9.69,9.69,0,0,0-9.7-8.8A9.58,9.58,0,0,0,71.4,181.2Z"
|
|
69
70
|
}), /*#__PURE__*/_react.default.createElement("g", {
|
|
70
71
|
className: "cls-2"
|
|
71
72
|
}, /*#__PURE__*/_react.default.createElement("path", {
|
|
73
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
72
74
|
className: "cls-3",
|
|
73
75
|
d: "M92.7,27.2,85.3.4a.57.57,0,0,0-.7-.4c-.2.1-.4.2-.4.5L79.5,25.6l-5.8-1.1c-.3-.1-.6.2-.7.5v.3L80.3,52a.75.75,0,0,0,.7.5.82.82,0,0,0,.5-.5l4.7-25.1,5.8,1c.3.1.6-.2.7-.5Z"
|
|
74
76
|
}), /*#__PURE__*/_react.default.createElement("path", {
|
|
77
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
75
78
|
className: "cls-3",
|
|
76
79
|
d: "M66.1,41.8,55.2,33.2a.3.3,0,0,0-.4,0,.19.19,0,0,0,0,.3L60.4,45l-2.7,1.3c-.1.1-.2.2-.1.4a.1.1,0,0,0,.1.1l10.9,8.5a.3.3,0,0,0,.4,0,.19.19,0,0,0,0-.3L63.4,43.6l2.7-1.3a.33.33,0,0,0,0-.5Z"
|
|
77
80
|
})), /*#__PURE__*/_react.default.createElement("g", {
|
|
78
81
|
className: "cls-2"
|
|
79
82
|
}, /*#__PURE__*/_react.default.createElement("path", {
|
|
83
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
80
84
|
className: "cls-4",
|
|
81
85
|
d: "M102.1,56.8a1.42,1.42,0,0,1-.6-.2,1,1,0,0,1-.3-1.2c-.2-.8-2.3-2.8-3.5-4.1-3-3-4.9-5-3.8-6.5s3.6-.2,7.3,1.7a28.41,28.41,0,0,0,4.5,2,21.58,21.58,0,0,0-3.3-3.6c-3-3-4.9-5-3.8-6.5s3.6-.2,7.4,1.7a27.65,27.65,0,0,0,4.4,2,21.58,21.58,0,0,0-3.3-3.6c-3-3-4.9-5-3.8-6.5s3.6-.2,7.3,1.7c1.6.8,4.2,2.1,5,2.1a.91.91,0,0,1,1.2,0,1.08,1.08,0,0,1,.2,1.4c-1.1,1.5-3.6.2-7.3-1.7a27.65,27.65,0,0,0-4.4-2,21.58,21.58,0,0,0,3.3,3.6c3,3,4.9,5,3.8,6.5s-3.6.2-7.3-1.7a28.41,28.41,0,0,0-4.5-2,21.58,21.58,0,0,0,3.3,3.6c3,3,4.9,5,3.8,6.5s-3.6.2-7.3-1.7a28.41,28.41,0,0,0-4.5-2,21.58,21.58,0,0,0,3.3,3.6c3,3,4.9,5,3.8,6.5A1.8,1.8,0,0,1,102.1,56.8Z"
|
|
82
86
|
})), /*#__PURE__*/_react.default.createElement("g", {
|
|
83
87
|
className: "cls-5"
|
|
84
88
|
}, /*#__PURE__*/_react.default.createElement("path", {
|
|
89
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
85
90
|
className: "cls-4",
|
|
86
91
|
d: "M107.7,71.1a1.05,1.05,0,0,1-.9-.5c-1-1.9-2.2-4-.9-5.2s3.3.2,5.5,1.6a19.31,19.31,0,0,0,2.9,1.7,15.89,15.89,0,0,0-1.4-3.1c-1.3-2.3-2.5-4.4-1.1-5.6s3.3.2,5.5,1.6c1,.6,2.5,1.7,3.1,1.7a1,1,0,0,1,1.3.1,1,1,0,0,1-.1,1.4c-1.3,1.2-3.3-.2-5.5-1.6a19.31,19.31,0,0,0-2.9-1.7,13.64,13.64,0,0,0,1.4,3.1c1.3,2.3,2.4,4.4,1.1,5.6s-3.3-.2-5.5-1.6a19.31,19.31,0,0,0-2.9-1.7,13.07,13.07,0,0,0,1.2,2.7,1,1,0,0,1-.4,1.4A.6.6,0,0,1,107.7,71.1Zm12.5-7.6Z"
|
|
87
92
|
})), /*#__PURE__*/_react.default.createElement("g", {
|
|
88
93
|
className: "cls-5"
|
|
89
94
|
}, /*#__PURE__*/_react.default.createElement("path", {
|
|
95
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
90
96
|
className: "cls-4",
|
|
91
97
|
d: "M53.4,68.1a2,2,0,0,1-.7-.1c-1.6-.7-1.2-3.1-.8-5.6a10.87,10.87,0,0,0,.3-3.4A15,15,0,0,0,50,61.6c-1.5,2.1-3,4.1-4.6,3.4a1,1,0,0,1-.5-1.3,1,1,0,0,1,1.2-.6,11.23,11.23,0,0,0,2.3-2.7c1.5-2.1,3-4.1,4.7-3.4s1.3,3.1.8,5.7a13.86,13.86,0,0,0-.3,3.3,11.82,11.82,0,0,0,2.1-2.6c1.5-2.1,3-4.1,4.7-3.4s1.2,3.1.9,5.2a1,1,0,1,1-1.9-.3,14.28,14.28,0,0,0,.3-2.9,15,15,0,0,0-2.2,2.6C56,66.4,54.7,68.1,53.4,68.1Z"
|
|
92
98
|
}))))));
|
|
@@ -11,9 +11,15 @@ var _constants = require("@atlaskit/theme/constants");
|
|
|
11
11
|
var _colors = require("@atlaskit/theme/colors");
|
|
12
12
|
var _typography = require("@atlaskit/theme/typography");
|
|
13
13
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
14
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
14
15
|
var MentionListErrorStyle = exports.MentionListErrorStyle = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n align-items: center;\n display: flex;\n justify-content: center;\n flex-direction: column;\n background-color: ", ";\n color: ", ";\n border: 1px solid ", ";\n border-radius: ", "px;\n"])), "var(--ds-surface-overlay, white)", "var(--ds-text-subtle, ".concat(_colors.N500, ")"), "var(--ds-surface-overlay, #fff)", (0, _constants.borderRadius)());
|
|
16
|
+
|
|
17
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
15
18
|
var GenericErrorVisualStyle = exports.GenericErrorVisualStyle = _styled.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n margin-bottom: ", ";\n margin-top: ", ";\n width: ", ";\n"])), "var(--ds-space-100, 8px)", "var(--ds-space-400, 32px)", "var(--ds-space-1000, 80px)");
|
|
16
19
|
|
|
17
20
|
// TODO: Figure out why the themed css function is causing type errors when passed prop children
|
|
21
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
18
22
|
var MentionListErrorHeadlineStyle = exports.MentionListErrorHeadlineStyle = _styled.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n margin-bottom: ", ";\n"])), (0, _typography.h400)(), "var(--ds-space-100, 8px)");
|
|
23
|
+
|
|
24
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
19
25
|
var MentionListAdviceStyle = exports.MentionListAdviceStyle = _styled.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n margin-bottom: ", ";\n"])), "var(--ds-space-600, 48px)");
|
|
@@ -214,7 +214,9 @@ var MentionPicker = exports.MentionPicker = /*#__PURE__*/function (_React$PureCo
|
|
|
214
214
|
return (
|
|
215
215
|
/*#__PURE__*/
|
|
216
216
|
/* old classnames are essential for Confluence tests */
|
|
217
|
-
_react.default.createElement(_styles.MentionPickerStyle
|
|
217
|
+
_react.default.createElement(_styles.MentionPickerStyle
|
|
218
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
219
|
+
, {
|
|
218
220
|
className: "ak-mention-picker",
|
|
219
221
|
visible: visible || info
|
|
220
222
|
}, content)
|
|
@@ -10,7 +10,10 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
|
10
10
|
var _colors = require("@atlaskit/theme/colors");
|
|
11
11
|
var _sharedStyles = require("../../shared-styles");
|
|
12
12
|
var _templateObject, _templateObject2;
|
|
13
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
13
14
|
var MentionPickerStyle = exports.MentionPickerStyle = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: ", ";\n"])), function (props) {
|
|
14
15
|
return props.visible ? 'block' : 'none';
|
|
15
16
|
});
|
|
17
|
+
|
|
18
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
16
19
|
var MentionPickerInfoStyle = exports.MentionPickerInfoStyle = _styled.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n background: ", ";\n color: ", ";\n border: 1px solid ", ";\n border-radius: ", ";\n box-shadow: ", ";\n display: block;\n width: ", ";\n white-space: nowrap;\n\n & {\n p {\n margin: 0;\n overflow: hidden;\n padding: ", ";\n text-overflow: ellipsis;\n }\n }\n"])), "var(--ds-surface, #fff)", "var(--ds-text-subtlest, ".concat(_colors.N100, ")"), _sharedStyles.noDialogContainerBorderColor, _sharedStyles.noDialogContainerBorderRadius, _sharedStyles.noDialogContainerBoxShadow, _sharedStyles.mentionListWidth, "var(--ds-space-100, 8px)");
|
|
@@ -10,4 +10,5 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
|
10
10
|
var _constants = require("@atlaskit/theme/constants");
|
|
11
11
|
var _sharedStyles = require("../../shared-styles");
|
|
12
12
|
var _templateObject;
|
|
13
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
13
14
|
var ScrollableStyle = exports.ScrollableStyle = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: block;\n overflow-x: hidden;\n overflow-y: auto;\n\n padding: ", " 0;\n margin: 0;\n\n background: ", ";\n max-height: ", ";\n\n border-radius: ", "px;\n"])), "var(--ds-space-050, 4px)", "var(--ds-surface, white)", _sharedStyles.scrollableMaxHeight, (0, _constants.borderRadius)());
|
|
@@ -12,7 +12,7 @@ var _types = require("../types");
|
|
|
12
12
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
13
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
14
|
var packageName = "@atlaskit/mention";
|
|
15
|
-
var packageVersion = "23.0.
|
|
15
|
+
var packageVersion = "23.0.4";
|
|
16
16
|
var SLI_EVENT_TYPE = exports.SLI_EVENT_TYPE = 'sli';
|
|
17
17
|
var SMART_EVENT_TYPE = exports.SMART_EVENT_TYPE = 'smart';
|
|
18
18
|
var SliNames = exports.SliNames = /*#__PURE__*/function (SliNames) {
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import { MentionNameStatus } from '../types';
|
|
3
3
|
import { fireAnalyticsMentionHydrationEvent } from '../util/analytics';
|
|
4
|
+
|
|
5
|
+
/** A queue for user ids */
|
|
6
|
+
|
|
4
7
|
export class DefaultMentionNameResolver {
|
|
5
8
|
constructor(client, analyticsProps = {}) {
|
|
6
9
|
_defineProperty(this, "nameCache", new Map());
|
|
@@ -16,7 +19,7 @@ export class DefaultMentionNameResolver {
|
|
|
16
19
|
extraQueue
|
|
17
20
|
} = this.splitQueueAtLimit();
|
|
18
21
|
this.nameQueue = extraQueue;
|
|
19
|
-
this.processingQueue =
|
|
22
|
+
this.processingQueue = mergeNameResolverQueues(this.processingQueue, queue);
|
|
20
23
|
this.client.lookupMentionNames(Array.from(queue.keys())).then(response => {
|
|
21
24
|
response.forEach(mentionDetail => {
|
|
22
25
|
const {
|
|
@@ -124,4 +127,30 @@ export class DefaultMentionNameResolver {
|
|
|
124
127
|
this.fireHydrationEvent(action, id, fromCache, duration);
|
|
125
128
|
}
|
|
126
129
|
}
|
|
127
|
-
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Merge the two queues making sure to merge callback arrays for items in queueB already in queueA.
|
|
133
|
+
* This addresses [this ticket](https://product-fabric.atlassian.net/browse/QS-3789).
|
|
134
|
+
*/
|
|
135
|
+
_defineProperty(DefaultMentionNameResolver, "waitForBatch", 100);
|
|
136
|
+
export function mergeNameResolverQueues(queueA, queueB) {
|
|
137
|
+
const queueBeingMerged = new Map([...queueA]);
|
|
138
|
+
|
|
139
|
+
// now add the items from the second queue that are not already in the
|
|
140
|
+
// merged queue being built
|
|
141
|
+
[...queueB].forEach(item => {
|
|
142
|
+
const [key, queueBCallbacks] = item;
|
|
143
|
+
const itemAlreadyInMergedQueue = queueBeingMerged.has(key);
|
|
144
|
+
if (!itemAlreadyInMergedQueue) {
|
|
145
|
+
queueBeingMerged.set(key, queueBCallbacks);
|
|
146
|
+
} else {
|
|
147
|
+
var _queueBeingMerged$get;
|
|
148
|
+
// item already in merged queue, merge the callback arrays
|
|
149
|
+
const queueACallbacks = (_queueBeingMerged$get = queueBeingMerged.get(key)) !== null && _queueBeingMerged$get !== void 0 ? _queueBeingMerged$get : [];
|
|
150
|
+
const mergedCallbacks = new Set([...queueBCallbacks, ...queueACallbacks]);
|
|
151
|
+
const deduplicatedCallbacks = Array.from(mergedCallbacks.values()); // prevents calling them twice
|
|
152
|
+
queueBeingMerged.set(key, deduplicatedCallbacks);
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
return queueBeingMerged;
|
|
156
|
+
}
|
|
@@ -95,6 +95,7 @@ export default class ResourcedMention extends React.PureComponent {
|
|
|
95
95
|
text: props.text || state.resolvedMentionName || '',
|
|
96
96
|
isHighlighted: state.isHighlighted,
|
|
97
97
|
accessLevel: props.accessLevel,
|
|
98
|
+
localId: props.localId,
|
|
98
99
|
onClick: props.onClick,
|
|
99
100
|
onMouseEnter: props.onMouseEnter,
|
|
100
101
|
onMouseLeave: props.onMouseLeave
|
|
@@ -99,7 +99,8 @@ export class MentionInternal extends React.PureComponent {
|
|
|
99
99
|
const {
|
|
100
100
|
text,
|
|
101
101
|
id,
|
|
102
|
-
accessLevel
|
|
102
|
+
accessLevel,
|
|
103
|
+
localId
|
|
103
104
|
} = props;
|
|
104
105
|
const mentionType = this.getMentionType();
|
|
105
106
|
const failedMention = text === `@${UNKNOWN_USER_ID}`;
|
|
@@ -113,7 +114,9 @@ export class MentionInternal extends React.PureComponent {
|
|
|
113
114
|
return /*#__PURE__*/React.createElement(UfoErrorBoundary, {
|
|
114
115
|
id: id
|
|
115
116
|
}, /*#__PURE__*/React.createElement("span", {
|
|
117
|
+
id: localId,
|
|
116
118
|
"data-mention-id": id,
|
|
119
|
+
"data-local-id": localId,
|
|
117
120
|
"data-access-level": accessLevel,
|
|
118
121
|
spellCheck: false
|
|
119
122
|
}, /*#__PURE__*/React.createElement(MessagesIntlProvider, null, mentionType === MentionType.RESTRICTED ? /*#__PURE__*/React.createElement(React.Suspense, {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import styled from '@emotion/styled';
|
|
2
2
|
import { N100 } from '@atlaskit/theme/colors';
|
|
3
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
3
4
|
export const DescriptionBylineStyle = styled.span`
|
|
4
5
|
color: ${`var(--ds-text-subtlest, ${N100})`};
|
|
5
6
|
font-size: 12px;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import styled from '@emotion/styled';
|
|
2
2
|
import { N900, N100, N30, N500 } from '@atlaskit/theme/colors';
|
|
3
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
3
4
|
export const RowStyle = styled.div`
|
|
4
5
|
align-items: center;
|
|
5
6
|
display: flex;
|
|
@@ -10,17 +11,23 @@ export const RowStyle = styled.div`
|
|
|
10
11
|
text-overflow: ellipsis;
|
|
11
12
|
vertical-align: middle;
|
|
12
13
|
`;
|
|
14
|
+
|
|
15
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
13
16
|
export const AvatarStyle = styled.span`
|
|
14
17
|
position: relative;
|
|
15
18
|
flex: initial;
|
|
16
19
|
opacity: ${props => props.restricted ? '0.5' : 'inherit'};
|
|
17
20
|
`;
|
|
21
|
+
|
|
22
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
18
23
|
export const NameSectionStyle = styled.div`
|
|
19
24
|
flex: 1;
|
|
20
25
|
min-width: 0;
|
|
21
26
|
margin-left: ${"var(--ds-space-150, 12px)"};
|
|
22
27
|
opacity: ${props => props.restricted ? '0.5' : 'inherit'};
|
|
23
28
|
`;
|
|
29
|
+
|
|
30
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
24
31
|
export const FullNameStyle = styled.span`
|
|
25
32
|
display: block;
|
|
26
33
|
overflow: hidden;
|
|
@@ -28,6 +35,8 @@ export const FullNameStyle = styled.span`
|
|
|
28
35
|
white-space: nowrap;
|
|
29
36
|
color: ${`var(--ds-text, ${N900})`};
|
|
30
37
|
`;
|
|
38
|
+
|
|
39
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
31
40
|
export const InfoSectionStyle = styled.div`
|
|
32
41
|
display: flex;
|
|
33
42
|
flex-direction: column;
|
|
@@ -41,6 +50,8 @@ export const InfoSectionStyle = styled.div`
|
|
|
41
50
|
}
|
|
42
51
|
}
|
|
43
52
|
`;
|
|
53
|
+
|
|
54
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
44
55
|
export const TimeStyle = styled.div`
|
|
45
56
|
margin-left: ${"var(--ds-space-250, 20px)"};
|
|
46
57
|
flex: none;
|
|
@@ -48,6 +59,7 @@ export const TimeStyle = styled.div`
|
|
|
48
59
|
font-size: 12px;
|
|
49
60
|
`;
|
|
50
61
|
export const MENTION_ITEM_HEIGHT = 48;
|
|
62
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
51
63
|
export const MentionItemStyle = styled.div`
|
|
52
64
|
background-color: ${props => props.selected ? `var(--ds-background-selected, ${N30})` : 'transparent'};
|
|
53
65
|
display: block;
|
|
@@ -57,6 +69,8 @@ export const MentionItemStyle = styled.div`
|
|
|
57
69
|
line-height: 1.2;
|
|
58
70
|
cursor: pointer;
|
|
59
71
|
`;
|
|
72
|
+
|
|
73
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
60
74
|
export const AccessSectionStyle = styled.div`
|
|
61
75
|
padding-left: ${"var(--ds-space-050, 4px)"};
|
|
62
76
|
color: ${`var(--ds-text-subtle, ${N500})`};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import styled from '@emotion/styled';
|
|
2
2
|
import { mentionListWidth, noDialogContainerBorderColor, noDialogContainerBorderRadius, noDialogContainerBoxShadow } from '../../shared-styles';
|
|
3
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
3
4
|
export const MentionListStyle = styled.div`
|
|
4
5
|
display: ${props => props.empty ? 'none' : 'block'};
|
|
5
6
|
|
|
@@ -43,29 +43,35 @@ export class GenericErrorIllustration extends React.PureComponent {
|
|
|
43
43
|
}, /*#__PURE__*/React.createElement("g", {
|
|
44
44
|
"data-name": "Layer 1-2"
|
|
45
45
|
}, /*#__PURE__*/React.createElement("path", {
|
|
46
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
46
47
|
className: "cls-1",
|
|
47
48
|
d: "M94.8,74.2l66.4,115.1a15.16,15.16,0,0,1-5.5,20.7,15.4,15.4,0,0,1-7.6,2H15.2A15.19,15.19,0,0,1,0,196.8a15.4,15.4,0,0,1,2-7.6l66.5-115a15.21,15.21,0,0,1,20.7-5.6A15.81,15.81,0,0,1,94.8,74.2Zm-7.6,83.5,2.9-44.3a9.26,9.26,0,0,0-8.6-9.8h-.6a9.18,9.18,0,0,0-9.2,9.2v.6l2.9,44.3a6.33,6.33,0,0,0,6.3,5.9h0A6.26,6.26,0,0,0,87.2,157.7ZM71.4,181.2a9.5,9.5,0,0,0,9.4,9.6h.9a9.79,9.79,0,0,0,8.8-10.5,9.69,9.69,0,0,0-9.7-8.8A9.58,9.58,0,0,0,71.4,181.2Z"
|
|
48
49
|
}), /*#__PURE__*/React.createElement("g", {
|
|
49
50
|
className: "cls-2"
|
|
50
51
|
}, /*#__PURE__*/React.createElement("path", {
|
|
52
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
51
53
|
className: "cls-3",
|
|
52
54
|
d: "M92.7,27.2,85.3.4a.57.57,0,0,0-.7-.4c-.2.1-.4.2-.4.5L79.5,25.6l-5.8-1.1c-.3-.1-.6.2-.7.5v.3L80.3,52a.75.75,0,0,0,.7.5.82.82,0,0,0,.5-.5l4.7-25.1,5.8,1c.3.1.6-.2.7-.5Z"
|
|
53
55
|
}), /*#__PURE__*/React.createElement("path", {
|
|
56
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
54
57
|
className: "cls-3",
|
|
55
58
|
d: "M66.1,41.8,55.2,33.2a.3.3,0,0,0-.4,0,.19.19,0,0,0,0,.3L60.4,45l-2.7,1.3c-.1.1-.2.2-.1.4a.1.1,0,0,0,.1.1l10.9,8.5a.3.3,0,0,0,.4,0,.19.19,0,0,0,0-.3L63.4,43.6l2.7-1.3a.33.33,0,0,0,0-.5Z"
|
|
56
59
|
})), /*#__PURE__*/React.createElement("g", {
|
|
57
60
|
className: "cls-2"
|
|
58
61
|
}, /*#__PURE__*/React.createElement("path", {
|
|
62
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
59
63
|
className: "cls-4",
|
|
60
64
|
d: "M102.1,56.8a1.42,1.42,0,0,1-.6-.2,1,1,0,0,1-.3-1.2c-.2-.8-2.3-2.8-3.5-4.1-3-3-4.9-5-3.8-6.5s3.6-.2,7.3,1.7a28.41,28.41,0,0,0,4.5,2,21.58,21.58,0,0,0-3.3-3.6c-3-3-4.9-5-3.8-6.5s3.6-.2,7.4,1.7a27.65,27.65,0,0,0,4.4,2,21.58,21.58,0,0,0-3.3-3.6c-3-3-4.9-5-3.8-6.5s3.6-.2,7.3,1.7c1.6.8,4.2,2.1,5,2.1a.91.91,0,0,1,1.2,0,1.08,1.08,0,0,1,.2,1.4c-1.1,1.5-3.6.2-7.3-1.7a27.65,27.65,0,0,0-4.4-2,21.58,21.58,0,0,0,3.3,3.6c3,3,4.9,5,3.8,6.5s-3.6.2-7.3-1.7a28.41,28.41,0,0,0-4.5-2,21.58,21.58,0,0,0,3.3,3.6c3,3,4.9,5,3.8,6.5s-3.6.2-7.3-1.7a28.41,28.41,0,0,0-4.5-2,21.58,21.58,0,0,0,3.3,3.6c3,3,4.9,5,3.8,6.5A1.8,1.8,0,0,1,102.1,56.8Z"
|
|
61
65
|
})), /*#__PURE__*/React.createElement("g", {
|
|
62
66
|
className: "cls-5"
|
|
63
67
|
}, /*#__PURE__*/React.createElement("path", {
|
|
68
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
64
69
|
className: "cls-4",
|
|
65
70
|
d: "M107.7,71.1a1.05,1.05,0,0,1-.9-.5c-1-1.9-2.2-4-.9-5.2s3.3.2,5.5,1.6a19.31,19.31,0,0,0,2.9,1.7,15.89,15.89,0,0,0-1.4-3.1c-1.3-2.3-2.5-4.4-1.1-5.6s3.3.2,5.5,1.6c1,.6,2.5,1.7,3.1,1.7a1,1,0,0,1,1.3.1,1,1,0,0,1-.1,1.4c-1.3,1.2-3.3-.2-5.5-1.6a19.31,19.31,0,0,0-2.9-1.7,13.64,13.64,0,0,0,1.4,3.1c1.3,2.3,2.4,4.4,1.1,5.6s-3.3-.2-5.5-1.6a19.31,19.31,0,0,0-2.9-1.7,13.07,13.07,0,0,0,1.2,2.7,1,1,0,0,1-.4,1.4A.6.6,0,0,1,107.7,71.1Zm12.5-7.6Z"
|
|
66
71
|
})), /*#__PURE__*/React.createElement("g", {
|
|
67
72
|
className: "cls-5"
|
|
68
73
|
}, /*#__PURE__*/React.createElement("path", {
|
|
74
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
69
75
|
className: "cls-4",
|
|
70
76
|
d: "M53.4,68.1a2,2,0,0,1-.7-.1c-1.6-.7-1.2-3.1-.8-5.6a10.87,10.87,0,0,0,.3-3.4A15,15,0,0,0,50,61.6c-1.5,2.1-3,4.1-4.6,3.4a1,1,0,0,1-.5-1.3,1,1,0,0,1,1.2-.6,11.23,11.23,0,0,0,2.3-2.7c1.5-2.1,3-4.1,4.7-3.4s1.3,3.1.8,5.7a13.86,13.86,0,0,0-.3,3.3,11.82,11.82,0,0,0,2.1-2.6c1.5-2.1,3-4.1,4.7-3.4s1.2,3.1.9,5.2a1,1,0,1,1-1.9-.3,14.28,14.28,0,0,0,.3-2.9,15,15,0,0,0-2.2,2.6C56,66.4,54.7,68.1,53.4,68.1Z"
|
|
71
77
|
}))))));
|
|
@@ -2,6 +2,8 @@ import styled from '@emotion/styled';
|
|
|
2
2
|
import { borderRadius } from '@atlaskit/theme/constants';
|
|
3
3
|
import { N500 } from '@atlaskit/theme/colors';
|
|
4
4
|
import { h400 } from '@atlaskit/theme/typography';
|
|
5
|
+
|
|
6
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
5
7
|
export const MentionListErrorStyle = styled.div`
|
|
6
8
|
align-items: center;
|
|
7
9
|
display: flex;
|
|
@@ -12,6 +14,8 @@ export const MentionListErrorStyle = styled.div`
|
|
|
12
14
|
border: 1px solid ${"var(--ds-surface-overlay, #fff)"};
|
|
13
15
|
border-radius: ${borderRadius()}px;
|
|
14
16
|
`;
|
|
17
|
+
|
|
18
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
15
19
|
export const GenericErrorVisualStyle = styled.div`
|
|
16
20
|
margin-bottom: ${"var(--ds-space-100, 8px)"};
|
|
17
21
|
margin-top: ${"var(--ds-space-400, 32px)"};
|
|
@@ -19,10 +23,13 @@ export const GenericErrorVisualStyle = styled.div`
|
|
|
19
23
|
`;
|
|
20
24
|
|
|
21
25
|
// TODO: Figure out why the themed css function is causing type errors when passed prop children
|
|
26
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
22
27
|
export const MentionListErrorHeadlineStyle = styled.div`
|
|
23
28
|
${h400()};
|
|
24
29
|
margin-bottom: ${"var(--ds-space-100, 8px)"};
|
|
25
30
|
`;
|
|
31
|
+
|
|
32
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
26
33
|
export const MentionListAdviceStyle = styled.div`
|
|
27
34
|
margin-bottom: ${"var(--ds-space-600, 48px)"};
|
|
28
35
|
`;
|
|
@@ -179,7 +179,9 @@ export class MentionPicker extends React.PureComponent {
|
|
|
179
179
|
return (
|
|
180
180
|
/*#__PURE__*/
|
|
181
181
|
/* old classnames are essential for Confluence tests */
|
|
182
|
-
React.createElement(MentionPickerStyle
|
|
182
|
+
React.createElement(MentionPickerStyle
|
|
183
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
184
|
+
, {
|
|
183
185
|
className: "ak-mention-picker",
|
|
184
186
|
visible: visible || info
|
|
185
187
|
}, content)
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import styled from '@emotion/styled';
|
|
2
2
|
import { N100 } from '@atlaskit/theme/colors';
|
|
3
3
|
import { mentionListWidth, noDialogContainerBorderColor, noDialogContainerBorderRadius, noDialogContainerBoxShadow } from '../../shared-styles';
|
|
4
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
4
5
|
export const MentionPickerStyle = styled.div`
|
|
5
6
|
display: ${props => props.visible ? 'block' : 'none'};
|
|
6
7
|
`;
|
|
8
|
+
|
|
9
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
7
10
|
export const MentionPickerInfoStyle = styled.div`
|
|
8
11
|
background: ${"var(--ds-surface, #fff)"};
|
|
9
12
|
color: ${`var(--ds-text-subtlest, ${N100})`};
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import styled from '@emotion/styled';
|
|
2
2
|
import { borderRadius } from '@atlaskit/theme/constants';
|
|
3
3
|
import { scrollableMaxHeight } from '../../shared-styles';
|
|
4
|
+
|
|
5
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled -- To migrate as part of go/ui-styling-standard
|
|
4
6
|
export const ScrollableStyle = styled.div`
|
|
5
7
|
display: block;
|
|
6
8
|
overflow-x: hidden;
|
|
@@ -2,7 +2,7 @@ import { OPERATIONAL_EVENT_TYPE, UI_EVENT_TYPE } from '@atlaskit/analytics-gas-t
|
|
|
2
2
|
import { ELEMENTS_CHANNEL } from '../_constants';
|
|
3
3
|
import { isSpecialMentionText } from '../types';
|
|
4
4
|
const packageName = "@atlaskit/mention";
|
|
5
|
-
const packageVersion = "23.0.
|
|
5
|
+
const packageVersion = "23.0.4";
|
|
6
6
|
export const SLI_EVENT_TYPE = 'sli';
|
|
7
7
|
export const SMART_EVENT_TYPE = 'smart';
|
|
8
8
|
export let SliNames = /*#__PURE__*/function (SliNames) {
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
1
2
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
3
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
3
4
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
4
5
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
5
6
|
import { MentionNameStatus } from '../types';
|
|
6
7
|
import { fireAnalyticsMentionHydrationEvent } from '../util/analytics';
|
|
8
|
+
|
|
9
|
+
/** A queue for user ids */
|
|
10
|
+
|
|
7
11
|
export var DefaultMentionNameResolver = /*#__PURE__*/function () {
|
|
8
12
|
function DefaultMentionNameResolver(client) {
|
|
9
13
|
var _this = this;
|
|
@@ -21,7 +25,7 @@ export var DefaultMentionNameResolver = /*#__PURE__*/function () {
|
|
|
21
25
|
queue = _this$splitQueueAtLim.queue,
|
|
22
26
|
extraQueue = _this$splitQueueAtLim.extraQueue;
|
|
23
27
|
_this.nameQueue = extraQueue;
|
|
24
|
-
_this.processingQueue =
|
|
28
|
+
_this.processingQueue = mergeNameResolverQueues(_this.processingQueue, queue);
|
|
25
29
|
_this.client.lookupMentionNames(Array.from(queue.keys())).then(function (response) {
|
|
26
30
|
response.forEach(function (mentionDetail) {
|
|
27
31
|
var id = mentionDetail.id;
|
|
@@ -140,4 +144,32 @@ export var DefaultMentionNameResolver = /*#__PURE__*/function () {
|
|
|
140
144
|
}]);
|
|
141
145
|
return DefaultMentionNameResolver;
|
|
142
146
|
}();
|
|
143
|
-
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Merge the two queues making sure to merge callback arrays for items in queueB already in queueA.
|
|
150
|
+
* This addresses [this ticket](https://product-fabric.atlassian.net/browse/QS-3789).
|
|
151
|
+
*/
|
|
152
|
+
_defineProperty(DefaultMentionNameResolver, "waitForBatch", 100);
|
|
153
|
+
export function mergeNameResolverQueues(queueA, queueB) {
|
|
154
|
+
var queueBeingMerged = new Map(_toConsumableArray(queueA));
|
|
155
|
+
|
|
156
|
+
// now add the items from the second queue that are not already in the
|
|
157
|
+
// merged queue being built
|
|
158
|
+
_toConsumableArray(queueB).forEach(function (item) {
|
|
159
|
+
var _item = _slicedToArray(item, 2),
|
|
160
|
+
key = _item[0],
|
|
161
|
+
queueBCallbacks = _item[1];
|
|
162
|
+
var itemAlreadyInMergedQueue = queueBeingMerged.has(key);
|
|
163
|
+
if (!itemAlreadyInMergedQueue) {
|
|
164
|
+
queueBeingMerged.set(key, queueBCallbacks);
|
|
165
|
+
} else {
|
|
166
|
+
var _queueBeingMerged$get;
|
|
167
|
+
// item already in merged queue, merge the callback arrays
|
|
168
|
+
var queueACallbacks = (_queueBeingMerged$get = queueBeingMerged.get(key)) !== null && _queueBeingMerged$get !== void 0 ? _queueBeingMerged$get : [];
|
|
169
|
+
var mergedCallbacks = new Set([].concat(_toConsumableArray(queueBCallbacks), _toConsumableArray(queueACallbacks)));
|
|
170
|
+
var deduplicatedCallbacks = Array.from(mergedCallbacks.values()); // prevents calling them twice
|
|
171
|
+
queueBeingMerged.set(key, deduplicatedCallbacks);
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
return queueBeingMerged;
|
|
175
|
+
}
|
|
@@ -114,6 +114,7 @@ var ResourcedMention = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
114
114
|
text: props.text || state.resolvedMentionName || '',
|
|
115
115
|
isHighlighted: state.isHighlighted,
|
|
116
116
|
accessLevel: props.accessLevel,
|
|
117
|
+
localId: props.localId,
|
|
117
118
|
onClick: props.onClick,
|
|
118
119
|
onMouseEnter: props.onMouseEnter,
|
|
119
120
|
onMouseLeave: props.onMouseLeave
|