emoji-picker-react 4.5.8 → 4.5.10

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.
@@ -1,4 +1,4 @@
1
- import React__default, { useRef, createElement, createContext, createRef, useContext, useState, useMemo, useEffect, useCallback, Fragment, memo, Component } from 'react';
1
+ import React__default, { useRef, createElement, createContext, createRef, useContext, useState, useEffect, useMemo, useCallback, Fragment, memo, Component } from 'react';
2
2
 
3
3
  var ClassNames;
4
4
 
@@ -16845,7 +16845,8 @@ function emojiByUnified(unified) {
16845
16845
  return allEmojisByUnified[withoutSkinTone];
16846
16846
  }
16847
16847
  var allEmojis = /*#__PURE__*/Object.values(emojis).flat();
16848
- function addCustomEmojis(customEmojis) {
16848
+ function setCustomEmojis(customEmojis) {
16849
+ emojis[Categories.CUSTOM] = [];
16849
16850
  customEmojis.forEach(function (emoji) {
16850
16851
  var emojiData = customToRegularEmoji(emoji);
16851
16852
 
@@ -16908,7 +16909,7 @@ function mergeConfig(userConfig) {
16908
16909
  var categories = mergeCategoriesConfig(userConfig.categories, {
16909
16910
  suggestionMode: config.suggestedEmojisMode
16910
16911
  });
16911
- addCustomEmojis((_config$customEmojis = config.customEmojis) != null ? _config$customEmojis : []);
16912
+ setCustomEmojis((_config$customEmojis = config.customEmojis) != null ? _config$customEmojis : []);
16912
16913
  var skinTonePickerLocation = config.searchDisabled ? SkinTonePickerLocation.PREVIEW : config.skinTonePickerLocation;
16913
16914
  return _extends({}, config, {
16914
16915
  categories: categories,
@@ -16951,14 +16952,30 @@ function PickerConfigProvider(_ref) {
16951
16952
  var children = _ref.children,
16952
16953
  config = _objectWithoutPropertiesLoose(_ref, _excluded);
16953
16954
 
16955
+ var mergedConfig = useSetConfig(config);
16956
+ return createElement(ConfigContext.Provider, {
16957
+ value: mergedConfig
16958
+ }, children);
16959
+ }
16960
+ function useSetConfig(config) {
16961
+ var _config$customEmojis2;
16962
+
16954
16963
  var _React$useState = useState(function () {
16955
16964
  return mergeConfig(config);
16956
16965
  }),
16957
- mergedConfig = _React$useState[0];
16966
+ mergedConfig = _React$useState[0],
16967
+ setMergedConfig = _React$useState[1];
16958
16968
 
16959
- return createElement(ConfigContext.Provider, {
16960
- value: mergedConfig
16961
- }, children);
16969
+ useEffect(function () {
16970
+ var _config$customEmojis, _mergedConfig$customE;
16971
+
16972
+ if (((_config$customEmojis = config.customEmojis) == null ? void 0 : _config$customEmojis.length) !== ((_mergedConfig$customE = mergedConfig.customEmojis) == null ? void 0 : _mergedConfig$customE.length)) {
16973
+ setMergedConfig(mergeConfig(config));
16974
+ } // not gonna...
16975
+ // eslint-disable-next-line react-hooks/exhaustive-deps
16976
+
16977
+ }, [(_config$customEmojis2 = config.customEmojis) == null ? void 0 : _config$customEmojis2.length]);
16978
+ return mergedConfig;
16962
16979
  }
16963
16980
  function usePickerConfig() {
16964
16981
  return useContext(ConfigContext);
@@ -19886,7 +19903,11 @@ function EmojiPicker(props) {
19886
19903
 
19887
19904
 
19888
19905
  var EmojiPickerReact = /*#__PURE__*/memo(EmojiPicker, function (prev, next) {
19889
- return prev.emojiVersion === next.emojiVersion && prev.searchPlaceHolder === next.searchPlaceHolder && prev.searchPlaceholder === next.searchPlaceholder && prev.defaultSkinTone === next.defaultSkinTone && prev.skinTonesDisabled === next.skinTonesDisabled && prev.autoFocusSearch === next.autoFocusSearch && prev.emojiStyle === next.emojiStyle && prev.theme === next.theme && prev.suggestedEmojisMode === next.suggestedEmojisMode && prev.lazyLoadEmojis === next.lazyLoadEmojis && prev.height === next.height && prev.width === next.width && prev.searchDisabled === next.searchDisabled && prev.skinTonePickerLocation === next.skinTonePickerLocation;
19906
+ var _prev$customEmojis, _next$customEmojis;
19907
+
19908
+ var prevCustomEmojis = (_prev$customEmojis = prev.customEmojis) != null ? _prev$customEmojis : [];
19909
+ var nextCustomEmojis = (_next$customEmojis = next.customEmojis) != null ? _next$customEmojis : [];
19910
+ return prev.emojiVersion === next.emojiVersion && prev.searchPlaceHolder === next.searchPlaceHolder && prev.searchPlaceholder === next.searchPlaceholder && prev.defaultSkinTone === next.defaultSkinTone && prev.skinTonesDisabled === next.skinTonesDisabled && prev.autoFocusSearch === next.autoFocusSearch && prev.emojiStyle === next.emojiStyle && prev.theme === next.theme && prev.suggestedEmojisMode === next.suggestedEmojisMode && prev.lazyLoadEmojis === next.lazyLoadEmojis && prev.height === next.height && prev.width === next.width && prev.searchDisabled === next.searchDisabled && prev.skinTonePickerLocation === next.skinTonePickerLocation && prevCustomEmojis.length === nextCustomEmojis.length;
19890
19911
  });
19891
19912
 
19892
19913
  var ErrorBoundary = /*#__PURE__*/function (_React$Component) {