- Dropped IE 11 support. Modern browsers now required.
EmojiPicker
is no longer a default export, and is now a named export.- Skin tone messages can no longer be customized. They now come from the emoji data source.
- Updated to support Emoji v14, which includes 154+ new emojis.
- Skin tone messages are now automatically translated.
- Added support for React 18.
- Updated to latest
packemon
. - Updated
emojibase
to v6.
- Migrated to Beemo for build and developer tooling.
- Updated
emojibase
to latest.
- Include source folder for source maps work correctly.
- Fix
interweave-emoji
peer dependency requirement.
- Switched from the
emojibase-legacy
shortcode preset toemojibase
(shortcodes are now different). Can customize this using the newshortcodes
prop. - Removed
emojibase
as a peer requirement. - Removed
messages
that pertain to emoji groups (as they are provided by Emojibase now).
- Updated to support Emoji v13.1, which includes 117+ new emojis.
- Updated to support different shortcodes using pre-defined presets.
- Added
shortcodes
prop toPicker
.
- Fixed some group scroll to edge cases.
- Updated
emojibase
to v5.
- Switched to Packemon for package building.
- Updated all component event handlers to use
useCallback
.
- Added support for React 17.
- Updated latest emoji version to v12 from v5 (to match dataset changes).
- Add support for
emojibase
v4 andemojibase-data
v5.
- Updated all dependencies.
- Fixed invalid prop types that are causing unintended crashes.
- Migrated build to Rollup for a smaller filesize.
- Updated
interweave
peer requirement to v12. - Updated
interweave-emoji
peer requirement to v5. - Updated
react
requirement to v16.8. - Renamed
blacklist
prop toblockList
. - Renamed
whitelist
prop toallowList
. - Renamed
GROUP_KEY_SMILEYS_PEOPLE
constant toGROUP_KEY_SMILEYS_EMOTION
. - Renamed
smileysPeople
message key tosmileysEmotion
. - Removed the inline skin tone styles.
- Updated
emojibase
to v3, which includes new 2019 emojis. - Added a variation gallery view (shift + click an emoji that has multiple skin variations).
- Added
data-skin-color
anddata-skin-tone
attributes to skin tone buttons. - Added
GROUP_KEY_PEOPLE_BODY
,GROUP_KEY_COMPONENT
, andGROUP_KEY_VARIATIONS
constants. - Added
peopleBody
andvariations
message keys. - Added
previewShiftMore
class name. - Rewrote all components to use function components. Reduced file sizes by 43%.
- Rewrote emoji list view using
react-window
, fromreact-virtualized
. - Refactored internals to use
useContext
anduseEffect
.
- Updated all dependencies.
- Updated all dependencies.
- Migrated from
enzyme
torut
for React testing.
- Fixed
interweave-emoji
peer dependency version range.
- Updated all
@types
dependencies to use*
version.
- Updated IE requirement to v11.
- Added peer dep support for
interweave
v11.0. - Removed
@babel/runtime
as it wasn't saving much space.
- More ESM improvements.
- Updated dependencies.
- Added missing
@babel/runtime
package.
- Fixed an issue with TS types being exported from the ESM index.
- Added ECMAScript module support via
esm/
built files. - Removed copyright docblocks from source files to reduce bundle size.
- Tested with React v16.8.
- PropType shapes have been removed.
- Updated peer dep requirement for
interweave-emoji
to 3.0.
TypeScript
- Updated to the new
Node
type to resolve React node issues.
- Updated minimum
react
requirement to 16.3. - Updated minimum
emojibase
requirement to 2.0. - Updated
commonMode
,defaultGroup
,defaultSkinTone
, anddisplayOrder
to use kebab case instead of camel case. - Renamed
GROUP_*
constants toGROUP_KEY_*
. - Renamed
SKIN_*
constants toSKIN_KEY_*
. - Removed event argument from
onScroll
andonScrollGroup
callback props. - Restructured the HTML for the skin tone palette.
- Added the ability to clear commonly used emoji. Can be customized with the
clearIcon
prop. - Added titles/messages for skin tones within the palette.
- Added a
noPreview
prop that renders content when there is no preview. - Added a
noResults
prop that renders content when there is no search results. - Added a
stickyGroupHeader
prop to enable sticky group headers. - Added an
emojisHeaderSticky
class name. Can be used to style stickied group headers.
- Converted from Flow to TypeScript.
- Rewritten using the new React context API.
- Updated
componentWillMount
tocomponentDidMount
andcomponentWillReceiveProps
tocomponentDidUpdate
in preparation for React 16.3. - Fixed a bug where the emoji list would jump around while using the arrow keys.
- Fixed a bug where strings weren't acceptable values for
emojiLargeSize
in the preview.
- Tested against React 16.1.
- Improved build process.
- Added a
disableGroups
prop toPicker
, which will hide the tabs and disable group headers.- Emojis will now be grouped into a "none" group.
- Commonly used emojis and searching are still available in this mode.
- Added a
hideGroupHeaders
prop toPicker
, which should be self-explanatory. - Added
blacklist
andwhitelist
props toPicker
, both of which accept an array of hexcodes.
- Commonly used emojis now store the
hexcode
instead of theunicode
character.
- Updated
react-virtualized
to 9.11.
- Fixed a regression caused by recent
interweave-emoji
changes in which commonly used emojis were not being rendered correctly.
- Updated
interweave
peer dependency to 8.0. - Added virtual list rendering support with
react-virtualized
.- Pass a
virtual
prop to enable it. - Pass a
rowCount
prop to control the number of rows rendered.
- Pass a
- Added an
onScroll
prop that is triggered while scrolling the container. - Added an
onScrollGroup
prop that is triggered when a group scrolls into view.onSelectGroup
prop will no longer trigger during scroll.- The synthetic scroll event is now passed as the callback's 2nd argument (non-virtual).
- Updated
classNames
context to support virtual lists.emojisContainer
- The scrollable container provided byreact-virtualized
.emojisRow
- A row within the container. Wraps emojis or group headers.
- Active emoji will now be scrolled into view while using arrow keys within search results.
- Updated search bar input type to
text
fromsearch
to resolve browser specific issues. - Resolved an issue where search input would be reset to an empty string on first search.
- Improvements to emoji rendering performance.
- Removed
setTimeout
race conditions.
- Removed
- Improvements to scroll event handling.
- Updated
prop-types
to 15.6. - Updated search to use
lodash/debounce
.
- Tested against React 16.
- Initial release!