emoji-picker-react 4.7.18 → 4.9.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() {
@@ -16891,12 +16892,16 @@ function useMutableConfig() {
16891
16892
  function useDefineMutableConfig(config) {
16892
16893
  var MutableConfigRef = React__default.useRef({
16893
16894
  onEmojiClick: config.onEmojiClick || emptyFunc,
16894
- onReactionClick: config.onReactionClick || config.onEmojiClick
16895
+ onReactionClick: config.onReactionClick || config.onEmojiClick,
16896
+ onSkinToneChange: config.onSkinToneChange || emptyFunc
16895
16897
  });
16896
16898
  React__default.useEffect(function () {
16897
16899
  MutableConfigRef.current.onEmojiClick = config.onEmojiClick || emptyFunc;
16898
16900
  MutableConfigRef.current.onReactionClick = config.onReactionClick || config.onEmojiClick;
16899
16901
  }, [config.onEmojiClick, config.onReactionClick]);
16902
+ React__default.useEffect(function () {
16903
+ MutableConfigRef.current.onSkinToneChange = config.onSkinToneChange || emptyFunc;
16904
+ }, [config.onSkinToneChange]);
16900
16905
  return MutableConfigRef;
16901
16906
  }
16902
16907
  function emptyFunc() {}
@@ -16920,34 +16925,39 @@ function useDefaultSkinToneConfig() {
16920
16925
  defaultSkinTone = _usePickerConfig2.defaultSkinTone;
16921
16926
  return defaultSkinTone;
16922
16927
  }
16923
- function useSkinTonesDisabledConfig() {
16928
+ function useAllowExpandReactions() {
16924
16929
  var _usePickerConfig3 = usePickerConfig(),
16925
- skinTonesDisabled = _usePickerConfig3.skinTonesDisabled;
16930
+ allowExpandReactions = _usePickerConfig3.allowExpandReactions;
16931
+ return allowExpandReactions;
16932
+ }
16933
+ function useSkinTonesDisabledConfig() {
16934
+ var _usePickerConfig4 = usePickerConfig(),
16935
+ skinTonesDisabled = _usePickerConfig4.skinTonesDisabled;
16926
16936
  return skinTonesDisabled;
16927
16937
  }
16928
16938
  function useEmojiStyleConfig() {
16929
- var _usePickerConfig4 = usePickerConfig(),
16930
- emojiStyle = _usePickerConfig4.emojiStyle;
16939
+ var _usePickerConfig5 = usePickerConfig(),
16940
+ emojiStyle = _usePickerConfig5.emojiStyle;
16931
16941
  return emojiStyle;
16932
16942
  }
16933
16943
  function useAutoFocusSearchConfig() {
16934
- var _usePickerConfig5 = usePickerConfig(),
16935
- autoFocusSearch = _usePickerConfig5.autoFocusSearch;
16944
+ var _usePickerConfig6 = usePickerConfig(),
16945
+ autoFocusSearch = _usePickerConfig6.autoFocusSearch;
16936
16946
  return autoFocusSearch;
16937
16947
  }
16938
16948
  function useCategoriesConfig() {
16939
- var _usePickerConfig6 = usePickerConfig(),
16940
- categories = _usePickerConfig6.categories;
16949
+ var _usePickerConfig7 = usePickerConfig(),
16950
+ categories = _usePickerConfig7.categories;
16941
16951
  return categories;
16942
16952
  }
16943
16953
  function useCustomEmojisConfig() {
16944
- var _usePickerConfig7 = usePickerConfig(),
16945
- customEmojis = _usePickerConfig7.customEmojis;
16954
+ var _usePickerConfig8 = usePickerConfig(),
16955
+ customEmojis = _usePickerConfig8.customEmojis;
16946
16956
  return customEmojis;
16947
16957
  }
16948
16958
  function useOpenConfig() {
16949
- var _usePickerConfig8 = usePickerConfig(),
16950
- open = _usePickerConfig8.open;
16959
+ var _usePickerConfig9 = usePickerConfig(),
16960
+ open = _usePickerConfig9.open;
16951
16961
  return open;
16952
16962
  }
16953
16963
  function useOnEmojiClickConfig(mouseEventSource) {
@@ -16957,74 +16967,79 @@ function useOnEmojiClickConfig(mouseEventSource) {
16957
16967
  var handler = (_ref = mouseEventSource === MOUSE_EVENT_SOURCE.REACTIONS ? current.onReactionClick : current.onEmojiClick) != null ? _ref : current.onEmojiClick;
16958
16968
  return handler || function () {};
16959
16969
  }
16970
+ function useOnSkinToneChangeConfig() {
16971
+ var _useMutableConfig2 = useMutableConfig(),
16972
+ current = _useMutableConfig2.current;
16973
+ return current.onSkinToneChange || function () {};
16974
+ }
16960
16975
  function usePreviewConfig() {
16961
- var _usePickerConfig9 = usePickerConfig(),
16962
- previewConfig = _usePickerConfig9.previewConfig;
16976
+ var _usePickerConfig10 = usePickerConfig(),
16977
+ previewConfig = _usePickerConfig10.previewConfig;
16963
16978
  return previewConfig;
16964
16979
  }
16965
16980
  function useThemeConfig() {
16966
- var _usePickerConfig10 = usePickerConfig(),
16967
- theme = _usePickerConfig10.theme;
16981
+ var _usePickerConfig11 = usePickerConfig(),
16982
+ theme = _usePickerConfig11.theme;
16968
16983
  return theme;
16969
16984
  }
16970
16985
  function useSuggestedEmojisModeConfig() {
16971
- var _usePickerConfig11 = usePickerConfig(),
16972
- suggestedEmojisMode = _usePickerConfig11.suggestedEmojisMode;
16986
+ var _usePickerConfig12 = usePickerConfig(),
16987
+ suggestedEmojisMode = _usePickerConfig12.suggestedEmojisMode;
16973
16988
  return suggestedEmojisMode;
16974
16989
  }
16975
16990
  function useLazyLoadEmojisConfig() {
16976
- var _usePickerConfig12 = usePickerConfig(),
16977
- lazyLoadEmojis = _usePickerConfig12.lazyLoadEmojis;
16991
+ var _usePickerConfig13 = usePickerConfig(),
16992
+ lazyLoadEmojis = _usePickerConfig13.lazyLoadEmojis;
16978
16993
  return lazyLoadEmojis;
16979
16994
  }
16980
16995
  function useClassNameConfig() {
16981
- var _usePickerConfig13 = usePickerConfig(),
16982
- className = _usePickerConfig13.className;
16996
+ var _usePickerConfig14 = usePickerConfig(),
16997
+ className = _usePickerConfig14.className;
16983
16998
  return className;
16984
16999
  }
16985
17000
  function useStyleConfig() {
16986
- var _usePickerConfig14 = usePickerConfig(),
16987
- height = _usePickerConfig14.height,
16988
- width = _usePickerConfig14.width,
16989
- style = _usePickerConfig14.style;
17001
+ var _usePickerConfig15 = usePickerConfig(),
17002
+ height = _usePickerConfig15.height,
17003
+ width = _usePickerConfig15.width,
17004
+ style = _usePickerConfig15.style;
16990
17005
  return _extends({
16991
17006
  height: getDimension(height),
16992
17007
  width: getDimension(width)
16993
17008
  }, style);
16994
17009
  }
16995
17010
  function useReactionsOpenConfig() {
16996
- var _usePickerConfig15 = usePickerConfig(),
16997
- reactionsDefaultOpen = _usePickerConfig15.reactionsDefaultOpen;
17011
+ var _usePickerConfig16 = usePickerConfig(),
17012
+ reactionsDefaultOpen = _usePickerConfig16.reactionsDefaultOpen;
16998
17013
  return reactionsDefaultOpen;
16999
17014
  }
17000
17015
  function useEmojiVersionConfig() {
17001
- var _usePickerConfig16 = usePickerConfig(),
17002
- emojiVersion = _usePickerConfig16.emojiVersion;
17016
+ var _usePickerConfig17 = usePickerConfig(),
17017
+ emojiVersion = _usePickerConfig17.emojiVersion;
17003
17018
  return emojiVersion;
17004
17019
  }
17005
17020
  function useSearchDisabledConfig() {
17006
- var _usePickerConfig17 = usePickerConfig(),
17007
- searchDisabled = _usePickerConfig17.searchDisabled;
17021
+ var _usePickerConfig18 = usePickerConfig(),
17022
+ searchDisabled = _usePickerConfig18.searchDisabled;
17008
17023
  return searchDisabled;
17009
17024
  }
17010
17025
  function useSkinTonePickerLocationConfig() {
17011
- var _usePickerConfig18 = usePickerConfig(),
17012
- skinTonePickerLocation = _usePickerConfig18.skinTonePickerLocation;
17026
+ var _usePickerConfig19 = usePickerConfig(),
17027
+ skinTonePickerLocation = _usePickerConfig19.skinTonePickerLocation;
17013
17028
  return skinTonePickerLocation;
17014
17029
  }
17015
17030
  function useUnicodeToHide() {
17016
- var _usePickerConfig19 = usePickerConfig(),
17017
- unicodeToHide = _usePickerConfig19.unicodeToHide;
17031
+ var _usePickerConfig20 = usePickerConfig(),
17032
+ unicodeToHide = _usePickerConfig20.unicodeToHide;
17018
17033
  return unicodeToHide;
17019
17034
  }
17020
17035
  function useReactionsConfig() {
17021
- var _usePickerConfig20 = usePickerConfig(),
17022
- reactions = _usePickerConfig20.reactions;
17036
+ var _usePickerConfig21 = usePickerConfig(),
17037
+ reactions = _usePickerConfig21.reactions;
17023
17038
  return reactions;
17024
17039
  }
17025
17040
  function useGetEmojiUrlConfig() {
17026
- var _usePickerConfig21 = usePickerConfig(),
17027
- getEmojiUrl = _usePickerConfig21.getEmojiUrl;
17041
+ var _usePickerConfig22 = usePickerConfig(),
17042
+ getEmojiUrl = _usePickerConfig22.getEmojiUrl;
17028
17043
  return getEmojiUrl;
17029
17044
  }
17030
17045
  function getDimension(dimensionConfig) {
@@ -19089,6 +19104,7 @@ function Reactions() {
19089
19104
  var reactions = useReactionsConfig();
19090
19105
  useMouseDownHandlers(ReactionsRef, MOUSE_EVENT_SOURCE.REACTIONS);
19091
19106
  var emojiStyle = useEmojiStyleConfig();
19107
+ var allowExpandReactions = useAllowExpandReactions();
19092
19108
  if (!reactionsOpen) {
19093
19109
  return null;
19094
19110
  }
@@ -19106,7 +19122,7 @@ function Reactions() {
19106
19122
  className: cx(styles$6.emojiButton),
19107
19123
  noBackground: true
19108
19124
  }));
19109
- }), createElement("li", null, createElement(BtnPlus, null)));
19125
+ }), allowExpandReactions ? createElement("li", null, createElement(BtnPlus, null)) : null);
19110
19126
  }
19111
19127
  var styles$6 = /*#__PURE__*/stylesheet.create({
19112
19128
  list: {
@@ -19779,6 +19795,7 @@ function SkinTonePicker(_ref) {
19779
19795
  var _useActiveSkinToneSta = useActiveSkinToneState(),
19780
19796
  activeSkinTone = _useActiveSkinToneSta[0],
19781
19797
  setActiveSkinTone = _useActiveSkinToneSta[1];
19798
+ var onSkinToneChange = useOnSkinToneChangeConfig();
19782
19799
  var closeAllOpenToggles = useCloseAllOpenToggles();
19783
19800
  var focusSearchInput = useFocusSearchInput();
19784
19801
  if (isDisabled) {
@@ -19811,6 +19828,7 @@ function SkinTonePicker(_ref) {
19811
19828
  onClick: function onClick() {
19812
19829
  if (isOpen) {
19813
19830
  setActiveSkinTone(skinToneVariation);
19831
+ onSkinToneChange(skinToneVariation);
19814
19832
  focusSearchInput();
19815
19833
  } else {
19816
19834
  setIsOpen(true);
@@ -20419,19 +20437,32 @@ function EmojiPicker(props) {
20419
20437
  function ContentControl() {
20420
20438
  var _useReactionsModeStat = useReactionsModeState(),
20421
20439
  reactionsDefaultOpen = _useReactionsModeStat[0];
20440
+ var allowExpandReactions = useAllowExpandReactions();
20422
20441
  var _React$useState = useState(!reactionsDefaultOpen),
20423
20442
  renderAll = _React$useState[0],
20424
20443
  setRenderAll = _React$useState[1];
20425
20444
  var isOpen = useOpenConfig();
20426
20445
  useEffect(function () {
20446
+ if (reactionsDefaultOpen && !allowExpandReactions) {
20447
+ return;
20448
+ }
20427
20449
  if (!renderAll) {
20428
20450
  setRenderAll(true);
20429
20451
  }
20430
- }, [renderAll]);
20452
+ }, [renderAll, allowExpandReactions, reactionsDefaultOpen]);
20431
20453
  if (!isOpen) {
20432
20454
  return null;
20433
20455
  }
20434
- return createElement(PickerMain, null, createElement(Reactions, null), renderAll ? createElement(Fragment, null, createElement(Header, null), createElement(Body, null), createElement(Preview, null)) : null);
20456
+ return createElement(PickerMain, null, createElement(Reactions, null), createElement(ExpandedPickerContent, {
20457
+ renderAll: renderAll
20458
+ }));
20459
+ }
20460
+ function ExpandedPickerContent(_ref) {
20461
+ var renderAll = _ref.renderAll;
20462
+ if (!renderAll) {
20463
+ return null;
20464
+ }
20465
+ return createElement(Fragment, null, createElement(Header, null), createElement(Body, null), createElement(Preview, null));
20435
20466
  }
20436
20467
  // eslint-disable-next-line complexity
20437
20468
  var EmojiPickerReact = /*#__PURE__*/memo(EmojiPicker, compareConfig);
@@ -20492,7 +20523,8 @@ function ExportedEmoji(_ref) {
20492
20523
  function EmojiPicker$1(props) {
20493
20524
  var MutableConfigRef = useDefineMutableConfig({
20494
20525
  onEmojiClick: props.onEmojiClick,
20495
- onReactionClick: props.onReactionClick
20526
+ onReactionClick: props.onReactionClick,
20527
+ onSkinToneChange: props.onSkinToneChange
20496
20528
  });
20497
20529
  return createElement(ErrorBoundary, null, createElement(MutableConfigContext.Provider, {
20498
20530
  value: MutableConfigRef