diff --git a/lib/tasks/emojis.rake b/lib/tasks/emojis.rake
index 70919fbdb..0e7921ffc 100644
--- a/lib/tasks/emojis.rake
+++ b/lib/tasks/emojis.rake
@@ -1,5 +1,35 @@
# frozen_string_literal: true
+def gen_border(codepoint)
+ input = Rails.root.join('public', 'emoji', "#{codepoint}.svg")
+ dest = Rails.root.join('public', 'emoji', "#{codepoint}_border.svg")
+ doc = File.open(input) { |f| Nokogiri::XML(f) }
+ svg = doc.at_css('svg')
+ if svg.key?('viewBox')
+ view_box = svg['viewBox'].split(' ').map(&:to_i)
+ view_box[0] -= 2
+ view_box[1] -= 2
+ view_box[2] += 4
+ view_box[3] += 4
+ svg['viewBox'] = view_box.join(' ')
+ end
+ g = Nokogiri::XML::Node.new 'g', doc
+ doc.css('svg > *').each do |elem|
+ border_elem = elem.dup
+
+ border_elem.delete('fill')
+
+ border_elem['stroke'] = 'white'
+ border_elem['stroke-linejoin'] = 'round'
+ border_elem['stroke-width'] = '4px'
+
+ g.add_child(border_elem)
+ end
+ svg.prepend_child(g)
+ File.write(dest, doc.to_xml)
+ puts "Wrote bordered #{codepoint}.svg to #{dest}!"
+end
+
def codepoints_to_filename(codepoints)
codepoints.downcase.gsub(/\A[0]+/, '').tr(' ', '-')
end
@@ -23,8 +53,10 @@ namespace :emojis do
HTTP.get(source).to_s.split("\n").each do |line|
next if line.start_with? '#'
+
parts = line.split(';').map(&:strip)
next if parts.size < 2
+
codes << [parts[0], parts[1].start_with?('fully-qualified')]
end
@@ -55,4 +87,16 @@ namespace :emojis do
File.write(dest, Oj.dump(map))
puts "Wrote emojo to destination! (#{dest})"
end
+
+ desc 'Generate emoji variants with white borders'
+ task :generate_borders do
+ src = Rails.root.join('app', 'javascript', 'mastodon', 'features', 'emoji', 'emoji_map.json')
+ emojis = 'đąđâĢđ¤âŦâŧī¸âžâŧī¸âī¸âĒī¸đŖđŗđˇđ¸âŖī¸đļī¸â´ī¸đđââī¸đŊī¸đŗđĻđđĒđŗī¸đšī¸đđī¸đī¸đââī¸đ¤đđĨđŧâ ī¸đŠđĻđŧđšđŽđđ´đŊâžđâī¸đ¨đī¸đđĨđģđâââ¸ī¸đŠī¸đđđđ§ī¸đđđđđđâ ī¸đ¨ī¸đđđŦđđđŗī¸âĒâŦâŊâģī¸âĢī¸'
+
+ map = Oj.load(File.read(src))
+
+ emojis.each_grapheme_cluster do |emoji|
+ gen_border map[emoji]
+ end
+ end
end
diff --git a/public/emoji/1f327_border.svg b/public/emoji/1f327_border.svg
new file mode 100644
index 000000000..3298c8f87
--- /dev/null
+++ b/public/emoji/1f327_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f328_border.svg b/public/emoji/1f328_border.svg
new file mode 100644
index 000000000..254dc90de
--- /dev/null
+++ b/public/emoji/1f328_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f329_border.svg b/public/emoji/1f329_border.svg
new file mode 100644
index 000000000..05c662ac4
--- /dev/null
+++ b/public/emoji/1f329_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f359_border.svg b/public/emoji/1f359_border.svg
new file mode 100644
index 000000000..6541681d8
--- /dev/null
+++ b/public/emoji/1f359_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f35a_border.svg b/public/emoji/1f35a_border.svg
new file mode 100644
index 000000000..d6621c590
--- /dev/null
+++ b/public/emoji/1f35a_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f365_border.svg b/public/emoji/1f365_border.svg
new file mode 100644
index 000000000..278cebd43
--- /dev/null
+++ b/public/emoji/1f365_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f373_border.svg b/public/emoji/1f373_border.svg
new file mode 100644
index 000000000..56b1ef9e6
--- /dev/null
+++ b/public/emoji/1f373_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f393_border.svg b/public/emoji/1f393_border.svg
new file mode 100644
index 000000000..1af6e6fdb
--- /dev/null
+++ b/public/emoji/1f393_border.svg
@@ -0,0 +1,19 @@
+
+
diff --git a/public/emoji/1f3a4_border.svg b/public/emoji/1f3a4_border.svg
new file mode 100644
index 000000000..78f546247
--- /dev/null
+++ b/public/emoji/1f3a4_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f3a5_border.svg b/public/emoji/1f3a5_border.svg
new file mode 100644
index 000000000..cb4415635
--- /dev/null
+++ b/public/emoji/1f3a5_border.svg
@@ -0,0 +1,21 @@
+
+
diff --git a/public/emoji/1f3a9_border.svg b/public/emoji/1f3a9_border.svg
new file mode 100644
index 000000000..87671f0ee
--- /dev/null
+++ b/public/emoji/1f3a9_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f3ae_border.svg b/public/emoji/1f3ae_border.svg
new file mode 100644
index 000000000..4a17797b1
--- /dev/null
+++ b/public/emoji/1f3ae_border.svg
@@ -0,0 +1,35 @@
+
+
diff --git a/public/emoji/1f3b1_border.svg b/public/emoji/1f3b1_border.svg
new file mode 100644
index 000000000..59dc9e819
--- /dev/null
+++ b/public/emoji/1f3b1_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f3b3_border.svg b/public/emoji/1f3b3_border.svg
new file mode 100644
index 000000000..71daa085f
--- /dev/null
+++ b/public/emoji/1f3b3_border.svg
@@ -0,0 +1,21 @@
+
+
diff --git a/public/emoji/1f3bc_border.svg b/public/emoji/1f3bc_border.svg
new file mode 100644
index 000000000..f7aafddac
--- /dev/null
+++ b/public/emoji/1f3bc_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f3d0_border.svg b/public/emoji/1f3d0_border.svg
new file mode 100644
index 000000000..c1804f2cb
--- /dev/null
+++ b/public/emoji/1f3d0_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f3f3_border.svg b/public/emoji/1f3f3_border.svg
new file mode 100644
index 000000000..e7d03583b
--- /dev/null
+++ b/public/emoji/1f3f3_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f3f4_border.svg b/public/emoji/1f3f4_border.svg
new file mode 100644
index 000000000..7251ad712
--- /dev/null
+++ b/public/emoji/1f3f4_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f403_border.svg b/public/emoji/1f403_border.svg
new file mode 100644
index 000000000..ed788427a
--- /dev/null
+++ b/public/emoji/1f403_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f40f_border.svg b/public/emoji/1f40f_border.svg
new file mode 100644
index 000000000..fb4bbcfb3
--- /dev/null
+++ b/public/emoji/1f40f_border.svg
@@ -0,0 +1,23 @@
+
+
diff --git a/public/emoji/1f410_border.svg b/public/emoji/1f410_border.svg
new file mode 100644
index 000000000..7a36382b5
--- /dev/null
+++ b/public/emoji/1f410_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f411_border.svg b/public/emoji/1f411_border.svg
new file mode 100644
index 000000000..dc4ddeb08
--- /dev/null
+++ b/public/emoji/1f411_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f413_border.svg b/public/emoji/1f413_border.svg
new file mode 100644
index 000000000..3391490df
--- /dev/null
+++ b/public/emoji/1f413_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f414_border.svg b/public/emoji/1f414_border.svg
new file mode 100644
index 000000000..ad54bd1b8
--- /dev/null
+++ b/public/emoji/1f414_border.svg
@@ -0,0 +1,19 @@
+
+
diff --git a/public/emoji/1f41c_border.svg b/public/emoji/1f41c_border.svg
new file mode 100644
index 000000000..929f7482a
--- /dev/null
+++ b/public/emoji/1f41c_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f440_border.svg b/public/emoji/1f440_border.svg
new file mode 100644
index 000000000..f25c3ca40
--- /dev/null
+++ b/public/emoji/1f440_border.svg
@@ -0,0 +1,25 @@
+
+
diff --git a/public/emoji/1f464_border.svg b/public/emoji/1f464_border.svg
new file mode 100644
index 000000000..c7393d6bd
--- /dev/null
+++ b/public/emoji/1f464_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f465_border.svg b/public/emoji/1f465_border.svg
new file mode 100644
index 000000000..cc3732c4e
--- /dev/null
+++ b/public/emoji/1f465_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f47b_border.svg b/public/emoji/1f47b_border.svg
new file mode 100644
index 000000000..80ac01215
--- /dev/null
+++ b/public/emoji/1f47b_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f47d_border.svg b/public/emoji/1f47d_border.svg
new file mode 100644
index 000000000..e1d4a54d7
--- /dev/null
+++ b/public/emoji/1f47d_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f480_border.svg b/public/emoji/1f480_border.svg
new file mode 100644
index 000000000..8546f7b00
--- /dev/null
+++ b/public/emoji/1f480_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f482-1f3fb-200d-2640-fe0f_border.svg b/public/emoji/1f482-1f3fb-200d-2640-fe0f_border.svg
new file mode 100644
index 000000000..7c7ff7949
--- /dev/null
+++ b/public/emoji/1f482-1f3fb-200d-2640-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fb-200d-2642-fe0f_border.svg b/public/emoji/1f482-1f3fb-200d-2642-fe0f_border.svg
new file mode 100644
index 000000000..e601eae22
--- /dev/null
+++ b/public/emoji/1f482-1f3fb-200d-2642-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fb_border.svg b/public/emoji/1f482-1f3fb_border.svg
new file mode 100644
index 000000000..98d025086
--- /dev/null
+++ b/public/emoji/1f482-1f3fb_border.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/public/emoji/1f482-1f3fc-200d-2640-fe0f_border.svg b/public/emoji/1f482-1f3fc-200d-2640-fe0f_border.svg
new file mode 100644
index 000000000..4542fbc40
--- /dev/null
+++ b/public/emoji/1f482-1f3fc-200d-2640-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fc-200d-2642-fe0f_border.svg b/public/emoji/1f482-1f3fc-200d-2642-fe0f_border.svg
new file mode 100644
index 000000000..e4cf68375
--- /dev/null
+++ b/public/emoji/1f482-1f3fc-200d-2642-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fc_border.svg b/public/emoji/1f482-1f3fc_border.svg
new file mode 100644
index 000000000..279f34362
--- /dev/null
+++ b/public/emoji/1f482-1f3fc_border.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/public/emoji/1f482-1f3fd-200d-2640-fe0f_border.svg b/public/emoji/1f482-1f3fd-200d-2640-fe0f_border.svg
new file mode 100644
index 000000000..d93566dcc
--- /dev/null
+++ b/public/emoji/1f482-1f3fd-200d-2640-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fd-200d-2642-fe0f_border.svg b/public/emoji/1f482-1f3fd-200d-2642-fe0f_border.svg
new file mode 100644
index 000000000..bd4270dd3
--- /dev/null
+++ b/public/emoji/1f482-1f3fd-200d-2642-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fd_border.svg b/public/emoji/1f482-1f3fd_border.svg
new file mode 100644
index 000000000..1d40871a6
--- /dev/null
+++ b/public/emoji/1f482-1f3fd_border.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/public/emoji/1f482-1f3fe-200d-2640-fe0f_border.svg b/public/emoji/1f482-1f3fe-200d-2640-fe0f_border.svg
new file mode 100644
index 000000000..1f590fa5e
--- /dev/null
+++ b/public/emoji/1f482-1f3fe-200d-2640-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fe-200d-2642-fe0f_border.svg b/public/emoji/1f482-1f3fe-200d-2642-fe0f_border.svg
new file mode 100644
index 000000000..b74e4930c
--- /dev/null
+++ b/public/emoji/1f482-1f3fe-200d-2642-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3fe_border.svg b/public/emoji/1f482-1f3fe_border.svg
new file mode 100644
index 000000000..0024c77f8
--- /dev/null
+++ b/public/emoji/1f482-1f3fe_border.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/public/emoji/1f482-1f3ff-200d-2640-fe0f_border.svg b/public/emoji/1f482-1f3ff-200d-2640-fe0f_border.svg
new file mode 100644
index 000000000..e426d8efa
--- /dev/null
+++ b/public/emoji/1f482-1f3ff-200d-2640-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3ff-200d-2642-fe0f_border.svg b/public/emoji/1f482-1f3ff-200d-2642-fe0f_border.svg
new file mode 100644
index 000000000..3c4515c0f
--- /dev/null
+++ b/public/emoji/1f482-1f3ff-200d-2642-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-1f3ff_border.svg b/public/emoji/1f482-1f3ff_border.svg
new file mode 100644
index 000000000..0183693a9
--- /dev/null
+++ b/public/emoji/1f482-1f3ff_border.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/public/emoji/1f482-200d-2640-fe0f_border.svg b/public/emoji/1f482-200d-2640-fe0f_border.svg
new file mode 100644
index 000000000..480318a6e
--- /dev/null
+++ b/public/emoji/1f482-200d-2640-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482-200d-2642-fe0f_border.svg b/public/emoji/1f482-200d-2642-fe0f_border.svg
new file mode 100644
index 000000000..5c68070a7
--- /dev/null
+++ b/public/emoji/1f482-200d-2642-fe0f_border.svg
@@ -0,0 +1,27 @@
+
+
diff --git a/public/emoji/1f482_border.svg b/public/emoji/1f482_border.svg
new file mode 100644
index 000000000..f4da528fb
--- /dev/null
+++ b/public/emoji/1f482_border.svg
@@ -0,0 +1,31 @@
+
+
diff --git a/public/emoji/1f4a3_border.svg b/public/emoji/1f4a3_border.svg
new file mode 100644
index 000000000..aac8f4443
--- /dev/null
+++ b/public/emoji/1f4a3_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f4a8_border.svg b/public/emoji/1f4a8_border.svg
new file mode 100644
index 000000000..c20a5cb3b
--- /dev/null
+++ b/public/emoji/1f4a8_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f4ac_border.svg b/public/emoji/1f4ac_border.svg
new file mode 100644
index 000000000..3d71232f9
--- /dev/null
+++ b/public/emoji/1f4ac_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f4ad_border.svg b/public/emoji/1f4ad_border.svg
new file mode 100644
index 000000000..c887a7126
--- /dev/null
+++ b/public/emoji/1f4ad_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f4b1_border.svg b/public/emoji/1f4b1_border.svg
new file mode 100644
index 000000000..f5ef5e849
--- /dev/null
+++ b/public/emoji/1f4b1_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f4b2_border.svg b/public/emoji/1f4b2_border.svg
new file mode 100644
index 000000000..3bfe777e4
--- /dev/null
+++ b/public/emoji/1f4b2_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f4c3_border.svg b/public/emoji/1f4c3_border.svg
new file mode 100644
index 000000000..9e7b56241
--- /dev/null
+++ b/public/emoji/1f4c3_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f4de_border.svg b/public/emoji/1f4de_border.svg
new file mode 100644
index 000000000..2a8044d96
--- /dev/null
+++ b/public/emoji/1f4de_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f4f7_border.svg b/public/emoji/1f4f7_border.svg
new file mode 100644
index 000000000..60421f912
--- /dev/null
+++ b/public/emoji/1f4f7_border.svg
@@ -0,0 +1,19 @@
+
+
diff --git a/public/emoji/1f4f8_border.svg b/public/emoji/1f4f8_border.svg
new file mode 100644
index 000000000..6bb518f54
--- /dev/null
+++ b/public/emoji/1f4f8_border.svg
@@ -0,0 +1,19 @@
+
+
diff --git a/public/emoji/1f4f9_border.svg b/public/emoji/1f4f9_border.svg
new file mode 100644
index 000000000..8adae2f15
--- /dev/null
+++ b/public/emoji/1f4f9_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f4fc_border.svg b/public/emoji/1f4fc_border.svg
new file mode 100644
index 000000000..8b6081428
--- /dev/null
+++ b/public/emoji/1f4fc_border.svg
@@ -0,0 +1,23 @@
+
+
diff --git a/public/emoji/1f4fd_border.svg b/public/emoji/1f4fd_border.svg
new file mode 100644
index 000000000..3b2050bae
--- /dev/null
+++ b/public/emoji/1f4fd_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f507_border.svg b/public/emoji/1f507_border.svg
new file mode 100644
index 000000000..cd02481bd
--- /dev/null
+++ b/public/emoji/1f507_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f508_border.svg b/public/emoji/1f508_border.svg
new file mode 100644
index 000000000..c920d89dc
--- /dev/null
+++ b/public/emoji/1f508_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f509_border.svg b/public/emoji/1f509_border.svg
new file mode 100644
index 000000000..6881edb30
--- /dev/null
+++ b/public/emoji/1f509_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f50a_border.svg b/public/emoji/1f50a_border.svg
new file mode 100644
index 000000000..549811b69
--- /dev/null
+++ b/public/emoji/1f50a_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f50c_border.svg b/public/emoji/1f50c_border.svg
new file mode 100644
index 000000000..6e37ecd63
--- /dev/null
+++ b/public/emoji/1f50c_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f519_border.svg b/public/emoji/1f519_border.svg
new file mode 100644
index 000000000..801bafb8b
--- /dev/null
+++ b/public/emoji/1f519_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f51a_border.svg b/public/emoji/1f51a_border.svg
new file mode 100644
index 000000000..057cf9820
--- /dev/null
+++ b/public/emoji/1f51a_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f51b_border.svg b/public/emoji/1f51b_border.svg
new file mode 100644
index 000000000..ccc8ed099
--- /dev/null
+++ b/public/emoji/1f51b_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f51c_border.svg b/public/emoji/1f51c_border.svg
new file mode 100644
index 000000000..3552cfa65
--- /dev/null
+++ b/public/emoji/1f51c_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f51d_border.svg b/public/emoji/1f51d_border.svg
new file mode 100644
index 000000000..a81b553f8
--- /dev/null
+++ b/public/emoji/1f51d_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f52a_border.svg b/public/emoji/1f52a_border.svg
new file mode 100644
index 000000000..0a9bdeab6
--- /dev/null
+++ b/public/emoji/1f52a_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f54a_border.svg b/public/emoji/1f54a_border.svg
new file mode 100644
index 000000000..895872f3e
--- /dev/null
+++ b/public/emoji/1f54a_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/1f54b_border.svg b/public/emoji/1f54b_border.svg
new file mode 100644
index 000000000..5f6d6f202
--- /dev/null
+++ b/public/emoji/1f54b_border.svg
@@ -0,0 +1,19 @@
+
+
diff --git a/public/emoji/1f573_border.svg b/public/emoji/1f573_border.svg
new file mode 100644
index 000000000..7a8cf732e
--- /dev/null
+++ b/public/emoji/1f573_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/1f576_border.svg b/public/emoji/1f576_border.svg
new file mode 100644
index 000000000..4ad1315ef
--- /dev/null
+++ b/public/emoji/1f576_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f577_border.svg b/public/emoji/1f577_border.svg
new file mode 100644
index 000000000..bf3b8c7eb
--- /dev/null
+++ b/public/emoji/1f577_border.svg
@@ -0,0 +1,25 @@
+
+
diff --git a/public/emoji/1f579_border.svg b/public/emoji/1f579_border.svg
new file mode 100644
index 000000000..f71237315
--- /dev/null
+++ b/public/emoji/1f579_border.svg
@@ -0,0 +1,19 @@
+
+
diff --git a/public/emoji/1f58a_border.svg b/public/emoji/1f58a_border.svg
new file mode 100644
index 000000000..42a312534
--- /dev/null
+++ b/public/emoji/1f58a_border.svg
@@ -0,0 +1,17 @@
+
+
diff --git a/public/emoji/1f58b_border.svg b/public/emoji/1f58b_border.svg
new file mode 100644
index 000000000..f0a6459ca
--- /dev/null
+++ b/public/emoji/1f58b_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/1f5a4_border.svg b/public/emoji/1f5a4_border.svg
new file mode 100644
index 000000000..63aa792ce
--- /dev/null
+++ b/public/emoji/1f5a4_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/1f5e3_border.svg b/public/emoji/1f5e3_border.svg
new file mode 100644
index 000000000..8920fb239
--- /dev/null
+++ b/public/emoji/1f5e3_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/1f983_border.svg b/public/emoji/1f983_border.svg
new file mode 100644
index 000000000..ccd557b04
--- /dev/null
+++ b/public/emoji/1f983_border.svg
@@ -0,0 +1,19 @@
+
+
diff --git a/public/emoji/1f98d_border.svg b/public/emoji/1f98d_border.svg
new file mode 100644
index 000000000..1f022a9ba
--- /dev/null
+++ b/public/emoji/1f98d_border.svg
@@ -0,0 +1,23 @@
+
+
diff --git a/public/emoji/2122_border.svg b/public/emoji/2122_border.svg
new file mode 100644
index 000000000..f0fbee1b1
--- /dev/null
+++ b/public/emoji/2122_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/25aa_border.svg b/public/emoji/25aa_border.svg
new file mode 100644
index 000000000..220eb4345
--- /dev/null
+++ b/public/emoji/25aa_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/25ab_border.svg b/public/emoji/25ab_border.svg
new file mode 100644
index 000000000..b51e1a9cc
--- /dev/null
+++ b/public/emoji/25ab_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/25fb_border.svg b/public/emoji/25fb_border.svg
new file mode 100644
index 000000000..24c48e17a
--- /dev/null
+++ b/public/emoji/25fb_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/25fc_border.svg b/public/emoji/25fc_border.svg
new file mode 100644
index 000000000..345e972ed
--- /dev/null
+++ b/public/emoji/25fc_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/25fd_border.svg b/public/emoji/25fd_border.svg
new file mode 100644
index 000000000..ec7278674
--- /dev/null
+++ b/public/emoji/25fd_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/25fe_border.svg b/public/emoji/25fe_border.svg
new file mode 100644
index 000000000..775bb6718
--- /dev/null
+++ b/public/emoji/25fe_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2601_border.svg b/public/emoji/2601_border.svg
new file mode 100644
index 000000000..6ab20d737
--- /dev/null
+++ b/public/emoji/2601_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/2620_border.svg b/public/emoji/2620_border.svg
new file mode 100644
index 000000000..8878828be
--- /dev/null
+++ b/public/emoji/2620_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/2660_border.svg b/public/emoji/2660_border.svg
new file mode 100644
index 000000000..3ce65b4eb
--- /dev/null
+++ b/public/emoji/2660_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2663_border.svg b/public/emoji/2663_border.svg
new file mode 100644
index 000000000..3fcf5c75e
--- /dev/null
+++ b/public/emoji/2663_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/26aa_border.svg b/public/emoji/26aa_border.svg
new file mode 100644
index 000000000..d2cac5cad
--- /dev/null
+++ b/public/emoji/26aa_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/26ab_border.svg b/public/emoji/26ab_border.svg
new file mode 100644
index 000000000..617df7493
--- /dev/null
+++ b/public/emoji/26ab_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/26be_border.svg b/public/emoji/26be_border.svg
new file mode 100644
index 000000000..25954deac
--- /dev/null
+++ b/public/emoji/26be_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/26f8_border.svg b/public/emoji/26f8_border.svg
new file mode 100644
index 000000000..0df7ff2ff
--- /dev/null
+++ b/public/emoji/26f8_border.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/public/emoji/2712_border.svg b/public/emoji/2712_border.svg
new file mode 100644
index 000000000..6e9e1c019
--- /dev/null
+++ b/public/emoji/2712_border.svg
@@ -0,0 +1,13 @@
+
+
diff --git a/public/emoji/2714_border.svg b/public/emoji/2714_border.svg
new file mode 100644
index 000000000..a90dd10eb
--- /dev/null
+++ b/public/emoji/2714_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2716_border.svg b/public/emoji/2716_border.svg
new file mode 100644
index 000000000..d5701be65
--- /dev/null
+++ b/public/emoji/2716_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2734_border.svg b/public/emoji/2734_border.svg
new file mode 100644
index 000000000..c74c6a511
--- /dev/null
+++ b/public/emoji/2734_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2754_border.svg b/public/emoji/2754_border.svg
new file mode 100644
index 000000000..1d6c4ecda
--- /dev/null
+++ b/public/emoji/2754_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/2755_border.svg b/public/emoji/2755_border.svg
new file mode 100644
index 000000000..65ec57082
--- /dev/null
+++ b/public/emoji/2755_border.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/public/emoji/2795_border.svg b/public/emoji/2795_border.svg
new file mode 100644
index 000000000..14c2cf69b
--- /dev/null
+++ b/public/emoji/2795_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2796_border.svg b/public/emoji/2796_border.svg
new file mode 100644
index 000000000..6ee64cae2
--- /dev/null
+++ b/public/emoji/2796_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2797_border.svg b/public/emoji/2797_border.svg
new file mode 100644
index 000000000..0bbf13ba2
--- /dev/null
+++ b/public/emoji/2797_border.svg
@@ -0,0 +1,11 @@
+
+
diff --git a/public/emoji/27b0_border.svg b/public/emoji/27b0_border.svg
new file mode 100644
index 000000000..dec79f5c6
--- /dev/null
+++ b/public/emoji/27b0_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2b1b_border.svg b/public/emoji/2b1b_border.svg
new file mode 100644
index 000000000..b622c3510
--- /dev/null
+++ b/public/emoji/2b1b_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/2b1c_border.svg b/public/emoji/2b1c_border.svg
new file mode 100644
index 000000000..c633cc3de
--- /dev/null
+++ b/public/emoji/2b1c_border.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/public/emoji/3030_border.svg b/public/emoji/3030_border.svg
new file mode 100644
index 000000000..635214d15
--- /dev/null
+++ b/public/emoji/3030_border.svg
@@ -0,0 +1,7 @@
+
+