npm.io
1.3.1 • Published 1 year ago

unicode-emoji-utils

Licence
MIT
Version
1.3.1
Deps
1
Size
1.1 MB
Vulns
0
Weekly
0
Stars
1

unicode-emoji-utils

A collection of utilities for emojis and raw data for Unicode Emojis

  • Support CommonJS and ES Module

  • Full list of Unicode Emoji, Version 16.0 from Unicode.

Installation

Using npm

npm install unicode-emoji-utils

Or yarn

yarn add unicode-emoji-utils

Usage

import { type Emoji, getAllEmojis, hasEmoji, compareVersion, stripEmojies, filterEmojis, getAllComponents, extractEmojis, getEmojisByGroup } from 'unicode-emoji-utils';
Check valid EmojiVersion (type guard)
isValidEmojiVersion("1.0"); // true
isValidEmojiVersion("1.2"); // false
isValidEmojiVersion(1); // false
Check whether a text has emojis
hasEmoji('a'); // false
hasEmoji('a 🫶'); // true
Strip emojis from a given text
stripEmoji('a 🫶'); // 'a '
Extract Emojis
extractEmoji('👋🏼adfsadfs safdsaf dsafds 🫶'); // ['👋🏼', '🫶']
Get All Emojis
getAllEmojis(); // ['🫶', '👋🏼', '🙏🏿', '👨🏻‍🤝‍👨🏼', '👬', ...]

const emojis = [{emoji: '🫶', version: '14.0' }];
getAllEmojis(emojis); // ['🫶']
Filter Emoijs by the Unicode Version
filterEmojis('14.0'); // Filter Emojis from version 14.0 and below

filterEmojis('14.0', true); // Only returns emoji with version 14.0

const emojis = [{emoji: '🫶', version: '14.0' }];
filterEmojis('14.0', true, emojis); // [{emoji: '🫶', version: '14.0' }]
filterEmojis('14.0', false, emojis); // [{emoji: '🫶', version: '14.0' }]
filterEmojis('1.0', false, emojis); // []
Retrieve Unicode components
getAllComponents();
{
  "skin-tone": [
    {
      "emoji": "🏻",
      "description": "light skin tone",
      "version": "1.0"
    },
    {
      "emoji": "🏼",
      "description": "medium-light skin tone",
      "version": "1.0"
    },
    // ...
  ],
  "hair-style": [
    {
      "emoji": "🦰",
      "description": "red hair",
      "version": "11.0"
    },
    {
      "emoji": "🦱",
      "description": "curly hair",
      "version": "11.0"
    },
    // ...
  ]
}
Get Emojis by group, subgroup or category
getEmojisByGroup('group');
getEmojisByGroup('subgroup');
getEmojisByGroup('category');

Keywords