emoji-picker-react 4.5.2 → 4.5.4
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/DomUtils/classNames.d.ts +1 -0
- package/dist/EmojiPickerReact.d.ts +5 -5
- package/dist/config/config.d.ts +1 -1
- package/dist/config/mutableConfig.d.ts +8 -0
- package/dist/emoji-picker-react.cjs.development.js +85 -39
- 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 +85 -40
- package/dist/emoji-picker-react.esm.js.map +1 -1
- package/dist/index.d.ts +3 -5
- package/package.json +1 -4
- package/src/DomUtils/classNames.ts +24 -0
- package/src/EmojiPickerReact.tsx +23 -4
- package/src/components/Layout/Flex.tsx +2 -1
- package/src/components/Layout/Space.tsx +2 -1
- package/src/components/atoms/Button.tsx +2 -1
- package/src/components/body/EmojiCategory.tsx +1 -2
- package/src/components/body/EmojiVariationPicker.tsx +1 -2
- package/src/components/emoji/ClickableEmojiButton.tsx +1 -2
- package/src/components/emoji/EmojiImg.tsx +1 -2
- package/src/components/emoji/NativeEmoji.tsx +1 -2
- package/src/components/header/Search.tsx +1 -2
- package/src/components/header/SkinTonePicker.tsx +1 -2
- package/src/components/main/PickerMain.tsx +1 -2
- package/src/components/navigation/CategoryNavigation.tsx +1 -2
- package/src/config/config.ts +1 -9
- package/src/config/mutableConfig.ts +32 -0
- package/src/config/useConfig.ts +3 -2
- package/src/index.tsx +13 -23
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import { PickerConfig } from './config/config';
|
|
1
|
+
import * as React from 'react';
|
|
3
2
|
import './EmojiPickerReact.css';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
import { PickerProps } from './index';
|
|
4
|
+
declare function EmojiPicker(props: PickerProps): JSX.Element;
|
|
5
|
+
declare const _default: React.MemoExoticComponent<typeof EmojiPicker>;
|
|
6
|
+
export default _default;
|
package/dist/config/config.d.ts
CHANGED
|
@@ -14,7 +14,6 @@ export declare type PickerConfigInternal = {
|
|
|
14
14
|
autoFocusSearch: boolean;
|
|
15
15
|
emojiStyle: EmojiStyle;
|
|
16
16
|
categories: CategoriesConfig;
|
|
17
|
-
onEmojiClick: (emoji: EmojiClickData, event: MouseEvent) => void;
|
|
18
17
|
theme: Theme;
|
|
19
18
|
suggestedEmojisMode: SuggestionMode;
|
|
20
19
|
lazyLoadEmojis: boolean;
|
|
@@ -34,6 +33,7 @@ export declare type PreviewConfig = {
|
|
|
34
33
|
};
|
|
35
34
|
declare type ConfigExternal = {
|
|
36
35
|
previewConfig: Partial<PreviewConfig>;
|
|
36
|
+
onEmojiClick: (emoji: EmojiClickData, event: MouseEvent) => void;
|
|
37
37
|
} & Omit<PickerConfigInternal, 'previewConfig' | 'unicodeToHide'>;
|
|
38
38
|
export declare type PickerConfig = Partial<ConfigExternal>;
|
|
39
39
|
export declare type PickerDimensions = string | number;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { EmojiClickData } from '../types/exposedTypes';
|
|
3
|
+
export declare type MutableConfig = {
|
|
4
|
+
onEmojiClick?: (emoji: EmojiClickData, event: MouseEvent) => void;
|
|
5
|
+
};
|
|
6
|
+
export declare const MutableConfigContext: React.Context<React.MutableRefObject<MutableConfig>>;
|
|
7
|
+
export declare function useMutableConfig(): React.MutableRefObject<MutableConfig>;
|
|
8
|
+
export declare function useDefineMutableConfig(config: MutableConfig): React.MutableRefObject<MutableConfig>;
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
|
6
6
|
|
|
7
7
|
var React = require('react');
|
|
8
|
-
var
|
|
8
|
+
var React__default = _interopDefault(React);
|
|
9
9
|
|
|
10
10
|
var ClassNames;
|
|
11
11
|
|
|
@@ -39,6 +39,35 @@ function asSelectors() {
|
|
|
39
39
|
return "." + c;
|
|
40
40
|
}).join('');
|
|
41
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
|
+
}
|
|
42
71
|
|
|
43
72
|
function focusElement(element) {
|
|
44
73
|
if (!element) {
|
|
@@ -16888,11 +16917,6 @@ function basePickerConfig() {
|
|
|
16888
16917
|
getEmojiUrl: emojiUrlByUnified,
|
|
16889
16918
|
height: 450,
|
|
16890
16919
|
lazyLoadEmojis: false,
|
|
16891
|
-
onEmojiClick: function defaultOnClickHandler( // @ts-ignore
|
|
16892
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
16893
|
-
emoji, // @ts-ignore
|
|
16894
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
16895
|
-
event) {},
|
|
16896
16920
|
previewConfig: _extends({}, basePreviewConfig),
|
|
16897
16921
|
searchDisabled: false,
|
|
16898
16922
|
searchPlaceHolder: DEFAULT_SEARCH_PLACEHOLDER,
|
|
@@ -16930,6 +16954,23 @@ function usePickerConfig() {
|
|
|
16930
16954
|
return React.useContext(ConfigContext);
|
|
16931
16955
|
}
|
|
16932
16956
|
|
|
16957
|
+
var MutableConfigContext = /*#__PURE__*/React__default.createContext({});
|
|
16958
|
+
function useMutableConfig() {
|
|
16959
|
+
var mutableConfig = React__default.useContext(MutableConfigContext);
|
|
16960
|
+
return mutableConfig;
|
|
16961
|
+
}
|
|
16962
|
+
function useDefineMutableConfig(config) {
|
|
16963
|
+
var MutableConfigRef = React__default.useRef({
|
|
16964
|
+
onEmojiClick: config.onEmojiClick || emptyFunc
|
|
16965
|
+
});
|
|
16966
|
+
React__default.useEffect(function () {
|
|
16967
|
+
MutableConfigRef.current.onEmojiClick = config.onEmojiClick || emptyFunc;
|
|
16968
|
+
}, [config.onEmojiClick]);
|
|
16969
|
+
return MutableConfigRef;
|
|
16970
|
+
}
|
|
16971
|
+
|
|
16972
|
+
function emptyFunc() {}
|
|
16973
|
+
|
|
16933
16974
|
function useSearchPlaceHolderConfig() {
|
|
16934
16975
|
var _find;
|
|
16935
16976
|
|
|
@@ -16978,20 +17019,20 @@ function useCustomEmojisConfig() {
|
|
|
16978
17019
|
return customEmojis;
|
|
16979
17020
|
}
|
|
16980
17021
|
function useOnEmojiClickConfig() {
|
|
16981
|
-
var
|
|
16982
|
-
|
|
17022
|
+
var _useMutableConfig = useMutableConfig(),
|
|
17023
|
+
current = _useMutableConfig.current;
|
|
16983
17024
|
|
|
16984
|
-
return onEmojiClick;
|
|
17025
|
+
return current.onEmojiClick || function () {};
|
|
16985
17026
|
}
|
|
16986
17027
|
function usePreviewConfig() {
|
|
16987
|
-
var
|
|
16988
|
-
previewConfig =
|
|
17028
|
+
var _usePickerConfig8 = usePickerConfig(),
|
|
17029
|
+
previewConfig = _usePickerConfig8.previewConfig;
|
|
16989
17030
|
|
|
16990
17031
|
return previewConfig;
|
|
16991
17032
|
}
|
|
16992
17033
|
function useThemeConfig() {
|
|
16993
|
-
var
|
|
16994
|
-
theme =
|
|
17034
|
+
var _usePickerConfig9 = usePickerConfig(),
|
|
17035
|
+
theme = _usePickerConfig9.theme;
|
|
16995
17036
|
|
|
16996
17037
|
if (theme === exports.Theme.AUTO) {
|
|
16997
17038
|
return isSystemDarkTheme() ? exports.Theme.DARK : exports.Theme.LIGHT;
|
|
@@ -17000,21 +17041,21 @@ function useThemeConfig() {
|
|
|
17000
17041
|
return theme;
|
|
17001
17042
|
}
|
|
17002
17043
|
function useSuggestedEmojisModeConfig() {
|
|
17003
|
-
var
|
|
17004
|
-
suggestedEmojisMode =
|
|
17044
|
+
var _usePickerConfig10 = usePickerConfig(),
|
|
17045
|
+
suggestedEmojisMode = _usePickerConfig10.suggestedEmojisMode;
|
|
17005
17046
|
|
|
17006
17047
|
return suggestedEmojisMode;
|
|
17007
17048
|
}
|
|
17008
17049
|
function useLazyLoadEmojisConfig() {
|
|
17009
|
-
var
|
|
17010
|
-
lazyLoadEmojis =
|
|
17050
|
+
var _usePickerConfig11 = usePickerConfig(),
|
|
17051
|
+
lazyLoadEmojis = _usePickerConfig11.lazyLoadEmojis;
|
|
17011
17052
|
|
|
17012
17053
|
return lazyLoadEmojis;
|
|
17013
17054
|
}
|
|
17014
17055
|
function usePickerSizeConfig() {
|
|
17015
|
-
var
|
|
17016
|
-
height =
|
|
17017
|
-
width =
|
|
17056
|
+
var _usePickerConfig12 = usePickerConfig(),
|
|
17057
|
+
height = _usePickerConfig12.height,
|
|
17058
|
+
width = _usePickerConfig12.width;
|
|
17018
17059
|
|
|
17019
17060
|
return {
|
|
17020
17061
|
height: getDimension(height),
|
|
@@ -17022,32 +17063,32 @@ function usePickerSizeConfig() {
|
|
|
17022
17063
|
};
|
|
17023
17064
|
}
|
|
17024
17065
|
function useEmojiVersionConfig() {
|
|
17025
|
-
var
|
|
17026
|
-
emojiVersion =
|
|
17066
|
+
var _usePickerConfig13 = usePickerConfig(),
|
|
17067
|
+
emojiVersion = _usePickerConfig13.emojiVersion;
|
|
17027
17068
|
|
|
17028
17069
|
return emojiVersion;
|
|
17029
17070
|
}
|
|
17030
17071
|
function useSearchDisabledConfig() {
|
|
17031
|
-
var
|
|
17032
|
-
searchDisabled =
|
|
17072
|
+
var _usePickerConfig14 = usePickerConfig(),
|
|
17073
|
+
searchDisabled = _usePickerConfig14.searchDisabled;
|
|
17033
17074
|
|
|
17034
17075
|
return searchDisabled;
|
|
17035
17076
|
}
|
|
17036
17077
|
function useSkinTonePickerLocationConfig() {
|
|
17037
|
-
var
|
|
17038
|
-
skinTonePickerLocation =
|
|
17078
|
+
var _usePickerConfig15 = usePickerConfig(),
|
|
17079
|
+
skinTonePickerLocation = _usePickerConfig15.skinTonePickerLocation;
|
|
17039
17080
|
|
|
17040
17081
|
return skinTonePickerLocation;
|
|
17041
17082
|
}
|
|
17042
17083
|
function useUnicodeToHide() {
|
|
17043
|
-
var
|
|
17044
|
-
unicodeToHide =
|
|
17084
|
+
var _usePickerConfig16 = usePickerConfig(),
|
|
17085
|
+
unicodeToHide = _usePickerConfig16.unicodeToHide;
|
|
17045
17086
|
|
|
17046
17087
|
return unicodeToHide;
|
|
17047
17088
|
}
|
|
17048
17089
|
function useGetEmojiUrlConfig() {
|
|
17049
|
-
var
|
|
17050
|
-
getEmojiUrl =
|
|
17090
|
+
var _usePickerConfig17 = usePickerConfig(),
|
|
17091
|
+
getEmojiUrl = _usePickerConfig17.getEmojiUrl;
|
|
17051
17092
|
|
|
17052
17093
|
return getEmojiUrl;
|
|
17053
17094
|
}
|
|
@@ -19724,7 +19765,12 @@ function PickerRootElement(_ref2) {
|
|
|
19724
19765
|
|
|
19725
19766
|
function EmojiPicker(props) {
|
|
19726
19767
|
return React.createElement(ElementRefContextProvider, null, React.createElement(PickerConfigProvider, Object.assign({}, props), React.createElement(PickerMain, null, React.createElement(Header, null), React.createElement(Body, null), React.createElement(Preview, null))));
|
|
19727
|
-
}
|
|
19768
|
+
} // eslint-disable-next-line complexity
|
|
19769
|
+
|
|
19770
|
+
|
|
19771
|
+
var EmojiPickerReact = /*#__PURE__*/React.memo(EmojiPicker, function (prev, next) {
|
|
19772
|
+
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;
|
|
19773
|
+
});
|
|
19728
19774
|
|
|
19729
19775
|
var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
19730
19776
|
_inheritsLoose(ErrorBoundary, _React$Component);
|
|
@@ -19790,14 +19836,14 @@ function ExportedEmoji(_ref) {
|
|
|
19790
19836
|
}
|
|
19791
19837
|
|
|
19792
19838
|
function EmojiPicker$1(props) {
|
|
19793
|
-
|
|
19794
|
-
|
|
19795
|
-
|
|
19796
|
-
|
|
19797
|
-
|
|
19798
|
-
|
|
19799
|
-
}
|
|
19839
|
+
var MutableConfigRef = useDefineMutableConfig({
|
|
19840
|
+
onEmojiClick: props.onEmojiClick
|
|
19841
|
+
});
|
|
19842
|
+
return React.createElement(ErrorBoundary, null, React.createElement(MutableConfigContext.Provider, {
|
|
19843
|
+
value: MutableConfigRef
|
|
19844
|
+
}, React.createElement(EmojiPickerReact, Object.assign({}, props))));
|
|
19845
|
+
}
|
|
19800
19846
|
|
|
19801
19847
|
exports.Emoji = ExportedEmoji;
|
|
19802
|
-
exports.default =
|
|
19848
|
+
exports.default = EmojiPicker$1;
|
|
19803
19849
|
//# sourceMappingURL=emoji-picker-react.cjs.development.js.map
|