emoji-picker-react 4.20.5 → 4.20.6
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/dist/emoji-picker-react.cjs.development.js +42 -31
- package/dist/emoji-picker-react.cjs.development.js.map +1 -1
- package/dist/emoji-picker-react.cjs.production.min.js +1 -1
- package/dist/emoji-picker-react.cjs.production.min.js.map +1 -1
- package/dist/emoji-picker-react.esm.js +42 -31
- package/dist/emoji-picker-react.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/body/EmojiList.tsx +16 -4
|
@@ -29691,50 +29691,61 @@ function EmojiList(_ref) {
|
|
|
29691
29691
|
// native button role for activation semantics.
|
|
29692
29692
|
// https://github.com/ealush/emoji-picker-react/issues/508
|
|
29693
29693
|
// The list markup is kept for a backwards-compatible DOM structure;
|
|
29694
|
-
// the grid role override is intentional
|
|
29695
|
-
|
|
29696
|
-
|
|
29697
|
-
|
|
29698
|
-
|
|
29699
|
-
|
|
29700
|
-
|
|
29701
|
-
|
|
29702
|
-
|
|
29703
|
-
|
|
29704
|
-
|
|
29705
|
-
|
|
29706
|
-
|
|
29707
|
-
|
|
29708
|
-
|
|
29709
|
-
|
|
29710
|
-
|
|
29711
|
-
|
|
29712
|
-
|
|
29713
|
-
|
|
29714
|
-
|
|
29715
|
-
|
|
29716
|
-
|
|
29717
|
-
|
|
29718
|
-
|
|
29719
|
-
|
|
29720
|
-
|
|
29721
|
-
|
|
29722
|
-
|
|
29694
|
+
// the grid role override is intentional.
|
|
29695
|
+
return (
|
|
29696
|
+
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role
|
|
29697
|
+
createElement("ul", {
|
|
29698
|
+
className: cx(styles$8.emojiList),
|
|
29699
|
+
ref: EmojiListRef,
|
|
29700
|
+
role: "grid"
|
|
29701
|
+
}, createElement(MeasureEmoji, null), categories.map(function (categoryConfig, index) {
|
|
29702
|
+
var category = categoryFromCategoryConfig(categoryConfig);
|
|
29703
|
+
var currentOffset = topOffset;
|
|
29704
|
+
var categoryHeight = categoryHeights[category];
|
|
29705
|
+
if (categoryHeight) {
|
|
29706
|
+
topOffset += categoryHeight + labelHeight;
|
|
29707
|
+
}
|
|
29708
|
+
return createElement(RenderCategory, {
|
|
29709
|
+
key: category,
|
|
29710
|
+
categoryEmojis: getEmojisByCategory(category),
|
|
29711
|
+
categoryConfig: categoryConfig,
|
|
29712
|
+
topOffset: currentOffset,
|
|
29713
|
+
isFirstCategory: index === 0,
|
|
29714
|
+
onHeightReady: function onHeightReady(height) {
|
|
29715
|
+
if (categoryHeights[category] !== height) {
|
|
29716
|
+
setCategoryHeights(function (prev) {
|
|
29717
|
+
var _extends2;
|
|
29718
|
+
return _extends({}, prev, (_extends2 = {}, _extends2[category] = height, _extends2));
|
|
29719
|
+
});
|
|
29720
|
+
}
|
|
29721
|
+
},
|
|
29722
|
+
scrollTop: scrollTop
|
|
29723
|
+
});
|
|
29724
|
+
}))
|
|
29725
|
+
);
|
|
29723
29726
|
}
|
|
29724
29727
|
function RenderCategory(_ref2) {
|
|
29725
29728
|
var categoryEmojis = _ref2.categoryEmojis,
|
|
29726
29729
|
categoryConfig = _ref2.categoryConfig,
|
|
29727
29730
|
topOffset = _ref2.topOffset,
|
|
29728
29731
|
onHeightReady = _ref2.onHeightReady,
|
|
29729
|
-
scrollTop = _ref2.scrollTop
|
|
29732
|
+
scrollTop = _ref2.scrollTop,
|
|
29733
|
+
isFirstCategory = _ref2.isFirstCategory;
|
|
29730
29734
|
var _useVisibleCategories = useVisibleCategoriesState(),
|
|
29731
29735
|
visibleCategories = _useVisibleCategories[0];
|
|
29736
|
+
// The observer is the only writer of visibleCategories. When it never
|
|
29737
|
+
// fires (zero-height container at mount, hidden modal), no category
|
|
29738
|
+
// would ever render. The first category paints optimistically to break
|
|
29739
|
+
// the deadlock; the observer takes over from there.
|
|
29740
|
+
// https://github.com/ealush/emoji-picker-react/issues/469
|
|
29741
|
+
// https://github.com/ealush/emoji-picker-react/issues/475
|
|
29742
|
+
var isCategoryVisible = isFirstCategory || visibleCategories.includes(categoryConfig.category);
|
|
29732
29743
|
var _useEmojiVirtualizati = useEmojiVirtualization({
|
|
29733
29744
|
categoryEmojis: categoryEmojis,
|
|
29734
29745
|
topOffset: topOffset,
|
|
29735
29746
|
onHeightReady: onHeightReady,
|
|
29736
29747
|
scrollTop: scrollTop,
|
|
29737
|
-
isCategoryVisible:
|
|
29748
|
+
isCategoryVisible: isCategoryVisible
|
|
29738
29749
|
}),
|
|
29739
29750
|
virtualizedCounter = _useEmojiVirtualizati.virtualizedCounter,
|
|
29740
29751
|
emojis = _useEmojiVirtualizati.emojis,
|