@atlaskit/emoji 73.3.2 → 73.3.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 +15 -0
- package/dist/cjs/api/EmojiRepository.js +1 -7
- package/dist/cjs/api/EmojiResource.js +1 -3
- package/dist/cjs/components/common/DeleteButton.js +2 -8
- package/dist/cjs/components/common/EmojiActions.compiled.css +1 -3
- package/dist/cjs/components/common/EmojiActions.js +6 -45
- package/dist/cjs/components/common/EmojiDeletePreview.compiled.css +1 -16
- package/dist/cjs/components/common/EmojiDeletePreview.js +17 -65
- package/dist/cjs/components/common/EmojiErrorMessage.js +2 -9
- package/dist/cjs/components/common/EmojiRadioButton.js +3 -4
- package/dist/cjs/components/common/EmojiUploadPicker.compiled.css +1 -14
- package/dist/cjs/components/common/EmojiUploadPicker.js +7 -90
- package/dist/cjs/components/common/FileChooser.js +15 -25
- package/dist/cjs/components/common/TonePreviewButton.compiled.css +1 -2
- package/dist/cjs/components/common/TonePreviewButton.js +2 -23
- package/dist/cjs/components/common/ToneSelectorInternal.js +1 -10
- package/dist/cjs/components/picker/CategorySelector.compiled.css +0 -6
- package/dist/cjs/components/picker/CategorySelector.js +5 -44
- package/dist/cjs/components/picker/EmojiPickerComponent.compiled.css +1 -2
- package/dist/cjs/components/picker/EmojiPickerComponent.js +38 -57
- package/dist/cjs/components/picker/EmojiPickerEmojiRow.js +1 -2
- package/dist/cjs/components/picker/EmojiPickerFooter.compiled.css +0 -2
- package/dist/cjs/components/picker/EmojiPickerFooter.js +1 -8
- package/dist/cjs/components/picker/EmojiPickerInternal.compiled.css +1 -2
- package/dist/cjs/components/picker/EmojiPickerInternal.js +1 -9
- package/dist/cjs/components/picker/EmojiPickerList.js +30 -36
- package/dist/cjs/components/picker/EmojiPickerListSearch.compiled.css +0 -1
- package/dist/cjs/components/picker/EmojiPickerListSearch.js +2 -24
- package/dist/cjs/components/picker/EmojiPickerSizes.js +0 -1
- package/dist/cjs/components/picker/VirtualList.js +2 -3
- package/dist/cjs/components/picker/categories.js +1 -84
- package/dist/cjs/components/uploader/EmojiUploadComponent.js +0 -2
- package/dist/cjs/util/analytics/createEvent.js +1 -1
- package/dist/cjs/util/constants.js +1 -2
- package/dist/es2019/api/EmojiRepository.js +1 -7
- package/dist/es2019/api/EmojiResource.js +1 -3
- package/dist/es2019/components/common/DeleteButton.js +2 -8
- package/dist/es2019/components/common/EmojiActions.compiled.css +1 -3
- package/dist/es2019/components/common/EmojiActions.js +6 -45
- package/dist/es2019/components/common/EmojiDeletePreview.compiled.css +1 -16
- package/dist/es2019/components/common/EmojiDeletePreview.js +17 -65
- package/dist/es2019/components/common/EmojiErrorMessage.js +2 -9
- package/dist/es2019/components/common/EmojiRadioButton.js +2 -3
- package/dist/es2019/components/common/EmojiUploadPicker.compiled.css +1 -14
- package/dist/es2019/components/common/EmojiUploadPicker.js +7 -87
- package/dist/es2019/components/common/FileChooser.js +15 -25
- package/dist/es2019/components/common/TonePreviewButton.compiled.css +1 -2
- package/dist/es2019/components/common/TonePreviewButton.js +2 -23
- package/dist/es2019/components/common/ToneSelectorInternal.js +1 -10
- package/dist/es2019/components/picker/CategorySelector.compiled.css +0 -6
- package/dist/es2019/components/picker/CategorySelector.js +5 -44
- package/dist/es2019/components/picker/EmojiPickerComponent.compiled.css +1 -2
- package/dist/es2019/components/picker/EmojiPickerComponent.js +44 -61
- package/dist/es2019/components/picker/EmojiPickerEmojiRow.js +1 -2
- package/dist/es2019/components/picker/EmojiPickerFooter.compiled.css +0 -2
- package/dist/es2019/components/picker/EmojiPickerFooter.js +1 -8
- package/dist/es2019/components/picker/EmojiPickerInternal.compiled.css +1 -2
- package/dist/es2019/components/picker/EmojiPickerInternal.js +1 -9
- package/dist/es2019/components/picker/EmojiPickerList.js +29 -35
- package/dist/es2019/components/picker/EmojiPickerListSearch.compiled.css +0 -1
- package/dist/es2019/components/picker/EmojiPickerListSearch.js +2 -24
- package/dist/es2019/components/picker/EmojiPickerSizes.js +1 -2
- package/dist/es2019/components/picker/VirtualList.js +2 -3
- package/dist/es2019/components/picker/categories.js +0 -83
- package/dist/es2019/components/uploader/EmojiUploadComponent.js +0 -2
- package/dist/es2019/util/analytics/createEvent.js +1 -1
- package/dist/es2019/util/constants.js +0 -1
- package/dist/esm/api/EmojiRepository.js +1 -7
- package/dist/esm/api/EmojiResource.js +1 -3
- package/dist/esm/components/common/DeleteButton.js +2 -8
- package/dist/esm/components/common/EmojiActions.compiled.css +1 -3
- package/dist/esm/components/common/EmojiActions.js +6 -45
- package/dist/esm/components/common/EmojiDeletePreview.compiled.css +1 -16
- package/dist/esm/components/common/EmojiDeletePreview.js +17 -65
- package/dist/esm/components/common/EmojiErrorMessage.js +2 -9
- package/dist/esm/components/common/EmojiRadioButton.js +3 -4
- package/dist/esm/components/common/EmojiUploadPicker.compiled.css +1 -14
- package/dist/esm/components/common/EmojiUploadPicker.js +7 -90
- package/dist/esm/components/common/FileChooser.js +15 -25
- package/dist/esm/components/common/TonePreviewButton.compiled.css +1 -2
- package/dist/esm/components/common/TonePreviewButton.js +2 -23
- package/dist/esm/components/common/ToneSelectorInternal.js +1 -10
- package/dist/esm/components/picker/CategorySelector.compiled.css +0 -6
- package/dist/esm/components/picker/CategorySelector.js +6 -45
- package/dist/esm/components/picker/EmojiPickerComponent.compiled.css +1 -2
- package/dist/esm/components/picker/EmojiPickerComponent.js +39 -58
- package/dist/esm/components/picker/EmojiPickerEmojiRow.js +1 -2
- package/dist/esm/components/picker/EmojiPickerFooter.compiled.css +0 -2
- package/dist/esm/components/picker/EmojiPickerFooter.js +1 -8
- package/dist/esm/components/picker/EmojiPickerInternal.compiled.css +1 -2
- package/dist/esm/components/picker/EmojiPickerInternal.js +1 -9
- package/dist/esm/components/picker/EmojiPickerList.js +31 -37
- package/dist/esm/components/picker/EmojiPickerListSearch.compiled.css +0 -1
- package/dist/esm/components/picker/EmojiPickerListSearch.js +2 -24
- package/dist/esm/components/picker/EmojiPickerSizes.js +1 -2
- package/dist/esm/components/picker/VirtualList.js +2 -3
- package/dist/esm/components/picker/categories.js +0 -83
- package/dist/esm/components/uploader/EmojiUploadComponent.js +0 -2
- package/dist/esm/util/analytics/createEvent.js +1 -1
- package/dist/esm/util/constants.js +0 -1
- package/dist/types/components/common/EmojiUploadPicker.d.ts +0 -1
- package/dist/types/components/picker/EmojiPickerSizes.d.ts +0 -1
- package/dist/types/components/picker/categories.d.ts +0 -1
- package/dist/types/components/uploader/EmojiUploadComponent.d.ts +0 -1
- package/dist/types/components/uploader/EmojiUploader.d.ts +0 -1
- package/dist/types/util/constants.d.ts +0 -1
- package/package.json +2 -15
- package/dist/cjs/components/common/AddOwnEmoji.compiled.css +0 -6
- package/dist/cjs/components/common/AddOwnEmoji.js +0 -58
- package/dist/cjs/components/common/EmojiUploadPreview.compiled.css +0 -19
- package/dist/cjs/components/common/EmojiUploadPreview.js +0 -119
- package/dist/cjs/components/common/isRefreshEmojiPickerEnabled.js +0 -10
- package/dist/cjs/components/picker/sortCategories.js +0 -15
- package/dist/cjs/util/teamoji26RefreshEmojiPicker.js +0 -19
- package/dist/es2019/components/common/AddOwnEmoji.compiled.css +0 -6
- package/dist/es2019/components/common/AddOwnEmoji.js +0 -49
- package/dist/es2019/components/common/EmojiUploadPreview.compiled.css +0 -19
- package/dist/es2019/components/common/EmojiUploadPreview.js +0 -100
- package/dist/es2019/components/common/isRefreshEmojiPickerEnabled.js +0 -4
- package/dist/es2019/components/picker/sortCategories.js +0 -7
- package/dist/es2019/util/teamoji26RefreshEmojiPicker.js +0 -13
- package/dist/esm/components/common/AddOwnEmoji.compiled.css +0 -6
- package/dist/esm/components/common/AddOwnEmoji.js +0 -49
- package/dist/esm/components/common/EmojiUploadPreview.compiled.css +0 -19
- package/dist/esm/components/common/EmojiUploadPreview.js +0 -110
- package/dist/esm/components/common/isRefreshEmojiPickerEnabled.js +0 -4
- package/dist/esm/components/picker/sortCategories.js +0 -9
- package/dist/esm/util/teamoji26RefreshEmojiPicker.js +0 -13
- package/dist/types/components/common/AddOwnEmoji.d.ts +0 -9
- package/dist/types/components/common/EmojiUploadPreview.d.ts +0 -22
- package/dist/types/components/common/isRefreshEmojiPickerEnabled.d.ts +0 -1
- package/dist/types/components/picker/sortCategories.d.ts +0 -6
- package/dist/types/util/teamoji26RefreshEmojiPicker.d.ts +0 -6
|
@@ -45,8 +45,7 @@ import { filterHiddenEmojis } from '../../util/filter-hidden-emojis';
|
|
|
45
45
|
import { getToneEmoji } from '../../util/get-tone-emoji';
|
|
46
46
|
import { isEmojiDescription } from '../../util/is-emoji-description';
|
|
47
47
|
import { isPromise } from '../../util/is-promise';
|
|
48
|
-
import {
|
|
49
|
-
import { isRefreshEmojiPickerEnabled } from '../common/isRefreshEmojiPickerEnabled';
|
|
48
|
+
import { getStoredProductivityColor, storeProductivityColor } from '../../util/productivity-colors';
|
|
50
49
|
import { createRecordSelectionDefault } from '../common/RecordSelectionDefault';
|
|
51
50
|
import { uploadEmoji } from '../common/UploadEmoji';
|
|
52
51
|
import { messages } from '../i18n';
|
|
@@ -62,7 +61,6 @@ var emojiPickerHeightDeleteRefresh = 339;
|
|
|
62
61
|
var emojiPickerWidth = 350;
|
|
63
62
|
var emojiPickerMinHeight = 260;
|
|
64
63
|
var heightOffset = 80;
|
|
65
|
-
var emojiPicker = null;
|
|
66
64
|
var emojiPickerNew = null;
|
|
67
65
|
var emojiPickerWrapper = null;
|
|
68
66
|
|
|
@@ -121,7 +119,6 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
121
119
|
var _useEmoji = useEmoji(),
|
|
122
120
|
emojiProvider = _useEmoji.emojiProvider,
|
|
123
121
|
isUploadSupported = _useEmoji.isUploadSupported;
|
|
124
|
-
var isTeamojiExperimentEnabled = isRefreshEmojiPickerEnabled();
|
|
125
122
|
var _useState = useState([]),
|
|
126
123
|
_useState2 = _slicedToArray(_useState, 2),
|
|
127
124
|
filteredEmojis = _useState2[0],
|
|
@@ -147,7 +144,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
147
144
|
selectedTone = _useState10[0],
|
|
148
145
|
setSelectedTone = _useState10[1];
|
|
149
146
|
var _useState11 = useState(function () {
|
|
150
|
-
return
|
|
147
|
+
return getStoredProductivityColor();
|
|
151
148
|
}),
|
|
152
149
|
_useState12 = _slicedToArray(_useState11, 2),
|
|
153
150
|
selectedProductivityColor = _useState12[0],
|
|
@@ -198,11 +195,9 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
198
195
|
var isProgrammaticScroll = useRef(false);
|
|
199
196
|
var pickerRef = useRef(null);
|
|
200
197
|
var setPickerRef = useCallback(function (el) {
|
|
201
|
-
|
|
202
|
-
pickerRef.current = el;
|
|
203
|
-
}
|
|
198
|
+
pickerRef.current = el;
|
|
204
199
|
onPickerRef === null || onPickerRef === void 0 || onPickerRef(el);
|
|
205
|
-
}, [
|
|
200
|
+
}, [onPickerRef]);
|
|
206
201
|
var currentUser = useMemo(function () {
|
|
207
202
|
return emojiProvider.getCurrentUser();
|
|
208
203
|
}, [emojiProvider]);
|
|
@@ -219,7 +214,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
219
214
|
}, [selectedEmoji]);
|
|
220
215
|
var uploadEnabled = isUploadSupported && !uploading;
|
|
221
216
|
var onEmojiLeave = useCallback(function () {
|
|
222
|
-
if (
|
|
217
|
+
if (uploadEnabled) {
|
|
223
218
|
setSelectedEmoji(undefined);
|
|
224
219
|
}
|
|
225
220
|
}, [uploadEnabled]);
|
|
@@ -227,16 +222,16 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
227
222
|
// Ignore scroll-driven category changes while a programmatic reveal()
|
|
228
223
|
// scroll is in progress — they would flicker the indicator through
|
|
229
224
|
// intermediate categories before landing on the correct one.
|
|
230
|
-
if (isProgrammaticScroll.current
|
|
225
|
+
if (isProgrammaticScroll.current) {
|
|
231
226
|
return;
|
|
232
227
|
}
|
|
233
228
|
// Ignore scroll-driven category changes while the upload or delete screen is open
|
|
234
|
-
if (
|
|
229
|
+
if (uploading || emojiToDelete) {
|
|
235
230
|
return;
|
|
236
231
|
}
|
|
237
232
|
if (activeCategory !== category) {
|
|
238
233
|
setActiveCategory(category);
|
|
239
|
-
if (!query
|
|
234
|
+
if (!query) {
|
|
240
235
|
lastNonSearchCategory.current = category;
|
|
241
236
|
}
|
|
242
237
|
}
|
|
@@ -253,12 +248,10 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
253
248
|
setUploadErrorMessage(undefined);
|
|
254
249
|
});
|
|
255
250
|
fireAnalytics(uploadCancelButton());
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
}, 0);
|
|
261
|
-
}
|
|
251
|
+
setTimeout(function () {
|
|
252
|
+
var _getDocument;
|
|
253
|
+
(_getDocument = getDocument()) === null || _getDocument === void 0 || (_getDocument = _getDocument.getElementById('add-custom-emoji')) === null || _getDocument === void 0 || _getDocument.focus();
|
|
254
|
+
}, 0);
|
|
262
255
|
}, [fireAnalytics]);
|
|
263
256
|
var getDynamicCategories = useCallback(function () {
|
|
264
257
|
if (!emojiProvider.calculateDynamicCategories) {
|
|
@@ -304,7 +297,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
304
297
|
}, [filteredEmojis.length, getDynamicCategories, onDynamicCategoryChange, selectedEmoji]);
|
|
305
298
|
var onFrequentEmojiResult = useCallback(function (frequentEmoji) {
|
|
306
299
|
// change the category of each of the featured emoji
|
|
307
|
-
var visibleFrequentEmoji =
|
|
300
|
+
var visibleFrequentEmoji = filterHiddenEmojis(frequentEmoji);
|
|
308
301
|
var recategorised = visibleFrequentEmoji.map(function (emoji) {
|
|
309
302
|
var clone = JSON.parse(JSON.stringify(emoji));
|
|
310
303
|
clone.category = frequentCategory;
|
|
@@ -313,11 +306,11 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
313
306
|
setStateAfterEmojiChange({
|
|
314
307
|
frequentEmoji: recategorised
|
|
315
308
|
});
|
|
316
|
-
}, [
|
|
309
|
+
}, [setStateAfterEmojiChange]);
|
|
317
310
|
var onSearchResult = useCallback(function (searchResults) {
|
|
318
311
|
var frequentlyUsedEmoji = frequentlyUsedEmojis || [];
|
|
319
312
|
var searchQuery = searchResults.query || '';
|
|
320
|
-
var visibleSearchEmojis =
|
|
313
|
+
var visibleSearchEmojis = filterHiddenEmojis(searchResults.emojis);
|
|
321
314
|
|
|
322
315
|
/**
|
|
323
316
|
* If there is no user search in the EmojiPicker then it should display all emoji received from the EmojiRepository and should
|
|
@@ -339,7 +332,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
339
332
|
queryLength: searchQuery.length,
|
|
340
333
|
numMatches: visibleSearchEmojis.length
|
|
341
334
|
}));
|
|
342
|
-
}, [frequentlyUsedEmojis,
|
|
335
|
+
}, [frequentlyUsedEmojis, query, setStateAfterEmojiChange, fireAnalytics]);
|
|
343
336
|
var onProviderChange = useMemo(function () {
|
|
344
337
|
return {
|
|
345
338
|
result: onSearchResult
|
|
@@ -401,37 +394,29 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
401
394
|
if (!categoryId) {
|
|
402
395
|
return;
|
|
403
396
|
}
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
}
|
|
411
|
-
if (emojiToDelete) {
|
|
412
|
-
setEmojiToDelete(undefined);
|
|
413
|
-
}
|
|
397
|
+
if (uploading) {
|
|
398
|
+
setUploading(false);
|
|
399
|
+
setUploadErrorMessage(undefined);
|
|
400
|
+
}
|
|
401
|
+
if (emojiToDelete) {
|
|
402
|
+
setEmojiToDelete(undefined);
|
|
414
403
|
}
|
|
415
404
|
emojiProvider.findInCategory(categoryId).then(function (emojisInCategory) {
|
|
416
405
|
if (!disableCategories) {
|
|
417
406
|
var newSelectedEmoji;
|
|
418
|
-
var visibleEmojisInCategory =
|
|
407
|
+
var visibleEmojisInCategory = filterHiddenEmojis(emojisInCategory || []);
|
|
419
408
|
if (visibleEmojisInCategory.length > 0) {
|
|
420
409
|
newSelectedEmoji = getEmojiVariation(visibleEmojisInCategory[0], {
|
|
421
410
|
skinTone: selectedTone
|
|
422
411
|
});
|
|
423
412
|
}
|
|
424
413
|
if (emojiPickerList.current) {
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
setTimeout(function () {
|
|
432
|
-
isProgrammaticScroll.current = false;
|
|
433
|
-
}, 300);
|
|
434
|
-
}
|
|
414
|
+
isProgrammaticScroll.current = true;
|
|
415
|
+
emojiPickerList.current.reveal(categoryId, true);
|
|
416
|
+
// Clear the flag after the scroll animation has settled.
|
|
417
|
+
setTimeout(function () {
|
|
418
|
+
isProgrammaticScroll.current = false;
|
|
419
|
+
}, 300);
|
|
435
420
|
}
|
|
436
421
|
batchedUpdates(function () {
|
|
437
422
|
setActiveCategory(categoryId);
|
|
@@ -442,7 +427,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
442
427
|
}));
|
|
443
428
|
}
|
|
444
429
|
});
|
|
445
|
-
}, [disableCategories, emojiPickerList, emojiProvider, fireAnalytics,
|
|
430
|
+
}, [disableCategories, emojiPickerList, emojiProvider, fireAnalytics, selectedTone, uploading, emojiToDelete]);
|
|
446
431
|
var recordUsageOnSelection = useMemo(function () {
|
|
447
432
|
return createRecordSelectionDefault(emojiProvider, onSelectWrapper, function (analytic) {
|
|
448
433
|
return fireAnalytics(analytic(SearchSourceTypes.PICKER));
|
|
@@ -465,7 +450,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
465
450
|
};
|
|
466
451
|
if (searchQuery !== query) {
|
|
467
452
|
// Capture the active category before entering search so we can keep it highlighted
|
|
468
|
-
if (!query && searchQuery
|
|
453
|
+
if (!query && searchQuery) {
|
|
469
454
|
lastNonSearchCategory.current = activeCategory;
|
|
470
455
|
}
|
|
471
456
|
setQuery(searchQuery);
|
|
@@ -481,7 +466,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
481
466
|
// cannot reach underlying page drop handlers (e.g. the Confluence editor).
|
|
482
467
|
useEffect(function () {
|
|
483
468
|
var _getDocument2;
|
|
484
|
-
if (!uploading
|
|
469
|
+
if (!uploading) {
|
|
485
470
|
return;
|
|
486
471
|
}
|
|
487
472
|
var body = (_getDocument2 = getDocument()) === null || _getDocument2 === void 0 ? void 0 : _getDocument2.body;
|
|
@@ -551,10 +536,6 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
551
536
|
});
|
|
552
537
|
scrollToUploadedEmoji(emojiDescription);
|
|
553
538
|
};
|
|
554
|
-
if (!isRefreshEmojiPickerEnabled()) {
|
|
555
|
-
_context.next = 2;
|
|
556
|
-
break;
|
|
557
|
-
}
|
|
558
539
|
uploadShortName = ":".concat(upload.name.toLowerCase(), ":");
|
|
559
540
|
_context.next = 1;
|
|
560
541
|
return emojiProvider.findByShortName(uploadShortName);
|
|
@@ -689,9 +670,9 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
689
670
|
emojiProvider.unsubscribe(onProviderChange);
|
|
690
671
|
};
|
|
691
672
|
}, [emojiProvider, onProviderChange]);
|
|
692
|
-
var showPreview =
|
|
693
|
-
var shouldRenderFooter = showPreview && !
|
|
694
|
-
var useFooterSpaceForList = showPreview && !selectedEmoji && !uploadEnabled && !emojiToDelete && !(query && filteredEmojis.length === 0)
|
|
673
|
+
var showPreview = !uploading;
|
|
674
|
+
var shouldRenderFooter = showPreview && !emojiToDelete && !(query && filteredEmojis.length === 0) && (Boolean(selectedEmoji) || uploadEnabled);
|
|
675
|
+
var useFooterSpaceForList = showPreview && !selectedEmoji && !uploadEnabled && !emojiToDelete && !(query && filteredEmojis.length === 0);
|
|
695
676
|
|
|
696
677
|
// When the AI emoji section is shown in the upload panel, grow the picker so
|
|
697
678
|
// the section isn't clipped by the fixed upload height.
|
|
@@ -702,7 +683,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
702
683
|
role: "dialog",
|
|
703
684
|
"aria-label": formatMessage(messages.emojiPickerTitle),
|
|
704
685
|
"aria-modal": true,
|
|
705
|
-
className: ax([
|
|
686
|
+
className: ax(["_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iuxo9 _1bsb10mj _1ul910mj _c71l1y6z _kqswh2mm", !!emojiToDelete ? withDeleteRefreshHeight[size] : uploading ? hasUploadPreviewError ? withUploadRefreshAndPreviewErrorHeight[size] : withUploadRefreshHeight[size] : query && filteredEmojis.length === 0 ? withNoResultsRefreshHeight[size] : showPreview ? withPreviewHeight[size] : withoutPreviewHeight[size], showAiUpload && "_4t3ikbql _c71l8k0t"]),
|
|
706
687
|
style: {
|
|
707
688
|
"--_19dn98e": ix("".concat(emojiPickerHeight, "px")),
|
|
708
689
|
"--_gsvyy7": ix("".concat(emojiPickerWidth, "px"))
|
|
@@ -714,7 +695,7 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
714
695
|
onKeyDown: suppressKeyPress,
|
|
715
696
|
className: ax(["_16jlkb7n _1o9zkb7n _i0dlf1ug _1reo15vq _18m915vq _1e0c1txw _2lx21bp4 _1bah1yb4 _1tkeidpf", showAiUpload && "_1reo15vq _18m91wug"])
|
|
716
697
|
}, /*#__PURE__*/React.createElement(CategorySelector, {
|
|
717
|
-
activeCategoryId:
|
|
698
|
+
activeCategoryId: uploading || emojiToDelete ? null : activeCategory,
|
|
718
699
|
dynamicCategories: dynamicCategories,
|
|
719
700
|
disableCategories: disableCategories,
|
|
720
701
|
onCategorySelected: onCategorySelected
|
|
@@ -729,13 +710,13 @@ var EmojiPickerComponent = function EmojiPickerComponent(_ref) {
|
|
|
729
710
|
onSearch: onSearch,
|
|
730
711
|
query: query,
|
|
731
712
|
selectedTone: selectedTone,
|
|
732
|
-
selectedProductivityColor:
|
|
713
|
+
selectedProductivityColor: selectedProductivityColor,
|
|
733
714
|
loading: loading,
|
|
734
715
|
ref: emojiPickerList,
|
|
735
716
|
initialUploadName: query,
|
|
736
717
|
onToneSelected: onToneSelected,
|
|
737
718
|
onToneSelectorCancelled: onToneSelectorCancelled,
|
|
738
|
-
onProductivityColorSelected:
|
|
719
|
+
onProductivityColorSelected: onProductivityColorSelected,
|
|
739
720
|
toneEmoji: toneEmoji,
|
|
740
721
|
uploading: uploading,
|
|
741
722
|
emojiToDelete: emojiToDelete,
|
|
@@ -5,7 +5,6 @@ import { ax, ix } from "@compiled/react/runtime";
|
|
|
5
5
|
import { memo } from 'react';
|
|
6
6
|
import { useIntl } from 'react-intl';
|
|
7
7
|
import { useEmojiPickerListContext } from '../../hooks/useEmojiPickerListContext';
|
|
8
|
-
import { isTeamoji26RefreshEmojiPickerEnabledNoExposure } from '../../util/teamoji26RefreshEmojiPicker';
|
|
9
8
|
import CachingEmoji from '../common/CachingEmoji';
|
|
10
9
|
import { messages } from '../i18n';
|
|
11
10
|
var emojiItem = null;
|
|
@@ -26,7 +25,7 @@ var EmojiPickerEmojiRow = function EmojiPickerEmojiRow(_ref) {
|
|
|
26
25
|
var rowIndex = (virtualItemContext === null || virtualItemContext === void 0 ? void 0 : virtualItemContext.index) || 0;
|
|
27
26
|
var _useIntl = useIntl(),
|
|
28
27
|
formatMessage = _useIntl.formatMessage;
|
|
29
|
-
var preventFocusOnMouseDown =
|
|
28
|
+
var preventFocusOnMouseDown = true;
|
|
30
29
|
var handleFocus = function handleFocus(index) {
|
|
31
30
|
return function (emojiId, emoji, event) {
|
|
32
31
|
setEmojisFocus({
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
._x3do1uh4{border-top:var(--ds-border-width-selected,2px) solid var(--ds-border,#0b120e24)}
|
|
2
1
|
._x3doia51{border-top:var(--ds-border-width,1px) solid var(--ds-border,#0b120e24)}._16jlidpf{flex-grow:0}
|
|
3
|
-
._16qsvjqj{box-shadow:0 -1px 1px 0 var(--ds-border,#0b120e24)}
|
|
4
2
|
._19bvv77o{padding-left:var(--ds-space-025,2px)}
|
|
5
3
|
._1o9zidpf{flex-shrink:0}
|
|
6
4
|
._ca0qv77o{padding-top:var(--ds-space-025,2px)}
|
|
@@ -7,9 +7,7 @@ import { useIntl } from 'react-intl';
|
|
|
7
7
|
import { Box } from '@atlaskit/primitives/compiled/box';
|
|
8
8
|
import { AddOwnEmoji } from '../common/AddEmoji';
|
|
9
9
|
import { EmojiPreviewComponent } from '../common/EmojiPreviewComponent';
|
|
10
|
-
import { isRefreshEmojiPickerEnabled } from '../common/isRefreshEmojiPickerEnabled';
|
|
11
10
|
var emojiPickerFooter = null;
|
|
12
|
-
var emojiPickerFooterWithTopShadow = null;
|
|
13
11
|
var emojiPickerFooterWithTopShadowNew = null;
|
|
14
12
|
var emojiPreviewContainerStyles = {
|
|
15
13
|
emojiPreviewContainer: "_ca0qv77o _u5f3v77o _n3tdv77o _19bvv77o"
|
|
@@ -20,7 +18,7 @@ var EmojiPickerFooter = function EmojiPickerFooter(_ref) {
|
|
|
20
18
|
onOpenUpload = _ref.onOpenUpload,
|
|
21
19
|
uploadEnabled = _ref.uploadEnabled;
|
|
22
20
|
var intl = useIntl();
|
|
23
|
-
return
|
|
21
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
24
22
|
"data-testid": emojiPickerFooterTestId,
|
|
25
23
|
className: ax(["_16jlidpf _1o9zidpf _i0dl1wug", "_x3doia51"])
|
|
26
24
|
}, selectedEmoji ? /*#__PURE__*/React.createElement(Box, {
|
|
@@ -31,11 +29,6 @@ var EmojiPickerFooter = function EmojiPickerFooter(_ref) {
|
|
|
31
29
|
onOpenUpload: onOpenUpload,
|
|
32
30
|
uploadEnabled: uploadEnabled,
|
|
33
31
|
intl: intl
|
|
34
|
-
})) : /*#__PURE__*/React.createElement("div", {
|
|
35
|
-
"data-testid": emojiPickerFooterTestId,
|
|
36
|
-
className: ax(["_16jlidpf _1o9zidpf _i0dl1wug", "_x3do1uh4 _16qsvjqj"])
|
|
37
|
-
}, selectedEmoji && /*#__PURE__*/React.createElement(EmojiPreviewComponent, {
|
|
38
|
-
emoji: selectedEmoji
|
|
39
32
|
}));
|
|
40
33
|
};
|
|
41
34
|
var _default_1 = /*#__PURE__*/memo(EmojiPickerFooter);
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
._19itahnd{border:var(--ds-border,#0b120e24) var(--ds-border-width,1px) solid}
|
|
2
|
-
._2rko1mok{border-radius:var(--ds-radius-large,8px)}
|
|
3
|
-
._2rkofajl{border-radius:var(--ds-radius-small,3px)}._16qs130s{box-shadow:var(--ds-shadow-overlay,0 8px 9pt #1e1f2126,0 0 1px #1e1f214f)}
|
|
2
|
+
._2rko1mok{border-radius:var(--ds-radius-large,8px)}._16qs130s{box-shadow:var(--ds-shadow-overlay,0 8px 9pt #1e1f2126,0 0 1px #1e1f214f)}
|
|
4
3
|
._1bah1yb4{justify-content:space-between}
|
|
5
4
|
._1bsb1edt{width:350px}
|
|
6
5
|
._1e0c1txw{display:flex}
|
|
@@ -15,15 +15,10 @@ import React from 'react';
|
|
|
15
15
|
import { EmojiCommonProvider } from '../../context/EmojiCommonProvider';
|
|
16
16
|
import { ufoExperiences } from '../../util/analytics/ufoExperiences';
|
|
17
17
|
import { defaultEmojiPickerSize } from '../../util/constants';
|
|
18
|
-
import { isTeamoji26RefreshEmojiPickerEnabled } from '../../util/teamoji26RefreshEmojiPicker';
|
|
19
18
|
import LoadingEmojiComponent from '../common/LoadingEmojiComponent';
|
|
20
19
|
import { UfoErrorBoundary } from '../common/UfoErrorBoundary';
|
|
21
20
|
import { emojiPickerLoader } from './emojiPickerLoader';
|
|
22
21
|
import { LoadingItem } from './LoadingItem';
|
|
23
|
-
var isRefreshEmojiPickerEnabled = function isRefreshEmojiPickerEnabled() {
|
|
24
|
-
return isTeamoji26RefreshEmojiPickerEnabled();
|
|
25
|
-
};
|
|
26
|
-
var emojiPicker = null;
|
|
27
22
|
var emojiPickerNew = null;
|
|
28
23
|
export var EmojiPickerInternal = /*#__PURE__*/function (_LoadingEmojiComponen) {
|
|
29
24
|
function EmojiPickerInternal(props) {
|
|
@@ -57,12 +52,9 @@ export var EmojiPickerInternal = /*#__PURE__*/function (_LoadingEmojiComponen) {
|
|
|
57
52
|
}
|
|
58
53
|
};
|
|
59
54
|
ufoExperiences['emoji-picker-opened'].markFMP();
|
|
60
|
-
return
|
|
55
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
61
56
|
ref: handlePickerRef,
|
|
62
57
|
className: ax(["_19itahnd _2rko1mok _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iixjv _1bsb1edt _1ul91edt _1tke5x59 _c71l1y6z"])
|
|
63
|
-
}, item.renderItem()) : /*#__PURE__*/React.createElement("div", {
|
|
64
|
-
ref: handlePickerRef,
|
|
65
|
-
className: ax(["_19itahnd _2rkofajl _1e0c1txw _2lx21bp4 _1bah1yb4 _bfhk1bhr _16qs130s _4t3iixjv _1bsb1edt _1ul91edt _1tke5x59 _c71l1y6z"])
|
|
66
58
|
}, item.renderItem());
|
|
67
59
|
}
|
|
68
60
|
}, {
|
|
@@ -7,9 +7,8 @@ import { customCategory, defaultEmojiPickerSize, emojiPickerPreviewHeight, frequ
|
|
|
7
7
|
import { filterHiddenEmojis } from '../../util/filter-hidden-emojis';
|
|
8
8
|
import { filterProductivityEmojisByColor, getProductivityColorPreviewEmojis } from '../../util/productivity-colors';
|
|
9
9
|
import EmojiActions from '../common/EmojiActions';
|
|
10
|
-
import { isRefreshEmojiPickerEnabled } from '../common/isRefreshEmojiPickerEnabled';
|
|
11
10
|
import { messages } from '../i18n';
|
|
12
|
-
import {
|
|
11
|
+
import { CategoryDescriptionMapNew } from './categories';
|
|
13
12
|
import { CategoryHeadingItem } from './CategoryHeadingItem';
|
|
14
13
|
import CategoryTracker from './CategoryTracker';
|
|
15
14
|
import { emojiPickerHeightOffset } from './emojiPickerHeightOffset';
|
|
@@ -111,17 +110,16 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
111
110
|
_useState0 = _slicedToArray(_useState9, 2),
|
|
112
111
|
categoriesChanged = _useState0[0],
|
|
113
112
|
setCategoriesChanged = _useState0[1];
|
|
114
|
-
var isTeamojiExperimentEnabled = isRefreshEmojiPickerEnabled();
|
|
115
113
|
var visibleEmojis = useMemo(function () {
|
|
116
|
-
return
|
|
117
|
-
}, [emojis
|
|
114
|
+
return filterHiddenEmojis(emojis);
|
|
115
|
+
}, [emojis]);
|
|
118
116
|
var productivityColorPreviewEmojis = useMemo(function () {
|
|
119
|
-
return
|
|
120
|
-
}, [
|
|
117
|
+
return getProductivityColorPreviewEmojis(visibleEmojis);
|
|
118
|
+
}, [visibleEmojis]);
|
|
121
119
|
var addToCategoryMap = useCallback(function (categoryToGroupMap, emoji, category) {
|
|
122
120
|
var _categoryToGroupMap$c;
|
|
123
121
|
if (!categoryToGroupMap[category]) {
|
|
124
|
-
var categoryDefinition =
|
|
122
|
+
var categoryDefinition = CategoryDescriptionMapNew[category];
|
|
125
123
|
if (!categoryDefinition) {
|
|
126
124
|
return categoryToGroupMap;
|
|
127
125
|
}
|
|
@@ -134,10 +132,10 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
134
132
|
}
|
|
135
133
|
(_categoryToGroupMap$c = categoryToGroupMap[category]) === null || _categoryToGroupMap$c === void 0 || _categoryToGroupMap$c.emojis.push(emoji);
|
|
136
134
|
return categoryToGroupMap;
|
|
137
|
-
}, [
|
|
135
|
+
}, []);
|
|
138
136
|
var groupByCategory = useCallback(function (currentUser) {
|
|
139
137
|
return function (categoryToGroupMap, emoji) {
|
|
140
|
-
if (
|
|
138
|
+
if (emoji.type === 'ATLASSIAN' && emoji.category !== frequentCategory) {
|
|
141
139
|
addToCategoryMap(categoryToGroupMap, emoji, atlassianCategory);
|
|
142
140
|
var group = categoryToGroupMap[atlassianCategory];
|
|
143
141
|
if (group) {
|
|
@@ -157,8 +155,6 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
157
155
|
}
|
|
158
156
|
subcategory.emojis.push(emoji);
|
|
159
157
|
}
|
|
160
|
-
} else if (emoji.type === 'ATLASSIAN' && emoji.category !== frequentCategory) {
|
|
161
|
-
addToCategoryMap(categoryToGroupMap, emoji, atlassianCategory);
|
|
162
158
|
} else {
|
|
163
159
|
addToCategoryMap(categoryToGroupMap, emoji, emoji.category);
|
|
164
160
|
}
|
|
@@ -168,7 +164,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
168
164
|
}
|
|
169
165
|
return categoryToGroupMap;
|
|
170
166
|
};
|
|
171
|
-
}, [addToCategoryMap
|
|
167
|
+
}, [addToCategoryMap]);
|
|
172
168
|
var findAtlassianSubcategoryToActivate = useCallback(function (startIndex) {
|
|
173
169
|
var row = virtualItems[startIndex];
|
|
174
170
|
if (row instanceof CategoryHeadingItem && row.props.id === atlassianCategory) {
|
|
@@ -205,11 +201,9 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
205
201
|
if (!query) {
|
|
206
202
|
// Calculate category in view - only relevant if categories shown, i.e. no query
|
|
207
203
|
var currentCategory = findCategoryToActivate(rowItem);
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
setActiveAtlassianSubcategory(currentAtlassianSubcategory);
|
|
212
|
-
}
|
|
204
|
+
var currentAtlassianSubcategory = findAtlassianSubcategoryToActivate(startIndex);
|
|
205
|
+
if (activeAtlassianSubcategory !== currentAtlassianSubcategory) {
|
|
206
|
+
setActiveAtlassianSubcategory(currentAtlassianSubcategory);
|
|
213
207
|
}
|
|
214
208
|
if (currentCategory !== null && activeCategoryId !== currentCategory) {
|
|
215
209
|
if (onCategoryActivated) {
|
|
@@ -217,13 +211,13 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
217
211
|
}
|
|
218
212
|
}
|
|
219
213
|
}
|
|
220
|
-
}, [virtualItems, query, activeAtlassianSubcategory, activeCategoryId, findAtlassianSubcategoryToActivate,
|
|
214
|
+
}, [virtualItems, query, activeAtlassianSubcategory, activeCategoryId, findAtlassianSubcategoryToActivate, onCategoryActivated]);
|
|
221
215
|
var buildEmojiGroupedByCategory = useCallback(function (emojis, currentUser) {
|
|
222
216
|
var categoryToGroupMap = emojis.reduce(groupByCategory(currentUser), {});
|
|
223
217
|
setAllEmojiGroups(Object.keys(categoryToGroupMap).map(function (key) {
|
|
224
218
|
return categoryToGroupMap[key];
|
|
225
219
|
}).map(function (group) {
|
|
226
|
-
if (
|
|
220
|
+
if (selectedProductivityColor) {
|
|
227
221
|
var _group$subcategories;
|
|
228
222
|
group.emojis = filterProductivityEmojisByColor(group.emojis, selectedProductivityColor);
|
|
229
223
|
(_group$subcategories = group.subcategories) === null || _group$subcategories === void 0 || _group$subcategories.forEach(function (subcategory) {
|
|
@@ -239,7 +233,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
239
233
|
}
|
|
240
234
|
return group;
|
|
241
235
|
}).sort(byOrder));
|
|
242
|
-
}, [groupByCategory,
|
|
236
|
+
}, [groupByCategory, selectedProductivityColor]);
|
|
243
237
|
var buildEmojiRows = useCallback(function (items, category, title, emojis, showDelete) {
|
|
244
238
|
var remainingEmojis = emojis;
|
|
245
239
|
while (remainingEmojis.length > 0) {
|
|
@@ -254,14 +248,14 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
254
248
|
onDelete: onEmojiDelete,
|
|
255
249
|
onMouseMove: onEmojiActive,
|
|
256
250
|
onFocus: onEmojiActive,
|
|
257
|
-
onMouseLeave:
|
|
251
|
+
onMouseLeave: onEmojiLeave
|
|
258
252
|
}));
|
|
259
253
|
}
|
|
260
|
-
}, [
|
|
254
|
+
}, [onEmojiActive, onEmojiDelete, onEmojiLeave, onEmojiSelected]);
|
|
261
255
|
var buildVirtualItemFromGroup = useCallback(function (group) {
|
|
262
256
|
var _group$subcategories3;
|
|
263
257
|
var items = [];
|
|
264
|
-
var hasAtlassianSubcategories =
|
|
258
|
+
var hasAtlassianSubcategories = group.category === atlassianCategory && !!((_group$subcategories3 = group.subcategories) !== null && _group$subcategories3 !== void 0 && _group$subcategories3.length);
|
|
265
259
|
if (!hasAtlassianSubcategories) {
|
|
266
260
|
items.push(new CategoryHeadingItem({
|
|
267
261
|
id: group.category,
|
|
@@ -296,7 +290,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
296
290
|
buildEmojiRows(items, group.category, group.title, group.emojis, group.title === userCustomTitle);
|
|
297
291
|
}
|
|
298
292
|
return items;
|
|
299
|
-
}, [buildEmojiRows
|
|
293
|
+
}, [buildEmojiRows]);
|
|
300
294
|
var buildVirtualItems = useCallback(function () {
|
|
301
295
|
var items = [];
|
|
302
296
|
var prevFirstCategory = categoryTracker.getFirstCategory();
|
|
@@ -305,8 +299,8 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
305
299
|
items.push(new LoadingItem());
|
|
306
300
|
} else {
|
|
307
301
|
if (query) {
|
|
308
|
-
var search =
|
|
309
|
-
if (visibleEmojis.length === 0
|
|
302
|
+
var search = CategoryDescriptionMapNew.SEARCH;
|
|
303
|
+
if (visibleEmojis.length === 0) {
|
|
310
304
|
// Show a "No results" category heading, then a no-results illustration below it
|
|
311
305
|
items.push(new CategoryHeadingItem({
|
|
312
306
|
id: searchCategory,
|
|
@@ -333,7 +327,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
333
327
|
allEmojiGroups.forEach(function (group) {
|
|
334
328
|
// Optimisation - avoid re-rendering unaffected groups for the current selectedShortcut
|
|
335
329
|
// by not passing it to irrelevant groups
|
|
336
|
-
categoryTracker.add(
|
|
330
|
+
categoryTracker.add(group.category, items.length);
|
|
337
331
|
items = [].concat(_toConsumableArray(items), _toConsumableArray(buildVirtualItemFromGroup(group)));
|
|
338
332
|
if (group.category === yourUploadsCategory) {
|
|
339
333
|
setLastYourUploadsRow(items.length - 1);
|
|
@@ -350,7 +344,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
350
344
|
}
|
|
351
345
|
}
|
|
352
346
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
353
|
-
}, [allEmojiGroups, buildVirtualItemFromGroup, formatMessage,
|
|
347
|
+
}, [allEmojiGroups, buildVirtualItemFromGroup, formatMessage, loading, onOpenUpload, query, uploadEnabled, visibleEmojis]);
|
|
354
348
|
var findCategoryToActivate = function findCategoryToActivate(row) {
|
|
355
349
|
var category = null;
|
|
356
350
|
if (row instanceof CategoryHeadingItem) {
|
|
@@ -474,12 +468,12 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
474
468
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
475
469
|
}, [virtualItems, categoriesChanged]);
|
|
476
470
|
var virtualListHeight = useMemo(function () {
|
|
477
|
-
if (query && visibleEmojis.length === 0
|
|
471
|
+
if (query && visibleEmojis.length === 0) {
|
|
478
472
|
// No-results state: expand the list height to fit heading + illustration without scrolling
|
|
479
473
|
return sizes.categoryHeadingHeight + sizes.noResultsHeight + emojiPickerHeightOffset(size);
|
|
480
474
|
}
|
|
481
|
-
return
|
|
482
|
-
}, [size, query, visibleEmojis.length,
|
|
475
|
+
return sizes.listHeightNew + emojiPickerHeightOffset(size) + (useFooterSpaceForList ? emojiPickerPreviewHeight : 0);
|
|
476
|
+
}, [size, query, visibleEmojis.length, useFooterSpaceForList]);
|
|
483
477
|
return /*#__PURE__*/React.createElement(EmojiPickerTabPanel, {
|
|
484
478
|
showSearchResults: !!query
|
|
485
479
|
}, /*#__PURE__*/React.createElement(EmojiActions, {
|
|
@@ -487,10 +481,10 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
487
481
|
onToneSelected: onToneSelected,
|
|
488
482
|
onToneSelectorCancelled: onToneSelectorCancelled,
|
|
489
483
|
toneEmoji: toneEmoji,
|
|
490
|
-
activeCategoryId:
|
|
491
|
-
activeAtlassianSubcategory:
|
|
492
|
-
productivityColorPreviewEmojis:
|
|
493
|
-
selectedProductivityColor:
|
|
484
|
+
activeCategoryId: activeCategoryId,
|
|
485
|
+
activeAtlassianSubcategory: activeAtlassianSubcategory,
|
|
486
|
+
productivityColorPreviewEmojis: productivityColorPreviewEmojis,
|
|
487
|
+
selectedProductivityColor: selectedProductivityColor,
|
|
494
488
|
uploading: uploading,
|
|
495
489
|
uploadEnabled: uploadEnabled,
|
|
496
490
|
emojiToDelete: emojiToDelete,
|
|
@@ -503,7 +497,7 @@ export var EmojiPickerVirtualListInternal = /*#__PURE__*/React.forwardRef(functi
|
|
|
503
497
|
onDeleteEmoji: onDeleteEmoji,
|
|
504
498
|
onFileChooserClicked: onFileChooserClicked,
|
|
505
499
|
onOpenUpload: onOpenUpload,
|
|
506
|
-
onProductivityColorSelected:
|
|
500
|
+
onProductivityColorSelected: onProductivityColorSelected,
|
|
507
501
|
query: query,
|
|
508
502
|
onChange: onSearch,
|
|
509
503
|
resultsCount: visibleEmojis.length,
|
|
@@ -9,13 +9,10 @@ import SearchIcon from '@atlaskit/icon/core/search';
|
|
|
9
9
|
import TextField from '@atlaskit/textfield/text-field';
|
|
10
10
|
import VisuallyHidden from '@atlaskit/visually-hidden/visually-hidden';
|
|
11
11
|
import { EMOJI_SEARCH_DEBOUNCE } from '../../util/constants';
|
|
12
|
-
import { isRefreshEmojiPickerEnabled } from '../common/isRefreshEmojiPickerEnabled';
|
|
13
12
|
import { messages } from '../i18n';
|
|
14
|
-
var input = null;
|
|
15
13
|
var inputNew = null;
|
|
16
14
|
var textFieldWrapperNew = null;
|
|
17
15
|
var pickerSearch = null;
|
|
18
|
-
var searchIcon = null;
|
|
19
16
|
var searchIconNew = null;
|
|
20
17
|
var hidden = null;
|
|
21
18
|
export var emojiPickerSearchTestId = 'emoji-picker-search';
|
|
@@ -54,7 +51,7 @@ export var EmojiPickerListSearch = function EmojiPickerListSearch(props) {
|
|
|
54
51
|
role: "status"
|
|
55
52
|
}, dirty ? query === '' ? formatMessage(messages.searchResultsStatusSeeAll) : formatMessage(messages.searchResultsStatus, {
|
|
56
53
|
count: resultsCount
|
|
57
|
-
}) : null),
|
|
54
|
+
}) : null), /*#__PURE__*/React.createElement("div", {
|
|
58
55
|
className: ax(["_n6341l7x _18z11b66"])
|
|
59
56
|
}, /*#__PURE__*/React.createElement(TextField, {
|
|
60
57
|
role: "searchbox",
|
|
@@ -75,24 +72,5 @@ export var EmojiPickerListSearch = function EmojiPickerListSearch(props) {
|
|
|
75
72
|
ref: textRef,
|
|
76
73
|
isCompact: true,
|
|
77
74
|
className: ax(["_11c8fhey _12ji1r31 _1qu2glyw _12y31o36 _vchhusvi _syaz1kw7 _80om1kw7 _1q51yh40 _y4tize3t _85i5v77o _bozg12x7 _1bsb1osq _13xeglyw _1goxglyw"])
|
|
78
|
-
}))
|
|
79
|
-
role: "searchbox",
|
|
80
|
-
"aria-label": formatMessage(messages.searchLabel),
|
|
81
|
-
autoComplete: "off",
|
|
82
|
-
name: "search",
|
|
83
|
-
placeholder: "".concat(formatMessage(messages.searchPlaceholder), "..."),
|
|
84
|
-
defaultValue: query || '',
|
|
85
|
-
onChange: handleOnChange,
|
|
86
|
-
elemBeforeInput: /*#__PURE__*/React.createElement("span", {
|
|
87
|
-
className: ax(["_tzy4105o _18u01i6y"])
|
|
88
|
-
}, /*#__PURE__*/React.createElement(SearchIcon, {
|
|
89
|
-
color: "currentColor",
|
|
90
|
-
spacing: "spacious",
|
|
91
|
-
label: ""
|
|
92
|
-
})),
|
|
93
|
-
testId: emojiPickerSearchTestId,
|
|
94
|
-
ref: textRef,
|
|
95
|
-
isCompact: true,
|
|
96
|
-
className: ax(["_11c8fhey _12ji1r31 _1qu2glyw _12y31o36 _vchhusvi _syaz1kw7 _80om1kw7 _1q51t94y _y4tize3t _85i5v77o _bozg12x7 _1bsb1osq _13xeglyw _1goxglyw"])
|
|
97
|
-
}));
|
|
75
|
+
})));
|
|
98
76
|
};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { emojiPickerListHeightNew, emojiPickerWidth } from '../../util/constants';
|
|
2
2
|
export var sizes = {
|
|
3
|
-
listHeight: emojiPickerListHeight,
|
|
4
3
|
listHeightNew: emojiPickerListHeightNew,
|
|
5
4
|
listWidth: emojiPickerWidth,
|
|
6
5
|
searchHeight: 52,
|
|
@@ -8,7 +8,6 @@ import React, { useCallback, useImperativeHandle } from 'react';
|
|
|
8
8
|
import { useVirtualizer } from '@tanstack/react-virtual';
|
|
9
9
|
import { useEmojiPickerListContext } from '../../hooks/useEmojiPickerListContext';
|
|
10
10
|
import { EMOJIPICKERLIST_KEYBOARD_KEYS_SUPPORTED, EMOJI_LIST_COLUMNS, EMOJI_LIST_PAGE_COUNT, KeyboardNavigationDirection, KeyboardKeys } from '../../util/constants';
|
|
11
|
-
import { isRefreshEmojiPickerEnabled } from '../common/isRefreshEmojiPickerEnabled';
|
|
12
11
|
var virtualList = null;
|
|
13
12
|
var virtualRowStyle = null;
|
|
14
13
|
export var virtualListScrollContainerTestId = 'virtual-list-scroll-container';
|
|
@@ -54,7 +53,7 @@ export var VirtualList = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
54
53
|
var elemBottom = elementRect.bottom;
|
|
55
54
|
var parentTop = parentRect.top;
|
|
56
55
|
var parentBottom = parentRect.bottom;
|
|
57
|
-
var isVisible =
|
|
56
|
+
var isVisible = elemTop >= parentTop && elemBottom <= parentBottom;
|
|
58
57
|
return isVisible;
|
|
59
58
|
};
|
|
60
59
|
var getFirstVisibleListElementIndex = useCallback(function () {
|
|
@@ -73,7 +72,7 @@ export var VirtualList = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
73
72
|
var _virtualList$firstVis;
|
|
74
73
|
return ((_virtualList$firstVis = virtualList[firstVisibleIndex]) === null || _virtualList$firstVis === void 0 ? void 0 : _virtualList$firstVis.index) || 0;
|
|
75
74
|
}
|
|
76
|
-
return
|
|
75
|
+
return ((_virtualList$ = virtualList[0]) === null || _virtualList$ === void 0 ? void 0 : _virtualList$.index) || 0;
|
|
77
76
|
}, [rowVirtualizer]);
|
|
78
77
|
|
|
79
78
|
/**
|