Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: - `package.json`
This commit is contained in:
		
						commit
						0ae7d84273
					
				| 
						 | 
					@ -55,6 +55,9 @@ npm-debug.log
 | 
				
			||||||
yarn-error.log
 | 
					yarn-error.log
 | 
				
			||||||
yarn-debug.log
 | 
					yarn-debug.log
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Ignore vagrant log files
 | 
				
			||||||
 | 
					ubuntu-xenial-16.04-cloudimg-console.log
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Ignore Docker option files
 | 
					# Ignore Docker option files
 | 
				
			||||||
docker-compose.override.yml
 | 
					docker-compose.override.yml
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -54,7 +54,7 @@ Bug reports and feature suggestions can be submitted to [GitHub Issues](https://
 | 
				
			||||||
 | 
					
 | 
				
			||||||
You can submit translations via [Crowdin](https://crowdin.com/project/mastodon). They are periodically merged into the codebase.
 | 
					You can submit translations via [Crowdin](https://crowdin.com/project/mastodon). They are periodically merged into the codebase.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[][crowdin]
 | 
					[](https://crowdin.com/project/mastodon)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Pull requests
 | 
					## Pull requests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -123,3 +123,4 @@ RUN cd ~ && \
 | 
				
			||||||
# Set the work dir and the container entry point
 | 
					# Set the work dir and the container entry point
 | 
				
			||||||
WORKDIR /opt/mastodon
 | 
					WORKDIR /opt/mastodon
 | 
				
			||||||
ENTRYPOINT ["/tini", "--"]
 | 
					ENTRYPOINT ["/tini", "--"]
 | 
				
			||||||
 | 
					EXPOSE 3000 4000
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										14
									
								
								Gemfile
								
								
								
								
							
							
						
						
									
										14
									
								
								Gemfile
								
								
								
								
							| 
						 | 
					@ -3,7 +3,7 @@
 | 
				
			||||||
source 'https://rubygems.org'
 | 
					source 'https://rubygems.org'
 | 
				
			||||||
ruby '>= 2.4.0', '< 2.7.0'
 | 
					ruby '>= 2.4.0', '< 2.7.0'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
gem 'pkg-config', '~> 1.3'
 | 
					gem 'pkg-config', '~> 1.4'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
gem 'puma', '~> 4.2'
 | 
					gem 'puma', '~> 4.2'
 | 
				
			||||||
gem 'rails', '~> 5.2.3'
 | 
					gem 'rails', '~> 5.2.3'
 | 
				
			||||||
| 
						 | 
					@ -15,7 +15,7 @@ gem 'makara', '~> 0.4'
 | 
				
			||||||
gem 'pghero', '~> 2.3'
 | 
					gem 'pghero', '~> 2.3'
 | 
				
			||||||
gem 'dotenv-rails', '~> 2.7'
 | 
					gem 'dotenv-rails', '~> 2.7'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
gem 'aws-sdk-s3', '~> 1.48', require: false
 | 
					gem 'aws-sdk-s3', '~> 1.52', require: false
 | 
				
			||||||
gem 'fog-core', '<= 2.1.0'
 | 
					gem 'fog-core', '<= 2.1.0'
 | 
				
			||||||
gem 'fog-openstack', '~> 0.3', require: false
 | 
					gem 'fog-openstack', '~> 0.3', require: false
 | 
				
			||||||
gem 'paperclip', '~> 6.0'
 | 
					gem 'paperclip', '~> 6.0'
 | 
				
			||||||
| 
						 | 
					@ -86,7 +86,7 @@ gem 'sidekiq-scheduler', '~> 3.0'
 | 
				
			||||||
gem 'sidekiq-unique-jobs', '~> 6.0'
 | 
					gem 'sidekiq-unique-jobs', '~> 6.0'
 | 
				
			||||||
gem 'sidekiq-bulk', '~>0.2.0'
 | 
					gem 'sidekiq-bulk', '~>0.2.0'
 | 
				
			||||||
gem 'simple-navigation', '~> 4.1'
 | 
					gem 'simple-navigation', '~> 4.1'
 | 
				
			||||||
gem 'simple_form', '~> 4.1'
 | 
					gem 'simple_form', '~> 5.0'
 | 
				
			||||||
gem 'sprockets-rails', '~> 3.2', require: 'sprockets/railtie'
 | 
					gem 'sprockets-rails', '~> 3.2', require: 'sprockets/railtie'
 | 
				
			||||||
gem 'stoplight', '~> 2.1.3'
 | 
					gem 'stoplight', '~> 2.1.3'
 | 
				
			||||||
gem 'strong_migrations', '~> 0.4'
 | 
					gem 'strong_migrations', '~> 0.4'
 | 
				
			||||||
| 
						 | 
					@ -109,7 +109,7 @@ group :development, :test do
 | 
				
			||||||
  gem 'i18n-tasks', '~> 0.9', require: false
 | 
					  gem 'i18n-tasks', '~> 0.9', require: false
 | 
				
			||||||
  gem 'pry-byebug', '~> 3.7'
 | 
					  gem 'pry-byebug', '~> 3.7'
 | 
				
			||||||
  gem 'pry-rails', '~> 0.3'
 | 
					  gem 'pry-rails', '~> 0.3'
 | 
				
			||||||
  gem 'rspec-rails', '~> 3.8'
 | 
					  gem 'rspec-rails', '~> 3.9'
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
group :production, :test do
 | 
					group :production, :test do
 | 
				
			||||||
| 
						 | 
					@ -119,7 +119,7 @@ end
 | 
				
			||||||
group :test do
 | 
					group :test do
 | 
				
			||||||
  gem 'capybara', '~> 3.29'
 | 
					  gem 'capybara', '~> 3.29'
 | 
				
			||||||
  gem 'climate_control', '~> 0.2'
 | 
					  gem 'climate_control', '~> 0.2'
 | 
				
			||||||
  gem 'faker', '~> 2.5'
 | 
					  gem 'faker', '~> 2.6'
 | 
				
			||||||
  gem 'microformats', '~> 4.1'
 | 
					  gem 'microformats', '~> 4.1'
 | 
				
			||||||
  gem 'rails-controller-testing', '~> 1.0'
 | 
					  gem 'rails-controller-testing', '~> 1.0'
 | 
				
			||||||
  gem 'rspec-sidekiq', '~> 3.0'
 | 
					  gem 'rspec-sidekiq', '~> 3.0'
 | 
				
			||||||
| 
						 | 
					@ -129,8 +129,8 @@ group :test do
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
group :development do
 | 
					group :development do
 | 
				
			||||||
  gem 'active_record_query_trace', '~> 1.6'
 | 
					  gem 'active_record_query_trace', '~> 1.7'
 | 
				
			||||||
  gem 'annotate', '~> 2.7'
 | 
					  gem 'annotate', '~> 3.0'
 | 
				
			||||||
  gem 'better_errors', '~> 2.5'
 | 
					  gem 'better_errors', '~> 2.5'
 | 
				
			||||||
  gem 'binding_of_caller', '~> 0.7'
 | 
					  gem 'binding_of_caller', '~> 0.7'
 | 
				
			||||||
  gem 'bullet', '~> 6.0'
 | 
					  gem 'bullet', '~> 6.0'
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										76
									
								
								Gemfile.lock
								
								
								
								
							
							
						
						
									
										76
									
								
								Gemfile.lock
								
								
								
								
							| 
						 | 
					@ -72,7 +72,7 @@ GEM
 | 
				
			||||||
      activemodel (>= 4.1, < 6.1)
 | 
					      activemodel (>= 4.1, < 6.1)
 | 
				
			||||||
      case_transform (>= 0.2)
 | 
					      case_transform (>= 0.2)
 | 
				
			||||||
      jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
 | 
					      jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
 | 
				
			||||||
    active_record_query_trace (1.6.2)
 | 
					    active_record_query_trace (1.7)
 | 
				
			||||||
    activejob (5.2.3)
 | 
					    activejob (5.2.3)
 | 
				
			||||||
      activesupport (= 5.2.3)
 | 
					      activesupport (= 5.2.3)
 | 
				
			||||||
      globalid (>= 0.3.6)
 | 
					      globalid (>= 0.3.6)
 | 
				
			||||||
| 
						 | 
					@ -95,7 +95,7 @@ GEM
 | 
				
			||||||
      public_suffix (>= 2.0.2, < 5.0)
 | 
					      public_suffix (>= 2.0.2, < 5.0)
 | 
				
			||||||
    airbrussh (1.3.4)
 | 
					    airbrussh (1.3.4)
 | 
				
			||||||
      sshkit (>= 1.6.1, != 1.7.0)
 | 
					      sshkit (>= 1.6.1, != 1.7.0)
 | 
				
			||||||
    annotate (2.7.5)
 | 
					    annotate (3.0.2)
 | 
				
			||||||
      activerecord (>= 3.2, < 7.0)
 | 
					      activerecord (>= 3.2, < 7.0)
 | 
				
			||||||
      rake (>= 10.4, < 13.0)
 | 
					      rake (>= 10.4, < 13.0)
 | 
				
			||||||
    arel (9.0.0)
 | 
					    arel (9.0.0)
 | 
				
			||||||
| 
						 | 
					@ -105,17 +105,17 @@ GEM
 | 
				
			||||||
    av (0.9.0)
 | 
					    av (0.9.0)
 | 
				
			||||||
      cocaine (~> 0.5.3)
 | 
					      cocaine (~> 0.5.3)
 | 
				
			||||||
    aws-eventstream (1.0.3)
 | 
					    aws-eventstream (1.0.3)
 | 
				
			||||||
    aws-partitions (1.207.0)
 | 
					    aws-partitions (1.230.0)
 | 
				
			||||||
    aws-sdk-core (3.65.1)
 | 
					    aws-sdk-core (3.72.0)
 | 
				
			||||||
      aws-eventstream (~> 1.0, >= 1.0.2)
 | 
					      aws-eventstream (~> 1.0, >= 1.0.2)
 | 
				
			||||||
      aws-partitions (~> 1.0)
 | 
					      aws-partitions (~> 1, >= 1.228.0)
 | 
				
			||||||
      aws-sigv4 (~> 1.1)
 | 
					      aws-sigv4 (~> 1.1)
 | 
				
			||||||
      jmespath (~> 1.0)
 | 
					      jmespath (~> 1.0)
 | 
				
			||||||
    aws-sdk-kms (1.24.0)
 | 
					    aws-sdk-kms (1.25.0)
 | 
				
			||||||
      aws-sdk-core (~> 3, >= 3.61.1)
 | 
					      aws-sdk-core (~> 3, >= 3.71.0)
 | 
				
			||||||
      aws-sigv4 (~> 1.1)
 | 
					      aws-sigv4 (~> 1.1)
 | 
				
			||||||
    aws-sdk-s3 (1.48.0)
 | 
					    aws-sdk-s3 (1.52.0)
 | 
				
			||||||
      aws-sdk-core (~> 3, >= 3.61.1)
 | 
					      aws-sdk-core (~> 3, >= 3.71.0)
 | 
				
			||||||
      aws-sdk-kms (~> 1)
 | 
					      aws-sdk-kms (~> 1)
 | 
				
			||||||
      aws-sigv4 (~> 1.1)
 | 
					      aws-sigv4 (~> 1.1)
 | 
				
			||||||
    aws-sigv4 (1.1.0)
 | 
					    aws-sigv4 (1.1.0)
 | 
				
			||||||
| 
						 | 
					@ -235,13 +235,13 @@ GEM
 | 
				
			||||||
      multi_json
 | 
					      multi_json
 | 
				
			||||||
    encryptor (3.0.0)
 | 
					    encryptor (3.0.0)
 | 
				
			||||||
    equatable (0.6.1)
 | 
					    equatable (0.6.1)
 | 
				
			||||||
    erubi (1.8.0)
 | 
					    erubi (1.9.0)
 | 
				
			||||||
    et-orbi (1.1.6)
 | 
					    et-orbi (1.1.6)
 | 
				
			||||||
      tzinfo
 | 
					      tzinfo
 | 
				
			||||||
    excon (0.62.0)
 | 
					    excon (0.62.0)
 | 
				
			||||||
    fabrication (2.20.2)
 | 
					    fabrication (2.20.2)
 | 
				
			||||||
    faker (2.5.0)
 | 
					    faker (2.6.0)
 | 
				
			||||||
      i18n (~> 1.6.0)
 | 
					      i18n (>= 1.6, < 1.8)
 | 
				
			||||||
    faraday (0.15.4)
 | 
					    faraday (0.15.4)
 | 
				
			||||||
      multipart-post (>= 1.2, < 3)
 | 
					      multipart-post (>= 1.2, < 3)
 | 
				
			||||||
    fast_blank (1.0.0)
 | 
					    fast_blank (1.0.0)
 | 
				
			||||||
| 
						 | 
					@ -307,7 +307,7 @@ GEM
 | 
				
			||||||
    httplog (1.3.2)
 | 
					    httplog (1.3.2)
 | 
				
			||||||
      rack (>= 1.0)
 | 
					      rack (>= 1.0)
 | 
				
			||||||
      rainbow (>= 2.0.0)
 | 
					      rainbow (>= 2.0.0)
 | 
				
			||||||
    i18n (1.6.0)
 | 
					    i18n (1.7.0)
 | 
				
			||||||
      concurrent-ruby (~> 1.0)
 | 
					      concurrent-ruby (~> 1.0)
 | 
				
			||||||
    i18n-tasks (0.9.29)
 | 
					    i18n-tasks (0.9.29)
 | 
				
			||||||
      activesupport (>= 4.0.2)
 | 
					      activesupport (>= 4.0.2)
 | 
				
			||||||
| 
						 | 
					@ -380,7 +380,7 @@ GEM
 | 
				
			||||||
    mimemagic (0.3.3)
 | 
					    mimemagic (0.3.3)
 | 
				
			||||||
    mini_mime (1.0.2)
 | 
					    mini_mime (1.0.2)
 | 
				
			||||||
    mini_portile2 (2.4.0)
 | 
					    mini_portile2 (2.4.0)
 | 
				
			||||||
    minitest (5.12.0)
 | 
					    minitest (5.12.2)
 | 
				
			||||||
    msgpack (1.3.1)
 | 
					    msgpack (1.3.1)
 | 
				
			||||||
    multi_json (1.13.1)
 | 
					    multi_json (1.13.1)
 | 
				
			||||||
    multipart-post (2.1.1)
 | 
					    multipart-post (2.1.1)
 | 
				
			||||||
| 
						 | 
					@ -437,7 +437,7 @@ GEM
 | 
				
			||||||
    pg (1.1.4)
 | 
					    pg (1.1.4)
 | 
				
			||||||
    pghero (2.3.0)
 | 
					    pghero (2.3.0)
 | 
				
			||||||
      activerecord (>= 5)
 | 
					      activerecord (>= 5)
 | 
				
			||||||
    pkg-config (1.3.9)
 | 
					    pkg-config (1.4.0)
 | 
				
			||||||
    premailer (1.11.1)
 | 
					    premailer (1.11.1)
 | 
				
			||||||
      addressable
 | 
					      addressable
 | 
				
			||||||
      css_parser (>= 1.6.0)
 | 
					      css_parser (>= 1.6.0)
 | 
				
			||||||
| 
						 | 
					@ -490,8 +490,8 @@ GEM
 | 
				
			||||||
    rails-dom-testing (2.0.3)
 | 
					    rails-dom-testing (2.0.3)
 | 
				
			||||||
      activesupport (>= 4.2.0)
 | 
					      activesupport (>= 4.2.0)
 | 
				
			||||||
      nokogiri (>= 1.6)
 | 
					      nokogiri (>= 1.6)
 | 
				
			||||||
    rails-html-sanitizer (1.2.0)
 | 
					    rails-html-sanitizer (1.3.0)
 | 
				
			||||||
      loofah (~> 2.2, >= 2.2.2)
 | 
					      loofah (~> 2.3)
 | 
				
			||||||
    rails-i18n (5.1.3)
 | 
					    rails-i18n (5.1.3)
 | 
				
			||||||
      i18n (>= 0.7, < 2)
 | 
					      i18n (>= 0.7, < 2)
 | 
				
			||||||
      railties (>= 5.0, < 6)
 | 
					      railties (>= 5.0, < 6)
 | 
				
			||||||
| 
						 | 
					@ -540,26 +540,26 @@ GEM
 | 
				
			||||||
    rpam2 (4.0.2)
 | 
					    rpam2 (4.0.2)
 | 
				
			||||||
    rqrcode (0.10.1)
 | 
					    rqrcode (0.10.1)
 | 
				
			||||||
      chunky_png (~> 1.0)
 | 
					      chunky_png (~> 1.0)
 | 
				
			||||||
    rspec-core (3.8.0)
 | 
					    rspec-core (3.9.0)
 | 
				
			||||||
      rspec-support (~> 3.8.0)
 | 
					      rspec-support (~> 3.9.0)
 | 
				
			||||||
    rspec-expectations (3.8.2)
 | 
					    rspec-expectations (3.9.0)
 | 
				
			||||||
      diff-lcs (>= 1.2.0, < 2.0)
 | 
					      diff-lcs (>= 1.2.0, < 2.0)
 | 
				
			||||||
      rspec-support (~> 3.8.0)
 | 
					      rspec-support (~> 3.9.0)
 | 
				
			||||||
    rspec-mocks (3.8.0)
 | 
					    rspec-mocks (3.9.0)
 | 
				
			||||||
      diff-lcs (>= 1.2.0, < 2.0)
 | 
					      diff-lcs (>= 1.2.0, < 2.0)
 | 
				
			||||||
      rspec-support (~> 3.8.0)
 | 
					      rspec-support (~> 3.9.0)
 | 
				
			||||||
    rspec-rails (3.8.2)
 | 
					    rspec-rails (3.9.0)
 | 
				
			||||||
      actionpack (>= 3.0)
 | 
					      actionpack (>= 3.0)
 | 
				
			||||||
      activesupport (>= 3.0)
 | 
					      activesupport (>= 3.0)
 | 
				
			||||||
      railties (>= 3.0)
 | 
					      railties (>= 3.0)
 | 
				
			||||||
      rspec-core (~> 3.8.0)
 | 
					      rspec-core (~> 3.9.0)
 | 
				
			||||||
      rspec-expectations (~> 3.8.0)
 | 
					      rspec-expectations (~> 3.9.0)
 | 
				
			||||||
      rspec-mocks (~> 3.8.0)
 | 
					      rspec-mocks (~> 3.9.0)
 | 
				
			||||||
      rspec-support (~> 3.8.0)
 | 
					      rspec-support (~> 3.9.0)
 | 
				
			||||||
    rspec-sidekiq (3.0.3)
 | 
					    rspec-sidekiq (3.0.3)
 | 
				
			||||||
      rspec-core (~> 3.0, >= 3.0.0)
 | 
					      rspec-core (~> 3.0, >= 3.0.0)
 | 
				
			||||||
      sidekiq (>= 2.4.0)
 | 
					      sidekiq (>= 2.4.0)
 | 
				
			||||||
    rspec-support (3.8.0)
 | 
					    rspec-support (3.9.0)
 | 
				
			||||||
    rubocop (0.75.1)
 | 
					    rubocop (0.75.1)
 | 
				
			||||||
      jaro_winkler (~> 1.5.1)
 | 
					      jaro_winkler (~> 1.5.1)
 | 
				
			||||||
      parallel (~> 1.10)
 | 
					      parallel (~> 1.10)
 | 
				
			||||||
| 
						 | 
					@ -599,7 +599,7 @@ GEM
 | 
				
			||||||
      thor (~> 0)
 | 
					      thor (~> 0)
 | 
				
			||||||
    simple-navigation (4.1.0)
 | 
					    simple-navigation (4.1.0)
 | 
				
			||||||
      activesupport (>= 2.3.2)
 | 
					      activesupport (>= 2.3.2)
 | 
				
			||||||
    simple_form (4.1.0)
 | 
					    simple_form (5.0.1)
 | 
				
			||||||
      actionpack (>= 5.0)
 | 
					      actionpack (>= 5.0)
 | 
				
			||||||
      activemodel (>= 5.0)
 | 
					      activemodel (>= 5.0)
 | 
				
			||||||
    simplecov (0.17.1)
 | 
					    simplecov (0.17.1)
 | 
				
			||||||
| 
						 | 
					@ -622,7 +622,7 @@ GEM
 | 
				
			||||||
    stoplight (2.1.3)
 | 
					    stoplight (2.1.3)
 | 
				
			||||||
    streamio-ffmpeg (3.0.2)
 | 
					    streamio-ffmpeg (3.0.2)
 | 
				
			||||||
      multi_json (~> 1.8)
 | 
					      multi_json (~> 1.8)
 | 
				
			||||||
    strong_migrations (0.4.1)
 | 
					    strong_migrations (0.4.2)
 | 
				
			||||||
      activerecord (>= 5)
 | 
					      activerecord (>= 5)
 | 
				
			||||||
    temple (0.8.1)
 | 
					    temple (0.8.1)
 | 
				
			||||||
    terminal-table (1.8.0)
 | 
					    terminal-table (1.8.0)
 | 
				
			||||||
| 
						 | 
					@ -681,10 +681,10 @@ PLATFORMS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
DEPENDENCIES
 | 
					DEPENDENCIES
 | 
				
			||||||
  active_model_serializers (~> 0.10)
 | 
					  active_model_serializers (~> 0.10)
 | 
				
			||||||
  active_record_query_trace (~> 1.6)
 | 
					  active_record_query_trace (~> 1.7)
 | 
				
			||||||
  addressable (~> 2.7)
 | 
					  addressable (~> 2.7)
 | 
				
			||||||
  annotate (~> 2.7)
 | 
					  annotate (~> 3.0)
 | 
				
			||||||
  aws-sdk-s3 (~> 1.48)
 | 
					  aws-sdk-s3 (~> 1.52)
 | 
				
			||||||
  better_errors (~> 2.5)
 | 
					  better_errors (~> 2.5)
 | 
				
			||||||
  binding_of_caller (~> 0.7)
 | 
					  binding_of_caller (~> 0.7)
 | 
				
			||||||
  blurhash (~> 0.1)
 | 
					  blurhash (~> 0.1)
 | 
				
			||||||
| 
						 | 
					@ -712,7 +712,7 @@ DEPENDENCIES
 | 
				
			||||||
  doorkeeper (~> 5.2)
 | 
					  doorkeeper (~> 5.2)
 | 
				
			||||||
  dotenv-rails (~> 2.7)
 | 
					  dotenv-rails (~> 2.7)
 | 
				
			||||||
  fabrication (~> 2.20)
 | 
					  fabrication (~> 2.20)
 | 
				
			||||||
  faker (~> 2.5)
 | 
					  faker (~> 2.6)
 | 
				
			||||||
  fast_blank (~> 1.0)
 | 
					  fast_blank (~> 1.0)
 | 
				
			||||||
  fastimage
 | 
					  fastimage
 | 
				
			||||||
  fog-core (<= 2.1.0)
 | 
					  fog-core (<= 2.1.0)
 | 
				
			||||||
| 
						 | 
					@ -760,7 +760,7 @@ DEPENDENCIES
 | 
				
			||||||
  parslet
 | 
					  parslet
 | 
				
			||||||
  pg (~> 1.1)
 | 
					  pg (~> 1.1)
 | 
				
			||||||
  pghero (~> 2.3)
 | 
					  pghero (~> 2.3)
 | 
				
			||||||
  pkg-config (~> 1.3)
 | 
					  pkg-config (~> 1.4)
 | 
				
			||||||
  posix-spawn!
 | 
					  posix-spawn!
 | 
				
			||||||
  premailer-rails
 | 
					  premailer-rails
 | 
				
			||||||
  private_address_check (~> 0.5)
 | 
					  private_address_check (~> 0.5)
 | 
				
			||||||
| 
						 | 
					@ -780,7 +780,7 @@ DEPENDENCIES
 | 
				
			||||||
  redis-namespace (~> 1.5)
 | 
					  redis-namespace (~> 1.5)
 | 
				
			||||||
  redis-rails (~> 5.0)
 | 
					  redis-rails (~> 5.0)
 | 
				
			||||||
  rqrcode (~> 0.10)
 | 
					  rqrcode (~> 0.10)
 | 
				
			||||||
  rspec-rails (~> 3.8)
 | 
					  rspec-rails (~> 3.9)
 | 
				
			||||||
  rspec-sidekiq (~> 3.0)
 | 
					  rspec-sidekiq (~> 3.0)
 | 
				
			||||||
  rubocop (~> 0.75)
 | 
					  rubocop (~> 0.75)
 | 
				
			||||||
  rubocop-rails (~> 2.3)
 | 
					  rubocop-rails (~> 2.3)
 | 
				
			||||||
| 
						 | 
					@ -791,7 +791,7 @@ DEPENDENCIES
 | 
				
			||||||
  sidekiq-scheduler (~> 3.0)
 | 
					  sidekiq-scheduler (~> 3.0)
 | 
				
			||||||
  sidekiq-unique-jobs (~> 6.0)
 | 
					  sidekiq-unique-jobs (~> 6.0)
 | 
				
			||||||
  simple-navigation (~> 4.1)
 | 
					  simple-navigation (~> 4.1)
 | 
				
			||||||
  simple_form (~> 4.1)
 | 
					  simple_form (~> 5.0)
 | 
				
			||||||
  simplecov (~> 0.17)
 | 
					  simplecov (~> 0.17)
 | 
				
			||||||
  sprockets-rails (~> 3.2)
 | 
					  sprockets-rails (~> 3.2)
 | 
				
			||||||
  stackprof
 | 
					  stackprof
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -10,6 +10,12 @@ const makeEmojiMap = record => record.emojis.reduce((obj, emoji) => {
 | 
				
			||||||
  return obj;
 | 
					  return obj;
 | 
				
			||||||
}, {});
 | 
					}, {});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export function searchTextFromRawStatus (status) {
 | 
				
			||||||
 | 
					  const spoilerText   = status.spoiler_text || '';
 | 
				
			||||||
 | 
					  const searchContent = ([spoilerText, status.content].concat((status.poll && status.poll.options) ? status.poll.options.map(option => option.title) : [])).join('\n\n').replace(/<br\s*\/?>/g, '\n').replace(/<\/p><p>/g, '\n\n');
 | 
				
			||||||
 | 
					  return domParser.parseFromString(searchContent, 'text/html').documentElement.textContent;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export function normalizeAccount(account) {
 | 
					export function normalizeAccount(account) {
 | 
				
			||||||
  account = { ...account };
 | 
					  account = { ...account };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -14,6 +14,7 @@ import { unescapeHTML } from '../utils/html';
 | 
				
			||||||
import { getFiltersRegex } from '../selectors';
 | 
					import { getFiltersRegex } from '../selectors';
 | 
				
			||||||
import { usePendingItems as preferPendingItems } from 'mastodon/initial_state';
 | 
					import { usePendingItems as preferPendingItems } from 'mastodon/initial_state';
 | 
				
			||||||
import compareId from 'mastodon/compare_id';
 | 
					import compareId from 'mastodon/compare_id';
 | 
				
			||||||
 | 
					import { searchTextFromRawStatus } from 'mastodon/actions/importer/normalizer';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const NOTIFICATIONS_UPDATE      = 'NOTIFICATIONS_UPDATE';
 | 
					export const NOTIFICATIONS_UPDATE      = 'NOTIFICATIONS_UPDATE';
 | 
				
			||||||
export const NOTIFICATIONS_UPDATE_NOOP = 'NOTIFICATIONS_UPDATE_NOOP';
 | 
					export const NOTIFICATIONS_UPDATE_NOOP = 'NOTIFICATIONS_UPDATE_NOOP';
 | 
				
			||||||
| 
						 | 
					@ -60,7 +61,7 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
 | 
				
			||||||
    if (notification.type === 'mention') {
 | 
					    if (notification.type === 'mention') {
 | 
				
			||||||
      const dropRegex   = filters[0];
 | 
					      const dropRegex   = filters[0];
 | 
				
			||||||
      const regex       = filters[1];
 | 
					      const regex       = filters[1];
 | 
				
			||||||
      const searchIndex = notification.status.spoiler_text + '\n' + unescapeHTML(notification.status.content);
 | 
					      const searchIndex = searchTextFromRawStatus(notification.status);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      if (dropRegex && dropRegex.test(searchIndex)) {
 | 
					      if (dropRegex && dropRegex.test(searchIndex)) {
 | 
				
			||||||
        return;
 | 
					        return;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,6 @@
 | 
				
			||||||
import React from 'react';
 | 
					import React from 'react';
 | 
				
			||||||
import PropTypes from 'prop-types';
 | 
					import PropTypes from 'prop-types';
 | 
				
			||||||
 | 
					import 'wicg-inert';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default class ModalRoot extends React.PureComponent {
 | 
					export default class ModalRoot extends React.PureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -39,7 +39,8 @@ class Poll extends ImmutablePureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  static getDerivedStateFromProps (props, state) {
 | 
					  static getDerivedStateFromProps (props, state) {
 | 
				
			||||||
    const { poll, intl } = props;
 | 
					    const { poll, intl } = props;
 | 
				
			||||||
    const expired = poll.get('expired') || (new Date(poll.get('expires_at'))).getTime() < intl.now();
 | 
					    const expires_at = poll.get('expires_at');
 | 
				
			||||||
 | 
					    const expired = poll.get('expired') || expires_at !== null && (new Date(expires_at)).getTime() < intl.now();
 | 
				
			||||||
    return (expired === state.expired) ? null : { expired };
 | 
					    return (expired === state.expired) ? null : { expired };
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,13 +1,22 @@
 | 
				
			||||||
import React from 'react';
 | 
					import React from 'react';
 | 
				
			||||||
import PropTypes from 'prop-types';
 | 
					 | 
				
			||||||
import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
import StatusContainer from '../../../containers/status_container';
 | 
					import { injectIntl, FormattedMessage, defineMessages } from 'react-intl';
 | 
				
			||||||
import AccountContainer from '../../../containers/account_container';
 | 
					 | 
				
			||||||
import { injectIntl, FormattedMessage } from 'react-intl';
 | 
					 | 
				
			||||||
import Permalink from '../../../components/permalink';
 | 
					 | 
				
			||||||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
					 | 
				
			||||||
import { HotKeys } from 'react-hotkeys';
 | 
					import { HotKeys } from 'react-hotkeys';
 | 
				
			||||||
 | 
					import PropTypes from 'prop-types';
 | 
				
			||||||
 | 
					import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
				
			||||||
 | 
					import { me } from 'mastodon/initial_state';
 | 
				
			||||||
 | 
					import StatusContainer from 'mastodon/containers/status_container';
 | 
				
			||||||
 | 
					import AccountContainer from 'mastodon/containers/account_container';
 | 
				
			||||||
import Icon from 'mastodon/components/icon';
 | 
					import Icon from 'mastodon/components/icon';
 | 
				
			||||||
 | 
					import Permalink from 'mastodon/components/permalink';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const messages = defineMessages({
 | 
				
			||||||
 | 
					  favourite: { id: 'notification.favourite', defaultMessage: '{name} favourited your status' },
 | 
				
			||||||
 | 
					  follow: { id: 'notification.follow', defaultMessage: '{name} followed you' },
 | 
				
			||||||
 | 
					  ownPoll: { id: 'notification.own_poll', defaultMessage: 'Your poll has ended' },
 | 
				
			||||||
 | 
					  poll: { id: 'notification.poll', defaultMessage: 'A poll you have voted in has ended' },
 | 
				
			||||||
 | 
					  reblog: { id: 'notification.reblog', defaultMessage: '{name} boosted your status' },
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const notificationForScreenReader = (intl, message, timestamp) => {
 | 
					const notificationForScreenReader = (intl, message, timestamp) => {
 | 
				
			||||||
  const output = [message];
 | 
					  const output = [message];
 | 
				
			||||||
| 
						 | 
					@ -107,7 +116,7 @@ class Notification extends ImmutablePureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (
 | 
					    return (
 | 
				
			||||||
      <HotKeys handlers={this.getHandlers()}>
 | 
					      <HotKeys handlers={this.getHandlers()}>
 | 
				
			||||||
        <div className='notification notification-follow focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.follow', defaultMessage: '{name} followed you' }, { name: account.get('acct') }), notification.get('created_at'))}>
 | 
					        <div className='notification notification-follow focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage(messages.follow, { name: account.get('acct') }), notification.get('created_at'))}>
 | 
				
			||||||
          <div className='notification__message'>
 | 
					          <div className='notification__message'>
 | 
				
			||||||
            <div className='notification__favourite-icon-wrapper'>
 | 
					            <div className='notification__favourite-icon-wrapper'>
 | 
				
			||||||
              <Icon id='user-plus' fixedWidth />
 | 
					              <Icon id='user-plus' fixedWidth />
 | 
				
			||||||
| 
						 | 
					@ -146,7 +155,7 @@ class Notification extends ImmutablePureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (
 | 
					    return (
 | 
				
			||||||
      <HotKeys handlers={this.getHandlers()}>
 | 
					      <HotKeys handlers={this.getHandlers()}>
 | 
				
			||||||
        <div className='notification notification-favourite focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.favourite', defaultMessage: '{name} favourited your status' }, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
 | 
					        <div className='notification notification-favourite focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage(messages.favourite, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
 | 
				
			||||||
          <div className='notification__message'>
 | 
					          <div className='notification__message'>
 | 
				
			||||||
            <div className='notification__favourite-icon-wrapper'>
 | 
					            <div className='notification__favourite-icon-wrapper'>
 | 
				
			||||||
              <Icon id='star' className='star-icon' fixedWidth />
 | 
					              <Icon id='star' className='star-icon' fixedWidth />
 | 
				
			||||||
| 
						 | 
					@ -178,7 +187,7 @@ class Notification extends ImmutablePureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (
 | 
					    return (
 | 
				
			||||||
      <HotKeys handlers={this.getHandlers()}>
 | 
					      <HotKeys handlers={this.getHandlers()}>
 | 
				
			||||||
        <div className='notification notification-reblog focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.reblog', defaultMessage: '{name} boosted your status' }, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
 | 
					        <div className='notification notification-reblog focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage(messages.reblog, { name: notification.getIn(['account', 'acct']) }), notification.get('created_at'))}>
 | 
				
			||||||
          <div className='notification__message'>
 | 
					          <div className='notification__message'>
 | 
				
			||||||
            <div className='notification__favourite-icon-wrapper'>
 | 
					            <div className='notification__favourite-icon-wrapper'>
 | 
				
			||||||
              <Icon id='retweet' fixedWidth />
 | 
					              <Icon id='retweet' fixedWidth />
 | 
				
			||||||
| 
						 | 
					@ -205,25 +214,31 @@ class Notification extends ImmutablePureComponent {
 | 
				
			||||||
    );
 | 
					    );
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  renderPoll (notification) {
 | 
					  renderPoll (notification, account) {
 | 
				
			||||||
    const { intl } = this.props;
 | 
					    const { intl } = this.props;
 | 
				
			||||||
 | 
					    const ownPoll  = me === account.get('id');
 | 
				
			||||||
 | 
					    const message  = ownPoll ? intl.formatMessage(messages.ownPoll) : intl.formatMessage(messages.poll);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (
 | 
					    return (
 | 
				
			||||||
      <HotKeys handlers={this.getHandlers()}>
 | 
					      <HotKeys handlers={this.getHandlers()}>
 | 
				
			||||||
        <div className='notification notification-poll focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, intl.formatMessage({ id: 'notification.poll', defaultMessage: 'A poll you have voted in has ended' }), notification.get('created_at'))}>
 | 
					        <div className='notification notification-poll focusable' tabIndex='0' aria-label={notificationForScreenReader(intl, message, notification.get('created_at'))}>
 | 
				
			||||||
          <div className='notification__message'>
 | 
					          <div className='notification__message'>
 | 
				
			||||||
            <div className='notification__favourite-icon-wrapper'>
 | 
					            <div className='notification__favourite-icon-wrapper'>
 | 
				
			||||||
              <Icon id='tasks' fixedWidth />
 | 
					              <Icon id='tasks' fixedWidth />
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            <span title={notification.get('created_at')}>
 | 
					            <span title={notification.get('created_at')}>
 | 
				
			||||||
 | 
					              {ownPoll ? (
 | 
				
			||||||
 | 
					                <FormattedMessage id='notification.own_poll' defaultMessage='Your poll has ended' />
 | 
				
			||||||
 | 
					              ) : (
 | 
				
			||||||
                <FormattedMessage id='notification.poll' defaultMessage='A poll you have voted in has ended' />
 | 
					                <FormattedMessage id='notification.poll' defaultMessage='A poll you have voted in has ended' />
 | 
				
			||||||
 | 
					              )}
 | 
				
			||||||
            </span>
 | 
					            </span>
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          <StatusContainer
 | 
					          <StatusContainer
 | 
				
			||||||
            id={notification.get('status')}
 | 
					            id={notification.get('status')}
 | 
				
			||||||
            account={notification.get('account')}
 | 
					            account={account}
 | 
				
			||||||
            muted
 | 
					            muted
 | 
				
			||||||
            withDismiss
 | 
					            withDismiss
 | 
				
			||||||
            hidden={this.props.hidden}
 | 
					            hidden={this.props.hidden}
 | 
				
			||||||
| 
						 | 
					@ -253,7 +268,7 @@ class Notification extends ImmutablePureComponent {
 | 
				
			||||||
    case 'reblog':
 | 
					    case 'reblog':
 | 
				
			||||||
      return this.renderReblog(notification, link);
 | 
					      return this.renderReblog(notification, link);
 | 
				
			||||||
    case 'poll':
 | 
					    case 'poll':
 | 
				
			||||||
      return this.renderPoll(notification);
 | 
					      return this.renderPoll(notification, account);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return null;
 | 
					    return null;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -184,6 +184,15 @@ class FocalPointModal extends ImmutablePureComponent {
 | 
				
			||||||
    this.setState({ description: e.target.value, dirty: true });
 | 
					    this.setState({ description: e.target.value, dirty: true });
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  handleKeyDown = (e) => {
 | 
				
			||||||
 | 
					    if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {
 | 
				
			||||||
 | 
					      e.preventDefault();
 | 
				
			||||||
 | 
					      e.stopPropagation();
 | 
				
			||||||
 | 
					      this.setState({ description: e.target.value, dirty: true });
 | 
				
			||||||
 | 
					      this.handleSubmit();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  handleSubmit = () => {
 | 
					  handleSubmit = () => {
 | 
				
			||||||
    this.props.onSave(this.state.description, this.state.focusX, this.state.focusY);
 | 
					    this.props.onSave(this.state.description, this.state.focusX, this.state.focusY);
 | 
				
			||||||
    this.props.onClose();
 | 
					    this.props.onClose();
 | 
				
			||||||
| 
						 | 
					@ -254,6 +263,7 @@ class FocalPointModal extends ImmutablePureComponent {
 | 
				
			||||||
                className='setting-text light'
 | 
					                className='setting-text light'
 | 
				
			||||||
                value={detecting ? '…' : description}
 | 
					                value={detecting ? '…' : description}
 | 
				
			||||||
                onChange={this.handleChange}
 | 
					                onChange={this.handleChange}
 | 
				
			||||||
 | 
					                onKeyDown={this.handleKeyDown}
 | 
				
			||||||
                disabled={detecting}
 | 
					                disabled={detecting}
 | 
				
			||||||
                autoFocus
 | 
					                autoFocus
 | 
				
			||||||
              />
 | 
					              />
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,9 +6,9 @@ import { createSelector } from 'reselect';
 | 
				
			||||||
import { debounce } from 'lodash';
 | 
					import { debounce } from 'lodash';
 | 
				
			||||||
import { me } from '../../../initial_state';
 | 
					import { me } from '../../../initial_state';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const makeGetStatusIds = () => createSelector([
 | 
					const makeGetStatusIds = (pending = false) => createSelector([
 | 
				
			||||||
  (state, { type }) => state.getIn(['settings', type], ImmutableMap()),
 | 
					  (state, { type }) => state.getIn(['settings', type], ImmutableMap()),
 | 
				
			||||||
  (state, { type }) => state.getIn(['timelines', type, 'items'], ImmutableList()),
 | 
					  (state, { type }) => state.getIn(['timelines', type, pending ? 'pendingItems' : 'items'], ImmutableList()),
 | 
				
			||||||
  (state)           => state.get('statuses'),
 | 
					  (state)           => state.get('statuses'),
 | 
				
			||||||
], (columnSettings, statusIds, statuses) => {
 | 
					], (columnSettings, statusIds, statuses) => {
 | 
				
			||||||
  return statusIds.filter(id => {
 | 
					  return statusIds.filter(id => {
 | 
				
			||||||
| 
						 | 
					@ -31,13 +31,14 @@ const makeGetStatusIds = () => createSelector([
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const makeMapStateToProps = () => {
 | 
					const makeMapStateToProps = () => {
 | 
				
			||||||
  const getStatusIds = makeGetStatusIds();
 | 
					  const getStatusIds = makeGetStatusIds();
 | 
				
			||||||
 | 
					  const getPendingStatusIds = makeGetStatusIds(true);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const mapStateToProps = (state, { timelineId }) => ({
 | 
					  const mapStateToProps = (state, { timelineId }) => ({
 | 
				
			||||||
    statusIds: getStatusIds(state, { type: timelineId }),
 | 
					    statusIds: getStatusIds(state, { type: timelineId }),
 | 
				
			||||||
    isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),
 | 
					    isLoading: state.getIn(['timelines', timelineId, 'isLoading'], true),
 | 
				
			||||||
    isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),
 | 
					    isPartial: state.getIn(['timelines', timelineId, 'isPartial'], false),
 | 
				
			||||||
    hasMore:   state.getIn(['timelines', timelineId, 'hasMore']),
 | 
					    hasMore:   state.getIn(['timelines', timelineId, 'hasMore']),
 | 
				
			||||||
    numPending: state.getIn(['timelines', timelineId, 'pendingItems'], ImmutableList()).size,
 | 
					    numPending: getPendingStatusIds(state, { type: timelineId }).size,
 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  return mapStateToProps;
 | 
					  return mapStateToProps;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -164,8 +164,10 @@ class SwitchingColumnsArea extends React.PureComponent {
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  setRef = c => {
 | 
					  setRef = c => {
 | 
				
			||||||
 | 
					    if (c) {
 | 
				
			||||||
      this.node = c.getWrappedInstance();
 | 
					      this.node = c.getWrappedInstance();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  render () {
 | 
					  render () {
 | 
				
			||||||
    const { children } = this.props;
 | 
					    const { children } = this.props;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,16 @@
 | 
				
			||||||
 | 
					// On KaiOS, we may not be able to use a mouse cursor or navigate using Tab-based focus, so we install
 | 
				
			||||||
 | 
					// special left/right focus navigation keyboard listeners, at least on public pages (i.e. so folks
 | 
				
			||||||
 | 
					// can at least log in using KaiOS devices).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function importArrowKeyNavigation() {
 | 
				
			||||||
 | 
					  return import(/* webpackChunkName: "arrow-key-navigation" */ 'arrow-key-navigation');
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export default function loadKeyboardExtensions() {
 | 
				
			||||||
 | 
					  if (/KAIOS/.test(navigator.userAgent)) {
 | 
				
			||||||
 | 
					    return importArrowKeyNavigation().then(arrowKeyNav => {
 | 
				
			||||||
 | 
					      arrowKeyNav.register();
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  return Promise.resolve();
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -2078,21 +2078,25 @@
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
    "descriptors": [
 | 
					    "descriptors": [
 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
        "defaultMessage": "{name} followed you",
 | 
					 | 
				
			||||||
        "id": "notification.follow"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      {
 | 
					      {
 | 
				
			||||||
        "defaultMessage": "{name} favourited your status",
 | 
					        "defaultMessage": "{name} favourited your status",
 | 
				
			||||||
        "id": "notification.favourite"
 | 
					        "id": "notification.favourite"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      {
 | 
					      {
 | 
				
			||||||
        "defaultMessage": "{name} boosted your status",
 | 
					        "defaultMessage": "{name} followed you",
 | 
				
			||||||
        "id": "notification.reblog"
 | 
					        "id": "notification.follow"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      {
 | 
				
			||||||
 | 
					        "defaultMessage": "Your poll has ended",
 | 
				
			||||||
 | 
					        "id": "notification.own_poll"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      {
 | 
					      {
 | 
				
			||||||
        "defaultMessage": "A poll you have voted in has ended",
 | 
					        "defaultMessage": "A poll you have voted in has ended",
 | 
				
			||||||
        "id": "notification.poll"
 | 
					        "id": "notification.poll"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      {
 | 
				
			||||||
 | 
					        "defaultMessage": "{name} boosted your status",
 | 
				
			||||||
 | 
					        "id": "notification.reblog"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
    "path": "app/javascript/mastodon/features/notifications/components/notification.json"
 | 
					    "path": "app/javascript/mastodon/features/notifications/components/notification.json"
 | 
				
			||||||
| 
						 | 
					@ -2771,6 +2775,10 @@
 | 
				
			||||||
        "defaultMessage": "Exit full screen",
 | 
					        "defaultMessage": "Exit full screen",
 | 
				
			||||||
        "id": "video.exit_fullscreen"
 | 
					        "id": "video.exit_fullscreen"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
 | 
					      {
 | 
				
			||||||
 | 
					        "defaultMessage": "Download file",
 | 
				
			||||||
 | 
					        "id": "video.download"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
      {
 | 
					      {
 | 
				
			||||||
        "defaultMessage": "Sensitive content",
 | 
					        "defaultMessage": "Sensitive content",
 | 
				
			||||||
        "id": "status.sensitive_warning"
 | 
					        "id": "status.sensitive_warning"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -279,6 +279,7 @@
 | 
				
			||||||
  "notification.favourite": "{name} favourited your status",
 | 
					  "notification.favourite": "{name} favourited your status",
 | 
				
			||||||
  "notification.follow": "{name} followed you",
 | 
					  "notification.follow": "{name} followed you",
 | 
				
			||||||
  "notification.mention": "{name} mentioned you",
 | 
					  "notification.mention": "{name} mentioned you",
 | 
				
			||||||
 | 
					  "notification.own_poll": "Your poll has ended",
 | 
				
			||||||
  "notification.poll": "A poll you have voted in has ended",
 | 
					  "notification.poll": "A poll you have voted in has ended",
 | 
				
			||||||
  "notification.reblog": "{name} boosted your status",
 | 
					  "notification.reblog": "{name} boosted your status",
 | 
				
			||||||
  "notifications.clear": "Clear notifications",
 | 
					  "notifications.clear": "Clear notifications",
 | 
				
			||||||
| 
						 | 
					@ -417,6 +418,7 @@
 | 
				
			||||||
  "upload_modal.preview_label": "Preview ({ratio})",
 | 
					  "upload_modal.preview_label": "Preview ({ratio})",
 | 
				
			||||||
  "upload_progress.label": "Uploading...",
 | 
					  "upload_progress.label": "Uploading...",
 | 
				
			||||||
  "video.close": "Close video",
 | 
					  "video.close": "Close video",
 | 
				
			||||||
 | 
					  "video.download": "Download file",
 | 
				
			||||||
  "video.exit_fullscreen": "Exit full screen",
 | 
					  "video.exit_fullscreen": "Exit full screen",
 | 
				
			||||||
  "video.expand": "Expand video",
 | 
					  "video.expand": "Expand video",
 | 
				
			||||||
  "video.fullscreen": "Full screen",
 | 
					  "video.fullscreen": "Full screen",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,7 @@
 | 
				
			||||||
import loadPolyfills from '../mastodon/load_polyfills';
 | 
					import loadPolyfills from '../mastodon/load_polyfills';
 | 
				
			||||||
import ready from '../mastodon/ready';
 | 
					import ready from '../mastodon/ready';
 | 
				
			||||||
import { start } from '../mastodon/common';
 | 
					import { start } from '../mastodon/common';
 | 
				
			||||||
 | 
					import loadKeyboardExtensions from '../mastodon/load_keyboard_extensions';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
start();
 | 
					start();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -122,6 +123,9 @@ function main() {
 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
loadPolyfills().then(main).catch(error => {
 | 
					loadPolyfills()
 | 
				
			||||||
 | 
					  .then(main)
 | 
				
			||||||
 | 
					  .then(loadKeyboardExtensions)
 | 
				
			||||||
 | 
					  .catch(error => {
 | 
				
			||||||
    console.error(error);
 | 
					    console.error(error);
 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -158,7 +158,7 @@ class ActivityPub::Activity
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def follow_from_object
 | 
					  def follow_from_object
 | 
				
			||||||
    @follow ||= Follow.find_by(target_account: @account, uri: object_uri) unless object_uri.nil?
 | 
					    @follow ||= ::Follow.find_by(target_account: @account, uri: object_uri) unless object_uri.nil?
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def fetch_remote_original_status
 | 
					  def fetch_remote_original_status
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -431,6 +431,8 @@ class Account < ApplicationRecord
 | 
				
			||||||
            SELECT target_account_id
 | 
					            SELECT target_account_id
 | 
				
			||||||
            FROM follows
 | 
					            FROM follows
 | 
				
			||||||
            WHERE account_id = ?
 | 
					            WHERE account_id = ?
 | 
				
			||||||
 | 
					            UNION ALL
 | 
				
			||||||
 | 
					            SELECT ?
 | 
				
			||||||
          )
 | 
					          )
 | 
				
			||||||
          SELECT
 | 
					          SELECT
 | 
				
			||||||
            accounts.*,
 | 
					            accounts.*,
 | 
				
			||||||
| 
						 | 
					@ -446,7 +448,7 @@ class Account < ApplicationRecord
 | 
				
			||||||
          LIMIT ? OFFSET ?
 | 
					          LIMIT ? OFFSET ?
 | 
				
			||||||
        SQL
 | 
					        SQL
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        records = find_by_sql([sql, account.id, account.id, account.id, limit, offset])
 | 
					        records = find_by_sql([sql, account.id, account.id, account.id, account.id, limit, offset])
 | 
				
			||||||
      else
 | 
					      else
 | 
				
			||||||
        sql = <<-SQL.squish
 | 
					        sql = <<-SQL.squish
 | 
				
			||||||
          SELECT
 | 
					          SELECT
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,13 +6,13 @@
 | 
				
			||||||
#  id         :bigint(8)        not null, primary key
 | 
					#  id         :bigint(8)        not null, primary key
 | 
				
			||||||
#  list_id    :bigint(8)        not null
 | 
					#  list_id    :bigint(8)        not null
 | 
				
			||||||
#  account_id :bigint(8)        not null
 | 
					#  account_id :bigint(8)        not null
 | 
				
			||||||
#  follow_id  :bigint(8)        not null
 | 
					#  follow_id  :bigint(8)
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class ListAccount < ApplicationRecord
 | 
					class ListAccount < ApplicationRecord
 | 
				
			||||||
  belongs_to :list
 | 
					  belongs_to :list
 | 
				
			||||||
  belongs_to :account
 | 
					  belongs_to :account
 | 
				
			||||||
  belongs_to :follow
 | 
					  belongs_to :follow, optional: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  validates :account_id, uniqueness: { scope: :list_id }
 | 
					  validates :account_id, uniqueness: { scope: :list_id }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,6 +21,6 @@ class ListAccount < ApplicationRecord
 | 
				
			||||||
  private
 | 
					  private
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def set_follow
 | 
					  def set_follow
 | 
				
			||||||
    self.follow = Follow.find_by(account_id: list.account_id, target_account_id: account.id)
 | 
					    self.follow = Follow.find_by!(account_id: list.account_id, target_account_id: account.id) unless list.account_id == account.id
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -26,6 +26,8 @@ class MediaAttachment < ApplicationRecord
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  enum type: [:image, :gifv, :video, :unknown, :audio]
 | 
					  enum type: [:image, :gifv, :video, :unknown, :audio]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  MAX_DESCRIPTION_LENGTH = 1_500
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  IMAGE_FILE_EXTENSIONS = %w(.jpg .jpeg .png .gif).freeze
 | 
					  IMAGE_FILE_EXTENSIONS = %w(.jpg .jpeg .png .gif).freeze
 | 
				
			||||||
  VIDEO_FILE_EXTENSIONS = %w(.webm .mp4 .m4v .mov).freeze
 | 
					  VIDEO_FILE_EXTENSIONS = %w(.webm .mp4 .m4v .mov).freeze
 | 
				
			||||||
  AUDIO_FILE_EXTENSIONS = %w(.ogg .oga .mp3 .wav .flac .opus .aac .m4a .3gp .wma).freeze
 | 
					  AUDIO_FILE_EXTENSIONS = %w(.ogg .oga .mp3 .wav .flac .opus .aac .m4a .3gp .wma).freeze
 | 
				
			||||||
| 
						 | 
					@ -139,7 +141,7 @@ class MediaAttachment < ApplicationRecord
 | 
				
			||||||
  include Attachmentable
 | 
					  include Attachmentable
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  validates :account, presence: true
 | 
					  validates :account, presence: true
 | 
				
			||||||
  validates :description, length: { maximum: 1_500 }, if: :local?
 | 
					  validates :description, length: { maximum: MAX_DESCRIPTION_LENGTH }, if: :local?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  scope :attached,   -> { where.not(status_id: nil).or(where.not(scheduled_status_id: nil)) }
 | 
					  scope :attached,   -> { where.not(status_id: nil).or(where.not(scheduled_status_id: nil)) }
 | 
				
			||||||
  scope :unattached, -> { where(status_id: nil, scheduled_status_id: nil) }
 | 
					  scope :unattached, -> { where(status_id: nil, scheduled_status_id: nil) }
 | 
				
			||||||
| 
						 | 
					@ -243,7 +245,7 @@ class MediaAttachment < ApplicationRecord
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def prepare_description
 | 
					  def prepare_description
 | 
				
			||||||
    self.description = description.strip[0...420] unless description.nil?
 | 
					    self.description = description.strip[0...MAX_DESCRIPTION_LENGTH] unless description.nil?
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def set_type_and_extension
 | 
					  def set_type_and_extension
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -127,7 +127,7 @@ class AccountSearchService < BaseService
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def following_ids
 | 
					  def following_ids
 | 
				
			||||||
    @following_ids ||= account.active_relationships.pluck(:target_account_id)
 | 
					    @following_ids ||= account.active_relationships.pluck(:target_account_id) + [account.id]
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def limit_for_non_exact_results
 | 
					  def limit_for_non_exact_results
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,7 +6,11 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.page-header
 | 
					.page-header
 | 
				
			||||||
  %h1= t('about.see_whats_happening')
 | 
					  %h1= t('about.see_whats_happening')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  - if Setting.show_known_fediverse_at_about_page
 | 
				
			||||||
    %p= t('about.browse_public_posts')
 | 
					    %p= t('about.browse_public_posts')
 | 
				
			||||||
 | 
					  - else
 | 
				
			||||||
 | 
					    %p= t('about.browse_local_posts')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#mastodon-timeline{ data: { props: Oj.dump(default_props) }}
 | 
					#mastodon-timeline{ data: { props: Oj.dump(default_props) }}
 | 
				
			||||||
#modal-container
 | 
					#modal-container
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,6 +11,7 @@ en:
 | 
				
			||||||
    apps: Mobile apps
 | 
					    apps: Mobile apps
 | 
				
			||||||
    apps_platforms: Use Mastodon from iOS, Android and other platforms
 | 
					    apps_platforms: Use Mastodon from iOS, Android and other platforms
 | 
				
			||||||
    browse_directory: Browse a profile directory and filter by interests
 | 
					    browse_directory: Browse a profile directory and filter by interests
 | 
				
			||||||
 | 
					    browse_local_posts: Browse a live stream of public posts from this server
 | 
				
			||||||
    browse_public_posts: Browse a live stream of public posts on Mastodon
 | 
					    browse_public_posts: Browse a live stream of public posts on Mastodon
 | 
				
			||||||
    contact: Contact
 | 
					    contact: Contact
 | 
				
			||||||
    contact_missing: Not set
 | 
					    contact_missing: Not set
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,5 @@
 | 
				
			||||||
 | 
					class ChangeListAccountFollowNullable < ActiveRecord::Migration[5.1]
 | 
				
			||||||
 | 
					  def change
 | 
				
			||||||
 | 
					    change_column_null :list_accounts, :follow_id, true
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
| 
						 | 
					@ -10,7 +10,7 @@
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# It's strongly recommended that you check this file into your version control system.
 | 
					# It's strongly recommended that you check this file into your version control system.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ActiveRecord::Schema.define(version: 2019_10_07_013357) do
 | 
					ActiveRecord::Schema.define(version: 2019_10_31_163205) do
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # These are extensions that must be enabled in order to support this database
 | 
					  # These are extensions that must be enabled in order to support this database
 | 
				
			||||||
  enable_extension "plpgsql"
 | 
					  enable_extension "plpgsql"
 | 
				
			||||||
| 
						 | 
					@ -383,7 +383,7 @@ ActiveRecord::Schema.define(version: 2019_10_07_013357) do
 | 
				
			||||||
  create_table "list_accounts", force: :cascade do |t|
 | 
					  create_table "list_accounts", force: :cascade do |t|
 | 
				
			||||||
    t.bigint "list_id", null: false
 | 
					    t.bigint "list_id", null: false
 | 
				
			||||||
    t.bigint "account_id", null: false
 | 
					    t.bigint "account_id", null: false
 | 
				
			||||||
    t.bigint "follow_id", null: false
 | 
					    t.bigint "follow_id"
 | 
				
			||||||
    t.index ["account_id", "list_id"], name: "index_list_accounts_on_account_id_and_list_id", unique: true
 | 
					    t.index ["account_id", "list_id"], name: "index_list_accounts_on_account_id_and_list_id", unique: true
 | 
				
			||||||
    t.index ["follow_id"], name: "index_list_accounts_on_follow_id"
 | 
					    t.index ["follow_id"], name: "index_list_accounts_on_follow_id"
 | 
				
			||||||
    t.index ["list_id", "account_id"], name: "index_list_accounts_on_list_id_and_account_id"
 | 
					    t.index ["list_id", "account_id"], name: "index_list_accounts_on_list_id_and_account_id"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -113,5 +113,27 @@ module Mastodon
 | 
				
			||||||
      say("Imports:\t#{number_to_human_size(Import.sum(:data_file_size))}")
 | 
					      say("Imports:\t#{number_to_human_size(Import.sum(:data_file_size))}")
 | 
				
			||||||
      say("Settings:\t#{number_to_human_size(SiteUpload.sum(:file_file_size))}")
 | 
					      say("Settings:\t#{number_to_human_size(SiteUpload.sum(:file_file_size))}")
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    desc 'lookup', 'Lookup where media is displayed by passing a media URL'
 | 
				
			||||||
 | 
					    def lookup
 | 
				
			||||||
 | 
					      prompt = TTY::Prompt.new
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      url = prompt.ask('Please enter a URL to the media to lookup:', required: true)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      attachment_id = url
 | 
				
			||||||
 | 
					                      .split('/')[0..-2]
 | 
				
			||||||
 | 
					                      .grep(/\A\d+\z/)
 | 
				
			||||||
 | 
					                      .join('')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      if url.split('/')[0..-2].include? 'media_attachments'
 | 
				
			||||||
 | 
					        model = MediaAttachment.find(attachment_id).status
 | 
				
			||||||
 | 
					        prompt.say(ActivityPub::TagManager.instance.url_for(model))
 | 
				
			||||||
 | 
					      elsif url.split('/')[0..-2].include? 'accounts'
 | 
				
			||||||
 | 
					        model = Account.find(attachment_id)
 | 
				
			||||||
 | 
					        prompt.say(ActivityPub::TagManager.instance.url_for(model))
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        prompt.say('Not found')
 | 
				
			||||||
 | 
					      end
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										32
									
								
								package.json
								
								
								
								
							
							
						
						
									
										32
									
								
								package.json
								
								
								
								
							| 
						 | 
					@ -62,8 +62,8 @@
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "@babel/core": "^7.4.5",
 | 
					    "@babel/core": "^7.4.5",
 | 
				
			||||||
    "@babel/plugin-proposal-class-properties": "^7.5.5",
 | 
					    "@babel/plugin-proposal-class-properties": "^7.5.5",
 | 
				
			||||||
    "@babel/plugin-proposal-decorators": "^7.4.4",
 | 
					    "@babel/plugin-proposal-decorators": "^7.6.0",
 | 
				
			||||||
    "@babel/plugin-proposal-object-rest-spread": "^7.4.4",
 | 
					    "@babel/plugin-proposal-object-rest-spread": "^7.6.2",
 | 
				
			||||||
    "@babel/plugin-syntax-dynamic-import": "^7.2.0",
 | 
					    "@babel/plugin-syntax-dynamic-import": "^7.2.0",
 | 
				
			||||||
    "@babel/plugin-transform-react-inline-elements": "^7.2.0",
 | 
					    "@babel/plugin-transform-react-inline-elements": "^7.2.0",
 | 
				
			||||||
    "@babel/plugin-transform-react-jsx-self": "^7.2.0",
 | 
					    "@babel/plugin-transform-react-jsx-self": "^7.2.0",
 | 
				
			||||||
| 
						 | 
					@ -75,6 +75,7 @@
 | 
				
			||||||
    "@clusterws/cws": "^0.15.2",
 | 
					    "@clusterws/cws": "^0.15.2",
 | 
				
			||||||
    "array-includes": "^3.0.3",
 | 
					    "array-includes": "^3.0.3",
 | 
				
			||||||
    "atrament": "^0.2.3",
 | 
					    "atrament": "^0.2.3",
 | 
				
			||||||
 | 
					    "arrow-key-navigation": "^1.0.2",
 | 
				
			||||||
    "autoprefixer": "^9.6.1",
 | 
					    "autoprefixer": "^9.6.1",
 | 
				
			||||||
    "axios": "^0.19.0",
 | 
					    "axios": "^0.19.0",
 | 
				
			||||||
    "babel-loader": "^8.0.6",
 | 
					    "babel-loader": "^8.0.6",
 | 
				
			||||||
| 
						 | 
					@ -91,7 +92,7 @@
 | 
				
			||||||
    "css-loader": "^3.2.0",
 | 
					    "css-loader": "^3.2.0",
 | 
				
			||||||
    "cssnano": "^4.1.10",
 | 
					    "cssnano": "^4.1.10",
 | 
				
			||||||
    "detect-passive-events": "^1.0.2",
 | 
					    "detect-passive-events": "^1.0.2",
 | 
				
			||||||
    "dotenv": "^8.0.0",
 | 
					    "dotenv": "^8.2.0",
 | 
				
			||||||
    "emoji-mart": "Gargron/emoji-mart#build",
 | 
					    "emoji-mart": "Gargron/emoji-mart#build",
 | 
				
			||||||
    "es6-symbol": "^3.1.2",
 | 
					    "es6-symbol": "^3.1.2",
 | 
				
			||||||
    "escape-html": "^1.0.3",
 | 
					    "escape-html": "^1.0.3",
 | 
				
			||||||
| 
						 | 
					@ -129,7 +130,7 @@
 | 
				
			||||||
    "punycode": "^2.1.0",
 | 
					    "punycode": "^2.1.0",
 | 
				
			||||||
    "rails-ujs": "^5.2.3",
 | 
					    "rails-ujs": "^5.2.3",
 | 
				
			||||||
    "react": "^16.10.2",
 | 
					    "react": "^16.10.2",
 | 
				
			||||||
    "react-dom": "^16.10.2",
 | 
					    "react-dom": "^16.11.0",
 | 
				
			||||||
    "react-hotkeys": "^1.1.4",
 | 
					    "react-hotkeys": "^1.1.4",
 | 
				
			||||||
    "react-immutable-proptypes": "^2.1.0",
 | 
					    "react-immutable-proptypes": "^2.1.0",
 | 
				
			||||||
    "react-immutable-pure-component": "^1.1.1",
 | 
					    "react-immutable-pure-component": "^1.1.1",
 | 
				
			||||||
| 
						 | 
					@ -137,7 +138,7 @@
 | 
				
			||||||
    "react-masonry-infinite": "^1.2.2",
 | 
					    "react-masonry-infinite": "^1.2.2",
 | 
				
			||||||
    "react-motion": "^0.5.2",
 | 
					    "react-motion": "^0.5.2",
 | 
				
			||||||
    "react-notification": "^6.8.4",
 | 
					    "react-notification": "^6.8.4",
 | 
				
			||||||
    "react-overlays": "^0.8.3",
 | 
					    "react-overlays": "^0.9.1",
 | 
				
			||||||
    "react-redux": "^7.1.1",
 | 
					    "react-redux": "^7.1.1",
 | 
				
			||||||
    "react-redux-loading-bar": "^4.0.8",
 | 
					    "react-redux-loading-bar": "^4.0.8",
 | 
				
			||||||
    "react-router-dom": "^4.1.1",
 | 
					    "react-router-dom": "^4.1.1",
 | 
				
			||||||
| 
						 | 
					@ -146,7 +147,7 @@
 | 
				
			||||||
    "react-sparklines": "^1.7.0",
 | 
					    "react-sparklines": "^1.7.0",
 | 
				
			||||||
    "react-swipeable-views": "^0.13.3",
 | 
					    "react-swipeable-views": "^0.13.3",
 | 
				
			||||||
    "react-textarea-autosize": "^7.1.0",
 | 
					    "react-textarea-autosize": "^7.1.0",
 | 
				
			||||||
    "react-toggle": "^4.0.1",
 | 
					    "react-toggle": "^4.1.1",
 | 
				
			||||||
    "redis": "^2.7.1",
 | 
					    "redis": "^2.7.1",
 | 
				
			||||||
    "redux": "^4.0.4",
 | 
					    "redux": "^4.0.4",
 | 
				
			||||||
    "redux-immutable": "^4.0.0",
 | 
					    "redux-immutable": "^4.0.0",
 | 
				
			||||||
| 
						 | 
					@ -155,22 +156,23 @@
 | 
				
			||||||
    "requestidlecallback": "^0.3.0",
 | 
					    "requestidlecallback": "^0.3.0",
 | 
				
			||||||
    "reselect": "^4.0.0",
 | 
					    "reselect": "^4.0.0",
 | 
				
			||||||
    "rimraf": "^3.0.0",
 | 
					    "rimraf": "^3.0.0",
 | 
				
			||||||
    "sass": "^1.23.0",
 | 
					    "sass": "^1.23.1",
 | 
				
			||||||
    "sass-loader": "^7.0.3",
 | 
					    "sass-loader": "^7.0.3",
 | 
				
			||||||
    "stringz": "^2.0.0",
 | 
					    "stringz": "^2.0.0",
 | 
				
			||||||
    "substring-trie": "^1.0.2",
 | 
					    "substring-trie": "^1.0.2",
 | 
				
			||||||
    "terser-webpack-plugin": "^1.4.1",
 | 
					    "terser-webpack-plugin": "^2.2.1",
 | 
				
			||||||
    "tesseract.js": "^2.0.0-alpha.16",
 | 
					    "tesseract.js": "^2.0.0-alpha.16",
 | 
				
			||||||
    "throng": "^4.0.0",
 | 
					    "throng": "^4.0.0",
 | 
				
			||||||
    "tiny-queue": "^0.2.1",
 | 
					    "tiny-queue": "^0.2.1",
 | 
				
			||||||
    "uuid": "^3.1.0",
 | 
					    "uuid": "^3.1.0",
 | 
				
			||||||
    "wavesurfer.js": "^3.0.0",
 | 
					    "wavesurfer.js": "^3.2.0",
 | 
				
			||||||
    "webpack": "^4.35.3",
 | 
					    "webpack": "^4.35.3",
 | 
				
			||||||
    "webpack-assets-manifest": "^3.1.1",
 | 
					    "webpack-assets-manifest": "^3.1.1",
 | 
				
			||||||
    "webpack-bundle-analyzer": "^3.3.2",
 | 
					    "webpack-bundle-analyzer": "^3.6.0",
 | 
				
			||||||
    "webpack-cli": "^3.3.7",
 | 
					    "webpack-cli": "^3.3.10",
 | 
				
			||||||
    "webpack-merge": "^4.2.1",
 | 
					    "webpack-merge": "^4.2.1",
 | 
				
			||||||
    "websocket.js": "^0.1.12"
 | 
					    "websocket.js": "^0.1.12",
 | 
				
			||||||
 | 
					    "wicg-inert": "^3.0.0"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "babel-eslint": "^10.0.3",
 | 
					    "babel-eslint": "^10.0.3",
 | 
				
			||||||
| 
						 | 
					@ -181,13 +183,13 @@
 | 
				
			||||||
    "eslint-plugin-import": "~2.18.2",
 | 
					    "eslint-plugin-import": "~2.18.2",
 | 
				
			||||||
    "eslint-plugin-jsx-a11y": "~6.2.3",
 | 
					    "eslint-plugin-jsx-a11y": "~6.2.3",
 | 
				
			||||||
    "eslint-plugin-promise": "~4.2.1",
 | 
					    "eslint-plugin-promise": "~4.2.1",
 | 
				
			||||||
    "eslint-plugin-react": "~7.14.3",
 | 
					    "eslint-plugin-react": "~7.16.0",
 | 
				
			||||||
    "jest": "^24.9.0",
 | 
					    "jest": "^24.9.0",
 | 
				
			||||||
    "raf": "^3.4.1",
 | 
					    "raf": "^3.4.1",
 | 
				
			||||||
    "react-intl-translations-manager": "^5.0.3",
 | 
					    "react-intl-translations-manager": "^5.0.3",
 | 
				
			||||||
    "react-test-renderer": "^16.10.2",
 | 
					    "react-test-renderer": "^16.11.0",
 | 
				
			||||||
    "sass-lint": "^1.13.1",
 | 
					    "sass-lint": "^1.13.1",
 | 
				
			||||||
    "webpack-dev-server": "^3.8.0",
 | 
					    "webpack-dev-server": "^3.9.0",
 | 
				
			||||||
    "yargs": "^13.3.0"
 | 
					    "yargs": "^13.3.0"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -261,6 +261,32 @@ RSpec.describe ActivityPub::Activity::Create do
 | 
				
			||||||
        end
 | 
					        end
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      context 'with media attachments with long description' do
 | 
				
			||||||
 | 
					        let(:object_json) do
 | 
				
			||||||
 | 
					          {
 | 
				
			||||||
 | 
					            id: [ActivityPub::TagManager.instance.uri_for(sender), '#bar'].join,
 | 
				
			||||||
 | 
					            type: 'Note',
 | 
				
			||||||
 | 
					            content: 'Lorem ipsum',
 | 
				
			||||||
 | 
					            attachment: [
 | 
				
			||||||
 | 
					              {
 | 
				
			||||||
 | 
					                type: 'Document',
 | 
				
			||||||
 | 
					                mediaType: 'image/png',
 | 
				
			||||||
 | 
					                url: 'http://example.com/attachment.png',
 | 
				
			||||||
 | 
					                name: '*' * 1500,
 | 
				
			||||||
 | 
					              },
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        it 'creates status' do
 | 
				
			||||||
 | 
					          status = sender.statuses.first
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          expect(status).to_not be_nil
 | 
				
			||||||
 | 
					          expect(status.media_attachments.map(&:description)).to include('*' * 1500)
 | 
				
			||||||
 | 
					        end
 | 
				
			||||||
 | 
					      end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      context 'with media attachments with focal points' do
 | 
					      context 'with media attachments with focal points' do
 | 
				
			||||||
        let(:object_json) do
 | 
					        let(:object_json) do
 | 
				
			||||||
          {
 | 
					          {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -136,10 +136,10 @@ RSpec.describe MediaAttachment, type: :model do
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  describe 'descriptions for remote attachments' do
 | 
					  describe 'descriptions for remote attachments' do
 | 
				
			||||||
    it 'are cut off at 140 characters' do
 | 
					    it 'are cut off at 1500 characters' do
 | 
				
			||||||
      media = Fabricate(:media_attachment, description: 'foo' * 1000, remote_url: 'http://example.com/blah.jpg')
 | 
					      media = Fabricate(:media_attachment, description: 'foo' * 1000, remote_url: 'http://example.com/blah.jpg')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      expect(media.description.size).to be <= 420
 | 
					      expect(media.description.size).to be <= 1_500
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										463
									
								
								yarn.lock
								
								
								
								
							
							
						
						
									
										463
									
								
								yarn.lock
								
								
								
								
							| 
						 | 
					@ -114,10 +114,10 @@
 | 
				
			||||||
    "@babel/traverse" "^7.4.4"
 | 
					    "@babel/traverse" "^7.4.4"
 | 
				
			||||||
    "@babel/types" "^7.4.4"
 | 
					    "@babel/types" "^7.4.4"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@babel/helper-create-class-features-plugin@^7.4.4", "@babel/helper-create-class-features-plugin@^7.5.5":
 | 
					"@babel/helper-create-class-features-plugin@^7.5.5", "@babel/helper-create-class-features-plugin@^7.6.0":
 | 
				
			||||||
  version "7.5.5"
 | 
					  version "7.6.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.5.5.tgz#401f302c8ddbc0edd36f7c6b2887d8fa1122e5a4"
 | 
					  resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.6.0.tgz#769711acca889be371e9bc2eb68641d55218021f"
 | 
				
			||||||
  integrity sha512-ZsxkyYiRA7Bg+ZTRpPvB6AbOFKTFFK4LrvTet8lInm0V468MWCaSYJE+I7v2z2r8KNLtYiV+K5kTCnR7dvyZjg==
 | 
					  integrity sha512-O1QWBko4fzGju6VoVvrZg0RROCVifcLxiApnGP3OWfWzvxRZFCoBD81K5ur5e3bVY2Vf/5rIJm8cqPKn8HUJng==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    "@babel/helper-function-name" "^7.1.0"
 | 
					    "@babel/helper-function-name" "^7.1.0"
 | 
				
			||||||
    "@babel/helper-member-expression-to-functions" "^7.5.5"
 | 
					    "@babel/helper-member-expression-to-functions" "^7.5.5"
 | 
				
			||||||
| 
						 | 
					@ -306,12 +306,12 @@
 | 
				
			||||||
    "@babel/helper-create-class-features-plugin" "^7.5.5"
 | 
					    "@babel/helper-create-class-features-plugin" "^7.5.5"
 | 
				
			||||||
    "@babel/helper-plugin-utils" "^7.0.0"
 | 
					    "@babel/helper-plugin-utils" "^7.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@babel/plugin-proposal-decorators@^7.4.4":
 | 
					"@babel/plugin-proposal-decorators@^7.6.0":
 | 
				
			||||||
  version "7.4.4"
 | 
					  version "7.6.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.4.4.tgz#de9b2a1a8ab0196f378e2a82f10b6e2a36f21cc0"
 | 
					  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.6.0.tgz#6659d2572a17d70abd68123e89a12a43d90aa30c"
 | 
				
			||||||
  integrity sha512-z7MpQz3XC/iQJWXH9y+MaWcLPNSMY9RQSthrLzak8R8hCj0fuyNk+Dzi9kfNe/JxxlWQ2g7wkABbgWjW36MTcw==
 | 
					  integrity sha512-ZSyYw9trQI50sES6YxREXKu+4b7MAg6Qx2cvyDDYjP2Hpzd3FleOUwC9cqn1+za8d0A2ZU8SHujxFao956efUg==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    "@babel/helper-create-class-features-plugin" "^7.4.4"
 | 
					    "@babel/helper-create-class-features-plugin" "^7.6.0"
 | 
				
			||||||
    "@babel/helper-plugin-utils" "^7.0.0"
 | 
					    "@babel/helper-plugin-utils" "^7.0.0"
 | 
				
			||||||
    "@babel/plugin-syntax-decorators" "^7.2.0"
 | 
					    "@babel/plugin-syntax-decorators" "^7.2.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -331,10 +331,10 @@
 | 
				
			||||||
    "@babel/helper-plugin-utils" "^7.0.0"
 | 
					    "@babel/helper-plugin-utils" "^7.0.0"
 | 
				
			||||||
    "@babel/plugin-syntax-json-strings" "^7.2.0"
 | 
					    "@babel/plugin-syntax-json-strings" "^7.2.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5":
 | 
					"@babel/plugin-proposal-object-rest-spread@^7.5.5", "@babel/plugin-proposal-object-rest-spread@^7.6.2":
 | 
				
			||||||
  version "7.5.5"
 | 
					  version "7.6.2"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58"
 | 
					  resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz#8ffccc8f3a6545e9f78988b6bf4fe881b88e8096"
 | 
				
			||||||
  integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw==
 | 
					  integrity sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    "@babel/helper-plugin-utils" "^7.0.0"
 | 
					    "@babel/helper-plugin-utils" "^7.0.0"
 | 
				
			||||||
    "@babel/plugin-syntax-object-rest-spread" "^7.2.0"
 | 
					    "@babel/plugin-syntax-object-rest-spread" "^7.2.0"
 | 
				
			||||||
| 
						 | 
					@ -1387,12 +1387,7 @@ acorn-jsx@^5.0.2:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.2.tgz#84b68ea44b373c4f8686023a551f61a21b7c4a4f"
 | 
					  resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.2.tgz#84b68ea44b373c4f8686023a551f61a21b7c4a4f"
 | 
				
			||||||
  integrity sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw==
 | 
					  integrity sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
acorn-walk@^6.0.1:
 | 
					acorn-walk@^6.0.1, acorn-walk@^6.1.1:
 | 
				
			||||||
  version "6.1.1"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913"
 | 
					 | 
				
			||||||
  integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw==
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
acorn-walk@^6.1.1:
 | 
					 | 
				
			||||||
  version "6.2.0"
 | 
					  version "6.2.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c"
 | 
					  resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c"
 | 
				
			||||||
  integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==
 | 
					  integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==
 | 
				
			||||||
| 
						 | 
					@ -1407,12 +1402,7 @@ acorn@^5.5.0, acorn@^5.5.3:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279"
 | 
					  resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279"
 | 
				
			||||||
  integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
 | 
					  integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
acorn@^6.0.1:
 | 
					acorn@^6.0.1, acorn@^6.0.7, acorn@^6.2.1:
 | 
				
			||||||
  version "6.2.0"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.0.tgz#67f0da2fc339d6cfb5d6fb244fd449f33cd8bbe3"
 | 
					 | 
				
			||||||
  integrity sha512-8oe72N3WPMjA+2zVG71Ia0nXZ8DpQH+QyyHO+p06jT8eg8FGG3FbcUIi8KziHlAfheJQZeoqbvq1mQSQHXKYLw==
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
acorn@^6.0.7, acorn@^6.2.1:
 | 
					 | 
				
			||||||
  version "6.3.0"
 | 
					  version "6.3.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e"
 | 
					  resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e"
 | 
				
			||||||
  integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==
 | 
					  integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==
 | 
				
			||||||
| 
						 | 
					@ -1422,6 +1412,14 @@ acorn@^7.0.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.0.0.tgz#26b8d1cd9a9b700350b71c0905546f64d1284e7a"
 | 
					  resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.0.0.tgz#26b8d1cd9a9b700350b71c0905546f64d1284e7a"
 | 
				
			||||||
  integrity sha512-PaF/MduxijYYt7unVGRuds1vBC9bFxbNf+VWqhOClfdgy7RlVkQqt610ig1/yxTgsDIfW1cWDel5EBbOy3jdtQ==
 | 
					  integrity sha512-PaF/MduxijYYt7unVGRuds1vBC9bFxbNf+VWqhOClfdgy7RlVkQqt610ig1/yxTgsDIfW1cWDel5EBbOy3jdtQ==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					aggregate-error@^3.0.0:
 | 
				
			||||||
 | 
					  version "3.0.1"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0"
 | 
				
			||||||
 | 
					  integrity sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    clean-stack "^2.0.0"
 | 
				
			||||||
 | 
					    indent-string "^4.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
airbnb-prop-types@^2.13.2:
 | 
					airbnb-prop-types@^2.13.2:
 | 
				
			||||||
  version "2.13.2"
 | 
					  version "2.13.2"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.13.2.tgz#43147a5062dd2a4a5600e748a47b64004cc5f7fc"
 | 
					  resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.13.2.tgz#43147a5062dd2a4a5600e748a47b64004cc5f7fc"
 | 
				
			||||||
| 
						 | 
					@ -1659,6 +1657,11 @@ arrify@^1.0.1:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
 | 
					  resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
 | 
				
			||||||
  integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
 | 
					  integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					arrow-key-navigation@^1.0.2:
 | 
				
			||||||
 | 
					  version "1.0.2"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/arrow-key-navigation/-/arrow-key-navigation-1.0.2.tgz#c1b5886240819db6c0b2b84702de1313786ce53e"
 | 
				
			||||||
 | 
					  integrity sha512-Wj67sJpfK7vrj0/aOstIsRMsUQtpVODBTQDcRaDvvPZdzZMotj8oYGsEsoYiDohShDlDU6ywVkHLtXGH4TfEtQ==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
asap@~2.0.3:
 | 
					asap@~2.0.3:
 | 
				
			||||||
  version "2.0.6"
 | 
					  version "2.0.6"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
 | 
					  resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
 | 
				
			||||||
| 
						 | 
					@ -1718,10 +1721,12 @@ async-limiter@~1.0.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
 | 
					  resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
 | 
				
			||||||
  integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
 | 
					  integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
async@^1.5.2:
 | 
					async@^2.6.2:
 | 
				
			||||||
  version "1.5.2"
 | 
					  version "2.6.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
 | 
					  resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff"
 | 
				
			||||||
  integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=
 | 
					  integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    lodash "^4.17.14"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
asynckit@^0.4.0:
 | 
					asynckit@^0.4.0:
 | 
				
			||||||
  version "0.4.0"
 | 
					  version "0.4.0"
 | 
				
			||||||
| 
						 | 
					@ -1999,11 +2004,6 @@ binary-extensions@^2.0.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c"
 | 
					  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c"
 | 
				
			||||||
  integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==
 | 
					  integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bluebird@^3.5.3:
 | 
					 | 
				
			||||||
  version "3.5.3"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7"
 | 
					 | 
				
			||||||
  integrity sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
bluebird@^3.5.5:
 | 
					bluebird@^3.5.5:
 | 
				
			||||||
  version "3.5.5"
 | 
					  version "3.5.5"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f"
 | 
					  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f"
 | 
				
			||||||
| 
						 | 
					@ -2236,27 +2236,7 @@ bytes@3.1.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6"
 | 
					  resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6"
 | 
				
			||||||
  integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==
 | 
					  integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cacache@^11.2.0:
 | 
					cacache@^11.2.0, cacache@^11.3.3:
 | 
				
			||||||
  version "11.3.2"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.2.tgz#2d81e308e3d258ca38125b676b98b2ac9ce69bfa"
 | 
					 | 
				
			||||||
  integrity sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==
 | 
					 | 
				
			||||||
  dependencies:
 | 
					 | 
				
			||||||
    bluebird "^3.5.3"
 | 
					 | 
				
			||||||
    chownr "^1.1.1"
 | 
					 | 
				
			||||||
    figgy-pudding "^3.5.1"
 | 
					 | 
				
			||||||
    glob "^7.1.3"
 | 
					 | 
				
			||||||
    graceful-fs "^4.1.15"
 | 
					 | 
				
			||||||
    lru-cache "^5.1.1"
 | 
					 | 
				
			||||||
    mississippi "^3.0.0"
 | 
					 | 
				
			||||||
    mkdirp "^0.5.1"
 | 
					 | 
				
			||||||
    move-concurrently "^1.0.1"
 | 
					 | 
				
			||||||
    promise-inflight "^1.0.1"
 | 
					 | 
				
			||||||
    rimraf "^2.6.2"
 | 
					 | 
				
			||||||
    ssri "^6.0.1"
 | 
					 | 
				
			||||||
    unique-filename "^1.1.1"
 | 
					 | 
				
			||||||
    y18n "^4.0.0"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
cacache@^11.3.3:
 | 
					 | 
				
			||||||
  version "11.3.3"
 | 
					  version "11.3.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc"
 | 
					  resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc"
 | 
				
			||||||
  integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA==
 | 
					  integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA==
 | 
				
			||||||
| 
						 | 
					@ -2297,6 +2277,30 @@ cacache@^12.0.2:
 | 
				
			||||||
    unique-filename "^1.1.1"
 | 
					    unique-filename "^1.1.1"
 | 
				
			||||||
    y18n "^4.0.0"
 | 
					    y18n "^4.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cacache@^13.0.1:
 | 
				
			||||||
 | 
					  version "13.0.1"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz#a8000c21697089082f85287a1aec6e382024a71c"
 | 
				
			||||||
 | 
					  integrity sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    chownr "^1.1.2"
 | 
				
			||||||
 | 
					    figgy-pudding "^3.5.1"
 | 
				
			||||||
 | 
					    fs-minipass "^2.0.0"
 | 
				
			||||||
 | 
					    glob "^7.1.4"
 | 
				
			||||||
 | 
					    graceful-fs "^4.2.2"
 | 
				
			||||||
 | 
					    infer-owner "^1.0.4"
 | 
				
			||||||
 | 
					    lru-cache "^5.1.1"
 | 
				
			||||||
 | 
					    minipass "^3.0.0"
 | 
				
			||||||
 | 
					    minipass-collect "^1.0.2"
 | 
				
			||||||
 | 
					    minipass-flush "^1.0.5"
 | 
				
			||||||
 | 
					    minipass-pipeline "^1.2.2"
 | 
				
			||||||
 | 
					    mkdirp "^0.5.1"
 | 
				
			||||||
 | 
					    move-concurrently "^1.0.1"
 | 
				
			||||||
 | 
					    p-map "^3.0.0"
 | 
				
			||||||
 | 
					    promise-inflight "^1.0.1"
 | 
				
			||||||
 | 
					    rimraf "^2.7.1"
 | 
				
			||||||
 | 
					    ssri "^7.0.0"
 | 
				
			||||||
 | 
					    unique-filename "^1.1.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cache-base@^1.0.1:
 | 
					cache-base@^1.0.1:
 | 
				
			||||||
  version "1.0.1"
 | 
					  version "1.0.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
 | 
					  resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
 | 
				
			||||||
| 
						 | 
					@ -2461,7 +2465,7 @@ chokidar@^2.0.2, chokidar@^2.1.8:
 | 
				
			||||||
  optionalDependencies:
 | 
					  optionalDependencies:
 | 
				
			||||||
    fsevents "^1.2.7"
 | 
					    fsevents "^1.2.7"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
chownr@^1.1.1:
 | 
					chownr@^1.1.1, chownr@^1.1.2:
 | 
				
			||||||
  version "1.1.3"
 | 
					  version "1.1.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142"
 | 
					  resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142"
 | 
				
			||||||
  integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==
 | 
					  integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==
 | 
				
			||||||
| 
						 | 
					@ -2506,6 +2510,11 @@ classnames@^2.2.5:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce"
 | 
					  resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce"
 | 
				
			||||||
  integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==
 | 
					  integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					clean-stack@^2.0.0:
 | 
				
			||||||
 | 
					  version "2.2.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
 | 
				
			||||||
 | 
					  integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cli-cursor@^1.0.1:
 | 
					cli-cursor@^1.0.1:
 | 
				
			||||||
  version "1.0.2"
 | 
					  version "1.0.2"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
 | 
					  resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987"
 | 
				
			||||||
| 
						 | 
					@ -2625,12 +2634,7 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    delayed-stream "~1.0.0"
 | 
					    delayed-stream "~1.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
commander@^2.11.0, commander@^2.19.0, commander@^2.8.1, commander@~2.20.0:
 | 
					commander@^2.11.0, commander@^2.18.0, commander@^2.19.0, commander@^2.20.0, commander@^2.8.1, commander@~2.20.0:
 | 
				
			||||||
  version "2.20.0"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422"
 | 
					 | 
				
			||||||
  integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
commander@^2.18.0, commander@^2.20.0:
 | 
					 | 
				
			||||||
  version "2.20.1"
 | 
					  version "2.20.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.1.tgz#3863ce3ca92d0831dcf2a102f5fb4b5926afd0f9"
 | 
					  resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.1.tgz#3863ce3ca92d0831dcf2a102f5fb4b5926afd0f9"
 | 
				
			||||||
  integrity sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==
 | 
					  integrity sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==
 | 
				
			||||||
| 
						 | 
					@ -3201,7 +3205,7 @@ debug@=3.1.0:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    ms "2.0.0"
 | 
					    ms "2.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
debug@^3.0.0, debug@^3.2.5, debug@^3.2.6:
 | 
					debug@^3.0.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.6:
 | 
				
			||||||
  version "3.2.6"
 | 
					  version "3.2.6"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
 | 
					  resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
 | 
				
			||||||
  integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
 | 
					  integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
 | 
				
			||||||
| 
						 | 
					@ -3490,10 +3494,10 @@ dot-prop@^4.1.1:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    is-obj "^1.0.0"
 | 
					    is-obj "^1.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dotenv@^8.0.0:
 | 
					dotenv@^8.2.0:
 | 
				
			||||||
  version "8.0.0"
 | 
					  version "8.2.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.0.0.tgz#ed310c165b4e8a97bb745b0a9d99c31bda566440"
 | 
					  resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a"
 | 
				
			||||||
  integrity sha512-30xVGqjLjiUOArT4+M5q9sYdvuR4riM6yK9wMcas9Vbp6zZa+ocC9dp6QoftuhTPhFAiLK/0C5Ni2nou/Bk8lg==
 | 
					  integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
double-ended-queue@^2.1.0-0:
 | 
					double-ended-queue@^2.1.0-0:
 | 
				
			||||||
  version "2.1.0-0"
 | 
					  version "2.1.0-0"
 | 
				
			||||||
| 
						 | 
					@ -3528,12 +3532,7 @@ ee-first@1.1.1:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
 | 
					  resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
 | 
				
			||||||
  integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
 | 
					  integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ejs@^2.3.4:
 | 
					ejs@^2.3.4, ejs@^2.6.1:
 | 
				
			||||||
  version "2.6.1"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.6.1.tgz#498ec0d495655abc6f23cd61868d926464071aa0"
 | 
					 | 
				
			||||||
  integrity sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
ejs@^2.6.1:
 | 
					 | 
				
			||||||
  version "2.7.1"
 | 
					  version "2.7.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.1.tgz#5b5ab57f718b79d4aca9254457afecd36fa80228"
 | 
					  resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.1.tgz#5b5ab57f718b79d4aca9254457afecd36fa80228"
 | 
				
			||||||
  integrity sha512-kS/gEPzZs3Y1rRsbGX4UOSjtP/CeJP0CxSNZHYxGfVM/VgLcv0ZqM7C45YyTj2DI2g7+P9Dd24C+IMIg6D0nYQ==
 | 
					  integrity sha512-kS/gEPzZs3Y1rRsbGX4UOSjtP/CeJP0CxSNZHYxGfVM/VgLcv0ZqM7C45YyTj2DI2g7+P9Dd24C+IMIg6D0nYQ==
 | 
				
			||||||
| 
						 | 
					@ -3854,20 +3853,20 @@ eslint-plugin-promise@~4.2.1:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz#845fd8b2260ad8f82564c1222fce44ad71d9418a"
 | 
					  resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.2.1.tgz#845fd8b2260ad8f82564c1222fce44ad71d9418a"
 | 
				
			||||||
  integrity sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==
 | 
					  integrity sha512-VoM09vT7bfA7D+upt+FjeBO5eHIJQBUWki1aPvB+vbNiHS3+oGIJGIeyBtKQTME6UPXXy3vV07OL1tHd3ANuDw==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eslint-plugin-react@~7.14.3:
 | 
					eslint-plugin-react@~7.16.0:
 | 
				
			||||||
  version "7.14.3"
 | 
					  version "7.16.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.14.3.tgz#911030dd7e98ba49e1b2208599571846a66bdf13"
 | 
					  resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz#9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09"
 | 
				
			||||||
  integrity sha512-EzdyyBWC4Uz2hPYBiEJrKCUi2Fn+BJ9B/pJQcjw5X+x/H2Nm59S4MJIvL4O5NEE0+WbnQwEBxWY03oUk+Bc3FA==
 | 
					  integrity sha512-GacBAATewhhptbK3/vTP09CbFrgUJmBSaaRcWdbQLFvUZy9yVcQxigBNHGPU/KE2AyHpzj3AWXpxoMTsIDiHug==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    array-includes "^3.0.3"
 | 
					    array-includes "^3.0.3"
 | 
				
			||||||
    doctrine "^2.1.0"
 | 
					    doctrine "^2.1.0"
 | 
				
			||||||
    has "^1.0.3"
 | 
					    has "^1.0.3"
 | 
				
			||||||
    jsx-ast-utils "^2.1.0"
 | 
					    jsx-ast-utils "^2.2.1"
 | 
				
			||||||
    object.entries "^1.1.0"
 | 
					    object.entries "^1.1.0"
 | 
				
			||||||
    object.fromentries "^2.0.0"
 | 
					    object.fromentries "^2.0.0"
 | 
				
			||||||
    object.values "^1.1.0"
 | 
					    object.values "^1.1.0"
 | 
				
			||||||
    prop-types "^15.7.2"
 | 
					    prop-types "^15.7.2"
 | 
				
			||||||
    resolve "^1.10.1"
 | 
					    resolve "^1.12.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eslint-scope@^4.0.3:
 | 
					eslint-scope@^4.0.3:
 | 
				
			||||||
  version "4.0.3"
 | 
					  version "4.0.3"
 | 
				
			||||||
| 
						 | 
					@ -4552,6 +4551,13 @@ fs-minipass@^1.2.5:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    minipass "^2.6.0"
 | 
					    minipass "^2.6.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					fs-minipass@^2.0.0:
 | 
				
			||||||
 | 
					  version "2.0.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.0.0.tgz#a6415edab02fae4b9e9230bc87ee2e4472003cd1"
 | 
				
			||||||
 | 
					  integrity sha512-40Qz+LFXmd9tzYVnnBmZvFfvAADfUA14TXPK1s7IfElJTIZ97rA8w4Kin7Wt5JBrC3ShnnFJO/5vPjPEeJIq9A==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    minipass "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
fs-write-stream-atomic@^1.0.8:
 | 
					fs-write-stream-atomic@^1.0.8:
 | 
				
			||||||
  version "1.0.10"
 | 
					  version "1.0.10"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9"
 | 
					  resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9"
 | 
				
			||||||
| 
						 | 
					@ -4783,6 +4789,11 @@ graceful-fs@^4.1.6:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
 | 
					  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
 | 
				
			||||||
  integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
 | 
					  integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					graceful-fs@^4.2.2:
 | 
				
			||||||
 | 
					  version "4.2.3"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423"
 | 
				
			||||||
 | 
					  integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
growly@^1.3.0:
 | 
					growly@^1.3.0:
 | 
				
			||||||
  version "1.3.0"
 | 
					  version "1.3.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081"
 | 
					  resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081"
 | 
				
			||||||
| 
						 | 
					@ -5075,7 +5086,7 @@ http-link-header@^1.0.2:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.10.tgz#92c9c1374c35085f75db359ec56cc257cbb93fa4"
 | 
					  resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.10.tgz#92c9c1374c35085f75db359ec56cc257cbb93fa4"
 | 
				
			||||||
  integrity sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=
 | 
					  integrity sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
http-proxy-middleware@^0.19.1:
 | 
					http-proxy-middleware@0.19.1:
 | 
				
			||||||
  version "0.19.1"
 | 
					  version "0.19.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a"
 | 
					  resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a"
 | 
				
			||||||
  integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==
 | 
					  integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==
 | 
				
			||||||
| 
						 | 
					@ -5210,12 +5221,17 @@ imurmurhash@^0.1.4:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
 | 
					  resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
 | 
				
			||||||
  integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
 | 
					  integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					indent-string@^4.0.0:
 | 
				
			||||||
 | 
					  version "4.0.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
 | 
				
			||||||
 | 
					  integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
indexes-of@^1.0.1:
 | 
					indexes-of@^1.0.1:
 | 
				
			||||||
  version "1.0.1"
 | 
					  version "1.0.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
 | 
					  resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
 | 
				
			||||||
  integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc=
 | 
					  integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
infer-owner@^1.0.3:
 | 
					infer-owner@^1.0.3, infer-owner@^1.0.4:
 | 
				
			||||||
  version "1.0.4"
 | 
					  version "1.0.4"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
 | 
					  resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
 | 
				
			||||||
  integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==
 | 
					  integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==
 | 
				
			||||||
| 
						 | 
					@ -5380,7 +5396,7 @@ is-absolute-url@^2.0.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6"
 | 
					  resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6"
 | 
				
			||||||
  integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=
 | 
					  integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
is-absolute-url@^3.0.2:
 | 
					is-absolute-url@^3.0.3:
 | 
				
			||||||
  version "3.0.3"
 | 
					  version "3.0.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698"
 | 
					  resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698"
 | 
				
			||||||
  integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==
 | 
					  integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==
 | 
				
			||||||
| 
						 | 
					@ -6144,15 +6160,7 @@ jest-watcher@^24.9.0:
 | 
				
			||||||
    jest-util "^24.9.0"
 | 
					    jest-util "^24.9.0"
 | 
				
			||||||
    string-length "^2.0.0"
 | 
					    string-length "^2.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jest-worker@^24.6.0:
 | 
					jest-worker@^24.6.0, jest-worker@^24.9.0:
 | 
				
			||||||
  version "24.6.0"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.6.0.tgz#7f81ceae34b7cde0c9827a6980c35b7cdc0161b3"
 | 
					 | 
				
			||||||
  integrity sha512-jDwgW5W9qGNvpI1tNnvajh0a5IE/PuGLFmHk6aR/BZFz8tSgGw17GsDPXAJ6p91IvYDjOw8GpFbvvZGAK+DPQQ==
 | 
					 | 
				
			||||||
  dependencies:
 | 
					 | 
				
			||||||
    merge-stream "^1.0.1"
 | 
					 | 
				
			||||||
    supports-color "^6.1.0"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
jest-worker@^24.9.0:
 | 
					 | 
				
			||||||
  version "24.9.0"
 | 
					  version "24.9.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5"
 | 
					  resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5"
 | 
				
			||||||
  integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==
 | 
					  integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==
 | 
				
			||||||
| 
						 | 
					@ -6333,7 +6341,7 @@ jsprim@^1.2.2:
 | 
				
			||||||
    json-schema "0.2.3"
 | 
					    json-schema "0.2.3"
 | 
				
			||||||
    verror "1.10.0"
 | 
					    verror "1.10.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jsx-ast-utils@^2.1.0, jsx-ast-utils@^2.2.1:
 | 
					jsx-ast-utils@^2.2.1:
 | 
				
			||||||
  version "2.2.1"
 | 
					  version "2.2.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz#4d4973ebf8b9d2837ee91a8208cc66f3a2776cfb"
 | 
					  resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz#4d4973ebf8b9d2837ee91a8208cc66f3a2776cfb"
 | 
				
			||||||
  integrity sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ==
 | 
					  integrity sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ==
 | 
				
			||||||
| 
						 | 
					@ -6685,13 +6693,6 @@ merge-descriptors@1.0.1:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
 | 
					  resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
 | 
				
			||||||
  integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=
 | 
					  integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
merge-stream@^1.0.1:
 | 
					 | 
				
			||||||
  version "1.0.1"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1"
 | 
					 | 
				
			||||||
  integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=
 | 
					 | 
				
			||||||
  dependencies:
 | 
					 | 
				
			||||||
    readable-stream "^2.0.1"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
merge-stream@^2.0.0:
 | 
					merge-stream@^2.0.0:
 | 
				
			||||||
  version "2.0.0"
 | 
					  version "2.0.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
 | 
					  resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
 | 
				
			||||||
| 
						 | 
					@ -6830,6 +6831,27 @@ minimist@~0.0.1:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
 | 
					  resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
 | 
				
			||||||
  integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=
 | 
					  integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					minipass-collect@^1.0.2:
 | 
				
			||||||
 | 
					  version "1.0.2"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617"
 | 
				
			||||||
 | 
					  integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    minipass "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					minipass-flush@^1.0.5:
 | 
				
			||||||
 | 
					  version "1.0.5"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373"
 | 
				
			||||||
 | 
					  integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    minipass "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					minipass-pipeline@^1.2.2:
 | 
				
			||||||
 | 
					  version "1.2.2"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz#3dcb6bb4a546e32969c7ad710f2c79a86abba93a"
 | 
				
			||||||
 | 
					  integrity sha512-3JS5A2DKhD2g0Gg8x3yamO0pj7YeKGwVlDS90pF++kxptwx/F+B//roxf9SqYil5tQo65bijy+dAuAFZmYOouA==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    minipass "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
 | 
					minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
 | 
				
			||||||
  version "2.9.0"
 | 
					  version "2.9.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
 | 
					  resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
 | 
				
			||||||
| 
						 | 
					@ -6838,6 +6860,13 @@ minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
 | 
				
			||||||
    safe-buffer "^5.1.2"
 | 
					    safe-buffer "^5.1.2"
 | 
				
			||||||
    yallist "^3.0.0"
 | 
					    yallist "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					minipass@^3.0.0, minipass@^3.1.1:
 | 
				
			||||||
 | 
					  version "3.1.1"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.1.tgz#7607ce778472a185ad6d89082aa2070f79cedcd5"
 | 
				
			||||||
 | 
					  integrity sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    yallist "^4.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
minizlib@^1.2.1:
 | 
					minizlib@^1.2.1:
 | 
				
			||||||
  version "1.3.3"
 | 
					  version "1.3.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
 | 
					  resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
 | 
				
			||||||
| 
						 | 
					@ -6877,7 +6906,7 @@ mixin-object@^2.0.1:
 | 
				
			||||||
    for-in "^0.1.3"
 | 
					    for-in "^0.1.3"
 | 
				
			||||||
    is-extendable "^0.1.1"
 | 
					    is-extendable "^0.1.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
mkdirp@0.5.x, mkdirp@^0.5, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1:
 | 
					mkdirp@^0.5, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1:
 | 
				
			||||||
  version "0.5.1"
 | 
					  version "0.5.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
 | 
					  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
 | 
				
			||||||
  integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
 | 
					  integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
 | 
				
			||||||
| 
						 | 
					@ -7019,10 +7048,10 @@ node-fetch@^1.0.1:
 | 
				
			||||||
    encoding "^0.1.11"
 | 
					    encoding "^0.1.11"
 | 
				
			||||||
    is-stream "^1.0.1"
 | 
					    is-stream "^1.0.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
node-forge@0.8.2:
 | 
					node-forge@0.9.0:
 | 
				
			||||||
  version "0.8.2"
 | 
					  version "0.9.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.8.2.tgz#b4bcc59fb12ce77a8825fc6a783dfe3182499c5a"
 | 
					  resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.9.0.tgz#d624050edbb44874adca12bb9a52ec63cb782579"
 | 
				
			||||||
  integrity sha512-mXQ9GBq1N3uDCyV1pdSzgIguwgtVpM7f5/5J4ipz12PKWElmPpVWLDuWl8iXmhysr21+WmX/OJ5UKx82wjomgg==
 | 
					  integrity sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
node-int64@^0.4.0:
 | 
					node-int64@^0.4.0:
 | 
				
			||||||
  version "0.4.0"
 | 
					  version "0.4.0"
 | 
				
			||||||
| 
						 | 
					@ -7502,6 +7531,13 @@ p-map@^2.0.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175"
 | 
					  resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175"
 | 
				
			||||||
  integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
 | 
					  integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					p-map@^3.0.0:
 | 
				
			||||||
 | 
					  version "3.0.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d"
 | 
				
			||||||
 | 
					  integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    aggregate-error "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
p-reduce@^1.0.0:
 | 
					p-reduce@^1.0.0:
 | 
				
			||||||
  version "1.0.0"
 | 
					  version "1.0.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa"
 | 
					  resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa"
 | 
				
			||||||
| 
						 | 
					@ -7836,14 +7872,14 @@ pn@^1.1.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb"
 | 
					  resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb"
 | 
				
			||||||
  integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==
 | 
					  integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
portfinder@^1.0.24:
 | 
					portfinder@^1.0.25:
 | 
				
			||||||
  version "1.0.24"
 | 
					  version "1.0.25"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.24.tgz#11efbc6865f12f37624b6531ead1d809ed965cfa"
 | 
					  resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.25.tgz#254fd337ffba869f4b9d37edc298059cb4d35eca"
 | 
				
			||||||
  integrity sha512-ekRl7zD2qxYndYflwiryJwMioBI7LI7rVXg3EnLK3sjkouT5eOuhS3gS255XxBksa30VG8UPZYZCdgfGOfkSUg==
 | 
					  integrity sha512-6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    async "^1.5.2"
 | 
					    async "^2.6.2"
 | 
				
			||||||
    debug "^2.2.0"
 | 
					    debug "^3.1.1"
 | 
				
			||||||
    mkdirp "0.5.x"
 | 
					    mkdirp "^0.5.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
posix-character-classes@^0.1.0:
 | 
					posix-character-classes@^0.1.0:
 | 
				
			||||||
  version "0.1.1"
 | 
					  version "0.1.1"
 | 
				
			||||||
| 
						 | 
					@ -8510,15 +8546,15 @@ rc@^1.2.7:
 | 
				
			||||||
    minimist "^1.2.0"
 | 
					    minimist "^1.2.0"
 | 
				
			||||||
    strip-json-comments "~2.0.1"
 | 
					    strip-json-comments "~2.0.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-dom@^16.10.2:
 | 
					react-dom@^16.11.0:
 | 
				
			||||||
  version "16.10.2"
 | 
					  version "16.11.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.10.2.tgz#4840bce5409176bc3a1f2bd8cb10b92db452fda6"
 | 
					  resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.11.0.tgz#7e7c4a5a85a569d565c2462f5d345da2dd849af5"
 | 
				
			||||||
  integrity sha512-kWGDcH3ItJK4+6Pl9DZB16BXYAZyrYQItU4OMy0jAkv5aNqc+mAKb4TpFtAteI6TJZu+9ZlNhaeNQSVQDHJzkw==
 | 
					  integrity sha512-nrRyIUE1e7j8PaXSPtyRKtz+2y9ubW/ghNgqKFHHAHaeP0fpF5uXR+sq8IMRHC+ZUxw7W9NyCDTBtwWxvkb0iA==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    loose-envify "^1.1.0"
 | 
					    loose-envify "^1.1.0"
 | 
				
			||||||
    object-assign "^4.1.1"
 | 
					    object-assign "^4.1.1"
 | 
				
			||||||
    prop-types "^15.6.2"
 | 
					    prop-types "^15.6.2"
 | 
				
			||||||
    scheduler "^0.16.2"
 | 
					    scheduler "^0.17.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-event-listener@^0.6.0:
 | 
					react-event-listener@^0.6.0:
 | 
				
			||||||
  version "0.6.5"
 | 
					  version "0.6.5"
 | 
				
			||||||
| 
						 | 
					@ -8587,12 +8623,7 @@ react-intl@^2.9.0:
 | 
				
			||||||
    intl-relativeformat "^2.1.0"
 | 
					    intl-relativeformat "^2.1.0"
 | 
				
			||||||
    invariant "^2.1.1"
 | 
					    invariant "^2.1.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-is@^16.3.2, react-is@^16.7.0, react-is@^16.8.4, react-is@^16.9.0:
 | 
					react-is@^16.3.2, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6, react-is@^16.9.0:
 | 
				
			||||||
  version "16.9.0"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb"
 | 
					 | 
				
			||||||
  integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
react-is@^16.8.1, react-is@^16.8.6:
 | 
					 | 
				
			||||||
  version "16.10.2"
 | 
					  version "16.10.2"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.10.2.tgz#984120fd4d16800e9a738208ab1fba422d23b5ab"
 | 
					  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.10.2.tgz#984120fd4d16800e9a738208ab1fba422d23b5ab"
 | 
				
			||||||
  integrity sha512-INBT1QEgtcCCgvccr5/86CfD71fw9EPmDxgiJX4I2Ddr6ZsV6iFXsuby+qWJPtmNuMY0zByTsG4468P7nHuNWA==
 | 
					  integrity sha512-INBT1QEgtcCCgvccr5/86CfD71fw9EPmDxgiJX4I2Ddr6ZsV6iFXsuby+qWJPtmNuMY0zByTsG4468P7nHuNWA==
 | 
				
			||||||
| 
						 | 
					@ -8627,16 +8658,16 @@ react-notification@^6.8.4:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    prop-types "^15.6.2"
 | 
					    prop-types "^15.6.2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-overlays@^0.8.3:
 | 
					react-overlays@^0.9.1:
 | 
				
			||||||
  version "0.8.3"
 | 
					  version "0.9.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-overlays/-/react-overlays-0.8.3.tgz#fad65eea5b24301cca192a169f5dddb0b20d3ac5"
 | 
					  resolved "https://registry.yarnpkg.com/react-overlays/-/react-overlays-0.9.1.tgz#d4702bfe5b5e9335b676ff5a940253771fdeed12"
 | 
				
			||||||
  integrity sha512-h6GT3jgy90PgctleP39Yu3eK1v9vaJAW73GOA/UbN9dJ7aAN4BTZD6793eI1D5U+ukMk17qiqN/wl3diK1Z5LA==
 | 
					  integrity sha512-b0asy/zHtRd0i2+2/uNxe3YVprF3bRT1guyr791DORjCzE/HSBMog+ul83CdtKQ1kZ+pLnxWCu5W3BMysFhHdQ==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    classnames "^2.2.5"
 | 
					    classnames "^2.2.5"
 | 
				
			||||||
    dom-helpers "^3.2.1"
 | 
					    dom-helpers "^3.2.1"
 | 
				
			||||||
    prop-types "^15.5.10"
 | 
					    prop-types "^15.5.10"
 | 
				
			||||||
    prop-types-extra "^1.0.1"
 | 
					    prop-types-extra "^1.0.1"
 | 
				
			||||||
    react-transition-group "^2.2.0"
 | 
					    react-transition-group "^2.2.1"
 | 
				
			||||||
    warning "^3.0.0"
 | 
					    warning "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-redux-loading-bar@^4.0.8:
 | 
					react-redux-loading-bar@^4.0.8:
 | 
				
			||||||
| 
						 | 
					@ -8747,25 +8778,15 @@ react-swipeable-views@^0.13.3:
 | 
				
			||||||
    react-swipeable-views-utils "^0.13.3"
 | 
					    react-swipeable-views-utils "^0.13.3"
 | 
				
			||||||
    warning "^4.0.1"
 | 
					    warning "^4.0.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-test-renderer@^16.0.0-0:
 | 
					react-test-renderer@^16.0.0-0, react-test-renderer@^16.11.0:
 | 
				
			||||||
  version "16.8.6"
 | 
					  version "16.11.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.8.6.tgz#188d8029b8c39c786f998aa3efd3ffe7642d5ba1"
 | 
					  resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.11.0.tgz#72574566496462c808ac449b0287a4c0a1a7d8f8"
 | 
				
			||||||
  integrity sha512-H2srzU5IWYT6cZXof6AhUcx/wEyJddQ8l7cLM/F7gDXYyPr4oq+vCIxJYXVGhId1J706sqziAjuOEjyNkfgoEw==
 | 
					  integrity sha512-nh9gDl8R4ut+ZNNb2EeKO5VMvTKxwzurbSMuGBoKtjpjbg8JK/u3eVPVNi1h1Ue+eYK9oSzJjb+K3lzLxyA4ag==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    object-assign "^4.1.1"
 | 
					    object-assign "^4.1.1"
 | 
				
			||||||
    prop-types "^15.6.2"
 | 
					    prop-types "^15.6.2"
 | 
				
			||||||
    react-is "^16.8.6"
 | 
					    react-is "^16.8.6"
 | 
				
			||||||
    scheduler "^0.13.6"
 | 
					    scheduler "^0.17.0"
 | 
				
			||||||
 | 
					 | 
				
			||||||
react-test-renderer@^16.10.2:
 | 
					 | 
				
			||||||
  version "16.10.2"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.10.2.tgz#4d8492f8678c9b43b721a7d79ed0840fdae7c518"
 | 
					 | 
				
			||||||
  integrity sha512-k9Qzyev6cTIcIfrhgrFlYQAFxh5EEDO6ALNqYqmKsWVA7Q/rUMTay5nD3nthi6COmYsd4ghVYyi8U86aoeMqYQ==
 | 
					 | 
				
			||||||
  dependencies:
 | 
					 | 
				
			||||||
    object-assign "^4.1.1"
 | 
					 | 
				
			||||||
    prop-types "^15.6.2"
 | 
					 | 
				
			||||||
    react-is "^16.8.6"
 | 
					 | 
				
			||||||
    scheduler "^0.16.2"
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-textarea-autosize@^7.1.0:
 | 
					react-textarea-autosize@^7.1.0:
 | 
				
			||||||
  version "7.1.0"
 | 
					  version "7.1.0"
 | 
				
			||||||
| 
						 | 
					@ -8775,14 +8796,14 @@ react-textarea-autosize@^7.1.0:
 | 
				
			||||||
    "@babel/runtime" "^7.1.2"
 | 
					    "@babel/runtime" "^7.1.2"
 | 
				
			||||||
    prop-types "^15.6.0"
 | 
					    prop-types "^15.6.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-toggle@^4.0.1:
 | 
					react-toggle@^4.1.1:
 | 
				
			||||||
  version "4.0.2"
 | 
					  version "4.1.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-toggle/-/react-toggle-4.0.2.tgz#77f487860efb87fafd197672a2db8c885be1440f"
 | 
					  resolved "https://registry.yarnpkg.com/react-toggle/-/react-toggle-4.1.1.tgz#2317f67bf918ea3508a96b09dd383efd9da572af"
 | 
				
			||||||
  integrity sha512-EPTWnN7gQHgEAUEmjheanZXNzY5TPnQeyyHfEs3YshaiWZf5WNjfYDrglO5F1Hl/dNveX18i4l0grTEsYH2Ccw==
 | 
					  integrity sha512-+wXlMcSpg8SmnIXauMaZiKpR+r2wp2gMUteroejp2UTSqGTVvZLN+m9EhMzFARBKEw7KpQOwzCyfzeHeAndQGw==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    classnames "^2.2.5"
 | 
					    classnames "^2.2.5"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
react-transition-group@^2.2.0, react-transition-group@^2.2.1:
 | 
					react-transition-group@^2.2.1:
 | 
				
			||||||
  version "2.5.2"
 | 
					  version "2.5.2"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.5.2.tgz#9457166a9ba6ce697a3e1b076b3c049b9fb2c408"
 | 
					  resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.5.2.tgz#9457166a9ba6ce697a3e1b076b3c049b9fb2c408"
 | 
				
			||||||
  integrity sha512-vwHP++S+f6KL7rg8V1mfs62+MBKtbMeZDR8KiNmD7v98Gs3UPGsDZDahPJH2PVprFW5YHJfh6cbNim3zPndaSQ==
 | 
					  integrity sha512-vwHP++S+f6KL7rg8V1mfs62+MBKtbMeZDR8KiNmD7v98Gs3UPGsDZDahPJH2PVprFW5YHJfh6cbNim3zPndaSQ==
 | 
				
			||||||
| 
						 | 
					@ -9174,7 +9195,7 @@ resolve@1.1.7:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
 | 
					  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
 | 
				
			||||||
  integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
 | 
					  integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1:
 | 
					resolve@^1.10.0, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1:
 | 
				
			||||||
  version "1.12.0"
 | 
					  version "1.12.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6"
 | 
					  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6"
 | 
				
			||||||
  integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==
 | 
					  integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==
 | 
				
			||||||
| 
						 | 
					@ -9224,7 +9245,7 @@ rimraf@2.6.3, rimraf@^2.6.2, rimraf@~2.6.2:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    glob "^7.1.3"
 | 
					    glob "^7.1.3"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3:
 | 
					rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3, rimraf@^2.7.1:
 | 
				
			||||||
  version "2.7.1"
 | 
					  version "2.7.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
 | 
					  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
 | 
				
			||||||
  integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
 | 
					  integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
 | 
				
			||||||
| 
						 | 
					@ -9361,10 +9382,10 @@ sass-loader@^7.0.3:
 | 
				
			||||||
    pify "^3.0.0"
 | 
					    pify "^3.0.0"
 | 
				
			||||||
    semver "^5.5.0"
 | 
					    semver "^5.5.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
sass@^1.23.0:
 | 
					sass@^1.23.1:
 | 
				
			||||||
  version "1.23.0"
 | 
					  version "1.23.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/sass/-/sass-1.23.0.tgz#bd526ff40dbc5d09a4ed69e2cffa849749977710"
 | 
					  resolved "https://registry.yarnpkg.com/sass/-/sass-1.23.1.tgz#0e5b72ba2bd9f0229a637d33f8dd5bf2d810beb3"
 | 
				
			||||||
  integrity sha512-W4HT8+WE31Rzk3EPQC++CXjD5O+lOxgYBIB8Ohvt7/zeE2UzYW+TOczDrRU3KcEy3+xwXXbmDsOZFkoqgD4TKw==
 | 
					  integrity sha512-zQzJ3UETUWOMd/pJJGH/zvRsBVO97m11RcpfUhcQUHEXf0yHUBgOIE/Nw8aK0m1XyVJPeq228iIK7gVxsJ/Puw==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    chokidar ">=2.0.0 <4.0.0"
 | 
					    chokidar ">=2.0.0 <4.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9373,18 +9394,10 @@ sax@^1.2.4, sax@~1.2.4:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
 | 
					  resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
 | 
				
			||||||
  integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
 | 
					  integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
scheduler@^0.13.6:
 | 
					scheduler@^0.17.0:
 | 
				
			||||||
  version "0.13.6"
 | 
					  version "0.17.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.13.6.tgz#466a4ec332467b31a91b9bf74e5347072e4cd889"
 | 
					  resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz#7c9c673e4ec781fac853927916d1c426b6f3ddfe"
 | 
				
			||||||
  integrity sha512-IWnObHt413ucAYKsD9J1QShUKkbKLQQHdxRyw73sw4FN26iWr3DY/H34xGPe4nmL1DwXyWmSWmMrA9TfQbE/XQ==
 | 
					  integrity sha512-7rro8Io3tnCPuY4la/NuI5F2yfESpnfZyT6TtkXnSWVkcu0BCDJ+8gk5ozUaFaxpIyNuWAPXrH0yFcSi28fnDA==
 | 
				
			||||||
  dependencies:
 | 
					 | 
				
			||||||
    loose-envify "^1.1.0"
 | 
					 | 
				
			||||||
    object-assign "^4.1.1"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
scheduler@^0.16.2:
 | 
					 | 
				
			||||||
  version "0.16.2"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.16.2.tgz#f74cd9d33eff6fc554edfb79864868e4819132c1"
 | 
					 | 
				
			||||||
  integrity sha512-BqYVWqwz6s1wZMhjFvLfVR5WXP7ZY32M/wYPo04CcuPM7XZEbV2TBNW7Z0UkguPTl0dWMA59VbNXxK6q+pHItg==
 | 
					 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    loose-envify "^1.1.0"
 | 
					    loose-envify "^1.1.0"
 | 
				
			||||||
    object-assign "^4.1.1"
 | 
					    object-assign "^4.1.1"
 | 
				
			||||||
| 
						 | 
					@ -9398,13 +9411,13 @@ schema-utils@^1.0.0:
 | 
				
			||||||
    ajv-errors "^1.0.0"
 | 
					    ajv-errors "^1.0.0"
 | 
				
			||||||
    ajv-keywords "^3.1.0"
 | 
					    ajv-keywords "^3.1.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
schema-utils@^2.0.0:
 | 
					schema-utils@^2.0.0, schema-utils@^2.5.0:
 | 
				
			||||||
  version "2.0.1"
 | 
					  version "2.5.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.0.1.tgz#1eec2e059556af841b7f3a83b61af13d7a3f9196"
 | 
					  resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.5.0.tgz#8f254f618d402cc80257486213c8970edfd7c22f"
 | 
				
			||||||
  integrity sha512-HJFKJ4JixDpRur06QHwi8uu2kZbng318ahWEKgBjc0ZklcE4FDvmm2wghb448q0IRaABxIESt8vqPFvwgMB80A==
 | 
					  integrity sha512-32ISrwW2scPXHUSusP8qMg5dLUawKkyV+/qIEV9JdXKx+rsM6mi8vZY8khg2M69Qom16rtroWXD3Ybtiws38gQ==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    ajv "^6.1.0"
 | 
					    ajv "^6.10.2"
 | 
				
			||||||
    ajv-keywords "^3.1.0"
 | 
					    ajv-keywords "^3.4.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
scroll-behavior@^0.9.1:
 | 
					scroll-behavior@^0.9.1:
 | 
				
			||||||
  version "0.9.9"
 | 
					  version "0.9.9"
 | 
				
			||||||
| 
						 | 
					@ -9419,12 +9432,12 @@ select-hose@^2.0.0:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
 | 
					  resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
 | 
				
			||||||
  integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=
 | 
					  integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
selfsigned@^1.10.6:
 | 
					selfsigned@^1.10.7:
 | 
				
			||||||
  version "1.10.6"
 | 
					  version "1.10.7"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.6.tgz#7b3cd37ed9c2034261a173af1a1aae27d8169b67"
 | 
					  resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.7.tgz#da5819fd049d5574f28e88a9bcc6dbc6e6f3906b"
 | 
				
			||||||
  integrity sha512-i3+CeqxL7DpAazgVpAGdKMwHuL63B5nhJMh9NQ7xmChGkA3jNFflq6Jyo1LLJYcr3idWiNOPWHCrm4zMayLG4w==
 | 
					  integrity sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    node-forge "0.8.2"
 | 
					    node-forge "0.9.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0:
 | 
					"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0:
 | 
				
			||||||
  version "5.7.1"
 | 
					  version "5.7.1"
 | 
				
			||||||
| 
						 | 
					@ -9460,16 +9473,16 @@ send@0.17.1:
 | 
				
			||||||
    range-parser "~1.2.1"
 | 
					    range-parser "~1.2.1"
 | 
				
			||||||
    statuses "~1.5.0"
 | 
					    statuses "~1.5.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
serialize-javascript@^1.4.0:
 | 
					serialize-javascript@^1.4.0, serialize-javascript@^1.7.0:
 | 
				
			||||||
  version "1.7.0"
 | 
					 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.7.0.tgz#d6e0dfb2a3832a8c94468e6eb1db97e55a192a65"
 | 
					 | 
				
			||||||
  integrity sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
serialize-javascript@^1.7.0:
 | 
					 | 
				
			||||||
  version "1.9.1"
 | 
					  version "1.9.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb"
 | 
					  resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb"
 | 
				
			||||||
  integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==
 | 
					  integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					serialize-javascript@^2.1.0:
 | 
				
			||||||
 | 
					  version "2.1.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.0.tgz#9310276819efd0eb128258bb341957f6eb2fc570"
 | 
				
			||||||
 | 
					  integrity sha512-a/mxFfU00QT88umAJQsNWOnUKckhNCqOl028N48e7wFmo2/EHpTo9Wso+iJJCMrQnmFvcjto5RJdAHEvVhcyUQ==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
serve-index@^1.9.1:
 | 
					serve-index@^1.9.1:
 | 
				
			||||||
  version "1.9.1"
 | 
					  version "1.9.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239"
 | 
					  resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239"
 | 
				
			||||||
| 
						 | 
					@ -9809,6 +9822,14 @@ ssri@^6.0.1:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    figgy-pudding "^3.5.1"
 | 
					    figgy-pudding "^3.5.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ssri@^7.0.0:
 | 
				
			||||||
 | 
					  version "7.1.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz#92c241bf6de82365b5c7fb4bd76e975522e1294d"
 | 
				
			||||||
 | 
					  integrity sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    figgy-pudding "^3.5.1"
 | 
				
			||||||
 | 
					    minipass "^3.1.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
stable@~0.1.6:
 | 
					stable@~0.1.6:
 | 
				
			||||||
  version "0.1.8"
 | 
					  version "0.1.8"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf"
 | 
					  resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf"
 | 
				
			||||||
| 
						 | 
					@ -10114,10 +10135,24 @@ terser-webpack-plugin@^1.4.1:
 | 
				
			||||||
    webpack-sources "^1.4.0"
 | 
					    webpack-sources "^1.4.0"
 | 
				
			||||||
    worker-farm "^1.7.0"
 | 
					    worker-farm "^1.7.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
terser@^4.1.2:
 | 
					terser-webpack-plugin@^2.2.1:
 | 
				
			||||||
  version "4.3.4"
 | 
					  version "2.2.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/terser/-/terser-4.3.4.tgz#ad91bade95619e3434685d69efa621a5af5f877d"
 | 
					  resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.2.1.tgz#5569e6c7d8be79e5e43d6da23acc3b6ba77d22bd"
 | 
				
			||||||
  integrity sha512-Kcrn3RiW8NtHBP0ssOAzwa2MsIRQ8lJWiBG/K7JgqPlomA3mtb2DEmp4/hrUA+Jujx+WZ02zqd7GYD+QRBB/2Q==
 | 
					  integrity sha512-jwdauV5Al7zopR6OAYvIIRcxXCSvLjZjr7uZE8l2tIWb/ryrGN48sJftqGf5k9z09tWhajx53ldp0XPI080YnA==
 | 
				
			||||||
 | 
					  dependencies:
 | 
				
			||||||
 | 
					    cacache "^13.0.1"
 | 
				
			||||||
 | 
					    find-cache-dir "^3.0.0"
 | 
				
			||||||
 | 
					    jest-worker "^24.9.0"
 | 
				
			||||||
 | 
					    schema-utils "^2.5.0"
 | 
				
			||||||
 | 
					    serialize-javascript "^2.1.0"
 | 
				
			||||||
 | 
					    source-map "^0.6.1"
 | 
				
			||||||
 | 
					    terser "^4.3.9"
 | 
				
			||||||
 | 
					    webpack-sources "^1.4.3"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					terser@^4.1.2, terser@^4.3.9:
 | 
				
			||||||
 | 
					  version "4.3.9"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/terser/-/terser-4.3.9.tgz#e4be37f80553d02645668727777687dad26bbca8"
 | 
				
			||||||
 | 
					  integrity sha512-NFGMpHjlzmyOtPL+fDw3G7+6Ueh/sz4mkaUYa4lJCxOPTNzd0Uj0aZJOmsDYoSQyfuVoWDMSWTPU3huyOm2zdA==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    commander "^2.20.0"
 | 
					    commander "^2.20.0"
 | 
				
			||||||
    source-map "~0.6.1"
 | 
					    source-map "~0.6.1"
 | 
				
			||||||
| 
						 | 
					@ -10640,10 +10675,10 @@ watchpack@^1.6.0:
 | 
				
			||||||
    graceful-fs "^4.1.2"
 | 
					    graceful-fs "^4.1.2"
 | 
				
			||||||
    neo-async "^2.5.0"
 | 
					    neo-async "^2.5.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
wavesurfer.js@^3.0.0:
 | 
					wavesurfer.js@^3.2.0:
 | 
				
			||||||
  version "3.0.0"
 | 
					  version "3.2.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/wavesurfer.js/-/wavesurfer.js-3.0.0.tgz#35f36d76d59c749dca453cf4e10ee0ec49f454f8"
 | 
					  resolved "https://registry.yarnpkg.com/wavesurfer.js/-/wavesurfer.js-3.2.0.tgz#c316f3bd1b9f0f4d26188c6865a57e29a13efedc"
 | 
				
			||||||
  integrity sha512-DANu206c6gb9pSUbYFevsSiXMy8+Ri+CNtqm0UsouUdsn9fVQRtYs8uxzBtXK+rUPlIc6FlO54DU8uWeW3lDzw==
 | 
					  integrity sha512-P75SSpYTpzpCKFKjxmHkdp2jGpcm4neaGncBGV/jzfI5FPSIfl5mXTTZlZFpJhs7To+NI34Dj5y661JI43HEzA==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
wbuf@^1.1.0, wbuf@^1.7.3:
 | 
					wbuf@^1.1.0, wbuf@^1.7.3:
 | 
				
			||||||
  version "1.7.3"
 | 
					  version "1.7.3"
 | 
				
			||||||
| 
						 | 
					@ -10670,10 +10705,10 @@ webpack-assets-manifest@^3.1.1:
 | 
				
			||||||
    tapable "^1.0.0"
 | 
					    tapable "^1.0.0"
 | 
				
			||||||
    webpack-sources "^1.0.0"
 | 
					    webpack-sources "^1.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
webpack-bundle-analyzer@^3.3.2:
 | 
					webpack-bundle-analyzer@^3.6.0:
 | 
				
			||||||
  version "3.5.2"
 | 
					  version "3.6.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.5.2.tgz#ac02834f4b31de8e27d71e6c7a612301ebddb79f"
 | 
					  resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.6.0.tgz#39b3a8f829ca044682bc6f9e011c95deb554aefd"
 | 
				
			||||||
  integrity sha512-g9spCNe25QYUVqHRDkwG414GTok2m7pTTP0wr6l0J50Z3YLS04+BGodTqqoVBL7QfU/U/9p/oiI5XFOyfZ7S/A==
 | 
					  integrity sha512-orUfvVYEfBMDXgEKAKVvab5iQ2wXneIEorGNsyuOyVYpjYrI7CUOhhXNDd3huMwQ3vNNWWlGP+hzflMFYNzi2g==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    acorn "^6.0.7"
 | 
					    acorn "^6.0.7"
 | 
				
			||||||
    acorn-walk "^6.1.1"
 | 
					    acorn-walk "^6.1.1"
 | 
				
			||||||
| 
						 | 
					@ -10689,10 +10724,10 @@ webpack-bundle-analyzer@^3.3.2:
 | 
				
			||||||
    opener "^1.5.1"
 | 
					    opener "^1.5.1"
 | 
				
			||||||
    ws "^6.0.0"
 | 
					    ws "^6.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
webpack-cli@^3.3.7:
 | 
					webpack-cli@^3.3.10:
 | 
				
			||||||
  version "3.3.9"
 | 
					  version "3.3.10"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.9.tgz#79c27e71f94b7fe324d594ab64a8e396b9daa91a"
 | 
					  resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.10.tgz#17b279267e9b4fb549023fae170da8e6e766da13"
 | 
				
			||||||
  integrity sha512-xwnSxWl8nZtBl/AFJCOn9pG7s5CYUYdZxmmukv+fAHLcBIHM36dImfpQg3WfShZXeArkWlf6QRw24Klcsv8a5A==
 | 
					  integrity sha512-u1dgND9+MXaEt74sJR4PR7qkPxXUSQ0RXYq8x1L6Jg1MYVEmGPrH6Ah6C4arD4r0J1P5HKjRqpab36k0eIzPqg==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    chalk "2.4.2"
 | 
					    chalk "2.4.2"
 | 
				
			||||||
    cross-spawn "6.0.5"
 | 
					    cross-spawn "6.0.5"
 | 
				
			||||||
| 
						 | 
					@ -10706,7 +10741,7 @@ webpack-cli@^3.3.7:
 | 
				
			||||||
    v8-compile-cache "2.0.3"
 | 
					    v8-compile-cache "2.0.3"
 | 
				
			||||||
    yargs "13.2.4"
 | 
					    yargs "13.2.4"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
webpack-dev-middleware@^3.7.1:
 | 
					webpack-dev-middleware@^3.7.2:
 | 
				
			||||||
  version "3.7.2"
 | 
					  version "3.7.2"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3"
 | 
					  resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3"
 | 
				
			||||||
  integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==
 | 
					  integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==
 | 
				
			||||||
| 
						 | 
					@ -10717,10 +10752,10 @@ webpack-dev-middleware@^3.7.1:
 | 
				
			||||||
    range-parser "^1.2.1"
 | 
					    range-parser "^1.2.1"
 | 
				
			||||||
    webpack-log "^2.0.0"
 | 
					    webpack-log "^2.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
webpack-dev-server@^3.8.0:
 | 
					webpack-dev-server@^3.9.0:
 | 
				
			||||||
  version "3.8.1"
 | 
					  version "3.9.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.8.1.tgz#485b64c4aadc23f601e72114b40c1b1fea31d9f1"
 | 
					  resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.9.0.tgz#27c3b5d0f6b6677c4304465ac817623c8b27b89c"
 | 
				
			||||||
  integrity sha512-9F5DnfFA9bsrhpUCAfQic/AXBVHvq+3gQS+x6Zj0yc1fVVE0erKh2MV4IV12TBewuTrYeeTIRwCH9qLMvdNvTw==
 | 
					  integrity sha512-E6uQ4kRrTX9URN9s/lIbqTAztwEPdvzVrcmHE8EQ9YnuT9J8Es5Wrd8n9BKg1a0oZ5EgEke/EQFgUsp18dSTBw==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    ansi-html "0.0.7"
 | 
					    ansi-html "0.0.7"
 | 
				
			||||||
    bonjour "^3.5.0"
 | 
					    bonjour "^3.5.0"
 | 
				
			||||||
| 
						 | 
					@ -10731,18 +10766,18 @@ webpack-dev-server@^3.8.0:
 | 
				
			||||||
    del "^4.1.1"
 | 
					    del "^4.1.1"
 | 
				
			||||||
    express "^4.17.1"
 | 
					    express "^4.17.1"
 | 
				
			||||||
    html-entities "^1.2.1"
 | 
					    html-entities "^1.2.1"
 | 
				
			||||||
    http-proxy-middleware "^0.19.1"
 | 
					    http-proxy-middleware "0.19.1"
 | 
				
			||||||
    import-local "^2.0.0"
 | 
					    import-local "^2.0.0"
 | 
				
			||||||
    internal-ip "^4.3.0"
 | 
					    internal-ip "^4.3.0"
 | 
				
			||||||
    ip "^1.1.5"
 | 
					    ip "^1.1.5"
 | 
				
			||||||
    is-absolute-url "^3.0.2"
 | 
					    is-absolute-url "^3.0.3"
 | 
				
			||||||
    killable "^1.0.1"
 | 
					    killable "^1.0.1"
 | 
				
			||||||
    loglevel "^1.6.4"
 | 
					    loglevel "^1.6.4"
 | 
				
			||||||
    opn "^5.5.0"
 | 
					    opn "^5.5.0"
 | 
				
			||||||
    p-retry "^3.0.1"
 | 
					    p-retry "^3.0.1"
 | 
				
			||||||
    portfinder "^1.0.24"
 | 
					    portfinder "^1.0.25"
 | 
				
			||||||
    schema-utils "^1.0.0"
 | 
					    schema-utils "^1.0.0"
 | 
				
			||||||
    selfsigned "^1.10.6"
 | 
					    selfsigned "^1.10.7"
 | 
				
			||||||
    semver "^6.3.0"
 | 
					    semver "^6.3.0"
 | 
				
			||||||
    serve-index "^1.9.1"
 | 
					    serve-index "^1.9.1"
 | 
				
			||||||
    sockjs "0.3.19"
 | 
					    sockjs "0.3.19"
 | 
				
			||||||
| 
						 | 
					@ -10751,7 +10786,7 @@ webpack-dev-server@^3.8.0:
 | 
				
			||||||
    strip-ansi "^3.0.1"
 | 
					    strip-ansi "^3.0.1"
 | 
				
			||||||
    supports-color "^6.1.0"
 | 
					    supports-color "^6.1.0"
 | 
				
			||||||
    url "^0.11.0"
 | 
					    url "^0.11.0"
 | 
				
			||||||
    webpack-dev-middleware "^3.7.1"
 | 
					    webpack-dev-middleware "^3.7.2"
 | 
				
			||||||
    webpack-log "^2.0.0"
 | 
					    webpack-log "^2.0.0"
 | 
				
			||||||
    ws "^6.2.1"
 | 
					    ws "^6.2.1"
 | 
				
			||||||
    yargs "12.0.5"
 | 
					    yargs "12.0.5"
 | 
				
			||||||
| 
						 | 
					@ -10771,7 +10806,7 @@ webpack-merge@^4.2.1:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    lodash "^4.17.15"
 | 
					    lodash "^4.17.15"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
webpack-sources@^1.0.0, webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1:
 | 
					webpack-sources@^1.0.0, webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3:
 | 
				
			||||||
  version "1.4.3"
 | 
					  version "1.4.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933"
 | 
					  resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933"
 | 
				
			||||||
  integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==
 | 
					  integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==
 | 
				
			||||||
| 
						 | 
					@ -10883,6 +10918,11 @@ which@^2.0.1:
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    isexe "^2.0.0"
 | 
					    isexe "^2.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					wicg-inert@^3.0.0:
 | 
				
			||||||
 | 
					  version "3.0.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/wicg-inert/-/wicg-inert-3.0.0.tgz#4f5797172fbf7ff01effd3839b52872e35d3cba2"
 | 
				
			||||||
 | 
					  integrity sha512-sZsYZ8pk8y6CgDLkTxivfhLDBvZuDWTWBawU8OuDdO0Id6AOd1Gqjkvt9g9Ni7rgHIS7UbRvbLSv1z7MSJDYCA==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
wide-align@^1.1.0:
 | 
					wide-align@^1.1.0:
 | 
				
			||||||
  version "1.1.3"
 | 
					  version "1.1.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
 | 
					  resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
 | 
				
			||||||
| 
						 | 
					@ -10986,6 +11026,11 @@ yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3:
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
 | 
					  resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
 | 
				
			||||||
  integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
 | 
					  integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					yallist@^4.0.0:
 | 
				
			||||||
 | 
					  version "4.0.0"
 | 
				
			||||||
 | 
					  resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
 | 
				
			||||||
 | 
					  integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
yargs-parser@^11.1.1:
 | 
					yargs-parser@^11.1.1:
 | 
				
			||||||
  version "11.1.1"
 | 
					  version "11.1.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4"
 | 
					  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue