1353 lines
32 KiB
JavaScript
1353 lines
32 KiB
JavaScript
/* ===========================================================
|
|
* trumbowyg.emoji.js v0.1
|
|
* Emoji picker plugin for Trumbowyg
|
|
* http://alex-d.github.com/Trumbowyg
|
|
* ===========================================================
|
|
* Author : Nicolas Pion
|
|
* Twitter : @nicolas_pion
|
|
*/
|
|
|
|
(function ($) {
|
|
'use strict';
|
|
|
|
var defaultOptions = {
|
|
emojiList: [
|
|
'⁉',
|
|
'™',
|
|
'ℹ',
|
|
'↔',
|
|
'↕',
|
|
'↖',
|
|
'↗',
|
|
'↘',
|
|
'↙',
|
|
'⌨',
|
|
'☀',
|
|
'☁',
|
|
'☂',
|
|
'☃',
|
|
'☄',
|
|
'☑',
|
|
'☔',
|
|
'☕',
|
|
'☘',
|
|
'☠',
|
|
'☢',
|
|
'☣',
|
|
'☦',
|
|
'☸',
|
|
'☹',
|
|
'♀',
|
|
'♂',
|
|
'♈',
|
|
'♉',
|
|
'♐',
|
|
'♑',
|
|
'♒',
|
|
'♓',
|
|
'♠',
|
|
'♣',
|
|
'♥',
|
|
'♦',
|
|
'♨',
|
|
'⚒',
|
|
'⚓',
|
|
'⚔',
|
|
'⚕',
|
|
'⚖',
|
|
'⚗',
|
|
'⚙',
|
|
'✂',
|
|
'✅',
|
|
'✈',
|
|
'✉',
|
|
'✒',
|
|
'✔',
|
|
'✖',
|
|
'✡',
|
|
'✨',
|
|
'✳',
|
|
'✴',
|
|
'❄',
|
|
'❇',
|
|
'❓',
|
|
'❔',
|
|
'❕',
|
|
'❗',
|
|
'❣',
|
|
'❤',
|
|
'➕',
|
|
'➖',
|
|
'➗',
|
|
'⤴',
|
|
'⤵',
|
|
'〰',
|
|
'㊗',
|
|
'㊙',
|
|
'🧡',
|
|
'💛',
|
|
'💚',
|
|
'💙',
|
|
'💜',
|
|
'🖤',
|
|
'💔',
|
|
'💕',
|
|
'💞',
|
|
'💓',
|
|
'💗',
|
|
'💖',
|
|
'💘',
|
|
'💝',
|
|
'💟',
|
|
'☮',
|
|
'✝',
|
|
'☪',
|
|
'🕉',
|
|
'🔯',
|
|
'🕎',
|
|
'☯',
|
|
'🛐',
|
|
'⛎',
|
|
'♊',
|
|
'♋',
|
|
'♌',
|
|
'♍',
|
|
'♎',
|
|
'♏',
|
|
'🆔',
|
|
'⚛',
|
|
'♾',
|
|
'🉑',
|
|
'📴',
|
|
'📳',
|
|
'🈶',
|
|
'🈚',
|
|
'🈸',
|
|
'🈺',
|
|
'🈷',
|
|
'🆚',
|
|
'💮',
|
|
'🉐',
|
|
'🈴',
|
|
'🈵',
|
|
'🈹',
|
|
'🈲',
|
|
'🅰',
|
|
'🅱',
|
|
'🆎',
|
|
'🆑',
|
|
'🅾',
|
|
'🆘',
|
|
'❌',
|
|
'⭕',
|
|
'🛑',
|
|
'⛔',
|
|
'📛',
|
|
'🚫',
|
|
'💯',
|
|
'💢',
|
|
'🚷',
|
|
'🚯',
|
|
'🚳',
|
|
'🚱',
|
|
'🔞',
|
|
'📵',
|
|
'🚭',
|
|
'‼',
|
|
'🔅',
|
|
'🔆',
|
|
'〽',
|
|
'⚠',
|
|
'🚸',
|
|
'🔱',
|
|
'⚜',
|
|
'🔰',
|
|
'♻',
|
|
'🈯',
|
|
'💹',
|
|
'❎',
|
|
'🌐',
|
|
'💠',
|
|
'Ⓜ',
|
|
'🌀',
|
|
'💤',
|
|
'🏧',
|
|
'🚾',
|
|
'♿',
|
|
'🅿',
|
|
'🈳',
|
|
'🈂',
|
|
'🛂',
|
|
'🛃',
|
|
'🛄',
|
|
'🛅',
|
|
'🚹',
|
|
'🚺',
|
|
'🚼',
|
|
'🚻',
|
|
'🚮',
|
|
'🎦',
|
|
'📶',
|
|
'🈁',
|
|
'🔣',
|
|
'🔤',
|
|
'🔡',
|
|
'🔠',
|
|
'🆖',
|
|
'🆗',
|
|
'🆙',
|
|
'🆒',
|
|
'🆕',
|
|
'🆓',
|
|
'0',
|
|
'1',
|
|
'2',
|
|
'3',
|
|
'4',
|
|
'5',
|
|
'6',
|
|
'7',
|
|
'8',
|
|
'9',
|
|
'🔟',
|
|
'🔢',
|
|
'#',
|
|
'*',
|
|
'⏏',
|
|
'▶',
|
|
'⏸',
|
|
'⏯',
|
|
'⏹',
|
|
'⏺',
|
|
'⏭',
|
|
'⏮',
|
|
'⏩',
|
|
'⏪',
|
|
'⏫',
|
|
'⏬',
|
|
'◀',
|
|
'🔼',
|
|
'🔽',
|
|
'➡',
|
|
'⬅',
|
|
'⬆',
|
|
'⬇',
|
|
'↪',
|
|
'↩',
|
|
'🔀',
|
|
'🔁',
|
|
'🔂',
|
|
'🔄',
|
|
'🔃',
|
|
'🎵',
|
|
'🎶',
|
|
'💲',
|
|
'💱',
|
|
'©',
|
|
'®',
|
|
'➰',
|
|
'➿',
|
|
'🔚',
|
|
'🔙',
|
|
'🔛',
|
|
'🔝',
|
|
'🔜',
|
|
'🔘',
|
|
'⚪',
|
|
'⚫',
|
|
'🔴',
|
|
'🔵',
|
|
'🔺',
|
|
'🔻',
|
|
'🔸',
|
|
'🔹',
|
|
'🔶',
|
|
'🔷',
|
|
'🔳',
|
|
'🔲',
|
|
'▪',
|
|
'▫',
|
|
'◾',
|
|
'◽',
|
|
'◼',
|
|
'◻',
|
|
'⬛',
|
|
'⬜',
|
|
'🔈',
|
|
'🔇',
|
|
'🔉',
|
|
'🔊',
|
|
'🔔',
|
|
'🔕',
|
|
'📣',
|
|
'📢',
|
|
'🗨',
|
|
'👁',
|
|
'💬',
|
|
'💭',
|
|
'🗯',
|
|
'🃏',
|
|
'🎴',
|
|
'🀄',
|
|
'🕐',
|
|
'🕑',
|
|
'🕒',
|
|
'🕓',
|
|
'🕔',
|
|
'🕕',
|
|
'🕖',
|
|
'🕗',
|
|
'🕘',
|
|
'🕙',
|
|
'🕚',
|
|
'🕛',
|
|
'🕜',
|
|
'🕝',
|
|
'🕞',
|
|
'🕟',
|
|
'🕠',
|
|
'🕡',
|
|
'🕢',
|
|
'🕣',
|
|
'🕤',
|
|
'🕥',
|
|
'🕦',
|
|
'🕧',
|
|
'⚽',
|
|
'🏀',
|
|
'🏈',
|
|
'⚾',
|
|
'🥎',
|
|
'🎾',
|
|
'🏐',
|
|
'🏉',
|
|
'🎱',
|
|
'🏓',
|
|
'🏸',
|
|
'🥅',
|
|
'🏒',
|
|
'🏑',
|
|
'🏏',
|
|
'🥍',
|
|
'⛳',
|
|
'🥏',
|
|
'🏹',
|
|
'🎣',
|
|
'🥊',
|
|
'🥋',
|
|
'🎽',
|
|
'🛹',
|
|
'⛸',
|
|
'🥌',
|
|
'🛷',
|
|
'🎿',
|
|
'⛷',
|
|
'🏂',
|
|
'🏋',
|
|
'🤼',
|
|
'🤸',
|
|
'⛹',
|
|
'🤺',
|
|
'🤾',
|
|
'🏌',
|
|
'🏇',
|
|
'🧘',
|
|
'🏄',
|
|
'🏊',
|
|
'🤽',
|
|
'🚣',
|
|
'🧗',
|
|
'🚵',
|
|
'🚴',
|
|
'🏆',
|
|
'🥇',
|
|
'🥈',
|
|
'🥉',
|
|
'🏅',
|
|
'🎖',
|
|
'🏵',
|
|
'🎗',
|
|
'🎫',
|
|
'🎟',
|
|
'🎪',
|
|
'🤹',
|
|
'🎭',
|
|
'🎨',
|
|
'🎬',
|
|
'🎤',
|
|
'🎧',
|
|
'🎼',
|
|
'🎹',
|
|
'🥁',
|
|
'🎷',
|
|
'🎺',
|
|
'🎸',
|
|
'🎻',
|
|
'🎲',
|
|
'🎯',
|
|
'🎳',
|
|
'🎮',
|
|
'🎰',
|
|
'⌚',
|
|
'📱',
|
|
'📲',
|
|
'💻',
|
|
'🖥',
|
|
'🖨',
|
|
'🖱',
|
|
'🖲',
|
|
'🕹',
|
|
'♟',
|
|
'🧩',
|
|
'🗜',
|
|
'💽',
|
|
'💾',
|
|
'💿',
|
|
'📀',
|
|
'📼',
|
|
'📷',
|
|
'📸',
|
|
'📹',
|
|
'🎥',
|
|
'📽',
|
|
'🎞',
|
|
'📞',
|
|
'☎',
|
|
'📟',
|
|
'📠',
|
|
'📺',
|
|
'📻',
|
|
'🎙',
|
|
'🎚',
|
|
'🎛',
|
|
'⏱',
|
|
'⏲',
|
|
'⏰',
|
|
'🕰',
|
|
'⌛',
|
|
'⏳',
|
|
'📡',
|
|
'🧭',
|
|
'🔋',
|
|
'🔌',
|
|
'🧲',
|
|
'💡',
|
|
'🔦',
|
|
'🕯',
|
|
'🧯',
|
|
'🗑',
|
|
'🛢',
|
|
'💸',
|
|
'💵',
|
|
'💴',
|
|
'💶',
|
|
'💷',
|
|
'💰',
|
|
'💳',
|
|
'💎',
|
|
'🧿',
|
|
'🧱',
|
|
'🧰',
|
|
'🔧',
|
|
'🔨',
|
|
'🛠',
|
|
'⛏',
|
|
'🔩',
|
|
'⛓',
|
|
'🔫',
|
|
'💣',
|
|
'🔪',
|
|
'🗡',
|
|
'🛡',
|
|
'🚬',
|
|
'⚰',
|
|
'⚱',
|
|
'🏺',
|
|
'🔮',
|
|
'📿',
|
|
'💈',
|
|
'🧪',
|
|
'🧫',
|
|
'🧬',
|
|
'🧮',
|
|
'🔭',
|
|
'🔬',
|
|
'🕳',
|
|
'💊',
|
|
'💉',
|
|
'🌡',
|
|
'🚽',
|
|
'🚰',
|
|
'🚿',
|
|
'🛁',
|
|
'🛀',
|
|
'🧹',
|
|
'🧺',
|
|
'🧻',
|
|
'🧼',
|
|
'🧽',
|
|
'🧴',
|
|
'🧵',
|
|
'🧶',
|
|
'🛎',
|
|
'🔑',
|
|
'🗝',
|
|
'🚪',
|
|
'🛋',
|
|
'🛏',
|
|
'🛌',
|
|
'🧸',
|
|
'🖼',
|
|
'🛍',
|
|
'🛒',
|
|
'🎁',
|
|
'🎈',
|
|
'🎏',
|
|
'🎀',
|
|
'🎊',
|
|
'🎉',
|
|
'🎎',
|
|
'🏮',
|
|
'🎐',
|
|
'🧧',
|
|
'📩',
|
|
'📨',
|
|
'📧',
|
|
'💌',
|
|
'📥',
|
|
'📤',
|
|
'📦',
|
|
'🏷',
|
|
'📪',
|
|
'📫',
|
|
'📬',
|
|
'📭',
|
|
'📮',
|
|
'📯',
|
|
'📜',
|
|
'📃',
|
|
'📄',
|
|
'🧾',
|
|
'📑',
|
|
'📊',
|
|
'📈',
|
|
'📉',
|
|
'🗒',
|
|
'🗓',
|
|
'📆',
|
|
'📅',
|
|
'📇',
|
|
'🗃',
|
|
'🗳',
|
|
'🗄',
|
|
'📋',
|
|
'📁',
|
|
'📂',
|
|
'🗂',
|
|
'🗞',
|
|
'📰',
|
|
'📓',
|
|
'📔',
|
|
'📒',
|
|
'📕',
|
|
'📗',
|
|
'📘',
|
|
'📙',
|
|
'📚',
|
|
'📖',
|
|
'🔖',
|
|
'🔗',
|
|
'📎',
|
|
'🖇',
|
|
'📐',
|
|
'📏',
|
|
'🧷',
|
|
'📌',
|
|
'📍',
|
|
'🖊',
|
|
'🖋',
|
|
'🖌',
|
|
'🖍',
|
|
'📝',
|
|
'✏',
|
|
'🔍',
|
|
'🔎',
|
|
'🔏',
|
|
'🔐',
|
|
'🐶',
|
|
'🐱',
|
|
'🐭',
|
|
'🐹',
|
|
'🐰',
|
|
'🦊',
|
|
'🦝',
|
|
'🐻',
|
|
'🐼',
|
|
'🦘',
|
|
'🦡',
|
|
'🐨',
|
|
'🐯',
|
|
'🦁',
|
|
'🐮',
|
|
'🐷',
|
|
'🐽',
|
|
'🐸',
|
|
'🐵',
|
|
'🙈',
|
|
'🙉',
|
|
'🙊',
|
|
'🐒',
|
|
'🐔',
|
|
'🐧',
|
|
'🐦',
|
|
'🐤',
|
|
'🐣',
|
|
'🐥',
|
|
'🦆',
|
|
'🦢',
|
|
'🦅',
|
|
'🦉',
|
|
'🦜',
|
|
'🦚',
|
|
'🦇',
|
|
'🐺',
|
|
'🐗',
|
|
'🐴',
|
|
'🦄',
|
|
'🐝',
|
|
'🐛',
|
|
'🦋',
|
|
'🐌',
|
|
'🐚',
|
|
'🐞',
|
|
'🐜',
|
|
'🦗',
|
|
'🕷',
|
|
'🕸',
|
|
'🦂',
|
|
'🦟',
|
|
'🦠',
|
|
'🐢',
|
|
'🐍',
|
|
'🦎',
|
|
'🦖',
|
|
'🦕',
|
|
'🐙',
|
|
'🦑',
|
|
'🦐',
|
|
'🦀',
|
|
'🦞',
|
|
'🐡',
|
|
'🐠',
|
|
'🐟',
|
|
'🐬',
|
|
'🐳',
|
|
'🐋',
|
|
'🦈',
|
|
'🐊',
|
|
'🐅',
|
|
'🐆',
|
|
'🦓',
|
|
'🦍',
|
|
'🐘',
|
|
'🦏',
|
|
'🦛',
|
|
'🐪',
|
|
'🐫',
|
|
'🦒',
|
|
'🦙',
|
|
'🐃',
|
|
'🐂',
|
|
'🐄',
|
|
'🐎',
|
|
'🐖',
|
|
'🐏',
|
|
'🐑',
|
|
'🐐',
|
|
'🦌',
|
|
'🐕',
|
|
'🐩',
|
|
'🐈',
|
|
'🐓',
|
|
'🦃',
|
|
'🕊',
|
|
'🐇',
|
|
'🐁',
|
|
'🐀',
|
|
'🐿',
|
|
'🦔',
|
|
'🐾',
|
|
'🐉',
|
|
'🐲',
|
|
'🌵',
|
|
'🎄',
|
|
'🌲',
|
|
'🌳',
|
|
'🌴',
|
|
'🌱',
|
|
'🌿',
|
|
'🍀',
|
|
'🎍',
|
|
'🎋',
|
|
'🍃',
|
|
'🍂',
|
|
'🍁',
|
|
'🍄',
|
|
'🌾',
|
|
'💐',
|
|
'🌷',
|
|
'🌹',
|
|
'🥀',
|
|
'🌺',
|
|
'🌸',
|
|
'🌼',
|
|
'🌻',
|
|
'🌞',
|
|
'🌝',
|
|
'🌛',
|
|
'🌜',
|
|
'🌚',
|
|
'🌕',
|
|
'🌖',
|
|
'🌗',
|
|
'🌘',
|
|
'🌑',
|
|
'🌒',
|
|
'🌓',
|
|
'🌔',
|
|
'🌙',
|
|
'🌎',
|
|
'🌍',
|
|
'🌏',
|
|
'💫',
|
|
'⭐',
|
|
'🌟',
|
|
'⚡',
|
|
'💥',
|
|
'🔥',
|
|
'🌪',
|
|
'🌈',
|
|
'🌤',
|
|
'⛅',
|
|
'🌥',
|
|
'🌦',
|
|
'🌧',
|
|
'⛈',
|
|
'🌩',
|
|
'🌨',
|
|
'⛄',
|
|
'🌬',
|
|
'💨',
|
|
'💧',
|
|
'💦',
|
|
'🌊',
|
|
'🌫',
|
|
'🍏',
|
|
'🍎',
|
|
'🍐',
|
|
'🍊',
|
|
'🍋',
|
|
'🍌',
|
|
'🍉',
|
|
'🍇',
|
|
'🍓',
|
|
'🍈',
|
|
'🍒',
|
|
'🍑',
|
|
'🥭',
|
|
'🍍',
|
|
'🥥',
|
|
'🥝',
|
|
'🍅',
|
|
'🍆',
|
|
'🥑',
|
|
'🥦',
|
|
'🥬',
|
|
'🥒',
|
|
'🌶',
|
|
'🌽',
|
|
'🥕',
|
|
'🥔',
|
|
'🍠',
|
|
'🥐',
|
|
'🍞',
|
|
'🥖',
|
|
'🥨',
|
|
'🥯',
|
|
'🧀',
|
|
'🥚',
|
|
'🍳',
|
|
'🥞',
|
|
'🥓',
|
|
'🥩',
|
|
'🍗',
|
|
'🍖',
|
|
'🌭',
|
|
'🍔',
|
|
'🍟',
|
|
'🍕',
|
|
'🥪',
|
|
'🥙',
|
|
'🌮',
|
|
'🌯',
|
|
'🥗',
|
|
'🥘',
|
|
'🥫',
|
|
'🍝',
|
|
'🍜',
|
|
'🍲',
|
|
'🍛',
|
|
'🍣',
|
|
'🍱',
|
|
'🍤',
|
|
'🍙',
|
|
'🍚',
|
|
'🍘',
|
|
'🍥',
|
|
'🥠',
|
|
'🍢',
|
|
'🍡',
|
|
'🍧',
|
|
'🍨',
|
|
'🍦',
|
|
'🥧',
|
|
'🍰',
|
|
'🎂',
|
|
'🥮',
|
|
'🧁',
|
|
'🍮',
|
|
'🍭',
|
|
'🍬',
|
|
'🍫',
|
|
'🍿',
|
|
'🧂',
|
|
'🍩',
|
|
'🥟',
|
|
'🍪',
|
|
'🌰',
|
|
'🥜',
|
|
'🍯',
|
|
'🥛',
|
|
'🍼',
|
|
'🍵',
|
|
'🥤',
|
|
'🍶',
|
|
'🍺',
|
|
'🍻',
|
|
'🥂',
|
|
'🍷',
|
|
'🥃',
|
|
'🍸',
|
|
'🍹',
|
|
'🍾',
|
|
'🥄',
|
|
'🍴',
|
|
'🍽',
|
|
'🥣',
|
|
'🥡',
|
|
'🥢',
|
|
'😀',
|
|
'😃',
|
|
'😄',
|
|
'😁',
|
|
'😆',
|
|
'😅',
|
|
'😂',
|
|
'🤣',
|
|
'☺',
|
|
'😊',
|
|
'😇',
|
|
'🙂',
|
|
'🙃',
|
|
'😉',
|
|
'😌',
|
|
'😍',
|
|
'😘',
|
|
'🥰',
|
|
'😗',
|
|
'😙',
|
|
'😚',
|
|
'😋',
|
|
'😛',
|
|
'😝',
|
|
'😜',
|
|
'🤪',
|
|
'🤨',
|
|
'🧐',
|
|
'🤓',
|
|
'😎',
|
|
'🤩',
|
|
'🥳',
|
|
'😏',
|
|
'😒',
|
|
'😞',
|
|
'😔',
|
|
'😟',
|
|
'😕',
|
|
'🙁',
|
|
'😣',
|
|
'😖',
|
|
'😫',
|
|
'😩',
|
|
'😢',
|
|
'😭',
|
|
'😤',
|
|
'😠',
|
|
'😡',
|
|
'🤬',
|
|
'🤯',
|
|
'😳',
|
|
'😱',
|
|
'😨',
|
|
'😰',
|
|
'🥵',
|
|
'🥶',
|
|
'🥺',
|
|
'😥',
|
|
'😓',
|
|
'🤗',
|
|
'🤔',
|
|
'🤭',
|
|
'🤫',
|
|
'🤥',
|
|
'😶',
|
|
'😐',
|
|
'😑',
|
|
'😬',
|
|
'🙄',
|
|
'😯',
|
|
'😦',
|
|
'😧',
|
|
'😮',
|
|
'😲',
|
|
'😴',
|
|
'🤤',
|
|
'😪',
|
|
'😵',
|
|
'🤐',
|
|
'🥴',
|
|
'🤢',
|
|
'🤮',
|
|
'🤧',
|
|
'😷',
|
|
'🤒',
|
|
'🤕',
|
|
'🤑',
|
|
'🤠',
|
|
'😈',
|
|
'👿',
|
|
'👹',
|
|
'👺',
|
|
'🤡',
|
|
'💩',
|
|
'👻',
|
|
'💀',
|
|
'👽',
|
|
'👾',
|
|
'🤖',
|
|
'🎃',
|
|
'😺',
|
|
'😸',
|
|
'😹',
|
|
'😻',
|
|
'😼',
|
|
'😽',
|
|
'🙀',
|
|
'😿',
|
|
'😾',
|
|
'🤲',
|
|
'👐',
|
|
'🙌',
|
|
'👏',
|
|
'🤝',
|
|
'👍',
|
|
'👎',
|
|
'👊',
|
|
'✊',
|
|
'🤛',
|
|
'🤜',
|
|
'🤞',
|
|
'✌',
|
|
'🤟',
|
|
'🤘',
|
|
'👌',
|
|
'👈',
|
|
'👉',
|
|
'👆',
|
|
'👇',
|
|
'☝',
|
|
'✋',
|
|
'🤚',
|
|
'🖐',
|
|
'🖖',
|
|
'👋',
|
|
'🤙',
|
|
'💪',
|
|
'🦵',
|
|
'🦶',
|
|
'🖕',
|
|
'✍',
|
|
'🙏',
|
|
'💍',
|
|
'💄',
|
|
'💋',
|
|
'👄',
|
|
'👅',
|
|
'👂',
|
|
'👃',
|
|
'👣',
|
|
'👀',
|
|
'🧠',
|
|
'🦴',
|
|
'🦷',
|
|
'🗣',
|
|
'👤',
|
|
'👥',
|
|
'👶',
|
|
'👧',
|
|
'🧒',
|
|
'👦',
|
|
'👩',
|
|
'🧑',
|
|
'👨',
|
|
'👱',
|
|
'🧔',
|
|
'👵',
|
|
'🧓',
|
|
'👴',
|
|
'👲',
|
|
'👳',
|
|
'🧕',
|
|
'👮',
|
|
'👷',
|
|
'💂',
|
|
'🕵',
|
|
'👰',
|
|
'🤵',
|
|
'👸',
|
|
'🤴',
|
|
'🤶',
|
|
'🎅',
|
|
'🦸',
|
|
'🦹',
|
|
'🧙',
|
|
'🧝',
|
|
'🧛',
|
|
'🧟',
|
|
'🧞',
|
|
'🧜',
|
|
'🧚',
|
|
'👼',
|
|
'🤰',
|
|
'🤱',
|
|
'🙇',
|
|
'💁',
|
|
'🙅',
|
|
'🙆',
|
|
'🙋',
|
|
'🤦',
|
|
'🤷',
|
|
'🙎',
|
|
'🙍',
|
|
'💇',
|
|
'💆',
|
|
'🧖',
|
|
'💅',
|
|
'🤳',
|
|
'💃',
|
|
'🕺',
|
|
'👯',
|
|
'🕴',
|
|
'🚶',
|
|
'🏃',
|
|
'👫',
|
|
'👭',
|
|
'👬',
|
|
'💑',
|
|
'💏',
|
|
'👪',
|
|
'🧥',
|
|
'👚',
|
|
'👕',
|
|
'👖',
|
|
'👔',
|
|
'👗',
|
|
'👙',
|
|
'👘',
|
|
'🥼',
|
|
'👠',
|
|
'👡',
|
|
'👢',
|
|
'👞',
|
|
'👟',
|
|
'🥾',
|
|
'🥿',
|
|
'🧦',
|
|
'🧤',
|
|
'🧣',
|
|
'🎩',
|
|
'🧢',
|
|
'👒',
|
|
'🎓',
|
|
'⛑',
|
|
'👑',
|
|
'👝',
|
|
'👛',
|
|
'👜',
|
|
'💼',
|
|
'🎒',
|
|
'👓',
|
|
'🕶',
|
|
'🥽',
|
|
'🌂',
|
|
'🦰',
|
|
'🦱',
|
|
'🦳',
|
|
'🦲',
|
|
'🇿',
|
|
'🇾',
|
|
'🇽',
|
|
'🇼',
|
|
'🇻',
|
|
'🇺',
|
|
'🇹',
|
|
'🇸',
|
|
'🇷',
|
|
'🇶',
|
|
'🇵',
|
|
'🇴',
|
|
'🇳',
|
|
'🇲',
|
|
'🇱',
|
|
'🇰',
|
|
'🇯',
|
|
'🇮',
|
|
'🇭',
|
|
'🇬',
|
|
'🇫',
|
|
'🇪',
|
|
'🇩',
|
|
'🇨',
|
|
'🇧',
|
|
'🇦',
|
|
'🚗',
|
|
'🚕',
|
|
'🚙',
|
|
'🚌',
|
|
'🚎',
|
|
'🏎',
|
|
'🚓',
|
|
'🚑',
|
|
'🚒',
|
|
'🚐',
|
|
'🚚',
|
|
'🚛',
|
|
'🚜',
|
|
'🛴',
|
|
'🚲',
|
|
'🛵',
|
|
'🏍',
|
|
'🚨',
|
|
'🚔',
|
|
'🚍',
|
|
'🚘',
|
|
'🚖',
|
|
'🚡',
|
|
'🚠',
|
|
'🚟',
|
|
'🚃',
|
|
'🚋',
|
|
'🚞',
|
|
'🚝',
|
|
'🚄',
|
|
'🚅',
|
|
'🚈',
|
|
'🚂',
|
|
'🚆',
|
|
'🚇',
|
|
'🚊',
|
|
'🚉',
|
|
'🛫',
|
|
'🛬',
|
|
'🛩',
|
|
'💺',
|
|
'🧳',
|
|
'🛰',
|
|
'🚀',
|
|
'🛸',
|
|
'🚁',
|
|
'🛶',
|
|
'⛵',
|
|
'🚤',
|
|
'🛥',
|
|
'🛳',
|
|
'⛴',
|
|
'🚢',
|
|
'⛽',
|
|
'🚧',
|
|
'🚦',
|
|
'🚥',
|
|
'🚏',
|
|
'🗺',
|
|
'🗿',
|
|
'🗽',
|
|
'🗼',
|
|
'🏰',
|
|
'🏯',
|
|
'🏟',
|
|
'🎡',
|
|
'🎢',
|
|
'🎠',
|
|
'⛲',
|
|
'⛱',
|
|
'🏖',
|
|
'🏝',
|
|
'🏜',
|
|
'🌋',
|
|
'⛰',
|
|
'🏔',
|
|
'🗻',
|
|
'🏕',
|
|
'⛺',
|
|
'🏠',
|
|
'🏡',
|
|
'🏘',
|
|
'🏚',
|
|
'🏗',
|
|
'🏭',
|
|
'🏢',
|
|
'🏬',
|
|
'🏣',
|
|
'🏤',
|
|
'🏥',
|
|
'🏦',
|
|
'🏨',
|
|
'🏪',
|
|
'🏫',
|
|
'🏩',
|
|
'💒',
|
|
'🏛',
|
|
'⛪',
|
|
'🕌',
|
|
'🕍',
|
|
'🕋',
|
|
'⛩',
|
|
'🛤',
|
|
'🛣',
|
|
'🗾',
|
|
'🎑',
|
|
'🏞',
|
|
'🌅',
|
|
'🌄',
|
|
'🌠',
|
|
'🎇',
|
|
'🎆',
|
|
'🧨',
|
|
'🌇',
|
|
'🌆',
|
|
'🏙',
|
|
'🌃',
|
|
'🌌',
|
|
'🌉',
|
|
'🔒',
|
|
'🔓',
|
|
'🌁',
|
|
'🏳',
|
|
'🏴',
|
|
'🏁',
|
|
'🚩',
|
|
'🎌',
|
|
'🏻',
|
|
'🏼',
|
|
'🏽',
|
|
'🏾',
|
|
'🏿'
|
|
]
|
|
};
|
|
|
|
// Add all emoji in a dropdown
|
|
$.extend(true, $.trumbowyg, {
|
|
langs: {
|
|
// jshint camelcase:false
|
|
en: {
|
|
emoji: 'Add an emoji'
|
|
},
|
|
da: {
|
|
emoji: 'Tilføj et humørikon'
|
|
},
|
|
de: {
|
|
emoji: 'Emoticon einfügen'
|
|
},
|
|
fr: {
|
|
emoji: 'Ajouter un emoji'
|
|
},
|
|
zh_cn: {
|
|
emoji: '添加表情'
|
|
},
|
|
ru: {
|
|
emoji: 'Вставить emoji'
|
|
},
|
|
ja: {
|
|
emoji: '絵文字の挿入'
|
|
},
|
|
tr: {
|
|
emoji: 'Emoji ekle'
|
|
},
|
|
ko: {
|
|
emoji: '이모지 넣기'
|
|
},
|
|
},
|
|
// jshint camelcase:true
|
|
plugins: {
|
|
emoji: {
|
|
init: function (trumbowyg) {
|
|
trumbowyg.o.plugins.emoji = trumbowyg.o.plugins.emoji || defaultOptions;
|
|
var emojiBtnDef = {
|
|
dropdown: buildDropdown(trumbowyg)
|
|
};
|
|
trumbowyg.addBtnDef('emoji', emojiBtnDef);
|
|
}
|
|
}
|
|
}
|
|
});
|
|
|
|
function buildDropdown(trumbowyg) {
|
|
var dropdown = [];
|
|
|
|
$.each(trumbowyg.o.plugins.emoji.emojiList, function (i, emoji) {
|
|
if ($.isArray(emoji)) { // Custom emoji behaviour
|
|
var emojiCode = emoji[0],
|
|
emojiUrl = emoji[1],
|
|
emojiHtml = '<img src="' + emojiUrl + '" alt="' + emojiCode + '">',
|
|
customEmojiBtnName = 'emoji-' + emojiCode.replace(/:/g, ''),
|
|
customEmojiBtnDef = {
|
|
hasIcon: false,
|
|
text: emojiHtml,
|
|
fn: function () {
|
|
trumbowyg.execCmd('insertImage', emojiUrl, false, true);
|
|
return true;
|
|
}
|
|
};
|
|
|
|
trumbowyg.addBtnDef(customEmojiBtnName, customEmojiBtnDef);
|
|
dropdown.push(customEmojiBtnName);
|
|
} else { // Default behaviour
|
|
var btn = emoji.replace(/:/g, ''),
|
|
defaultEmojiBtnName = 'emoji-' + btn,
|
|
defaultEmojiBtnDef = {
|
|
text: emoji,
|
|
fn: function () {
|
|
var encodedEmoji = String.fromCodePoint(emoji.replace('&#', '0'));
|
|
trumbowyg.execCmd('insertText', encodedEmoji);
|
|
return true;
|
|
}
|
|
};
|
|
|
|
trumbowyg.addBtnDef(defaultEmojiBtnName, defaultEmojiBtnDef);
|
|
dropdown.push(defaultEmojiBtnName);
|
|
}
|
|
});
|
|
|
|
return dropdown;
|
|
}
|
|
})(jQuery);
|