Donate (10 รายการล่าสุด)
Donate
diff --git a/src/chatsound/content_script.js b/src/chatsound/content_script.js
deleted file mode 100644
index 3283cec..0000000
--- a/src/chatsound/content_script.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import plugin from 'core/plugin';
-import ChatObserver from 'core/chatobserver';
-import Settings from 'settings';
-
-class ChatSoundObserver extends ChatObserver{
- constructor(volume = 0.25){
- super();
- this.audio = new Audio(chrome.extension.getURL('data/chat.ogg'));
- this.audio.volume = volume;
- this.lastSound = 0;
- }
-
- processChatNode(node){
- if(this.lastSound !== 0 && new Date().getTime() - this.lastSound < 500){
- return;
- }
-
- this.lastSound = new Date().getTime();
-
- this.audio.play();
- }
-}
-
-plugin('chatsound', async function(){
- let settings = await Settings.get();
- new ChatSoundObserver(settings.chatSoundVolume);
-});
diff --git a/src/chatsound/package.json b/src/chatsound/package.json
deleted file mode 100644
index ccbcb16..0000000
--- a/src/chatsound/package.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "name": "chatsound",
- "description": "เล่นเสียง chat",
- "category": "Chat",
- "private": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/streams/*", "http://mylive.in.th/chat/*"],
- "js": ["content_script.js"],
- "run_at": "document_end"
- }
- ],
-
- "settings": {
- "chatSoundVolume": {
- "default": 0.25,
- "type": "number",
- "label": "Volume (0-1)",
- "step": 0.05
- }
- }
-}
diff --git a/src/core/resume_angular.js b/src/core/resume_angular.js
index 4c28e4f..9f3dd54 100644
--- a/src/core/resume_angular.js
+++ b/src/core/resume_angular.js
@@ -4,5 +4,5 @@ import injectScript from 'core/injectscript';
* Resume paused angular execution
*/
export default function(){
- injectScript(`window.enh__triggerVueInits(); delete window.enh__triggerVueInits;`);
+ //injectScript(`window.enh__triggerVueInits(); delete window.enh__triggerVueInits;`);
}
diff --git a/src/core/settings.js b/src/core/settings.js
index 0ce9283..b2bbb7b 100644
--- a/src/core/settings.js
+++ b/src/core/settings.js
@@ -1,7 +1,6 @@
import $ from 'jquery';
import topcoat from 'topcoat/css/topcoat-desktop-dark.min.css'; // eslint-disable-line no-unused-vars
import Settings from 'settings';
-import EmoteSettings from 'emotepack/emotesettings';
const loader = require.context('../', true, /package\.json$/);
@@ -181,5 +180,4 @@ class SettingsPage{
}
}
-new EmoteSettings($('#emotes'));
export default new SettingsPage($('#target'));
diff --git a/src/emojipicker/content_script.js b/src/emojipicker/content_script.js
deleted file mode 100644
index 67c270c..0000000
--- a/src/emojipicker/content_script.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import $ from 'jquery';
-import plugin from 'core/plugin';
-
-plugin('emojipicker', () => {
- $('[ng-click="toggleicon()"]')
- .find('i')
- .replaceWith('😃');
- $('[ng-click="toggleemote()"]').remove();
- let root = $('.showicon').html(require('./emoji.txt'));
-
- let emoji = require('./emoji.json');
- let paneID = 2;
- for(let category in emoji){
- $('
')
- .find('a')
- .attr('ng-click', `pane=${paneID}`)
- .attr('title', category)
- .text(emoji[category][0].code)
- .addClass('enh__emoji')
- .end()
- .appendTo(root.find('.enh__tab'));
-
- let pane = $('
')
- .attr('ng-show', `pane==${paneID}`)
- .appendTo(root);
-
- for(let item of emoji[category]){
- $('
')
- .find('a')
- .attr('ng-click', `emoji(${JSON.stringify(item.code)})`)
- .attr('title', item.name)
- .text(item.code)
- .end()
- .appendTo(pane);
- }
-
- paneID++;
- }
-}, {
- resume_angular: true,
-});
diff --git a/src/emojipicker/content_script.scss b/src/emojipicker/content_script.scss
deleted file mode 100644
index e8bd38f..0000000
--- a/src/emojipicker/content_script.scss
+++ /dev/null
@@ -1,50 +0,0 @@
-.enh__tab{
- border-bottom: #5b9bd1 solid 1px;
- margin-bottom: 10px;
- display: flex;
- flex-flow: row wrap;
-
- & li {
- flex: 1;
- border-right: #5b9bd1 solid 1px;
- flex-basis: 60px;
-
- & a{
- display: block;
- padding: 2px 0px;
- text-align: center;
- }
-
- &:last-child{
- border-right: none;
- }
- }
-}
-.enh__emotelist{
- display: flex;
- flex-flow: row wrap;
-
- & li{
- flex: 1;
- flex-basis: 25px;
-
- & a{
- display: block;
- padding: 2px 0px;
- text-align: center;
-
- &:hover{
- background: #666;
- }
- }
- }
-}
-
-.mychat .log ul.enh__tab{
- margin-bottom: 10px;
-}
-
-.enh__emoji{
- color: white;
- white-space: nowrap;
-}
diff --git a/src/emojipicker/emoji.json b/src/emojipicker/emoji.json
deleted file mode 100644
index 872d462..0000000
--- a/src/emojipicker/emoji.json
+++ /dev/null
@@ -1 +0,0 @@
-{"symbols":[{"name":":100:","code":"💯"},{"name":":1234:","code":"🔢"},{"name":":heart:","code":"❤"},{"name":":yellow_heart:","code":"💛"},{"name":":green_heart:","code":"💚"},{"name":":blue_heart:","code":"💙"},{"name":":purple_heart:","code":"💜"},{"name":":broken_heart:","code":"💔"},{"name":":heart_exclamation:","code":"❣"},{"name":":two_hearts:","code":"💕"},{"name":":revolving_hearts:","code":"💞"},{"name":":heartbeat:","code":"💓"},{"name":":heartpulse:","code":"💗"},{"name":":sparkling_heart:","code":"💖"},{"name":":cupid:","code":"💘"},{"name":":gift_heart:","code":"💝"},{"name":":heart_decoration:","code":"💟"},{"name":":peace:","code":"☮"},{"name":":cross:","code":"✝"},{"name":":star_and_crescent:","code":"☪"},{"name":":om_symbol:","code":"🕉"},{"name":":wheel_of_dharma:","code":"☸"},{"name":":star_of_david:","code":"✡"},{"name":":six_pointed_star:","code":"🔯"},{"name":":menorah:","code":"🕎"},{"name":":yin_yang:","code":"☯"},{"name":":orthodox_cross:","code":"☦"},{"name":":place_of_worship:","code":"🛐"},{"name":":ophiuchus:","code":"⛎"},{"name":":aries:","code":"♈"},{"name":":taurus:","code":"♉"},{"name":":gemini:","code":"♊"},{"name":":cancer:","code":"♋"},{"name":":leo:","code":"♌"},{"name":":virgo:","code":"♍"},{"name":":libra:","code":"♎"},{"name":":scorpius:","code":"♏"},{"name":":sagittarius:","code":"♐"},{"name":":capricorn:","code":"♑"},{"name":":aquarius:","code":"♒"},{"name":":pisces:","code":"♓"},{"name":":id:","code":"🆔"},{"name":":atom:","code":"⚛"},{"name":":u7a7a:","code":"🈳"},{"name":":u5272:","code":"🈹"},{"name":":radioactive:","code":"☢"},{"name":":biohazard:","code":"☣"},{"name":":mobile_phone_off:","code":"📴"},{"name":":vibration_mode:","code":"📳"},{"name":":u6709:","code":"🈶"},{"name":":u7121:","code":"🈚"},{"name":":u7533:","code":"🈸"},{"name":":u55b6:","code":"🈺"},{"name":":u6708:","code":"🈷"},{"name":":eight_pointed_black_star:","code":"✴"},{"name":":vs:","code":"🆚"},{"name":":accept:","code":"🉑"},{"name":":white_flower:","code":"💮"},{"name":":ideograph_advantage:","code":"🉐"},{"name":":secret:","code":"㊙"},{"name":":congratulations:","code":"㊗"},{"name":":u5408:","code":"🈴"},{"name":":u6e80:","code":"🈵"},{"name":":u7981:","code":"🈲"},{"name":":a:","code":"🅰"},{"name":":b:","code":"🅱"},{"name":":ab:","code":"🆎"},{"name":":cl:","code":"🆑"},{"name":":o2:","code":"🅾"},{"name":":sos:","code":"🆘"},{"name":":no_entry:","code":"⛔"},{"name":":name_badge:","code":"📛"},{"name":":no_entry_sign:","code":"🚫"},{"name":":x:","code":"❌"},{"name":":o:","code":"⭕"},{"name":":anger:","code":"💢"},{"name":":hotsprings:","code":"♨"},{"name":":no_pedestrians:","code":"🚷"},{"name":":do_not_litter:","code":"🚯"},{"name":":no_bicycles:","code":"🚳"},{"name":":non-potable_water:","code":"🚱"},{"name":":underage:","code":"🔞"},{"name":":no_mobile_phones:","code":"📵"},{"name":":exclamation:","code":"❗"},{"name":":grey_exclamation:","code":"❕"},{"name":":question:","code":"❓"},{"name":":grey_question:","code":"❔"},{"name":":bangbang:","code":"‼"},{"name":":interrobang:","code":"⁉"},{"name":":low_brightness:","code":"🔅"},{"name":":high_brightness:","code":"🔆"},{"name":":trident:","code":"🔱"},{"name":":fleur-de-lis:","code":"⚜"},{"name":":part_alternation_mark:","code":"〽"},{"name":":warning:","code":"⚠"},{"name":":children_crossing:","code":"🚸"},{"name":":beginner:","code":"🔰"},{"name":":recycle:","code":"♻"},{"name":":u6307:","code":"🈯"},{"name":":chart:","code":"💹"},{"name":":sparkle:","code":"❇"},{"name":":eight_spoked_asterisk:","code":"✳"},{"name":":negative_squared_cross_mark:","code":"❎"},{"name":":white_check_mark:","code":"✅"},{"name":":diamond_shape_with_a_dot_inside:","code":"💠"},{"name":":cyclone:","code":"🌀"},{"name":":loop:","code":"➿"},{"name":":globe_with_meridians:","code":"🌐"},{"name":":m:","code":"Ⓜ"},{"name":":atm:","code":"🏧"},{"name":":sa:","code":"🈂"},{"name":":passport_control:","code":"🛂"},{"name":":customs:","code":"🛃"},{"name":":baggage_claim:","code":"🛄"},{"name":":left_luggage:","code":"🛅"},{"name":":wheelchair:","code":"♿"},{"name":":no_smoking:","code":"🚭"},{"name":":wc:","code":"🚾"},{"name":":parking:","code":"🅿"},{"name":":potable_water:","code":"🚰"},{"name":":mens:","code":"🚹"},{"name":":womens:","code":"🚺"},{"name":":baby_symbol:","code":"🚼"},{"name":":restroom:","code":"🚻"},{"name":":put_litter_in_its_place:","code":"🚮"},{"name":":cinema:","code":"🎦"},{"name":":signal_strength:","code":"📶"},{"name":":koko:","code":"🈁"},{"name":":ng:","code":"🆖"},{"name":":ok:","code":"🆗"},{"name":":up:","code":"🆙"},{"name":":cool:","code":"🆒"},{"name":":new:","code":"🆕"},{"name":":free:","code":"🆓"},{"name":":zero:","code":"0⃣"},{"name":":one:","code":"1⃣"},{"name":":two:","code":"2⃣"},{"name":":three:","code":"3⃣"},{"name":":four:","code":"4⃣"},{"name":":five:","code":"5⃣"},{"name":":six:","code":"6⃣"},{"name":":seven:","code":"7⃣"},{"name":":eight:","code":"8⃣"},{"name":":nine:","code":"9⃣"},{"name":":keycap_ten:","code":"🔟"},{"name":":arrow_forward:","code":"▶"},{"name":":pause_button:","code":"⏸"},{"name":":play_pause:","code":"⏯"},{"name":":stop_button:","code":"⏹"},{"name":":record_button:","code":"⏺"},{"name":":track_next:","code":"⏭"},{"name":":track_previous:","code":"⏮"},{"name":":fast_forward:","code":"⏩"},{"name":":rewind:","code":"⏪"},{"name":":twisted_rightwards_arrows:","code":"🔀"},{"name":":repeat:","code":"🔁"},{"name":":repeat_one:","code":"🔂"},{"name":":arrow_backward:","code":"◀"},{"name":":arrow_up_small:","code":"🔼"},{"name":":arrow_down_small:","code":"🔽"},{"name":":arrow_double_up:","code":"⏫"},{"name":":arrow_double_down:","code":"⏬"},{"name":":arrow_right:","code":"➡"},{"name":":arrow_left:","code":"⬅"},{"name":":arrow_up:","code":"⬆"},{"name":":arrow_down:","code":"⬇"},{"name":":arrow_upper_right:","code":"↗"},{"name":":arrow_lower_right:","code":"↘"},{"name":":arrow_lower_left:","code":"↙"},{"name":":arrow_upper_left:","code":"↖"},{"name":":arrow_up_down:","code":"↕"},{"name":":left_right_arrow:","code":"↔"},{"name":":arrows_counterclockwise:","code":"🔄"},{"name":":arrow_right_hook:","code":"↪"},{"name":":leftwards_arrow_with_hook:","code":"↩"},{"name":":arrow_heading_up:","code":"⤴"},{"name":":arrow_heading_down:","code":"⤵"},{"name":":hash:","code":"#⃣"},{"name":":asterisk:","code":"*⃣"},{"name":":information_source:","code":"ℹ"},{"name":":abc:","code":"🔤"},{"name":":abcd:","code":"🔡"},{"name":":capital_abcd:","code":"🔠"},{"name":":symbols:","code":"🔣"},{"name":":musical_note:","code":"🎵"},{"name":":notes:","code":"🎶"},{"name":":wavy_dash:","code":"〰"},{"name":":curly_loop:","code":"➰"},{"name":":heavy_check_mark:","code":"✔"},{"name":":arrows_clockwise:","code":"🔃"},{"name":":heavy_plus_sign:","code":"➕"},{"name":":heavy_minus_sign:","code":"➖"},{"name":":heavy_division_sign:","code":"➗"},{"name":":heavy_multiplication_x:","code":"✖"},{"name":":heavy_dollar_sign:","code":"💲"},{"name":":currency_exchange:","code":"💱"},{"name":":copyright:","code":"©"},{"name":":registered:","code":"®"},{"name":":tm:","code":"™"},{"name":":end:","code":"🔚"},{"name":":back:","code":"🔙"},{"name":":on:","code":"🔛"},{"name":":top:","code":"🔝"},{"name":":soon:","code":"🔜"},{"name":":ballot_box_with_check:","code":"☑"},{"name":":radio_button:","code":"🔘"},{"name":":white_circle:","code":"⚪"},{"name":":black_circle:","code":"⚫"},{"name":":red_circle:","code":"🔴"},{"name":":large_blue_circle:","code":"🔵"},{"name":":small_orange_diamond:","code":"🔸"},{"name":":small_blue_diamond:","code":"🔹"},{"name":":large_orange_diamond:","code":"🔶"},{"name":":large_blue_diamond:","code":"🔷"},{"name":":small_red_triangle:","code":"🔺"},{"name":":black_small_square:","code":"▪"},{"name":":white_small_square:","code":"▫"},{"name":":black_large_square:","code":"⬛"},{"name":":white_large_square:","code":"⬜"},{"name":":small_red_triangle_down:","code":"🔻"},{"name":":black_medium_square:","code":"◼"},{"name":":white_medium_square:","code":"◻"},{"name":":black_medium_small_square:","code":"◾"},{"name":":white_medium_small_square:","code":"◽"},{"name":":black_square_button:","code":"🔲"},{"name":":white_square_button:","code":"🔳"},{"name":":speaker:","code":"🔈"},{"name":":sound:","code":"🔉"},{"name":":loud_sound:","code":"🔊"},{"name":":mute:","code":"🔇"},{"name":":mega:","code":"📣"},{"name":":loudspeaker:","code":"📢"},{"name":":bell:","code":"🔔"},{"name":":no_bell:","code":"🔕"},{"name":":black_joker:","code":"🃏"},{"name":":mahjong:","code":"🀄"},{"name":":spades:","code":"♠"},{"name":":clubs:","code":"♣"},{"name":":hearts:","code":"♥"},{"name":":diamonds:","code":"♦"},{"name":":flower_playing_cards:","code":"🎴"},{"name":":thought_balloon:","code":"💭"},{"name":":anger_right:","code":"🗯"},{"name":":speech_balloon:","code":"💬"},{"name":":clock1:","code":"🕐"},{"name":":clock2:","code":"🕑"},{"name":":clock3:","code":"🕒"},{"name":":clock4:","code":"🕓"},{"name":":clock5:","code":"🕔"},{"name":":clock6:","code":"🕕"},{"name":":clock7:","code":"🕖"},{"name":":clock8:","code":"🕗"},{"name":":clock9:","code":"🕘"},{"name":":clock10:","code":"🕙"},{"name":":clock11:","code":"🕚"},{"name":":clock12:","code":"🕛"},{"name":":clock130:","code":"🕜"},{"name":":clock230:","code":"🕝"},{"name":":clock330:","code":"🕞"},{"name":":clock430:","code":"🕟"},{"name":":clock530:","code":"🕠"},{"name":":clock630:","code":"🕡"},{"name":":clock730:","code":"🕢"},{"name":":clock830:","code":"🕣"},{"name":":clock930:","code":"🕤"},{"name":":clock1030:","code":"🕥"},{"name":":clock1130:","code":"🕦"},{"name":":clock1230:","code":"🕧"},{"name":":eye_in_speech_bubble:","code":"👁🗨"},{"name":":speech_left:","code":"🗨"},{"name":":eject:","code":"⏏"},{"name":":black_heart:","code":"🖤"},{"name":":octagonal_sign:","code":"🛑"}],"people":[{"name":":grinning:","code":"😀"},{"name":":grimacing:","code":"😬"},{"name":":grin:","code":"😁"},{"name":":joy:","code":"😂"},{"name":":smiley:","code":"😃"},{"name":":smile:","code":"😄"},{"name":":sweat_smile:","code":"😅"},{"name":":laughing:","code":"😆"},{"name":":innocent:","code":"😇"},{"name":":wink:","code":"😉"},{"name":":blush:","code":"😊"},{"name":":slight_smile:","code":"🙂"},{"name":":upside_down:","code":"🙃"},{"name":":relaxed:","code":"☺"},{"name":":yum:","code":"😋"},{"name":":relieved:","code":"😌"},{"name":":heart_eyes:","code":"😍"},{"name":":kissing_heart:","code":"😘"},{"name":":kissing:","code":"😗"},{"name":":kissing_smiling_eyes:","code":"😙"},{"name":":kissing_closed_eyes:","code":"😚"},{"name":":stuck_out_tongue_winking_eye:","code":"😜"},{"name":":stuck_out_tongue_closed_eyes:","code":"😝"},{"name":":stuck_out_tongue:","code":"😛"},{"name":":money_mouth:","code":"🤑"},{"name":":nerd:","code":"🤓"},{"name":":sunglasses:","code":"😎"},{"name":":hugging:","code":"🤗"},{"name":":smirk:","code":"😏"},{"name":":no_mouth:","code":"😶"},{"name":":neutral_face:","code":"😐"},{"name":":expressionless:","code":"😑"},{"name":":unamused:","code":"😒"},{"name":":rolling_eyes:","code":"🙄"},{"name":":thinking:","code":"🤔"},{"name":":flushed:","code":"😳"},{"name":":disappointed:","code":"😞"},{"name":":worried:","code":"😟"},{"name":":angry:","code":"😠"},{"name":":rage:","code":"😡"},{"name":":pensive:","code":"😔"},{"name":":confused:","code":"😕"},{"name":":slight_frown:","code":"🙁"},{"name":":frowning2:","code":"☹"},{"name":":persevere:","code":"😣"},{"name":":confounded:","code":"😖"},{"name":":tired_face:","code":"😫"},{"name":":weary:","code":"😩"},{"name":":triumph:","code":"😤"},{"name":":open_mouth:","code":"😮"},{"name":":scream:","code":"😱"},{"name":":fearful:","code":"😨"},{"name":":cold_sweat:","code":"😰"},{"name":":hushed:","code":"😯"},{"name":":frowning:","code":"😦"},{"name":":anguished:","code":"😧"},{"name":":cry:","code":"😢"},{"name":":disappointed_relieved:","code":"😥"},{"name":":sleepy:","code":"😪"},{"name":":sweat:","code":"😓"},{"name":":sob:","code":"😭"},{"name":":dizzy_face:","code":"😵"},{"name":":astonished:","code":"😲"},{"name":":zipper_mouth:","code":"🤐"},{"name":":mask:","code":"😷"},{"name":":thermometer_face:","code":"🤒"},{"name":":head_bandage:","code":"🤕"},{"name":":sleeping:","code":"😴"},{"name":":zzz:","code":"💤"},{"name":":poop:","code":"💩"},{"name":":smiling_imp:","code":"😈"},{"name":":imp:","code":"👿"},{"name":":japanese_ogre:","code":"👹"},{"name":":japanese_goblin:","code":"👺"},{"name":":skull:","code":"💀"},{"name":":ghost:","code":"👻"},{"name":":alien:","code":"👽"},{"name":":robot:","code":"🤖"},{"name":":smiley_cat:","code":"😺"},{"name":":smile_cat:","code":"😸"},{"name":":joy_cat:","code":"😹"},{"name":":heart_eyes_cat:","code":"😻"},{"name":":smirk_cat:","code":"😼"},{"name":":kissing_cat:","code":"😽"},{"name":":scream_cat:","code":"🙀"},{"name":":crying_cat_face:","code":"😿"},{"name":":pouting_cat:","code":"😾"},{"name":":raised_hands:","code":"🙌"},{"name":":clap:","code":"👏"},{"name":":wave:","code":"👋"},{"name":":thumbsup:","code":"👍"},{"name":":thumbsdown:","code":"👎"},{"name":":punch:","code":"👊"},{"name":":fist:","code":"✊"},{"name":":v:","code":"✌"},{"name":":ok_hand:","code":"👌"},{"name":":raised_hand:","code":"✋"},{"name":":open_hands:","code":"👐"},{"name":":muscle:","code":"💪"},{"name":":pray:","code":"🙏"},{"name":":point_up:","code":"☝"},{"name":":point_up_2:","code":"👆"},{"name":":point_down:","code":"👇"},{"name":":point_left:","code":"👈"},{"name":":point_right:","code":"👉"},{"name":":middle_finger:","code":"🖕"},{"name":":hand_splayed:","code":"🖐"},{"name":":metal:","code":"🤘"},{"name":":vulcan:","code":"🖖"},{"name":":writing_hand:","code":"✍"},{"name":":nail_care:","code":"💅"},{"name":":lips:","code":"👄"},{"name":":tongue:","code":"👅"},{"name":":ear:","code":"👂"},{"name":":nose:","code":"👃"},{"name":":eye:","code":"👁"},{"name":":eyes:","code":"👀"},{"name":":bust_in_silhouette:","code":"👤"},{"name":":busts_in_silhouette:","code":"👥"},{"name":":speaking_head:","code":"🗣"},{"name":":baby:","code":"👶"},{"name":":boy:","code":"👦"},{"name":":girl:","code":"👧"},{"name":":man:","code":"👨"},{"name":":woman:","code":"👩"},{"name":":person_with_blond_hair:","code":"👱"},{"name":":older_man:","code":"👴"},{"name":":older_woman:","code":"👵"},{"name":":man_with_gua_pi_mao:","code":"👲"},{"name":":man_with_turban:","code":"👳"},{"name":":cop:","code":"👮"},{"name":":construction_worker:","code":"👷"},{"name":":guardsman:","code":"💂"},{"name":":spy:","code":"🕵"},{"name":":santa:","code":"🎅"},{"name":":angel:","code":"👼"},{"name":":princess:","code":"👸"},{"name":":bride_with_veil:","code":"👰"},{"name":":walking:","code":"🚶"},{"name":":runner:","code":"🏃"},{"name":":dancer:","code":"💃"},{"name":":dancers:","code":"👯"},{"name":":couple:","code":"👫"},{"name":":two_men_holding_hands:","code":"👬"},{"name":":two_women_holding_hands:","code":"👭"},{"name":":bow:","code":"🙇"},{"name":":information_desk_person:","code":"💁"},{"name":":no_good:","code":"🙅"},{"name":":ok_woman:","code":"🙆"},{"name":":raising_hand:","code":"🙋"},{"name":":person_with_pouting_face:","code":"🙎"},{"name":":person_frowning:","code":"🙍"},{"name":":haircut:","code":"💇"},{"name":":massage:","code":"💆"},{"name":":couple_with_heart:","code":"💑"},{"name":":couple_ww:","code":"👩❤👩"},{"name":":couple_mm:","code":"👨❤👨"},{"name":":couplekiss:","code":"💏"},{"name":":kiss_ww:","code":"👩❤💋👩"},{"name":":kiss_mm:","code":"👨❤💋👨"},{"name":":family:","code":"👪"},{"name":":family_mwg:","code":"👨👩👧"},{"name":":family_mwgb:","code":"👨👩👧👦"},{"name":":family_mwbb:","code":"👨👩👦👦"},{"name":":family_mwgg:","code":"👨👩👧👧"},{"name":":family_wwb:","code":"👩👩👦"},{"name":":family_wwg:","code":"👩👩👧"},{"name":":family_wwgb:","code":"👩👩👧👦"},{"name":":family_wwbb:","code":"👩👩👦👦"},{"name":":family_wwgg:","code":"👩👩👧👧"},{"name":":family_mmb:","code":"👨👨👦"},{"name":":family_mmg:","code":"👨👨👧"},{"name":":family_mmgb:","code":"👨👨👧👦"},{"name":":family_mmbb:","code":"👨👨👦👦"},{"name":":family_mmgg:","code":"👨👨👧👧"},{"name":":womans_clothes:","code":"👚"},{"name":":shirt:","code":"👕"},{"name":":jeans:","code":"👖"},{"name":":necktie:","code":"👔"},{"name":":dress:","code":"👗"},{"name":":bikini:","code":"👙"},{"name":":kimono:","code":"👘"},{"name":":lipstick:","code":"💄"},{"name":":kiss:","code":"💋"},{"name":":footprints:","code":"👣"},{"name":":high_heel:","code":"👠"},{"name":":sandal:","code":"👡"},{"name":":boot:","code":"👢"},{"name":":mans_shoe:","code":"👞"},{"name":":athletic_shoe:","code":"👟"},{"name":":womans_hat:","code":"👒"},{"name":":tophat:","code":"🎩"},{"name":":helmet_with_cross:","code":"⛑"},{"name":":mortar_board:","code":"🎓"},{"name":":crown:","code":"👑"},{"name":":school_satchel:","code":"🎒"},{"name":":pouch:","code":"👝"},{"name":":purse:","code":"👛"},{"name":":handbag:","code":"👜"},{"name":":briefcase:","code":"💼"},{"name":":eyeglasses:","code":"👓"},{"name":":dark_sunglasses:","code":"🕶"},{"name":":ring:","code":"💍"},{"name":":closed_umbrella:","code":"🌂"},{"name":":raised_hands_tone1:","code":"🙌🏻"},{"name":":raised_hands_tone2:","code":"🙌🏼"},{"name":":raised_hands_tone3:","code":"🙌🏽"},{"name":":raised_hands_tone4:","code":"🙌🏾"},{"name":":raised_hands_tone5:","code":"🙌🏿"},{"name":":clap_tone1:","code":"👏🏻"},{"name":":clap_tone2:","code":"👏🏼"},{"name":":clap_tone3:","code":"👏🏽"},{"name":":clap_tone4:","code":"👏🏾"},{"name":":clap_tone5:","code":"👏🏿"},{"name":":wave_tone1:","code":"👋🏻"},{"name":":wave_tone2:","code":"👋🏼"},{"name":":wave_tone3:","code":"👋🏽"},{"name":":wave_tone4:","code":"👋🏾"},{"name":":wave_tone5:","code":"👋🏿"},{"name":":thumbsup_tone1:","code":"👍🏻"},{"name":":thumbsup_tone2:","code":"👍🏼"},{"name":":thumbsup_tone3:","code":"👍🏽"},{"name":":thumbsup_tone4:","code":"👍🏾"},{"name":":thumbsup_tone5:","code":"👍🏿"},{"name":":thumbsdown_tone1:","code":"👎🏻"},{"name":":thumbsdown_tone2:","code":"👎🏼"},{"name":":thumbsdown_tone3:","code":"👎🏽"},{"name":":thumbsdown_tone4:","code":"👎🏾"},{"name":":thumbsdown_tone5:","code":"👎🏿"},{"name":":punch_tone1:","code":"👊🏻"},{"name":":punch_tone2:","code":"👊🏼"},{"name":":punch_tone3:","code":"👊🏽"},{"name":":punch_tone4:","code":"👊🏾"},{"name":":punch_tone5:","code":"👊🏿"},{"name":":fist_tone1:","code":"✊🏻"},{"name":":fist_tone2:","code":"✊🏼"},{"name":":fist_tone3:","code":"✊🏽"},{"name":":fist_tone4:","code":"✊🏾"},{"name":":fist_tone5:","code":"✊🏿"},{"name":":v_tone1:","code":"✌🏻"},{"name":":v_tone2:","code":"✌🏼"},{"name":":v_tone3:","code":"✌🏽"},{"name":":v_tone4:","code":"✌🏾"},{"name":":v_tone5:","code":"✌🏿"},{"name":":ok_hand_tone1:","code":"👌🏻"},{"name":":ok_hand_tone2:","code":"👌🏼"},{"name":":ok_hand_tone3:","code":"👌🏽"},{"name":":ok_hand_tone4:","code":"👌🏾"},{"name":":ok_hand_tone5:","code":"👌🏿"},{"name":":raised_hand_tone1:","code":"✋🏻"},{"name":":raised_hand_tone2:","code":"✋🏼"},{"name":":raised_hand_tone3:","code":"✋🏽"},{"name":":raised_hand_tone4:","code":"✋🏾"},{"name":":raised_hand_tone5:","code":"✋🏿"},{"name":":open_hands_tone1:","code":"👐🏻"},{"name":":open_hands_tone2:","code":"👐🏼"},{"name":":open_hands_tone3:","code":"👐🏽"},{"name":":open_hands_tone4:","code":"👐🏾"},{"name":":open_hands_tone5:","code":"👐🏿"},{"name":":muscle_tone1:","code":"💪🏻"},{"name":":muscle_tone2:","code":"💪🏼"},{"name":":muscle_tone3:","code":"💪🏽"},{"name":":muscle_tone4:","code":"💪🏾"},{"name":":muscle_tone5:","code":"💪🏿"},{"name":":pray_tone1:","code":"🙏🏻"},{"name":":pray_tone2:","code":"🙏🏼"},{"name":":pray_tone3:","code":"🙏🏽"},{"name":":pray_tone4:","code":"🙏🏾"},{"name":":pray_tone5:","code":"🙏🏿"},{"name":":point_up_tone1:","code":"☝🏻"},{"name":":point_up_tone2:","code":"☝🏼"},{"name":":point_up_tone3:","code":"☝🏽"},{"name":":point_up_tone4:","code":"☝🏾"},{"name":":point_up_tone5:","code":"☝🏿"},{"name":":point_up_2_tone1:","code":"👆🏻"},{"name":":point_up_2_tone2:","code":"👆🏼"},{"name":":point_up_2_tone3:","code":"👆🏽"},{"name":":point_up_2_tone4:","code":"👆🏾"},{"name":":point_up_2_tone5:","code":"👆🏿"},{"name":":point_down_tone1:","code":"👇🏻"},{"name":":point_down_tone2:","code":"👇🏼"},{"name":":point_down_tone3:","code":"👇🏽"},{"name":":point_down_tone4:","code":"👇🏾"},{"name":":point_down_tone5:","code":"👇🏿"},{"name":":point_left_tone1:","code":"👈🏻"},{"name":":point_left_tone2:","code":"👈🏼"},{"name":":point_left_tone3:","code":"👈🏽"},{"name":":point_left_tone4:","code":"👈🏾"},{"name":":point_left_tone5:","code":"👈🏿"},{"name":":point_right_tone1:","code":"👉🏻"},{"name":":point_right_tone2:","code":"👉🏼"},{"name":":point_right_tone3:","code":"👉🏽"},{"name":":point_right_tone4:","code":"👉🏾"},{"name":":point_right_tone5:","code":"👉🏿"},{"name":":middle_finger_tone1:","code":"🖕🏻"},{"name":":middle_finger_tone2:","code":"🖕🏼"},{"name":":middle_finger_tone3:","code":"🖕🏽"},{"name":":middle_finger_tone4:","code":"🖕🏾"},{"name":":middle_finger_tone5:","code":"🖕🏿"},{"name":":hand_splayed_tone1:","code":"🖐🏻"},{"name":":hand_splayed_tone2:","code":"🖐🏼"},{"name":":hand_splayed_tone3:","code":"🖐🏽"},{"name":":hand_splayed_tone4:","code":"🖐🏾"},{"name":":hand_splayed_tone5:","code":"🖐🏿"},{"name":":metal_tone1:","code":"🤘🏻"},{"name":":metal_tone2:","code":"🤘🏼"},{"name":":metal_tone3:","code":"🤘🏽"},{"name":":metal_tone4:","code":"🤘🏾"},{"name":":metal_tone5:","code":"🤘🏿"},{"name":":vulcan_tone1:","code":"🖖🏻"},{"name":":vulcan_tone2:","code":"🖖🏼"},{"name":":vulcan_tone3:","code":"🖖🏽"},{"name":":vulcan_tone4:","code":"🖖🏾"},{"name":":vulcan_tone5:","code":"🖖🏿"},{"name":":writing_hand_tone1:","code":"✍🏻"},{"name":":writing_hand_tone2:","code":"✍🏼"},{"name":":writing_hand_tone3:","code":"✍🏽"},{"name":":writing_hand_tone4:","code":"✍🏾"},{"name":":writing_hand_tone5:","code":"✍🏿"},{"name":":nail_care_tone1:","code":"💅🏻"},{"name":":nail_care_tone2:","code":"💅🏼"},{"name":":nail_care_tone3:","code":"💅🏽"},{"name":":nail_care_tone4:","code":"💅🏾"},{"name":":nail_care_tone5:","code":"💅🏿"},{"name":":ear_tone1:","code":"👂🏻"},{"name":":ear_tone2:","code":"👂🏼"},{"name":":ear_tone3:","code":"👂🏽"},{"name":":ear_tone4:","code":"👂🏾"},{"name":":ear_tone5:","code":"👂🏿"},{"name":":nose_tone1:","code":"👃🏻"},{"name":":nose_tone2:","code":"👃🏼"},{"name":":nose_tone3:","code":"👃🏽"},{"name":":nose_tone4:","code":"👃🏾"},{"name":":nose_tone5:","code":"👃🏿"},{"name":":baby_tone1:","code":"👶🏻"},{"name":":baby_tone2:","code":"👶🏼"},{"name":":baby_tone3:","code":"👶🏽"},{"name":":baby_tone4:","code":"👶🏾"},{"name":":baby_tone5:","code":"👶🏿"},{"name":":boy_tone1:","code":"👦🏻"},{"name":":boy_tone2:","code":"👦🏼"},{"name":":boy_tone3:","code":"👦🏽"},{"name":":boy_tone4:","code":"👦🏾"},{"name":":boy_tone5:","code":"👦🏿"},{"name":":girl_tone1:","code":"👧🏻"},{"name":":girl_tone2:","code":"👧🏼"},{"name":":girl_tone3:","code":"👧🏽"},{"name":":girl_tone4:","code":"👧🏾"},{"name":":girl_tone5:","code":"👧🏿"},{"name":":man_tone1:","code":"👨🏻"},{"name":":man_tone2:","code":"👨🏼"},{"name":":man_tone3:","code":"👨🏽"},{"name":":man_tone4:","code":"👨🏾"},{"name":":man_tone5:","code":"👨🏿"},{"name":":woman_tone1:","code":"👩🏻"},{"name":":woman_tone2:","code":"👩🏼"},{"name":":woman_tone3:","code":"👩🏽"},{"name":":woman_tone4:","code":"👩🏾"},{"name":":woman_tone5:","code":"👩🏿"},{"name":":person_with_blond_hair_tone1:","code":"👱🏻"},{"name":":person_with_blond_hair_tone2:","code":"👱🏼"},{"name":":person_with_blond_hair_tone3:","code":"👱🏽"},{"name":":person_with_blond_hair_tone4:","code":"👱🏾"},{"name":":person_with_blond_hair_tone5:","code":"👱🏿"},{"name":":older_man_tone1:","code":"👴🏻"},{"name":":older_man_tone2:","code":"👴🏼"},{"name":":older_man_tone3:","code":"👴🏽"},{"name":":older_man_tone4:","code":"👴🏾"},{"name":":older_man_tone5:","code":"👴🏿"},{"name":":older_woman_tone1:","code":"👵🏻"},{"name":":older_woman_tone2:","code":"👵🏼"},{"name":":older_woman_tone3:","code":"👵🏽"},{"name":":older_woman_tone4:","code":"👵🏾"},{"name":":older_woman_tone5:","code":"👵🏿"},{"name":":man_with_gua_pi_mao_tone1:","code":"👲🏻"},{"name":":man_with_gua_pi_mao_tone2:","code":"👲🏼"},{"name":":man_with_gua_pi_mao_tone3:","code":"👲🏽"},{"name":":man_with_gua_pi_mao_tone4:","code":"👲🏾"},{"name":":man_with_gua_pi_mao_tone5:","code":"👲🏿"},{"name":":man_with_turban_tone1:","code":"👳🏻"},{"name":":man_with_turban_tone2:","code":"👳🏼"},{"name":":man_with_turban_tone3:","code":"👳🏽"},{"name":":man_with_turban_tone4:","code":"👳🏾"},{"name":":man_with_turban_tone5:","code":"👳🏿"},{"name":":cop_tone1:","code":"👮🏻"},{"name":":cop_tone2:","code":"👮🏼"},{"name":":cop_tone3:","code":"👮🏽"},{"name":":cop_tone4:","code":"👮🏾"},{"name":":cop_tone5:","code":"👮🏿"},{"name":":construction_worker_tone1:","code":"👷🏻"},{"name":":construction_worker_tone2:","code":"👷🏼"},{"name":":construction_worker_tone3:","code":"👷🏽"},{"name":":construction_worker_tone4:","code":"👷🏾"},{"name":":construction_worker_tone5:","code":"👷🏿"},{"name":":guardsman_tone1:","code":"💂🏻"},{"name":":guardsman_tone2:","code":"💂🏼"},{"name":":guardsman_tone3:","code":"💂🏽"},{"name":":guardsman_tone4:","code":"💂🏾"},{"name":":guardsman_tone5:","code":"💂🏿"},{"name":":santa_tone1:","code":"🎅🏻"},{"name":":santa_tone2:","code":"🎅🏼"},{"name":":santa_tone3:","code":"🎅🏽"},{"name":":santa_tone4:","code":"🎅🏾"},{"name":":santa_tone5:","code":"🎅🏿"},{"name":":angel_tone1:","code":"👼🏻"},{"name":":angel_tone2:","code":"👼🏼"},{"name":":angel_tone3:","code":"👼🏽"},{"name":":angel_tone4:","code":"👼🏾"},{"name":":angel_tone5:","code":"👼🏿"},{"name":":princess_tone1:","code":"👸🏻"},{"name":":princess_tone2:","code":"👸🏼"},{"name":":princess_tone3:","code":"👸🏽"},{"name":":princess_tone4:","code":"👸🏾"},{"name":":princess_tone5:","code":"👸🏿"},{"name":":bride_with_veil_tone1:","code":"👰🏻"},{"name":":bride_with_veil_tone2:","code":"👰🏼"},{"name":":bride_with_veil_tone3:","code":"👰🏽"},{"name":":bride_with_veil_tone4:","code":"👰🏾"},{"name":":bride_with_veil_tone5:","code":"👰🏿"},{"name":":walking_tone1:","code":"🚶🏻"},{"name":":walking_tone2:","code":"🚶🏼"},{"name":":walking_tone3:","code":"🚶🏽"},{"name":":walking_tone4:","code":"🚶🏾"},{"name":":walking_tone5:","code":"🚶🏿"},{"name":":runner_tone1:","code":"🏃🏻"},{"name":":runner_tone2:","code":"🏃🏼"},{"name":":runner_tone3:","code":"🏃🏽"},{"name":":runner_tone4:","code":"🏃🏾"},{"name":":runner_tone5:","code":"🏃🏿"},{"name":":dancer_tone1:","code":"💃🏻"},{"name":":dancer_tone2:","code":"💃🏼"},{"name":":dancer_tone3:","code":"💃🏽"},{"name":":dancer_tone4:","code":"💃🏾"},{"name":":dancer_tone5:","code":"💃🏿"},{"name":":bow_tone1:","code":"🙇🏻"},{"name":":bow_tone2:","code":"🙇🏼"},{"name":":bow_tone3:","code":"🙇🏽"},{"name":":bow_tone4:","code":"🙇🏾"},{"name":":bow_tone5:","code":"🙇🏿"},{"name":":information_desk_person_tone1:","code":"💁🏻"},{"name":":information_desk_person_tone2:","code":"💁🏼"},{"name":":information_desk_person_tone3:","code":"💁🏽"},{"name":":information_desk_person_tone4:","code":"💁🏾"},{"name":":information_desk_person_tone5:","code":"💁🏿"},{"name":":no_good_tone1:","code":"🙅🏻"},{"name":":no_good_tone2:","code":"🙅🏼"},{"name":":no_good_tone3:","code":"🙅🏽"},{"name":":no_good_tone4:","code":"🙅🏾"},{"name":":no_good_tone5:","code":"🙅🏿"},{"name":":ok_woman_tone1:","code":"🙆🏻"},{"name":":ok_woman_tone2:","code":"🙆🏼"},{"name":":ok_woman_tone3:","code":"🙆🏽"},{"name":":ok_woman_tone4:","code":"🙆🏾"},{"name":":ok_woman_tone5:","code":"🙆🏿"},{"name":":raising_hand_tone1:","code":"🙋🏻"},{"name":":raising_hand_tone2:","code":"🙋🏼"},{"name":":raising_hand_tone3:","code":"🙋🏽"},{"name":":raising_hand_tone4:","code":"🙋🏾"},{"name":":raising_hand_tone5:","code":"🙋🏿"},{"name":":person_with_pouting_face_tone1:","code":"🙎🏻"},{"name":":person_with_pouting_face_tone2:","code":"🙎🏼"},{"name":":person_with_pouting_face_tone3:","code":"🙎🏽"},{"name":":person_with_pouting_face_tone4:","code":"🙎🏾"},{"name":":person_with_pouting_face_tone5:","code":"🙎🏿"},{"name":":person_frowning_tone1:","code":"🙍🏻"},{"name":":person_frowning_tone2:","code":"🙍🏼"},{"name":":person_frowning_tone3:","code":"🙍🏽"},{"name":":person_frowning_tone4:","code":"🙍🏾"},{"name":":person_frowning_tone5:","code":"🙍🏿"},{"name":":haircut_tone1:","code":"💇🏻"},{"name":":haircut_tone2:","code":"💇🏼"},{"name":":haircut_tone3:","code":"💇🏽"},{"name":":haircut_tone4:","code":"💇🏾"},{"name":":haircut_tone5:","code":"💇🏿"},{"name":":massage_tone1:","code":"💆🏻"},{"name":":massage_tone2:","code":"💆🏼"},{"name":":massage_tone3:","code":"💆🏽"},{"name":":massage_tone4:","code":"💆🏾"},{"name":":massage_tone5:","code":"💆🏿"},{"name":":spy_tone1:","code":"🕵🏻"},{"name":":spy_tone2:","code":"🕵🏼"},{"name":":spy_tone3:","code":"🕵🏽"},{"name":":spy_tone4:","code":"🕵🏾"},{"name":":spy_tone5:","code":"🕵🏿"},{"name":":prince_tone1:","code":"🤴🏻"},{"name":":prince_tone2:","code":"🤴🏼"},{"name":":prince_tone3:","code":"🤴🏽"},{"name":":prince_tone4:","code":"🤴🏾"},{"name":":prince_tone5:","code":"🤴🏿"},{"name":":mrs_claus_tone1:","code":"🤶🏻"},{"name":":mrs_claus_tone2:","code":"🤶🏼"},{"name":":mrs_claus_tone3:","code":"🤶🏽"},{"name":":mrs_claus_tone4:","code":"🤶🏾"},{"name":":mrs_claus_tone5:","code":"🤶🏿"},{"name":":man_in_tuxedo_tone1:","code":"🤵🏻"},{"name":":man_in_tuxedo_tone2:","code":"🤵🏼"},{"name":":man_in_tuxedo_tone3:","code":"🤵🏽"},{"name":":man_in_tuxedo_tone4:","code":"🤵🏾"},{"name":":man_in_tuxedo_tone5:","code":"🤵🏿"},{"name":":shrug_tone1:","code":"🤷🏻"},{"name":":shrug_tone2:","code":"🤷🏼"},{"name":":shrug_tone3:","code":"🤷🏽"},{"name":":shrug_tone4:","code":"🤷🏾"},{"name":":shrug_tone5:","code":"🤷🏿"},{"name":":face_palm_tone1:","code":"🤦🏻"},{"name":":face_palm_tone2:","code":"🤦🏼"},{"name":":face_palm_tone3:","code":"🤦🏽"},{"name":":face_palm_tone4:","code":"🤦🏾"},{"name":":face_palm_tone5:","code":"🤦🏿"},{"name":":pregnant_woman_tone1:","code":"🤰🏻"},{"name":":pregnant_woman_tone2:","code":"🤰🏼"},{"name":":pregnant_woman_tone3:","code":"🤰🏽"},{"name":":pregnant_woman_tone4:","code":"🤰🏾"},{"name":":pregnant_woman_tone5:","code":"🤰🏿"},{"name":":selfie_tone1:","code":"🤳🏻"},{"name":":selfie_tone2:","code":"🤳🏼"},{"name":":selfie_tone3:","code":"🤳🏽"},{"name":":selfie_tone4:","code":"🤳🏾"},{"name":":selfie_tone5:","code":"🤳🏿"},{"name":":fingers_crossed_tone1:","code":"🤞🏻"},{"name":":fingers_crossed_tone2:","code":"🤞🏼"},{"name":":fingers_crossed_tone3:","code":"🤞🏽"},{"name":":fingers_crossed_tone4:","code":"🤞🏾"},{"name":":fingers_crossed_tone5:","code":"🤞🏿"},{"name":":call_me_tone1:","code":"🤙🏻"},{"name":":call_me_tone2:","code":"🤙🏼"},{"name":":call_me_tone3:","code":"🤙🏽"},{"name":":call_me_tone4:","code":"🤙🏾"},{"name":":call_me_tone5:","code":"🤙🏿"},{"name":":left_facing_fist_tone1:","code":"🤛🏻"},{"name":":left_facing_fist_tone2:","code":"🤛🏼"},{"name":":left_facing_fist_tone3:","code":"🤛🏽"},{"name":":left_facing_fist_tone4:","code":"🤛🏾"},{"name":":left_facing_fist_tone5:","code":"🤛🏿"},{"name":":right_facing_fist_tone1:","code":"🤜🏻"},{"name":":right_facing_fist_tone2:","code":"🤜🏼"},{"name":":right_facing_fist_tone3:","code":"🤜🏽"},{"name":":right_facing_fist_tone4:","code":"🤜🏾"},{"name":":right_facing_fist_tone5:","code":"🤜🏿"},{"name":":raised_back_of_hand_tone1:","code":"🤚🏻"},{"name":":raised_back_of_hand_tone2:","code":"🤚🏼"},{"name":":raised_back_of_hand_tone3:","code":"🤚🏽"},{"name":":raised_back_of_hand_tone4:","code":"🤚🏾"},{"name":":raised_back_of_hand_tone5:","code":"🤚🏿"},{"name":":handshake_tone1:","code":"🤝🏻"},{"name":":handshake_tone2:","code":"🤝🏼"},{"name":":handshake_tone3:","code":"🤝🏽"},{"name":":handshake_tone4:","code":"🤝🏾"},{"name":":handshake_tone5:","code":"🤝🏿"},{"name":":cowboy:","code":"🤠"},{"name":":clown:","code":"🤡"},{"name":":nauseated_face:","code":"🤢"},{"name":":rofl:","code":"🤣"},{"name":":drooling_face:","code":"🤤"},{"name":":lying_face:","code":"🤥"},{"name":":sneezing_face:","code":"🤧"},{"name":":prince:","code":"🤴"},{"name":":man_in_tuxedo:","code":"🤵"},{"name":":mrs_claus:","code":"🤶"},{"name":":face_palm:","code":"🤦"},{"name":":shrug:","code":"🤷"},{"name":":pregnant_woman:","code":"🤰"},{"name":":selfie:","code":"🤳"},{"name":":man_dancing:","code":"🕺"},{"name":":call_me:","code":"🤙"},{"name":":raised_back_of_hand:","code":"🤚"},{"name":":left_facing_fist:","code":"🤛"},{"name":":right_facing_fist:","code":"🤜"},{"name":":handshake:","code":"🤝"},{"name":":fingers_crossed:","code":"🤞"}],"nature":[{"name":":dog:","code":"🐶"},{"name":":cat:","code":"🐱"},{"name":":mouse:","code":"🐭"},{"name":":hamster:","code":"🐹"},{"name":":rabbit:","code":"🐰"},{"name":":bear:","code":"🐻"},{"name":":panda_face:","code":"🐼"},{"name":":koala:","code":"🐨"},{"name":":tiger:","code":"🐯"},{"name":":lion_face:","code":"🦁"},{"name":":cow:","code":"🐮"},{"name":":pig:","code":"🐷"},{"name":":pig_nose:","code":"🐽"},{"name":":frog:","code":"🐸"},{"name":":octopus:","code":"🐙"},{"name":":monkey_face:","code":"🐵"},{"name":":see_no_evil:","code":"🙈"},{"name":":hear_no_evil:","code":"🙉"},{"name":":speak_no_evil:","code":"🙊"},{"name":":monkey:","code":"🐒"},{"name":":chicken:","code":"🐔"},{"name":":penguin:","code":"🐧"},{"name":":bird:","code":"🐦"},{"name":":baby_chick:","code":"🐤"},{"name":":hatching_chick:","code":"🐣"},{"name":":hatched_chick:","code":"🐥"},{"name":":wolf:","code":"🐺"},{"name":":boar:","code":"🐗"},{"name":":horse:","code":"🐴"},{"name":":unicorn:","code":"🦄"},{"name":":bee:","code":"🐝"},{"name":":bug:","code":"🐛"},{"name":":snail:","code":"🐌"},{"name":":beetle:","code":"🐞"},{"name":":ant:","code":"🐜"},{"name":":spider:","code":"🕷"},{"name":":scorpion:","code":"🦂"},{"name":":crab:","code":"🦀"},{"name":":snake:","code":"🐍"},{"name":":turtle:","code":"🐢"},{"name":":tropical_fish:","code":"🐠"},{"name":":fish:","code":"🐟"},{"name":":blowfish:","code":"🐡"},{"name":":dolphin:","code":"🐬"},{"name":":whale:","code":"🐳"},{"name":":whale2:","code":"🐋"},{"name":":crocodile:","code":"🐊"},{"name":":leopard:","code":"🐆"},{"name":":tiger2:","code":"🐅"},{"name":":water_buffalo:","code":"🐃"},{"name":":ox:","code":"🐂"},{"name":":cow2:","code":"🐄"},{"name":":dromedary_camel:","code":"🐪"},{"name":":camel:","code":"🐫"},{"name":":elephant:","code":"🐘"},{"name":":goat:","code":"🐐"},{"name":":ram:","code":"🐏"},{"name":":sheep:","code":"🐑"},{"name":":racehorse:","code":"🐎"},{"name":":pig2:","code":"🐖"},{"name":":rat:","code":"🐀"},{"name":":mouse2:","code":"🐁"},{"name":":rooster:","code":"🐓"},{"name":":turkey:","code":"🦃"},{"name":":dove:","code":"🕊"},{"name":":dog2:","code":"🐕"},{"name":":poodle:","code":"🐩"},{"name":":cat2:","code":"🐈"},{"name":":rabbit2:","code":"🐇"},{"name":":chipmunk:","code":"🐿"},{"name":":feet:","code":"🐾"},{"name":":dragon:","code":"🐉"},{"name":":dragon_face:","code":"🐲"},{"name":":cactus:","code":"🌵"},{"name":":christmas_tree:","code":"🎄"},{"name":":evergreen_tree:","code":"🌲"},{"name":":deciduous_tree:","code":"🌳"},{"name":":palm_tree:","code":"🌴"},{"name":":seedling:","code":"🌱"},{"name":":herb:","code":"🌿"},{"name":":shamrock:","code":"☘"},{"name":":four_leaf_clover:","code":"🍀"},{"name":":bamboo:","code":"🎍"},{"name":":tanabata_tree:","code":"🎋"},{"name":":leaves:","code":"🍃"},{"name":":fallen_leaf:","code":"🍂"},{"name":":maple_leaf:","code":"🍁"},{"name":":ear_of_rice:","code":"🌾"},{"name":":hibiscus:","code":"🌺"},{"name":":sunflower:","code":"🌻"},{"name":":rose:","code":"🌹"},{"name":":tulip:","code":"🌷"},{"name":":blossom:","code":"🌼"},{"name":":cherry_blossom:","code":"🌸"},{"name":":bouquet:","code":"💐"},{"name":":mushroom:","code":"🍄"},{"name":":chestnut:","code":"🌰"},{"name":":jack_o_lantern:","code":"🎃"},{"name":":shell:","code":"🐚"},{"name":":spider_web:","code":"🕸"},{"name":":earth_americas:","code":"🌎"},{"name":":earth_africa:","code":"🌍"},{"name":":earth_asia:","code":"🌏"},{"name":":full_moon:","code":"🌕"},{"name":":waning_gibbous_moon:","code":"🌖"},{"name":":last_quarter_moon:","code":"🌗"},{"name":":waning_crescent_moon:","code":"🌘"},{"name":":new_moon:","code":"🌑"},{"name":":waxing_crescent_moon:","code":"🌒"},{"name":":first_quarter_moon:","code":"🌓"},{"name":":waxing_gibbous_moon:","code":"🌔"},{"name":":new_moon_with_face:","code":"🌚"},{"name":":full_moon_with_face:","code":"🌝"},{"name":":first_quarter_moon_with_face:","code":"🌛"},{"name":":last_quarter_moon_with_face:","code":"🌜"},{"name":":sun_with_face:","code":"🌞"},{"name":":crescent_moon:","code":"🌙"},{"name":":star:","code":"⭐"},{"name":":star2:","code":"🌟"},{"name":":dizzy:","code":"💫"},{"name":":sparkles:","code":"✨"},{"name":":comet:","code":"☄"},{"name":":sunny:","code":"☀"},{"name":":white_sun_small_cloud:","code":"🌤"},{"name":":partly_sunny:","code":"⛅"},{"name":":white_sun_cloud:","code":"🌥"},{"name":":white_sun_rain_cloud:","code":"🌦"},{"name":":cloud:","code":"☁"},{"name":":cloud_rain:","code":"🌧"},{"name":":thunder_cloud_rain:","code":"⛈"},{"name":":cloud_lightning:","code":"🌩"},{"name":":zap:","code":"⚡"},{"name":":fire:","code":"🔥"},{"name":":boom:","code":"💥"},{"name":":snowflake:","code":"❄"},{"name":":cloud_snow:","code":"🌨"},{"name":":snowman2:","code":"☃"},{"name":":snowman:","code":"⛄"},{"name":":wind_blowing_face:","code":"🌬"},{"name":":dash:","code":"💨"},{"name":":cloud_tornado:","code":"🌪"},{"name":":fog:","code":"🌫"},{"name":":umbrella2:","code":"☂"},{"name":":umbrella:","code":"☔"},{"name":":droplet:","code":"💧"},{"name":":sweat_drops:","code":"💦"},{"name":":ocean:","code":"🌊"},{"name":":eagle:","code":"🦅"},{"name":":duck:","code":"🦆"},{"name":":bat:","code":"🦇"},{"name":":shark:","code":"🦈"},{"name":":owl:","code":"🦉"},{"name":":fox:","code":"🦊"},{"name":":butterfly:","code":"🦋"},{"name":":deer:","code":"🦌"},{"name":":gorilla:","code":"🦍"},{"name":":lizard:","code":"🦎"},{"name":":rhino:","code":"🦏"},{"name":":wilted_rose:","code":"🥀"},{"name":":shrimp:","code":"🦐"},{"name":":squid:","code":"🦑"}],"food":[{"name":":green_apple:","code":"🍏"},{"name":":apple:","code":"🍎"},{"name":":pear:","code":"🍐"},{"name":":tangerine:","code":"🍊"},{"name":":lemon:","code":"🍋"},{"name":":banana:","code":"🍌"},{"name":":watermelon:","code":"🍉"},{"name":":grapes:","code":"🍇"},{"name":":strawberry:","code":"🍓"},{"name":":melon:","code":"🍈"},{"name":":cherries:","code":"🍒"},{"name":":peach:","code":"🍑"},{"name":":pineapple:","code":"🍍"},{"name":":tomato:","code":"🍅"},{"name":":eggplant:","code":"🍆"},{"name":":hot_pepper:","code":"🌶"},{"name":":corn:","code":"🌽"},{"name":":sweet_potato:","code":"🍠"},{"name":":honey_pot:","code":"🍯"},{"name":":bread:","code":"🍞"},{"name":":cheese:","code":"🧀"},{"name":":poultry_leg:","code":"🍗"},{"name":":meat_on_bone:","code":"🍖"},{"name":":fried_shrimp:","code":"🍤"},{"name":":cooking:","code":"🍳"},{"name":":hamburger:","code":"🍔"},{"name":":fries:","code":"🍟"},{"name":":hotdog:","code":"🌭"},{"name":":pizza:","code":"🍕"},{"name":":spaghetti:","code":"🍝"},{"name":":taco:","code":"🌮"},{"name":":burrito:","code":"🌯"},{"name":":ramen:","code":"🍜"},{"name":":stew:","code":"🍲"},{"name":":fish_cake:","code":"🍥"},{"name":":sushi:","code":"🍣"},{"name":":bento:","code":"🍱"},{"name":":curry:","code":"🍛"},{"name":":rice_ball:","code":"🍙"},{"name":":rice:","code":"🍚"},{"name":":rice_cracker:","code":"🍘"},{"name":":oden:","code":"🍢"},{"name":":dango:","code":"🍡"},{"name":":shaved_ice:","code":"🍧"},{"name":":ice_cream:","code":"🍨"},{"name":":icecream:","code":"🍦"},{"name":":cake:","code":"🍰"},{"name":":birthday:","code":"🎂"},{"name":":custard:","code":"🍮"},{"name":":candy:","code":"🍬"},{"name":":lollipop:","code":"🍭"},{"name":":chocolate_bar:","code":"🍫"},{"name":":popcorn:","code":"🍿"},{"name":":doughnut:","code":"🍩"},{"name":":cookie:","code":"🍪"},{"name":":beer:","code":"🍺"},{"name":":beers:","code":"🍻"},{"name":":wine_glass:","code":"🍷"},{"name":":cocktail:","code":"🍸"},{"name":":tropical_drink:","code":"🍹"},{"name":":champagne:","code":"🍾"},{"name":":sake:","code":"🍶"},{"name":":tea:","code":"🍵"},{"name":":coffee:","code":"☕"},{"name":":baby_bottle:","code":"🍼"},{"name":":fork_and_knife:","code":"🍴"},{"name":":fork_knife_plate:","code":"🍽"},{"name":":croissant:","code":"🥐"},{"name":":avocado:","code":"🥑"},{"name":":cucumber:","code":"🥒"},{"name":":bacon:","code":"🥓"},{"name":":potato:","code":"🥔"},{"name":":carrot:","code":"🥕"},{"name":":french_bread:","code":"🥖"},{"name":":salad:","code":"🥗"},{"name":":shallow_pan_of_food:","code":"🥘"},{"name":":stuffed_flatbread:","code":"🥙"},{"name":":champagne_glass:","code":"🥂"},{"name":":tumbler_glass:","code":"🥃"},{"name":":spoon:","code":"🥄"},{"name":":egg:","code":"🥚"},{"name":":milk:","code":"🥛"},{"name":":peanuts:","code":"🥜"},{"name":":kiwi:","code":"🥝"},{"name":":pancakes:","code":"🥞"}],"activity":[{"name":":soccer:","code":"⚽"},{"name":":basketball:","code":"🏀"},{"name":":football:","code":"🏈"},{"name":":baseball:","code":"⚾"},{"name":":tennis:","code":"🎾"},{"name":":volleyball:","code":"🏐"},{"name":":rugby_football:","code":"🏉"},{"name":":8ball:","code":"🎱"},{"name":":golf:","code":"⛳"},{"name":":golfer:","code":"🏌"},{"name":":ping_pong:","code":"🏓"},{"name":":badminton:","code":"🏸"},{"name":":hockey:","code":"🏒"},{"name":":field_hockey:","code":"🏑"},{"name":":cricket:","code":"🏏"},{"name":":ski:","code":"🎿"},{"name":":skier:","code":"⛷"},{"name":":snowboarder:","code":"🏂"},{"name":":ice_skate:","code":"⛸"},{"name":":bow_and_arrow:","code":"🏹"},{"name":":fishing_pole_and_fish:","code":"🎣"},{"name":":rowboat:","code":"🚣"},{"name":":swimmer:","code":"🏊"},{"name":":surfer:","code":"🏄"},{"name":":bath:","code":"🛀"},{"name":":basketball_player:","code":"⛹"},{"name":":lifter:","code":"🏋"},{"name":":bicyclist:","code":"🚴"},{"name":":mountain_bicyclist:","code":"🚵"},{"name":":horse_racing:","code":"🏇"},{"name":":levitate:","code":"🕴"},{"name":":trophy:","code":"🏆"},{"name":":running_shirt_with_sash:","code":"🎽"},{"name":":medal:","code":"🏅"},{"name":":military_medal:","code":"🎖"},{"name":":reminder_ribbon:","code":"🎗"},{"name":":rosette:","code":"🏵"},{"name":":ticket:","code":"🎫"},{"name":":tickets:","code":"🎟"},{"name":":performing_arts:","code":"🎭"},{"name":":art:","code":"🎨"},{"name":":circus_tent:","code":"🎪"},{"name":":microphone:","code":"🎤"},{"name":":headphones:","code":"🎧"},{"name":":musical_score:","code":"🎼"},{"name":":musical_keyboard:","code":"🎹"},{"name":":saxophone:","code":"🎷"},{"name":":trumpet:","code":"🎺"},{"name":":guitar:","code":"🎸"},{"name":":violin:","code":"🎻"},{"name":":clapper:","code":"🎬"},{"name":":video_game:","code":"🎮"},{"name":":space_invader:","code":"👾"},{"name":":dart:","code":"🎯"},{"name":":game_die:","code":"🎲"},{"name":":slot_machine:","code":"🎰"},{"name":":bowling:","code":"🎳"},{"name":":rowboat_tone1:","code":"🚣🏻"},{"name":":rowboat_tone2:","code":"🚣🏼"},{"name":":rowboat_tone3:","code":"🚣🏽"},{"name":":rowboat_tone4:","code":"🚣🏾"},{"name":":rowboat_tone5:","code":"🚣🏿"},{"name":":swimmer_tone1:","code":"🏊🏻"},{"name":":swimmer_tone2:","code":"🏊🏼"},{"name":":swimmer_tone3:","code":"🏊🏽"},{"name":":swimmer_tone4:","code":"🏊🏾"},{"name":":swimmer_tone5:","code":"🏊🏿"},{"name":":surfer_tone1:","code":"🏄🏻"},{"name":":surfer_tone2:","code":"🏄🏼"},{"name":":surfer_tone3:","code":"🏄🏽"},{"name":":surfer_tone4:","code":"🏄🏾"},{"name":":surfer_tone5:","code":"🏄🏿"},{"name":":bath_tone1:","code":"🛀🏻"},{"name":":bath_tone2:","code":"🛀🏼"},{"name":":bath_tone3:","code":"🛀🏽"},{"name":":bath_tone4:","code":"🛀🏾"},{"name":":bath_tone5:","code":"🛀🏿"},{"name":":basketball_player_tone1:","code":"⛹🏻"},{"name":":basketball_player_tone2:","code":"⛹🏼"},{"name":":basketball_player_tone3:","code":"⛹🏽"},{"name":":basketball_player_tone4:","code":"⛹🏾"},{"name":":basketball_player_tone5:","code":"⛹🏿"},{"name":":lifter_tone1:","code":"🏋🏻"},{"name":":lifter_tone2:","code":"🏋🏼"},{"name":":lifter_tone3:","code":"🏋🏽"},{"name":":lifter_tone4:","code":"🏋🏾"},{"name":":lifter_tone5:","code":"🏋🏿"},{"name":":bicyclist_tone1:","code":"🚴🏻"},{"name":":bicyclist_tone2:","code":"🚴🏼"},{"name":":bicyclist_tone3:","code":"🚴🏽"},{"name":":bicyclist_tone4:","code":"🚴🏾"},{"name":":bicyclist_tone5:","code":"🚴🏿"},{"name":":mountain_bicyclist_tone1:","code":"🚵🏻"},{"name":":mountain_bicyclist_tone2:","code":"🚵🏼"},{"name":":mountain_bicyclist_tone3:","code":"🚵🏽"},{"name":":mountain_bicyclist_tone4:","code":"🚵🏾"},{"name":":mountain_bicyclist_tone5:","code":"🚵🏿"},{"name":":horse_racing_tone1:","code":"🏇🏻"},{"name":":horse_racing_tone2:","code":"🏇🏼"},{"name":":horse_racing_tone3:","code":"🏇🏽"},{"name":":horse_racing_tone4:","code":"🏇🏾"},{"name":":horse_racing_tone5:","code":"🏇🏿"},{"name":":man_dancing_tone1:","code":"🕺🏻"},{"name":":man_dancing_tone2:","code":"🕺🏼"},{"name":":man_dancing_tone3:","code":"🕺🏽"},{"name":":man_dancing_tone4:","code":"🕺🏾"},{"name":":man_dancing_tone5:","code":"🕺🏿"},{"name":":cartwheel_tone1:","code":"🤸🏻"},{"name":":cartwheel_tone2:","code":"🤸🏼"},{"name":":cartwheel_tone3:","code":"🤸🏽"},{"name":":cartwheel_tone4:","code":"🤸🏾"},{"name":":cartwheel_tone5:","code":"🤸🏿"},{"name":":wrestlers_tone1:","code":"🤼🏻"},{"name":":wrestlers_tone2:","code":"🤼🏼"},{"name":":wrestlers_tone3:","code":"🤼🏽"},{"name":":wrestlers_tone4:","code":"🤼🏾"},{"name":":wrestlers_tone5:","code":"🤼🏿"},{"name":":water_polo_tone1:","code":"🤽🏻"},{"name":":water_polo_tone2:","code":"🤽🏼"},{"name":":water_polo_tone3:","code":"🤽🏽"},{"name":":water_polo_tone4:","code":"🤽🏾"},{"name":":water_polo_tone5:","code":"🤽🏿"},{"name":":handball_tone1:","code":"🤾🏻"},{"name":":handball_tone2:","code":"🤾🏼"},{"name":":handball_tone3:","code":"🤾🏽"},{"name":":handball_tone4:","code":"🤾🏾"},{"name":":handball_tone5:","code":"🤾🏿"},{"name":":juggling_tone1:","code":"🤹🏻"},{"name":":juggling_tone2:","code":"🤹🏼"},{"name":":juggling_tone3:","code":"🤹🏽"},{"name":":juggling_tone4:","code":"🤹🏾"},{"name":":juggling_tone5:","code":"🤹🏿"},{"name":":cartwheel:","code":"🤸"},{"name":":juggling:","code":"🤹"},{"name":":wrestlers:","code":"🤼"},{"name":":boxing_glove:","code":"🥊"},{"name":":martial_arts_uniform:","code":"🥋"},{"name":":water_polo:","code":"🤽"},{"name":":handball:","code":"🤾"},{"name":":goal:","code":"🥅"},{"name":":fencer:","code":"🤺"},{"name":":first_place:","code":"🥇"},{"name":":second_place:","code":"🥈"},{"name":":third_place:","code":"🥉"},{"name":":drum:","code":"🥁"}],"travel":[{"name":":red_car:","code":"🚗"},{"name":":taxi:","code":"🚕"},{"name":":blue_car:","code":"🚙"},{"name":":bus:","code":"🚌"},{"name":":trolleybus:","code":"🚎"},{"name":":race_car:","code":"🏎"},{"name":":police_car:","code":"🚓"},{"name":":ambulance:","code":"🚑"},{"name":":fire_engine:","code":"🚒"},{"name":":minibus:","code":"🚐"},{"name":":truck:","code":"🚚"},{"name":":articulated_lorry:","code":"🚛"},{"name":":tractor:","code":"🚜"},{"name":":motorcycle:","code":"🏍"},{"name":":bike:","code":"🚲"},{"name":":rotating_light:","code":"🚨"},{"name":":oncoming_police_car:","code":"🚔"},{"name":":oncoming_bus:","code":"🚍"},{"name":":oncoming_automobile:","code":"🚘"},{"name":":oncoming_taxi:","code":"🚖"},{"name":":aerial_tramway:","code":"🚡"},{"name":":mountain_cableway:","code":"🚠"},{"name":":suspension_railway:","code":"🚟"},{"name":":railway_car:","code":"🚃"},{"name":":train:","code":"🚋"},{"name":":monorail:","code":"🚝"},{"name":":bullettrain_side:","code":"🚄"},{"name":":bullettrain_front:","code":"🚅"},{"name":":light_rail:","code":"🚈"},{"name":":mountain_railway:","code":"🚞"},{"name":":steam_locomotive:","code":"🚂"},{"name":":train2:","code":"🚆"},{"name":":metro:","code":"🚇"},{"name":":tram:","code":"🚊"},{"name":":station:","code":"🚉"},{"name":":helicopter:","code":"🚁"},{"name":":airplane_small:","code":"🛩"},{"name":":airplane:","code":"✈"},{"name":":airplane_departure:","code":"🛫"},{"name":":airplane_arriving:","code":"🛬"},{"name":":sailboat:","code":"⛵"},{"name":":motorboat:","code":"🛥"},{"name":":speedboat:","code":"🚤"},{"name":":ferry:","code":"⛴"},{"name":":cruise_ship:","code":"🛳"},{"name":":rocket:","code":"🚀"},{"name":":satellite_orbital:","code":"🛰"},{"name":":seat:","code":"💺"},{"name":":anchor:","code":"⚓"},{"name":":construction:","code":"🚧"},{"name":":fuelpump:","code":"⛽"},{"name":":busstop:","code":"🚏"},{"name":":vertical_traffic_light:","code":"🚦"},{"name":":traffic_light:","code":"🚥"},{"name":":checkered_flag:","code":"🏁"},{"name":":ship:","code":"🚢"},{"name":":ferris_wheel:","code":"🎡"},{"name":":roller_coaster:","code":"🎢"},{"name":":carousel_horse:","code":"🎠"},{"name":":construction_site:","code":"🏗"},{"name":":foggy:","code":"🌁"},{"name":":tokyo_tower:","code":"🗼"},{"name":":factory:","code":"🏭"},{"name":":fountain:","code":"⛲"},{"name":":rice_scene:","code":"🎑"},{"name":":mountain:","code":"⛰"},{"name":":mountain_snow:","code":"🏔"},{"name":":mount_fuji:","code":"🗻"},{"name":":volcano:","code":"🌋"},{"name":":japan:","code":"🗾"},{"name":":camping:","code":"🏕"},{"name":":tent:","code":"⛺"},{"name":":park:","code":"🏞"},{"name":":motorway:","code":"🛣"},{"name":":railway_track:","code":"🛤"},{"name":":sunrise:","code":"🌅"},{"name":":sunrise_over_mountains:","code":"🌄"},{"name":":desert:","code":"🏜"},{"name":":beach:","code":"🏖"},{"name":":island:","code":"🏝"},{"name":":city_sunset:","code":"🌇"},{"name":":city_dusk:","code":"🌆"},{"name":":cityscape:","code":"🏙"},{"name":":night_with_stars:","code":"🌃"},{"name":":bridge_at_night:","code":"🌉"},{"name":":milky_way:","code":"🌌"},{"name":":stars:","code":"🌠"},{"name":":sparkler:","code":"🎇"},{"name":":fireworks:","code":"🎆"},{"name":":rainbow:","code":"🌈"},{"name":":homes:","code":"🏘"},{"name":":european_castle:","code":"🏰"},{"name":":japanese_castle:","code":"🏯"},{"name":":stadium:","code":"🏟"},{"name":":statue_of_liberty:","code":"🗽"},{"name":":house:","code":"🏠"},{"name":":house_with_garden:","code":"🏡"},{"name":":house_abandoned:","code":"🏚"},{"name":":office:","code":"🏢"},{"name":":department_store:","code":"🏬"},{"name":":post_office:","code":"🏣"},{"name":":european_post_office:","code":"🏤"},{"name":":hospital:","code":"🏥"},{"name":":bank:","code":"🏦"},{"name":":hotel:","code":"🏨"},{"name":":convenience_store:","code":"🏪"},{"name":":school:","code":"🏫"},{"name":":love_hotel:","code":"🏩"},{"name":":wedding:","code":"💒"},{"name":":classical_building:","code":"🏛"},{"name":":church:","code":"⛪"},{"name":":mosque:","code":"🕌"},{"name":":synagogue:","code":"🕍"},{"name":":kaaba:","code":"🕋"},{"name":":shinto_shrine:","code":"⛩"},{"name":":scooter:","code":"🛴"},{"name":":motor_scooter:","code":"🛵"},{"name":":canoe:","code":"🛶"}],"objects":[{"name":":watch:","code":"⌚"},{"name":":iphone:","code":"📱"},{"name":":calling:","code":"📲"},{"name":":computer:","code":"💻"},{"name":":keyboard:","code":"⌨"},{"name":":desktop:","code":"🖥"},{"name":":printer:","code":"🖨"},{"name":":mouse_three_button:","code":"🖱"},{"name":":trackball:","code":"🖲"},{"name":":joystick:","code":"🕹"},{"name":":compression:","code":"🗜"},{"name":":minidisc:","code":"💽"},{"name":":floppy_disk:","code":"💾"},{"name":":cd:","code":"💿"},{"name":":dvd:","code":"📀"},{"name":":vhs:","code":"📼"},{"name":":camera:","code":"📷"},{"name":":camera_with_flash:","code":"📸"},{"name":":video_camera:","code":"📹"},{"name":":movie_camera:","code":"🎥"},{"name":":projector:","code":"📽"},{"name":":film_frames:","code":"🎞"},{"name":":telephone_receiver:","code":"📞"},{"name":":telephone:","code":"☎"},{"name":":pager:","code":"📟"},{"name":":fax:","code":"📠"},{"name":":tv:","code":"📺"},{"name":":radio:","code":"📻"},{"name":":microphone2:","code":"🎙"},{"name":":level_slider:","code":"🎚"},{"name":":control_knobs:","code":"🎛"},{"name":":stopwatch:","code":"⏱"},{"name":":timer:","code":"⏲"},{"name":":alarm_clock:","code":"⏰"},{"name":":clock:","code":"🕰"},{"name":":hourglass_flowing_sand:","code":"⏳"},{"name":":hourglass:","code":"⌛"},{"name":":satellite:","code":"📡"},{"name":":battery:","code":"🔋"},{"name":":electric_plug:","code":"🔌"},{"name":":bulb:","code":"💡"},{"name":":flashlight:","code":"🔦"},{"name":":candle:","code":"🕯"},{"name":":wastebasket:","code":"🗑"},{"name":":oil:","code":"🛢"},{"name":":money_with_wings:","code":"💸"},{"name":":dollar:","code":"💵"},{"name":":yen:","code":"💴"},{"name":":euro:","code":"💶"},{"name":":pound:","code":"💷"},{"name":":moneybag:","code":"💰"},{"name":":credit_card:","code":"💳"},{"name":":gem:","code":"💎"},{"name":":scales:","code":"⚖"},{"name":":wrench:","code":"🔧"},{"name":":hammer:","code":"🔨"},{"name":":hammer_pick:","code":"⚒"},{"name":":tools:","code":"🛠"},{"name":":pick:","code":"⛏"},{"name":":nut_and_bolt:","code":"🔩"},{"name":":gear:","code":"⚙"},{"name":":chains:","code":"⛓"},{"name":":gun:","code":"🔫"},{"name":":bomb:","code":"💣"},{"name":":knife:","code":"🔪"},{"name":":dagger:","code":"🗡"},{"name":":crossed_swords:","code":"⚔"},{"name":":shield:","code":"🛡"},{"name":":smoking:","code":"🚬"},{"name":":skull_crossbones:","code":"☠"},{"name":":coffin:","code":"⚰"},{"name":":urn:","code":"⚱"},{"name":":amphora:","code":"🏺"},{"name":":crystal_ball:","code":"🔮"},{"name":":prayer_beads:","code":"📿"},{"name":":barber:","code":"💈"},{"name":":alembic:","code":"⚗"},{"name":":telescope:","code":"🔭"},{"name":":microscope:","code":"🔬"},{"name":":hole:","code":"🕳"},{"name":":pill:","code":"💊"},{"name":":syringe:","code":"💉"},{"name":":thermometer:","code":"🌡"},{"name":":label:","code":"🏷"},{"name":":bookmark:","code":"🔖"},{"name":":toilet:","code":"🚽"},{"name":":shower:","code":"🚿"},{"name":":bathtub:","code":"🛁"},{"name":":key:","code":"🔑"},{"name":":key2:","code":"🗝"},{"name":":couch:","code":"🛋"},{"name":":sleeping_accommodation:","code":"🛌"},{"name":":bed:","code":"🛏"},{"name":":door:","code":"🚪"},{"name":":bellhop:","code":"🛎"},{"name":":frame_photo:","code":"🖼"},{"name":":map:","code":"🗺"},{"name":":beach_umbrella:","code":"⛱"},{"name":":moyai:","code":"🗿"},{"name":":shopping_bags:","code":"🛍"},{"name":":balloon:","code":"🎈"},{"name":":flags:","code":"🎏"},{"name":":ribbon:","code":"🎀"},{"name":":gift:","code":"🎁"},{"name":":confetti_ball:","code":"🎊"},{"name":":tada:","code":"🎉"},{"name":":dolls:","code":"🎎"},{"name":":wind_chime:","code":"🎐"},{"name":":crossed_flags:","code":"🎌"},{"name":":izakaya_lantern:","code":"🏮"},{"name":":envelope:","code":"✉"},{"name":":envelope_with_arrow:","code":"📩"},{"name":":incoming_envelope:","code":"📨"},{"name":":e-mail:","code":"📧"},{"name":":love_letter:","code":"💌"},{"name":":postbox:","code":"📮"},{"name":":mailbox_closed:","code":"📪"},{"name":":mailbox:","code":"📫"},{"name":":mailbox_with_mail:","code":"📬"},{"name":":mailbox_with_no_mail:","code":"📭"},{"name":":package:","code":"📦"},{"name":":postal_horn:","code":"📯"},{"name":":inbox_tray:","code":"📥"},{"name":":outbox_tray:","code":"📤"},{"name":":scroll:","code":"📜"},{"name":":page_with_curl:","code":"📃"},{"name":":bookmark_tabs:","code":"📑"},{"name":":bar_chart:","code":"📊"},{"name":":chart_with_upwards_trend:","code":"📈"},{"name":":chart_with_downwards_trend:","code":"📉"},{"name":":page_facing_up:","code":"📄"},{"name":":date:","code":"📅"},{"name":":calendar:","code":"📆"},{"name":":calendar_spiral:","code":"🗓"},{"name":":card_index:","code":"📇"},{"name":":card_box:","code":"🗃"},{"name":":ballot_box:","code":"🗳"},{"name":":file_cabinet:","code":"🗄"},{"name":":clipboard:","code":"📋"},{"name":":notepad_spiral:","code":"🗒"},{"name":":file_folder:","code":"📁"},{"name":":open_file_folder:","code":"📂"},{"name":":dividers:","code":"🗂"},{"name":":newspaper2:","code":"🗞"},{"name":":newspaper:","code":"📰"},{"name":":notebook:","code":"📓"},{"name":":closed_book:","code":"📕"},{"name":":green_book:","code":"📗"},{"name":":blue_book:","code":"📘"},{"name":":orange_book:","code":"📙"},{"name":":notebook_with_decorative_cover:","code":"📔"},{"name":":ledger:","code":"📒"},{"name":":books:","code":"📚"},{"name":":book:","code":"📖"},{"name":":link:","code":"🔗"},{"name":":paperclip:","code":"📎"},{"name":":paperclips:","code":"🖇"},{"name":":scissors:","code":"✂"},{"name":":triangular_ruler:","code":"📐"},{"name":":straight_ruler:","code":"📏"},{"name":":pushpin:","code":"📌"},{"name":":round_pushpin:","code":"📍"},{"name":":triangular_flag_on_post:","code":"🚩"},{"name":":flag_white:","code":"🏳"},{"name":":flag_black:","code":"🏴"},{"name":":closed_lock_with_key:","code":"🔐"},{"name":":lock:","code":"🔒"},{"name":":unlock:","code":"🔓"},{"name":":lock_with_ink_pen:","code":"🔏"},{"name":":pen_ballpoint:","code":"🖊"},{"name":":pen_fountain:","code":"🖋"},{"name":":black_nib:","code":"✒"},{"name":":pencil:","code":"📝"},{"name":":pencil2:","code":"✏"},{"name":":crayon:","code":"🖍"},{"name":":paintbrush:","code":"🖌"},{"name":":mag:","code":"🔍"},{"name":":mag_right:","code":"🔎"},{"name":":shopping_cart:","code":"🛒"}],"flags":[{"name":":flag_ac:","code":"🇦🇨"},{"name":":flag_af:","code":"🇦🇫"},{"name":":flag_al:","code":"🇦🇱"},{"name":":flag_dz:","code":"🇩🇿"},{"name":":flag_ad:","code":"🇦🇩"},{"name":":flag_ao:","code":"🇦🇴"},{"name":":flag_ai:","code":"🇦🇮"},{"name":":flag_ag:","code":"🇦🇬"},{"name":":flag_ar:","code":"🇦🇷"},{"name":":flag_am:","code":"🇦🇲"},{"name":":flag_aw:","code":"🇦🇼"},{"name":":flag_au:","code":"🇦🇺"},{"name":":flag_at:","code":"🇦🇹"},{"name":":flag_az:","code":"🇦🇿"},{"name":":flag_bs:","code":"🇧🇸"},{"name":":flag_bh:","code":"🇧🇭"},{"name":":flag_bd:","code":"🇧🇩"},{"name":":flag_bb:","code":"🇧🇧"},{"name":":flag_by:","code":"🇧🇾"},{"name":":flag_be:","code":"🇧🇪"},{"name":":flag_bz:","code":"🇧🇿"},{"name":":flag_bj:","code":"🇧🇯"},{"name":":flag_bm:","code":"🇧🇲"},{"name":":flag_bt:","code":"🇧🇹"},{"name":":flag_bo:","code":"🇧🇴"},{"name":":flag_ba:","code":"🇧🇦"},{"name":":flag_bw:","code":"🇧🇼"},{"name":":flag_br:","code":"🇧🇷"},{"name":":flag_bn:","code":"🇧🇳"},{"name":":flag_bg:","code":"🇧🇬"},{"name":":flag_bf:","code":"🇧🇫"},{"name":":flag_bi:","code":"🇧🇮"},{"name":":flag_cv:","code":"🇨🇻"},{"name":":flag_kh:","code":"🇰🇭"},{"name":":flag_cm:","code":"🇨🇲"},{"name":":flag_ca:","code":"🇨🇦"},{"name":":flag_ky:","code":"🇰🇾"},{"name":":flag_cf:","code":"🇨🇫"},{"name":":flag_td:","code":"🇹🇩"},{"name":":flag_cl:","code":"🇨🇱"},{"name":":flag_cn:","code":"🇨🇳"},{"name":":flag_co:","code":"🇨🇴"},{"name":":flag_km:","code":"🇰🇲"},{"name":":flag_cg:","code":"🇨🇬"},{"name":":flag_cd:","code":"🇨🇩"},{"name":":flag_cr:","code":"🇨🇷"},{"name":":flag_hr:","code":"🇭🇷"},{"name":":flag_cu:","code":"🇨🇺"},{"name":":flag_cy:","code":"🇨🇾"},{"name":":flag_cz:","code":"🇨🇿"},{"name":":flag_dk:","code":"🇩🇰"},{"name":":flag_dj:","code":"🇩🇯"},{"name":":flag_dm:","code":"🇩🇲"},{"name":":flag_do:","code":"🇩🇴"},{"name":":flag_ec:","code":"🇪🇨"},{"name":":flag_eg:","code":"🇪🇬"},{"name":":flag_sv:","code":"🇸🇻"},{"name":":flag_gq:","code":"🇬🇶"},{"name":":flag_er:","code":"🇪🇷"},{"name":":flag_ee:","code":"🇪🇪"},{"name":":flag_et:","code":"🇪🇹"},{"name":":flag_fk:","code":"🇫🇰"},{"name":":flag_fo:","code":"🇫🇴"},{"name":":flag_fj:","code":"🇫🇯"},{"name":":flag_fi:","code":"🇫🇮"},{"name":":flag_fr:","code":"🇫🇷"},{"name":":flag_pf:","code":"🇵🇫"},{"name":":flag_ga:","code":"🇬🇦"},{"name":":flag_gm:","code":"🇬🇲"},{"name":":flag_ge:","code":"🇬🇪"},{"name":":flag_de:","code":"🇩🇪"},{"name":":flag_gh:","code":"🇬🇭"},{"name":":flag_gi:","code":"🇬🇮"},{"name":":flag_gr:","code":"🇬🇷"},{"name":":flag_gl:","code":"🇬🇱"},{"name":":flag_gd:","code":"🇬🇩"},{"name":":flag_gu:","code":"🇬🇺"},{"name":":flag_gt:","code":"🇬🇹"},{"name":":flag_gn:","code":"🇬🇳"},{"name":":flag_gw:","code":"🇬🇼"},{"name":":flag_gy:","code":"🇬🇾"},{"name":":flag_ht:","code":"🇭🇹"},{"name":":flag_hn:","code":"🇭🇳"},{"name":":flag_hk:","code":"🇭🇰"},{"name":":flag_hu:","code":"🇭🇺"},{"name":":flag_is:","code":"🇮🇸"},{"name":":flag_in:","code":"🇮🇳"},{"name":":flag_id:","code":"🇮🇩"},{"name":":flag_ir:","code":"🇮🇷"},{"name":":flag_iq:","code":"🇮🇶"},{"name":":flag_ie:","code":"🇮🇪"},{"name":":flag_il:","code":"🇮🇱"},{"name":":flag_it:","code":"🇮🇹"},{"name":":flag_ci:","code":"🇨🇮"},{"name":":flag_jm:","code":"🇯🇲"},{"name":":flag_jp:","code":"🇯🇵"},{"name":":flag_je:","code":"🇯🇪"},{"name":":flag_jo:","code":"🇯🇴"},{"name":":flag_kz:","code":"🇰🇿"},{"name":":flag_ke:","code":"🇰🇪"},{"name":":flag_ki:","code":"🇰🇮"},{"name":":flag_xk:","code":"🇽🇰"},{"name":":flag_kw:","code":"🇰🇼"},{"name":":flag_kg:","code":"🇰🇬"},{"name":":flag_la:","code":"🇱🇦"},{"name":":flag_lv:","code":"🇱🇻"},{"name":":flag_lb:","code":"🇱🇧"},{"name":":flag_ls:","code":"🇱🇸"},{"name":":flag_lr:","code":"🇱🇷"},{"name":":flag_ly:","code":"🇱🇾"},{"name":":flag_li:","code":"🇱🇮"},{"name":":flag_lt:","code":"🇱🇹"},{"name":":flag_lu:","code":"🇱🇺"},{"name":":flag_mo:","code":"🇲🇴"},{"name":":flag_mk:","code":"🇲🇰"},{"name":":flag_mg:","code":"🇲🇬"},{"name":":flag_mw:","code":"🇲🇼"},{"name":":flag_my:","code":"🇲🇾"},{"name":":flag_mv:","code":"🇲🇻"},{"name":":flag_ml:","code":"🇲🇱"},{"name":":flag_mt:","code":"🇲🇹"},{"name":":flag_mh:","code":"🇲🇭"},{"name":":flag_mr:","code":"🇲🇷"},{"name":":flag_mu:","code":"🇲🇺"},{"name":":flag_mx:","code":"🇲🇽"},{"name":":flag_fm:","code":"🇫🇲"},{"name":":flag_md:","code":"🇲🇩"},{"name":":flag_mc:","code":"🇲🇨"},{"name":":flag_mn:","code":"🇲🇳"},{"name":":flag_me:","code":"🇲🇪"},{"name":":flag_ms:","code":"🇲🇸"},{"name":":flag_ma:","code":"🇲🇦"},{"name":":flag_mz:","code":"🇲🇿"},{"name":":flag_mm:","code":"🇲🇲"},{"name":":flag_na:","code":"🇳🇦"},{"name":":flag_nr:","code":"🇳🇷"},{"name":":flag_np:","code":"🇳🇵"},{"name":":flag_nl:","code":"🇳🇱"},{"name":":flag_nc:","code":"🇳🇨"},{"name":":flag_nz:","code":"🇳🇿"},{"name":":flag_ni:","code":"🇳🇮"},{"name":":flag_ne:","code":"🇳🇪"},{"name":":flag_ng:","code":"🇳🇬"},{"name":":flag_nu:","code":"🇳🇺"},{"name":":flag_kp:","code":"🇰🇵"},{"name":":flag_no:","code":"🇳🇴"},{"name":":flag_om:","code":"🇴🇲"},{"name":":flag_pk:","code":"🇵🇰"},{"name":":flag_pw:","code":"🇵🇼"},{"name":":flag_ps:","code":"🇵🇸"},{"name":":flag_pa:","code":"🇵🇦"},{"name":":flag_pg:","code":"🇵🇬"},{"name":":flag_py:","code":"🇵🇾"},{"name":":flag_pe:","code":"🇵🇪"},{"name":":flag_ph:","code":"🇵🇭"},{"name":":flag_pl:","code":"🇵🇱"},{"name":":flag_pt:","code":"🇵🇹"},{"name":":flag_pr:","code":"🇵🇷"},{"name":":flag_qa:","code":"🇶🇦"},{"name":":flag_ro:","code":"🇷🇴"},{"name":":flag_ru:","code":"🇷🇺"},{"name":":flag_rw:","code":"🇷🇼"},{"name":":flag_sh:","code":"🇸🇭"},{"name":":flag_kn:","code":"🇰🇳"},{"name":":flag_lc:","code":"🇱🇨"},{"name":":flag_vc:","code":"🇻🇨"},{"name":":flag_ws:","code":"🇼🇸"},{"name":":flag_sm:","code":"🇸🇲"},{"name":":flag_st:","code":"🇸🇹"},{"name":":flag_sa:","code":"🇸🇦"},{"name":":flag_sn:","code":"🇸🇳"},{"name":":flag_rs:","code":"🇷🇸"},{"name":":flag_sc:","code":"🇸🇨"},{"name":":flag_sl:","code":"🇸🇱"},{"name":":flag_sg:","code":"🇸🇬"},{"name":":flag_sk:","code":"🇸🇰"},{"name":":flag_si:","code":"🇸🇮"},{"name":":flag_sb:","code":"🇸🇧"},{"name":":flag_so:","code":"🇸🇴"},{"name":":flag_za:","code":"🇿🇦"},{"name":":flag_kr:","code":"🇰🇷"},{"name":":flag_es:","code":"🇪🇸"},{"name":":flag_lk:","code":"🇱🇰"},{"name":":flag_sd:","code":"🇸🇩"},{"name":":flag_sr:","code":"🇸🇷"},{"name":":flag_sz:","code":"🇸🇿"},{"name":":flag_se:","code":"🇸🇪"},{"name":":flag_ch:","code":"🇨🇭"},{"name":":flag_sy:","code":"🇸🇾"},{"name":":flag_tw:","code":"🇹🇼"},{"name":":flag_tj:","code":"🇹🇯"},{"name":":flag_tz:","code":"🇹🇿"},{"name":":flag_th:","code":"🇹🇭"},{"name":":flag_tl:","code":"🇹🇱"},{"name":":flag_tg:","code":"🇹🇬"},{"name":":flag_to:","code":"🇹🇴"},{"name":":flag_tt:","code":"🇹🇹"},{"name":":flag_tn:","code":"🇹🇳"},{"name":":flag_tr:","code":"🇹🇷"},{"name":":flag_tm:","code":"🇹🇲"},{"name":":flag_tv:","code":"🇹🇻"},{"name":":flag_ug:","code":"🇺🇬"},{"name":":flag_ua:","code":"🇺🇦"},{"name":":flag_ae:","code":"🇦🇪"},{"name":":flag_gb:","code":"🇬🇧"},{"name":":flag_us:","code":"🇺🇸"},{"name":":flag_vi:","code":"🇻🇮"},{"name":":flag_uy:","code":"🇺🇾"},{"name":":flag_uz:","code":"🇺🇿"},{"name":":flag_vu:","code":"🇻🇺"},{"name":":flag_va:","code":"🇻🇦"},{"name":":flag_ve:","code":"🇻🇪"},{"name":":flag_vn:","code":"🇻🇳"},{"name":":flag_wf:","code":"🇼🇫"},{"name":":flag_eh:","code":"🇪🇭"},{"name":":flag_ye:","code":"🇾🇪"},{"name":":flag_zm:","code":"🇿🇲"},{"name":":flag_zw:","code":"🇿🇼"},{"name":":flag_re:","code":"🇷🇪"},{"name":":flag_ax:","code":"🇦🇽"},{"name":":flag_ta:","code":"🇹🇦"},{"name":":flag_io:","code":"🇮🇴"},{"name":":flag_bq:","code":"🇧🇶"},{"name":":flag_cx:","code":"🇨🇽"},{"name":":flag_cc:","code":"🇨🇨"},{"name":":flag_gg:","code":"🇬🇬"},{"name":":flag_im:","code":"🇮🇲"},{"name":":flag_yt:","code":"🇾🇹"},{"name":":flag_nf:","code":"🇳🇫"},{"name":":flag_pn:","code":"🇵🇳"},{"name":":flag_bl:","code":"🇧🇱"},{"name":":flag_pm:","code":"🇵🇲"},{"name":":flag_gs:","code":"🇬🇸"},{"name":":flag_tk:","code":"🇹🇰"},{"name":":flag_bv:","code":"🇧🇻"},{"name":":flag_hm:","code":"🇭🇲"},{"name":":flag_sj:","code":"🇸🇯"},{"name":":flag_um:","code":"🇺🇲"},{"name":":flag_ic:","code":"🇮🇨"},{"name":":flag_ea:","code":"🇪🇦"},{"name":":flag_cp:","code":"🇨🇵"},{"name":":flag_dg:","code":"🇩🇬"},{"name":":flag_as:","code":"🇦🇸"},{"name":":flag_aq:","code":"🇦🇶"},{"name":":flag_vg:","code":"🇻🇬"},{"name":":flag_ck:","code":"🇨🇰"},{"name":":flag_cw:","code":"🇨🇼"},{"name":":flag_eu:","code":"🇪🇺"},{"name":":flag_gf:","code":"🇬🇫"},{"name":":flag_tf:","code":"🇹🇫"},{"name":":flag_gp:","code":"🇬🇵"},{"name":":flag_mq:","code":"🇲🇶"},{"name":":flag_mp:","code":"🇲🇵"},{"name":":flag_sx:","code":"🇸🇽"},{"name":":flag_ss:","code":"🇸🇸"},{"name":":flag_tc:","code":"🇹🇨"},{"name":":flag_mf:","code":"🇲🇫"}],"extras":[{"name":":gay_pride_flag:","code":"🏳🌈"}],"regional":[{"name":":regional_indicator_z:","code":"🇿"},{"name":":regional_indicator_y:","code":"🇾"},{"name":":regional_indicator_x:","code":"🇽"},{"name":":regional_indicator_w:","code":"🇼"},{"name":":regional_indicator_v:","code":"🇻"},{"name":":regional_indicator_u:","code":"🇺"},{"name":":regional_indicator_t:","code":"🇹"},{"name":":regional_indicator_s:","code":"🇸"},{"name":":regional_indicator_r:","code":"🇷"},{"name":":regional_indicator_q:","code":"🇶"},{"name":":regional_indicator_p:","code":"🇵"},{"name":":regional_indicator_o:","code":"🇴"},{"name":":regional_indicator_n:","code":"🇳"},{"name":":regional_indicator_m:","code":"🇲"},{"name":":regional_indicator_l:","code":"🇱"},{"name":":regional_indicator_k:","code":"🇰"},{"name":":regional_indicator_j:","code":"🇯"},{"name":":regional_indicator_i:","code":"🇮"},{"name":":regional_indicator_h:","code":"🇭"},{"name":":regional_indicator_g:","code":"🇬"},{"name":":regional_indicator_f:","code":"🇫"},{"name":":regional_indicator_e:","code":"🇪"},{"name":":regional_indicator_d:","code":"🇩"},{"name":":regional_indicator_c:","code":"🇨"},{"name":":regional_indicator_b:","code":"🇧"},{"name":":regional_indicator_a:","code":"🇦"}]}
\ No newline at end of file
diff --git a/src/emojipicker/emoji.txt b/src/emojipicker/emoji.txt
deleted file mode 100644
index c01a285..0000000
--- a/src/emojipicker/emoji.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/src/emojipicker/package.json b/src/emojipicker/package.json
deleted file mode 100644
index 48cc225..0000000
--- a/src/emojipicker/package.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "name": "emojipicker",
- "description": "ใช้ 💌 Emoji Picker",
- "description2": "การสนับสนุน Emoji ขึ้นอยู่กับ OS ผู้อ่าน",
- "category": "Chat",
- "private": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/streams/*", "http://mylive.in.th/chat/*"],
- "js": ["content_script.js"],
- "css": ["content_script.css"],
- "run_at": "document_end",
- "stop_angular": true
- }
- ]
-}
diff --git a/src/emotedisplay/content_script.js b/src/emotedisplay/content_script.js
deleted file mode 100644
index f22b916..0000000
--- a/src/emotedisplay/content_script.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import $ from 'jquery';
-import ChatObserver from 'core/chatobserver';
-import plugin from 'core/plugin';
-import emoteList, {EMOTE_BASE} from 'core/emotelist';
-
-class EmoteDisplay extends ChatObserver{
- static emotes = {};
-
- constructor(){
- super();
- this.loadEmotes();
- }
-
- async loadEmotes(){
- let emotes = await emoteList();
- for(let emote of emotes){
- EmoteDisplay.emotes[EMOTE_BASE.replace('{}', emote.d)] = emote.t;
- }
- }
-
- processChatNode(node){
- $('.emo,.emot', node).each(function(){
- let code = EmoteDisplay.emotes[this.getAttribute('src')];
- let wrapper = $('
')
- .attr('data-code', code);
- $(this).wrap(wrapper);
-
- $('
').text(code)
- .appendTo(this.parentNode);
- });
- }
-}
-
-plugin('emotedisplay', () => {
- new EmoteDisplay();
-});
diff --git a/src/emotedisplay/content_script.scss b/src/emotedisplay/content_script.scss
deleted file mode 100644
index c37a310..0000000
--- a/src/emotedisplay/content_script.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-.enh__emotedisplay{
- position: relative;
- display: inline-block;
-
- &:hover::after{
- display: block;
- content: attr(data-code);
- background: #000;
- border-radius: 4px;
- color: white;
- padding: 3px 8px;
- font-size: 9pt;
- position: absolute;
- top: 28px;
- left: 0px;
- z-index: 10000;
- white-space: nowrap;
- }
-
- & span{
- font-size: 0;
- color: transparent;
- }
-}
diff --git a/src/emotedisplay/package.json b/src/emotedisplay/package.json
deleted file mode 100644
index 6b3f466..0000000
--- a/src/emotedisplay/package.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "emotedisplay",
- "description": "แสดงโค้ด emoticon เมื่อชี้",
- "category": "Chat",
- "default_enabled": true,
- "private": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/streams/*", "http://mylive.in.th/chat/*"],
- "js": ["content_script.js"],
- "css": ["content_script.css"],
- "run_at": "document_end"
- }
- ]
-}
diff --git a/src/emotepack/background.js b/src/emotepack/background.js
deleted file mode 100644
index fe25373..0000000
--- a/src/emotepack/background.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import database from './database';
-
-chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
- if(!request.emotepack){
- return;
- }
-
- switch(request.emotepack){
- case 'getPacks':
- database().then((database) => {
- let tx = database.transaction(['emotes']);
-
- let rq = tx.objectStore('emotes').getAll();
- rq.onsuccess = (e) => {
- sendResponse(e.target.result);
- };
- });
- return true;
- case 'getEmote':
- database().then((database) => {
- let tx = database.transaction(['emotesFile']);
-
- let rq = tx.objectStore('emotesFile').get(request.id);
- rq.onsuccess = (e) => {
- let reader = new FileReader();
- reader.onload = (e) => {
- sendResponse(e.target.result);
- };
- reader.readAsDataURL(e.target.result);
- };
- });
- return true;
- default:
- console.error('Unknown background page request for emotepack');
- }
-});
diff --git a/src/emotepack/content_script.js b/src/emotepack/content_script.js
deleted file mode 100644
index f7b75cd..0000000
--- a/src/emotepack/content_script.js
+++ /dev/null
@@ -1,146 +0,0 @@
-import $ from 'jquery';
-import plugin from 'core/plugin';
-import ChatObserver from 'core/chatobserver';
-import NicoObserver from 'core/nicoobserver';
-import Settings from 'settings';
-
-class Replacer{
- constructor(emotes){
- this.emotes = emotes;
- }
-
- processChatNode(node){
- for(let i = 0; i < node.childNodes.length; i++){
- let child = node.childNodes[i];
- if(!(child instanceof Text)){
- continue;
- }
- let emote = this.findFirstEmote(child.data);
- if(!emote){
- continue;
- }
-
- this.replaceEmote(node, child, emote);
- }
- }
-
- findFirstEmote(str){
- const BEGINNING = -2;
-
- let keys = Object.keys(this.emotes);
- let firstEmote = keys.map((key) => {
- let index;
- if(str.startsWith(`${key} `) || str === key){
- // only happen in nicochat
- index = BEGINNING;
- }else{
- index = str.indexOf(` ${key} `);
- }
-
- if(index === -1 && str.endsWith(` ${key}`)){
- index = str.length - key.length - 1;
- }
-
- return [key, index];
- })
- .filter(x => x[1] !== -1)
- .reduce((a, b) => {
- return a[1] < b[1] ? a : b;
- }, [null, Number.MAX_VALUE]);
-
- if(firstEmote[0] === null){
- return null;
- }
-
- // omit the beginning space
- if(firstEmote[1] === BEGINNING){
- firstEmote[1] = 0;
- }else{
- firstEmote[1] += 1;
- }
-
- return firstEmote;
- }
-
- replaceEmote(parent, node, emote){
- let emoteNode = node.splitText(emote[1]);
- try{
- emoteNode.splitText(emote[0].length); // after emote
- }catch(e){
- // if emote is last of the line the split will fail
- }
-
- let emoteData = this.emotes[emote[0]];
-
- let replacement = $('
')
- .attr('data-code', emote[0]);
-
- replacement.find('span').text(emote[0]);
-
- if(typeof emoteData == 'number'){
- getEmoteUrl(emoteData).then((url) => {
- this.emotes[emote[0]] = url;
- replacement.find('img')
- .attr('src', url);
- });
- }else{
- replacement.find('img')
- .attr('src', emoteData);
- }
-
- parent.replaceChild(replacement.get(0), emoteNode);
- }
-}
-
-class EmotePackReplacer extends ChatObserver{
- constructor(replacer){
- super();
- this.replacer = replacer;
- }
- processChatNode(node){
- let message = $(node).find('span[ng-bind-html^="log.d"]');
- let messageNode = message.get(0);
- this.replacer.processChatNode(messageNode);
- }
-}
-
-class EmotePackNicoReplacer extends NicoObserver{
- constructor(replacer){
- super();
- this.replacer = replacer;
- }
- processChatNode(node){
- this.replacer.processChatNode(node);
- }
-}
-
-let getEmoteUrl = (id) => {
- return new Promise((resolve, reject) => {
- chrome.runtime.sendMessage({emotepack: 'getEmote', id: id}, (data) => {
- resolve(data);
- });
- });
-};
-
-let getPacks = () => {
- return new Promise((resolve, reject) => {
- chrome.runtime.sendMessage({emotepack: 'getPacks'}, (list) => {
- resolve(list);
- });
- });
-};
-
-let loadEmotePack = async function(){
- let list = await getPacks();
- let settings = await Settings.get();
-
- for(let item of list){
- let replacer = new Replacer(item.emotes);
- new EmotePackReplacer(replacer);
- if(settings.emotepackNico){
- new EmotePackNicoReplacer(replacer);
- }
- }
-};
-
-plugin('emotepack', loadEmotePack);
diff --git a/src/emotepack/database.js b/src/emotepack/database.js
deleted file mode 100644
index b7aa112..0000000
--- a/src/emotepack/database.js
+++ /dev/null
@@ -1,18 +0,0 @@
-export default () => {
- return new Promise((resolve, reject) => {
- let db = indexedDB.open('emotes', 1);
- db.onupgradeneeded = (e) => {
- let db = e.target.result;
- db.createObjectStore('emotes', {keyPath: 'name'});
- db.createObjectStore('emotesFile', {
- autoIncrement: true,
- });
- };
- db.onsuccess = (e) => {
- resolve(db.result);
- };
- db.onerror = (e) => {
- reject(e);
- };
- });
-};
diff --git a/src/emotepack/emoteloader.js b/src/emotepack/emoteloader.js
deleted file mode 100644
index 2344f06..0000000
--- a/src/emotepack/emoteloader.js
+++ /dev/null
@@ -1,115 +0,0 @@
-import JSZip from 'jszip';
-import database from './database';
-
-const MANIFEST = 'set.json';
-
-export default class EmoteLoader{
- constructor(file){
- this.file = file;
- }
-
- load(){
- return new Promise((resolve, reject) => {
- this.reader = new FileReader();
- this.reader.onload = (e) => {
- try{
- resolve(this.loadFromZip(e.target.result));
- }catch(err){
- reject(err);
- }
- };
- this.reader.readAsArrayBuffer(this.file);
- });
- }
-
- async loadFromZip(blob){
- this.zip = await JSZip.loadAsync(blob);
- this.zip = this.findZipRoot();
- await this.loadManifest();
- return this.copyFiles();
- }
-
- findZipRoot(){
- let fileList = this.zip.file(/^[^\/]+$/);
- if(fileList.length > 0){
- return this.zip;
- }
-
- let rootFolders = this.zip.folder(/[^\/]+\/$/);
- if(rootFolders.length === 0){
- throw new Error('zip has no object');
- }else if(rootFolders.length > 1){
- throw new Error('zip has multiple root object');
- }
-
- console.log('Found zip root at', rootFolders[0].name);
-
- return this.zip.folder(rootFolders[0].name);
- }
-
- async loadManifest(){
- let file = this.zip.file(MANIFEST);
- if(!file){
- throw new Error('manifest file not found!');
- }
- this.manifest = JSON.parse(await file.async('string'));
- if(!this.manifest.name){
- throw new Error('set name not defined');
- }
- }
-
- async copyFiles(){
- let db = await database();
-
- let emotePromise = [];
- for(let emote in this.manifest.emotes){
- let fileName = this.manifest.emotes[emote];
- let file = this.zip.file(fileName);
- if(!file){
- console.warn('cannot find emote file ', fileName);
- delete this.manifest.emotes[emote];
- continue;
- }
-
- let promise = file.async('arraybuffer').then(((emote, buffer) => {
- let blob = new Blob([buffer]);
-
- return new Promise((resolve, reject) => {
- let tx = db.transaction(['emotesFile'], 'readwrite');
- let request = tx.objectStore('emotesFile').add(blob);
- request.onsuccess = (e) => {
- // save the id
- this.manifest.emotes[emote] = e.target.result;
- resolve(e.target.result);
- };
- request.onerror = reject;
- });
- }).bind(this, emote));
-
- emotePromise.push(promise);
- }
-
- await Promise.all(emotePromise);
-
- await new Promise((resolve, reject) => {
- let tx = db.transaction(['emotes'], 'readwrite');
- let request = tx.objectStore('emotes').add(this.manifest);
- request.onsuccess = resolve;
- request.onerror = reject;
- });
- console.log('Loaded emotes', this.manifest);
- }
-}
-
-self.onmessage = function(msg){
- new EmoteLoader(msg.data).load().then(() => {
- postMessage(null);
- }, (e) => {
- console.error(e);
- if(e instanceof Error){
- postMessage(e.toString());
- }else{
- postMessage('Cannot load file. Is the same pack already installed?');
- }
- });
-};
diff --git a/src/emotepack/emotesettings.js b/src/emotepack/emotesettings.js
deleted file mode 100644
index b97cbbb..0000000
--- a/src/emotepack/emotesettings.js
+++ /dev/null
@@ -1,128 +0,0 @@
-import $ from 'jquery';
-import database from './database';
-import EmoteLoader from 'worker?name=emoteloader.js!./emoteloader';
-
-export default class EmoteSettings{
- constructor(target){
- this.target = $(target);
- this.renderEmotes();
- }
-
- renderEmotes(){
- let self = this;
- let emote = $(`
-
-
-
-
-`)
- .on('change', (e) => {
- if(e.target.files.length === 0){
- return;
- }
-
- emote.find('button').prop('disabled', true);
-
- let file = e.target.files[0];
- if(!this.emoteWorker){
- this.emoteWorker = new EmoteLoader();
- this.emoteWorker.onmessage = async function(msg){
- if(msg.data){
- alert(msg.data);
- }
- await self.refreshEmote();
- emote.find('button').prop('disabled', false);
- };
- }
- this.emoteWorker.postMessage(file);
- })
- .appendTo(this.target);
-
- this.emoteList = $('
')
- .appendTo(this.target);
- this.refreshEmote();
- }
-
- async refreshEmote(){
- this.emoteList.empty();
- let loading = $('
Loading emotes...
')
- .appendTo(this.emoteList);
-
- let self = this;
- let db = await database();
- let tx = db.transaction(['emotes', 'emotesFile']);
-
- let request = tx.objectStore('emotes').getAll();
- request.onsuccess = (e) => {
- let list = e.target.result;
- for(let item of list){
- let head = $('
')
- .text(item.name)
- .appendTo(this.emoteList);
-
- let status = $('
-')
- .prependTo(head);
-
- $('
')
- .click(async function(e){
- e.stopPropagation();
- if(!confirm(`Delete ${item.name}?`)){
- return false;
- }
- await self.removeEmotePack(item.name);
- self.refreshEmote();
- })
- .appendTo(head);
-
- let body = $('
');
- head.click((e) => {
- body.toggle();
- if(body.is(':visible')){
- status.text('-');
- }else{
- status.text('+');
- }
- });
-
- for(let emote in item.emotes){
- let row = $('
')
- .appendTo(body);
-
- $('
')
- .text(emote)
- .appendTo(row);
-
- let request = tx.objectStore('emotesFile')
- .get(item.emotes[emote]);
- request.onsuccess = (e) => {
- let url = window.URL.createObjectURL(e.target.result);
- $('
').attr('src', url).prependTo(row);
- };
- }
-
- body.appendTo(this.emoteList);
- }
-
- loading.remove();
- };
- }
-
- async removeEmotePack(name){
- let db = await database();
- return new Promise((resolve, reject) => {
- let tx = db.transaction(['emotes', 'emotesFile'], 'readwrite');
- let store = tx.objectStore('emotes');
-
- let request = store.get(name);
- request.onsuccess = (e) => {
- let item = e.target.result;
- for(let emote in item.emotes){
- tx.objectStore('emotesFile').delete(item.emotes[emote]);
- }
-
- let request = store.delete(name);
- request.onsuccess = resolve;
- };
- });
- }
-}
diff --git a/src/emotepack/package.json b/src/emotepack/package.json
deleted file mode 100644
index 4c391fb..0000000
--- a/src/emotepack/package.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "name": "emotepack",
- "description": "ใช้ Emote pack",
- "category": "Chat",
- "default_enabled": true,
- "private": true,
- "background": ["background.js"],
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/streams/*", "http://mylive.in.th/chat/*"],
- "js": ["content_script.js"],
- "run_at": "document_end"
- }
- ],
- "permissions": ["unlimitedStorage"],
- "settings": {
- "emotepackNico": {
- "default": true,
- "type": "boolean",
- "label": "แสดง Emote pack ในตัววิ่ง"
- }
- }
-}
diff --git a/src/indextags/content_script.js b/src/indextags/content_script.js
deleted file mode 100644
index b2a973e..0000000
--- a/src/indextags/content_script.js
+++ /dev/null
@@ -1,11 +0,0 @@
-import $ from 'jquery';
-import plugin from 'core/plugin';
-
-plugin('indextags', () => {
- $(document.body).addClass('enh__indextags');
-
- let tagsNode = $('
');
- tagsNode.insertAfter('.roomtitle');
-}, {
- resume_angular: true,
-});
diff --git a/src/indextags/content_script.scss b/src/indextags/content_script.scss
deleted file mode 100644
index 51bf966..0000000
--- a/src/indextags/content_script.scss
+++ /dev/null
@@ -1,17 +0,0 @@
-.enh__tags{
- display: none;
-
- & .label{
- font-size: 8pt;
- word-break: break-word;
- margin-right: 2px;
- color: black;
- padding: 2px;
- }
-}
-.enh__indextags .thumb:hover .roomtitle{
- display: none;
-}
-.thumb:hover .enh__tags{
- display: block;
-}
diff --git a/src/indextags/package.json b/src/indextags/package.json
deleted file mode 100644
index cdb1191..0000000
--- a/src/indextags/package.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "name": "indextags",
- "description": "แสดงแท็กห้องเมื่อชี้ที่ห้อง",
- "category": "หน้าแรก",
- "default_enabled": true,
- "private": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/"],
- "js": ["content_script.js"],
- "css": ["content_script.css"],
- "run_at": "document_end",
- "stop_angular": true
- }
- ]
-}
diff --git a/src/metadata/content_script.js b/src/metadata/content_script.js
deleted file mode 100644
index cde7e5d..0000000
--- a/src/metadata/content_script.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import $ from 'jquery';
-import plugin from 'core/plugin';
-import injectScript from 'core/injectscript';
-
-plugin('metadata', () => {
- let target = $('#bodydesc .media').closest('.row').find('.col-sm-4');
- $('
').appendTo(target);
- injectScript(require('./metadata.txt'));
-});
diff --git a/src/metadata/content_script.scss b/src/metadata/content_script.scss
deleted file mode 100644
index 09fb03e..0000000
--- a/src/metadata/content_script.scss
+++ /dev/null
@@ -1,14 +0,0 @@
-.enh__streammeta{
- white-space: pre-wrap;
- word-break: break-word;
- font-family: monospace;
- max-height: 100px;
- font-size: 8pt;
-}
-.enh__streammeta:hover, .enh__streammeta.enh__paused{
- max-height: none;
-}
-
-.enh__streammeta.enh__paused{
- color: red;
-}
diff --git a/src/metadata/metadata.txt b/src/metadata/metadata.txt
deleted file mode 100644
index d62c369..0000000
--- a/src/metadata/metadata.txt
+++ /dev/null
@@ -1,45 +0,0 @@
-(function(){
- 'use strict';
-
- let element = document.getElementById('enh__streammeta');
- let lastMeta = {};
- let paused = false;
- let bannedKeys = ['Server'];
-
- playerInstance.on('meta', (meta) => {
- if(meta && meta.type === 'meta'){
- Object.assign(lastMeta, meta.metadata);
- }
- });
-
- let update = () => {
- let keys = Object.keys(lastMeta).sort();
- let text = [];
-
- for(let key in keys){
- key = keys[key];
- if(bannedKeys.includes(key)){
- continue;
- }
- text.push(`${key}: ${lastMeta[key]}`);
- }
-
- element.textContent = 'MyLiveEnh Stream Metadata\nHover to expand\n'
- + text.join('\n')
- + '\nDouble click to pause\nDisable at MyLiveEnh settings';
- };
-
- let interval = setInterval(update, 1000);
-
- element.addEventListener('dblclick', () => {
- paused = !paused;
-
- if(paused){
- clearInterval(interval);
- }else{
- setInterval(update, 1000);
- }
-
- element.classList.toggle('enh__paused');
- }, false);
-})();
diff --git a/src/metadata/package.json b/src/metadata/package.json
deleted file mode 100644
index ae99d82..0000000
--- a/src/metadata/package.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "metadata",
- "description": "แสดง Video metadata",
- "description2": "สำหรับผู้ใช้งานขั้นสูง",
- "category": "Stream",
- "private": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/streams/*"],
- "js": ["content_script.js"],
- "css": ["content_script.css"],
- "run_at": "document_end"
- }
- ]
-}
diff --git a/src/nofeaturedvideo/content_script.js b/src/nofeaturedvideo/content_script.js
deleted file mode 100644
index cfb2cec..0000000
--- a/src/nofeaturedvideo/content_script.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import $ from 'jquery';
-import plugin from 'core/plugin';
-import injectScript from 'core/injectscript';
-
-plugin('nofeaturedvideo', () => {
- $('#recommend video').replaceWith('
');
- injectScript(`
- (function(){
- window.showRecommend = function(){};
-
- let originalSetData = recom.setData;
-
- recom.setData = function(d){
- this.img = d.img;
- originalSetData.call(this, d);
- }
-
- })();
- `);
-}, {
- resume_angular: true,
-});
diff --git a/src/nofeaturedvideo/content_script.scss b/src/nofeaturedvideo/content_script.scss
deleted file mode 100644
index 36ea337..0000000
--- a/src/nofeaturedvideo/content_script.scss
+++ /dev/null
@@ -1,7 +0,0 @@
-#enh__fakevideoview{
- width: 100%;
-
- & img{
- width: 100%;
- }
-}
diff --git a/src/nofeaturedvideo/package.json b/src/nofeaturedvideo/package.json
deleted file mode 100644
index 43732f1..0000000
--- a/src/nofeaturedvideo/package.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "nofeaturedvideo",
- "description": "แสดง Recommend for you เป็นภาพนิ่ง",
- "category": "หน้าแรก",
- "default_enabled": false,
- "private": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/"],
- "js": ["content_script.js"],
- "css": ["content_script.css"],
- "run_at": "document_end"
- }
- ]
-}
diff --git a/src/popoutvideo/content_script.js b/src/popoutvideo/content_script.js
deleted file mode 100644
index f150866..0000000
--- a/src/popoutvideo/content_script.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import $ from 'jquery';
-import plugin from 'core/plugin';
-
-plugin('popoutvideo', () => {
- let streamId = window.location.pathname.match(/\/([0-9]+)$/)[1];
- $('
')
- .click(() => {
- window.open(
- `http://mylive.in.th/enh_popout/#${streamId}`,
- 'popoutplayer',
- 'width=640,height=360'
- );
- })
- .appendTo('.subRight');
-});
diff --git a/src/popoutvideo/package.json b/src/popoutvideo/package.json
deleted file mode 100644
index 0e63860..0000000
--- a/src/popoutvideo/package.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "name": "popoutvideo",
- "private": true,
- "description": "แสดงปุ่มดีด Player ออก",
- "category": "Stream",
- "default_enabled": true,
- "warn_moz": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/streams/*"],
- "js": ["content_script.js"],
- "run_at": "document_idle"
- },
- {
- "matches": ["http://mylive.in.th/enh_popout/*"],
- "js": ["popout.js"],
- "run_at": "document_end"
- }
- ]
-}
diff --git a/src/popoutvideo/popout.js b/src/popoutvideo/popout.js
deleted file mode 100644
index d378158..0000000
--- a/src/popoutvideo/popout.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import injectScript from 'core/injectscript';
-import htmlXhr from 'core/htmlxhr';
-
-const JWPLAYER = 'http://ssl.p.jwpcdn.com/player/v/7.2.4/jwplayer.js';
-
-let getStreamInfo = async function(id){
- let html = await htmlXhr('GET', `http://mylive.in.th/streams/${id}`);
-
- let scriptNode = Array.from(html.documentElement.getElementsByTagName('SCRIPT')).filter((node) => {
- return !node.src &&
- node.textContent.indexOf('jwplayer') !== -1;
- })[0];
- return {
- title: html.title,
- script: scriptNode.textContent,
- };
-};
-
-document.documentElement.innerHTML = require('./popout.txt');
-
-let streamPromise = getStreamInfo(window.location.hash.substr(1));
-
-let player = document.createElement('script');
-// player.integrity = JWPLAYER_SRI;
-// player.crossorigin = 'anonymous';
-player.setAttribute('src', JWPLAYER);
-player.addEventListener('load', async function(){
- let result = await streamPromise;
- document.title = result.title;
- let script = result.script.replace(/(width|height): [0-9]+/g, '$1: "100%"');
- injectScript(script);
-}, false);
-document.body.appendChild(player);
diff --git a/src/popoutvideo/popout.txt b/src/popoutvideo/popout.txt
deleted file mode 100644
index 4233659..0000000
--- a/src/popoutvideo/popout.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
diff --git a/src/settingsmenu/background.js b/src/settingsmenu/background.js
deleted file mode 100644
index 7808fef..0000000
--- a/src/settingsmenu/background.js
+++ /dev/null
@@ -1,13 +0,0 @@
-chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
- if(!request.settingsmenu){
- return;
- }
-
- switch(request.settingsmenu){
- case 'settings':
- chrome.runtime.openOptionsPage();
- return true;
- default:
- console.error('Unknown background page request for settingsmenu');
- }
-});
diff --git a/src/settingsmenu/content_script.js b/src/settingsmenu/content_script.js
deleted file mode 100644
index 84c9492..0000000
--- a/src/settingsmenu/content_script.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import $ from 'jquery';
-import plugin from 'core/plugin';
-
-plugin('settingsmenu', () => {
- $('').insertBefore('.menuchat [v-if="modtool"]');
- let target = $('
').appendTo('.usermenu');
-
- $('
MyLive Enhancements
')
- .appendTo(target);
-
- $('
')
- .appendTo(target);
-
- $('
')
- .appendTo(target);
- $(document).on('click', '#enh__settingsbtn', () => {
- chrome.runtime.sendMessage({settingsmenu: 'settings'});
- });
-
- $('
')
- .appendTo(target);
-}, {
- resume_angular: true,
- always_load: true,
-});
diff --git a/src/settingsmenu/package.json b/src/settingsmenu/package.json
deleted file mode 100644
index 9928b7a..0000000
--- a/src/settingsmenu/package.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "name": "settingsmenu",
- "description": "เพิ่มเมนู settings ใน chat option",
- "no_disable": true,
- "background": ["background.js"],
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/streams/*", "http://mylive.in.th/chat/*"],
- "js": ["content_script.js"],
- "run_at": "document_end",
- "stop_angular": true
- }
- ],
-
- "private": true
-}
diff --git a/src/stop-vue/content_script.js b/src/stop-vue/content_script.js
deleted file mode 100644
index c70c454..0000000
--- a/src/stop-vue/content_script.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import injectScript from 'core/injectscript';
-
-// find the element AFTER vue
-const TARGET = 'http://s.mylive.in.th/asset/vuejs/vue-resource.js';
-
-let onMutation = function(records){
- for(let record of records){
- if(record.target.tagName === 'BODY'){
- // failsafe
- observer.disconnect();
- return;
- }
-
- for(let children in record.addedNodes){
- children = record.addedNodes[children];
- if(children.tagName === 'SCRIPT' && (children.getAttribute('src') || '').indexOf(TARGET) !== -1){
- console.log('[L+] Vue found');
- observer.disconnect();
- // try to prevent vue._init from firing
- injectScript(`(function(){
- let pendingVueEl = [];
- let originalVueInit = Vue.prototype._init;
- Vue.prototype._init = function(options){
- pendingVueEl.push([this, options.el]);
- delete options.el;
- originalVueInit.call(this, options);
- }
- window.enh__triggerVueInits = function(){
- console.log('[L+] Trigger pending '+pendingVueEl.length+' Vue mounts');
- for(let item of pendingVueEl){
- item[0].$mount(item[1]);
- }
- delete pendingVueEl;
- Vue.prototype._init = originalVueInit;
- }
- })();`);
- }
- }
- }
-};
-
-let observer = new MutationObserver(onMutation);
-observer.observe(document.documentElement, {
- childList: true,
- subtree: true,
-});
diff --git a/src/stop-vue/package.json b/src/stop-vue/package.json
deleted file mode 100644
index 6f9e683..0000000
--- a/src/stop-vue/package.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "name": "core_stop_vue",
- "no_disable": true,
- "content_scripts": [
- {
- "matches": ["http://mylive.in.th/*"],
- "js": ["content_script.js"],
- "run_at": "document_start"
- }
- ],
-
- "private": true
-}