diff options
92 files changed, 468 insertions, 743 deletions
diff --git a/.gitignore b/.gitignore index c3f20deea..804eb7bdc 100644 --- a/.gitignore +++ b/.gitignore @@ -23,6 +23,7 @@ public/packs public/packs-test .env .env.production +.env.development node_modules/ build/ diff --git a/Gemfile b/Gemfile index c1bfe78dd..a748e1d7a 100644 --- a/Gemfile +++ b/Gemfile @@ -6,7 +6,8 @@ ruby '>= 2.4.0', '< 2.7.0' gem 'pkg-config', '~> 1.4' gem 'puma', '~> 4.3' -gem 'rails', '~> 5.2.3' +gem 'rails', '~> 5.2.4' +gem 'sprockets', '~> 3.7' gem 'thor', '~> 0.20' gem 'hamlit-rails', '~> 0.2' @@ -125,7 +126,7 @@ group :test do gem 'rspec-sidekiq', '~> 3.0' gem 'simplecov', '~> 0.17', require: false gem 'webmock', '~> 3.7' - gem 'parallel_tests', '~> 2.29' + gem 'parallel_tests', '~> 2.30' end group :development do @@ -137,7 +138,7 @@ group :development do gem 'letter_opener', '~> 1.7' gem 'letter_opener_web', '~> 1.3' gem 'memory_profiler' - gem 'rubocop', '~> 0.76', require: false + gem 'rubocop', '~> 0.77', require: false gem 'rubocop-rails', '~> 2.4', require: false gem 'brakeman', '~> 4.7', require: false gem 'bundler-audit', '~> 0.6', require: false diff --git a/Gemfile.lock b/Gemfile.lock index efdcee087..d42b29f3a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -44,25 +44,25 @@ GIT GEM remote: https://rubygems.org/ specs: - actioncable (5.2.3) - actionpack (= 5.2.3) + actioncable (5.2.4) + actionpack (= 5.2.4) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailer (5.2.3) - actionpack (= 5.2.3) - actionview (= 5.2.3) - activejob (= 5.2.3) + actionmailer (5.2.4) + actionpack (= 5.2.4) + actionview (= 5.2.4) + activejob (= 5.2.4) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (5.2.3) - actionview (= 5.2.3) - activesupport (= 5.2.3) + actionpack (5.2.4) + actionview (= 5.2.4) + activesupport (= 5.2.4) rack (~> 2.0) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.0.2) - actionview (5.2.3) - activesupport (= 5.2.3) + actionview (5.2.4) + activesupport (= 5.2.4) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) @@ -73,20 +73,20 @@ GEM case_transform (>= 0.2) jsonapi-renderer (>= 0.1.1.beta1, < 0.3) active_record_query_trace (1.7) - activejob (5.2.3) - activesupport (= 5.2.3) + activejob (5.2.4) + activesupport (= 5.2.4) globalid (>= 0.3.6) - activemodel (5.2.3) - activesupport (= 5.2.3) - activerecord (5.2.3) - activemodel (= 5.2.3) - activesupport (= 5.2.3) + activemodel (5.2.4) + activesupport (= 5.2.4) + activerecord (5.2.4) + activemodel (= 5.2.4) + activesupport (= 5.2.4) arel (>= 9.0) - activestorage (5.2.3) - actionpack (= 5.2.3) - activerecord (= 5.2.3) + activestorage (5.2.4) + actionpack (= 5.2.4) + activerecord (= 5.2.4) marcel (~> 0.3.1) - activesupport (5.2.3) + activesupport (5.2.4) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 0.7, < 2) minitest (~> 5.1) @@ -134,7 +134,7 @@ GEM msgpack (~> 1.0) brakeman (4.7.2) browser (2.7.1) - builder (3.2.3) + builder (3.2.4) bullet (6.0.2) activesupport (>= 3.0.0) uniform_notifier (~> 1.11) @@ -218,7 +218,7 @@ GEM docile (1.3.2) domain_name (0.5.20180417) unf (>= 0.0.5, < 1.0.0) - doorkeeper (5.2.2) + doorkeeper (5.2.3) railties (>= 5) dotenv (2.7.5) dotenv-rails (2.7.5) @@ -238,9 +238,9 @@ GEM erubi (1.9.0) et-orbi (1.1.6) tzinfo - excon (0.62.0) + excon (0.71.0) fabrication (2.21.0) - faker (2.8.0) + faker (2.8.1) i18n (>= 1.6, < 1.8) faraday (0.15.4) multipart-post (>= 1.2, < 3) @@ -326,7 +326,7 @@ GEM jmespath (1.4.0) json (2.2.0) json-canonicalization (0.1.0) - json-ld-preloaded (3.0.4) + json-ld-preloaded (3.0.6) json-ld (~> 3.0) multi_json (~> 1.12) rdf (~> 3.0) @@ -358,7 +358,7 @@ GEM activesupport (>= 4) railties (>= 4) request_store (~> 1.0) - loofah (2.3.1) + loofah (2.4.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) mail (2.7.1) @@ -382,7 +382,7 @@ GEM mini_portile2 (2.4.0) minitest (5.13.0) msgpack (1.3.1) - multi_json (1.13.1) + multi_json (1.14.1) multipart-post (2.1.1) necromancer (0.5.1) net-ldap (0.16.2) @@ -390,7 +390,7 @@ GEM net-ssh (>= 2.6.5, < 6.0.0) net-ssh (5.2.0) nio4r (2.5.2) - nokogiri (1.10.5) + nokogiri (1.10.7) mini_portile2 (~> 2.4.0) nokogumbo (2.0.1) nokogiri (~> 1.8, >= 1.8.4) @@ -426,7 +426,7 @@ GEM av (~> 0.9.0) paperclip (>= 2.5.2) parallel (1.19.1) - parallel_tests (2.29.2) + parallel_tests (2.30.0) parallel parser (2.6.5.0) ast (~> 2.4.0) @@ -460,7 +460,7 @@ GEM pundit (2.1.0) activesupport (>= 3.0.0) raabro (1.1.6) - rack (2.0.7) + rack (2.0.8) rack-attack (6.2.1) rack (>= 1.0, < 3) rack-cors (1.1.0) @@ -471,18 +471,18 @@ GEM rack rack-test (1.1.0) rack (>= 1.0, < 3) - rails (5.2.3) - actioncable (= 5.2.3) - actionmailer (= 5.2.3) - actionpack (= 5.2.3) - actionview (= 5.2.3) - activejob (= 5.2.3) - activemodel (= 5.2.3) - activerecord (= 5.2.3) - activestorage (= 5.2.3) - activesupport (= 5.2.3) + rails (5.2.4) + actioncable (= 5.2.4) + actionmailer (= 5.2.4) + actionpack (= 5.2.4) + actionview (= 5.2.4) + activejob (= 5.2.4) + activemodel (= 5.2.4) + activerecord (= 5.2.4) + activestorage (= 5.2.4) + activesupport (= 5.2.4) bundler (>= 1.3.0) - railties (= 5.2.3) + railties (= 5.2.4) sprockets-rails (>= 2.0.0) rails-controller-testing (1.0.4) actionpack (>= 5.0.1.x) @@ -498,15 +498,15 @@ GEM railties (>= 5.0, < 6) rails-settings-cached (0.6.6) rails (>= 4.2.0) - railties (5.2.3) - actionpack (= 5.2.3) - activesupport (= 5.2.3) + railties (5.2.4) + actionpack (= 5.2.4) + activesupport (= 5.2.4) method_source rake (>= 0.8.7) thor (>= 0.19.0, < 2.0) rainbow (3.0.0) rake (13.0.1) - rdf (3.0.12) + rdf (3.0.13) hamster (~> 3.0) link_header (~> 0.0, >= 0.0.8) rdf-normalize (0.3.3) @@ -561,7 +561,7 @@ GEM rspec-core (~> 3.0, >= 3.0.0) sidekiq (>= 2.4.0) rspec-support (3.9.0) - rubocop (0.76.0) + rubocop (0.77.0) jaro_winkler (~> 1.5.1) parallel (~> 1.10) parser (>= 2.6) @@ -618,7 +618,7 @@ GEM sshkit (1.20.0) net-scp (>= 1.1.2) net-ssh (>= 2.8.0) - stackprof (0.2.13) + stackprof (0.2.14) statsd-ruby (1.4.0) stoplight (2.2.0) streamio-ffmpeg (3.0.2) @@ -663,16 +663,16 @@ GEM addressable (>= 2.3.6) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) - webpacker (4.2.0) + webpacker (4.2.2) activesupport (>= 4.2) rack-proxy (>= 0.6.1) railties (>= 4.2) webpush (0.3.8) hkdf (~> 0.2) jwt (~> 2.0) - websocket-driver (0.7.0) + websocket-driver (0.7.1) websocket-extensions (>= 0.1.0) - websocket-extensions (0.1.3) + websocket-extensions (0.1.4) wisper (2.0.1) xpath (3.2.0) nokogiri (~> 1.8) @@ -757,7 +757,7 @@ DEPENDENCIES paperclip (~> 6.0) paperclip-av-transcoder (~> 0.6) parallel (~> 1.19) - parallel_tests (~> 2.29) + parallel_tests (~> 2.30) parslet pg (~> 1.1) pghero (~> 2.4) @@ -771,7 +771,7 @@ DEPENDENCIES pundit (~> 2.1) rack-attack (~> 6.2) rack-cors (~> 1.1) - rails (~> 5.2.3) + rails (~> 5.2.4) rails-controller-testing (~> 1.0) rails-i18n (~> 5.1) rails-settings-cached (~> 0.6) @@ -783,7 +783,7 @@ DEPENDENCIES rqrcode (~> 0.10) rspec-rails (~> 3.9) rspec-sidekiq (~> 3.0) - rubocop (~> 0.76) + rubocop (~> 0.77) rubocop-rails (~> 2.4) ruby-progressbar (~> 1.10) sanitize (~> 5.1) @@ -794,6 +794,7 @@ DEPENDENCIES simple-navigation (~> 4.1) simple_form (~> 5.0) simplecov (~> 0.17) + sprockets (~> 3.7) sprockets-rails (~> 3.2) stackprof stoplight (~> 2.2.0) diff --git a/app/javascript/core/admin.js b/app/javascript/core/admin.js index ffdabe674..e4d683dd0 100644 --- a/app/javascript/core/admin.js +++ b/app/javascript/core/admin.js @@ -47,7 +47,25 @@ const onDomainBlockSeverityChange = (target) => { delegate(document, '#domain_block_severity', 'change', ({ target }) => onDomainBlockSeverityChange(target)); +const onEnableBootstrapTimelineAccountsChange = (target) => { + const bootstrapTimelineAccountsField = document.querySelector('#form_admin_settings_bootstrap_timeline_accounts'); + + if (bootstrapTimelineAccountsField) { + bootstrapTimelineAccountsField.disabled = !target.checked; + if (target.checked) { + bootstrapTimelineAccountsField.parentElement.classList.remove('disabled'); + } else { + bootstrapTimelineAccountsField.parentElement.classList.add('disabled'); + } + } +}; + +delegate(document, '#form_admin_settings_enable_bootstrap_timeline_accounts', 'change', ({ target }) => onEnableBootstrapTimelineAccountsChange(target)); + ready(() => { - const input = document.getElementById('domain_block_severity'); - if (input) onDomainBlockSeverityChange(input); + const domainBlockSeverityInput = document.getElementById('domain_block_severity'); + if (domainBlockSeverityInput) onDomainBlockSeverityChange(domainBlockSeverityInput); + + const enableBootstrapTimelineAccounts = document.getElementById('form_admin_settings_enable_bootstrap_timeline_accounts'); + if (enableBootstrapTimelineAccounts) onEnableBootstrapTimelineAccountsChange(enableBootstrapTimelineAccounts); }); diff --git a/app/javascript/flavours/glitch/styles/admin.scss b/app/javascript/flavours/glitch/styles/admin.scss index 1d25d0129..d2f477d19 100644 --- a/app/javascript/flavours/glitch/styles/admin.scss +++ b/app/javascript/flavours/glitch/styles/admin.scss @@ -181,18 +181,39 @@ $content-width: 840px; padding-top: 30px; } - h2 { - color: $secondary-text-color; - font-size: 24px; - line-height: 28px; - font-weight: 400; + &-heading { + display: flex; + padding-bottom: 40px; border-bottom: 1px solid lighten($ui-base-color, 8%); margin-bottom: 40px; + flex-wrap: wrap; + align-items: center; + + justify-content: space-between; + + &-actions { + display: inline-flex; + + & > * { + margin-left: 5px; + } + } + @media screen and (max-width: $no-columns-breakpoint) { border-bottom: 0; padding-bottom: 0; + } + } + + h2 { + color: $secondary-text-color; + font-size: 24px; + line-height: 28px; + font-weight: 400; + + @media screen and (max-width: $no-columns-breakpoint) { font-weight: 700; } } diff --git a/app/javascript/flavours/glitch/styles/components/index.scss b/app/javascript/flavours/glitch/styles/components/index.scss index febc95513..8e576fd86 100644 --- a/app/javascript/flavours/glitch/styles/components/index.scss +++ b/app/javascript/flavours/glitch/styles/components/index.scss @@ -726,7 +726,6 @@ overflow-x: hidden; flex: 1 1 auto; -webkit-overflow-scrolling: touch; - will-change: transform; // improves perf in mobile Chrome &.optionally-scrollable { overflow-y: auto; diff --git a/app/javascript/mastodon/extra_polyfills.js b/app/javascript/mastodon/extra_polyfills.js index 3acc55abd..13c4f6da9 100644 --- a/app/javascript/mastodon/extra_polyfills.js +++ b/app/javascript/mastodon/extra_polyfills.js @@ -1,5 +1,5 @@ import 'intersection-observer'; import 'requestidlecallback'; -import objectFitImages from 'object-fit-images'; +import objectFitImages from 'object-fit-images'; objectFitImages(); diff --git a/app/javascript/mastodon/features/compose/components/poll_form.js b/app/javascript/mastodon/features/compose/components/poll_form.js index ba245f4d3..cac3776bb 100644 --- a/app/javascript/mastodon/features/compose/components/poll_form.js +++ b/app/javascript/mastodon/features/compose/components/poll_form.js @@ -82,8 +82,8 @@ class Option extends React.PureComponent { onKeyPress={this.handleCheckboxKeypress} role='button' tabIndex='0' - title={intl.formatMessage(isPollMultiple ? messages.switchToMultiple : messages.switchToSingle)} - aria-label={intl.formatMessage(isPollMultiple ? messages.switchToMultiple : messages.switchToSingle)} + title={intl.formatMessage(isPollMultiple ? messages.switchToSingle : messages.switchToMultiple)} + aria-label={intl.formatMessage(isPollMultiple ? messages.switchToSingle : messages.switchToMultiple)} /> <AutosuggestInput diff --git a/app/javascript/styles/mastodon/admin.scss b/app/javascript/styles/mastodon/admin.scss index de95d82bf..cba552433 100644 --- a/app/javascript/styles/mastodon/admin.scss +++ b/app/javascript/styles/mastodon/admin.scss @@ -181,18 +181,39 @@ $content-width: 840px; padding-top: 30px; } - h2 { - color: $secondary-text-color; - font-size: 24px; - line-height: 28px; - font-weight: 400; + &-heading { + display: flex; + padding-bottom: 40px; border-bottom: 1px solid lighten($ui-base-color, 8%); margin-bottom: 40px; + flex-wrap: wrap; + align-items: center; + + justify-content: space-between; + + &-actions { + display: inline-flex; + + & > * { + margin-left: 5px; + } + } + @media screen and (max-width: $no-columns-breakpoint) { border-bottom: 0; padding-bottom: 0; + } + } + + h2 { + color: $secondary-text-color; + font-size: 24px; + line-height: 28px; + font-weight: 400; + + @media screen and (max-width: $no-columns-breakpoint) { font-weight: 700; } } diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index 0ec25e3f8..01a633c5f 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -2512,7 +2512,6 @@ a.account__display-name { overflow-x: hidden; flex: 1 1 auto; -webkit-overflow-scrolling: touch; - will-change: transform; // improves perf in mobile Chrome &.optionally-scrollable { overflow-y: auto; diff --git a/app/lib/activitypub/activity.rb b/app/lib/activitypub/activity.rb index 0ca6b92a4..49b1dc9cd 100644 --- a/app/lib/activitypub/activity.rb +++ b/app/lib/activitypub/activity.rb @@ -5,7 +5,7 @@ class ActivityPub::Activity include Redisable SUPPORTED_TYPES = %w(Note Question).freeze - CONVERTED_TYPES = %w(Image Audio Video Article Page).freeze + CONVERTED_TYPES = %w(Image Audio Video Article Page Event).freeze def initialize(json, account, **options) @json = json diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb index 8a12a2b08..c55cfe08e 100644 --- a/app/lib/activitypub/activity/create.rb +++ b/app/lib/activitypub/activity/create.rb @@ -157,7 +157,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity return if tag['name'].blank? Tag.find_or_create_by_names(tag['name']) do |hashtag| - @tags << hashtag unless @tags.include?(hashtag) + @tags << hashtag unless @tags.include?(hashtag) || !hashtag.valid? end rescue ActiveRecord::RecordInvalid nil @@ -167,7 +167,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity return if tag['href'].blank? account = account_from_uri(tag['href']) - account = ::FetchRemoteAccountService.new.call(tag['href']) if account.nil? + account = ActivityPub::FetchRemoteAccountService.new.call(tag['href']) if account.nil? return if account.nil? diff --git a/app/models/backup.rb b/app/models/backup.rb index c2651313b..8eeb1748a 100644 --- a/app/models/backup.rb +++ b/app/models/backup.rb @@ -7,7 +7,7 @@ # user_id :bigint(8) # dump_file_name :string # dump_content_type :string -# dump_file_size :integer +# dump_file_size :bigint # dump_updated_at :datetime # processed :boolean default(FALSE), not null # created_at :datetime not null diff --git a/app/models/form/admin_settings.rb b/app/models/form/admin_settings.rb index 3398af169..84a656864 100644 --- a/app/models/form/admin_settings.rb +++ b/app/models/form/admin_settings.rb @@ -16,6 +16,7 @@ class Form::AdminSettings open_deletion timeline_preview show_staff_badge + enable_bootstrap_timeline_accounts bootstrap_timeline_accounts flavour skin @@ -46,6 +47,7 @@ class Form::AdminSettings open_deletion timeline_preview show_staff_badge + enable_bootstrap_timeline_accounts activity_api_enabled peers_api_enabled show_known_fediverse_at_about_page diff --git a/app/models/form/custom_emoji_batch.rb b/app/models/form/custom_emoji_batch.rb index 076e8c9e3..6b7ea5355 100644 --- a/app/models/form/custom_emoji_batch.rb +++ b/app/models/form/custom_emoji_batch.rb @@ -40,7 +40,7 @@ class Form::CustomEmojiBatch if category_id.present? CustomEmojiCategory.find(category_id) elsif category_name.present? - CustomEmojiCategory.create!(name: category_name) + CustomEmojiCategory.find_or_create_by!(name: category_name) end end diff --git a/app/models/tag.rb b/app/models/tag.rb index d3a7e1e6d..bce76fc16 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -117,7 +117,7 @@ class Tag < ApplicationRecord class << self def find_or_create_by_names(name_or_names) Array(name_or_names).map(&method(:normalize)).uniq { |str| str.mb_chars.downcase.to_s }.map do |normalized_name| - tag = matching_name(normalized_name).first || create!(name: normalized_name) + tag = matching_name(normalized_name).first || create(name: normalized_name) yield tag if block_given? diff --git a/app/services/backup_service.rb b/app/services/backup_service.rb index cc9fb1f4e..0b57b6d0c 100644 --- a/app/services/backup_service.rb +++ b/app/services/backup_service.rb @@ -3,6 +3,8 @@ require 'rubygems/package' class BackupService < BaseService + include Payloadable + attr_reader :account, :backup, :collection def call(backup) @@ -20,7 +22,7 @@ class BackupService < BaseService account.statuses.with_includes.reorder(nil).find_in_batches do |statuses| statuses.each do |status| - item = serialize(status, ActivityPub::ActivitySerializer) + item = serialize_payload(status, ActivityPub::ActivitySerializer, signer: @account) item.delete(:'@context') unless item[:type] == 'Announce' || item[:object][:attachment].blank? diff --git a/app/services/bootstrap_timeline_service.rb b/app/services/bootstrap_timeline_service.rb index c489601c1..8412aa7e7 100644 --- a/app/services/bootstrap_timeline_service.rb +++ b/app/services/bootstrap_timeline_service.rb @@ -5,7 +5,7 @@ class BootstrapTimelineService < BaseService @source_account = source_account autofollow_inviter! - autofollow_bootstrap_timeline_accounts! + autofollow_bootstrap_timeline_accounts! if Setting.enable_bootstrap_timeline_accounts end private diff --git a/app/services/fetch_link_card_service.rb b/app/services/fetch_link_card_service.rb index 5d4a7c303..91141c1f5 100644 --- a/app/services/fetch_link_card_service.rb +++ b/app/services/fetch_link_card_service.rb @@ -45,7 +45,7 @@ class FetchLinkCardService < BaseService def html return @html if defined?(@html) - Request.new(:get, @url).perform do |res| + Request.new(:get, @url).add_headers('Accept' => 'text/html').perform do |res| if res.code == 200 && res.mime_type == 'text/html' @html = res.body_with_limit @html_charset = res.charset diff --git a/app/services/fetch_oembed_service.rb b/app/services/fetch_oembed_service.rb index 76d971bc5..67e33875c 100644 --- a/app/services/fetch_oembed_service.rb +++ b/app/services/fetch_oembed_service.rb @@ -93,7 +93,7 @@ class FetchOEmbedService def html return @html if defined?(@html) - @html = @options[:html] || Request.new(:get, @url).perform do |res| + @html = @options[:html] || Request.new(:get, @url).add_headers('Accept' => 'text/html').perform do |res| res.code != 200 || res.mime_type != 'text/html' ? nil : res.body_with_limit end end diff --git a/app/services/fetch_remote_account_service.rb b/app/services/fetch_remote_account_service.rb deleted file mode 100644 index 3cd06e30f..000000000 --- a/app/services/fetch_remote_account_service.rb +++ /dev/null @@ -1,17 +0,0 @@ -# frozen_string_literal: true - -class FetchRemoteAccountService < BaseService - def call(url, prefetched_body = nil, protocol = :ostatus) - if prefetched_body.nil? - resource_url, resource_options, protocol = FetchResourceService.new.call(url) - else - resource_url = url - resource_options = { prefetched_body: prefetched_body } - end - - case protocol - when :activitypub - ActivityPub::FetchRemoteAccountService.new.call(resource_url, **resource_options) - end - end -end diff --git a/app/services/fetch_remote_status_service.rb b/app/services/fetch_remote_status_service.rb index 208dc7809..eafde4d4a 100644 --- a/app/services/fetch_remote_status_service.rb +++ b/app/services/fetch_remote_status_service.rb @@ -1,17 +1,14 @@ # frozen_string_literal: true class FetchRemoteStatusService < BaseService - def call(url, prefetched_body = nil, protocol = :ostatus) + def call(url, prefetched_body = nil) if prefetched_body.nil? - resource_url, resource_options, protocol = FetchResourceService.new.call(url) + resource_url, resource_options = FetchResourceService.new.call(url) else resource_url = url resource_options = { prefetched_body: prefetched_body } end - case protocol - when :activitypub - ActivityPub::FetchRemoteStatusService.new.call(resource_url, **resource_options) - end + ActivityPub::FetchRemoteStatusService.new.call(resource_url, **resource_options) unless resource_url.nil? end end diff --git a/app/services/fetch_resource_service.rb b/app/services/fetch_resource_service.rb index 3676d899d..34382d279 100644 --- a/app/services/fetch_resource_service.rb +++ b/app/services/fetch_resource_service.rb @@ -33,7 +33,7 @@ class FetchResourceService < BaseService body = response.body_with_limit json = body_to_json(body) - [json['id'], { prefetched_body: body, id: true }, :activitypub] if supported_context?(json) && (equals_or_includes_any?(json['type'], ActivityPub::FetchRemoteAccountService::SUPPORTED_TYPES) || expected_type?(json)) + [json['id'], { prefetched_body: body, id: true }] if supported_context?(json) && (equals_or_includes_any?(json['type'], ActivityPub::FetchRemoteAccountService::SUPPORTED_TYPES) || expected_type?(json)) elsif !terminal link_header = response['Link'] && parse_link_header(response) diff --git a/app/services/resolve_url_service.rb b/app/services/resolve_url_service.rb index 4e971a4b8..79b1bad0c 100644 --- a/app/services/resolve_url_service.rb +++ b/app/services/resolve_url_service.rb @@ -19,9 +19,9 @@ class ResolveURLService < BaseService def process_url if equals_or_includes_any?(type, ActivityPub::FetchRemoteAccountService::SUPPORTED_TYPES) - FetchRemoteAccountService.new.call(resource_url, body, protocol) + ActivityPub::FetchRemoteAccountService.new.call(resource_url, prefetched_body: body) elsif equals_or_includes_any?(type, ActivityPub::Activity::Create::SUPPORTED_TYPES + ActivityPub::Activity::Create::CONVERTED_TYPES) - status = FetchRemoteStatusService.new.call(resource_url, body, protocol) + status = FetchRemoteStatusService.new.call(resource_url, body) authorize_with @on_behalf_of, status, :show? unless status.nil? status elsif fetched_resource.nil? && @on_behalf_of.present? @@ -45,12 +45,8 @@ class ResolveURLService < BaseService fetched_resource.second[:prefetched_body] end - def protocol - fetched_resource.third - end - def type - return json_data['type'] if protocol == :activitypub + json_data['type'] end def json_data diff --git a/app/views/admin/reports/index.html.haml b/app/views/admin/reports/index.html.haml index b09472270..30c7549b0 100644 --- a/app/views/admin/reports/index.html.haml +++ b/app/views/admin/reports/index.html.haml @@ -28,7 +28,7 @@ .report-card__profile = account_link_to target_account, '', size: 36, path: admin_account_path(target_account.id) .report-card__profile__stats - = link_to pluralize(target_account.targeted_moderation_notes.count, t('admin.reports.account.note')), admin_account_path(target_account.id) + = link_to t('admin.reports.account.notes', count: target_account.targeted_moderation_notes.count), admin_account_path(target_account.id) %br/ - if target_account.suspended? %span.red= t('admin.accounts.suspended') diff --git a/app/views/admin/reports/show.html.haml b/app/views/admin/reports/show.html.haml index 0b84e1788..4321bb199 100644 --- a/app/views/admin/reports/show.html.haml +++ b/app/views/admin/reports/show.html.haml @@ -1,37 +1,28 @@ - content_for :page_title do = t('admin.reports.report', id: @report.id) -%div{ style: 'overflow: hidden; margin-bottom: 20px' } +- content_for :page_heading_actions do - if @report.unresolved? - %div{ style: 'float: right' } - - if @report.target_account.local? - = link_to t('admin.accounts.warn'), new_admin_account_action_path(@report.target_account_id, type: 'none', report_id: @report.id), class: 'button' - = link_to t('admin.accounts.disable'), new_admin_account_action_path(@report.target_account_id, type: 'disable', report_id: @report.id), class: 'button button--destructive' - = link_to t('admin.accounts.silence'), new_admin_account_action_path(@report.target_account_id, type: 'silence', report_id: @report.id), class: 'button button--destructive' - = link_to t('admin.accounts.perform_full_suspension'), new_admin_account_action_path(@report.target_account_id, type: 'suspend', report_id: @report.id), class: 'button button--destructive' - %div{ style: 'float: left' } - = link_to t('admin.reports.mark_as_resolved'), resolve_admin_report_path(@report), method: :post, class: 'button' + = link_to t('admin.reports.mark_as_resolved'), resolve_admin_report_path(@report), method: :post, class: 'button' - else = link_to t('admin.reports.mark_as_unresolved'), reopen_admin_report_path(@report), method: :post, class: 'button' -%hr.spacer - .table-wrapper %table.table.inline-table %tbody %tr %th= t('admin.reports.reported_account') %td= admin_account_link_to @report.target_account - %td= table_link_to 'flag', pluralize(@report.target_account.targeted_reports.count, t('admin.reports.account.report')), admin_reports_path(target_account_id: @report.target_account.id) - %td= table_link_to 'file', pluralize(@report.target_account.targeted_moderation_notes.count, t('admin.reports.account.note')), admin_reports_path(target_account_id: @report.target_account.id) + %td= table_link_to 'flag', t('admin.reports.account.reports', count: @report.target_account.targeted_reports.count), admin_reports_path(target_account_id: @report.target_account.id) + %td= table_link_to 'file', t('admin.reports.account.notes', count: @report.target_account.targeted_moderation_notes.count), admin_reports_path(target_account_id: @report.target_account.id) %tr %th= t('admin.reports.reported_by') - if @report.account.instance_actor? %td{ colspan: 3 }= site_hostname - elsif @report.account.local? %td= admin_account_link_to @report.account - %td= table_link_to 'flag', pluralize(@report.account.targeted_reports.count, t('admin.reports.account.report')), admin_reports_path(target_account_id: @report.account.id) - %td= table_link_to 'file', pluralize(@report.account.targeted_moderation_notes.count, t('admin.reports.account.note')), admin_reports_path(target_account_id: @report.account.id) + %td= table_link_to 'flag', t('admin.reports.account.reports', count: @report.account.targeted_reports.count), admin_reports_path(target_account_id: @report.account.id) + %td= table_link_to 'file', t('admin.reports.account.notes', count: @report.account.targeted_moderation_notes.count), admin_reports_path(target_account_id: @report.account.id) - else %td{ colspan: 3 }= @report.account.domain %tr @@ -74,6 +65,17 @@ %hr.spacer +%div{ style: 'overflow: hidden; margin-bottom: 20px; clear: both' } + - if @report.unresolved? + %div{ style: 'float: right' } + - if @report.target_account.local? + = link_to t('admin.accounts.warn'), new_admin_account_action_path(@report.target_account_id, type: 'none', report_id: @report.id), class: 'button' + = link_to t('admin.accounts.disable'), new_admin_account_action_path(@report.target_account_id, type: 'disable', report_id: @report.id), class: 'button button--destructive' + = link_to t('admin.accounts.silence'), new_admin_account_action_path(@report.target_account_id, type: 'silence', report_id: @report.id), class: 'button button--destructive' + = link_to t('admin.accounts.perform_full_suspension'), new_admin_account_action_path(@report.target_account_id, type: 'suspend', report_id: @report.id), class: 'button button--destructive' + +%hr.spacer + .speech-bubble .speech-bubble__bubble= simple_format(@report.comment.presence || t('admin.reports.comment.none')) .speech-bubble__owner diff --git a/app/views/admin/settings/edit.html.haml b/app/views/admin/settings/edit.html.haml index ba66aeff8..63b352361 100644 --- a/app/views/admin/settings/edit.html.haml +++ b/app/views/admin/settings/edit.html.haml @@ -38,7 +38,9 @@ %hr.spacer/ .fields-group - = f.input :bootstrap_timeline_accounts, wrapper: :with_block_label, label: t('admin.settings.bootstrap_timeline_accounts.title'), hint: t('admin.settings.bootstrap_timeline_accounts.desc_html') + = f.input :enable_bootstrap_timeline_accounts, as: :boolean, wrapper: :with_label, label: t('admin.settings.enable_bootstrap_timeline_accounts.title') + .fields-group + = f.input :bootstrap_timeline_accounts, wrapper: :with_block_label, label: t('admin.settings.bootstrap_timeline_accounts.title'), hint: t('admin.settings.bootstrap_timeline_accounts.desc_html'), disabled: !Setting.enable_bootstrap_timeline_accounts %hr.spacer/ diff --git a/app/views/layouts/admin.html.haml b/app/views/layouts/admin.html.haml index fc690409c..9fceb54eb 100644 --- a/app/views/layouts/admin.html.haml +++ b/app/views/layouts/admin.html.haml @@ -18,7 +18,12 @@ .content-wrapper .content - %h2= yield :page_title + .content-heading + %h2= yield :page_title + + - if :page_heading_actions + .content-heading-actions + = yield :page_heading_actions = render 'application/flashes' diff --git a/app/views/settings/exports/show.html.haml b/app/views/settings/exports/show.html.haml index 76ff76bd9..0bb80e937 100644 --- a/app/views/settings/exports/show.html.haml +++ b/app/views/settings/exports/show.html.haml @@ -9,11 +9,11 @@ %td= number_to_human_size @export.total_storage %td %tr - %th= t('accounts.posts', count: @export.total_statuses) + %th= t('accounts.posts_tab_heading') %td= number_with_delimiter @export.total_statuses %td %tr - %th= t('exports.follows') + %th= t('admin.accounts.follows') %td= number_with_delimiter @export.total_follows %td= table_link_to 'download', t('exports.csv'), settings_exports_follows_path(format: :csv) %tr @@ -21,7 +21,7 @@ %td= number_with_delimiter @export.total_lists %td= table_link_to 'download', t('exports.csv'), settings_exports_lists_path(format: :csv) %tr - %th= t('accounts.followers', count: @export.total_followers) + %th= t('admin.accounts.followers') %td= number_with_delimiter @export.total_followers %td %tr diff --git a/config/locales/ar.yml b/config/locales/ar.yml index 13f509836..835e96769 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -124,9 +124,7 @@ ar: email_status: حالة البريد الإلكتروني enable: تفعيل enabled: مفعَّل - feed_url: عنوان رابط التغذية followers: المتابِعون - followers_url: عنوان رابط المتابِعين follows: يتابع header: الرأسية inbox_url: رابط صندوق الوارد @@ -154,10 +152,8 @@ ar: no_account_selected: لم يطرأ أي تغيير على أي حساب بما أنه لم يتم اختيار أي واحد no_limits_imposed: مِن دون حدود مشروطة not_subscribed: غير مشترك - outbox_url: رابط صندوق الصادر pending: في انتظار المراجعة perform_full_suspension: تعليق الحساب - profile_url: رابط الصفحة التعريفية promote: ترقية protocol: البروتوكول public: عمومي @@ -180,7 +176,6 @@ ar: moderator: مشرف staff: الفريق user: مستخدِم - salmon_url: عنوان رابط سالمون Salmon search: البحث shared_inbox_url: رابط الصندوق المُشترَك للبريد الوارد show: @@ -399,9 +394,6 @@ ar: created_msg: تم إنشاء ملاحظة الشكوى بنجاح! destroyed_msg: تم حذف ملاحظة الشكوى بنجاح! reports: - account: - note: ملحوظة - report: تقرير action_taken_by: تم اتخاذ الإجراء مِن طرف are_you_sure: هل أنت متأكد ؟ assign_to_self: عين لي diff --git a/config/locales/bn.yml b/config/locales/bn.yml index 24f0a654a..7dd49ff96 100644 --- a/config/locales/bn.yml +++ b/config/locales/bn.yml @@ -118,9 +118,7 @@ bn: email_status: ইমেইলের অবস্থা enable: চালু করুন enabled: চালু করুন - feed_url: সম্মিলিত(feed) লিংক followers: অনুসরকারীরা - followers_url: অনুসরণকারীদের লিংক follows: অনুসরণ করে header: শিরোলেখা inbox_url: চিঠি পাওয়ার বক্স লিংক @@ -148,10 +146,8 @@ bn: no_account_selected: কোনও অ্যাকাউন্টই নির্বাচন করা হয়নি বলে কোনও অ্যাকাউন্ট পরিবর্তন করা হয়নি no_limits_imposed: কোন সীমা আরোপ করা নেই not_subscribed: সাবস্ক্রাইব নেই - outbox_url: চিঠি পাঠানোর বাক্স লিংক pending: পয্র্যবেক্ষণের অপেক্ষায় আছে perform_full_suspension: বাতিল করা - profile_url: প্রোফাইল URL promote: প্রচার protocol: প্রোটোকল public: সর্বজনীন @@ -174,7 +170,6 @@ bn: moderator: নিয়ামক staff: কর্মী user: ব্যবহারকারী - salmon_url: সালমন URL search: অনুসন্ধান search_same_ip: একই IP সহ অন্যান্য ব্যবহারকারীরা shared_inbox_url: ভাগ করা ইনবক্স URL diff --git a/config/locales/ca.yml b/config/locales/ca.yml index b8436efd2..c3cfe3083 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -118,9 +118,7 @@ ca: email_status: Estat del correu electrònic enable: Habilita enabled: Habilitat - feed_url: URL del canal followers: Seguidors - followers_url: URL dels seguidors follows: Segueix header: Capçalera inbox_url: URL de la safata d'entrada @@ -148,10 +146,8 @@ ca: no_account_selected: No s'han canviat els comptes perque no s'han seleccionat no_limits_imposed: Sense límits imposats not_subscribed: No subscrit - outbox_url: URL de la bústia de sortida pending: Revisió pendent perform_full_suspension: Suspèn - profile_url: URL del perfil promote: Promociona protocol: Protocol public: Públic @@ -174,7 +170,6 @@ ca: moderator: Moderador staff: Personal user: Usuari - salmon_url: URL Salmon search: Cerca search_same_ip: Altres usuaris amb la mateixa IP shared_inbox_url: URL de la safata d'entrada compartida @@ -398,9 +393,6 @@ ca: created_msg: La nota del informe s'ha creat correctament! destroyed_msg: La nota del informe s'ha esborrat correctament! reports: - account: - note: nota - report: informe action_taken_by: Mesures adoptades per are_you_sure: N'estàs segur? assign_to_self: Assignar-me diff --git a/config/locales/co.yml b/config/locales/co.yml index f14f4e9ea..9653363ca 100644 --- a/config/locales/co.yml +++ b/config/locales/co.yml @@ -118,9 +118,7 @@ co: email_status: Statutu di l’e-mail enable: Attivà enabled: Attivatu - feed_url: URL di u flussu followers: Abbunati - followers_url: URL di l’abbunati follows: Abbunamenti header: Intistatura inbox_url: URL di l’inbox @@ -148,10 +146,8 @@ co: no_account_selected: Nisun contu hè statu cambiatu postu ch'ùn c'eranu micca selezziunati no_limits_imposed: Nisuna limita imposta not_subscribed: Micca abbunatu - outbox_url: URL di l’outbox pending: In attesa di rivista perform_full_suspension: Suspende - profile_url: URL di u prufile promote: Prumove protocol: Prutucollu public: Pubblicu @@ -174,7 +170,6 @@ co: moderator: Muderatore staff: Squadra user: Utilizatore - salmon_url: URL di Salmon search: Cercà search_same_ip: Altri utilizatori cù listessa IP shared_inbox_url: URL di l’inbox spartuta @@ -398,9 +393,6 @@ co: created_msg: Nota di signalamentu creata! destroyed_msg: Nota di signalamentu sguassata! reports: - account: - note: nota - report: palisà action_taken_by: Intervenzione di are_you_sure: Site sicuru·a? assign_to_self: Assignallu à mè diff --git a/config/locales/cs.yml b/config/locales/cs.yml index 478169d70..81ae22680 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -126,9 +126,7 @@ cs: email_status: Stav e-mailu enable: Povolit enabled: Povoleno - feed_url: URL proudu followers: Sledující - followers_url: URL sledujících follows: Sledovaní header: Záhlaví inbox_url: URL příchozí schránky @@ -156,10 +154,8 @@ cs: no_account_selected: Nebyl změněn žádný účet, neboť žádný nebyl zvolen no_limits_imposed: Nejsou nastavena žádná omezení not_subscribed: Neodebírá - outbox_url: URL odchozí schránky pending: Čeká na posouzení perform_full_suspension: Pozastavit - profile_url: URL profilu promote: Povýšit protocol: Protokol public: Veřejný @@ -182,7 +178,6 @@ cs: moderator: Moderátor staff: Člen personálu user: Uživatel - salmon_url: URL Salmon search: Hledat search_same_ip: Další uživatelé se stejnou IP adresou shared_inbox_url: URL sdílené příchozí schránky @@ -410,9 +405,6 @@ cs: created_msg: Poznámka o nahlášení úspěšně vytvořena! destroyed_msg: Poznámka o nahlášení úspěšně smazána! reports: - account: - note: poznámka - report: nahlášení action_taken_by: Akci vykonal/a are_you_sure: Jste si jistý/á? assign_to_self: Přidělit ke mně diff --git a/config/locales/cy.yml b/config/locales/cy.yml index aa0974a1a..fde22cc33 100644 --- a/config/locales/cy.yml +++ b/config/locales/cy.yml @@ -133,9 +133,7 @@ cy: email_status: Statws E-bost enable: Galluogi enabled: Wedi ei alluogi - feed_url: Ffrwd URL followers: Dilynwyr - followers_url: URL Dilynwyr follows: Yn dilyn header: Pennawd inbox_url: URL Mewnflwch @@ -163,10 +161,8 @@ cy: no_account_selected: Ni newidwyd dim cyfrif achos ni ddewiswyd dim un no_limits_imposed: Dim terfynau wedi'i gosod not_subscribed: Heb danysgrifio - outbox_url: Allflwch URL pending: Yn aros am adolygiad perform_full_suspension: Atal - profile_url: URL proffil promote: Hyrwyddo protocol: Protocol public: Cyhoeddus @@ -189,7 +185,6 @@ cy: moderator: Aroglygydd staff: Staff user: Defnyddiwr - salmon_url: URL Eog search: Chwilio search_same_ip: Defnyddwyr eraill gyda'r un IP shared_inbox_url: URL Mewnflwch wedi ei rannu @@ -419,9 +414,6 @@ cy: created_msg: Llwyddwyd i greu nodyn adroddiad! destroyed_msg: Llwyddwyd i ddileu nodyn adroddiad! reports: - account: - note: nodyn - report: adroddiad action_taken_by: Gwnaethpwyd hyn gan are_you_sure: Ydych chi'n sicr? assign_to_self: Aseinio i mi diff --git a/config/locales/da.yml b/config/locales/da.yml index 982c712a8..57f4ed879 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -96,9 +96,7 @@ da: edit: Rediger enable: Aktiver enabled: Aktiveret - feed_url: Link til feed followers: Følgere - followers_url: Link til følgere follows: Følger inbox_url: Link til indbakke invited_by: Inviteret af @@ -123,9 +121,7 @@ da: most_recent_activity: Seneste aktivitet most_recent_ip: Senest IP not_subscribed: Ikke abonneret - outbox_url: Link til udgående perform_full_suspension: Udeluk - profile_url: Link til profil promote: Forfrem protocol: Protokol public: Offentligt @@ -147,7 +143,6 @@ da: moderator: Mod staff: Personale user: Bruger - salmon_url: Salmon-URL search: Søg search_same_ip: Andre brugere med den samme IP-adresse shared_inbox_url: Link til delt indbakke @@ -333,9 +328,6 @@ da: created_msg: Anmeldelse note blev oprettet! destroyed_msg: Anmeldelse note blev slettet! reports: - account: - note: notat - report: anmeld action_taken_by: Handling udført af are_you_sure: Er du sikker? assign_to_self: Tildel til mig diff --git a/config/locales/de.yml b/config/locales/de.yml index 490ee947e..445205871 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -118,9 +118,7 @@ de: email_status: E-Mail-Status enable: Freischalten enabled: Freigegeben - feed_url: Feed-URL followers: Folgende - followers_url: URL des Folgenden follows: Folgt header: Titelbild inbox_url: Posteingangs-URL @@ -148,10 +146,8 @@ de: no_account_selected: Keine Konten wurden geändert, da keine ausgewählt wurden no_limits_imposed: Keine Beschränkungen not_subscribed: Nicht abonniert - outbox_url: Postausgangs-URL pending: In Warteschlange perform_full_suspension: Verbannen - profile_url: Profil-URL promote: Befördern protocol: Protokoll public: Öffentlich @@ -174,7 +170,6 @@ de: moderator: Moderator_in staff: Mitarbeiter user: Nutzer - salmon_url: Salmon-URL search: Suche search_same_ip: Andere Benutzer mit derselben IP shared_inbox_url: Geteilte Posteingang-URL @@ -396,9 +391,6 @@ de: created_msg: Meldungs-Kommentar erfolgreich erstellt! destroyed_msg: Meldungs-Kommentar erfolgreich gelöscht! reports: - account: - note: Notiz - report: Meldung action_taken_by: Maßnahme ergriffen durch are_you_sure: Bist du dir sicher? assign_to_self: Mir zuweisen diff --git a/config/locales/el.yml b/config/locales/el.yml index 9f4a8969d..585eefab4 100644 --- a/config/locales/el.yml +++ b/config/locales/el.yml @@ -118,9 +118,7 @@ el: email_status: Κατάσταση email enable: Ενεργοποίηση enabled: Ενεργοποιημένο - feed_url: URL ροής followers: Ακόλουθοι - followers_url: URL ακολούθων follows: Ακολουθεί header: Επικεφαλίδα inbox_url: URL εισερχομένων @@ -148,10 +146,8 @@ el: no_account_selected: Κανείς λογαριασμός δεν ενημερώθηκε αφού κανείς δεν ήταν επιλεγμένος no_limits_imposed: Χωρίς όρια not_subscribed: Άνευ συνδρομής - outbox_url: URL εξερχομένων pending: Εκκρεμεί έγκριση perform_full_suspension: Αναστολή - profile_url: URL προφίλ promote: Προβίβασε protocol: Πρωτόκολλο public: Δημόσιο @@ -174,7 +170,6 @@ el: moderator: Συντονιστής staff: Προσωπικό user: Χρήστης - salmon_url: URL Salmon search: Αναζήτηση search_same_ip: Υπόλοιποι χρήστες με την ίδια διεύθυνση IP shared_inbox_url: URL κοινόχρηστων εισερχομένων @@ -398,9 +393,6 @@ el: created_msg: Επιτυχής δημιουργία σημείωσης καταγγελίας! destroyed_msg: Επιτυχής διαγραφή σημείωσης καταγγελίας! reports: - account: - note: σημείωση - report: καταγγελία action_taken_by: Ενέργεια από τον/την are_you_sure: Σίγουρα; assign_to_self: Ανάθεση σε μένα diff --git a/config/locales/en.yml b/config/locales/en.yml index c505896e7..43c24fc4e 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -119,9 +119,7 @@ en: email_status: Email status enable: Enable enabled: Enabled - feed_url: Feed URL followers: Followers - followers_url: Followers URL follows: Follows header: Header inbox_url: Inbox URL @@ -149,10 +147,8 @@ en: no_account_selected: No accounts were changed as none were selected no_limits_imposed: No limits imposed not_subscribed: Not subscribed - outbox_url: Outbox URL pending: Pending review perform_full_suspension: Suspend - profile_url: Profile URL promote: Promote protocol: Protocol public: Public @@ -175,7 +171,6 @@ en: moderator: Moderator staff: Staff user: User - salmon_url: Salmon URL search: Search search_same_ip: Other users with the same IP shared_inbox_url: Shared inbox URL @@ -401,8 +396,12 @@ en: destroyed_msg: Report note successfully deleted! reports: account: - note: note - report: report + notes: + one: "%{count} note" + other: "%{count} notes" + reports: + one: "%{count} report" + other: "%{count} reports" action_taken_by: Action taken by are_you_sure: Are you sure? assign_to_self: Assign to me @@ -453,6 +452,8 @@ en: users: To logged-in local users domain_blocks_rationale: title: Show rationale + enable_bootstrap_timeline_accounts: + title: Enable default follows for new users enable_keybase: desc_html: Allow your users to prove their identity via keybase title: Enable keybase integration @@ -731,7 +732,6 @@ en: blocks: You block csv: CSV domain_blocks: Domain blocks - follows: You follow lists: Lists mutes: You mute storage: Media storage diff --git a/config/locales/en_GB.yml b/config/locales/en_GB.yml index 33ba16210..939dfe0c1 100644 --- a/config/locales/en_GB.yml +++ b/config/locales/en_GB.yml @@ -105,9 +105,7 @@ en_GB: email_status: Email status enable: Enable enabled: Enabled - feed_url: Feed URL followers: Followers - followers_url: Followers URL follows: Follows header: Header inbox_url: Inbox URL @@ -134,10 +132,8 @@ en_GB: most_recent_ip: Most recent IP no_limits_imposed: No limits imposed not_subscribed: Not subscribed - outbox_url: Outbox URL pending: Pending review perform_full_suspension: Suspend - profile_url: Profile URL promote: Promote protocol: Protocol public: Public @@ -159,7 +155,6 @@ en_GB: moderator: Moderator staff: Staff user: User - salmon_url: Salmon URL search: Search shared_inbox_url: Shared inbox URL show: @@ -348,9 +343,6 @@ en_GB: created_msg: Report note successfully created! destroyed_msg: Report note successfully deleted! reports: - account: - note: note - report: report action_taken_by: Action taken by are_you_sure: Are you sure? assign_to_self: Assign to me diff --git a/config/locales/eo.yml b/config/locales/eo.yml index 347873214..78ea19af5 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -111,9 +111,7 @@ eo: email_status: Retadreso Stato enable: Ebligi enabled: Ebligita - feed_url: URL de la fluo followers: Sekvantoj - followers_url: URL de la sekvantoj follows: Sekvatoj header: Kapa bildo inbox_url: Enira URL @@ -141,10 +139,8 @@ eo: no_account_selected: Neniu konto estis ŝanĝita ĉar neniu estis selektita no_limits_imposed: Neniu limito trudita not_subscribed: Ne abonita - outbox_url: Elira URL pending: Pritraktata recenzo perform_full_suspension: Haltigi - profile_url: Profila URL promote: Plirangigi protocol: Protokolo public: Publika @@ -167,7 +163,6 @@ eo: moderator: Kontrolanto staff: Teamo user: Uzanto - salmon_url: Salmon-URL search: Serĉi shared_inbox_url: URL de kunhavigita leterkesto show: @@ -380,9 +375,6 @@ eo: created_msg: Signala noto sukcese kreita! destroyed_msg: Signala noto sukcese forigita! reports: - account: - note: noto - report: signalo action_taken_by: Ago farita de are_you_sure: Ĉu vi certas? assign_to_self: Asigni al mi diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index 0af0c04bd..c52615139 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -118,9 +118,7 @@ es-AR: email_status: Estado del correo enable: Habilitar enabled: Habilitada - feed_url: Dirección de la fuente web followers: Seguidores - followers_url: Dirección web de los seguidores follows: Seguidores header: Cabecera inbox_url: Dirección web de la bandeja de entrada @@ -148,10 +146,8 @@ es-AR: no_account_selected: No se cambió ninguna cuenta ya que ninguna fue seleccionada no_limits_imposed: Sin límites impuestos not_subscribed: No suscripto - outbox_url: Dirección web de la bandeja de salida pending: Revisión pendiente perform_full_suspension: Suspender - profile_url: Dirección web del perfil promote: Promocionar protocol: Protocolo public: Pública @@ -395,9 +391,6 @@ es-AR: created_msg: "¡La nota de denuncia fue creada exitosamente!" destroyed_msg: "¡La nota de denuncia fue eliminada exitosamente!" reports: - account: - note: nota - report: denuncia action_taken_by: Acción tomada por are_you_sure: "¿Estás seguro?" assign_to_self: Asignármela a mí diff --git a/config/locales/es.yml b/config/locales/es.yml index 920a0ccdf..1826331b3 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -118,9 +118,7 @@ es: email_status: E-mail Status enable: Habilitar enabled: Habilitada - feed_url: URL de notificaciones followers: Seguidores - followers_url: URL de los seguidores follows: Sigue header: Cabecera inbox_url: URL de la bandeja de entrada @@ -148,10 +146,8 @@ es: no_account_selected: Ninguna cuenta se cambió como ninguna fue seleccionada no_limits_imposed: Sin límites impuestos not_subscribed: No se está suscrito - outbox_url: URL de bandeja de salida pending: Revisión pendiente perform_full_suspension: Suspender - profile_url: URL del perfil promote: Promocionar protocol: Protocolo public: Público @@ -174,7 +170,6 @@ es: moderator: Moderador staff: Personal user: Usuario - salmon_url: URL de salmón search: Buscar search_same_ip: Otros usuarios con la misma IP shared_inbox_url: URL de bandeja compartida @@ -398,9 +393,6 @@ es: created_msg: "¡El registro de la denuncia se ha creado correctamente!" destroyed_msg: "¡El registro de la denuncia se ha borrado correctamente!" reports: - account: - note: nota - report: denuncia action_taken_by: Acción tomada por are_you_sure: "¿Estás seguro?" assign_to_self: Asignármela a mí diff --git a/config/locales/et.yml b/config/locales/et.yml index aa58138f7..36a2931af 100644 --- a/config/locales/et.yml +++ b/config/locales/et.yml @@ -118,9 +118,7 @@ et: email_status: E-posti staatus enable: Luba enabled: Lubatud - feed_url: Voogu URL followers: Jälgijad - followers_url: Jälgijate URL follows: Jälgib header: Päis inbox_url: Sisendkausta URL @@ -148,10 +146,8 @@ et: no_account_selected: Mitte ühtegi kontot muudeti sest midagi polnud valitud no_limits_imposed: Mitte ühtegi limiiti kehtestatud not_subscribed: Ei ole tellitud - outbox_url: Väljundkausta URL pending: Ootab ülevaatamist perform_full_suspension: Peata - profile_url: Profiili URL promote: Edenda protocol: Protokoll public: Avalik @@ -174,7 +170,6 @@ et: moderator: Moderaator staff: Personal user: Kasutaja - salmon_url: Salmoni URL search: Otsi search_same_ip: Teised kasutajad, kellel on sama IP shared_inbox_url: Jagatud sisendkausta URL @@ -401,9 +396,6 @@ et: created_msg: Teade edukalt koostatud! destroyed_msg: Teade edukalt kustutatud! reports: - account: - note: märkus - report: teavita action_taken_by: Meetmeid kasutanud are_you_sure: Olete kindel? assign_to_self: Määra mulle diff --git a/config/locales/eu.yml b/config/locales/eu.yml index ab8a68746..9dfe5e9d3 100644 --- a/config/locales/eu.yml +++ b/config/locales/eu.yml @@ -118,9 +118,7 @@ eu: email_status: Posta elektronikoaren egoera enable: Gaitu enabled: Gaituta - feed_url: Jarioaren URL-a followers: Jarraitzaileak - followers_url: Jarraitzaileen URL-a follows: Jarraitzen du header: Goiburua inbox_url: Sarrera ontziaren URL-a @@ -148,10 +146,8 @@ eu: no_account_selected: Ez da konturik aldatu ez delako bata bera hautatu no_limits_imposed: Ez da mugarik ezarri not_subscribed: Harpidetu gabe - outbox_url: Irteera ontziaren URL-a pending: Berrikusketa egiteke perform_full_suspension: Kanporatu - profile_url: Profilaren URL-a promote: Sustatu protocol: Protokoloa public: Publikoa @@ -174,7 +170,6 @@ eu: moderator: Moderatzailea staff: Langilea user: Erabiltzailea - salmon_url: Salmon URL-a search: Bilatu search_same_ip: IP bera duten beste erabiltzaileak shared_inbox_url: Partekatutako sarrera ontziaren URL-a @@ -398,9 +393,6 @@ eu: created_msg: Salaketa oharra ongi sortu da! destroyed_msg: Salaketa oharra ongi ezabatu da! reports: - account: - note: oharra - report: salaketa action_taken_by: Neurrien hartzailea are_you_sure: Ziur zaude? assign_to_self: Esleitu niri diff --git a/config/locales/fa.yml b/config/locales/fa.yml index ea901423d..02a990a40 100644 --- a/config/locales/fa.yml +++ b/config/locales/fa.yml @@ -118,9 +118,7 @@ fa: email_status: وضعیت ایمیل enable: فعال enabled: فعال - feed_url: نشانی فید followers: پیگیران - followers_url: نشانی پیگیران follows: پی میگیرد header: زمینه inbox_url: نشانی صندوق ورودی @@ -148,10 +146,8 @@ fa: no_account_selected: هیچ حسابی تغییر نکرد زیرا حسابی انتخاب نشده بود no_limits_imposed: بدون محدودیت not_subscribed: عضو نیست - outbox_url: نشانی صندوق خروجی pending: در انتظار بررسی perform_full_suspension: تعلیق - profile_url: نشانی نمایه promote: ترفیعدادن protocol: پروتکل public: عمومی @@ -174,7 +170,6 @@ fa: moderator: ناظم staff: کارمند user: کاربر - salmon_url: نشانی Salmon search: جستجو search_same_ip: دیگر کاربران با همان IP shared_inbox_url: نشانی صندوق ورودی مشترک @@ -396,9 +391,6 @@ fa: created_msg: یادداشت گزارش با موفقیت ساخته شد! destroyed_msg: یادداشت گزارش با موفقیت حذف شد! reports: - account: - note: یادداشت - report: گزارش action_taken_by: انجامدهنده are_you_sure: آیا مطمئن هستید؟ assign_to_self: به عهدهٔ من بگذار diff --git a/config/locales/fi.yml b/config/locales/fi.yml index dfe71c098..3ab1a590e 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -96,9 +96,7 @@ fi: email_status: Sähköpostin tila enable: Ota käyttöön enabled: Käytössä - feed_url: Syötteen osoite followers: Seuraajat - followers_url: Seuraajien osoite follows: Seuraa inbox_url: Saapuvan postilaatikon osoite ip: IP @@ -122,9 +120,7 @@ fi: most_recent_activity: Viimeisin toiminta most_recent_ip: Viimeisin IP not_subscribed: Ei tilaaja - outbox_url: Lähtevän postilaatikon osoite perform_full_suspension: Siirrä kokonaan jäähylle - profile_url: Profiilin osoite promote: Ylennä protocol: Protokolla public: Julkinen @@ -146,7 +142,6 @@ fi: moderator: Moderaattori staff: Henkilöstö user: Käyttäjä - salmon_url: Salmon-URL search: Hae shared_inbox_url: Jaetun saapuvan postilaatikon osoite show: @@ -270,9 +265,6 @@ fi: created_msg: Muistiinpano onnistuneesti lisätty raporttiin! destroyed_msg: Muistiinpano onnistuneesti poistettu raportista! reports: - account: - note: muistiinpano - report: raportti action_taken_by: Toimenpiteen tekijä are_you_sure: Oletko varma? assign_to_self: Ota tehtäväksi diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 52dd032dd..06b2916fe 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -118,9 +118,7 @@ fr: email_status: État du courriel enable: Activer enabled: Activé - feed_url: URL du flux followers: Abonné⋅e⋅s - followers_url: URL des abonné·e·s follows: Abonnements header: Entête inbox_url: URL d’entrée @@ -148,10 +146,8 @@ fr: no_account_selected: Aucun compte n’a été modifié, car aucun n’a été sélectionné no_limits_imposed: Aucune limite imposée not_subscribed: Non abonné - outbox_url: URL de sortie pending: En attente d’approbation perform_full_suspension: Suspendre - profile_url: URL du profil promote: Promouvoir protocol: Protocole public: Publique @@ -174,7 +170,6 @@ fr: moderator: Modérateur staff: Équipe user: Utilisateur - salmon_url: URL Salmon search: Rechercher search_same_ip: Autres utilisateur·rice·s avec la même IP shared_inbox_url: URL de la boite de réception partagée @@ -398,9 +393,6 @@ fr: created_msg: Note de signalement créée avec succès ! destroyed_msg: Note de signalement effacée avec succès ! reports: - account: - note: note - report: signalement(s) action_taken_by: Intervention de are_you_sure: Êtes vous certain⋅e ? assign_to_self: Me l’assigner diff --git a/config/locales/gl.yml b/config/locales/gl.yml index 64f479ec7..057b21566 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -118,9 +118,7 @@ gl: email_status: Estado do correo enable: Habilitar enabled: Habilitado - feed_url: URL fonte followers: Seguidoras - followers_url: URL das seguidoras follows: Segue header: Cabeceira inbox_url: URL da Caixa de entrada @@ -148,10 +146,8 @@ gl: no_account_selected: Non cambiou nada xa que non tiña nada seleccionado no_limits_imposed: Sen límites impostos not_subscribed: Non suscrita - outbox_url: URL caixa de saída pending: Pendente revisión perform_full_suspension: Suspender - profile_url: URL do perfil promote: Promocionar protocol: Protocolo public: Público @@ -174,7 +170,6 @@ gl: moderator: Moderador staff: Membresía user: Usuaria - salmon_url: URL Salmon search: Busca search_same_ip: Outros usuarios co mesmo IP shared_inbox_url: URL da caixa de entrada compartida @@ -396,9 +391,6 @@ gl: created_msg: Creouse correctamente a nota do informe! destroyed_msg: Nota do informe eliminouse con éxito! reports: - account: - note: nota - report: informe action_taken_by: Acción tomada por are_you_sure: Está segura? assign_to_self: Asignarmo diff --git a/config/locales/he.yml b/config/locales/he.yml index 50db571dc..89e8a6e4f 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -52,9 +52,7 @@ he: email_status: סטטוס דוא"ל enable: לאפשר enabled: מאופשר - feed_url: כתובת פיד followers: עוקבים - followers_url: כתובת עוקבים follows: נעקבים inbox_url: כתובת תיבה נכנסת ip: כתובת IP @@ -75,9 +73,7 @@ he: most_recent_activity: פעילות עדכנית most_recent_ip: כתובות אחרונות not_subscribed: לא רשום - outbox_url: כתובת תיבת דואר יוצא perform_full_suspension: ביצוע השעייה מלאה - profile_url: כתובת פרופיל promote: להעלות בדרגה protocol: פרטיכל public: פומבי @@ -95,7 +91,6 @@ he: admin: מנהל מערכת moderator: מנחה דיונים user: משתמש(ת) - salmon_url: כתובת סלמון search: חיפוש shared_inbox_url: תיבה משותפת לדואר נכנס show: diff --git a/config/locales/hu.yml b/config/locales/hu.yml index 7f519c820..b4f8a970a 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -120,9 +120,7 @@ hu: email_status: E-mail állapot enable: Bekapcsolás enabled: Bekapcsolva - feed_url: Hírcsatorna URL followers: Követő - followers_url: Követő URL follows: Követett header: Fejléc inbox_url: Beérkezett üzenetek URL @@ -150,10 +148,8 @@ hu: no_account_selected: Nem változott meg egy fiók sem, mert semmi sem volt kiválasztva no_limits_imposed: Nincs korlátozás not_subscribed: Nincs feliratkozás - outbox_url: Kimenő üzenetek URL pending: Engedélyezés alatt perform_full_suspension: Felfüggesztés - profile_url: Profil URL promote: Előléptetés protocol: Protokoll public: Nyilvános @@ -176,7 +172,6 @@ hu: moderator: Moderátor staff: Stáb user: Felhasználó - salmon_url: Salmon URL search: Keresés search_same_ip: Más felhasználók ugyanezzel az IP-vel shared_inbox_url: Megosztott bejövő üzenetek URL @@ -400,9 +395,6 @@ hu: created_msg: Bejelentési feljegyzés létrehozva! destroyed_msg: Bejelentési feljegyzés törölve! reports: - account: - note: feljegyzés - report: bejelentés action_taken_by: 'Kezelte:' are_you_sure: Biztos vagy benne? assign_to_self: Magamhoz rendelés diff --git a/config/locales/id.yml b/config/locales/id.yml index 97e87460a..982e4289a 100644 --- a/config/locales/id.yml +++ b/config/locales/id.yml @@ -114,9 +114,7 @@ id: email_status: Status Email enable: Aktifkan enabled: Diaktifkan - feed_url: URL Feed followers: Pengikut - followers_url: URL pengikut follows: Mengikut header: Tajuk inbox_url: URL Kotak masuk @@ -144,10 +142,8 @@ id: no_account_selected: Tak ada akun yang diubah sebab tak ada yang dipilih no_limits_imposed: Tidak ada batasan not_subscribed: Tidak berlangganan - outbox_url: URL Kotak keluar pending: Tinjauan tertunda perform_full_suspension: Lakukan suspen penuh - profile_url: URL profil promote: Promosikan protocol: Protokol public: Publik @@ -170,7 +166,6 @@ id: moderator: Moderator staff: Staf user: Pengguna - salmon_url: URL Salmon search: Cari search_same_ip: Pengguna lain dengan IP yang sama shared_inbox_url: URL kotak masuk bersama @@ -391,9 +386,6 @@ id: created_msg: Catatan laporan berhasil dibuat! destroyed_msg: Catatan laporan berhasil dihapus! reports: - account: - note: catatan - report: lapor action_taken_by: Aksi dilakukan oleh are_you_sure: Apakah Anda yakin? assign_to_self: Tugaskan kpd saya diff --git a/config/locales/it.yml b/config/locales/it.yml index 3b5743f4d..aadf0f3d6 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -118,9 +118,7 @@ it: email_status: Stato email enable: Abilita enabled: Abilitato - feed_url: URL Feed followers: Follower - followers_url: URL follower follows: Segue header: Intestazione inbox_url: URL inbox @@ -148,10 +146,8 @@ it: no_account_selected: Nessun account è stato modificato visto che non ne è stato selezionato nessuno no_limits_imposed: Nessun limite imposto not_subscribed: Non sottoscritto - outbox_url: URL outbox pending: Revisioni in attesa perform_full_suspension: Sospendi - profile_url: URL profilo promote: Promuovi protocol: Protocollo public: Pubblico @@ -174,7 +170,6 @@ it: moderator: Moderatore staff: Personale user: Utente - salmon_url: URL Salmone search: Cerca search_same_ip: Altri utenti con lo stesso IP shared_inbox_url: URL Inbox Condiviso @@ -394,9 +389,6 @@ it: created_msg: Nota rapporto creata! destroyed_msg: Nota rapporto cancellata! reports: - account: - note: note - report: rapporto action_taken_by: Azione intrapresa da are_you_sure: Sei sicuro? assign_to_self: Assegna a me diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 8bf225bee..1f71a6e28 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -114,9 +114,7 @@ ja: email_status: メールアドレスの状態 enable: 有効化 enabled: 有効 - feed_url: フィードURL followers: フォロワー数 - followers_url: Followers URL follows: フォロー数 header: ヘッダー inbox_url: Inbox URL @@ -144,10 +142,8 @@ ja: no_account_selected: 何も選択されていないため、変更されていません no_limits_imposed: 制限なし not_subscribed: 購読していない - outbox_url: Outbox URL pending: 承認待ち perform_full_suspension: 活動を完全に停止させる - profile_url: プロフィールURL promote: 昇格 protocol: プロトコル public: パブリック @@ -170,7 +166,6 @@ ja: moderator: モデレーター staff: スタッフ user: ユーザー - salmon_url: Salmon URL search: 検索 search_same_ip: 同じ IP のユーザーを検索 shared_inbox_url: Shared inbox URL @@ -392,9 +387,6 @@ ja: created_msg: 通報メモを書き込みました! destroyed_msg: 通報メモを削除しました! reports: - account: - note: メモ - report: 通報 action_taken_by: 通報処理者 are_you_sure: 本当に実行しますか? assign_to_self: 担当になる diff --git a/config/locales/ka.yml b/config/locales/ka.yml index 0ab1f2d69..125912892 100644 --- a/config/locales/ka.yml +++ b/config/locales/ka.yml @@ -70,9 +70,7 @@ ka: email_status: ელ-ფოსტის სტატუსი enable: ჩართვა enabled: ჩართულია - feed_url: ლენტის ურლ followers: მიმდევრები - followers_url: მიმდევრების ურლ follows: დადევნებები inbox_url: ინბოქსის ურლ ip: აი-პი @@ -93,9 +91,7 @@ ka: most_recent_activity: უახლესი აქტივობა most_recent_ip: უახლესი აი-პი not_subscribed: გამოუწერელი - outbox_url: აუთბოქსის ურლ perform_full_suspension: მოახდინეთ სრული შეჩერება - profile_url: პროფილის ურლ promote: დაწინაურება protocol: პროტოკოლი public: საჯარო @@ -115,7 +111,6 @@ ka: moderator: მოდერატორი staff: სტაფი user: მომხმარებელი - salmon_url: სალმონის ურლ search: ძებნა shared_inbox_url: გაზიარებული ინბოქსის ურლ show: @@ -267,9 +262,6 @@ ka: created_msg: რეპორტის ჩანაწერი წარმატებით შეიქმნა! destroyed_msg: რეპორტის ჩანაწერი წარმატებით გაუქმდა! reports: - account: - note: ჩანაწერი - report: რეპორტი action_taken_by: მოქმედება შეასრულა are_you_sure: დარწმუნებული ხარ? assign_to_self: დანიშნე ჩემზე diff --git a/config/locales/kk.yml b/config/locales/kk.yml index 2b3f24e02..df2a29dab 100644 --- a/config/locales/kk.yml +++ b/config/locales/kk.yml @@ -118,9 +118,7 @@ kk: email_status: Email статусы enable: Қосу enabled: Қосылды - feed_url: Feеd URL followers: Оқырмандар - followers_url: Оқырмандар URL follows: Жазылғандары header: Басы inbox_url: Келген хаттар URL @@ -148,10 +146,8 @@ kk: no_account_selected: Бірде-бір аккаунт өзгерген жоқ, себебі ештеңе таңдалмады no_limits_imposed: Шектеу жоқ not_subscribed: Жазылмаған - outbox_url: Кеткен хаттар URL pending: Күтудегілерді қарау perform_full_suspension: Тоқтат - profile_url: Профиль URL promote: Жарнамалау protocol: Хаттама public: Ашық @@ -174,7 +170,6 @@ kk: moderator: Модератор staff: Қызметкерлер user: Қолданушы - salmon_url: Ақсерке URL search: Іздеу search_same_ip: Осы ІРмен кірген басқа қолданушылар shared_inbox_url: Бөлісілген инбокс URL @@ -398,9 +393,6 @@ kk: created_msg: Шағым жазбасы сәтті құрылды! destroyed_msg: Шағым жазбасы сәтті өшірілді! reports: - account: - note: жазба - report: шағым action_taken_by: Белсенділік жасаған are_you_sure: Шынымен бе? assign_to_self: Мені тағайындау diff --git a/config/locales/ko.yml b/config/locales/ko.yml index ceeadfb36..ee9e0e954 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -114,9 +114,7 @@ ko: email_status: 이메일 상태 enable: 활성화 enabled: 활성 - feed_url: 피드 URL followers: 팔로워 수 - followers_url: 팔로워 URL follows: 팔로잉 수 header: 헤더 inbox_url: 수신함 URL @@ -144,10 +142,8 @@ ko: no_account_selected: 아무 계정도 선택 되지 않아 아무 것도 변경 되지 않았습니다 no_limits_imposed: 제한 없음 not_subscribed: 구독하지 않음 - outbox_url: 발신함 URL pending: 심사 대기 perform_full_suspension: 정지시키기 - profile_url: 프로필 URL promote: 승급 protocol: 프로토콜 public: 전체 공개 @@ -170,7 +166,6 @@ ko: moderator: 모더레이터 staff: 스태프 user: 사용자 - salmon_url: Salmon URL search: 검색 search_same_ip: 같은 IP의 다른 사용자들 shared_inbox_url: 공유된 inbox URL @@ -392,9 +387,6 @@ ko: created_msg: 리포트 노트가 성공적으로 작성되었습니다! destroyed_msg: 리포트 노트가 성공적으로 삭제되었습니다! reports: - account: - note: 노트 - report: 리포트 action_taken_by: 신고 처리자 are_you_sure: 정말로 실행하시겠습니까? assign_to_self: 나에게 할당하기 diff --git a/config/locales/lt.yml b/config/locales/lt.yml index 7a09bee59..e9634b397 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -75,9 +75,7 @@ lt: email_status: El pašto statusas enable: Įjungti enabled: Įjungta - feed_url: Srauto URL followers: Sekėjai - followers_url: Sekėjų URL follows: Seka header: Antraštė inbox_url: Gautųjų URL @@ -102,9 +100,7 @@ lt: most_recent_ip: Paskutinis IP no_limits_imposed: Be limitu not_subscribed: Ne prenumeruota - outbox_url: Išsiustųjų URL perform_full_suspension: Užrakinti - profile_url: Profilio URL promote: Paaukštinti protocol: Protokolas public: Viešas @@ -125,7 +121,6 @@ lt: moderator: Moderatorius staff: Personalas user: Vartotojas - salmon_url: Lašišos URL search: Ieškoti shared_inbox_url: Bendroji gautųjų URL show: @@ -309,9 +304,6 @@ lt: created_msg: Skundo žinutė sekmingai sukurta! destroyed_msg: Skundo žinutė sekmingai ištrinta! reports: - account: - note: raštelis - report: skundas action_taken_by: Veiksmo ėmėsi are_you_sure: Ar tu įsitikinęs? assign_to_self: Paskirti man diff --git a/config/locales/ms.yml b/config/locales/ms.yml index d824aed60..71dc72d9d 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -73,9 +73,7 @@ ms: email_status: Status Emel enable: Bolehkan enabled: Dibolehkan - feed_url: Suapan URL followers: Pengikut - followers_url: URL Pengikut follows: Mengikuti inbox_url: URL mesej masuk ip: Alamat IP @@ -97,9 +95,7 @@ ms: most_recent_ip: IP terbaru no_limits_imposed: Tiada had dikuatkuasakan not_subscribed: Tiada langganan - outbox_url: URL mesej keluar perform_full_suspension: Gantung - profile_url: URL profil promote: Naikkan pangkat protocol: Protokol public: Awam @@ -119,7 +115,6 @@ ms: moderator: Pengawal staff: Kakitangan user: Pengguna - salmon_url: URL Salmon search: Cari shared_inbox_url: URL Peti Masuk Berkongsi show: @@ -276,9 +271,6 @@ ms: created_msg: Nota laporan berjaya dicipta! destroyed_msg: Nota laporan berjaya dipadam! reports: - account: - note: nota - report: laporan action_taken_by: Tindakan oleh are_you_sure: Anda pasti? assign_to_self: Berikan pada saya diff --git a/config/locales/nl.yml b/config/locales/nl.yml index bfa4122ed..2b49708e3 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -118,9 +118,7 @@ nl: email_status: E-mailstatus enable: Inschakelen enabled: Ingeschakeld - feed_url: Feed-URL followers: Volgers - followers_url: Volgers-URL follows: Volgt header: Omslagfoto inbox_url: Inbox-URL @@ -148,10 +146,8 @@ nl: no_account_selected: Er zijn geen accounts veranderd, omdat er geen een was geselecteerd no_limits_imposed: Geen limieten ingesteld not_subscribed: Niet geabonneerd - outbox_url: Outbox-URL pending: Moet nog beoordeeld worden perform_full_suspension: Opschorten - profile_url: Profiel-URL promote: Promoveren protocol: Protocol public: Openbaar @@ -174,7 +170,6 @@ nl: moderator: Moderator staff: Medewerkers user: Gebruiker - salmon_url: Salmon-URL search: Zoeken search_same_ip: Andere gebruikers met hetzelfde IP-adres shared_inbox_url: Gedeelde inbox-URL @@ -396,9 +391,6 @@ nl: created_msg: Opmerking bij rapportage succesvol aangemaakt! destroyed_msg: Opmerking bij rapportage succesvol verwijderd! reports: - account: - note: opmerking - report: rapportage action_taken_by: Actie uitgevoerd door are_you_sure: Weet je het zeker? assign_to_self: Aan mij toewijzen diff --git a/config/locales/no.yml b/config/locales/no.yml index fa40975a7..2c8786066 100644 --- a/config/locales/no.yml +++ b/config/locales/no.yml @@ -48,9 +48,7 @@ email_status: E-poststatus enable: Aktiver enabled: Aktivert - feed_url: Feed-URL followers: Følgere - followers_url: Følgere URL follows: Følginger inbox_url: Innboks URL ip: IP-adresse @@ -71,9 +69,7 @@ most_recent_activity: Nyligste aktivitet most_recent_ip: Nyligste IP not_subscribed: Ikke abonnért - outbox_url: Utboks URL perform_full_suspension: Utfør full utvisning - profile_url: Profil-URL promote: Oppgradere protocol: Protokoll public: Offentlig @@ -90,7 +86,6 @@ roles: staff: Personale user: Bruker - salmon_url: Salmon-URL search: Søk shared_inbox_url: Delt Innboks URL show: diff --git a/config/locales/oc.yml b/config/locales/oc.yml index 851db0491..f84fe882a 100644 --- a/config/locales/oc.yml +++ b/config/locales/oc.yml @@ -108,9 +108,7 @@ oc: email_status: Estat de l’adreça enable: Activar enabled: Activat - feed_url: Flux URL followers: Seguidors - followers_url: URL dels seguidors follows: Abonaments header: Bandièra inbox_url: URL de recepcion @@ -138,10 +136,8 @@ oc: no_account_selected: Cap de compte pas cambiat estant que cap èra pas seleccionat no_limits_imposed: Cap de limit impausat not_subscribed: Pas seguidor - outbox_url: URL Outbox pending: Revision en espèra perform_full_suspension: Suspendre - profile_url: URL del perfil promote: Promòure protocol: Protocòl public: Public @@ -164,7 +160,6 @@ oc: moderator: Moderador staff: Personnal user: Uitlizaire - salmon_url: URL Salmon search: Cercar shared_inbox_url: URL de recepcion partejada show: @@ -383,9 +378,6 @@ oc: created_msg: Nòta de moderacion corrèctament creada ! destroyed_msg: Nòta de moderacion corrèctament suprimida ! reports: - account: - note: nòta - report: rapòrt action_taken_by: Mesura menada per are_you_sure: Es segur ? assign_to_self: Me l’assignar diff --git a/config/locales/pl.yml b/config/locales/pl.yml index 5cf346dc7..c57d168bf 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -125,9 +125,7 @@ pl: email_status: Stan e-maila enable: Aktywuj enabled: Aktywowano - feed_url: Adres kanału followers: Śledzący - followers_url: Adres śledzących follows: Śledzeni header: Nagłówek inbox_url: Adres skrzynki @@ -155,10 +153,8 @@ pl: no_account_selected: Żadne konto nie zostało zmienione, bo żadne nie zostało wybrane no_limits_imposed: Nie nałożono ograniczeń not_subscribed: Nie zasubskrybowano - outbox_url: Adres skrzynki nadawczej pending: Oczekuje na przegląd perform_full_suspension: Zawieś - profile_url: Adres profilu promote: Podnieś uprawnienia protocol: Protokół public: Publiczne @@ -181,7 +177,6 @@ pl: moderator: Moderator staff: Ekipa user: Użytkownik - salmon_url: Adres Salmon search: Szukaj shared_inbox_url: Adres udostępnianej skrzynki show: @@ -403,9 +398,6 @@ pl: created_msg: Pomyslnie utworzono notatkę moderacyjną. destroyed_msg: Pomyślnie usunięto notatkę moderacyjną. reports: - account: - note: notatka - report: zgłoszenie action_taken_by: Działanie podjęte przez are_you_sure: Czy na pewno? assign_to_self: Przypisz do siebie diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index 7391ff06c..84eff7991 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -107,9 +107,7 @@ pt-BR: email_status: Estado do e-mail enable: Ativar enabled: Ativado - feed_url: URL do feed followers: Seguidores - followers_url: URL de seguidores follows: Segue header: Cabeçalho inbox_url: URL da caixa de entrada @@ -137,10 +135,8 @@ pt-BR: no_account_selected: Nenhuma conta foi modificada, pois nenhuma conta foi selecionada no_limits_imposed: Nenhum limite imposto not_subscribed: Não está inscrito - outbox_url: URL da caixa de saída pending: Esperando revisão perform_full_suspension: Suspender - profile_url: URL do perfil promote: Promover protocol: Protocolo public: Público @@ -163,7 +159,6 @@ pt-BR: moderator: Moderador staff: Equipe user: Usuário - salmon_url: URL Salmon search: Pesquisar shared_inbox_url: URL da caixa de entrada compartilhada show: @@ -368,9 +363,6 @@ pt-BR: created_msg: Nota de denúncia criada com sucesso! destroyed_msg: Nota de denúncia excluída com sucesso! reports: - account: - note: nota - report: denúncia action_taken_by: Ação realizada por are_you_sure: Você tem certeza? assign_to_self: Designar para mim diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml index bb1de517e..3c5b1ca9a 100644 --- a/config/locales/pt-PT.yml +++ b/config/locales/pt-PT.yml @@ -106,9 +106,7 @@ pt-PT: email_status: Estado do correio electrónico enable: Ativar enabled: Ativado - feed_url: URL do Feed followers: Seguidores - followers_url: URL dos seguidores follows: A seguir header: Cabeçalho inbox_url: URL da caixa de entrada @@ -132,9 +130,7 @@ pt-PT: most_recent_ip: IP mais recente no_limits_imposed: Sem limites impostos not_subscribed: Não inscrito - outbox_url: URL da caixa de saída perform_full_suspension: Fazer suspensão completa - profile_url: URL do perfil promote: Promover protocol: Protocolo public: Público @@ -155,7 +151,6 @@ pt-PT: moderator: Moderador staff: Equipa user: Utilizador - salmon_url: URL Salmon search: Pesquisar shared_inbox_url: URL da caixa de entrada compartilhada show: @@ -346,9 +341,6 @@ pt-PT: created_msg: Relatório criado com sucesso! destroyed_msg: Relatório apagado com sucesso! reports: - account: - note: nota - report: relatório action_taken_by: Ação tomada por are_you_sure: Tens a certeza? assign_to_self: Atribuí-me a mim diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 4c1035627..5c68ce4d4 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -126,9 +126,7 @@ ru: email_status: Статус e-mail enable: Включить enabled: Включен - feed_url: URL фида followers: Подписчики - followers_url: URL подписчиков follows: Подписки header: Шапка inbox_url: URL входящих @@ -156,10 +154,8 @@ ru: no_account_selected: Ничего не выбрано, никакие учётные записи не изменены no_limits_imposed: Без ограничений not_subscribed: Не подписаны - outbox_url: URL исходящих pending: Ожидает рассмотрения perform_full_suspension: Полная блокировка - profile_url: URL профиля promote: Повысить protocol: Протокол public: Публичный @@ -182,7 +178,6 @@ ru: moderator: Модератор staff: Персонал user: Пользователь - salmon_url: Страница Salmon search: Поиск search_same_ip: Другие пользователи с таким же IP shared_inbox_url: URL общих входящих @@ -410,9 +405,6 @@ ru: created_msg: Примечание жалобы создано! destroyed_msg: Примечание жалобы удалено! reports: - account: - note: заметок - report: жалоб action_taken_by: 'Действие предпринято:' are_you_sure: Вы уверены? assign_to_self: Назначить себе diff --git a/config/locales/sk.yml b/config/locales/sk.yml index 5dc2113fd..8339309b3 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -122,9 +122,7 @@ sk: email_status: Stav emailu enable: Povoľ enabled: Povolený - feed_url: adresa časovej osi followers: Sledujúci - followers_url: URL adresa sledujúcich follows: Sledovania header: Záhlavie inbox_url: URL adresa prijatých správ @@ -152,10 +150,8 @@ sk: no_account_selected: Nedošlo k žiadnému pozmeneniu účtov, keďže žiadne neboli vybrané no_limits_imposed: Nie sú stanovené žiadné obmedzenia not_subscribed: Neodoberá - outbox_url: URL poslaných pending: Vyžaduje posúdenie perform_full_suspension: Vylúč - profile_url: URL adresa profilu promote: Vyzdvihni protocol: Protokol public: Verejná časová os @@ -178,7 +174,6 @@ sk: moderator: Moderátor staff: Člen user: Užívateľ - salmon_url: Salmon adresa search: Hľadaj search_same_ip: Ostatní užívatelia s rovnakou IP adresou shared_inbox_url: URL zdieľanej schránky @@ -403,9 +398,6 @@ sk: created_msg: Poznámka o nahlásení úspešne vytvorená! destroyed_msg: Poznámka o nahlásení úspešne vymazaná! reports: - account: - note: poznámka - report: nahlás action_taken_by: Zákrok vykonal/a are_you_sure: Si si istý/á? assign_to_self: Priraď sebe diff --git a/config/locales/sl.yml b/config/locales/sl.yml index 22b58e7b6..2faaa149a 100644 --- a/config/locales/sl.yml +++ b/config/locales/sl.yml @@ -114,9 +114,7 @@ sl: email_status: Stanje e-pošte enable: Omogoči enabled: Omogočeno - feed_url: URL vira followers: Sledilci - followers_url: URL sledilcev follows: Sledi header: Glava inbox_url: URL mape "Prejeto" @@ -144,10 +142,8 @@ sl: no_account_selected: Noben račun ni bil spremenjen, ker ni bil izbran noben no_limits_imposed: Brez omejitev not_subscribed: Ni naročen - outbox_url: URL za pošiljanje pending: Čakanje na pregled perform_full_suspension: Suspendiraj - profile_url: URL profila promote: Promoviraj protocol: Protokol public: Javen @@ -170,7 +166,6 @@ sl: moderator: Moderator staff: Osebje user: Uporabnik - salmon_url: URL lososa search: Iskanje shared_inbox_url: URL mape "Prejeto v skupni rabi" show: @@ -375,9 +370,6 @@ sl: created_msg: Opomba o prijavi je uspešno ustvarjena! destroyed_msg: Opomba o prijavi je uspešno izbrisana! reports: - account: - note: opomba - report: prijava action_taken_by: Dejanje, ki ga je sprejel are_you_sure: Ali ste prepričani? assign_to_self: Dodeli meni diff --git a/config/locales/sq.yml b/config/locales/sq.yml index ac811b0b0..e5378082e 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -81,9 +81,7 @@ sq: email_status: Gjendje email-i enable: Aktivizoje enabled: E aktivizuar - feed_url: URL prurjeje followers: Ndjekës - followers_url: URL Ndjekësish follows: Ndjekje header: Krye inbox_url: URL Mesazhesh të Marrë @@ -108,9 +106,7 @@ sq: most_recent_ip: IP-ja më e freskët no_limits_imposed: Pa imponim kufijsh not_subscribed: Jo i pajtuar - outbox_url: URL Mesazhesh të Dërguar perform_full_suspension: Pezulloje - profile_url: URL profili promote: Promovojeni protocol: Protokoll public: Publike @@ -315,9 +311,6 @@ sq: created_msg: Shënimi i raportimit u krijua me sukses! destroyed_msg: Shënimi i raportimit u fshi me sukses! reports: - account: - note: shënim - report: raportojeni action_taken_by: Veprimi i ndërmarrë nga are_you_sure: A jeni i sigurt? assign_to_self: Caktojani vetes diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml index 2bddaf311..1f3d69e21 100644 --- a/config/locales/sr-Latn.yml +++ b/config/locales/sr-Latn.yml @@ -47,9 +47,7 @@ sr-Latn: email_status: Status e-pošte enable: Uključi enabled: Uključeno - feed_url: Adresa dovoda followers: Pratioci - followers_url: Adresa pratioca follows: Praćeni inbox_url: Adresa sandučeta location: @@ -69,9 +67,7 @@ sr-Latn: most_recent_activity: Najskorija aktivnost most_recent_ip: Najskorija IP adresa not_subscribed: Nije pretplaćen - outbox_url: Odlazno sanduče perform_full_suspension: Izvrši kompletno isključenje - profile_url: Adresa profila promote: Unapredi protocol: Protokol public: Javno @@ -87,7 +83,6 @@ sr-Latn: roles: staff: Osoblje user: Korisnik - salmon_url: Salmon adresa search: Pretraga shared_inbox_url: Adresa deljenog sandučeta show: diff --git a/config/locales/sr.yml b/config/locales/sr.yml index 404310fe9..d06bb214e 100644 --- a/config/locales/sr.yml +++ b/config/locales/sr.yml @@ -91,9 +91,7 @@ sr: email_status: Статус е-поште enable: Омогући enabled: Укључено - feed_url: Адреса довода followers: Пратиоци - followers_url: Адреса пратиоца follows: Праћени header: Заглавље inbox_url: Адреса сандучета @@ -118,9 +116,7 @@ sr: most_recent_ip: Најскорија IP адреса no_limits_imposed: Нема ограничења not_subscribed: Није претплаћен - outbox_url: Одлазно сандуче perform_full_suspension: Искључи - profile_url: Адреса профила promote: Унапреди protocol: Протокол public: Јавно @@ -141,7 +137,6 @@ sr: moderator: Модератор staff: Особље user: Корисник - salmon_url: Salmon адреса search: Претрага shared_inbox_url: Адреса дељеног сандучета show: @@ -330,9 +325,6 @@ sr: created_msg: Белешка пријаве успешно направљена! destroyed_msg: Белешка пријаве успешно избрисана! reports: - account: - note: белешка - report: извештај action_taken_by: Акцију извео are_you_sure: Да ли сте сигурни? assign_to_self: Додели мени diff --git a/config/locales/sv.yml b/config/locales/sv.yml index 0068f59f4..911698620 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -106,9 +106,7 @@ sv: email_status: E-poststatus enable: Aktivera enabled: Aktiverad - feed_url: Flödes URL followers: Följare - followers_url: Följare URL follows: Följs header: Rubrik inbox_url: Inkorgs URL @@ -136,10 +134,8 @@ sv: no_account_selected: Inga konton har ändrats och inget har valts no_limits_imposed: Inga begränsningar har införts not_subscribed: Inte prenumererat - outbox_url: Utkorg URL pending: Inväntar granskning perform_full_suspension: Utför full avstängning - profile_url: Profil URL promote: Befordra protocol: Protokoll public: Offentlig @@ -162,7 +158,6 @@ sv: moderator: Moderator staff: Personal user: Användare - salmon_url: Lax URL search: Sök search_same_ip: Annan användare med samma IP-adress shared_inbox_url: Delad inkorg URL @@ -318,9 +313,6 @@ sv: created_msg: Anmälningsanteckning har skapats! destroyed_msg: Anmälningsanteckning har raderats! reports: - account: - note: anteckning - report: anmälan action_taken_by: Åtgärder vidtagna av are_you_sure: Är du säker? assign_to_self: Tilldela till mig diff --git a/config/locales/te.yml b/config/locales/te.yml index 526b03b49..dd6c878e7 100644 --- a/config/locales/te.yml +++ b/config/locales/te.yml @@ -87,9 +87,7 @@ te: email_status: ఈమెయిల్ స్థితి enable: చేతనం enabled: చేతనం చేయబడింది - feed_url: ఫీడ్ URL followers: అనుచరులు - followers_url: అనుచరుల URL follows: అనుసరిస్తున్నారు inbox_url: ఇన్ బాక్స్ URL location: diff --git a/config/locales/th.yml b/config/locales/th.yml index a63bbe917..214a93acf 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -97,9 +97,7 @@ th: email_status: สถานะอีเมล enable: เปิดใช้งาน enabled: เปิดใช้งานอยู่ - feed_url: URL ฟีด followers: ผู้ติดตาม - followers_url: URL ผู้ติดตาม follows: การติดตาม header: ส่วนหัว inbox_url: URL กล่องขาเข้า @@ -124,9 +122,7 @@ th: most_recent_activity: กิจกรรมล่าสุด most_recent_ip: IP ล่าสุด not_subscribed: ไม่ได้บอกรับ - outbox_url: URL กล่องขาออก perform_full_suspension: ระงับ - profile_url: URL โปรไฟล์ promote: เลื่อนตำแหน่ง protocol: โปรโตคอล public: สาธารณะ @@ -310,9 +306,6 @@ th: created_msg: สร้างหมายเหตุรายงานสำเร็จ! destroyed_msg: ลบหมายเหตุรายงานสำเร็จ! reports: - account: - note: หมายเหตุ - report: รายงาน are_you_sure: คุณแน่ใจหรือไม่? assign_to_self: มอบหมายให้ฉัน assigned: ผู้ควบคุมที่ได้รับมอบหมาย diff --git a/config/locales/tr.yml b/config/locales/tr.yml index b2b1dd078..f3a2817ec 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -118,9 +118,7 @@ tr: email_status: E-posta durumu enable: Etkinleştir enabled: Etkin - feed_url: Besleme linki followers: Takipçiler - followers_url: Takipçi bağlantısı follows: Takip edilen header: Üstbilgi inbox_url: Gelen kutusu bağlantısı @@ -148,10 +146,8 @@ tr: no_account_selected: Hiçbiri seçilmediğinden hiçbir hesap değiştirilmedi no_limits_imposed: Sınır koymaz not_subscribed: Abone edilmedi - outbox_url: Giden Kutusu URL'si pending: Bekleyen yorum perform_full_suspension: Askıya al - profile_url: Profil linki promote: Yükselt protocol: Protokol public: Herkese açık @@ -174,7 +170,6 @@ tr: moderator: Denetleyici staff: Personel user: Kullanıcı - salmon_url: Salmon Linki search: Ara search_same_ip: Aynı IP adresine sahip diğer kullanıcılar shared_inbox_url: Paylaşılan gelen kutusu bağlantısı @@ -398,9 +393,6 @@ tr: created_msg: Şikayet notu başarıyla oluşturuldu! destroyed_msg: Şikayet notu başarıyla silindi! reports: - account: - note: not - report: şikayet action_taken_by: tarafından gerçekleştirilen eylem are_you_sure: Emin misiniz? assign_to_self: Bana ata diff --git a/config/locales/uk.yml b/config/locales/uk.yml index 7d8d83e2d..edcc289da 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -120,9 +120,7 @@ uk: email_status: Статус електронної пошти enable: Увімкнути enabled: Увімкнено - feed_url: URL-адреса каналу followers: Підписники - followers_url: URL підписників follows: Підписки header: Заголовок inbox_url: URL вхідних повідомлень @@ -150,10 +148,8 @@ uk: no_account_selected: Жоден обліковий запис не було змінено, оскільки жоден не було вибрано no_limits_imposed: Жодних обмежень не накладено not_subscribed: Не підписані - outbox_url: URL вихідних повідомлень pending: Відгук в очікуванні perform_full_suspension: Призупинити - profile_url: URL профілю promote: Просунути protocol: Протокол public: Публічний @@ -176,7 +172,6 @@ uk: moderator: Модератор staff: Персонал user: Користувач - salmon_url: Salmon URL search: Пошук shared_inbox_url: URL спільного вхідного кошика show: @@ -400,9 +395,6 @@ uk: created_msg: Скарга успішно створена! destroyed_msg: Скарга успішно видалена! reports: - account: - note: нотатка - report: скарга action_taken_by: Дія виконана are_you_sure: Ви впевнені? assign_to_self: Призначити мені diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index 3af145c66..49dd31bac 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -107,9 +107,7 @@ zh-CN: email_status: 电子邮件地址状态 enable: 启用 enabled: 已启用 - feed_url: 订阅 URL followers: 关注者 - followers_url: 关注者(Followers)URL follows: 正在关注 header: 个人资料页横幅图片 inbox_url: 收件箱(Inbox)URL @@ -137,10 +135,8 @@ zh-CN: no_account_selected: 因为没有账户被选择,所以没有更改 no_limits_imposed: 无限制 not_subscribed: 未订阅 - outbox_url: 发件箱(Outbox)URL pending: 待审核 perform_full_suspension: 封禁 - profile_url: 个人资料页面 URL promote: 升任 protocol: 协议 public: 公开页面 @@ -163,7 +159,6 @@ zh-CN: moderator: 监察员 staff: 管理人员 user: 普通用户 - salmon_url: 三文鱼协议网址(Salmon URL) search: 搜索 search_same_ip: 具有相同IP的其他用户 shared_inbox_url: 公用收件箱(Shared Inbox)URL @@ -384,9 +379,6 @@ zh-CN: created_msg: 举报记录建立成功! destroyed_msg: 举报记录删除成功! reports: - account: - note: 条记录 - report: 条举报 action_taken_by: 操作执行者 are_you_sure: 你确定吗? assign_to_self: 接管 diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml index 338cf810e..4b7ca52e1 100644 --- a/config/locales/zh-HK.yml +++ b/config/locales/zh-HK.yml @@ -64,9 +64,7 @@ zh-HK: email_status: 电子邮件状态 enable: 啟用 enabled: 已啟用 - feed_url: 訂閱 URL followers: 關注者 - followers_url: 關注者(Followers)URL follows: 正在關注 inbox_url: 收件箱(Inbox)URL ip: IP 位域 @@ -87,9 +85,7 @@ zh-HK: most_recent_activity: 最新活動 most_recent_ip: 最新 IP 位域 not_subscribed: 未訂閱 - outbox_url: 寄件箱(Outbox)URL perform_full_suspension: 完全停權 - profile_url: 個人檔案 URL promote: 升任 protocol: 協議 public: 公共 @@ -109,7 +105,6 @@ zh-HK: moderator: 監察員 staff: 管理人員 user: 普通用戶 - salmon_url: Salmon 反饋 URL search: 搜索 shared_inbox_url: 公共收件箱(Shared Inbox)URL show: @@ -233,9 +228,6 @@ zh-HK: created_msg: 舉報筆記已建立。 destroyed_msg: 舉報筆記已刪除。 reports: - account: - note: 筆記 - report: 舉報 action_taken_by: 操作執行者 are_you_sure: 你確認嗎? assign_to_self: 指派給自己 diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml index b7116e02e..7a5627c30 100644 --- a/config/locales/zh-TW.yml +++ b/config/locales/zh-TW.yml @@ -99,9 +99,7 @@ zh-TW: email_status: 電子信箱狀態 enable: 啟用 enabled: 已啟用 - feed_url: 訂閱 URL followers: 關注者 - followers_url: 關注者(Followers)URL follows: 正在關注 header: 開頭 inbox_url: 收件箱 (Inbox) URL @@ -128,10 +126,8 @@ zh-TW: most_recent_ip: 最近 IP 位址 no_limits_imposed: 未受限制 not_subscribed: 未訂閱 - outbox_url: 寄件箱 (Outbox) URL pending: 等待審核中 perform_full_suspension: 停權 - profile_url: 個人檔案 URL promote: 晉級 protocol: 協議 public: 公開 @@ -154,7 +150,6 @@ zh-TW: moderator: 版主 staff: 管理人員 user: 普通使用者 - salmon_url: Salmon 網址 search: 搜尋 shared_inbox_url: 共享收件箱網址 show: @@ -323,9 +318,6 @@ zh-TW: created_msg: 檢舉記錄建立成功! destroyed_msg: 檢舉記錄刪除成功! reports: - account: - note: 條記錄 - report: 條檢舉 action_taken_by: 操作執行者 are_you_sure: 你確定嗎? assign_to_self: 指派給自己 diff --git a/config/settings.yml b/config/settings.yml index 3cca40cbd..00a4421e4 100644 --- a/config/settings.yml +++ b/config/settings.yml @@ -66,6 +66,7 @@ defaults: &defaults - mod - moderator disallowed_hashtags: # space separated string or list of hashtags without the hash + enable_bootstrap_timeline_accounts: true bootstrap_timeline_accounts: '' activity_api_enabled: true peers_api_enabled: true diff --git a/db/migrate/20191212003415_increase_backup_size.rb b/db/migrate/20191212003415_increase_backup_size.rb new file mode 100644 index 000000000..a5192263c --- /dev/null +++ b/db/migrate/20191212003415_increase_backup_size.rb @@ -0,0 +1,21 @@ +require Rails.root.join('lib', 'mastodon', 'migration_helpers') + +class IncreaseBackupSize < ActiveRecord::Migration[5.2] + include Mastodon::MigrationHelpers + + disable_ddl_transaction! + + def up + safety_assured do + change_column_type_concurrently :backups, :dump_file_size, :bigint + cleanup_concurrent_column_type_change :backups, :dump_file_size + end + end + + def down + safety_assured do + change_column_type_concurrently :backups, :dump_file_size, :integer + cleanup_concurrent_column_type_change :backups, :dump_file_size + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 946f2c5e6..b7ab74033 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 2019_10_31_163205) do +ActiveRecord::Schema.define(version: 2019_12_12_003415) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -200,7 +200,7 @@ ActiveRecord::Schema.define(version: 2019_10_31_163205) do t.bigint "user_id" t.string "dump_file_name" t.string "dump_content_type" - t.integer "dump_file_size" + t.bigint "dump_file_size" t.datetime "dump_updated_at" t.boolean "processed", default: false, null: false t.datetime "created_at", null: false @@ -706,30 +706,6 @@ ActiveRecord::Schema.define(version: 2019_10_31_163205) do t.index ["tag_id", "status_id"], name: "index_statuses_tags_on_tag_id_and_status_id", unique: true end - create_table "stream_entries", force: :cascade do |t| - t.bigint "activity_id" - t.string "activity_type" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.boolean "hidden", default: false, null: false - t.bigint "account_id" - t.index ["account_id", "activity_type", "id"], name: "index_stream_entries_on_account_id_and_activity_type_and_id" - t.index ["activity_id", "activity_type"], name: "index_stream_entries_on_activity_id_and_activity_type" - end - - create_table "subscriptions", force: :cascade do |t| - t.string "callback_url", default: "", null: false - t.string "secret" - t.datetime "expires_at" - t.boolean "confirmed", default: false, null: false - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.datetime "last_successful_delivery_at" - t.string "domain" - t.bigint "account_id", null: false - t.index ["account_id", "callback_url"], name: "index_subscriptions_on_account_id_and_callback_url", unique: true - end - create_table "tags", force: :cascade do |t| t.string "name", default: "", null: false t.datetime "created_at", null: false diff --git a/lib/mastodon/statuses_cli.rb b/lib/mastodon/statuses_cli.rb index eeedc026c..875183372 100644 --- a/lib/mastodon/statuses_cli.rb +++ b/lib/mastodon/statuses_cli.rb @@ -13,6 +13,7 @@ module Mastodon end option :days, type: :numeric, default: 90 + option :clean_followed, type: :boolean desc 'remove', 'Remove unreferenced statuses' long_desc <<~LONG_DESC Remove statuses that are not referenced by local user activity, such as @@ -20,7 +21,7 @@ module Mastodon by someone locally but no longer are. This is a computationally heavy procedure that creates extra database - indicides before commencing, and removes them afterward. + indices before commencing, and removes them afterward. LONG_DESC def remove say('Creating temporary database indices...') @@ -34,18 +35,28 @@ module Mastodon say('Beginning removal... This might take a while...') - Status.remote - .where('id < ?', max_id) - .where(reblog_of_id: nil) # Skip reblogs - .where(in_reply_to_id: nil) # Skip replies - .where('id NOT IN (SELECT status_pins.status_id FROM status_pins WHERE statuses.id = status_id)') # Skip statuses that are pinned on profiles - .where('id NOT IN (SELECT mentions.status_id FROM mentions WHERE statuses.id = mentions.status_id AND mentions.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))') # Skip statuses that mention local accounts - .where('id NOT IN (SELECT statuses1.in_reply_to_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.in_reply_to_id)') # Skip statuses favourited by local accounts - .where('id NOT IN (SELECT bookmarks.status_id FROM bookmarks WHERE statuses.id = bookmarks.status_id)') # Skip statuses bookmarked by local users - .where('id NOT IN (SELECT statuses1.reblog_of_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.reblog_of_id AND statuses1.account_id IN (SELECT accounts.id FROM accounts WHERE accounts.domain IS NULL))') # Skip statuses reblogged by local accounts - .where('account_id NOT IN (SELECT follows.target_account_id FROM follows WHERE statuses.account_id = follows.target_account_id)') # Skip accounts followed by local accounts - .in_batches - .delete_all + scope = Status.remote.where('id < ?', max_id) + # Skip reblogs of local statuses + scope = scope.where('reblog_of_id NOT IN (SELECT statuses1.id FROM statuses AS statuses1 WHERE statuses1.id = statuses.reblog_of_id AND (statuses1.uri IS NULL OR statuses1.local))') + # Skip statuses that are pinned on profiles + scope = scope.where('id NOT IN (SELECT status_pins.status_id FROM status_pins WHERE statuses.id = status_id)') + # Skip statuses that mention local accounts + scope = scope.where('id NOT IN (SELECT mentions.status_id FROM mentions WHERE statuses.id = mentions.status_id AND mentions.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))') + # Skip statuses which have replies + scope = scope.where('id NOT IN (SELECT statuses1.in_reply_to_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.in_reply_to_id)') + # Skip statuses reblogged by local accounts or with recent boosts + scope = scope.where('id NOT IN (SELECT statuses1.reblog_of_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.reblog_of_id AND (statuses1.uri IS NULL OR statuses1.local OR statuses1.id >= ?))', max_id) + # Skip statuses favourited by local users + scope = scope.where('id NOT IN (SELECT favourites.status_id FROM favourites WHERE statuses.id = favourites.status_id AND favourites.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))') + # Skip statuses bookmarked by local users + scope = scope.where('id NOT IN (SELECT bookmarks.status_id FROM bookmarks WHERE statuses.id = bookmarks.status_id)') + + unless options[:clean_followed] + # Skip accounts followed by local accounts + scope = scope.where('account_id NOT IN (SELECT follows.target_account_id FROM follows WHERE statuses.account_id = follows.target_account_id)') + end + + scope.in_batches.delete_all say('Beginning removal of now-orphaned media attachments to free up disk space...') diff --git a/package.json b/package.json index 7c364d647..6c059b7a5 100644 --- a/package.json +++ b/package.json @@ -65,12 +65,12 @@ "@babel/plugin-proposal-decorators": "^7.7.4", "@babel/plugin-transform-react-inline-elements": "^7.7.4", "@babel/plugin-transform-runtime": "^7.7.6", - "@babel/preset-env": "^7.7.4", + "@babel/preset-env": "^7.7.6", "@babel/preset-react": "^7.7.4", "@babel/runtime": "^7.7.6", "@gamestdio/websocket": "^0.3.2", "@clusterws/cws": "^0.16.0", - "array-includes": "^3.0.3", + "array-includes": "^3.1.0", "atrament": "^0.2.3", "arrow-key-navigation": "^1.1.0", "autoprefixer": "^9.7.3", @@ -83,10 +83,10 @@ "babel-runtime": "^6.26.0", "blurhash": "^1.1.3", "classnames": "^2.2.5", - "compression-webpack-plugin": "^3.0.0", - "copy-webpack-plugin": "^5.0.5", + "compression-webpack-plugin": "^3.0.1", + "copy-webpack-plugin": "^5.1.1", "cross-env": "^6.0.3", - "css-loader": "^3.2.0", + "css-loader": "^3.3.2", "cssnano": "^4.1.10", "detect-passive-events": "^1.0.2", "dotenv": "^8.2.0", @@ -136,7 +136,7 @@ "react-motion": "^0.5.2", "react-notification": "^6.8.5", "react-overlays": "^0.9.1", - "react-redux": "^7.1.1", + "react-redux": "^7.1.3", "react-redux-loading-bar": "^4.0.8", "react-router-dom": "^4.1.1", "react-router-scroll-4": "^1.0.0-beta.1", @@ -176,7 +176,7 @@ "enzyme": "^3.10.0", "enzyme-adapter-react-16": "^1.15.1", "eslint": "^6.7.2", - "eslint-plugin-import": "~2.19.0", + "eslint-plugin-import": "~2.19.1", "eslint-plugin-jsx-a11y": "~6.2.3", "eslint-plugin-promise": "~4.2.1", "eslint-plugin-react": "~7.17.0", diff --git a/spec/controllers/settings/featured_tags_controller_spec.rb b/spec/controllers/settings/featured_tags_controller_spec.rb new file mode 100644 index 000000000..33b87f9f6 --- /dev/null +++ b/spec/controllers/settings/featured_tags_controller_spec.rb @@ -0,0 +1,43 @@ +require 'rails_helper' + +describe Settings::FeaturedTagsController do + render_views + + shared_examples 'authenticate user' do + it 'redirects to sign_in page' do + is_expected.to redirect_to new_user_session_path + end + end + + describe 'POST #create' do + context 'when user is not sign in' do + subject { post :create } + + it_behaves_like 'authenticate user' + end + + context 'when user is sign in' do + subject { post :create, params: { featured_tag: params } } + + let(:user) { Fabricate(:user, password: '12345678') } + + before { sign_in user, scope: :user } + + context 'when parameter is valid' do + let(:params) { { name: 'test' } } + + it 'creates featured tag' do + expect { subject }.to change { user.account.featured_tags.count }.by(1) + end + end + + context 'when parameter is invalid' do + let(:params) { { name: 'test, #foo !bleh' } } + + it 'renders new' do + expect(subject).to render_template :index + end + end + end + end +end diff --git a/spec/features/log_in_spec.rb b/spec/features/log_in_spec.rb index f6c26cd0f..b874c255b 100644 --- a/spec/features/log_in_spec.rb +++ b/spec/features/log_in_spec.rb @@ -1,7 +1,7 @@ require "rails_helper" feature "Log in" do - given(:email) { "test@examle.com" } + given(:email) { "test@example.com" } given(:password) { "password" } given(:confirmed_at) { Time.zone.now } diff --git a/spec/lib/activitypub/activity/create_spec.rb b/spec/lib/activitypub/activity/create_spec.rb index b709954a3..c4efb5cc9 100644 --- a/spec/lib/activitypub/activity/create_spec.rb +++ b/spec/lib/activitypub/activity/create_spec.rb @@ -378,6 +378,28 @@ RSpec.describe ActivityPub::Activity::Create do end end + context 'with hashtags invalid name' do + let(:object_json) do + { + id: [ActivityPub::TagManager.instance.uri_for(sender), '#bar'].join, + type: 'Note', + content: 'Lorem ipsum', + tag: [ + { + type: 'Hashtag', + href: 'http://example.com/blah', + name: 'foo, #eh !', + }, + ], + } + end + + it 'creates status' do + status = sender.statuses.first + expect(status).to_not be_nil + end + end + context 'with emojis' do let(:object_json) do { diff --git a/spec/services/activitypub/fetch_remote_status_service_spec.rb b/spec/services/activitypub/fetch_remote_status_service_spec.rb index 78dd59e3b..1ecc46952 100644 --- a/spec/services/activitypub/fetch_remote_status_service_spec.rb +++ b/spec/services/activitypub/fetch_remote_status_service_spec.rb @@ -104,6 +104,26 @@ RSpec.describe ActivityPub::FetchRemoteStatusService, type: :service do end end + context 'with Event object' do + let(:object) do + { + '@context': 'https://www.w3.org/ns/activitystreams', + id: "https://#{valid_domain}/@foo/1234", + type: 'Event', + name: "Let's change the world", + attributedTo: ActivityPub::TagManager.instance.uri_for(sender) + } + end + + it 'creates status' do + status = sender.statuses.first + + expect(status).to_not be_nil + expect(status.url).to eq "https://#{valid_domain}/@foo/1234" + expect(strip_tags(status.text)).to eq "Let's change the world https://#{valid_domain}/@foo/1234" + end + end + context 'with wrong id' do let(:note) do { diff --git a/spec/services/fetch_remote_account_service_spec.rb b/spec/services/fetch_remote_account_service_spec.rb deleted file mode 100644 index ee7325be2..000000000 --- a/spec/services/fetch_remote_account_service_spec.rb +++ /dev/null @@ -1,50 +0,0 @@ -require 'rails_helper' - -RSpec.describe FetchRemoteAccountService, type: :service do - let(:url) { 'https://example.com/alice' } - let(:prefetched_body) { nil } - let(:protocol) { :ostatus } - - subject { FetchRemoteAccountService.new.call(url, prefetched_body, protocol) } - - let(:actor) do - { - '@context': 'https://www.w3.org/ns/activitystreams', - id: 'https://example.com/alice', - type: 'Person', - preferredUsername: 'alice', - name: 'Alice', - summary: 'Foo bar', - inbox: 'http://example.com/alice/inbox', - } - end - - let(:webfinger) { { subject: 'acct:alice@example.com', links: [{ rel: 'self', href: 'https://example.com/alice' }] } } - let(:xml) { File.read(Rails.root.join('spec', 'fixtures', 'xml', 'mastodon.atom')) } - - shared_examples 'return Account' do - it { is_expected.to be_an Account } - end - - context 'protocol is :activitypub' do - let(:prefetched_body) { Oj.dump(actor) } - let(:protocol) { :activitypub } - - before do - stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) - end - - include_examples 'return Account' - end - - context 'when prefetched_body is nil' do - context 'protocol is :activitypub' do - before do - stub_request(:get, url).to_return(status: 200, body: Oj.dump(actor), headers: { 'Content-Type' => 'application/activity+json' }) - stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) - end - - include_examples 'return Account' - end - end -end diff --git a/spec/services/fetch_remote_status_service_spec.rb b/spec/services/fetch_remote_status_service_spec.rb index f9db024b9..1c4b4fee2 100644 --- a/spec/services/fetch_remote_status_service_spec.rb +++ b/spec/services/fetch_remote_status_service_spec.rb @@ -16,9 +16,8 @@ RSpec.describe FetchRemoteStatusService, type: :service do end context 'protocol is :activitypub' do - subject { described_class.new.call(note[:id], prefetched_body, protocol) } + subject { described_class.new.call(note[:id], prefetched_body) } let(:prefetched_body) { Oj.dump(note) } - let(:protocol) { :activitypub } before do account.update(uri: ActivityPub::TagManager.instance.uri_for(account)) @@ -59,7 +58,7 @@ RSpec.describe FetchRemoteStatusService, type: :service do </entry> XML - expect(subject.call('https://fake.domain/foo', status_body, :ostatus)).to be_nil + expect(subject.call('https://fake.domain/foo', status_body)).to be_nil end it 'does not create status with wrong id when id uses http format' do @@ -81,7 +80,7 @@ RSpec.describe FetchRemoteStatusService, type: :service do </entry> XML - expect(subject.call('https://real.domain/statuses/456', status_body, :ostatus)).to be_nil + expect(subject.call('https://real.domain/statuses/456', status_body)).to be_nil end end end diff --git a/spec/services/fetch_resource_service_spec.rb b/spec/services/fetch_resource_service_spec.rb index f836147d3..3af6a0689 100644 --- a/spec/services/fetch_resource_service_spec.rb +++ b/spec/services/fetch_resource_service_spec.rb @@ -71,14 +71,14 @@ RSpec.describe FetchResourceService, type: :service do let(:content_type) { 'application/activity+json; charset=utf-8' } let(:body) { json } - it { is_expected.to eq [1, { prefetched_body: body, id: true }, :activitypub] } + it { is_expected.to eq [1, { prefetched_body: body, id: true }] } end context 'when content type is ld+json with profile' do let(:content_type) { 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"' } let(:body) { json } - it { is_expected.to eq [1, { prefetched_body: body, id: true }, :activitypub] } + it { is_expected.to eq [1, { prefetched_body: body, id: true }] } end before do @@ -89,14 +89,14 @@ RSpec.describe FetchResourceService, type: :service do context 'when link header is present' do let(:headers) { { 'Link' => '<http://example.com/foo>; rel="alternate"; type="application/activity+json"', } } - it { is_expected.to eq [1, { prefetched_body: json, id: true }, :activitypub] } + it { is_expected.to eq [1, { prefetched_body: json, id: true }] } end context 'when content type is text/html' do let(:content_type) { 'text/html' } let(:body) { '<html><head><link rel="alternate" href="http://example.com/foo" type="application/activity+json"/></head></html>' } - it { is_expected.to eq [1, { prefetched_body: json, id: true }, :activitypub] } + it { is_expected.to eq [1, { prefetched_body: json, id: true }] } end end end diff --git a/yarn.lock b/yarn.lock index 1a3a598be..6717898ed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -157,6 +157,18 @@ "@babel/types" "^7.7.4" lodash "^4.17.13" +"@babel/helper-module-transforms@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.5.tgz#d044da7ffd91ec967db25cd6748f704b6b244835" + integrity sha512-A7pSxyJf1gN5qXVcidwLWydjftUN878VkalhXX5iQDuGyiGK3sOrrKKHF4/A4fwHtnsotv/NipwAeLzY4KQPvw== + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-simple-access" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + lodash "^4.17.13" + "@babel/helper-optimise-call-expression@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.4.tgz#034af31370d2995242aa4df402c3b7794b2dcdf2" @@ -478,21 +490,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-modules-amd@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.4.tgz#276b3845ca2b228f2995e453adc2e6f54d72fb71" - integrity sha512-/542/5LNA18YDtg1F+QHvvUSlxdvjZoD/aldQwkq+E3WCkbEjNSN9zdrOXaSlfg3IfGi22ijzecklF/A7kVZFQ== +"@babel/plugin-transform-modules-amd@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.5.tgz#39e0fb717224b59475b306402bb8eedab01e729c" + integrity sha512-CT57FG4A2ZUNU1v+HdvDSDrjNWBrtCmSH6YbbgN3Lrf0Di/q/lWRxZrE72p3+HCCz9UjfZOEBdphgC0nzOS6DQ== dependencies: - "@babel/helper-module-transforms" "^7.7.4" + "@babel/helper-module-transforms" "^7.7.5" "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.4.tgz#bee4386e550446343dd52a571eda47851ff857a3" - integrity sha512-k8iVS7Jhc367IcNF53KCwIXtKAH7czev866ThsTgy8CwlXjnKZna2VHwChglzLleYrcHz1eQEIJlGRQxB53nqA== +"@babel/plugin-transform-modules-commonjs@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.5.tgz#1d27f5eb0bcf7543e774950e5b2fa782e637b345" + integrity sha512-9Cq4zTFExwFhQI6MT1aFxgqhIsMWQWDVwOgLzl7PTWJHsNaqFvklAU+Oz6AQLAS0dJKTwZSOCo20INwktxpi3Q== dependencies: - "@babel/helper-module-transforms" "^7.7.4" + "@babel/helper-module-transforms" "^7.7.5" "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-simple-access" "^7.7.4" babel-plugin-dynamic-import-node "^2.3.0" @@ -592,10 +604,10 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.7.4" -"@babel/plugin-transform-regenerator@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.4.tgz#d18eac0312a70152d7d914cbed2dc3999601cfc0" - integrity sha512-e7MWl5UJvmPEwFJTwkBlPmqixCtr9yAASBqff4ggXTNicZiwbF8Eefzm6NVgfiBp7JdAGItecnctKTgH44q2Jw== +"@babel/plugin-transform-regenerator@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.5.tgz#3a8757ee1a2780f390e89f246065ecf59c26fce9" + integrity sha512-/8I8tPvX2FkuEyWbjRCt4qTAgZK0DVy8QRguhA524UH48RfGJy94On2ri+dCuwOpcerPRl9O4ebQkRcVzIaGBw== dependencies: regenerator-transform "^0.14.0" @@ -661,10 +673,10 @@ "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/preset-env@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.4.tgz#ccaf309ae8d1ee2409c85a4e2b5e280ceee830f8" - integrity sha512-Dg+ciGJjwvC1NIe/DGblMbcGq1HOtKbw8RLl4nIjlfcILKEOkWT/vRqPpumswABEBVudii6dnVwrBtzD7ibm4g== +"@babel/preset-env@^7.7.6": + version "7.7.6" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.6.tgz#39ac600427bbb94eec6b27953f1dfa1d64d457b2" + integrity sha512-k5hO17iF/Q7tR9Jv8PdNBZWYW6RofxhnxKjBMc0nG4JTaWvOTiPoO/RLFwAKcA4FpmuBFm6jkoqaRJLGi0zdaQ== dependencies: "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" @@ -694,8 +706,8 @@ "@babel/plugin-transform-function-name" "^7.7.4" "@babel/plugin-transform-literals" "^7.7.4" "@babel/plugin-transform-member-expression-literals" "^7.7.4" - "@babel/plugin-transform-modules-amd" "^7.7.4" - "@babel/plugin-transform-modules-commonjs" "^7.7.4" + "@babel/plugin-transform-modules-amd" "^7.7.5" + "@babel/plugin-transform-modules-commonjs" "^7.7.5" "@babel/plugin-transform-modules-systemjs" "^7.7.4" "@babel/plugin-transform-modules-umd" "^7.7.4" "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.4" @@ -703,7 +715,7 @@ "@babel/plugin-transform-object-super" "^7.7.4" "@babel/plugin-transform-parameters" "^7.7.4" "@babel/plugin-transform-property-literals" "^7.7.4" - "@babel/plugin-transform-regenerator" "^7.7.4" + "@babel/plugin-transform-regenerator" "^7.7.5" "@babel/plugin-transform-reserved-words" "^7.7.4" "@babel/plugin-transform-shorthand-properties" "^7.7.4" "@babel/plugin-transform-spread" "^7.7.4" @@ -713,7 +725,7 @@ "@babel/plugin-transform-unicode-regex" "^7.7.4" "@babel/types" "^7.7.4" browserslist "^4.6.0" - core-js-compat "^3.1.1" + core-js-compat "^3.4.7" invariant "^2.2.2" js-levenshtein "^1.1.3" semver "^5.5.0" @@ -1592,13 +1604,13 @@ array-flatten@^2.1.0: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== -array-includes@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" - integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0= +array-includes@^3.0.3, array-includes@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.0.tgz#48a929ef4c6bb1fa6dc4a92c9b023a261b0ca404" + integrity sha512-ONOEQoKrvXPKk7Su92Co0YMqYO32FfqJTzkKU9u2UpIXyYZIzLSvpdg4AwvSw4mSUW0czu6inK+zby6Oj6gDjQ== dependencies: - define-properties "^1.1.2" - es-abstract "^1.7.0" + define-properties "^1.1.3" + es-abstract "^1.17.0-next.0" array-union@^1.0.1: version "1.0.2" @@ -2142,14 +2154,14 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.8.0: - version "4.8.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.0.tgz#6f06b0f974a7cc3a84babc2ccc56493668e3c789" - integrity sha512-HYnxc/oLRWvJ3TsGegR0SRL/UDnknGq2s/a8dYYEO+kOQ9m9apKoS5oiathLKZdh/e9uE+/J3j92qPlGD/vTqA== +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.8.0, browserslist@^4.8.2: + version "4.8.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.2.tgz#b45720ad5fbc8713b7253c20766f701c9a694289" + integrity sha512-+M4oeaTplPm/f1pXDw84YohEv7B1i/2Aisei8s4s6k3QsoSHa7i5sz8u/cGQkkatCPxMASKxPualR4wwYgVboA== dependencies: - caniuse-lite "^1.0.30001012" - electron-to-chromium "^1.3.317" - node-releases "^1.1.41" + caniuse-lite "^1.0.30001015" + electron-to-chromium "^1.3.322" + node-releases "^1.1.42" bser@^2.0.0: version "2.0.0" @@ -2207,26 +2219,6 @@ bytes@3.1.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== -cacache@^11.2.0: - version "11.3.3" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc" - integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA== - dependencies: - bluebird "^3.5.5" - chownr "^1.1.1" - figgy-pudding "^3.5.1" - glob "^7.1.4" - 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.3" - ssri "^6.0.1" - unique-filename "^1.1.1" - y18n "^4.0.0" - cacache@^12.0.2, cacache@^12.0.3: version "12.0.3" resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.3.tgz#be99abba4e1bf5df461cd5a2c1071fc432573390" @@ -2343,6 +2335,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001012: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001013.tgz#da2440d4d266a17d40eb79bd19c0c8cc1d029c72" integrity sha512-hOAXaWKuq/UVFgYawxIOdPdyMQdYcwOCDOjnZcKn7wCgFUrhP7smuNZjGLuJlPSgE6aRA4cRJ+bGSrhtEt7ZAg== +caniuse-lite@^1.0.30001015: + version "1.0.30001016" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001016.tgz#16ea48d7d6e8caf3cad3295c2d746fe38c4e7f66" + integrity sha512-yYQ2QfotceRiH4U+h1Us86WJXtVHDmy3nEKIdYPsZCYnOV5/tMgGbmoIlrMzmh2VXlproqYtVaKeGDBkMZifFA== + capture-exit@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" @@ -2642,16 +2639,16 @@ compressible@~2.0.16: dependencies: mime-db ">= 1.40.0 < 2" -compression-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-3.0.0.tgz#097d2e4d95c3a14cb5c8ed20899009ab5b9bbca0" - integrity sha512-ls+oKw4eRbvaSv/hj9NmctihhBcR26j76JxV0bLRLcWhrUBdQFgd06z/Kgg7exyQvtWWP484wZxs0gIUX3NO0Q== +compression-webpack-plugin@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-3.0.1.tgz#be7a343e6dfbccbd64a77c5fbe29627d140fc321" + integrity sha512-FOwoBVzDiwSdJDnZTKXDpAjJU90k8SbChgxnoiYwTo15xjIDJkSC8wFKuc13DymXjgasPEqzS5+2RUgSKXdKKA== dependencies: - cacache "^11.2.0" + cacache "^13.0.1" find-cache-dir "^3.0.0" neo-async "^2.5.0" - schema-utils "^1.0.0" - serialize-javascript "^1.4.0" + schema-utils "^2.6.1" + serialize-javascript "^2.1.2" webpack-sources "^1.0.1" compression@^1.7.4: @@ -2755,10 +2752,10 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -copy-webpack-plugin@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.5.tgz#731df6a837a2ef0f8f8e2345bdfe9b7c62a2da68" - integrity sha512-7N68eIoQTyudAuxkfPT7HzGoQ+TsmArN/I3HFwG+lVE3FNzqvZKIiaxtYh4o3BIznioxUvx9j26+Rtsc9htQUQ== +copy-webpack-plugin@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.1.1.tgz#5481a03dea1123d88a988c6ff8b78247214f0b88" + integrity sha512-P15M5ZC8dyCjQHWwd4Ia/dm0SgVvZJMYeykVIVYXbGyqO4dWB5oyPHp9i7wjwo5LhtlhKbiBCdS2NvM07Wlybg== dependencies: cacache "^12.0.3" find-cache-dir "^2.1.0" @@ -2770,22 +2767,16 @@ copy-webpack-plugin@^5.0.5: normalize-path "^3.0.0" p-limit "^2.2.1" schema-utils "^1.0.0" - serialize-javascript "^2.1.0" + serialize-javascript "^2.1.2" webpack-log "^2.0.0" -core-js-compat@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.1.3.tgz#0cc3ba4c7f62928c2837e1cffbe8dc78b4f1ae14" - integrity sha512-EP018pVhgwsKHz3YoN1hTq49aRe+h017Kjz0NQz3nXV0cCRMvH3fLQl+vEPGr4r4J5sk4sU3tUC7U1aqTCeJeA== +core-js-compat@^3.4.7: + version "3.5.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.5.0.tgz#5a11a619a9e9dd2dcf1c742b2060bc4a2143e5b6" + integrity sha512-E7iJB72svRjJTnm9HDvujzNVMCm3ZcDYEedkJ/sDTNsy/0yooCd9Cg7GSzE7b4e0LfIkjijdB1tqg0pGwxWeWg== dependencies: - browserslist "^4.6.0" - core-js-pure "3.1.3" - semver "^6.1.0" - -core-js-pure@3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.1.3.tgz#4c90752d5b9471f641514f3728f51c1e0783d0b5" - integrity sha512-k3JWTrcQBKqjkjI0bkfXS0lbpWPxYuHWfMMjC1VDmzU4Q58IwSbuXSo99YO/hUHlw/EB4AlfA2PVxOGkrIq6dA== + browserslist "^4.8.2" + semver "^6.3.0" core-js@^1.0.0: version "1.2.7" @@ -2953,23 +2944,23 @@ css-list-helpers@^1.0.1: dependencies: tcomb "^2.5.0" -css-loader@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.2.0.tgz#bb570d89c194f763627fcf1f80059c6832d009b2" - integrity sha512-QTF3Ud5H7DaZotgdcJjGMvyDj5F3Pn1j/sC6VBEOVp94cbwqyIBdcs/quzj4MC1BKQSrTpQznegH/5giYbhnCQ== +css-loader@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.3.2.tgz#41b2086528aa4fbf8c0692e874bc14f081129b21" + integrity sha512-4XSiURS+YEK2fQhmSaM1onnUm0VKWNf6WWBYjkp9YbSDGCBTVZ5XOM6Gkxo8tLgQlzkZOBJvk9trHlDk4gjEYg== dependencies: camelcase "^5.3.1" cssesc "^3.0.0" icss-utils "^4.1.1" loader-utils "^1.2.3" normalize-path "^3.0.0" - postcss "^7.0.17" + postcss "^7.0.23" postcss-modules-extract-imports "^2.0.0" postcss-modules-local-by-default "^3.0.2" - postcss-modules-scope "^2.1.0" + postcss-modules-scope "^2.1.1" postcss-modules-values "^3.0.0" - postcss-value-parser "^4.0.0" - schema-utils "^2.0.0" + postcss-value-parser "^4.0.2" + schema-utils "^2.6.0" css-select-base-adapter@~0.1.0: version "0.1.1" @@ -3524,10 +3515,10 @@ ejs@^2.3.4, ejs@^2.6.1: resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.1.tgz#5b5ab57f718b79d4aca9254457afecd36fa80228" integrity sha512-kS/gEPzZs3Y1rRsbGX4UOSjtP/CeJP0CxSNZHYxGfVM/VgLcv0ZqM7C45YyTj2DI2g7+P9Dd24C+IMIg6D0nYQ== -electron-to-chromium@^1.3.317: - version "1.3.321" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.321.tgz#913869f5ec85daabba0e75c9c314b4bf26cdb01e" - integrity sha512-jJy/BZK2s2eAjMPXVMSaCmo7/pSY2aKkfQ+LoAb5Wk39qAhyP9r8KU74c4qTgr9cD/lPUhJgReZxxqU0n5puog== +electron-to-chromium@^1.3.322: + version "1.3.322" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.322.tgz#a6f7e1c79025c2b05838e8e344f6e89eb83213a8" + integrity sha512-Tc8JQEfGQ1MzfSzI/bTlSr7btJv/FFO7Yh6tanqVmIWOuNCu6/D1MilIEgLtmWqIrsv+o4IjpLAhgMBr/ncNAA== elliptic@^6.0.0: version "6.5.1" @@ -3670,7 +3661,7 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.10.0, es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.5.0, es-abstract@^1.5.1, es-abstract@^1.7.0: +es-abstract@^1.10.0, es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.5.0, es-abstract@^1.5.1: version "1.16.2" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.2.tgz#4e874331645e9925edef141e74fc4bd144669d34" integrity sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA== @@ -3686,6 +3677,23 @@ es-abstract@^1.10.0, es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15 string.prototype.trimleft "^2.1.0" string.prototype.trimright "^2.1.0" +es-abstract@^1.17.0-next.0: + version "1.17.0-next.1" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.0-next.1.tgz#94acc93e20b05a6e96dacb5ab2f1cb3a81fc2172" + integrity sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw== + dependencies: + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-inspect "^1.7.0" + object-keys "^1.1.1" + object.assign "^4.1.0" + string.prototype.trimleft "^2.1.0" + string.prototype.trimright "^2.1.0" + es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" @@ -3815,10 +3823,10 @@ eslint-plugin-eslint-plugin@^2.1.0: resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-plugin/-/eslint-plugin-eslint-plugin-2.1.0.tgz#a7a00f15a886957d855feacaafee264f039e62d5" integrity sha512-kT3A/ZJftt28gbl/Cv04qezb/NQ1dwYIbi8lyf806XMxkus7DvOVCLIfTXMrorp322Pnoez7+zabXH29tADIDg== -eslint-plugin-import@~2.19.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.19.0.tgz#560ddc8236b4e68df57a95c5ba33bcf23300c780" - integrity sha512-J13f9Slu7BCZq1N2NnWmK7tci/Y1SWWHUaj0J+I1NpzUm8l/Gwnz6KO+JMbM4TcnxU8O/DJ4psa6eZrmNREsOg== +eslint-plugin-import@~2.19.1: + version "2.19.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.19.1.tgz#5654e10b7839d064dd0d46cd1b88ec2133a11448" + integrity sha512-x68131aKoCZlCae7rDXKSAQmbT5DQuManyXo2sK6fJJ0aK5CWAkv6A6HJZGgqC8IhjQxYPgo6/IY4Oz8AFsbBw== dependencies: array-includes "^3.0.3" array.prototype.flat "^1.2.1" @@ -7134,10 +7142,10 @@ node-pre-gyp@^0.12.0: semver "^5.3.0" tar "^4" -node-releases@^1.1.41: - version "1.1.41" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.41.tgz#57674a82a37f812d18e3b26118aefaf53a00afed" - integrity sha512-+IctMa7wIs8Cfsa8iYzeaLTFwv5Y4r5jZud+4AnfymzeEXKBCavFX0KBgzVaPVqf0ywa6PrO8/b+bPqdwjGBSg== +node-releases@^1.1.42: + version "1.1.42" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.42.tgz#a999f6a62f8746981f6da90627a8d2fc090bbad7" + integrity sha512-OQ/ESmUqGawI2PRX+XIRao44qWYBBfN54ImQYdWVTQqUckuejOg76ysSqDBK8NG3zwySRVnX36JwDQ6x+9GxzA== dependencies: semver "^6.3.0" @@ -8058,10 +8066,10 @@ postcss-modules-local-by-default@^3.0.2: postcss-selector-parser "^6.0.2" postcss-value-parser "^4.0.0" -postcss-modules-scope@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.0.tgz#ad3f5bf7856114f6fcab901b0502e2a2bc39d4eb" - integrity sha512-91Rjps0JnmtUB0cujlc8KIKCsJXWjzuxGeT/+Q2i2HXKZ7nBUeF9YQTZZTNvHVoNYj1AthsjnGLtqDUE0Op79A== +postcss-modules-scope@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.1.tgz#33d4fc946602eb5e9355c4165d68a10727689dba" + integrity sha512-OXRUPecnHCg8b9xWvldG/jUpRIGPNRka0r4D4j0ESUU2/5IOnpsjfPPmDprM3Ih8CgZ8FXjWqaniK5v4rWt3oQ== dependencies: postcss "^7.0.6" postcss-selector-parser "^6.0.0" @@ -8259,7 +8267,7 @@ postcss@^5.0.16: source-map "^0.5.6" supports-color "^3.2.3" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.23, postcss@^7.0.5, postcss@^7.0.6: +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.23, postcss@^7.0.5, postcss@^7.0.6: version "7.0.23" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.23.tgz#9f9759fad661b15964f3cfc3140f66f1e05eadc1" integrity sha512-hOlMf3ouRIFXD+j2VJecwssTwbvsPGJVMzupptg+85WA+i7MwyrydmQAgY3R+m0Bc0exunhbJmijy8u8+vufuQ== @@ -8636,12 +8644,7 @@ react-intl@^2.9.0: intl-relativeformat "^2.1.0" invariant "^2.1.1" -react-is@^16.10.2, react-is@^16.3.2, react-is@^16.7.0, react-is@^16.8.4, react-is@^16.8.6, react-is@^16.9.0: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.11.0.tgz#b85dfecd48ad1ce469ff558a882ca8e8313928fa" - integrity sha512-gbBVYR2p8mnriqAwWx9LbuUrShnAuSCNnuPGyc7GJrMVQtPDAh8iLpv7FRuMPFb56KkaVZIYSz1PrjI9q0QPCw== - -react-is@^16.8.1: +react-is@^16.10.2, 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.12.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c" integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q== @@ -8696,10 +8699,10 @@ react-redux-loading-bar@^4.0.8: prop-types "^15.6.2" react-lifecycles-compat "^3.0.2" -react-redux@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-7.1.1.tgz#ce6eee1b734a7a76e0788b3309bf78ff6b34fa0a" - integrity sha512-QsW0vcmVVdNQzEkrgzh2W3Ksvr8cqpAv5FhEk7tNEft+5pp7rXxAudTz3VOPawRkLIepItpkEIyLcN/VVXzjTg== +react-redux@^7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-7.1.3.tgz#717a3d7bbe3a1b2d535c94885ce04cdc5a33fc79" + integrity sha512-uI1wca+ECG9RoVkWQFF4jDMqmaw0/qnvaSvOoL/GA4dNxf6LoV8sUAcNDvE5NWKs4hFpn0t6wswNQnY3f7HT3w== dependencies: "@babel/runtime" "^7.5.5" hoist-non-react-statics "^3.3.0" @@ -9429,7 +9432,7 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.0.0, schema-utils@^2.1.0, schema-utils@^2.6.1: +schema-utils@^2.0.0, schema-utils@^2.1.0, schema-utils@^2.6.0, schema-utils@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.6.1.tgz#eb78f0b945c7bcfa2082b3565e8db3548011dc4f" integrity sha512-0WXHDs1VDJyo+Zqs9TKLKyD/h7yDpHUhEFsM2CzkICFdoX1av+GBq/J2xRTFfsQO5kBfhZzANf2VcIm84jqDbg== @@ -9467,7 +9470,7 @@ semver@4.3.2: resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.2.tgz#c7a07158a80bedd052355b770d82d6640f803be7" integrity sha1-x6BxWKgL7dBSNVt3DYLWZA+AO+c= -semver@^6.0.0, semver@^6.1.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: +semver@^6.0.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -9491,15 +9494,15 @@ send@0.17.1: range-parser "~1.2.1" statuses "~1.5.0" -serialize-javascript@^1.4.0, serialize-javascript@^1.7.0: +serialize-javascript@^1.7.0: version "1.9.1" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb" integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A== -serialize-javascript@^2.1.0, serialize-javascript@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.1.tgz#952907a04a3e3a75af7f73d92d15e233862048b2" - integrity sha512-MPLPRpD4FNqWq9tTIjYG5LesFouDhdyH0EPY3gVK4DRD5+g4aDqdNSzLIwceulo3Yj+PL1bPh6laE5+H6LTcrQ== +serialize-javascript@^2.1.1, serialize-javascript@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" + integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== serve-index@^1.9.1: version "1.9.1" |