
Security News
Crates.io Users Targeted by Phishing Emails
The Rust Security Response WG is warning of phishing emails from rustfoundation.dev targeting crates.io users.
nuvi-emoji-picker
Advanced tools
This plugin for draft-js-editor
npm install -S draft-js-emoji-mart-plugin
Install peer dependencies
npm install -S emoji-mart draft-js
import Editor from 'draft-js-plugins-editor';
import createEmojiMartPlugin from 'draft-js-emoji-mart-plugin';
import data from 'emoji-mart/data/apple.json';
import 'emoji-mart/css/emoji-mart.css'
const emojiPlugin = createEmojiMartPlugin({
data,
set: 'apple'
});
// NimblePicker from emoji-mart binded with draftjs
const { Picker } = emojiPlugin;
const MyEditor = ({ editorState, onChange }) => (
<div>
<Editor
editorState={editorState}
onChange={onChange}
plugins={[emojiPlugin]}
/>
{/*
Any props supported by emoji-mart NimblePicker.
Feel free to style it and trigger for view.
*/}
<Picker
perLine={7}
showPreview={false}
/>
</div>
)
export default MyEditor;
| Name | Required | Default | Description |
|---|---|---|---|
| data | true | undefined | Dataset from emoji-mart. Used for bind picker and replace emoji in editor. |
| set | true | undefined | Addtional param to Dataset, used by emoji-mart. |
| emojiSize | false | 16 | Size wich pass to Emoji component from emoji-mart. |
| sheetSize | false | emojiSize * 2 | Sheet size wich pass to Emoji component from emoji-mart. By default emojiSize * 2. |
| onChange | false | undefined | Call then DraftJS recieve new state. |
Plugin provide Emoji component, wich could replace native utf-8 emoji by NimbleEmoji component from emoji-mart.
// MyEditor.jsx
export const emojiPlugin = createEmojiMartPlugin({
data,
set: 'apple'
});
// Text.jsx
import { emojiPlugin } from './MyEditor.jsx';
const { Emoji } = emojiPlugin;
const TextViewer = ({ props }) => (
<div>
Useful text with emoji <Emoji decoratedText={'😈'} />
</div>
);
export default TextViewer;
Useful to find native emoji in string. Could be used with Emoji component provided by plugin for replace emoji in plane text.
import { unicodeEmojiRegexp } from 'draft-js-emoji-mart-plugin/lib/constants';
import { emojiPlugin } from './MyEditor.jsx';
const { Emoji } = emojiPlugin;
// Not for production usage.
const parsedText = 'some string with 😈 '.split(unicodeEmojiRegexp).map(term => {
if (term.match(unicodeEmojiRegexp)) {
return <Emoji decoratedText={term} />
}
return term;
});
console.log(parsedText); // ['some string with', <Emoji decoratedText={'😈'}>]
// Render it by React
const MyEmojifiedText = () => (
<div>{parsedText}</div>
);
FAQs
Emoji-mart plugin for DraftJS.
We found that nuvi-emoji-picker demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Rust Security Response WG is warning of phishing emails from rustfoundation.dev targeting crates.io users.

Product
Socket now lets you customize pull request alert headers, helping security teams share clear guidance right in PRs to speed reviews and reduce back-and-forth.

Product
Socket's Rust support is moving to Beta: all users can scan Cargo projects and generate SBOMs, including Cargo.toml-only crates, with Rust-aware supply chain checks.