gemoji 4.0.1 โ†’ 4.1.0

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 (4) hide show
  1. checksums.yaml +4 -4
  2. data/db/emoji.json +334 -70
  3. data/lib/emoji/character.rb +17 -6
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d635214e1d3917e6457cdc9d0166f75a12db91181827089b472704f2f2b107bc
4
- data.tar.gz: 9f1dbe22fd0140ca3ffaf35d9038361a1e5fc738b68e0cb980550683053e309d
3
+ metadata.gz: 2cc9bf9d97c8c62d0f11640454e47cc2cace9f494c3bd2f9c8c5fdd62182b68a
4
+ data.tar.gz: e58d46a32fddd4dc1fe0ee497fd5d0d04b103174cd3de5afbedfc414ce639ccf
5
5
  SHA512:
6
- metadata.gz: d2435113a21a123a55f0f6713157284eb004e54f272eb9d1ca6376e0141966b6064cf1f65224861d3d1693af89caf6a03e64a5e91fbfc3c4ab84465d44a201a3
7
- data.tar.gz: 582d95640f43d91ba425270cd53b36444c17897a6a5112110f866eda51870ebe761906588c0d0d3e3ba4e5a150c3fac5c2aa794229a7fda5c91b8bfcdb5de5b3
6
+ metadata.gz: 05fccecaa713e5ff43b645c14bb6809003e18d3b0b85c03a744224e7695a6597e1b80cb1ccdafa02c303b0f6d479a6f343ae9c312e77c0d03bf94e8da6be1ff1
7
+ data.tar.gz: 66d8937a8dfc26bb6e9a5e8a46da348c5ad3bd2a27cba6def85dad12cf140a706dc06f5d5e65443b0057a58a84f1b06eb5d99b0b8e67ff05b00866c95eec78d3
data/db/emoji.json CHANGED
@@ -640,6 +640,19 @@
640
640
  , "unicode_version": "9.0"
641
641
  , "ios_version": "10.2"
642
642
  }
643
+ , {
644
+ "emoji": "๐Ÿซจ"
645
+ , "description": "shaking face"
646
+ , "category": "Smileys & Emotion"
647
+ , "aliases": [
648
+ "shaking_face"
649
+ ]
650
+ , "tags": [
651
+ "shock"
652
+ ]
653
+ , "unicode_version": "15.0"
654
+ , "ios_version": "16.4"
655
+ }
643
656
  , {
644
657
  "emoji": "๐Ÿ˜Œ"
645
658
  , "description": "relieved face"
@@ -1302,7 +1315,7 @@
1302
1315
  }
1303
1316
  , {
1304
1317
  "emoji": "๐Ÿ˜ก"
1305
- , "description": "pouting face"
1318
+ , "description": "enraged face"
1306
1319
  , "category": "Smileys & Emotion"
1307
1320
  , "aliases": [
1308
1321
  "rage"
@@ -1660,19 +1673,6 @@
1660
1673
  , "unicode_version": "6.0"
1661
1674
  , "ios_version": "6.0"
1662
1675
  }
1663
- , {
1664
- "emoji": "๐Ÿ’‹"
1665
- , "description": "kiss mark"
1666
- , "category": "Smileys & Emotion"
1667
- , "aliases": [
1668
- "kiss"
1669
- ]
1670
- , "tags": [
1671
- "lipstick"
1672
- ]
1673
- , "unicode_version": "6.0"
1674
- , "ios_version": "6.0"
1675
- }
1676
1676
  , {
1677
1677
  "emoji": "๐Ÿ’Œ"
1678
1678
  , "description": "love letter"
@@ -1847,6 +1847,18 @@
1847
1847
  , "unicode_version": ""
1848
1848
  , "ios_version": "6.0"
1849
1849
  }
1850
+ , {
1851
+ "emoji": "๐Ÿฉท"
1852
+ , "description": "pink heart"
1853
+ , "category": "Smileys & Emotion"
1854
+ , "aliases": [
1855
+ "pink_heart"
1856
+ ]
1857
+ , "tags": [
1858
+ ]
1859
+ , "unicode_version": "15.0"
1860
+ , "ios_version": "16.4"
1861
+ }
1850
1862
  , {
1851
1863
  "emoji": "๐Ÿงก"
1852
1864
  , "description": "orange heart"
@@ -1895,6 +1907,18 @@
1895
1907
  , "unicode_version": "6.0"
1896
1908
  , "ios_version": "6.0"
1897
1909
  }
1910
+ , {
1911
+ "emoji": "๐Ÿฉต"
1912
+ , "description": "light blue heart"
1913
+ , "category": "Smileys & Emotion"
1914
+ , "aliases": [
1915
+ "light_blue_heart"
1916
+ ]
1917
+ , "tags": [
1918
+ ]
1919
+ , "unicode_version": "15.0"
1920
+ , "ios_version": "16.4"
1921
+ }
1898
1922
  , {
1899
1923
  "emoji": "๐Ÿ’œ"
1900
1924
  , "description": "purple heart"
@@ -1931,6 +1955,18 @@
1931
1955
  , "unicode_version": "9.0"
1932
1956
  , "ios_version": "10.2"
1933
1957
  }
1958
+ , {
1959
+ "emoji": "๐Ÿฉถ"
1960
+ , "description": "grey heart"
1961
+ , "category": "Smileys & Emotion"
1962
+ , "aliases": [
1963
+ "grey_heart"
1964
+ ]
1965
+ , "tags": [
1966
+ ]
1967
+ , "unicode_version": "15.0"
1968
+ , "ios_version": "16.4"
1969
+ }
1934
1970
  , {
1935
1971
  "emoji": "๐Ÿค"
1936
1972
  , "description": "white heart"
@@ -1943,6 +1979,19 @@
1943
1979
  , "unicode_version": "12.0"
1944
1980
  , "ios_version": "13.0"
1945
1981
  }
1982
+ , {
1983
+ "emoji": "๐Ÿ’‹"
1984
+ , "description": "kiss mark"
1985
+ , "category": "Smileys & Emotion"
1986
+ , "aliases": [
1987
+ "kiss"
1988
+ ]
1989
+ , "tags": [
1990
+ "lipstick"
1991
+ ]
1992
+ , "unicode_version": "6.0"
1993
+ , "ios_version": "6.0"
1994
+ }
1946
1995
  , {
1947
1996
  "emoji": "๐Ÿ’ฏ"
1948
1997
  , "description": "hundred points"
@@ -2038,19 +2087,6 @@
2038
2087
  , "unicode_version": "7.0"
2039
2088
  , "ios_version": "9.1"
2040
2089
  }
2041
- , {
2042
- "emoji": "๐Ÿ’ฃ"
2043
- , "description": "bomb"
2044
- , "category": "Smileys & Emotion"
2045
- , "aliases": [
2046
- "bomb"
2047
- ]
2048
- , "tags": [
2049
- "boom"
2050
- ]
2051
- , "unicode_version": "6.0"
2052
- , "ios_version": "6.0"
2053
- }
2054
2090
  , {
2055
2091
  "emoji": "๐Ÿ’ฌ"
2056
2092
  , "description": "speech balloon"
@@ -2115,7 +2151,7 @@
2115
2151
  }
2116
2152
  , {
2117
2153
  "emoji": "๐Ÿ’ค"
2118
- , "description": "zzz"
2154
+ , "description": "ZZZ"
2119
2155
  , "category": "Smileys & Emotion"
2120
2156
  , "aliases": [
2121
2157
  "zzz"
@@ -2249,6 +2285,32 @@
2249
2285
  , "ios_version": "15.4"
2250
2286
  , "skin_tones": true
2251
2287
  }
2288
+ , {
2289
+ "emoji": "๐Ÿซท"
2290
+ , "description": "leftwards pushing hand"
2291
+ , "category": "People & Body"
2292
+ , "aliases": [
2293
+ "leftwards_pushing_hand"
2294
+ ]
2295
+ , "tags": [
2296
+ ]
2297
+ , "unicode_version": "15.0"
2298
+ , "ios_version": "16.4"
2299
+ , "skin_tones": true
2300
+ }
2301
+ , {
2302
+ "emoji": "๐Ÿซธ"
2303
+ , "description": "rightwards pushing hand"
2304
+ , "category": "People & Body"
2305
+ , "aliases": [
2306
+ "rightwards_pushing_hand"
2307
+ ]
2308
+ , "tags": [
2309
+ ]
2310
+ , "unicode_version": "15.0"
2311
+ , "ios_version": "16.4"
2312
+ , "skin_tones": true
2313
+ }
2252
2314
  , {
2253
2315
  "emoji": "๐Ÿ‘Œ"
2254
2316
  , "description": "OK hand"
@@ -6416,7 +6478,7 @@
6416
6478
  ]
6417
6479
  , "unicode_version": "12.0"
6418
6480
  , "ios_version": "13.0"
6419
- , "skin_tones": false
6481
+ , "skin_tones": true
6420
6482
  }
6421
6483
  , {
6422
6484
  "emoji": "๐Ÿ‘ญ"
@@ -7190,6 +7252,32 @@
7190
7252
  , "unicode_version": "6.0"
7191
7253
  , "ios_version": "6.0"
7192
7254
  }
7255
+ , {
7256
+ "emoji": "๐ŸซŽ"
7257
+ , "description": "moose"
7258
+ , "category": "Animals & Nature"
7259
+ , "aliases": [
7260
+ "moose"
7261
+ ]
7262
+ , "tags": [
7263
+ "canada"
7264
+ ]
7265
+ , "unicode_version": "15.0"
7266
+ , "ios_version": "16.4"
7267
+ }
7268
+ , {
7269
+ "emoji": "๐Ÿซ"
7270
+ , "description": "donkey"
7271
+ , "category": "Animals & Nature"
7272
+ , "aliases": [
7273
+ "donkey"
7274
+ ]
7275
+ , "tags": [
7276
+ "mule"
7277
+ ]
7278
+ , "unicode_version": "15.0"
7279
+ , "ios_version": "16.4"
7280
+ }
7193
7281
  , {
7194
7282
  "emoji": "๐ŸŽ"
7195
7283
  , "description": "horse"
@@ -7941,6 +8029,44 @@
7941
8029
  , "unicode_version": "11.0"
7942
8030
  , "ios_version": "12.1"
7943
8031
  }
8032
+ , {
8033
+ "emoji": "๐Ÿชฝ"
8034
+ , "description": "wing"
8035
+ , "category": "Animals & Nature"
8036
+ , "aliases": [
8037
+ "wing"
8038
+ ]
8039
+ , "tags": [
8040
+ "fly"
8041
+ ]
8042
+ , "unicode_version": "15.0"
8043
+ , "ios_version": "16.4"
8044
+ }
8045
+ , {
8046
+ "emoji": "๐Ÿฆโ€โฌ›"
8047
+ , "description": "black bird"
8048
+ , "category": "Animals & Nature"
8049
+ , "aliases": [
8050
+ "black_bird"
8051
+ ]
8052
+ , "tags": [
8053
+ ]
8054
+ , "unicode_version": "15.0"
8055
+ , "ios_version": "16.4"
8056
+ }
8057
+ , {
8058
+ "emoji": "๐Ÿชฟ"
8059
+ , "description": "goose"
8060
+ , "category": "Animals & Nature"
8061
+ , "aliases": [
8062
+ "goose"
8063
+ ]
8064
+ , "tags": [
8065
+ "honk"
8066
+ ]
8067
+ , "unicode_version": "15.0"
8068
+ , "ios_version": "16.4"
8069
+ }
7944
8070
  , {
7945
8071
  "emoji": "๐Ÿธ"
7946
8072
  , "description": "frog"
@@ -8188,6 +8314,18 @@
8188
8314
  , "unicode_version": "14.0"
8189
8315
  , "ios_version": "15.4"
8190
8316
  }
8317
+ , {
8318
+ "emoji": "๐Ÿชผ"
8319
+ , "description": "jellyfish"
8320
+ , "category": "Animals & Nature"
8321
+ , "aliases": [
8322
+ "jellyfish"
8323
+ ]
8324
+ , "tags": [
8325
+ ]
8326
+ , "unicode_version": "15.0"
8327
+ , "ios_version": "16.4"
8328
+ }
8191
8329
  , {
8192
8330
  "emoji": "๐ŸŒ"
8193
8331
  , "description": "snail"
@@ -8521,6 +8659,18 @@
8521
8659
  , "unicode_version": "6.0"
8522
8660
  , "ios_version": "6.0"
8523
8661
  }
8662
+ , {
8663
+ "emoji": "๐Ÿชป"
8664
+ , "description": "hyacinth"
8665
+ , "category": "Animals & Nature"
8666
+ , "aliases": [
8667
+ "hyacinth"
8668
+ ]
8669
+ , "tags": [
8670
+ ]
8671
+ , "unicode_version": "15.0"
8672
+ , "ios_version": "16.4"
8673
+ }
8524
8674
  , {
8525
8675
  "emoji": "๐ŸŒฑ"
8526
8676
  , "description": "seedling"
@@ -8708,6 +8858,19 @@
8708
8858
  , "unicode_version": "14.0"
8709
8859
  , "ios_version": "15.4"
8710
8860
  }
8861
+ , {
8862
+ "emoji": "๐Ÿ„"
8863
+ , "description": "mushroom"
8864
+ , "category": "Animals & Nature"
8865
+ , "aliases": [
8866
+ "mushroom"
8867
+ ]
8868
+ , "tags": [
8869
+ "fungus"
8870
+ ]
8871
+ , "unicode_version": "6.0"
8872
+ , "ios_version": "6.0"
8873
+ }
8711
8874
  , {
8712
8875
  "emoji": "๐Ÿ‡"
8713
8876
  , "description": "grapes"
@@ -9088,18 +9251,6 @@
9088
9251
  , "unicode_version": "12.0"
9089
9252
  , "ios_version": "13.0"
9090
9253
  }
9091
- , {
9092
- "emoji": "๐Ÿ„"
9093
- , "description": "mushroom"
9094
- , "category": "Food & Drink"
9095
- , "aliases": [
9096
- "mushroom"
9097
- ]
9098
- , "tags": [
9099
- ]
9100
- , "unicode_version": "6.0"
9101
- , "ios_version": "6.0"
9102
- }
9103
9254
  , {
9104
9255
  "emoji": "๐Ÿฅœ"
9105
9256
  , "description": "peanuts"
@@ -9136,6 +9287,30 @@
9136
9287
  , "unicode_version": "6.0"
9137
9288
  , "ios_version": "6.0"
9138
9289
  }
9290
+ , {
9291
+ "emoji": "๐Ÿซš"
9292
+ , "description": "ginger root"
9293
+ , "category": "Food & Drink"
9294
+ , "aliases": [
9295
+ "ginger_root"
9296
+ ]
9297
+ , "tags": [
9298
+ ]
9299
+ , "unicode_version": "15.0"
9300
+ , "ios_version": "16.4"
9301
+ }
9302
+ , {
9303
+ "emoji": "๐Ÿซ›"
9304
+ , "description": "pea pod"
9305
+ , "category": "Food & Drink"
9306
+ , "aliases": [
9307
+ "pea_pod"
9308
+ ]
9309
+ , "tags": [
9310
+ ]
9311
+ , "unicode_version": "15.0"
9312
+ , "ios_version": "16.4"
9313
+ }
9139
9314
  , {
9140
9315
  "emoji": "๐Ÿž"
9141
9316
  , "description": "bread"
@@ -13727,6 +13902,20 @@
13727
13902
  , "unicode_version": "12.0"
13728
13903
  , "ios_version": "13.0"
13729
13904
  }
13905
+ , {
13906
+ "emoji": "๐Ÿ”ซ"
13907
+ , "description": "water pistol"
13908
+ , "category": "Activities"
13909
+ , "aliases": [
13910
+ "gun"
13911
+ ]
13912
+ , "tags": [
13913
+ "shoot"
13914
+ , "weapon"
13915
+ ]
13916
+ , "unicode_version": "6.0"
13917
+ , "ios_version": "6.0"
13918
+ }
13730
13919
  , {
13731
13920
  "emoji": "๐ŸŽฑ"
13732
13921
  , "description": "pool 8 ball"
@@ -13766,30 +13955,6 @@
13766
13955
  , "unicode_version": "13.0"
13767
13956
  , "ios_version": "14.0"
13768
13957
  }
13769
- , {
13770
- "emoji": "๐Ÿงฟ"
13771
- , "description": "nazar amulet"
13772
- , "category": "Activities"
13773
- , "aliases": [
13774
- "nazar_amulet"
13775
- ]
13776
- , "tags": [
13777
- ]
13778
- , "unicode_version": "11.0"
13779
- , "ios_version": "12.1"
13780
- }
13781
- , {
13782
- "emoji": "๐Ÿชฌ"
13783
- , "description": "hamsa"
13784
- , "category": "Activities"
13785
- , "aliases": [
13786
- "hamsa"
13787
- ]
13788
- , "tags": [
13789
- ]
13790
- , "unicode_version": "14.0"
13791
- , "ios_version": "15.4"
13792
- }
13793
13958
  , {
13794
13959
  "emoji": "๐ŸŽฎ"
13795
13960
  , "description": "video game"
@@ -14335,6 +14500,19 @@
14335
14500
  , "unicode_version": "6.0"
14336
14501
  , "ios_version": "6.0"
14337
14502
  }
14503
+ , {
14504
+ "emoji": "๐Ÿชญ"
14505
+ , "description": "folding hand fan"
14506
+ , "category": "Objects"
14507
+ , "aliases": [
14508
+ "folding_hand_fan"
14509
+ ]
14510
+ , "tags": [
14511
+ "sensu"
14512
+ ]
14513
+ , "unicode_version": "15.0"
14514
+ , "ios_version": "16.4"
14515
+ }
14338
14516
  , {
14339
14517
  "emoji": "๐Ÿ‘›"
14340
14518
  , "description": "purse"
@@ -14512,6 +14690,18 @@
14512
14690
  , "unicode_version": "6.0"
14513
14691
  , "ios_version": "6.0"
14514
14692
  }
14693
+ , {
14694
+ "emoji": "๐Ÿชฎ"
14695
+ , "description": "hair pick"
14696
+ , "category": "Objects"
14697
+ , "aliases": [
14698
+ "hair_pick"
14699
+ ]
14700
+ , "tags": [
14701
+ ]
14702
+ , "unicode_version": "15.0"
14703
+ , "ios_version": "16.4"
14704
+ }
14515
14705
  , {
14516
14706
  "emoji": "๐Ÿ‘‘"
14517
14707
  , "description": "crown"
@@ -14999,6 +15189,32 @@
14999
15189
  , "unicode_version": "13.0"
15000
15190
  , "ios_version": "14.0"
15001
15191
  }
15192
+ , {
15193
+ "emoji": "๐Ÿช‡"
15194
+ , "description": "maracas"
15195
+ , "category": "Objects"
15196
+ , "aliases": [
15197
+ "maracas"
15198
+ ]
15199
+ , "tags": [
15200
+ "shaker"
15201
+ ]
15202
+ , "unicode_version": "15.0"
15203
+ , "ios_version": "16.4"
15204
+ }
15205
+ , {
15206
+ "emoji": "๐Ÿชˆ"
15207
+ , "description": "flute"
15208
+ , "category": "Objects"
15209
+ , "aliases": [
15210
+ "flute"
15211
+ ]
15212
+ , "tags": [
15213
+ "recorder"
15214
+ ]
15215
+ , "unicode_version": "15.0"
15216
+ , "ios_version": "16.4"
15217
+ }
15002
15218
  , {
15003
15219
  "emoji": "๐Ÿ“ฑ"
15004
15220
  , "description": "mobile phone"
@@ -16490,15 +16706,14 @@
16490
16706
  , "ios_version": "9.1"
16491
16707
  }
16492
16708
  , {
16493
- "emoji": "๐Ÿ”ซ"
16494
- , "description": "water pistol"
16709
+ "emoji": "๐Ÿ’ฃ"
16710
+ , "description": "bomb"
16495
16711
  , "category": "Objects"
16496
16712
  , "aliases": [
16497
- "gun"
16713
+ "bomb"
16498
16714
  ]
16499
16715
  , "tags": [
16500
- "shoot"
16501
- , "weapon"
16716
+ "boom"
16502
16717
  ]
16503
16718
  , "unicode_version": "6.0"
16504
16719
  , "ios_version": "6.0"
@@ -17239,6 +17454,30 @@
17239
17454
  , "unicode_version": "4.1"
17240
17455
  , "ios_version": "9.1"
17241
17456
  }
17457
+ , {
17458
+ "emoji": "๐Ÿงฟ"
17459
+ , "description": "nazar amulet"
17460
+ , "category": "Objects"
17461
+ , "aliases": [
17462
+ "nazar_amulet"
17463
+ ]
17464
+ , "tags": [
17465
+ ]
17466
+ , "unicode_version": "11.0"
17467
+ , "ios_version": "12.1"
17468
+ }
17469
+ , {
17470
+ "emoji": "๐Ÿชฌ"
17471
+ , "description": "hamsa"
17472
+ , "category": "Objects"
17473
+ , "aliases": [
17474
+ "hamsa"
17475
+ ]
17476
+ , "tags": [
17477
+ ]
17478
+ , "unicode_version": "14.0"
17479
+ , "ios_version": "15.4"
17480
+ }
17242
17481
  , {
17243
17482
  "emoji": "๐Ÿ—ฟ"
17244
17483
  , "description": "moai"
@@ -17995,6 +18234,18 @@
17995
18234
  , "unicode_version": "6.0"
17996
18235
  , "ios_version": "6.0"
17997
18236
  }
18237
+ , {
18238
+ "emoji": "๐Ÿชฏ"
18239
+ , "description": "khanda"
18240
+ , "category": "Symbols"
18241
+ , "aliases": [
18242
+ "khanda"
18243
+ ]
18244
+ , "tags": [
18245
+ ]
18246
+ , "unicode_version": "15.0"
18247
+ , "ios_version": "16.4"
18248
+ }
17998
18249
  , {
17999
18250
  "emoji": "โ™ˆ"
18000
18251
  , "description": "Aries"
@@ -18420,6 +18671,19 @@
18420
18671
  , "unicode_version": "6.0"
18421
18672
  , "ios_version": "6.0"
18422
18673
  }
18674
+ , {
18675
+ "emoji": "๐Ÿ›œ"
18676
+ , "description": "wireless"
18677
+ , "category": "Symbols"
18678
+ , "aliases": [
18679
+ "wireless"
18680
+ ]
18681
+ , "tags": [
18682
+ "wifi"
18683
+ ]
18684
+ , "unicode_version": "15.0"
18685
+ , "ios_version": "16.4"
18686
+ }
18423
18687
  , {
18424
18688
  "emoji": "๐Ÿ“ณ"
18425
18689
  , "description": "vibration mode"
@@ -43,13 +43,20 @@ module Emoji
43
43
  # Raw Unicode string for an emoji. Nil if emoji is non-standard.
44
44
  def raw() unicode_aliases.first end
45
45
 
46
- # Raw Unicode strings for each skin tone variant of this emoji.
46
+ # Raw Unicode strings for each skin tone variant of this emoji. The result is an empty array
47
+ # unless the emoji supports skin tones.
48
+ #
49
+ # Note: for emojis that depict multiple people (e.g. couples or families), this will not produce
50
+ # every possible permutation of skin tone per person.
47
51
  def raw_skin_tone_variants
48
52
  return [] if custom? || !skin_tones?
49
- raw_normalized = raw.sub("\u{fe0f}", "") # strip VARIATION_SELECTOR_16
50
- idx = raw_normalized.index("\u{200d}") # detect zero-width joiner
53
+ raw_normalized = raw.sub(VARIATION_SELECTOR_16, "")
54
+ idx = raw_normalized.index(ZERO_WIDTH_JOINER)
51
55
  SKIN_TONES.map do |modifier|
52
- if idx
56
+ if raw_normalized == PEOPLE_HOLDING_HANDS
57
+ # special case to apply the modifier to both persons
58
+ raw_normalized[0...idx] + modifier + raw_normalized[idx..nil] + modifier
59
+ elsif idx
53
60
  # insert modifier before zero-width joiner
54
61
  raw_normalized[0...idx] + modifier + raw_normalized[idx..nil]
55
62
  else
@@ -97,7 +104,11 @@ module Emoji
97
104
  end
98
105
 
99
106
  private
100
-
107
+
108
+ VARIATION_SELECTOR_16 = "\u{fe0f}".freeze
109
+ ZERO_WIDTH_JOINER = "\u{200d}".freeze
110
+ PEOPLE_HOLDING_HANDS = "\u{1f9d1}\u{200d}\u{1f91d}\u{200d}\u{1f9d1}".freeze
111
+
101
112
  SKIN_TONES = [
102
113
  "\u{1F3FB}", # light skin tone
103
114
  "\u{1F3FC}", # medium-light skin tone
@@ -106,7 +117,7 @@ module Emoji
106
117
  "\u{1F3FF}", # dark skin tone
107
118
  ]
108
119
 
109
- private_constant :SKIN_TONES
120
+ private_constant :VARIATION_SELECTOR_16, :ZERO_WIDTH_JOINER, :PEOPLE_HOLDING_HANDS, :SKIN_TONES
110
121
 
111
122
  def default_image_filename
112
123
  if custom?
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemoji
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.1
4
+ version: 4.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-22 00:00:00.000000000 Z
11
+ date: 2023-03-29 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Character information and metadata for Unicode emoji.
14
14
  email: support@github.com