emoji-picker-react 4.5.3 → 4.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,3 +19,4 @@ export declare enum ClassNames {
19
19
  variationPicker = "epr-emoji-variation-picker"
20
20
  }
21
21
  export declare function asSelectors(...classNames: ClassNames[]): string;
22
+ export declare function clsx(...args: any[]): string;
@@ -6,7 +6,6 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
6
6
 
7
7
  var React = require('react');
8
8
  var React__default = _interopDefault(React);
9
- var clsx = _interopDefault(require('clsx'));
10
9
 
11
10
  var ClassNames;
12
11
 
@@ -40,6 +39,35 @@ function asSelectors() {
40
39
  return "." + c;
41
40
  }).join('');
42
41
  }
42
+ function clsx() {
43
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
44
+ args[_key2] = arguments[_key2];
45
+ }
46
+
47
+ var classes = args.reduce(function (classes, arg) {
48
+ if (typeof arg === 'string') {
49
+ classes.push(arg);
50
+ }
51
+
52
+ if (Array.isArray(arg)) {
53
+ classes.push(clsx.apply(void 0, arg));
54
+ }
55
+
56
+ if (typeof arg === 'object') {
57
+ Object.entries(arg).forEach(function (_ref) {
58
+ var key = _ref[0],
59
+ value = _ref[1];
60
+
61
+ if (value) {
62
+ classes.push(key);
63
+ }
64
+ });
65
+ }
66
+
67
+ return classes;
68
+ }, []);
69
+ return classes.filter(Boolean).join(' ');
70
+ }
43
71
 
44
72
  function focusElement(element) {
45
73
  if (!element) {
@@ -18396,9 +18424,10 @@ function Suggested(_ref) {
18396
18424
 
18397
18425
  function EmojiList() {
18398
18426
  var categories = useCategoriesConfig();
18427
+ var renderdCategoriesCountRef = React.useRef(0);
18399
18428
  return React.createElement("ul", {
18400
18429
  className: ClassNames.emojiList
18401
- }, categories.map(function (categoryConfig, index) {
18430
+ }, categories.map(function (categoryConfig) {
18402
18431
  var category = categoryFromCategoryConfig(categoryConfig);
18403
18432
 
18404
18433
  if (category === exports.Categories.SUGGESTED) {
@@ -18410,17 +18439,17 @@ function EmojiList() {
18410
18439
 
18411
18440
  return React.createElement(RenderCategory, {
18412
18441
  key: category,
18413
- index: index,
18414
18442
  category: category,
18415
- categoryConfig: categoryConfig
18443
+ categoryConfig: categoryConfig,
18444
+ renderdCategoriesCountRef: renderdCategoriesCountRef
18416
18445
  });
18417
18446
  }));
18418
18447
  }
18419
18448
 
18420
18449
  function RenderCategory(_ref) {
18421
- var index = _ref.index,
18422
- category = _ref.category,
18423
- categoryConfig = _ref.categoryConfig;
18450
+ var category = _ref.category,
18451
+ categoryConfig = _ref.categoryConfig,
18452
+ renderdCategoriesCountRef = _ref.renderdCategoriesCountRef;
18424
18453
  var isEmojiHidden = useIsEmojiHidden();
18425
18454
  var lazyLoadEmojis = useLazyLoadEmojisConfig();
18426
18455
  var emojiStyle = useEmojiStyleConfig();
@@ -18434,7 +18463,12 @@ function RenderCategory(_ref) {
18434
18463
  var showVariations = !useSkinTonesDisabledConfig(); // Small trick to defer the rendering of all emoji categories until the first category is visible
18435
18464
  // This way the user gets to actually see something and not wait for the whole picker to render.
18436
18465
 
18437
- var emojisToPush = !isPastInitialLoad && index > 1 ? [] : emojisByCategory(category);
18466
+ var emojisToPush = !isPastInitialLoad && renderdCategoriesCountRef.current > 0 ? [] : emojisByCategory(category);
18467
+
18468
+ if (emojisToPush.length > 0) {
18469
+ renderdCategoriesCountRef.current++;
18470
+ }
18471
+
18438
18472
  var hiddenCounter = 0;
18439
18473
  var emojis = emojisToPush.map(function (emoji) {
18440
18474
  var unified = emojiUnified(emoji, activeSkinTone);