Merge branch 'master' into glitch-soc/merge-upstream
This commit is contained in:
		
							
								
								
									
										2
									
								
								Gemfile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Gemfile
									
									
									
									
									
								
							@@ -145,7 +145,7 @@ group :development do
 | 
				
			|||||||
  gem 'brakeman', '~> 4.10', require: false
 | 
					  gem 'brakeman', '~> 4.10', require: false
 | 
				
			||||||
  gem 'bundler-audit', '~> 0.7', require: false
 | 
					  gem 'bundler-audit', '~> 0.7', require: false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  gem 'capistrano', '~> 3.14'
 | 
					  gem 'capistrano', '~> 3.15'
 | 
				
			||||||
  gem 'capistrano-rails', '~> 1.6'
 | 
					  gem 'capistrano-rails', '~> 1.6'
 | 
				
			||||||
  gem 'capistrano-rbenv', '~> 2.2'
 | 
					  gem 'capistrano-rbenv', '~> 2.2'
 | 
				
			||||||
  gem 'capistrano-yarn', '~> 2.0'
 | 
					  gem 'capistrano-yarn', '~> 2.0'
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										16
									
								
								Gemfile.lock
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								Gemfile.lock
									
									
									
									
									
								
							@@ -116,7 +116,7 @@ GEM
 | 
				
			|||||||
      bundler (>= 1.2.0, < 3)
 | 
					      bundler (>= 1.2.0, < 3)
 | 
				
			||||||
      thor (>= 0.18, < 2)
 | 
					      thor (>= 0.18, < 2)
 | 
				
			||||||
    byebug (11.1.3)
 | 
					    byebug (11.1.3)
 | 
				
			||||||
    capistrano (3.14.1)
 | 
					    capistrano (3.15.0)
 | 
				
			||||||
      airbrussh (>= 1.0.0)
 | 
					      airbrussh (>= 1.0.0)
 | 
				
			||||||
      i18n
 | 
					      i18n
 | 
				
			||||||
      rake (>= 10.0.0)
 | 
					      rake (>= 10.0.0)
 | 
				
			||||||
@@ -272,7 +272,7 @@ GEM
 | 
				
			|||||||
    httplog (1.4.3)
 | 
					    httplog (1.4.3)
 | 
				
			||||||
      rack (>= 1.0)
 | 
					      rack (>= 1.0)
 | 
				
			||||||
      rainbow (>= 2.0.0)
 | 
					      rainbow (>= 2.0.0)
 | 
				
			||||||
    i18n (1.8.5)
 | 
					    i18n (1.8.7)
 | 
				
			||||||
      concurrent-ruby (~> 1.0)
 | 
					      concurrent-ruby (~> 1.0)
 | 
				
			||||||
    i18n-tasks (0.9.33)
 | 
					    i18n-tasks (0.9.33)
 | 
				
			||||||
      activesupport (>= 4.0.2)
 | 
					      activesupport (>= 4.0.2)
 | 
				
			||||||
@@ -359,10 +359,10 @@ GEM
 | 
				
			|||||||
      net-ssh (>= 2.6.5, < 7.0.0)
 | 
					      net-ssh (>= 2.6.5, < 7.0.0)
 | 
				
			||||||
    net-ssh (6.1.0)
 | 
					    net-ssh (6.1.0)
 | 
				
			||||||
    nio4r (2.5.4)
 | 
					    nio4r (2.5.4)
 | 
				
			||||||
    nokogiri (1.11.0)
 | 
					    nokogiri (1.11.1)
 | 
				
			||||||
      mini_portile2 (~> 2.5.0)
 | 
					      mini_portile2 (~> 2.5.0)
 | 
				
			||||||
      racc (~> 1.4)
 | 
					      racc (~> 1.4)
 | 
				
			||||||
    nokogumbo (2.0.2)
 | 
					    nokogumbo (2.0.4)
 | 
				
			||||||
      nokogiri (~> 1.8, >= 1.8.4)
 | 
					      nokogiri (~> 1.8, >= 1.8.4)
 | 
				
			||||||
    nsa (0.2.7)
 | 
					    nsa (0.2.7)
 | 
				
			||||||
      activesupport (>= 4.2, < 6)
 | 
					      activesupport (>= 4.2, < 6)
 | 
				
			||||||
@@ -561,7 +561,7 @@ GEM
 | 
				
			|||||||
      fugit (~> 1.1, >= 1.1.6)
 | 
					      fugit (~> 1.1, >= 1.1.6)
 | 
				
			||||||
    safety_net_attestation (0.4.0)
 | 
					    safety_net_attestation (0.4.0)
 | 
				
			||||||
      jwt (~> 2.0)
 | 
					      jwt (~> 2.0)
 | 
				
			||||||
    sanitize (5.2.1)
 | 
					    sanitize (5.2.2)
 | 
				
			||||||
      crass (~> 1.0.2)
 | 
					      crass (~> 1.0.2)
 | 
				
			||||||
      nokogiri (>= 1.8.0)
 | 
					      nokogiri (>= 1.8.0)
 | 
				
			||||||
      nokogumbo (~> 2.0)
 | 
					      nokogumbo (~> 2.0)
 | 
				
			||||||
@@ -592,7 +592,7 @@ GEM
 | 
				
			|||||||
    simple_form (5.0.3)
 | 
					    simple_form (5.0.3)
 | 
				
			||||||
      actionpack (>= 5.0)
 | 
					      actionpack (>= 5.0)
 | 
				
			||||||
      activemodel (>= 5.0)
 | 
					      activemodel (>= 5.0)
 | 
				
			||||||
    simplecov (0.21.0)
 | 
					    simplecov (0.21.2)
 | 
				
			||||||
      docile (~> 1.1)
 | 
					      docile (~> 1.1)
 | 
				
			||||||
      simplecov-html (~> 0.11)
 | 
					      simplecov-html (~> 0.11)
 | 
				
			||||||
      simplecov_json_formatter (~> 0.1)
 | 
					      simplecov_json_formatter (~> 0.1)
 | 
				
			||||||
@@ -605,7 +605,7 @@ GEM
 | 
				
			|||||||
      actionpack (>= 4.0)
 | 
					      actionpack (>= 4.0)
 | 
				
			||||||
      activesupport (>= 4.0)
 | 
					      activesupport (>= 4.0)
 | 
				
			||||||
      sprockets (>= 3.0.0)
 | 
					      sprockets (>= 3.0.0)
 | 
				
			||||||
    sshkit (1.21.0)
 | 
					    sshkit (1.21.1)
 | 
				
			||||||
      net-scp (>= 1.1.2)
 | 
					      net-scp (>= 1.1.2)
 | 
				
			||||||
      net-ssh (>= 2.8.0)
 | 
					      net-ssh (>= 2.8.0)
 | 
				
			||||||
    stackprof (0.2.16)
 | 
					    stackprof (0.2.16)
 | 
				
			||||||
@@ -698,7 +698,7 @@ DEPENDENCIES
 | 
				
			|||||||
  browser
 | 
					  browser
 | 
				
			||||||
  bullet (~> 6.1)
 | 
					  bullet (~> 6.1)
 | 
				
			||||||
  bundler-audit (~> 0.7)
 | 
					  bundler-audit (~> 0.7)
 | 
				
			||||||
  capistrano (~> 3.14)
 | 
					  capistrano (~> 3.15)
 | 
				
			||||||
  capistrano-rails (~> 1.6)
 | 
					  capistrano-rails (~> 1.6)
 | 
				
			||||||
  capistrano-rbenv (~> 2.2)
 | 
					  capistrano-rbenv (~> 2.2)
 | 
				
			||||||
  capistrano-yarn (~> 2.0)
 | 
					  capistrano-yarn (~> 2.0)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -7,7 +7,7 @@ class Api::V1::MarkersController < Api::BaseController
 | 
				
			|||||||
  before_action :require_user!
 | 
					  before_action :require_user!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def index
 | 
					  def index
 | 
				
			||||||
    @markers = current_user.markers.where(timeline: Array(params[:timeline])).each_with_object({}) { |marker, h| h[marker.timeline] = marker }
 | 
					    @markers = current_user.markers.where(timeline: Array(params[:timeline])).index_by(&:timeline)
 | 
				
			||||||
    render json: serialize_map(@markers)
 | 
					    render json: serialize_map(@markers)
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -38,7 +38,7 @@ module CacheConcern
 | 
				
			|||||||
    klass.reload_stale_associations!(cached_keys_with_value.values) if klass.respond_to?(:reload_stale_associations!)
 | 
					    klass.reload_stale_associations!(cached_keys_with_value.values) if klass.respond_to?(:reload_stale_associations!)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    unless uncached_ids.empty?
 | 
					    unless uncached_ids.empty?
 | 
				
			||||||
      uncached = klass.where(id: uncached_ids).with_includes.each_with_object({}) { |item, h| h[item.id] = item }
 | 
					      uncached = klass.where(id: uncached_ids).with_includes.index_by(&:id)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      uncached.each_value do |item|
 | 
					      uncached.each_value do |item|
 | 
				
			||||||
        Rails.cache.write(item, item)
 | 
					        Rails.cache.write(item, item)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -11,8 +11,13 @@ class ActivityPub::Activity::Block < ActivityPub::Activity
 | 
				
			|||||||
      return
 | 
					      return
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    UnfollowService.new.call(@account, target_account) if @account.following?(target_account)
 | 
				
			||||||
    UnfollowService.new.call(target_account, @account) if target_account.following?(@account)
 | 
					    UnfollowService.new.call(target_account, @account) if target_account.following?(@account)
 | 
				
			||||||
 | 
					    RejectFollowService.new.call(target_account, @account) if target_account.requested?(@account)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @account.block!(target_account, uri: @json['id']) unless delete_arrived_first?(@json['id'])
 | 
					    unless delete_arrived_first?(@json['id'])
 | 
				
			||||||
 | 
					      BlockWorker.perform_async(@account.id, target_account.id)
 | 
				
			||||||
 | 
					      @account.block!(target_account, uri: @json['id'])
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -25,7 +25,7 @@ class EntityCache
 | 
				
			|||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    unless uncached_ids.empty?
 | 
					    unless uncached_ids.empty?
 | 
				
			||||||
      uncached = CustomEmoji.where(shortcode: shortcodes, domain: domain, disabled: false).each_with_object({}) { |item, h| h[item.shortcode] = item }
 | 
					      uncached = CustomEmoji.where(shortcode: shortcodes, domain: domain, disabled: false).index_by(&:shortcode)
 | 
				
			||||||
      uncached.each_value { |item| Rails.cache.write(to_key(:emoji, item.shortcode, domain), item, expires_in: MAX_EXPIRATION) }
 | 
					      uncached.each_value { |item| Rails.cache.write(to_key(:emoji, item.shortcode, domain), item, expires_in: MAX_EXPIRATION) }
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -31,7 +31,7 @@ module Settings
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    def all_as_records
 | 
					    def all_as_records
 | 
				
			||||||
      vars = thing_scoped
 | 
					      vars = thing_scoped
 | 
				
			||||||
      records = vars.each_with_object({}) { |r, h| h[r.var] = r }
 | 
					      records = vars.index_by(&:var)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      Setting.default_settings.each do |key, default_value|
 | 
					      Setting.default_settings.each do |key, default_value|
 | 
				
			||||||
        next if records.key?(key) || default_value.is_a?(Hash)
 | 
					        next if records.key?(key) || default_value.is_a?(Hash)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,7 +21,7 @@ class Webfinger
 | 
				
			|||||||
    private
 | 
					    private
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def links
 | 
					    def links
 | 
				
			||||||
      @links ||= @json['links'].map { |link| [link['rel'], link] }.to_h
 | 
					      @links ||= @json['links'].index_by { |link| link['rel'] }
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -277,7 +277,7 @@ class Account < ApplicationRecord
 | 
				
			|||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def tags_as_strings=(tag_names)
 | 
					  def tags_as_strings=(tag_names)
 | 
				
			||||||
    hashtags_map = Tag.find_or_create_by_names(tag_names).each_with_object({}) { |tag, h| h[tag.name] = tag }
 | 
					    hashtags_map = Tag.find_or_create_by_names(tag_names).index_by(&:name)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Remove hashtags that are to be deleted
 | 
					    # Remove hashtags that are to be deleted
 | 
				
			||||||
    tags.each do |tag|
 | 
					    tags.each do |tag|
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -96,7 +96,7 @@ class Notification < ApplicationRecord
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
      return if account_ids.empty?
 | 
					      return if account_ids.empty?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      accounts = Account.where(id: account_ids).includes(:account_stat).each_with_object({}) { |a, h| h[a.id] = a }
 | 
					      accounts = Account.where(id: account_ids).includes(:account_stat).index_by(&:id)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      cached_items.each do |item|
 | 
					      cached_items.each do |item|
 | 
				
			||||||
        item.from_account = accounts[item.from_account_id]
 | 
					        item.from_account = accounts[item.from_account_id]
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -40,7 +40,7 @@ class Setting < RailsSettings::Base
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    def all_as_records
 | 
					    def all_as_records
 | 
				
			||||||
      vars    = thing_scoped
 | 
					      vars    = thing_scoped
 | 
				
			||||||
      records = vars.each_with_object({}) { |r, h| h[r.var] = r }
 | 
					      records = vars.index_by(&:var)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      default_settings.each do |key, default_value|
 | 
					      default_settings.each do |key, default_value|
 | 
				
			||||||
        next if records.key?(key) || default_value.is_a?(Hash)
 | 
					        next if records.key?(key) || default_value.is_a?(Hash)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -354,7 +354,7 @@ class Status < ApplicationRecord
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
      return if account_ids.empty?
 | 
					      return if account_ids.empty?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      accounts = Account.where(id: account_ids).includes(:account_stat).each_with_object({}) { |a, h| h[a.id] = a }
 | 
					      accounts = Account.where(id: account_ids).includes(:account_stat).index_by(&:id)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      cached_items.each do |item|
 | 
					      cached_items.each do |item|
 | 
				
			||||||
        item.account = accounts[item.account_id]
 | 
					        item.account = accounts[item.account_id]
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -91,7 +91,7 @@ class TrendingTags
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
      tags = Tag.where(id: tag_ids)
 | 
					      tags = Tag.where(id: tag_ids)
 | 
				
			||||||
      tags = tags.trendable if filtered
 | 
					      tags = tags.trendable if filtered
 | 
				
			||||||
      tags = tags.each_with_object({}) { |tag, h| h[tag.id] = tag }
 | 
					      tags = tags.index_by(&:id)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      tag_ids.map { |tag_id| tags[tag_id] }.compact.take(limit)
 | 
					      tag_ids.map { |tag_id| tags[tag_id] }.compact.take(limit)
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
# frozen_string_literal: true
 | 
					# frozen_string_literal: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lock '3.14.1'
 | 
					lock '3.15.0'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set :repo_url, ENV.fetch('REPO', 'https://github.com/tootsuite/mastodon.git')
 | 
					set :repo_url, ENV.fetch('REPO', 'https://github.com/tootsuite/mastodon.git')
 | 
				
			||||||
set :branch, ENV.fetch('BRANCH', 'master')
 | 
					set :branch, ENV.fetch('BRANCH', 'master')
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -326,7 +326,7 @@ module Mastodon
 | 
				
			|||||||
      end
 | 
					      end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      preload_map.each_with_object({}) do |(model_name, record_ids), model_map|
 | 
					      preload_map.each_with_object({}) do |(model_name, record_ids), model_map|
 | 
				
			||||||
        model_map[model_name] = model_name.constantize.where(id: record_ids).each_with_object({}) { |record, record_map| record_map[record.id] = record }
 | 
					        model_map[model_name] = model_name.constantize.where(id: record_ids).index_by(&:id)
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -71,7 +71,7 @@
 | 
				
			|||||||
    "@clusterws/cws": "^3.0.0",
 | 
					    "@clusterws/cws": "^3.0.0",
 | 
				
			||||||
    "@gamestdio/websocket": "^0.3.2",
 | 
					    "@gamestdio/websocket": "^0.3.2",
 | 
				
			||||||
    "@github/webauthn-json": "^0.5.7",
 | 
					    "@github/webauthn-json": "^0.5.7",
 | 
				
			||||||
    "@rails/ujs": "^6.1.0",
 | 
					    "@rails/ujs": "^6.1.1",
 | 
				
			||||||
    "array-includes": "^3.1.2",
 | 
					    "array-includes": "^3.1.2",
 | 
				
			||||||
    "atrament": "0.2.4",
 | 
					    "atrament": "0.2.4",
 | 
				
			||||||
    "arrow-key-navigation": "^1.2.0",
 | 
					    "arrow-key-navigation": "^1.2.0",
 | 
				
			||||||
@@ -156,7 +156,7 @@
 | 
				
			|||||||
    "requestidlecallback": "^0.3.0",
 | 
					    "requestidlecallback": "^0.3.0",
 | 
				
			||||||
    "reselect": "^4.0.0",
 | 
					    "reselect": "^4.0.0",
 | 
				
			||||||
    "rimraf": "^3.0.2",
 | 
					    "rimraf": "^3.0.2",
 | 
				
			||||||
    "sass": "^1.32.0",
 | 
					    "sass": "^1.32.2",
 | 
				
			||||||
    "sass-loader": "^10.1.0",
 | 
					    "sass-loader": "^10.1.0",
 | 
				
			||||||
    "stacktrace-js": "^2.0.2",
 | 
					    "stacktrace-js": "^2.0.2",
 | 
				
			||||||
    "stringz": "^2.1.0",
 | 
					    "stringz": "^2.1.0",
 | 
				
			||||||
@@ -166,7 +166,7 @@
 | 
				
			|||||||
    "throng": "^4.0.0",
 | 
					    "throng": "^4.0.0",
 | 
				
			||||||
    "tiny-queue": "^0.2.1",
 | 
					    "tiny-queue": "^0.2.1",
 | 
				
			||||||
    "uuid": "^8.3.1",
 | 
					    "uuid": "^8.3.1",
 | 
				
			||||||
    "webpack": "^4.44.2",
 | 
					    "webpack": "^4.45.0",
 | 
				
			||||||
    "webpack-assets-manifest": "^4.0.0",
 | 
					    "webpack-assets-manifest": "^4.0.0",
 | 
				
			||||||
    "webpack-bundle-analyzer": "^4.3.0",
 | 
					    "webpack-bundle-analyzer": "^4.3.0",
 | 
				
			||||||
    "webpack-cli": "^3.3.12",
 | 
					    "webpack-cli": "^3.3.12",
 | 
				
			||||||
@@ -175,7 +175,7 @@
 | 
				
			|||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "@testing-library/jest-dom": "^5.11.8",
 | 
					    "@testing-library/jest-dom": "^5.11.8",
 | 
				
			||||||
    "@testing-library/react": "^11.2.2",
 | 
					    "@testing-library/react": "^11.2.3",
 | 
				
			||||||
    "babel-eslint": "^10.1.0",
 | 
					    "babel-eslint": "^10.1.0",
 | 
				
			||||||
    "babel-jest": "^26.6.3",
 | 
					    "babel-jest": "^26.6.3",
 | 
				
			||||||
    "eslint": "^7.17.0",
 | 
					    "eslint": "^7.17.0",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -71,7 +71,7 @@ RSpec.describe Notification, type: :model do
 | 
				
			|||||||
      before do
 | 
					      before do
 | 
				
			||||||
        allow(accounts_with_ids).to receive(:[]).with(stale_account1.id).and_return(account1)
 | 
					        allow(accounts_with_ids).to receive(:[]).with(stale_account1.id).and_return(account1)
 | 
				
			||||||
        allow(accounts_with_ids).to receive(:[]).with(stale_account2.id).and_return(account2)
 | 
					        allow(accounts_with_ids).to receive(:[]).with(stale_account2.id).and_return(account2)
 | 
				
			||||||
        allow(Account).to receive_message_chain(:where, :includes, :each_with_object).and_return(accounts_with_ids)
 | 
					        allow(Account).to receive_message_chain(:where, :includes, :index_by).and_return(accounts_with_ids)
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      let(:cached_items) do
 | 
					      let(:cached_items) do
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										32
									
								
								yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										32
									
								
								yarn.lock
									
									
									
									
									
								
							@@ -1352,10 +1352,10 @@
 | 
				
			|||||||
  resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.11.tgz#aeb16f50649a91af79dbe36574b66d0f9e4d9f71"
 | 
					  resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.11.tgz#aeb16f50649a91af79dbe36574b66d0f9e4d9f71"
 | 
				
			||||||
  integrity sha512-3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA==
 | 
					  integrity sha512-3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@rails/ujs@^6.1.0":
 | 
					"@rails/ujs@^6.1.1":
 | 
				
			||||||
  version "6.1.0"
 | 
					  version "6.1.1"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/@rails/ujs/-/ujs-6.1.0.tgz#9a48df6511cb2b472c9f596c1f37dc0af022e751"
 | 
					  resolved "https://registry.yarnpkg.com/@rails/ujs/-/ujs-6.1.1.tgz#25c4e60018274b37e5ba0850134f6445429de2f5"
 | 
				
			||||||
  integrity sha512-kQNKyM4ePAc4u9eR1c4OqrbAHH+3SJXt++8izIjeaZeg+P7yBtgoF/dogMD/JPPowNC74ACFpM/4op0Ggp/fPw==
 | 
					  integrity sha512-uF6zEbXpGkNa7Vvxrd9Yqas8xsbc3lsC733V6I7fXgPuj8xXiuZakdE4uIyQSFRVmZKe12qmC6CNJNtIEvt4bA==
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@sinonjs/commons@^1.7.0":
 | 
					"@sinonjs/commons@^1.7.0":
 | 
				
			||||||
  version "1.8.1"
 | 
					  version "1.8.1"
 | 
				
			||||||
@@ -1399,10 +1399,10 @@
 | 
				
			|||||||
    lodash "^4.17.15"
 | 
					    lodash "^4.17.15"
 | 
				
			||||||
    redent "^3.0.0"
 | 
					    redent "^3.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@testing-library/react@^11.2.2":
 | 
					"@testing-library/react@^11.2.3":
 | 
				
			||||||
  version "11.2.2"
 | 
					  version "11.2.3"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-11.2.2.tgz#099c6c195140ff069211143cb31c0f8337bdb7b7"
 | 
					  resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-11.2.3.tgz#9971ede1c8465a231d7982eeca3c39fc362d5443"
 | 
				
			||||||
  integrity sha512-jaxm0hwUjv+hzC+UFEywic7buDC9JQ1q3cDsrWVSDAPmLotfA6E6kUHlYm/zOeGCac6g48DR36tFHxl7Zb+N5A==
 | 
					  integrity sha512-BirBUGPkTW28ULuCwIbYo0y2+0aavHczBT6N9r3LrsswEW3pg25l1wgoE7I8QBIy1upXWkwKpYdWY7NYYP0Bxw==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    "@babel/runtime" "^7.12.5"
 | 
					    "@babel/runtime" "^7.12.5"
 | 
				
			||||||
    "@testing-library/dom" "^7.28.1"
 | 
					    "@testing-library/dom" "^7.28.1"
 | 
				
			||||||
@@ -9528,10 +9528,10 @@ sass-loader@^10.1.0:
 | 
				
			|||||||
    schema-utils "^3.0.0"
 | 
					    schema-utils "^3.0.0"
 | 
				
			||||||
    semver "^7.3.2"
 | 
					    semver "^7.3.2"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
sass@^1.32.0:
 | 
					sass@^1.32.2:
 | 
				
			||||||
  version "1.32.0"
 | 
					  version "1.32.2"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/sass/-/sass-1.32.0.tgz#10101a026c13080b14e2b374d4e15ee24400a4d3"
 | 
					  resolved "https://registry.yarnpkg.com/sass/-/sass-1.32.2.tgz#66dc0250bc86c15d19ddee7135e93d0cf3d3257b"
 | 
				
			||||||
  integrity sha512-fhyqEbMIycQA4blrz/C0pYhv2o4x2y6FYYAH0CshBw3DXh5D5wyERgxw0ptdau1orc/GhNrhF7DFN2etyOCEng==
 | 
					  integrity sha512-u1pUuzqwz3SAgvHSWp1k0mRhX82b2DdlVnP6UIetQPZtYbuJUDaPQhZE12jyjB7vYeOScfz9WPsZJB6Rpk7heA==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    chokidar ">=2.0.0 <4.0.0"
 | 
					    chokidar ">=2.0.0 <4.0.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -11185,10 +11185,10 @@ webpack-sources@^1.0, webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-so
 | 
				
			|||||||
    source-list-map "^2.0.0"
 | 
					    source-list-map "^2.0.0"
 | 
				
			||||||
    source-map "~0.6.1"
 | 
					    source-map "~0.6.1"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
webpack@^4.44.2:
 | 
					webpack@^4.45.0:
 | 
				
			||||||
  version "4.44.2"
 | 
					  version "4.45.0"
 | 
				
			||||||
  resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.2.tgz#6bfe2b0af055c8b2d1e90ed2cd9363f841266b72"
 | 
					  resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.45.0.tgz#bcdc1ddb43959adb47f8974e60d944027267c1be"
 | 
				
			||||||
  integrity sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q==
 | 
					  integrity sha512-JhDaVi4CbRcwLLAoqC7eugMSMJnZbIfE2AyjaZ19pnOIh/R2O/lXOiXA2tQFN0iXEcxgpPJsPJHW2wOWqiTLcw==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    "@webassemblyjs/ast" "1.9.0"
 | 
					    "@webassemblyjs/ast" "1.9.0"
 | 
				
			||||||
    "@webassemblyjs/helper-module-context" "1.9.0"
 | 
					    "@webassemblyjs/helper-module-context" "1.9.0"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user