frontend for xcvr appview

update emojis, search sooner

+129 -129
+1 -1
src/lib/components/AutoGrowTextArea.svelte
··· 84 84 return null; 85 85 } 86 86 const res = text.slice(colonPos + 1, selectionStart); 87 - if (res.length < 3) return null; 87 + if (res.length < 2) return null; 88 88 return [res, colonPos, selectionStart]; 89 89 } 90 90 const fuseOptions = {
+128 -128
src/lib/emojis.json
··· 1 1 [ 2 2 { 3 3 "emoji": "๐Ÿ˜€", 4 - "slug": "grinning_face" 4 + "slug": "smile" 5 5 }, 6 6 { 7 7 "emoji": "๐Ÿ˜ƒ", 8 - "slug": "grinning_face_with_big_eyes" 8 + "slug": "grin" 9 9 }, 10 10 { 11 11 "emoji": "๐Ÿ˜„", 12 - "slug": "grinning_face_with_smiling_eyes" 12 + "slug": "big_grin" 13 13 }, 14 14 { 15 15 "emoji": "๐Ÿ˜", 16 - "slug": "beaming_face_with_smiling_eyes" 16 + "slug": "beaming" 17 17 }, 18 18 { 19 19 "emoji": "๐Ÿ˜†", 20 - "slug": "grinning_squinting_face" 20 + "slug": "squinting_grin" 21 21 }, 22 22 { 23 23 "emoji": "๐Ÿ˜…", 24 - "slug": "grinning_face_with_sweat" 24 + "slug": "sweating_grin" 25 25 }, 26 26 { 27 27 "emoji": "๐Ÿคฃ", 28 - "slug": "rolling_on_the_floor_laughing" 28 + "slug": "rofl" 29 29 }, 30 30 { 31 31 "emoji": "๐Ÿ˜‚", 32 - "slug": "face_with_tears_of_joy" 32 + "slug": "laugh_cry" 33 33 }, 34 34 { 35 35 "emoji": "๐Ÿ™‚", 36 - "slug": "slightly_smiling_face" 36 + "slug": "slight_smile" 37 37 }, 38 38 { 39 39 "emoji": "๐Ÿ™ƒ", 40 - "slug": "upside_down_face" 40 + "slug": "upside_down" 41 41 }, 42 42 { 43 43 "emoji": "๐Ÿซ ", 44 - "slug": "melting_face" 44 + "slug": "melting" 45 45 }, 46 46 { 47 47 "emoji": "๐Ÿ˜‰", 48 - "slug": "winking_face" 48 + "slug": "winking" 49 49 }, 50 50 { 51 51 "emoji": "๐Ÿ˜Š", 52 - "slug": "smiling_face_with_smiling_eyes" 52 + "slug": "squint_smile" 53 53 }, 54 54 { 55 55 "emoji": "๐Ÿ˜‡", 56 - "slug": "smiling_face_with_halo" 56 + "slug": "halo" 57 57 }, 58 58 { 59 59 "emoji": "๐Ÿฅฐ", 60 - "slug": "smiling_face_with_hearts" 60 + "slug": "love" 61 61 }, 62 62 { 63 63 "emoji": "๐Ÿ˜", 64 - "slug": "smiling_face_with_heart_eyes" 64 + "slug": "heart_eyes" 65 65 }, 66 66 { 67 67 "emoji": "๐Ÿคฉ", 68 - "slug": "star_struck" 68 + "slug": "star_eyes" 69 69 }, 70 70 { 71 71 "emoji": "๐Ÿ˜˜", 72 - "slug": "face_blowing_a_kiss" 72 + "slug": "blown_kiss" 73 73 }, 74 74 { 75 75 "emoji": "๐Ÿ˜—", 76 - "slug": "kissing_face" 76 + "slug": "kiss_face" 77 77 }, 78 78 { 79 79 "emoji": "โ˜บ๏ธ", 80 - "slug": "smiling_face" 80 + "slug": "relaxed" 81 81 }, 82 82 { 83 83 "emoji": "๐Ÿ˜š", 84 - "slug": "kissing_face_with_closed_eyes" 84 + "slug": "locked_in_kiss" 85 85 }, 86 86 { 87 87 "emoji": "๐Ÿ˜™", 88 - "slug": "kissing_face_with_smiling_eyes" 88 + "slug": "squint_kiss" 89 89 }, 90 90 { 91 91 "emoji": "๐Ÿฅฒ", 92 - "slug": "smiling_face_with_tear" 92 + "slug": "happy_cry" 93 93 }, 94 94 { 95 95 "emoji": "๐Ÿ˜‹", 96 - "slug": "face_savoring_food" 96 + "slug": "yum" 97 97 }, 98 98 { 99 99 "emoji": "๐Ÿ˜›", 100 - "slug": "face_with_tongue" 100 + "slug": "tongue_out" 101 101 }, 102 102 { 103 103 "emoji": "๐Ÿ˜œ", 104 - "slug": "winking_face_with_tongue" 104 + "slug": "crazy_tongue" 105 105 }, 106 106 { 107 107 "emoji": "๐Ÿคช", 108 - "slug": "zany_face" 108 + "slug": "zany" 109 109 }, 110 110 { 111 111 "emoji": "๐Ÿ˜", 112 - "slug": "squinting_face_with_tongue" 112 + "slug": "squint_tongue" 113 113 }, 114 114 { 115 115 "emoji": "๐Ÿค‘", 116 - "slug": "money_mouth_face" 116 + "slug": "money_mouth" 117 117 }, 118 118 { 119 119 "emoji": "๐Ÿค—", 120 - "slug": "smiling_face_with_open_hands" 120 + "slug": "smiling_hands" 121 121 }, 122 122 { 123 123 "emoji": "๐Ÿคญ", 124 - "slug": "face_with_hand_over_mouth" 124 + "slug": "giggle" 125 125 }, 126 126 { 127 127 "emoji": "๐Ÿซข", 128 - "slug": "face_with_open_eyes_and_hand_over_mouth" 128 + "slug": "hand_over_mouth" 129 129 }, 130 130 { 131 131 "emoji": "๐Ÿซฃ", 132 - "slug": "face_with_peeking_eye" 132 + "slug": "peeking" 133 133 }, 134 134 { 135 135 "emoji": "๐Ÿคซ", 136 - "slug": "shushing_face" 136 + "slug": "shushing" 137 137 }, 138 138 { 139 139 "emoji": "๐Ÿค”", 140 - "slug": "thinking_face" 140 + "slug": "thinking" 141 141 }, 142 142 { 143 143 "emoji": "๐Ÿซก", 144 - "slug": "saluting_face" 144 + "slug": "salute" 145 145 }, 146 146 { 147 147 "emoji": "๐Ÿค", 148 - "slug": "zipper_mouth_face" 148 + "slug": "zipper" 149 149 }, 150 150 { 151 151 "emoji": "๐Ÿคจ", 152 - "slug": "face_with_raised_eyebrow" 152 + "slug": "eyebrow_raise" 153 153 }, 154 154 { 155 155 "emoji": "๐Ÿ˜", 156 - "slug": "neutral_face" 156 + "slug": "neutral" 157 157 }, 158 158 { 159 159 "emoji": "๐Ÿ˜‘", 160 - "slug": "expressionless_face" 160 + "slug": "expressionless" 161 161 }, 162 162 { 163 163 "emoji": "๐Ÿ˜ถ", 164 - "slug": "face_without_mouth" 164 + "slug": "no_mouth" 165 165 }, 166 166 { 167 167 "emoji": "๐Ÿซฅ", 168 - "slug": "dotted_line_face" 168 + "slug": "invisible" 169 169 }, 170 170 { 171 171 "emoji": "๐Ÿ˜ถโ€๐ŸŒซ๏ธ", ··· 173 173 }, 174 174 { 175 175 "emoji": "๐Ÿ˜", 176 - "slug": "smirking_face" 176 + "slug": "smirk" 177 177 }, 178 178 { 179 179 "emoji": "๐Ÿ˜’", 180 - "slug": "unamused_face" 180 + "slug": "unamused" 181 181 }, 182 182 { 183 183 "emoji": "๐Ÿ™„", 184 - "slug": "face_with_rolling_eyes" 184 + "slug": "rolling_eyes" 185 185 }, 186 186 { 187 187 "emoji": "๐Ÿ˜ฌ", 188 - "slug": "grimacing_face" 188 + "slug": "grimace" 189 189 }, 190 190 { 191 191 "emoji": "๐Ÿ˜ฎโ€๐Ÿ’จ", 192 - "slug": "face_exhaling" 192 + "slug": "exhale" 193 193 }, 194 194 { 195 195 "emoji": "๐Ÿคฅ", 196 - "slug": "lying_face" 196 + "slug": "lying" 197 197 }, 198 198 { 199 199 "emoji": "๐Ÿซจ", 200 - "slug": "shaking_face" 200 + "slug": "vibrating" 201 201 }, 202 202 { 203 203 "emoji": "๐Ÿ™‚โ€โ†”๏ธ", 204 - "slug": "head_shaking_horizontally" 204 + "slug": "shaking" 205 205 }, 206 206 { 207 207 "emoji": "๐Ÿ™‚โ€โ†•๏ธ", 208 - "slug": "head_shaking_vertically" 208 + "slug": "nodding" 209 209 }, 210 210 { 211 211 "emoji": "๐Ÿ˜Œ", 212 - "slug": "relieved_face" 212 + "slug": "relieved" 213 213 }, 214 214 { 215 215 "emoji": "๐Ÿ˜”", 216 - "slug": "pensive_face" 216 + "slug": "pensive" 217 217 }, 218 218 { 219 219 "emoji": "๐Ÿ˜ช", 220 - "slug": "sleepy_face" 220 + "slug": "sleepy" 221 221 }, 222 222 { 223 223 "emoji": "๐Ÿคค", 224 - "slug": "drooling_face" 224 + "slug": "drool" 225 225 }, 226 226 { 227 227 "emoji": "๐Ÿ˜ด", 228 - "slug": "sleeping_face" 228 + "slug": "sleeping" 229 229 }, 230 230 { 231 231 "emoji": "๐Ÿซฉ", 232 - "slug": "face_with_bags_under_eyes" 232 + "slug": "eyebags" 233 233 }, 234 234 { 235 235 "emoji": "๐Ÿ˜ท", 236 - "slug": "face_with_medical_mask" 236 + "slug": "masked" 237 237 }, 238 238 { 239 239 "emoji": "๐Ÿค’", 240 - "slug": "face_with_thermometer" 240 + "slug": "thermometer" 241 241 }, 242 242 { 243 243 "emoji": "๐Ÿค•", 244 - "slug": "face_with_head_bandage" 244 + "slug": "head_bandage" 245 245 }, 246 246 { 247 247 "emoji": "๐Ÿคข", 248 - "slug": "nauseated_face" 248 + "slug": "nausea" 249 249 }, 250 250 { 251 251 "emoji": "๐Ÿคฎ", 252 - "slug": "face_vomiting" 252 + "slug": "vomit" 253 253 }, 254 254 { 255 255 "emoji": "๐Ÿคง", 256 - "slug": "sneezing_face" 256 + "slug": "sneeze" 257 257 }, 258 258 { 259 259 "emoji": "๐Ÿฅต", 260 - "slug": "hot_face" 260 + "slug": "hot" 261 261 }, 262 262 { 263 263 "emoji": "๐Ÿฅถ", 264 - "slug": "cold_face" 264 + "slug": "cold" 265 265 }, 266 266 { 267 267 "emoji": "๐Ÿฅด", 268 - "slug": "woozy_face" 268 + "slug": "woozy" 269 269 }, 270 270 { 271 271 "emoji": "๐Ÿ˜ต", 272 - "slug": "face_with_crossed_out_eyes" 272 + "slug": "dead" 273 273 }, 274 274 { 275 275 "emoji": "๐Ÿ˜ตโ€๐Ÿ’ซ", 276 - "slug": "face_with_spiral_eyes" 276 + "slug": "stunned" 277 277 }, 278 278 { 279 279 "emoji": "๐Ÿคฏ", 280 - "slug": "exploding_head" 280 + "slug": "mind_blown" 281 281 }, 282 282 { 283 283 "emoji": "๐Ÿค ", 284 - "slug": "cowboy_hat_face" 284 + "slug": "cowboy_hat" 285 285 }, 286 286 { 287 287 "emoji": "๐Ÿฅณ", 288 - "slug": "partying_face" 288 + "slug": "party_hat" 289 289 }, 290 290 { 291 291 "emoji": "๐Ÿฅธ", 292 - "slug": "disguised_face" 292 + "slug": "disguised" 293 293 }, 294 294 { 295 295 "emoji": "๐Ÿ˜Ž", 296 - "slug": "smiling_face_with_sunglasses" 296 + "slug": "sunglasses" 297 297 }, 298 298 { 299 299 "emoji": "๐Ÿค“", 300 - "slug": "nerd_face" 300 + "slug": "nerd" 301 301 }, 302 302 { 303 303 "emoji": "๐Ÿง", 304 - "slug": "face_with_monocle" 304 + "slug": "monocle" 305 305 }, 306 306 { 307 307 "emoji": "๐Ÿ˜•", 308 - "slug": "confused_face" 308 + "slug": "confused" 309 309 }, 310 310 { 311 311 "emoji": "๐Ÿซค", 312 - "slug": "face_with_diagonal_mouth" 312 + "slug": "diagonal" 313 313 }, 314 314 { 315 315 "emoji": "๐Ÿ˜Ÿ", 316 - "slug": "worried_face" 316 + "slug": "worried" 317 317 }, 318 318 { 319 319 "emoji": "๐Ÿ™", 320 - "slug": "slightly_frowning_face" 320 + "slug": "slight_frown" 321 321 }, 322 322 { 323 323 "emoji": "โ˜น๏ธ", 324 - "slug": "frowning_face" 324 + "slug": "frown" 325 325 }, 326 326 { 327 327 "emoji": "๐Ÿ˜ฎ", 328 - "slug": "face_with_open_mouth" 328 + "slug": "open_mouth" 329 329 }, 330 330 { 331 331 "emoji": "๐Ÿ˜ฏ", 332 - "slug": "hushed_face" 332 + "slug": "hushed" 333 333 }, 334 334 { 335 335 "emoji": "๐Ÿ˜ฒ", 336 - "slug": "astonished_face" 336 + "slug": "astonished" 337 337 }, 338 338 { 339 339 "emoji": "๐Ÿ˜ณ", 340 - "slug": "flushed_face" 340 + "slug": "flushed" 341 341 }, 342 342 { 343 343 "emoji": "๐Ÿฅบ", 344 - "slug": "pleading_face" 344 + "slug": "pleading" 345 345 }, 346 346 { 347 347 "emoji": "๐Ÿฅน", 348 - "slug": "face_holding_back_tears" 348 + "slug": "teary" 349 349 }, 350 350 { 351 351 "emoji": "๐Ÿ˜ฆ", 352 - "slug": "frowning_face_with_open_mouth" 352 + "slug": "shocked" 353 353 }, 354 354 { 355 355 "emoji": "๐Ÿ˜ง", 356 - "slug": "anguished_face" 356 + "slug": "anguished" 357 357 }, 358 358 { 359 359 "emoji": "๐Ÿ˜จ", 360 - "slug": "fearful_face" 360 + "slug": "fearful" 361 361 }, 362 362 { 363 363 "emoji": "๐Ÿ˜ฐ", 364 - "slug": "anxious_face_with_sweat" 364 + "slug": "sweating" 365 365 }, 366 366 { 367 367 "emoji": "๐Ÿ˜ฅ", 368 - "slug": "sad_but_relieved_face" 368 + "slug": "hurt" 369 369 }, 370 370 { 371 371 "emoji": "๐Ÿ˜ข", 372 - "slug": "crying_face" 372 + "slug": "cry" 373 373 }, 374 374 { 375 375 "emoji": "๐Ÿ˜ญ", 376 - "slug": "loudly_crying_face" 376 + "slug": "sob" 377 377 }, 378 378 { 379 379 "emoji": "๐Ÿ˜ฑ", 380 - "slug": "face_screaming_in_fear" 380 + "slug": "scream" 381 381 }, 382 382 { 383 383 "emoji": "๐Ÿ˜–", 384 - "slug": "confounded_face" 384 + "slug": "confonded" 385 385 }, 386 386 { 387 387 "emoji": "๐Ÿ˜ฃ", 388 - "slug": "persevering_face" 388 + "slug": "persevering" 389 389 }, 390 390 { 391 391 "emoji": "๐Ÿ˜ž", 392 - "slug": "disappointed_face" 392 + "slug": "disappointed" 393 393 }, 394 394 { 395 395 "emoji": "๐Ÿ˜“", 396 - "slug": "downcast_face_with_sweat" 396 + "slug": "downcast" 397 397 }, 398 398 { 399 399 "emoji": "๐Ÿ˜ฉ", 400 - "slug": "weary_face" 400 + "slug": "weary" 401 401 }, 402 402 { 403 403 "emoji": "๐Ÿ˜ซ", 404 - "slug": "tired_face" 404 + "slug": "tired" 405 405 }, 406 406 { 407 407 "emoji": "๐Ÿฅฑ", 408 - "slug": "yawning_face" 408 + "slug": "yawning" 409 409 }, 410 410 { 411 411 "emoji": "๐Ÿ˜ค", 412 - "slug": "face_with_steam_from_nose" 412 + "slug": "triumphant" 413 413 }, 414 414 { 415 415 "emoji": "๐Ÿ˜ก", 416 - "slug": "enraged_face" 416 + "slug": "mad" 417 417 }, 418 418 { 419 419 "emoji": "๐Ÿ˜ ", 420 - "slug": "angry_face" 420 + "slug": "angry" 421 421 }, 422 422 { 423 423 "emoji": "๐Ÿคฌ", 424 - "slug": "face_with_symbols_on_mouth" 424 + "slug": "fuck" 425 425 }, 426 426 { 427 427 "emoji": "๐Ÿ˜ˆ", 428 - "slug": "smiling_face_with_horns" 428 + "slug": "happy_devil" 429 429 }, 430 430 { 431 431 "emoji": "๐Ÿ‘ฟ", 432 - "slug": "angry_face_with_horns" 432 + "slug": "sad_devil" 433 433 }, 434 434 { 435 435 "emoji": "๐Ÿ’€", ··· 437 437 }, 438 438 { 439 439 "emoji": "โ˜ ๏ธ", 440 - "slug": "skull_and_crossbones" 440 + "slug": "crossbones" 441 441 }, 442 442 { 443 443 "emoji": "๐Ÿ’ฉ", 444 - "slug": "pile_of_poo" 444 + "slug": "poo" 445 445 }, 446 446 { 447 447 "emoji": "๐Ÿคก", 448 - "slug": "clown_face" 448 + "slug": "clown" 449 449 }, 450 450 { 451 451 "emoji": "๐Ÿ‘น", ··· 465 465 }, 466 466 { 467 467 "emoji": "๐Ÿ‘พ", 468 - "slug": "alien_monster" 468 + "slug": "invader" 469 469 }, 470 470 { 471 471 "emoji": "๐Ÿค–", ··· 477 477 }, 478 478 { 479 479 "emoji": "๐Ÿ˜ธ", 480 - "slug": "grinning_cat_with_smiling_eyes" 480 + "slug": "smiling_cat" 481 481 }, 482 482 { 483 483 "emoji": "๐Ÿ˜น", 484 - "slug": "cat_with_tears_of_joy" 484 + "slug": "lolcat" 485 485 }, 486 486 { 487 487 "emoji": "๐Ÿ˜ป", 488 - "slug": "smiling_cat_with_heart_eyes" 488 + "slug": "heart_cat" 489 489 }, 490 490 { 491 491 "emoji": "๐Ÿ˜ผ", 492 - "slug": "cat_with_wry_smile" 492 + "slug": "wry_cat" 493 493 }, 494 494 { 495 495 "emoji": "๐Ÿ˜ฝ", ··· 509 509 }, 510 510 { 511 511 "emoji": "๐Ÿ™ˆ", 512 - "slug": "see_no_evil_monkey" 512 + "slug": "see_no_evil" 513 513 }, 514 514 { 515 515 "emoji": "๐Ÿ™‰", 516 - "slug": "hear_no_evil_monkey" 516 + "slug": "hear_no_evil" 517 517 }, 518 518 { 519 519 "emoji": "๐Ÿ™Š", 520 - "slug": "speak_no_evil_monkey" 520 + "slug": "speak_no_evil" 521 521 }, 522 522 { 523 523 "emoji": "๐Ÿ’Œ", ··· 597 597 }, 598 598 { 599 599 "emoji": "๐Ÿฉต", 600 - "slug": "light_blue_heart" 600 + "slug": "cyan_heart" 601 601 }, 602 602 { 603 603 "emoji": "๐Ÿ’œ", ··· 625 625 }, 626 626 { 627 627 "emoji": "๐Ÿ’ฏ", 628 - "slug": "hundred_points" 628 + "slug": "100" 629 629 }, 630 630 { 631 631 "emoji": "๐Ÿ’ข", 632 - "slug": "anger_symbol" 632 + "slug": "anger" 633 633 }, 634 634 { 635 635 "emoji": "๐Ÿ’ฅ", 636 - "slug": "collision" 636 + "slug": "bang" 637 637 }, 638 638 { 639 639 "emoji": "๐Ÿ’ซ", ··· 641 641 }, 642 642 { 643 643 "emoji": "๐Ÿ’ฆ", 644 - "slug": "sweat_droplets" 644 + "slug": "splash" 645 645 }, 646 646 { 647 647 "emoji": "๐Ÿ’จ", 648 - "slug": "dashing_away" 648 + "slug": "wind" 649 649 }, 650 650 { 651 651 "emoji": "๐Ÿ•ณ๏ธ", ··· 653 653 }, 654 654 { 655 655 "emoji": "๐Ÿ’ฌ", 656 - "slug": "speech_balloon" 656 + "slug": "speech_bubble" 657 657 }, 658 658 { 659 659 "emoji": "๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ", ··· 685 685 }, 686 686 { 687 687 "emoji": "๐Ÿ–๏ธ", 688 - "slug": "hand_with_fingers_splayed" 688 + "slug": "splayed_hand" 689 689 }, 690 690 { 691 691 "emoji": "โœ‹", ··· 2765 2765 }, 2766 2766 { 2767 2767 "emoji": "๐Ÿฅ€", 2768 - "slug": "wilted_flower" 2768 + "slug": "wilted_rose" 2769 2769 }, 2770 2770 { 2771 2771 "emoji": "๐ŸŒบ", ··· 7623 7623 "emoji": "๐Ÿด๓ ง๓ ข๓ ท๓ ฌ๓ ณ๓ ฟ", 7624 7624 "slug": "flag_wales" 7625 7625 } 7626 - ] 7626 + ]