UNPKG

@uimkit/uikit-react

Version:

<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>

37 lines (32 loc) 1.41 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); require('../../../context/TranslationContext.js'); require('../../../context/UIKitContext.js'); require('../../../context/ComponentContext.js'); var ChatActionContext = require('../../../context/ChatActionContext.js'); require('../../../context/MessageInputContext.js'); require('../../../context/UIMessageContext.js'); require('../../../context/ChatStateContext.js'); require('@emoji-mart/data'); function useEmojiPicker(props) { var textareaRef = props.textareaRef, insertText = props.insertText; var _a = ChatActionContext.useChatActionContext('useEmojiPicker'), sendMessage = _a.sendMessage, createFaceMessage = _a.createFaceMessage; var onSelectEmoji = React.useCallback(function (emoji) { var _a; insertText(emoji.native); (_a = textareaRef === null || textareaRef === void 0 ? void 0 : textareaRef.current) === null || _a === void 0 ? void 0 : _a.focus(); }, [insertText]); var sendFaceMessage = React.useCallback(function (emoji) { var message = createFaceMessage({ payload: emoji, }); sendMessage(message); }, []); return { onSelectEmoji: onSelectEmoji, sendFaceMessage: sendFaceMessage, }; } exports.useEmojiPicker = useEmojiPicker; //# sourceMappingURL=useEmojiPicker.js.map