diff --git a/package-lock.json b/package-lock.json index cc9ec66..c34b62b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "axios": "^1.5.0", "dotenv": "^16.3.1", "n-readlines": "^1.0.1", + "node-emoji": "^2.1.0", "reflect-metadata": "^0.1.13", "sqlite3": "^5.1.6", "typeorm": "^0.3.17", @@ -1405,6 +1406,17 @@ "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", "dev": true }, + "node_modules/@sindresorhus/is": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-3.1.2.tgz", + "integrity": "sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, "node_modules/@sinonjs/commons": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", @@ -2498,8 +2510,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true, - "peer": true, "engines": { "node": ">=10" } @@ -3204,6 +3214,11 @@ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "dev": true }, + "node_modules/emojilib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/emojilib/-/emojilib-2.4.0.tgz", + "integrity": "sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==" + }, "node_modules/enabled": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", @@ -6317,6 +6332,17 @@ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==" }, + "node_modules/node-emoji": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-2.1.0.tgz", + "integrity": "sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A==", + "dependencies": { + "@sindresorhus/is": "^3.1.2", + "char-regex": "^1.0.2", + "emojilib": "^2.4.0", + "skin-tone": "^2.0.0" + } + }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -7426,6 +7452,17 @@ "dev": true, "peer": true }, + "node_modules/skin-tone": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/skin-tone/-/skin-tone-2.0.0.tgz", + "integrity": "sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==", + "dependencies": { + "unicode-emoji-modifier-base": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -8292,6 +8329,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/unicode-emoji-modifier-base": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unicode-emoji-modifier-base/-/unicode-emoji-modifier-base-1.0.0.tgz", + "integrity": "sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==", + "engines": { + "node": ">=4" + } + }, "node_modules/unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", diff --git a/package.json b/package.json index 6526bbb..9d26768 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "test": "rm -rf dist/ && jest", "compile": "rm -rf dist/ && tsc", "start": "npm run compile && node dist/app.js", + "reactions": "npm run compile && node dist/reactions.js", "prepare": "husky install" }, "version": "0.1.0", @@ -50,6 +51,7 @@ "axios": "^1.5.0", "dotenv": "^16.3.1", "n-readlines": "^1.0.1", + "node-emoji": "^2.1.0", "reflect-metadata": "^0.1.13", "sqlite3": "^5.1.6", "typeorm": "^0.3.17", diff --git a/src/automatic_reactions.json b/src/automatic_reactions.json new file mode 100644 index 0000000..fa7c59d --- /dev/null +++ b/src/automatic_reactions.json @@ -0,0 +1,714 @@ +{ + ":green_heart:": "๐Ÿ’š", + ":+1:": "๐Ÿ‘", + ":clap:": "๐Ÿ‘", + ":heart_eyes:": "๐Ÿ˜", + ":joy:": "๐Ÿ˜‚", + ":sunflower:": "๐ŸŒป", + ":white_check_mark:": "โœ…", + ":heart:": "โค๏ธ", + ":wave:": "๐Ÿ‘‹", + ":100:": "๐Ÿ’ฏ", + ":pray:": "๐Ÿ™", + ":raised_hands:": "๐Ÿ™Œ", + ":ok_hand:": "๐Ÿ‘Œ", + ":tada:": "๐ŸŽ‰", + ":muscle:": "๐Ÿ’ช", + ":sweat_smile:": "๐Ÿ˜…", + ":grinning:": "๐Ÿ˜€", + ":grin:": "๐Ÿ˜", + ":star_struck:": "๐Ÿคฉ", + ":blush:": "๐Ÿ˜Š", + ":smile:": "๐Ÿ˜„", + ":laughing:": "๐Ÿ˜†", + ":rocket:": "๐Ÿš€", + ":smiley:": "๐Ÿ˜ƒ", + ":rofl:": "๐Ÿคฃ", + ":cry:": "๐Ÿ˜ข", + ":coffee:": "โ˜•", + ":purple_heart:": "๐Ÿ’œ", + ":sunglasses:": "๐Ÿ˜Ž", + ":four_leaf_clover:": "๐Ÿ€", + ":see_no_evil:": "๐Ÿ™ˆ", + ":relaxed:": "โ˜บ๏ธ", + ":flushed:": "๐Ÿ˜ณ", + ":scream:": "๐Ÿ˜ฑ", + ":bulb:": "๐Ÿ’ก", + ":thinking:": "๐Ÿค”", + ":bouquet:": "๐Ÿ’", + ":grimacing:": "๐Ÿ˜ฌ", + ":fist:": "โœŠ", + ":heavy_plus_sign:": "โž•", + ":kissing_heart:": "๐Ÿ˜˜", + ":innocent:": "๐Ÿ˜‡", + ":v:": "โœŒ", + ":champagne:": "๐Ÿพ", + ":heavy_check_mark:": "โœ”๏ธ", + ":rage:": "๐Ÿ˜ก", + ":wink:": "๐Ÿ˜‰", + ":ok:": "๐Ÿ†—", + ":top:": "๐Ÿ”", + ":disappointed:": "๐Ÿ˜ž", + ":rainbow:": "๐ŸŒˆ", + ":hearts:": "โ™ฅ๏ธ", + ":sob:": "๐Ÿ˜ญ", + ":handshake:": "๐Ÿค", + ":fire:": "๐Ÿ”ฅ", + ":sun_with_face:": "๐ŸŒž", + ":sunny:": "โ˜€๏ธ", + ":disappointed_relieved:": "๐Ÿ˜ฅ", + ":dancer:": "๐Ÿ’ƒ", + ":beers:": "๐Ÿป", + ":yellow_heart:": "๐Ÿ’›", + ":tulip:": "๐ŸŒท", + ":stuck_out_tongue_winking_eye:": "๐Ÿ˜œ", + ":sparkles:": "โœจ", + ":pensive:": "๐Ÿ˜”", + ":bike:": "๐Ÿšฒ", + ":heart_eyes_cat:": "๐Ÿ˜ป", + ":astonished:": "๐Ÿ˜ฒ", + ":christmas_tree:": "๐ŸŽ„", + ":point_up:": "โ˜", + ":cold_sweat:": "๐Ÿ˜ฐ", + ":unamused:": "๐Ÿ˜’", + ":weary:": "๐Ÿ˜ฉ", + ":blossom:": "๐ŸŒผ", + ":exploding_head:": "๐Ÿคฏ", + ":yum:": "๐Ÿ˜‹", + ":fireworks:": "๐ŸŽ†", + ":birthday:": "๐ŸŽ‚", + ":metal:": "๐Ÿค˜", + ":rainbow_flag:": "๐Ÿณ๏ธโ€๐ŸŒˆ", + ":eyes:": "๐Ÿ‘€", + ":confused:": "๐Ÿ˜•", + ":worried:": "๐Ÿ˜Ÿ", + ":black_heart:": "๐Ÿ–ค", + ":one:": "1๏ธโƒฃ", + ":two:": "2๏ธโƒฃ", + ":nauseated_face:": "๐Ÿคข", + ":question:": "โ“", + ":man_shrugging:": "๐Ÿคทโ€โ™‚๏ธ", + ":writing_hand:": "โœ", + ":rabbit:": "๐Ÿฐ", + ":wine_glass:": "๐Ÿท", + ":joy_cat:": "๐Ÿ˜น", + ":exclamation:": "โ—", + ":two_hearts:": "๐Ÿ’•", + ":dart:": "๐ŸŽฏ", + ":dizzy_face:": "๐Ÿ˜ต", + ":sweat:": "๐Ÿ˜“", + ":unicorn:": "๐Ÿฆ„", + ":man_dancing:": "๐Ÿ•บ", + ":cherry_blossom:": "๐ŸŒธ", + ":fearful:": "๐Ÿ˜จ", + ":point_up_2:": "๐Ÿ‘†", + ":angry:": "๐Ÿ˜ ", + ":relieved:": "๐Ÿ˜Œ", + ":sleeping:": "๐Ÿ˜ด", + ":stuck_out_tongue_closed_eyes:": "๐Ÿ˜", + ":hatching_chick:": "๐Ÿฃ", + ":hatched_chick:": "๐Ÿฅ", + ":deciduous_tree:": "๐ŸŒณ", + ":sleepy:": "๐Ÿ˜ช", + ":expressionless:": "๐Ÿ˜‘", + ":open_mouth:": "๐Ÿ˜ฎ", + ":tired_face:": "๐Ÿ˜ซ", + ":palm_tree:": "๐ŸŒด", + ":neutral_face:": "๐Ÿ˜", + ":poop:": "๐Ÿ’ฉ", + ":smirk:": "๐Ÿ˜", + ":raised_hand:": "โœ‹", + ":blue_heart:": "๐Ÿ’™", + ":hushed:": "๐Ÿ˜ฏ", + ":x:": "โŒ", + ":cool:": "๐Ÿ†’", + ":tropical_drink:": "๐Ÿน", + ":ballot_box_with_check:": "โ˜‘๏ธ", + ":money_with_wings:": "๐Ÿ’ธ", + ":tea:": "๐Ÿต", + ":confetti_ball:": "๐ŸŽŠ", + ":pizza:": "๐Ÿ•", + ":penguin:": "๐Ÿง", + ":hibiscus:": "๐ŸŒบ", + ":computer:": "๐Ÿ’ป", + ":point_right:": "๐Ÿ‘‰", + ":three:": "3๏ธโƒฃ", + ":seedling:": "๐ŸŒฑ", + ":sparkling_heart:": "๐Ÿ’–", + ":cake:": "๐Ÿฐ", + ":man_facepalming:": "๐Ÿคฆโ€โ™‚๏ธ", + ":anguished:": "๐Ÿ˜ง", + ":boom:": "๐Ÿ’ฅ", + ":broken_heart:": "๐Ÿ’”", + ":frog:": "๐Ÿธ", + ":star2:": "๐ŸŒŸ", + ":trophy:": "๐Ÿ†", + ":ocean:": "๐ŸŒŠ", + ":triumph:": "๐Ÿ˜ค", + ":robot:": "๐Ÿค–", + ":confounded:": "๐Ÿ˜–", + ":green_apple:": "๐Ÿ", + ":persevere:": "๐Ÿ˜ฃ", + ":mask:": "๐Ÿ˜ท", + ":bangbang:": "โ€ผ๏ธ", + ":beer:": "๐Ÿบ", + ":woman_shrugging:": "๐Ÿคท", + ":soccer:": "โšฝ", + ":croissant:": "๐Ÿฅ", + ":whale:": "๐Ÿณ", + ":candle:": "๐Ÿ•ฏ", + ":scream_cat:": "๐Ÿ™€", + ":no_mouth:": "๐Ÿ˜ถ", + ":grey_question:": "โ”", + ":smiling_imp:": "๐Ÿ˜ˆ", + ":apple:": "๐ŸŽ", + ":ghost:": "๐Ÿ‘ป", + ":cookie:": "๐Ÿช", + ":dog:": "๐Ÿถ", + ":pear:": "๐Ÿ", + ":pretzel:": "๐Ÿฅจ", + ":orange_heart:": "๐Ÿงก", + ":cat:": "๐Ÿฑ", + ":space_invader:": "๐Ÿ‘พ", + ":classical_building:": "๐Ÿ›", + ":steam_locomotive:": "๐Ÿš‚", + ":badger:": "๐Ÿฆก", + ":popcorn:": "๐Ÿฟ", + ":woman_facepalming:": "๐Ÿคฆโ€โ™€๏ธ", + ":santa:": "๐ŸŽ…", + ":hedgehog:": "๐Ÿฆ”", + ":cupcake:": "๐Ÿง", + ":chocolate_bar:": "๐Ÿซ", + ":rotating_light:": "๐Ÿšจ", + ":b:": "๐Ÿ…ฑ๏ธ", + ":bagel:": "๐Ÿฅฏ", + ":eagle:": "๐Ÿฆ…", + ":beach_umbrella:": "๐Ÿ–", + ":floppy_disk:": "๐Ÿ’พ", + ":lollipop:": "๐Ÿญ", + ":dizzy:": "๐Ÿ’ซ", + ":hammer:": "๐Ÿ”จ", + ":doughnut:": "๐Ÿฉ", + ":zero:": "0๏ธโƒฃ", + ":snowflake:": "โ„๏ธ", + ":speak_no_evil:": "๐Ÿ™Š", + ":open_hands:": "๐Ÿ‘", + ":butterfly:": "๐Ÿฆ‹", + ":bird:": "๐Ÿฆ", + ":strawberry:": "๐Ÿ“", + ":moneybag:": "๐Ÿ’ฐ", + ":ballot_box:": "๐Ÿ—ณ", + ":heart_decoration:": "๐Ÿ’Ÿ", + ":alien:": "๐Ÿ‘ฝ", + ":revolving_hearts:": "๐Ÿ’ž", + ":banana:": "๐ŸŒ", + ":pick:": "โ›", + ":mushroom:": "๐Ÿ„", + ":crying_cat_face:": "๐Ÿ˜ฟ", + ":shamrock:": "โ˜˜", + ":house_with_garden:": "๐Ÿก", + ":sunrise:": "๐ŸŒ…", + ":dove:": "๐Ÿ•Š", + ":star:": "โญ", + ":zzz:": "๐Ÿ’ค", + ":earth_americas:": "๐ŸŒŽ", + ":earth_africa:": "๐ŸŒ", + ":alarm_clock:": "โฐ", + ":ab:": "๐Ÿ†Ž", + ":skull:": "๐Ÿ’€", + ":heartpulse:": "๐Ÿ’—", + ":crown:": "๐Ÿ‘‘", + ":man_superhero:": "๐Ÿฆธโ€โ™‚๏ธ", + ":grapes:": "๐Ÿ‡", + ":kissing_closed_eyes:": "๐Ÿ˜š", + ":kiss:": "๐Ÿ’‹", + ":raised_back_of_hand:": "๐Ÿคš", + ":tv:": "๐Ÿ“บ", + ":smile_cat:": "๐Ÿ˜ธ", + ":arrow_up_small:": "๐Ÿ”ผ", + ":notes:": "๐ŸŽถ", + ":drooling_face:": "๐Ÿคค", + ":corn:": "๐ŸŒฝ", + ":house:": "๐Ÿ ", + ":candy:": "๐Ÿฌ", + ":movie_camera:": "๐ŸŽฅ", + ":drum:": "๐Ÿฅ", + ":kissing_smiling_eyes:": "๐Ÿ˜™", + ":no_entry_sign:": "๐Ÿšซ", + ":snail:": "๐ŸŒ", + ":chipmunk:": "๐Ÿฟ", + ":kissing:": "๐Ÿ˜—", + ":gift_heart:": "๐Ÿ’", + ":four:": "4๏ธโƒฃ", + ":herb:": "๐ŸŒฟ", + ":evergreen_tree:": "๐ŸŒฒ", + ":dragon:": "๐Ÿ‰", + ":broccoli:": "๐Ÿฅฆ", + ":octopus:": "๐Ÿ™", + ":japanese_ogre:": "๐Ÿ‘น", + ":cherries:": "๐Ÿ’", + ":chart_with_upwards_trend:": "๐Ÿ“ˆ", + ":pie:": "๐Ÿฅง", + ":heartbeat:": "๐Ÿ’“", + ":sneezing_face:": "๐Ÿคง", + ":sauropod:": "๐Ÿฆ•", + ":carrot:": "๐Ÿฅ•", + ":ice_cream:": "๐Ÿจ", + ":video_camera:": "๐Ÿ“น", + ":negative_squared_cross_mark:": "โŽ", + ":point_left:": "๐Ÿ‘ˆ", + ":five:": "5๏ธโƒฃ", + ":fire_engine:": "๐Ÿš’", + ":construction:": "๐Ÿšง", + ":tangerine:": "๐ŸŠ", + ":bullettrain_front:": "๐Ÿš…", + ":train:": "๐Ÿš‹", + ":bullettrain_side:": "๐Ÿš„", + ":train2:": "๐Ÿš†", + ":smirk_cat:": "๐Ÿ˜ผ", + ":frowning:": "๐Ÿ˜ฆ", + ":arrow_up:": "โฌ†๏ธ", + ":teddy_bear:": "๐Ÿงธ", + ":chicken:": "๐Ÿ”", + ":dolphin:": "๐Ÿฌ", + ":syringe:": "๐Ÿ’‰", + ":iphone:": "๐Ÿ“ฑ", + ":stuck_out_tongue:": "๐Ÿ˜›", + ":ear:": "๐Ÿ‘‚", + ":musical_score:": "๐ŸŽผ", + ":cocktail:": "๐Ÿธ", + ":electric_plug:": "๐Ÿ”Œ", + ":email:": "โœ‰๏ธ", + ":watermelon:": "๐Ÿ‰", + ":stuffed_flatbread:": "๐Ÿฅ™", + ":recycle:": "โ™ป๏ธ", + ":shopping_cart:": "๐Ÿ›’", + ":hamster:": "๐Ÿน", + ":cat2:": "๐Ÿˆ", + ":triangular_flag_on_post:": "๐Ÿšฉ", + ":spaghetti:": "๐Ÿ", + ":no_entry:": "โ›”", + ":stars:": "๐ŸŒ ", + ":shallow_pan_of_food:": "๐Ÿฅ˜", + ":musical_note:": "๐ŸŽต", + ":boxing_glove:": "๐ŸฅŠ", + ":tumbler_glass:": "๐Ÿฅƒ", + ":owl:": "๐Ÿฆ‰", + ":woman_technologist:": "๐Ÿ‘ฉโ€๐Ÿ’ป", + ":mailbox_with_mail:": "๐Ÿ“ฌ", + ":rose:": "๐ŸŒน", + ":sailboat:": "โ›ต", + ":elephant:": "๐Ÿ˜", + ":baby:": "๐Ÿ‘ถ", + ":maple_leaf:": "๐Ÿ", + ":bat:": "๐Ÿฆ‡", + ":lemon:": "๐Ÿ‹", + ":red_car:": "๐Ÿš—", + ":fire_extinguisher:": "๐Ÿงฏ", + ":telephone_receiver:": "๐Ÿ“ž", + ":cloud:": "โ˜๏ธ", + ":euro:": "๐Ÿ’ถ", + ":gift:": "๐ŸŽ", + ":smiley_cat:": "๐Ÿ˜บ", + ":mag:": "๐Ÿ”", + ":rabbit2:": "๐Ÿ‡", + ":a:": "๐Ÿ…ฐ๏ธ", + ":egg:": "๐Ÿฅš", + ":high_brightness:": "๐Ÿ”†", + ":grey_exclamation:": "โ•", + ":cheese:": "๐Ÿง€", + ":older_man:": "๐Ÿ‘ด", + ":pineapple:": "๐Ÿ", + ":red_circle:": "๐Ÿ”ด", + ":fountain:": "โ›ฒ", + ":spider:": "๐Ÿ•ท", + ":bear:": "๐Ÿป", + ":parrot:": "๐Ÿฆœ", + ":racehorse:": "๐ŸŽ", + ":checkered_flag:": "๐Ÿ", + ":black_joker:": "๐Ÿƒ", + ":umbrella:": "โ˜”", + ":basketball:": "๐Ÿ€", + ":nose:": "๐Ÿ‘ƒ", + ":crystal_ball:": "๐Ÿ”ฎ", + ":lying_face:": "๐Ÿคฅ", + ":love_letter:": "๐Ÿ’Œ", + ":icecream:": "๐Ÿฆ", + ":dark_sunglasses:": "๐Ÿ•ถ", + ":kissing_cat:": "๐Ÿ˜ฝ", + ":imp:": "๐Ÿ‘ฟ", + ":chart_with_downwards_trend:": "๐Ÿ“‰", + ":e-mail:": "๐Ÿ“ง", + ":hamburger:": "๐Ÿ”", + ":pushpin:": "๐Ÿ“Œ", + ":thermometer:": "๐ŸŒก", + ":bowl_with_spoon:": "๐Ÿฅฃ", + ":speaking_head:": "๐Ÿ—ฃ", + ":bus:": "๐ŸšŒ", + ":tropical_fish:": "๐Ÿ ", + ":circus_tent:": "๐ŸŽช", + ":ping_pong:": "๐Ÿ“", + ":cup_with_straw:": "๐Ÿฅค", + ":camping:": "๐Ÿ•", + ":loud_sound:": "๐Ÿ”Š", + ":video_game:": "๐ŸŽฎ", + ":japanese_goblin:": "๐Ÿ‘บ", + ":turtle:": "๐Ÿข", + ":pig2:": "๐Ÿ–", + ":fr:": "๐Ÿ‡ซ๐Ÿ‡ท", + ":mountain_snow:": "๐Ÿ”", + ":sheep:": "๐Ÿ‘", + ":man_cartwheeling:": "๐Ÿคธโ€โ™‚๏ธ", + ":shaved_ice:": "๐Ÿง", + ":beetle:": "๐Ÿž", + ":peach:": "๐Ÿ‘", + ":clown_face:": "๐Ÿคก", + ":warning:": "โš ๏ธ", + ":baby_bottle:": "๐Ÿผ", + ":gem:": "๐Ÿ’Ž", + ":bow_and_arrow:": "๐Ÿน", + ":hotel:": "๐Ÿจ", + ":cow:": "๐Ÿฎ", + ":woman_in_lotus_position:": "๐Ÿง˜โ€โ™€๏ธ", + ":point_down:": "๐Ÿ‘‡", + ":radioactive:": "โ˜ข", + ":zap:": "โšก", + ":koala:": "๐Ÿจ", + ":cd:": "๐Ÿ’ฟ", + ":dash:": "๐Ÿ’จ", + ":woman_cartwheeling:": "๐Ÿคธโ€โ™€๏ธ", + ":yarn:": "๐Ÿงถ", + ":postal_horn:": "๐Ÿ“ฏ", + ":children_crossing:": "๐Ÿšธ", + ":tooth:": "๐Ÿฆท", + ":ship:": "๐Ÿšข", + ":airplane:": "โœˆ๏ธ", + ":crescent_moon:": "๐ŸŒ™", + ":hear_no_evil:": "๐Ÿ™‰", + ":flashlight:": "๐Ÿ”ฆ", + ":crab:": "๐Ÿฆ€", + ":kangaroo:": "๐Ÿฆ˜", + ":books:": "๐Ÿ“š", + ":watch:": "โŒš", + ":pig:": "๐Ÿท", + ":battery:": "๐Ÿ”‹", + ":joystick:": "๐Ÿ•น", + ":mag_right:": "๐Ÿ”Ž", + ":monkey:": "๐Ÿ’", + ":ambulance:": "๐Ÿš‘", + ":control_knobs:": "๐ŸŽ›", + ":keycap_ten:": "๐Ÿ”Ÿ", + ":mango:": "๐Ÿฅญ", + ":black_nib:": "โœ’๏ธ", + ":man_juggling:": "๐Ÿคนโ€โ™‚๏ธ", + ":printer:": "๐Ÿ–จ", + ":pencil2:": "โœ๏ธ", + ":clock7:": "๐Ÿ•–", + ":interrobang:": "โ‰๏ธ", + ":european_post_office:": "๐Ÿค", + ":blue_car:": "๐Ÿš™", + ":moon_cake:": "๐Ÿฅฎ", + ":horse:": "๐Ÿด", + ":woman_student:": "๐Ÿ‘ฉโ€๐ŸŽ“", + ":incoming_envelope:": "๐Ÿ“จ", + ":man_in_lotus_position:": "๐Ÿง˜โ€โ™‚๏ธ", + ":mouse:": "๐Ÿญ", + ":man_zombie:": "๐ŸงŸโ€โ™‚๏ธ", + ":ferris_wheel:": "๐ŸŽก", + ":broom:": "๐Ÿงน", + ":monorail:": "๐Ÿš", + ":inbox_tray:": "๐Ÿ“ฅ", + ":wastebasket:": "๐Ÿ—‘", + ":green_book:": "๐Ÿ“—", + ":trolleybus:": "๐ŸšŽ", + ":fortune_cookie:": "๐Ÿฅ ", + ":lobster:": "๐Ÿฆž", + ":arrow_down_small:": "๐Ÿ”ฝ", + ":baseball:": "โšพ", + ":scroll:": "๐Ÿ“œ", + ":prince:": "๐Ÿคด", + ":nail_care:": "๐Ÿ’…", + ":jack_o_lantern:": "๐ŸŽƒ", + ":fork_and_knife:": "๐Ÿด", + ":hourglass_flowing_sand:": "โณ", + ":infinity:": "โ™พ", + ":comet:": "โ˜„", + ":headphones:": "๐ŸŽง", + ":duck:": "๐Ÿฆ†", + ":princess:": "๐Ÿ‘ธ", + ":station:": "๐Ÿš‰", + ":spider_web:": "๐Ÿ•ธ", + ":whale2:": "๐Ÿ‹", + ":new_moon_with_face:": "๐ŸŒš", + ":closed_lock_with_key:": "๐Ÿ”", + ":pancakes:": "๐Ÿฅž", + ":bento:": "๐Ÿฑ", + ":mountain_railway:": "๐Ÿšž", + ":briefcase:": "๐Ÿ’ผ", + ":new:": "๐Ÿ†•", + ":snowman:": "โ›„", + ":no_mobile_phones:": "๐Ÿ“ต", + ":clock8:": "๐Ÿ•—", + ":microscope:": "๐Ÿ”ฌ", + ":ramen:": "๐Ÿœ", + ":black_circle:": "โšซ", + ":mountain:": "โ›ฐ", + ":blowfish:": "๐Ÿก", + ":swan:": "๐Ÿฆข", + ":sandwich:": "๐Ÿฅช", + ":police_car:": "๐Ÿš“", + ":ok_woman:": "๐Ÿ™†", + ":droplet:": "๐Ÿ’ง", + ":fast_forward:": "โฉ", + ":1234:": "๐Ÿ”ข", + ":full_moon_with_face:": "๐ŸŒ", + ":smoking:": "๐Ÿšฌ", + ":peacock:": "๐Ÿฆš", + ":left_speech_bubble:": "๐Ÿ—จ", + ":bell:": "๐Ÿ””", + ":dog2:": "๐Ÿ•", + ":balloon:": "๐ŸŽˆ", + ":hotdog:": "๐ŸŒญ", + ":first_quarter_moon_with_face:": "๐ŸŒ›", + ":wolf:": "๐Ÿบ", + ":eyeglasses:": "๐Ÿ‘“", + ":signal_strength:": "๐Ÿ“ถ", + ":curry:": "๐Ÿ›", + ":carousel_horse:": "๐ŸŽ ", + ":envelope_with_arrow:": "๐Ÿ“ฉ", + ":sled:": "๐Ÿ›ท", + ":guitar:": "๐ŸŽธ", + ":older_woman:": "๐Ÿ‘ต", + ":cactus:": "๐ŸŒต", + ":selfie:": "๐Ÿคณ", + ":game_die:": "๐ŸŽฒ", + ":man_health_worker:": "๐Ÿ‘จโ€โš•๏ธ", + ":vertical_traffic_light:": "๐Ÿšฆ", + ":brain:": "๐Ÿง ", + ":fax:": "๐Ÿ“ ", + ":camera:": "๐Ÿ“ท", + ":firecracker:": "๐Ÿงจ", + ":ant:": "๐Ÿœ", + ":page_facing_up:": "๐Ÿ“„", + ":woman_teacher:": "๐Ÿ‘ฉโ€๐Ÿซ", + ":bug:": "๐Ÿ›", + ":lock:": "๐Ÿ”’", + ":date:": "๐Ÿ“…", + ":fallen_leaf:": "๐Ÿ‚", + ":peanuts:": "๐Ÿฅœ", + ":slot_machine:": "๐ŸŽฐ", + ":skull_and_crossbones:": "โ˜ ", + ":nerd_face:": "๐Ÿค“", + ":mans_shoe:": "๐Ÿ‘ž", + ":coconut:": "๐Ÿฅฅ", + ":vs:": "๐Ÿ†š", + ":tophat:": "๐ŸŽฉ", + ":eight:": "8๏ธโƒฃ", + ":angel:": "๐Ÿ‘ผ", + ":calendar:": "๐Ÿ“†", + ":credit_card:": "๐Ÿ’ณ", + ":honey_pot:": "๐Ÿฏ", + ":pirate_flag:": "๐Ÿดโ€โ˜ ๏ธ", + ":tractor:": "๐Ÿšœ", + ":shower:": "๐Ÿšฟ", + ":pig_nose:": "๐Ÿฝ", + ":busts_in_silhouette:": "๐Ÿ‘ฅ", + ":wrench:": "๐Ÿ”ง", + ":softball:": "๐ŸฅŽ", + ":motorcycle:": "๐Ÿ", + ":peace_symbol:": "โ˜ฎ", + ":no_smoking:": "๐Ÿšญ", + ":stew:": "๐Ÿฒ", + ":ox:": "๐Ÿ‚", + ":m:": "โ“‚๏ธ", + ":bed:": "๐Ÿ›", + ":panda_face:": "๐Ÿผ", + ":bomb:": "๐Ÿ’ฃ", + ":shark:": "๐Ÿฆˆ", + ":woman_juggling:": "๐Ÿคนโ€โ™€๏ธ", + ":eu:": "๐Ÿ‡ช๐Ÿ‡บ", + ":dragon_face:": "๐Ÿฒ", + ":clapper:": "๐ŸŽฌ", + ":footprints:": "๐Ÿ‘ฃ", + ":ribbon:": "๐ŸŽ€", + ":trumpet:": "๐ŸŽบ", + ":mega:": "๐Ÿ“ฃ", + ":information_source:": "โ„น๏ธ", + ":money_mouth_face:": "๐Ÿค‘", + ":roller_coaster:": "๐ŸŽข", + ":man_astronaut:": "๐Ÿ‘จโ€๐Ÿš€", + ":spoon:": "๐Ÿฅ„", + ":bridge_at_night:": "๐ŸŒ‰", + ":baby_chick:": "๐Ÿค", + ":soon:": "๐Ÿ”œ", + ":seat:": "๐Ÿ’บ", + ":toilet:": "๐Ÿšฝ", + ":eye:": "๐Ÿ‘", + ":world_map:": "๐Ÿ—บ", + ":foot:": "๐Ÿฆถ", + ":bath:": "๐Ÿ›€", + ":united_nations:": "๐Ÿ‡บ๐Ÿ‡ณ", + ":woman_artist:": "๐Ÿ‘ฉโ€๐ŸŽจ", + ":canned_food:": "๐Ÿฅซ", + ":school:": "๐Ÿซ", + ":zebra:": "๐Ÿฆ“", + ":fog:": "๐ŸŒซ", + ":gloves:": "๐Ÿงค", + ":poultry_leg:": "๐Ÿ—", + ":oncoming_automobile:": "๐Ÿš˜", + ":underage:": "๐Ÿ”ž", + ":unlock:": "๐Ÿ”“", + ":goat:": "๐Ÿ", + ":womans_hat:": "๐Ÿ‘’", + ":hospital:": "๐Ÿฅ", + ":eggplant:": "๐Ÿ†", + ":closed_umbrella:": "๐ŸŒ‚", + ":sparkler:": "๐ŸŽ‡", + ":radio:": "๐Ÿ“ป", + ":vhs:": "๐Ÿ“ผ", + ":city_sunset:": "๐ŸŒ†", + ":golf:": "โ›ณ", + ":keyboard:": "โŒจ", + ":arrows_counterclockwise:": "๐Ÿ”„", + ":martial_arts_uniform:": "๐Ÿฅ‹", + ":mountain_cableway:": "๐Ÿš ", + ":man_technologist:": "๐Ÿ‘จโ€๐Ÿ’ป", + ":ear_of_rice:": "๐ŸŒพ", + ":mrs_claus:": "๐Ÿคถ", + ":art:": "๐ŸŽจ", + ":leopard:": "๐Ÿ†", + ":heavy_multiplication_x:": "โœ–๏ธ", + ":canoe:": "๐Ÿ›ถ", + ":heavy_dollar_sign:": "๐Ÿ’ฒ", + ":pregnant_woman:": "๐Ÿคฐ", + ":wilted_flower:": "๐Ÿฅ€", + ":truck:": "๐Ÿšš", + ":meat_on_bone:": "๐Ÿ–", + ":white_circle:": "โšช", + ":magnet:": "๐Ÿงฒ", + ":cloud_with_snow:": "๐ŸŒจ", + ":man_scientist:": "๐Ÿ‘จโ€๐Ÿ”ฌ", + ":saxophone:": "๐ŸŽท", + ":scotland:": "๐Ÿด๓ ง๓ ข๓ ณ๓ ฃ๓ ด๓ ฟ", + ":package:": "๐Ÿ“ฆ", + ":european_castle:": "๐Ÿฐ", + ":coffin:": "โšฐ", + ":vibration_mode:": "๐Ÿ“ณ", + ":metro:": "๐Ÿš‡", + ":mute:": "๐Ÿ”‡", + ":8ball:": "๐ŸŽฑ", + ":atom_symbol:": "โš›", + ":fish:": "๐ŸŸ", + ":key:": "๐Ÿ”‘", + ":helicopter:": "๐Ÿš", + ":oncoming_police_car:": "๐Ÿš”", + ":crossed_swords:": "โš”", + ":cucumber:": "๐Ÿฅ’", + ":tomato:": "๐Ÿ…", + ":burrito:": "๐ŸŒฏ", + ":monkey_face:": "๐Ÿต", + ":cupid:": "๐Ÿ’˜", + ":clock930:": "๐Ÿ•ค", + ":bacon:": "๐Ÿฅ“", + ":potato:": "๐Ÿฅ”", + ":nut_and_bolt:": "๐Ÿ”ฉ", + ":guardsman:": "๐Ÿ’‚", + ":bookmark_tabs:": "๐Ÿ“‘", + ":ticket:": "๐ŸŽซ", + ":sweat_drops:": "๐Ÿ’ฆ", + ":woman_genie:": "๐Ÿงžโ€โ™€๏ธ", + ":outbox_tray:": "๐Ÿ“ค", + ":woman_elf:": "๐Ÿงโ€โ™€๏ธ", + ":stop_sign:": "๐Ÿ›‘", + ":sunrise_over_mountains:": "๐ŸŒ„", + ":boar:": "๐Ÿ—", + ":yin_yang:": "โ˜ฏ", + ":bread:": "๐Ÿž", + ":woman_mechanic:": "๐Ÿ‘ฉโ€๐Ÿ”ง", + ":man_student:": "๐Ÿ‘จโ€๐ŸŽ“", + ":woman_scientist:": "๐Ÿ‘ฉโ€๐Ÿ”ฌ", + ":taxi:": "๐Ÿš•", + ":pill:": "๐Ÿ’Š", + ":oncoming_taxi:": "๐Ÿš–", + ":card_file_box:": "๐Ÿ—ƒ", + ":microphone:": "๐ŸŽค", + ":snowboarder:": "๐Ÿ‚", + ":minidisc:": "๐Ÿ’ฝ", + ":woman_singer:": "๐Ÿ‘ฉโ€๐ŸŽค", + ":triangular_ruler:": "๐Ÿ“", + ":giraffe:": "๐Ÿฆ’", + ":chess_pawn:": "โ™Ÿ", + ":wedding:": "๐Ÿ’’", + ":sos:": "๐Ÿ†˜", + ":large_orange_diamond:": "๐Ÿ”ถ", + ":large_blue_diamond:": "๐Ÿ”ท", + ":o:": "โญ•", + ":gun:": "๐Ÿ”ซ", + ":paperclips:": "๐Ÿ–‡", + ":clock9:": "๐Ÿ•˜", + ":avocado:": "๐Ÿฅ‘", + ":tennis:": "๐ŸŽพ", + ":scorpion:": "๐Ÿฆ‚", + ":synagogue:": "๐Ÿ•", + ":crocodile:": "๐ŸŠ", + ":raccoon:": "๐Ÿฆ", + ":rosette:": "๐Ÿต", + ":couch_and_lamp:": "๐Ÿ›‹", + ":motorway:": "๐Ÿ›ฃ", + ":hiking_boot:": "๐Ÿฅพ", + ":fox_face:": "๐ŸฆŠ", + ":tiger2:": "๐Ÿ…", + ":tokyo_tower:": "๐Ÿ—ผ", + ":heavy_minus_sign:": "โž–", + ":horse_racing:": "๐Ÿ‡", + ":door:": "๐Ÿšช", + ":goal_net:": "๐Ÿฅ…", + ":mermaid:": "๐Ÿงœโ€โ™€๏ธ", + ":snake:": "๐Ÿ", + ":night_with_stars:": "๐ŸŒƒ", + ":man_vampire:": "๐Ÿง›โ€โ™‚๏ธ", + ":minibus:": "๐Ÿš", + ":wales:": "๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ", + ":tiger:": "๐Ÿฏ", + ":last_quarter_moon_with_face:": "๐ŸŒœ", + ":waning_gibbous_moon:": "๐ŸŒ–", + ":man_supervillain:": "๐Ÿฆนโ€โ™‚๏ธ", + ":violin:": "๐ŸŽป", + ":paintbrush:": "๐Ÿ–Œ", + ":u5408:": "๐Ÿˆด", + ":clock12:": "๐Ÿ•›", + ":church:": "โ›ช", + ":person_fencing:": "๐Ÿคบ", + ":mailbox_with_no_mail:": "๐Ÿ“ญ", + ":man_with_gua_pi_mao:": "๐Ÿ‘ฒ", + ":slightly_smiling_face:": "๐Ÿ™‚", + ":globe_with_meridians:": "๐ŸŒ", + ":football:": "๐Ÿˆ", + ":microbe:": "๐Ÿฆ ", + ":bowling:": "๐ŸŽณ", + ":railway_track:": "๐Ÿ›ค", + ":woman_superhero:": "๐Ÿฆธโ€โ™€๏ธ", + ":woman_with_headscarf:": "๐Ÿง•", + ":older_adult:": "๐Ÿง“", + ":performing_arts:": "๐ŸŽญ", + ":woman_health_worker:": "๐Ÿ‘ฉโ€โš•๏ธ", + ":paperclip:": "๐Ÿ“Ž", + ":hot_pepper:": "๐ŸŒถ", + ":statue_of_liberty:": "๐Ÿ—ฝ", + ":bookmark:": "๐Ÿ”–", + ":lipstick:": "๐Ÿ’„", + ":sweet_potato:": "๐Ÿ ", + ":volleyball:": "๐Ÿ", + ":bar_chart:": "๐Ÿ“Š", + ":seven:": "7๏ธโƒฃ", + ":stopwatch:": "โฑ", + ":satellite:": "๐Ÿ“ก", + ":clock10:": "๐Ÿ•™", + ":dumpling:": "๐ŸฅŸ", + ":fishing_pole_and_fish:": "๐ŸŽฃ", + ":fries:": "๐ŸŸ", + ":postbox:": "๐Ÿ“ฎ", + ":clock5:": "๐Ÿ•”", + ":woman_cook:": "๐Ÿ‘ฉโ€๐Ÿณ", + ":man_cook:": "๐Ÿ‘จโ€๐Ÿณ" +} diff --git a/src/reactions.ts b/src/reactions.ts new file mode 100644 index 0000000..61e06cb --- /dev/null +++ b/src/reactions.ts @@ -0,0 +1,21 @@ +import reactionsCbg from './reactions_cbg.json' +import reactionsVdg from './reactions_verdigado.json' +import * as emoji from 'node-emoji' + +const reactions = { ...reactionsVdg, ...reactionsCbg } +interface Mapping { + [key: string]: string | undefined +} +const mapping: Mapping = {} +let undefinedOnes = 0 +Object.keys(reactions).map((key) => { + let foundEmoji = emoji.get(key) + if (!foundEmoji) { + undefinedOnes++ + foundEmoji = '' + } + console.log(`"${key}": "${foundEmoji}",`) + mapping[key.replaceAll(':', '')] = foundEmoji +}) + +console.log('Undefined reactions:', undefinedOnes)