From 6184547064cfcd7f01a2034fdbd7b3ed07161f25 Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Wed, 3 Oct 2012 20:19:01 +0400 Subject: [PATCH 01/40] add pg gem in Gemfile --- Gemfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Gemfile b/Gemfile index 042fbc4d3a3..31c1f04cb1d 100644 --- a/Gemfile +++ b/Gemfile @@ -13,6 +13,7 @@ gem "rails", "3.2.8" # Supported DBs gem "sqlite3" gem "mysql2" +gem "pg" # Auth gem "devise", "~> 2.1.0" -- GitLab From d4b978a8e5fb831527b5a985985884ae9abda498 Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Wed, 3 Oct 2012 20:20:09 +0400 Subject: [PATCH 02/40] update Gemfile.lock with new gem pg --- Gemfile.lock | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Gemfile.lock b/Gemfile.lock index 3c3bea9d7ca..87fd1c90868 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -245,6 +245,7 @@ GEM multi_json (~> 1.3) omniauth-oauth (~> 1.0) orm_adapter (0.3.0) + pg (0.14.0) polyglot (0.3.3) posix-spawn (0.3.6) pry (0.9.9.6) @@ -441,6 +442,7 @@ DEPENDENCIES omniauth-google-oauth2 omniauth-ldap! omniauth-twitter + pg pry pygments.rb (= 0.3.1) rack-mini-profiler -- GitLab From a3a0ba44a683cef6a0da8d75043a9b73ba448cd3 Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Wed, 3 Oct 2012 20:20:29 +0400 Subject: [PATCH 03/40] fix PG::Error: ERROR: type modifier is not allowed for type "text" in migration. No need increase column size. --- .../20120405211750_increase_mr_text_column_size.rb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/db/migrate/20120405211750_increase_mr_text_column_size.rb b/db/migrate/20120405211750_increase_mr_text_column_size.rb index 4fbef622da4..d0e90d37228 100644 --- a/db/migrate/20120405211750_increase_mr_text_column_size.rb +++ b/db/migrate/20120405211750_increase_mr_text_column_size.rb @@ -1,8 +1,13 @@ class IncreaseMrTextColumnSize < ActiveRecord::Migration def up - # MYSQL LARGETEXT for merge request - change_column :merge_requests, :st_diffs, :text, :limit => 4294967295 - change_column :merge_requests, :st_commits, :text, :limit => 4294967295 + case ActiveRecord::Base.connection.adapter_name + when 'PostgreSQL' + # nothing to do + else + # MYSQL LARGETEXT for merge request + change_column :merge_requests, :st_diffs, :text, :limit => 4294967295 + change_column :merge_requests, :st_commits, :text, :limit => 4294967295 + end end def down -- GitLab From 2d8f33431209c9138257f6001aa3f3996cef046d Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Wed, 3 Oct 2012 21:17:13 +0400 Subject: [PATCH 04/40] add default database config file to postgres --- config/database.yml.postgresql | 48 ++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 config/database.yml.postgresql diff --git a/config/database.yml.postgresql b/config/database.yml.postgresql new file mode 100644 index 00000000000..9d263384d92 --- /dev/null +++ b/config/database.yml.postgresql @@ -0,0 +1,48 @@ +# +# PRODUCTION +# +production: + adapter: postgresql + encoding: utf8 + database: gitlabhq_production + pool: 5 + username: postgres + password: "secure password" + # host: localhost + # socket: /tmp/postgresql.sock + +# +# Development specific +# +development: + adapter: postgresql + encoding: utf8 + database: gitlabhq_development + pool: 5 + username: postgres + password: "secure password" + # socket: /tmp/postgresql.sock + +# +# Staging specific +# +staging: + adapter: postgresql + encoding: utf8 + database: gitlabhq_staging + pool: 5 + username: postgres + password: "secure password" + # socket: /tmp/postgresql.sock + +# Warning: The database defined as "test" will be erased and +# re-generated from your development database when you run "rake". +# Do not set this db to the same as development or production. +test: &test + adapter: postgresql + encoding: utf8 + database: gitlabhq_test + pool: 5 + username: postgres + password: "secure password" + # socket: /tmp/postgresql.sock -- GitLab From a488c6675ae228ef0b377cfba70ae0ed37ba499a Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Wed, 3 Oct 2012 21:18:40 +0400 Subject: [PATCH 05/40] update installation doc --- doc/installation.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/doc/installation.md b/doc/installation.md index ccbbd2e8140..7de1a2c3828 100644 --- a/doc/installation.md +++ b/doc/installation.md @@ -75,6 +75,9 @@ Now install the required packages: # If you want to use MySQL: sudo apt-get install -y mysql-server mysql-client libmysqlclient-dev + # If you want to use PostgreSQL: + sudo apt-get install -y postgresql-9.1 postgresql-server-dev-9.1 + # 2. Install Ruby wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz @@ -188,8 +191,39 @@ and ensure you have followed all of the above steps carefully. # Exit MySQL Server and copy the example config, make sure to update username/password in config/database.yml sudo -u gitlab cp config/database.yml.example config/database.yml + # Or + # PostgreSQL + # Install PostgreSQL as directed in Step #1 + + # Connect to database server + sudo -u postgres psql -d template1 + + # Add a user called gitlab. Change $password to a real password + template1=# CREATE USER gitlab WITH PASSWORD '$password'; + + # Create the GitLab production database + template1=# CREATE DATABASE IF NOT EXISTS gitlabhq_production; + + # Grant all privileges on database + template1=# GRANT ALL PRIVILEGES ON DATABASE gitlabhq_production to gitlab; + + # Quit from PostgreSQL server + template1=# \q + + # Try connect to new database + $ su - gitlab + $ psql -d gitlabhq_production -U gitlab + + # Exit PostgreSQL Server and copy the example config, make sure to update username/password in config/database.yml + sudo -u gitlab cp config/database.yml.postgres config/database.yml + + # If you need create development, test, staging or another database + # Repeate some steps with actual commands + #### Install gems + # Please, check Gemfile before run bundle install + # Select database gem, wich you will use sudo -u gitlab -H bundle install --without development test --deployment #### Setup database -- GitLab From 67c620e9895a9e4f95f8c83d71f32b1b17ee35ff Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Thu, 4 Oct 2012 13:12:04 +0400 Subject: [PATCH 06/40] update rescue rake task. Fix exeption after fork --- lib/tasks/resque.rake | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lib/tasks/resque.rake b/lib/tasks/resque.rake index 9b30bb0a292..e6987e17639 100644 --- a/lib/tasks/resque.rake +++ b/lib/tasks/resque.rake @@ -1 +1,14 @@ require 'resque/tasks' + +# Fix Exception +# ActiveRecord::StatementInvalid +# Error +# PGError: ERROR: prepared statement "a3" already exists +task "resque:setup" => :environment do + Resque.after_fork do |job| + ActiveRecord::Base.establish_connection + end +end + +desc "Alias for resque:work (To run workers on Heroku)" +task "jobs:work" => "resque:work" -- GitLab From 2faaf19b4f6897d5b5a1ecccb09fdfa3933c1530 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20Leutgo=CC=88b?= Date: Mon, 24 Sep 2012 11:01:44 +0200 Subject: [PATCH 07/40] Add a more verbose dashboard event feed - Add project name to event title - Push: Entry links to single commit or commits overview depending on number of pushed commits - Push: Display first 15 commits with commit message and author and link to single commit - Issues: Display issue description --- app/decorators/event_decorator.rb | 26 +++++++++++++++++++++---- app/views/dashboard/index.atom.builder | 3 ++- app/views/events/_event_issue.atom.haml | 2 ++ app/views/events/_event_push.atom.haml | 14 +++++++++++++ 4 files changed, 40 insertions(+), 5 deletions(-) create mode 100644 app/views/events/_event_issue.atom.haml create mode 100644 app/views/events/_event_push.atom.haml diff --git a/app/decorators/event_decorator.rb b/app/decorators/event_decorator.rb index 312ac6517d1..b2f9c439589 100644 --- a/app/decorators/event_decorator.rb +++ b/app/decorators/event_decorator.rb @@ -3,11 +3,11 @@ class EventDecorator < ApplicationDecorator def feed_title if self.issue? - "#{self.author_name} #{self.action_name} issue ##{self.target_id}:" + self.issue_title + "#{self.author_name} #{self.action_name} issue ##{self.target_id}: #{self.issue_title} at #{self.project.name}" elsif self.merge_request? - "#{self.author_name} #{self.action_name} MR ##{self.target_id}:" + self.merge_request_title + "#{self.author_name} #{self.action_name} MR ##{self.target_id}: #{self.merge_request_title} at #{self.project.name}" elsif self.push? - "#{self.author_name} #{self.push_action_name} #{self.ref_type} " + self.ref_name + "#{self.author_name} #{self.push_action_name} #{self.ref_type} #{self.ref_name} at #{self.project.name}" elsif self.membership_changed? "#{self.author_name} #{self.action_name} #{self.project.name}" else @@ -20,8 +20,26 @@ class EventDecorator < ApplicationDecorator h.project_issue_url(self.project, self.issue) elsif self.merge_request? h.project_merge_request_url(self.project, self.merge_request) + + elsif self.push? + if self.push_with_commits? + if self.commits_count > 1 + h.compare_project_commits_path(self.project, :from => self.parent_commit.id, :to => self.last_commit.id) + else + h.project_commit_path(self.project, :id => self.last_commit.id) + end + else + h.project_commits_url(self.project, ref: self.ref_name) + end + end + + end + + def feed_summary + if self.issue? + h.render "events/event_issue", issue: self.issue elsif self.push? - h.project_commits_url(self.project, self.ref_name) + h.render "events/event_push", event: self end end end diff --git a/app/views/dashboard/index.atom.builder b/app/views/dashboard/index.atom.builder index fa3bfade28b..ffa15258f07 100644 --- a/app/views/dashboard/index.atom.builder +++ b/app/views/dashboard/index.atom.builder @@ -12,6 +12,7 @@ xml.feed "xmlns" => "http://www.w3.org/2005/Atom", "xmlns:media" => "http://sear xml.entry do event_link = event.feed_url event_title = event.feed_title + event_summary = event.feed_summary xml.id "tag:#{request.host},#{event.created_at.strftime("%Y-%m-%d")}:#{event.id}" xml.link :href => event_link @@ -22,7 +23,7 @@ xml.feed "xmlns" => "http://www.w3.org/2005/Atom", "xmlns:media" => "http://sear xml.name event.author_name xml.email event.author_email end - xml.summary event_title + xml.summary(:type => "xhtml") { |x| x << event_summary unless event_summary.nil? } end end end diff --git a/app/views/events/_event_issue.atom.haml b/app/views/events/_event_issue.atom.haml new file mode 100644 index 00000000000..64dc02e3f56 --- /dev/null +++ b/app/views/events/_event_issue.atom.haml @@ -0,0 +1,2 @@ +%div{:xmlns => "http://www.w3.org/1999/xhtml"} + %p= simple_format issue.description diff --git a/app/views/events/_event_push.atom.haml b/app/views/events/_event_push.atom.haml new file mode 100644 index 00000000000..340275a5e6d --- /dev/null +++ b/app/views/events/_event_push.atom.haml @@ -0,0 +1,14 @@ +%div{:xmlns => "http://www.w3.org/1999/xhtml"} + - event.commits.first(15).each do |commit| + %p + %strong= commit.author_name + = link_to "(##{commit.short_id})", project_commit_path(event.project, :id => commit.id) + %i + at + = commit.committed_date.strftime("%Y-%m-%d %H:%M:%S") + %blockquote= simple_format commit.safe_message + - if event.commits_count > 15 + %p + %i + \... and + = pluralize(event.commits_count - 15, "more commit") -- GitLab From e01ac9f1fb9d49a002d1ff89aeda7c0b89bc0cc2 Mon Sep 17 00:00:00 2001 From: randx Date: Wed, 3 Oct 2012 19:51:14 +0300 Subject: [PATCH 08/40] Bigger fonts for groups box --- app/assets/stylesheets/sections/projects.scss | 5 +++++ app/views/dashboard/_groups.html.haml | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/assets/stylesheets/sections/projects.scss b/app/assets/stylesheets/sections/projects.scss index 53a7c2bcfa3..b1f20a3e06b 100644 --- a/app/assets/stylesheets/sections/projects.scss +++ b/app/assets/stylesheets/sections/projects.scss @@ -7,6 +7,7 @@ @extend .span4; @extend .right; + .groups_box, .projects_box { h5 { color:$style_color; @@ -21,6 +22,10 @@ padding:0; a { display:block; + .group_name { + font-size:14px; + line-height:18px; + } .project_name { color:#4fa2bd; font-size:14px; diff --git a/app/views/dashboard/_groups.html.haml b/app/views/dashboard/_groups.html.haml index 5180bfa0c34..146a49e616f 100644 --- a/app/views/dashboard/_groups.html.haml +++ b/app/views/dashboard/_groups.html.haml @@ -1,4 +1,4 @@ -.projects_box +.groups_box %h5 Groups %small -- GitLab From 1419c44831c671d0289c564c86de84cd0e8ab51e Mon Sep 17 00:00:00 2001 From: randx Date: Wed, 3 Oct 2012 23:46:55 +0300 Subject: [PATCH 09/40] Implement pending dashboard step --- features/steps/dashboard/dashboard.rb | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/features/steps/dashboard/dashboard.rb b/features/steps/dashboard/dashboard.rb index 2bbbe55ed0a..a9416f735be 100644 --- a/features/steps/dashboard/dashboard.rb +++ b/features/steps/dashboard/dashboard.rb @@ -64,6 +64,14 @@ class Dashboard < Spinach::FeatureSteps @project.add_access(@user, :admin) end + And 'I have group with projects' do + @group = Factory :group + @project = Factory :project, group: @group + @event = Factory :closed_issue_event, project: @project + + @project.add_access current_user, :admin + end + And 'project "Shop" has push event' do @project = Project.find_by_name("Shop") @@ -89,4 +97,10 @@ class Dashboard < Spinach::FeatureSteps :author_id => @user.id ) end + + Then 'I should see groups list' do + Group.all.each do |group| + page.should have_link group.name + end + end end -- GitLab From 40e74f97ede9d230ca04ae03eae842a4aea3af8f Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Wed, 3 Oct 2012 17:01:16 -0400 Subject: [PATCH 10/40] Rename tree.js to tree.js.coffee --- app/assets/javascripts/tree.js | 30 --------------------------- app/assets/javascripts/tree.js.coffee | 20 ++++++++++++++++++ 2 files changed, 20 insertions(+), 30 deletions(-) delete mode 100644 app/assets/javascripts/tree.js create mode 100644 app/assets/javascripts/tree.js.coffee diff --git a/app/assets/javascripts/tree.js b/app/assets/javascripts/tree.js deleted file mode 100644 index 1c62751ad25..00000000000 --- a/app/assets/javascripts/tree.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * Tree slider for code browse - * - */ -var Tree = { - init: - function() { - $('#tree-slider .tree-item-file-name a, .breadcrumb li > a').live("click", function() { - $("#tree-content-holder").hide("slide", { direction: "left" }, 150) - }) - - $('.project-refs-form').live({ - "ajax:beforeSend": function() { - $("#tree-content-holder").hide("slide", { direction: "left" }, 150); - } - }) - - $("#tree-slider .tree-item").live('click', function(e){ - if(e.target.nodeName != "A") { - link = $(this).find(".tree-item-file-name a"); - link.trigger("click"); - } - }); - - $('#tree-slider .tree-item-file-name a, .breadcrumb a, .project-refs-form').live({ - "ajax:beforeSend": function() { $('.tree_progress').addClass("loading"); }, - "ajax:complete": function() { $('.tree_progress').removeClass("loading"); } - }); - } -} diff --git a/app/assets/javascripts/tree.js.coffee b/app/assets/javascripts/tree.js.coffee new file mode 100644 index 00000000000..200f1e063e4 --- /dev/null +++ b/app/assets/javascripts/tree.js.coffee @@ -0,0 +1,20 @@ +# Code browser tree slider + +$ -> + if $('#tree-slider').length > 0 + # Show the "Loading commit data" for only the first element + $('span.log_loading:first').removeClass('hide') + + $('#tree-slider .tree-item-file-name a, .breadcrumb li > a').live "click", -> + $("#tree-content-holder").hide("slide", { direction: "left" }, 150) + + $('.project-refs-form').live + "ajax:beforeSend": -> $("#tree-content-holder").hide("slide", { direction: "left" }, 150) + + # Make the entire tree-item row clickable, but not if clicking another link (like a commit message) + $("#tree-slider .tree-item").live 'click', (e) -> + $('.tree-item-file-name a', this).trigger('click') if (e.target.nodeName != "A") + + $('#tree-slider .tree-item-file-name a, .breadcrumb a, .project-refs-form').live + "ajax:beforeSend": -> $('.tree_progress').addClass("loading") + "ajax:complete": -> $('.tree_progress').removeClass("loading") -- GitLab From eb320def293ded09883ee6649222fa3ed640828a Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Wed, 3 Oct 2012 18:28:50 -0400 Subject: [PATCH 11/40] Remove locals from tree/tree_file and just use "object" instead --- app/views/tree/_tree.html.haml | 4 +++- app/views/tree/_tree_file.html.haml | 24 ++++++++++++------------ 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/app/views/tree/_tree.html.haml b/app/views/tree/_tree.html.haml index 3e805d57fd4..c25907fb147 100644 --- a/app/views/tree/_tree.html.haml +++ b/app/views/tree/_tree.html.haml @@ -6,11 +6,13 @@ - tree.breadcrumbs(6) do |link| \/ %li= link + .clear %div.tree_progress + %div#tree-content-holder.tree-content-holder - if tree.is_blob? - = render partial: "tree/tree_file", locals: { name: tree.name, content: tree.data, file: tree } + = render partial: "tree/tree_file", object: tree - else - contents = tree.contents %table#tree-slider{class: "table_#{@hex_path} tree-table" } diff --git a/app/views/tree/_tree_file.html.haml b/app/views/tree/_tree_file.html.haml index 93f7be28d21..82aaed24bdc 100644 --- a/app/views/tree/_tree_file.html.haml +++ b/app/views/tree/_tree_file.html.haml @@ -2,32 +2,32 @@ .file_title %i.icon-file %span.file_name - = name.force_encoding('utf-8') - %small #{file.mode} + = tree_file.name.force_encoding('utf-8') + %small #{tree_file.mode} %span.options = link_to "raw", project_blob_path(@project, @id), class: "btn very_small", target: "_blank" = link_to "history", project_commits_path(@project, @id), class: "btn very_small" = link_to "blame", project_blame_path(@project, @id), class: "btn very_small" - - if file.text? - - if gitlab_markdown?(name) + - if tree_file.text? + - if gitlab_markdown?(tree_file.name) .file_content.wiki = preserve do - = markdown(file.data) - - elsif markup?(name) + = markdown(tree_file.data) + - elsif markup?(tree_file.name) .file_content.wiki - = raw GitHub::Markup.render(name, file.data) + = raw GitHub::Markup.render(tree_file.name, tree_file.data) - else .file_content.code - - unless file.empty? + - unless tree_file.empty? %div{class: current_user.dark_scheme ? "black" : "white"} = preserve do - = raw file.colorize(options: { linenos: 'True'}) + = raw tree_file.colorize(options: { linenos: 'True'}) - else %h4.nothing_here_message Empty file - - elsif file.image? + - elsif tree_file.image? .file_content.image_file - %img{ src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"} + %img{ src: "data:#{tree_file.mime_type};base64,#{Base64.encode64(tree_file.data)}"} - else .file_content.blob_file @@ -37,4 +37,4 @@ %br = image_tag "download.png", width: 64 %h3 - Download (#{file.mb_size}) + Download (#{tree_file.mb_size}) -- GitLab From 55ec0dcb1ecbcd00fbb129a5e22eeedd6ddd3988 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Wed, 3 Oct 2012 18:29:15 -0400 Subject: [PATCH 12/40] Tree.init() JS is no longer required --- app/views/tree/show.html.haml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/app/views/tree/show.html.haml b/app/views/tree/show.html.haml index 591818ce6e3..a4034f22fac 100644 --- a/app/views/tree/show.html.haml +++ b/app/views/tree/show.html.haml @@ -1,8 +1,3 @@ = render "head" %div#tree-holder.tree-holder - = render "tree", commit: @commit, tree: @tree - -:javascript - $(function() { - Tree.init(); - }); + = render "tree", tree: @tree -- GitLab From 03f1b99c300a990f887e059054e9efba82d8f0ad Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Wed, 3 Oct 2012 18:30:27 -0400 Subject: [PATCH 13/40] Remove locals from tree/submodule_item, use "object" instead --- app/views/tree/_submodule_item.html.haml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/app/views/tree/_submodule_item.html.haml b/app/views/tree/_submodule_item.html.haml index 6b9f5877028..cfb0256ce88 100644 --- a/app/views/tree/_submodule_item.html.haml +++ b/app/views/tree/_submodule_item.html.haml @@ -1,13 +1,11 @@ -- url = content.url(@ref) rescue nil -- name = content.basename +- url = submodule_item.url(@ref) rescue nil +- name = submodule_item.basename - return unless url %tr{ class: "tree-item", url: url } %td.tree-item-file-name = image_tag "submodule.png" %strong= truncate(name, length: 40) %td - %code= content.id[0..10] + %code= submodule_item.id[0..10] %td = link_to truncate(url, length: 40), url - - -- GitLab From 01c8a56295d1c55c132fe56a6b219d5d6504af70 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Wed, 3 Oct 2012 18:40:56 -0400 Subject: [PATCH 14/40] Add render_tree helper; simplify (speed up) tree_icon --- app/assets/javascripts/tree.js.coffee | 1 + app/decorators/tree_decorator.rb | 4 +-- app/helpers/tree_helper.rb | 47 +++++++++++++++++---------- app/views/tree/_tree.html.haml | 17 +++------- app/views/tree/_tree_item.html.haml | 14 ++++---- app/views/tree/show.js.haml | 2 +- 6 files changed, 44 insertions(+), 41 deletions(-) diff --git a/app/assets/javascripts/tree.js.coffee b/app/assets/javascripts/tree.js.coffee index 200f1e063e4..83cc08dc0fa 100644 --- a/app/assets/javascripts/tree.js.coffee +++ b/app/assets/javascripts/tree.js.coffee @@ -15,6 +15,7 @@ $ -> $("#tree-slider .tree-item").live 'click', (e) -> $('.tree-item-file-name a', this).trigger('click') if (e.target.nodeName != "A") + # Show/Hide the loading spinner $('#tree-slider .tree-item-file-name a, .breadcrumb a, .project-refs-form').live "ajax:beforeSend": -> $('.tree_progress').addClass("loading") "ajax:complete": -> $('.tree_progress').removeClass("loading") diff --git a/app/decorators/tree_decorator.rb b/app/decorators/tree_decorator.rb index 38236c2c553..754868f5805 100644 --- a/app/decorators/tree_decorator.rb +++ b/app/decorators/tree_decorator.rb @@ -8,14 +8,14 @@ class TreeDecorator < ApplicationDecorator #parts = parts[0...-1] if is_blob? - yield(h.link_to("..", "#", remote: :true)) if parts.count > max_links + yield(h.link_to("..", "#", remote: true)) if parts.count > max_links parts.each do |part| part_path = File.join(part_path, part) unless part_path.empty? part_path = part if part_path.empty? next unless parts.last(2).include?(part) if parts.count > max_links - yield(h.link_to(h.truncate(part, length: 40), h.project_tree_path(project, h.tree_join(ref, part_path)), remote: :true)) + yield(h.link_to(h.truncate(part, length: 40), h.project_tree_path(project, h.tree_join(ref, part_path)), remote: true)) end end end diff --git a/app/helpers/tree_helper.rb b/app/helpers/tree_helper.rb index 81a16989405..65c2379917c 100644 --- a/app/helpers/tree_helper.rb +++ b/app/helpers/tree_helper.rb @@ -1,29 +1,40 @@ module TreeHelper - def tree_icon(content) - if content.is_a?(Grit::Blob) - if content.text? - image_tag "file_txt.png" - elsif content.image? - image_tag "file_img.png" + # Sorts a repository's tree so that folders are before files and renders + # their corresponding partials + # + # contents - A Grit::Tree object for the current tree + def render_tree(contents) + # Render Folders before Files/Submodules + folders, files = contents.partition { |v| v.kind_of?(Grit::Tree) } + + tree = "" + + # Render folders if we have any + tree += render partial: 'tree/tree_item', collection: folders, locals: {type: 'folder'} if folders.present? + + files.each do |f| + if f.respond_to?(:url) + # Object is a Submodule + tree += render partial: 'tree/submodule_item', object: f else - image_tag "file_bin.png" + # Object is a Blob + tree += render partial: 'tree/tree_item', object: f, locals: {type: 'file'} end - else - image_tag "file_dir.png" end + + tree.html_safe end - def tree_hex_class(content) - "file_#{hexdigest(content.name)}" + # Return an image icon depending on the file type + # + # type - String type of the tree item; either 'folder' or 'file' + def tree_icon(type) + image = type == 'folder' ? 'file_dir.png' : 'file_txt.png' + image_tag(image, size: '16x16') end - def tree_full_path(content) - content.name.force_encoding('utf-8') - if params[:path] - File.join(params[:path], content.name) - else - content.name - end + def tree_hex_class(content) + "file_#{hexdigest(content.name)}" end # Public: Determines if a given filename is compatible with GitHub::Markup. diff --git a/app/views/tree/_tree.html.haml b/app/views/tree/_tree.html.haml index c25907fb147..920a70b58a2 100644 --- a/app/views/tree/_tree.html.haml +++ b/app/views/tree/_tree.html.haml @@ -14,7 +14,6 @@ - if tree.is_blob? = render partial: "tree/tree_file", object: tree - else - - contents = tree.contents %table#tree-slider{class: "table_#{@hex_path} tree-table" } %thead %th Name @@ -24,22 +23,16 @@ = link_to "History", tree.history_path, class: "right" - if tree.up_dir? - %tr{ class: "tree-item", url: tree.up_dir_path } + %tr.tree-item %td.tree-item-file-name - = image_tag "file_empty.png" - = link_to "..", tree.up_dir_path, remote: :true + = image_tag "file_empty.png", size: '16x16' + = link_to "..", tree.up_dir_path, remote: true %td %td - - index = 0 - - contents.select{ |i| i.is_a?(Grit::Tree)}.each do |content| - = render partial: "tree/tree_item", locals: { content: content, index: (index += 1) } - - contents.select{ |i| i.is_a?(Grit::Blob)}.each do |content| - = render partial: "tree/tree_item", locals: { content: content, index: (index += 1) } - - contents.select{ |i| i.is_a?(Grit::Submodule)}.each do |content| - = render partial: "tree/submodule_item", locals: { content: content, index: (index += 1) } + = render_tree(tree.contents) - - if content = contents.select{ |c| c.is_a?(Grit::Blob) and c.name =~ /^readme/i }.first + - if content = tree.contents.find { |c| c.is_a?(Grit::Blob) and c.name =~ /^readme/i } .file_holder#README .file_title %i.icon-file diff --git a/app/views/tree/_tree_item.html.haml b/app/views/tree/_tree_item.html.haml index 226c380ff82..87311e194d4 100644 --- a/app/views/tree/_tree_item.html.haml +++ b/app/views/tree/_tree_item.html.haml @@ -1,11 +1,9 @@ -- file = tree_full_path(content) -%tr{ class: "tree-item #{tree_hex_class(content)}", url: project_tree_path(@project, tree_join(@id, file)) } +%tr{ class: "tree-item #{tree_hex_class(tree_item)}" } %td.tree-item-file-name - = tree_icon(content) - %strong= link_to truncate(content.name, length: 40), project_tree_path(@project, tree_join(@id || @commit.id, file)), remote: :true + = tree_icon(type) + %strong= link_to truncate(tree_item.name, length: 40), project_tree_path(@project, tree_join(@id || @commit.id, tree_item.name)), remote: true %td.tree_time_ago.cgray - - if index == 1 - %span.log_loading - Loading commit data.. - = image_tag "ajax_loader_tree.gif", width: 14 + %span.log_loading.hide + Loading commit data... + = image_tag "ajax_loader_tree.gif", width: 14 %td.tree_commit diff --git a/app/views/tree/show.js.haml b/app/views/tree/show.js.haml index 174e3e03a52..fadd5e2251f 100644 --- a/app/views/tree/show.js.haml +++ b/app/views/tree/show.js.haml @@ -1,6 +1,6 @@ :plain // Load Files list - $("#tree-holder").html("#{escape_javascript(render(partial: "tree", locals: {commit: @commit, tree: @tree}))}"); + $("#tree-holder").html("#{escape_javascript(render(partial: "tree", locals: {tree: @tree}))}"); $("#tree-content-holder").show("slide", { direction: "right" }, 150); $('.project-refs-form #path').val("#{@path}"); -- GitLab From 3537e54bf102eecfa9febf49baeb767408306a84 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Wed, 3 Oct 2012 19:11:39 -0400 Subject: [PATCH 15/40] Use official Grit 2.5.0 --- Gemfile | 2 +- Gemfile.lock | 16 +++++----------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/Gemfile b/Gemfile index 31c1f04cb1d..60955ef1cd0 100644 --- a/Gemfile +++ b/Gemfile @@ -23,7 +23,7 @@ gem 'omniauth-twitter' gem 'omniauth-github' # GITLAB patched libs -gem "grit", :git => "https://github.com/gitlabhq/grit.git", :ref => "7f35cb98ff17d534a07e3ce6ec3d580f67402837" +gem "grit", '2.5.0' gem "omniauth-ldap", :git => "https://github.com/gitlabhq/omniauth-ldap.git", :ref => "f038dd852d7bd473a557e385d5d7c2fd5dc1dc2e" gem 'yaml_db', :git => "https://github.com/gitlabhq/yaml_db.git" gem 'grack', :git => "https://github.com/gitlabhq/grack.git" diff --git a/Gemfile.lock b/Gemfile.lock index 87fd1c90868..6d8befaf42e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,16 +11,6 @@ GIT grack (1.0.0) rack (~> 1.4.1) -GIT - remote: https://github.com/gitlabhq/grit.git - revision: 7f35cb98ff17d534a07e3ce6ec3d580f67402837 - ref: 7f35cb98ff17d534a07e3ce6ec3d580f67402837 - specs: - grit (2.5.0) - diff-lcs (~> 1.1) - mime-types (~> 1.15) - posix-spawn (~> 0.3.6) - GIT remote: https://github.com/gitlabhq/omniauth-ldap.git revision: f038dd852d7bd473a557e385d5d7c2fd5dc1dc2e @@ -157,6 +147,10 @@ GEM rack rack-mount gratr19 (0.4.4.1) + grit (2.5.0) + diff-lcs (~> 1.1) + mime-types (~> 1.15) + posix-spawn (~> 0.3.6) growl (1.0.3) guard (1.3.2) listen (>= 0.4.2) @@ -422,7 +416,7 @@ DEPENDENCIES gitolite (= 1.1.0) grack! grape (~> 0.2.1) - grit! + grit (= 2.5.0) growl guard-rspec guard-spinach -- GitLab From c73b7d1177e39989503fb2d69051172677e71680 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Thu, 4 Oct 2012 10:51:35 +0300 Subject: [PATCH 16/40] Fixed group issues/mr. Also speedup project list of admin area --- app/controllers/groups_controller.rb | 6 ++++-- app/roles/issue_commonality.rb | 1 + app/views/admin/projects/index.html.haml | 2 -- app/views/admin/projects/show.html.haml | 9 +++++++++ app/views/layouts/group.html.haml | 4 ++-- 5 files changed, 16 insertions(+), 6 deletions(-) diff --git a/app/controllers/groups_controller.rb b/app/controllers/groups_controller.rb index 4a05434c783..c76e5c4c0bd 100644 --- a/app/controllers/groups_controller.rb +++ b/app/controllers/groups_controller.rb @@ -21,13 +21,15 @@ class GroupsController < ApplicationController # Get authored or assigned open merge requests def merge_requests - @merge_requests = current_user.cared_merge_requests.order("created_at DESC").page(params[:page]).per(20) + @merge_requests = current_user.cared_merge_requests + @merge_requests = @merge_requests.of_group(@group).order("created_at DESC").page(params[:page]).per(20) end # Get only assigned issues def issues @user = current_user - @issues = current_user.assigned_issues.opened.order("created_at DESC").page(params[:page]).per(20) + @issues = current_user.assigned_issues.opened + @issues = @issues.of_group(@group).order("created_at DESC").page(params[:page]).per(20) @issues = @issues.includes(:author, :project) respond_to do |format| diff --git a/app/roles/issue_commonality.rb b/app/roles/issue_commonality.rb index 55b46ec0c89..ab6f89ff0b8 100644 --- a/app/roles/issue_commonality.rb +++ b/app/roles/issue_commonality.rb @@ -18,6 +18,7 @@ module IssueCommonality scope :opened, where(closed: false) scope :closed, where(closed: true) + scope :of_group, ->(group) { where(project_id: group.project_ids) } scope :assigned, lambda { |u| where(assignee_id: u.id)} delegate :name, diff --git a/app/views/admin/projects/index.html.haml b/app/views/admin/projects/index.html.haml index 13b0b44acd6..3335fce0078 100644 --- a/app/views/admin/projects/index.html.haml +++ b/app/views/admin/projects/index.html.haml @@ -12,7 +12,6 @@ %th Name %th Path %th Team Members - %th Post Receive %th Last Commit %th Edit %th.cred Danger Zone! @@ -22,7 +21,6 @@ %td= link_to project.name, [:admin, project] %td= project.path %td= project.users_projects.count - %td= check_box_tag :post_receive_file, 1, project.has_post_receive_file?, disabled: true %td= last_commit(project) %td= link_to 'Edit', edit_admin_project_path(project), id: "edit_#{dom_id(project)}", class: "btn small" %td.bgred= link_to 'Destroy', [:admin, project], confirm: "REMOVE #{project.name}? Are you sure?", method: :delete, class: "btn small danger" diff --git a/app/views/admin/projects/show.html.haml b/app/views/admin/projects/show.html.haml index f16a0211a14..f85b6e4b865 100644 --- a/app/views/admin/projects/show.html.haml +++ b/app/views/admin/projects/show.html.haml @@ -5,6 +5,15 @@ %i.icon-edit Edit +- if !@admin_project.has_post_receive_file? && @admin_project.commit + %br + .alert.alert-error + %span + %strong Important! + Project has commits but missing post-receive file. + %br + If you exported project manually - copy post-receive hook to bare repository + %br %table.zebra-striped %thead diff --git a/app/views/layouts/group.html.haml b/app/views/layouts/group.html.haml index e4277eff668..985200e2539 100644 --- a/app/views/layouts/group.html.haml +++ b/app/views/layouts/group.html.haml @@ -11,11 +11,11 @@ = nav_link(path: 'groups#issues') do = link_to issues_group_path(@group) do Issues - %span.count= current_user.assigned_issues.opened.count + %span.count= current_user.assigned_issues.opened.of_group(@group).count = nav_link(path: 'groups#merge_requests') do = link_to merge_requests_group_path(@group) do Merge Requests - %span.count= current_user.cared_merge_requests.count + %span.count= current_user.cared_merge_requests.of_group(@group).count = nav_link(path: 'groups#search') do = link_to "Search", search_group_path(@group) = nav_link(path: 'groups#people') do -- GitLab From fa0a8aacd0795bcfa0ed0d636f9f8f4677d50d59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20Leutgo=CC=88b?= Date: Thu, 4 Oct 2012 10:06:17 +0200 Subject: [PATCH 17/40] Escape html entities in commit messages --- app/views/events/_event_push.atom.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/events/_event_push.atom.haml b/app/views/events/_event_push.atom.haml index 340275a5e6d..d09e6e03f01 100644 --- a/app/views/events/_event_push.atom.haml +++ b/app/views/events/_event_push.atom.haml @@ -6,7 +6,7 @@ %i at = commit.committed_date.strftime("%Y-%m-%d %H:%M:%S") - %blockquote= simple_format commit.safe_message + %blockquote= simple_format(escape_once(commit.safe_message)) - if event.commits_count > 15 %p %i -- GitLab From 773b61ba4c5b4f6a234483d08f7e7d25bd692509 Mon Sep 17 00:00:00 2001 From: Valeriy Sizov Date: Thu, 4 Oct 2012 13:28:58 +0300 Subject: [PATCH 18/40] fix inline diff --- lib/gitlab/inline_diff.rb | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/gitlab/inline_diff.rb b/lib/gitlab/inline_diff.rb index 0f289a61e0e..7a0a3214aa1 100644 --- a/lib/gitlab/inline_diff.rb +++ b/lib/gitlab/inline_diff.rb @@ -21,14 +21,13 @@ module Gitlab end end first_token = first_line[0..first_the_same_symbols][1..-1] - diff_arr[index+1].sub!(first_token, first_token + START) diff_arr[index+2].sub!(first_token, first_token + START) - last_the_same_symbols = 0 (1..max_length + 1).each do |i| last_the_same_symbols = -i - if first_line[-i] != second_line[-i] + shortest_line = second_line.size > first_line.size ? first_line : second_line + if ( first_line[-i] != second_line[-i] ) || "#{first_token}#{START}".size == shortest_line[1..-i].size break end end -- GitLab From cd89e4b3d2c9fe687ace141b13e61ccda10071fe Mon Sep 17 00:00:00 2001 From: Valeriy Sizov Date: Thu, 4 Oct 2012 13:40:40 +0300 Subject: [PATCH 19/40] Minore code-style fixes --- app/models/group.rb | 2 +- app/models/project.rb | 4 ++-- app/models/user.rb | 2 +- app/roles/issue_commonality.rb | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/models/group.rb b/app/models/group.rb index 628d00092cd..780d5fddca0 100644 --- a/app/models/group.rb +++ b/app/models/group.rb @@ -23,7 +23,7 @@ class Group < ActiveRecord::Base delegate :name, to: :owner, allow_nil: true, prefix: true def self.search query - where("name like :query OR code like :query", query: "%#{query}%") + where("name LIKE :query OR code LIKE :query", query: "%#{query}%") end def to_param diff --git a/app/models/project.rb b/app/models/project.rb index c00bb4563fd..982b746365d 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -38,7 +38,7 @@ class Project < ActiveRecord::Base end def self.search query - where("name like :query OR code like :query OR path like :query", query: "%#{query}%") + where("name LIKE :query OR code LIKE :query OR path LIKE :query", query: "%#{query}%") end def self.create_by_user(params, user) @@ -127,7 +127,7 @@ class Project < ActiveRecord::Base end def commit_line_notes(commit) - notes.where(noteable_id: commit.id, noteable_type: "Commit").where("line_code is not null") + notes.where(noteable_id: commit.id, noteable_type: "Commit").where("line_code IS NOT NULL") end def public? diff --git a/app/models/user.rb b/app/models/user.rb index bed568effdc..cf12fd60708 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -73,7 +73,7 @@ class User < ActiveRecord::Base end def self.search query - where("name like :query or email like :query", query: "%#{query}%") + where("name LIKE :query OR email LIKE :query", query: "%#{query}%") end end diff --git a/app/roles/issue_commonality.rb b/app/roles/issue_commonality.rb index ab6f89ff0b8..304f08fda6c 100644 --- a/app/roles/issue_commonality.rb +++ b/app/roles/issue_commonality.rb @@ -19,7 +19,7 @@ module IssueCommonality scope :opened, where(closed: false) scope :closed, where(closed: true) scope :of_group, ->(group) { where(project_id: group.project_ids) } - scope :assigned, lambda { |u| where(assignee_id: u.id)} + scope :assigned, ->(u) { where(assignee_id: u.id)} delegate :name, :email, -- GitLab From 205c9b0a79f9e57aa38eb14c182e28436ef1586f Mon Sep 17 00:00:00 2001 From: Valeriy Sizov Date: Thu, 4 Oct 2012 13:48:20 +0300 Subject: [PATCH 20/40] ruby version changed --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 122cd984b4a..a8f8c0bb0ef 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ GitLab is a free project and repository management application ## Requirements * Ubuntu/Debian -* ruby 1.9.2+ +* ruby 1.9.3+ * mysql or sqlite * git * gitolite -- GitLab From 1837aef6a98ede7d07045631d3ca4c5da920a2c5 Mon Sep 17 00:00:00 2001 From: Valeriy Sizov Date: Thu, 4 Oct 2012 13:55:29 +0300 Subject: [PATCH 21/40] added trace to travis --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index bb4c4a79245..2aa468fd750 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,4 +18,4 @@ before_script: - "bundle exec rake db:migrate RAILS_ENV=test" - "bundle exec rake db:seed_fu RAILS_ENV=test" - "sh -e /etc/init.d/xvfb start" -script: "bundle exec rake travis" +script: "bundle exec rake travis --trace" -- GitLab From c08d9893f09d08b28c87f592b52aff1a7feb8dca Mon Sep 17 00:00:00 2001 From: Valeriy Sizov Date: Thu, 4 Oct 2012 19:31:31 +0300 Subject: [PATCH 22/40] Fix bug with branches whose name contains slash --- lib/extracts_path.rb | 14 +++++++------- spec/lib/extracts_path_spec.rb | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/extracts_path.rb b/lib/extracts_path.rb index f36dae5289b..020ff5cdf14 100644 --- a/lib/extracts_path.rb +++ b/lib/extracts_path.rb @@ -56,22 +56,22 @@ module ExtractsPath # Append a trailing slash if we only get a ref and no file path id = input - id += '/' unless id.include?('/') - + id += '/' unless id.ends_with?('/') + valid_refs = @project.branches + @project.tags - valid_refs.select! { |v| id.start_with?("#{v}/") } - + valid_refs.select! { |v| id.start_with?("#{v.name}/") } + if valid_refs.length != 1 # No exact ref match, so just try our best pair = id.match(/([^\/]+)(.*)/).captures else # Partition the string into the ref and the path, ignoring the empty first value - pair = id.partition(valid_refs.first)[1..-1] + pair = id.partition(valid_refs.first.name)[1..-1] end end - # Remove leading slash from path - pair[1].gsub!(/^\//, '') + # Remove ending slashes from path + pair[1].gsub!(/^\/|\/$/, '') pair end diff --git a/spec/lib/extracts_path_spec.rb b/spec/lib/extracts_path_spec.rb index 8876373dffa..3ee729c93e8 100644 --- a/spec/lib/extracts_path_spec.rb +++ b/spec/lib/extracts_path_spec.rb @@ -7,8 +7,8 @@ describe ExtractsPath do before do @project = project - project.stub(:branches).and_return(['master', 'foo/bar/baz']) - project.stub(:tags).and_return(['v1.0.0', 'v2.0.0']) + project.stub(:branches).and_return([stub(name: 'master'), stub(name: 'foo/bar/baz')]) + project.stub(:tags).and_return([stub(name: 'master'), stub(name: 'master')]) end describe '#extract_ref' do -- GitLab From b320ed2b469e2f56dbea94f2876d2c7710fd35c0 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Thu, 4 Oct 2012 14:13:52 -0400 Subject: [PATCH 23/40] ExtractsPath: Use ref_names instead of branches+tags --- lib/extracts_path.rb | 10 +++++----- spec/lib/extracts_path_spec.rb | 3 +-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/lib/extracts_path.rb b/lib/extracts_path.rb index 020ff5cdf14..b60dfd036e1 100644 --- a/lib/extracts_path.rb +++ b/lib/extracts_path.rb @@ -57,16 +57,16 @@ module ExtractsPath # Append a trailing slash if we only get a ref and no file path id = input id += '/' unless id.ends_with?('/') - - valid_refs = @project.branches + @project.tags - valid_refs.select! { |v| id.start_with?("#{v.name}/") } - + + valid_refs = @project.ref_names + valid_refs.select! { |v| id.start_with?("#{v}/") } + if valid_refs.length != 1 # No exact ref match, so just try our best pair = id.match(/([^\/]+)(.*)/).captures else # Partition the string into the ref and the path, ignoring the empty first value - pair = id.partition(valid_refs.first.name)[1..-1] + pair = id.partition(valid_refs.first)[1..-1] end end diff --git a/spec/lib/extracts_path_spec.rb b/spec/lib/extracts_path_spec.rb index 3ee729c93e8..cf4220175a7 100644 --- a/spec/lib/extracts_path_spec.rb +++ b/spec/lib/extracts_path_spec.rb @@ -7,8 +7,7 @@ describe ExtractsPath do before do @project = project - project.stub(:branches).and_return([stub(name: 'master'), stub(name: 'foo/bar/baz')]) - project.stub(:tags).and_return([stub(name: 'master'), stub(name: 'master')]) + project.stub(:ref_names).and_return(['master', 'foo/bar/baz', 'v1.0.0', 'v2.0.0']) end describe '#extract_ref' do -- GitLab From 09d43a4a4c69164b89041fee42d241bab680fd2b Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Thu, 4 Oct 2012 14:19:17 -0400 Subject: [PATCH 24/40] Revert "Use official Grit 2.5.0" This reverts commit 187e192cdf4470fa07a62aa0720c586b6dde2bde. [ci skip] --- Gemfile | 2 +- Gemfile.lock | 16 +++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/Gemfile b/Gemfile index 60955ef1cd0..31c1f04cb1d 100644 --- a/Gemfile +++ b/Gemfile @@ -23,7 +23,7 @@ gem 'omniauth-twitter' gem 'omniauth-github' # GITLAB patched libs -gem "grit", '2.5.0' +gem "grit", :git => "https://github.com/gitlabhq/grit.git", :ref => "7f35cb98ff17d534a07e3ce6ec3d580f67402837" gem "omniauth-ldap", :git => "https://github.com/gitlabhq/omniauth-ldap.git", :ref => "f038dd852d7bd473a557e385d5d7c2fd5dc1dc2e" gem 'yaml_db', :git => "https://github.com/gitlabhq/yaml_db.git" gem 'grack', :git => "https://github.com/gitlabhq/grack.git" diff --git a/Gemfile.lock b/Gemfile.lock index 6d8befaf42e..87fd1c90868 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,6 +11,16 @@ GIT grack (1.0.0) rack (~> 1.4.1) +GIT + remote: https://github.com/gitlabhq/grit.git + revision: 7f35cb98ff17d534a07e3ce6ec3d580f67402837 + ref: 7f35cb98ff17d534a07e3ce6ec3d580f67402837 + specs: + grit (2.5.0) + diff-lcs (~> 1.1) + mime-types (~> 1.15) + posix-spawn (~> 0.3.6) + GIT remote: https://github.com/gitlabhq/omniauth-ldap.git revision: f038dd852d7bd473a557e385d5d7c2fd5dc1dc2e @@ -147,10 +157,6 @@ GEM rack rack-mount gratr19 (0.4.4.1) - grit (2.5.0) - diff-lcs (~> 1.1) - mime-types (~> 1.15) - posix-spawn (~> 0.3.6) growl (1.0.3) guard (1.3.2) listen (>= 0.4.2) @@ -416,7 +422,7 @@ DEPENDENCIES gitolite (= 1.1.0) grack! grape (~> 0.2.1) - grit (= 2.5.0) + grit! growl guard-rspec guard-spinach -- GitLab From 144595b560426520faf9ffab694ff54845688a71 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Thu, 4 Oct 2012 14:30:31 -0400 Subject: [PATCH 25/40] Remove leftover ref_extractor_spec file Apparently it didn't get removed after the rename to ExtractsPath. --- spec/lib/ref_extractor_spec.rb | 58 ---------------------------------- 1 file changed, 58 deletions(-) delete mode 100644 spec/lib/ref_extractor_spec.rb diff --git a/spec/lib/ref_extractor_spec.rb b/spec/lib/ref_extractor_spec.rb deleted file mode 100644 index 8876373dffa..00000000000 --- a/spec/lib/ref_extractor_spec.rb +++ /dev/null @@ -1,58 +0,0 @@ -require 'spec_helper' - -describe ExtractsPath do - include ExtractsPath - - let(:project) { double('project') } - - before do - @project = project - project.stub(:branches).and_return(['master', 'foo/bar/baz']) - project.stub(:tags).and_return(['v1.0.0', 'v2.0.0']) - end - - describe '#extract_ref' do - it "returns an empty pair when no @project is set" do - @project = nil - extract_ref('master/CHANGELOG').should == ['', ''] - end - - context "without a path" do - it "extracts a valid branch" do - extract_ref('master').should == ['master', ''] - end - - it "extracts a valid tag" do - extract_ref('v2.0.0').should == ['v2.0.0', ''] - end - - it "extracts a valid commit ref without a path" do - extract_ref('f4b14494ef6abf3d144c28e4af0c20143383e062').should == - ['f4b14494ef6abf3d144c28e4af0c20143383e062', ''] - end - - it "falls back to a primitive split for an invalid ref" do - extract_ref('stable').should == ['stable', ''] - end - end - - context "with a path" do - it "extracts a valid branch" do - extract_ref('foo/bar/baz/CHANGELOG').should == ['foo/bar/baz', 'CHANGELOG'] - end - - it "extracts a valid tag" do - extract_ref('v2.0.0/CHANGELOG').should == ['v2.0.0', 'CHANGELOG'] - end - - it "extracts a valid commit SHA" do - extract_ref('f4b14494ef6abf3d144c28e4af0c20143383e062/CHANGELOG').should == - ['f4b14494ef6abf3d144c28e4af0c20143383e062', 'CHANGELOG'] - end - - it "falls back to a primitive split for an invalid ref" do - extract_ref('stable/CHANGELOG').should == ['stable', 'CHANGELOG'] - end - end - end -end -- GitLab From b6e1273885bf47b418c463cd0c925c7840a503ed Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Fri, 5 Oct 2012 17:01:44 +0300 Subject: [PATCH 26/40] Fix tests --- spec/requests/admin/admin_projects_spec.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/spec/requests/admin/admin_projects_spec.rb b/spec/requests/admin/admin_projects_spec.rb index 2edfb59231d..61e66eec08b 100644 --- a/spec/requests/admin/admin_projects_spec.rb +++ b/spec/requests/admin/admin_projects_spec.rb @@ -87,7 +87,7 @@ describe "Admin::Projects" do visit new_admin_project_path fill_in 'project_name', with: 'NewProject' fill_in 'project_code', with: 'NPR' - fill_in 'project_path', with: 'newproject' + fill_in 'project_path', with: 'gitlabhq_1' expect { click_button "Create project" }.to change { Project.count }.by(1) @project = Project.last end @@ -102,13 +102,13 @@ describe "Admin::Projects" do end end - describe "Add new team member" do - before do + describe "Add new team member" do + before do @new_user = Factory :user visit admin_project_path(@project) end - it "should create new user" do + it "should create new user" do select @new_user.name, from: "user_ids" expect { click_button "Add" }.to change { UsersProject.count }.by(1) page.should have_content @new_user.name -- GitLab From 2adf89ad8c87e13b4473ae601edfbdd97558ca38 Mon Sep 17 00:00:00 2001 From: Nihad Abbasov Date: Fri, 5 Oct 2012 05:22:01 -0700 Subject: [PATCH 27/40] specify HTTP verbs for match in routes --- config/routes.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/config/routes.rb b/config/routes.rb index 060fbf16793..54b298c961f 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -184,7 +184,8 @@ Gitlab::Application.routes.draw do resources :blame, only: [:show], constraints: {id: /.+/} resources :blob, only: [:show], constraints: {id: /.+/} resources :tree, only: [:show], constraints: {id: /.+/} - match "/compare/:from...:to" => "compare#show", as: "compare", constraints: {from: /.+/, to: /.+/} + match "/compare/:from...:to" => "compare#show", as: "compare", + :via => [:get, :post], constraints: {from: /.+/, to: /.+/} resources :team, controller: 'team_members', only: [:index] resources :team_members -- GitLab From dbcb5cb8c161060e7d2f23a03347b48443f8417b Mon Sep 17 00:00:00 2001 From: Nihad Abbasov Date: Fri, 5 Oct 2012 07:13:21 -0700 Subject: [PATCH 28/40] improve emoji checking performance --- config/initializers/emoji.rb | 4 ++++ lib/gitlab/markdown.rb | 2 +- {app => vendor}/assets/images/emoji/+1.png | Bin {app => vendor}/assets/images/emoji/-1.png | Bin {app => vendor}/assets/images/emoji/100.png | Bin {app => vendor}/assets/images/emoji/109.png | Bin {app => vendor}/assets/images/emoji/1234.png | Bin {app => vendor}/assets/images/emoji/8ball.png | Bin {app => vendor}/assets/images/emoji/a.png | Bin {app => vendor}/assets/images/emoji/ab.png | Bin {app => vendor}/assets/images/emoji/abc.png | Bin {app => vendor}/assets/images/emoji/abcd.png | Bin {app => vendor}/assets/images/emoji/accept.png | Bin .../assets/images/emoji/aerial_tramway.png | Bin {app => vendor}/assets/images/emoji/airplane.png | Bin {app => vendor}/assets/images/emoji/alarm_clock.png | Bin {app => vendor}/assets/images/emoji/alien.png | Bin {app => vendor}/assets/images/emoji/ambulance.png | Bin {app => vendor}/assets/images/emoji/anchor.png | Bin {app => vendor}/assets/images/emoji/angel.png | Bin {app => vendor}/assets/images/emoji/anger.png | Bin {app => vendor}/assets/images/emoji/angry.png | Bin {app => vendor}/assets/images/emoji/ant.png | Bin {app => vendor}/assets/images/emoji/apple.png | Bin {app => vendor}/assets/images/emoji/aquarius.png | Bin {app => vendor}/assets/images/emoji/aries.png | Bin .../assets/images/emoji/arrow_backward.png | Bin .../assets/images/emoji/arrow_double_down.png | Bin .../assets/images/emoji/arrow_double_up.png | Bin {app => vendor}/assets/images/emoji/arrow_down.png | Bin .../assets/images/emoji/arrow_down_small.png | Bin .../assets/images/emoji/arrow_forward.png | Bin .../assets/images/emoji/arrow_heading_down.png | Bin .../assets/images/emoji/arrow_heading_up.png | Bin {app => vendor}/assets/images/emoji/arrow_left.png | Bin .../assets/images/emoji/arrow_lower_left.png | Bin .../assets/images/emoji/arrow_lower_right.png | Bin {app => vendor}/assets/images/emoji/arrow_right.png | Bin .../assets/images/emoji/arrow_right_hook.png | Bin {app => vendor}/assets/images/emoji/arrow_up.png | Bin .../assets/images/emoji/arrow_up_down.png | Bin .../assets/images/emoji/arrow_up_small.png | Bin .../assets/images/emoji/arrow_upper_left.png | Bin .../assets/images/emoji/arrow_upper_right.png | Bin .../assets/images/emoji/arrows_clockwise.png | Bin .../assets/images/emoji/arrows_counterclockwise.png | Bin {app => vendor}/assets/images/emoji/art.png | Bin .../assets/images/emoji/articulated_lorry.png | Bin {app => vendor}/assets/images/emoji/astonished.png | Bin {app => vendor}/assets/images/emoji/atm.png | Bin {app => vendor}/assets/images/emoji/b.png | Bin {app => vendor}/assets/images/emoji/baby.png | Bin {app => vendor}/assets/images/emoji/baby_bottle.png | Bin {app => vendor}/assets/images/emoji/baby_chick.png | Bin {app => vendor}/assets/images/emoji/baby_symbol.png | Bin .../assets/images/emoji/baggage_claim.png | Bin {app => vendor}/assets/images/emoji/balloon.png | Bin .../assets/images/emoji/ballot_box_with_check.png | Bin {app => vendor}/assets/images/emoji/bamboo.png | Bin {app => vendor}/assets/images/emoji/banana.png | Bin {app => vendor}/assets/images/emoji/bangbang.png | Bin {app => vendor}/assets/images/emoji/bank.png | Bin {app => vendor}/assets/images/emoji/bar_chart.png | Bin {app => vendor}/assets/images/emoji/barber.png | Bin {app => vendor}/assets/images/emoji/baseball.png | Bin {app => vendor}/assets/images/emoji/basketball.png | Bin {app => vendor}/assets/images/emoji/bath.png | Bin {app => vendor}/assets/images/emoji/bathtub.png | Bin {app => vendor}/assets/images/emoji/battery.png | Bin {app => vendor}/assets/images/emoji/bear.png | Bin {app => vendor}/assets/images/emoji/beer.png | Bin {app => vendor}/assets/images/emoji/beers.png | Bin {app => vendor}/assets/images/emoji/beetle.png | Bin {app => vendor}/assets/images/emoji/beginner.png | Bin {app => vendor}/assets/images/emoji/bell.png | Bin {app => vendor}/assets/images/emoji/bento.png | Bin {app => vendor}/assets/images/emoji/bicyclist.png | Bin {app => vendor}/assets/images/emoji/bike.png | Bin {app => vendor}/assets/images/emoji/bikini.png | Bin {app => vendor}/assets/images/emoji/bird.png | Bin {app => vendor}/assets/images/emoji/birthday.png | Bin .../assets/images/emoji/black_circle.png | Bin {app => vendor}/assets/images/emoji/black_joker.png | Bin {app => vendor}/assets/images/emoji/black_nib.png | Bin .../assets/images/emoji/black_square.png | Bin {app => vendor}/assets/images/emoji/blossom.png | Bin {app => vendor}/assets/images/emoji/blowfish.png | Bin {app => vendor}/assets/images/emoji/blue_book.png | Bin {app => vendor}/assets/images/emoji/blue_car.png | Bin {app => vendor}/assets/images/emoji/blue_heart.png | Bin {app => vendor}/assets/images/emoji/blush.png | Bin {app => vendor}/assets/images/emoji/boar.png | Bin {app => vendor}/assets/images/emoji/boat.png | Bin {app => vendor}/assets/images/emoji/bomb.png | Bin {app => vendor}/assets/images/emoji/book.png | Bin {app => vendor}/assets/images/emoji/bookmark.png | Bin .../assets/images/emoji/bookmark_tabs.png | Bin {app => vendor}/assets/images/emoji/books.png | Bin {app => vendor}/assets/images/emoji/boot.png | Bin {app => vendor}/assets/images/emoji/bouquet.png | Bin {app => vendor}/assets/images/emoji/bow.png | Bin {app => vendor}/assets/images/emoji/bowling.png | Bin {app => vendor}/assets/images/emoji/bowtie.png | Bin {app => vendor}/assets/images/emoji/boy.png | Bin {app => vendor}/assets/images/emoji/bread.png | Bin .../assets/images/emoji/bride_with_veil.png | Bin .../assets/images/emoji/bridge_at_night.png | Bin {app => vendor}/assets/images/emoji/briefcase.png | Bin .../assets/images/emoji/broken_heart.png | Bin {app => vendor}/assets/images/emoji/bug.png | Bin {app => vendor}/assets/images/emoji/bulb.png | Bin .../assets/images/emoji/bullettrain_front.png | Bin .../assets/images/emoji/bullettrain_side.png | Bin {app => vendor}/assets/images/emoji/bus.png | Bin {app => vendor}/assets/images/emoji/busstop.png | Bin .../assets/images/emoji/bust_in_silhouette.png | Bin .../assets/images/emoji/busts_in_silhouette.png | Bin {app => vendor}/assets/images/emoji/cactus.png | Bin {app => vendor}/assets/images/emoji/cake.png | Bin {app => vendor}/assets/images/emoji/calendar.png | Bin {app => vendor}/assets/images/emoji/calling.png | Bin {app => vendor}/assets/images/emoji/camel.png | Bin {app => vendor}/assets/images/emoji/camera.png | Bin {app => vendor}/assets/images/emoji/cancer.png | Bin {app => vendor}/assets/images/emoji/candy.png | Bin .../assets/images/emoji/capital_abcd.png | Bin {app => vendor}/assets/images/emoji/capricorn.png | Bin {app => vendor}/assets/images/emoji/car.png | Bin {app => vendor}/assets/images/emoji/card_index.png | Bin .../assets/images/emoji/carousel_horse.png | Bin {app => vendor}/assets/images/emoji/cat.png | Bin {app => vendor}/assets/images/emoji/cat2.png | Bin {app => vendor}/assets/images/emoji/cd.png | Bin {app => vendor}/assets/images/emoji/chart.png | Bin .../images/emoji/chart_with_downwards_trend.png | Bin .../images/emoji/chart_with_upwards_trend.png | Bin .../assets/images/emoji/checkered_flag.png | Bin {app => vendor}/assets/images/emoji/cherries.png | Bin .../assets/images/emoji/cherry_blossom.png | Bin {app => vendor}/assets/images/emoji/chestnut.png | Bin {app => vendor}/assets/images/emoji/chicken.png | Bin .../assets/images/emoji/children_crossing.png | Bin .../assets/images/emoji/chocolate_bar.png | Bin .../assets/images/emoji/christmas_tree.png | Bin {app => vendor}/assets/images/emoji/church.png | Bin {app => vendor}/assets/images/emoji/cinema.png | Bin {app => vendor}/assets/images/emoji/circus_tent.png | Bin .../assets/images/emoji/city_sunrise.png | Bin {app => vendor}/assets/images/emoji/city_sunset.png | Bin {app => vendor}/assets/images/emoji/cl.png | Bin {app => vendor}/assets/images/emoji/clap.png | Bin {app => vendor}/assets/images/emoji/clapper.png | Bin {app => vendor}/assets/images/emoji/clipboard.png | Bin {app => vendor}/assets/images/emoji/clock1.png | Bin {app => vendor}/assets/images/emoji/clock10.png | Bin {app => vendor}/assets/images/emoji/clock1030.png | Bin {app => vendor}/assets/images/emoji/clock11.png | Bin {app => vendor}/assets/images/emoji/clock1130.png | Bin {app => vendor}/assets/images/emoji/clock12.png | Bin {app => vendor}/assets/images/emoji/clock1230.png | Bin {app => vendor}/assets/images/emoji/clock130.png | Bin {app => vendor}/assets/images/emoji/clock2.png | Bin {app => vendor}/assets/images/emoji/clock230.png | Bin {app => vendor}/assets/images/emoji/clock3.png | Bin {app => vendor}/assets/images/emoji/clock330.png | Bin {app => vendor}/assets/images/emoji/clock4.png | Bin {app => vendor}/assets/images/emoji/clock430.png | Bin {app => vendor}/assets/images/emoji/clock5.png | Bin {app => vendor}/assets/images/emoji/clock530.png | Bin {app => vendor}/assets/images/emoji/clock6.png | Bin {app => vendor}/assets/images/emoji/clock630.png | Bin {app => vendor}/assets/images/emoji/clock7.png | Bin {app => vendor}/assets/images/emoji/clock730.png | Bin {app => vendor}/assets/images/emoji/clock8.png | Bin {app => vendor}/assets/images/emoji/clock830.png | Bin {app => vendor}/assets/images/emoji/clock9.png | Bin {app => vendor}/assets/images/emoji/clock930.png | Bin {app => vendor}/assets/images/emoji/closed_book.png | Bin .../assets/images/emoji/closed_lock_with_key.png | Bin .../assets/images/emoji/closed_umbrella.png | Bin {app => vendor}/assets/images/emoji/cloud.png | Bin {app => vendor}/assets/images/emoji/clubs.png | Bin {app => vendor}/assets/images/emoji/cn.png | Bin {app => vendor}/assets/images/emoji/cocktail.png | Bin {app => vendor}/assets/images/emoji/coffee.png | Bin {app => vendor}/assets/images/emoji/cold_sweat.png | Bin {app => vendor}/assets/images/emoji/collision.png | Bin {app => vendor}/assets/images/emoji/computer.png | Bin .../assets/images/emoji/confetti_ball.png | Bin {app => vendor}/assets/images/emoji/confounded.png | Bin .../assets/images/emoji/congratulations.png | Bin .../assets/images/emoji/construction.png | Bin .../assets/images/emoji/construction_worker.png | Bin .../assets/images/emoji/convenience_store.png | Bin {app => vendor}/assets/images/emoji/cookie.png | Bin {app => vendor}/assets/images/emoji/cool.png | Bin {app => vendor}/assets/images/emoji/cop.png | Bin {app => vendor}/assets/images/emoji/copyright.png | Bin {app => vendor}/assets/images/emoji/corn.png | Bin {app => vendor}/assets/images/emoji/couple.png | Bin .../assets/images/emoji/couple_with_heart.png | Bin {app => vendor}/assets/images/emoji/couplekiss.png | Bin {app => vendor}/assets/images/emoji/cow.png | Bin {app => vendor}/assets/images/emoji/cow2.png | Bin {app => vendor}/assets/images/emoji/credit_card.png | Bin {app => vendor}/assets/images/emoji/crocodile.png | Bin .../assets/images/emoji/crossed_flags.png | Bin {app => vendor}/assets/images/emoji/crown.png | Bin {app => vendor}/assets/images/emoji/cry.png | Bin .../assets/images/emoji/crying_cat_face.png | Bin .../assets/images/emoji/crystal_ball.png | Bin {app => vendor}/assets/images/emoji/cupid.png | Bin {app => vendor}/assets/images/emoji/curly_loop.png | Bin .../assets/images/emoji/currency_exchange.png | Bin {app => vendor}/assets/images/emoji/curry.png | Bin {app => vendor}/assets/images/emoji/custard.png | Bin {app => vendor}/assets/images/emoji/customs.png | Bin {app => vendor}/assets/images/emoji/cyclone.png | Bin {app => vendor}/assets/images/emoji/dancer.png | Bin {app => vendor}/assets/images/emoji/dancers.png | Bin {app => vendor}/assets/images/emoji/dango.png | Bin {app => vendor}/assets/images/emoji/dart.png | Bin {app => vendor}/assets/images/emoji/dash.png | Bin {app => vendor}/assets/images/emoji/date.png | Bin {app => vendor}/assets/images/emoji/de.png | Bin .../assets/images/emoji/deciduous_tree.png | Bin .../assets/images/emoji/department_store.png | Bin .../emoji/diamond_shape_with_a_dot_inside.png | Bin {app => vendor}/assets/images/emoji/diamonds.png | Bin .../assets/images/emoji/disappointed.png | Bin {app => vendor}/assets/images/emoji/dizzy.png | Bin {app => vendor}/assets/images/emoji/dizzy_face.png | Bin .../assets/images/emoji/do_not_litter.png | Bin {app => vendor}/assets/images/emoji/dog.png | Bin {app => vendor}/assets/images/emoji/dog2.png | Bin {app => vendor}/assets/images/emoji/dollar.png | Bin {app => vendor}/assets/images/emoji/dolls.png | Bin {app => vendor}/assets/images/emoji/dolphin.png | Bin {app => vendor}/assets/images/emoji/door.png | Bin {app => vendor}/assets/images/emoji/doughnut.png | Bin {app => vendor}/assets/images/emoji/dragon.png | Bin {app => vendor}/assets/images/emoji/dragon_face.png | Bin {app => vendor}/assets/images/emoji/dress.png | Bin .../assets/images/emoji/dromedary_camel.png | Bin {app => vendor}/assets/images/emoji/droplet.png | Bin {app => vendor}/assets/images/emoji/dvd.png | Bin {app => vendor}/assets/images/emoji/e-mail.png | Bin {app => vendor}/assets/images/emoji/ear.png | Bin {app => vendor}/assets/images/emoji/ear_of_rice.png | Bin .../assets/images/emoji/earth_africa.png | Bin .../assets/images/emoji/earth_americas.png | Bin {app => vendor}/assets/images/emoji/earth_asia.png | Bin {app => vendor}/assets/images/emoji/egg.png | Bin {app => vendor}/assets/images/emoji/eggplant.png | Bin {app => vendor}/assets/images/emoji/eight.png | Bin .../images/emoji/eight_pointed_black_star.png | Bin .../assets/images/emoji/eight_spoked_asterisk.png | Bin .../assets/images/emoji/electric_plug.png | Bin {app => vendor}/assets/images/emoji/elephant.png | Bin {app => vendor}/assets/images/emoji/email.png | Bin {app => vendor}/assets/images/emoji/end.png | Bin {app => vendor}/assets/images/emoji/envelope.png | Bin {app => vendor}/assets/images/emoji/es.png | Bin {app => vendor}/assets/images/emoji/euro.png | Bin .../assets/images/emoji/european_castle.png | Bin .../assets/images/emoji/european_post_office.png | Bin .../assets/images/emoji/evergreen_tree.png | Bin {app => vendor}/assets/images/emoji/exclamation.png | Bin {app => vendor}/assets/images/emoji/eyeglasses.png | Bin {app => vendor}/assets/images/emoji/eyes.png | Bin {app => vendor}/assets/images/emoji/facepunch.png | Bin {app => vendor}/assets/images/emoji/factory.png | Bin {app => vendor}/assets/images/emoji/fallen_leaf.png | Bin {app => vendor}/assets/images/emoji/family.png | Bin .../assets/images/emoji/fast_forward.png | Bin {app => vendor}/assets/images/emoji/fax.png | Bin {app => vendor}/assets/images/emoji/fearful.png | Bin {app => vendor}/assets/images/emoji/feelsgood.png | Bin {app => vendor}/assets/images/emoji/feet.png | Bin .../assets/images/emoji/ferris_wheel.png | Bin {app => vendor}/assets/images/emoji/file_folder.png | Bin {app => vendor}/assets/images/emoji/finnadie.png | Bin {app => vendor}/assets/images/emoji/fire.png | Bin {app => vendor}/assets/images/emoji/fire_engine.png | Bin {app => vendor}/assets/images/emoji/fireworks.png | Bin .../assets/images/emoji/first_quarter_moon.png | Bin .../images/emoji/first_quarter_moon_with_face.png | Bin {app => vendor}/assets/images/emoji/fish.png | Bin {app => vendor}/assets/images/emoji/fish_cake.png | Bin .../assets/images/emoji/fishing_pole_and_fish.png | Bin {app => vendor}/assets/images/emoji/fist.png | Bin {app => vendor}/assets/images/emoji/five.png | Bin {app => vendor}/assets/images/emoji/flags.png | Bin {app => vendor}/assets/images/emoji/flashlight.png | Bin {app => vendor}/assets/images/emoji/floppy_disk.png | Bin .../assets/images/emoji/flower_playing_cards.png | Bin {app => vendor}/assets/images/emoji/flushed.png | Bin {app => vendor}/assets/images/emoji/foggy.png | Bin {app => vendor}/assets/images/emoji/football.png | Bin .../assets/images/emoji/fork_and_knife.png | Bin {app => vendor}/assets/images/emoji/fountain.png | Bin {app => vendor}/assets/images/emoji/four.png | Bin .../assets/images/emoji/four_leaf_clover.png | Bin {app => vendor}/assets/images/emoji/fr.png | Bin {app => vendor}/assets/images/emoji/free.png | Bin .../assets/images/emoji/fried_shrimp.png | Bin {app => vendor}/assets/images/emoji/fries.png | Bin {app => vendor}/assets/images/emoji/frog.png | Bin {app => vendor}/assets/images/emoji/fuelpump.png | Bin {app => vendor}/assets/images/emoji/full_moon.png | Bin .../assets/images/emoji/full_moon_with_face.png | Bin {app => vendor}/assets/images/emoji/game_die.png | Bin {app => vendor}/assets/images/emoji/gb.png | Bin {app => vendor}/assets/images/emoji/gem.png | Bin {app => vendor}/assets/images/emoji/gemini.png | Bin {app => vendor}/assets/images/emoji/ghost.png | Bin {app => vendor}/assets/images/emoji/gift.png | Bin {app => vendor}/assets/images/emoji/gift_heart.png | Bin {app => vendor}/assets/images/emoji/girl.png | Bin .../assets/images/emoji/globe_with_meridians.png | Bin {app => vendor}/assets/images/emoji/goat.png | Bin {app => vendor}/assets/images/emoji/goberserk.png | Bin {app => vendor}/assets/images/emoji/godmode.png | Bin {app => vendor}/assets/images/emoji/golf.png | Bin {app => vendor}/assets/images/emoji/grapes.png | Bin {app => vendor}/assets/images/emoji/green_apple.png | Bin {app => vendor}/assets/images/emoji/green_book.png | Bin {app => vendor}/assets/images/emoji/green_heart.png | Bin .../assets/images/emoji/grey_exclamation.png | Bin .../assets/images/emoji/grey_question.png | Bin {app => vendor}/assets/images/emoji/grin.png | Bin {app => vendor}/assets/images/emoji/guardsman.png | Bin {app => vendor}/assets/images/emoji/guitar.png | Bin {app => vendor}/assets/images/emoji/gun.png | Bin {app => vendor}/assets/images/emoji/haircut.png | Bin {app => vendor}/assets/images/emoji/hamburger.png | Bin {app => vendor}/assets/images/emoji/hammer.png | Bin {app => vendor}/assets/images/emoji/hamster.png | Bin {app => vendor}/assets/images/emoji/hand.png | Bin {app => vendor}/assets/images/emoji/handbag.png | Bin {app => vendor}/assets/images/emoji/hankey.png | Bin {app => vendor}/assets/images/emoji/hash.png | Bin .../assets/images/emoji/hatched_chick.png | Bin .../assets/images/emoji/hatching_chick.png | Bin {app => vendor}/assets/images/emoji/headphones.png | Bin .../assets/images/emoji/hear_no_evil.png | Bin {app => vendor}/assets/images/emoji/heart.png | Bin .../assets/images/emoji/heart_decoration.png | Bin {app => vendor}/assets/images/emoji/heart_eyes.png | Bin .../assets/images/emoji/heart_eyes_cat.png | Bin {app => vendor}/assets/images/emoji/heartbeat.png | Bin {app => vendor}/assets/images/emoji/heartpulse.png | Bin {app => vendor}/assets/images/emoji/hearts.png | Bin .../assets/images/emoji/heavy_check_mark.png | Bin .../assets/images/emoji/heavy_division_sign.png | Bin .../assets/images/emoji/heavy_dollar_sign.png | Bin .../assets/images/emoji/heavy_exclamation_mark.png | Bin .../assets/images/emoji/heavy_minus_sign.png | Bin .../assets/images/emoji/heavy_multiplication_x.png | Bin .../assets/images/emoji/heavy_plus_sign.png | Bin {app => vendor}/assets/images/emoji/helicopter.png | Bin {app => vendor}/assets/images/emoji/herb.png | Bin {app => vendor}/assets/images/emoji/hibiscus.png | Bin .../assets/images/emoji/high_brightness.png | Bin {app => vendor}/assets/images/emoji/high_heel.png | Bin {app => vendor}/assets/images/emoji/hocho.png | Bin {app => vendor}/assets/images/emoji/honey_pot.png | Bin {app => vendor}/assets/images/emoji/honeybee.png | Bin {app => vendor}/assets/images/emoji/horse.png | Bin .../assets/images/emoji/horse_racing.png | Bin {app => vendor}/assets/images/emoji/hospital.png | Bin {app => vendor}/assets/images/emoji/hotel.png | Bin {app => vendor}/assets/images/emoji/hotsprings.png | Bin {app => vendor}/assets/images/emoji/hourglass.png | Bin {app => vendor}/assets/images/emoji/house.png | Bin {app => vendor}/assets/images/emoji/hurtrealbad.png | Bin {app => vendor}/assets/images/emoji/ice_cream.png | Bin {app => vendor}/assets/images/emoji/icecream.png | Bin {app => vendor}/assets/images/emoji/id.png | Bin .../assets/images/emoji/ideograph_advantage.png | Bin {app => vendor}/assets/images/emoji/imp.png | Bin {app => vendor}/assets/images/emoji/inbox_tray.png | Bin .../assets/images/emoji/incoming_envelope.png | Bin .../assets/images/emoji/information_desk_person.png | Bin .../assets/images/emoji/information_source.png | Bin {app => vendor}/assets/images/emoji/innocent.png | Bin {app => vendor}/assets/images/emoji/interrobang.png | Bin {app => vendor}/assets/images/emoji/iphone.png | Bin {app => vendor}/assets/images/emoji/it.png | Bin .../assets/images/emoji/izakaya_lantern.png | Bin .../assets/images/emoji/jack_o_lantern.png | Bin {app => vendor}/assets/images/emoji/japan.png | Bin .../assets/images/emoji/japanese_castle.png | Bin .../assets/images/emoji/japanese_goblin.png | Bin .../assets/images/emoji/japanese_ogre.png | Bin {app => vendor}/assets/images/emoji/jeans.png | Bin {app => vendor}/assets/images/emoji/joy.png | Bin {app => vendor}/assets/images/emoji/joy_cat.png | Bin {app => vendor}/assets/images/emoji/jp.png | Bin {app => vendor}/assets/images/emoji/key.png | Bin {app => vendor}/assets/images/emoji/keycap_ten.png | Bin {app => vendor}/assets/images/emoji/kimono.png | Bin {app => vendor}/assets/images/emoji/kiss.png | Bin {app => vendor}/assets/images/emoji/kissing_cat.png | Bin .../assets/images/emoji/kissing_face.png | Bin .../assets/images/emoji/kissing_heart.png | Bin {app => vendor}/assets/images/emoji/koala.png | Bin {app => vendor}/assets/images/emoji/koko.png | Bin {app => vendor}/assets/images/emoji/kr.png | Bin .../assets/images/emoji/large_blue_circle.png | Bin .../assets/images/emoji/large_blue_diamond.png | Bin .../assets/images/emoji/large_orange_diamond.png | Bin .../assets/images/emoji/last_quarter_moon.png | Bin .../images/emoji/last_quarter_moon_with_face.png | Bin {app => vendor}/assets/images/emoji/laughing.png | Bin {app => vendor}/assets/images/emoji/leaves.png | Bin {app => vendor}/assets/images/emoji/ledger.png | Bin .../assets/images/emoji/left_luggage.png | Bin .../assets/images/emoji/left_right_arrow.png | Bin .../images/emoji/leftwards_arrow_with_hook.png | Bin {app => vendor}/assets/images/emoji/lemon.png | Bin {app => vendor}/assets/images/emoji/leo.png | Bin {app => vendor}/assets/images/emoji/leopard.png | Bin {app => vendor}/assets/images/emoji/libra.png | Bin {app => vendor}/assets/images/emoji/light_rail.png | Bin {app => vendor}/assets/images/emoji/link.png | Bin {app => vendor}/assets/images/emoji/lips.png | Bin {app => vendor}/assets/images/emoji/lipstick.png | Bin {app => vendor}/assets/images/emoji/lock.png | Bin .../assets/images/emoji/lock_with_ink_pen.png | Bin {app => vendor}/assets/images/emoji/lollipop.png | Bin {app => vendor}/assets/images/emoji/loop.png | Bin {app => vendor}/assets/images/emoji/loudspeaker.png | Bin {app => vendor}/assets/images/emoji/love_hotel.png | Bin {app => vendor}/assets/images/emoji/love_letter.png | Bin .../assets/images/emoji/low_brightness.png | Bin {app => vendor}/assets/images/emoji/m.png | Bin {app => vendor}/assets/images/emoji/mag.png | Bin {app => vendor}/assets/images/emoji/mag_right.png | Bin {app => vendor}/assets/images/emoji/mahjong.png | Bin {app => vendor}/assets/images/emoji/mailbox.png | Bin .../assets/images/emoji/mailbox_closed.png | Bin .../assets/images/emoji/mailbox_with_mail.png | Bin .../assets/images/emoji/mailbox_with_no_mail.png | Bin {app => vendor}/assets/images/emoji/man.png | Bin .../assets/images/emoji/man_with_gua_pi_mao.png | Bin .../assets/images/emoji/man_with_turban.png | Bin {app => vendor}/assets/images/emoji/mans_shoe.png | Bin {app => vendor}/assets/images/emoji/maple_leaf.png | Bin {app => vendor}/assets/images/emoji/mask.png | Bin {app => vendor}/assets/images/emoji/massage.png | Bin .../assets/images/emoji/meat_on_bone.png | Bin {app => vendor}/assets/images/emoji/mega.png | Bin {app => vendor}/assets/images/emoji/melon.png | Bin {app => vendor}/assets/images/emoji/memo.png | Bin {app => vendor}/assets/images/emoji/mens.png | Bin {app => vendor}/assets/images/emoji/metal.png | Bin {app => vendor}/assets/images/emoji/metro.png | Bin {app => vendor}/assets/images/emoji/microphone.png | Bin {app => vendor}/assets/images/emoji/microscope.png | Bin {app => vendor}/assets/images/emoji/milky_way.png | Bin {app => vendor}/assets/images/emoji/minibus.png | Bin {app => vendor}/assets/images/emoji/minidisc.png | Bin .../assets/images/emoji/mobile_phone_off.png | Bin .../assets/images/emoji/money_with_wings.png | Bin {app => vendor}/assets/images/emoji/moneybag.png | Bin {app => vendor}/assets/images/emoji/monkey.png | Bin {app => vendor}/assets/images/emoji/monkey_face.png | Bin {app => vendor}/assets/images/emoji/monorail.png | Bin {app => vendor}/assets/images/emoji/moon.png | Bin .../assets/images/emoji/mortar_board.png | Bin {app => vendor}/assets/images/emoji/mount_fuji.png | Bin .../assets/images/emoji/mountain_bicyclist.png | Bin .../assets/images/emoji/mountain_cableway.png | Bin .../assets/images/emoji/mountain_railway.png | Bin {app => vendor}/assets/images/emoji/mouse.png | Bin {app => vendor}/assets/images/emoji/mouse2.png | Bin .../assets/images/emoji/movie_camera.png | Bin {app => vendor}/assets/images/emoji/moyai.png | Bin {app => vendor}/assets/images/emoji/muscle.png | Bin {app => vendor}/assets/images/emoji/mushroom.png | Bin .../assets/images/emoji/musical_keyboard.png | Bin .../assets/images/emoji/musical_note.png | Bin .../assets/images/emoji/musical_score.png | Bin {app => vendor}/assets/images/emoji/mute.png | Bin {app => vendor}/assets/images/emoji/nail_care.png | Bin {app => vendor}/assets/images/emoji/name_badge.png | Bin {app => vendor}/assets/images/emoji/neckbeard.png | Bin {app => vendor}/assets/images/emoji/necktie.png | Bin .../images/emoji/negative_squared_cross_mark.png | Bin .../assets/images/emoji/neutral_face.png | Bin {app => vendor}/assets/images/emoji/new.png | Bin {app => vendor}/assets/images/emoji/new_moon.png | Bin .../assets/images/emoji/new_moon_with_face.png | Bin {app => vendor}/assets/images/emoji/newspaper.png | Bin {app => vendor}/assets/images/emoji/ng.png | Bin {app => vendor}/assets/images/emoji/nine.png | Bin {app => vendor}/assets/images/emoji/no_bell.png | Bin {app => vendor}/assets/images/emoji/no_bicycles.png | Bin {app => vendor}/assets/images/emoji/no_entry.png | Bin .../assets/images/emoji/no_entry_sign.png | Bin {app => vendor}/assets/images/emoji/no_good.png | Bin .../assets/images/emoji/no_mobile_phones.png | Bin {app => vendor}/assets/images/emoji/no_mouth.png | Bin .../assets/images/emoji/no_pedestrians.png | Bin {app => vendor}/assets/images/emoji/no_smoking.png | Bin .../assets/images/emoji/non-potable_water.png | Bin {app => vendor}/assets/images/emoji/nose.png | Bin {app => vendor}/assets/images/emoji/notebook.png | Bin .../images/emoji/notebook_with_decorative_cover.png | Bin {app => vendor}/assets/images/emoji/notes.png | Bin .../assets/images/emoji/nut_and_bolt.png | Bin {app => vendor}/assets/images/emoji/o.png | Bin {app => vendor}/assets/images/emoji/o2.png | Bin {app => vendor}/assets/images/emoji/ocean.png | Bin {app => vendor}/assets/images/emoji/octocat.png | Bin {app => vendor}/assets/images/emoji/octopus.png | Bin {app => vendor}/assets/images/emoji/oden.png | Bin {app => vendor}/assets/images/emoji/office.png | Bin {app => vendor}/assets/images/emoji/ok.png | Bin {app => vendor}/assets/images/emoji/ok_hand.png | Bin {app => vendor}/assets/images/emoji/ok_woman.png | Bin {app => vendor}/assets/images/emoji/older_man.png | Bin {app => vendor}/assets/images/emoji/older_woman.png | Bin {app => vendor}/assets/images/emoji/on.png | Bin .../assets/images/emoji/oncoming_automobile.png | Bin .../assets/images/emoji/oncoming_bus.png | Bin .../assets/images/emoji/oncoming_police_car.png | Bin .../assets/images/emoji/oncoming_taxi.png | Bin {app => vendor}/assets/images/emoji/one.png | Bin .../assets/images/emoji/open_file_folder.png | Bin {app => vendor}/assets/images/emoji/open_hands.png | Bin {app => vendor}/assets/images/emoji/ophiuchus.png | Bin {app => vendor}/assets/images/emoji/orange_book.png | Bin {app => vendor}/assets/images/emoji/outbox_tray.png | Bin {app => vendor}/assets/images/emoji/ox.png | Bin .../assets/images/emoji/page_facing_up.png | Bin .../assets/images/emoji/page_with_curl.png | Bin {app => vendor}/assets/images/emoji/pager.png | Bin {app => vendor}/assets/images/emoji/palm_tree.png | Bin {app => vendor}/assets/images/emoji/panda_face.png | Bin {app => vendor}/assets/images/emoji/paperclip.png | Bin {app => vendor}/assets/images/emoji/parking.png | Bin .../assets/images/emoji/part_alternation_mark.png | Bin .../assets/images/emoji/partly_sunny.png | Bin .../assets/images/emoji/passport_control.png | Bin {app => vendor}/assets/images/emoji/paw_prints.png | Bin {app => vendor}/assets/images/emoji/peach.png | Bin {app => vendor}/assets/images/emoji/pear.png | Bin {app => vendor}/assets/images/emoji/pencil.png | Bin {app => vendor}/assets/images/emoji/pencil2.png | Bin {app => vendor}/assets/images/emoji/penguin.png | Bin {app => vendor}/assets/images/emoji/pensive.png | Bin .../assets/images/emoji/performing_arts.png | Bin {app => vendor}/assets/images/emoji/persevere.png | Bin .../assets/images/emoji/person_frowning.png | Bin .../assets/images/emoji/person_with_blond_hair.png | Bin .../images/emoji/person_with_pouting_face.png | Bin {app => vendor}/assets/images/emoji/phone.png | Bin {app => vendor}/assets/images/emoji/pig.png | Bin {app => vendor}/assets/images/emoji/pig2.png | Bin {app => vendor}/assets/images/emoji/pig_nose.png | Bin {app => vendor}/assets/images/emoji/pill.png | Bin {app => vendor}/assets/images/emoji/pineapple.png | Bin {app => vendor}/assets/images/emoji/pisces.png | Bin {app => vendor}/assets/images/emoji/pizza.png | Bin {app => vendor}/assets/images/emoji/plus1.png | Bin {app => vendor}/assets/images/emoji/point_down.png | Bin {app => vendor}/assets/images/emoji/point_left.png | Bin {app => vendor}/assets/images/emoji/point_right.png | Bin {app => vendor}/assets/images/emoji/point_up.png | Bin {app => vendor}/assets/images/emoji/point_up_2.png | Bin {app => vendor}/assets/images/emoji/police_car.png | Bin {app => vendor}/assets/images/emoji/poodle.png | Bin {app => vendor}/assets/images/emoji/poop.png | Bin {app => vendor}/assets/images/emoji/post_office.png | Bin {app => vendor}/assets/images/emoji/postal_horn.png | Bin {app => vendor}/assets/images/emoji/postbox.png | Bin .../assets/images/emoji/potable_water.png | Bin {app => vendor}/assets/images/emoji/pouch.png | Bin {app => vendor}/assets/images/emoji/poultry_leg.png | Bin {app => vendor}/assets/images/emoji/pound.png | Bin {app => vendor}/assets/images/emoji/pouting_cat.png | Bin {app => vendor}/assets/images/emoji/pray.png | Bin {app => vendor}/assets/images/emoji/princess.png | Bin {app => vendor}/assets/images/emoji/punch.png | Bin .../assets/images/emoji/purple_heart.png | Bin {app => vendor}/assets/images/emoji/purse.png | Bin {app => vendor}/assets/images/emoji/pushpin.png | Bin .../assets/images/emoji/put_litter_in_its_place.png | Bin {app => vendor}/assets/images/emoji/question.png | Bin {app => vendor}/assets/images/emoji/rabbit.png | Bin {app => vendor}/assets/images/emoji/rabbit2.png | Bin {app => vendor}/assets/images/emoji/racehorse.png | Bin {app => vendor}/assets/images/emoji/radio.png | Bin .../assets/images/emoji/radio_button.png | Bin {app => vendor}/assets/images/emoji/rage.png | Bin {app => vendor}/assets/images/emoji/rage1.png | Bin {app => vendor}/assets/images/emoji/rage2.png | Bin {app => vendor}/assets/images/emoji/rage3.png | Bin {app => vendor}/assets/images/emoji/rage4.png | Bin {app => vendor}/assets/images/emoji/railway_car.png | Bin {app => vendor}/assets/images/emoji/rainbow.png | Bin {app => vendor}/assets/images/emoji/raised_hand.png | Bin .../assets/images/emoji/raised_hands.png | Bin {app => vendor}/assets/images/emoji/ram.png | Bin {app => vendor}/assets/images/emoji/ramen.png | Bin {app => vendor}/assets/images/emoji/rat.png | Bin {app => vendor}/assets/images/emoji/recycle.png | Bin {app => vendor}/assets/images/emoji/red_car.png | Bin {app => vendor}/assets/images/emoji/red_circle.png | Bin {app => vendor}/assets/images/emoji/registered.png | Bin {app => vendor}/assets/images/emoji/relaxed.png | Bin {app => vendor}/assets/images/emoji/relieved.png | Bin {app => vendor}/assets/images/emoji/repeat.png | Bin {app => vendor}/assets/images/emoji/repeat_one.png | Bin {app => vendor}/assets/images/emoji/restroom.png | Bin .../assets/images/emoji/revolving_hearts.png | Bin {app => vendor}/assets/images/emoji/rewind.png | Bin {app => vendor}/assets/images/emoji/ribbon.png | Bin {app => vendor}/assets/images/emoji/rice.png | Bin {app => vendor}/assets/images/emoji/rice_ball.png | Bin .../assets/images/emoji/rice_cracker.png | Bin {app => vendor}/assets/images/emoji/rice_scene.png | Bin {app => vendor}/assets/images/emoji/ring.png | Bin {app => vendor}/assets/images/emoji/rocket.png | Bin .../assets/images/emoji/roller_coaster.png | Bin {app => vendor}/assets/images/emoji/rooster.png | Bin {app => vendor}/assets/images/emoji/rose.png | Bin .../assets/images/emoji/rotating_light.png | Bin .../assets/images/emoji/round_pushpin.png | Bin {app => vendor}/assets/images/emoji/rowboat.png | Bin {app => vendor}/assets/images/emoji/ru.png | Bin .../assets/images/emoji/rugby_football.png | Bin {app => vendor}/assets/images/emoji/runner.png | Bin {app => vendor}/assets/images/emoji/running.png | Bin .../assets/images/emoji/running_shirt_with_sash.png | Bin {app => vendor}/assets/images/emoji/sa.png | Bin {app => vendor}/assets/images/emoji/sagittarius.png | Bin {app => vendor}/assets/images/emoji/sailboat.png | Bin {app => vendor}/assets/images/emoji/sake.png | Bin {app => vendor}/assets/images/emoji/sandal.png | Bin {app => vendor}/assets/images/emoji/santa.png | Bin {app => vendor}/assets/images/emoji/satellite.png | Bin {app => vendor}/assets/images/emoji/satisfied.png | Bin {app => vendor}/assets/images/emoji/saxophone.png | Bin {app => vendor}/assets/images/emoji/school.png | Bin .../assets/images/emoji/school_satchel.png | Bin {app => vendor}/assets/images/emoji/scissors.png | Bin {app => vendor}/assets/images/emoji/scorpius.png | Bin {app => vendor}/assets/images/emoji/scream.png | Bin {app => vendor}/assets/images/emoji/scream_cat.png | Bin {app => vendor}/assets/images/emoji/scroll.png | Bin {app => vendor}/assets/images/emoji/seat.png | Bin {app => vendor}/assets/images/emoji/secret.png | Bin {app => vendor}/assets/images/emoji/see_no_evil.png | Bin {app => vendor}/assets/images/emoji/seedling.png | Bin {app => vendor}/assets/images/emoji/seven.png | Bin {app => vendor}/assets/images/emoji/shaved_ice.png | Bin {app => vendor}/assets/images/emoji/sheep.png | Bin {app => vendor}/assets/images/emoji/shell.png | Bin {app => vendor}/assets/images/emoji/ship.png | Bin {app => vendor}/assets/images/emoji/shipit.png | Bin {app => vendor}/assets/images/emoji/shirt.png | Bin {app => vendor}/assets/images/emoji/shit.png | Bin {app => vendor}/assets/images/emoji/shoe.png | Bin {app => vendor}/assets/images/emoji/shower.png | Bin .../assets/images/emoji/signal_strength.png | Bin {app => vendor}/assets/images/emoji/six.png | Bin .../assets/images/emoji/six_pointed_star.png | Bin {app => vendor}/assets/images/emoji/ski.png | Bin {app => vendor}/assets/images/emoji/skull.png | Bin {app => vendor}/assets/images/emoji/sleepy.png | Bin .../assets/images/emoji/slot_machine.png | Bin .../assets/images/emoji/small_blue_diamond.png | Bin .../assets/images/emoji/small_orange_diamond.png | Bin .../assets/images/emoji/small_red_triangle.png | Bin .../assets/images/emoji/small_red_triangle_down.png | Bin {app => vendor}/assets/images/emoji/smile.png | Bin {app => vendor}/assets/images/emoji/smile_cat.png | Bin {app => vendor}/assets/images/emoji/smiley.png | Bin {app => vendor}/assets/images/emoji/smiley_cat.png | Bin {app => vendor}/assets/images/emoji/smiling_imp.png | Bin {app => vendor}/assets/images/emoji/smirk.png | Bin {app => vendor}/assets/images/emoji/smirk_cat.png | Bin {app => vendor}/assets/images/emoji/smoking.png | Bin {app => vendor}/assets/images/emoji/snail.png | Bin {app => vendor}/assets/images/emoji/snake.png | Bin {app => vendor}/assets/images/emoji/snowboarder.png | Bin {app => vendor}/assets/images/emoji/snowflake.png | Bin {app => vendor}/assets/images/emoji/snowman.png | Bin {app => vendor}/assets/images/emoji/sob.png | Bin {app => vendor}/assets/images/emoji/soccer.png | Bin {app => vendor}/assets/images/emoji/soon.png | Bin {app => vendor}/assets/images/emoji/sos.png | Bin {app => vendor}/assets/images/emoji/sound.png | Bin .../assets/images/emoji/space_invader.png | Bin {app => vendor}/assets/images/emoji/spades.png | Bin {app => vendor}/assets/images/emoji/spaghetti.png | Bin {app => vendor}/assets/images/emoji/sparkler.png | Bin {app => vendor}/assets/images/emoji/sparkles.png | Bin .../assets/images/emoji/speak_no_evil.png | Bin {app => vendor}/assets/images/emoji/speaker.png | Bin .../assets/images/emoji/speech_balloon.png | Bin {app => vendor}/assets/images/emoji/speedboat.png | Bin {app => vendor}/assets/images/emoji/squirrel.png | Bin {app => vendor}/assets/images/emoji/star.png | Bin {app => vendor}/assets/images/emoji/star2.png | Bin {app => vendor}/assets/images/emoji/stars.png | Bin {app => vendor}/assets/images/emoji/station.png | Bin .../assets/images/emoji/statue_of_liberty.png | Bin .../assets/images/emoji/steam_locomotive.png | Bin {app => vendor}/assets/images/emoji/stew.png | Bin .../assets/images/emoji/straight_ruler.png | Bin {app => vendor}/assets/images/emoji/strawberry.png | Bin .../assets/images/emoji/sun_with_face.png | Bin {app => vendor}/assets/images/emoji/sunflower.png | Bin {app => vendor}/assets/images/emoji/sunglasses.png | Bin {app => vendor}/assets/images/emoji/sunny.png | Bin {app => vendor}/assets/images/emoji/sunrise.png | Bin .../assets/images/emoji/sunrise_over_mountains.png | Bin {app => vendor}/assets/images/emoji/surfer.png | Bin {app => vendor}/assets/images/emoji/sushi.png | Bin {app => vendor}/assets/images/emoji/suspect.png | Bin .../assets/images/emoji/suspension_railway.png | Bin {app => vendor}/assets/images/emoji/sweat.png | Bin {app => vendor}/assets/images/emoji/sweat_drops.png | Bin {app => vendor}/assets/images/emoji/sweat_smile.png | Bin .../assets/images/emoji/sweet_potato.png | Bin {app => vendor}/assets/images/emoji/swimmer.png | Bin {app => vendor}/assets/images/emoji/symbols.png | Bin {app => vendor}/assets/images/emoji/syringe.png | Bin {app => vendor}/assets/images/emoji/tada.png | Bin .../assets/images/emoji/tanabata_tree.png | Bin {app => vendor}/assets/images/emoji/tangerine.png | Bin {app => vendor}/assets/images/emoji/taurus.png | Bin {app => vendor}/assets/images/emoji/taxi.png | Bin {app => vendor}/assets/images/emoji/tea.png | Bin {app => vendor}/assets/images/emoji/telephone.png | Bin .../assets/images/emoji/telephone_receiver.png | Bin {app => vendor}/assets/images/emoji/telescope.png | Bin {app => vendor}/assets/images/emoji/tennis.png | Bin {app => vendor}/assets/images/emoji/tent.png | Bin .../assets/images/emoji/thought_balloon.png | Bin {app => vendor}/assets/images/emoji/three.png | Bin {app => vendor}/assets/images/emoji/thumbsdown.png | Bin {app => vendor}/assets/images/emoji/thumbsup.png | Bin {app => vendor}/assets/images/emoji/ticket.png | Bin {app => vendor}/assets/images/emoji/tiger.png | Bin {app => vendor}/assets/images/emoji/tiger2.png | Bin {app => vendor}/assets/images/emoji/tired_face.png | Bin {app => vendor}/assets/images/emoji/tm.png | Bin {app => vendor}/assets/images/emoji/toilet.png | Bin {app => vendor}/assets/images/emoji/tokyo_tower.png | Bin {app => vendor}/assets/images/emoji/tomato.png | Bin {app => vendor}/assets/images/emoji/tongue.png | Bin {app => vendor}/assets/images/emoji/tongue2.png | Bin {app => vendor}/assets/images/emoji/top.png | Bin {app => vendor}/assets/images/emoji/tophat.png | Bin {app => vendor}/assets/images/emoji/tractor.png | Bin .../assets/images/emoji/traffic_light.png | Bin {app => vendor}/assets/images/emoji/train.png | Bin {app => vendor}/assets/images/emoji/train2.png | Bin {app => vendor}/assets/images/emoji/tram.png | Bin .../assets/images/emoji/triangular_flag_on_post.png | Bin .../assets/images/emoji/triangular_ruler.png | Bin {app => vendor}/assets/images/emoji/trident.png | Bin {app => vendor}/assets/images/emoji/triumph.png | Bin {app => vendor}/assets/images/emoji/trolleybus.png | Bin {app => vendor}/assets/images/emoji/trollface.png | Bin {app => vendor}/assets/images/emoji/trophy.png | Bin .../assets/images/emoji/tropical_drink.png | Bin .../assets/images/emoji/tropical_fish.png | Bin {app => vendor}/assets/images/emoji/truck.png | Bin {app => vendor}/assets/images/emoji/trumpet.png | Bin {app => vendor}/assets/images/emoji/tshirt.png | Bin {app => vendor}/assets/images/emoji/tulip.png | Bin {app => vendor}/assets/images/emoji/turtle.png | Bin {app => vendor}/assets/images/emoji/tv.png | Bin .../images/emoji/twisted_rightwards_arrows.png | Bin {app => vendor}/assets/images/emoji/two.png | Bin {app => vendor}/assets/images/emoji/two_hearts.png | Bin .../assets/images/emoji/two_men_holding_hands.png | Bin .../assets/images/emoji/two_women_holding_hands.png | Bin {app => vendor}/assets/images/emoji/u5272.png | Bin {app => vendor}/assets/images/emoji/u5408.png | Bin {app => vendor}/assets/images/emoji/u55b6.png | Bin {app => vendor}/assets/images/emoji/u6307.png | Bin {app => vendor}/assets/images/emoji/u6708.png | Bin {app => vendor}/assets/images/emoji/u6709.png | Bin {app => vendor}/assets/images/emoji/u6e80.png | Bin {app => vendor}/assets/images/emoji/u7121.png | Bin {app => vendor}/assets/images/emoji/u7533.png | Bin {app => vendor}/assets/images/emoji/u7981.png | Bin {app => vendor}/assets/images/emoji/u7a7a.png | Bin {app => vendor}/assets/images/emoji/uk.png | Bin {app => vendor}/assets/images/emoji/umbrella.png | Bin {app => vendor}/assets/images/emoji/unamused.png | Bin {app => vendor}/assets/images/emoji/underage.png | Bin {app => vendor}/assets/images/emoji/unlock.png | Bin {app => vendor}/assets/images/emoji/up.png | Bin {app => vendor}/assets/images/emoji/us.png | Bin {app => vendor}/assets/images/emoji/v.png | Bin .../assets/images/emoji/vertical_traffic_light.png | Bin {app => vendor}/assets/images/emoji/vhs.png | Bin .../assets/images/emoji/vibration_mode.png | Bin .../assets/images/emoji/video_camera.png | Bin {app => vendor}/assets/images/emoji/video_game.png | Bin {app => vendor}/assets/images/emoji/violin.png | Bin {app => vendor}/assets/images/emoji/virgo.png | Bin {app => vendor}/assets/images/emoji/volcano.png | Bin {app => vendor}/assets/images/emoji/vs.png | Bin {app => vendor}/assets/images/emoji/walking.png | Bin .../assets/images/emoji/waning_crescent_moon.png | Bin .../assets/images/emoji/waning_gibbous_moon.png | Bin {app => vendor}/assets/images/emoji/warning.png | Bin {app => vendor}/assets/images/emoji/watch.png | Bin .../assets/images/emoji/water_buffalo.png | Bin {app => vendor}/assets/images/emoji/watermelon.png | Bin {app => vendor}/assets/images/emoji/wave.png | Bin {app => vendor}/assets/images/emoji/wavy_dash.png | Bin .../assets/images/emoji/waxing_crescent_moon.png | Bin .../assets/images/emoji/waxing_gibbous_moon.png | Bin {app => vendor}/assets/images/emoji/wc.png | Bin {app => vendor}/assets/images/emoji/weary.png | Bin {app => vendor}/assets/images/emoji/wedding.png | Bin {app => vendor}/assets/images/emoji/whale.png | Bin {app => vendor}/assets/images/emoji/whale2.png | Bin {app => vendor}/assets/images/emoji/wheelchair.png | Bin .../assets/images/emoji/white_circle.png | Bin .../assets/images/emoji/white_flower.png | Bin .../assets/images/emoji/white_square.png | Bin {app => vendor}/assets/images/emoji/wind_chime.png | Bin {app => vendor}/assets/images/emoji/wine_glass.png | Bin {app => vendor}/assets/images/emoji/wink.png | Bin {app => vendor}/assets/images/emoji/wink2.png | Bin {app => vendor}/assets/images/emoji/wolf.png | Bin {app => vendor}/assets/images/emoji/woman.png | Bin .../assets/images/emoji/womans_clothes.png | Bin {app => vendor}/assets/images/emoji/womans_hat.png | Bin {app => vendor}/assets/images/emoji/womens.png | Bin {app => vendor}/assets/images/emoji/wrench.png | Bin {app => vendor}/assets/images/emoji/x.png | Bin .../assets/images/emoji/yellow_heart.png | Bin {app => vendor}/assets/images/emoji/yen.png | Bin {app => vendor}/assets/images/emoji/yum.png | Bin {app => vendor}/assets/images/emoji/zap.png | Bin {app => vendor}/assets/images/emoji/zero.png | Bin {app => vendor}/assets/images/emoji/zzz.png | Bin 849 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 config/initializers/emoji.rb rename {app => vendor}/assets/images/emoji/+1.png (100%) rename {app => vendor}/assets/images/emoji/-1.png (100%) rename {app => vendor}/assets/images/emoji/100.png (100%) rename {app => vendor}/assets/images/emoji/109.png (100%) rename {app => vendor}/assets/images/emoji/1234.png (100%) rename {app => vendor}/assets/images/emoji/8ball.png (100%) rename {app => vendor}/assets/images/emoji/a.png (100%) rename {app => vendor}/assets/images/emoji/ab.png (100%) rename {app => vendor}/assets/images/emoji/abc.png (100%) rename {app => vendor}/assets/images/emoji/abcd.png (100%) rename {app => vendor}/assets/images/emoji/accept.png (100%) rename {app => vendor}/assets/images/emoji/aerial_tramway.png (100%) rename {app => vendor}/assets/images/emoji/airplane.png (100%) rename {app => vendor}/assets/images/emoji/alarm_clock.png (100%) rename {app => vendor}/assets/images/emoji/alien.png (100%) rename {app => vendor}/assets/images/emoji/ambulance.png (100%) rename {app => vendor}/assets/images/emoji/anchor.png (100%) rename {app => vendor}/assets/images/emoji/angel.png (100%) rename {app => vendor}/assets/images/emoji/anger.png (100%) rename {app => vendor}/assets/images/emoji/angry.png (100%) rename {app => vendor}/assets/images/emoji/ant.png (100%) rename {app => vendor}/assets/images/emoji/apple.png (100%) rename {app => vendor}/assets/images/emoji/aquarius.png (100%) rename {app => vendor}/assets/images/emoji/aries.png (100%) rename {app => vendor}/assets/images/emoji/arrow_backward.png (100%) rename {app => vendor}/assets/images/emoji/arrow_double_down.png (100%) rename {app => vendor}/assets/images/emoji/arrow_double_up.png (100%) rename {app => vendor}/assets/images/emoji/arrow_down.png (100%) rename {app => vendor}/assets/images/emoji/arrow_down_small.png (100%) rename {app => vendor}/assets/images/emoji/arrow_forward.png (100%) rename {app => vendor}/assets/images/emoji/arrow_heading_down.png (100%) rename {app => vendor}/assets/images/emoji/arrow_heading_up.png (100%) rename {app => vendor}/assets/images/emoji/arrow_left.png (100%) rename {app => vendor}/assets/images/emoji/arrow_lower_left.png (100%) rename {app => vendor}/assets/images/emoji/arrow_lower_right.png (100%) rename {app => vendor}/assets/images/emoji/arrow_right.png (100%) rename {app => vendor}/assets/images/emoji/arrow_right_hook.png (100%) rename {app => vendor}/assets/images/emoji/arrow_up.png (100%) rename {app => vendor}/assets/images/emoji/arrow_up_down.png (100%) rename {app => vendor}/assets/images/emoji/arrow_up_small.png (100%) rename {app => vendor}/assets/images/emoji/arrow_upper_left.png (100%) rename {app => vendor}/assets/images/emoji/arrow_upper_right.png (100%) rename {app => vendor}/assets/images/emoji/arrows_clockwise.png (100%) rename {app => vendor}/assets/images/emoji/arrows_counterclockwise.png (100%) rename {app => vendor}/assets/images/emoji/art.png (100%) rename {app => vendor}/assets/images/emoji/articulated_lorry.png (100%) rename {app => vendor}/assets/images/emoji/astonished.png (100%) rename {app => vendor}/assets/images/emoji/atm.png (100%) rename {app => vendor}/assets/images/emoji/b.png (100%) rename {app => vendor}/assets/images/emoji/baby.png (100%) rename {app => vendor}/assets/images/emoji/baby_bottle.png (100%) rename {app => vendor}/assets/images/emoji/baby_chick.png (100%) rename {app => vendor}/assets/images/emoji/baby_symbol.png (100%) rename {app => vendor}/assets/images/emoji/baggage_claim.png (100%) rename {app => vendor}/assets/images/emoji/balloon.png (100%) rename {app => vendor}/assets/images/emoji/ballot_box_with_check.png (100%) rename {app => vendor}/assets/images/emoji/bamboo.png (100%) rename {app => vendor}/assets/images/emoji/banana.png (100%) rename {app => vendor}/assets/images/emoji/bangbang.png (100%) rename {app => vendor}/assets/images/emoji/bank.png (100%) rename {app => vendor}/assets/images/emoji/bar_chart.png (100%) rename {app => vendor}/assets/images/emoji/barber.png (100%) rename {app => vendor}/assets/images/emoji/baseball.png (100%) rename {app => vendor}/assets/images/emoji/basketball.png (100%) rename {app => vendor}/assets/images/emoji/bath.png (100%) rename {app => vendor}/assets/images/emoji/bathtub.png (100%) rename {app => vendor}/assets/images/emoji/battery.png (100%) rename {app => vendor}/assets/images/emoji/bear.png (100%) rename {app => vendor}/assets/images/emoji/beer.png (100%) rename {app => vendor}/assets/images/emoji/beers.png (100%) rename {app => vendor}/assets/images/emoji/beetle.png (100%) rename {app => vendor}/assets/images/emoji/beginner.png (100%) rename {app => vendor}/assets/images/emoji/bell.png (100%) rename {app => vendor}/assets/images/emoji/bento.png (100%) rename {app => vendor}/assets/images/emoji/bicyclist.png (100%) rename {app => vendor}/assets/images/emoji/bike.png (100%) rename {app => vendor}/assets/images/emoji/bikini.png (100%) rename {app => vendor}/assets/images/emoji/bird.png (100%) rename {app => vendor}/assets/images/emoji/birthday.png (100%) rename {app => vendor}/assets/images/emoji/black_circle.png (100%) rename {app => vendor}/assets/images/emoji/black_joker.png (100%) rename {app => vendor}/assets/images/emoji/black_nib.png (100%) rename {app => vendor}/assets/images/emoji/black_square.png (100%) rename {app => vendor}/assets/images/emoji/blossom.png (100%) rename {app => vendor}/assets/images/emoji/blowfish.png (100%) rename {app => vendor}/assets/images/emoji/blue_book.png (100%) rename {app => vendor}/assets/images/emoji/blue_car.png (100%) rename {app => vendor}/assets/images/emoji/blue_heart.png (100%) rename {app => vendor}/assets/images/emoji/blush.png (100%) rename {app => vendor}/assets/images/emoji/boar.png (100%) rename {app => vendor}/assets/images/emoji/boat.png (100%) rename {app => vendor}/assets/images/emoji/bomb.png (100%) rename {app => vendor}/assets/images/emoji/book.png (100%) rename {app => vendor}/assets/images/emoji/bookmark.png (100%) rename {app => vendor}/assets/images/emoji/bookmark_tabs.png (100%) rename {app => vendor}/assets/images/emoji/books.png (100%) rename {app => vendor}/assets/images/emoji/boot.png (100%) rename {app => vendor}/assets/images/emoji/bouquet.png (100%) rename {app => vendor}/assets/images/emoji/bow.png (100%) rename {app => vendor}/assets/images/emoji/bowling.png (100%) rename {app => vendor}/assets/images/emoji/bowtie.png (100%) rename {app => vendor}/assets/images/emoji/boy.png (100%) rename {app => vendor}/assets/images/emoji/bread.png (100%) rename {app => vendor}/assets/images/emoji/bride_with_veil.png (100%) rename {app => vendor}/assets/images/emoji/bridge_at_night.png (100%) rename {app => vendor}/assets/images/emoji/briefcase.png (100%) rename {app => vendor}/assets/images/emoji/broken_heart.png (100%) rename {app => vendor}/assets/images/emoji/bug.png (100%) rename {app => vendor}/assets/images/emoji/bulb.png (100%) rename {app => vendor}/assets/images/emoji/bullettrain_front.png (100%) rename {app => vendor}/assets/images/emoji/bullettrain_side.png (100%) rename {app => vendor}/assets/images/emoji/bus.png (100%) rename {app => vendor}/assets/images/emoji/busstop.png (100%) rename {app => vendor}/assets/images/emoji/bust_in_silhouette.png (100%) rename {app => vendor}/assets/images/emoji/busts_in_silhouette.png (100%) rename {app => vendor}/assets/images/emoji/cactus.png (100%) rename {app => vendor}/assets/images/emoji/cake.png (100%) rename {app => vendor}/assets/images/emoji/calendar.png (100%) rename {app => vendor}/assets/images/emoji/calling.png (100%) rename {app => vendor}/assets/images/emoji/camel.png (100%) rename {app => vendor}/assets/images/emoji/camera.png (100%) rename {app => vendor}/assets/images/emoji/cancer.png (100%) rename {app => vendor}/assets/images/emoji/candy.png (100%) rename {app => vendor}/assets/images/emoji/capital_abcd.png (100%) rename {app => vendor}/assets/images/emoji/capricorn.png (100%) rename {app => vendor}/assets/images/emoji/car.png (100%) rename {app => vendor}/assets/images/emoji/card_index.png (100%) rename {app => vendor}/assets/images/emoji/carousel_horse.png (100%) rename {app => vendor}/assets/images/emoji/cat.png (100%) rename {app => vendor}/assets/images/emoji/cat2.png (100%) rename {app => vendor}/assets/images/emoji/cd.png (100%) rename {app => vendor}/assets/images/emoji/chart.png (100%) rename {app => vendor}/assets/images/emoji/chart_with_downwards_trend.png (100%) rename {app => vendor}/assets/images/emoji/chart_with_upwards_trend.png (100%) rename {app => vendor}/assets/images/emoji/checkered_flag.png (100%) rename {app => vendor}/assets/images/emoji/cherries.png (100%) rename {app => vendor}/assets/images/emoji/cherry_blossom.png (100%) rename {app => vendor}/assets/images/emoji/chestnut.png (100%) rename {app => vendor}/assets/images/emoji/chicken.png (100%) rename {app => vendor}/assets/images/emoji/children_crossing.png (100%) rename {app => vendor}/assets/images/emoji/chocolate_bar.png (100%) rename {app => vendor}/assets/images/emoji/christmas_tree.png (100%) rename {app => vendor}/assets/images/emoji/church.png (100%) rename {app => vendor}/assets/images/emoji/cinema.png (100%) rename {app => vendor}/assets/images/emoji/circus_tent.png (100%) rename {app => vendor}/assets/images/emoji/city_sunrise.png (100%) rename {app => vendor}/assets/images/emoji/city_sunset.png (100%) rename {app => vendor}/assets/images/emoji/cl.png (100%) rename {app => vendor}/assets/images/emoji/clap.png (100%) rename {app => vendor}/assets/images/emoji/clapper.png (100%) rename {app => vendor}/assets/images/emoji/clipboard.png (100%) rename {app => vendor}/assets/images/emoji/clock1.png (100%) rename {app => vendor}/assets/images/emoji/clock10.png (100%) rename {app => vendor}/assets/images/emoji/clock1030.png (100%) rename {app => vendor}/assets/images/emoji/clock11.png (100%) rename {app => vendor}/assets/images/emoji/clock1130.png (100%) rename {app => vendor}/assets/images/emoji/clock12.png (100%) rename {app => vendor}/assets/images/emoji/clock1230.png (100%) rename {app => vendor}/assets/images/emoji/clock130.png (100%) rename {app => vendor}/assets/images/emoji/clock2.png (100%) rename {app => vendor}/assets/images/emoji/clock230.png (100%) rename {app => vendor}/assets/images/emoji/clock3.png (100%) rename {app => vendor}/assets/images/emoji/clock330.png (100%) rename {app => vendor}/assets/images/emoji/clock4.png (100%) rename {app => vendor}/assets/images/emoji/clock430.png (100%) rename {app => vendor}/assets/images/emoji/clock5.png (100%) rename {app => vendor}/assets/images/emoji/clock530.png (100%) rename {app => vendor}/assets/images/emoji/clock6.png (100%) rename {app => vendor}/assets/images/emoji/clock630.png (100%) rename {app => vendor}/assets/images/emoji/clock7.png (100%) rename {app => vendor}/assets/images/emoji/clock730.png (100%) rename {app => vendor}/assets/images/emoji/clock8.png (100%) rename {app => vendor}/assets/images/emoji/clock830.png (100%) rename {app => vendor}/assets/images/emoji/clock9.png (100%) rename {app => vendor}/assets/images/emoji/clock930.png (100%) rename {app => vendor}/assets/images/emoji/closed_book.png (100%) rename {app => vendor}/assets/images/emoji/closed_lock_with_key.png (100%) rename {app => vendor}/assets/images/emoji/closed_umbrella.png (100%) rename {app => vendor}/assets/images/emoji/cloud.png (100%) rename {app => vendor}/assets/images/emoji/clubs.png (100%) rename {app => vendor}/assets/images/emoji/cn.png (100%) rename {app => vendor}/assets/images/emoji/cocktail.png (100%) rename {app => vendor}/assets/images/emoji/coffee.png (100%) rename {app => vendor}/assets/images/emoji/cold_sweat.png (100%) rename {app => vendor}/assets/images/emoji/collision.png (100%) rename {app => vendor}/assets/images/emoji/computer.png (100%) rename {app => vendor}/assets/images/emoji/confetti_ball.png (100%) rename {app => vendor}/assets/images/emoji/confounded.png (100%) rename {app => vendor}/assets/images/emoji/congratulations.png (100%) rename {app => vendor}/assets/images/emoji/construction.png (100%) rename {app => vendor}/assets/images/emoji/construction_worker.png (100%) rename {app => vendor}/assets/images/emoji/convenience_store.png (100%) rename {app => vendor}/assets/images/emoji/cookie.png (100%) rename {app => vendor}/assets/images/emoji/cool.png (100%) rename {app => vendor}/assets/images/emoji/cop.png (100%) rename {app => vendor}/assets/images/emoji/copyright.png (100%) rename {app => vendor}/assets/images/emoji/corn.png (100%) rename {app => vendor}/assets/images/emoji/couple.png (100%) rename {app => vendor}/assets/images/emoji/couple_with_heart.png (100%) rename {app => vendor}/assets/images/emoji/couplekiss.png (100%) rename {app => vendor}/assets/images/emoji/cow.png (100%) rename {app => vendor}/assets/images/emoji/cow2.png (100%) rename {app => vendor}/assets/images/emoji/credit_card.png (100%) rename {app => vendor}/assets/images/emoji/crocodile.png (100%) rename {app => vendor}/assets/images/emoji/crossed_flags.png (100%) rename {app => vendor}/assets/images/emoji/crown.png (100%) rename {app => vendor}/assets/images/emoji/cry.png (100%) rename {app => vendor}/assets/images/emoji/crying_cat_face.png (100%) rename {app => vendor}/assets/images/emoji/crystal_ball.png (100%) rename {app => vendor}/assets/images/emoji/cupid.png (100%) rename {app => vendor}/assets/images/emoji/curly_loop.png (100%) rename {app => vendor}/assets/images/emoji/currency_exchange.png (100%) rename {app => vendor}/assets/images/emoji/curry.png (100%) rename {app => vendor}/assets/images/emoji/custard.png (100%) rename {app => vendor}/assets/images/emoji/customs.png (100%) rename {app => vendor}/assets/images/emoji/cyclone.png (100%) rename {app => vendor}/assets/images/emoji/dancer.png (100%) rename {app => vendor}/assets/images/emoji/dancers.png (100%) rename {app => vendor}/assets/images/emoji/dango.png (100%) rename {app => vendor}/assets/images/emoji/dart.png (100%) rename {app => vendor}/assets/images/emoji/dash.png (100%) rename {app => vendor}/assets/images/emoji/date.png (100%) rename {app => vendor}/assets/images/emoji/de.png (100%) rename {app => vendor}/assets/images/emoji/deciduous_tree.png (100%) rename {app => vendor}/assets/images/emoji/department_store.png (100%) rename {app => vendor}/assets/images/emoji/diamond_shape_with_a_dot_inside.png (100%) rename {app => vendor}/assets/images/emoji/diamonds.png (100%) rename {app => vendor}/assets/images/emoji/disappointed.png (100%) rename {app => vendor}/assets/images/emoji/dizzy.png (100%) rename {app => vendor}/assets/images/emoji/dizzy_face.png (100%) rename {app => vendor}/assets/images/emoji/do_not_litter.png (100%) rename {app => vendor}/assets/images/emoji/dog.png (100%) rename {app => vendor}/assets/images/emoji/dog2.png (100%) rename {app => vendor}/assets/images/emoji/dollar.png (100%) rename {app => vendor}/assets/images/emoji/dolls.png (100%) rename {app => vendor}/assets/images/emoji/dolphin.png (100%) rename {app => vendor}/assets/images/emoji/door.png (100%) rename {app => vendor}/assets/images/emoji/doughnut.png (100%) rename {app => vendor}/assets/images/emoji/dragon.png (100%) rename {app => vendor}/assets/images/emoji/dragon_face.png (100%) rename {app => vendor}/assets/images/emoji/dress.png (100%) rename {app => vendor}/assets/images/emoji/dromedary_camel.png (100%) rename {app => vendor}/assets/images/emoji/droplet.png (100%) rename {app => vendor}/assets/images/emoji/dvd.png (100%) rename {app => vendor}/assets/images/emoji/e-mail.png (100%) rename {app => vendor}/assets/images/emoji/ear.png (100%) rename {app => vendor}/assets/images/emoji/ear_of_rice.png (100%) rename {app => vendor}/assets/images/emoji/earth_africa.png (100%) rename {app => vendor}/assets/images/emoji/earth_americas.png (100%) rename {app => vendor}/assets/images/emoji/earth_asia.png (100%) rename {app => vendor}/assets/images/emoji/egg.png (100%) rename {app => vendor}/assets/images/emoji/eggplant.png (100%) rename {app => vendor}/assets/images/emoji/eight.png (100%) rename {app => vendor}/assets/images/emoji/eight_pointed_black_star.png (100%) rename {app => vendor}/assets/images/emoji/eight_spoked_asterisk.png (100%) rename {app => vendor}/assets/images/emoji/electric_plug.png (100%) rename {app => vendor}/assets/images/emoji/elephant.png (100%) rename {app => vendor}/assets/images/emoji/email.png (100%) rename {app => vendor}/assets/images/emoji/end.png (100%) rename {app => vendor}/assets/images/emoji/envelope.png (100%) rename {app => vendor}/assets/images/emoji/es.png (100%) rename {app => vendor}/assets/images/emoji/euro.png (100%) rename {app => vendor}/assets/images/emoji/european_castle.png (100%) rename {app => vendor}/assets/images/emoji/european_post_office.png (100%) rename {app => vendor}/assets/images/emoji/evergreen_tree.png (100%) rename {app => vendor}/assets/images/emoji/exclamation.png (100%) rename {app => vendor}/assets/images/emoji/eyeglasses.png (100%) rename {app => vendor}/assets/images/emoji/eyes.png (100%) rename {app => vendor}/assets/images/emoji/facepunch.png (100%) rename {app => vendor}/assets/images/emoji/factory.png (100%) rename {app => vendor}/assets/images/emoji/fallen_leaf.png (100%) rename {app => vendor}/assets/images/emoji/family.png (100%) rename {app => vendor}/assets/images/emoji/fast_forward.png (100%) rename {app => vendor}/assets/images/emoji/fax.png (100%) rename {app => vendor}/assets/images/emoji/fearful.png (100%) rename {app => vendor}/assets/images/emoji/feelsgood.png (100%) rename {app => vendor}/assets/images/emoji/feet.png (100%) rename {app => vendor}/assets/images/emoji/ferris_wheel.png (100%) rename {app => vendor}/assets/images/emoji/file_folder.png (100%) rename {app => vendor}/assets/images/emoji/finnadie.png (100%) rename {app => vendor}/assets/images/emoji/fire.png (100%) rename {app => vendor}/assets/images/emoji/fire_engine.png (100%) rename {app => vendor}/assets/images/emoji/fireworks.png (100%) rename {app => vendor}/assets/images/emoji/first_quarter_moon.png (100%) rename {app => vendor}/assets/images/emoji/first_quarter_moon_with_face.png (100%) rename {app => vendor}/assets/images/emoji/fish.png (100%) rename {app => vendor}/assets/images/emoji/fish_cake.png (100%) rename {app => vendor}/assets/images/emoji/fishing_pole_and_fish.png (100%) rename {app => vendor}/assets/images/emoji/fist.png (100%) rename {app => vendor}/assets/images/emoji/five.png (100%) rename {app => vendor}/assets/images/emoji/flags.png (100%) rename {app => vendor}/assets/images/emoji/flashlight.png (100%) rename {app => vendor}/assets/images/emoji/floppy_disk.png (100%) rename {app => vendor}/assets/images/emoji/flower_playing_cards.png (100%) rename {app => vendor}/assets/images/emoji/flushed.png (100%) rename {app => vendor}/assets/images/emoji/foggy.png (100%) rename {app => vendor}/assets/images/emoji/football.png (100%) rename {app => vendor}/assets/images/emoji/fork_and_knife.png (100%) rename {app => vendor}/assets/images/emoji/fountain.png (100%) rename {app => vendor}/assets/images/emoji/four.png (100%) rename {app => vendor}/assets/images/emoji/four_leaf_clover.png (100%) rename {app => vendor}/assets/images/emoji/fr.png (100%) rename {app => vendor}/assets/images/emoji/free.png (100%) rename {app => vendor}/assets/images/emoji/fried_shrimp.png (100%) rename {app => vendor}/assets/images/emoji/fries.png (100%) rename {app => vendor}/assets/images/emoji/frog.png (100%) rename {app => vendor}/assets/images/emoji/fuelpump.png (100%) rename {app => vendor}/assets/images/emoji/full_moon.png (100%) rename {app => vendor}/assets/images/emoji/full_moon_with_face.png (100%) rename {app => vendor}/assets/images/emoji/game_die.png (100%) rename {app => vendor}/assets/images/emoji/gb.png (100%) rename {app => vendor}/assets/images/emoji/gem.png (100%) rename {app => vendor}/assets/images/emoji/gemini.png (100%) rename {app => vendor}/assets/images/emoji/ghost.png (100%) rename {app => vendor}/assets/images/emoji/gift.png (100%) rename {app => vendor}/assets/images/emoji/gift_heart.png (100%) rename {app => vendor}/assets/images/emoji/girl.png (100%) rename {app => vendor}/assets/images/emoji/globe_with_meridians.png (100%) rename {app => vendor}/assets/images/emoji/goat.png (100%) rename {app => vendor}/assets/images/emoji/goberserk.png (100%) rename {app => vendor}/assets/images/emoji/godmode.png (100%) rename {app => vendor}/assets/images/emoji/golf.png (100%) rename {app => vendor}/assets/images/emoji/grapes.png (100%) rename {app => vendor}/assets/images/emoji/green_apple.png (100%) rename {app => vendor}/assets/images/emoji/green_book.png (100%) rename {app => vendor}/assets/images/emoji/green_heart.png (100%) rename {app => vendor}/assets/images/emoji/grey_exclamation.png (100%) rename {app => vendor}/assets/images/emoji/grey_question.png (100%) rename {app => vendor}/assets/images/emoji/grin.png (100%) rename {app => vendor}/assets/images/emoji/guardsman.png (100%) rename {app => vendor}/assets/images/emoji/guitar.png (100%) rename {app => vendor}/assets/images/emoji/gun.png (100%) rename {app => vendor}/assets/images/emoji/haircut.png (100%) rename {app => vendor}/assets/images/emoji/hamburger.png (100%) rename {app => vendor}/assets/images/emoji/hammer.png (100%) rename {app => vendor}/assets/images/emoji/hamster.png (100%) rename {app => vendor}/assets/images/emoji/hand.png (100%) rename {app => vendor}/assets/images/emoji/handbag.png (100%) rename {app => vendor}/assets/images/emoji/hankey.png (100%) rename {app => vendor}/assets/images/emoji/hash.png (100%) rename {app => vendor}/assets/images/emoji/hatched_chick.png (100%) rename {app => vendor}/assets/images/emoji/hatching_chick.png (100%) rename {app => vendor}/assets/images/emoji/headphones.png (100%) rename {app => vendor}/assets/images/emoji/hear_no_evil.png (100%) rename {app => vendor}/assets/images/emoji/heart.png (100%) rename {app => vendor}/assets/images/emoji/heart_decoration.png (100%) rename {app => vendor}/assets/images/emoji/heart_eyes.png (100%) rename {app => vendor}/assets/images/emoji/heart_eyes_cat.png (100%) rename {app => vendor}/assets/images/emoji/heartbeat.png (100%) rename {app => vendor}/assets/images/emoji/heartpulse.png (100%) rename {app => vendor}/assets/images/emoji/hearts.png (100%) rename {app => vendor}/assets/images/emoji/heavy_check_mark.png (100%) rename {app => vendor}/assets/images/emoji/heavy_division_sign.png (100%) rename {app => vendor}/assets/images/emoji/heavy_dollar_sign.png (100%) rename {app => vendor}/assets/images/emoji/heavy_exclamation_mark.png (100%) rename {app => vendor}/assets/images/emoji/heavy_minus_sign.png (100%) rename {app => vendor}/assets/images/emoji/heavy_multiplication_x.png (100%) rename {app => vendor}/assets/images/emoji/heavy_plus_sign.png (100%) rename {app => vendor}/assets/images/emoji/helicopter.png (100%) rename {app => vendor}/assets/images/emoji/herb.png (100%) rename {app => vendor}/assets/images/emoji/hibiscus.png (100%) rename {app => vendor}/assets/images/emoji/high_brightness.png (100%) rename {app => vendor}/assets/images/emoji/high_heel.png (100%) rename {app => vendor}/assets/images/emoji/hocho.png (100%) rename {app => vendor}/assets/images/emoji/honey_pot.png (100%) rename {app => vendor}/assets/images/emoji/honeybee.png (100%) rename {app => vendor}/assets/images/emoji/horse.png (100%) rename {app => vendor}/assets/images/emoji/horse_racing.png (100%) rename {app => vendor}/assets/images/emoji/hospital.png (100%) rename {app => vendor}/assets/images/emoji/hotel.png (100%) rename {app => vendor}/assets/images/emoji/hotsprings.png (100%) rename {app => vendor}/assets/images/emoji/hourglass.png (100%) rename {app => vendor}/assets/images/emoji/house.png (100%) rename {app => vendor}/assets/images/emoji/hurtrealbad.png (100%) rename {app => vendor}/assets/images/emoji/ice_cream.png (100%) rename {app => vendor}/assets/images/emoji/icecream.png (100%) rename {app => vendor}/assets/images/emoji/id.png (100%) rename {app => vendor}/assets/images/emoji/ideograph_advantage.png (100%) rename {app => vendor}/assets/images/emoji/imp.png (100%) rename {app => vendor}/assets/images/emoji/inbox_tray.png (100%) rename {app => vendor}/assets/images/emoji/incoming_envelope.png (100%) rename {app => vendor}/assets/images/emoji/information_desk_person.png (100%) rename {app => vendor}/assets/images/emoji/information_source.png (100%) rename {app => vendor}/assets/images/emoji/innocent.png (100%) rename {app => vendor}/assets/images/emoji/interrobang.png (100%) rename {app => vendor}/assets/images/emoji/iphone.png (100%) rename {app => vendor}/assets/images/emoji/it.png (100%) rename {app => vendor}/assets/images/emoji/izakaya_lantern.png (100%) rename {app => vendor}/assets/images/emoji/jack_o_lantern.png (100%) rename {app => vendor}/assets/images/emoji/japan.png (100%) rename {app => vendor}/assets/images/emoji/japanese_castle.png (100%) rename {app => vendor}/assets/images/emoji/japanese_goblin.png (100%) rename {app => vendor}/assets/images/emoji/japanese_ogre.png (100%) rename {app => vendor}/assets/images/emoji/jeans.png (100%) rename {app => vendor}/assets/images/emoji/joy.png (100%) rename {app => vendor}/assets/images/emoji/joy_cat.png (100%) rename {app => vendor}/assets/images/emoji/jp.png (100%) rename {app => vendor}/assets/images/emoji/key.png (100%) rename {app => vendor}/assets/images/emoji/keycap_ten.png (100%) rename {app => vendor}/assets/images/emoji/kimono.png (100%) rename {app => vendor}/assets/images/emoji/kiss.png (100%) rename {app => vendor}/assets/images/emoji/kissing_cat.png (100%) rename {app => vendor}/assets/images/emoji/kissing_face.png (100%) rename {app => vendor}/assets/images/emoji/kissing_heart.png (100%) rename {app => vendor}/assets/images/emoji/koala.png (100%) rename {app => vendor}/assets/images/emoji/koko.png (100%) rename {app => vendor}/assets/images/emoji/kr.png (100%) rename {app => vendor}/assets/images/emoji/large_blue_circle.png (100%) rename {app => vendor}/assets/images/emoji/large_blue_diamond.png (100%) rename {app => vendor}/assets/images/emoji/large_orange_diamond.png (100%) rename {app => vendor}/assets/images/emoji/last_quarter_moon.png (100%) rename {app => vendor}/assets/images/emoji/last_quarter_moon_with_face.png (100%) rename {app => vendor}/assets/images/emoji/laughing.png (100%) rename {app => vendor}/assets/images/emoji/leaves.png (100%) rename {app => vendor}/assets/images/emoji/ledger.png (100%) rename {app => vendor}/assets/images/emoji/left_luggage.png (100%) rename {app => vendor}/assets/images/emoji/left_right_arrow.png (100%) rename {app => vendor}/assets/images/emoji/leftwards_arrow_with_hook.png (100%) rename {app => vendor}/assets/images/emoji/lemon.png (100%) rename {app => vendor}/assets/images/emoji/leo.png (100%) rename {app => vendor}/assets/images/emoji/leopard.png (100%) rename {app => vendor}/assets/images/emoji/libra.png (100%) rename {app => vendor}/assets/images/emoji/light_rail.png (100%) rename {app => vendor}/assets/images/emoji/link.png (100%) rename {app => vendor}/assets/images/emoji/lips.png (100%) rename {app => vendor}/assets/images/emoji/lipstick.png (100%) rename {app => vendor}/assets/images/emoji/lock.png (100%) rename {app => vendor}/assets/images/emoji/lock_with_ink_pen.png (100%) rename {app => vendor}/assets/images/emoji/lollipop.png (100%) rename {app => vendor}/assets/images/emoji/loop.png (100%) rename {app => vendor}/assets/images/emoji/loudspeaker.png (100%) rename {app => vendor}/assets/images/emoji/love_hotel.png (100%) rename {app => vendor}/assets/images/emoji/love_letter.png (100%) rename {app => vendor}/assets/images/emoji/low_brightness.png (100%) rename {app => vendor}/assets/images/emoji/m.png (100%) rename {app => vendor}/assets/images/emoji/mag.png (100%) rename {app => vendor}/assets/images/emoji/mag_right.png (100%) rename {app => vendor}/assets/images/emoji/mahjong.png (100%) rename {app => vendor}/assets/images/emoji/mailbox.png (100%) rename {app => vendor}/assets/images/emoji/mailbox_closed.png (100%) rename {app => vendor}/assets/images/emoji/mailbox_with_mail.png (100%) rename {app => vendor}/assets/images/emoji/mailbox_with_no_mail.png (100%) rename {app => vendor}/assets/images/emoji/man.png (100%) rename {app => vendor}/assets/images/emoji/man_with_gua_pi_mao.png (100%) rename {app => vendor}/assets/images/emoji/man_with_turban.png (100%) rename {app => vendor}/assets/images/emoji/mans_shoe.png (100%) rename {app => vendor}/assets/images/emoji/maple_leaf.png (100%) rename {app => vendor}/assets/images/emoji/mask.png (100%) rename {app => vendor}/assets/images/emoji/massage.png (100%) rename {app => vendor}/assets/images/emoji/meat_on_bone.png (100%) rename {app => vendor}/assets/images/emoji/mega.png (100%) rename {app => vendor}/assets/images/emoji/melon.png (100%) rename {app => vendor}/assets/images/emoji/memo.png (100%) rename {app => vendor}/assets/images/emoji/mens.png (100%) rename {app => vendor}/assets/images/emoji/metal.png (100%) rename {app => vendor}/assets/images/emoji/metro.png (100%) rename {app => vendor}/assets/images/emoji/microphone.png (100%) rename {app => vendor}/assets/images/emoji/microscope.png (100%) rename {app => vendor}/assets/images/emoji/milky_way.png (100%) rename {app => vendor}/assets/images/emoji/minibus.png (100%) rename {app => vendor}/assets/images/emoji/minidisc.png (100%) rename {app => vendor}/assets/images/emoji/mobile_phone_off.png (100%) rename {app => vendor}/assets/images/emoji/money_with_wings.png (100%) rename {app => vendor}/assets/images/emoji/moneybag.png (100%) rename {app => vendor}/assets/images/emoji/monkey.png (100%) rename {app => vendor}/assets/images/emoji/monkey_face.png (100%) rename {app => vendor}/assets/images/emoji/monorail.png (100%) rename {app => vendor}/assets/images/emoji/moon.png (100%) rename {app => vendor}/assets/images/emoji/mortar_board.png (100%) rename {app => vendor}/assets/images/emoji/mount_fuji.png (100%) rename {app => vendor}/assets/images/emoji/mountain_bicyclist.png (100%) rename {app => vendor}/assets/images/emoji/mountain_cableway.png (100%) rename {app => vendor}/assets/images/emoji/mountain_railway.png (100%) rename {app => vendor}/assets/images/emoji/mouse.png (100%) rename {app => vendor}/assets/images/emoji/mouse2.png (100%) rename {app => vendor}/assets/images/emoji/movie_camera.png (100%) rename {app => vendor}/assets/images/emoji/moyai.png (100%) rename {app => vendor}/assets/images/emoji/muscle.png (100%) rename {app => vendor}/assets/images/emoji/mushroom.png (100%) rename {app => vendor}/assets/images/emoji/musical_keyboard.png (100%) rename {app => vendor}/assets/images/emoji/musical_note.png (100%) rename {app => vendor}/assets/images/emoji/musical_score.png (100%) rename {app => vendor}/assets/images/emoji/mute.png (100%) rename {app => vendor}/assets/images/emoji/nail_care.png (100%) rename {app => vendor}/assets/images/emoji/name_badge.png (100%) rename {app => vendor}/assets/images/emoji/neckbeard.png (100%) rename {app => vendor}/assets/images/emoji/necktie.png (100%) rename {app => vendor}/assets/images/emoji/negative_squared_cross_mark.png (100%) rename {app => vendor}/assets/images/emoji/neutral_face.png (100%) rename {app => vendor}/assets/images/emoji/new.png (100%) rename {app => vendor}/assets/images/emoji/new_moon.png (100%) rename {app => vendor}/assets/images/emoji/new_moon_with_face.png (100%) rename {app => vendor}/assets/images/emoji/newspaper.png (100%) rename {app => vendor}/assets/images/emoji/ng.png (100%) rename {app => vendor}/assets/images/emoji/nine.png (100%) rename {app => vendor}/assets/images/emoji/no_bell.png (100%) rename {app => vendor}/assets/images/emoji/no_bicycles.png (100%) rename {app => vendor}/assets/images/emoji/no_entry.png (100%) rename {app => vendor}/assets/images/emoji/no_entry_sign.png (100%) rename {app => vendor}/assets/images/emoji/no_good.png (100%) rename {app => vendor}/assets/images/emoji/no_mobile_phones.png (100%) rename {app => vendor}/assets/images/emoji/no_mouth.png (100%) rename {app => vendor}/assets/images/emoji/no_pedestrians.png (100%) rename {app => vendor}/assets/images/emoji/no_smoking.png (100%) rename {app => vendor}/assets/images/emoji/non-potable_water.png (100%) rename {app => vendor}/assets/images/emoji/nose.png (100%) rename {app => vendor}/assets/images/emoji/notebook.png (100%) rename {app => vendor}/assets/images/emoji/notebook_with_decorative_cover.png (100%) rename {app => vendor}/assets/images/emoji/notes.png (100%) rename {app => vendor}/assets/images/emoji/nut_and_bolt.png (100%) rename {app => vendor}/assets/images/emoji/o.png (100%) rename {app => vendor}/assets/images/emoji/o2.png (100%) rename {app => vendor}/assets/images/emoji/ocean.png (100%) rename {app => vendor}/assets/images/emoji/octocat.png (100%) rename {app => vendor}/assets/images/emoji/octopus.png (100%) rename {app => vendor}/assets/images/emoji/oden.png (100%) rename {app => vendor}/assets/images/emoji/office.png (100%) rename {app => vendor}/assets/images/emoji/ok.png (100%) rename {app => vendor}/assets/images/emoji/ok_hand.png (100%) rename {app => vendor}/assets/images/emoji/ok_woman.png (100%) rename {app => vendor}/assets/images/emoji/older_man.png (100%) rename {app => vendor}/assets/images/emoji/older_woman.png (100%) rename {app => vendor}/assets/images/emoji/on.png (100%) rename {app => vendor}/assets/images/emoji/oncoming_automobile.png (100%) rename {app => vendor}/assets/images/emoji/oncoming_bus.png (100%) rename {app => vendor}/assets/images/emoji/oncoming_police_car.png (100%) rename {app => vendor}/assets/images/emoji/oncoming_taxi.png (100%) rename {app => vendor}/assets/images/emoji/one.png (100%) rename {app => vendor}/assets/images/emoji/open_file_folder.png (100%) rename {app => vendor}/assets/images/emoji/open_hands.png (100%) rename {app => vendor}/assets/images/emoji/ophiuchus.png (100%) rename {app => vendor}/assets/images/emoji/orange_book.png (100%) rename {app => vendor}/assets/images/emoji/outbox_tray.png (100%) rename {app => vendor}/assets/images/emoji/ox.png (100%) rename {app => vendor}/assets/images/emoji/page_facing_up.png (100%) rename {app => vendor}/assets/images/emoji/page_with_curl.png (100%) rename {app => vendor}/assets/images/emoji/pager.png (100%) rename {app => vendor}/assets/images/emoji/palm_tree.png (100%) rename {app => vendor}/assets/images/emoji/panda_face.png (100%) rename {app => vendor}/assets/images/emoji/paperclip.png (100%) rename {app => vendor}/assets/images/emoji/parking.png (100%) rename {app => vendor}/assets/images/emoji/part_alternation_mark.png (100%) rename {app => vendor}/assets/images/emoji/partly_sunny.png (100%) rename {app => vendor}/assets/images/emoji/passport_control.png (100%) rename {app => vendor}/assets/images/emoji/paw_prints.png (100%) rename {app => vendor}/assets/images/emoji/peach.png (100%) rename {app => vendor}/assets/images/emoji/pear.png (100%) rename {app => vendor}/assets/images/emoji/pencil.png (100%) rename {app => vendor}/assets/images/emoji/pencil2.png (100%) rename {app => vendor}/assets/images/emoji/penguin.png (100%) rename {app => vendor}/assets/images/emoji/pensive.png (100%) rename {app => vendor}/assets/images/emoji/performing_arts.png (100%) rename {app => vendor}/assets/images/emoji/persevere.png (100%) rename {app => vendor}/assets/images/emoji/person_frowning.png (100%) rename {app => vendor}/assets/images/emoji/person_with_blond_hair.png (100%) rename {app => vendor}/assets/images/emoji/person_with_pouting_face.png (100%) rename {app => vendor}/assets/images/emoji/phone.png (100%) rename {app => vendor}/assets/images/emoji/pig.png (100%) rename {app => vendor}/assets/images/emoji/pig2.png (100%) rename {app => vendor}/assets/images/emoji/pig_nose.png (100%) rename {app => vendor}/assets/images/emoji/pill.png (100%) rename {app => vendor}/assets/images/emoji/pineapple.png (100%) rename {app => vendor}/assets/images/emoji/pisces.png (100%) rename {app => vendor}/assets/images/emoji/pizza.png (100%) rename {app => vendor}/assets/images/emoji/plus1.png (100%) rename {app => vendor}/assets/images/emoji/point_down.png (100%) rename {app => vendor}/assets/images/emoji/point_left.png (100%) rename {app => vendor}/assets/images/emoji/point_right.png (100%) rename {app => vendor}/assets/images/emoji/point_up.png (100%) rename {app => vendor}/assets/images/emoji/point_up_2.png (100%) rename {app => vendor}/assets/images/emoji/police_car.png (100%) rename {app => vendor}/assets/images/emoji/poodle.png (100%) rename {app => vendor}/assets/images/emoji/poop.png (100%) rename {app => vendor}/assets/images/emoji/post_office.png (100%) rename {app => vendor}/assets/images/emoji/postal_horn.png (100%) rename {app => vendor}/assets/images/emoji/postbox.png (100%) rename {app => vendor}/assets/images/emoji/potable_water.png (100%) rename {app => vendor}/assets/images/emoji/pouch.png (100%) rename {app => vendor}/assets/images/emoji/poultry_leg.png (100%) rename {app => vendor}/assets/images/emoji/pound.png (100%) rename {app => vendor}/assets/images/emoji/pouting_cat.png (100%) rename {app => vendor}/assets/images/emoji/pray.png (100%) rename {app => vendor}/assets/images/emoji/princess.png (100%) rename {app => vendor}/assets/images/emoji/punch.png (100%) rename {app => vendor}/assets/images/emoji/purple_heart.png (100%) rename {app => vendor}/assets/images/emoji/purse.png (100%) rename {app => vendor}/assets/images/emoji/pushpin.png (100%) rename {app => vendor}/assets/images/emoji/put_litter_in_its_place.png (100%) rename {app => vendor}/assets/images/emoji/question.png (100%) rename {app => vendor}/assets/images/emoji/rabbit.png (100%) rename {app => vendor}/assets/images/emoji/rabbit2.png (100%) rename {app => vendor}/assets/images/emoji/racehorse.png (100%) rename {app => vendor}/assets/images/emoji/radio.png (100%) rename {app => vendor}/assets/images/emoji/radio_button.png (100%) rename {app => vendor}/assets/images/emoji/rage.png (100%) rename {app => vendor}/assets/images/emoji/rage1.png (100%) rename {app => vendor}/assets/images/emoji/rage2.png (100%) rename {app => vendor}/assets/images/emoji/rage3.png (100%) rename {app => vendor}/assets/images/emoji/rage4.png (100%) rename {app => vendor}/assets/images/emoji/railway_car.png (100%) rename {app => vendor}/assets/images/emoji/rainbow.png (100%) rename {app => vendor}/assets/images/emoji/raised_hand.png (100%) rename {app => vendor}/assets/images/emoji/raised_hands.png (100%) rename {app => vendor}/assets/images/emoji/ram.png (100%) rename {app => vendor}/assets/images/emoji/ramen.png (100%) rename {app => vendor}/assets/images/emoji/rat.png (100%) rename {app => vendor}/assets/images/emoji/recycle.png (100%) rename {app => vendor}/assets/images/emoji/red_car.png (100%) rename {app => vendor}/assets/images/emoji/red_circle.png (100%) rename {app => vendor}/assets/images/emoji/registered.png (100%) rename {app => vendor}/assets/images/emoji/relaxed.png (100%) rename {app => vendor}/assets/images/emoji/relieved.png (100%) rename {app => vendor}/assets/images/emoji/repeat.png (100%) rename {app => vendor}/assets/images/emoji/repeat_one.png (100%) rename {app => vendor}/assets/images/emoji/restroom.png (100%) rename {app => vendor}/assets/images/emoji/revolving_hearts.png (100%) rename {app => vendor}/assets/images/emoji/rewind.png (100%) rename {app => vendor}/assets/images/emoji/ribbon.png (100%) rename {app => vendor}/assets/images/emoji/rice.png (100%) rename {app => vendor}/assets/images/emoji/rice_ball.png (100%) rename {app => vendor}/assets/images/emoji/rice_cracker.png (100%) rename {app => vendor}/assets/images/emoji/rice_scene.png (100%) rename {app => vendor}/assets/images/emoji/ring.png (100%) rename {app => vendor}/assets/images/emoji/rocket.png (100%) rename {app => vendor}/assets/images/emoji/roller_coaster.png (100%) rename {app => vendor}/assets/images/emoji/rooster.png (100%) rename {app => vendor}/assets/images/emoji/rose.png (100%) rename {app => vendor}/assets/images/emoji/rotating_light.png (100%) rename {app => vendor}/assets/images/emoji/round_pushpin.png (100%) rename {app => vendor}/assets/images/emoji/rowboat.png (100%) rename {app => vendor}/assets/images/emoji/ru.png (100%) rename {app => vendor}/assets/images/emoji/rugby_football.png (100%) rename {app => vendor}/assets/images/emoji/runner.png (100%) rename {app => vendor}/assets/images/emoji/running.png (100%) rename {app => vendor}/assets/images/emoji/running_shirt_with_sash.png (100%) rename {app => vendor}/assets/images/emoji/sa.png (100%) rename {app => vendor}/assets/images/emoji/sagittarius.png (100%) rename {app => vendor}/assets/images/emoji/sailboat.png (100%) rename {app => vendor}/assets/images/emoji/sake.png (100%) rename {app => vendor}/assets/images/emoji/sandal.png (100%) rename {app => vendor}/assets/images/emoji/santa.png (100%) rename {app => vendor}/assets/images/emoji/satellite.png (100%) rename {app => vendor}/assets/images/emoji/satisfied.png (100%) rename {app => vendor}/assets/images/emoji/saxophone.png (100%) rename {app => vendor}/assets/images/emoji/school.png (100%) rename {app => vendor}/assets/images/emoji/school_satchel.png (100%) rename {app => vendor}/assets/images/emoji/scissors.png (100%) rename {app => vendor}/assets/images/emoji/scorpius.png (100%) rename {app => vendor}/assets/images/emoji/scream.png (100%) rename {app => vendor}/assets/images/emoji/scream_cat.png (100%) rename {app => vendor}/assets/images/emoji/scroll.png (100%) rename {app => vendor}/assets/images/emoji/seat.png (100%) rename {app => vendor}/assets/images/emoji/secret.png (100%) rename {app => vendor}/assets/images/emoji/see_no_evil.png (100%) rename {app => vendor}/assets/images/emoji/seedling.png (100%) rename {app => vendor}/assets/images/emoji/seven.png (100%) rename {app => vendor}/assets/images/emoji/shaved_ice.png (100%) rename {app => vendor}/assets/images/emoji/sheep.png (100%) rename {app => vendor}/assets/images/emoji/shell.png (100%) rename {app => vendor}/assets/images/emoji/ship.png (100%) rename {app => vendor}/assets/images/emoji/shipit.png (100%) rename {app => vendor}/assets/images/emoji/shirt.png (100%) rename {app => vendor}/assets/images/emoji/shit.png (100%) rename {app => vendor}/assets/images/emoji/shoe.png (100%) rename {app => vendor}/assets/images/emoji/shower.png (100%) rename {app => vendor}/assets/images/emoji/signal_strength.png (100%) rename {app => vendor}/assets/images/emoji/six.png (100%) rename {app => vendor}/assets/images/emoji/six_pointed_star.png (100%) rename {app => vendor}/assets/images/emoji/ski.png (100%) rename {app => vendor}/assets/images/emoji/skull.png (100%) rename {app => vendor}/assets/images/emoji/sleepy.png (100%) rename {app => vendor}/assets/images/emoji/slot_machine.png (100%) rename {app => vendor}/assets/images/emoji/small_blue_diamond.png (100%) rename {app => vendor}/assets/images/emoji/small_orange_diamond.png (100%) rename {app => vendor}/assets/images/emoji/small_red_triangle.png (100%) rename {app => vendor}/assets/images/emoji/small_red_triangle_down.png (100%) rename {app => vendor}/assets/images/emoji/smile.png (100%) rename {app => vendor}/assets/images/emoji/smile_cat.png (100%) rename {app => vendor}/assets/images/emoji/smiley.png (100%) rename {app => vendor}/assets/images/emoji/smiley_cat.png (100%) rename {app => vendor}/assets/images/emoji/smiling_imp.png (100%) rename {app => vendor}/assets/images/emoji/smirk.png (100%) rename {app => vendor}/assets/images/emoji/smirk_cat.png (100%) rename {app => vendor}/assets/images/emoji/smoking.png (100%) rename {app => vendor}/assets/images/emoji/snail.png (100%) rename {app => vendor}/assets/images/emoji/snake.png (100%) rename {app => vendor}/assets/images/emoji/snowboarder.png (100%) rename {app => vendor}/assets/images/emoji/snowflake.png (100%) rename {app => vendor}/assets/images/emoji/snowman.png (100%) rename {app => vendor}/assets/images/emoji/sob.png (100%) rename {app => vendor}/assets/images/emoji/soccer.png (100%) rename {app => vendor}/assets/images/emoji/soon.png (100%) rename {app => vendor}/assets/images/emoji/sos.png (100%) rename {app => vendor}/assets/images/emoji/sound.png (100%) rename {app => vendor}/assets/images/emoji/space_invader.png (100%) rename {app => vendor}/assets/images/emoji/spades.png (100%) rename {app => vendor}/assets/images/emoji/spaghetti.png (100%) rename {app => vendor}/assets/images/emoji/sparkler.png (100%) rename {app => vendor}/assets/images/emoji/sparkles.png (100%) rename {app => vendor}/assets/images/emoji/speak_no_evil.png (100%) rename {app => vendor}/assets/images/emoji/speaker.png (100%) rename {app => vendor}/assets/images/emoji/speech_balloon.png (100%) rename {app => vendor}/assets/images/emoji/speedboat.png (100%) rename {app => vendor}/assets/images/emoji/squirrel.png (100%) rename {app => vendor}/assets/images/emoji/star.png (100%) rename {app => vendor}/assets/images/emoji/star2.png (100%) rename {app => vendor}/assets/images/emoji/stars.png (100%) rename {app => vendor}/assets/images/emoji/station.png (100%) rename {app => vendor}/assets/images/emoji/statue_of_liberty.png (100%) rename {app => vendor}/assets/images/emoji/steam_locomotive.png (100%) rename {app => vendor}/assets/images/emoji/stew.png (100%) rename {app => vendor}/assets/images/emoji/straight_ruler.png (100%) rename {app => vendor}/assets/images/emoji/strawberry.png (100%) rename {app => vendor}/assets/images/emoji/sun_with_face.png (100%) rename {app => vendor}/assets/images/emoji/sunflower.png (100%) rename {app => vendor}/assets/images/emoji/sunglasses.png (100%) rename {app => vendor}/assets/images/emoji/sunny.png (100%) rename {app => vendor}/assets/images/emoji/sunrise.png (100%) rename {app => vendor}/assets/images/emoji/sunrise_over_mountains.png (100%) rename {app => vendor}/assets/images/emoji/surfer.png (100%) rename {app => vendor}/assets/images/emoji/sushi.png (100%) rename {app => vendor}/assets/images/emoji/suspect.png (100%) rename {app => vendor}/assets/images/emoji/suspension_railway.png (100%) rename {app => vendor}/assets/images/emoji/sweat.png (100%) rename {app => vendor}/assets/images/emoji/sweat_drops.png (100%) rename {app => vendor}/assets/images/emoji/sweat_smile.png (100%) rename {app => vendor}/assets/images/emoji/sweet_potato.png (100%) rename {app => vendor}/assets/images/emoji/swimmer.png (100%) rename {app => vendor}/assets/images/emoji/symbols.png (100%) rename {app => vendor}/assets/images/emoji/syringe.png (100%) rename {app => vendor}/assets/images/emoji/tada.png (100%) rename {app => vendor}/assets/images/emoji/tanabata_tree.png (100%) rename {app => vendor}/assets/images/emoji/tangerine.png (100%) rename {app => vendor}/assets/images/emoji/taurus.png (100%) rename {app => vendor}/assets/images/emoji/taxi.png (100%) rename {app => vendor}/assets/images/emoji/tea.png (100%) rename {app => vendor}/assets/images/emoji/telephone.png (100%) rename {app => vendor}/assets/images/emoji/telephone_receiver.png (100%) rename {app => vendor}/assets/images/emoji/telescope.png (100%) rename {app => vendor}/assets/images/emoji/tennis.png (100%) rename {app => vendor}/assets/images/emoji/tent.png (100%) rename {app => vendor}/assets/images/emoji/thought_balloon.png (100%) rename {app => vendor}/assets/images/emoji/three.png (100%) rename {app => vendor}/assets/images/emoji/thumbsdown.png (100%) rename {app => vendor}/assets/images/emoji/thumbsup.png (100%) rename {app => vendor}/assets/images/emoji/ticket.png (100%) rename {app => vendor}/assets/images/emoji/tiger.png (100%) rename {app => vendor}/assets/images/emoji/tiger2.png (100%) rename {app => vendor}/assets/images/emoji/tired_face.png (100%) rename {app => vendor}/assets/images/emoji/tm.png (100%) rename {app => vendor}/assets/images/emoji/toilet.png (100%) rename {app => vendor}/assets/images/emoji/tokyo_tower.png (100%) rename {app => vendor}/assets/images/emoji/tomato.png (100%) rename {app => vendor}/assets/images/emoji/tongue.png (100%) rename {app => vendor}/assets/images/emoji/tongue2.png (100%) rename {app => vendor}/assets/images/emoji/top.png (100%) rename {app => vendor}/assets/images/emoji/tophat.png (100%) rename {app => vendor}/assets/images/emoji/tractor.png (100%) rename {app => vendor}/assets/images/emoji/traffic_light.png (100%) rename {app => vendor}/assets/images/emoji/train.png (100%) rename {app => vendor}/assets/images/emoji/train2.png (100%) rename {app => vendor}/assets/images/emoji/tram.png (100%) rename {app => vendor}/assets/images/emoji/triangular_flag_on_post.png (100%) rename {app => vendor}/assets/images/emoji/triangular_ruler.png (100%) rename {app => vendor}/assets/images/emoji/trident.png (100%) rename {app => vendor}/assets/images/emoji/triumph.png (100%) rename {app => vendor}/assets/images/emoji/trolleybus.png (100%) rename {app => vendor}/assets/images/emoji/trollface.png (100%) rename {app => vendor}/assets/images/emoji/trophy.png (100%) rename {app => vendor}/assets/images/emoji/tropical_drink.png (100%) rename {app => vendor}/assets/images/emoji/tropical_fish.png (100%) rename {app => vendor}/assets/images/emoji/truck.png (100%) rename {app => vendor}/assets/images/emoji/trumpet.png (100%) rename {app => vendor}/assets/images/emoji/tshirt.png (100%) rename {app => vendor}/assets/images/emoji/tulip.png (100%) rename {app => vendor}/assets/images/emoji/turtle.png (100%) rename {app => vendor}/assets/images/emoji/tv.png (100%) rename {app => vendor}/assets/images/emoji/twisted_rightwards_arrows.png (100%) rename {app => vendor}/assets/images/emoji/two.png (100%) rename {app => vendor}/assets/images/emoji/two_hearts.png (100%) rename {app => vendor}/assets/images/emoji/two_men_holding_hands.png (100%) rename {app => vendor}/assets/images/emoji/two_women_holding_hands.png (100%) rename {app => vendor}/assets/images/emoji/u5272.png (100%) rename {app => vendor}/assets/images/emoji/u5408.png (100%) rename {app => vendor}/assets/images/emoji/u55b6.png (100%) rename {app => vendor}/assets/images/emoji/u6307.png (100%) rename {app => vendor}/assets/images/emoji/u6708.png (100%) rename {app => vendor}/assets/images/emoji/u6709.png (100%) rename {app => vendor}/assets/images/emoji/u6e80.png (100%) rename {app => vendor}/assets/images/emoji/u7121.png (100%) rename {app => vendor}/assets/images/emoji/u7533.png (100%) rename {app => vendor}/assets/images/emoji/u7981.png (100%) rename {app => vendor}/assets/images/emoji/u7a7a.png (100%) rename {app => vendor}/assets/images/emoji/uk.png (100%) rename {app => vendor}/assets/images/emoji/umbrella.png (100%) rename {app => vendor}/assets/images/emoji/unamused.png (100%) rename {app => vendor}/assets/images/emoji/underage.png (100%) rename {app => vendor}/assets/images/emoji/unlock.png (100%) rename {app => vendor}/assets/images/emoji/up.png (100%) rename {app => vendor}/assets/images/emoji/us.png (100%) rename {app => vendor}/assets/images/emoji/v.png (100%) rename {app => vendor}/assets/images/emoji/vertical_traffic_light.png (100%) rename {app => vendor}/assets/images/emoji/vhs.png (100%) rename {app => vendor}/assets/images/emoji/vibration_mode.png (100%) rename {app => vendor}/assets/images/emoji/video_camera.png (100%) rename {app => vendor}/assets/images/emoji/video_game.png (100%) rename {app => vendor}/assets/images/emoji/violin.png (100%) rename {app => vendor}/assets/images/emoji/virgo.png (100%) rename {app => vendor}/assets/images/emoji/volcano.png (100%) rename {app => vendor}/assets/images/emoji/vs.png (100%) rename {app => vendor}/assets/images/emoji/walking.png (100%) rename {app => vendor}/assets/images/emoji/waning_crescent_moon.png (100%) rename {app => vendor}/assets/images/emoji/waning_gibbous_moon.png (100%) rename {app => vendor}/assets/images/emoji/warning.png (100%) rename {app => vendor}/assets/images/emoji/watch.png (100%) rename {app => vendor}/assets/images/emoji/water_buffalo.png (100%) rename {app => vendor}/assets/images/emoji/watermelon.png (100%) rename {app => vendor}/assets/images/emoji/wave.png (100%) rename {app => vendor}/assets/images/emoji/wavy_dash.png (100%) rename {app => vendor}/assets/images/emoji/waxing_crescent_moon.png (100%) rename {app => vendor}/assets/images/emoji/waxing_gibbous_moon.png (100%) rename {app => vendor}/assets/images/emoji/wc.png (100%) rename {app => vendor}/assets/images/emoji/weary.png (100%) rename {app => vendor}/assets/images/emoji/wedding.png (100%) rename {app => vendor}/assets/images/emoji/whale.png (100%) rename {app => vendor}/assets/images/emoji/whale2.png (100%) rename {app => vendor}/assets/images/emoji/wheelchair.png (100%) rename {app => vendor}/assets/images/emoji/white_circle.png (100%) rename {app => vendor}/assets/images/emoji/white_flower.png (100%) rename {app => vendor}/assets/images/emoji/white_square.png (100%) rename {app => vendor}/assets/images/emoji/wind_chime.png (100%) rename {app => vendor}/assets/images/emoji/wine_glass.png (100%) rename {app => vendor}/assets/images/emoji/wink.png (100%) rename {app => vendor}/assets/images/emoji/wink2.png (100%) rename {app => vendor}/assets/images/emoji/wolf.png (100%) rename {app => vendor}/assets/images/emoji/woman.png (100%) rename {app => vendor}/assets/images/emoji/womans_clothes.png (100%) rename {app => vendor}/assets/images/emoji/womans_hat.png (100%) rename {app => vendor}/assets/images/emoji/womens.png (100%) rename {app => vendor}/assets/images/emoji/wrench.png (100%) rename {app => vendor}/assets/images/emoji/x.png (100%) rename {app => vendor}/assets/images/emoji/yellow_heart.png (100%) rename {app => vendor}/assets/images/emoji/yen.png (100%) rename {app => vendor}/assets/images/emoji/yum.png (100%) rename {app => vendor}/assets/images/emoji/zap.png (100%) rename {app => vendor}/assets/images/emoji/zero.png (100%) rename {app => vendor}/assets/images/emoji/zzz.png (100%) diff --git a/config/initializers/emoji.rb b/config/initializers/emoji.rb new file mode 100644 index 00000000000..dbd2a4e2cf5 --- /dev/null +++ b/config/initializers/emoji.rb @@ -0,0 +1,4 @@ +module Emoji + path = "#{Rails.root}/vendor/assets/images/emoji" + NAMES = Dir["#{path}/*.png"].sort.map {|f| File.basename(f, '.png')} +end diff --git a/lib/gitlab/markdown.rb b/lib/gitlab/markdown.rb index 9eb35b84d42..ba993abf7f7 100644 --- a/lib/gitlab/markdown.rb +++ b/lib/gitlab/markdown.rb @@ -128,7 +128,7 @@ module Gitlab # # Returns boolean def valid_emoji?(emoji) - File.exists?(Rails.root.join('app', 'assets', 'images', 'emoji', "#{emoji}.png")) + Emoji::NAMES.include? emoji end # Private: Dispatches to a dedicated processing method based on reference diff --git a/app/assets/images/emoji/+1.png b/vendor/assets/images/emoji/+1.png similarity index 100% rename from app/assets/images/emoji/+1.png rename to vendor/assets/images/emoji/+1.png diff --git a/app/assets/images/emoji/-1.png b/vendor/assets/images/emoji/-1.png similarity index 100% rename from app/assets/images/emoji/-1.png rename to vendor/assets/images/emoji/-1.png diff --git a/app/assets/images/emoji/100.png b/vendor/assets/images/emoji/100.png similarity index 100% rename from app/assets/images/emoji/100.png rename to vendor/assets/images/emoji/100.png diff --git a/app/assets/images/emoji/109.png b/vendor/assets/images/emoji/109.png similarity index 100% rename from app/assets/images/emoji/109.png rename to vendor/assets/images/emoji/109.png diff --git a/app/assets/images/emoji/1234.png b/vendor/assets/images/emoji/1234.png similarity index 100% rename from app/assets/images/emoji/1234.png rename to vendor/assets/images/emoji/1234.png diff --git a/app/assets/images/emoji/8ball.png b/vendor/assets/images/emoji/8ball.png similarity index 100% rename from app/assets/images/emoji/8ball.png rename to vendor/assets/images/emoji/8ball.png diff --git a/app/assets/images/emoji/a.png b/vendor/assets/images/emoji/a.png similarity index 100% rename from app/assets/images/emoji/a.png rename to vendor/assets/images/emoji/a.png diff --git a/app/assets/images/emoji/ab.png b/vendor/assets/images/emoji/ab.png similarity index 100% rename from app/assets/images/emoji/ab.png rename to vendor/assets/images/emoji/ab.png diff --git a/app/assets/images/emoji/abc.png b/vendor/assets/images/emoji/abc.png similarity index 100% rename from app/assets/images/emoji/abc.png rename to vendor/assets/images/emoji/abc.png diff --git a/app/assets/images/emoji/abcd.png b/vendor/assets/images/emoji/abcd.png similarity index 100% rename from app/assets/images/emoji/abcd.png rename to vendor/assets/images/emoji/abcd.png diff --git a/app/assets/images/emoji/accept.png b/vendor/assets/images/emoji/accept.png similarity index 100% rename from app/assets/images/emoji/accept.png rename to vendor/assets/images/emoji/accept.png diff --git a/app/assets/images/emoji/aerial_tramway.png b/vendor/assets/images/emoji/aerial_tramway.png similarity index 100% rename from app/assets/images/emoji/aerial_tramway.png rename to vendor/assets/images/emoji/aerial_tramway.png diff --git a/app/assets/images/emoji/airplane.png b/vendor/assets/images/emoji/airplane.png similarity index 100% rename from app/assets/images/emoji/airplane.png rename to vendor/assets/images/emoji/airplane.png diff --git a/app/assets/images/emoji/alarm_clock.png b/vendor/assets/images/emoji/alarm_clock.png similarity index 100% rename from app/assets/images/emoji/alarm_clock.png rename to vendor/assets/images/emoji/alarm_clock.png diff --git a/app/assets/images/emoji/alien.png b/vendor/assets/images/emoji/alien.png similarity index 100% rename from app/assets/images/emoji/alien.png rename to vendor/assets/images/emoji/alien.png diff --git a/app/assets/images/emoji/ambulance.png b/vendor/assets/images/emoji/ambulance.png similarity index 100% rename from app/assets/images/emoji/ambulance.png rename to vendor/assets/images/emoji/ambulance.png diff --git a/app/assets/images/emoji/anchor.png b/vendor/assets/images/emoji/anchor.png similarity index 100% rename from app/assets/images/emoji/anchor.png rename to vendor/assets/images/emoji/anchor.png diff --git a/app/assets/images/emoji/angel.png b/vendor/assets/images/emoji/angel.png similarity index 100% rename from app/assets/images/emoji/angel.png rename to vendor/assets/images/emoji/angel.png diff --git a/app/assets/images/emoji/anger.png b/vendor/assets/images/emoji/anger.png similarity index 100% rename from app/assets/images/emoji/anger.png rename to vendor/assets/images/emoji/anger.png diff --git a/app/assets/images/emoji/angry.png b/vendor/assets/images/emoji/angry.png similarity index 100% rename from app/assets/images/emoji/angry.png rename to vendor/assets/images/emoji/angry.png diff --git a/app/assets/images/emoji/ant.png b/vendor/assets/images/emoji/ant.png similarity index 100% rename from app/assets/images/emoji/ant.png rename to vendor/assets/images/emoji/ant.png diff --git a/app/assets/images/emoji/apple.png b/vendor/assets/images/emoji/apple.png similarity index 100% rename from app/assets/images/emoji/apple.png rename to vendor/assets/images/emoji/apple.png diff --git a/app/assets/images/emoji/aquarius.png b/vendor/assets/images/emoji/aquarius.png similarity index 100% rename from app/assets/images/emoji/aquarius.png rename to vendor/assets/images/emoji/aquarius.png diff --git a/app/assets/images/emoji/aries.png b/vendor/assets/images/emoji/aries.png similarity index 100% rename from app/assets/images/emoji/aries.png rename to vendor/assets/images/emoji/aries.png diff --git a/app/assets/images/emoji/arrow_backward.png b/vendor/assets/images/emoji/arrow_backward.png similarity index 100% rename from app/assets/images/emoji/arrow_backward.png rename to vendor/assets/images/emoji/arrow_backward.png diff --git a/app/assets/images/emoji/arrow_double_down.png b/vendor/assets/images/emoji/arrow_double_down.png similarity index 100% rename from app/assets/images/emoji/arrow_double_down.png rename to vendor/assets/images/emoji/arrow_double_down.png diff --git a/app/assets/images/emoji/arrow_double_up.png b/vendor/assets/images/emoji/arrow_double_up.png similarity index 100% rename from app/assets/images/emoji/arrow_double_up.png rename to vendor/assets/images/emoji/arrow_double_up.png diff --git a/app/assets/images/emoji/arrow_down.png b/vendor/assets/images/emoji/arrow_down.png similarity index 100% rename from app/assets/images/emoji/arrow_down.png rename to vendor/assets/images/emoji/arrow_down.png diff --git a/app/assets/images/emoji/arrow_down_small.png b/vendor/assets/images/emoji/arrow_down_small.png similarity index 100% rename from app/assets/images/emoji/arrow_down_small.png rename to vendor/assets/images/emoji/arrow_down_small.png diff --git a/app/assets/images/emoji/arrow_forward.png b/vendor/assets/images/emoji/arrow_forward.png similarity index 100% rename from app/assets/images/emoji/arrow_forward.png rename to vendor/assets/images/emoji/arrow_forward.png diff --git a/app/assets/images/emoji/arrow_heading_down.png b/vendor/assets/images/emoji/arrow_heading_down.png similarity index 100% rename from app/assets/images/emoji/arrow_heading_down.png rename to vendor/assets/images/emoji/arrow_heading_down.png diff --git a/app/assets/images/emoji/arrow_heading_up.png b/vendor/assets/images/emoji/arrow_heading_up.png similarity index 100% rename from app/assets/images/emoji/arrow_heading_up.png rename to vendor/assets/images/emoji/arrow_heading_up.png diff --git a/app/assets/images/emoji/arrow_left.png b/vendor/assets/images/emoji/arrow_left.png similarity index 100% rename from app/assets/images/emoji/arrow_left.png rename to vendor/assets/images/emoji/arrow_left.png diff --git a/app/assets/images/emoji/arrow_lower_left.png b/vendor/assets/images/emoji/arrow_lower_left.png similarity index 100% rename from app/assets/images/emoji/arrow_lower_left.png rename to vendor/assets/images/emoji/arrow_lower_left.png diff --git a/app/assets/images/emoji/arrow_lower_right.png b/vendor/assets/images/emoji/arrow_lower_right.png similarity index 100% rename from app/assets/images/emoji/arrow_lower_right.png rename to vendor/assets/images/emoji/arrow_lower_right.png diff --git a/app/assets/images/emoji/arrow_right.png b/vendor/assets/images/emoji/arrow_right.png similarity index 100% rename from app/assets/images/emoji/arrow_right.png rename to vendor/assets/images/emoji/arrow_right.png diff --git a/app/assets/images/emoji/arrow_right_hook.png b/vendor/assets/images/emoji/arrow_right_hook.png similarity index 100% rename from app/assets/images/emoji/arrow_right_hook.png rename to vendor/assets/images/emoji/arrow_right_hook.png diff --git a/app/assets/images/emoji/arrow_up.png b/vendor/assets/images/emoji/arrow_up.png similarity index 100% rename from app/assets/images/emoji/arrow_up.png rename to vendor/assets/images/emoji/arrow_up.png diff --git a/app/assets/images/emoji/arrow_up_down.png b/vendor/assets/images/emoji/arrow_up_down.png similarity index 100% rename from app/assets/images/emoji/arrow_up_down.png rename to vendor/assets/images/emoji/arrow_up_down.png diff --git a/app/assets/images/emoji/arrow_up_small.png b/vendor/assets/images/emoji/arrow_up_small.png similarity index 100% rename from app/assets/images/emoji/arrow_up_small.png rename to vendor/assets/images/emoji/arrow_up_small.png diff --git a/app/assets/images/emoji/arrow_upper_left.png b/vendor/assets/images/emoji/arrow_upper_left.png similarity index 100% rename from app/assets/images/emoji/arrow_upper_left.png rename to vendor/assets/images/emoji/arrow_upper_left.png diff --git a/app/assets/images/emoji/arrow_upper_right.png b/vendor/assets/images/emoji/arrow_upper_right.png similarity index 100% rename from app/assets/images/emoji/arrow_upper_right.png rename to vendor/assets/images/emoji/arrow_upper_right.png diff --git a/app/assets/images/emoji/arrows_clockwise.png b/vendor/assets/images/emoji/arrows_clockwise.png similarity index 100% rename from app/assets/images/emoji/arrows_clockwise.png rename to vendor/assets/images/emoji/arrows_clockwise.png diff --git a/app/assets/images/emoji/arrows_counterclockwise.png b/vendor/assets/images/emoji/arrows_counterclockwise.png similarity index 100% rename from app/assets/images/emoji/arrows_counterclockwise.png rename to vendor/assets/images/emoji/arrows_counterclockwise.png diff --git a/app/assets/images/emoji/art.png b/vendor/assets/images/emoji/art.png similarity index 100% rename from app/assets/images/emoji/art.png rename to vendor/assets/images/emoji/art.png diff --git a/app/assets/images/emoji/articulated_lorry.png b/vendor/assets/images/emoji/articulated_lorry.png similarity index 100% rename from app/assets/images/emoji/articulated_lorry.png rename to vendor/assets/images/emoji/articulated_lorry.png diff --git a/app/assets/images/emoji/astonished.png b/vendor/assets/images/emoji/astonished.png similarity index 100% rename from app/assets/images/emoji/astonished.png rename to vendor/assets/images/emoji/astonished.png diff --git a/app/assets/images/emoji/atm.png b/vendor/assets/images/emoji/atm.png similarity index 100% rename from app/assets/images/emoji/atm.png rename to vendor/assets/images/emoji/atm.png diff --git a/app/assets/images/emoji/b.png b/vendor/assets/images/emoji/b.png similarity index 100% rename from app/assets/images/emoji/b.png rename to vendor/assets/images/emoji/b.png diff --git a/app/assets/images/emoji/baby.png b/vendor/assets/images/emoji/baby.png similarity index 100% rename from app/assets/images/emoji/baby.png rename to vendor/assets/images/emoji/baby.png diff --git a/app/assets/images/emoji/baby_bottle.png b/vendor/assets/images/emoji/baby_bottle.png similarity index 100% rename from app/assets/images/emoji/baby_bottle.png rename to vendor/assets/images/emoji/baby_bottle.png diff --git a/app/assets/images/emoji/baby_chick.png b/vendor/assets/images/emoji/baby_chick.png similarity index 100% rename from app/assets/images/emoji/baby_chick.png rename to vendor/assets/images/emoji/baby_chick.png diff --git a/app/assets/images/emoji/baby_symbol.png b/vendor/assets/images/emoji/baby_symbol.png similarity index 100% rename from app/assets/images/emoji/baby_symbol.png rename to vendor/assets/images/emoji/baby_symbol.png diff --git a/app/assets/images/emoji/baggage_claim.png b/vendor/assets/images/emoji/baggage_claim.png similarity index 100% rename from app/assets/images/emoji/baggage_claim.png rename to vendor/assets/images/emoji/baggage_claim.png diff --git a/app/assets/images/emoji/balloon.png b/vendor/assets/images/emoji/balloon.png similarity index 100% rename from app/assets/images/emoji/balloon.png rename to vendor/assets/images/emoji/balloon.png diff --git a/app/assets/images/emoji/ballot_box_with_check.png b/vendor/assets/images/emoji/ballot_box_with_check.png similarity index 100% rename from app/assets/images/emoji/ballot_box_with_check.png rename to vendor/assets/images/emoji/ballot_box_with_check.png diff --git a/app/assets/images/emoji/bamboo.png b/vendor/assets/images/emoji/bamboo.png similarity index 100% rename from app/assets/images/emoji/bamboo.png rename to vendor/assets/images/emoji/bamboo.png diff --git a/app/assets/images/emoji/banana.png b/vendor/assets/images/emoji/banana.png similarity index 100% rename from app/assets/images/emoji/banana.png rename to vendor/assets/images/emoji/banana.png diff --git a/app/assets/images/emoji/bangbang.png b/vendor/assets/images/emoji/bangbang.png similarity index 100% rename from app/assets/images/emoji/bangbang.png rename to vendor/assets/images/emoji/bangbang.png diff --git a/app/assets/images/emoji/bank.png b/vendor/assets/images/emoji/bank.png similarity index 100% rename from app/assets/images/emoji/bank.png rename to vendor/assets/images/emoji/bank.png diff --git a/app/assets/images/emoji/bar_chart.png b/vendor/assets/images/emoji/bar_chart.png similarity index 100% rename from app/assets/images/emoji/bar_chart.png rename to vendor/assets/images/emoji/bar_chart.png diff --git a/app/assets/images/emoji/barber.png b/vendor/assets/images/emoji/barber.png similarity index 100% rename from app/assets/images/emoji/barber.png rename to vendor/assets/images/emoji/barber.png diff --git a/app/assets/images/emoji/baseball.png b/vendor/assets/images/emoji/baseball.png similarity index 100% rename from app/assets/images/emoji/baseball.png rename to vendor/assets/images/emoji/baseball.png diff --git a/app/assets/images/emoji/basketball.png b/vendor/assets/images/emoji/basketball.png similarity index 100% rename from app/assets/images/emoji/basketball.png rename to vendor/assets/images/emoji/basketball.png diff --git a/app/assets/images/emoji/bath.png b/vendor/assets/images/emoji/bath.png similarity index 100% rename from app/assets/images/emoji/bath.png rename to vendor/assets/images/emoji/bath.png diff --git a/app/assets/images/emoji/bathtub.png b/vendor/assets/images/emoji/bathtub.png similarity index 100% rename from app/assets/images/emoji/bathtub.png rename to vendor/assets/images/emoji/bathtub.png diff --git a/app/assets/images/emoji/battery.png b/vendor/assets/images/emoji/battery.png similarity index 100% rename from app/assets/images/emoji/battery.png rename to vendor/assets/images/emoji/battery.png diff --git a/app/assets/images/emoji/bear.png b/vendor/assets/images/emoji/bear.png similarity index 100% rename from app/assets/images/emoji/bear.png rename to vendor/assets/images/emoji/bear.png diff --git a/app/assets/images/emoji/beer.png b/vendor/assets/images/emoji/beer.png similarity index 100% rename from app/assets/images/emoji/beer.png rename to vendor/assets/images/emoji/beer.png diff --git a/app/assets/images/emoji/beers.png b/vendor/assets/images/emoji/beers.png similarity index 100% rename from app/assets/images/emoji/beers.png rename to vendor/assets/images/emoji/beers.png diff --git a/app/assets/images/emoji/beetle.png b/vendor/assets/images/emoji/beetle.png similarity index 100% rename from app/assets/images/emoji/beetle.png rename to vendor/assets/images/emoji/beetle.png diff --git a/app/assets/images/emoji/beginner.png b/vendor/assets/images/emoji/beginner.png similarity index 100% rename from app/assets/images/emoji/beginner.png rename to vendor/assets/images/emoji/beginner.png diff --git a/app/assets/images/emoji/bell.png b/vendor/assets/images/emoji/bell.png similarity index 100% rename from app/assets/images/emoji/bell.png rename to vendor/assets/images/emoji/bell.png diff --git a/app/assets/images/emoji/bento.png b/vendor/assets/images/emoji/bento.png similarity index 100% rename from app/assets/images/emoji/bento.png rename to vendor/assets/images/emoji/bento.png diff --git a/app/assets/images/emoji/bicyclist.png b/vendor/assets/images/emoji/bicyclist.png similarity index 100% rename from app/assets/images/emoji/bicyclist.png rename to vendor/assets/images/emoji/bicyclist.png diff --git a/app/assets/images/emoji/bike.png b/vendor/assets/images/emoji/bike.png similarity index 100% rename from app/assets/images/emoji/bike.png rename to vendor/assets/images/emoji/bike.png diff --git a/app/assets/images/emoji/bikini.png b/vendor/assets/images/emoji/bikini.png similarity index 100% rename from app/assets/images/emoji/bikini.png rename to vendor/assets/images/emoji/bikini.png diff --git a/app/assets/images/emoji/bird.png b/vendor/assets/images/emoji/bird.png similarity index 100% rename from app/assets/images/emoji/bird.png rename to vendor/assets/images/emoji/bird.png diff --git a/app/assets/images/emoji/birthday.png b/vendor/assets/images/emoji/birthday.png similarity index 100% rename from app/assets/images/emoji/birthday.png rename to vendor/assets/images/emoji/birthday.png diff --git a/app/assets/images/emoji/black_circle.png b/vendor/assets/images/emoji/black_circle.png similarity index 100% rename from app/assets/images/emoji/black_circle.png rename to vendor/assets/images/emoji/black_circle.png diff --git a/app/assets/images/emoji/black_joker.png b/vendor/assets/images/emoji/black_joker.png similarity index 100% rename from app/assets/images/emoji/black_joker.png rename to vendor/assets/images/emoji/black_joker.png diff --git a/app/assets/images/emoji/black_nib.png b/vendor/assets/images/emoji/black_nib.png similarity index 100% rename from app/assets/images/emoji/black_nib.png rename to vendor/assets/images/emoji/black_nib.png diff --git a/app/assets/images/emoji/black_square.png b/vendor/assets/images/emoji/black_square.png similarity index 100% rename from app/assets/images/emoji/black_square.png rename to vendor/assets/images/emoji/black_square.png diff --git a/app/assets/images/emoji/blossom.png b/vendor/assets/images/emoji/blossom.png similarity index 100% rename from app/assets/images/emoji/blossom.png rename to vendor/assets/images/emoji/blossom.png diff --git a/app/assets/images/emoji/blowfish.png b/vendor/assets/images/emoji/blowfish.png similarity index 100% rename from app/assets/images/emoji/blowfish.png rename to vendor/assets/images/emoji/blowfish.png diff --git a/app/assets/images/emoji/blue_book.png b/vendor/assets/images/emoji/blue_book.png similarity index 100% rename from app/assets/images/emoji/blue_book.png rename to vendor/assets/images/emoji/blue_book.png diff --git a/app/assets/images/emoji/blue_car.png b/vendor/assets/images/emoji/blue_car.png similarity index 100% rename from app/assets/images/emoji/blue_car.png rename to vendor/assets/images/emoji/blue_car.png diff --git a/app/assets/images/emoji/blue_heart.png b/vendor/assets/images/emoji/blue_heart.png similarity index 100% rename from app/assets/images/emoji/blue_heart.png rename to vendor/assets/images/emoji/blue_heart.png diff --git a/app/assets/images/emoji/blush.png b/vendor/assets/images/emoji/blush.png similarity index 100% rename from app/assets/images/emoji/blush.png rename to vendor/assets/images/emoji/blush.png diff --git a/app/assets/images/emoji/boar.png b/vendor/assets/images/emoji/boar.png similarity index 100% rename from app/assets/images/emoji/boar.png rename to vendor/assets/images/emoji/boar.png diff --git a/app/assets/images/emoji/boat.png b/vendor/assets/images/emoji/boat.png similarity index 100% rename from app/assets/images/emoji/boat.png rename to vendor/assets/images/emoji/boat.png diff --git a/app/assets/images/emoji/bomb.png b/vendor/assets/images/emoji/bomb.png similarity index 100% rename from app/assets/images/emoji/bomb.png rename to vendor/assets/images/emoji/bomb.png diff --git a/app/assets/images/emoji/book.png b/vendor/assets/images/emoji/book.png similarity index 100% rename from app/assets/images/emoji/book.png rename to vendor/assets/images/emoji/book.png diff --git a/app/assets/images/emoji/bookmark.png b/vendor/assets/images/emoji/bookmark.png similarity index 100% rename from app/assets/images/emoji/bookmark.png rename to vendor/assets/images/emoji/bookmark.png diff --git a/app/assets/images/emoji/bookmark_tabs.png b/vendor/assets/images/emoji/bookmark_tabs.png similarity index 100% rename from app/assets/images/emoji/bookmark_tabs.png rename to vendor/assets/images/emoji/bookmark_tabs.png diff --git a/app/assets/images/emoji/books.png b/vendor/assets/images/emoji/books.png similarity index 100% rename from app/assets/images/emoji/books.png rename to vendor/assets/images/emoji/books.png diff --git a/app/assets/images/emoji/boot.png b/vendor/assets/images/emoji/boot.png similarity index 100% rename from app/assets/images/emoji/boot.png rename to vendor/assets/images/emoji/boot.png diff --git a/app/assets/images/emoji/bouquet.png b/vendor/assets/images/emoji/bouquet.png similarity index 100% rename from app/assets/images/emoji/bouquet.png rename to vendor/assets/images/emoji/bouquet.png diff --git a/app/assets/images/emoji/bow.png b/vendor/assets/images/emoji/bow.png similarity index 100% rename from app/assets/images/emoji/bow.png rename to vendor/assets/images/emoji/bow.png diff --git a/app/assets/images/emoji/bowling.png b/vendor/assets/images/emoji/bowling.png similarity index 100% rename from app/assets/images/emoji/bowling.png rename to vendor/assets/images/emoji/bowling.png diff --git a/app/assets/images/emoji/bowtie.png b/vendor/assets/images/emoji/bowtie.png similarity index 100% rename from app/assets/images/emoji/bowtie.png rename to vendor/assets/images/emoji/bowtie.png diff --git a/app/assets/images/emoji/boy.png b/vendor/assets/images/emoji/boy.png similarity index 100% rename from app/assets/images/emoji/boy.png rename to vendor/assets/images/emoji/boy.png diff --git a/app/assets/images/emoji/bread.png b/vendor/assets/images/emoji/bread.png similarity index 100% rename from app/assets/images/emoji/bread.png rename to vendor/assets/images/emoji/bread.png diff --git a/app/assets/images/emoji/bride_with_veil.png b/vendor/assets/images/emoji/bride_with_veil.png similarity index 100% rename from app/assets/images/emoji/bride_with_veil.png rename to vendor/assets/images/emoji/bride_with_veil.png diff --git a/app/assets/images/emoji/bridge_at_night.png b/vendor/assets/images/emoji/bridge_at_night.png similarity index 100% rename from app/assets/images/emoji/bridge_at_night.png rename to vendor/assets/images/emoji/bridge_at_night.png diff --git a/app/assets/images/emoji/briefcase.png b/vendor/assets/images/emoji/briefcase.png similarity index 100% rename from app/assets/images/emoji/briefcase.png rename to vendor/assets/images/emoji/briefcase.png diff --git a/app/assets/images/emoji/broken_heart.png b/vendor/assets/images/emoji/broken_heart.png similarity index 100% rename from app/assets/images/emoji/broken_heart.png rename to vendor/assets/images/emoji/broken_heart.png diff --git a/app/assets/images/emoji/bug.png b/vendor/assets/images/emoji/bug.png similarity index 100% rename from app/assets/images/emoji/bug.png rename to vendor/assets/images/emoji/bug.png diff --git a/app/assets/images/emoji/bulb.png b/vendor/assets/images/emoji/bulb.png similarity index 100% rename from app/assets/images/emoji/bulb.png rename to vendor/assets/images/emoji/bulb.png diff --git a/app/assets/images/emoji/bullettrain_front.png b/vendor/assets/images/emoji/bullettrain_front.png similarity index 100% rename from app/assets/images/emoji/bullettrain_front.png rename to vendor/assets/images/emoji/bullettrain_front.png diff --git a/app/assets/images/emoji/bullettrain_side.png b/vendor/assets/images/emoji/bullettrain_side.png similarity index 100% rename from app/assets/images/emoji/bullettrain_side.png rename to vendor/assets/images/emoji/bullettrain_side.png diff --git a/app/assets/images/emoji/bus.png b/vendor/assets/images/emoji/bus.png similarity index 100% rename from app/assets/images/emoji/bus.png rename to vendor/assets/images/emoji/bus.png diff --git a/app/assets/images/emoji/busstop.png b/vendor/assets/images/emoji/busstop.png similarity index 100% rename from app/assets/images/emoji/busstop.png rename to vendor/assets/images/emoji/busstop.png diff --git a/app/assets/images/emoji/bust_in_silhouette.png b/vendor/assets/images/emoji/bust_in_silhouette.png similarity index 100% rename from app/assets/images/emoji/bust_in_silhouette.png rename to vendor/assets/images/emoji/bust_in_silhouette.png diff --git a/app/assets/images/emoji/busts_in_silhouette.png b/vendor/assets/images/emoji/busts_in_silhouette.png similarity index 100% rename from app/assets/images/emoji/busts_in_silhouette.png rename to vendor/assets/images/emoji/busts_in_silhouette.png diff --git a/app/assets/images/emoji/cactus.png b/vendor/assets/images/emoji/cactus.png similarity index 100% rename from app/assets/images/emoji/cactus.png rename to vendor/assets/images/emoji/cactus.png diff --git a/app/assets/images/emoji/cake.png b/vendor/assets/images/emoji/cake.png similarity index 100% rename from app/assets/images/emoji/cake.png rename to vendor/assets/images/emoji/cake.png diff --git a/app/assets/images/emoji/calendar.png b/vendor/assets/images/emoji/calendar.png similarity index 100% rename from app/assets/images/emoji/calendar.png rename to vendor/assets/images/emoji/calendar.png diff --git a/app/assets/images/emoji/calling.png b/vendor/assets/images/emoji/calling.png similarity index 100% rename from app/assets/images/emoji/calling.png rename to vendor/assets/images/emoji/calling.png diff --git a/app/assets/images/emoji/camel.png b/vendor/assets/images/emoji/camel.png similarity index 100% rename from app/assets/images/emoji/camel.png rename to vendor/assets/images/emoji/camel.png diff --git a/app/assets/images/emoji/camera.png b/vendor/assets/images/emoji/camera.png similarity index 100% rename from app/assets/images/emoji/camera.png rename to vendor/assets/images/emoji/camera.png diff --git a/app/assets/images/emoji/cancer.png b/vendor/assets/images/emoji/cancer.png similarity index 100% rename from app/assets/images/emoji/cancer.png rename to vendor/assets/images/emoji/cancer.png diff --git a/app/assets/images/emoji/candy.png b/vendor/assets/images/emoji/candy.png similarity index 100% rename from app/assets/images/emoji/candy.png rename to vendor/assets/images/emoji/candy.png diff --git a/app/assets/images/emoji/capital_abcd.png b/vendor/assets/images/emoji/capital_abcd.png similarity index 100% rename from app/assets/images/emoji/capital_abcd.png rename to vendor/assets/images/emoji/capital_abcd.png diff --git a/app/assets/images/emoji/capricorn.png b/vendor/assets/images/emoji/capricorn.png similarity index 100% rename from app/assets/images/emoji/capricorn.png rename to vendor/assets/images/emoji/capricorn.png diff --git a/app/assets/images/emoji/car.png b/vendor/assets/images/emoji/car.png similarity index 100% rename from app/assets/images/emoji/car.png rename to vendor/assets/images/emoji/car.png diff --git a/app/assets/images/emoji/card_index.png b/vendor/assets/images/emoji/card_index.png similarity index 100% rename from app/assets/images/emoji/card_index.png rename to vendor/assets/images/emoji/card_index.png diff --git a/app/assets/images/emoji/carousel_horse.png b/vendor/assets/images/emoji/carousel_horse.png similarity index 100% rename from app/assets/images/emoji/carousel_horse.png rename to vendor/assets/images/emoji/carousel_horse.png diff --git a/app/assets/images/emoji/cat.png b/vendor/assets/images/emoji/cat.png similarity index 100% rename from app/assets/images/emoji/cat.png rename to vendor/assets/images/emoji/cat.png diff --git a/app/assets/images/emoji/cat2.png b/vendor/assets/images/emoji/cat2.png similarity index 100% rename from app/assets/images/emoji/cat2.png rename to vendor/assets/images/emoji/cat2.png diff --git a/app/assets/images/emoji/cd.png b/vendor/assets/images/emoji/cd.png similarity index 100% rename from app/assets/images/emoji/cd.png rename to vendor/assets/images/emoji/cd.png diff --git a/app/assets/images/emoji/chart.png b/vendor/assets/images/emoji/chart.png similarity index 100% rename from app/assets/images/emoji/chart.png rename to vendor/assets/images/emoji/chart.png diff --git a/app/assets/images/emoji/chart_with_downwards_trend.png b/vendor/assets/images/emoji/chart_with_downwards_trend.png similarity index 100% rename from app/assets/images/emoji/chart_with_downwards_trend.png rename to vendor/assets/images/emoji/chart_with_downwards_trend.png diff --git a/app/assets/images/emoji/chart_with_upwards_trend.png b/vendor/assets/images/emoji/chart_with_upwards_trend.png similarity index 100% rename from app/assets/images/emoji/chart_with_upwards_trend.png rename to vendor/assets/images/emoji/chart_with_upwards_trend.png diff --git a/app/assets/images/emoji/checkered_flag.png b/vendor/assets/images/emoji/checkered_flag.png similarity index 100% rename from app/assets/images/emoji/checkered_flag.png rename to vendor/assets/images/emoji/checkered_flag.png diff --git a/app/assets/images/emoji/cherries.png b/vendor/assets/images/emoji/cherries.png similarity index 100% rename from app/assets/images/emoji/cherries.png rename to vendor/assets/images/emoji/cherries.png diff --git a/app/assets/images/emoji/cherry_blossom.png b/vendor/assets/images/emoji/cherry_blossom.png similarity index 100% rename from app/assets/images/emoji/cherry_blossom.png rename to vendor/assets/images/emoji/cherry_blossom.png diff --git a/app/assets/images/emoji/chestnut.png b/vendor/assets/images/emoji/chestnut.png similarity index 100% rename from app/assets/images/emoji/chestnut.png rename to vendor/assets/images/emoji/chestnut.png diff --git a/app/assets/images/emoji/chicken.png b/vendor/assets/images/emoji/chicken.png similarity index 100% rename from app/assets/images/emoji/chicken.png rename to vendor/assets/images/emoji/chicken.png diff --git a/app/assets/images/emoji/children_crossing.png b/vendor/assets/images/emoji/children_crossing.png similarity index 100% rename from app/assets/images/emoji/children_crossing.png rename to vendor/assets/images/emoji/children_crossing.png diff --git a/app/assets/images/emoji/chocolate_bar.png b/vendor/assets/images/emoji/chocolate_bar.png similarity index 100% rename from app/assets/images/emoji/chocolate_bar.png rename to vendor/assets/images/emoji/chocolate_bar.png diff --git a/app/assets/images/emoji/christmas_tree.png b/vendor/assets/images/emoji/christmas_tree.png similarity index 100% rename from app/assets/images/emoji/christmas_tree.png rename to vendor/assets/images/emoji/christmas_tree.png diff --git a/app/assets/images/emoji/church.png b/vendor/assets/images/emoji/church.png similarity index 100% rename from app/assets/images/emoji/church.png rename to vendor/assets/images/emoji/church.png diff --git a/app/assets/images/emoji/cinema.png b/vendor/assets/images/emoji/cinema.png similarity index 100% rename from app/assets/images/emoji/cinema.png rename to vendor/assets/images/emoji/cinema.png diff --git a/app/assets/images/emoji/circus_tent.png b/vendor/assets/images/emoji/circus_tent.png similarity index 100% rename from app/assets/images/emoji/circus_tent.png rename to vendor/assets/images/emoji/circus_tent.png diff --git a/app/assets/images/emoji/city_sunrise.png b/vendor/assets/images/emoji/city_sunrise.png similarity index 100% rename from app/assets/images/emoji/city_sunrise.png rename to vendor/assets/images/emoji/city_sunrise.png diff --git a/app/assets/images/emoji/city_sunset.png b/vendor/assets/images/emoji/city_sunset.png similarity index 100% rename from app/assets/images/emoji/city_sunset.png rename to vendor/assets/images/emoji/city_sunset.png diff --git a/app/assets/images/emoji/cl.png b/vendor/assets/images/emoji/cl.png similarity index 100% rename from app/assets/images/emoji/cl.png rename to vendor/assets/images/emoji/cl.png diff --git a/app/assets/images/emoji/clap.png b/vendor/assets/images/emoji/clap.png similarity index 100% rename from app/assets/images/emoji/clap.png rename to vendor/assets/images/emoji/clap.png diff --git a/app/assets/images/emoji/clapper.png b/vendor/assets/images/emoji/clapper.png similarity index 100% rename from app/assets/images/emoji/clapper.png rename to vendor/assets/images/emoji/clapper.png diff --git a/app/assets/images/emoji/clipboard.png b/vendor/assets/images/emoji/clipboard.png similarity index 100% rename from app/assets/images/emoji/clipboard.png rename to vendor/assets/images/emoji/clipboard.png diff --git a/app/assets/images/emoji/clock1.png b/vendor/assets/images/emoji/clock1.png similarity index 100% rename from app/assets/images/emoji/clock1.png rename to vendor/assets/images/emoji/clock1.png diff --git a/app/assets/images/emoji/clock10.png b/vendor/assets/images/emoji/clock10.png similarity index 100% rename from app/assets/images/emoji/clock10.png rename to vendor/assets/images/emoji/clock10.png diff --git a/app/assets/images/emoji/clock1030.png b/vendor/assets/images/emoji/clock1030.png similarity index 100% rename from app/assets/images/emoji/clock1030.png rename to vendor/assets/images/emoji/clock1030.png diff --git a/app/assets/images/emoji/clock11.png b/vendor/assets/images/emoji/clock11.png similarity index 100% rename from app/assets/images/emoji/clock11.png rename to vendor/assets/images/emoji/clock11.png diff --git a/app/assets/images/emoji/clock1130.png b/vendor/assets/images/emoji/clock1130.png similarity index 100% rename from app/assets/images/emoji/clock1130.png rename to vendor/assets/images/emoji/clock1130.png diff --git a/app/assets/images/emoji/clock12.png b/vendor/assets/images/emoji/clock12.png similarity index 100% rename from app/assets/images/emoji/clock12.png rename to vendor/assets/images/emoji/clock12.png diff --git a/app/assets/images/emoji/clock1230.png b/vendor/assets/images/emoji/clock1230.png similarity index 100% rename from app/assets/images/emoji/clock1230.png rename to vendor/assets/images/emoji/clock1230.png diff --git a/app/assets/images/emoji/clock130.png b/vendor/assets/images/emoji/clock130.png similarity index 100% rename from app/assets/images/emoji/clock130.png rename to vendor/assets/images/emoji/clock130.png diff --git a/app/assets/images/emoji/clock2.png b/vendor/assets/images/emoji/clock2.png similarity index 100% rename from app/assets/images/emoji/clock2.png rename to vendor/assets/images/emoji/clock2.png diff --git a/app/assets/images/emoji/clock230.png b/vendor/assets/images/emoji/clock230.png similarity index 100% rename from app/assets/images/emoji/clock230.png rename to vendor/assets/images/emoji/clock230.png diff --git a/app/assets/images/emoji/clock3.png b/vendor/assets/images/emoji/clock3.png similarity index 100% rename from app/assets/images/emoji/clock3.png rename to vendor/assets/images/emoji/clock3.png diff --git a/app/assets/images/emoji/clock330.png b/vendor/assets/images/emoji/clock330.png similarity index 100% rename from app/assets/images/emoji/clock330.png rename to vendor/assets/images/emoji/clock330.png diff --git a/app/assets/images/emoji/clock4.png b/vendor/assets/images/emoji/clock4.png similarity index 100% rename from app/assets/images/emoji/clock4.png rename to vendor/assets/images/emoji/clock4.png diff --git a/app/assets/images/emoji/clock430.png b/vendor/assets/images/emoji/clock430.png similarity index 100% rename from app/assets/images/emoji/clock430.png rename to vendor/assets/images/emoji/clock430.png diff --git a/app/assets/images/emoji/clock5.png b/vendor/assets/images/emoji/clock5.png similarity index 100% rename from app/assets/images/emoji/clock5.png rename to vendor/assets/images/emoji/clock5.png diff --git a/app/assets/images/emoji/clock530.png b/vendor/assets/images/emoji/clock530.png similarity index 100% rename from app/assets/images/emoji/clock530.png rename to vendor/assets/images/emoji/clock530.png diff --git a/app/assets/images/emoji/clock6.png b/vendor/assets/images/emoji/clock6.png similarity index 100% rename from app/assets/images/emoji/clock6.png rename to vendor/assets/images/emoji/clock6.png diff --git a/app/assets/images/emoji/clock630.png b/vendor/assets/images/emoji/clock630.png similarity index 100% rename from app/assets/images/emoji/clock630.png rename to vendor/assets/images/emoji/clock630.png diff --git a/app/assets/images/emoji/clock7.png b/vendor/assets/images/emoji/clock7.png similarity index 100% rename from app/assets/images/emoji/clock7.png rename to vendor/assets/images/emoji/clock7.png diff --git a/app/assets/images/emoji/clock730.png b/vendor/assets/images/emoji/clock730.png similarity index 100% rename from app/assets/images/emoji/clock730.png rename to vendor/assets/images/emoji/clock730.png diff --git a/app/assets/images/emoji/clock8.png b/vendor/assets/images/emoji/clock8.png similarity index 100% rename from app/assets/images/emoji/clock8.png rename to vendor/assets/images/emoji/clock8.png diff --git a/app/assets/images/emoji/clock830.png b/vendor/assets/images/emoji/clock830.png similarity index 100% rename from app/assets/images/emoji/clock830.png rename to vendor/assets/images/emoji/clock830.png diff --git a/app/assets/images/emoji/clock9.png b/vendor/assets/images/emoji/clock9.png similarity index 100% rename from app/assets/images/emoji/clock9.png rename to vendor/assets/images/emoji/clock9.png diff --git a/app/assets/images/emoji/clock930.png b/vendor/assets/images/emoji/clock930.png similarity index 100% rename from app/assets/images/emoji/clock930.png rename to vendor/assets/images/emoji/clock930.png diff --git a/app/assets/images/emoji/closed_book.png b/vendor/assets/images/emoji/closed_book.png similarity index 100% rename from app/assets/images/emoji/closed_book.png rename to vendor/assets/images/emoji/closed_book.png diff --git a/app/assets/images/emoji/closed_lock_with_key.png b/vendor/assets/images/emoji/closed_lock_with_key.png similarity index 100% rename from app/assets/images/emoji/closed_lock_with_key.png rename to vendor/assets/images/emoji/closed_lock_with_key.png diff --git a/app/assets/images/emoji/closed_umbrella.png b/vendor/assets/images/emoji/closed_umbrella.png similarity index 100% rename from app/assets/images/emoji/closed_umbrella.png rename to vendor/assets/images/emoji/closed_umbrella.png diff --git a/app/assets/images/emoji/cloud.png b/vendor/assets/images/emoji/cloud.png similarity index 100% rename from app/assets/images/emoji/cloud.png rename to vendor/assets/images/emoji/cloud.png diff --git a/app/assets/images/emoji/clubs.png b/vendor/assets/images/emoji/clubs.png similarity index 100% rename from app/assets/images/emoji/clubs.png rename to vendor/assets/images/emoji/clubs.png diff --git a/app/assets/images/emoji/cn.png b/vendor/assets/images/emoji/cn.png similarity index 100% rename from app/assets/images/emoji/cn.png rename to vendor/assets/images/emoji/cn.png diff --git a/app/assets/images/emoji/cocktail.png b/vendor/assets/images/emoji/cocktail.png similarity index 100% rename from app/assets/images/emoji/cocktail.png rename to vendor/assets/images/emoji/cocktail.png diff --git a/app/assets/images/emoji/coffee.png b/vendor/assets/images/emoji/coffee.png similarity index 100% rename from app/assets/images/emoji/coffee.png rename to vendor/assets/images/emoji/coffee.png diff --git a/app/assets/images/emoji/cold_sweat.png b/vendor/assets/images/emoji/cold_sweat.png similarity index 100% rename from app/assets/images/emoji/cold_sweat.png rename to vendor/assets/images/emoji/cold_sweat.png diff --git a/app/assets/images/emoji/collision.png b/vendor/assets/images/emoji/collision.png similarity index 100% rename from app/assets/images/emoji/collision.png rename to vendor/assets/images/emoji/collision.png diff --git a/app/assets/images/emoji/computer.png b/vendor/assets/images/emoji/computer.png similarity index 100% rename from app/assets/images/emoji/computer.png rename to vendor/assets/images/emoji/computer.png diff --git a/app/assets/images/emoji/confetti_ball.png b/vendor/assets/images/emoji/confetti_ball.png similarity index 100% rename from app/assets/images/emoji/confetti_ball.png rename to vendor/assets/images/emoji/confetti_ball.png diff --git a/app/assets/images/emoji/confounded.png b/vendor/assets/images/emoji/confounded.png similarity index 100% rename from app/assets/images/emoji/confounded.png rename to vendor/assets/images/emoji/confounded.png diff --git a/app/assets/images/emoji/congratulations.png b/vendor/assets/images/emoji/congratulations.png similarity index 100% rename from app/assets/images/emoji/congratulations.png rename to vendor/assets/images/emoji/congratulations.png diff --git a/app/assets/images/emoji/construction.png b/vendor/assets/images/emoji/construction.png similarity index 100% rename from app/assets/images/emoji/construction.png rename to vendor/assets/images/emoji/construction.png diff --git a/app/assets/images/emoji/construction_worker.png b/vendor/assets/images/emoji/construction_worker.png similarity index 100% rename from app/assets/images/emoji/construction_worker.png rename to vendor/assets/images/emoji/construction_worker.png diff --git a/app/assets/images/emoji/convenience_store.png b/vendor/assets/images/emoji/convenience_store.png similarity index 100% rename from app/assets/images/emoji/convenience_store.png rename to vendor/assets/images/emoji/convenience_store.png diff --git a/app/assets/images/emoji/cookie.png b/vendor/assets/images/emoji/cookie.png similarity index 100% rename from app/assets/images/emoji/cookie.png rename to vendor/assets/images/emoji/cookie.png diff --git a/app/assets/images/emoji/cool.png b/vendor/assets/images/emoji/cool.png similarity index 100% rename from app/assets/images/emoji/cool.png rename to vendor/assets/images/emoji/cool.png diff --git a/app/assets/images/emoji/cop.png b/vendor/assets/images/emoji/cop.png similarity index 100% rename from app/assets/images/emoji/cop.png rename to vendor/assets/images/emoji/cop.png diff --git a/app/assets/images/emoji/copyright.png b/vendor/assets/images/emoji/copyright.png similarity index 100% rename from app/assets/images/emoji/copyright.png rename to vendor/assets/images/emoji/copyright.png diff --git a/app/assets/images/emoji/corn.png b/vendor/assets/images/emoji/corn.png similarity index 100% rename from app/assets/images/emoji/corn.png rename to vendor/assets/images/emoji/corn.png diff --git a/app/assets/images/emoji/couple.png b/vendor/assets/images/emoji/couple.png similarity index 100% rename from app/assets/images/emoji/couple.png rename to vendor/assets/images/emoji/couple.png diff --git a/app/assets/images/emoji/couple_with_heart.png b/vendor/assets/images/emoji/couple_with_heart.png similarity index 100% rename from app/assets/images/emoji/couple_with_heart.png rename to vendor/assets/images/emoji/couple_with_heart.png diff --git a/app/assets/images/emoji/couplekiss.png b/vendor/assets/images/emoji/couplekiss.png similarity index 100% rename from app/assets/images/emoji/couplekiss.png rename to vendor/assets/images/emoji/couplekiss.png diff --git a/app/assets/images/emoji/cow.png b/vendor/assets/images/emoji/cow.png similarity index 100% rename from app/assets/images/emoji/cow.png rename to vendor/assets/images/emoji/cow.png diff --git a/app/assets/images/emoji/cow2.png b/vendor/assets/images/emoji/cow2.png similarity index 100% rename from app/assets/images/emoji/cow2.png rename to vendor/assets/images/emoji/cow2.png diff --git a/app/assets/images/emoji/credit_card.png b/vendor/assets/images/emoji/credit_card.png similarity index 100% rename from app/assets/images/emoji/credit_card.png rename to vendor/assets/images/emoji/credit_card.png diff --git a/app/assets/images/emoji/crocodile.png b/vendor/assets/images/emoji/crocodile.png similarity index 100% rename from app/assets/images/emoji/crocodile.png rename to vendor/assets/images/emoji/crocodile.png diff --git a/app/assets/images/emoji/crossed_flags.png b/vendor/assets/images/emoji/crossed_flags.png similarity index 100% rename from app/assets/images/emoji/crossed_flags.png rename to vendor/assets/images/emoji/crossed_flags.png diff --git a/app/assets/images/emoji/crown.png b/vendor/assets/images/emoji/crown.png similarity index 100% rename from app/assets/images/emoji/crown.png rename to vendor/assets/images/emoji/crown.png diff --git a/app/assets/images/emoji/cry.png b/vendor/assets/images/emoji/cry.png similarity index 100% rename from app/assets/images/emoji/cry.png rename to vendor/assets/images/emoji/cry.png diff --git a/app/assets/images/emoji/crying_cat_face.png b/vendor/assets/images/emoji/crying_cat_face.png similarity index 100% rename from app/assets/images/emoji/crying_cat_face.png rename to vendor/assets/images/emoji/crying_cat_face.png diff --git a/app/assets/images/emoji/crystal_ball.png b/vendor/assets/images/emoji/crystal_ball.png similarity index 100% rename from app/assets/images/emoji/crystal_ball.png rename to vendor/assets/images/emoji/crystal_ball.png diff --git a/app/assets/images/emoji/cupid.png b/vendor/assets/images/emoji/cupid.png similarity index 100% rename from app/assets/images/emoji/cupid.png rename to vendor/assets/images/emoji/cupid.png diff --git a/app/assets/images/emoji/curly_loop.png b/vendor/assets/images/emoji/curly_loop.png similarity index 100% rename from app/assets/images/emoji/curly_loop.png rename to vendor/assets/images/emoji/curly_loop.png diff --git a/app/assets/images/emoji/currency_exchange.png b/vendor/assets/images/emoji/currency_exchange.png similarity index 100% rename from app/assets/images/emoji/currency_exchange.png rename to vendor/assets/images/emoji/currency_exchange.png diff --git a/app/assets/images/emoji/curry.png b/vendor/assets/images/emoji/curry.png similarity index 100% rename from app/assets/images/emoji/curry.png rename to vendor/assets/images/emoji/curry.png diff --git a/app/assets/images/emoji/custard.png b/vendor/assets/images/emoji/custard.png similarity index 100% rename from app/assets/images/emoji/custard.png rename to vendor/assets/images/emoji/custard.png diff --git a/app/assets/images/emoji/customs.png b/vendor/assets/images/emoji/customs.png similarity index 100% rename from app/assets/images/emoji/customs.png rename to vendor/assets/images/emoji/customs.png diff --git a/app/assets/images/emoji/cyclone.png b/vendor/assets/images/emoji/cyclone.png similarity index 100% rename from app/assets/images/emoji/cyclone.png rename to vendor/assets/images/emoji/cyclone.png diff --git a/app/assets/images/emoji/dancer.png b/vendor/assets/images/emoji/dancer.png similarity index 100% rename from app/assets/images/emoji/dancer.png rename to vendor/assets/images/emoji/dancer.png diff --git a/app/assets/images/emoji/dancers.png b/vendor/assets/images/emoji/dancers.png similarity index 100% rename from app/assets/images/emoji/dancers.png rename to vendor/assets/images/emoji/dancers.png diff --git a/app/assets/images/emoji/dango.png b/vendor/assets/images/emoji/dango.png similarity index 100% rename from app/assets/images/emoji/dango.png rename to vendor/assets/images/emoji/dango.png diff --git a/app/assets/images/emoji/dart.png b/vendor/assets/images/emoji/dart.png similarity index 100% rename from app/assets/images/emoji/dart.png rename to vendor/assets/images/emoji/dart.png diff --git a/app/assets/images/emoji/dash.png b/vendor/assets/images/emoji/dash.png similarity index 100% rename from app/assets/images/emoji/dash.png rename to vendor/assets/images/emoji/dash.png diff --git a/app/assets/images/emoji/date.png b/vendor/assets/images/emoji/date.png similarity index 100% rename from app/assets/images/emoji/date.png rename to vendor/assets/images/emoji/date.png diff --git a/app/assets/images/emoji/de.png b/vendor/assets/images/emoji/de.png similarity index 100% rename from app/assets/images/emoji/de.png rename to vendor/assets/images/emoji/de.png diff --git a/app/assets/images/emoji/deciduous_tree.png b/vendor/assets/images/emoji/deciduous_tree.png similarity index 100% rename from app/assets/images/emoji/deciduous_tree.png rename to vendor/assets/images/emoji/deciduous_tree.png diff --git a/app/assets/images/emoji/department_store.png b/vendor/assets/images/emoji/department_store.png similarity index 100% rename from app/assets/images/emoji/department_store.png rename to vendor/assets/images/emoji/department_store.png diff --git a/app/assets/images/emoji/diamond_shape_with_a_dot_inside.png b/vendor/assets/images/emoji/diamond_shape_with_a_dot_inside.png similarity index 100% rename from app/assets/images/emoji/diamond_shape_with_a_dot_inside.png rename to vendor/assets/images/emoji/diamond_shape_with_a_dot_inside.png diff --git a/app/assets/images/emoji/diamonds.png b/vendor/assets/images/emoji/diamonds.png similarity index 100% rename from app/assets/images/emoji/diamonds.png rename to vendor/assets/images/emoji/diamonds.png diff --git a/app/assets/images/emoji/disappointed.png b/vendor/assets/images/emoji/disappointed.png similarity index 100% rename from app/assets/images/emoji/disappointed.png rename to vendor/assets/images/emoji/disappointed.png diff --git a/app/assets/images/emoji/dizzy.png b/vendor/assets/images/emoji/dizzy.png similarity index 100% rename from app/assets/images/emoji/dizzy.png rename to vendor/assets/images/emoji/dizzy.png diff --git a/app/assets/images/emoji/dizzy_face.png b/vendor/assets/images/emoji/dizzy_face.png similarity index 100% rename from app/assets/images/emoji/dizzy_face.png rename to vendor/assets/images/emoji/dizzy_face.png diff --git a/app/assets/images/emoji/do_not_litter.png b/vendor/assets/images/emoji/do_not_litter.png similarity index 100% rename from app/assets/images/emoji/do_not_litter.png rename to vendor/assets/images/emoji/do_not_litter.png diff --git a/app/assets/images/emoji/dog.png b/vendor/assets/images/emoji/dog.png similarity index 100% rename from app/assets/images/emoji/dog.png rename to vendor/assets/images/emoji/dog.png diff --git a/app/assets/images/emoji/dog2.png b/vendor/assets/images/emoji/dog2.png similarity index 100% rename from app/assets/images/emoji/dog2.png rename to vendor/assets/images/emoji/dog2.png diff --git a/app/assets/images/emoji/dollar.png b/vendor/assets/images/emoji/dollar.png similarity index 100% rename from app/assets/images/emoji/dollar.png rename to vendor/assets/images/emoji/dollar.png diff --git a/app/assets/images/emoji/dolls.png b/vendor/assets/images/emoji/dolls.png similarity index 100% rename from app/assets/images/emoji/dolls.png rename to vendor/assets/images/emoji/dolls.png diff --git a/app/assets/images/emoji/dolphin.png b/vendor/assets/images/emoji/dolphin.png similarity index 100% rename from app/assets/images/emoji/dolphin.png rename to vendor/assets/images/emoji/dolphin.png diff --git a/app/assets/images/emoji/door.png b/vendor/assets/images/emoji/door.png similarity index 100% rename from app/assets/images/emoji/door.png rename to vendor/assets/images/emoji/door.png diff --git a/app/assets/images/emoji/doughnut.png b/vendor/assets/images/emoji/doughnut.png similarity index 100% rename from app/assets/images/emoji/doughnut.png rename to vendor/assets/images/emoji/doughnut.png diff --git a/app/assets/images/emoji/dragon.png b/vendor/assets/images/emoji/dragon.png similarity index 100% rename from app/assets/images/emoji/dragon.png rename to vendor/assets/images/emoji/dragon.png diff --git a/app/assets/images/emoji/dragon_face.png b/vendor/assets/images/emoji/dragon_face.png similarity index 100% rename from app/assets/images/emoji/dragon_face.png rename to vendor/assets/images/emoji/dragon_face.png diff --git a/app/assets/images/emoji/dress.png b/vendor/assets/images/emoji/dress.png similarity index 100% rename from app/assets/images/emoji/dress.png rename to vendor/assets/images/emoji/dress.png diff --git a/app/assets/images/emoji/dromedary_camel.png b/vendor/assets/images/emoji/dromedary_camel.png similarity index 100% rename from app/assets/images/emoji/dromedary_camel.png rename to vendor/assets/images/emoji/dromedary_camel.png diff --git a/app/assets/images/emoji/droplet.png b/vendor/assets/images/emoji/droplet.png similarity index 100% rename from app/assets/images/emoji/droplet.png rename to vendor/assets/images/emoji/droplet.png diff --git a/app/assets/images/emoji/dvd.png b/vendor/assets/images/emoji/dvd.png similarity index 100% rename from app/assets/images/emoji/dvd.png rename to vendor/assets/images/emoji/dvd.png diff --git a/app/assets/images/emoji/e-mail.png b/vendor/assets/images/emoji/e-mail.png similarity index 100% rename from app/assets/images/emoji/e-mail.png rename to vendor/assets/images/emoji/e-mail.png diff --git a/app/assets/images/emoji/ear.png b/vendor/assets/images/emoji/ear.png similarity index 100% rename from app/assets/images/emoji/ear.png rename to vendor/assets/images/emoji/ear.png diff --git a/app/assets/images/emoji/ear_of_rice.png b/vendor/assets/images/emoji/ear_of_rice.png similarity index 100% rename from app/assets/images/emoji/ear_of_rice.png rename to vendor/assets/images/emoji/ear_of_rice.png diff --git a/app/assets/images/emoji/earth_africa.png b/vendor/assets/images/emoji/earth_africa.png similarity index 100% rename from app/assets/images/emoji/earth_africa.png rename to vendor/assets/images/emoji/earth_africa.png diff --git a/app/assets/images/emoji/earth_americas.png b/vendor/assets/images/emoji/earth_americas.png similarity index 100% rename from app/assets/images/emoji/earth_americas.png rename to vendor/assets/images/emoji/earth_americas.png diff --git a/app/assets/images/emoji/earth_asia.png b/vendor/assets/images/emoji/earth_asia.png similarity index 100% rename from app/assets/images/emoji/earth_asia.png rename to vendor/assets/images/emoji/earth_asia.png diff --git a/app/assets/images/emoji/egg.png b/vendor/assets/images/emoji/egg.png similarity index 100% rename from app/assets/images/emoji/egg.png rename to vendor/assets/images/emoji/egg.png diff --git a/app/assets/images/emoji/eggplant.png b/vendor/assets/images/emoji/eggplant.png similarity index 100% rename from app/assets/images/emoji/eggplant.png rename to vendor/assets/images/emoji/eggplant.png diff --git a/app/assets/images/emoji/eight.png b/vendor/assets/images/emoji/eight.png similarity index 100% rename from app/assets/images/emoji/eight.png rename to vendor/assets/images/emoji/eight.png diff --git a/app/assets/images/emoji/eight_pointed_black_star.png b/vendor/assets/images/emoji/eight_pointed_black_star.png similarity index 100% rename from app/assets/images/emoji/eight_pointed_black_star.png rename to vendor/assets/images/emoji/eight_pointed_black_star.png diff --git a/app/assets/images/emoji/eight_spoked_asterisk.png b/vendor/assets/images/emoji/eight_spoked_asterisk.png similarity index 100% rename from app/assets/images/emoji/eight_spoked_asterisk.png rename to vendor/assets/images/emoji/eight_spoked_asterisk.png diff --git a/app/assets/images/emoji/electric_plug.png b/vendor/assets/images/emoji/electric_plug.png similarity index 100% rename from app/assets/images/emoji/electric_plug.png rename to vendor/assets/images/emoji/electric_plug.png diff --git a/app/assets/images/emoji/elephant.png b/vendor/assets/images/emoji/elephant.png similarity index 100% rename from app/assets/images/emoji/elephant.png rename to vendor/assets/images/emoji/elephant.png diff --git a/app/assets/images/emoji/email.png b/vendor/assets/images/emoji/email.png similarity index 100% rename from app/assets/images/emoji/email.png rename to vendor/assets/images/emoji/email.png diff --git a/app/assets/images/emoji/end.png b/vendor/assets/images/emoji/end.png similarity index 100% rename from app/assets/images/emoji/end.png rename to vendor/assets/images/emoji/end.png diff --git a/app/assets/images/emoji/envelope.png b/vendor/assets/images/emoji/envelope.png similarity index 100% rename from app/assets/images/emoji/envelope.png rename to vendor/assets/images/emoji/envelope.png diff --git a/app/assets/images/emoji/es.png b/vendor/assets/images/emoji/es.png similarity index 100% rename from app/assets/images/emoji/es.png rename to vendor/assets/images/emoji/es.png diff --git a/app/assets/images/emoji/euro.png b/vendor/assets/images/emoji/euro.png similarity index 100% rename from app/assets/images/emoji/euro.png rename to vendor/assets/images/emoji/euro.png diff --git a/app/assets/images/emoji/european_castle.png b/vendor/assets/images/emoji/european_castle.png similarity index 100% rename from app/assets/images/emoji/european_castle.png rename to vendor/assets/images/emoji/european_castle.png diff --git a/app/assets/images/emoji/european_post_office.png b/vendor/assets/images/emoji/european_post_office.png similarity index 100% rename from app/assets/images/emoji/european_post_office.png rename to vendor/assets/images/emoji/european_post_office.png diff --git a/app/assets/images/emoji/evergreen_tree.png b/vendor/assets/images/emoji/evergreen_tree.png similarity index 100% rename from app/assets/images/emoji/evergreen_tree.png rename to vendor/assets/images/emoji/evergreen_tree.png diff --git a/app/assets/images/emoji/exclamation.png b/vendor/assets/images/emoji/exclamation.png similarity index 100% rename from app/assets/images/emoji/exclamation.png rename to vendor/assets/images/emoji/exclamation.png diff --git a/app/assets/images/emoji/eyeglasses.png b/vendor/assets/images/emoji/eyeglasses.png similarity index 100% rename from app/assets/images/emoji/eyeglasses.png rename to vendor/assets/images/emoji/eyeglasses.png diff --git a/app/assets/images/emoji/eyes.png b/vendor/assets/images/emoji/eyes.png similarity index 100% rename from app/assets/images/emoji/eyes.png rename to vendor/assets/images/emoji/eyes.png diff --git a/app/assets/images/emoji/facepunch.png b/vendor/assets/images/emoji/facepunch.png similarity index 100% rename from app/assets/images/emoji/facepunch.png rename to vendor/assets/images/emoji/facepunch.png diff --git a/app/assets/images/emoji/factory.png b/vendor/assets/images/emoji/factory.png similarity index 100% rename from app/assets/images/emoji/factory.png rename to vendor/assets/images/emoji/factory.png diff --git a/app/assets/images/emoji/fallen_leaf.png b/vendor/assets/images/emoji/fallen_leaf.png similarity index 100% rename from app/assets/images/emoji/fallen_leaf.png rename to vendor/assets/images/emoji/fallen_leaf.png diff --git a/app/assets/images/emoji/family.png b/vendor/assets/images/emoji/family.png similarity index 100% rename from app/assets/images/emoji/family.png rename to vendor/assets/images/emoji/family.png diff --git a/app/assets/images/emoji/fast_forward.png b/vendor/assets/images/emoji/fast_forward.png similarity index 100% rename from app/assets/images/emoji/fast_forward.png rename to vendor/assets/images/emoji/fast_forward.png diff --git a/app/assets/images/emoji/fax.png b/vendor/assets/images/emoji/fax.png similarity index 100% rename from app/assets/images/emoji/fax.png rename to vendor/assets/images/emoji/fax.png diff --git a/app/assets/images/emoji/fearful.png b/vendor/assets/images/emoji/fearful.png similarity index 100% rename from app/assets/images/emoji/fearful.png rename to vendor/assets/images/emoji/fearful.png diff --git a/app/assets/images/emoji/feelsgood.png b/vendor/assets/images/emoji/feelsgood.png similarity index 100% rename from app/assets/images/emoji/feelsgood.png rename to vendor/assets/images/emoji/feelsgood.png diff --git a/app/assets/images/emoji/feet.png b/vendor/assets/images/emoji/feet.png similarity index 100% rename from app/assets/images/emoji/feet.png rename to vendor/assets/images/emoji/feet.png diff --git a/app/assets/images/emoji/ferris_wheel.png b/vendor/assets/images/emoji/ferris_wheel.png similarity index 100% rename from app/assets/images/emoji/ferris_wheel.png rename to vendor/assets/images/emoji/ferris_wheel.png diff --git a/app/assets/images/emoji/file_folder.png b/vendor/assets/images/emoji/file_folder.png similarity index 100% rename from app/assets/images/emoji/file_folder.png rename to vendor/assets/images/emoji/file_folder.png diff --git a/app/assets/images/emoji/finnadie.png b/vendor/assets/images/emoji/finnadie.png similarity index 100% rename from app/assets/images/emoji/finnadie.png rename to vendor/assets/images/emoji/finnadie.png diff --git a/app/assets/images/emoji/fire.png b/vendor/assets/images/emoji/fire.png similarity index 100% rename from app/assets/images/emoji/fire.png rename to vendor/assets/images/emoji/fire.png diff --git a/app/assets/images/emoji/fire_engine.png b/vendor/assets/images/emoji/fire_engine.png similarity index 100% rename from app/assets/images/emoji/fire_engine.png rename to vendor/assets/images/emoji/fire_engine.png diff --git a/app/assets/images/emoji/fireworks.png b/vendor/assets/images/emoji/fireworks.png similarity index 100% rename from app/assets/images/emoji/fireworks.png rename to vendor/assets/images/emoji/fireworks.png diff --git a/app/assets/images/emoji/first_quarter_moon.png b/vendor/assets/images/emoji/first_quarter_moon.png similarity index 100% rename from app/assets/images/emoji/first_quarter_moon.png rename to vendor/assets/images/emoji/first_quarter_moon.png diff --git a/app/assets/images/emoji/first_quarter_moon_with_face.png b/vendor/assets/images/emoji/first_quarter_moon_with_face.png similarity index 100% rename from app/assets/images/emoji/first_quarter_moon_with_face.png rename to vendor/assets/images/emoji/first_quarter_moon_with_face.png diff --git a/app/assets/images/emoji/fish.png b/vendor/assets/images/emoji/fish.png similarity index 100% rename from app/assets/images/emoji/fish.png rename to vendor/assets/images/emoji/fish.png diff --git a/app/assets/images/emoji/fish_cake.png b/vendor/assets/images/emoji/fish_cake.png similarity index 100% rename from app/assets/images/emoji/fish_cake.png rename to vendor/assets/images/emoji/fish_cake.png diff --git a/app/assets/images/emoji/fishing_pole_and_fish.png b/vendor/assets/images/emoji/fishing_pole_and_fish.png similarity index 100% rename from app/assets/images/emoji/fishing_pole_and_fish.png rename to vendor/assets/images/emoji/fishing_pole_and_fish.png diff --git a/app/assets/images/emoji/fist.png b/vendor/assets/images/emoji/fist.png similarity index 100% rename from app/assets/images/emoji/fist.png rename to vendor/assets/images/emoji/fist.png diff --git a/app/assets/images/emoji/five.png b/vendor/assets/images/emoji/five.png similarity index 100% rename from app/assets/images/emoji/five.png rename to vendor/assets/images/emoji/five.png diff --git a/app/assets/images/emoji/flags.png b/vendor/assets/images/emoji/flags.png similarity index 100% rename from app/assets/images/emoji/flags.png rename to vendor/assets/images/emoji/flags.png diff --git a/app/assets/images/emoji/flashlight.png b/vendor/assets/images/emoji/flashlight.png similarity index 100% rename from app/assets/images/emoji/flashlight.png rename to vendor/assets/images/emoji/flashlight.png diff --git a/app/assets/images/emoji/floppy_disk.png b/vendor/assets/images/emoji/floppy_disk.png similarity index 100% rename from app/assets/images/emoji/floppy_disk.png rename to vendor/assets/images/emoji/floppy_disk.png diff --git a/app/assets/images/emoji/flower_playing_cards.png b/vendor/assets/images/emoji/flower_playing_cards.png similarity index 100% rename from app/assets/images/emoji/flower_playing_cards.png rename to vendor/assets/images/emoji/flower_playing_cards.png diff --git a/app/assets/images/emoji/flushed.png b/vendor/assets/images/emoji/flushed.png similarity index 100% rename from app/assets/images/emoji/flushed.png rename to vendor/assets/images/emoji/flushed.png diff --git a/app/assets/images/emoji/foggy.png b/vendor/assets/images/emoji/foggy.png similarity index 100% rename from app/assets/images/emoji/foggy.png rename to vendor/assets/images/emoji/foggy.png diff --git a/app/assets/images/emoji/football.png b/vendor/assets/images/emoji/football.png similarity index 100% rename from app/assets/images/emoji/football.png rename to vendor/assets/images/emoji/football.png diff --git a/app/assets/images/emoji/fork_and_knife.png b/vendor/assets/images/emoji/fork_and_knife.png similarity index 100% rename from app/assets/images/emoji/fork_and_knife.png rename to vendor/assets/images/emoji/fork_and_knife.png diff --git a/app/assets/images/emoji/fountain.png b/vendor/assets/images/emoji/fountain.png similarity index 100% rename from app/assets/images/emoji/fountain.png rename to vendor/assets/images/emoji/fountain.png diff --git a/app/assets/images/emoji/four.png b/vendor/assets/images/emoji/four.png similarity index 100% rename from app/assets/images/emoji/four.png rename to vendor/assets/images/emoji/four.png diff --git a/app/assets/images/emoji/four_leaf_clover.png b/vendor/assets/images/emoji/four_leaf_clover.png similarity index 100% rename from app/assets/images/emoji/four_leaf_clover.png rename to vendor/assets/images/emoji/four_leaf_clover.png diff --git a/app/assets/images/emoji/fr.png b/vendor/assets/images/emoji/fr.png similarity index 100% rename from app/assets/images/emoji/fr.png rename to vendor/assets/images/emoji/fr.png diff --git a/app/assets/images/emoji/free.png b/vendor/assets/images/emoji/free.png similarity index 100% rename from app/assets/images/emoji/free.png rename to vendor/assets/images/emoji/free.png diff --git a/app/assets/images/emoji/fried_shrimp.png b/vendor/assets/images/emoji/fried_shrimp.png similarity index 100% rename from app/assets/images/emoji/fried_shrimp.png rename to vendor/assets/images/emoji/fried_shrimp.png diff --git a/app/assets/images/emoji/fries.png b/vendor/assets/images/emoji/fries.png similarity index 100% rename from app/assets/images/emoji/fries.png rename to vendor/assets/images/emoji/fries.png diff --git a/app/assets/images/emoji/frog.png b/vendor/assets/images/emoji/frog.png similarity index 100% rename from app/assets/images/emoji/frog.png rename to vendor/assets/images/emoji/frog.png diff --git a/app/assets/images/emoji/fuelpump.png b/vendor/assets/images/emoji/fuelpump.png similarity index 100% rename from app/assets/images/emoji/fuelpump.png rename to vendor/assets/images/emoji/fuelpump.png diff --git a/app/assets/images/emoji/full_moon.png b/vendor/assets/images/emoji/full_moon.png similarity index 100% rename from app/assets/images/emoji/full_moon.png rename to vendor/assets/images/emoji/full_moon.png diff --git a/app/assets/images/emoji/full_moon_with_face.png b/vendor/assets/images/emoji/full_moon_with_face.png similarity index 100% rename from app/assets/images/emoji/full_moon_with_face.png rename to vendor/assets/images/emoji/full_moon_with_face.png diff --git a/app/assets/images/emoji/game_die.png b/vendor/assets/images/emoji/game_die.png similarity index 100% rename from app/assets/images/emoji/game_die.png rename to vendor/assets/images/emoji/game_die.png diff --git a/app/assets/images/emoji/gb.png b/vendor/assets/images/emoji/gb.png similarity index 100% rename from app/assets/images/emoji/gb.png rename to vendor/assets/images/emoji/gb.png diff --git a/app/assets/images/emoji/gem.png b/vendor/assets/images/emoji/gem.png similarity index 100% rename from app/assets/images/emoji/gem.png rename to vendor/assets/images/emoji/gem.png diff --git a/app/assets/images/emoji/gemini.png b/vendor/assets/images/emoji/gemini.png similarity index 100% rename from app/assets/images/emoji/gemini.png rename to vendor/assets/images/emoji/gemini.png diff --git a/app/assets/images/emoji/ghost.png b/vendor/assets/images/emoji/ghost.png similarity index 100% rename from app/assets/images/emoji/ghost.png rename to vendor/assets/images/emoji/ghost.png diff --git a/app/assets/images/emoji/gift.png b/vendor/assets/images/emoji/gift.png similarity index 100% rename from app/assets/images/emoji/gift.png rename to vendor/assets/images/emoji/gift.png diff --git a/app/assets/images/emoji/gift_heart.png b/vendor/assets/images/emoji/gift_heart.png similarity index 100% rename from app/assets/images/emoji/gift_heart.png rename to vendor/assets/images/emoji/gift_heart.png diff --git a/app/assets/images/emoji/girl.png b/vendor/assets/images/emoji/girl.png similarity index 100% rename from app/assets/images/emoji/girl.png rename to vendor/assets/images/emoji/girl.png diff --git a/app/assets/images/emoji/globe_with_meridians.png b/vendor/assets/images/emoji/globe_with_meridians.png similarity index 100% rename from app/assets/images/emoji/globe_with_meridians.png rename to vendor/assets/images/emoji/globe_with_meridians.png diff --git a/app/assets/images/emoji/goat.png b/vendor/assets/images/emoji/goat.png similarity index 100% rename from app/assets/images/emoji/goat.png rename to vendor/assets/images/emoji/goat.png diff --git a/app/assets/images/emoji/goberserk.png b/vendor/assets/images/emoji/goberserk.png similarity index 100% rename from app/assets/images/emoji/goberserk.png rename to vendor/assets/images/emoji/goberserk.png diff --git a/app/assets/images/emoji/godmode.png b/vendor/assets/images/emoji/godmode.png similarity index 100% rename from app/assets/images/emoji/godmode.png rename to vendor/assets/images/emoji/godmode.png diff --git a/app/assets/images/emoji/golf.png b/vendor/assets/images/emoji/golf.png similarity index 100% rename from app/assets/images/emoji/golf.png rename to vendor/assets/images/emoji/golf.png diff --git a/app/assets/images/emoji/grapes.png b/vendor/assets/images/emoji/grapes.png similarity index 100% rename from app/assets/images/emoji/grapes.png rename to vendor/assets/images/emoji/grapes.png diff --git a/app/assets/images/emoji/green_apple.png b/vendor/assets/images/emoji/green_apple.png similarity index 100% rename from app/assets/images/emoji/green_apple.png rename to vendor/assets/images/emoji/green_apple.png diff --git a/app/assets/images/emoji/green_book.png b/vendor/assets/images/emoji/green_book.png similarity index 100% rename from app/assets/images/emoji/green_book.png rename to vendor/assets/images/emoji/green_book.png diff --git a/app/assets/images/emoji/green_heart.png b/vendor/assets/images/emoji/green_heart.png similarity index 100% rename from app/assets/images/emoji/green_heart.png rename to vendor/assets/images/emoji/green_heart.png diff --git a/app/assets/images/emoji/grey_exclamation.png b/vendor/assets/images/emoji/grey_exclamation.png similarity index 100% rename from app/assets/images/emoji/grey_exclamation.png rename to vendor/assets/images/emoji/grey_exclamation.png diff --git a/app/assets/images/emoji/grey_question.png b/vendor/assets/images/emoji/grey_question.png similarity index 100% rename from app/assets/images/emoji/grey_question.png rename to vendor/assets/images/emoji/grey_question.png diff --git a/app/assets/images/emoji/grin.png b/vendor/assets/images/emoji/grin.png similarity index 100% rename from app/assets/images/emoji/grin.png rename to vendor/assets/images/emoji/grin.png diff --git a/app/assets/images/emoji/guardsman.png b/vendor/assets/images/emoji/guardsman.png similarity index 100% rename from app/assets/images/emoji/guardsman.png rename to vendor/assets/images/emoji/guardsman.png diff --git a/app/assets/images/emoji/guitar.png b/vendor/assets/images/emoji/guitar.png similarity index 100% rename from app/assets/images/emoji/guitar.png rename to vendor/assets/images/emoji/guitar.png diff --git a/app/assets/images/emoji/gun.png b/vendor/assets/images/emoji/gun.png similarity index 100% rename from app/assets/images/emoji/gun.png rename to vendor/assets/images/emoji/gun.png diff --git a/app/assets/images/emoji/haircut.png b/vendor/assets/images/emoji/haircut.png similarity index 100% rename from app/assets/images/emoji/haircut.png rename to vendor/assets/images/emoji/haircut.png diff --git a/app/assets/images/emoji/hamburger.png b/vendor/assets/images/emoji/hamburger.png similarity index 100% rename from app/assets/images/emoji/hamburger.png rename to vendor/assets/images/emoji/hamburger.png diff --git a/app/assets/images/emoji/hammer.png b/vendor/assets/images/emoji/hammer.png similarity index 100% rename from app/assets/images/emoji/hammer.png rename to vendor/assets/images/emoji/hammer.png diff --git a/app/assets/images/emoji/hamster.png b/vendor/assets/images/emoji/hamster.png similarity index 100% rename from app/assets/images/emoji/hamster.png rename to vendor/assets/images/emoji/hamster.png diff --git a/app/assets/images/emoji/hand.png b/vendor/assets/images/emoji/hand.png similarity index 100% rename from app/assets/images/emoji/hand.png rename to vendor/assets/images/emoji/hand.png diff --git a/app/assets/images/emoji/handbag.png b/vendor/assets/images/emoji/handbag.png similarity index 100% rename from app/assets/images/emoji/handbag.png rename to vendor/assets/images/emoji/handbag.png diff --git a/app/assets/images/emoji/hankey.png b/vendor/assets/images/emoji/hankey.png similarity index 100% rename from app/assets/images/emoji/hankey.png rename to vendor/assets/images/emoji/hankey.png diff --git a/app/assets/images/emoji/hash.png b/vendor/assets/images/emoji/hash.png similarity index 100% rename from app/assets/images/emoji/hash.png rename to vendor/assets/images/emoji/hash.png diff --git a/app/assets/images/emoji/hatched_chick.png b/vendor/assets/images/emoji/hatched_chick.png similarity index 100% rename from app/assets/images/emoji/hatched_chick.png rename to vendor/assets/images/emoji/hatched_chick.png diff --git a/app/assets/images/emoji/hatching_chick.png b/vendor/assets/images/emoji/hatching_chick.png similarity index 100% rename from app/assets/images/emoji/hatching_chick.png rename to vendor/assets/images/emoji/hatching_chick.png diff --git a/app/assets/images/emoji/headphones.png b/vendor/assets/images/emoji/headphones.png similarity index 100% rename from app/assets/images/emoji/headphones.png rename to vendor/assets/images/emoji/headphones.png diff --git a/app/assets/images/emoji/hear_no_evil.png b/vendor/assets/images/emoji/hear_no_evil.png similarity index 100% rename from app/assets/images/emoji/hear_no_evil.png rename to vendor/assets/images/emoji/hear_no_evil.png diff --git a/app/assets/images/emoji/heart.png b/vendor/assets/images/emoji/heart.png similarity index 100% rename from app/assets/images/emoji/heart.png rename to vendor/assets/images/emoji/heart.png diff --git a/app/assets/images/emoji/heart_decoration.png b/vendor/assets/images/emoji/heart_decoration.png similarity index 100% rename from app/assets/images/emoji/heart_decoration.png rename to vendor/assets/images/emoji/heart_decoration.png diff --git a/app/assets/images/emoji/heart_eyes.png b/vendor/assets/images/emoji/heart_eyes.png similarity index 100% rename from app/assets/images/emoji/heart_eyes.png rename to vendor/assets/images/emoji/heart_eyes.png diff --git a/app/assets/images/emoji/heart_eyes_cat.png b/vendor/assets/images/emoji/heart_eyes_cat.png similarity index 100% rename from app/assets/images/emoji/heart_eyes_cat.png rename to vendor/assets/images/emoji/heart_eyes_cat.png diff --git a/app/assets/images/emoji/heartbeat.png b/vendor/assets/images/emoji/heartbeat.png similarity index 100% rename from app/assets/images/emoji/heartbeat.png rename to vendor/assets/images/emoji/heartbeat.png diff --git a/app/assets/images/emoji/heartpulse.png b/vendor/assets/images/emoji/heartpulse.png similarity index 100% rename from app/assets/images/emoji/heartpulse.png rename to vendor/assets/images/emoji/heartpulse.png diff --git a/app/assets/images/emoji/hearts.png b/vendor/assets/images/emoji/hearts.png similarity index 100% rename from app/assets/images/emoji/hearts.png rename to vendor/assets/images/emoji/hearts.png diff --git a/app/assets/images/emoji/heavy_check_mark.png b/vendor/assets/images/emoji/heavy_check_mark.png similarity index 100% rename from app/assets/images/emoji/heavy_check_mark.png rename to vendor/assets/images/emoji/heavy_check_mark.png diff --git a/app/assets/images/emoji/heavy_division_sign.png b/vendor/assets/images/emoji/heavy_division_sign.png similarity index 100% rename from app/assets/images/emoji/heavy_division_sign.png rename to vendor/assets/images/emoji/heavy_division_sign.png diff --git a/app/assets/images/emoji/heavy_dollar_sign.png b/vendor/assets/images/emoji/heavy_dollar_sign.png similarity index 100% rename from app/assets/images/emoji/heavy_dollar_sign.png rename to vendor/assets/images/emoji/heavy_dollar_sign.png diff --git a/app/assets/images/emoji/heavy_exclamation_mark.png b/vendor/assets/images/emoji/heavy_exclamation_mark.png similarity index 100% rename from app/assets/images/emoji/heavy_exclamation_mark.png rename to vendor/assets/images/emoji/heavy_exclamation_mark.png diff --git a/app/assets/images/emoji/heavy_minus_sign.png b/vendor/assets/images/emoji/heavy_minus_sign.png similarity index 100% rename from app/assets/images/emoji/heavy_minus_sign.png rename to vendor/assets/images/emoji/heavy_minus_sign.png diff --git a/app/assets/images/emoji/heavy_multiplication_x.png b/vendor/assets/images/emoji/heavy_multiplication_x.png similarity index 100% rename from app/assets/images/emoji/heavy_multiplication_x.png rename to vendor/assets/images/emoji/heavy_multiplication_x.png diff --git a/app/assets/images/emoji/heavy_plus_sign.png b/vendor/assets/images/emoji/heavy_plus_sign.png similarity index 100% rename from app/assets/images/emoji/heavy_plus_sign.png rename to vendor/assets/images/emoji/heavy_plus_sign.png diff --git a/app/assets/images/emoji/helicopter.png b/vendor/assets/images/emoji/helicopter.png similarity index 100% rename from app/assets/images/emoji/helicopter.png rename to vendor/assets/images/emoji/helicopter.png diff --git a/app/assets/images/emoji/herb.png b/vendor/assets/images/emoji/herb.png similarity index 100% rename from app/assets/images/emoji/herb.png rename to vendor/assets/images/emoji/herb.png diff --git a/app/assets/images/emoji/hibiscus.png b/vendor/assets/images/emoji/hibiscus.png similarity index 100% rename from app/assets/images/emoji/hibiscus.png rename to vendor/assets/images/emoji/hibiscus.png diff --git a/app/assets/images/emoji/high_brightness.png b/vendor/assets/images/emoji/high_brightness.png similarity index 100% rename from app/assets/images/emoji/high_brightness.png rename to vendor/assets/images/emoji/high_brightness.png diff --git a/app/assets/images/emoji/high_heel.png b/vendor/assets/images/emoji/high_heel.png similarity index 100% rename from app/assets/images/emoji/high_heel.png rename to vendor/assets/images/emoji/high_heel.png diff --git a/app/assets/images/emoji/hocho.png b/vendor/assets/images/emoji/hocho.png similarity index 100% rename from app/assets/images/emoji/hocho.png rename to vendor/assets/images/emoji/hocho.png diff --git a/app/assets/images/emoji/honey_pot.png b/vendor/assets/images/emoji/honey_pot.png similarity index 100% rename from app/assets/images/emoji/honey_pot.png rename to vendor/assets/images/emoji/honey_pot.png diff --git a/app/assets/images/emoji/honeybee.png b/vendor/assets/images/emoji/honeybee.png similarity index 100% rename from app/assets/images/emoji/honeybee.png rename to vendor/assets/images/emoji/honeybee.png diff --git a/app/assets/images/emoji/horse.png b/vendor/assets/images/emoji/horse.png similarity index 100% rename from app/assets/images/emoji/horse.png rename to vendor/assets/images/emoji/horse.png diff --git a/app/assets/images/emoji/horse_racing.png b/vendor/assets/images/emoji/horse_racing.png similarity index 100% rename from app/assets/images/emoji/horse_racing.png rename to vendor/assets/images/emoji/horse_racing.png diff --git a/app/assets/images/emoji/hospital.png b/vendor/assets/images/emoji/hospital.png similarity index 100% rename from app/assets/images/emoji/hospital.png rename to vendor/assets/images/emoji/hospital.png diff --git a/app/assets/images/emoji/hotel.png b/vendor/assets/images/emoji/hotel.png similarity index 100% rename from app/assets/images/emoji/hotel.png rename to vendor/assets/images/emoji/hotel.png diff --git a/app/assets/images/emoji/hotsprings.png b/vendor/assets/images/emoji/hotsprings.png similarity index 100% rename from app/assets/images/emoji/hotsprings.png rename to vendor/assets/images/emoji/hotsprings.png diff --git a/app/assets/images/emoji/hourglass.png b/vendor/assets/images/emoji/hourglass.png similarity index 100% rename from app/assets/images/emoji/hourglass.png rename to vendor/assets/images/emoji/hourglass.png diff --git a/app/assets/images/emoji/house.png b/vendor/assets/images/emoji/house.png similarity index 100% rename from app/assets/images/emoji/house.png rename to vendor/assets/images/emoji/house.png diff --git a/app/assets/images/emoji/hurtrealbad.png b/vendor/assets/images/emoji/hurtrealbad.png similarity index 100% rename from app/assets/images/emoji/hurtrealbad.png rename to vendor/assets/images/emoji/hurtrealbad.png diff --git a/app/assets/images/emoji/ice_cream.png b/vendor/assets/images/emoji/ice_cream.png similarity index 100% rename from app/assets/images/emoji/ice_cream.png rename to vendor/assets/images/emoji/ice_cream.png diff --git a/app/assets/images/emoji/icecream.png b/vendor/assets/images/emoji/icecream.png similarity index 100% rename from app/assets/images/emoji/icecream.png rename to vendor/assets/images/emoji/icecream.png diff --git a/app/assets/images/emoji/id.png b/vendor/assets/images/emoji/id.png similarity index 100% rename from app/assets/images/emoji/id.png rename to vendor/assets/images/emoji/id.png diff --git a/app/assets/images/emoji/ideograph_advantage.png b/vendor/assets/images/emoji/ideograph_advantage.png similarity index 100% rename from app/assets/images/emoji/ideograph_advantage.png rename to vendor/assets/images/emoji/ideograph_advantage.png diff --git a/app/assets/images/emoji/imp.png b/vendor/assets/images/emoji/imp.png similarity index 100% rename from app/assets/images/emoji/imp.png rename to vendor/assets/images/emoji/imp.png diff --git a/app/assets/images/emoji/inbox_tray.png b/vendor/assets/images/emoji/inbox_tray.png similarity index 100% rename from app/assets/images/emoji/inbox_tray.png rename to vendor/assets/images/emoji/inbox_tray.png diff --git a/app/assets/images/emoji/incoming_envelope.png b/vendor/assets/images/emoji/incoming_envelope.png similarity index 100% rename from app/assets/images/emoji/incoming_envelope.png rename to vendor/assets/images/emoji/incoming_envelope.png diff --git a/app/assets/images/emoji/information_desk_person.png b/vendor/assets/images/emoji/information_desk_person.png similarity index 100% rename from app/assets/images/emoji/information_desk_person.png rename to vendor/assets/images/emoji/information_desk_person.png diff --git a/app/assets/images/emoji/information_source.png b/vendor/assets/images/emoji/information_source.png similarity index 100% rename from app/assets/images/emoji/information_source.png rename to vendor/assets/images/emoji/information_source.png diff --git a/app/assets/images/emoji/innocent.png b/vendor/assets/images/emoji/innocent.png similarity index 100% rename from app/assets/images/emoji/innocent.png rename to vendor/assets/images/emoji/innocent.png diff --git a/app/assets/images/emoji/interrobang.png b/vendor/assets/images/emoji/interrobang.png similarity index 100% rename from app/assets/images/emoji/interrobang.png rename to vendor/assets/images/emoji/interrobang.png diff --git a/app/assets/images/emoji/iphone.png b/vendor/assets/images/emoji/iphone.png similarity index 100% rename from app/assets/images/emoji/iphone.png rename to vendor/assets/images/emoji/iphone.png diff --git a/app/assets/images/emoji/it.png b/vendor/assets/images/emoji/it.png similarity index 100% rename from app/assets/images/emoji/it.png rename to vendor/assets/images/emoji/it.png diff --git a/app/assets/images/emoji/izakaya_lantern.png b/vendor/assets/images/emoji/izakaya_lantern.png similarity index 100% rename from app/assets/images/emoji/izakaya_lantern.png rename to vendor/assets/images/emoji/izakaya_lantern.png diff --git a/app/assets/images/emoji/jack_o_lantern.png b/vendor/assets/images/emoji/jack_o_lantern.png similarity index 100% rename from app/assets/images/emoji/jack_o_lantern.png rename to vendor/assets/images/emoji/jack_o_lantern.png diff --git a/app/assets/images/emoji/japan.png b/vendor/assets/images/emoji/japan.png similarity index 100% rename from app/assets/images/emoji/japan.png rename to vendor/assets/images/emoji/japan.png diff --git a/app/assets/images/emoji/japanese_castle.png b/vendor/assets/images/emoji/japanese_castle.png similarity index 100% rename from app/assets/images/emoji/japanese_castle.png rename to vendor/assets/images/emoji/japanese_castle.png diff --git a/app/assets/images/emoji/japanese_goblin.png b/vendor/assets/images/emoji/japanese_goblin.png similarity index 100% rename from app/assets/images/emoji/japanese_goblin.png rename to vendor/assets/images/emoji/japanese_goblin.png diff --git a/app/assets/images/emoji/japanese_ogre.png b/vendor/assets/images/emoji/japanese_ogre.png similarity index 100% rename from app/assets/images/emoji/japanese_ogre.png rename to vendor/assets/images/emoji/japanese_ogre.png diff --git a/app/assets/images/emoji/jeans.png b/vendor/assets/images/emoji/jeans.png similarity index 100% rename from app/assets/images/emoji/jeans.png rename to vendor/assets/images/emoji/jeans.png diff --git a/app/assets/images/emoji/joy.png b/vendor/assets/images/emoji/joy.png similarity index 100% rename from app/assets/images/emoji/joy.png rename to vendor/assets/images/emoji/joy.png diff --git a/app/assets/images/emoji/joy_cat.png b/vendor/assets/images/emoji/joy_cat.png similarity index 100% rename from app/assets/images/emoji/joy_cat.png rename to vendor/assets/images/emoji/joy_cat.png diff --git a/app/assets/images/emoji/jp.png b/vendor/assets/images/emoji/jp.png similarity index 100% rename from app/assets/images/emoji/jp.png rename to vendor/assets/images/emoji/jp.png diff --git a/app/assets/images/emoji/key.png b/vendor/assets/images/emoji/key.png similarity index 100% rename from app/assets/images/emoji/key.png rename to vendor/assets/images/emoji/key.png diff --git a/app/assets/images/emoji/keycap_ten.png b/vendor/assets/images/emoji/keycap_ten.png similarity index 100% rename from app/assets/images/emoji/keycap_ten.png rename to vendor/assets/images/emoji/keycap_ten.png diff --git a/app/assets/images/emoji/kimono.png b/vendor/assets/images/emoji/kimono.png similarity index 100% rename from app/assets/images/emoji/kimono.png rename to vendor/assets/images/emoji/kimono.png diff --git a/app/assets/images/emoji/kiss.png b/vendor/assets/images/emoji/kiss.png similarity index 100% rename from app/assets/images/emoji/kiss.png rename to vendor/assets/images/emoji/kiss.png diff --git a/app/assets/images/emoji/kissing_cat.png b/vendor/assets/images/emoji/kissing_cat.png similarity index 100% rename from app/assets/images/emoji/kissing_cat.png rename to vendor/assets/images/emoji/kissing_cat.png diff --git a/app/assets/images/emoji/kissing_face.png b/vendor/assets/images/emoji/kissing_face.png similarity index 100% rename from app/assets/images/emoji/kissing_face.png rename to vendor/assets/images/emoji/kissing_face.png diff --git a/app/assets/images/emoji/kissing_heart.png b/vendor/assets/images/emoji/kissing_heart.png similarity index 100% rename from app/assets/images/emoji/kissing_heart.png rename to vendor/assets/images/emoji/kissing_heart.png diff --git a/app/assets/images/emoji/koala.png b/vendor/assets/images/emoji/koala.png similarity index 100% rename from app/assets/images/emoji/koala.png rename to vendor/assets/images/emoji/koala.png diff --git a/app/assets/images/emoji/koko.png b/vendor/assets/images/emoji/koko.png similarity index 100% rename from app/assets/images/emoji/koko.png rename to vendor/assets/images/emoji/koko.png diff --git a/app/assets/images/emoji/kr.png b/vendor/assets/images/emoji/kr.png similarity index 100% rename from app/assets/images/emoji/kr.png rename to vendor/assets/images/emoji/kr.png diff --git a/app/assets/images/emoji/large_blue_circle.png b/vendor/assets/images/emoji/large_blue_circle.png similarity index 100% rename from app/assets/images/emoji/large_blue_circle.png rename to vendor/assets/images/emoji/large_blue_circle.png diff --git a/app/assets/images/emoji/large_blue_diamond.png b/vendor/assets/images/emoji/large_blue_diamond.png similarity index 100% rename from app/assets/images/emoji/large_blue_diamond.png rename to vendor/assets/images/emoji/large_blue_diamond.png diff --git a/app/assets/images/emoji/large_orange_diamond.png b/vendor/assets/images/emoji/large_orange_diamond.png similarity index 100% rename from app/assets/images/emoji/large_orange_diamond.png rename to vendor/assets/images/emoji/large_orange_diamond.png diff --git a/app/assets/images/emoji/last_quarter_moon.png b/vendor/assets/images/emoji/last_quarter_moon.png similarity index 100% rename from app/assets/images/emoji/last_quarter_moon.png rename to vendor/assets/images/emoji/last_quarter_moon.png diff --git a/app/assets/images/emoji/last_quarter_moon_with_face.png b/vendor/assets/images/emoji/last_quarter_moon_with_face.png similarity index 100% rename from app/assets/images/emoji/last_quarter_moon_with_face.png rename to vendor/assets/images/emoji/last_quarter_moon_with_face.png diff --git a/app/assets/images/emoji/laughing.png b/vendor/assets/images/emoji/laughing.png similarity index 100% rename from app/assets/images/emoji/laughing.png rename to vendor/assets/images/emoji/laughing.png diff --git a/app/assets/images/emoji/leaves.png b/vendor/assets/images/emoji/leaves.png similarity index 100% rename from app/assets/images/emoji/leaves.png rename to vendor/assets/images/emoji/leaves.png diff --git a/app/assets/images/emoji/ledger.png b/vendor/assets/images/emoji/ledger.png similarity index 100% rename from app/assets/images/emoji/ledger.png rename to vendor/assets/images/emoji/ledger.png diff --git a/app/assets/images/emoji/left_luggage.png b/vendor/assets/images/emoji/left_luggage.png similarity index 100% rename from app/assets/images/emoji/left_luggage.png rename to vendor/assets/images/emoji/left_luggage.png diff --git a/app/assets/images/emoji/left_right_arrow.png b/vendor/assets/images/emoji/left_right_arrow.png similarity index 100% rename from app/assets/images/emoji/left_right_arrow.png rename to vendor/assets/images/emoji/left_right_arrow.png diff --git a/app/assets/images/emoji/leftwards_arrow_with_hook.png b/vendor/assets/images/emoji/leftwards_arrow_with_hook.png similarity index 100% rename from app/assets/images/emoji/leftwards_arrow_with_hook.png rename to vendor/assets/images/emoji/leftwards_arrow_with_hook.png diff --git a/app/assets/images/emoji/lemon.png b/vendor/assets/images/emoji/lemon.png similarity index 100% rename from app/assets/images/emoji/lemon.png rename to vendor/assets/images/emoji/lemon.png diff --git a/app/assets/images/emoji/leo.png b/vendor/assets/images/emoji/leo.png similarity index 100% rename from app/assets/images/emoji/leo.png rename to vendor/assets/images/emoji/leo.png diff --git a/app/assets/images/emoji/leopard.png b/vendor/assets/images/emoji/leopard.png similarity index 100% rename from app/assets/images/emoji/leopard.png rename to vendor/assets/images/emoji/leopard.png diff --git a/app/assets/images/emoji/libra.png b/vendor/assets/images/emoji/libra.png similarity index 100% rename from app/assets/images/emoji/libra.png rename to vendor/assets/images/emoji/libra.png diff --git a/app/assets/images/emoji/light_rail.png b/vendor/assets/images/emoji/light_rail.png similarity index 100% rename from app/assets/images/emoji/light_rail.png rename to vendor/assets/images/emoji/light_rail.png diff --git a/app/assets/images/emoji/link.png b/vendor/assets/images/emoji/link.png similarity index 100% rename from app/assets/images/emoji/link.png rename to vendor/assets/images/emoji/link.png diff --git a/app/assets/images/emoji/lips.png b/vendor/assets/images/emoji/lips.png similarity index 100% rename from app/assets/images/emoji/lips.png rename to vendor/assets/images/emoji/lips.png diff --git a/app/assets/images/emoji/lipstick.png b/vendor/assets/images/emoji/lipstick.png similarity index 100% rename from app/assets/images/emoji/lipstick.png rename to vendor/assets/images/emoji/lipstick.png diff --git a/app/assets/images/emoji/lock.png b/vendor/assets/images/emoji/lock.png similarity index 100% rename from app/assets/images/emoji/lock.png rename to vendor/assets/images/emoji/lock.png diff --git a/app/assets/images/emoji/lock_with_ink_pen.png b/vendor/assets/images/emoji/lock_with_ink_pen.png similarity index 100% rename from app/assets/images/emoji/lock_with_ink_pen.png rename to vendor/assets/images/emoji/lock_with_ink_pen.png diff --git a/app/assets/images/emoji/lollipop.png b/vendor/assets/images/emoji/lollipop.png similarity index 100% rename from app/assets/images/emoji/lollipop.png rename to vendor/assets/images/emoji/lollipop.png diff --git a/app/assets/images/emoji/loop.png b/vendor/assets/images/emoji/loop.png similarity index 100% rename from app/assets/images/emoji/loop.png rename to vendor/assets/images/emoji/loop.png diff --git a/app/assets/images/emoji/loudspeaker.png b/vendor/assets/images/emoji/loudspeaker.png similarity index 100% rename from app/assets/images/emoji/loudspeaker.png rename to vendor/assets/images/emoji/loudspeaker.png diff --git a/app/assets/images/emoji/love_hotel.png b/vendor/assets/images/emoji/love_hotel.png similarity index 100% rename from app/assets/images/emoji/love_hotel.png rename to vendor/assets/images/emoji/love_hotel.png diff --git a/app/assets/images/emoji/love_letter.png b/vendor/assets/images/emoji/love_letter.png similarity index 100% rename from app/assets/images/emoji/love_letter.png rename to vendor/assets/images/emoji/love_letter.png diff --git a/app/assets/images/emoji/low_brightness.png b/vendor/assets/images/emoji/low_brightness.png similarity index 100% rename from app/assets/images/emoji/low_brightness.png rename to vendor/assets/images/emoji/low_brightness.png diff --git a/app/assets/images/emoji/m.png b/vendor/assets/images/emoji/m.png similarity index 100% rename from app/assets/images/emoji/m.png rename to vendor/assets/images/emoji/m.png diff --git a/app/assets/images/emoji/mag.png b/vendor/assets/images/emoji/mag.png similarity index 100% rename from app/assets/images/emoji/mag.png rename to vendor/assets/images/emoji/mag.png diff --git a/app/assets/images/emoji/mag_right.png b/vendor/assets/images/emoji/mag_right.png similarity index 100% rename from app/assets/images/emoji/mag_right.png rename to vendor/assets/images/emoji/mag_right.png diff --git a/app/assets/images/emoji/mahjong.png b/vendor/assets/images/emoji/mahjong.png similarity index 100% rename from app/assets/images/emoji/mahjong.png rename to vendor/assets/images/emoji/mahjong.png diff --git a/app/assets/images/emoji/mailbox.png b/vendor/assets/images/emoji/mailbox.png similarity index 100% rename from app/assets/images/emoji/mailbox.png rename to vendor/assets/images/emoji/mailbox.png diff --git a/app/assets/images/emoji/mailbox_closed.png b/vendor/assets/images/emoji/mailbox_closed.png similarity index 100% rename from app/assets/images/emoji/mailbox_closed.png rename to vendor/assets/images/emoji/mailbox_closed.png diff --git a/app/assets/images/emoji/mailbox_with_mail.png b/vendor/assets/images/emoji/mailbox_with_mail.png similarity index 100% rename from app/assets/images/emoji/mailbox_with_mail.png rename to vendor/assets/images/emoji/mailbox_with_mail.png diff --git a/app/assets/images/emoji/mailbox_with_no_mail.png b/vendor/assets/images/emoji/mailbox_with_no_mail.png similarity index 100% rename from app/assets/images/emoji/mailbox_with_no_mail.png rename to vendor/assets/images/emoji/mailbox_with_no_mail.png diff --git a/app/assets/images/emoji/man.png b/vendor/assets/images/emoji/man.png similarity index 100% rename from app/assets/images/emoji/man.png rename to vendor/assets/images/emoji/man.png diff --git a/app/assets/images/emoji/man_with_gua_pi_mao.png b/vendor/assets/images/emoji/man_with_gua_pi_mao.png similarity index 100% rename from app/assets/images/emoji/man_with_gua_pi_mao.png rename to vendor/assets/images/emoji/man_with_gua_pi_mao.png diff --git a/app/assets/images/emoji/man_with_turban.png b/vendor/assets/images/emoji/man_with_turban.png similarity index 100% rename from app/assets/images/emoji/man_with_turban.png rename to vendor/assets/images/emoji/man_with_turban.png diff --git a/app/assets/images/emoji/mans_shoe.png b/vendor/assets/images/emoji/mans_shoe.png similarity index 100% rename from app/assets/images/emoji/mans_shoe.png rename to vendor/assets/images/emoji/mans_shoe.png diff --git a/app/assets/images/emoji/maple_leaf.png b/vendor/assets/images/emoji/maple_leaf.png similarity index 100% rename from app/assets/images/emoji/maple_leaf.png rename to vendor/assets/images/emoji/maple_leaf.png diff --git a/app/assets/images/emoji/mask.png b/vendor/assets/images/emoji/mask.png similarity index 100% rename from app/assets/images/emoji/mask.png rename to vendor/assets/images/emoji/mask.png diff --git a/app/assets/images/emoji/massage.png b/vendor/assets/images/emoji/massage.png similarity index 100% rename from app/assets/images/emoji/massage.png rename to vendor/assets/images/emoji/massage.png diff --git a/app/assets/images/emoji/meat_on_bone.png b/vendor/assets/images/emoji/meat_on_bone.png similarity index 100% rename from app/assets/images/emoji/meat_on_bone.png rename to vendor/assets/images/emoji/meat_on_bone.png diff --git a/app/assets/images/emoji/mega.png b/vendor/assets/images/emoji/mega.png similarity index 100% rename from app/assets/images/emoji/mega.png rename to vendor/assets/images/emoji/mega.png diff --git a/app/assets/images/emoji/melon.png b/vendor/assets/images/emoji/melon.png similarity index 100% rename from app/assets/images/emoji/melon.png rename to vendor/assets/images/emoji/melon.png diff --git a/app/assets/images/emoji/memo.png b/vendor/assets/images/emoji/memo.png similarity index 100% rename from app/assets/images/emoji/memo.png rename to vendor/assets/images/emoji/memo.png diff --git a/app/assets/images/emoji/mens.png b/vendor/assets/images/emoji/mens.png similarity index 100% rename from app/assets/images/emoji/mens.png rename to vendor/assets/images/emoji/mens.png diff --git a/app/assets/images/emoji/metal.png b/vendor/assets/images/emoji/metal.png similarity index 100% rename from app/assets/images/emoji/metal.png rename to vendor/assets/images/emoji/metal.png diff --git a/app/assets/images/emoji/metro.png b/vendor/assets/images/emoji/metro.png similarity index 100% rename from app/assets/images/emoji/metro.png rename to vendor/assets/images/emoji/metro.png diff --git a/app/assets/images/emoji/microphone.png b/vendor/assets/images/emoji/microphone.png similarity index 100% rename from app/assets/images/emoji/microphone.png rename to vendor/assets/images/emoji/microphone.png diff --git a/app/assets/images/emoji/microscope.png b/vendor/assets/images/emoji/microscope.png similarity index 100% rename from app/assets/images/emoji/microscope.png rename to vendor/assets/images/emoji/microscope.png diff --git a/app/assets/images/emoji/milky_way.png b/vendor/assets/images/emoji/milky_way.png similarity index 100% rename from app/assets/images/emoji/milky_way.png rename to vendor/assets/images/emoji/milky_way.png diff --git a/app/assets/images/emoji/minibus.png b/vendor/assets/images/emoji/minibus.png similarity index 100% rename from app/assets/images/emoji/minibus.png rename to vendor/assets/images/emoji/minibus.png diff --git a/app/assets/images/emoji/minidisc.png b/vendor/assets/images/emoji/minidisc.png similarity index 100% rename from app/assets/images/emoji/minidisc.png rename to vendor/assets/images/emoji/minidisc.png diff --git a/app/assets/images/emoji/mobile_phone_off.png b/vendor/assets/images/emoji/mobile_phone_off.png similarity index 100% rename from app/assets/images/emoji/mobile_phone_off.png rename to vendor/assets/images/emoji/mobile_phone_off.png diff --git a/app/assets/images/emoji/money_with_wings.png b/vendor/assets/images/emoji/money_with_wings.png similarity index 100% rename from app/assets/images/emoji/money_with_wings.png rename to vendor/assets/images/emoji/money_with_wings.png diff --git a/app/assets/images/emoji/moneybag.png b/vendor/assets/images/emoji/moneybag.png similarity index 100% rename from app/assets/images/emoji/moneybag.png rename to vendor/assets/images/emoji/moneybag.png diff --git a/app/assets/images/emoji/monkey.png b/vendor/assets/images/emoji/monkey.png similarity index 100% rename from app/assets/images/emoji/monkey.png rename to vendor/assets/images/emoji/monkey.png diff --git a/app/assets/images/emoji/monkey_face.png b/vendor/assets/images/emoji/monkey_face.png similarity index 100% rename from app/assets/images/emoji/monkey_face.png rename to vendor/assets/images/emoji/monkey_face.png diff --git a/app/assets/images/emoji/monorail.png b/vendor/assets/images/emoji/monorail.png similarity index 100% rename from app/assets/images/emoji/monorail.png rename to vendor/assets/images/emoji/monorail.png diff --git a/app/assets/images/emoji/moon.png b/vendor/assets/images/emoji/moon.png similarity index 100% rename from app/assets/images/emoji/moon.png rename to vendor/assets/images/emoji/moon.png diff --git a/app/assets/images/emoji/mortar_board.png b/vendor/assets/images/emoji/mortar_board.png similarity index 100% rename from app/assets/images/emoji/mortar_board.png rename to vendor/assets/images/emoji/mortar_board.png diff --git a/app/assets/images/emoji/mount_fuji.png b/vendor/assets/images/emoji/mount_fuji.png similarity index 100% rename from app/assets/images/emoji/mount_fuji.png rename to vendor/assets/images/emoji/mount_fuji.png diff --git a/app/assets/images/emoji/mountain_bicyclist.png b/vendor/assets/images/emoji/mountain_bicyclist.png similarity index 100% rename from app/assets/images/emoji/mountain_bicyclist.png rename to vendor/assets/images/emoji/mountain_bicyclist.png diff --git a/app/assets/images/emoji/mountain_cableway.png b/vendor/assets/images/emoji/mountain_cableway.png similarity index 100% rename from app/assets/images/emoji/mountain_cableway.png rename to vendor/assets/images/emoji/mountain_cableway.png diff --git a/app/assets/images/emoji/mountain_railway.png b/vendor/assets/images/emoji/mountain_railway.png similarity index 100% rename from app/assets/images/emoji/mountain_railway.png rename to vendor/assets/images/emoji/mountain_railway.png diff --git a/app/assets/images/emoji/mouse.png b/vendor/assets/images/emoji/mouse.png similarity index 100% rename from app/assets/images/emoji/mouse.png rename to vendor/assets/images/emoji/mouse.png diff --git a/app/assets/images/emoji/mouse2.png b/vendor/assets/images/emoji/mouse2.png similarity index 100% rename from app/assets/images/emoji/mouse2.png rename to vendor/assets/images/emoji/mouse2.png diff --git a/app/assets/images/emoji/movie_camera.png b/vendor/assets/images/emoji/movie_camera.png similarity index 100% rename from app/assets/images/emoji/movie_camera.png rename to vendor/assets/images/emoji/movie_camera.png diff --git a/app/assets/images/emoji/moyai.png b/vendor/assets/images/emoji/moyai.png similarity index 100% rename from app/assets/images/emoji/moyai.png rename to vendor/assets/images/emoji/moyai.png diff --git a/app/assets/images/emoji/muscle.png b/vendor/assets/images/emoji/muscle.png similarity index 100% rename from app/assets/images/emoji/muscle.png rename to vendor/assets/images/emoji/muscle.png diff --git a/app/assets/images/emoji/mushroom.png b/vendor/assets/images/emoji/mushroom.png similarity index 100% rename from app/assets/images/emoji/mushroom.png rename to vendor/assets/images/emoji/mushroom.png diff --git a/app/assets/images/emoji/musical_keyboard.png b/vendor/assets/images/emoji/musical_keyboard.png similarity index 100% rename from app/assets/images/emoji/musical_keyboard.png rename to vendor/assets/images/emoji/musical_keyboard.png diff --git a/app/assets/images/emoji/musical_note.png b/vendor/assets/images/emoji/musical_note.png similarity index 100% rename from app/assets/images/emoji/musical_note.png rename to vendor/assets/images/emoji/musical_note.png diff --git a/app/assets/images/emoji/musical_score.png b/vendor/assets/images/emoji/musical_score.png similarity index 100% rename from app/assets/images/emoji/musical_score.png rename to vendor/assets/images/emoji/musical_score.png diff --git a/app/assets/images/emoji/mute.png b/vendor/assets/images/emoji/mute.png similarity index 100% rename from app/assets/images/emoji/mute.png rename to vendor/assets/images/emoji/mute.png diff --git a/app/assets/images/emoji/nail_care.png b/vendor/assets/images/emoji/nail_care.png similarity index 100% rename from app/assets/images/emoji/nail_care.png rename to vendor/assets/images/emoji/nail_care.png diff --git a/app/assets/images/emoji/name_badge.png b/vendor/assets/images/emoji/name_badge.png similarity index 100% rename from app/assets/images/emoji/name_badge.png rename to vendor/assets/images/emoji/name_badge.png diff --git a/app/assets/images/emoji/neckbeard.png b/vendor/assets/images/emoji/neckbeard.png similarity index 100% rename from app/assets/images/emoji/neckbeard.png rename to vendor/assets/images/emoji/neckbeard.png diff --git a/app/assets/images/emoji/necktie.png b/vendor/assets/images/emoji/necktie.png similarity index 100% rename from app/assets/images/emoji/necktie.png rename to vendor/assets/images/emoji/necktie.png diff --git a/app/assets/images/emoji/negative_squared_cross_mark.png b/vendor/assets/images/emoji/negative_squared_cross_mark.png similarity index 100% rename from app/assets/images/emoji/negative_squared_cross_mark.png rename to vendor/assets/images/emoji/negative_squared_cross_mark.png diff --git a/app/assets/images/emoji/neutral_face.png b/vendor/assets/images/emoji/neutral_face.png similarity index 100% rename from app/assets/images/emoji/neutral_face.png rename to vendor/assets/images/emoji/neutral_face.png diff --git a/app/assets/images/emoji/new.png b/vendor/assets/images/emoji/new.png similarity index 100% rename from app/assets/images/emoji/new.png rename to vendor/assets/images/emoji/new.png diff --git a/app/assets/images/emoji/new_moon.png b/vendor/assets/images/emoji/new_moon.png similarity index 100% rename from app/assets/images/emoji/new_moon.png rename to vendor/assets/images/emoji/new_moon.png diff --git a/app/assets/images/emoji/new_moon_with_face.png b/vendor/assets/images/emoji/new_moon_with_face.png similarity index 100% rename from app/assets/images/emoji/new_moon_with_face.png rename to vendor/assets/images/emoji/new_moon_with_face.png diff --git a/app/assets/images/emoji/newspaper.png b/vendor/assets/images/emoji/newspaper.png similarity index 100% rename from app/assets/images/emoji/newspaper.png rename to vendor/assets/images/emoji/newspaper.png diff --git a/app/assets/images/emoji/ng.png b/vendor/assets/images/emoji/ng.png similarity index 100% rename from app/assets/images/emoji/ng.png rename to vendor/assets/images/emoji/ng.png diff --git a/app/assets/images/emoji/nine.png b/vendor/assets/images/emoji/nine.png similarity index 100% rename from app/assets/images/emoji/nine.png rename to vendor/assets/images/emoji/nine.png diff --git a/app/assets/images/emoji/no_bell.png b/vendor/assets/images/emoji/no_bell.png similarity index 100% rename from app/assets/images/emoji/no_bell.png rename to vendor/assets/images/emoji/no_bell.png diff --git a/app/assets/images/emoji/no_bicycles.png b/vendor/assets/images/emoji/no_bicycles.png similarity index 100% rename from app/assets/images/emoji/no_bicycles.png rename to vendor/assets/images/emoji/no_bicycles.png diff --git a/app/assets/images/emoji/no_entry.png b/vendor/assets/images/emoji/no_entry.png similarity index 100% rename from app/assets/images/emoji/no_entry.png rename to vendor/assets/images/emoji/no_entry.png diff --git a/app/assets/images/emoji/no_entry_sign.png b/vendor/assets/images/emoji/no_entry_sign.png similarity index 100% rename from app/assets/images/emoji/no_entry_sign.png rename to vendor/assets/images/emoji/no_entry_sign.png diff --git a/app/assets/images/emoji/no_good.png b/vendor/assets/images/emoji/no_good.png similarity index 100% rename from app/assets/images/emoji/no_good.png rename to vendor/assets/images/emoji/no_good.png diff --git a/app/assets/images/emoji/no_mobile_phones.png b/vendor/assets/images/emoji/no_mobile_phones.png similarity index 100% rename from app/assets/images/emoji/no_mobile_phones.png rename to vendor/assets/images/emoji/no_mobile_phones.png diff --git a/app/assets/images/emoji/no_mouth.png b/vendor/assets/images/emoji/no_mouth.png similarity index 100% rename from app/assets/images/emoji/no_mouth.png rename to vendor/assets/images/emoji/no_mouth.png diff --git a/app/assets/images/emoji/no_pedestrians.png b/vendor/assets/images/emoji/no_pedestrians.png similarity index 100% rename from app/assets/images/emoji/no_pedestrians.png rename to vendor/assets/images/emoji/no_pedestrians.png diff --git a/app/assets/images/emoji/no_smoking.png b/vendor/assets/images/emoji/no_smoking.png similarity index 100% rename from app/assets/images/emoji/no_smoking.png rename to vendor/assets/images/emoji/no_smoking.png diff --git a/app/assets/images/emoji/non-potable_water.png b/vendor/assets/images/emoji/non-potable_water.png similarity index 100% rename from app/assets/images/emoji/non-potable_water.png rename to vendor/assets/images/emoji/non-potable_water.png diff --git a/app/assets/images/emoji/nose.png b/vendor/assets/images/emoji/nose.png similarity index 100% rename from app/assets/images/emoji/nose.png rename to vendor/assets/images/emoji/nose.png diff --git a/app/assets/images/emoji/notebook.png b/vendor/assets/images/emoji/notebook.png similarity index 100% rename from app/assets/images/emoji/notebook.png rename to vendor/assets/images/emoji/notebook.png diff --git a/app/assets/images/emoji/notebook_with_decorative_cover.png b/vendor/assets/images/emoji/notebook_with_decorative_cover.png similarity index 100% rename from app/assets/images/emoji/notebook_with_decorative_cover.png rename to vendor/assets/images/emoji/notebook_with_decorative_cover.png diff --git a/app/assets/images/emoji/notes.png b/vendor/assets/images/emoji/notes.png similarity index 100% rename from app/assets/images/emoji/notes.png rename to vendor/assets/images/emoji/notes.png diff --git a/app/assets/images/emoji/nut_and_bolt.png b/vendor/assets/images/emoji/nut_and_bolt.png similarity index 100% rename from app/assets/images/emoji/nut_and_bolt.png rename to vendor/assets/images/emoji/nut_and_bolt.png diff --git a/app/assets/images/emoji/o.png b/vendor/assets/images/emoji/o.png similarity index 100% rename from app/assets/images/emoji/o.png rename to vendor/assets/images/emoji/o.png diff --git a/app/assets/images/emoji/o2.png b/vendor/assets/images/emoji/o2.png similarity index 100% rename from app/assets/images/emoji/o2.png rename to vendor/assets/images/emoji/o2.png diff --git a/app/assets/images/emoji/ocean.png b/vendor/assets/images/emoji/ocean.png similarity index 100% rename from app/assets/images/emoji/ocean.png rename to vendor/assets/images/emoji/ocean.png diff --git a/app/assets/images/emoji/octocat.png b/vendor/assets/images/emoji/octocat.png similarity index 100% rename from app/assets/images/emoji/octocat.png rename to vendor/assets/images/emoji/octocat.png diff --git a/app/assets/images/emoji/octopus.png b/vendor/assets/images/emoji/octopus.png similarity index 100% rename from app/assets/images/emoji/octopus.png rename to vendor/assets/images/emoji/octopus.png diff --git a/app/assets/images/emoji/oden.png b/vendor/assets/images/emoji/oden.png similarity index 100% rename from app/assets/images/emoji/oden.png rename to vendor/assets/images/emoji/oden.png diff --git a/app/assets/images/emoji/office.png b/vendor/assets/images/emoji/office.png similarity index 100% rename from app/assets/images/emoji/office.png rename to vendor/assets/images/emoji/office.png diff --git a/app/assets/images/emoji/ok.png b/vendor/assets/images/emoji/ok.png similarity index 100% rename from app/assets/images/emoji/ok.png rename to vendor/assets/images/emoji/ok.png diff --git a/app/assets/images/emoji/ok_hand.png b/vendor/assets/images/emoji/ok_hand.png similarity index 100% rename from app/assets/images/emoji/ok_hand.png rename to vendor/assets/images/emoji/ok_hand.png diff --git a/app/assets/images/emoji/ok_woman.png b/vendor/assets/images/emoji/ok_woman.png similarity index 100% rename from app/assets/images/emoji/ok_woman.png rename to vendor/assets/images/emoji/ok_woman.png diff --git a/app/assets/images/emoji/older_man.png b/vendor/assets/images/emoji/older_man.png similarity index 100% rename from app/assets/images/emoji/older_man.png rename to vendor/assets/images/emoji/older_man.png diff --git a/app/assets/images/emoji/older_woman.png b/vendor/assets/images/emoji/older_woman.png similarity index 100% rename from app/assets/images/emoji/older_woman.png rename to vendor/assets/images/emoji/older_woman.png diff --git a/app/assets/images/emoji/on.png b/vendor/assets/images/emoji/on.png similarity index 100% rename from app/assets/images/emoji/on.png rename to vendor/assets/images/emoji/on.png diff --git a/app/assets/images/emoji/oncoming_automobile.png b/vendor/assets/images/emoji/oncoming_automobile.png similarity index 100% rename from app/assets/images/emoji/oncoming_automobile.png rename to vendor/assets/images/emoji/oncoming_automobile.png diff --git a/app/assets/images/emoji/oncoming_bus.png b/vendor/assets/images/emoji/oncoming_bus.png similarity index 100% rename from app/assets/images/emoji/oncoming_bus.png rename to vendor/assets/images/emoji/oncoming_bus.png diff --git a/app/assets/images/emoji/oncoming_police_car.png b/vendor/assets/images/emoji/oncoming_police_car.png similarity index 100% rename from app/assets/images/emoji/oncoming_police_car.png rename to vendor/assets/images/emoji/oncoming_police_car.png diff --git a/app/assets/images/emoji/oncoming_taxi.png b/vendor/assets/images/emoji/oncoming_taxi.png similarity index 100% rename from app/assets/images/emoji/oncoming_taxi.png rename to vendor/assets/images/emoji/oncoming_taxi.png diff --git a/app/assets/images/emoji/one.png b/vendor/assets/images/emoji/one.png similarity index 100% rename from app/assets/images/emoji/one.png rename to vendor/assets/images/emoji/one.png diff --git a/app/assets/images/emoji/open_file_folder.png b/vendor/assets/images/emoji/open_file_folder.png similarity index 100% rename from app/assets/images/emoji/open_file_folder.png rename to vendor/assets/images/emoji/open_file_folder.png diff --git a/app/assets/images/emoji/open_hands.png b/vendor/assets/images/emoji/open_hands.png similarity index 100% rename from app/assets/images/emoji/open_hands.png rename to vendor/assets/images/emoji/open_hands.png diff --git a/app/assets/images/emoji/ophiuchus.png b/vendor/assets/images/emoji/ophiuchus.png similarity index 100% rename from app/assets/images/emoji/ophiuchus.png rename to vendor/assets/images/emoji/ophiuchus.png diff --git a/app/assets/images/emoji/orange_book.png b/vendor/assets/images/emoji/orange_book.png similarity index 100% rename from app/assets/images/emoji/orange_book.png rename to vendor/assets/images/emoji/orange_book.png diff --git a/app/assets/images/emoji/outbox_tray.png b/vendor/assets/images/emoji/outbox_tray.png similarity index 100% rename from app/assets/images/emoji/outbox_tray.png rename to vendor/assets/images/emoji/outbox_tray.png diff --git a/app/assets/images/emoji/ox.png b/vendor/assets/images/emoji/ox.png similarity index 100% rename from app/assets/images/emoji/ox.png rename to vendor/assets/images/emoji/ox.png diff --git a/app/assets/images/emoji/page_facing_up.png b/vendor/assets/images/emoji/page_facing_up.png similarity index 100% rename from app/assets/images/emoji/page_facing_up.png rename to vendor/assets/images/emoji/page_facing_up.png diff --git a/app/assets/images/emoji/page_with_curl.png b/vendor/assets/images/emoji/page_with_curl.png similarity index 100% rename from app/assets/images/emoji/page_with_curl.png rename to vendor/assets/images/emoji/page_with_curl.png diff --git a/app/assets/images/emoji/pager.png b/vendor/assets/images/emoji/pager.png similarity index 100% rename from app/assets/images/emoji/pager.png rename to vendor/assets/images/emoji/pager.png diff --git a/app/assets/images/emoji/palm_tree.png b/vendor/assets/images/emoji/palm_tree.png similarity index 100% rename from app/assets/images/emoji/palm_tree.png rename to vendor/assets/images/emoji/palm_tree.png diff --git a/app/assets/images/emoji/panda_face.png b/vendor/assets/images/emoji/panda_face.png similarity index 100% rename from app/assets/images/emoji/panda_face.png rename to vendor/assets/images/emoji/panda_face.png diff --git a/app/assets/images/emoji/paperclip.png b/vendor/assets/images/emoji/paperclip.png similarity index 100% rename from app/assets/images/emoji/paperclip.png rename to vendor/assets/images/emoji/paperclip.png diff --git a/app/assets/images/emoji/parking.png b/vendor/assets/images/emoji/parking.png similarity index 100% rename from app/assets/images/emoji/parking.png rename to vendor/assets/images/emoji/parking.png diff --git a/app/assets/images/emoji/part_alternation_mark.png b/vendor/assets/images/emoji/part_alternation_mark.png similarity index 100% rename from app/assets/images/emoji/part_alternation_mark.png rename to vendor/assets/images/emoji/part_alternation_mark.png diff --git a/app/assets/images/emoji/partly_sunny.png b/vendor/assets/images/emoji/partly_sunny.png similarity index 100% rename from app/assets/images/emoji/partly_sunny.png rename to vendor/assets/images/emoji/partly_sunny.png diff --git a/app/assets/images/emoji/passport_control.png b/vendor/assets/images/emoji/passport_control.png similarity index 100% rename from app/assets/images/emoji/passport_control.png rename to vendor/assets/images/emoji/passport_control.png diff --git a/app/assets/images/emoji/paw_prints.png b/vendor/assets/images/emoji/paw_prints.png similarity index 100% rename from app/assets/images/emoji/paw_prints.png rename to vendor/assets/images/emoji/paw_prints.png diff --git a/app/assets/images/emoji/peach.png b/vendor/assets/images/emoji/peach.png similarity index 100% rename from app/assets/images/emoji/peach.png rename to vendor/assets/images/emoji/peach.png diff --git a/app/assets/images/emoji/pear.png b/vendor/assets/images/emoji/pear.png similarity index 100% rename from app/assets/images/emoji/pear.png rename to vendor/assets/images/emoji/pear.png diff --git a/app/assets/images/emoji/pencil.png b/vendor/assets/images/emoji/pencil.png similarity index 100% rename from app/assets/images/emoji/pencil.png rename to vendor/assets/images/emoji/pencil.png diff --git a/app/assets/images/emoji/pencil2.png b/vendor/assets/images/emoji/pencil2.png similarity index 100% rename from app/assets/images/emoji/pencil2.png rename to vendor/assets/images/emoji/pencil2.png diff --git a/app/assets/images/emoji/penguin.png b/vendor/assets/images/emoji/penguin.png similarity index 100% rename from app/assets/images/emoji/penguin.png rename to vendor/assets/images/emoji/penguin.png diff --git a/app/assets/images/emoji/pensive.png b/vendor/assets/images/emoji/pensive.png similarity index 100% rename from app/assets/images/emoji/pensive.png rename to vendor/assets/images/emoji/pensive.png diff --git a/app/assets/images/emoji/performing_arts.png b/vendor/assets/images/emoji/performing_arts.png similarity index 100% rename from app/assets/images/emoji/performing_arts.png rename to vendor/assets/images/emoji/performing_arts.png diff --git a/app/assets/images/emoji/persevere.png b/vendor/assets/images/emoji/persevere.png similarity index 100% rename from app/assets/images/emoji/persevere.png rename to vendor/assets/images/emoji/persevere.png diff --git a/app/assets/images/emoji/person_frowning.png b/vendor/assets/images/emoji/person_frowning.png similarity index 100% rename from app/assets/images/emoji/person_frowning.png rename to vendor/assets/images/emoji/person_frowning.png diff --git a/app/assets/images/emoji/person_with_blond_hair.png b/vendor/assets/images/emoji/person_with_blond_hair.png similarity index 100% rename from app/assets/images/emoji/person_with_blond_hair.png rename to vendor/assets/images/emoji/person_with_blond_hair.png diff --git a/app/assets/images/emoji/person_with_pouting_face.png b/vendor/assets/images/emoji/person_with_pouting_face.png similarity index 100% rename from app/assets/images/emoji/person_with_pouting_face.png rename to vendor/assets/images/emoji/person_with_pouting_face.png diff --git a/app/assets/images/emoji/phone.png b/vendor/assets/images/emoji/phone.png similarity index 100% rename from app/assets/images/emoji/phone.png rename to vendor/assets/images/emoji/phone.png diff --git a/app/assets/images/emoji/pig.png b/vendor/assets/images/emoji/pig.png similarity index 100% rename from app/assets/images/emoji/pig.png rename to vendor/assets/images/emoji/pig.png diff --git a/app/assets/images/emoji/pig2.png b/vendor/assets/images/emoji/pig2.png similarity index 100% rename from app/assets/images/emoji/pig2.png rename to vendor/assets/images/emoji/pig2.png diff --git a/app/assets/images/emoji/pig_nose.png b/vendor/assets/images/emoji/pig_nose.png similarity index 100% rename from app/assets/images/emoji/pig_nose.png rename to vendor/assets/images/emoji/pig_nose.png diff --git a/app/assets/images/emoji/pill.png b/vendor/assets/images/emoji/pill.png similarity index 100% rename from app/assets/images/emoji/pill.png rename to vendor/assets/images/emoji/pill.png diff --git a/app/assets/images/emoji/pineapple.png b/vendor/assets/images/emoji/pineapple.png similarity index 100% rename from app/assets/images/emoji/pineapple.png rename to vendor/assets/images/emoji/pineapple.png diff --git a/app/assets/images/emoji/pisces.png b/vendor/assets/images/emoji/pisces.png similarity index 100% rename from app/assets/images/emoji/pisces.png rename to vendor/assets/images/emoji/pisces.png diff --git a/app/assets/images/emoji/pizza.png b/vendor/assets/images/emoji/pizza.png similarity index 100% rename from app/assets/images/emoji/pizza.png rename to vendor/assets/images/emoji/pizza.png diff --git a/app/assets/images/emoji/plus1.png b/vendor/assets/images/emoji/plus1.png similarity index 100% rename from app/assets/images/emoji/plus1.png rename to vendor/assets/images/emoji/plus1.png diff --git a/app/assets/images/emoji/point_down.png b/vendor/assets/images/emoji/point_down.png similarity index 100% rename from app/assets/images/emoji/point_down.png rename to vendor/assets/images/emoji/point_down.png diff --git a/app/assets/images/emoji/point_left.png b/vendor/assets/images/emoji/point_left.png similarity index 100% rename from app/assets/images/emoji/point_left.png rename to vendor/assets/images/emoji/point_left.png diff --git a/app/assets/images/emoji/point_right.png b/vendor/assets/images/emoji/point_right.png similarity index 100% rename from app/assets/images/emoji/point_right.png rename to vendor/assets/images/emoji/point_right.png diff --git a/app/assets/images/emoji/point_up.png b/vendor/assets/images/emoji/point_up.png similarity index 100% rename from app/assets/images/emoji/point_up.png rename to vendor/assets/images/emoji/point_up.png diff --git a/app/assets/images/emoji/point_up_2.png b/vendor/assets/images/emoji/point_up_2.png similarity index 100% rename from app/assets/images/emoji/point_up_2.png rename to vendor/assets/images/emoji/point_up_2.png diff --git a/app/assets/images/emoji/police_car.png b/vendor/assets/images/emoji/police_car.png similarity index 100% rename from app/assets/images/emoji/police_car.png rename to vendor/assets/images/emoji/police_car.png diff --git a/app/assets/images/emoji/poodle.png b/vendor/assets/images/emoji/poodle.png similarity index 100% rename from app/assets/images/emoji/poodle.png rename to vendor/assets/images/emoji/poodle.png diff --git a/app/assets/images/emoji/poop.png b/vendor/assets/images/emoji/poop.png similarity index 100% rename from app/assets/images/emoji/poop.png rename to vendor/assets/images/emoji/poop.png diff --git a/app/assets/images/emoji/post_office.png b/vendor/assets/images/emoji/post_office.png similarity index 100% rename from app/assets/images/emoji/post_office.png rename to vendor/assets/images/emoji/post_office.png diff --git a/app/assets/images/emoji/postal_horn.png b/vendor/assets/images/emoji/postal_horn.png similarity index 100% rename from app/assets/images/emoji/postal_horn.png rename to vendor/assets/images/emoji/postal_horn.png diff --git a/app/assets/images/emoji/postbox.png b/vendor/assets/images/emoji/postbox.png similarity index 100% rename from app/assets/images/emoji/postbox.png rename to vendor/assets/images/emoji/postbox.png diff --git a/app/assets/images/emoji/potable_water.png b/vendor/assets/images/emoji/potable_water.png similarity index 100% rename from app/assets/images/emoji/potable_water.png rename to vendor/assets/images/emoji/potable_water.png diff --git a/app/assets/images/emoji/pouch.png b/vendor/assets/images/emoji/pouch.png similarity index 100% rename from app/assets/images/emoji/pouch.png rename to vendor/assets/images/emoji/pouch.png diff --git a/app/assets/images/emoji/poultry_leg.png b/vendor/assets/images/emoji/poultry_leg.png similarity index 100% rename from app/assets/images/emoji/poultry_leg.png rename to vendor/assets/images/emoji/poultry_leg.png diff --git a/app/assets/images/emoji/pound.png b/vendor/assets/images/emoji/pound.png similarity index 100% rename from app/assets/images/emoji/pound.png rename to vendor/assets/images/emoji/pound.png diff --git a/app/assets/images/emoji/pouting_cat.png b/vendor/assets/images/emoji/pouting_cat.png similarity index 100% rename from app/assets/images/emoji/pouting_cat.png rename to vendor/assets/images/emoji/pouting_cat.png diff --git a/app/assets/images/emoji/pray.png b/vendor/assets/images/emoji/pray.png similarity index 100% rename from app/assets/images/emoji/pray.png rename to vendor/assets/images/emoji/pray.png diff --git a/app/assets/images/emoji/princess.png b/vendor/assets/images/emoji/princess.png similarity index 100% rename from app/assets/images/emoji/princess.png rename to vendor/assets/images/emoji/princess.png diff --git a/app/assets/images/emoji/punch.png b/vendor/assets/images/emoji/punch.png similarity index 100% rename from app/assets/images/emoji/punch.png rename to vendor/assets/images/emoji/punch.png diff --git a/app/assets/images/emoji/purple_heart.png b/vendor/assets/images/emoji/purple_heart.png similarity index 100% rename from app/assets/images/emoji/purple_heart.png rename to vendor/assets/images/emoji/purple_heart.png diff --git a/app/assets/images/emoji/purse.png b/vendor/assets/images/emoji/purse.png similarity index 100% rename from app/assets/images/emoji/purse.png rename to vendor/assets/images/emoji/purse.png diff --git a/app/assets/images/emoji/pushpin.png b/vendor/assets/images/emoji/pushpin.png similarity index 100% rename from app/assets/images/emoji/pushpin.png rename to vendor/assets/images/emoji/pushpin.png diff --git a/app/assets/images/emoji/put_litter_in_its_place.png b/vendor/assets/images/emoji/put_litter_in_its_place.png similarity index 100% rename from app/assets/images/emoji/put_litter_in_its_place.png rename to vendor/assets/images/emoji/put_litter_in_its_place.png diff --git a/app/assets/images/emoji/question.png b/vendor/assets/images/emoji/question.png similarity index 100% rename from app/assets/images/emoji/question.png rename to vendor/assets/images/emoji/question.png diff --git a/app/assets/images/emoji/rabbit.png b/vendor/assets/images/emoji/rabbit.png similarity index 100% rename from app/assets/images/emoji/rabbit.png rename to vendor/assets/images/emoji/rabbit.png diff --git a/app/assets/images/emoji/rabbit2.png b/vendor/assets/images/emoji/rabbit2.png similarity index 100% rename from app/assets/images/emoji/rabbit2.png rename to vendor/assets/images/emoji/rabbit2.png diff --git a/app/assets/images/emoji/racehorse.png b/vendor/assets/images/emoji/racehorse.png similarity index 100% rename from app/assets/images/emoji/racehorse.png rename to vendor/assets/images/emoji/racehorse.png diff --git a/app/assets/images/emoji/radio.png b/vendor/assets/images/emoji/radio.png similarity index 100% rename from app/assets/images/emoji/radio.png rename to vendor/assets/images/emoji/radio.png diff --git a/app/assets/images/emoji/radio_button.png b/vendor/assets/images/emoji/radio_button.png similarity index 100% rename from app/assets/images/emoji/radio_button.png rename to vendor/assets/images/emoji/radio_button.png diff --git a/app/assets/images/emoji/rage.png b/vendor/assets/images/emoji/rage.png similarity index 100% rename from app/assets/images/emoji/rage.png rename to vendor/assets/images/emoji/rage.png diff --git a/app/assets/images/emoji/rage1.png b/vendor/assets/images/emoji/rage1.png similarity index 100% rename from app/assets/images/emoji/rage1.png rename to vendor/assets/images/emoji/rage1.png diff --git a/app/assets/images/emoji/rage2.png b/vendor/assets/images/emoji/rage2.png similarity index 100% rename from app/assets/images/emoji/rage2.png rename to vendor/assets/images/emoji/rage2.png diff --git a/app/assets/images/emoji/rage3.png b/vendor/assets/images/emoji/rage3.png similarity index 100% rename from app/assets/images/emoji/rage3.png rename to vendor/assets/images/emoji/rage3.png diff --git a/app/assets/images/emoji/rage4.png b/vendor/assets/images/emoji/rage4.png similarity index 100% rename from app/assets/images/emoji/rage4.png rename to vendor/assets/images/emoji/rage4.png diff --git a/app/assets/images/emoji/railway_car.png b/vendor/assets/images/emoji/railway_car.png similarity index 100% rename from app/assets/images/emoji/railway_car.png rename to vendor/assets/images/emoji/railway_car.png diff --git a/app/assets/images/emoji/rainbow.png b/vendor/assets/images/emoji/rainbow.png similarity index 100% rename from app/assets/images/emoji/rainbow.png rename to vendor/assets/images/emoji/rainbow.png diff --git a/app/assets/images/emoji/raised_hand.png b/vendor/assets/images/emoji/raised_hand.png similarity index 100% rename from app/assets/images/emoji/raised_hand.png rename to vendor/assets/images/emoji/raised_hand.png diff --git a/app/assets/images/emoji/raised_hands.png b/vendor/assets/images/emoji/raised_hands.png similarity index 100% rename from app/assets/images/emoji/raised_hands.png rename to vendor/assets/images/emoji/raised_hands.png diff --git a/app/assets/images/emoji/ram.png b/vendor/assets/images/emoji/ram.png similarity index 100% rename from app/assets/images/emoji/ram.png rename to vendor/assets/images/emoji/ram.png diff --git a/app/assets/images/emoji/ramen.png b/vendor/assets/images/emoji/ramen.png similarity index 100% rename from app/assets/images/emoji/ramen.png rename to vendor/assets/images/emoji/ramen.png diff --git a/app/assets/images/emoji/rat.png b/vendor/assets/images/emoji/rat.png similarity index 100% rename from app/assets/images/emoji/rat.png rename to vendor/assets/images/emoji/rat.png diff --git a/app/assets/images/emoji/recycle.png b/vendor/assets/images/emoji/recycle.png similarity index 100% rename from app/assets/images/emoji/recycle.png rename to vendor/assets/images/emoji/recycle.png diff --git a/app/assets/images/emoji/red_car.png b/vendor/assets/images/emoji/red_car.png similarity index 100% rename from app/assets/images/emoji/red_car.png rename to vendor/assets/images/emoji/red_car.png diff --git a/app/assets/images/emoji/red_circle.png b/vendor/assets/images/emoji/red_circle.png similarity index 100% rename from app/assets/images/emoji/red_circle.png rename to vendor/assets/images/emoji/red_circle.png diff --git a/app/assets/images/emoji/registered.png b/vendor/assets/images/emoji/registered.png similarity index 100% rename from app/assets/images/emoji/registered.png rename to vendor/assets/images/emoji/registered.png diff --git a/app/assets/images/emoji/relaxed.png b/vendor/assets/images/emoji/relaxed.png similarity index 100% rename from app/assets/images/emoji/relaxed.png rename to vendor/assets/images/emoji/relaxed.png diff --git a/app/assets/images/emoji/relieved.png b/vendor/assets/images/emoji/relieved.png similarity index 100% rename from app/assets/images/emoji/relieved.png rename to vendor/assets/images/emoji/relieved.png diff --git a/app/assets/images/emoji/repeat.png b/vendor/assets/images/emoji/repeat.png similarity index 100% rename from app/assets/images/emoji/repeat.png rename to vendor/assets/images/emoji/repeat.png diff --git a/app/assets/images/emoji/repeat_one.png b/vendor/assets/images/emoji/repeat_one.png similarity index 100% rename from app/assets/images/emoji/repeat_one.png rename to vendor/assets/images/emoji/repeat_one.png diff --git a/app/assets/images/emoji/restroom.png b/vendor/assets/images/emoji/restroom.png similarity index 100% rename from app/assets/images/emoji/restroom.png rename to vendor/assets/images/emoji/restroom.png diff --git a/app/assets/images/emoji/revolving_hearts.png b/vendor/assets/images/emoji/revolving_hearts.png similarity index 100% rename from app/assets/images/emoji/revolving_hearts.png rename to vendor/assets/images/emoji/revolving_hearts.png diff --git a/app/assets/images/emoji/rewind.png b/vendor/assets/images/emoji/rewind.png similarity index 100% rename from app/assets/images/emoji/rewind.png rename to vendor/assets/images/emoji/rewind.png diff --git a/app/assets/images/emoji/ribbon.png b/vendor/assets/images/emoji/ribbon.png similarity index 100% rename from app/assets/images/emoji/ribbon.png rename to vendor/assets/images/emoji/ribbon.png diff --git a/app/assets/images/emoji/rice.png b/vendor/assets/images/emoji/rice.png similarity index 100% rename from app/assets/images/emoji/rice.png rename to vendor/assets/images/emoji/rice.png diff --git a/app/assets/images/emoji/rice_ball.png b/vendor/assets/images/emoji/rice_ball.png similarity index 100% rename from app/assets/images/emoji/rice_ball.png rename to vendor/assets/images/emoji/rice_ball.png diff --git a/app/assets/images/emoji/rice_cracker.png b/vendor/assets/images/emoji/rice_cracker.png similarity index 100% rename from app/assets/images/emoji/rice_cracker.png rename to vendor/assets/images/emoji/rice_cracker.png diff --git a/app/assets/images/emoji/rice_scene.png b/vendor/assets/images/emoji/rice_scene.png similarity index 100% rename from app/assets/images/emoji/rice_scene.png rename to vendor/assets/images/emoji/rice_scene.png diff --git a/app/assets/images/emoji/ring.png b/vendor/assets/images/emoji/ring.png similarity index 100% rename from app/assets/images/emoji/ring.png rename to vendor/assets/images/emoji/ring.png diff --git a/app/assets/images/emoji/rocket.png b/vendor/assets/images/emoji/rocket.png similarity index 100% rename from app/assets/images/emoji/rocket.png rename to vendor/assets/images/emoji/rocket.png diff --git a/app/assets/images/emoji/roller_coaster.png b/vendor/assets/images/emoji/roller_coaster.png similarity index 100% rename from app/assets/images/emoji/roller_coaster.png rename to vendor/assets/images/emoji/roller_coaster.png diff --git a/app/assets/images/emoji/rooster.png b/vendor/assets/images/emoji/rooster.png similarity index 100% rename from app/assets/images/emoji/rooster.png rename to vendor/assets/images/emoji/rooster.png diff --git a/app/assets/images/emoji/rose.png b/vendor/assets/images/emoji/rose.png similarity index 100% rename from app/assets/images/emoji/rose.png rename to vendor/assets/images/emoji/rose.png diff --git a/app/assets/images/emoji/rotating_light.png b/vendor/assets/images/emoji/rotating_light.png similarity index 100% rename from app/assets/images/emoji/rotating_light.png rename to vendor/assets/images/emoji/rotating_light.png diff --git a/app/assets/images/emoji/round_pushpin.png b/vendor/assets/images/emoji/round_pushpin.png similarity index 100% rename from app/assets/images/emoji/round_pushpin.png rename to vendor/assets/images/emoji/round_pushpin.png diff --git a/app/assets/images/emoji/rowboat.png b/vendor/assets/images/emoji/rowboat.png similarity index 100% rename from app/assets/images/emoji/rowboat.png rename to vendor/assets/images/emoji/rowboat.png diff --git a/app/assets/images/emoji/ru.png b/vendor/assets/images/emoji/ru.png similarity index 100% rename from app/assets/images/emoji/ru.png rename to vendor/assets/images/emoji/ru.png diff --git a/app/assets/images/emoji/rugby_football.png b/vendor/assets/images/emoji/rugby_football.png similarity index 100% rename from app/assets/images/emoji/rugby_football.png rename to vendor/assets/images/emoji/rugby_football.png diff --git a/app/assets/images/emoji/runner.png b/vendor/assets/images/emoji/runner.png similarity index 100% rename from app/assets/images/emoji/runner.png rename to vendor/assets/images/emoji/runner.png diff --git a/app/assets/images/emoji/running.png b/vendor/assets/images/emoji/running.png similarity index 100% rename from app/assets/images/emoji/running.png rename to vendor/assets/images/emoji/running.png diff --git a/app/assets/images/emoji/running_shirt_with_sash.png b/vendor/assets/images/emoji/running_shirt_with_sash.png similarity index 100% rename from app/assets/images/emoji/running_shirt_with_sash.png rename to vendor/assets/images/emoji/running_shirt_with_sash.png diff --git a/app/assets/images/emoji/sa.png b/vendor/assets/images/emoji/sa.png similarity index 100% rename from app/assets/images/emoji/sa.png rename to vendor/assets/images/emoji/sa.png diff --git a/app/assets/images/emoji/sagittarius.png b/vendor/assets/images/emoji/sagittarius.png similarity index 100% rename from app/assets/images/emoji/sagittarius.png rename to vendor/assets/images/emoji/sagittarius.png diff --git a/app/assets/images/emoji/sailboat.png b/vendor/assets/images/emoji/sailboat.png similarity index 100% rename from app/assets/images/emoji/sailboat.png rename to vendor/assets/images/emoji/sailboat.png diff --git a/app/assets/images/emoji/sake.png b/vendor/assets/images/emoji/sake.png similarity index 100% rename from app/assets/images/emoji/sake.png rename to vendor/assets/images/emoji/sake.png diff --git a/app/assets/images/emoji/sandal.png b/vendor/assets/images/emoji/sandal.png similarity index 100% rename from app/assets/images/emoji/sandal.png rename to vendor/assets/images/emoji/sandal.png diff --git a/app/assets/images/emoji/santa.png b/vendor/assets/images/emoji/santa.png similarity index 100% rename from app/assets/images/emoji/santa.png rename to vendor/assets/images/emoji/santa.png diff --git a/app/assets/images/emoji/satellite.png b/vendor/assets/images/emoji/satellite.png similarity index 100% rename from app/assets/images/emoji/satellite.png rename to vendor/assets/images/emoji/satellite.png diff --git a/app/assets/images/emoji/satisfied.png b/vendor/assets/images/emoji/satisfied.png similarity index 100% rename from app/assets/images/emoji/satisfied.png rename to vendor/assets/images/emoji/satisfied.png diff --git a/app/assets/images/emoji/saxophone.png b/vendor/assets/images/emoji/saxophone.png similarity index 100% rename from app/assets/images/emoji/saxophone.png rename to vendor/assets/images/emoji/saxophone.png diff --git a/app/assets/images/emoji/school.png b/vendor/assets/images/emoji/school.png similarity index 100% rename from app/assets/images/emoji/school.png rename to vendor/assets/images/emoji/school.png diff --git a/app/assets/images/emoji/school_satchel.png b/vendor/assets/images/emoji/school_satchel.png similarity index 100% rename from app/assets/images/emoji/school_satchel.png rename to vendor/assets/images/emoji/school_satchel.png diff --git a/app/assets/images/emoji/scissors.png b/vendor/assets/images/emoji/scissors.png similarity index 100% rename from app/assets/images/emoji/scissors.png rename to vendor/assets/images/emoji/scissors.png diff --git a/app/assets/images/emoji/scorpius.png b/vendor/assets/images/emoji/scorpius.png similarity index 100% rename from app/assets/images/emoji/scorpius.png rename to vendor/assets/images/emoji/scorpius.png diff --git a/app/assets/images/emoji/scream.png b/vendor/assets/images/emoji/scream.png similarity index 100% rename from app/assets/images/emoji/scream.png rename to vendor/assets/images/emoji/scream.png diff --git a/app/assets/images/emoji/scream_cat.png b/vendor/assets/images/emoji/scream_cat.png similarity index 100% rename from app/assets/images/emoji/scream_cat.png rename to vendor/assets/images/emoji/scream_cat.png diff --git a/app/assets/images/emoji/scroll.png b/vendor/assets/images/emoji/scroll.png similarity index 100% rename from app/assets/images/emoji/scroll.png rename to vendor/assets/images/emoji/scroll.png diff --git a/app/assets/images/emoji/seat.png b/vendor/assets/images/emoji/seat.png similarity index 100% rename from app/assets/images/emoji/seat.png rename to vendor/assets/images/emoji/seat.png diff --git a/app/assets/images/emoji/secret.png b/vendor/assets/images/emoji/secret.png similarity index 100% rename from app/assets/images/emoji/secret.png rename to vendor/assets/images/emoji/secret.png diff --git a/app/assets/images/emoji/see_no_evil.png b/vendor/assets/images/emoji/see_no_evil.png similarity index 100% rename from app/assets/images/emoji/see_no_evil.png rename to vendor/assets/images/emoji/see_no_evil.png diff --git a/app/assets/images/emoji/seedling.png b/vendor/assets/images/emoji/seedling.png similarity index 100% rename from app/assets/images/emoji/seedling.png rename to vendor/assets/images/emoji/seedling.png diff --git a/app/assets/images/emoji/seven.png b/vendor/assets/images/emoji/seven.png similarity index 100% rename from app/assets/images/emoji/seven.png rename to vendor/assets/images/emoji/seven.png diff --git a/app/assets/images/emoji/shaved_ice.png b/vendor/assets/images/emoji/shaved_ice.png similarity index 100% rename from app/assets/images/emoji/shaved_ice.png rename to vendor/assets/images/emoji/shaved_ice.png diff --git a/app/assets/images/emoji/sheep.png b/vendor/assets/images/emoji/sheep.png similarity index 100% rename from app/assets/images/emoji/sheep.png rename to vendor/assets/images/emoji/sheep.png diff --git a/app/assets/images/emoji/shell.png b/vendor/assets/images/emoji/shell.png similarity index 100% rename from app/assets/images/emoji/shell.png rename to vendor/assets/images/emoji/shell.png diff --git a/app/assets/images/emoji/ship.png b/vendor/assets/images/emoji/ship.png similarity index 100% rename from app/assets/images/emoji/ship.png rename to vendor/assets/images/emoji/ship.png diff --git a/app/assets/images/emoji/shipit.png b/vendor/assets/images/emoji/shipit.png similarity index 100% rename from app/assets/images/emoji/shipit.png rename to vendor/assets/images/emoji/shipit.png diff --git a/app/assets/images/emoji/shirt.png b/vendor/assets/images/emoji/shirt.png similarity index 100% rename from app/assets/images/emoji/shirt.png rename to vendor/assets/images/emoji/shirt.png diff --git a/app/assets/images/emoji/shit.png b/vendor/assets/images/emoji/shit.png similarity index 100% rename from app/assets/images/emoji/shit.png rename to vendor/assets/images/emoji/shit.png diff --git a/app/assets/images/emoji/shoe.png b/vendor/assets/images/emoji/shoe.png similarity index 100% rename from app/assets/images/emoji/shoe.png rename to vendor/assets/images/emoji/shoe.png diff --git a/app/assets/images/emoji/shower.png b/vendor/assets/images/emoji/shower.png similarity index 100% rename from app/assets/images/emoji/shower.png rename to vendor/assets/images/emoji/shower.png diff --git a/app/assets/images/emoji/signal_strength.png b/vendor/assets/images/emoji/signal_strength.png similarity index 100% rename from app/assets/images/emoji/signal_strength.png rename to vendor/assets/images/emoji/signal_strength.png diff --git a/app/assets/images/emoji/six.png b/vendor/assets/images/emoji/six.png similarity index 100% rename from app/assets/images/emoji/six.png rename to vendor/assets/images/emoji/six.png diff --git a/app/assets/images/emoji/six_pointed_star.png b/vendor/assets/images/emoji/six_pointed_star.png similarity index 100% rename from app/assets/images/emoji/six_pointed_star.png rename to vendor/assets/images/emoji/six_pointed_star.png diff --git a/app/assets/images/emoji/ski.png b/vendor/assets/images/emoji/ski.png similarity index 100% rename from app/assets/images/emoji/ski.png rename to vendor/assets/images/emoji/ski.png diff --git a/app/assets/images/emoji/skull.png b/vendor/assets/images/emoji/skull.png similarity index 100% rename from app/assets/images/emoji/skull.png rename to vendor/assets/images/emoji/skull.png diff --git a/app/assets/images/emoji/sleepy.png b/vendor/assets/images/emoji/sleepy.png similarity index 100% rename from app/assets/images/emoji/sleepy.png rename to vendor/assets/images/emoji/sleepy.png diff --git a/app/assets/images/emoji/slot_machine.png b/vendor/assets/images/emoji/slot_machine.png similarity index 100% rename from app/assets/images/emoji/slot_machine.png rename to vendor/assets/images/emoji/slot_machine.png diff --git a/app/assets/images/emoji/small_blue_diamond.png b/vendor/assets/images/emoji/small_blue_diamond.png similarity index 100% rename from app/assets/images/emoji/small_blue_diamond.png rename to vendor/assets/images/emoji/small_blue_diamond.png diff --git a/app/assets/images/emoji/small_orange_diamond.png b/vendor/assets/images/emoji/small_orange_diamond.png similarity index 100% rename from app/assets/images/emoji/small_orange_diamond.png rename to vendor/assets/images/emoji/small_orange_diamond.png diff --git a/app/assets/images/emoji/small_red_triangle.png b/vendor/assets/images/emoji/small_red_triangle.png similarity index 100% rename from app/assets/images/emoji/small_red_triangle.png rename to vendor/assets/images/emoji/small_red_triangle.png diff --git a/app/assets/images/emoji/small_red_triangle_down.png b/vendor/assets/images/emoji/small_red_triangle_down.png similarity index 100% rename from app/assets/images/emoji/small_red_triangle_down.png rename to vendor/assets/images/emoji/small_red_triangle_down.png diff --git a/app/assets/images/emoji/smile.png b/vendor/assets/images/emoji/smile.png similarity index 100% rename from app/assets/images/emoji/smile.png rename to vendor/assets/images/emoji/smile.png diff --git a/app/assets/images/emoji/smile_cat.png b/vendor/assets/images/emoji/smile_cat.png similarity index 100% rename from app/assets/images/emoji/smile_cat.png rename to vendor/assets/images/emoji/smile_cat.png diff --git a/app/assets/images/emoji/smiley.png b/vendor/assets/images/emoji/smiley.png similarity index 100% rename from app/assets/images/emoji/smiley.png rename to vendor/assets/images/emoji/smiley.png diff --git a/app/assets/images/emoji/smiley_cat.png b/vendor/assets/images/emoji/smiley_cat.png similarity index 100% rename from app/assets/images/emoji/smiley_cat.png rename to vendor/assets/images/emoji/smiley_cat.png diff --git a/app/assets/images/emoji/smiling_imp.png b/vendor/assets/images/emoji/smiling_imp.png similarity index 100% rename from app/assets/images/emoji/smiling_imp.png rename to vendor/assets/images/emoji/smiling_imp.png diff --git a/app/assets/images/emoji/smirk.png b/vendor/assets/images/emoji/smirk.png similarity index 100% rename from app/assets/images/emoji/smirk.png rename to vendor/assets/images/emoji/smirk.png diff --git a/app/assets/images/emoji/smirk_cat.png b/vendor/assets/images/emoji/smirk_cat.png similarity index 100% rename from app/assets/images/emoji/smirk_cat.png rename to vendor/assets/images/emoji/smirk_cat.png diff --git a/app/assets/images/emoji/smoking.png b/vendor/assets/images/emoji/smoking.png similarity index 100% rename from app/assets/images/emoji/smoking.png rename to vendor/assets/images/emoji/smoking.png diff --git a/app/assets/images/emoji/snail.png b/vendor/assets/images/emoji/snail.png similarity index 100% rename from app/assets/images/emoji/snail.png rename to vendor/assets/images/emoji/snail.png diff --git a/app/assets/images/emoji/snake.png b/vendor/assets/images/emoji/snake.png similarity index 100% rename from app/assets/images/emoji/snake.png rename to vendor/assets/images/emoji/snake.png diff --git a/app/assets/images/emoji/snowboarder.png b/vendor/assets/images/emoji/snowboarder.png similarity index 100% rename from app/assets/images/emoji/snowboarder.png rename to vendor/assets/images/emoji/snowboarder.png diff --git a/app/assets/images/emoji/snowflake.png b/vendor/assets/images/emoji/snowflake.png similarity index 100% rename from app/assets/images/emoji/snowflake.png rename to vendor/assets/images/emoji/snowflake.png diff --git a/app/assets/images/emoji/snowman.png b/vendor/assets/images/emoji/snowman.png similarity index 100% rename from app/assets/images/emoji/snowman.png rename to vendor/assets/images/emoji/snowman.png diff --git a/app/assets/images/emoji/sob.png b/vendor/assets/images/emoji/sob.png similarity index 100% rename from app/assets/images/emoji/sob.png rename to vendor/assets/images/emoji/sob.png diff --git a/app/assets/images/emoji/soccer.png b/vendor/assets/images/emoji/soccer.png similarity index 100% rename from app/assets/images/emoji/soccer.png rename to vendor/assets/images/emoji/soccer.png diff --git a/app/assets/images/emoji/soon.png b/vendor/assets/images/emoji/soon.png similarity index 100% rename from app/assets/images/emoji/soon.png rename to vendor/assets/images/emoji/soon.png diff --git a/app/assets/images/emoji/sos.png b/vendor/assets/images/emoji/sos.png similarity index 100% rename from app/assets/images/emoji/sos.png rename to vendor/assets/images/emoji/sos.png diff --git a/app/assets/images/emoji/sound.png b/vendor/assets/images/emoji/sound.png similarity index 100% rename from app/assets/images/emoji/sound.png rename to vendor/assets/images/emoji/sound.png diff --git a/app/assets/images/emoji/space_invader.png b/vendor/assets/images/emoji/space_invader.png similarity index 100% rename from app/assets/images/emoji/space_invader.png rename to vendor/assets/images/emoji/space_invader.png diff --git a/app/assets/images/emoji/spades.png b/vendor/assets/images/emoji/spades.png similarity index 100% rename from app/assets/images/emoji/spades.png rename to vendor/assets/images/emoji/spades.png diff --git a/app/assets/images/emoji/spaghetti.png b/vendor/assets/images/emoji/spaghetti.png similarity index 100% rename from app/assets/images/emoji/spaghetti.png rename to vendor/assets/images/emoji/spaghetti.png diff --git a/app/assets/images/emoji/sparkler.png b/vendor/assets/images/emoji/sparkler.png similarity index 100% rename from app/assets/images/emoji/sparkler.png rename to vendor/assets/images/emoji/sparkler.png diff --git a/app/assets/images/emoji/sparkles.png b/vendor/assets/images/emoji/sparkles.png similarity index 100% rename from app/assets/images/emoji/sparkles.png rename to vendor/assets/images/emoji/sparkles.png diff --git a/app/assets/images/emoji/speak_no_evil.png b/vendor/assets/images/emoji/speak_no_evil.png similarity index 100% rename from app/assets/images/emoji/speak_no_evil.png rename to vendor/assets/images/emoji/speak_no_evil.png diff --git a/app/assets/images/emoji/speaker.png b/vendor/assets/images/emoji/speaker.png similarity index 100% rename from app/assets/images/emoji/speaker.png rename to vendor/assets/images/emoji/speaker.png diff --git a/app/assets/images/emoji/speech_balloon.png b/vendor/assets/images/emoji/speech_balloon.png similarity index 100% rename from app/assets/images/emoji/speech_balloon.png rename to vendor/assets/images/emoji/speech_balloon.png diff --git a/app/assets/images/emoji/speedboat.png b/vendor/assets/images/emoji/speedboat.png similarity index 100% rename from app/assets/images/emoji/speedboat.png rename to vendor/assets/images/emoji/speedboat.png diff --git a/app/assets/images/emoji/squirrel.png b/vendor/assets/images/emoji/squirrel.png similarity index 100% rename from app/assets/images/emoji/squirrel.png rename to vendor/assets/images/emoji/squirrel.png diff --git a/app/assets/images/emoji/star.png b/vendor/assets/images/emoji/star.png similarity index 100% rename from app/assets/images/emoji/star.png rename to vendor/assets/images/emoji/star.png diff --git a/app/assets/images/emoji/star2.png b/vendor/assets/images/emoji/star2.png similarity index 100% rename from app/assets/images/emoji/star2.png rename to vendor/assets/images/emoji/star2.png diff --git a/app/assets/images/emoji/stars.png b/vendor/assets/images/emoji/stars.png similarity index 100% rename from app/assets/images/emoji/stars.png rename to vendor/assets/images/emoji/stars.png diff --git a/app/assets/images/emoji/station.png b/vendor/assets/images/emoji/station.png similarity index 100% rename from app/assets/images/emoji/station.png rename to vendor/assets/images/emoji/station.png diff --git a/app/assets/images/emoji/statue_of_liberty.png b/vendor/assets/images/emoji/statue_of_liberty.png similarity index 100% rename from app/assets/images/emoji/statue_of_liberty.png rename to vendor/assets/images/emoji/statue_of_liberty.png diff --git a/app/assets/images/emoji/steam_locomotive.png b/vendor/assets/images/emoji/steam_locomotive.png similarity index 100% rename from app/assets/images/emoji/steam_locomotive.png rename to vendor/assets/images/emoji/steam_locomotive.png diff --git a/app/assets/images/emoji/stew.png b/vendor/assets/images/emoji/stew.png similarity index 100% rename from app/assets/images/emoji/stew.png rename to vendor/assets/images/emoji/stew.png diff --git a/app/assets/images/emoji/straight_ruler.png b/vendor/assets/images/emoji/straight_ruler.png similarity index 100% rename from app/assets/images/emoji/straight_ruler.png rename to vendor/assets/images/emoji/straight_ruler.png diff --git a/app/assets/images/emoji/strawberry.png b/vendor/assets/images/emoji/strawberry.png similarity index 100% rename from app/assets/images/emoji/strawberry.png rename to vendor/assets/images/emoji/strawberry.png diff --git a/app/assets/images/emoji/sun_with_face.png b/vendor/assets/images/emoji/sun_with_face.png similarity index 100% rename from app/assets/images/emoji/sun_with_face.png rename to vendor/assets/images/emoji/sun_with_face.png diff --git a/app/assets/images/emoji/sunflower.png b/vendor/assets/images/emoji/sunflower.png similarity index 100% rename from app/assets/images/emoji/sunflower.png rename to vendor/assets/images/emoji/sunflower.png diff --git a/app/assets/images/emoji/sunglasses.png b/vendor/assets/images/emoji/sunglasses.png similarity index 100% rename from app/assets/images/emoji/sunglasses.png rename to vendor/assets/images/emoji/sunglasses.png diff --git a/app/assets/images/emoji/sunny.png b/vendor/assets/images/emoji/sunny.png similarity index 100% rename from app/assets/images/emoji/sunny.png rename to vendor/assets/images/emoji/sunny.png diff --git a/app/assets/images/emoji/sunrise.png b/vendor/assets/images/emoji/sunrise.png similarity index 100% rename from app/assets/images/emoji/sunrise.png rename to vendor/assets/images/emoji/sunrise.png diff --git a/app/assets/images/emoji/sunrise_over_mountains.png b/vendor/assets/images/emoji/sunrise_over_mountains.png similarity index 100% rename from app/assets/images/emoji/sunrise_over_mountains.png rename to vendor/assets/images/emoji/sunrise_over_mountains.png diff --git a/app/assets/images/emoji/surfer.png b/vendor/assets/images/emoji/surfer.png similarity index 100% rename from app/assets/images/emoji/surfer.png rename to vendor/assets/images/emoji/surfer.png diff --git a/app/assets/images/emoji/sushi.png b/vendor/assets/images/emoji/sushi.png similarity index 100% rename from app/assets/images/emoji/sushi.png rename to vendor/assets/images/emoji/sushi.png diff --git a/app/assets/images/emoji/suspect.png b/vendor/assets/images/emoji/suspect.png similarity index 100% rename from app/assets/images/emoji/suspect.png rename to vendor/assets/images/emoji/suspect.png diff --git a/app/assets/images/emoji/suspension_railway.png b/vendor/assets/images/emoji/suspension_railway.png similarity index 100% rename from app/assets/images/emoji/suspension_railway.png rename to vendor/assets/images/emoji/suspension_railway.png diff --git a/app/assets/images/emoji/sweat.png b/vendor/assets/images/emoji/sweat.png similarity index 100% rename from app/assets/images/emoji/sweat.png rename to vendor/assets/images/emoji/sweat.png diff --git a/app/assets/images/emoji/sweat_drops.png b/vendor/assets/images/emoji/sweat_drops.png similarity index 100% rename from app/assets/images/emoji/sweat_drops.png rename to vendor/assets/images/emoji/sweat_drops.png diff --git a/app/assets/images/emoji/sweat_smile.png b/vendor/assets/images/emoji/sweat_smile.png similarity index 100% rename from app/assets/images/emoji/sweat_smile.png rename to vendor/assets/images/emoji/sweat_smile.png diff --git a/app/assets/images/emoji/sweet_potato.png b/vendor/assets/images/emoji/sweet_potato.png similarity index 100% rename from app/assets/images/emoji/sweet_potato.png rename to vendor/assets/images/emoji/sweet_potato.png diff --git a/app/assets/images/emoji/swimmer.png b/vendor/assets/images/emoji/swimmer.png similarity index 100% rename from app/assets/images/emoji/swimmer.png rename to vendor/assets/images/emoji/swimmer.png diff --git a/app/assets/images/emoji/symbols.png b/vendor/assets/images/emoji/symbols.png similarity index 100% rename from app/assets/images/emoji/symbols.png rename to vendor/assets/images/emoji/symbols.png diff --git a/app/assets/images/emoji/syringe.png b/vendor/assets/images/emoji/syringe.png similarity index 100% rename from app/assets/images/emoji/syringe.png rename to vendor/assets/images/emoji/syringe.png diff --git a/app/assets/images/emoji/tada.png b/vendor/assets/images/emoji/tada.png similarity index 100% rename from app/assets/images/emoji/tada.png rename to vendor/assets/images/emoji/tada.png diff --git a/app/assets/images/emoji/tanabata_tree.png b/vendor/assets/images/emoji/tanabata_tree.png similarity index 100% rename from app/assets/images/emoji/tanabata_tree.png rename to vendor/assets/images/emoji/tanabata_tree.png diff --git a/app/assets/images/emoji/tangerine.png b/vendor/assets/images/emoji/tangerine.png similarity index 100% rename from app/assets/images/emoji/tangerine.png rename to vendor/assets/images/emoji/tangerine.png diff --git a/app/assets/images/emoji/taurus.png b/vendor/assets/images/emoji/taurus.png similarity index 100% rename from app/assets/images/emoji/taurus.png rename to vendor/assets/images/emoji/taurus.png diff --git a/app/assets/images/emoji/taxi.png b/vendor/assets/images/emoji/taxi.png similarity index 100% rename from app/assets/images/emoji/taxi.png rename to vendor/assets/images/emoji/taxi.png diff --git a/app/assets/images/emoji/tea.png b/vendor/assets/images/emoji/tea.png similarity index 100% rename from app/assets/images/emoji/tea.png rename to vendor/assets/images/emoji/tea.png diff --git a/app/assets/images/emoji/telephone.png b/vendor/assets/images/emoji/telephone.png similarity index 100% rename from app/assets/images/emoji/telephone.png rename to vendor/assets/images/emoji/telephone.png diff --git a/app/assets/images/emoji/telephone_receiver.png b/vendor/assets/images/emoji/telephone_receiver.png similarity index 100% rename from app/assets/images/emoji/telephone_receiver.png rename to vendor/assets/images/emoji/telephone_receiver.png diff --git a/app/assets/images/emoji/telescope.png b/vendor/assets/images/emoji/telescope.png similarity index 100% rename from app/assets/images/emoji/telescope.png rename to vendor/assets/images/emoji/telescope.png diff --git a/app/assets/images/emoji/tennis.png b/vendor/assets/images/emoji/tennis.png similarity index 100% rename from app/assets/images/emoji/tennis.png rename to vendor/assets/images/emoji/tennis.png diff --git a/app/assets/images/emoji/tent.png b/vendor/assets/images/emoji/tent.png similarity index 100% rename from app/assets/images/emoji/tent.png rename to vendor/assets/images/emoji/tent.png diff --git a/app/assets/images/emoji/thought_balloon.png b/vendor/assets/images/emoji/thought_balloon.png similarity index 100% rename from app/assets/images/emoji/thought_balloon.png rename to vendor/assets/images/emoji/thought_balloon.png diff --git a/app/assets/images/emoji/three.png b/vendor/assets/images/emoji/three.png similarity index 100% rename from app/assets/images/emoji/three.png rename to vendor/assets/images/emoji/three.png diff --git a/app/assets/images/emoji/thumbsdown.png b/vendor/assets/images/emoji/thumbsdown.png similarity index 100% rename from app/assets/images/emoji/thumbsdown.png rename to vendor/assets/images/emoji/thumbsdown.png diff --git a/app/assets/images/emoji/thumbsup.png b/vendor/assets/images/emoji/thumbsup.png similarity index 100% rename from app/assets/images/emoji/thumbsup.png rename to vendor/assets/images/emoji/thumbsup.png diff --git a/app/assets/images/emoji/ticket.png b/vendor/assets/images/emoji/ticket.png similarity index 100% rename from app/assets/images/emoji/ticket.png rename to vendor/assets/images/emoji/ticket.png diff --git a/app/assets/images/emoji/tiger.png b/vendor/assets/images/emoji/tiger.png similarity index 100% rename from app/assets/images/emoji/tiger.png rename to vendor/assets/images/emoji/tiger.png diff --git a/app/assets/images/emoji/tiger2.png b/vendor/assets/images/emoji/tiger2.png similarity index 100% rename from app/assets/images/emoji/tiger2.png rename to vendor/assets/images/emoji/tiger2.png diff --git a/app/assets/images/emoji/tired_face.png b/vendor/assets/images/emoji/tired_face.png similarity index 100% rename from app/assets/images/emoji/tired_face.png rename to vendor/assets/images/emoji/tired_face.png diff --git a/app/assets/images/emoji/tm.png b/vendor/assets/images/emoji/tm.png similarity index 100% rename from app/assets/images/emoji/tm.png rename to vendor/assets/images/emoji/tm.png diff --git a/app/assets/images/emoji/toilet.png b/vendor/assets/images/emoji/toilet.png similarity index 100% rename from app/assets/images/emoji/toilet.png rename to vendor/assets/images/emoji/toilet.png diff --git a/app/assets/images/emoji/tokyo_tower.png b/vendor/assets/images/emoji/tokyo_tower.png similarity index 100% rename from app/assets/images/emoji/tokyo_tower.png rename to vendor/assets/images/emoji/tokyo_tower.png diff --git a/app/assets/images/emoji/tomato.png b/vendor/assets/images/emoji/tomato.png similarity index 100% rename from app/assets/images/emoji/tomato.png rename to vendor/assets/images/emoji/tomato.png diff --git a/app/assets/images/emoji/tongue.png b/vendor/assets/images/emoji/tongue.png similarity index 100% rename from app/assets/images/emoji/tongue.png rename to vendor/assets/images/emoji/tongue.png diff --git a/app/assets/images/emoji/tongue2.png b/vendor/assets/images/emoji/tongue2.png similarity index 100% rename from app/assets/images/emoji/tongue2.png rename to vendor/assets/images/emoji/tongue2.png diff --git a/app/assets/images/emoji/top.png b/vendor/assets/images/emoji/top.png similarity index 100% rename from app/assets/images/emoji/top.png rename to vendor/assets/images/emoji/top.png diff --git a/app/assets/images/emoji/tophat.png b/vendor/assets/images/emoji/tophat.png similarity index 100% rename from app/assets/images/emoji/tophat.png rename to vendor/assets/images/emoji/tophat.png diff --git a/app/assets/images/emoji/tractor.png b/vendor/assets/images/emoji/tractor.png similarity index 100% rename from app/assets/images/emoji/tractor.png rename to vendor/assets/images/emoji/tractor.png diff --git a/app/assets/images/emoji/traffic_light.png b/vendor/assets/images/emoji/traffic_light.png similarity index 100% rename from app/assets/images/emoji/traffic_light.png rename to vendor/assets/images/emoji/traffic_light.png diff --git a/app/assets/images/emoji/train.png b/vendor/assets/images/emoji/train.png similarity index 100% rename from app/assets/images/emoji/train.png rename to vendor/assets/images/emoji/train.png diff --git a/app/assets/images/emoji/train2.png b/vendor/assets/images/emoji/train2.png similarity index 100% rename from app/assets/images/emoji/train2.png rename to vendor/assets/images/emoji/train2.png diff --git a/app/assets/images/emoji/tram.png b/vendor/assets/images/emoji/tram.png similarity index 100% rename from app/assets/images/emoji/tram.png rename to vendor/assets/images/emoji/tram.png diff --git a/app/assets/images/emoji/triangular_flag_on_post.png b/vendor/assets/images/emoji/triangular_flag_on_post.png similarity index 100% rename from app/assets/images/emoji/triangular_flag_on_post.png rename to vendor/assets/images/emoji/triangular_flag_on_post.png diff --git a/app/assets/images/emoji/triangular_ruler.png b/vendor/assets/images/emoji/triangular_ruler.png similarity index 100% rename from app/assets/images/emoji/triangular_ruler.png rename to vendor/assets/images/emoji/triangular_ruler.png diff --git a/app/assets/images/emoji/trident.png b/vendor/assets/images/emoji/trident.png similarity index 100% rename from app/assets/images/emoji/trident.png rename to vendor/assets/images/emoji/trident.png diff --git a/app/assets/images/emoji/triumph.png b/vendor/assets/images/emoji/triumph.png similarity index 100% rename from app/assets/images/emoji/triumph.png rename to vendor/assets/images/emoji/triumph.png diff --git a/app/assets/images/emoji/trolleybus.png b/vendor/assets/images/emoji/trolleybus.png similarity index 100% rename from app/assets/images/emoji/trolleybus.png rename to vendor/assets/images/emoji/trolleybus.png diff --git a/app/assets/images/emoji/trollface.png b/vendor/assets/images/emoji/trollface.png similarity index 100% rename from app/assets/images/emoji/trollface.png rename to vendor/assets/images/emoji/trollface.png diff --git a/app/assets/images/emoji/trophy.png b/vendor/assets/images/emoji/trophy.png similarity index 100% rename from app/assets/images/emoji/trophy.png rename to vendor/assets/images/emoji/trophy.png diff --git a/app/assets/images/emoji/tropical_drink.png b/vendor/assets/images/emoji/tropical_drink.png similarity index 100% rename from app/assets/images/emoji/tropical_drink.png rename to vendor/assets/images/emoji/tropical_drink.png diff --git a/app/assets/images/emoji/tropical_fish.png b/vendor/assets/images/emoji/tropical_fish.png similarity index 100% rename from app/assets/images/emoji/tropical_fish.png rename to vendor/assets/images/emoji/tropical_fish.png diff --git a/app/assets/images/emoji/truck.png b/vendor/assets/images/emoji/truck.png similarity index 100% rename from app/assets/images/emoji/truck.png rename to vendor/assets/images/emoji/truck.png diff --git a/app/assets/images/emoji/trumpet.png b/vendor/assets/images/emoji/trumpet.png similarity index 100% rename from app/assets/images/emoji/trumpet.png rename to vendor/assets/images/emoji/trumpet.png diff --git a/app/assets/images/emoji/tshirt.png b/vendor/assets/images/emoji/tshirt.png similarity index 100% rename from app/assets/images/emoji/tshirt.png rename to vendor/assets/images/emoji/tshirt.png diff --git a/app/assets/images/emoji/tulip.png b/vendor/assets/images/emoji/tulip.png similarity index 100% rename from app/assets/images/emoji/tulip.png rename to vendor/assets/images/emoji/tulip.png diff --git a/app/assets/images/emoji/turtle.png b/vendor/assets/images/emoji/turtle.png similarity index 100% rename from app/assets/images/emoji/turtle.png rename to vendor/assets/images/emoji/turtle.png diff --git a/app/assets/images/emoji/tv.png b/vendor/assets/images/emoji/tv.png similarity index 100% rename from app/assets/images/emoji/tv.png rename to vendor/assets/images/emoji/tv.png diff --git a/app/assets/images/emoji/twisted_rightwards_arrows.png b/vendor/assets/images/emoji/twisted_rightwards_arrows.png similarity index 100% rename from app/assets/images/emoji/twisted_rightwards_arrows.png rename to vendor/assets/images/emoji/twisted_rightwards_arrows.png diff --git a/app/assets/images/emoji/two.png b/vendor/assets/images/emoji/two.png similarity index 100% rename from app/assets/images/emoji/two.png rename to vendor/assets/images/emoji/two.png diff --git a/app/assets/images/emoji/two_hearts.png b/vendor/assets/images/emoji/two_hearts.png similarity index 100% rename from app/assets/images/emoji/two_hearts.png rename to vendor/assets/images/emoji/two_hearts.png diff --git a/app/assets/images/emoji/two_men_holding_hands.png b/vendor/assets/images/emoji/two_men_holding_hands.png similarity index 100% rename from app/assets/images/emoji/two_men_holding_hands.png rename to vendor/assets/images/emoji/two_men_holding_hands.png diff --git a/app/assets/images/emoji/two_women_holding_hands.png b/vendor/assets/images/emoji/two_women_holding_hands.png similarity index 100% rename from app/assets/images/emoji/two_women_holding_hands.png rename to vendor/assets/images/emoji/two_women_holding_hands.png diff --git a/app/assets/images/emoji/u5272.png b/vendor/assets/images/emoji/u5272.png similarity index 100% rename from app/assets/images/emoji/u5272.png rename to vendor/assets/images/emoji/u5272.png diff --git a/app/assets/images/emoji/u5408.png b/vendor/assets/images/emoji/u5408.png similarity index 100% rename from app/assets/images/emoji/u5408.png rename to vendor/assets/images/emoji/u5408.png diff --git a/app/assets/images/emoji/u55b6.png b/vendor/assets/images/emoji/u55b6.png similarity index 100% rename from app/assets/images/emoji/u55b6.png rename to vendor/assets/images/emoji/u55b6.png diff --git a/app/assets/images/emoji/u6307.png b/vendor/assets/images/emoji/u6307.png similarity index 100% rename from app/assets/images/emoji/u6307.png rename to vendor/assets/images/emoji/u6307.png diff --git a/app/assets/images/emoji/u6708.png b/vendor/assets/images/emoji/u6708.png similarity index 100% rename from app/assets/images/emoji/u6708.png rename to vendor/assets/images/emoji/u6708.png diff --git a/app/assets/images/emoji/u6709.png b/vendor/assets/images/emoji/u6709.png similarity index 100% rename from app/assets/images/emoji/u6709.png rename to vendor/assets/images/emoji/u6709.png diff --git a/app/assets/images/emoji/u6e80.png b/vendor/assets/images/emoji/u6e80.png similarity index 100% rename from app/assets/images/emoji/u6e80.png rename to vendor/assets/images/emoji/u6e80.png diff --git a/app/assets/images/emoji/u7121.png b/vendor/assets/images/emoji/u7121.png similarity index 100% rename from app/assets/images/emoji/u7121.png rename to vendor/assets/images/emoji/u7121.png diff --git a/app/assets/images/emoji/u7533.png b/vendor/assets/images/emoji/u7533.png similarity index 100% rename from app/assets/images/emoji/u7533.png rename to vendor/assets/images/emoji/u7533.png diff --git a/app/assets/images/emoji/u7981.png b/vendor/assets/images/emoji/u7981.png similarity index 100% rename from app/assets/images/emoji/u7981.png rename to vendor/assets/images/emoji/u7981.png diff --git a/app/assets/images/emoji/u7a7a.png b/vendor/assets/images/emoji/u7a7a.png similarity index 100% rename from app/assets/images/emoji/u7a7a.png rename to vendor/assets/images/emoji/u7a7a.png diff --git a/app/assets/images/emoji/uk.png b/vendor/assets/images/emoji/uk.png similarity index 100% rename from app/assets/images/emoji/uk.png rename to vendor/assets/images/emoji/uk.png diff --git a/app/assets/images/emoji/umbrella.png b/vendor/assets/images/emoji/umbrella.png similarity index 100% rename from app/assets/images/emoji/umbrella.png rename to vendor/assets/images/emoji/umbrella.png diff --git a/app/assets/images/emoji/unamused.png b/vendor/assets/images/emoji/unamused.png similarity index 100% rename from app/assets/images/emoji/unamused.png rename to vendor/assets/images/emoji/unamused.png diff --git a/app/assets/images/emoji/underage.png b/vendor/assets/images/emoji/underage.png similarity index 100% rename from app/assets/images/emoji/underage.png rename to vendor/assets/images/emoji/underage.png diff --git a/app/assets/images/emoji/unlock.png b/vendor/assets/images/emoji/unlock.png similarity index 100% rename from app/assets/images/emoji/unlock.png rename to vendor/assets/images/emoji/unlock.png diff --git a/app/assets/images/emoji/up.png b/vendor/assets/images/emoji/up.png similarity index 100% rename from app/assets/images/emoji/up.png rename to vendor/assets/images/emoji/up.png diff --git a/app/assets/images/emoji/us.png b/vendor/assets/images/emoji/us.png similarity index 100% rename from app/assets/images/emoji/us.png rename to vendor/assets/images/emoji/us.png diff --git a/app/assets/images/emoji/v.png b/vendor/assets/images/emoji/v.png similarity index 100% rename from app/assets/images/emoji/v.png rename to vendor/assets/images/emoji/v.png diff --git a/app/assets/images/emoji/vertical_traffic_light.png b/vendor/assets/images/emoji/vertical_traffic_light.png similarity index 100% rename from app/assets/images/emoji/vertical_traffic_light.png rename to vendor/assets/images/emoji/vertical_traffic_light.png diff --git a/app/assets/images/emoji/vhs.png b/vendor/assets/images/emoji/vhs.png similarity index 100% rename from app/assets/images/emoji/vhs.png rename to vendor/assets/images/emoji/vhs.png diff --git a/app/assets/images/emoji/vibration_mode.png b/vendor/assets/images/emoji/vibration_mode.png similarity index 100% rename from app/assets/images/emoji/vibration_mode.png rename to vendor/assets/images/emoji/vibration_mode.png diff --git a/app/assets/images/emoji/video_camera.png b/vendor/assets/images/emoji/video_camera.png similarity index 100% rename from app/assets/images/emoji/video_camera.png rename to vendor/assets/images/emoji/video_camera.png diff --git a/app/assets/images/emoji/video_game.png b/vendor/assets/images/emoji/video_game.png similarity index 100% rename from app/assets/images/emoji/video_game.png rename to vendor/assets/images/emoji/video_game.png diff --git a/app/assets/images/emoji/violin.png b/vendor/assets/images/emoji/violin.png similarity index 100% rename from app/assets/images/emoji/violin.png rename to vendor/assets/images/emoji/violin.png diff --git a/app/assets/images/emoji/virgo.png b/vendor/assets/images/emoji/virgo.png similarity index 100% rename from app/assets/images/emoji/virgo.png rename to vendor/assets/images/emoji/virgo.png diff --git a/app/assets/images/emoji/volcano.png b/vendor/assets/images/emoji/volcano.png similarity index 100% rename from app/assets/images/emoji/volcano.png rename to vendor/assets/images/emoji/volcano.png diff --git a/app/assets/images/emoji/vs.png b/vendor/assets/images/emoji/vs.png similarity index 100% rename from app/assets/images/emoji/vs.png rename to vendor/assets/images/emoji/vs.png diff --git a/app/assets/images/emoji/walking.png b/vendor/assets/images/emoji/walking.png similarity index 100% rename from app/assets/images/emoji/walking.png rename to vendor/assets/images/emoji/walking.png diff --git a/app/assets/images/emoji/waning_crescent_moon.png b/vendor/assets/images/emoji/waning_crescent_moon.png similarity index 100% rename from app/assets/images/emoji/waning_crescent_moon.png rename to vendor/assets/images/emoji/waning_crescent_moon.png diff --git a/app/assets/images/emoji/waning_gibbous_moon.png b/vendor/assets/images/emoji/waning_gibbous_moon.png similarity index 100% rename from app/assets/images/emoji/waning_gibbous_moon.png rename to vendor/assets/images/emoji/waning_gibbous_moon.png diff --git a/app/assets/images/emoji/warning.png b/vendor/assets/images/emoji/warning.png similarity index 100% rename from app/assets/images/emoji/warning.png rename to vendor/assets/images/emoji/warning.png diff --git a/app/assets/images/emoji/watch.png b/vendor/assets/images/emoji/watch.png similarity index 100% rename from app/assets/images/emoji/watch.png rename to vendor/assets/images/emoji/watch.png diff --git a/app/assets/images/emoji/water_buffalo.png b/vendor/assets/images/emoji/water_buffalo.png similarity index 100% rename from app/assets/images/emoji/water_buffalo.png rename to vendor/assets/images/emoji/water_buffalo.png diff --git a/app/assets/images/emoji/watermelon.png b/vendor/assets/images/emoji/watermelon.png similarity index 100% rename from app/assets/images/emoji/watermelon.png rename to vendor/assets/images/emoji/watermelon.png diff --git a/app/assets/images/emoji/wave.png b/vendor/assets/images/emoji/wave.png similarity index 100% rename from app/assets/images/emoji/wave.png rename to vendor/assets/images/emoji/wave.png diff --git a/app/assets/images/emoji/wavy_dash.png b/vendor/assets/images/emoji/wavy_dash.png similarity index 100% rename from app/assets/images/emoji/wavy_dash.png rename to vendor/assets/images/emoji/wavy_dash.png diff --git a/app/assets/images/emoji/waxing_crescent_moon.png b/vendor/assets/images/emoji/waxing_crescent_moon.png similarity index 100% rename from app/assets/images/emoji/waxing_crescent_moon.png rename to vendor/assets/images/emoji/waxing_crescent_moon.png diff --git a/app/assets/images/emoji/waxing_gibbous_moon.png b/vendor/assets/images/emoji/waxing_gibbous_moon.png similarity index 100% rename from app/assets/images/emoji/waxing_gibbous_moon.png rename to vendor/assets/images/emoji/waxing_gibbous_moon.png diff --git a/app/assets/images/emoji/wc.png b/vendor/assets/images/emoji/wc.png similarity index 100% rename from app/assets/images/emoji/wc.png rename to vendor/assets/images/emoji/wc.png diff --git a/app/assets/images/emoji/weary.png b/vendor/assets/images/emoji/weary.png similarity index 100% rename from app/assets/images/emoji/weary.png rename to vendor/assets/images/emoji/weary.png diff --git a/app/assets/images/emoji/wedding.png b/vendor/assets/images/emoji/wedding.png similarity index 100% rename from app/assets/images/emoji/wedding.png rename to vendor/assets/images/emoji/wedding.png diff --git a/app/assets/images/emoji/whale.png b/vendor/assets/images/emoji/whale.png similarity index 100% rename from app/assets/images/emoji/whale.png rename to vendor/assets/images/emoji/whale.png diff --git a/app/assets/images/emoji/whale2.png b/vendor/assets/images/emoji/whale2.png similarity index 100% rename from app/assets/images/emoji/whale2.png rename to vendor/assets/images/emoji/whale2.png diff --git a/app/assets/images/emoji/wheelchair.png b/vendor/assets/images/emoji/wheelchair.png similarity index 100% rename from app/assets/images/emoji/wheelchair.png rename to vendor/assets/images/emoji/wheelchair.png diff --git a/app/assets/images/emoji/white_circle.png b/vendor/assets/images/emoji/white_circle.png similarity index 100% rename from app/assets/images/emoji/white_circle.png rename to vendor/assets/images/emoji/white_circle.png diff --git a/app/assets/images/emoji/white_flower.png b/vendor/assets/images/emoji/white_flower.png similarity index 100% rename from app/assets/images/emoji/white_flower.png rename to vendor/assets/images/emoji/white_flower.png diff --git a/app/assets/images/emoji/white_square.png b/vendor/assets/images/emoji/white_square.png similarity index 100% rename from app/assets/images/emoji/white_square.png rename to vendor/assets/images/emoji/white_square.png diff --git a/app/assets/images/emoji/wind_chime.png b/vendor/assets/images/emoji/wind_chime.png similarity index 100% rename from app/assets/images/emoji/wind_chime.png rename to vendor/assets/images/emoji/wind_chime.png diff --git a/app/assets/images/emoji/wine_glass.png b/vendor/assets/images/emoji/wine_glass.png similarity index 100% rename from app/assets/images/emoji/wine_glass.png rename to vendor/assets/images/emoji/wine_glass.png diff --git a/app/assets/images/emoji/wink.png b/vendor/assets/images/emoji/wink.png similarity index 100% rename from app/assets/images/emoji/wink.png rename to vendor/assets/images/emoji/wink.png diff --git a/app/assets/images/emoji/wink2.png b/vendor/assets/images/emoji/wink2.png similarity index 100% rename from app/assets/images/emoji/wink2.png rename to vendor/assets/images/emoji/wink2.png diff --git a/app/assets/images/emoji/wolf.png b/vendor/assets/images/emoji/wolf.png similarity index 100% rename from app/assets/images/emoji/wolf.png rename to vendor/assets/images/emoji/wolf.png diff --git a/app/assets/images/emoji/woman.png b/vendor/assets/images/emoji/woman.png similarity index 100% rename from app/assets/images/emoji/woman.png rename to vendor/assets/images/emoji/woman.png diff --git a/app/assets/images/emoji/womans_clothes.png b/vendor/assets/images/emoji/womans_clothes.png similarity index 100% rename from app/assets/images/emoji/womans_clothes.png rename to vendor/assets/images/emoji/womans_clothes.png diff --git a/app/assets/images/emoji/womans_hat.png b/vendor/assets/images/emoji/womans_hat.png similarity index 100% rename from app/assets/images/emoji/womans_hat.png rename to vendor/assets/images/emoji/womans_hat.png diff --git a/app/assets/images/emoji/womens.png b/vendor/assets/images/emoji/womens.png similarity index 100% rename from app/assets/images/emoji/womens.png rename to vendor/assets/images/emoji/womens.png diff --git a/app/assets/images/emoji/wrench.png b/vendor/assets/images/emoji/wrench.png similarity index 100% rename from app/assets/images/emoji/wrench.png rename to vendor/assets/images/emoji/wrench.png diff --git a/app/assets/images/emoji/x.png b/vendor/assets/images/emoji/x.png similarity index 100% rename from app/assets/images/emoji/x.png rename to vendor/assets/images/emoji/x.png diff --git a/app/assets/images/emoji/yellow_heart.png b/vendor/assets/images/emoji/yellow_heart.png similarity index 100% rename from app/assets/images/emoji/yellow_heart.png rename to vendor/assets/images/emoji/yellow_heart.png diff --git a/app/assets/images/emoji/yen.png b/vendor/assets/images/emoji/yen.png similarity index 100% rename from app/assets/images/emoji/yen.png rename to vendor/assets/images/emoji/yen.png diff --git a/app/assets/images/emoji/yum.png b/vendor/assets/images/emoji/yum.png similarity index 100% rename from app/assets/images/emoji/yum.png rename to vendor/assets/images/emoji/yum.png diff --git a/app/assets/images/emoji/zap.png b/vendor/assets/images/emoji/zap.png similarity index 100% rename from app/assets/images/emoji/zap.png rename to vendor/assets/images/emoji/zap.png diff --git a/app/assets/images/emoji/zero.png b/vendor/assets/images/emoji/zero.png similarity index 100% rename from app/assets/images/emoji/zero.png rename to vendor/assets/images/emoji/zero.png diff --git a/app/assets/images/emoji/zzz.png b/vendor/assets/images/emoji/zzz.png similarity index 100% rename from app/assets/images/emoji/zzz.png rename to vendor/assets/images/emoji/zzz.png -- GitLab From a18064db3eb3852419cb286c644f43c3b34f7fe5 Mon Sep 17 00:00:00 2001 From: Nihad Abbasov Date: Fri, 5 Oct 2012 07:22:21 -0700 Subject: [PATCH 29/40] no need to add fonts to assets path --- app/assets/stylesheets/main.scss | 2 +- config/application.rb | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/app/assets/stylesheets/main.scss b/app/assets/stylesheets/main.scss index 8f0db82d61e..bff24493820 100644 --- a/app/assets/stylesheets/main.scss +++ b/app/assets/stylesheets/main.scss @@ -8,7 +8,7 @@ $style_color: #474d57; $hover: #D9EDF7; /** GitLab Fonts **/ -@font-face { font-family: Korolev; src: url('korolev-medium-compressed.otf'); } +@font-face { font-family: Korolev; src: font-url('korolev-medium-compressed.otf'); } /** MIXINS **/ @mixin shade { diff --git a/config/application.rb b/config/application.rb index 27de3fa2436..1189035fa86 100644 --- a/config/application.rb +++ b/config/application.rb @@ -50,8 +50,5 @@ module Gitlab # Version of your assets, change this if you want to expire all your assets config.assets.version = '1.0' - - # Add fonts - config.assets.paths << "#{Rails.root}/app/assets/fonts" end end -- GitLab From c756f827348b51270c967c8d44210dcd42eb6ae4 Mon Sep 17 00:00:00 2001 From: Nihad Abbasov Date: Fri, 5 Oct 2012 07:42:23 -0700 Subject: [PATCH 30/40] move emoji module to lib --- {config/initializers => lib}/emoji.rb | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {config/initializers => lib}/emoji.rb (100%) diff --git a/config/initializers/emoji.rb b/lib/emoji.rb similarity index 100% rename from config/initializers/emoji.rb rename to lib/emoji.rb -- GitLab From 7ff57a2792267ffb385a22e1397fb265562278e5 Mon Sep 17 00:00:00 2001 From: joseph Borremans Date: Fri, 5 Oct 2012 17:48:52 +0200 Subject: [PATCH 31/40] reversed order of progress indication for visual harmony so that text matches the progress bar --- app/views/milestones/show.html.haml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/milestones/show.html.haml b/app/views/milestones/show.html.haml index 4d0c9a4c34d..d3b1c092192 100644 --- a/app/views/milestones/show.html.haml +++ b/app/views/milestones/show.html.haml @@ -31,9 +31,9 @@ %h5 Progress: %small - #{@milestone.issues.opened.count} open - – #{@milestone.issues.closed.count} closed + – + #{@milestone.issues.opened.count} open .progress.progress-success .bar{style: "width: #{@milestone.percent_complete}%;"} -- GitLab From dcd52560cd70f9732a9ce308fd913f6a164f51b7 Mon Sep 17 00:00:00 2001 From: Aaron Stone Date: Fri, 5 Oct 2012 23:46:15 -0700 Subject: [PATCH 32/40] Tiny fix to the add/edit groups form path field --- app/views/admin/groups/_form.html.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/admin/groups/_form.html.haml b/app/views/admin/groups/_form.html.haml index 46c5956394f..e85cce66ba1 100644 --- a/app/views/admin/groups/_form.html.haml +++ b/app/views/admin/groups/_form.html.haml @@ -12,7 +12,7 @@ URL .input .input-prepend - %span.add-on= web_app_url + %span.add-on= web_app_url + 'groups/' = f.text_field :code, placeholder: "example" .form-actions -- GitLab From 1b00780630f2d7664791610a5f83a93272e80c7c Mon Sep 17 00:00:00 2001 From: Danillo Nunes Date: Sat, 6 Oct 2012 21:36:20 -0300 Subject: [PATCH 33/40] Doc fix: Nginx init script requires sudo --- doc/installation.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation.md b/doc/installation.md index 7de1a2c3828..23b8c70365c 100644 --- a/doc/installation.md +++ b/doc/installation.md @@ -318,7 +318,7 @@ a different host, you can configure its connection string in the sudo vim /etc/nginx/sites-enabled/gitlab # Restart nginx: - /etc/init.d/nginx restart + sudo /etc/init.d/nginx restart ## 3. Init script -- GitLab From 4c7834223e931aec464a43b7511343caf81e53ea Mon Sep 17 00:00:00 2001 From: Nihad Abbasov Date: Mon, 8 Oct 2012 01:52:08 -0700 Subject: [PATCH 34/40] add API changelog --- CHANGELOG | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 3fec2d86dfc..3a283aa5a45 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,7 @@ +master + - [API] allow to authorize using private token in HTTP header + - [API] add user creation + v 2.9.1 - Fixed resque custom config init @@ -9,7 +13,7 @@ v 2.9.0 - restyled projects list on dashboard - ssh keys validation to prevent gitolite crash - send notifications if changed premission in project - - scss refactoring. gitlab_bootstrap/ dir + - scss refactoring. gitlab_bootstrap/ dir - fix git push http body bigger than 112k problem - list of labels page under issues tab - API for milestones, keys @@ -113,7 +117,7 @@ v 2.1.0 v 2.0.0 - gitolite as main git host system - merge requests - - project/repo access + - project/repo access - link to commit/issue feed - design tab - improved email notifications @@ -147,7 +151,7 @@ v 1.1.0 - bugfix & code cleaning v 1.0.2 - - fixed bug with empty project + - fixed bug with empty project - added adv validation for project path & code - feature: issues can be sortable - bugfix -- GitLab From 70bc93654a5564dc36ed4b34c73036f879f2bb5f Mon Sep 17 00:00:00 2001 From: Nihad Abbasov Date: Mon, 8 Oct 2012 01:54:36 -0700 Subject: [PATCH 35/40] projects API should return info about deleted hook --- lib/api/projects.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/api/projects.rb b/lib/api/projects.rb index c3dc3da6fac..5a1b1779ad5 100644 --- a/lib/api/projects.rb +++ b/lib/api/projects.rb @@ -176,7 +176,6 @@ module Gitlab authorize! :admin_project, user_project @hook = user_project.hooks.find(params[:hook_id]) @hook.destroy - nil end # Get a project repository branches -- GitLab From cf519c4297932607c07599b9c0d2c4eea8b142ff Mon Sep 17 00:00:00 2001 From: Nihad Abbasov Date: Mon, 8 Oct 2012 02:13:53 -0700 Subject: [PATCH 36/40] API: add project snippets listing --- CHANGELOG | 1 + doc/api/snippets.md | 10 +++++++++- lib/api/projects.rb | 10 ++++++++++ spec/requests/api/projects_spec.rb | 9 +++++++++ 4 files changed, 29 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index 3a283aa5a45..1c9f3bbac40 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,4 +1,5 @@ master + - [API] add project snippets list - [API] allow to authorize using private token in HTTP header - [API] add user creation diff --git a/doc/api/snippets.md b/doc/api/snippets.md index 0cd29ce530b..288fd5296f6 100644 --- a/doc/api/snippets.md +++ b/doc/api/snippets.md @@ -1,6 +1,14 @@ ## List snippets -Not implemented. +Get a list of project snippets. + +``` +GET /projects/:id/snippets +``` + +Parameters: + ++ `id` (required) - The ID or code name of a project ## Single snippet diff --git a/lib/api/projects.rb b/lib/api/projects.rb index 5a1b1779ad5..0f013883c81 100644 --- a/lib/api/projects.rb +++ b/lib/api/projects.rb @@ -228,6 +228,16 @@ module Gitlab present CommitDecorator.decorate(commits), with: Entities::RepoCommit end + # Get a project snippets + # + # Parameters: + # id (required) - The ID or code name of a project + # Example Request: + # GET /projects/:id/snippets + get ":id/snippets" do + present paginate(user_project.snippets), with: Entities::ProjectSnippet + end + # Get a project snippet # # Parameters: diff --git a/spec/requests/api/projects_spec.rb b/spec/requests/api/projects_spec.rb index 498bbad6179..94c9abb35e4 100644 --- a/spec/requests/api/projects_spec.rb +++ b/spec/requests/api/projects_spec.rb @@ -220,6 +220,15 @@ describe Gitlab::API do end end + describe "GET /projects/:id/snippets" do + it "should return a project snippet" do + get api("/projects/#{project.code}/snippets", user) + response.status.should == 200 + json_response.should be_an Array + json_response.first['title'].should == snippet.title + end + end + describe "GET /projects/:id/snippets/:snippet_id" do it "should return a project snippet" do get api("/projects/#{project.code}/snippets/#{snippet.id}", user) -- GitLab From a3535df3917e75e2c0bb7ed29782392ebadf63c9 Mon Sep 17 00:00:00 2001 From: Marin Jankovski Date: Mon, 8 Oct 2012 12:41:25 +0200 Subject: [PATCH 37/40] Do not allow removal of a project owner user. --- app/controllers/admin/users_controller.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb index c9586ad5da9..55f2b24894f 100644 --- a/app/controllers/admin/users_controller.rb +++ b/app/controllers/admin/users_controller.rb @@ -98,6 +98,7 @@ class Admin::UsersController < AdminController def destroy @admin_user = User.find(params[:id]) + redirect_to admin_users_url, notice: 'User is a project owner, cannot be removed.' and return if @admin_user.my_own_projects.count > 0 @admin_user.destroy respond_to do |format| -- GitLab From e3da227c4bbb2f0a0accd94ea6d5f0f57572b0be Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 8 Oct 2012 14:17:46 +0300 Subject: [PATCH 38/40] Fix dashboard atom feed routes --- app/decorators/event_decorator.rb | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/app/decorators/event_decorator.rb b/app/decorators/event_decorator.rb index b2f9c439589..1b0ad0da28f 100644 --- a/app/decorators/event_decorator.rb +++ b/app/decorators/event_decorator.rb @@ -24,15 +24,14 @@ class EventDecorator < ApplicationDecorator elsif self.push? if self.push_with_commits? if self.commits_count > 1 - h.compare_project_commits_path(self.project, :from => self.parent_commit.id, :to => self.last_commit.id) + h.project_compare_url(self.project, :from => self.parent_commit.id, :to => self.last_commit.id) else - h.project_commit_path(self.project, :id => self.last_commit.id) + h.project_commit_url(self.project, :id => self.last_commit.id) end else - h.project_commits_url(self.project, ref: self.ref_name) + h.project_commits_url(self.project, self.ref_name) end end - end def feed_summary -- GitLab From 2b437428f18ea94db6a45bca03bf033808e63999 Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Mon, 8 Oct 2012 21:11:38 +0400 Subject: [PATCH 39/40] test postgres --- .travis.yml | 7 +-- app/models/project.rb | 5 +- config/database.yml.example | 6 +- db/migrate/20110927130352_create_notes.rb | 3 +- ...10928142747_change_noteable_id_for_note.rb | 4 +- db/migrate/20120121122616_fix_noteable_id.rb | 2 +- db/schema.rb | 55 ++++++++++--------- spec/models/note_spec.rb | 8 +-- 8 files changed, 46 insertions(+), 44 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2aa468fd750..bb114b80255 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,16 +1,15 @@ env: + - DB=postgresql - DB=mysql before_install: - sudo apt-get install libicu-dev -y - sudo apt-get install libqt4-dev libqtwebkit-dev -y - gem install charlock_holmes -v="0.6.8" -branches: - only: - - 'master' rvm: - 1.9.3 services: - mysql + - postgresql before_script: - "cp config/database.yml.$DB config/database.yml" - "cp config/gitlab.yml.example config/gitlab.yml" @@ -18,4 +17,4 @@ before_script: - "bundle exec rake db:migrate RAILS_ENV=test" - "bundle exec rake db:seed_fu RAILS_ENV=test" - "sh -e /etc/init.d/xvfb start" -script: "bundle exec rake travis --trace" +script: "bundle exec rake travis" diff --git a/app/models/project.rb b/app/models/project.rb index 982b746365d..689155d5779 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -119,15 +119,16 @@ class Project < ActiveRecord::Base end def build_commit_note(commit) - notes.new(noteable_id: commit.id, noteable_type: "Commit") + notes.new(noteable_commit_id: commit.id, noteable_type: "Commit") end def commit_notes(commit) - notes.where(noteable_id: commit.id, noteable_type: "Commit", line_code: nil) + notes.where(noteable_commit_id: commit.id, noteable_type: "Commit", line_code: nil) end def commit_line_notes(commit) notes.where(noteable_id: commit.id, noteable_type: "Commit").where("line_code IS NOT NULL") + notes.where(noteable_commit_id: commit.id, noteable_type: "Commit").where("line_code IS NOT NULL") end def public? diff --git a/config/database.yml.example b/config/database.yml.example index c5a2b8d605b..c17862957ce 100644 --- a/config/database.yml.example +++ b/config/database.yml.example @@ -34,6 +34,6 @@ test: &test reconnect: false database: gitlabhq_test pool: 5 - username: root - password: "secure password" - # socket: /tmp/mysql.sock + username: postgres + password: + # socket: /tmp/postgresql.sock diff --git a/db/migrate/20110927130352_create_notes.rb b/db/migrate/20110927130352_create_notes.rb index 72a0e817617..5810cdda493 100644 --- a/db/migrate/20110927130352_create_notes.rb +++ b/db/migrate/20110927130352_create_notes.rb @@ -2,8 +2,9 @@ class CreateNotes < ActiveRecord::Migration def change create_table :notes do |t| t.string :note - t.integer :noteable_id + t.string :noteable_commit_id t.string :noteable_type + t.integer :noteable_id t.integer :author_id t.timestamps diff --git a/db/migrate/20110928142747_change_noteable_id_for_note.rb b/db/migrate/20110928142747_change_noteable_id_for_note.rb index dc9d1f0171a..8d1d3221127 100644 --- a/db/migrate/20110928142747_change_noteable_id_for_note.rb +++ b/db/migrate/20110928142747_change_noteable_id_for_note.rb @@ -1,9 +1,9 @@ class ChangeNoteableIdForNote < ActiveRecord::Migration def up - change_column :notes, :noteable_id, :string + # change_column :notes, :noteable_id, :string end def down - change_column :notes, :noteable_id, :integer + # change_column :notes, :noteable_id, :integer end end diff --git a/db/migrate/20120121122616_fix_noteable_id.rb b/db/migrate/20120121122616_fix_noteable_id.rb index d110e8cd63b..14ddde3d773 100644 --- a/db/migrate/20120121122616_fix_noteable_id.rb +++ b/db/migrate/20120121122616_fix_noteable_id.rb @@ -1,6 +1,6 @@ class FixNoteableId < ActiveRecord::Migration def up - change_column :notes, :noteable_id, :string, :limit => 255 + #change_column :notes, :noteable_id, :string, :limit => 255 end def down diff --git a/db/schema.rb b/db/schema.rb index ec4729c0c08..cf9ed745e66 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -60,19 +60,19 @@ ActiveRecord::Schema.define(:version => 20121002151033) do end create_table "merge_requests", :force => true do |t| - t.string "target_branch", :null => false - t.string "source_branch", :null => false - t.integer "project_id", :null => false + t.string "target_branch", :null => false + t.string "source_branch", :null => false + t.integer "project_id", :null => false t.integer "author_id" t.integer "assignee_id" t.string "title" - t.boolean "closed", :default => false, :null => false - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false - t.text "st_commits", :limit => 2147483647 - t.text "st_diffs", :limit => 2147483647 - t.boolean "merged", :default => false, :null => false - t.integer "state", :default => 1, :null => false + t.boolean "closed", :default => false, :null => false + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + t.text "st_commits" + t.text "st_diffs" + t.boolean "merged", :default => false, :null => false + t.integer "state", :default => 1, :null => false end add_index "merge_requests", ["project_id"], :name => "index_merge_requests_on_project_id" @@ -89,11 +89,12 @@ ActiveRecord::Schema.define(:version => 20121002151033) do create_table "notes", :force => true do |t| t.text "note" - t.string "noteable_id" + t.string "noteable_commit_id" t.string "noteable_type" + t.integer "noteable_id" t.integer "author_id" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false t.integer "project_id" t.string "attachment" t.string "line_code" @@ -155,30 +156,30 @@ ActiveRecord::Schema.define(:version => 20121002151033) do end create_table "users", :force => true do |t| - t.string "email", :default => "", :null => false - t.string "encrypted_password", :limit => 128, :default => "", :null => false + t.string "email", :default => "", :null => false + t.string "encrypted_password", :default => "", :null => false t.string "reset_password_token" t.datetime "reset_password_sent_at" t.datetime "remember_created_at" - t.integer "sign_in_count", :default => 0 + t.integer "sign_in_count", :default => 0 t.datetime "current_sign_in_at" t.datetime "last_sign_in_at" t.string "current_sign_in_ip" t.string "last_sign_in_ip" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false t.string "name" - t.boolean "admin", :default => false, :null => false - t.integer "projects_limit", :default => 10 - t.string "skype", :default => "", :null => false - t.string "linkedin", :default => "", :null => false - t.string "twitter", :default => "", :null => false + t.boolean "admin", :default => false, :null => false + t.integer "projects_limit", :default => 10 + t.string "skype", :default => "", :null => false + t.string "linkedin", :default => "", :null => false + t.string "twitter", :default => "", :null => false t.string "authentication_token" - t.boolean "dark_scheme", :default => false, :null => false - t.integer "theme_id", :default => 1, :null => false + t.boolean "dark_scheme", :default => false, :null => false + t.integer "theme_id", :default => 1, :null => false t.string "bio" - t.boolean "blocked", :default => false, :null => false - t.integer "failed_attempts", :default => 0 + t.boolean "blocked", :default => false, :null => false + t.integer "failed_attempts", :default => 0 t.datetime "locked_at" t.string "extern_uid" t.string "provider" diff --git a/spec/models/note_spec.rb b/spec/models/note_spec.rb index 34493a1117d..87bfdfac116 100644 --- a/spec/models/note_spec.rb +++ b/spec/models/note_spec.rb @@ -65,12 +65,12 @@ describe Note do describe "Commit notes" do before do @note = Factory :note, - noteable_id: commit.id, + noteable_commit_id: commit.id, noteable_type: "Commit" end it "should save a valid note" do - @note.noteable_id.should == commit.id + @note.noteable_commit_id.should == commit.id @note.target.id.should == commit.id end end @@ -78,13 +78,13 @@ describe Note do describe "Pre-line commit notes" do before do @note = Factory :note, - noteable_id: commit.id, + noteable_commit_id: commit.id, noteable_type: "Commit", line_code: "0_16_1" end it "should save a valid note" do - @note.noteable_id.should == commit.id + @note.noteable_commit_id.should == commit.id @note.target.id.should == commit.id end end -- GitLab From e543074c8e3beb1da0db817d9940a4c9e9853080 Mon Sep 17 00:00:00 2001 From: Andrey Kumanyaev Date: Mon, 8 Oct 2012 21:23:12 +0400 Subject: [PATCH 40/40] add sqlite to tests --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index bb114b80255..bd84c12ff4b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,7 @@ env: - DB=postgresql - DB=mysql + - DB=sqlite before_install: - sudo apt-get install libicu-dev -y - sudo apt-get install libqt4-dev libqtwebkit-dev -y -- GitLab