emoji-picker-react 4.7.17 → 4.8.0

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.
@@ -16843,7 +16843,8 @@ function basePickerConfig() {
16843
16843
  width: 350,
16844
16844
  reactionsDefaultOpen: false,
16845
16845
  reactions: DEFAULT_REACTIONS,
16846
- open: true
16846
+ open: true,
16847
+ allowExpandReactions: true
16847
16848
  };
16848
16849
  }
16849
16850
  var basePreviewConfig = {
@@ -16876,7 +16877,7 @@ function useSetConfig(config) {
16876
16877
  setMergedConfig(mergeConfig(config));
16877
16878
  // not gonna...
16878
16879
  // eslint-disable-next-line react-hooks/exhaustive-deps
16879
- }, [(_config$customEmojis = config.customEmojis) == null ? void 0 : _config$customEmojis.length, config.open, config.emojiVersion, config.reactionsDefaultOpen, config.searchPlaceHolder, config.searchPlaceholder, config.defaultSkinTone, config.skinTonesDisabled, config.autoFocusSearch, config.emojiStyle, config.theme, config.suggestedEmojisMode, config.lazyLoadEmojis, config.className, config.height, config.width, config.searchDisabled, config.skinTonePickerLocation]);
16880
+ }, [(_config$customEmojis = config.customEmojis) == null ? void 0 : _config$customEmojis.length, config.open, config.emojiVersion, config.reactionsDefaultOpen, config.searchPlaceHolder, config.searchPlaceholder, config.defaultSkinTone, config.skinTonesDisabled, config.autoFocusSearch, config.emojiStyle, config.theme, config.suggestedEmojisMode, config.lazyLoadEmojis, config.className, config.height, config.width, config.searchDisabled, config.skinTonePickerLocation, config.allowExpandReactions]);
16880
16881
  return mergedConfig;
16881
16882
  }
16882
16883
  function usePickerConfig() {
@@ -16920,34 +16921,39 @@ function useDefaultSkinToneConfig() {
16920
16921
  defaultSkinTone = _usePickerConfig2.defaultSkinTone;
16921
16922
  return defaultSkinTone;
16922
16923
  }
16923
- function useSkinTonesDisabledConfig() {
16924
+ function useAllowExpandReactions() {
16924
16925
  var _usePickerConfig3 = usePickerConfig(),
16925
- skinTonesDisabled = _usePickerConfig3.skinTonesDisabled;
16926
+ allowExpandReactions = _usePickerConfig3.allowExpandReactions;
16927
+ return allowExpandReactions;
16928
+ }
16929
+ function useSkinTonesDisabledConfig() {
16930
+ var _usePickerConfig4 = usePickerConfig(),
16931
+ skinTonesDisabled = _usePickerConfig4.skinTonesDisabled;
16926
16932
  return skinTonesDisabled;
16927
16933
  }
16928
16934
  function useEmojiStyleConfig() {
16929
- var _usePickerConfig4 = usePickerConfig(),
16930
- emojiStyle = _usePickerConfig4.emojiStyle;
16935
+ var _usePickerConfig5 = usePickerConfig(),
16936
+ emojiStyle = _usePickerConfig5.emojiStyle;
16931
16937
  return emojiStyle;
16932
16938
  }
16933
16939
  function useAutoFocusSearchConfig() {
16934
- var _usePickerConfig5 = usePickerConfig(),
16935
- autoFocusSearch = _usePickerConfig5.autoFocusSearch;
16940
+ var _usePickerConfig6 = usePickerConfig(),
16941
+ autoFocusSearch = _usePickerConfig6.autoFocusSearch;
16936
16942
  return autoFocusSearch;
16937
16943
  }
16938
16944
  function useCategoriesConfig() {
16939
- var _usePickerConfig6 = usePickerConfig(),
16940
- categories = _usePickerConfig6.categories;
16945
+ var _usePickerConfig7 = usePickerConfig(),
16946
+ categories = _usePickerConfig7.categories;
16941
16947
  return categories;
16942
16948
  }
16943
16949
  function useCustomEmojisConfig() {
16944
- var _usePickerConfig7 = usePickerConfig(),
16945
- customEmojis = _usePickerConfig7.customEmojis;
16950
+ var _usePickerConfig8 = usePickerConfig(),
16951
+ customEmojis = _usePickerConfig8.customEmojis;
16946
16952
  return customEmojis;
16947
16953
  }
16948
16954
  function useOpenConfig() {
16949
- var _usePickerConfig8 = usePickerConfig(),
16950
- open = _usePickerConfig8.open;
16955
+ var _usePickerConfig9 = usePickerConfig(),
16956
+ open = _usePickerConfig9.open;
16951
16957
  return open;
16952
16958
  }
16953
16959
  function useOnEmojiClickConfig(mouseEventSource) {
@@ -16958,73 +16964,73 @@ function useOnEmojiClickConfig(mouseEventSource) {
16958
16964
  return handler || function () {};
16959
16965
  }
16960
16966
  function usePreviewConfig() {
16961
- var _usePickerConfig9 = usePickerConfig(),
16962
- previewConfig = _usePickerConfig9.previewConfig;
16967
+ var _usePickerConfig10 = usePickerConfig(),
16968
+ previewConfig = _usePickerConfig10.previewConfig;
16963
16969
  return previewConfig;
16964
16970
  }
16965
16971
  function useThemeConfig() {
16966
- var _usePickerConfig10 = usePickerConfig(),
16967
- theme = _usePickerConfig10.theme;
16972
+ var _usePickerConfig11 = usePickerConfig(),
16973
+ theme = _usePickerConfig11.theme;
16968
16974
  return theme;
16969
16975
  }
16970
16976
  function useSuggestedEmojisModeConfig() {
16971
- var _usePickerConfig11 = usePickerConfig(),
16972
- suggestedEmojisMode = _usePickerConfig11.suggestedEmojisMode;
16977
+ var _usePickerConfig12 = usePickerConfig(),
16978
+ suggestedEmojisMode = _usePickerConfig12.suggestedEmojisMode;
16973
16979
  return suggestedEmojisMode;
16974
16980
  }
16975
16981
  function useLazyLoadEmojisConfig() {
16976
- var _usePickerConfig12 = usePickerConfig(),
16977
- lazyLoadEmojis = _usePickerConfig12.lazyLoadEmojis;
16982
+ var _usePickerConfig13 = usePickerConfig(),
16983
+ lazyLoadEmojis = _usePickerConfig13.lazyLoadEmojis;
16978
16984
  return lazyLoadEmojis;
16979
16985
  }
16980
16986
  function useClassNameConfig() {
16981
- var _usePickerConfig13 = usePickerConfig(),
16982
- className = _usePickerConfig13.className;
16987
+ var _usePickerConfig14 = usePickerConfig(),
16988
+ className = _usePickerConfig14.className;
16983
16989
  return className;
16984
16990
  }
16985
16991
  function useStyleConfig() {
16986
- var _usePickerConfig14 = usePickerConfig(),
16987
- height = _usePickerConfig14.height,
16988
- width = _usePickerConfig14.width,
16989
- style = _usePickerConfig14.style;
16992
+ var _usePickerConfig15 = usePickerConfig(),
16993
+ height = _usePickerConfig15.height,
16994
+ width = _usePickerConfig15.width,
16995
+ style = _usePickerConfig15.style;
16990
16996
  return _extends({
16991
16997
  height: getDimension(height),
16992
16998
  width: getDimension(width)
16993
16999
  }, style);
16994
17000
  }
16995
17001
  function useReactionsOpenConfig() {
16996
- var _usePickerConfig15 = usePickerConfig(),
16997
- reactionsDefaultOpen = _usePickerConfig15.reactionsDefaultOpen;
17002
+ var _usePickerConfig16 = usePickerConfig(),
17003
+ reactionsDefaultOpen = _usePickerConfig16.reactionsDefaultOpen;
16998
17004
  return reactionsDefaultOpen;
16999
17005
  }
17000
17006
  function useEmojiVersionConfig() {
17001
- var _usePickerConfig16 = usePickerConfig(),
17002
- emojiVersion = _usePickerConfig16.emojiVersion;
17007
+ var _usePickerConfig17 = usePickerConfig(),
17008
+ emojiVersion = _usePickerConfig17.emojiVersion;
17003
17009
  return emojiVersion;
17004
17010
  }
17005
17011
  function useSearchDisabledConfig() {
17006
- var _usePickerConfig17 = usePickerConfig(),
17007
- searchDisabled = _usePickerConfig17.searchDisabled;
17012
+ var _usePickerConfig18 = usePickerConfig(),
17013
+ searchDisabled = _usePickerConfig18.searchDisabled;
17008
17014
  return searchDisabled;
17009
17015
  }
17010
17016
  function useSkinTonePickerLocationConfig() {
17011
- var _usePickerConfig18 = usePickerConfig(),
17012
- skinTonePickerLocation = _usePickerConfig18.skinTonePickerLocation;
17017
+ var _usePickerConfig19 = usePickerConfig(),
17018
+ skinTonePickerLocation = _usePickerConfig19.skinTonePickerLocation;
17013
17019
  return skinTonePickerLocation;
17014
17020
  }
17015
17021
  function useUnicodeToHide() {
17016
- var _usePickerConfig19 = usePickerConfig(),
17017
- unicodeToHide = _usePickerConfig19.unicodeToHide;
17022
+ var _usePickerConfig20 = usePickerConfig(),
17023
+ unicodeToHide = _usePickerConfig20.unicodeToHide;
17018
17024
  return unicodeToHide;
17019
17025
  }
17020
17026
  function useReactionsConfig() {
17021
- var _usePickerConfig20 = usePickerConfig(),
17022
- reactions = _usePickerConfig20.reactions;
17027
+ var _usePickerConfig21 = usePickerConfig(),
17028
+ reactions = _usePickerConfig21.reactions;
17023
17029
  return reactions;
17024
17030
  }
17025
17031
  function useGetEmojiUrlConfig() {
17026
- var _usePickerConfig21 = usePickerConfig(),
17027
- getEmojiUrl = _usePickerConfig21.getEmojiUrl;
17032
+ var _usePickerConfig22 = usePickerConfig(),
17033
+ getEmojiUrl = _usePickerConfig22.getEmojiUrl;
17028
17034
  return getEmojiUrl;
17029
17035
  }
17030
17036
  function getDimension(dimensionConfig) {
@@ -19089,6 +19095,7 @@ function Reactions() {
19089
19095
  var reactions = useReactionsConfig();
19090
19096
  useMouseDownHandlers(ReactionsRef, MOUSE_EVENT_SOURCE.REACTIONS);
19091
19097
  var emojiStyle = useEmojiStyleConfig();
19098
+ var allowExpandReactions = useAllowExpandReactions();
19092
19099
  if (!reactionsOpen) {
19093
19100
  return null;
19094
19101
  }
@@ -19106,7 +19113,7 @@ function Reactions() {
19106
19113
  className: cx(styles$6.emojiButton),
19107
19114
  noBackground: true
19108
19115
  }));
19109
- }), createElement("li", null, createElement(BtnPlus, null)));
19116
+ }), allowExpandReactions ? createElement("li", null, createElement(BtnPlus, null)) : null);
19110
19117
  }
19111
19118
  var styles$6 = /*#__PURE__*/stylesheet.create({
19112
19119
  list: {
@@ -19602,15 +19609,8 @@ function useEmojiPreviewEvents(allow, setPreviewEmoji) {
19602
19609
  if (button) {
19603
19610
  var belowFoldByPx = detectEmojyPartiallyBelowFold(button, bodyRef);
19604
19611
  var buttonHeight = button.getBoundingClientRect().height;
19605
- if (belowFoldByPx < buttonHeight / 2) {
19606
- return handlePartiallyVisibleElementFocus(button, setPreviewEmoji);
19607
- }
19608
19612
  if (belowFoldByPx < buttonHeight) {
19609
- button.scrollIntoView({
19610
- behavior: 'smooth',
19611
- block: 'end'
19612
- });
19613
- return;
19613
+ return handlePartiallyVisibleElementFocus(button, setPreviewEmoji);
19614
19614
  }
19615
19615
  focusElement(button);
19616
19616
  }
@@ -20426,19 +20426,32 @@ function EmojiPicker(props) {
20426
20426
  function ContentControl() {
20427
20427
  var _useReactionsModeStat = useReactionsModeState(),
20428
20428
  reactionsDefaultOpen = _useReactionsModeStat[0];
20429
+ var allowExpandReactions = useAllowExpandReactions();
20429
20430
  var _React$useState = useState(!reactionsDefaultOpen),
20430
20431
  renderAll = _React$useState[0],
20431
20432
  setRenderAll = _React$useState[1];
20432
20433
  var isOpen = useOpenConfig();
20433
20434
  useEffect(function () {
20435
+ if (reactionsDefaultOpen && !allowExpandReactions) {
20436
+ return;
20437
+ }
20434
20438
  if (!renderAll) {
20435
20439
  setRenderAll(true);
20436
20440
  }
20437
- }, [renderAll]);
20441
+ }, [renderAll, allowExpandReactions, reactionsDefaultOpen]);
20438
20442
  if (!isOpen) {
20439
20443
  return null;
20440
20444
  }
20441
- return createElement(PickerMain, null, createElement(Reactions, null), renderAll ? createElement(Fragment, null, createElement(Header, null), createElement(Body, null), createElement(Preview, null)) : null);
20445
+ return createElement(PickerMain, null, createElement(Reactions, null), createElement(ExpandedPickerContent, {
20446
+ renderAll: renderAll
20447
+ }));
20448
+ }
20449
+ function ExpandedPickerContent(_ref) {
20450
+ var renderAll = _ref.renderAll;
20451
+ if (!renderAll) {
20452
+ return null;
20453
+ }
20454
+ return createElement(Fragment, null, createElement(Header, null), createElement(Body, null), createElement(Preview, null));
20442
20455
  }
20443
20456
  // eslint-disable-next-line complexity
20444
20457
  var EmojiPickerReact = /*#__PURE__*/memo(EmojiPicker, compareConfig);