lostcoords-ui 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +352 -0
  4. data/app/assets/tailwind/lostcoords/ui/avatar.css +11 -0
  5. data/app/assets/tailwind/lostcoords/ui/card.css +26 -0
  6. data/app/assets/tailwind/lostcoords/ui/copy-button.css +33 -0
  7. data/app/assets/tailwind/lostcoords/ui/dialog.css +60 -0
  8. data/app/assets/tailwind/lostcoords/ui/disclosure.css +43 -0
  9. data/app/assets/tailwind/lostcoords/ui/emoji-picker.css +462 -0
  10. data/app/assets/tailwind/lostcoords/ui/field.css +6 -0
  11. data/app/assets/tailwind/lostcoords/ui/glass.css +37 -0
  12. data/app/assets/tailwind/lostcoords/ui/layout.css +5 -0
  13. data/app/assets/tailwind/lostcoords/ui/popover.css +75 -0
  14. data/app/assets/tailwind/lostcoords/ui/reading.css +60 -0
  15. data/app/assets/tailwind/lostcoords/ui/sheet.css +170 -0
  16. data/app/assets/tailwind/lostcoords/ui/squircle.css +32 -0
  17. data/app/assets/tailwind/lostcoords/ui/theme.css +255 -0
  18. data/app/assets/tailwind/lostcoords/ui/typography.css +81 -0
  19. data/app/assets/tailwind/lostcoords/ui/ui.css +21 -0
  20. data/app/assets/tailwind/lostcoords/ui/utilities.css +45 -0
  21. data/app/assets/tailwind/lostcoords_ui/engine.css +1 -0
  22. data/app/helpers/lostcoords/ui/badge_helper.rb +162 -0
  23. data/app/helpers/lostcoords/ui/button_helper.rb +70 -0
  24. data/app/helpers/lostcoords/ui/card_helper.rb +60 -0
  25. data/app/helpers/lostcoords/ui/copy_button_helper.rb +40 -0
  26. data/app/helpers/lostcoords/ui/dialog_helper.rb +33 -0
  27. data/app/helpers/lostcoords/ui/emoji_picker_helper.rb +245 -0
  28. data/app/helpers/lostcoords/ui/feedback_helper.rb +30 -0
  29. data/app/helpers/lostcoords/ui/form_helper.rb +93 -0
  30. data/app/helpers/lostcoords/ui/glass_helper.rb +25 -0
  31. data/app/helpers/lostcoords/ui/icon_helper.rb +15 -0
  32. data/app/helpers/lostcoords/ui/layout_helper.rb +60 -0
  33. data/app/helpers/lostcoords/ui/menu_helper.rb +41 -0
  34. data/app/helpers/lostcoords/ui/primitives_helper.rb +152 -0
  35. data/app/helpers/lostcoords/ui/reading_helper.rb +15 -0
  36. data/app/helpers/lostcoords/ui/render_attributes_helper.rb +46 -0
  37. data/app/helpers/lostcoords/ui/sheet_helper.rb +54 -0
  38. data/app/helpers/lostcoords/ui/structures_helper.rb +159 -0
  39. data/app/helpers/lostcoords/ui/tailwind_helper.rb +14 -0
  40. data/app/helpers/lostcoords/ui/translation_helper.rb +13 -0
  41. data/app/helpers/lostcoords/ui/typography_helper.rb +28 -0
  42. data/app/javascript/lostcoords/ui/controllers/confirm_dialog_controller.js +39 -0
  43. data/app/javascript/lostcoords/ui/controllers/disclosure_controller.js +163 -0
  44. data/app/javascript/lostcoords/ui/controllers/emoji_picker_controller.js +366 -0
  45. data/app/javascript/lostcoords/ui/controllers/modal_controller.js +27 -0
  46. data/app/javascript/lostcoords/ui/controllers/row_menu_controller.js +83 -0
  47. data/app/javascript/lostcoords/ui/controllers/sheet_controller.js +422 -0
  48. data/app/javascript/lostcoords/ui/controllers/toast_controller.js +69 -0
  49. data/app/javascript/lostcoords/ui/controllers/ui_copy_controller.js +56 -0
  50. data/app/javascript/lostcoords/ui/controllers/ui_popover_controller.js +17 -0
  51. data/app/javascript/lostcoords/ui/controllers/ui_selection_controller.js +69 -0
  52. data/app/javascript/lostcoords/ui/controllers/ui_toggle_controller.js +13 -0
  53. data/app/javascript/lostcoords/ui/helpers/catalog_picker.js +455 -0
  54. data/app/javascript/lostcoords/ui/helpers/context_dialog.js +29 -0
  55. data/app/javascript/lostcoords/ui/helpers/dialog.js +31 -0
  56. data/app/javascript/lostcoords/ui/helpers/dismiss_stack.js +155 -0
  57. data/app/javascript/lostcoords/ui/helpers/floating_panel.js +108 -0
  58. data/app/javascript/lostcoords/ui/helpers/menu_keys.js +27 -0
  59. data/app/javascript/lostcoords/ui/helpers/sheet_motion.js +13 -0
  60. data/app/javascript/lostcoords/ui/helpers/top_layer.js +102 -0
  61. data/app/javascript/lostcoords/ui/helpers/viewport.js +13 -0
  62. data/app/views/lostcoords/ui/components/_emoji_picker.html.erb +176 -0
  63. data/app/views/lostcoords/ui/components/_emoji_picker_grid.html.erb +29 -0
  64. data/app/views/lostcoords/ui/components/_form_alert.html.erb +4 -0
  65. data/app/views/lostcoords/ui/components/_lc_dialog.html.erb +13 -0
  66. data/app/views/lostcoords/ui/components/_lc_disclosure.html.erb +5 -0
  67. data/app/views/lostcoords/ui/components/_skeleton.html.erb +4 -0
  68. data/app/views/lostcoords/ui/components/_spinner.html.erb +10 -0
  69. data/app/views/lostcoords/ui/components/_ui_floating_panel.html.erb +8 -0
  70. data/config/emoji_search_aliases.yml +146 -0
  71. data/config/emoji_search_names.yml +1917 -0
  72. data/config/emoji_search_names_ja.yml +6902 -0
  73. data/config/helper_renames.json +113 -0
  74. data/config/importmap.rb +3 -0
  75. data/config/locales/en.yml +33 -0
  76. data/config/locales/es.yml +33 -0
  77. data/config/locales/ja.yml +33 -0
  78. data/lib/lostcoords/ui/action_view.rb +10 -0
  79. data/lib/lostcoords/ui/builders.rb +42 -0
  80. data/lib/lostcoords/ui/components.rb +13 -0
  81. data/lib/lostcoords/ui/engine.rb +22 -0
  82. data/lib/lostcoords/ui/helpers.rb +11 -0
  83. data/lib/lostcoords/ui/icons.rb +24 -0
  84. data/lib/lostcoords/ui/rails.rb +3 -0
  85. data/lib/lostcoords/ui/resources.rb +17 -0
  86. data/lib/lostcoords/ui/tokens.rb +14 -0
  87. data/lib/lostcoords/ui/version.rb +5 -0
  88. data/lib/lostcoords/ui.rb +2 -0
  89. data/lib/tasks/lostcoords_ui.rake +15 -0
  90. data/script/migrate_helpers.rb +136 -0
  91. data/vendor/heroicons/LICENSE +21 -0
  92. data/vendor/heroicons/icons.json +1303 -0
  93. metadata +203 -0
@@ -0,0 +1,8 @@
1
+ <%# locals: (id:, label:, title:, controller:, role:, attributes:, content:) %>
2
+ <%= tag.div(class: "relative inline-flex", data: { controller: controller }) do %>
3
+ <%= tag.button label, id: "#{id}-trigger", type: "button", class: lc_button_class(variant: :secondary), aria: { haspopup: role, expanded: false, controls: id }, data: { "#{controller}_target" => "trigger", action: "#{controller}#toggle" } %>
4
+ <%= tag.div(**attributes) do %>
5
+ <% if title %><h2 id="<%= id %>-title" class="font-semibold"><%= title %></h2><% end %>
6
+ <%= content %>
7
+ <% end %>
8
+ <% end %>
@@ -0,0 +1,146 @@
1
+ # Curated bilingual emoji search aliases.
2
+ #
3
+ # Unicode CLDR Japanese annotations (emoji_search_names_ja.yml) read like a
4
+ # captioning dictionary, not the casual words people actually type. This file
5
+ # fills that gap with hand-picked English + Japanese synonyms, weighted toward
6
+ # the expense-splitting domain (food, transport, housing, bills, activities).
7
+ #
8
+ # Format: emoji => list of extra search terms (any language). Japanese kana
9
+ # terms are additionally indexed by their romaji automatically.
10
+ ---
11
+ # Money & bills
12
+ "๐Ÿ’ฐ": [money, cash, bag, wealth, ใŠ้‡‘, ใŠใ‹ใญ, ใƒžใƒใƒผ, ้‡‘, ่ฒฏ้‡‘]
13
+ "๐Ÿ’ต": [money, cash, dollar, bill, ใŠ้‡‘, ใƒ‰ใƒซ, ็ด™ๅนฃ, ็พ้‡‘]
14
+ "๐Ÿ’ด": [money, yen, cash, ๅ††, ใˆใ‚“, ใŠ้‡‘, ็ด™ๅนฃ]
15
+ "๐Ÿ’ถ": [money, euro, cash, ใƒฆใƒผใƒญ, ใŠ้‡‘]
16
+ "๐Ÿ’ท": [money, pound, cash, ใƒใƒณใƒ‰, ใŠ้‡‘]
17
+ "๐Ÿ’ณ": [card, credit, payment, pay, ใ‚ฏใƒฌใ‚ธใƒƒใƒˆใ‚ซใƒผใƒ‰, ใ‚ซใƒผใƒ‰, ๆ”ฏๆ‰•ใ„, ๆฑบๆธˆ]
18
+ "๐Ÿงพ": [receipt, bill, bills, invoice, expense, ใƒฌใ‚ทใƒผใƒˆ, ้ ˜ๅŽๆ›ธ, ่ซ‹ๆฑ‚ๆ›ธ, ๆ˜Ž็ดฐ]
19
+ "๐Ÿฆ": [bank, atm, ้Š€่กŒ, ใŽใ‚“ใ“ใ†, ๆŒฏ่พผ]
20
+ "๐Ÿ’ธ": [money, spend, expense, fly, ๅ‡บ่ฒป, ๆตช่ฒป, ใŠ้‡‘, ๆ”ฏๆ‰•ใ„]
21
+ "๐Ÿช™": [coin, money, cash, ใ‚ณใ‚คใƒณ, ็กฌ่ฒจ, ใŠ้‡‘]
22
+ "๐Ÿ’ฑ": [exchange, currency, money, ไธกๆ›ฟ, ็‚บๆ›ฟ]
23
+
24
+ # Food & drink (expense categories)
25
+ "๐Ÿœ": [ramen, noodle, noodles, food, meal, restaurant, ใƒฉใƒผใƒกใƒณ, ใ‚ใ‚“, ้บบ, ้ฃŸไบ‹, ใ”ใฏใ‚“]
26
+ "๐Ÿš": [rice, food, meal, ใ”ใฏใ‚“, ใ”้ฃฏ, ็™ฝ็ฑณ, ้ฃŸไบ‹]
27
+ "๐Ÿ™": [onigiri, rice ball, food, ใŠใซใŽใ‚Š, ใŠใ‚€ใ™ใณ, ใ”ใฏใ‚“]
28
+ "๐Ÿฑ": [bento, lunch box, food, meal, ในใ‚“ใจใ†, ๅผๅฝ“, ใŠๅผๅฝ“, ใƒฉใƒณใƒ]
29
+ "๐Ÿฃ": [sushi, food, fish, ใ™ใ—, ๅฏฟๅธ, ใ•ใ‹ใช]
30
+ "๐Ÿค": [tempura, shrimp, fried, food, ใฆใ‚“ใทใ‚‰, ๅคฉใทใ‚‰, ใ‚จใƒ“]
31
+ "๐Ÿ›": [curry, rice, food, ใ‚ซใƒฌใƒผ, ใ‚ซใƒฌใƒผใƒฉใ‚คใ‚น]
32
+ "๐Ÿฒ": [hot pot, stew, nabe, food, ใชใน, ้‹, ใŠใงใ‚“, ็…ฎ่พผใฟ]
33
+ "๐ŸฅŸ": [gyoza, dumpling, food, ใŽใ‚‡ใ†ใ–, ้คƒๅญ, ็‚นๅฟƒ]
34
+ "๐Ÿ•": [pizza, food, italian, ใƒ”ใ‚ถ, ้ฃŸไบ‹]
35
+ "๐Ÿ”": [burger, hamburger, food, fast food, ใƒใƒณใƒใƒผใ‚ฌใƒผ, ใƒใƒผใ‚ฌใƒผ, ้ฃŸไบ‹]
36
+ "๐ŸŸ": [fries, chips, fast food, ใƒใƒ†ใƒˆ, ใƒ•ใƒฉใ‚คใƒ‰ใƒใƒ†ใƒˆ]
37
+ "๐ŸŒญ": [hot dog, food, ใƒ›ใƒƒใƒˆใƒ‰ใƒƒใ‚ฐ]
38
+ "๐Ÿฅช": [sandwich, food, lunch, ใ‚ตใƒณใƒ‰ใ‚คใƒƒใƒ, ใ‚ตใƒณใƒ‰, ใƒฉใƒณใƒ]
39
+ "๐Ÿž": [bread, bakery, food, ใƒ‘ใƒณ, ใฑใ‚“, ใƒ™ใƒผใ‚ซใƒชใƒผ]
40
+ "๐Ÿฅ": [croissant, bread, bakery, ใ‚ฏใƒญใƒฏใƒƒใ‚ตใƒณ, ใƒ‘ใƒณ]
41
+ "๐Ÿฐ": [cake, dessert, sweets, ใ‚ฑใƒผใ‚ญ, ใƒ‡ใ‚ถใƒผใƒˆ, ใ‚นใ‚คใƒผใƒ„, ใŠใ‚„ใค]
42
+ "๐Ÿง": [cupcake, dessert, sweets, ใ‚ซใƒƒใƒ—ใ‚ฑใƒผใ‚ญ, ใ‚นใ‚คใƒผใƒ„, ใŠใ‚„ใค]
43
+ "๐Ÿฉ": [donut, doughnut, sweets, ใƒ‰ใƒผใƒŠใƒ„, ใŠใ‚„ใค]
44
+ "๐Ÿช": [cookie, sweets, ใ‚ฏใƒƒใ‚ญใƒผ, ใŠใ‚„ใค]
45
+ "๐Ÿซ": [chocolate, sweets, snack, ใƒใƒงใ‚ณ, ใƒใƒงใ‚ณใƒฌใƒผใƒˆ, ใŠใ‚„ใค]
46
+ "๐Ÿฆ": [ice cream, soft serve, dessert, ใ‚ขใ‚คใ‚น, ใ‚ฝใƒ•ใƒˆใ‚ฏใƒชใƒผใƒ , ใ‚ขใ‚คใ‚นใ‚ฏใƒชใƒผใƒ ]
47
+ "๐Ÿจ": [ice cream, dessert, sweets, ใ‚ขใ‚คใ‚น, ใ‚ขใ‚คใ‚นใ‚ฏใƒชใƒผใƒ ]
48
+ "๐Ÿก": [dango, sweets, wagashi, ใ ใ‚“ใ”, ๅ›ฃๅญ, ใŠใ‚„ใค, ๅ’Œ่“ๅญ]
49
+ "๐Ÿต": [tea, matcha, green tea, drink, ใŠใกใ‚ƒ, ใŠ่Œถ, ๆŠน่Œถ, ใพใฃใกใ‚ƒ]
50
+ "โ˜•": [coffee, cafe, drink, hot, ใ‚ณใƒผใƒ’ใƒผ, ใ‚ซใƒ•ใ‚ง, ๅ–ซ่Œถๅบ—, ใƒ›ใƒƒใƒˆ]
51
+ "๐Ÿง‹": [boba, bubble tea, tapioca, drink, ใ‚ฟใƒ”ใ‚ชใ‚ซ, ใ‚ฟใƒ”, ใƒŸใƒซใ‚ฏใƒ†ใ‚ฃใƒผ]
52
+ "๐Ÿบ": [beer, drink, alcohol, ใƒ“ใƒผใƒซ, ใณใƒผใ‚‹, ใŠ้…’, ้ฃฒใฟไผš]
53
+ "๐Ÿป": [beer, cheers, drink, party, ไนพๆฏ, ใ‹ใ‚“ใฑใ„, ้ฃฒใฟไผš, ใƒ“ใƒผใƒซ]
54
+ "๐Ÿถ": [sake, drink, alcohol, japanese, ใ•ใ‘, ใŠ้…’, ๆ—ฅๆœฌ้…’]
55
+ "๐Ÿท": [wine, drink, alcohol, ใƒฏใ‚คใƒณ, ใŠ้…’]
56
+ "๐Ÿธ": [cocktail, drink, bar, alcohol, ใ‚ซใ‚ฏใƒ†ใƒซ, ใƒใƒผ, ใŠ้…’]
57
+ "๐Ÿฅค": [soda, drink, juice, cup, ใ‚ธใƒฅใƒผใ‚น, ใƒ‰ใƒชใƒณใ‚ฏ, ้ฃฒใฟ็‰ฉ]
58
+
59
+ # Transport
60
+ "๐Ÿš•": [taxi, cab, transport, ride, ใ‚ฟใ‚ฏใ‚ทใƒผ, ไน—่ปŠ, ็งปๅ‹•]
61
+ "๐Ÿš—": [car, drive, transport, ใใ‚‹ใพ, ่ปŠ, ใƒ‰ใƒฉใ‚คใƒ–, ็งปๅ‹•]
62
+ "๐Ÿš™": [car, suv, transport, ่ปŠ, ใใ‚‹ใพ, ็งปๅ‹•]
63
+ "๐ŸšŒ": [bus, transport, ใƒใ‚น, ็งปๅ‹•, ไบค้€š]
64
+ "๐Ÿš†": [train, transport, rail, ใงใ‚“ใ—ใ‚ƒ, ้›ป่ปŠ, ๅˆ—่ปŠ, ็งปๅ‹•, ไบค้€š]
65
+ "๐Ÿš„": [shinkansen, bullet train, train, ใ—ใ‚“ใ‹ใ‚“ใ›ใ‚“, ๆ–ฐๅนน็ทš, ้›ป่ปŠ]
66
+ "๐Ÿš‡": [metro, subway, train, ใกใ‹ใฆใค, ๅœฐไธ‹้‰„, ้›ป่ปŠ]
67
+ "๐Ÿšฒ": [bike, bicycle, cycle, transport, ใ˜ใฆใ‚“ใ—ใ‚ƒ, ่‡ช่ปข่ปŠ, ใƒใƒฃใƒช]
68
+ "๐Ÿ›ต": [scooter, moped, transport, ใ‚นใ‚ฏใƒผใ‚ฟใƒผ, ใƒใ‚คใ‚ฏ, ๅŽŸไป˜]
69
+ "๐Ÿ๏ธ": [motorcycle, bike, transport, ใƒใ‚คใ‚ฏ, ใ‚ชใƒผใƒˆใƒใ‚ค]
70
+ "โœˆ๏ธ": [flight, plane, airplane, travel, trip, ใฒใ“ใ†ใ, ้ฃ›่กŒๆฉŸ, ๆ—…่กŒ, ๅ‡บๅผต]
71
+ "โ›ด๏ธ": [ferry, boat, ship, ใƒ•ใ‚งใƒชใƒผ, ่ˆน, ใตใญ]
72
+ "โ›ฝ": [gas, fuel, petrol, station, ใ‚ฌใ‚ฝใƒชใƒณ, ็ตฆๆฒน, ใ‚ฌใ‚ฝใƒชใƒณใ‚นใ‚ฟใƒณใƒ‰]
73
+ "๐Ÿ…ฟ๏ธ": [parking, park, car, ใƒ‘ใƒผใ‚ญใƒณใ‚ฐ, ้ง่ปŠๅ ด, ้ง่ปŠ]
74
+
75
+ # Housing & places
76
+ "๐Ÿ ": [home, house, stay, lodging, accommodation, ใ„ใˆ, ๅฎถ, ่‡ชๅฎ…, ไฝใพใ„, ๅฎฟ]
77
+ "๐Ÿก": [home, house, garden, ใ„ใˆ, ๅฎถ, ่‡ชๅฎ…]
78
+ "๐Ÿจ": [hotel, stay, lodging, ใƒ›ใƒ†ใƒซ, ๅฎฟๆณŠ, ๅฎฟ]
79
+ "๐Ÿฉ": [hotel, love hotel, stay, ใƒ›ใƒ†ใƒซ, ๅฎฟๆณŠ]
80
+ "๐Ÿข": [office, building, work, company, ใ‚ชใƒ•ใ‚ฃใ‚น, ไผš็คพ, ใƒ“ใƒซ, ไป•ไบ‹]
81
+ "๐Ÿช": [convenience store, conbini, shop, ใ‚ณใƒณใƒ“ใƒ‹, ใŠๅบ—, ่ฒทใ„็‰ฉ]
82
+ "๐Ÿฌ": [department store, mall, shopping, ใƒ‡ใƒ‘ใƒผใƒˆ, ็™พ่ฒจๅบ—, ใƒขใƒผใƒซ, ่ฒทใ„็‰ฉ]
83
+ "๐Ÿฅ": [hospital, clinic, medical, health, ใณใ‚‡ใ†ใ„ใ‚“, ็—…้™ข, ๅŒป็™‚, ใ‚ฏใƒชใƒ‹ใƒƒใ‚ฏ]
84
+ "๐Ÿ’Š": [medicine, pill, pharmacy, drug, ใใ™ใ‚Š, ่–ฌ, ่–ฌๅฑ€, ๅŒป็™‚]
85
+ "๐Ÿซ": [school, college, education, ใŒใฃใ“ใ†, ๅญฆๆ ก, ๅญฆ่ฒป]
86
+ "๐Ÿฏ": [castle, japanese, sightseeing, ใŠใ—ใ‚, ๅŸŽ, ่ฆณๅ…‰]
87
+ "โ›ฉ๏ธ": [shrine, torii, temple, japanese, ใ˜ใ‚“ใ˜ใ‚ƒ, ็ฅž็คพ, ้ณฅๅฑ…, ใŠๅ‚ใ‚Š]
88
+
89
+ # Shopping & groceries
90
+ "๐Ÿ›’": [groceries, grocery, shopping, supermarket, cart, ใ‚นใƒผใƒ‘ใƒผ, ่ฒทใ„็‰ฉ, ใ‹ใ„ใ‚‚ใฎ, ใ‚ซใƒผใƒˆ, ้ฃŸๆ]
91
+ "๐Ÿ›๏ธ": [shopping, bags, retail, ใ‚ทใƒงใƒƒใƒ”ใƒณใ‚ฐ, ่ฒทใ„็‰ฉ, ใ‹ใ„ใ‚‚ใฎ]
92
+ "๐ŸŽ": [gift, present, present box, ใƒ—ใƒฌใ‚ผใƒณใƒˆ, ใ‚ฎใƒ•ใƒˆ, ่ดˆใ‚Š็‰ฉ, ใŠ็ฅใ„]
93
+ "๐Ÿ“ฆ": [box, package, parcel, delivery, others, other, ่ท็‰ฉ, ๅฎ…้…, ้…้€, ใใฎไป–]
94
+
95
+ # Activities & entertainment
96
+ "๐ŸŽŸ๏ธ": [ticket, tickets, activities, event, entertainment, ใƒใ‚ฑใƒƒใƒˆ, ๅ…ฅๅ ดๅˆธ, ใ‚คใƒ™ใƒณใƒˆ]
97
+ "๐ŸŽซ": [ticket, admission, event, ใƒใ‚ฑใƒƒใƒˆ, ๅ…ฅๅ ดๅˆธ, ใ‚คใƒ™ใƒณใƒˆ]
98
+ "๐ŸŽฌ": [movie, cinema, film, ๆ˜ ็”ป, ใˆใ„ใŒ, ใ‚ทใƒใƒž]
99
+ "๐ŸŽฎ": [game, gaming, videogame, ใ‚ฒใƒผใƒ , ใ’ใƒผใ‚€]
100
+ "๐ŸŽค": [karaoke, mic, sing, music, ใ‚ซใƒฉใ‚ชใ‚ฑ, ใƒžใ‚คใ‚ฏ, ๆญŒ]
101
+ "๐ŸŽต": [music, song, melody, ใŠใ‚“ใŒใ, ้Ÿณๆฅฝ, ใƒŸใƒฅใƒผใ‚ธใƒƒใ‚ฏ]
102
+ "๐ŸŽธ": [guitar, music, band, ใ‚ฎใ‚ฟใƒผ, ้Ÿณๆฅฝ, ใƒใƒณใƒ‰]
103
+ "๐ŸŽณ": [bowling, activity, ใƒœใ‚ฆใƒชใƒณใ‚ฐ, ใƒœใƒผใƒชใƒณใ‚ฐ]
104
+ "โšฝ": [soccer, football, sport, ใ‚ตใƒƒใ‚ซใƒผ, ใ‚นใƒใƒผใƒ„, ใƒœใƒผใƒซ]
105
+ "โšพ": [baseball, sport, ใ‚„ใใ‚…ใ†, ้‡Ž็ƒ, ใ‚นใƒใƒผใƒ„]
106
+ "๐Ÿ€": [basketball, sport, ใƒใ‚นใ‚ฑ, ใƒใ‚นใ‚ฑใƒƒใƒˆใƒœใƒผใƒซ, ใ‚นใƒใƒผใƒ„]
107
+ "๐ŸŽพ": [tennis, sport, ใƒ†ใƒ‹ใ‚น, ใ‚นใƒใƒผใƒ„]
108
+ "๐ŸŠ": [swimming, pool, sport, ใ™ใ„ใˆใ„, ๆฐดๆณณ, ใƒ—ใƒผใƒซ]
109
+ "โ›ท๏ธ": [ski, snow, winter, sport, ใ‚นใ‚ญใƒผ, ใ‚นใƒŽใƒผ, ้›ช]
110
+ "โ™จ๏ธ": [onsen, hot spring, spa, bath, ใŠใ‚“ใ›ใ‚“, ๆธฉๆณ‰, ใŠ้ขจๅ‘‚, ใ‚นใƒ‘]
111
+ "๐ŸŽก": [ferris wheel, amusement park, ่ฆณ่ฆง่ปŠ, ้Šๅœ’ๅœฐ]
112
+ "๐ŸŽข": [roller coaster, amusement park, ใ‚ธใ‚งใƒƒใƒˆใ‚ณใƒผใ‚นใ‚ฟใƒผ, ้Šๅœ’ๅœฐ]
113
+ "๐Ÿ•๏ธ": [camping, camp, outdoor, ใ‚ญใƒฃใƒณใƒ—, ใ‚ขใ‚ฆใƒˆใƒ‰ใ‚ข, ้‡Žๅค–]
114
+ "๐ŸŽฃ": [fishing, ใคใ‚Š, ้‡ฃใ‚Š, ใƒ•ใ‚ฃใƒƒใ‚ทใƒณใ‚ฐ]
115
+
116
+ # Faces & feelings (common, casual)
117
+ "๐Ÿ˜€": [happy, smile, grin, face, ใ‚ใ‚‰ใ„, ็ฌ‘้ก”, ใƒ‹ใ‚ณใƒ‹ใ‚ณ, ใ†ใ‚Œใ—ใ„]
118
+ "๐Ÿ˜‚": [laugh, lol, crying, funny, ใ‚ใ‚‰ใ„, ็ˆ†็ฌ‘, ใ†ใ‘ใ‚‹, ๆณฃใ็ฌ‘ใ„]
119
+ "๐Ÿฅน": [touched, grateful, holding tears, ใ†ใ‚Œใ—ใ„, ๆ„Ÿๅ‹•, ใ˜ใƒผใ‚“]
120
+ "๐Ÿ˜": [love, heart eyes, adore, ใ™ใ, ๅคงๅฅฝใ, ใƒฉใƒ–]
121
+ "๐Ÿฅณ": [party, celebrate, congrats, ใŠ็ฅใ„, ใƒ‘ใƒผใƒ†ใ‚ฃใƒผ, ใŠใ‚ใงใจใ†]
122
+ "๐Ÿ˜ญ": [crying, sad, sob, ใชใ, ๆณฃใ, ๅทๆณฃ, ใ‹ใชใ—ใ„]
123
+ "๐Ÿ˜Ž": [cool, sunglasses, ใ‚ฏใƒผใƒซ, ใ‹ใฃใ“ใ„ใ„, ใ‚ตใƒณใ‚ฐใƒฉใ‚น]
124
+ "๐Ÿค”": [thinking, hmm, wonder, ใ‹ใ‚“ใŒใˆใ‚‹, ่€ƒใˆใ‚‹, ใ†ใƒผใ‚“]
125
+ "๐Ÿ™": [thanks, please, pray, ใ‚ใ‚ŠใŒใจใ†, ใŠใญใŒใ„, ใŠ้ก˜ใ„, ๆ„Ÿ่ฌ, ๆ‹ใ‚€]
126
+ "๐Ÿ™‡": [bow, sorry, apologize, thanks, ใŠใ˜ใŽ, ใŠ่พžๅ„€, ใ”ใ‚ใ‚“, ใ™ใฟใพใ›ใ‚“]
127
+ "๐Ÿ‘": [good, ok, like, thumbs up, ใ„ใ„ใญ, ใ‚ฐใƒƒใƒ‰, OK, ่ณ›ๆˆ]
128
+ "๐Ÿ‘": [clap, applause, well done, ใฏใใ—ใ‚…, ๆ‹ๆ‰‹, ใ™ใ”ใ„]
129
+ "๐ŸŽ‰": [party, celebrate, congrats, ใŠใ‚ใงใจใ†, ใŠ็ฅใ„, ใƒ‘ใƒผใƒ†ใ‚ฃใƒผ, ใ‚ฏใƒฉใƒƒใ‚ซใƒผ]
130
+ "โค๏ธ": [love, heart, like, ใƒใƒผใƒˆ, ใ™ใ, ๅคงๅฅฝใ, ใƒฉใƒ–]
131
+ "๐Ÿ”ฅ": [fire, hot, lit, ใปใฎใŠ, ็‚Ž, ็ซ, ๆœ€้ซ˜]
132
+ "โœจ": [sparkles, shiny, new, ใ‚ญใƒฉใ‚ญใƒฉ, ใใ‚‰ใใ‚‰, ใƒ”ใ‚ซใƒ”ใ‚ซ]
133
+ "โญ": [star, favorite, ใปใ—, ๆ˜Ÿ, ใŠๆฐ—ใซๅ…ฅใ‚Š]
134
+ "โœ…": [check, done, ok, complete, ใƒใ‚งใƒƒใ‚ฏ, ๅฎŒไบ†, ใงใใŸ, OK]
135
+ "โŒ": [cross, no, wrong, cancel, ใƒใƒ„, ใƒ€ใƒก, ไธๅฏ]
136
+ "โš ๏ธ": [warning, caution, alert, ใกใ‚…ใ†ใ„, ๆณจๆ„, ่ญฆๅ‘Š]
137
+
138
+ # Work & misc
139
+ "๐Ÿ’ผ": [work, business, briefcase, job, ใ—ใ”ใจ, ไป•ไบ‹, ใƒ“ใ‚ธใƒใ‚น, ๅ‡บๅผต]
140
+ "๐Ÿ’ป": [laptop, computer, work, ใƒ‘ใ‚ฝใ‚ณใƒณ, ใƒŽใƒผใƒˆใƒ‘ใ‚ฝใ‚ณใƒณ, ไป•ไบ‹, PC]
141
+ "๐Ÿ“ฑ": [phone, mobile, smartphone, ใ‚นใƒžใƒ›, ๆบๅธฏ, ใ‘ใ„ใŸใ„, ้›ป่ฉฑ]
142
+ "๐Ÿ“ท": [camera, photo, picture, ใ‚ซใƒกใƒฉ, ๅ†™็œŸ, ใ—ใ‚ƒใ—ใ‚“]
143
+ "๐Ÿ”‘": [key, rent, lock, ใ‹ใŽ, ้ต, ๅฎถ่ณƒ]
144
+ "๐Ÿงบ": [laundry, basket, chores, ใ›ใ‚“ใŸใ, ๆด—ๆฟฏ, ๅฎถไบ‹]
145
+ "๐Ÿถ": [dog, puppy, pet, ใ„ใฌ, ็Šฌ, ใƒšใƒƒใƒˆ, ใ‚ใ‚“ใกใ‚ƒใ‚“]
146
+ "๐Ÿฑ": [cat, kitten, pet, ใญใ“, ็Œซ, ใƒšใƒƒใƒˆ, ใซใ‚ƒใ‚“ใ“]