From 85c3bbb23888250bd9caca5d3e8526e8dbdedccc Mon Sep 17 00:00:00 2001
From: Aditoo17 <42938951+Aditoo17@users.noreply.github.com>
Date: Thu, 14 Mar 2019 20:59:26 +0100
Subject: [PATCH 01/20] I18n: Update Czech translation (#10272)
---
app/javascript/mastodon/locales/cs.json | 11 +++++++++
config/locales/cs.yml | 30 ++++++++++++++++++++++++-
config/locales/devise.cs.yml | 3 +++
3 files changed, 43 insertions(+), 1 deletion(-)
diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json
index a9442d8038b..9396d7b5ddd 100644
--- a/app/javascript/mastodon/locales/cs.json
+++ b/app/javascript/mastodon/locales/cs.json
@@ -73,6 +73,10 @@
"compose_form.lock_disclaimer": "Váš účet není {locked}. Kdokoliv vás může sledovat a vidět vaše příspěvky pouze pro sledující.",
"compose_form.lock_disclaimer.lock": "uzamčen",
"compose_form.placeholder": "Co se vám honí hlavou?",
+ "compose_form.poll.add_option": "Přidat volbu",
+ "compose_form.poll.duration": "Délka ankety",
+ "compose_form.poll.option_placeholder": "Volba {number}",
+ "compose_form.poll.remove_option": "Odstranit tuto volbu",
"compose_form.publish": "Tootnout",
"compose_form.publish_loud": "{publish}!",
"compose_form.sensitive.marked": "Mediální obsah je označen jako citlivý",
@@ -151,6 +155,9 @@
"home.column_settings.basic": "Základní",
"home.column_settings.show_reblogs": "Zobrazit boosty",
"home.column_settings.show_replies": "Zobrazit odpovědi",
+ "intervals.full.days": "{number, plural, one {# den} few {# dny} many {# dne} other {# dní}}",
+ "intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodiny} other {# hodin}}",
+ "intervals.full.minutes": "{number, plural, one {# minuta} few {# minuty} many {# minuty} other {# minut}}",
"introduction.federation.action": "Další",
"introduction.federation.federated.headline": "Federovaná",
"introduction.federation.federated.text": "Veřejné příspěvky z jiných serverů na fediverse se zobrazí na federované časové ose.",
@@ -240,6 +247,7 @@
"notification.favourite": "{name} si oblíbil/a váš toot",
"notification.follow": "{name} vás začal/a sledovat",
"notification.mention": "{name} vás zmínil/a",
+ "notification.poll": "Anketa, ve které jste hlasoval/a, skončila",
"notification.reblog": "{name} boostnul/a váš toot",
"notifications.clear": "Vymazat oznámení",
"notifications.clear_confirmation": "Jste si jistý/á, že chcete trvale vymazat všechna vaše oznámení?",
@@ -264,6 +272,8 @@
"poll.refresh": "Refresh",
"poll.total_votes": "{count, plural, one {# vote} other {# votes}}",
"poll.vote": "Vote",
+ "poll_button.add_poll": "Přidat anketu",
+ "poll_button.remove_poll": "Odstranit anketu",
"privacy.change": "Změnit soukromí tootu",
"privacy.direct.long": "Odeslat pouze zmíněným uživatelům",
"privacy.direct.short": "Přímý",
@@ -356,6 +366,7 @@
"upload_area.title": "Přetažením nahrajete",
"upload_button.label": "Přidat média (JPEG, PNG, GIF, WebM, MP4, MOV)",
"upload_error.limit": "Byl překročen limit nahraných souborů.",
+ "upload_error.poll": "Nahrávání souborů není povoleno u anket.",
"upload_form.description": "Popis pro zrakově postižené",
"upload_form.focus": "Změnit náhled",
"upload_form.undo": "Smazat",
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index 6f55531943f..b0b317ac800 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -4,29 +4,40 @@ cs:
about_hashtag_html: Tohle jsou veřejné tooty označené hashtagem #%{hashtag}. Pokud máte účet kdekoliv na fediverse, můžete s nimi interagovat.
about_mastodon_html: Mastodon je sociální síť založená na otevřených webových protokolech a svobodném, otevřeném softwaru. Je decentralizovaná jako e-mail.
about_this: O tomto serveru
+ active_count_after: aktivních
+ active_footnote: Měsíční aktivní uživatelé (MAU)
administered_by: 'Server spravuje:'
api: API
apps: Mobilní aplikace
+ apps_platforms: Používejte Mastodon z iOS, Androidu a jiných platforem
+ browse_directory: Prozkoumejte adresář profilů a filtrujte dle zájmů
+ browse_public_posts: Prozkoumejte živý proud veřejných příspěvků na Mastodonu
contact: Kontakt
contact_missing: Nenastaveno
contact_unavailable: Neuvedeno
+ discover_users: Objevujte uživatele
documentation: Dokumentace
extended_description_html: |
Dobré místo pro pravidla
Rozšířený popis ještě nebyl nastaven.
+ federation_hint_html: S účtem na %{instance} můžete sledovat lidi na jakémkoliv serveru Mastodon a jiných službách.
generic_description: "%{domain} je jedním ze serverů v síti"
+ get_apps: Vyzkoušejte mobilní aplikaci
hosted_on: Server Mastodon na adrese %{domain}
learn_more: Zjistit více
privacy_policy: Zásady soukromí
+ see_whats_happening: Podívejte se, co se děje
+ server_stats: 'Statistika serveru:'
source_code: Zdrojový kód
status_count_after:
few: tooty
one: toot
other: tootů
status_count_before: Kteří napsali
+ tagline: Sledujte své přátele a objevujte nové
terms: Podmínky používání
user_count_after:
- few: uživatelů
+ few: uživatelé
one: uživatele
other: uživatelů
user_count_before: Domov
@@ -72,6 +83,7 @@ cs:
delete: Smazat
destroyed_msg: Poznámka moderátora byla úspěšně zničena!
accounts:
+ approve: Schválit
are_you_sure: Jste si jistý/á?
avatar: Avatar
by_domain: Doména
@@ -117,6 +129,7 @@ cs:
moderation:
active: Aktivní
all: Vše
+ pending: Čekající
silenced: Utišen/a
suspended: Pozastaven/a
title: Moderace
@@ -126,6 +139,7 @@ cs:
no_limits_imposed: Nejsou nastavena žádná omezení
not_subscribed: Neodebírá
outbox_url: URL odchozích zpráv
+ pending: Čeká na posouzení
perform_full_suspension: Pozastavit
profile_url: URL profilu
promote: Povýšit
@@ -133,6 +147,7 @@ cs:
public: Veřejný
push_subscription_expires: Odebírání PuSH expiruje
redownload: Obnovit profil
+ reject: Zamítnout
remove_avatar: Odstranit avatar
remove_header: Odstranit hlavičku
resend_confirmation:
@@ -406,6 +421,12 @@ cs:
min_invite_role:
disabled: Nikdo
title: Povolit pozvánky od
+ registrations_mode:
+ modes:
+ approved: Pro registraci je vyžadováno schválení
+ none: Nikdo se nemůže registrovat
+ open: Všichni se mohou registrovat
+ title: Režim registrací
show_known_fediverse_at_about_page:
desc_html: Je-li toto zapnuto, zobrazí se v náhledu tooty ze všech známých serverů na fediverse. Jinak budou zobrazeny pouze místní tooty.
title: Zobrazit celou známou fediverse na náhledu časové osy
@@ -468,6 +489,9 @@ cs:
edit_preset: Upravit přednastavení pro varování
title: Spravovat přednastavení pro varování
admin_mailer:
+ new_pending_account:
+ body: Detaily nového účtu jsou uvedeny níže. Můžete tento požadavek schválit nebo zamítnout.
+ subject: Nový účet čekající na posouzení na %{instance} (%{username})
new_report:
body: "%{reporter} nahlásil/a uživatele %{target}"
body_remote: Někdo z %{domain} nahlásil uživatele %{target}
@@ -489,7 +513,9 @@ cs:
your_token: Váš přístupový token
auth:
agreement_html: Kliknutím na tlačítko „Registrovat“ souhlasíte s následováním pravidel tohoto serveru a našich podmínek používání.
+ apply_for_account: Vyžádat si pozvánku
change_password: Heslo
+ checkbox_agreement_html: Souhlasím s pravidly serveru a podmínkami používání
confirm_email: Potvrdit e-mail
delete_account: Odstranit účet
delete_account_html: Chcete-li odstranit svůj účet, pokračujte zde. Budete požádán/a o potvrzení.
@@ -505,10 +531,12 @@ cs:
cas: CAS
saml: SAML
register: Registrovat
+ registration_closed: "%{instance} nepřijímá nové členy"
resend_confirmation: Znovu odeslat pokyny pro potvrzení
reset_password: Obnovit heslo
security: Zabezpečení
set_new_password: Nastavit nové heslo
+ trouble_logging_in: Problémy s přihlašováním?
authorize_follow:
already_following: Tento účet již sledujete
error: Při hledání vzdáleného účtu bohužel nastala chyba
diff --git a/config/locales/devise.cs.yml b/config/locales/devise.cs.yml
index b87c7472cbb..622cb224043 100644
--- a/config/locales/devise.cs.yml
+++ b/config/locales/devise.cs.yml
@@ -12,6 +12,7 @@ cs:
last_attempt: Máte ještě jeden pokus, než bude váš účet uzamčen.
locked: Váš účet je uzamčen.
not_found_in_database: Neplatné %{authentication_keys} nebo heslo.
+ pending: Váš účet je stále posuzován.
timeout: Vaše relace vypršela. Pro pokračování se prosím přihlaste znovu.
unauthenticated: Před pokračováním se musíte přihlásit nebo registrovat.
unconfirmed: Před pokračováním musíte potvrdit svůj e-mail.
@@ -20,6 +21,7 @@ cs:
action: Potvrdit e-mailovou adresu
action_with_app: Potvrdit a navrátit se do %{app}
explanation: S touto e-mailovou adresou jste si vytvořil/a účet na %{host}. K jeho aktivaci vám zbývá jedno kliknutí. Pokud jste to nebyl/a vy, ignorujte této e-mail.
+ explanation_when_pending: S touto e-mailovou adresou jste si vyžádal/a pozvánku na %{host}. Jakmile svou e-mailovou adresu potvrdíte, posoudíme váš poadavek. Do té doby se nemůžete přihlásit. Pokud bude váš požadavek zamítnut, budou vaše data odstraněna, takže od vás nebude vyžadována žádná další akce. Pokud jste to nebyl/a vy, prosím ignorujte tento e-mail.
extra_html: Prosím podívejte se také na pravidla tohoto serveru a naše podmínky používání.
subject: 'Mastodon: Potvrzovací instrukce pro %{instance}'
title: Potvrďte e-mailovou adresu
@@ -60,6 +62,7 @@ cs:
signed_up: Vítejte! Registroval/a jste se úspěšně.
signed_up_but_inactive: Registroval/a jste se úspěšně. Nemohli jsme vás však přihlásit, protože váš účet ještě není aktivován.
signed_up_but_locked: Registroval/a jste se úspěšně. Nemohli jsme vás však přihlásit, protože váš účet je uzamčen.
+ signed_up_but_pending: Na vaši e-mailovou adresu byla poslána zpráva s potvrzovacím odkazem. Poté, co kliknete na odkaz, posoudíme váš požadavek. Pokud bude schválen, budete informován/a.
signed_up_but_unconfirmed: Na vaši e-mailovou adresu byla poslána zpráva s potvrzovacím odkazem. Pro aktivaci účtu přejděte na danou adresu. Pokud jste tento e-mail neobdržel/a, prosím zkontrolujte si složku spam.
update_needs_confirmation: Váš účet byl úspěšně aktualizován, ale je potřeba ověřit vaši novou e-mailovou adresu. Pokud tento e-mail neobdržíte, prosím zkontrolujte si složku „spam“.
updated: Váš účet byl úspěšně aktualizován.
From d94e21f933f53010f9a3b182e7fde919d73b09a0 Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Fri, 15 Mar 2019 02:39:20 +0100
Subject: [PATCH 02/20] Add a preferences API so apps can share basic
behaviours (#10109)
---
.../api/v1/preferences_controller.rb | 12 ++++++++
.../rest/preferences_serializer.rb | 30 +++++++++++++++++++
config/routes.rb | 1 +
3 files changed, 43 insertions(+)
create mode 100644 app/controllers/api/v1/preferences_controller.rb
create mode 100644 app/serializers/rest/preferences_serializer.rb
diff --git a/app/controllers/api/v1/preferences_controller.rb b/app/controllers/api/v1/preferences_controller.rb
new file mode 100644
index 00000000000..077d39f5d74
--- /dev/null
+++ b/app/controllers/api/v1/preferences_controller.rb
@@ -0,0 +1,12 @@
+# frozen_string_literal: true
+
+class Api::V1::PreferencesController < Api::BaseController
+ before_action -> { doorkeeper_authorize! :read, :'read:accounts' }
+ before_action :require_user!
+
+ respond_to :json
+
+ def index
+ render json: current_account, serializer: REST::PreferencesSerializer
+ end
+end
diff --git a/app/serializers/rest/preferences_serializer.rb b/app/serializers/rest/preferences_serializer.rb
new file mode 100644
index 00000000000..119f0e06d89
--- /dev/null
+++ b/app/serializers/rest/preferences_serializer.rb
@@ -0,0 +1,30 @@
+# frozen_string_literal: true
+
+class REST::PreferencesSerializer < ActiveModel::Serializer
+ attribute :posting_default_privacy, key: 'posting:default:visibility'
+ attribute :posting_default_sensitive, key: 'posting:default:sensitive'
+ attribute :posting_default_language, key: 'posting:default:language'
+
+ attribute :reading_default_sensitive_media, key: 'reading:expand:media'
+ attribute :reading_default_sensitive_text, key: 'reading:expand:spoilers'
+
+ def posting_default_privacy
+ object.user.setting_default_privacy
+ end
+
+ def posting_default_sensitive
+ object.user.setting_default_sensitive
+ end
+
+ def posting_default_language
+ object.user.setting_default_language.presence
+ end
+
+ def reading_default_sensitive_media
+ object.user.setting_display_media
+ end
+
+ def reading_default_sensitive_text
+ object.user.setting_expand_spoilers
+ end
+end
diff --git a/config/routes.rb b/config/routes.rb
index 4a75d69523d..1bb87526420 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -286,6 +286,7 @@ Rails.application.routes.draw do
resources :custom_emojis, only: [:index]
resources :suggestions, only: [:index, :destroy]
resources :scheduled_statuses, only: [:index, :show, :update, :destroy]
+ resources :preferences, only: [:index]
resources :conversations, only: [:index, :destroy] do
member do
From 317c43b75be027f971c1c7e28890fdd37b63e931 Mon Sep 17 00:00:00 2001
From: Yamagishi Kazutoshi
Date: Fri, 15 Mar 2019 11:53:38 +0900
Subject: [PATCH 03/20] Upgrade yargs to v12.0 (#9862)
---
config/webpack/translationRunner.js | 22 ++++++++---------
package.json | 2 +-
yarn.lock | 37 +----------------------------
3 files changed, 12 insertions(+), 49 deletions(-)
diff --git a/config/webpack/translationRunner.js b/config/webpack/translationRunner.js
index e6543fbb7f7..38050baf8d1 100644
--- a/config/webpack/translationRunner.js
+++ b/config/webpack/translationRunner.js
@@ -48,8 +48,7 @@ Use yarn "manage:translations -- --help" for usage information
}
};
-const { argv } = require('yargs')
- .usage(`Usage: yarn manage:translations -- [OPTIONS] [LANGUAGES]
+const usage = `Usage: yarn manage:translations [OPTIONS] [LANGUAGES]
Manage JavaScript translation files in Mastodon. Generates and update translations in translationsDirectory: ${translationsDirectory}
@@ -58,16 +57,15 @@ The RFC5646 language tag for the language you want to test or fix. If you want t
Available languages:
${availableLanguages.join(', ')}
-`)
- .help('h', 'show this message')
- .alias('h', 'help')
- .options({
- f: {
- alias: 'force',
- default: false,
- describe: 'force using the provided languages. create files if not exists.',
- type: 'boolean',
- },
+`;
+
+const { argv } = require('yargs')
+ .usage(usage)
+ .option('f', {
+ alias: 'force',
+ default: false,
+ describe: 'force using the provided languages. create files if not exists.',
+ type: 'boolean',
});
// check if message directory exists
diff --git a/package.json b/package.json
index 5fa6fa8b764..3d14c50cbeb 100644
--- a/package.json
+++ b/package.json
@@ -151,7 +151,7 @@
"react-intl-translations-manager": "^5.0.3",
"react-test-renderer": "^16.7.0",
"webpack-dev-server": "^3.1.14",
- "yargs": "^8.0.2"
+ "yargs": "^12.0.5"
},
"optionalDependencies": {
"fsevents": "*"
diff --git a/yarn.lock b/yarn.lock
index 9ff12a712bf..026935025a4 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2046,15 +2046,6 @@ cli-width@^2.0.0:
resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639"
integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=
-cliui@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
- integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=
- dependencies:
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wrap-ansi "^2.0.0"
-
cliui@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49"
@@ -9771,13 +9762,6 @@ yargs-parser@^11.1.1:
camelcase "^5.0.0"
decamelize "^1.2.0"
-yargs-parser@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9"
- integrity sha1-jQrELxbqVd69MyyvTEA4s+P139k=
- dependencies:
- camelcase "^4.1.0"
-
yargs-parser@^9.0.2:
version "9.0.2"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077"
@@ -9821,7 +9805,7 @@ yargs@^11.0.0:
y18n "^3.2.1"
yargs-parser "^9.0.2"
-yargs@^12.0.2:
+yargs@^12.0.2, yargs@^12.0.5:
version "12.0.5"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13"
integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==
@@ -9838,22 +9822,3 @@ yargs@^12.0.2:
which-module "^2.0.0"
y18n "^3.2.1 || ^4.0.0"
yargs-parser "^11.1.1"
-
-yargs@^8.0.2:
- version "8.0.2"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360"
- integrity sha1-YpmpBVsc78lp/355wdkY3Osiw2A=
- dependencies:
- camelcase "^4.1.0"
- cliui "^3.2.0"
- decamelize "^1.1.1"
- get-caller-file "^1.0.1"
- os-locale "^2.0.0"
- read-pkg-up "^2.0.0"
- require-directory "^2.1.1"
- require-main-filename "^1.0.1"
- set-blocking "^2.0.0"
- string-width "^2.0.0"
- which-module "^2.0.0"
- y18n "^3.2.1"
- yargs-parser "^7.0.0"
From ba84b6d4d7b2e1ccdcbfcdd5e0d09fbfdb241f45 Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Fri, 15 Mar 2019 04:36:41 +0100
Subject: [PATCH 04/20] Add `visibility` param to reblog REST API (#9851)
Use async worker for creating reblog notification to improve performance
---
app/controllers/api/v1/statuses/reblogs_controller.rb | 6 +++++-
app/models/status.rb | 1 +
app/services/reblog_service.rb | 7 ++++---
3 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/app/controllers/api/v1/statuses/reblogs_controller.rb b/app/controllers/api/v1/statuses/reblogs_controller.rb
index 04847a6b76f..ed4f551003d 100644
--- a/app/controllers/api/v1/statuses/reblogs_controller.rb
+++ b/app/controllers/api/v1/statuses/reblogs_controller.rb
@@ -9,7 +9,7 @@ class Api::V1::Statuses::ReblogsController < Api::BaseController
respond_to :json
def create
- @status = ReblogService.new.call(current_user.account, status_for_reblog)
+ @status = ReblogService.new.call(current_user.account, status_for_reblog, reblog_params)
render json: @status, serializer: REST::StatusSerializer
end
@@ -32,4 +32,8 @@ class Api::V1::Statuses::ReblogsController < Api::BaseController
def status_for_destroy
current_user.account.statuses.where(reblog_of_id: params[:status_id]).first!
end
+
+ def reblog_params
+ params.permit(:visibility)
+ end
end
diff --git a/app/models/status.rb b/app/models/status.rb
index f33130dd6cd..d029ff3cd64 100644
--- a/app/models/status.rb
+++ b/app/models/status.rb
@@ -70,6 +70,7 @@ class Status < ApplicationRecord
validates_with StatusLengthValidator
validates_with DisallowedHashtagsValidator
validates :reblog, uniqueness: { scope: :account }, if: :reblog?
+ validates :visibility, exclusion: { in: %w(direct limited) }, if: :reblog?
validates_associated :owned_poll
default_scope { recent }
diff --git a/app/services/reblog_service.rb b/app/services/reblog_service.rb
index 33ddef8b88d..ff48d9c75ce 100644
--- a/app/services/reblog_service.rb
+++ b/app/services/reblog_service.rb
@@ -7,8 +7,9 @@ class ReblogService < BaseService
# Reblog a status and notify its remote author
# @param [Account] account Account to reblog from
# @param [Status] reblogged_status Status to be reblogged
+ # @param [Hash] options
# @return [Status]
- def call(account, reblogged_status)
+ def call(account, reblogged_status, options = {})
reblogged_status = reblogged_status.reblog if reblogged_status.reblog?
authorize_with account, reblogged_status, :reblog?
@@ -17,7 +18,7 @@ class ReblogService < BaseService
return reblog unless reblog.nil?
- reblog = account.statuses.create!(reblog: reblogged_status, text: '')
+ reblog = account.statuses.create!(reblog: reblogged_status, text: '', visibility: options[:visibility] || account.user&.setting_default_privacy)
DistributionWorker.perform_async(reblog.id)
Pubsubhubbub::DistributionWorker.perform_async(reblog.stream_entry.id)
@@ -35,7 +36,7 @@ class ReblogService < BaseService
reblogged_status = reblog.reblog
if reblogged_status.account.local?
- NotifyService.new.call(reblogged_status.account, reblog)
+ LocalNotificationWorker.perform_async(reblogged_status.account_id, reblog.id, reblog.class.name)
elsif reblogged_status.account.ostatus?
NotificationWorker.perform_async(stream_entry_to_xml(reblog.stream_entry), reblog.account_id, reblogged_status.account_id)
elsif reblogged_status.account.activitypub? && !reblogged_status.account.following?(reblog.account)
From 1b167707c2ae5ebc272afc3a7515f5b236083135 Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Fri, 15 Mar 2019 05:07:09 +0100
Subject: [PATCH 05/20] Fix language detection of non-latin alphabets even at
few characters (#10276)
---
app/lib/language_detector.rb | 31 +++++++++++++++++++++++-------
spec/lib/language_detector_spec.rb | 4 ++--
2 files changed, 26 insertions(+), 9 deletions(-)
diff --git a/app/lib/language_detector.rb b/app/lib/language_detector.rb
index 58c8e206940..70a9084d1b4 100644
--- a/app/lib/language_detector.rb
+++ b/app/lib/language_detector.rb
@@ -3,7 +3,8 @@
class LanguageDetector
include Singleton
- CHARACTER_THRESHOLD = 140
+ CHARACTER_THRESHOLD = 140
+ RELIABLE_CHARACTERS_RE = /[\p{Hebrew}\p{Arabic}\p{Syriac}\p{Thaana}\p{Nko}\p{Han}\p{Katakana}\p{Hiragana}\p{Hangul}]+/m
def initialize
@identifier = CLD3::NNetLanguageIdentifier.new(1, 2048)
@@ -11,15 +12,14 @@ class LanguageDetector
def detect(text, account)
input_text = prepare_text(text)
+
return if input_text.blank?
detect_language_code(input_text) || default_locale(account)
end
def language_names
- @language_names =
- CLD3::TaskContextParams::LANGUAGE_NAMES.map { |name| iso6391(name.to_s).to_sym }
- .uniq
+ @language_names = CLD3::TaskContextParams::LANGUAGE_NAMES.map { |name| iso6391(name.to_s).to_sym }.uniq
end
private
@@ -29,12 +29,29 @@ class LanguageDetector
end
def unreliable_input?(text)
- text.size < CHARACTER_THRESHOLD
+ !reliable_input?(text)
+ end
+
+ def reliable_input?(text)
+ sufficient_text_length?(text) || language_specific_character_set?(text)
+ end
+
+ def sufficient_text_length?(text)
+ text.size >= CHARACTER_THRESHOLD
+ end
+
+ def language_specific_character_set?(text)
+ words = text.scan(RELIABLE_CHARACTERS_RE)
+
+ if words.present?
+ words.reduce(0) { |acc, elem| acc + elem.size }.to_f / text.size.to_f > 0.3
+ else
+ false
+ end
end
def detect_language_code(text)
return if unreliable_input?(text)
-
result = @identifier.find_language(text)
iso6391(result.language.to_s).to_sym if result.reliable?
end
@@ -77,6 +94,6 @@ class LanguageDetector
end
def default_locale(account)
- return account.user_locale&.to_sym || I18n.default_locale if account.local?
+ account.user_locale&.to_sym || I18n.default_locale if account.local?
end
end
diff --git a/spec/lib/language_detector_spec.rb b/spec/lib/language_detector_spec.rb
index 0fa2a59eff9..0cb70605ad4 100644
--- a/spec/lib/language_detector_spec.rb
+++ b/spec/lib/language_detector_spec.rb
@@ -106,11 +106,11 @@ describe LanguageDetector do
end
describe 'remote user' do
- it 'nil for foreign user when language is not present' do
+ it 'detects Korean language' do
string = '안녕하세요'
result = described_class.instance.detect(string, account_remote)
- expect(result).to eq nil
+ expect(result).to eq :ko
end
end
From ff565524aa6aa35c07557ea02d8d04bb3a9e1a97 Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Fri, 15 Mar 2019 05:35:17 +0100
Subject: [PATCH 06/20] Fix maxed-out invites not showing up as expired in UI
(#10274)
---
app/views/admin/invites/_invite.html.haml | 11 ++++++-----
app/views/invites/_invite.html.haml | 10 +++++-----
2 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/app/views/admin/invites/_invite.html.haml b/app/views/admin/invites/_invite.html.haml
index ee0eacaf500..e6ad9de34c9 100644
--- a/app/views/admin/invites/_invite.html.haml
+++ b/app/views/admin/invites/_invite.html.haml
@@ -10,10 +10,7 @@
= image_tag invite.user.account.avatar.url(:original), alt: '', width: 16, height: 16, class: 'avatar'
%span.username= invite.user.account.username
- - if invite.expired?
- %td{ colspan: 2 }
- = t('invites.expired')
- - else
+ - if invite.valid_for_use?
%td
= fa_icon 'user fw'
= invite.uses
@@ -24,6 +21,10 @@
- else
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
= l invite.expires_at
+ - else
+ %td{ colspan: 2 }
+ = t('invites.expired')
+
%td
- - if !invite.expired? && policy(invite).destroy?
+ - if invite.valid_for_use? && policy(invite).destroy?
= table_link_to 'times', t('invites.delete'), admin_invite_path(invite), method: :delete
diff --git a/app/views/invites/_invite.html.haml b/app/views/invites/_invite.html.haml
index 4240aa3e7e0..62799ca5be2 100644
--- a/app/views/invites/_invite.html.haml
+++ b/app/views/invites/_invite.html.haml
@@ -5,10 +5,7 @@
%input{ type: :text, maxlength: '999', spellcheck: 'false', readonly: 'true', value: public_invite_url(invite_code: invite.code) }
%button{ type: :button }= t('generic.copy')
- - if invite.expired?
- %td{ colspan: 2 }
- = t('invites.expired')
- - else
+ - if invite.valid_for_use?
%td
= fa_icon 'user fw'
= invite.uses
@@ -19,7 +16,10 @@
- else
%time.formatted{ datetime: invite.expires_at.iso8601, title: l(invite.expires_at) }
= l invite.expires_at
+ - else
+ %td{ colspan: 2 }
+ = t('invites.expired')
%td
- - if !invite.expired? && policy(invite).destroy?
+ - if invite.valid_for_use? && policy(invite).destroy?
= table_link_to 'times', t('invites.delete'), invite_path(invite), method: :delete
From c20d096e6a251e1b84ac47b751d2eb065743dbc2 Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Fri, 15 Mar 2019 05:35:45 +0100
Subject: [PATCH 07/20] Show disappointed elephant if web UI crashes (#10275)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* Do not crash the whole UI when loading an invalid column
* Add error boundary component to catch Web UI crashes
* Add stack trace on supported browsers
* Add component stack info, pre-format everything for github
* Make “Reload” a clickable link that calls window.location.reload()
* Remove elephant friend from error boundary, make title stand out more
* Simplify error boundary to only a graphic
---
.../mastodon/components/error_boundary.js | 39 +++++++++++++++++++
.../mastodon/containers/mastodon.js | 5 ++-
.../mastodon/features/ui/components/bundle.js | 5 +++
3 files changed, 48 insertions(+), 1 deletion(-)
create mode 100644 app/javascript/mastodon/components/error_boundary.js
diff --git a/app/javascript/mastodon/components/error_boundary.js b/app/javascript/mastodon/components/error_boundary.js
new file mode 100644
index 00000000000..d1ca5bf756a
--- /dev/null
+++ b/app/javascript/mastodon/components/error_boundary.js
@@ -0,0 +1,39 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import illustration from '../../images/elephant_ui_disappointed.svg';
+
+export default class ErrorBoundary extends React.PureComponent {
+
+ static propTypes = {
+ children: PropTypes.node,
+ };
+
+ state = {
+ hasError: false,
+ stackTrace: undefined,
+ componentStack: undefined,
+ }
+
+ componentDidCatch(error, info) {
+ this.setState({
+ hasError: true,
+ stackTrace: error.stack,
+ componentStack: info && info.componentStack,
+ });
+ }
+
+ render() {
+ const { hasError } = this.state;
+
+ if (!hasError) {
+ return this.props.children;
+ }
+
+ return (
+
+
+
+ );
+ }
+
+}
diff --git a/app/javascript/mastodon/containers/mastodon.js b/app/javascript/mastodon/containers/mastodon.js
index 2912540a00f..542b682821e 100644
--- a/app/javascript/mastodon/containers/mastodon.js
+++ b/app/javascript/mastodon/containers/mastodon.js
@@ -13,6 +13,7 @@ import { connectUserStream } from '../actions/streaming';
import { IntlProvider, addLocaleData } from 'react-intl';
import { getLocale } from '../locales';
import initialState from '../initial_state';
+import ErrorBoundary from '../components/error_boundary';
const { localeData, messages } = getLocale();
addLocaleData(localeData);
@@ -75,7 +76,9 @@ export default class Mastodon extends React.PureComponent {
return (
-
+
+
+
);
diff --git a/app/javascript/mastodon/features/ui/components/bundle.js b/app/javascript/mastodon/features/ui/components/bundle.js
index e7d93525175..a60ace35ba6 100644
--- a/app/javascript/mastodon/features/ui/components/bundle.js
+++ b/app/javascript/mastodon/features/ui/components/bundle.js
@@ -53,6 +53,11 @@ class Bundle extends React.PureComponent {
const { fetchComponent, onFetch, onFetchSuccess, onFetchFail, renderDelay } = props || this.props;
const cachedMod = Bundle.cache.get(fetchComponent);
+ if (fetchComponent === undefined) {
+ this.setState({ mod: null });
+ return Promise.resolve();
+ }
+
onFetch();
if (cachedMod) {
From 3ad3223b466d8afbe8d11160a7351b34fe12c97a Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Fri, 15 Mar 2019 13:36:38 +0100
Subject: [PATCH 08/20] Fix detailed poll validation errors not being returned
in the API (#10261)
No more "Owned poll is invalid"
---
app/models/status.rb | 3 ++-
app/services/post_status_service.rb | 18 +++++++++---------
config/locales/activerecord.en.yml | 3 +++
3 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/app/models/status.rb b/app/models/status.rb
index d029ff3cd64..57116794361 100644
--- a/app/models/status.rb
+++ b/app/models/status.rb
@@ -71,7 +71,8 @@ class Status < ApplicationRecord
validates_with DisallowedHashtagsValidator
validates :reblog, uniqueness: { scope: :account }, if: :reblog?
validates :visibility, exclusion: { in: %w(direct limited) }, if: :reblog?
- validates_associated :owned_poll
+
+ accepts_nested_attributes_for :owned_poll
default_scope { recent }
diff --git a/app/services/post_status_service.rb b/app/services/post_status_service.rb
index a1705a6adcf..3f392a6e6d2 100644
--- a/app/services/post_status_service.rb
+++ b/app/services/post_status_service.rb
@@ -29,7 +29,6 @@ class PostStatusService < BaseService
return idempotency_duplicate if idempotency_given? && idempotency_duplicate?
validate_media!
- validate_poll!
preprocess_attributes!
if scheduled?
@@ -71,6 +70,7 @@ class PostStatusService < BaseService
def schedule_status!
status_for_validation = @account.statuses.build(status_attributes)
+
if status_for_validation.valid?
status_for_validation.destroy
@@ -103,12 +103,6 @@ class PostStatusService < BaseService
raise Mastodon::ValidationError, I18n.t('media_attachments.validations.images_and_video') if @media.size > 1 && @media.find(&:video?)
end
- def validate_poll!
- return if @options[:poll].blank?
-
- @poll = @account.polls.new(@options[:poll])
- end
-
def language_from_option(str)
ISO_639.find(str)&.alpha2
end
@@ -161,13 +155,13 @@ class PostStatusService < BaseService
text: @text,
media_attachments: @media || [],
thread: @in_reply_to,
- owned_poll: @poll,
+ owned_poll_attributes: poll_attributes,
sensitive: (@options[:sensitive].nil? ? @account.user&.setting_default_sensitive : @options[:sensitive]) || @options[:spoiler_text].present?,
spoiler_text: @options[:spoiler_text] || '',
visibility: @visibility,
language: language_from_option(@options[:language]) || @account.user&.setting_default_language&.presence || LanguageDetector.instance.detect(@text, @account),
application: @options[:application],
- }
+ }.compact
end
def scheduled_status_attributes
@@ -178,6 +172,12 @@ class PostStatusService < BaseService
}
end
+ def poll_attributes
+ return if @options[:poll].blank?
+
+ @options[:poll].merge(account: @account)
+ end
+
def scheduled_options
@options.tap do |options_hash|
options_hash[:in_reply_to_id] = options_hash.delete(:thread)&.id
diff --git a/config/locales/activerecord.en.yml b/config/locales/activerecord.en.yml
index 428aaf72734..561ce68b898 100644
--- a/config/locales/activerecord.en.yml
+++ b/config/locales/activerecord.en.yml
@@ -1,6 +1,9 @@
---
en:
activerecord:
+ attributes:
+ status:
+ owned_poll: Poll
errors:
models:
account:
From 2e7b2b4da9298322dcf5493a80316a1d5650b761 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]"
Date: Fri, 15 Mar 2019 14:53:24 +0100
Subject: [PATCH 09/20] Bump oj from 3.7.9 to 3.7.10 (#10278)
Bumps [oj](https://github.com/ohler55/oj) from 3.7.9 to 3.7.10.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.7.9...v3.7.10)
Signed-off-by: dependabot[bot]
---
Gemfile.lock | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Gemfile.lock b/Gemfile.lock
index 9f9e23a3de0..36401e08d03 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -363,7 +363,7 @@ GEM
concurrent-ruby (~> 1.0, >= 1.0.2)
sidekiq (>= 3.5)
statsd-ruby (~> 1.4, >= 1.4.0)
- oj (3.7.9)
+ oj (3.7.10)
omniauth (1.9.0)
hashie (>= 3.4.6, < 3.7.0)
rack (>= 1.6.2, < 3)
From 5a9978f02a70a0d0011255d429c2312fbe0b6935 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]"
Date: Fri, 15 Mar 2019 14:53:34 +0100
Subject: [PATCH 10/20] Bump aws-sdk-s3 from 1.31.0 to 1.32.0 (#10279)
Bumps [aws-sdk-s3](https://github.com/aws/aws-sdk-ruby) from 1.31.0 to 1.32.0.
- [Release notes](https://github.com/aws/aws-sdk-ruby/releases)
- [Changelog](https://github.com/aws/aws-sdk-ruby/blob/master/gems/aws-sdk-s3/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-ruby/compare/1.31.0...v1.32.0)
Signed-off-by: dependabot[bot]
---
Gemfile | 2 +-
Gemfile.lock | 27 +++++++++++++++------------
2 files changed, 16 insertions(+), 13 deletions(-)
diff --git a/Gemfile b/Gemfile
index 9c00e90c151..940259bdd1f 100644
--- a/Gemfile
+++ b/Gemfile
@@ -15,7 +15,7 @@ gem 'makara', '~> 0.4'
gem 'pghero', '~> 2.2'
gem 'dotenv-rails', '~> 2.7'
-gem 'aws-sdk-s3', '~> 1.31', require: false
+gem 'aws-sdk-s3', '~> 1.32', require: false
gem 'fog-core', '<= 2.1.0'
gem 'fog-openstack', '~> 0.3', require: false
gem 'paperclip', '~> 6.0'
diff --git a/Gemfile.lock b/Gemfile.lock
index 36401e08d03..e56fa66c1ce 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -75,21 +75,23 @@ GEM
encryptor (~> 3.0.0)
av (0.9.0)
cocaine (~> 0.5.3)
- aws-eventstream (1.0.1)
- aws-partitions (1.143.0)
- aws-sdk-core (3.46.2)
- aws-eventstream (~> 1.0)
+ aws-eventstream (1.0.2)
+ aws-partitions (1.144.0)
+ aws-sdk-core (3.47.0)
+ aws-eventstream (~> 1.0, >= 1.0.2)
aws-partitions (~> 1.0)
- aws-sigv4 (~> 1.0)
+ aws-sigv4 (~> 1.1)
+ http-2 (~> 0.10)
jmespath (~> 1.0)
- aws-sdk-kms (1.13.0)
- aws-sdk-core (~> 3, >= 3.39.0)
- aws-sigv4 (~> 1.0)
- aws-sdk-s3 (1.31.0)
- aws-sdk-core (~> 3, >= 3.39.0)
+ aws-sdk-kms (1.14.0)
+ aws-sdk-core (~> 3, >= 3.47.0)
+ aws-sigv4 (~> 1.1)
+ aws-sdk-s3 (1.32.0)
+ aws-sdk-core (~> 3, >= 3.47.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.0)
- aws-sigv4 (1.0.3)
+ aws-sigv4 (1.1.0)
+ aws-eventstream (~> 1.0, >= 1.0.2)
bcrypt (3.1.12)
benchmark-ips (2.7.2)
better_errors (2.5.1)
@@ -257,6 +259,7 @@ GEM
hiredis (0.6.3)
hkdf (0.3.0)
htmlentities (4.3.4)
+ http-2 (0.10.1)
http (3.3.0)
addressable (~> 2.3)
http-cookie (~> 1.0)
@@ -659,7 +662,7 @@ DEPENDENCIES
active_record_query_trace (~> 1.6)
addressable (~> 2.6)
annotate (~> 2.7)
- aws-sdk-s3 (~> 1.31)
+ aws-sdk-s3 (~> 1.32)
better_errors (~> 2.5)
binding_of_caller (~> 0.7)
bootsnap (~> 1.4)
From 8347479f5d801b6b9756e804b62e04e517fed196 Mon Sep 17 00:00:00 2001
From: Yamagishi Kazutoshi
Date: Fri, 15 Mar 2019 23:05:31 +0900
Subject: [PATCH 11/20] Bump webpacker from 3.5.5 to 4.0.2 (#10277)
Bumps [webpacker](https://github.com/rails/webpacker) from 3.5.5 to 4.0.2.
- [Release notes](https://github.com/rails/webpacker/releases)
- [Changelog](https://github.com/rails/webpacker/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/webpacker/compare/v3.5.5...v4.0.2)
Signed-off-by: dependabot[bot]
Co-authored-by: Yamagishi Kazutoshi
---
Gemfile | 2 +-
Gemfile.lock | 6 +-
app/serializers/rest/instance_serializer.rb | 2 +-
app/serializers/rss/account_serializer.rb | 2 +-
app/serializers/rss/tag_serializer.rb | 2 +-
app/views/about/more.html.haml | 4 +-
app/views/about/show.html.haml | 4 +-
app/views/application/_sidebar.html.haml | 2 +-
app/views/home/index.html.haml | 2 +-
app/views/layouts/admin.html.haml | 2 +-
app/views/layouts/auth.html.haml | 2 +-
app/views/layouts/mailer.html.haml | 4 +-
app/views/layouts/public.html.haml | 2 +-
.../notification_mailer/favourite.html.haml | 2 +-
.../notification_mailer/follow.html.haml | 2 +-
.../follow_request.html.haml | 2 +-
.../notification_mailer/mention.html.haml | 2 +-
.../notification_mailer/reblog.html.haml | 2 +-
app/views/shared/_og.html.haml | 2 +-
app/views/user_mailer/backup_ready.html.haml | 2 +-
.../confirmation_instructions.html.haml | 2 +-
app/views/user_mailer/email_changed.html.haml | 2 +-
.../user_mailer/password_change.html.haml | 2 +-
.../reconfirmation_instructions.html.haml | 2 +-
.../reset_password_instructions.html.haml | 2 +-
app/views/user_mailer/warning.html.haml | 2 +-
app/views/user_mailer/welcome.html.haml | 2 +-
bin/webpack | 6 +-
bin/webpack-dev-server | 6 +-
config/webpack/configuration.js | 4 +-
config/webpack/development.js | 40 +-
config/webpack/loaders/assets.js | 12 -
config/webpack/loaders/babel.js | 12 -
config/webpack/loaders/babel_external.js | 21 -
config/webpack/production.js | 28 +-
config/webpack/rules/babel.js | 21 +
.../webpack/{loaders/sass.js => rules/css.js} | 9 +-
config/webpack/rules/file.js | 20 +
config/webpack/rules/index.js | 14 +
config/webpack/{loaders => rules}/mark.js | 0
config/webpack/rules/node_modules.js | 26 +
config/webpack/shared.js | 17 +-
config/webpacker.yml | 45 +-
jest.config.js | 29 -
package.json | 80 +-
yarn.lock | 2852 ++++++++---------
46 files changed, 1655 insertions(+), 1651 deletions(-)
delete mode 100644 config/webpack/loaders/assets.js
delete mode 100644 config/webpack/loaders/babel.js
delete mode 100644 config/webpack/loaders/babel_external.js
create mode 100644 config/webpack/rules/babel.js
rename config/webpack/{loaders/sass.js => rules/css.js} (70%)
create mode 100644 config/webpack/rules/file.js
create mode 100644 config/webpack/rules/index.js
rename config/webpack/{loaders => rules}/mark.js (100%)
create mode 100644 config/webpack/rules/node_modules.js
delete mode 100644 jest.config.js
diff --git a/Gemfile b/Gemfile
index 940259bdd1f..6a848cee7ff 100644
--- a/Gemfile
+++ b/Gemfile
@@ -86,7 +86,7 @@ gem 'tty-command', '~> 0.8', require: false
gem 'tty-prompt', '~> 0.18', require: false
gem 'twitter-text', '~> 1.14'
gem 'tzinfo-data', '~> 1.2018'
-gem 'webpacker', '~> 3.5'
+gem 'webpacker', '~> 4.0'
gem 'webpush'
gem 'json-ld', '~> 3.0'
diff --git a/Gemfile.lock b/Gemfile.lock
index e56fa66c1ce..e5542dd93b5 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -433,7 +433,7 @@ GEM
rack-cors (1.0.2)
rack-protection (2.0.5)
rack
- rack-proxy (0.6.4)
+ rack-proxy (0.6.5)
rack
rack-test (1.1.0)
rack (>= 1.0, < 3)
@@ -640,7 +640,7 @@ GEM
addressable (>= 2.3.6)
crack (>= 0.3.2)
hashdiff
- webpacker (3.5.5)
+ webpacker (4.0.2)
activesupport (>= 4.2)
rack-proxy (>= 0.6.1)
railties (>= 4.2)
@@ -772,7 +772,7 @@ DEPENDENCIES
twitter-text (~> 1.14)
tzinfo-data (~> 1.2018)
webmock (~> 3.5)
- webpacker (~> 3.5)
+ webpacker (~> 4.0)
webpush
RUBY VERSION
diff --git a/app/serializers/rest/instance_serializer.rb b/app/serializers/rest/instance_serializer.rb
index f6be9dbe8ea..a82eff195fd 100644
--- a/app/serializers/rest/instance_serializer.rb
+++ b/app/serializers/rest/instance_serializer.rb
@@ -32,7 +32,7 @@ class REST::InstanceSerializer < ActiveModel::Serializer
end
def thumbnail
- instance_presenter.thumbnail ? full_asset_url(instance_presenter.thumbnail.file.url) : full_pack_url('preview.jpg')
+ instance_presenter.thumbnail ? full_asset_url(instance_presenter.thumbnail.file.url) : full_pack_url('media/images/preview.jpg')
end
def stats
diff --git a/app/serializers/rss/account_serializer.rb b/app/serializers/rss/account_serializer.rb
index 712b1347ad4..88eca79ed23 100644
--- a/app/serializers/rss/account_serializer.rb
+++ b/app/serializers/rss/account_serializer.rb
@@ -11,7 +11,7 @@ class RSS::AccountSerializer
builder.title("#{display_name(account)} (@#{account.local_username_and_domain})")
.description(account_description(account))
.link(TagManager.instance.url_for(account))
- .logo(full_asset_url(asset_pack_path('logo.svg')))
+ .logo(full_pack_url('media/images/logo.svg'))
.accent_color('2b90d9')
builder.image(full_asset_url(account.avatar.url(:original))) if account.avatar?
diff --git a/app/serializers/rss/tag_serializer.rb b/app/serializers/rss/tag_serializer.rb
index 7680a8da55c..644380149ba 100644
--- a/app/serializers/rss/tag_serializer.rb
+++ b/app/serializers/rss/tag_serializer.rb
@@ -12,7 +12,7 @@ class RSS::TagSerializer
builder.title("##{tag.name}")
.description(strip_tags(I18n.t('about.about_hashtag_html', hashtag: tag.name)))
.link(tag_url(tag))
- .logo(full_asset_url(asset_pack_path('logo.svg')))
+ .logo(full_pack_url('media/images/logo.svg'))
.accent_color('2b90d9')
statuses.each do |status|
diff --git a/app/views/about/more.html.haml b/app/views/about/more.html.haml
index f94c7c06f8c..b248ed1d230 100644
--- a/app/views/about/more.html.haml
+++ b/app/views/about/more.html.haml
@@ -9,7 +9,7 @@
.column-0
.public-account-header.public-account-header--no-bar
.public-account-header__image
- = image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('preview.jpg'), alt: @instance_presenter.site_title, class: 'parallax'
+ = image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('media/images/preview.jpg'), alt: @instance_presenter.site_title, class: 'parallax'
.column-1
.landing-page__call-to-action{ dir: 'ltr' }
@@ -25,7 +25,7 @@
%span= t 'about.status_count_after', count: @instance_presenter.status_count
.row__mascot
.landing-page__mascot
- = image_tag @instance_presenter.mascot&.file&.url || asset_pack_path('elephant_ui_plane.svg'), alt: ''
+ = image_tag @instance_presenter.mascot&.file&.url || asset_pack_path('media/images/elephant_ui_plane.svg'), alt: ''
.column-2
.landing-page__information.contact-widget
diff --git a/app/views/about/show.html.haml b/app/views/about/show.html.haml
index 15d0af64e74..21dcf226d23 100644
--- a/app/views/about/show.html.haml
+++ b/app/views/about/show.html.haml
@@ -8,7 +8,7 @@
.landing
.landing__brand
= link_to root_url, class: 'brand' do
- = image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon'
+ = image_pack_tag 'logo_full.svg', alt: 'Mastodon'
%span.brand__tagline=t 'about.tagline'
.landing__grid
@@ -48,7 +48,7 @@
.hero-widget
.hero-widget__img
- = image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('preview.jpg'), alt: @instance_presenter.site_title
+ = image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('media/images/preview.jpg'), alt: @instance_presenter.site_title
- if @instance_presenter.site_short_description.present?
.hero-widget__text
diff --git a/app/views/application/_sidebar.html.haml b/app/views/application/_sidebar.html.haml
index 2ff14b2526f..b5ce5845e3e 100644
--- a/app/views/application/_sidebar.html.haml
+++ b/app/views/application/_sidebar.html.haml
@@ -1,6 +1,6 @@
.hero-widget
.hero-widget__img
- = image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('preview.jpg'), alt: @instance_presenter.site_title
+ = image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('media/images/preview.jpg'), alt: @instance_presenter.site_title
.hero-widget__text
%p= @instance_presenter.site_short_description.html_safe.presence || @instance_presenter.site_description.html_safe.presence || t('about.generic_description', domain: site_hostname)
diff --git a/app/views/home/index.html.haml b/app/views/home/index.html.haml
index 6f3a6942e93..4c7fac0b6ae 100644
--- a/app/views/home/index.html.haml
+++ b/app/views/home/index.html.haml
@@ -11,7 +11,7 @@
.app-holder#mastodon{ data: { props: Oj.dump(default_props) } }
%noscript
- = image_tag asset_pack_path('logo.svg'), alt: 'Mastodon'
+ = image_pack_tag 'logo.svg', alt: 'Mastodon'
%div
= t('errors.noscript_html', apps_path: 'https://joinmastodon.org/apps')
diff --git a/app/views/layouts/admin.html.haml b/app/views/layouts/admin.html.haml
index 6ce67d91e70..083f2fac764 100644
--- a/app/views/layouts/admin.html.haml
+++ b/app/views/layouts/admin.html.haml
@@ -6,7 +6,7 @@
.sidebar-wrapper
.sidebar
= link_to root_path do
- = image_tag asset_pack_path('logo.svg'), class: 'logo', alt: 'Mastodon'
+ = image_pack_tag 'logo.svg', class: 'logo', alt: 'Mastodon'
= render_navigation
.content-wrapper
diff --git a/app/views/layouts/auth.html.haml b/app/views/layouts/auth.html.haml
index eb8949f988a..aa1990972a6 100644
--- a/app/views/layouts/auth.html.haml
+++ b/app/views/layouts/auth.html.haml
@@ -6,7 +6,7 @@
.logo-container
%h1
= link_to root_path do
- = image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon'
+ = image_pack_tag 'logo_full.svg', alt: 'Mastodon'
.form-container
= render 'flashes'
diff --git a/app/views/layouts/mailer.html.haml b/app/views/layouts/mailer.html.haml
index e401df10fd5..4ffe3d79a9b 100644
--- a/app/views/layouts/mailer.html.haml
+++ b/app/views/layouts/mailer.html.haml
@@ -24,7 +24,7 @@
%tr
%td.column-cell
= link_to root_url do
- = image_tag full_pack_url('logo_full.png'), alt: 'Mastodon', height: 34, class: 'logo'
+ = image_tag full_pack_url('media/images/mailer/logo_full.png'), alt: 'Mastodon', height: 34, class: 'logo'
= yield
@@ -49,4 +49,4 @@
%p= link_to t('application_mailer.notification_preferences'), settings_notifications_url
%td.column-cell.text-right
= link_to root_url do
- = image_tag full_pack_url('logo_transparent.png'), alt: 'Mastodon', height: 24
+ = image_tag full_pack_url('media/images/mailer/logo_transparent.png'), alt: 'Mastodon', height: 24
diff --git a/app/views/layouts/public.html.haml b/app/views/layouts/public.html.haml
index 2a73973f645..d30b2a3ea6c 100644
--- a/app/views/layouts/public.html.haml
+++ b/app/views/layouts/public.html.haml
@@ -8,7 +8,7 @@
%nav.header
.nav-left
= link_to root_url, class: 'brand' do
- = image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon'
+ = image_pack_tag 'logo_full.svg', alt: 'Mastodon'
= link_to t('directories.directory'), explore_path, class: 'nav-link optional' if Setting.profile_directory
= link_to t('about.about_this'), about_more_path, class: 'nav-link optional'
diff --git a/app/views/notification_mailer/favourite.html.haml b/app/views/notification_mailer/favourite.html.haml
index 7d1b494d096..a715d615ce8 100644
--- a/app/views/notification_mailer/favourite.html.haml
+++ b/app/views/notification_mailer/favourite.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_grade.png'), alt:''
+ = image_tag full_pack_url('media/images/mailer/icon_grade.png'), alt:''
%h1= t 'notification_mailer.favourite.title'
%p.lead= t('notification_mailer.favourite.body', name: @account.acct)
diff --git a/app/views/notification_mailer/follow.html.haml b/app/views/notification_mailer/follow.html.haml
index 31a2b744540..cd84f785847 100644
--- a/app/views/notification_mailer/follow.html.haml
+++ b/app/views/notification_mailer/follow.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_person_add.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_person_add.png'), alt: ''
%h1= t 'notification_mailer.follow.title'
%p.lead= t('notification_mailer.follow.body', name: @account.acct)
diff --git a/app/views/notification_mailer/follow_request.html.haml b/app/views/notification_mailer/follow_request.html.haml
index 44f1911c403..a63e27a909e 100644
--- a/app/views/notification_mailer/follow_request.html.haml
+++ b/app/views/notification_mailer/follow_request.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_person_add.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_person_add.png'), alt: ''
%h1= t 'notification_mailer.follow_request.title'
%p.lead= t('notification_mailer.follow_request.body', name: @account.acct)
diff --git a/app/views/notification_mailer/mention.html.haml b/app/views/notification_mailer/mention.html.haml
index 479fed41ccd..619873cfa3a 100644
--- a/app/views/notification_mailer/mention.html.haml
+++ b/app/views/notification_mailer/mention.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_reply.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_reply.png'), alt: ''
%h1= t 'notification_mailer.mention.title'
%p.lead= t('notification_mailer.mention.body', name: @status.account.acct)
diff --git a/app/views/notification_mailer/reblog.html.haml b/app/views/notification_mailer/reblog.html.haml
index 85b202cf932..a2811be2326 100644
--- a/app/views/notification_mailer/reblog.html.haml
+++ b/app/views/notification_mailer/reblog.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_cached.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_cached.png'), alt: ''
%h1= t 'notification_mailer.reblog.title'
%p.lead= t('notification_mailer.reblog.body', name: @account.acct)
diff --git a/app/views/shared/_og.html.haml b/app/views/shared/_og.html.haml
index 802d8c41d45..67238fc8bf8 100644
--- a/app/views/shared/_og.html.haml
+++ b/app/views/shared/_og.html.haml
@@ -8,7 +8,7 @@
= opengraph 'og:type', 'website'
= opengraph 'og:title', @instance_presenter.site_title
= opengraph 'og:description', description
-= opengraph 'og:image', full_asset_url(thumbnail&.file&.url || asset_pack_path('preview.jpg', protocol: :request))
+= opengraph 'og:image', full_asset_url(thumbnail&.file&.url || asset_pack_path('media/images/preview.jpg', protocol: :request))
= opengraph 'og:image:width', thumbnail ? thumbnail.meta['width'] : '1200'
= opengraph 'og:image:height', thumbnail ? thumbnail.meta['height'] : '630'
= opengraph 'twitter:card', 'summary_large_image'
diff --git a/app/views/user_mailer/backup_ready.html.haml b/app/views/user_mailer/backup_ready.html.haml
index d5a4b8b48b6..85140b08be3 100644
--- a/app/views/user_mailer/backup_ready.html.haml
+++ b/app/views/user_mailer/backup_ready.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_file_download.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_file_download.png'), alt: ''
%h1= t 'user_mailer.backup_ready.title'
diff --git a/app/views/user_mailer/confirmation_instructions.html.haml b/app/views/user_mailer/confirmation_instructions.html.haml
index 70d0f5a24aa..39a83faff83 100644
--- a/app/views/user_mailer/confirmation_instructions.html.haml
+++ b/app/views/user_mailer/confirmation_instructions.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_email.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_email.png'), alt: ''
%h1= t 'devise.mailer.confirmation_instructions.title'
diff --git a/app/views/user_mailer/email_changed.html.haml b/app/views/user_mailer/email_changed.html.haml
index 0802aaf968c..7e91e87ad10 100644
--- a/app/views/user_mailer/email_changed.html.haml
+++ b/app/views/user_mailer/email_changed.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_email.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_email.png'), alt: ''
%h1= t 'devise.mailer.email_changed.title'
%p.lead= t 'devise.mailer.email_changed.explanation'
diff --git a/app/views/user_mailer/password_change.html.haml b/app/views/user_mailer/password_change.html.haml
index 26314a21793..559abf027c9 100644
--- a/app/views/user_mailer/password_change.html.haml
+++ b/app/views/user_mailer/password_change.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_lock_open.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_lock_open.png'), alt: ''
%h1= t 'devise.mailer.password_change.title'
%p.lead= t 'devise.mailer.password_change.explanation'
diff --git a/app/views/user_mailer/reconfirmation_instructions.html.haml b/app/views/user_mailer/reconfirmation_instructions.html.haml
index e3be8e295e6..7f10ba94fdd 100644
--- a/app/views/user_mailer/reconfirmation_instructions.html.haml
+++ b/app/views/user_mailer/reconfirmation_instructions.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_email.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_email.png'), alt: ''
%h1= t 'devise.mailer.reconfirmation_instructions.title'
%p.lead= t 'devise.mailer.reconfirmation_instructions.explanation'
diff --git a/app/views/user_mailer/reset_password_instructions.html.haml b/app/views/user_mailer/reset_password_instructions.html.haml
index 5d9ce6a7534..eeed38c9e4e 100644
--- a/app/views/user_mailer/reset_password_instructions.html.haml
+++ b/app/views/user_mailer/reset_password_instructions.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_lock_open.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_lock_open.png'), alt: ''
%h1= t 'devise.mailer.reset_password_instructions.title'
%p.lead= t 'devise.mailer.reset_password_instructions.explanation'
diff --git a/app/views/user_mailer/warning.html.haml b/app/views/user_mailer/warning.html.haml
index c5e1f5a2898..72ea5e5d28f 100644
--- a/app/views/user_mailer/warning.html.haml
+++ b/app/views/user_mailer/warning.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_warning.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_warning.png'), alt: ''
%h1= t "user_mailer.warning.title.#{@warning.action}"
diff --git a/app/views/user_mailer/welcome.html.haml b/app/views/user_mailer/welcome.html.haml
index 4a5788bf6e5..1f75ff48ae4 100644
--- a/app/views/user_mailer/welcome.html.haml
+++ b/app/views/user_mailer/welcome.html.haml
@@ -17,7 +17,7 @@
%tbody
%tr
%td
- = image_tag full_pack_url('icon_done.png'), alt: ''
+ = image_tag full_pack_url('media/images/mailer/icon_done.png'), alt: ''
%h1= t 'user_mailer.welcome.title', name: @resource.account.username
%p.lead= t 'user_mailer.welcome.explanation'
diff --git a/bin/webpack b/bin/webpack
index 465832722c9..008ecb22f7c 100755
--- a/bin/webpack
+++ b/bin/webpack
@@ -12,4 +12,8 @@ require "bundler/setup"
require "webpacker"
require "webpacker/webpack_runner"
-Webpacker::WebpackRunner.run(ARGV)
+
+APP_ROOT = File.expand_path("..", __dir__)
+Dir.chdir(APP_ROOT) do
+ Webpacker::WebpackRunner.run(ARGV)
+end
diff --git a/bin/webpack-dev-server b/bin/webpack-dev-server
index faa69f07800..a931a9b7fc2 100755
--- a/bin/webpack-dev-server
+++ b/bin/webpack-dev-server
@@ -12,4 +12,8 @@ require "bundler/setup"
require "webpacker"
require "webpacker/dev_server_runner"
-Webpacker::DevServerRunner.run(ARGV)
+
+APP_ROOT = File.expand_path("..", __dir__)
+Dir.chdir(APP_ROOT) do
+ Webpacker::DevServerRunner.run(ARGV)
+end
diff --git a/config/webpack/configuration.js b/config/webpack/configuration.js
index 4d325a82877..80a094c724e 100644
--- a/config/webpack/configuration.js
+++ b/config/webpack/configuration.js
@@ -1,12 +1,11 @@
// Common configuration for webpacker loaded from config/webpacker.yml
-const { join, resolve } = require('path');
+const { resolve } = require('path');
const { env } = require('process');
const { safeLoad } = require('js-yaml');
const { readFileSync } = require('fs');
const configPath = resolve('config', 'webpacker.yml');
-const loadersDir = join(__dirname, 'loaders');
const settings = safeLoad(readFileSync(configPath), 'utf8')[env.RAILS_ENV || env.NODE_ENV];
const themePath = resolve('config', 'themes.yml');
@@ -37,6 +36,5 @@ module.exports = {
CDN_HOST: env.CDN_HOST,
NODE_ENV: env.NODE_ENV,
},
- loadersDir,
output,
};
diff --git a/config/webpack/development.js b/config/webpack/development.js
index d54d919eca5..1e50a4f468e 100644
--- a/config/webpack/development.js
+++ b/config/webpack/development.js
@@ -1,12 +1,10 @@
// Note: You must restart bin/webpack-dev-server for changes to take effect
const merge = require('webpack-merge');
-const sharedConfig = require('./shared.js');
-const { settings, output } = require('./configuration.js');
+const sharedConfig = require('./shared');
+const { settings, output } = require('./configuration');
-const watchOptions = {
- ignored: /node_modules/,
-};
+const watchOptions = {};
if (process.env.VAGRANT) {
// If we are in Vagrant, we can't rely on inotify to update us with changed
@@ -17,7 +15,7 @@ if (process.env.VAGRANT) {
module.exports = merge(sharedConfig, {
mode: 'development',
-
+ cache: true,
devtool: 'cheap-module-eval-source-map',
stats: {
@@ -30,15 +28,33 @@ module.exports = merge(sharedConfig, {
devServer: {
clientLogLevel: 'none',
- https: settings.dev_server.https,
+ compress: settings.dev_server.compress,
+ quiet: settings.dev_server.quiet,
+ disableHostCheck: settings.dev_server.disable_host_check,
host: settings.dev_server.host,
port: settings.dev_server.port,
+ https: settings.dev_server.https,
+ hot: settings.dev_server.hmr,
contentBase: output.path,
+ inline: settings.dev_server.inline,
+ useLocalIp: settings.dev_server.use_local_ip,
+ public: settings.dev_server.public,
publicPath: output.publicPath,
- compress: true,
- headers: { 'Access-Control-Allow-Origin': '*' },
- historyApiFallback: true,
- disableHostCheck: true,
- watchOptions: watchOptions,
+ historyApiFallback: {
+ disableDotRule: true,
+ },
+ headers: settings.dev_server.headers,
+ overlay: settings.dev_server.overlay,
+ stats: {
+ entrypoints: false,
+ errorDetails: false,
+ modules: false,
+ moduleTrace: false,
+ },
+ watchOptions: Object.assign(
+ {},
+ settings.dev_server.watch_options,
+ watchOptions
+ ),
},
});
diff --git a/config/webpack/loaders/assets.js b/config/webpack/loaders/assets.js
deleted file mode 100644
index 643b3eeb0a8..00000000000
--- a/config/webpack/loaders/assets.js
+++ /dev/null
@@ -1,12 +0,0 @@
-const { env, publicPath } = require('../configuration.js');
-
-module.exports = {
- test: /\.(jpg|jpeg|png|gif|svg|eot|ttf|woff|woff2)$/i,
- use: [{
- loader: 'file-loader',
- options: {
- publicPath,
- name: env.NODE_ENV === 'production' ? '[name]-[hash].[ext]' : '[name].[ext]',
- },
- }],
-};
diff --git a/config/webpack/loaders/babel.js b/config/webpack/loaders/babel.js
deleted file mode 100644
index 7509617fdaa..00000000000
--- a/config/webpack/loaders/babel.js
+++ /dev/null
@@ -1,12 +0,0 @@
-const { resolve } = require('path');
-
-const env = process.env.NODE_ENV || 'development';
-
-module.exports = {
- test: /\.js$/,
- exclude: /node_modules/,
- loader: 'babel-loader',
- options: {
- cacheDirectory: env === 'development' ? false : resolve(__dirname, '..', '..', '..', 'tmp', 'cache', 'babel-loader'),
- },
-};
diff --git a/config/webpack/loaders/babel_external.js b/config/webpack/loaders/babel_external.js
deleted file mode 100644
index 39e74ed90a5..00000000000
--- a/config/webpack/loaders/babel_external.js
+++ /dev/null
@@ -1,21 +0,0 @@
-const { resolve } = require('path');
-
-const env = process.env.NODE_ENV || 'development';
-
-if (env === 'development') {
- module.exports = {};
-} else {
- // babel options to apply only to external libraries, e.g. remove-prop-types
- module.exports = {
- test: /\.js$/,
- include: /node_modules/,
- loader: 'babel-loader',
- options: {
- babelrc: false,
- plugins: [
- 'transform-react-remove-prop-types',
- ],
- cacheDirectory: env === 'development' ? false : resolve(__dirname, '..', '..', '..', 'tmp', 'cache', 'babel-loader-external'),
- },
- };
-}
diff --git a/config/webpack/production.js b/config/webpack/production.js
index d37e11792b5..cae978fcb30 100644
--- a/config/webpack/production.js
+++ b/config/webpack/production.js
@@ -1,15 +1,15 @@
// Note: You must restart bin/webpack-dev-server for changes to take effect
+const path = require('path');
+const { URL } = require('url');
const merge = require('webpack-merge');
+const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer');
+const OfflinePlugin = require('offline-plugin');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
const CompressionPlugin = require('compression-webpack-plugin');
const zopfli = require('@gfx/zopfli');
-const sharedConfig = require('./shared.js');
-const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
-const OfflinePlugin = require('offline-plugin');
-const { publicPath } = require('./configuration.js');
-const path = require('path');
-const { URL } = require('url');
+const { output } = require('./configuration');
+const sharedConfig = require('./shared');
let attachmentHost;
@@ -28,15 +28,9 @@ if (process.env.S3_ENABLED === 'true') {
module.exports = merge(sharedConfig, {
mode: 'production',
-
- output: {
- filename: '[name]-[chunkhash].js',
- chunkFilename: '[name]-[chunkhash].js',
- },
-
- devtool: 'source-map', // separate sourcemap file, suitable for production
+ devtool: 'source-map',
stats: 'normal',
-
+ bail: true,
optimization: {
minimize: true,
minimizer: [
@@ -60,10 +54,12 @@ module.exports = merge(sharedConfig, {
plugins: [
new CompressionPlugin({
+ filename: '[path].gz[query]',
algorithm(input, compressionOptions, callback) {
return zopfli.gzip(input, compressionOptions, callback);
},
- test: /\.(js|css|html|json|ico|svg|eot|otf|ttf)$/,
+ cache: true,
+ test: /\.(js|css|html|json|ico|svg|eot|otf|ttf|map)$/,
}),
new BundleAnalyzerPlugin({ // generates report.html and stats.json
analyzerMode: 'static',
@@ -76,7 +72,7 @@ module.exports = merge(sharedConfig, {
logLevel: 'silent', // do not bother Webpacker, who runs with --json and parses stdout
}),
new OfflinePlugin({
- publicPath: publicPath, // sw.js must be served from the root to avoid scope issues
+ publicPath: output.publicPath, // sw.js must be served from the root to avoid scope issues
caches: {
main: [':rest:'],
additional: [':externals:'],
diff --git a/config/webpack/rules/babel.js b/config/webpack/rules/babel.js
new file mode 100644
index 00000000000..2fc245c432f
--- /dev/null
+++ b/config/webpack/rules/babel.js
@@ -0,0 +1,21 @@
+const { join, resolve } = require('path');
+const { env, settings } = require('../configuration');
+
+module.exports = {
+ test: /\.(js|jsx|mjs)$/,
+ include: [
+ settings.source_path,
+ ...settings.resolved_paths,
+ ].map(p => resolve(p)),
+ exclude: /node_modules/,
+ use: [
+ {
+ loader: 'babel-loader',
+ options: {
+ cacheDirectory: join(settings.cache_path, 'babel-loader'),
+ cacheCompression: env.NODE_ENV === 'production',
+ compact: env.NODE_ENV === 'production',
+ },
+ },
+ ],
+};
diff --git a/config/webpack/loaders/sass.js b/config/webpack/rules/css.js
similarity index 70%
rename from config/webpack/loaders/sass.js
rename to config/webpack/rules/css.js
index 67a1890b8f8..27905a6173a 100644
--- a/config/webpack/loaders/sass.js
+++ b/config/webpack/rules/css.js
@@ -4,7 +4,14 @@ module.exports = {
test: /\.s?css$/i,
use: [
MiniCssExtractPlugin.loader,
- 'css-loader',
+ {
+ loader: 'css-loader',
+ options: {
+ sourceMap: true,
+ importLoaders: 2,
+ localIdentName: '[name]__[local]___[hash:base64:5]',
+ },
+ },
{
loader: 'postcss-loader',
options: {
diff --git a/config/webpack/rules/file.js b/config/webpack/rules/file.js
new file mode 100644
index 00000000000..f2fb5878010
--- /dev/null
+++ b/config/webpack/rules/file.js
@@ -0,0 +1,20 @@
+const { join } = require('path');
+const { settings } = require('../configuration');
+
+module.exports = {
+ test: new RegExp(`(${settings.static_assets_extensions.join('|')})$`, 'i'),
+ use: [
+ {
+ loader: 'file-loader',
+ options: {
+ name(file) {
+ if (file.includes(settings.source_path)) {
+ return 'media/[path][name]-[hash].[ext]';
+ }
+ return 'media/[folder]/[name]-[hash:8].[ext]';
+ },
+ context: join(settings.source_path),
+ },
+ },
+ ],
+};
diff --git a/config/webpack/rules/index.js b/config/webpack/rules/index.js
new file mode 100644
index 00000000000..bbf6b0187b1
--- /dev/null
+++ b/config/webpack/rules/index.js
@@ -0,0 +1,14 @@
+const babel = require('./babel');
+const css = require('./css');
+const file = require('./file');
+const nodeModules = require('./node_modules');
+
+// Webpack loaders are processed in reverse order
+// https://webpack.js.org/concepts/loaders/#loader-features
+// Lastly, process static files using file loader
+module.exports = {
+ file,
+ css,
+ nodeModules,
+ babel,
+};
diff --git a/config/webpack/loaders/mark.js b/config/webpack/rules/mark.js
similarity index 100%
rename from config/webpack/loaders/mark.js
rename to config/webpack/rules/mark.js
diff --git a/config/webpack/rules/node_modules.js b/config/webpack/rules/node_modules.js
new file mode 100644
index 00000000000..422554a7699
--- /dev/null
+++ b/config/webpack/rules/node_modules.js
@@ -0,0 +1,26 @@
+const { join } = require('path');
+const { settings, env } = require('../configuration');
+
+module.exports = {
+ test: /\.(js|mjs)$/,
+ include: /node_modules/,
+ exclude: /@babel(?:\/|\\{1,2})runtime/,
+ use: [
+ {
+ loader: 'babel-loader',
+ options: {
+ babelrc: false,
+ presets: [
+ ['@babel/env', { modules: false }],
+ ],
+ plugins: [
+ 'transform-react-remove-prop-types',
+ ],
+ cacheDirectory: join(settings.cache_path, 'babel-loader-node-modules'),
+ cacheCompression: env.NODE_ENV === 'production',
+ compact: false,
+ sourceMaps: false,
+ },
+ },
+ ],
+};
diff --git a/config/webpack/shared.js b/config/webpack/shared.js
index d6199373b84..cb4e5a85f0e 100644
--- a/config/webpack/shared.js
+++ b/config/webpack/shared.js
@@ -6,7 +6,8 @@ const { sync } = require('glob');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const AssetsManifestPlugin = require('webpack-assets-manifest');
const extname = require('path-complete-extname');
-const { env, settings, themes, output, loadersDir } = require('./configuration.js');
+const { env, settings, themes, output } = require('./configuration');
+const rules = require('./rules');
const localePackPaths = require('./generateLocalePacks');
const extensionGlob = `**/*{${settings.extensions.join(',')}}*`;
@@ -33,8 +34,9 @@ module.exports = {
),
output: {
- filename: '[name].js',
- chunkFilename: '[name].js',
+ filename: 'js/[name]-[chunkhash].js',
+ chunkFilename: 'js/[name]-[chunkhash].chunk.js',
+ hotUpdateChunkFilename: 'js/[id]-[hash].hot-update.js',
path: output.path,
publicPath: output.publicPath,
},
@@ -60,7 +62,7 @@ module.exports = {
},
module: {
- rules: sync(join(loadersDir, '*.js')).map(loader => require(loader)),
+ rules: Object.keys(rules).map(key => rules[key]),
},
plugins: [
@@ -73,11 +75,14 @@ module.exports = {
}
),
new MiniCssExtractPlugin({
- filename: env.NODE_ENV === 'production' ? '[name]-[contenthash].css' : '[name].css',
+ filename: 'css/[name]-[contenthash:8].css',
+ chunkFilename: 'css/[name]-[contenthash:8].chunk.css',
}),
new AssetsManifestPlugin({
- publicPath: true,
+ integrity: false,
+ entrypoints: true,
writeToDisk: true,
+ publicPath: true,
}),
],
diff --git a/config/webpacker.yml b/config/webpacker.yml
index ea814a0e65f..4ad78a190ec 100644
--- a/config/webpacker.yml
+++ b/config/webpacker.yml
@@ -3,8 +3,11 @@
default: &default
source_path: app/javascript
source_entry_path: packs
+ public_root_path: public
public_output_path: packs
cache_path: tmp/cache/webpacker
+ check_yarn_integrity: false
+ webpack_compile_output: false
# Additional paths webpack should lookup modules
# ['app/assets', 'engine/foo/app/assets']
@@ -13,11 +16,31 @@ default: &default
# Reload manifest.json on all requests so we reload latest compiled packs
cache_manifest: false
+ # Extract and emit a css file
+ extract_css: true
+
+ static_assets_extensions:
+ - .jpg
+ - .jpeg
+ - .png
+ - .tiff
+ - .ico
+ - .svg
+ - .eot
+ - .otf
+ - .ttf
+ - .woff
+ - .woff2
+
extensions:
+ - .mjs
- .js
- .sass
- .scss
- .css
+ - .module.sass
+ - .module.scss
+ - .module.css
- .png
- .svg
- .gif
@@ -26,24 +49,38 @@ default: &default
development:
<<: *default
+
compile: true
+ # Reference: https://webpack.js.org/configuration/dev-server/
dev_server:
+ https: false
host: localhost
port: 3035
+ public: localhost:3035
hmr: false
- https: false
+ # Inline should be set to true if using HMR
+ inline: true
+ overlay: true
+ compress: true
+ disable_host_check: true
+ use_local_ip: false
+ quiet: false
+ headers:
+ 'Access-Control-Allow-Origin': '*'
+ watch_options:
+ ignored: '**/node_modules/**'
test:
<<: *default
- # Compile test packs to a separate directory
- public_output_path: packs-test
-
# CircleCI precompiles packs prior to running the tests.
# Also avoids race conditions in parallel_tests.
compile: false
+ # Compile test packs to a separate directory
+ public_output_path: packs-test
+
production:
<<: *default
diff --git a/jest.config.js b/jest.config.js
deleted file mode 100644
index 85f8b1be9c1..00000000000
--- a/jest.config.js
+++ /dev/null
@@ -1,29 +0,0 @@
-module.exports = {
- projects: [
- '/app/javascript/mastodon',
- ],
- testPathIgnorePatterns: [
- '/node_modules/',
- '/vendor/',
- '/config/',
- '/log/',
- '/public/',
- '/tmp/',
- ],
- setupFiles: [
- 'raf/polyfill',
- ],
- setupTestFrameworkScriptFile: '/app/javascript/mastodon/test_setup.js',
- collectCoverageFrom: [
- 'app/javascript/mastodon/**/*.js',
- '!app/javascript/mastodon/features/emoji/emoji_compressed.js',
- '!app/javascript/mastodon/locales/locale-data/*.js',
- '!app/javascript/mastodon/service_worker/entry.js',
- '!app/javascript/mastodon/test_setup.js',
- ],
- coverageDirectory: '/coverage',
- moduleDirectories: [
- '/node_modules',
- '/app/javascript',
- ],
-};
diff --git a/package.json b/package.json
index 3d14c50cbeb..79240df072e 100644
--- a/package.json
+++ b/package.json
@@ -24,36 +24,66 @@
"iOS >= 9",
"not dead"
],
+ "jest": {
+ "projects": [
+ "/app/javascript/mastodon"
+ ],
+ "testPathIgnorePatterns": [
+ "/node_modules/",
+ "/vendor/",
+ "/config/",
+ "/log/",
+ "/public/",
+ "/tmp/"
+ ],
+ "setupFiles": [
+ "raf/polyfill"
+ ],
+ "setupFilesAfterEnv": [
+ "/app/javascript/mastodon/test_setup.js"
+ ],
+ "collectCoverageFrom": [
+ "app/javascript/mastodon/**/*.js",
+ "!app/javascript/mastodon/features/emoji/emoji_compressed.js",
+ "!app/javascript/mastodon/locales/locale-data/*.js",
+ "!app/javascript/mastodon/service_worker/entry.js",
+ "!app/javascript/mastodon/test_setup.js"
+ ],
+ "coverageDirectory": "/coverage",
+ "moduleDirectories": [
+ "/node_modules",
+ "/app/javascript"
+ ]
+ },
"private": true,
"dependencies": {
- "@babel/core": "^7.2.2",
- "@babel/plugin-proposal-class-properties": "^7.2.3",
- "@babel/plugin-proposal-decorators": "^7.2.3",
- "@babel/plugin-proposal-object-rest-spread": "^7.2.0",
+ "@babel/core": "^7.3.4",
+ "@babel/plugin-proposal-class-properties": "^7.3.4",
+ "@babel/plugin-proposal-decorators": "^7.3.0",
+ "@babel/plugin-proposal-object-rest-spread": "^7.3.4",
"@babel/plugin-syntax-dynamic-import": "^7.2.0",
"@babel/plugin-transform-react-inline-elements": "^7.2.0",
"@babel/plugin-transform-react-jsx-self": "^7.2.0",
"@babel/plugin-transform-react-jsx-source": "^7.2.0",
- "@babel/plugin-transform-runtime": "^7.2.0",
- "@babel/preset-env": "^7.2.3",
+ "@babel/plugin-transform-runtime": "^7.3.4",
+ "@babel/preset-env": "^7.3.4",
"@babel/preset-react": "^7.0.0",
- "@babel/runtime": "^7.2.0",
- "@gfx/zopfli": "^1.0.10",
+ "@babel/runtime": "^7.3.4",
+ "@gfx/zopfli": "^1.0.11",
"array-includes": "^3.0.3",
- "autoprefixer": "^9.4.3",
+ "autoprefixer": "^9.4.10",
"axios": "^0.18.0",
- "babel-core": "^7.0.0-bridge.0",
- "babel-loader": "^8.0.4",
+ "babel-loader": "^8.0.5",
"babel-plugin-lodash": "^3.3.4",
"babel-plugin-preval": "^3.0.1",
"babel-plugin-react-intl": "^3.0.1",
- "babel-plugin-transform-react-remove-prop-types": "^0.4.21",
+ "babel-plugin-transform-react-remove-prop-types": "^0.4.24",
"babel-runtime": "^6.26.0",
"classnames": "^2.2.5",
"compression-webpack-plugin": "^2.0.0",
"cross-env": "^5.1.4",
- "css-loader": "^2.1.0",
- "cssnano": "^4.1.8",
+ "css-loader": "^2.1.1",
+ "cssnano": "^4.1.10",
"detect-passive-events": "^1.0.2",
"dotenv": "^6.2.0",
"emoji-mart": "Gargron/emoji-mart#build",
@@ -119,26 +149,25 @@
"requestidlecallback": "^0.3.0",
"reselect": "^4.0.0",
"rimraf": "^2.6.1",
- "sass": "^1.15.2",
+ "sass": "^1.17.2",
"sass-loader": "^7.0.3",
"stringz": "^1.0.0",
- "style-loader": "0.23.1",
"substring-trie": "^1.0.2",
"throng": "^4.0.0",
"tiny-queue": "^0.2.1",
- "uglifyjs-webpack-plugin": "^2.1.1",
+ "uglifyjs-webpack-plugin": "^2.1.2",
"uuid": "^3.1.0",
"uws": "10.148.0",
- "webpack": "^4.28.3",
+ "webpack": "^4.29.6",
"webpack-assets-manifest": "^3.1.1",
- "webpack-bundle-analyzer": "^3.0.3",
- "webpack-cli": "^3.1.2",
- "webpack-merge": "^4.1.5",
+ "webpack-bundle-analyzer": "^3.1.0",
+ "webpack-cli": "^3.2.3",
+ "webpack-merge": "^4.2.1",
"websocket.js": "^0.1.12"
},
"devDependencies": {
"babel-eslint": "^10.0.1",
- "babel-jest": "^23.6.0",
+ "babel-jest": "^24.5.0",
"enzyme": "^3.8.0",
"enzyme-adapter-react-16": "^1.7.1",
"eslint": "^5.11.1",
@@ -146,14 +175,11 @@
"eslint-plugin-jsx-a11y": "~6.1.2",
"eslint-plugin-promise": "~4.0.1",
"eslint-plugin-react": "~7.12.1",
- "jest": "^23.6.0",
+ "jest": "^24.5.0",
"raf": "^3.4.1",
"react-intl-translations-manager": "^5.0.3",
"react-test-renderer": "^16.7.0",
- "webpack-dev-server": "^3.1.14",
+ "webpack-dev-server": "^3.2.1",
"yargs": "^12.0.5"
- },
- "optionalDependencies": {
- "fsevents": "*"
}
}
diff --git a/yarn.lock b/yarn.lock
index 026935025a4..47bbafc8798 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,33 +2,44 @@
# yarn lockfile v1
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.0.0-beta.35":
+"@babel/code-frame@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8"
integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==
dependencies:
"@babel/highlight" "^7.0.0"
-"@babel/core@^7.2.2":
- version "7.2.2"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.2.2.tgz#07adba6dde27bb5ad8d8672f15fde3e08184a687"
- integrity sha512-59vB0RWt09cAct5EIe58+NzGP4TFSD3Bz//2/ELy3ZeTeKF6VTD1AXlH8BGGbCX0PuobZBsIzO7IAI9PH67eKw==
+"@babel/core@^7.1.0", "@babel/core@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.3.4.tgz#921a5a13746c21e32445bf0798680e9d11a6530b"
+ integrity sha512-jRsuseXBo9pN197KnDwhhaaBzyZr2oIcLHHTt2oDdQrej5Qp57dCCJafWx5ivU8/alEYDpssYqv1MUqcxwQlrA==
dependencies:
"@babel/code-frame" "^7.0.0"
- "@babel/generator" "^7.2.2"
+ "@babel/generator" "^7.3.4"
"@babel/helpers" "^7.2.0"
- "@babel/parser" "^7.2.2"
+ "@babel/parser" "^7.3.4"
"@babel/template" "^7.2.2"
- "@babel/traverse" "^7.2.2"
- "@babel/types" "^7.2.2"
+ "@babel/traverse" "^7.3.4"
+ "@babel/types" "^7.3.4"
convert-source-map "^1.1.0"
debug "^4.1.0"
json5 "^2.1.0"
- lodash "^4.17.10"
+ lodash "^4.17.11"
resolve "^1.3.2"
semver "^5.4.1"
source-map "^0.5.0"
+"@babel/generator@^7.0.0", "@babel/generator@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.3.4.tgz#9aa48c1989257877a9d971296e5b73bfe72e446e"
+ integrity sha512-8EXhHRFqlVVWXPezBW5keTiQi/rJMQTg/Y9uVCEZ0CAF3PKtCCaVRnp64Ii1ujhkoDhhF1fVsImoN4yJ2uz4Wg==
+ dependencies:
+ "@babel/types" "^7.3.4"
+ jsesc "^2.5.1"
+ lodash "^4.17.11"
+ source-map "^0.5.0"
+ trim-right "^1.0.1"
+
"@babel/generator@^7.2.2":
version "7.2.2"
resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.2.2.tgz#18c816c70962640eab42fe8cae5f3947a5c65ccc"
@@ -72,16 +83,17 @@
"@babel/traverse" "^7.1.0"
"@babel/types" "^7.0.0"
-"@babel/helper-create-class-features-plugin@^7.2.3":
- version "7.2.3"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.2.3.tgz#f6e719abb90cb7f4a69591e35fd5eb89047c4a7c"
- integrity sha512-xO/3Gn+2C7/eOUeb0VRnSP1+yvWHNxlpAot1eMhtoKDCN7POsyQP5excuT5UsV5daHxMWBeIIOeI5cmB8vMRgQ==
+"@babel/helper-create-class-features-plugin@^7.3.0", "@babel/helper-create-class-features-plugin@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.3.4.tgz#092711a7a3ad8ea34de3e541644c2ce6af1f6f0c"
+ integrity sha512-uFpzw6L2omjibjxa8VGZsJUPL5wJH0zzGKpoz0ccBkzIa6C8kWNUbiBmQ0rgOKWlHJ6qzmfa6lTiGchiV8SC+g==
dependencies:
"@babel/helper-function-name" "^7.1.0"
"@babel/helper-member-expression-to-functions" "^7.0.0"
"@babel/helper-optimise-call-expression" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
- "@babel/helper-replace-supers" "^7.2.3"
+ "@babel/helper-replace-supers" "^7.3.4"
+ "@babel/helper-split-export-declaration" "^7.0.0"
"@babel/helper-define-map@^7.1.0":
version "7.1.0"
@@ -179,7 +191,7 @@
"@babel/traverse" "^7.1.0"
"@babel/types" "^7.0.0"
-"@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.2.3":
+"@babel/helper-replace-supers@^7.1.0":
version "7.2.3"
resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.2.3.tgz#19970020cf22677d62b3a689561dbd9644d8c5e5"
integrity sha512-GyieIznGUfPXPWu0yLS6U55Mz67AZD9cUk0BfirOWlPrXlBcan9Gz+vHGz+cPfuoweZSnPzPIm67VtQM0OWZbA==
@@ -189,6 +201,16 @@
"@babel/traverse" "^7.2.3"
"@babel/types" "^7.0.0"
+"@babel/helper-replace-supers@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.3.4.tgz#a795208e9b911a6eeb08e5891faacf06e7013e13"
+ integrity sha512-pvObL9WVf2ADs+ePg0jrqlhHoxRXlOa+SHRHzAXIz2xkYuOHfGl+fKxPMaS4Fq+uje8JQPobnertBBvyrWnQ1A==
+ dependencies:
+ "@babel/helper-member-expression-to-functions" "^7.0.0"
+ "@babel/helper-optimise-call-expression" "^7.0.0"
+ "@babel/traverse" "^7.3.4"
+ "@babel/types" "^7.3.4"
+
"@babel/helper-simple-access@^7.1.0":
version "7.1.0"
resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c"
@@ -237,6 +259,11 @@
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489"
integrity sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA==
+"@babel/parser@^7.1.0", "@babel/parser@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.3.4.tgz#a43357e4bbf4b92a437fb9e465c192848287f27c"
+ integrity sha512-tXZCqWtlOOP4wgCp6RjRvLmfuhnqTLy9VHwRochJBCP2nDm27JnnuFEnXFASVyQNHk36jD1tAammsCEEqgscIQ==
+
"@babel/plugin-proposal-async-generator-functions@^7.2.0":
version "7.2.0"
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz#b289b306669dce4ad20b0252889a15768c9d417e"
@@ -246,20 +273,20 @@
"@babel/helper-remap-async-to-generator" "^7.1.0"
"@babel/plugin-syntax-async-generators" "^7.2.0"
-"@babel/plugin-proposal-class-properties@^7.2.3":
- version "7.2.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.2.3.tgz#c9e1294363b346cff333007a92080f3203698461"
- integrity sha512-FVuQngLoN2iDrpW7LmhPZ2sO4DJxf35FOcwidwB9Ru9tMvI5URthnkVHuG14IStV+TzkMTyLMoOUlSTtrdVwqw==
+"@babel/plugin-proposal-class-properties@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.3.4.tgz#410f5173b3dc45939f9ab30ca26684d72901405e"
+ integrity sha512-lUf8D3HLs4yYlAo8zjuneLvfxN7qfKv1Yzbj5vjqaqMJxgJA3Ipwp4VUJ+OrOdz53Wbww6ahwB8UhB2HQyLotA==
dependencies:
- "@babel/helper-create-class-features-plugin" "^7.2.3"
+ "@babel/helper-create-class-features-plugin" "^7.3.4"
"@babel/helper-plugin-utils" "^7.0.0"
-"@babel/plugin-proposal-decorators@^7.2.3":
- version "7.2.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.2.3.tgz#1fe5b0d22ce0c4418f225474ebd40267430364c0"
- integrity sha512-jhCFm7ftmue02EWIYqbhzP0iConEPsgVQeDriOs/Qc2lgr6MDtHTTrv3hE2GOOQDFjQ9tjP7nWQq0ad0JhIsQg==
+"@babel/plugin-proposal-decorators@^7.3.0":
+ version "7.3.0"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.3.0.tgz#637ba075fa780b1f75d08186e8fb4357d03a72a7"
+ integrity sha512-3W/oCUmsO43FmZIqermmq6TKaRSYhmh/vybPfVFwQWdSb8xwki38uAIvknCRzuyHRuYfCYmJzL9or1v0AffPjg==
dependencies:
- "@babel/helper-create-class-features-plugin" "^7.2.3"
+ "@babel/helper-create-class-features-plugin" "^7.3.0"
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/plugin-syntax-decorators" "^7.2.0"
@@ -271,10 +298,10 @@
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/plugin-syntax-json-strings" "^7.2.0"
-"@babel/plugin-proposal-object-rest-spread@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.2.0.tgz#88f5fec3e7ad019014c97f7ee3c992f0adbf7fb8"
- integrity sha512-1L5mWLSvR76XYUQJXkd/EEQgjq8HHRP6lQuZTTg0VA4tTGPpGemmCdAfQIz1rzEuWAm+ecP8PyyEm30jC1eQCg==
+"@babel/plugin-proposal-object-rest-spread@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.3.4.tgz#47f73cf7f2a721aad5c0261205405c642e424654"
+ integrity sha512-j7VQmbbkA+qrzNqbKHrBsW3ddFnOeva6wzSe/zB7T+xaxGc+RCpwo44wCmRixAIGRoIpmVgvzFzNJqQcO3/9RA==
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/plugin-syntax-object-rest-spread" "^7.2.0"
@@ -331,7 +358,7 @@
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
-"@babel/plugin-syntax-object-rest-spread@^7.2.0":
+"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.2.0":
version "7.2.0"
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e"
integrity sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==
@@ -352,10 +379,10 @@
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
-"@babel/plugin-transform-async-to-generator@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.2.0.tgz#68b8a438663e88519e65b776f8938f3445b1a2ff"
- integrity sha512-CEHzg4g5UraReozI9D4fblBYABs7IM6UerAVG7EJVrTLC5keh00aEuLUT+O40+mJCEzaXkYfTCUKIyeDfMOFFQ==
+"@babel/plugin-transform-async-to-generator@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.3.4.tgz#4e45408d3c3da231c0e7b823f407a53a7eb3048c"
+ integrity sha512-Y7nCzv2fw/jEZ9f678MuKdMo99MFDJMT/PvD9LisrR5JDFcJH6vYeH6RnjVt3p5tceyGRvTtEN0VOlU+rgHZjA==
dependencies:
"@babel/helper-module-imports" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
@@ -368,25 +395,25 @@
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
-"@babel/plugin-transform-block-scoping@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.2.0.tgz#f17c49d91eedbcdf5dd50597d16f5f2f770132d4"
- integrity sha512-vDTgf19ZEV6mx35yiPJe4fS02mPQUUcBNwWQSZFXSzTSbsJFQvHt7DqyS3LK8oOWALFOsJ+8bbqBgkirZteD5Q==
+"@babel/plugin-transform-block-scoping@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.3.4.tgz#5c22c339de234076eee96c8783b2fed61202c5c4"
+ integrity sha512-blRr2O8IOZLAOJklXLV4WhcEzpYafYQKSGT3+R26lWG41u/FODJuBggehtOwilVAcFu393v3OFj+HmaE6tVjhA==
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
- lodash "^4.17.10"
+ lodash "^4.17.11"
-"@babel/plugin-transform-classes@^7.2.0":
- version "7.2.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.2.2.tgz#6c90542f210ee975aa2aa8c8b5af7fa73a126953"
- integrity sha512-gEZvgTy1VtcDOaQty1l10T3jQmJKlNVxLDCs+3rCVPr6nMkODLELxViq5X9l+rfxbie3XrfrMCYYY6eX3aOcOQ==
+"@babel/plugin-transform-classes@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.3.4.tgz#dc173cb999c6c5297e0b5f2277fdaaec3739d0cc"
+ integrity sha512-J9fAvCFBkXEvBimgYxCjvaVDzL6thk0j0dBvCeZmIUDBwyt+nv6HfbImsSrWsYXfDNDivyANgJlFXDUWRTZBuA==
dependencies:
"@babel/helper-annotate-as-pure" "^7.0.0"
"@babel/helper-define-map" "^7.1.0"
"@babel/helper-function-name" "^7.1.0"
"@babel/helper-optimise-call-expression" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
- "@babel/helper-replace-supers" "^7.1.0"
+ "@babel/helper-replace-supers" "^7.3.4"
"@babel/helper-split-export-declaration" "^7.0.0"
globals "^11.1.0"
@@ -467,10 +494,10 @@
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/helper-simple-access" "^7.1.0"
-"@babel/plugin-transform-modules-systemjs@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.2.0.tgz#912bfe9e5ff982924c81d0937c92d24994bb9068"
- integrity sha512-aYJwpAhoK9a+1+O625WIjvMY11wkB/ok0WClVwmeo3mCjcNRjt+/8gHWrB5i+00mUju0gWsBkQnPpdvQ7PImmQ==
+"@babel/plugin-transform-modules-systemjs@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.3.4.tgz#813b34cd9acb6ba70a84939f3680be0eb2e58861"
+ integrity sha512-VZ4+jlGOF36S7TjKs8g4ojp4MEI+ebCQZdswWb/T9I4X84j8OtFAyjXjt/M16iIm5RIZn0UMQgg/VgIwo/87vw==
dependencies:
"@babel/helper-hoist-variables" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
@@ -483,6 +510,13 @@
"@babel/helper-module-transforms" "^7.1.0"
"@babel/helper-plugin-utils" "^7.0.0"
+"@babel/plugin-transform-named-capturing-groups-regex@^7.3.0":
+ version "7.3.0"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.3.0.tgz#140b52985b2d6ef0cb092ef3b29502b990f9cd50"
+ integrity sha512-NxIoNVhk9ZxS+9lSoAQ/LM0V2UEvARLttEHUrRDGKFaAxOYQcrkN/nLRE+BbbicCAvZPl7wMP0X60HsHE5DtQw==
+ dependencies:
+ regexp-tree "^0.1.0"
+
"@babel/plugin-transform-new-target@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a"
@@ -547,17 +581,17 @@
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/plugin-syntax-jsx" "^7.2.0"
-"@babel/plugin-transform-regenerator@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1"
- integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw==
+"@babel/plugin-transform-regenerator@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.3.4.tgz#1601655c362f5b38eead6a52631f5106b29fa46a"
+ integrity sha512-hvJg8EReQvXT6G9H2MvNPXkv9zK36Vxa1+csAVTpE1J3j0zlHplw76uudEbJxgvqZzAq9Yh45FLD4pk5mKRFQA==
dependencies:
- regenerator-transform "^0.13.3"
+ regenerator-transform "^0.13.4"
-"@babel/plugin-transform-runtime@^7.2.0":
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.2.0.tgz#566bc43f7d0aedc880eaddbd29168d0f248966ea"
- integrity sha512-jIgkljDdq4RYDnJyQsiWbdvGeei/0MOTtSHKO/rfbd/mXBxNpdlulMx49L0HQ4pug1fXannxoqCI+fYSle9eSw==
+"@babel/plugin-transform-runtime@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.3.4.tgz#57805ac8c1798d102ecd75c03b024a5b3ea9b431"
+ integrity sha512-PaoARuztAdd5MgeVjAxnIDAIUet5KpogqaefQvPOmPYCxYoaPhautxDh3aO8a4xHsKgT/b9gSxR0BKK1MIewPA==
dependencies:
"@babel/helper-module-imports" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
@@ -610,26 +644,27 @@
"@babel/helper-regex" "^7.0.0"
regexpu-core "^4.1.3"
-"@babel/preset-env@^7.2.3":
- version "7.2.3"
- resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.2.3.tgz#948c8df4d4609c99c7e0130169f052ea6a7a8933"
- integrity sha512-AuHzW7a9rbv5WXmvGaPX7wADxFkZIqKlbBh1dmZUQp4iwiPpkE/Qnrji6SC4UQCQzvWY/cpHET29eUhXS9cLPw==
+"@babel/preset-env@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.3.4.tgz#887cf38b6d23c82f19b5135298bdb160062e33e1"
+ integrity sha512-2mwqfYMK8weA0g0uBKOt4FE3iEodiHy9/CW0b+nWXcbL+pGzLx8ESYc+j9IIxr6LTDHWKgPm71i9smo02bw+gA==
dependencies:
"@babel/helper-module-imports" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
"@babel/plugin-proposal-async-generator-functions" "^7.2.0"
"@babel/plugin-proposal-json-strings" "^7.2.0"
- "@babel/plugin-proposal-object-rest-spread" "^7.2.0"
+ "@babel/plugin-proposal-object-rest-spread" "^7.3.4"
"@babel/plugin-proposal-optional-catch-binding" "^7.2.0"
"@babel/plugin-proposal-unicode-property-regex" "^7.2.0"
"@babel/plugin-syntax-async-generators" "^7.2.0"
+ "@babel/plugin-syntax-json-strings" "^7.2.0"
"@babel/plugin-syntax-object-rest-spread" "^7.2.0"
"@babel/plugin-syntax-optional-catch-binding" "^7.2.0"
"@babel/plugin-transform-arrow-functions" "^7.2.0"
- "@babel/plugin-transform-async-to-generator" "^7.2.0"
+ "@babel/plugin-transform-async-to-generator" "^7.3.4"
"@babel/plugin-transform-block-scoped-functions" "^7.2.0"
- "@babel/plugin-transform-block-scoping" "^7.2.0"
- "@babel/plugin-transform-classes" "^7.2.0"
+ "@babel/plugin-transform-block-scoping" "^7.3.4"
+ "@babel/plugin-transform-classes" "^7.3.4"
"@babel/plugin-transform-computed-properties" "^7.2.0"
"@babel/plugin-transform-destructuring" "^7.2.0"
"@babel/plugin-transform-dotall-regex" "^7.2.0"
@@ -640,12 +675,13 @@
"@babel/plugin-transform-literals" "^7.2.0"
"@babel/plugin-transform-modules-amd" "^7.2.0"
"@babel/plugin-transform-modules-commonjs" "^7.2.0"
- "@babel/plugin-transform-modules-systemjs" "^7.2.0"
+ "@babel/plugin-transform-modules-systemjs" "^7.3.4"
"@babel/plugin-transform-modules-umd" "^7.2.0"
+ "@babel/plugin-transform-named-capturing-groups-regex" "^7.3.0"
"@babel/plugin-transform-new-target" "^7.0.0"
"@babel/plugin-transform-object-super" "^7.2.0"
"@babel/plugin-transform-parameters" "^7.2.0"
- "@babel/plugin-transform-regenerator" "^7.0.0"
+ "@babel/plugin-transform-regenerator" "^7.3.4"
"@babel/plugin-transform-shorthand-properties" "^7.2.0"
"@babel/plugin-transform-spread" "^7.2.0"
"@babel/plugin-transform-sticky-regex" "^7.2.0"
@@ -682,7 +718,14 @@
dependencies:
regenerator-runtime "^0.12.0"
-"@babel/template@^7.1.0", "@babel/template@^7.1.2", "@babel/template@^7.2.2":
+"@babel/runtime@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.3.4.tgz#73d12ba819e365fcf7fd152aed56d6df97d21c83"
+ integrity sha512-IvfvnMdSaLBateu0jfsYIpZTxAc2cKEXEMiezGGN75QcBcecDUKd3PgLAncT0oOgxKy8dd8hrJKj9MfzgfZd6g==
+ dependencies:
+ regenerator-runtime "^0.12.0"
+
+"@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.1.2", "@babel/template@^7.2.2":
version "7.2.2"
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz#005b3fdf0ed96e88041330379e0da9a708eb2907"
integrity sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==
@@ -691,7 +734,7 @@
"@babel/parser" "^7.2.2"
"@babel/types" "^7.2.2"
-"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.2.2", "@babel/traverse@^7.2.3":
+"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.2.3":
version "7.2.3"
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8"
integrity sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==
@@ -706,6 +749,21 @@
globals "^11.1.0"
lodash "^4.17.10"
+"@babel/traverse@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.3.4.tgz#1330aab72234f8dea091b08c4f8b9d05c7119e06"
+ integrity sha512-TvTHKp6471OYEcE/91uWmhR6PrrYywQntCHSaZ8CM8Vmp+pjAusal4nGB2WCCQd0rvI7nOMKn9GnbcvTUz3/ZQ==
+ dependencies:
+ "@babel/code-frame" "^7.0.0"
+ "@babel/generator" "^7.3.4"
+ "@babel/helper-function-name" "^7.1.0"
+ "@babel/helper-split-export-declaration" "^7.0.0"
+ "@babel/parser" "^7.3.4"
+ "@babel/types" "^7.3.4"
+ debug "^4.1.0"
+ globals "^11.1.0"
+ lodash "^4.17.11"
+
"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.2.0", "@babel/types@^7.2.2":
version "7.2.2"
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.2.2.tgz#44e10fc24e33af524488b716cdaee5360ea8ed1e"
@@ -715,6 +773,23 @@
lodash "^4.17.10"
to-fast-properties "^2.0.0"
+"@babel/types@^7.3.0", "@babel/types@^7.3.4":
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.3.4.tgz#bf482eaeaffb367a28abbf9357a94963235d90ed"
+ integrity sha512-WEkp8MsLftM7O/ty580wAmZzN1nDmCACc5+jFzUt+GUFNNIi3LdRlueYz0YIlmJhlZx1QYDMZL5vdWCL0fNjFQ==
+ dependencies:
+ esutils "^2.0.2"
+ lodash "^4.17.11"
+ to-fast-properties "^2.0.0"
+
+"@cnakazawa/watch@^1.0.3":
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz#099139eaec7ebf07a27c1786a3ff64f39464d2ef"
+ integrity sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==
+ dependencies:
+ exec-sh "^0.3.2"
+ minimist "^1.2.0"
+
"@emotion/cache@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.0.tgz#e22eadcb770de4131ec707c84207e9e1ce210413"
@@ -771,13 +846,188 @@
resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.2.tgz#63985d3d8b02530e0869962f4da09142ee8e200e"
integrity sha512-n/VQ4mbfr81aqkx/XmVicOLjviMuy02eenSdJY33SVA7S2J42EU0P1H0mOogfYedb3wXA0d/LVtBrgTSm04WEA==
-"@gfx/zopfli@^1.0.10":
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/@gfx/zopfli/-/zopfli-1.0.10.tgz#8cccfcbd670f676cb240812bcf8380c9a66da367"
- integrity sha512-PAR3ICucog1HV+hDVF+VYNfnvB/JmE4C8YqxhMMEuxyycFthrv6hIEeCoNsRVF3J+SEtNLWRPTOXgcvQkZIM5A==
+"@gfx/zopfli@^1.0.11":
+ version "1.0.11"
+ resolved "https://registry.yarnpkg.com/@gfx/zopfli/-/zopfli-1.0.11.tgz#6ced06b4566a5feb0036fe6a1e0262ce6cb1d6c5"
+ integrity sha512-wW+hi+bqdYCpBIvL8g7RYub9YXf5crhZK9SNk/VZmbF177Em1VwFv488qyh8iBpCo6GptcP1Zam0bJfY3VmMbg==
dependencies:
base64-js "^1.3.0"
+"@jest/console@^24.3.0":
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.3.0.tgz#7bd920d250988ba0bf1352c4493a48e1cb97671e"
+ integrity sha512-NaCty/OOei6rSDcbPdMiCbYCI0KGFGPgGO6B09lwWt5QTxnkuhKYET9El5u5z1GAcSxkQmSMtM63e24YabCWqA==
+ dependencies:
+ "@jest/source-map" "^24.3.0"
+ "@types/node" "*"
+ chalk "^2.0.1"
+ slash "^2.0.0"
+
+"@jest/core@^24.5.0":
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.5.0.tgz#2cefc6a69e9ebcae1da8f7c75f8a257152ba1ec0"
+ integrity sha512-RDZArRzAs51YS7dXG1pbXbWGxK53rvUu8mCDYsgqqqQ6uSOaTjcVyBl2Jce0exT2rSLk38ca7az7t2f3b0/oYQ==
+ dependencies:
+ "@jest/console" "^24.3.0"
+ "@jest/reporters" "^24.5.0"
+ "@jest/test-result" "^24.5.0"
+ "@jest/transform" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ ansi-escapes "^3.0.0"
+ chalk "^2.0.1"
+ exit "^0.1.2"
+ graceful-fs "^4.1.15"
+ jest-changed-files "^24.5.0"
+ jest-config "^24.5.0"
+ jest-haste-map "^24.5.0"
+ jest-message-util "^24.5.0"
+ jest-regex-util "^24.3.0"
+ jest-resolve-dependencies "^24.5.0"
+ jest-runner "^24.5.0"
+ jest-runtime "^24.5.0"
+ jest-snapshot "^24.5.0"
+ jest-util "^24.5.0"
+ jest-validate "^24.5.0"
+ jest-watcher "^24.5.0"
+ micromatch "^3.1.10"
+ p-each-series "^1.0.0"
+ pirates "^4.0.1"
+ realpath-native "^1.1.0"
+ rimraf "^2.5.4"
+ strip-ansi "^5.0.0"
+
+"@jest/environment@^24.5.0":
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.5.0.tgz#a2557f7808767abea3f9e4cc43a172122a63aca8"
+ integrity sha512-tzUHR9SHjMXwM8QmfHb/EJNbF0fjbH4ieefJBvtwO8YErLTrecc1ROj0uo2VnIT6SlpEGZnvdCK6VgKYBo8LsA==
+ dependencies:
+ "@jest/fake-timers" "^24.5.0"
+ "@jest/transform" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ "@types/node" "*"
+ jest-mock "^24.5.0"
+
+"@jest/fake-timers@^24.5.0":
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.5.0.tgz#4a29678b91fd0876144a58f8d46e6c62de0266f0"
+ integrity sha512-i59KVt3QBz9d+4Qr4QxsKgsIg+NjfuCjSOWj3RQhjF5JNy+eVJDhANQ4WzulzNCHd72srMAykwtRn5NYDGVraw==
+ dependencies:
+ "@jest/types" "^24.5.0"
+ "@types/node" "*"
+ jest-message-util "^24.5.0"
+ jest-mock "^24.5.0"
+
+"@jest/reporters@^24.5.0":
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.5.0.tgz#9363a210d0daa74696886d9cb294eb8b3ad9b4d9"
+ integrity sha512-vfpceiaKtGgnuC3ss5czWOihKOUSyjJA4M4udm6nH8xgqsuQYcyDCi4nMMcBKsHXWgz9/V5G7iisnZGfOh1w6Q==
+ dependencies:
+ "@jest/environment" "^24.5.0"
+ "@jest/test-result" "^24.5.0"
+ "@jest/transform" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ chalk "^2.0.1"
+ exit "^0.1.2"
+ glob "^7.1.2"
+ istanbul-api "^2.1.1"
+ istanbul-lib-coverage "^2.0.2"
+ istanbul-lib-instrument "^3.0.1"
+ istanbul-lib-source-maps "^3.0.1"
+ jest-haste-map "^24.5.0"
+ jest-resolve "^24.5.0"
+ jest-runtime "^24.5.0"
+ jest-util "^24.5.0"
+ jest-worker "^24.4.0"
+ node-notifier "^5.2.1"
+ slash "^2.0.0"
+ source-map "^0.6.0"
+ string-length "^2.0.0"
+
+"@jest/source-map@^24.3.0":
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.3.0.tgz#563be3aa4d224caf65ff77edc95cd1ca4da67f28"
+ integrity sha512-zALZt1t2ou8le/crCeeiRYzvdnTzaIlpOWaet45lNSqNJUnXbppUUFR4ZUAlzgDmKee4Q5P/tKXypI1RiHwgag==
+ dependencies:
+ callsites "^3.0.0"
+ graceful-fs "^4.1.15"
+ source-map "^0.6.0"
+
+"@jest/test-result@^24.5.0":
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.5.0.tgz#ab66fb7741a04af3363443084e72ea84861a53f2"
+ integrity sha512-u66j2vBfa8Bli1+o3rCaVnVYa9O8CAFZeqiqLVhnarXtreSXG33YQ6vNYBogT7+nYiFNOohTU21BKiHlgmxD5A==
+ dependencies:
+ "@jest/console" "^24.3.0"
+ "@jest/types" "^24.5.0"
+ "@types/istanbul-lib-coverage" "^1.1.0"
+
+"@jest/transform@^24.5.0":
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.5.0.tgz#6709fc26db918e6af63a985f2cc3c464b4cf99d9"
+ integrity sha512-XSsDz1gdR/QMmB8UCKlweAReQsZrD/DK7FuDlNo/pE8EcKMrfi2kqLRk8h8Gy/PDzgqJj64jNEzOce9pR8oj1w==
+ dependencies:
+ "@babel/core" "^7.1.0"
+ "@jest/types" "^24.5.0"
+ babel-plugin-istanbul "^5.1.0"
+ chalk "^2.0.1"
+ convert-source-map "^1.4.0"
+ fast-json-stable-stringify "^2.0.0"
+ graceful-fs "^4.1.15"
+ jest-haste-map "^24.5.0"
+ jest-regex-util "^24.3.0"
+ jest-util "^24.5.0"
+ micromatch "^3.1.10"
+ realpath-native "^1.1.0"
+ slash "^2.0.0"
+ source-map "^0.6.1"
+ write-file-atomic "2.4.1"
+
+"@jest/types@^24.5.0":
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.5.0.tgz#feee214a4d0167b0ca447284e95a57aa10b3ee95"
+ integrity sha512-kN7RFzNMf2R8UDadPOl6ReyI+MT8xfqRuAnuVL+i4gwjv/zubdDK+EDeLHYwq1j0CSSR2W/MmgaRlMZJzXdmVA==
+ dependencies:
+ "@types/istanbul-lib-coverage" "^1.1.0"
+ "@types/yargs" "^12.0.9"
+
+"@types/babel__core@^7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.0.tgz#710f2487dda4dcfd010ca6abb2b4dc7394365c51"
+ integrity sha512-wJTeJRt7BToFx3USrCDs2BhEi4ijBInTQjOIukj6a/5tEkwpFMVZ+1ppgmE+Q/FQyc5P/VWUbx7I9NELrKruHA==
+ dependencies:
+ "@babel/parser" "^7.1.0"
+ "@babel/types" "^7.0.0"
+ "@types/babel__generator" "*"
+ "@types/babel__template" "*"
+ "@types/babel__traverse" "*"
+
+"@types/babel__generator@*":
+ version "7.0.2"
+ resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.0.2.tgz#d2112a6b21fad600d7674274293c85dce0cb47fc"
+ integrity sha512-NHcOfab3Zw4q5sEE2COkpfXjoE7o+PmqD9DQW4koUT3roNxwziUdXGnRndMat/LJNUtePwn1TlP4do3uoe3KZQ==
+ dependencies:
+ "@babel/types" "^7.0.0"
+
+"@types/babel__template@*":
+ version "7.0.2"
+ resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307"
+ integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==
+ dependencies:
+ "@babel/parser" "^7.1.0"
+ "@babel/types" "^7.0.0"
+
+"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
+ version "7.0.6"
+ resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.6.tgz#328dd1a8fc4cfe3c8458be9477b219ea158fd7b2"
+ integrity sha512-XYVgHF2sQ0YblLRMLNPB3CkFMewzFmlDsH/TneZFHUXDlABQgh88uOxuez7ZcXxayLFrqLwtDH1t+FmlFwNZxw==
+ dependencies:
+ "@babel/types" "^7.3.0"
+
+"@types/istanbul-lib-coverage@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.0.tgz#2cc2ca41051498382b43157c8227fea60363f94a"
+ integrity sha512-ohkhb9LehJy+PA40rDtGAji61NCgdtKLAlFoYp4cnuuQEswwdK3vz9SOIkkyc3wrk8dzjphQApNs56yyXLStaQ==
+
"@types/node@*":
version "10.12.18"
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.18.tgz#1d3ca764718915584fcd9f6344621b7672665c67"
@@ -795,158 +1045,171 @@
dependencies:
csstype "^2.2.0"
-"@webassemblyjs/ast@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.11.tgz#b988582cafbb2b095e8b556526f30c90d057cace"
- integrity sha512-ZEzy4vjvTzScC+SH8RBssQUawpaInUdMTYwYYLh54/s8TuT0gBLuyUnppKsVyZEi876VmmStKsUs28UxPgdvrA==
+"@types/stack-utils@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e"
+ integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==
+
+"@types/yargs@^12.0.2", "@types/yargs@^12.0.9":
+ version "12.0.9"
+ resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-12.0.9.tgz#693e76a52f61a2f1e7fb48c0eef167b95ea4ffd0"
+ integrity sha512-sCZy4SxP9rN2w30Hlmg5dtdRwgYQfYRiLo9usw8X9cxlf+H4FqM1xX7+sNH7NNKVdbXMJWqva7iyy+fxh/V7fA==
+
+"@webassemblyjs/ast@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.8.5.tgz#51b1c5fe6576a34953bf4b253df9f0d490d9e359"
+ integrity sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==
dependencies:
- "@webassemblyjs/helper-module-context" "1.7.11"
- "@webassemblyjs/helper-wasm-bytecode" "1.7.11"
- "@webassemblyjs/wast-parser" "1.7.11"
+ "@webassemblyjs/helper-module-context" "1.8.5"
+ "@webassemblyjs/helper-wasm-bytecode" "1.8.5"
+ "@webassemblyjs/wast-parser" "1.8.5"
-"@webassemblyjs/floating-point-hex-parser@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz#a69f0af6502eb9a3c045555b1a6129d3d3f2e313"
- integrity sha512-zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg==
+"@webassemblyjs/floating-point-hex-parser@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz#1ba926a2923613edce496fd5b02e8ce8a5f49721"
+ integrity sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==
-"@webassemblyjs/helper-api-error@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz#c7b6bb8105f84039511a2b39ce494f193818a32a"
- integrity sha512-7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg==
+"@webassemblyjs/helper-api-error@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz#c49dad22f645227c5edb610bdb9697f1aab721f7"
+ integrity sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==
-"@webassemblyjs/helper-buffer@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz#3122d48dcc6c9456ed982debe16c8f37101df39b"
- integrity sha512-MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w==
+"@webassemblyjs/helper-buffer@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz#fea93e429863dd5e4338555f42292385a653f204"
+ integrity sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==
-"@webassemblyjs/helper-code-frame@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz#cf8f106e746662a0da29bdef635fcd3d1248364b"
- integrity sha512-T8ESC9KMXFTXA5urJcyor5cn6qWeZ4/zLPyWeEXZ03hj/x9weSokGNkVCdnhSabKGYWxElSdgJ+sFa9G/RdHNw==
+"@webassemblyjs/helper-code-frame@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz#9a740ff48e3faa3022b1dff54423df9aa293c25e"
+ integrity sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==
dependencies:
- "@webassemblyjs/wast-printer" "1.7.11"
+ "@webassemblyjs/wast-printer" "1.8.5"
-"@webassemblyjs/helper-fsm@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz#df38882a624080d03f7503f93e3f17ac5ac01181"
- integrity sha512-nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A==
+"@webassemblyjs/helper-fsm@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz#ba0b7d3b3f7e4733da6059c9332275d860702452"
+ integrity sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==
-"@webassemblyjs/helper-module-context@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz#d874d722e51e62ac202476935d649c802fa0e209"
- integrity sha512-JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg==
-
-"@webassemblyjs/helper-wasm-bytecode@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz#dd9a1e817f1c2eb105b4cf1013093cb9f3c9cb06"
- integrity sha512-cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ==
-
-"@webassemblyjs/helper-wasm-section@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz#9c9ac41ecf9fbcfffc96f6d2675e2de33811e68a"
- integrity sha512-8ZRY5iZbZdtNFE5UFunB8mmBEAbSI3guwbrsCl4fWdfRiAcvqQpeqd5KHhSWLL5wuxo53zcaGZDBU64qgn4I4Q==
+"@webassemblyjs/helper-module-context@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz#def4b9927b0101dc8cbbd8d1edb5b7b9c82eb245"
+ integrity sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/helper-buffer" "1.7.11"
- "@webassemblyjs/helper-wasm-bytecode" "1.7.11"
- "@webassemblyjs/wasm-gen" "1.7.11"
+ "@webassemblyjs/ast" "1.8.5"
+ mamacro "^0.0.3"
-"@webassemblyjs/ieee754@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz#c95839eb63757a31880aaec7b6512d4191ac640b"
- integrity sha512-Mmqx/cS68K1tSrvRLtaV/Lp3NZWzXtOHUW2IvDvl2sihAwJh4ACE0eL6A8FvMyDG9abes3saB6dMimLOs+HMoQ==
+"@webassemblyjs/helper-wasm-bytecode@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz#537a750eddf5c1e932f3744206551c91c1b93e61"
+ integrity sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==
+
+"@webassemblyjs/helper-wasm-section@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz#74ca6a6bcbe19e50a3b6b462847e69503e6bfcbf"
+ integrity sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==
+ dependencies:
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/helper-buffer" "1.8.5"
+ "@webassemblyjs/helper-wasm-bytecode" "1.8.5"
+ "@webassemblyjs/wasm-gen" "1.8.5"
+
+"@webassemblyjs/ieee754@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz#712329dbef240f36bf57bd2f7b8fb9bf4154421e"
+ integrity sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==
dependencies:
"@xtuc/ieee754" "^1.2.0"
-"@webassemblyjs/leb128@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.11.tgz#d7267a1ee9c4594fd3f7e37298818ec65687db63"
- integrity sha512-vuGmgZjjp3zjcerQg+JA+tGOncOnJLWVkt8Aze5eWQLwTQGNgVLcyOTqgSCxWTR4J42ijHbBxnuRaL1Rv7XMdw==
+"@webassemblyjs/leb128@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.8.5.tgz#044edeb34ea679f3e04cd4fd9824d5e35767ae10"
+ integrity sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==
dependencies:
- "@xtuc/long" "4.2.1"
+ "@xtuc/long" "4.2.2"
-"@webassemblyjs/utf8@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.11.tgz#06d7218ea9fdc94a6793aa92208160db3d26ee82"
- integrity sha512-C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA==
+"@webassemblyjs/utf8@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.8.5.tgz#a8bf3b5d8ffe986c7c1e373ccbdc2a0915f0cedc"
+ integrity sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==
-"@webassemblyjs/wasm-edit@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz#8c74ca474d4f951d01dbae9bd70814ee22a82005"
- integrity sha512-FUd97guNGsCZQgeTPKdgxJhBXkUbMTY6hFPf2Y4OedXd48H97J+sOY2Ltaq6WGVpIH8o/TGOVNiVz/SbpEMJGg==
+"@webassemblyjs/wasm-edit@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz#962da12aa5acc1c131c81c4232991c82ce56e01a"
+ integrity sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/helper-buffer" "1.7.11"
- "@webassemblyjs/helper-wasm-bytecode" "1.7.11"
- "@webassemblyjs/helper-wasm-section" "1.7.11"
- "@webassemblyjs/wasm-gen" "1.7.11"
- "@webassemblyjs/wasm-opt" "1.7.11"
- "@webassemblyjs/wasm-parser" "1.7.11"
- "@webassemblyjs/wast-printer" "1.7.11"
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/helper-buffer" "1.8.5"
+ "@webassemblyjs/helper-wasm-bytecode" "1.8.5"
+ "@webassemblyjs/helper-wasm-section" "1.8.5"
+ "@webassemblyjs/wasm-gen" "1.8.5"
+ "@webassemblyjs/wasm-opt" "1.8.5"
+ "@webassemblyjs/wasm-parser" "1.8.5"
+ "@webassemblyjs/wast-printer" "1.8.5"
-"@webassemblyjs/wasm-gen@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz#9bbba942f22375686a6fb759afcd7ac9c45da1a8"
- integrity sha512-U/KDYp7fgAZX5KPfq4NOupK/BmhDc5Kjy2GIqstMhvvdJRcER/kUsMThpWeRP8BMn4LXaKhSTggIJPOeYHwISA==
+"@webassemblyjs/wasm-gen@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz#54840766c2c1002eb64ed1abe720aded714f98bc"
+ integrity sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/helper-wasm-bytecode" "1.7.11"
- "@webassemblyjs/ieee754" "1.7.11"
- "@webassemblyjs/leb128" "1.7.11"
- "@webassemblyjs/utf8" "1.7.11"
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/helper-wasm-bytecode" "1.8.5"
+ "@webassemblyjs/ieee754" "1.8.5"
+ "@webassemblyjs/leb128" "1.8.5"
+ "@webassemblyjs/utf8" "1.8.5"
-"@webassemblyjs/wasm-opt@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz#b331e8e7cef8f8e2f007d42c3a36a0580a7d6ca7"
- integrity sha512-XynkOwQyiRidh0GLua7SkeHvAPXQV/RxsUeERILmAInZegApOUAIJfRuPYe2F7RcjOC9tW3Cb9juPvAC/sCqvg==
+"@webassemblyjs/wasm-opt@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz#b24d9f6ba50394af1349f510afa8ffcb8a63d264"
+ integrity sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/helper-buffer" "1.7.11"
- "@webassemblyjs/wasm-gen" "1.7.11"
- "@webassemblyjs/wasm-parser" "1.7.11"
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/helper-buffer" "1.8.5"
+ "@webassemblyjs/wasm-gen" "1.8.5"
+ "@webassemblyjs/wasm-parser" "1.8.5"
-"@webassemblyjs/wasm-parser@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz#6e3d20fa6a3519f6b084ef9391ad58211efb0a1a"
- integrity sha512-6lmXRTrrZjYD8Ng8xRyvyXQJYUQKYSXhJqXOBLw24rdiXsHAOlvw5PhesjdcaMadU/pyPQOJ5dHreMjBxwnQKg==
+"@webassemblyjs/wasm-parser@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz#21576f0ec88b91427357b8536383668ef7c66b8d"
+ integrity sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/helper-api-error" "1.7.11"
- "@webassemblyjs/helper-wasm-bytecode" "1.7.11"
- "@webassemblyjs/ieee754" "1.7.11"
- "@webassemblyjs/leb128" "1.7.11"
- "@webassemblyjs/utf8" "1.7.11"
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/helper-api-error" "1.8.5"
+ "@webassemblyjs/helper-wasm-bytecode" "1.8.5"
+ "@webassemblyjs/ieee754" "1.8.5"
+ "@webassemblyjs/leb128" "1.8.5"
+ "@webassemblyjs/utf8" "1.8.5"
-"@webassemblyjs/wast-parser@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz#25bd117562ca8c002720ff8116ef9072d9ca869c"
- integrity sha512-lEyVCg2np15tS+dm7+JJTNhNWq9yTZvi3qEhAIIOaofcYlUp0UR5/tVqOwa/gXYr3gjwSZqw+/lS9dscyLelbQ==
+"@webassemblyjs/wast-parser@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz#e10eecd542d0e7bd394f6827c49f3df6d4eefb8c"
+ integrity sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/floating-point-hex-parser" "1.7.11"
- "@webassemblyjs/helper-api-error" "1.7.11"
- "@webassemblyjs/helper-code-frame" "1.7.11"
- "@webassemblyjs/helper-fsm" "1.7.11"
- "@xtuc/long" "4.2.1"
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/floating-point-hex-parser" "1.8.5"
+ "@webassemblyjs/helper-api-error" "1.8.5"
+ "@webassemblyjs/helper-code-frame" "1.8.5"
+ "@webassemblyjs/helper-fsm" "1.8.5"
+ "@xtuc/long" "4.2.2"
-"@webassemblyjs/wast-printer@1.7.11":
- version "1.7.11"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz#c4245b6de242cb50a2cc950174fdbf65c78d7813"
- integrity sha512-m5vkAsuJ32QpkdkDOUPGSltrg8Cuk3KBx4YrmAGQwCZPRdUHXxG4phIOuuycLemHFr74sWL9Wthqss4fzdzSwg==
+"@webassemblyjs/wast-printer@1.8.5":
+ version "1.8.5"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz#114bbc481fd10ca0e23b3560fa812748b0bae5bc"
+ integrity sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/wast-parser" "1.7.11"
- "@xtuc/long" "4.2.1"
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/wast-parser" "1.8.5"
+ "@xtuc/long" "4.2.2"
"@xtuc/ieee754@^1.2.0":
version "1.2.0"
resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==
-"@xtuc/long@4.2.1":
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8"
- integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==
+"@xtuc/long@4.2.2":
+ version "4.2.2"
+ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
+ integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
abab@^2.0.0:
version "2.0.0"
@@ -966,12 +1229,10 @@ accepts@~1.3.4, accepts@~1.3.5:
mime-types "~2.1.18"
negotiator "0.6.1"
-acorn-dynamic-import@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278"
- integrity sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==
- dependencies:
- acorn "^5.0.0"
+acorn-dynamic-import@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948"
+ integrity sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==
acorn-globals@^4.1.0:
version "4.3.0"
@@ -986,12 +1247,12 @@ acorn-jsx@^5.0.0:
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e"
integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==
-acorn-walk@^6.0.1:
+acorn-walk@^6.0.1, acorn-walk@^6.1.1:
version "6.1.1"
resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913"
integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw==
-acorn@^5.0.0, acorn@^5.5.3, acorn@^5.6.2, acorn@^5.7.3:
+acorn@^5.5.3:
version "5.7.3"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279"
integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
@@ -1001,6 +1262,11 @@ acorn@^6.0.1, acorn@^6.0.2:
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.4.tgz#77377e7353b72ec5104550aa2d2097a2fd40b754"
integrity sha512-VY4i5EKSKkofY2I+6QLTbTTN/UvEQPCo6eiwzzSaSWfpaDhOmStMCMod6wmuPciNq+XS0faCglFu2lHZpdHUtg==
+acorn@^6.0.5, acorn@^6.0.7:
+ version "6.1.1"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.1.1.tgz#7d25ae05bb8ad1f9b699108e1094ecd7884adc1f"
+ integrity sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==
+
ajv-errors@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d"
@@ -1076,12 +1342,12 @@ anymatch@^2.0.0:
micromatch "^3.1.4"
normalize-path "^2.1.1"
-append-transform@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991"
- integrity sha1-126/jKlNJ24keja61EpLdKthGZE=
+append-transform@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-1.0.0.tgz#046a52ae582a228bd72f58acfbe2967c678759ab"
+ integrity sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==
dependencies:
- default-require-extensions "^1.0.0"
+ default-require-extensions "^2.0.0"
aproba@^1.0.3, aproba@^1.1.1:
version "1.2.0"
@@ -1111,19 +1377,12 @@ aria-query@^3.0.0:
ast-types-flow "0.0.7"
commander "^2.11.0"
-arr-diff@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf"
- integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=
- dependencies:
- arr-flatten "^1.0.1"
-
arr-diff@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=
-arr-flatten@^1.0.1, arr-flatten@^1.1.0:
+arr-flatten@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==
@@ -1168,11 +1427,6 @@ array-uniq@^1.0.1:
resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=
-array-unique@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
- integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=
-
array-unique@^0.3.2:
version "0.3.2"
resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
@@ -1255,13 +1509,20 @@ async@^1.5.2:
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=
-async@^2.1.4, async@^2.5.0:
+async@^2.5.0:
version "2.6.1"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610"
integrity sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==
dependencies:
lodash "^4.17.10"
+async@^2.6.1:
+ version "2.6.2"
+ resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381"
+ integrity sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==
+ dependencies:
+ lodash "^4.17.11"
+
asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
@@ -1272,16 +1533,16 @@ atob@^2.1.1:
resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
-autoprefixer@^9.4.3:
- version "9.4.3"
- resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.4.3.tgz#c97384a8fd80477b78049163a91bbc725d9c41d9"
- integrity sha512-/XSnzDepRkAU//xLcXA/lUWxpsBuw0WiriAHOqnxkuCtzLhaz+fL4it4gp20BQ8n5SyLzK/FOc7A0+u/rti2FQ==
+autoprefixer@^9.4.10:
+ version "9.4.10"
+ resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.4.10.tgz#e1be61fc728bacac8f4252ed242711ec0dcc6a7b"
+ integrity sha512-XR8XZ09tUrrSzgSlys4+hy5r2/z4Jp7Ag3pHm31U4g/CTccYPOVe19AkaJ4ey/vRd1sfj+5TtuD6I0PXtutjvQ==
dependencies:
- browserslist "^4.3.6"
- caniuse-lite "^1.0.30000921"
+ browserslist "^4.4.2"
+ caniuse-lite "^1.0.30000940"
normalize-range "^0.1.2"
num2fraction "^1.2.2"
- postcss "^7.0.6"
+ postcss "^7.0.14"
postcss-value-parser "^3.3.1"
aws-sign2@~0.7.0:
@@ -1309,45 +1570,6 @@ axobject-query@^2.0.1:
dependencies:
ast-types-flow "0.0.7"
-babel-code-frame@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
- integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=
- dependencies:
- chalk "^1.1.3"
- esutils "^2.0.2"
- js-tokens "^3.0.2"
-
-babel-core@^6.0.0, babel-core@^6.26.0:
- version "6.26.3"
- resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207"
- integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==
- dependencies:
- babel-code-frame "^6.26.0"
- babel-generator "^6.26.0"
- babel-helpers "^6.24.1"
- babel-messages "^6.23.0"
- babel-register "^6.26.0"
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- convert-source-map "^1.5.1"
- debug "^2.6.9"
- json5 "^0.5.1"
- lodash "^4.17.4"
- minimatch "^3.0.4"
- path-is-absolute "^1.0.1"
- private "^0.1.8"
- slash "^1.0.0"
- source-map "^0.5.7"
-
-babel-core@^7.0.0-bridge.0:
- version "7.0.0-bridge.0"
- resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece"
- integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==
-
babel-eslint@^10.0.1:
version "10.0.1"
resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz#919681dc099614cd7d31d45c8908695092a1faed"
@@ -1360,67 +1582,44 @@ babel-eslint@^10.0.1:
eslint-scope "3.7.1"
eslint-visitor-keys "^1.0.0"
-babel-generator@^6.18.0, babel-generator@^6.26.0:
- version "6.26.1"
- resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
- integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==
+babel-jest@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.5.0.tgz#0ea042789810c2bec9065f7c8ab4dc18e1d28559"
+ integrity sha512-0fKCXyRwxFTJL0UXDJiT2xYxO9Lu2vBd9n+cC+eDjESzcVG3s2DRGAxbzJX21fceB1WYoBjAh8pQ83dKcl003g==
dependencies:
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- detect-indent "^4.0.0"
- jsesc "^1.3.0"
- lodash "^4.17.4"
- source-map "^0.5.7"
- trim-right "^1.0.1"
+ "@jest/transform" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ "@types/babel__core" "^7.1.0"
+ babel-plugin-istanbul "^5.1.0"
+ babel-preset-jest "^24.3.0"
+ chalk "^2.4.2"
+ slash "^2.0.0"
-babel-helpers@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
- integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=
+babel-loader@^8.0.5:
+ version "8.0.5"
+ resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.5.tgz#225322d7509c2157655840bba52e46b6c2f2fe33"
+ integrity sha512-NTnHnVRd2JnRqPC0vW+iOQWU5pchDbYXsG2E6DMXEpMfUcQKclF9gmf3G3ZMhzG7IG9ji4coL0cm+FxeWxDpnw==
dependencies:
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-jest@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-23.6.0.tgz#a644232366557a2240a0c083da6b25786185a2f1"
- integrity sha512-lqKGG6LYXYu+DQh/slrQ8nxXQkEkhugdXsU6St7GmhVS7Ilc/22ArwqXNJrf0QaOBjZB0360qZMwXqDYQHXaew==
- dependencies:
- babel-plugin-istanbul "^4.1.6"
- babel-preset-jest "^23.2.0"
-
-babel-loader@^8.0.4:
- version "8.0.4"
- resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.4.tgz#7bbf20cbe4560629e2e41534147692d3fecbdce6"
- integrity sha512-fhBhNkUToJcW9nV46v8w87AJOwAJDz84c1CL57n3Stj73FANM/b9TbCUK4YhdOwEyZ+OxhYpdeZDNzSI29Firw==
- dependencies:
- find-cache-dir "^1.0.0"
+ find-cache-dir "^2.0.0"
loader-utils "^1.0.2"
mkdirp "^0.5.1"
util.promisify "^1.0.0"
-babel-messages@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
- integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=
+babel-plugin-istanbul@^5.1.0:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.1.1.tgz#7981590f1956d75d67630ba46f0c22493588c893"
+ integrity sha512-RNNVv2lsHAXJQsEJ5jonQwrJVWK8AcZpG1oxhnjCUaAjL7xahYLANhPUZbzEQHjKy1NMYUwn+0NPKQc8iSY4xQ==
dependencies:
- babel-runtime "^6.22.0"
+ find-up "^3.0.0"
+ istanbul-lib-instrument "^3.0.0"
+ test-exclude "^5.0.0"
-babel-plugin-istanbul@^4.1.6:
- version "4.1.6"
- resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45"
- integrity sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ==
+babel-plugin-jest-hoist@^24.3.0:
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.3.0.tgz#f2e82952946f6e40bb0a75d266a3790d854c8b5b"
+ integrity sha512-nWh4N1mVH55Tzhx2isvUN5ebM5CDUvIpXPZYMRazQughie/EqGnbR+czzoQlhUmJG9pPJmYDRhvocotb2THl1w==
dependencies:
- babel-plugin-syntax-object-rest-spread "^6.13.0"
- find-up "^2.1.0"
- istanbul-lib-instrument "^1.10.1"
- test-exclude "^4.2.1"
-
-babel-plugin-jest-hoist@^23.2.0:
- version "23.2.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz#e61fae05a1ca8801aadee57a6d66b8cefaf44167"
- integrity sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc=
+ "@types/babel__traverse" "^7.0.6"
babel-plugin-lodash@^3.3.4:
version "3.3.4"
@@ -1458,38 +1657,20 @@ babel-plugin-react-intl@^3.0.1:
intl-messageformat-parser "^1.2.0"
mkdirp "^0.5.1"
-babel-plugin-syntax-object-rest-spread@^6.13.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5"
- integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=
+babel-plugin-transform-react-remove-prop-types@^0.4.24:
+ version "0.4.24"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz#f2edaf9b4c6a5fbe5c1d678bfb531078c1555f3a"
+ integrity sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==
-babel-plugin-transform-react-remove-prop-types@^0.4.21:
- version "0.4.21"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.21.tgz#0087938f4348cb751b3e5055a6b38f3c61b5231b"
- integrity sha512-+gQBtcnEhYFbMPFGr8YL7SHD4BpHifFDGEc+ES0+1iDwC9psist2+eumcLoHjBMumL7N/HI/G64XR5aQC8Nr5Q==
-
-babel-preset-jest@^23.2.0:
- version "23.2.0"
- resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz#8ec7a03a138f001a1a8fb1e8113652bf1a55da46"
- integrity sha1-jsegOhOPABoaj7HoETZSvxpV2kY=
+babel-preset-jest@^24.3.0:
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.3.0.tgz#db88497e18869f15b24d9c0e547d8e0ab950796d"
+ integrity sha512-VGTV2QYBa/Kn3WCOKdfS31j9qomaXSgJqi65B6o05/1GsJyj9LVhSljM9ro4S+IBGj/ENhNBuH9bpqzztKAQSw==
dependencies:
- babel-plugin-jest-hoist "^23.2.0"
- babel-plugin-syntax-object-rest-spread "^6.13.0"
+ "@babel/plugin-syntax-object-rest-spread" "^7.0.0"
+ babel-plugin-jest-hoist "^24.3.0"
-babel-register@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
- integrity sha1-btAhFz4vy0htestFxgCahW9kcHE=
- dependencies:
- babel-core "^6.26.0"
- babel-runtime "^6.26.0"
- core-js "^2.5.0"
- home-or-tmp "^2.0.0"
- lodash "^4.17.4"
- mkdirp "^0.5.1"
- source-map-support "^0.4.15"
-
-babel-runtime@^6.22.0, babel-runtime@^6.26.0:
+babel-runtime@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4=
@@ -1497,47 +1678,6 @@ babel-runtime@^6.22.0, babel-runtime@^6.26.0:
core-js "^2.4.0"
regenerator-runtime "^0.11.0"
-babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
- integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=
- dependencies:
- babel-runtime "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- lodash "^4.17.4"
-
-babel-traverse@^6.0.0, babel-traverse@^6.18.0, babel-traverse@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
- integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=
- dependencies:
- babel-code-frame "^6.26.0"
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- debug "^2.6.8"
- globals "^9.18.0"
- invariant "^2.2.2"
- lodash "^4.17.4"
-
-babel-types@^6.0.0, babel-types@^6.18.0, babel-types@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
- integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=
- dependencies:
- babel-runtime "^6.26.0"
- esutils "^2.0.2"
- lodash "^4.17.4"
- to-fast-properties "^1.0.3"
-
-babylon@^6.18.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
- integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==
-
backoff@^2.4.1:
version "2.5.0"
resolved "https://registry.yarnpkg.com/backoff/-/backoff-2.5.0.tgz#f616eda9d3e4b66b8ca7fca79f695722c5f8e26f"
@@ -1656,15 +1796,6 @@ brace-expansion@^1.1.7:
balanced-match "^1.0.0"
concat-map "0.0.1"
-braces@^1.8.2:
- version "1.8.5"
- resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7"
- integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=
- dependencies:
- expand-range "^1.8.1"
- preserve "^0.2.0"
- repeat-element "^1.1.2"
-
braces@^2.3.0, braces@^2.3.1:
version "2.3.2"
resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
@@ -1764,7 +1895,7 @@ browserify-zlib@^0.2.0:
dependencies:
pako "~1.0.5"
-browserslist@^4.0.0, browserslist@^4.3.4, browserslist@^4.3.6:
+browserslist@^4.0.0, browserslist@^4.3.4:
version "4.3.7"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.3.7.tgz#f1de479a6466ea47a0a26dcc725e7504817e624a"
integrity sha512-pWQv51Ynb0MNk9JGMCZ8VkM785/4MQNXiFYtPqI7EEP0TJO+/d/NqRVn1uiAN0DNbnlUSpL2sh16Kspasv3pUQ==
@@ -1773,6 +1904,15 @@ browserslist@^4.0.0, browserslist@^4.3.4, browserslist@^4.3.6:
electron-to-chromium "^1.3.96"
node-releases "^1.1.3"
+browserslist@^4.4.2:
+ version "4.4.2"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.4.2.tgz#6ea8a74d6464bb0bd549105f659b41197d8f0ba2"
+ integrity sha512-ISS/AIAiHERJ3d45Fz0AVYKkgcy+F/eJHzKEvv1j0wwKGKD9T3BrwKr/5g45L+Y4XIK5PlTqefHciRFcfE1Jxg==
+ dependencies:
+ caniuse-lite "^1.0.30000939"
+ electron-to-chromium "^1.3.113"
+ node-releases "^1.1.8"
+
bser@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719"
@@ -1890,6 +2030,11 @@ callsites@^2.0.0:
resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50"
integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=
+callsites@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.0.0.tgz#fb7eb569b72ad7a45812f93fd9430a3e410b3dd3"
+ integrity sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw==
+
camelcase@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
@@ -1900,6 +2045,11 @@ camelcase@^5.0.0:
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42"
integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==
+camelcase@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.2.0.tgz#e7522abda5ed94cc0489e1b8466610e88404cf45"
+ integrity sha512-IXFsBS2pC+X0j0N/GE7Dm7j3bsEBp+oTpb7F50dwEVX7rf3IgwO9XatnegTsDtniKCUtEJH4fSU6Asw7uoVLfQ==
+
caniuse-api@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0"
@@ -1910,11 +2060,16 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
-caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000921, caniuse-lite@^1.0.30000925:
+caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000925:
version "1.0.30000926"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000926.tgz#4361a99d818ca6e521dbe89a732de62a194a789c"
integrity sha512-diMkEvxfFw09SkbErCLmw/1Fx1ZZe9xfWm4aeA2PUffB48x1tfZeMsK5j4BW7zN7Y4PdqmPVVdG2eYjE5IRTag==
+caniuse-lite@^1.0.30000939, caniuse-lite@^1.0.30000940:
+ version "1.0.30000947"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000947.tgz#c30305e9701449c22e97f4e9837cea3d76aa3273"
+ integrity sha512-ubgBUfufe5Oi3W1+EHyh2C3lfBIEcZ6bTuvl5wNOpIuRB978GF/Z+pQ7pGGUpeYRB0P+8C7i/3lt6xkeu2hwnA==
+
capture-exit@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f"
@@ -1947,6 +2102,15 @@ chalk@^2.0, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.2, chalk@^2.4.1
escape-string-regexp "^1.0.5"
supports-color "^5.3.0"
+chalk@^2.4.2:
+ version "2.4.2"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
+ integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
+ dependencies:
+ ansi-styles "^3.2.1"
+ escape-string-regexp "^1.0.5"
+ supports-color "^5.3.0"
+
chardet@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
@@ -2001,10 +2165,10 @@ chrome-trace-event@^1.0.0:
dependencies:
tslib "^1.9.0"
-ci-info@^1.5.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497"
- integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==
+ci-info@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46"
+ integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==
cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
version "1.0.4"
@@ -2152,6 +2316,11 @@ commondir@^1.0.1:
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=
+compare-versions@^3.2.1:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.4.0.tgz#e0747df5c9cb7f054d6d3dc3e1dbc444f9e92b26"
+ integrity sha512-tK69D7oNXXqUW3ZNo/z7NXTEz22TCF0pTE+YF9cxvaAM9XnkLo1fV621xCLrRR6aevJlKxExkss0vWqUCUpqdg==
+
component-emitter@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"
@@ -2241,7 +2410,7 @@ content-type@~1.0.4:
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==
-convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.1:
+convert-source-map@^1.1.0, convert-source-map@^1.4.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20"
integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==
@@ -2280,7 +2449,7 @@ core-js@^1.0.0:
resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=
-core-js@^2.4.0, core-js@^2.5.0:
+core-js@^2.4.0:
version "2.6.1"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.1.tgz#87416ae817de957a3f249b3b5ca475d4aaed6042"
integrity sha512-L72mmmEayPJBejKIWe2pYtGis5r0tQ5NaJekdhyXgeMQTpJoBsH0NL4ElY2LfSoV15xeQWKQ+XTTOZdyero5Xg==
@@ -2359,15 +2528,6 @@ cross-env@^5.1.4:
cross-spawn "^6.0.5"
is-windows "^1.0.0"
-cross-spawn@^5.0.1:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
- integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=
- dependencies:
- lru-cache "^4.0.1"
- shebang-command "^1.2.0"
- which "^1.2.9"
-
cross-spawn@^6.0.0, cross-spawn@^6.0.5:
version "6.0.5"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
@@ -2441,18 +2601,19 @@ css-list-helpers@^1.0.1:
dependencies:
tcomb "^2.5.0"
-css-loader@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-2.1.0.tgz#42952ac22bca5d076978638e9813abce49b8f0cc"
- integrity sha512-MoOu+CStsGrSt5K2OeZ89q3Snf+IkxRfAIt9aAKg4piioTrhtP1iEFPu+OVn3Ohz24FO6L+rw9UJxBILiSBw5Q==
+css-loader@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-2.1.1.tgz#d8254f72e412bb2238bb44dd674ffbef497333ea"
+ integrity sha512-OcKJU/lt232vl1P9EEDamhoO9iKY3tIjY5GU+XDLblAykTdgs6Ux9P1hTHve8nFKy5KPpOXOsVI/hIwi3841+w==
dependencies:
- icss-utils "^4.0.0"
- loader-utils "^1.2.1"
- lodash "^4.17.11"
- postcss "^7.0.6"
+ camelcase "^5.2.0"
+ icss-utils "^4.1.0"
+ loader-utils "^1.2.3"
+ normalize-path "^3.0.0"
+ postcss "^7.0.14"
postcss-modules-extract-imports "^2.0.0"
- postcss-modules-local-by-default "^2.0.3"
- postcss-modules-scope "^2.0.0"
+ postcss-modules-local-by-default "^2.0.6"
+ postcss-modules-scope "^2.1.0"
postcss-modules-values "^2.0.0"
postcss-value-parser "^3.3.0"
schema-utils "^1.0.0"
@@ -2482,15 +2643,6 @@ css-select@~1.2.0:
domutils "1.5.1"
nth-check "~1.0.1"
-css-selector-tokenizer@^0.7.0:
- version "0.7.1"
- resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d"
- integrity sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==
- dependencies:
- cssesc "^0.1.0"
- fastparse "^1.1.1"
- regexpu-core "^1.0.0"
-
css-system-font-keywords@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz#85c6f086aba4eb32c571a3086affc434b84823ed"
@@ -2527,50 +2679,50 @@ css-what@2.1, css-what@^2.1.2:
resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.2.tgz#c0876d9d0480927d7d4920dcd72af3595649554d"
integrity sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==
-cssesc@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4"
- integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=
-
cssesc@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703"
integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==
-cssnano-preset-default@^4.0.6:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.6.tgz#92379e2a6db4a91c0ea727f5f556eeac693eab6a"
- integrity sha512-UPboYbFaJFtDUhJ4fqctThWbbyF4q01/7UhsZbLzp35l+nUxtzh1SifoVlEfyLM3n3Z0htd8B1YlCxy9i+bQvg==
+cssesc@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
+ integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
+
+cssnano-preset-default@^4.0.7:
+ version "4.0.7"
+ resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76"
+ integrity sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA==
dependencies:
css-declaration-sorter "^4.0.1"
cssnano-util-raw-cache "^4.0.1"
postcss "^7.0.0"
- postcss-calc "^7.0.0"
- postcss-colormin "^4.0.2"
+ postcss-calc "^7.0.1"
+ postcss-colormin "^4.0.3"
postcss-convert-values "^4.0.1"
- postcss-discard-comments "^4.0.1"
+ postcss-discard-comments "^4.0.2"
postcss-discard-duplicates "^4.0.2"
postcss-discard-empty "^4.0.1"
postcss-discard-overridden "^4.0.1"
- postcss-merge-longhand "^4.0.10"
- postcss-merge-rules "^4.0.2"
+ postcss-merge-longhand "^4.0.11"
+ postcss-merge-rules "^4.0.3"
postcss-minify-font-values "^4.0.2"
- postcss-minify-gradients "^4.0.1"
- postcss-minify-params "^4.0.1"
- postcss-minify-selectors "^4.0.1"
+ postcss-minify-gradients "^4.0.2"
+ postcss-minify-params "^4.0.2"
+ postcss-minify-selectors "^4.0.2"
postcss-normalize-charset "^4.0.1"
- postcss-normalize-display-values "^4.0.1"
- postcss-normalize-positions "^4.0.1"
- postcss-normalize-repeat-style "^4.0.1"
- postcss-normalize-string "^4.0.1"
- postcss-normalize-timing-functions "^4.0.1"
+ postcss-normalize-display-values "^4.0.2"
+ postcss-normalize-positions "^4.0.2"
+ postcss-normalize-repeat-style "^4.0.2"
+ postcss-normalize-string "^4.0.2"
+ postcss-normalize-timing-functions "^4.0.2"
postcss-normalize-unicode "^4.0.1"
postcss-normalize-url "^4.0.1"
- postcss-normalize-whitespace "^4.0.1"
- postcss-ordered-values "^4.1.1"
- postcss-reduce-initial "^4.0.2"
- postcss-reduce-transforms "^4.0.1"
- postcss-svgo "^4.0.1"
+ postcss-normalize-whitespace "^4.0.2"
+ postcss-ordered-values "^4.1.2"
+ postcss-reduce-initial "^4.0.3"
+ postcss-reduce-transforms "^4.0.2"
+ postcss-svgo "^4.0.2"
postcss-unique-selectors "^4.0.1"
cssnano-util-get-arguments@^4.0.0:
@@ -2595,13 +2747,13 @@ cssnano-util-same-parent@^4.0.0:
resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3"
integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==
-cssnano@^4.1.8:
- version "4.1.8"
- resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.8.tgz#8014989679d5fd42491e4499a521dbfb85c95fd1"
- integrity sha512-5GIY0VzAHORpbKiL3rMXp4w4M1Ki+XlXgEXyuWXVd3h6hlASb+9Vo76dNP56/elLMVBBsUfusCo1q56uW0UWig==
+cssnano@^4.1.10:
+ version "4.1.10"
+ resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2"
+ integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==
dependencies:
cosmiconfig "^5.0.0"
- cssnano-preset-default "^4.0.6"
+ cssnano-preset-default "^4.0.7"
is-resolvable "^1.0.0"
postcss "^7.0.0"
@@ -2681,21 +2833,21 @@ debug@=3.1.0:
dependencies:
ms "2.0.0"
-debug@^3.1.0, debug@^3.2.5:
+debug@^3.2.5:
version "3.2.6"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
dependencies:
ms "^2.1.1"
-debug@^4.0.1, debug@^4.1.0:
+debug@^4.0.1, debug@^4.1.0, debug@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
dependencies:
ms "^2.1.1"
-decamelize@^1.1.1, decamelize@^1.2.0:
+decamelize@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
@@ -2732,20 +2884,20 @@ deep-is@~0.1.3:
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
-default-gateway@^2.6.0:
- version "2.7.2"
- resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-2.7.2.tgz#b7ef339e5e024b045467af403d50348db4642d0f"
- integrity sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==
+default-gateway@^4.0.1:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b"
+ integrity sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==
dependencies:
- execa "^0.10.0"
+ execa "^1.0.0"
ip-regex "^2.1.0"
-default-require-extensions@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8"
- integrity sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=
+default-require-extensions@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7"
+ integrity sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=
dependencies:
- strip-bom "^2.0.0"
+ strip-bom "^3.0.0"
define-properties@^1.1.1, define-properties@^1.1.2, define-properties@^1.1.3:
version "1.1.3"
@@ -2816,12 +2968,10 @@ destroy@~1.0.4:
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=
-detect-indent@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
- integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg=
- dependencies:
- repeating "^2.0.0"
+detect-file@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
+ integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
detect-libc@^1.0.2, detect-libc@^1.0.3:
version "1.0.3"
@@ -2843,10 +2993,10 @@ detect-passive-events@^1.0.2:
resolved "https://registry.yarnpkg.com/detect-passive-events/-/detect-passive-events-1.0.4.tgz#6ed477e6e5bceb79079735dcd357789d37f9a91a"
integrity sha1-btR35uW863kHlzXc01d4nTf5qRo=
-diff@^3.2.0:
- version "3.5.0"
- resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12"
- integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==
+diff-sequences@^24.3.0:
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.3.0.tgz#0f20e8a1df1abddaf4d9c226680952e64118b975"
+ integrity sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw==
diffie-hellman@^5.0.0:
version "5.0.3"
@@ -3007,6 +3157,11 @@ ejs@^2.3.4, ejs@^2.6.1:
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.6.1.tgz#498ec0d495655abc6f23cd61868d926464071aa0"
integrity sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==
+electron-to-chromium@^1.3.113:
+ version "1.3.116"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.116.tgz#1dbfee6a592a0c14ade77dbdfe54fef86387d702"
+ integrity sha512-NKwKAXzur5vFCZYBHpdWjTMO8QptNLNP80nItkSIgUOapPAo9Uia+RvkCaZJtO7fhQaVElSvBPWEc2ku6cKsPA==
+
electron-to-chromium@^1.3.96:
version "1.3.96"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.96.tgz#25770ec99b8b07706dedf3a5f43fa50cb54c4f9a"
@@ -3408,38 +3563,10 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
md5.js "^1.3.4"
safe-buffer "^5.1.1"
-exec-sh@^0.2.0:
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36"
- integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw==
- dependencies:
- merge "^1.2.0"
-
-execa@^0.10.0:
- version "0.10.0"
- resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50"
- integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==
- dependencies:
- cross-spawn "^6.0.0"
- get-stream "^3.0.0"
- is-stream "^1.1.0"
- npm-run-path "^2.0.0"
- p-finally "^1.0.0"
- signal-exit "^3.0.0"
- strip-eof "^1.0.0"
-
-execa@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777"
- integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=
- dependencies:
- cross-spawn "^5.0.1"
- get-stream "^3.0.0"
- is-stream "^1.1.0"
- npm-run-path "^2.0.0"
- p-finally "^1.0.0"
- signal-exit "^3.0.0"
- strip-eof "^1.0.0"
+exec-sh@^0.3.2:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.2.tgz#6738de2eb7c8e671d0366aea0b0db8c6f7d7391b"
+ integrity sha512-9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg==
execa@^1.0.0:
version "1.0.0"
@@ -3464,13 +3591,6 @@ exit@^0.1.2:
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
-expand-brackets@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
- integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=
- dependencies:
- is-posix-bracket "^0.1.0"
-
expand-brackets@^2.1.4:
version "2.1.4"
resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
@@ -3484,24 +3604,24 @@ expand-brackets@^2.1.4:
snapdragon "^0.8.1"
to-regex "^3.0.1"
-expand-range@^1.8.1:
- version "1.8.2"
- resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337"
- integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=
+expand-tilde@^2.0.0, expand-tilde@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502"
+ integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=
dependencies:
- fill-range "^2.1.0"
+ homedir-polyfill "^1.0.1"
-expect@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/expect/-/expect-23.6.0.tgz#1e0c8d3ba9a581c87bd71fb9bc8862d443425f98"
- integrity sha512-dgSoOHgmtn/aDGRVFWclQyPDKl2CQRq0hmIEoUAuQs/2rn2NcvCWcSCovm6BLeuB/7EZuLGu2QfnR+qRt5OM4w==
+expect@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-24.5.0.tgz#492fb0df8378d8474cc84b827776b069f46294ed"
+ integrity sha512-p2Gmc0CLxOgkyA93ySWmHFYHUPFIHG6XZ06l7WArWAsrqYVaVEkOU5NtT5i68KUyGKbkQgDCkiT65bWmdoL6Bw==
dependencies:
+ "@jest/types" "^24.5.0"
ansi-styles "^3.2.0"
- jest-diff "^23.6.0"
- jest-get-type "^22.1.0"
- jest-matcher-utils "^23.6.0"
- jest-message-util "^23.4.0"
- jest-regex-util "^23.3.0"
+ jest-get-type "^24.3.0"
+ jest-matcher-utils "^24.5.0"
+ jest-message-util "^24.5.0"
+ jest-regex-util "^24.3.0"
express@^4.16.2, express@^4.16.3, express@^4.16.4:
version "4.16.4"
@@ -3568,13 +3688,6 @@ external-editor@^3.0.0:
iconv-lite "^0.4.24"
tmp "^0.0.33"
-extglob@^0.3.1:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
- integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=
- dependencies:
- is-extglob "^1.0.0"
-
extglob@^2.0.4:
version "2.0.4"
resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
@@ -3614,11 +3727,6 @@ fast-levenshtein@~2.0.4:
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
-fastparse@^1.1.1:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9"
- integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==
-
faye-websocket@^0.10.0:
version "0.10.0"
resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4"
@@ -3688,12 +3796,7 @@ file-loader@^3.0.1:
loader-utils "^1.0.2"
schema-utils "^1.0.0"
-filename-regex@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
- integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=
-
-fileset@^2.0.2:
+fileset@^2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0"
integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=
@@ -3706,17 +3809,6 @@ filesize@^3.6.1:
resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317"
integrity sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==
-fill-range@^2.1.0:
- version "2.2.4"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565"
- integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==
- dependencies:
- is-number "^2.1.0"
- isobject "^2.0.0"
- randomatic "^3.0.0"
- repeat-element "^1.1.2"
- repeat-string "^1.5.2"
-
fill-range@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
@@ -3740,15 +3832,6 @@ finalhandler@1.1.1:
statuses "~1.4.0"
unpipe "~1.0.0"
-find-cache-dir@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f"
- integrity sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=
- dependencies:
- commondir "^1.0.1"
- make-dir "^1.0.0"
- pkg-dir "^2.0.0"
-
find-cache-dir@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.0.0.tgz#4c1faed59f45184530fb9d7fa123a4d04a98472d"
@@ -3766,7 +3849,7 @@ find-up@^1.0.0:
path-exists "^2.0.0"
pinkie-promise "^2.0.0"
-find-up@^2.0.0, find-up@^2.1.0:
+find-up@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c=
@@ -3780,6 +3863,16 @@ find-up@^3.0.0:
dependencies:
locate-path "^3.0.0"
+findup-sync@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc"
+ integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=
+ dependencies:
+ detect-file "^1.0.0"
+ is-glob "^3.1.0"
+ micromatch "^3.0.4"
+ resolve-dir "^1.0.1"
+
flat-cache@^1.2.1:
version "1.3.4"
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.4.tgz#2c2ef77525cc2929007dfffa1dd314aa9c9dee6f"
@@ -3820,13 +3913,6 @@ for-in@^1.0.1, for-in@^1.0.2:
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=
-for-own@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce"
- integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=
- dependencies:
- for-in "^1.0.1"
-
for-own@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b"
@@ -3895,7 +3981,7 @@ fs.realpath@^1.0.0:
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
-fsevents@*, fsevents@^1.2.2, fsevents@^1.2.3:
+fsevents@^1.2.2:
version "1.2.4"
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426"
integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==
@@ -3946,11 +4032,6 @@ get-caller-file@^1.0.1:
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==
-get-stream@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14"
- integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=
-
get-stream@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
@@ -3970,21 +4051,6 @@ getpass@^0.1.1:
dependencies:
assert-plus "^1.0.0"
-glob-base@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
- integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=
- dependencies:
- glob-parent "^2.0.0"
- is-glob "^2.0.0"
-
-glob-parent@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28"
- integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=
- dependencies:
- is-glob "^2.0.0"
-
glob-parent@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
@@ -4005,21 +4071,31 @@ glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3:
once "^1.3.0"
path-is-absolute "^1.0.0"
-global-modules-path@^2.3.0:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/global-modules-path/-/global-modules-path-2.3.1.tgz#e541f4c800a1a8514a990477b267ac67525b9931"
- integrity sha512-y+shkf4InI7mPRHSo2b/k6ix6+NLDtyccYv86whhxrSGX9wjPX1VMITmrDbE1eh7zkzhiWtW2sHklJYoQ62Cxg==
+global-modules@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea"
+ integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==
+ dependencies:
+ global-prefix "^1.0.1"
+ is-windows "^1.0.1"
+ resolve-dir "^1.0.0"
+
+global-prefix@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe"
+ integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=
+ dependencies:
+ expand-tilde "^2.0.2"
+ homedir-polyfill "^1.0.1"
+ ini "^1.3.4"
+ is-windows "^1.0.1"
+ which "^1.2.14"
globals@^11.1.0, globals@^11.7.0:
version "11.9.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz#bde236808e987f290768a93d065060d78e6ab249"
integrity sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==
-globals@^9.18.0:
- version "9.18.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
- integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==
-
globby@^6.1.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c"
@@ -4054,10 +4130,10 @@ handle-thing@^2.0.0:
resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754"
integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==
-handlebars@^4.0.3:
- version "4.0.12"
- resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.12.tgz#2c15c8a96d46da5e266700518ba8cb8d919d5bc5"
- integrity sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA==
+handlebars@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.0.tgz#0d6a6f34ff1f63cecec8423aa4169827bf787c3a"
+ integrity sha512-l2jRuU1NAWK6AW5qqcTATWQJvNPEwkM7NEKSiv/gqOsoSQbVoWyqVEY5GS+XPQ88zLNmqASRpzfdm8d79hJS+w==
dependencies:
async "^2.5.0"
optimist "^0.6.1"
@@ -4196,13 +4272,12 @@ hoist-non-react-statics@^3.2.1:
dependencies:
react-is "^16.3.2"
-home-or-tmp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
- integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg=
+homedir-polyfill@^1.0.1:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8"
+ integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==
dependencies:
- os-homedir "^1.0.0"
- os-tmpdir "^1.0.1"
+ parse-passwd "^1.0.0"
hoopy@^0.1.2:
version "0.1.4"
@@ -4288,17 +4363,17 @@ http-parser-js@>=0.4.0:
resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.0.tgz#d65edbede84349d0dc30320815a15d39cc3cbbd8"
integrity sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==
-http-proxy-middleware@~0.18.0:
- version "0.18.0"
- resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab"
- integrity sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==
+http-proxy-middleware@^0.19.1:
+ version "0.19.1"
+ resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a"
+ integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==
dependencies:
- http-proxy "^1.16.2"
+ http-proxy "^1.17.0"
is-glob "^4.0.0"
- lodash "^4.17.5"
- micromatch "^3.1.9"
+ lodash "^4.17.11"
+ micromatch "^3.1.10"
-http-proxy@^1.16.2:
+http-proxy@^1.17.0:
version "1.17.0"
resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a"
integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==
@@ -4340,12 +4415,12 @@ icss-replace-symbols@^1.1.0:
resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded"
integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=
-icss-utils@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.0.0.tgz#d52cf4bcdcfa1c45c2dbefb4ffdf6b00ef608098"
- integrity sha512-bA/xGiwWM17qjllIs9X/y0EjsB7e0AV08F3OL8UPsoNkNRibIuu8f1eKTnQ8QO1DteKKTxTUAn+IEWUToIwGOA==
+icss-utils@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.0.tgz#339dbbffb9f8729a243b701e1c29d4cc58c52f0e"
+ integrity sha512-3DEun4VOeMvSczifM3F2cKQrDQ5Pj6WKhkOq6HD4QTnDUAq8MQRxy5TX6Sy1iY6WPBe4gQ3p5vTECjbIkglkkQ==
dependencies:
- postcss "^7.0.5"
+ postcss "^7.0.14"
ieee754@^1.1.4:
version "1.1.12"
@@ -4396,14 +4471,6 @@ import-from@^2.1.0:
dependencies:
resolve-from "^3.0.0"
-import-local@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc"
- integrity sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==
- dependencies:
- pkg-dir "^2.0.0"
- resolve-cwd "^2.0.0"
-
import-local@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d"
@@ -4453,7 +4520,7 @@ inherits@2.0.1:
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=
-ini@~1.3.0:
+ini@^1.3.4, ini@~1.3.0:
version "1.3.5"
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
@@ -4477,13 +4544,13 @@ inquirer@^6.1.0:
strip-ansi "^5.0.0"
through "^2.3.6"
-internal-ip@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-3.0.1.tgz#df5c99876e1d2eb2ea2d74f520e3f669a00ece27"
- integrity sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q==
+internal-ip@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.2.0.tgz#46e81b638d84c338e5c67e42b1a17db67d0814fa"
+ integrity sha512-ZY8Rk+hlvFeuMmG5uH1MXhhdeMntmIaxaInvAmzMq/SHV8rv4Kh+6GiQNNDQd0wZFrcO+FiTBo8lui/osKOyJw==
dependencies:
- default-gateway "^2.6.0"
- ipaddr.js "^1.5.2"
+ default-gateway "^4.0.1"
+ ipaddr.js "^1.9.0"
interpret@^1.1.0:
version "1.2.0"
@@ -4531,11 +4598,6 @@ invariant@^2.1.1, invariant@^2.2.1, invariant@^2.2.2, invariant@^2.2.4:
dependencies:
loose-envify "^1.0.0"
-invert-kv@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
- integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY=
-
invert-kv@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02"
@@ -4556,10 +4618,10 @@ ipaddr.js@1.8.0:
resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e"
integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4=
-ipaddr.js@^1.5.2:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.1.tgz#fa4b79fa47fd3def5e3b159825161c0a519c9427"
- integrity sha1-+kt5+kf9Pe9eOxWYJRYcClGclCc=
+ipaddr.js@^1.9.0:
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65"
+ integrity sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==
is-absolute-url@^2.0.0:
version "2.1.0"
@@ -4619,12 +4681,12 @@ is-callable@^1.1.3, is-callable@^1.1.4:
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
-is-ci@^1.0.10:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c"
- integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==
+is-ci@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
+ integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==
dependencies:
- ci-info "^1.5.0"
+ ci-info "^2.0.0"
is-color-stop@^1.0.0:
version "1.1.0"
@@ -4680,18 +4742,6 @@ is-directory@^0.3.1:
resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1"
integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=
-is-dotfile@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1"
- integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=
-
-is-equal-shallow@^0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534"
- integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=
- dependencies:
- is-primitive "^2.0.0"
-
is-extendable@^0.1.0, is-extendable@^0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
@@ -4704,23 +4754,11 @@ is-extendable@^1.0.1:
dependencies:
is-plain-object "^2.0.4"
-is-extglob@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0"
- integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=
-
is-extglob@^2.1.0, is-extglob@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
-is-finite@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
- integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=
- dependencies:
- number-is-nan "^1.0.0"
-
is-fullwidth-code-point@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
@@ -4733,17 +4771,10 @@ is-fullwidth-code-point@^2.0.0:
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
-is-generator-fn@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a"
- integrity sha1-lp1J4bszKfa7fwkIm+JleLLd1Go=
-
-is-glob@^2.0.0, is-glob@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863"
- integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=
- dependencies:
- is-extglob "^1.0.0"
+is-generator-fn@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.0.0.tgz#038c31b774709641bda678b1f06a4e3227c10b3e"
+ integrity sha512-elzyIdM7iKoFHzcrndIqjYomImhxrFRnGP3galODoII4TB9gI7mZ+FnlLQmmjf27SxHS2gKEeyhX5/+YRS6H9g==
is-glob@^3.1.0:
version "3.1.0"
@@ -4771,13 +4802,6 @@ is-number-object@^1.0.3:
resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.3.tgz#f265ab89a9f445034ef6aff15a8f00b00f551799"
integrity sha1-8mWrian0RQNO9q/xWo8AsA9VF5k=
-is-number@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
- integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=
- dependencies:
- kind-of "^3.0.2"
-
is-number@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
@@ -4785,11 +4809,6 @@ is-number@^3.0.0:
dependencies:
kind-of "^3.0.2"
-is-number@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff"
- integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==
-
is-obj@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
@@ -4821,16 +4840,6 @@ is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
dependencies:
isobject "^3.0.1"
-is-posix-bracket@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
- integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=
-
-is-primitive@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575"
- integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU=
-
is-promise@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
@@ -4882,12 +4891,7 @@ is-typedarray@~1.0.0:
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
-is-utf8@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
- integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
-
-is-windows@^1.0.0, is-windows@^1.0.2:
+is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
@@ -4937,392 +4941,426 @@ isstream@~0.1.2:
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
-istanbul-api@^1.3.1:
- version "1.3.7"
- resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.7.tgz#a86c770d2b03e11e3f778cd7aedd82d2722092aa"
- integrity sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA==
+istanbul-api@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-2.1.1.tgz#194b773f6d9cbc99a9258446848b0f988951c4d0"
+ integrity sha512-kVmYrehiwyeBAk/wE71tW6emzLiHGjYIiDrc8sfyty4F8M02/lrgXSm+R1kXysmF20zArvmZXjlE/mg24TVPJw==
dependencies:
- async "^2.1.4"
- fileset "^2.0.2"
- istanbul-lib-coverage "^1.2.1"
- istanbul-lib-hook "^1.2.2"
- istanbul-lib-instrument "^1.10.2"
- istanbul-lib-report "^1.1.5"
- istanbul-lib-source-maps "^1.2.6"
- istanbul-reports "^1.5.1"
- js-yaml "^3.7.0"
- mkdirp "^0.5.1"
+ async "^2.6.1"
+ compare-versions "^3.2.1"
+ fileset "^2.0.3"
+ istanbul-lib-coverage "^2.0.3"
+ istanbul-lib-hook "^2.0.3"
+ istanbul-lib-instrument "^3.1.0"
+ istanbul-lib-report "^2.0.4"
+ istanbul-lib-source-maps "^3.0.2"
+ istanbul-reports "^2.1.1"
+ js-yaml "^3.12.0"
+ make-dir "^1.3.0"
+ minimatch "^3.0.4"
once "^1.4.0"
-istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0"
- integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==
+istanbul-lib-coverage@^2.0.2, istanbul-lib-coverage@^2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#0b891e5ad42312c2b9488554f603795f9a2211ba"
+ integrity sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==
-istanbul-lib-hook@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz#bc6bf07f12a641fbf1c85391d0daa8f0aea6bf86"
- integrity sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw==
+istanbul-lib-hook@^2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-2.0.3.tgz#e0e581e461c611be5d0e5ef31c5f0109759916fb"
+ integrity sha512-CLmEqwEhuCYtGcpNVJjLV1DQyVnIqavMLFHV/DP+np/g3qvdxu3gsPqYoJMXm15sN84xOlckFB3VNvRbf5yEgA==
dependencies:
- append-transform "^0.4.0"
+ append-transform "^1.0.0"
-istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.10.2:
- version "1.10.2"
- resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca"
- integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==
+istanbul-lib-instrument@^3.0.0, istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.1.0.tgz#a2b5484a7d445f1f311e93190813fa56dfb62971"
+ integrity sha512-ooVllVGT38HIk8MxDj/OIHXSYvH+1tq/Vb38s8ixt9GoJadXska4WkGY+0wkmtYCZNYtaARniH/DixUGGLZ0uA==
dependencies:
- babel-generator "^6.18.0"
- babel-template "^6.16.0"
- babel-traverse "^6.18.0"
- babel-types "^6.18.0"
- babylon "^6.18.0"
- istanbul-lib-coverage "^1.2.1"
- semver "^5.3.0"
+ "@babel/generator" "^7.0.0"
+ "@babel/parser" "^7.0.0"
+ "@babel/template" "^7.0.0"
+ "@babel/traverse" "^7.0.0"
+ "@babel/types" "^7.0.0"
+ istanbul-lib-coverage "^2.0.3"
+ semver "^5.5.0"
-istanbul-lib-report@^1.1.5:
- version "1.1.5"
- resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz#f2a657fc6282f96170aaf281eb30a458f7f4170c"
- integrity sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw==
+istanbul-lib-report@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.4.tgz#bfd324ee0c04f59119cb4f07dab157d09f24d7e4"
+ integrity sha512-sOiLZLAWpA0+3b5w5/dq0cjm2rrNdAfHWaGhmn7XEFW6X++IV9Ohn+pnELAl9K3rfpaeBfbmH9JU5sejacdLeA==
dependencies:
- istanbul-lib-coverage "^1.2.1"
- mkdirp "^0.5.1"
- path-parse "^1.0.5"
- supports-color "^3.1.2"
+ istanbul-lib-coverage "^2.0.3"
+ make-dir "^1.3.0"
+ supports-color "^6.0.0"
-istanbul-lib-source-maps@^1.2.4, istanbul-lib-source-maps@^1.2.6:
- version "1.2.6"
- resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz#37b9ff661580f8fca11232752ee42e08c6675d8f"
- integrity sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg==
+istanbul-lib-source-maps@^3.0.1, istanbul-lib-source-maps@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.2.tgz#f1e817229a9146e8424a28e5d69ba220fda34156"
+ integrity sha512-JX4v0CiKTGp9fZPmoxpu9YEkPbEqCqBbO3403VabKjH+NRXo72HafD5UgnjTEqHL2SAjaZK1XDuDOkn6I5QVfQ==
dependencies:
- debug "^3.1.0"
- istanbul-lib-coverage "^1.2.1"
- mkdirp "^0.5.1"
- rimraf "^2.6.1"
- source-map "^0.5.3"
+ debug "^4.1.1"
+ istanbul-lib-coverage "^2.0.3"
+ make-dir "^1.3.0"
+ rimraf "^2.6.2"
+ source-map "^0.6.1"
-istanbul-reports@^1.5.1:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.5.1.tgz#97e4dbf3b515e8c484caea15d6524eebd3ff4e1a"
- integrity sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw==
+istanbul-reports@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.1.1.tgz#72ef16b4ecb9a4a7bd0e2001e00f95d1eec8afa9"
+ integrity sha512-FzNahnidyEPBCI0HcufJoSEoKykesRlFcSzQqjH9x0+LC8tnnE/p/90PBLu8iZTxr8yYZNyTtiAujUqyN+CIxw==
dependencies:
- handlebars "^4.0.3"
+ handlebars "^4.1.0"
-jest-changed-files@^23.4.2:
- version "23.4.2"
- resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-23.4.2.tgz#1eed688370cd5eebafe4ae93d34bb3b64968fe83"
- integrity sha512-EyNhTAUWEfwnK0Is/09LxoqNDOn7mU7S3EHskG52djOFS/z+IT0jT3h3Ql61+dklcG7bJJitIWEMB4Sp1piHmA==
+jest-changed-files@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.5.0.tgz#4075269ee115d87194fd5822e642af22133cf705"
+ integrity sha512-Ikl29dosYnTsH9pYa1Tv9POkILBhN/TLZ37xbzgNsZ1D2+2n+8oEZS2yP1BrHn/T4Rs4Ggwwbp/x8CKOS5YJOg==
dependencies:
+ "@jest/types" "^24.5.0"
+ execa "^1.0.0"
throat "^4.0.0"
-jest-cli@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-23.6.0.tgz#61ab917744338f443ef2baa282ddffdd658a5da4"
- integrity sha512-hgeD1zRUp1E1zsiyOXjEn4LzRLWdJBV//ukAHGlx6s5mfCNJTbhbHjgxnDUXA8fsKWN/HqFFF6X5XcCwC/IvYQ==
+jest-cli@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.5.0.tgz#598139d3446d1942fb7dc93944b9ba766d756d4b"
+ integrity sha512-P+Jp0SLO4KWN0cGlNtC7JV0dW1eSFR7eRpoOucP2UM0sqlzp/bVHeo71Omonvigrj9AvCKy7NtQANtqJ7FXz8g==
dependencies:
- ansi-escapes "^3.0.0"
+ "@jest/core" "^24.5.0"
+ "@jest/test-result" "^24.5.0"
+ "@jest/types" "^24.5.0"
chalk "^2.0.1"
exit "^0.1.2"
- glob "^7.1.2"
- graceful-fs "^4.1.11"
- import-local "^1.0.0"
- is-ci "^1.0.10"
- istanbul-api "^1.3.1"
- istanbul-lib-coverage "^1.2.0"
- istanbul-lib-instrument "^1.10.1"
- istanbul-lib-source-maps "^1.2.4"
- jest-changed-files "^23.4.2"
- jest-config "^23.6.0"
- jest-environment-jsdom "^23.4.0"
- jest-get-type "^22.1.0"
- jest-haste-map "^23.6.0"
- jest-message-util "^23.4.0"
- jest-regex-util "^23.3.0"
- jest-resolve-dependencies "^23.6.0"
- jest-runner "^23.6.0"
- jest-runtime "^23.6.0"
- jest-snapshot "^23.6.0"
- jest-util "^23.4.0"
- jest-validate "^23.6.0"
- jest-watcher "^23.4.0"
- jest-worker "^23.2.0"
- micromatch "^2.3.11"
- node-notifier "^5.2.1"
- prompts "^0.1.9"
- realpath-native "^1.0.0"
- rimraf "^2.5.4"
- slash "^1.0.0"
- string-length "^2.0.0"
- strip-ansi "^4.0.0"
- which "^1.2.12"
- yargs "^11.0.0"
+ import-local "^2.0.0"
+ is-ci "^2.0.0"
+ jest-config "^24.5.0"
+ jest-util "^24.5.0"
+ jest-validate "^24.5.0"
+ prompts "^2.0.1"
+ realpath-native "^1.1.0"
+ yargs "^12.0.2"
-jest-config@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-23.6.0.tgz#f82546a90ade2d8c7026fbf6ac5207fc22f8eb1d"
- integrity sha512-i8V7z9BeDXab1+VNo78WM0AtWpBRXJLnkT+lyT+Slx/cbP5sZJ0+NDuLcmBE5hXAoK0aUp7vI+MOxR+R4d8SRQ==
+jest-config@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.5.0.tgz#404d1bc6bb81aed6bd1890d07e2dca9fbba2e121"
+ integrity sha512-t2UTh0Z2uZhGBNVseF8wA2DS2SuBiLOL6qpLq18+OZGfFUxTM7BzUVKyHFN/vuN+s/aslY1COW95j1Rw81huOQ==
dependencies:
- babel-core "^6.0.0"
- babel-jest "^23.6.0"
+ "@babel/core" "^7.1.0"
+ "@jest/types" "^24.5.0"
+ babel-jest "^24.5.0"
chalk "^2.0.1"
glob "^7.1.1"
- jest-environment-jsdom "^23.4.0"
- jest-environment-node "^23.4.0"
- jest-get-type "^22.1.0"
- jest-jasmine2 "^23.6.0"
- jest-regex-util "^23.3.0"
- jest-resolve "^23.6.0"
- jest-util "^23.4.0"
- jest-validate "^23.6.0"
- micromatch "^2.3.11"
- pretty-format "^23.6.0"
+ jest-environment-jsdom "^24.5.0"
+ jest-environment-node "^24.5.0"
+ jest-get-type "^24.3.0"
+ jest-jasmine2 "^24.5.0"
+ jest-regex-util "^24.3.0"
+ jest-resolve "^24.5.0"
+ jest-util "^24.5.0"
+ jest-validate "^24.5.0"
+ micromatch "^3.1.10"
+ pretty-format "^24.5.0"
+ realpath-native "^1.1.0"
-jest-diff@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-23.6.0.tgz#1500f3f16e850bb3d71233408089be099f610c7d"
- integrity sha512-Gz9l5Ov+X3aL5L37IT+8hoCUsof1CVYBb2QEkOupK64XyRR3h+uRpYIm97K7sY8diFxowR8pIGEdyfMKTixo3g==
+jest-diff@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.5.0.tgz#a2d8627964bb06a91893c0fbcb28ab228c257652"
+ integrity sha512-mCILZd9r7zqL9Uh6yNoXjwGQx0/J43OD2vvWVKwOEOLZliQOsojXwqboubAQ+Tszrb6DHGmNU7m4whGeB9YOqw==
dependencies:
chalk "^2.0.1"
- diff "^3.2.0"
- jest-get-type "^22.1.0"
- pretty-format "^23.6.0"
+ diff-sequences "^24.3.0"
+ jest-get-type "^24.3.0"
+ pretty-format "^24.5.0"
-jest-docblock@^23.2.0:
- version "23.2.0"
- resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7"
- integrity sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c=
+jest-docblock@^24.3.0:
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.3.0.tgz#b9c32dac70f72e4464520d2ba4aec02ab14db5dd"
+ integrity sha512-nlANmF9Yq1dufhFlKG9rasfQlrY7wINJbo3q01tu56Jv5eBU5jirylhF2O5ZBnLxzOVBGRDz/9NAwNyBtG4Nyg==
dependencies:
detect-newline "^2.1.0"
-jest-each@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-23.6.0.tgz#ba0c3a82a8054387016139c733a05242d3d71575"
- integrity sha512-x7V6M/WGJo6/kLoissORuvLIeAoyo2YqLOoCDkohgJ4XOXSqOtyvr8FbInlAWS77ojBsZrafbozWoKVRdtxFCg==
+jest-each@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.5.0.tgz#da14d017a1b7d0f01fb458d338314cafe7f72318"
+ integrity sha512-6gy3Kh37PwIT5sNvNY2VchtIFOOBh8UCYnBlxXMb5sr5wpJUDPTUATX2Axq1Vfk+HWTMpsYPeVYp4TXx5uqUBw==
dependencies:
+ "@jest/types" "^24.5.0"
chalk "^2.0.1"
- pretty-format "^23.6.0"
+ jest-get-type "^24.3.0"
+ jest-util "^24.5.0"
+ pretty-format "^24.5.0"
-jest-environment-jsdom@^23.4.0:
- version "23.4.0"
- resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-23.4.0.tgz#056a7952b3fea513ac62a140a2c368c79d9e6023"
- integrity sha1-BWp5UrP+pROsYqFAosNox52eYCM=
+jest-environment-jsdom@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.5.0.tgz#1c3143063e1374100f8c2723a8b6aad23b6db7eb"
+ integrity sha512-62Ih5HbdAWcsqBx2ktUnor/mABBo1U111AvZWcLKeWN/n/gc5ZvDBKe4Og44fQdHKiXClrNGC6G0mBo6wrPeGQ==
dependencies:
- jest-mock "^23.2.0"
- jest-util "^23.4.0"
+ "@jest/environment" "^24.5.0"
+ "@jest/fake-timers" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ jest-mock "^24.5.0"
+ jest-util "^24.5.0"
jsdom "^11.5.1"
-jest-environment-node@^23.4.0:
- version "23.4.0"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-23.4.0.tgz#57e80ed0841dea303167cce8cd79521debafde10"
- integrity sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA=
+jest-environment-node@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.5.0.tgz#763eebdf529f75b60aa600c6cf8cb09873caa6ab"
+ integrity sha512-du6FuyWr/GbKLsmAbzNF9mpr2Iu2zWSaq/BNHzX+vgOcts9f2ayXBweS7RAhr+6bLp6qRpMB6utAMF5Ygktxnw==
dependencies:
- jest-mock "^23.2.0"
- jest-util "^23.4.0"
+ "@jest/environment" "^24.5.0"
+ "@jest/fake-timers" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ jest-mock "^24.5.0"
+ jest-util "^24.5.0"
-jest-get-type@^22.1.0:
- version "22.4.3"
- resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4"
- integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w==
+jest-get-type@^24.3.0:
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.3.0.tgz#582cfd1a4f91b5cdad1d43d2932f816d543c65da"
+ integrity sha512-HYF6pry72YUlVcvUx3sEpMRwXEWGEPlJ0bSPVnB3b3n++j4phUEoSPcS6GC0pPJ9rpyPSe4cb5muFo6D39cXow==
-jest-haste-map@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.6.0.tgz#2e3eb997814ca696d62afdb3f2529f5bbc935e16"
- integrity sha512-uyNhMyl6dr6HaXGHp8VF7cK6KpC6G9z9LiMNsst+rJIZ8l7wY0tk8qwjPmEghczojZ2/ZhtEdIabZ0OQRJSGGg==
+jest-haste-map@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.5.0.tgz#3f17d0c548b99c0c96ed2893f9c0ccecb2eb9066"
+ integrity sha512-mb4Yrcjw9vBgSvobDwH8QUovxApdimGcOkp+V1ucGGw4Uvr3VzZQBJhNm1UY3dXYm4XXyTW2G7IBEZ9pM2ggRQ==
dependencies:
+ "@jest/types" "^24.5.0"
fb-watchman "^2.0.0"
- graceful-fs "^4.1.11"
+ graceful-fs "^4.1.15"
invariant "^2.2.4"
- jest-docblock "^23.2.0"
- jest-serializer "^23.0.1"
- jest-worker "^23.2.0"
- micromatch "^2.3.11"
- sane "^2.0.0"
+ jest-serializer "^24.4.0"
+ jest-util "^24.5.0"
+ jest-worker "^24.4.0"
+ micromatch "^3.1.10"
+ sane "^4.0.3"
-jest-jasmine2@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-23.6.0.tgz#840e937f848a6c8638df24360ab869cc718592e0"
- integrity sha512-pe2Ytgs1nyCs8IvsEJRiRTPC0eVYd8L/dXJGU08GFuBwZ4sYH/lmFDdOL3ZmvJR8QKqV9MFuwlsAi/EWkFUbsQ==
+jest-jasmine2@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.5.0.tgz#e6af4d7f73dc527d007cca5a5b177c0bcc29d111"
+ integrity sha512-sfVrxVcx1rNUbBeyIyhkqZ4q+seNKyAG6iM0S2TYBdQsXjoFDdqWFfsUxb6uXSsbimbXX/NMkJIwUZ1uT9+/Aw==
dependencies:
- babel-traverse "^6.0.0"
+ "@babel/traverse" "^7.1.0"
+ "@jest/environment" "^24.5.0"
+ "@jest/test-result" "^24.5.0"
+ "@jest/types" "^24.5.0"
chalk "^2.0.1"
co "^4.6.0"
- expect "^23.6.0"
- is-generator-fn "^1.0.0"
- jest-diff "^23.6.0"
- jest-each "^23.6.0"
- jest-matcher-utils "^23.6.0"
- jest-message-util "^23.4.0"
- jest-snapshot "^23.6.0"
- jest-util "^23.4.0"
- pretty-format "^23.6.0"
+ expect "^24.5.0"
+ is-generator-fn "^2.0.0"
+ jest-each "^24.5.0"
+ jest-matcher-utils "^24.5.0"
+ jest-message-util "^24.5.0"
+ jest-runtime "^24.5.0"
+ jest-snapshot "^24.5.0"
+ jest-util "^24.5.0"
+ pretty-format "^24.5.0"
+ throat "^4.0.0"
-jest-leak-detector@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-23.6.0.tgz#e4230fd42cf381a1a1971237ad56897de7e171de"
- integrity sha512-f/8zA04rsl1Nzj10HIyEsXvYlMpMPcy0QkQilVZDFOaPbv2ur71X5u2+C4ZQJGyV/xvVXtCCZ3wQ99IgQxftCg==
+jest-leak-detector@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.5.0.tgz#21ae2b3b0da252c1171cd494f75696d65fb6fa89"
+ integrity sha512-LZKBjGovFRx3cRBkqmIg+BZnxbrLqhQl09IziMk3oeh1OV81Hg30RUIx885mq8qBv1PA0comB9bjKcuyNO1bCQ==
dependencies:
- pretty-format "^23.6.0"
+ pretty-format "^24.5.0"
-jest-matcher-utils@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-23.6.0.tgz#726bcea0c5294261a7417afb6da3186b4b8cac80"
- integrity sha512-rosyCHQfBcol4NsckTn01cdelzWLU9Cq7aaigDf8VwwpIRvWE/9zLgX2bON+FkEW69/0UuYslUe22SOdEf2nog==
+jest-matcher-utils@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.5.0.tgz#5995549dcf09fa94406e89526e877b094dad8770"
+ integrity sha512-QM1nmLROjLj8GMGzg5VBra3I9hLpjMPtF1YqzQS3rvWn2ltGZLrGAO1KQ9zUCVi5aCvrkbS5Ndm2evIP9yZg1Q==
dependencies:
chalk "^2.0.1"
- jest-get-type "^22.1.0"
- pretty-format "^23.6.0"
+ jest-diff "^24.5.0"
+ jest-get-type "^24.3.0"
+ pretty-format "^24.5.0"
-jest-message-util@^23.4.0:
- version "23.4.0"
- resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-23.4.0.tgz#17610c50942349508d01a3d1e0bda2c079086a9f"
- integrity sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8=
+jest-message-util@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.5.0.tgz#181420a65a7ef2e8b5c2f8e14882c453c6d41d07"
+ integrity sha512-6ZYgdOojowCGiV0D8WdgctZEAe+EcFU+KrVds+0ZjvpZurUW2/oKJGltJ6FWY2joZwYXN5VL36GPV6pNVRqRnQ==
dependencies:
- "@babel/code-frame" "^7.0.0-beta.35"
+ "@babel/code-frame" "^7.0.0"
+ "@jest/test-result" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ "@types/stack-utils" "^1.0.1"
chalk "^2.0.1"
- micromatch "^2.3.11"
- slash "^1.0.0"
+ micromatch "^3.1.10"
+ slash "^2.0.0"
stack-utils "^1.0.1"
-jest-mock@^23.2.0:
- version "23.2.0"
- resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-23.2.0.tgz#ad1c60f29e8719d47c26e1138098b6d18b261134"
- integrity sha1-rRxg8p6HGdR8JuETgJi20YsmETQ=
-
-jest-regex-util@^23.3.0:
- version "23.3.0"
- resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-23.3.0.tgz#5f86729547c2785c4002ceaa8f849fe8ca471bc5"
- integrity sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U=
-
-jest-resolve-dependencies@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-23.6.0.tgz#b4526af24c8540d9a3fab102c15081cf509b723d"
- integrity sha512-EkQWkFWjGKwRtRyIwRwI6rtPAEyPWlUC2MpzHissYnzJeHcyCn1Hc8j7Nn1xUVrS5C6W5+ZL37XTem4D4pLZdA==
+jest-mock@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.5.0.tgz#976912c99a93f2a1c67497a9414aa4d9da4c7b76"
+ integrity sha512-ZnAtkWrKf48eERgAOiUxVoFavVBziO2pAi2MfZ1+bGXVkDfxWLxU0//oJBkgwbsv6OAmuLBz4XFFqvCFMqnGUw==
dependencies:
- jest-regex-util "^23.3.0"
- jest-snapshot "^23.6.0"
+ "@jest/types" "^24.5.0"
-jest-resolve@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-23.6.0.tgz#cf1d1a24ce7ee7b23d661c33ba2150f3aebfa0ae"
- integrity sha512-XyoRxNtO7YGpQDmtQCmZjum1MljDqUCob7XlZ6jy9gsMugHdN2hY4+Acz9Qvjz2mSsOnPSH7skBmDYCHXVZqkA==
+jest-pnp-resolver@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a"
+ integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==
+
+jest-regex-util@^24.3.0:
+ version "24.3.0"
+ resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.3.0.tgz#d5a65f60be1ae3e310d5214a0307581995227b36"
+ integrity sha512-tXQR1NEOyGlfylyEjg1ImtScwMq8Oh3iJbGTjN7p0J23EuVX1MA8rwU69K4sLbCmwzgCUbVkm0FkSF9TdzOhtg==
+
+jest-resolve-dependencies@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.5.0.tgz#1a0dae9cdd41349ca4a84148b3e78da2ba33fd4b"
+ integrity sha512-dRVM1D+gWrFfrq2vlL5P9P/i8kB4BOYqYf3S7xczZ+A6PC3SgXYSErX/ScW/469pWMboM1uAhgLF+39nXlirCQ==
dependencies:
+ "@jest/types" "^24.5.0"
+ jest-regex-util "^24.3.0"
+ jest-snapshot "^24.5.0"
+
+jest-resolve@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.5.0.tgz#8c16ba08f60a1616c3b1cd7afb24574f50a24d04"
+ integrity sha512-ZIfGqLX1Rg8xJpQqNjdoO8MuxHV1q/i2OO1hLXjgCWFWs5bsedS8UrOdgjUqqNae6DXA+pCyRmdcB7lQEEbXew==
+ dependencies:
+ "@jest/types" "^24.5.0"
browser-resolve "^1.11.3"
chalk "^2.0.1"
- realpath-native "^1.0.0"
+ jest-pnp-resolver "^1.2.1"
+ realpath-native "^1.1.0"
-jest-runner@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-23.6.0.tgz#3894bd219ffc3f3cb94dc48a4170a2e6f23a5a38"
- integrity sha512-kw0+uj710dzSJKU6ygri851CObtCD9cN8aNkg8jWJf4ewFyEa6kwmiH/r/M1Ec5IL/6VFa0wnAk6w+gzUtjJzA==
+jest-runner@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.5.0.tgz#9be26ece4fd4ab3dfb528b887523144b7c5ffca8"
+ integrity sha512-oqsiS9TkIZV5dVkD+GmbNfWBRPIvxqmlTQ+AQUJUQ07n+4xTSDc40r+aKBynHw9/tLzafC00DIbJjB2cOZdvMA==
dependencies:
+ "@jest/console" "^24.3.0"
+ "@jest/environment" "^24.5.0"
+ "@jest/test-result" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ chalk "^2.4.2"
exit "^0.1.2"
- graceful-fs "^4.1.11"
- jest-config "^23.6.0"
- jest-docblock "^23.2.0"
- jest-haste-map "^23.6.0"
- jest-jasmine2 "^23.6.0"
- jest-leak-detector "^23.6.0"
- jest-message-util "^23.4.0"
- jest-runtime "^23.6.0"
- jest-util "^23.4.0"
- jest-worker "^23.2.0"
+ graceful-fs "^4.1.15"
+ jest-config "^24.5.0"
+ jest-docblock "^24.3.0"
+ jest-haste-map "^24.5.0"
+ jest-jasmine2 "^24.5.0"
+ jest-leak-detector "^24.5.0"
+ jest-message-util "^24.5.0"
+ jest-resolve "^24.5.0"
+ jest-runtime "^24.5.0"
+ jest-util "^24.5.0"
+ jest-worker "^24.4.0"
source-map-support "^0.5.6"
throat "^4.0.0"
-jest-runtime@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-23.6.0.tgz#059e58c8ab445917cd0e0d84ac2ba68de8f23082"
- integrity sha512-ycnLTNPT2Gv+TRhnAYAQ0B3SryEXhhRj1kA6hBPSeZaNQkJ7GbZsxOLUkwg6YmvWGdX3BB3PYKFLDQCAE1zNOw==
+jest-runtime@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.5.0.tgz#3a76e0bfef4db3896d5116e9e518be47ba771aa2"
+ integrity sha512-GTFHzfLdwpaeoDPilNpBrorlPoNZuZrwKKzKJs09vWwHo+9TOsIIuszK8cWOuKC7ss07aN1922Ge8fsGdsqCuw==
dependencies:
- babel-core "^6.0.0"
- babel-plugin-istanbul "^4.1.6"
+ "@jest/console" "^24.3.0"
+ "@jest/environment" "^24.5.0"
+ "@jest/source-map" "^24.3.0"
+ "@jest/transform" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ "@types/yargs" "^12.0.2"
chalk "^2.0.1"
- convert-source-map "^1.4.0"
exit "^0.1.2"
- fast-json-stable-stringify "^2.0.0"
- graceful-fs "^4.1.11"
- jest-config "^23.6.0"
- jest-haste-map "^23.6.0"
- jest-message-util "^23.4.0"
- jest-regex-util "^23.3.0"
- jest-resolve "^23.6.0"
- jest-snapshot "^23.6.0"
- jest-util "^23.4.0"
- jest-validate "^23.6.0"
- micromatch "^2.3.11"
- realpath-native "^1.0.0"
- slash "^1.0.0"
- strip-bom "3.0.0"
- write-file-atomic "^2.1.0"
- yargs "^11.0.0"
+ glob "^7.1.3"
+ graceful-fs "^4.1.15"
+ jest-config "^24.5.0"
+ jest-haste-map "^24.5.0"
+ jest-message-util "^24.5.0"
+ jest-mock "^24.5.0"
+ jest-regex-util "^24.3.0"
+ jest-resolve "^24.5.0"
+ jest-snapshot "^24.5.0"
+ jest-util "^24.5.0"
+ jest-validate "^24.5.0"
+ realpath-native "^1.1.0"
+ slash "^2.0.0"
+ strip-bom "^3.0.0"
+ yargs "^12.0.2"
-jest-serializer@^23.0.1:
- version "23.0.1"
- resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-23.0.1.tgz#a3776aeb311e90fe83fab9e533e85102bd164165"
- integrity sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU=
+jest-serializer@^24.4.0:
+ version "24.4.0"
+ resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.4.0.tgz#f70c5918c8ea9235ccb1276d232e459080588db3"
+ integrity sha512-k//0DtglVstc1fv+GY/VHDIjrtNjdYvYjMlbLUed4kxrE92sIUewOi5Hj3vrpB8CXfkJntRPDRjCrCvUhBdL8Q==
-jest-snapshot@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.6.0.tgz#f9c2625d1b18acda01ec2d2b826c0ce58a5aa17a"
- integrity sha512-tM7/Bprftun6Cvj2Awh/ikS7zV3pVwjRYU2qNYS51VZHgaAMBs5l4o/69AiDHhQrj5+LA2Lq4VIvK7zYk/bswg==
+jest-snapshot@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.5.0.tgz#e5d224468a759fd19e36f01217aac912f500f779"
+ integrity sha512-eBEeJb5ROk0NcpodmSKnCVgMOo+Qsu5z9EDl3tGffwPzK1yV37mjGWF2YeIz1NkntgTzP+fUL4s09a0+0dpVWA==
dependencies:
- babel-types "^6.0.0"
+ "@babel/types" "^7.0.0"
+ "@jest/types" "^24.5.0"
chalk "^2.0.1"
- jest-diff "^23.6.0"
- jest-matcher-utils "^23.6.0"
- jest-message-util "^23.4.0"
- jest-resolve "^23.6.0"
+ expect "^24.5.0"
+ jest-diff "^24.5.0"
+ jest-matcher-utils "^24.5.0"
+ jest-message-util "^24.5.0"
+ jest-resolve "^24.5.0"
mkdirp "^0.5.1"
natural-compare "^1.4.0"
- pretty-format "^23.6.0"
+ pretty-format "^24.5.0"
semver "^5.5.0"
-jest-util@^23.4.0:
- version "23.4.0"
- resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-23.4.0.tgz#4d063cb927baf0a23831ff61bec2cbbf49793561"
- integrity sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE=
+jest-util@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.5.0.tgz#9d9cb06d9dcccc8e7cc76df91b1635025d7baa84"
+ integrity sha512-Xy8JsD0jvBz85K7VsTIQDuY44s+hYJyppAhcsHsOsGisVtdhar6fajf2UOf2mEVEgh15ZSdA0zkCuheN8cbr1Q==
dependencies:
- callsites "^2.0.0"
+ "@jest/console" "^24.3.0"
+ "@jest/fake-timers" "^24.5.0"
+ "@jest/source-map" "^24.3.0"
+ "@jest/test-result" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ "@types/node" "*"
+ callsites "^3.0.0"
chalk "^2.0.1"
- graceful-fs "^4.1.11"
- is-ci "^1.0.10"
- jest-message-util "^23.4.0"
+ graceful-fs "^4.1.15"
+ is-ci "^2.0.0"
mkdirp "^0.5.1"
- slash "^1.0.0"
+ slash "^2.0.0"
source-map "^0.6.0"
-jest-validate@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz#36761f99d1ed33fcd425b4e4c5595d62b6597474"
- integrity sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A==
+jest-validate@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.5.0.tgz#62fd93d81214c070bb2d7a55f329a79d8057c7de"
+ integrity sha512-gg0dYszxjgK2o11unSIJhkOFZqNRQbWOAB2/LOUdsd2LfD9oXiMeuee8XsT0iRy5EvSccBgB4h/9HRbIo3MHgQ==
dependencies:
+ "@jest/types" "^24.5.0"
+ camelcase "^5.0.0"
chalk "^2.0.1"
- jest-get-type "^22.1.0"
+ jest-get-type "^24.3.0"
leven "^2.1.0"
- pretty-format "^23.6.0"
+ pretty-format "^24.5.0"
-jest-watcher@^23.4.0:
- version "23.4.0"
- resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-23.4.0.tgz#d2e28ce74f8dad6c6afc922b92cabef6ed05c91c"
- integrity sha1-0uKM50+NrWxq/JIrksq+9u0FyRw=
+jest-watcher@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.5.0.tgz#da7bd9cb5967e274889b42078c8f501ae1c47761"
+ integrity sha512-/hCpgR6bg0nKvD3nv4KasdTxuhwfViVMHUATJlnGCD0r1QrmIssimPbmc5KfAQblAVxkD8xrzuij9vfPUk1/rA==
dependencies:
+ "@jest/test-result" "^24.5.0"
+ "@jest/types" "^24.5.0"
+ "@types/node" "*"
+ "@types/yargs" "^12.0.9"
ansi-escapes "^3.0.0"
chalk "^2.0.1"
+ jest-util "^24.5.0"
string-length "^2.0.0"
-jest-worker@^23.2.0:
- version "23.2.0"
- resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9"
- integrity sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk=
+jest-worker@^24.4.0:
+ version "24.4.0"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.4.0.tgz#fbc452b0120bb5c2a70cdc88fa132b48eeb11dd0"
+ integrity sha512-BH9X/klG9vxwoO99ZBUbZFfV8qO0XNZ5SIiCyYK2zOuJBl6YJVAeNIQjcoOVNu4HGEHeYEKsUWws8kSlSbZ9YQ==
dependencies:
+ "@types/node" "*"
merge-stream "^1.0.1"
+ supports-color "^6.1.0"
-jest@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/jest/-/jest-23.6.0.tgz#ad5835e923ebf6e19e7a1d7529a432edfee7813d"
- integrity sha512-lWzcd+HSiqeuxyhG+EnZds6iO3Y3ZEnMrfZq/OTGvF/C+Z4fPMCdhWTGSAiO2Oym9rbEXfwddHhh6jqrTF3+Lw==
+jest@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/jest/-/jest-24.5.0.tgz#38f11ae2c2baa2f86c2bc4d8a91d2b51612cd19a"
+ integrity sha512-lxL+Fq5/RH7inxxmfS2aZLCf8MsS+YCUBfeiNO6BWz/MmjhDGaIEA/2bzEf9q4Q0X+mtFHiinHFvQ0u+RvW/qQ==
dependencies:
- import-local "^1.0.0"
- jest-cli "^23.6.0"
+ import-local "^2.0.0"
+ jest-cli "^24.5.0"
js-base64@^2.1.9:
version "2.5.0"
@@ -5344,12 +5382,7 @@ js-string-escape@1.0.1:
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-js-tokens@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
- integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls=
-
-js-yaml@^3.11.0, js-yaml@^3.12.0, js-yaml@^3.7.0, js-yaml@^3.9.0:
+js-yaml@^3.11.0, js-yaml@^3.12.0, js-yaml@^3.9.0:
version "3.12.0"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1"
integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==
@@ -5394,11 +5427,6 @@ jsdom@^11.5.1:
ws "^5.2.0"
xml-name-validator "^3.0.0"
-jsesc@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
- integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s=
-
jsesc@^2.5.1:
version "2.5.2"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
@@ -5446,7 +5474,7 @@ json3@^3.3.2:
resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1"
integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=
-json5@^0.5.0, json5@^0.5.1:
+json5@^0.5.0:
version "0.5.1"
resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=
@@ -5521,23 +5549,16 @@ kind-of@^6.0.0, kind-of@^6.0.2:
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051"
integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==
-kleur@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/kleur/-/kleur-2.0.2.tgz#b704f4944d95e255d038f0cb05fb8a602c55a300"
- integrity sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ==
+kleur@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.2.tgz#83c7ec858a41098b613d5998a7b653962b504f68"
+ integrity sha512-3h7B2WRT5LNXOtQiAaWonilegHcPSf9nLVXlSTci8lu1dZUuui61+EsPEZqSVxY7rXYmB2DVKMQILxaO5WL61Q==
knot.js@^1.1.5:
version "1.1.5"
resolved "https://registry.yarnpkg.com/knot.js/-/knot.js-1.1.5.tgz#28e72522f703f50fe98812fde224dd72728fef5d"
integrity sha1-KOclIvcD9Q/piBL94iTdcnKP710=
-lcid@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
- integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=
- dependencies:
- invert-kv "^1.0.0"
-
lcid@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf"
@@ -5563,17 +5584,6 @@ levn@^0.3.0, levn@~0.3.0:
prelude-ls "~1.1.2"
type-check "~0.3.2"
-load-json-file@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
- integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- strip-bom "^2.0.0"
-
load-json-file@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8"
@@ -5584,6 +5594,16 @@ load-json-file@^2.0.0:
pify "^2.0.0"
strip-bom "^3.0.0"
+load-json-file@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b"
+ integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs=
+ dependencies:
+ graceful-fs "^4.1.2"
+ parse-json "^4.0.0"
+ pify "^3.0.0"
+ strip-bom "^3.0.0"
+
loader-runner@^2.3.0:
version "2.3.1"
resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979"
@@ -5599,7 +5619,7 @@ loader-utils@0.2.x:
json5 "^0.5.0"
object-assign "^4.0.1"
-loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.1:
+loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3:
version "1.2.3"
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7"
integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==
@@ -5706,14 +5726,6 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3
dependencies:
js-tokens "^3.0.0 || ^4.0.0"
-lru-cache@^4.0.1:
- version "4.1.5"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd"
- integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==
- dependencies:
- pseudomap "^1.0.2"
- yallist "^2.1.2"
-
lru-cache@^5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
@@ -5721,7 +5733,7 @@ lru-cache@^5.1.1:
dependencies:
yallist "^3.0.2"
-make-dir@^1.0.0:
+make-dir@^1.0.0, make-dir@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c"
integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==
@@ -5735,6 +5747,11 @@ makeerror@1.0.x:
dependencies:
tmpl "1.0.x"
+mamacro@^0.0.3:
+ version "0.0.3"
+ resolved "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4"
+ integrity sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==
+
map-age-cleaner@^0.1.1:
version "0.1.3"
resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a"
@@ -5764,11 +5781,6 @@ marky@^1.2.1:
resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.1.tgz#a3fcf82ffd357756b8b8affec9fdbf3a30dc1b02"
integrity sha512-md9k+Gxa3qLH6sUKpeC2CNkJK/Ld+bEz5X96nYwloqphQE0CKCVEKco/6jxEZixinqNdz5RFi/KaCyfbMDMAXQ==
-math-random@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac"
- integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w=
-
md5.js@^1.3.4:
version "1.3.5"
resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"
@@ -5788,13 +5800,6 @@ media-typer@0.3.0:
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=
-mem@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76"
- integrity sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=
- dependencies:
- mimic-fn "^1.0.0"
-
mem@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf"
@@ -5809,7 +5814,7 @@ memoize-one@^4.0.0:
resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-4.1.0.tgz#a2387c58c03fff27ca390c31b764a79addf3f906"
integrity sha512-2GApq0yI/b22J2j9rhbrAlsHb0Qcz+7yWxeLG8h+95sl1XPUgeLimQSOdur4Vw7cUhrBHwaUZxWFZueojqNRzA==
-memory-fs@^0.4.0, memory-fs@~0.4.1:
+memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=
@@ -5829,36 +5834,12 @@ merge-stream@^1.0.1:
dependencies:
readable-stream "^2.0.1"
-merge@^1.2.0:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145"
- integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==
-
methods@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=
-micromatch@^2.3.11:
- version "2.3.11"
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565"
- integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=
- dependencies:
- arr-diff "^2.0.0"
- array-unique "^0.2.1"
- braces "^1.8.2"
- expand-brackets "^0.1.4"
- extglob "^0.3.1"
- filename-regex "^2.0.0"
- is-extglob "^1.0.0"
- is-glob "^2.0.1"
- kind-of "^3.0.2"
- normalize-path "^2.0.1"
- object.omit "^2.0.0"
- parse-glob "^3.0.4"
- regex-cache "^0.4.2"
-
-micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8, micromatch@^3.1.9:
+micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8:
version "3.1.10"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==
@@ -6171,6 +6152,11 @@ node-libs-browser@^2.0.0:
util "^0.10.3"
vm-browserify "0.0.4"
+node-modules-regexp@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40"
+ integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=
+
node-notifier@^5.2.1:
version "5.3.0"
resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.3.0.tgz#c77a4a7b84038733d5fb351aafd8a268bfe19a01"
@@ -6204,6 +6190,13 @@ node-releases@^1.1.3:
dependencies:
semver "^5.3.0"
+node-releases@^1.1.8:
+ version "1.1.10"
+ resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.10.tgz#5dbeb6bc7f4e9c85b899e2e7adcc0635c9b2adf7"
+ integrity sha512-KbUPCpfoBvb3oBkej9+nrU0/7xPlVhmhhUJ1PZqwIP5/1dJkRWKWD3OONjo6M2J7tSCBtDCumLwwqeI+DWWaLQ==
+ dependencies:
+ semver "^5.3.0"
+
nopt@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
@@ -6222,13 +6215,18 @@ normalize-package-data@^2.3.2:
semver "2 || 3 || 4 || 5"
validate-npm-package-license "^3.0.1"
-normalize-path@^2.0.1, normalize-path@^2.1.1:
+normalize-path@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=
dependencies:
remove-trailing-separator "^1.0.1"
+normalize-path@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
+ integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
+
normalize-range@^0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
@@ -6380,14 +6378,6 @@ object.getownpropertydescriptors@^2.0.3:
define-properties "^1.1.2"
es-abstract "^1.5.1"
-object.omit@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
- integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=
- dependencies:
- for-own "^0.1.4"
- is-extendable "^0.1.1"
-
object.pick@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
@@ -6496,15 +6486,6 @@ os-homedir@^1.0.0:
resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
-os-locale@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2"
- integrity sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==
- dependencies:
- execa "^0.7.0"
- lcid "^1.0.0"
- mem "^1.1.0"
-
os-locale@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a"
@@ -6514,7 +6495,7 @@ os-locale@^3.0.0:
lcid "^2.0.0"
mem "^4.0.0"
-os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2:
+os-tmpdir@^1.0.0, os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
@@ -6532,6 +6513,13 @@ p-defer@^1.0.0:
resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c"
integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=
+p-each-series@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71"
+ integrity sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=
+ dependencies:
+ p-reduce "^1.0.0"
+
p-finally@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
@@ -6575,6 +6563,11 @@ p-map@^1.1.1:
resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b"
integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==
+p-reduce@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa"
+ integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=
+
p-try@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
@@ -6630,16 +6623,6 @@ parse-css-font@^2.0.2:
tcomb "^2.5.0"
unquote "^1.1.0"
-parse-glob@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c"
- integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw=
- dependencies:
- glob-base "^0.3.0"
- is-dotfile "^1.0.0"
- is-extglob "^1.0.0"
- is-glob "^2.0.0"
-
parse-json@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
@@ -6655,6 +6638,11 @@ parse-json@^4.0.0:
error-ex "^1.3.1"
json-parse-better-errors "^1.0.1"
+parse-passwd@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
+ integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
+
parse5@4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608"
@@ -6704,7 +6692,7 @@ path-exists@^3.0.0:
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
-path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
+path-is-absolute@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
@@ -6719,7 +6707,7 @@ path-key@^2.0.0, path-key@^2.0.1:
resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
-path-parse@^1.0.5, path-parse@^1.0.6:
+path-parse@^1.0.6:
version "1.0.6"
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
@@ -6736,15 +6724,6 @@ path-to-regexp@^1.7.0:
dependencies:
isarray "0.0.1"
-path-type@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
- integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=
- dependencies:
- graceful-fs "^4.1.2"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
path-type@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73"
@@ -6752,6 +6731,13 @@ path-type@^2.0.0:
dependencies:
pify "^2.0.0"
+path-type@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
+ integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==
+ dependencies:
+ pify "^3.0.0"
+
pbkdf2@^3.0.3:
version "3.0.17"
resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6"
@@ -6845,6 +6831,13 @@ pinkie@^2.0.0:
resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
+pirates@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87"
+ integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==
+ dependencies:
+ node-modules-regexp "^1.0.0"
+
pkg-dir@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
@@ -6852,13 +6845,6 @@ pkg-dir@^1.0.0:
dependencies:
find-up "^1.0.0"
-pkg-dir@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b"
- integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=
- dependencies:
- find-up "^2.1.0"
-
pkg-dir@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3"
@@ -6890,7 +6876,7 @@ posix-character-classes@^0.1.0:
resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
-postcss-calc@^7.0.0:
+postcss-calc@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.1.tgz#36d77bab023b0ecbb9789d84dcb23c4941145436"
integrity sha512-oXqx0m6tb4N3JGdmeMSc/i91KppbYsFZKdH0xMOqK8V1rJlzrKlTdokz8ozUXLVejydRN6u2IddxpcijRj2FqQ==
@@ -6900,10 +6886,10 @@ postcss-calc@^7.0.0:
postcss-selector-parser "^5.0.0-rc.4"
postcss-value-parser "^3.3.1"
-postcss-colormin@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.2.tgz#93cd1fa11280008696887db1a528048b18e7ed99"
- integrity sha512-1QJc2coIehnVFsz0otges8kQLsryi4lo19WD+U5xCWvXd0uw/Z+KKYnbiNDCnO9GP+PvErPHCG0jNvWTngk9Rw==
+postcss-colormin@^4.0.3:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381"
+ integrity sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==
dependencies:
browserslist "^4.0.0"
color "^3.0.0"
@@ -6919,10 +6905,10 @@ postcss-convert-values@^4.0.1:
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-discard-comments@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.1.tgz#30697735b0c476852a7a11050eb84387a67ef55d"
- integrity sha512-Ay+rZu1Sz6g8IdzRjUgG2NafSNpp2MSMOQUb+9kkzzzP+kh07fP0yNbhtFejURnyVXSX3FYy2nVNW1QTnNjgBQ==
+postcss-discard-comments@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033"
+ integrity sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==
dependencies:
postcss "^7.0.0"
@@ -6965,20 +6951,20 @@ postcss-loader@^3.0.0:
postcss-load-config "^2.0.0"
schema-utils "^1.0.0"
-postcss-merge-longhand@^4.0.10:
- version "4.0.10"
- resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.10.tgz#c4d63ab57bdc054ab4067ab075d488c8c2978380"
- integrity sha512-hME10s6CSjm9nlVIcO1ukR7Jr5RisTaaC1y83jWCivpuBtPohA3pZE7cGTIVSYjXvLnXozHTiVOkG4dnnl756g==
+postcss-merge-longhand@^4.0.11:
+ version "4.0.11"
+ resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24"
+ integrity sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==
dependencies:
css-color-names "0.0.4"
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
stylehacks "^4.0.0"
-postcss-merge-rules@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.2.tgz#2be44401bf19856f27f32b8b12c0df5af1b88e74"
- integrity sha512-UiuXwCCJtQy9tAIxsnurfF0mrNHKc4NnNx6NxqmzNNjXpQwLSukUxELHTRF0Rg1pAmcoKLih8PwvZbiordchag==
+postcss-merge-rules@^4.0.3:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650"
+ integrity sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==
dependencies:
browserslist "^4.0.0"
caniuse-api "^3.0.0"
@@ -6995,20 +6981,20 @@ postcss-minify-font-values@^4.0.2:
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-minify-gradients@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.1.tgz#6da95c6e92a809f956bb76bf0c04494953e1a7dd"
- integrity sha512-pySEW3E6Ly5mHm18rekbWiAjVi/Wj8KKt2vwSfVFAWdW6wOIekgqxKxLU7vJfb107o3FDNPkaYFCxGAJBFyogA==
+postcss-minify-gradients@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471"
+ integrity sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==
dependencies:
cssnano-util-get-arguments "^4.0.0"
is-color-stop "^1.0.0"
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-minify-params@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.1.tgz#5b2e2d0264dd645ef5d68f8fec0d4c38c1cf93d2"
- integrity sha512-h4W0FEMEzBLxpxIVelRtMheskOKKp52ND6rJv+nBS33G1twu2tCyurYj/YtgU76+UDCvWeNs0hs8HFAWE2OUFg==
+postcss-minify-params@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874"
+ integrity sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==
dependencies:
alphanum-sort "^1.0.0"
browserslist "^4.0.0"
@@ -7017,10 +7003,10 @@ postcss-minify-params@^4.0.1:
postcss-value-parser "^3.0.0"
uniqs "^2.0.0"
-postcss-minify-selectors@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.1.tgz#a891c197977cc37abf60b3ea06b84248b1c1e9cd"
- integrity sha512-8+plQkomve3G+CodLCgbhAKrb5lekAnLYuL1d7Nz+/7RANpBEVdgBkPNwljfSKvZ9xkkZTZITd04KP+zeJTJqg==
+postcss-minify-selectors@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8"
+ integrity sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==
dependencies:
alphanum-sort "^1.0.0"
has "^1.0.0"
@@ -7034,22 +7020,22 @@ postcss-modules-extract-imports@^2.0.0:
dependencies:
postcss "^7.0.5"
-postcss-modules-local-by-default@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.3.tgz#6a199d596ec3ef57b8f5ced96d786b8cb16a7dec"
- integrity sha512-jv4CQ8IQ0+TkaAIP7H4kgu/jQbrjte8xU61SYJAIOby+o3H0MGWX6eN1WXUKHccK6/EEjcAERjyIP8MXzAWAbQ==
+postcss-modules-local-by-default@^2.0.6:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz#dd9953f6dd476b5fd1ef2d8830c8929760b56e63"
+ integrity sha512-oLUV5YNkeIBa0yQl7EYnxMgy4N6noxmiwZStaEJUSe2xPMcdNc8WmBQuQCx18H5psYbVxz8zoHk0RAAYZXP9gA==
dependencies:
- css-selector-tokenizer "^0.7.0"
postcss "^7.0.6"
+ postcss-selector-parser "^6.0.0"
postcss-value-parser "^3.3.1"
-postcss-modules-scope@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.0.1.tgz#2c0f2394cde4cd09147db054c68917e38f6d43a4"
- integrity sha512-7+6k9c3/AuZ5c596LJx9n923A/j3nF3ormewYBF1RrIQvjvjXe1xE8V8A1KFyFwXbvnshT6FBZFX0k/F1igneg==
+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==
dependencies:
- css-selector-tokenizer "^0.7.0"
postcss "^7.0.6"
+ postcss-selector-parser "^6.0.0"
postcss-modules-values@^2.0.0:
version "2.0.0"
@@ -7066,48 +7052,48 @@ postcss-normalize-charset@^4.0.1:
dependencies:
postcss "^7.0.0"
-postcss-normalize-display-values@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.1.tgz#d9a83d47c716e8a980f22f632c8b0458cfb48a4c"
- integrity sha512-R5mC4vaDdvsrku96yXP7zak+O3Mm9Y8IslUobk7IMP+u/g+lXvcN4jngmHY5zeJnrQvE13dfAg5ViU05ZFDwdg==
+postcss-normalize-display-values@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a"
+ integrity sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==
dependencies:
cssnano-util-get-match "^4.0.0"
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-normalize-positions@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.1.tgz#ee2d4b67818c961964c6be09d179894b94fd6ba1"
- integrity sha512-GNoOaLRBM0gvH+ZRb2vKCIujzz4aclli64MBwDuYGU2EY53LwiP7MxOZGE46UGtotrSnmarPPZ69l2S/uxdaWA==
+postcss-normalize-positions@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f"
+ integrity sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==
dependencies:
cssnano-util-get-arguments "^4.0.0"
has "^1.0.0"
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-normalize-repeat-style@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.1.tgz#5293f234b94d7669a9f805495d35b82a581c50e5"
- integrity sha512-fFHPGIjBUyUiswY2rd9rsFcC0t3oRta4wxE1h3lpwfQZwFeFjXFSiDtdJ7APCmHQOnUZnqYBADNRPKPwFAONgA==
+postcss-normalize-repeat-style@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c"
+ integrity sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==
dependencies:
cssnano-util-get-arguments "^4.0.0"
cssnano-util-get-match "^4.0.0"
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-normalize-string@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.1.tgz#23c5030c2cc24175f66c914fa5199e2e3c10fef3"
- integrity sha512-IJoexFTkAvAq5UZVxWXAGE0yLoNN/012v7TQh5nDo6imZJl2Fwgbhy3J2qnIoaDBrtUP0H7JrXlX1jjn2YcvCQ==
+postcss-normalize-string@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c"
+ integrity sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==
dependencies:
has "^1.0.0"
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-normalize-timing-functions@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.1.tgz#8be83e0b9cb3ff2d1abddee032a49108f05f95d7"
- integrity sha512-1nOtk7ze36+63ONWD8RCaRDYsnzorrj+Q6fxkQV+mlY5+471Qx9kspqv0O/qQNMeApg8KNrRf496zHwJ3tBZ7w==
+postcss-normalize-timing-functions@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9"
+ integrity sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==
dependencies:
cssnano-util-get-match "^4.0.0"
postcss "^7.0.0"
@@ -7132,10 +7118,10 @@ postcss-normalize-url@^4.0.1:
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-normalize-whitespace@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.1.tgz#d14cb639b61238418ac8bc8d3b7bdd65fc86575e"
- integrity sha512-U8MBODMB2L+nStzOk6VvWWjZgi5kQNShCyjRhMT3s+W9Jw93yIjOnrEkKYD3Ul7ChWbEcjDWmXq0qOL9MIAnAw==
+postcss-normalize-whitespace@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82"
+ integrity sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==
dependencies:
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
@@ -7149,29 +7135,29 @@ postcss-object-fit-images@^1.1.2:
postcss "^5.0.16"
quote "^0.4.0"
-postcss-ordered-values@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.1.tgz#2e3b432ef3e489b18333aeca1f1295eb89be9fc2"
- integrity sha512-PeJiLgJWPzkVF8JuKSBcylaU+hDJ/TX3zqAMIjlghgn1JBi6QwQaDZoDIlqWRcCAI8SxKrt3FCPSRmOgKRB97Q==
+postcss-ordered-values@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee"
+ integrity sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==
dependencies:
cssnano-util-get-arguments "^4.0.0"
postcss "^7.0.0"
postcss-value-parser "^3.0.0"
-postcss-reduce-initial@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.2.tgz#bac8e325d67510ee01fa460676dc8ea9e3b40f15"
- integrity sha512-epUiC39NonKUKG+P3eAOKKZtm5OtAtQJL7Ye0CBN1f+UQTHzqotudp+hki7zxXm7tT0ZAKDMBj1uihpPjP25ug==
+postcss-reduce-initial@^4.0.3:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df"
+ integrity sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==
dependencies:
browserslist "^4.0.0"
caniuse-api "^3.0.0"
has "^1.0.0"
postcss "^7.0.0"
-postcss-reduce-transforms@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.1.tgz#8600d5553bdd3ad640f43bff81eb52f8760d4561"
- integrity sha512-sZVr3QlGs0pjh6JAIe6DzWvBaqYw05V1t3d9Tp+VnFRT5j+rsqoWsysh/iSD7YNsULjq9IAylCznIwVd5oU/zA==
+postcss-reduce-transforms@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29"
+ integrity sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==
dependencies:
cssnano-util-get-match "^4.0.0"
has "^1.0.0"
@@ -7196,10 +7182,19 @@ postcss-selector-parser@^5.0.0-rc.4:
indexes-of "^1.0.1"
uniq "^1.0.1"
-postcss-svgo@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.1.tgz#5628cdb38f015de6b588ce6d0bf0724b492b581d"
- integrity sha512-YD5uIk5NDRySy0hcI+ZJHwqemv2WiqqzDgtvgMzO8EGSkK5aONyX8HMVFRFJSdO8wUWTuisUFn/d7yRRbBr5Qw==
+postcss-selector-parser@^6.0.0:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
+ integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
+ dependencies:
+ cssesc "^3.0.0"
+ indexes-of "^1.0.1"
+ uniq "^1.0.1"
+
+postcss-svgo@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258"
+ integrity sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw==
dependencies:
is-svg "^3.0.0"
postcss "^7.0.0"
@@ -7239,6 +7234,15 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.5, postcss@^7.0.6:
source-map "^0.6.1"
supports-color "^5.5.0"
+postcss@^7.0.14:
+ version "7.0.14"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.14.tgz#4527ed6b1ca0d82c53ce5ec1a2041c2346bbd6e5"
+ integrity sha512-NsbD6XUUMZvBxtQAJuWDJeeC4QFsmWsfozWxCJPWf3M55K9iu2iMDaKqyoOdTJ1R4usBXuxlVFAIo8rZPQD4Bg==
+ dependencies:
+ chalk "^2.4.2"
+ source-map "^0.6.1"
+ supports-color "^6.1.0"
+
postgres-array@~1.0.0:
version "1.0.3"
resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-1.0.3.tgz#c561fc3b266b21451fc6555384f4986d78ec80f5"
@@ -7271,20 +7275,17 @@ prelude-ls@~1.1.2:
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
-preserve@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
- integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=
-
-pretty-format@^23.6.0:
- version "23.6.0"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760"
- integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw==
+pretty-format@^24.5.0:
+ version "24.5.0"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.5.0.tgz#cc69a0281a62cd7242633fc135d6930cd889822d"
+ integrity sha512-/3RuSghukCf8Riu5Ncve0iI+BzVkbRU5EeUoArKARZobREycuH5O4waxvaNIloEXdb0qwgmEAed5vTpX1HNROQ==
dependencies:
- ansi-regex "^3.0.0"
+ "@jest/types" "^24.5.0"
+ ansi-regex "^4.0.0"
ansi-styles "^3.2.0"
+ react-is "^16.8.4"
-private@^0.1.6, private@^0.1.8:
+private@^0.1.6:
version "0.1.8"
resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==
@@ -7316,13 +7317,13 @@ promise@^7.1.1:
dependencies:
asap "~2.0.3"
-prompts@^0.1.9:
- version "0.1.14"
- resolved "https://registry.yarnpkg.com/prompts/-/prompts-0.1.14.tgz#a8e15c612c5c9ec8f8111847df3337c9cbd443b2"
- integrity sha512-rxkyiE9YH6zAz/rZpywySLKkpaj0NMVyNw1qhsubdbjjSgcayjTShDreZGlFMcGSu5sab3bAKPfFk78PB90+8w==
+prompts@^2.0.1:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.0.3.tgz#c5ccb324010b2e8f74752aadceeb57134c1d2522"
+ integrity sha512-H8oWEoRZpybm6NV4to9/1limhttEo13xK62pNvn2JzY0MA03p7s0OjtmhXyon3uJmxiJJVSuUwEJFFssI3eBiQ==
dependencies:
- kleur "^2.0.1"
- sisteransi "^0.1.1"
+ kleur "^3.0.2"
+ sisteransi "^1.0.0"
prop-types-extra@^1.0.1:
version "1.1.0"
@@ -7353,11 +7354,6 @@ prr@~1.0.1:
resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY=
-pseudomap@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
- integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM=
-
psl@^1.1.24, psl@^1.1.28:
version "1.1.31"
resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.31.tgz#e9aa86d0101b5b105cbe93ac6b784cd547276184"
@@ -7470,15 +7466,6 @@ randexp@0.4.6:
discontinuous-range "1.0.0"
ret "~0.1.10"
-randomatic@^3.0.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed"
- integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==
- dependencies:
- is-number "^4.0.0"
- kind-of "^6.0.0"
- math-random "^1.0.1"
-
randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5:
version "2.0.6"
resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80"
@@ -7601,6 +7588,11 @@ react-is@^16.3.2, react-is@^16.6.1, react-is@^16.6.3, react-is@^16.7.0:
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.7.0.tgz#c1bd21c64f1f1364c6f70695ec02d69392f41bfa"
integrity sha512-Z0VRQdF4NPDoI0tsXVMLkJLiwEBa+RP66g0xDHxgxysxSoCUccSten4RTF/UFvZF1dZvZ9Zu1sx+MDXwcOR34g==
+react-is@^16.8.4:
+ version "16.8.4"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.4.tgz#90f336a68c3a29a096a3d648ab80e87ec61482a2"
+ integrity sha512-PVadd+WaUDOAciICm/J1waJaSvgq+4rHE/K70j0PFqKhkTBsPv/82UGQJNXAngz1fOQLLxI6z1sEDmJDQhCTAA==
+
react-lifecycles-compat@^3.0.2, react-lifecycles-compat@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
@@ -7793,14 +7785,6 @@ react@^16.7.0:
prop-types "^15.6.2"
scheduler "^0.12.0"
-read-pkg-up@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
- integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=
- dependencies:
- find-up "^1.0.0"
- read-pkg "^1.0.0"
-
read-pkg-up@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be"
@@ -7809,14 +7793,13 @@ read-pkg-up@^2.0.0:
find-up "^2.0.0"
read-pkg "^2.0.0"
-read-pkg@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
- integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=
+read-pkg-up@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978"
+ integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==
dependencies:
- load-json-file "^1.0.0"
- normalize-package-data "^2.3.2"
- path-type "^1.0.0"
+ find-up "^3.0.0"
+ read-pkg "^3.0.0"
read-pkg@^2.0.0:
version "2.0.0"
@@ -7827,6 +7810,15 @@ read-pkg@^2.0.0:
normalize-package-data "^2.3.2"
path-type "^2.0.0"
+read-pkg@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
+ integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=
+ dependencies:
+ load-json-file "^4.0.0"
+ normalize-package-data "^2.3.2"
+ path-type "^3.0.0"
+
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6:
version "2.3.6"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
@@ -7858,10 +7850,10 @@ readdirp@^2.0.0:
micromatch "^3.1.10"
readable-stream "^2.0.2"
-realpath-native@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.2.tgz#cd51ce089b513b45cf9b1516c82989b51ccc6560"
- integrity sha512-+S3zTvVt9yTntFrBpm7TQmQ3tzpCrnA1a/y+3cUHAc9ZR6aIjG0WNLR+Rj79QpJktY+VeW/TQtFlQ1bzsehI8g==
+realpath-native@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.1.0.tgz#2003294fea23fb0672f2476ebe22fcf498a2d65c"
+ integrity sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==
dependencies:
util.promisify "^1.0.0"
@@ -7909,7 +7901,7 @@ regenerate-unicode-properties@^7.0.0:
dependencies:
regenerate "^1.4.0"
-regenerate@^1.2.1, regenerate@^1.4.0:
+regenerate@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11"
integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==
@@ -7924,20 +7916,13 @@ regenerator-runtime@^0.12.0:
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de"
integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==
-regenerator-transform@^0.13.3:
- version "0.13.3"
- resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb"
- integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA==
+regenerator-transform@^0.13.4:
+ version "0.13.4"
+ resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.4.tgz#18f6763cf1382c69c36df76c6ce122cc694284fb"
+ integrity sha512-T0QMBjK3J0MtxjPmdIMXm72Wvj2Abb0Bd4HADdfijwMdoIsyQZ6fWC7kDFhk2YinBBEMZDL7Y7wh0J1sGx3S4A==
dependencies:
private "^0.1.6"
-regex-cache@^0.4.2:
- version "0.4.4"
- resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd"
- integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==
- dependencies:
- is-equal-shallow "^0.1.3"
-
regex-not@^1.0.0, regex-not@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
@@ -7946,20 +7931,16 @@ regex-not@^1.0.0, regex-not@^1.0.2:
extend-shallow "^3.0.2"
safe-regex "^1.1.0"
+regexp-tree@^0.1.0:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.5.tgz#7cd71fca17198d04b4176efd79713f2998009397"
+ integrity sha512-nUmxvfJyAODw+0B13hj8CFVAxhe7fDEAgJgaotBu3nnR+IgGgZq59YedJP5VYTlkEfqjuK6TuRpnymKdatLZfQ==
+
regexpp@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f"
integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==
-regexpu-core@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b"
- integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=
- dependencies:
- regenerate "^1.2.1"
- regjsgen "^0.2.0"
- regjsparser "^0.1.4"
-
regexpu-core@^4.1.3, regexpu-core@^4.2.0:
version "4.4.0"
resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.4.0.tgz#8d43e0d1266883969720345e70c275ee0aec0d32"
@@ -7972,23 +7953,11 @@ regexpu-core@^4.1.3, regexpu-core@^4.2.0:
unicode-match-property-ecmascript "^1.0.4"
unicode-match-property-value-ecmascript "^1.0.2"
-regjsgen@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7"
- integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=
-
regjsgen@^0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz#a7634dc08f89209c2049adda3525711fb97265dd"
integrity sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==
-regjsparser@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c"
- integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=
- dependencies:
- jsesc "~0.5.0"
-
regjsparser@^0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz#f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c"
@@ -8011,18 +7980,11 @@ repeat-element@^1.1.2:
resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce"
integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==
-repeat-string@^1.5.2, repeat-string@^1.6.1:
+repeat-string@^1.6.1:
version "1.6.1"
resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
-repeating@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
- integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=
- dependencies:
- is-finite "^1.0.0"
-
request-promise-core@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6"
@@ -8115,6 +8077,14 @@ resolve-cwd@^2.0.0:
dependencies:
resolve-from "^3.0.0"
+resolve-dir@^1.0.0, resolve-dir@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43"
+ integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=
+ dependencies:
+ expand-tilde "^2.0.0"
+ global-modules "^1.0.0"
+
resolve-from@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226"
@@ -8236,21 +8206,20 @@ safe-regex@^1.1.0:
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
-sane@^2.0.0:
- version "2.5.2"
- resolved "https://registry.yarnpkg.com/sane/-/sane-2.5.2.tgz#b4dc1861c21b427e929507a3e751e2a2cb8ab3fa"
- integrity sha1-tNwYYcIbQn6SlQej51HiosuKs/o=
+sane@^4.0.3:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/sane/-/sane-4.0.3.tgz#e878c3f19e25cc57fbb734602f48f8a97818b181"
+ integrity sha512-hSLkC+cPHiBQs7LSyXkotC3UUtyn8C4FMn50TNaacRyvBlI+3ebcxMpqckmTdtXVtel87YS7GXN3UIOj7NiGVQ==
dependencies:
+ "@cnakazawa/watch" "^1.0.3"
anymatch "^2.0.0"
capture-exit "^1.2.0"
- exec-sh "^0.2.0"
+ exec-sh "^0.3.2"
+ execa "^1.0.0"
fb-watchman "^2.0.0"
micromatch "^3.1.4"
minimist "^1.1.1"
walker "~1.0.5"
- watch "~0.18.0"
- optionalDependencies:
- fsevents "^1.2.3"
sass-loader@^7.0.3:
version "7.1.0"
@@ -8264,10 +8233,10 @@ sass-loader@^7.0.3:
pify "^3.0.0"
semver "^5.5.0"
-sass@^1.15.2:
- version "1.15.2"
- resolved "https://registry.yarnpkg.com/sass/-/sass-1.15.2.tgz#539f464a61e29a9e4f560ec9dc2ccc5236db8474"
- integrity sha512-YFncPpx3ewKEhMg9sWdCxKUpPN/jwVLa0Q9iO2tcV5Y5Z/YAlFV6k6JaQwq3tmbN6FXKjUYElXRHcG0g4D1zkQ==
+sass@^1.17.2:
+ version "1.17.2"
+ resolved "https://registry.yarnpkg.com/sass/-/sass-1.17.2.tgz#b5a28f2f13c6a219f28084c03623bb2c8d176323"
+ integrity sha512-TBNcwSIEXpXAIaFxQnWbHzhciwPKpHRprQ+1ww+g9eHCiY3PINJs6vQTu+LcBt1vIhrtQGRFIoxJO39TfLrptA==
dependencies:
chokidar "^2.0.0"
@@ -8284,14 +8253,6 @@ scheduler@^0.12.0:
loose-envify "^1.1.0"
object-assign "^4.1.1"
-schema-utils@^0.4.4:
- version "0.4.7"
- resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187"
- integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==
- dependencies:
- ajv "^6.1.0"
- ajv-keywords "^3.1.0"
-
schema-utils@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770"
@@ -8459,16 +8420,21 @@ simple-swizzle@^0.2.2:
dependencies:
is-arrayish "^0.3.1"
-sisteransi@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce"
- integrity sha512-PmGOd02bM9YO5ifxpw36nrNMBTptEtfRl4qUYl9SndkolplkrZZOW7PGHjrZL53QvMVj9nQ+TKqUnRsw4tJa4g==
+sisteransi@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.0.tgz#77d9622ff909080f1c19e5f4a1df0c1b0a27b88c"
+ integrity sha512-N+z4pHB4AmUv0SjveWRd6q1Nj5w62m5jodv+GD8lvmbY/83T/rpbJGZOnK5T149OldDj4Db07BSv9xY4K6NTPQ==
slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=
+slash@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
+ integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
+
slice-ansi@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.0.0.tgz#5373bdb8559b45676e8541c66916cdd6251612e7"
@@ -8544,13 +8510,6 @@ source-map-resolve@^0.5.0:
source-map-url "^0.4.0"
urix "^0.1.0"
-source-map-support@^0.4.15:
- version "0.4.18"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
- integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==
- dependencies:
- source-map "^0.5.6"
-
source-map-support@^0.5.6, source-map-support@~0.5.6:
version "0.5.9"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f"
@@ -8564,7 +8523,7 @@ source-map-url@^0.4.0:
resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3"
integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=
-source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7:
+source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6:
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
@@ -8805,18 +8764,11 @@ strip-ansi@^5.0.0:
dependencies:
ansi-regex "^4.0.0"
-strip-bom@3.0.0, strip-bom@^3.0.0:
+strip-bom@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
-strip-bom@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
- integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
- dependencies:
- is-utf8 "^0.2.0"
-
strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
@@ -8827,14 +8779,6 @@ strip-json-comments@^2.0.1, strip-json-comments@~2.0.1:
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
-style-loader@0.23.1:
- version "0.23.1"
- resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.1.tgz#cb9154606f3e771ab6c4ab637026a1049174d925"
- integrity sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg==
- dependencies:
- loader-utils "^1.1.0"
- schema-utils "^1.0.0"
-
stylehacks@^4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.1.tgz#3186595d047ab0df813d213e51c8b94e0b9010f2"
@@ -8854,20 +8798,27 @@ supports-color@^2.0.0:
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
-supports-color@^3.1.2, supports-color@^3.2.3:
+supports-color@^3.2.3:
version "3.2.3"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6"
integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=
dependencies:
has-flag "^1.0.0"
-supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.5.0:
+supports-color@^5.3.0, supports-color@^5.5.0:
version "5.5.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
dependencies:
has-flag "^3.0.0"
+supports-color@^6.0.0, supports-color@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3"
+ integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==
+ dependencies:
+ has-flag "^3.0.0"
+
svgo@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.1.1.tgz#12384b03335bcecd85cfa5f4e3375fed671cb985"
@@ -8954,15 +8905,14 @@ terser@^3.8.1:
source-map "~0.6.1"
source-map-support "~0.5.6"
-test-exclude@^4.2.1:
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20"
- integrity sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA==
+test-exclude@^5.0.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.1.0.tgz#6ba6b25179d2d38724824661323b73e03c0c1de1"
+ integrity sha512-gwf0S2fFsANC55fSeSqpb8BYk6w3FDvwZxfNjeF6FRgvFa43r+7wRiA/Q0IxoRU37wB/LE8IQ4221BsNucTaCA==
dependencies:
arrify "^1.0.1"
- micromatch "^2.3.11"
- object-assign "^4.1.0"
- read-pkg-up "^1.0.1"
+ minimatch "^3.0.4"
+ read-pkg-up "^4.0.0"
require-main-filename "^1.0.1"
text-table@^0.2.0:
@@ -9034,11 +8984,6 @@ to-arraybuffer@^1.0.0:
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
-to-fast-properties@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
- integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=
-
to-fast-properties@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
@@ -9157,10 +9102,10 @@ uglify-js@^3.0.0, uglify-js@^3.1.4:
commander "~2.17.1"
source-map "~0.6.1"
-uglifyjs-webpack-plugin@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-2.1.1.tgz#6937d7513a37280d4792f1fb536bef35e08e420a"
- integrity sha512-TQEcyMNkObX/H+FfcKjiDgs5RcXX8vW2UUUrDTOfQgg3lrafztfeM5WAwXo+AzqozJK6NP9w98xNpG/dutzSsg==
+uglifyjs-webpack-plugin@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-2.1.2.tgz#70e5c38fb2d35ee887949c2a0adb2656c23296d5"
+ integrity sha512-G1fJx2uOAAfvdZ77SVCzmFo6mv8uKaHoZBL9Qq/ciC8r6p0ANOL1uY85fIUiyWXKw5RzAaJYZfNSL58Or2hQ0A==
dependencies:
cacache "^11.2.0"
find-cache-dir "^2.0.0"
@@ -9403,14 +9348,6 @@ warning@^4.0.1:
dependencies:
loose-envify "^1.0.0"
-watch@~0.18.0:
- version "0.18.0"
- resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986"
- integrity sha1-KAlUdsbffJDJYxOJkMClQj60uYY=
- dependencies:
- exec-sh "^0.2.0"
- minimist "^1.2.0"
-
watchpack@^1.5.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00"
@@ -9445,12 +9382,13 @@ webpack-assets-manifest@^3.1.1:
tapable "^1.0.0"
webpack-sources "^1.0.0"
-webpack-bundle-analyzer@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.0.3.tgz#dbc7fff8f52058b6714a20fddf309d0790e3e0a0"
- integrity sha512-naLWiRfmtH4UJgtUktRTLw6FdoZJ2RvCR9ePbwM9aRMsS/KjFerkPZG9epEvXRAw5d5oPdrs9+3p+afNjxW8Xw==
+webpack-bundle-analyzer@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.1.0.tgz#2f19cbb87bb6d4f3cb4e59cb67c837bd9436e89d"
+ integrity sha512-nyDyWEs7C6DZlgvu1pR1zzJfIWSiGPbtaByZr8q+Fd2xp70FuM/8ngCJzj3Er1TYRLSFmp1F1OInbEm4DZH8NA==
dependencies:
- acorn "^5.7.3"
+ acorn "^6.0.7"
+ acorn-walk "^6.1.1"
bfj "^6.1.1"
chalk "^2.4.1"
commander "^2.18.0"
@@ -9463,49 +9401,50 @@ webpack-bundle-analyzer@^3.0.3:
opener "^1.5.1"
ws "^6.0.0"
-webpack-cli@^3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.1.2.tgz#17d7e01b77f89f884a2bbf9db545f0f6a648e746"
- integrity sha512-Cnqo7CeqeSvC6PTdts+dywNi5CRlIPbLx1AoUPK2T6vC1YAugMG3IOoO9DmEscd+Dghw7uRlnzV1KwOe5IrtgQ==
+webpack-cli@^3.2.3:
+ version "3.2.3"
+ resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.2.3.tgz#13653549adfd8ccd920ad7be1ef868bacc22e346"
+ integrity sha512-Ik3SjV6uJtWIAN5jp5ZuBMWEAaP5E4V78XJ2nI+paFPh8v4HPSwo/myN0r29Xc/6ZKnd2IdrAlpSgNOu2CDQ6Q==
dependencies:
chalk "^2.4.1"
cross-spawn "^6.0.5"
enhanced-resolve "^4.1.0"
- global-modules-path "^2.3.0"
+ findup-sync "^2.0.0"
+ global-modules "^1.0.0"
import-local "^2.0.0"
interpret "^1.1.0"
loader-utils "^1.1.0"
supports-color "^5.5.0"
v8-compile-cache "^2.0.2"
- yargs "^12.0.2"
+ yargs "^12.0.4"
-webpack-dev-middleware@3.4.0:
- version "3.4.0"
- resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890"
- integrity sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==
+webpack-dev-middleware@^3.5.1:
+ version "3.6.1"
+ resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.6.1.tgz#91f2531218a633a99189f7de36045a331a4b9cd4"
+ integrity sha512-XQmemun8QJexMEvNFbD2BIg4eSKrmSIMrTfnl2nql2Sc6OGAYFyb8rwuYrCjl/IiEYYuyTEiimMscu7EXji/Dw==
dependencies:
- memory-fs "~0.4.1"
+ memory-fs "^0.4.1"
mime "^2.3.1"
range-parser "^1.0.3"
webpack-log "^2.0.0"
-webpack-dev-server@^3.1.14:
- version "3.1.14"
- resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.1.14.tgz#60fb229b997fc5a0a1fc6237421030180959d469"
- integrity sha512-mGXDgz5SlTxcF3hUpfC8hrQ11yhAttuUQWf1Wmb+6zo3x6rb7b9mIfuQvAPLdfDRCGRGvakBWHdHOa0I9p/EVQ==
+webpack-dev-server@^3.2.1:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.2.1.tgz#1b45ce3ecfc55b6ebe5e36dab2777c02bc508c4e"
+ integrity sha512-sjuE4mnmx6JOh9kvSbPYw3u/6uxCLHNWfhWaIPwcXWsvWOPN+nc5baq4i9jui3oOBRXGonK9+OI0jVkaz6/rCw==
dependencies:
ansi-html "0.0.7"
bonjour "^3.5.0"
chokidar "^2.0.0"
compression "^1.5.2"
connect-history-api-fallback "^1.3.0"
- debug "^3.1.0"
+ debug "^4.1.1"
del "^3.0.0"
express "^4.16.2"
html-entities "^1.2.0"
- http-proxy-middleware "~0.18.0"
+ http-proxy-middleware "^0.19.1"
import-local "^2.0.0"
- internal-ip "^3.0.1"
+ internal-ip "^4.2.0"
ip "^1.1.5"
killable "^1.0.0"
loglevel "^1.4.1"
@@ -9519,9 +9458,9 @@ webpack-dev-server@^3.1.14:
sockjs-client "1.3.0"
spdy "^4.0.0"
strip-ansi "^3.0.0"
- supports-color "^5.1.0"
+ supports-color "^6.1.0"
url "^0.11.0"
- webpack-dev-middleware "3.4.0"
+ webpack-dev-middleware "^3.5.1"
webpack-log "^2.0.0"
yargs "12.0.2"
@@ -9533,10 +9472,10 @@ webpack-log@^2.0.0:
ansi-colors "^3.0.0"
uuid "^3.3.2"
-webpack-merge@^4.1.5:
- version "4.1.5"
- resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.5.tgz#2be31e846c20767d1bef56bdca64c328a681190a"
- integrity sha512-sVcM+MMJv6DO0C0GLLltx8mUlGMKXE0zBsuMqZ9jz2X9gsekALw6Rs0cAfTWc97VuWS6NpVUa78959zANnMMLQ==
+webpack-merge@^4.2.1:
+ version "4.2.1"
+ resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.2.1.tgz#5e923cf802ea2ace4fd5af1d3247368a633489b4"
+ integrity sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==
dependencies:
lodash "^4.17.5"
@@ -9548,17 +9487,17 @@ webpack-sources@^1.0.0, webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-
source-list-map "^2.0.0"
source-map "~0.6.1"
-webpack@^4.28.3:
- version "4.28.3"
- resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.28.3.tgz#8acef6e77fad8a01bfd0c2b25aa3636d46511874"
- integrity sha512-vLZN9k5I7Nr/XB1IDG9GbZB4yQd1sPuvufMFgJkx0b31fi2LD97KQIjwjxE7xytdruAYfu5S0FLBLjdxmwGJCg==
+webpack@^4.29.6:
+ version "4.29.6"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.29.6.tgz#66bf0ec8beee4d469f8b598d3988ff9d8d90e955"
+ integrity sha512-MwBwpiE1BQpMDkbnUUaW6K8RFZjljJHArC6tWQJoFm0oQtfoSebtg4Y7/QHnJ/SddtjYLHaKGX64CFjG5rehJw==
dependencies:
- "@webassemblyjs/ast" "1.7.11"
- "@webassemblyjs/helper-module-context" "1.7.11"
- "@webassemblyjs/wasm-edit" "1.7.11"
- "@webassemblyjs/wasm-parser" "1.7.11"
- acorn "^5.6.2"
- acorn-dynamic-import "^3.0.0"
+ "@webassemblyjs/ast" "1.8.5"
+ "@webassemblyjs/helper-module-context" "1.8.5"
+ "@webassemblyjs/wasm-edit" "1.8.5"
+ "@webassemblyjs/wasm-parser" "1.8.5"
+ acorn "^6.0.5"
+ acorn-dynamic-import "^4.0.0"
ajv "^6.1.0"
ajv-keywords "^3.1.0"
chrome-trace-event "^1.0.0"
@@ -9572,7 +9511,7 @@ webpack@^4.28.3:
mkdirp "~0.5.0"
neo-async "^2.5.0"
node-libs-browser "^2.0.0"
- schema-utils "^0.4.4"
+ schema-utils "^1.0.0"
tapable "^1.1.0"
terser-webpack-plugin "^1.1.0"
watchpack "^1.5.0"
@@ -9638,7 +9577,7 @@ which-module@^2.0.0:
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
-which@^1.2.12, which@^1.2.9, which@^1.3.0:
+which@^1.2.14, which@^1.2.9, which@^1.3.0:
version "1.3.1"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
@@ -9682,10 +9621,10 @@ wrappy@1:
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
-write-file-atomic@^2.1.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab"
- integrity sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==
+write-file-atomic@2.4.1:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.1.tgz#d0b05463c188ae804396fd5ab2a370062af87529"
+ integrity sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==
dependencies:
graceful-fs "^4.1.11"
imurmurhash "^0.1.4"
@@ -9727,21 +9666,11 @@ xtend@^4.0.0, xtend@~4.0.1:
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68=
-y18n@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"
- integrity sha1-bRX7qITAhnnA136I53WegR4H+kE=
-
"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b"
integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==
-yallist@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
- integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
-
yallist@^3.0.0, yallist@^3.0.2:
version "3.0.3"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9"
@@ -9762,13 +9691,6 @@ yargs-parser@^11.1.1:
camelcase "^5.0.0"
decamelize "^1.2.0"
-yargs-parser@^9.0.2:
- version "9.0.2"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077"
- integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=
- dependencies:
- camelcase "^4.1.0"
-
yargs@12.0.2:
version "12.0.2"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc"
@@ -9787,25 +9709,7 @@ yargs@12.0.2:
y18n "^3.2.1 || ^4.0.0"
yargs-parser "^10.1.0"
-yargs@^11.0.0:
- version "11.1.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77"
- integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A==
- dependencies:
- cliui "^4.0.0"
- decamelize "^1.1.1"
- find-up "^2.1.0"
- get-caller-file "^1.0.1"
- os-locale "^2.0.0"
- require-directory "^2.1.1"
- require-main-filename "^1.0.1"
- set-blocking "^2.0.0"
- string-width "^2.0.0"
- which-module "^2.0.0"
- y18n "^3.2.1"
- yargs-parser "^9.0.2"
-
-yargs@^12.0.2, yargs@^12.0.5:
+yargs@^12.0.2, yargs@^12.0.4, yargs@^12.0.5:
version "12.0.5"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13"
integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==
From 782b622f5f295fc9d91bb2461dc049f55766af9c Mon Sep 17 00:00:00 2001
From: ysksn
Date: Sat, 16 Mar 2019 00:57:23 +0900
Subject: [PATCH 12/20] Add specs for action log helper (#9605)
* Add specs for ActionLogHelper
* Make some methods private
methods below never referenced from outside of their module:
- #linkable_log_target
- #log_target_from_history
---
app/helpers/admin/action_logs_helper.rb | 72 ++---
spec/helpers/admin/action_log_helper_spec.rb | 272 +++++++++++++++++++
2 files changed, 308 insertions(+), 36 deletions(-)
create mode 100644 spec/helpers/admin/action_log_helper_spec.rb
diff --git a/app/helpers/admin/action_logs_helper.rb b/app/helpers/admin/action_logs_helper.rb
index 359d60b60e2..e5fbb1500e9 100644
--- a/app/helpers/admin/action_logs_helper.rb
+++ b/app/helpers/admin/action_logs_helper.rb
@@ -9,42 +9,6 @@ module Admin::ActionLogsHelper
end
end
- def linkable_log_target(record)
- case record.class.name
- when 'Account'
- link_to record.acct, admin_account_path(record.id)
- when 'User'
- link_to record.account.acct, admin_account_path(record.account_id)
- when 'CustomEmoji'
- record.shortcode
- when 'Report'
- link_to "##{record.id}", admin_report_path(record)
- when 'DomainBlock', 'EmailDomainBlock'
- link_to record.domain, "https://#{record.domain}"
- when 'Status'
- link_to record.account.acct, TagManager.instance.url_for(record)
- when 'AccountWarning'
- link_to record.target_account.acct, admin_account_path(record.target_account_id)
- end
- end
-
- def log_target_from_history(type, attributes)
- case type
- when 'CustomEmoji'
- attributes['shortcode']
- when 'DomainBlock', 'EmailDomainBlock'
- link_to attributes['domain'], "https://#{attributes['domain']}"
- when 'Status'
- tmp_status = Status.new(attributes.except('reblogs_count', 'favourites_count'))
-
- if tmp_status.account
- link_to tmp_status.account&.acct || "##{tmp_status.account_id}", admin_account_path(tmp_status.account_id)
- else
- I18n.t('admin.action_logs.deleted_status')
- end
- end
- end
-
def relevant_log_changes(log)
if log.target_type == 'CustomEmoji' && [:enable, :disable, :destroy].include?(log.action)
log.recorded_changes.slice('domain')
@@ -111,4 +75,40 @@ module Admin::ActionLogsHelper
def opposite_verbs?(log)
%w(DomainBlock EmailDomainBlock AccountWarning).include?(log.target_type)
end
+
+ def linkable_log_target(record)
+ case record.class.name
+ when 'Account'
+ link_to record.acct, admin_account_path(record.id)
+ when 'User'
+ link_to record.account.acct, admin_account_path(record.account_id)
+ when 'CustomEmoji'
+ record.shortcode
+ when 'Report'
+ link_to "##{record.id}", admin_report_path(record)
+ when 'DomainBlock', 'EmailDomainBlock'
+ link_to record.domain, "https://#{record.domain}"
+ when 'Status'
+ link_to record.account.acct, TagManager.instance.url_for(record)
+ when 'AccountWarning'
+ link_to record.target_account.acct, admin_account_path(record.target_account_id)
+ end
+ end
+
+ def log_target_from_history(type, attributes)
+ case type
+ when 'CustomEmoji'
+ attributes['shortcode']
+ when 'DomainBlock', 'EmailDomainBlock'
+ link_to attributes['domain'], "https://#{attributes['domain']}"
+ when 'Status'
+ tmp_status = Status.new(attributes.except('reblogs_count', 'favourites_count'))
+
+ if tmp_status.account
+ link_to tmp_status.account&.acct || "##{tmp_status.account_id}", admin_account_path(tmp_status.account_id)
+ else
+ I18n.t('admin.action_logs.deleted_status')
+ end
+ end
+ end
end
diff --git a/spec/helpers/admin/action_log_helper_spec.rb b/spec/helpers/admin/action_log_helper_spec.rb
new file mode 100644
index 00000000000..d7af6b939e6
--- /dev/null
+++ b/spec/helpers/admin/action_log_helper_spec.rb
@@ -0,0 +1,272 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe Admin::ActionLogsHelper, type: :helper do
+ klass = Class.new do
+ include ActionView::Helpers
+ include Admin::ActionLogsHelper
+ end
+
+ let(:hoge) { klass.new }
+
+ describe '#log_target' do
+ after do
+ hoge.log_target(log)
+ end
+
+ context 'log.target' do
+ let(:log) { double(target: true) }
+
+ it 'calls linkable_log_target' do
+ expect(hoge).to receive(:linkable_log_target).with(log.target)
+ end
+ end
+
+ context '!log.target' do
+ let(:log) { double(target: false, target_type: :type, recorded_changes: :change) }
+
+ it 'calls log_target_from_history' do
+ expect(hoge).to receive(:log_target_from_history).with(log.target_type, log.recorded_changes)
+ end
+ end
+ end
+
+ describe '#relevant_log_changes' do
+ let(:log) { double(target_type: target_type, action: log_action, recorded_changes: recorded_changes) }
+ let(:recorded_changes) { double }
+
+ after do
+ hoge.relevant_log_changes(log)
+ end
+
+ context "log.target_type == 'CustomEmoji' && [:enable, :disable, :destroy].include?(log.action)" do
+ let(:target_type) { 'CustomEmoji' }
+ let(:log_action) { :enable }
+
+ it "calls log.recorded_changes.slice('domain')" do
+ expect(recorded_changes).to receive(:slice).with('domain')
+ end
+ end
+
+ context "log.target_type == 'CustomEmoji' && log.action == :update" do
+ let(:target_type) { 'CustomEmoji' }
+ let(:log_action) { :update }
+
+ it "calls log.recorded_changes.slice('domain', 'visible_in_picker')" do
+ expect(recorded_changes).to receive(:slice).with('domain', 'visible_in_picker')
+ end
+ end
+
+ context "log.target_type == 'User' && [:promote, :demote].include?(log.action)" do
+ let(:target_type) { 'User' }
+ let(:log_action) { :promote }
+
+ it "calls log.recorded_changes.slice('moderator', 'admin')" do
+ expect(recorded_changes).to receive(:slice).with('moderator', 'admin')
+ end
+ end
+
+ context "log.target_type == 'User' && [:change_email].include?(log.action)" do
+ let(:target_type) { 'User' }
+ let(:log_action) { :change_email }
+
+ it "calls log.recorded_changes.slice('email', 'unconfirmed_email')" do
+ expect(recorded_changes).to receive(:slice).with('email', 'unconfirmed_email')
+ end
+ end
+
+ context "log.target_type == 'DomainBlock'" do
+ let(:target_type) { 'DomainBlock' }
+ let(:log_action) { nil }
+
+ it "calls log.recorded_changes.slice('severity', 'reject_media')" do
+ expect(recorded_changes).to receive(:slice).with('severity', 'reject_media')
+ end
+ end
+
+ context "log.target_type == 'Status' && log.action == :update" do
+ let(:target_type) { 'Status' }
+ let(:log_action) { :update }
+
+ it "log.recorded_changes.slice('sensitive')" do
+ expect(recorded_changes).to receive(:slice).with('sensitive')
+ end
+ end
+ end
+
+ describe '#log_extra_attributes' do
+ after do
+ hoge.log_extra_attributes(hoge: 'hoge')
+ end
+
+ it "calls content_tag(:span, key, class: 'diff-key')" do
+ allow(hoge).to receive(:log_change).with(anything)
+ expect(hoge).to receive(:content_tag).with(:span, :hoge, class: 'diff-key')
+ end
+
+ it 'calls safe_join twice' do
+ expect(hoge).to receive(:safe_join).with(
+ ['hoge',
+ '=',
+ 'hoge']
+ )
+
+ expect(hoge).to receive(:safe_join).with([nil], ' ')
+ end
+ end
+
+ describe '#log_change' do
+ after do
+ hoge.log_change(val)
+ end
+
+ context '!val.is_a?(Array)' do
+ let(:val) { 'hoge' }
+
+ it "calls content_tag(:span, val, class: 'diff-neutral')" do
+ expect(hoge).to receive(:content_tag).with(:span, val, class: 'diff-neutral')
+ end
+ end
+
+ context 'val.is_a?(Array)' do
+ let(:val) { %w(foo bar) }
+
+ it 'calls #content_tag twice and #safe_join' do
+ expect(hoge).to receive(:content_tag).with(:span, 'foo', class: 'diff-old')
+ expect(hoge).to receive(:content_tag).with(:span, 'bar', class: 'diff-new')
+ expect(hoge).to receive(:safe_join).with([nil, nil], '→')
+ end
+ end
+ end
+
+ describe '#icon_for_log' do
+ subject { hoge.icon_for_log(log) }
+
+ context "log.target_type == 'Account'" do
+ let(:log) { double(target_type: 'Account') }
+
+ it 'returns "user"' do
+ expect(subject).to be 'user'
+ end
+ end
+
+ context "log.target_type == 'User'" do
+ let(:log) { double(target_type: 'User') }
+
+ it 'returns "user"' do
+ expect(subject).to be 'user'
+ end
+ end
+
+ context "log.target_type == 'CustomEmoji'" do
+ let(:log) { double(target_type: 'CustomEmoji') }
+
+ it 'returns "file"' do
+ expect(subject).to be 'file'
+ end
+ end
+
+ context "log.target_type == 'Report'" do
+ let(:log) { double(target_type: 'Report') }
+
+ it 'returns "flag"' do
+ expect(subject).to be 'flag'
+ end
+ end
+
+ context "log.target_type == 'DomainBlock'" do
+ let(:log) { double(target_type: 'DomainBlock') }
+
+ it 'returns "lock"' do
+ expect(subject).to be 'lock'
+ end
+ end
+
+ context "log.target_type == 'EmailDomainBlock'" do
+ let(:log) { double(target_type: 'EmailDomainBlock') }
+
+ it 'returns "envelope"' do
+ expect(subject).to be 'envelope'
+ end
+ end
+
+ context "log.target_type == 'Status'" do
+ let(:log) { double(target_type: 'Status') }
+
+ it 'returns "pencil"' do
+ expect(subject).to be 'pencil'
+ end
+ end
+ end
+
+ describe '#class_for_log_icon' do
+ subject { hoge.class_for_log_icon(log) }
+
+ %i(enable unsuspend unsilence confirm promote resolve).each do |action|
+ context "log.action == #{action}" do
+ let(:log) { double(action: action) }
+
+ it 'returns "positive"' do
+ expect(subject).to be 'positive'
+ end
+ end
+ end
+
+ context 'log.action == :create' do
+ context 'opposite_verbs?(log)' do
+ let(:log) { double(action: :create, target_type: 'DomainBlock') }
+
+ it 'returns "negative"' do
+ expect(subject).to be 'negative'
+ end
+ end
+
+ context '!opposite_verbs?(log)' do
+ let(:log) { double(action: :create, target_type: '') }
+
+ it 'returns "positive"' do
+ expect(subject).to be 'positive'
+ end
+ end
+ end
+
+ %i(update reset_password disable_2fa memorialize change_email).each do |action|
+ context "log.action == #{action}" do
+ let(:log) { double(action: action) }
+
+ it 'returns "neutral"' do
+ expect(subject).to be 'neutral'
+ end
+ end
+ end
+
+ %i(demote silence disable suspend remove_avatar remove_header reopen).each do |action|
+ context "log.action == #{action}" do
+ let(:log) { double(action: action) }
+
+ it 'returns "negative"' do
+ expect(subject).to be 'negative'
+ end
+ end
+ end
+
+ context 'log.action == :destroy' do
+ context 'opposite_verbs?(log)' do
+ let(:log) { double(action: :destroy, target_type: 'DomainBlock') }
+
+ it 'returns "positive"' do
+ expect(subject).to be 'positive'
+ end
+ end
+
+ context '!opposite_verbs?(log)' do
+ let(:log) { double(action: :destroy, target_type: '') }
+
+ it 'returns "negative"' do
+ expect(subject).to be 'negative'
+ end
+ end
+ end
+ end
+end
From 8da5b8e6695e3bcca8eb4bca754faef83a6656eb Mon Sep 17 00:00:00 2001
From: Nolan Lawson
Date: Fri, 15 Mar 2019 20:02:30 -0700
Subject: [PATCH 13/20] perf: remove zopfli to speed up webpack (#10288)
---
config/webpack/production.js | 4 ----
package.json | 1 -
yarn.lock | 9 +--------
3 files changed, 1 insertion(+), 13 deletions(-)
diff --git a/config/webpack/production.js b/config/webpack/production.js
index cae978fcb30..6f27aa2c700 100644
--- a/config/webpack/production.js
+++ b/config/webpack/production.js
@@ -7,7 +7,6 @@ const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer');
const OfflinePlugin = require('offline-plugin');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
const CompressionPlugin = require('compression-webpack-plugin');
-const zopfli = require('@gfx/zopfli');
const { output } = require('./configuration');
const sharedConfig = require('./shared');
@@ -55,9 +54,6 @@ module.exports = merge(sharedConfig, {
plugins: [
new CompressionPlugin({
filename: '[path].gz[query]',
- algorithm(input, compressionOptions, callback) {
- return zopfli.gzip(input, compressionOptions, callback);
- },
cache: true,
test: /\.(js|css|html|json|ico|svg|eot|otf|ttf|map)$/,
}),
diff --git a/package.json b/package.json
index 79240df072e..63cfa25b805 100644
--- a/package.json
+++ b/package.json
@@ -69,7 +69,6 @@
"@babel/preset-env": "^7.3.4",
"@babel/preset-react": "^7.0.0",
"@babel/runtime": "^7.3.4",
- "@gfx/zopfli": "^1.0.11",
"array-includes": "^3.0.3",
"autoprefixer": "^9.4.10",
"axios": "^0.18.0",
diff --git a/yarn.lock b/yarn.lock
index 47bbafc8798..9d7f0eccb55 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -846,13 +846,6 @@
resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.2.tgz#63985d3d8b02530e0869962f4da09142ee8e200e"
integrity sha512-n/VQ4mbfr81aqkx/XmVicOLjviMuy02eenSdJY33SVA7S2J42EU0P1H0mOogfYedb3wXA0d/LVtBrgTSm04WEA==
-"@gfx/zopfli@^1.0.11":
- version "1.0.11"
- resolved "https://registry.yarnpkg.com/@gfx/zopfli/-/zopfli-1.0.11.tgz#6ced06b4566a5feb0036fe6a1e0262ce6cb1d6c5"
- integrity sha512-wW+hi+bqdYCpBIvL8g7RYub9YXf5crhZK9SNk/VZmbF177Em1VwFv488qyh8iBpCo6GptcP1Zam0bJfY3VmMbg==
- dependencies:
- base64-js "^1.3.0"
-
"@jest/console@^24.3.0":
version "24.3.0"
resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.3.0.tgz#7bd920d250988ba0bf1352c4493a48e1cb97671e"
@@ -1690,7 +1683,7 @@ balanced-match@^1.0.0:
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
-base64-js@^1.0.2, base64-js@^1.3.0:
+base64-js@^1.0.2:
version "1.3.0"
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3"
integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==
From 1c113fd72df18999de1d6f09fa3790dd1f715506 Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Sat, 16 Mar 2019 11:23:22 +0100
Subject: [PATCH 14/20] Add relationship manager UI (#10268)
---
app/controllers/relationships_controller.rb | 98 +++++++++++++++++++
.../settings/follower_domains_controller.rb | 28 ------
app/helpers/admin/filter_helper.rb | 3 +-
app/javascript/styles/mastodon/tables.scss | 19 ++++
app/models/form/account_batch.rb | 60 ++++++++++++
app/views/relationships/_account.html.haml | 20 ++++
app/views/relationships/show.html.haml | 43 ++++++++
.../settings/follower_domains/show.html.haml | 34 -------
config/locales/ar.yml | 10 --
config/locales/ast.yml | 5 -
config/locales/ca.yml | 13 ---
config/locales/co.yml | 13 ---
config/locales/cs.yml | 14 ---
config/locales/cy.yml | 17 ----
config/locales/da.yml | 13 ---
config/locales/de.yml | 13 ---
config/locales/el.yml | 13 ---
config/locales/en.yml | 24 +++--
config/locales/eo.yml | 13 ---
config/locales/es.yml | 13 ---
config/locales/eu.yml | 13 ---
config/locales/fa.yml | 13 ---
config/locales/fi.yml | 13 ---
config/locales/fr.yml | 13 ---
config/locales/gl.yml | 13 ---
config/locales/he.yml | 13 ---
config/locales/hu.yml | 13 ---
config/locales/id.yml | 13 ---
config/locales/it.yml | 10 --
config/locales/ja.yml | 13 ---
config/locales/ka.yml | 13 ---
config/locales/kk.yml | 13 ---
config/locales/ko.yml | 13 ---
config/locales/lt.yml | 14 ---
config/locales/ms.yml | 4 -
config/locales/nl.yml | 13 ---
config/locales/no.yml | 13 ---
config/locales/oc.yml | 13 ---
config/locales/pl.yml | 15 ---
config/locales/pt-BR.yml | 13 ---
config/locales/pt.yml | 13 ---
config/locales/ro.yml | 6 --
config/locales/ru.yml | 15 ---
config/locales/sk.yml | 14 ---
config/locales/sq.yml | 13 ---
config/locales/sr-Latn.yml | 15 ---
config/locales/sr.yml | 15 ---
config/locales/sv.yml | 13 ---
config/locales/th.yml | 13 ---
config/locales/tr.yml | 13 ---
config/locales/uk.yml | 11 ---
config/locales/zh-CN.yml | 11 ---
config/locales/zh-HK.yml | 13 ---
config/locales/zh-TW.yml | 11 ---
config/navigation.rb | 2 +-
config/routes.rb | 3 +-
...ec.rb => relationships_controller_spec.rb} | 26 ++---
57 files changed, 264 insertions(+), 660 deletions(-)
create mode 100644 app/controllers/relationships_controller.rb
delete mode 100644 app/controllers/settings/follower_domains_controller.rb
create mode 100644 app/models/form/account_batch.rb
create mode 100644 app/views/relationships/_account.html.haml
create mode 100644 app/views/relationships/show.html.haml
delete mode 100644 app/views/settings/follower_domains/show.html.haml
rename spec/controllers/{settings/follower_domains_controller_spec.rb => relationships_controller_spec.rb} (64%)
diff --git a/app/controllers/relationships_controller.rb b/app/controllers/relationships_controller.rb
new file mode 100644
index 00000000000..e6dd65e4455
--- /dev/null
+++ b/app/controllers/relationships_controller.rb
@@ -0,0 +1,98 @@
+# frozen_string_literal: true
+
+class RelationshipsController < ApplicationController
+ layout 'admin'
+
+ before_action :authenticate_user!
+ before_action :set_accounts, only: :show
+ before_action :set_body_classes
+
+ helper_method :following_relationship?, :followed_by_relationship?, :mutual_relationship?
+
+ def show
+ @form = Form::AccountBatch.new
+ end
+
+ def update
+ @form = Form::AccountBatch.new(form_account_batch_params.merge(current_account: current_account, action: action_from_button))
+ @form.save
+ rescue ActionController::ParameterMissing
+ # Do nothing
+ ensure
+ redirect_to relationships_path(current_params)
+ end
+
+ private
+
+ def set_accounts
+ @accounts = relationships_scope.page(params[:page]).per(40)
+ end
+
+ def relationships_scope
+ scope = begin
+ if following_relationship?
+ current_account.following.includes(:account_stat)
+ else
+ current_account.followers.includes(:account_stat)
+ end
+ end
+
+ scope.merge!(Follow.recent)
+ scope.merge!(mutual_relationship_scope) if mutual_relationship?
+ scope.merge!(abandoned_account_scope) if params[:status] == 'abandoned'
+ scope.merge!(active_account_scope) if params[:status] == 'active'
+ scope.merge!(by_domain_scope) if params[:by_domain].present?
+
+ scope
+ end
+
+ def mutual_relationship_scope
+ Account.where(id: current_account.following)
+ end
+
+ def abandoned_account_scope
+ Account.where.not(moved_to_account_id: nil)
+ end
+
+ def active_account_scope
+ Account.where(moved_to_account_id: nil)
+ end
+
+ def by_domain_scope
+ Account.where(domain: params[:by_domain])
+ end
+
+ def form_account_batch_params
+ params.require(:form_account_batch).permit(:action, account_ids: [])
+ end
+
+ def following_relationship?
+ params[:relationship].blank? || params[:relationship] == 'following'
+ end
+
+ def mutual_relationship?
+ params[:relationship] == 'mutual'
+ end
+
+ def followed_by_relationship?
+ params[:relationship] == 'followed_by'
+ end
+
+ def current_params
+ params.slice(:page, :status, :relationship, :by_domain).permit(:page, :status, :relationship, :by_domain)
+ end
+
+ def action_from_button
+ if params[:unfollow]
+ 'unfollow'
+ elsif params[:remove_from_followers]
+ 'remove_from_followers'
+ elsif params[:block_domains]
+ 'block_domains'
+ end
+ end
+
+ def set_body_classes
+ @body_classes = 'admin'
+ end
+end
diff --git a/app/controllers/settings/follower_domains_controller.rb b/app/controllers/settings/follower_domains_controller.rb
deleted file mode 100644
index ce8ec985d62..00000000000
--- a/app/controllers/settings/follower_domains_controller.rb
+++ /dev/null
@@ -1,28 +0,0 @@
-# frozen_string_literal: true
-
-class Settings::FollowerDomainsController < Settings::BaseController
- layout 'admin'
-
- before_action :authenticate_user!
-
- def show
- @account = current_account
- @domains = current_account.followers.reorder(Arel.sql('MIN(follows.id) DESC')).group('accounts.domain').select('accounts.domain, count(accounts.id) as accounts_from_domain').page(params[:page]).per(10)
- end
-
- def update
- domains = bulk_params[:select] || []
-
- AfterAccountDomainBlockWorker.push_bulk(domains) do |domain|
- [current_account.id, domain]
- end
-
- redirect_to settings_follower_domains_path, notice: I18n.t('followers.success', count: domains.size)
- end
-
- private
-
- def bulk_params
- params.permit(select: [])
- end
-end
diff --git a/app/helpers/admin/filter_helper.rb b/app/helpers/admin/filter_helper.rb
index 8f78bf5f846..09a35629694 100644
--- a/app/helpers/admin/filter_helper.rb
+++ b/app/helpers/admin/filter_helper.rb
@@ -7,8 +7,9 @@ module Admin::FilterHelper
CUSTOM_EMOJI_FILTERS = %i(local remote by_domain shortcode).freeze
TAGS_FILTERS = %i(hidden).freeze
INSTANCES_FILTERS = %i(limited by_domain).freeze
+ FOLLOWERS_FILTERS = %i(relationship status by_domain).freeze
- FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS + INVITE_FILTER + CUSTOM_EMOJI_FILTERS + TAGS_FILTERS + INSTANCES_FILTERS
+ FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS + INVITE_FILTER + CUSTOM_EMOJI_FILTERS + TAGS_FILTERS + INSTANCES_FILTERS + FOLLOWERS_FILTERS
def filter_link_to(text, link_to_params, link_class_params = link_to_params)
new_url = filtered_url_for(link_to_params)
diff --git a/app/javascript/styles/mastodon/tables.scss b/app/javascript/styles/mastodon/tables.scss
index 9e878567955..d3a0ea03d02 100644
--- a/app/javascript/styles/mastodon/tables.scss
+++ b/app/javascript/styles/mastodon/tables.scss
@@ -140,6 +140,15 @@ a.table-action-link {
input {
margin-top: 8px;
}
+
+ &--aligned {
+ display: flex;
+ align-items: center;
+
+ input {
+ margin-top: 0;
+ }
+ }
}
&__actions,
@@ -183,6 +192,10 @@ a.table-action-link {
&__content {
padding-top: 12px;
padding-bottom: 16px;
+
+ &--unpadded {
+ padding: 0;
+ }
}
}
@@ -197,4 +210,10 @@ a.table-action-link {
font-weight: 700;
}
}
+
+ .nothing-here {
+ border: 1px solid darken($ui-base-color, 8%);
+ border-top: 0;
+ box-shadow: none;
+ }
}
diff --git a/app/models/form/account_batch.rb b/app/models/form/account_batch.rb
new file mode 100644
index 00000000000..60eaaf0e2ba
--- /dev/null
+++ b/app/models/form/account_batch.rb
@@ -0,0 +1,60 @@
+# frozen_string_literal: true
+
+class Form::AccountBatch
+ include ActiveModel::Model
+
+ attr_accessor :account_ids, :action, :current_account
+
+ def save
+ case action
+ when 'unfollow'
+ unfollow!
+ when 'remove_from_followers'
+ remove_from_followers!
+ when 'block_domains'
+ block_domains!
+ end
+ end
+
+ private
+
+ def unfollow!
+ accounts.find_each do |target_account|
+ UnfollowService.new.call(current_account, target_account)
+ end
+ end
+
+ def remove_from_followers!
+ current_account.passive_relationships.where(account_id: account_ids).find_each do |follow|
+ reject_follow!(follow)
+ end
+ end
+
+ def block_domains!
+ AfterAccountDomainBlockWorker.push_bulk(account_domains) do |domain|
+ [current_account.id, domain]
+ end
+ end
+
+ def account_domains
+ accounts.pluck(Arel.sql('distinct domain')).compact
+ end
+
+ def accounts
+ Account.where(id: account_ids)
+ end
+
+ def reject_follow!(follow)
+ follow.destroy
+
+ return unless follow.account.activitypub?
+
+ json = ActiveModelSerializers::SerializableResource.new(
+ follow,
+ serializer: ActivityPub::RejectFollowSerializer,
+ adapter: ActivityPub::Adapter
+ ).to_json
+
+ ActivityPub::DeliveryWorker.perform_async(json, current_account.id, follow.account.inbox_url)
+ end
+end
diff --git a/app/views/relationships/_account.html.haml b/app/views/relationships/_account.html.haml
new file mode 100644
index 00000000000..6c22deb515e
--- /dev/null
+++ b/app/views/relationships/_account.html.haml
@@ -0,0 +1,20 @@
+.batch-table__row
+ %label.batch-table__row__select.batch-table__row__select--aligned.batch-checkbox
+ = f.check_box :account_ids, { multiple: true, include_hidden: false }, account.id
+ .batch-table__row__content.batch-table__row__content--unpadded
+ %table.accounts-table
+ %tbody
+ %tr
+ %td= account_link_to account
+ %td.accounts-table__count.optional
+ = number_to_human account.statuses_count, strip_insignificant_zeros: true
+ %small= t('accounts.posts', count: account.statuses_count).downcase
+ %td.accounts-table__count.optional
+ = number_to_human account.followers_count, strip_insignificant_zeros: true
+ %small= t('accounts.followers', count: account.followers_count).downcase
+ %td.accounts-table__count
+ - if account.last_status_at.present?
+ %time.time-ago{ datetime: account.last_status_at.iso8601, title: l(account.last_status_at) }= l account.last_status_at
+ - else
+ \-
+ %small= t('accounts.last_active')
diff --git a/app/views/relationships/show.html.haml b/app/views/relationships/show.html.haml
new file mode 100644
index 00000000000..33a43f1a87c
--- /dev/null
+++ b/app/views/relationships/show.html.haml
@@ -0,0 +1,43 @@
+- content_for :page_title do
+ = t('settings.relationships')
+
+- content_for :header_tags do
+ = javascript_pack_tag 'admin', integrity: true, async: true, crossorigin: 'anonymous'
+
+.filters
+ .filter-subset
+ %strong= t 'relationships.relationship'
+ %ul
+ %li= filter_link_to t('accounts.following', count: current_account.following_count), relationship: nil
+ %li= filter_link_to t('accounts.followers', count: current_account.followers_count), relationship: 'followed_by'
+ %li= filter_link_to t('relationships.mutual'), relationship: 'mutual'
+
+ .filter-subset
+ %strong= t 'relationships.status'
+ %ul
+ %li= filter_link_to t('generic.all'), status: nil
+ %li= filter_link_to t('relationships.active'), status: 'active'
+ %li= filter_link_to t('relationships.abandoned'), status: 'abandoned'
+
+= form_for(@form, url: relationships_path, method: :patch) do |f|
+ = hidden_field_tag :page, params[:page] || 1
+ = hidden_field_tag :relationship, params[:relationship]
+ = hidden_field_tag :status, params[:status]
+
+ .batch-table
+ .batch-table__toolbar
+ %label.batch-table__toolbar__select.batch-checkbox-all
+ = check_box_tag :batch_checkbox_all, nil, false
+ .batch-table__toolbar__actions
+ = f.button safe_join([fa_icon('user-times'), t('relationships.remove_selected_follows')]), name: :unfollow, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') } unless followed_by_relationship?
+
+ = f.button safe_join([fa_icon('trash'), t('relationships.remove_selected_followers')]), name: :remove_from_followers, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') } unless following_relationship?
+
+ = f.button safe_join([fa_icon('trash'), t('relationships.remove_selected_domains')]), name: :block_domains, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') } if followed_by_relationship?
+ .batch-table__body
+ - if @accounts.empty?
+ = nothing_here 'nothing-here--under-tabs'
+ - else
+ = render partial: 'account', collection: @accounts, locals: { f: f }
+
+= paginate @accounts
diff --git a/app/views/settings/follower_domains/show.html.haml b/app/views/settings/follower_domains/show.html.haml
deleted file mode 100644
index f1687d4d2f1..00000000000
--- a/app/views/settings/follower_domains/show.html.haml
+++ /dev/null
@@ -1,34 +0,0 @@
-- content_for :page_title do
- = t('settings.followers')
-
-= form_tag settings_follower_domains_path, method: :patch, class: 'table-form' do
- - unless @account.locked?
- .warning
- %strong
- = fa_icon('warning')
- = t('followers.unlocked_warning_title')
- = t('followers.unlocked_warning_html', lock_link: link_to(t('followers.lock_link'), settings_profile_url))
-
- %p= t('followers.explanation_html')
- %p= t('followers.true_privacy_html')
-
- .table-wrapper
- %table.table
- %thead
- %tr
- %th
- %th= t('followers.domain')
- %th= t('followers.followers_count')
- %tbody
- - @domains.each do |domain|
- %tr
- %td
- = check_box_tag 'select[]', domain.domain, false, disabled: !@account.locked? unless domain.domain.nil?
- %td
- %samp= domain.domain.presence || Rails.configuration.x.local_domain
- %td= number_with_delimiter domain.accounts_from_domain
-
- .action-pagination
- .actions
- = button_tag t('followers.purge'), type: :submit, class: 'button', disabled: !@account.locked?
- = paginate @domains
diff --git a/config/locales/ar.yml b/config/locales/ar.yml
index b0b8d8b40df..d409ad99ac2 100644
--- a/config/locales/ar.yml
+++ b/config/locales/ar.yml
@@ -607,15 +607,6 @@ ar:
title: عوامل التصفية
new:
title: إضافة عامل تصفية جديد
- followers:
- domain: النطاق
- followers_count: عدد المتابِعين
- lock_link: قم بتجميد حسابك
- purge: تنحية من بين متابعيك
- success: جارية عملية حظر المتابِعين بسلاسة من %{count} نطاقات أخرى ...
- true_privacy_html: تذكر دائمًا أنّ الخصوصية التامة لا يمكن بلوغها إلّا بالتعمية و التشفير من طرف إلى آخَر.
- unlocked_warning_html: يمكن لأي كان متابعة حسابك و الإطلاع مباشرة على تبويقاتك. إستخدِم %{lock_link} لمُعاينة أو رفض طلبات المتابِعين الجُدُد.
- unlocked_warning_title: إنّ حسابك غير مقفل
footer:
developers: المطورون
more: المزيد …
@@ -818,7 +809,6 @@ ar:
development: التطوير
edit_profile: تعديل الملف الشخصي
export: تصدير البيانات
- followers: المتابِعون المُرَخّصون
import: إستيراد
migrate: تهجير الحساب
notifications: الإخطارات
diff --git a/config/locales/ast.yml b/config/locales/ast.yml
index ebf6a379982..cbfd27b047e 100644
--- a/config/locales/ast.yml
+++ b/config/locales/ast.yml
@@ -182,10 +182,6 @@ ast:
title: Peñeres
new:
title: Amestar una peñera nueva
- followers:
- domain: Dominiu
- followers_count: Númberu de siguidores
- purge: Desaniciar de los siguidores
generic:
changes_saved_msg: "¡Los cambeos guardáronse con ésitu!"
save_changes: Guardar cambeos
@@ -302,7 +298,6 @@ ast:
back: Volver a Mastodon
edit_profile: Edición del perfil
export: Esportación de datos
- followers: Siguidores autorizaos
import: Importación
notifications: Avisos
preferences: Preferencies
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index 417ba95f75a..4f5012d56de 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -588,18 +588,6 @@ ca:
title: Filtres
new:
title: Afegir nou filtre
- followers:
- domain: Domini
- explanation_html: Si desitges garantir la privacitat de les teves publicacions, has de ser conscient de qui t'està seguint. Les publicacions privades es lliuren a totes les instàncies on tens seguidors . És possible que vulguis revisar-los i eliminar seguidors si no confies en que la teva privacitat sigui respectada pel personal o el programari d'aquestes instàncies.
- followers_count: Nombre de seguidors
- lock_link: Bloca el teu compte
- purge: Elimina dels seguidors
- success:
- one: En el procés de bloqueig suau de seguidors d'un domini...
- other: En el procés de bloqueig suau de seguidors de %{count} dominis...
- true_privacy_html: Considera que la autèntica privacitat només es pot aconseguir amb xifratge d'extrem a extrem.
- unlocked_warning_html: Tothom pot seguir-te per a veure inmediatament les teves publicacions privades. %{lock_link} per poder revisar i rebutjar seguidors.
- unlocked_warning_title: El teu compte no està blocat
footer:
developers: Desenvolupadors
more: Més…
@@ -785,7 +773,6 @@ ca:
development: Desenvolupament
edit_profile: Editar perfil
export: Exportar informació
- followers: Seguidors autoritzats
import: Importar
migrate: Migració del compte
notifications: Notificacions
diff --git a/config/locales/co.yml b/config/locales/co.yml
index 77c3efeda74..651d297810f 100644
--- a/config/locales/co.yml
+++ b/config/locales/co.yml
@@ -593,18 +593,6 @@ co:
title: Filtri
new:
title: Aghjustà un novu filtru
- followers:
- domain: Duminiu
- explanation_html: Per assicuravi di a cunfidenzialità di i vostri statuti, duvete avè primura di quale vi seguita. I vostri statuti privati sò mandati à tutti i servori induve avete abbunati. Pensate à u vostru livellu di cunfidenza in i so amministratori.
- followers_count: Numeru d’abbunati
- lock_link: Rendete u contu privatu
- purge: Toglie di a lista d’abbunati
- success:
- one: Suppressione di l’abbunati d’un duminiu...
- other: Suppressione di l’abbunati da %{count} duminii...
- true_privacy_html: Ùn vi scurdate chì una vera cunfidenzialità pò solu esse ottenuta cù crittografia da un capu à l’altru.
- unlocked_warning_html: Tuttu u mondu pò seguitavi è vede i vostri statuti privati. %{lock_link} per pudè cunfirmà o righjittà abbunamenti.
- unlocked_warning_title: U vostru contu hè pubblicu
footer:
developers: Sviluppatori
more: Di più…
@@ -807,7 +795,6 @@ co:
edit_profile: Mudificà u prufile
export: Spurtazione d’infurmazione
featured_tags: Hashtag in vista
- followers: Abbunati auturizati
import: Impurtazione
migrate: Migrazione di u contu
notifications: Nutificazione
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index b0b317ac800..97e68eb4edb 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -628,19 +628,6 @@ cs:
title: Filtry
new:
title: Přidat nový filtr
- followers:
- domain: Doména
- explanation_html: Chcete-li zaručit soukromí vašich tootů, musíte mít na vědomí, kdo vás sleduje. Vaše soukromé tooty jsou doručeny na všechny servery, kde máte sledující. Nejspíš si je budete chtít zkontrolovat a odstranit sledující na serverech, jejichž provozovatelům či softwaru nedůvěřujete s respektováním vašeho soukromí.
- followers_count: Počet sledujících
- lock_link: Uzamkněte svůj účet
- purge: Odstranit ze sledujících
- success:
- few: V průběhu blokování sledujících ze %{count} domén...
- one: V průběhu blokování sledujících z jedné domény...
- other: V průběhu blokování sledujících z %{count} domén...
- true_privacy_html: Berte prosím na vědomí, že skutečného soukromí se dá dosáhnout pouze za pomoci end-to-end šifrování.
- unlocked_warning_html: Kdokoliv vás může sledovat a okamžitě vidět vaše soukromé tooty. %{lock_link}, abyste mohl/a kontrolovat a odmítat sledující.
- unlocked_warning_title: Váš účet není uzamčen
footer:
developers: Vývojáři
more: Více…
@@ -846,7 +833,6 @@ cs:
edit_profile: Upravit profil
export: Export dat
featured_tags: Zvýrazněné hashtagy
- followers: Autorizovaní sledující
import: Import
migrate: Přesunutí účtu
notifications: Oznámení
diff --git a/config/locales/cy.yml b/config/locales/cy.yml
index b6f94606d0a..900aedd572f 100644
--- a/config/locales/cy.yml
+++ b/config/locales/cy.yml
@@ -614,22 +614,6 @@ cy:
title: Hidlyddion
new:
title: Ychwanegu hidlydd newydd
- followers:
- domain: Parth
- explanation_html: Os ydych am sicrhau preifatrwydd eich tŵtiau, rhaid i chi fod yn ymwybodol o bwy sy'n eich dilyn. Mae eich tŵtiau preifat yn cael eu hanfon at bob achos lle mae gennych ddilynwyr. Efallai hoffech chi i'w hadolygu o bryd i'w gilydd, a chael gwared ar ddilynwyr os nad ydych yn credu i'r staff neu'r meddalwedd ar yr achosion hynny barchu eich preifatrwydd.
- followers_count: Nifer y dilynwyr
- lock_link: Cloi eich cyfrif
- purge: Dileu o dilynwyr
- success:
- few: Yn y broses o ysgafn-flocio defnyddwyr o %{count} parth...
- many: Yn y broses o ysgafn-flocio defnyddwyr o %{count} parth...
- one: Yn y broses o ysgafn-flocio dilynwyr o un parth...
- other: Yn y broses o ysgafn-flocio defnyddwyr o %{count} parth...
- two: Yn y broses o ysgafn-flocio defnyddwyr o %{count} parth...
- zero: Yn y broses o ysgafn-flocio defnyddwyr o %{count} parth...
- true_privacy_html: Cofiwch mai ond amgryptio pen-i-ben all sicrhau gwir breifatrwydd.
- unlocked_warning_html: Gall unrhywun eich dilyn yn syth i weld eich tŵtiau preifat. %{lock_link} i gael adolygu a gwrthod dilynwyr.
- unlocked_warning_title: Nid yw eich cyfrif wedi ei gloi
footer:
developers: Datblygwyr
more: Mwy…
@@ -815,7 +799,6 @@ cy:
development: Datblygu
edit_profile: Golygu proffil
export: Allforio data
- followers: Dilynwyr awdurdodedig
import: Mewnforio
migrate: Mudo cyfrif
notifications: Hysbysiadau
diff --git a/config/locales/da.yml b/config/locales/da.yml
index a44a345d7ae..4953f70dff2 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -526,18 +526,6 @@ da:
title: Filtrer
new:
title: Tilføj nyt filter
- followers:
- domain: Domæne
- explanation_html: Hvis du vil sikre dig privatliv over dine statusser, skal du være klar over hvem der følger dig. Dine private statusser leveres til alle instanser som du har følger fra. Det kan være en ide at gennemgå dem, og fjerne følgere hvis du ikke føler dit privatliv respekteres af personalet eller software fra disse instanser.
- followers_count: Antal følgere
- lock_link: Lås din konto
- purge: Fjern fra følgere
- success:
- one: I gang med at soft-blokere følgere fra et domæne...
- other: I gang med at soft-blokere følgere fra %{count} domæner...
- true_privacy_html: Husk på, at sand privatliv kan kun opnås via end-to-end kryptering.
- unlocked_warning_html: Alle kan følge dig med det samme for at se dine private statusser. %{lock_link} for at være i stand til at gennemse og afvise følgere.
- unlocked_warning_title: Din konto er ikke låst
footer:
developers: Udviklere
more: Mere…
@@ -708,7 +696,6 @@ da:
development: Udvikling
edit_profile: Rediger profil
export: Data eksportering
- followers: Godkendte følgere
import: Importer
migrate: Konto migrering
notifications: Notifikationer
diff --git a/config/locales/de.yml b/config/locales/de.yml
index ae2948fb5e3..5c095c58aca 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -592,18 +592,6 @@ de:
title: Filter
new:
title: Neuen Filter hinzufügen
- followers:
- domain: Instanz
- explanation_html: Wenn du sicherstellen willst, dass deine Beiträge privat sind, musst du wissen, wer dir folgt. Deine privaten Beiträge werden an alle Server weitergegeben, auf denen Menschen registriert sind, die dir folgen. Wenn du den Betreibenden eines Servers misstraust und du befürchtest, dass sie deine Privatsphäre missachten könnten, kannst du sie hier entfernen.
- followers_count: Zahl der Folgenden
- lock_link: dein Konto sperrst
- purge: Von der Liste deiner Folgenden löschen
- success:
- one: Folgende von einer Domain werden soft-geblockt …
- other: Folgende von %{count} Domains werden soft-geblockt …
- true_privacy_html: Bitte beachte, dass wirklicher Schutz deiner Privatsphäre nur durch Ende-zu-Ende-Verschlüsselung erreicht werden kann..
- unlocked_warning_html: Wer dir folgen will, kann dies jederzeit ohne deine vorige Einverständnis tun und erhält damit automatisch Zugriff auf deine privaten Beiträge. Wenn du %{lock_link}, kannst du vorab entscheiden, wer dir folgen darf und wer nicht.
- unlocked_warning_title: Dein Konto ist nicht gesperrt
footer:
developers: Entwickler
more: Mehr…
@@ -796,7 +784,6 @@ de:
edit_profile: Profil bearbeiten
export: Datenexport
featured_tags: Empfohlene Hashtags
- followers: Autorisierte Folgende
import: Datenimport
migrate: Konto-Umzug
notifications: Benachrichtigungen
diff --git a/config/locales/el.yml b/config/locales/el.yml
index f5a2c5d4bc0..d78d6395580 100644
--- a/config/locales/el.yml
+++ b/config/locales/el.yml
@@ -593,18 +593,6 @@ el:
title: Φίλτρα
new:
title: Πρόσθεσε νέο φίλτρο
- followers:
- domain: Τομέας
- explanation_html: Αν θέλεις να διασφαλίσεις την ιδιωτικότητα των ενημερώσεών σου, πρέπει να ξέρεις ποιος σε ακολουθεί. Οι ιδιωτικές ενημερώσεις σου μεταφέρονται σε όλους τους κόμβους στους οποίους έχεις ακόλουθους. Ίσως να θέλεις να κάνεις μια ανασκόπηση σε αυτούς και να αφαιρέσεις ακολούθους αν δεν εμπιστεύεσαι το προσωπικό αυτών των κόμβων πως θα σεβαστούν την ιδιωτικότητά σου.
- followers_count: Πλήθος ακολούθων
- lock_link: Κλείδωσε το λογαριασμό σου
- purge: Αφαίρεσε από ακόλουθο
- success:
- one: Ημι-μπλοκάροντας τους ακόλουθους από έναν τομέα...
- other: Ημι-μπλοκάροντας τους ακόλουθους από %{count} τομείς...
- true_privacy_html: Έχε υπ' όψιν σου πως η πραγματική ιδιωτικότητα επιτυγχάνεται μόνο με κρυπτογράφηση από άκρη σε άκρη.
- unlocked_warning_html: Μπορεί ο οποιοσδήποτε να σε ακολουθήσει και να βλέπει κατευθείαν τις ιδιωτικές ενημερώσεις σου. %{lock_link} για να αναθεωρήσεις και απορρίψεις ακόλουθους.
- unlocked_warning_title: Ο λογαριασμός σου δεν είναι κλειδωμένος
footer:
developers: Ανάπτυξη
more: Περισσότερα…
@@ -806,7 +794,6 @@ el:
edit_profile: Επεξεργασία προφίλ
export: Εξαγωγή δεδομένων
featured_tags: Χαρακτηριστικές ταμπέλες
- followers: Εγκεκριμένοι ακόλουθοι
import: Εισαγωγή
migrate: Μετακόμιση λογαριασμού
notifications: Ειδοποιήσεις
diff --git a/config/locales/en.yml b/config/locales/en.yml
index d11aa926284..4f9104eeabc 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -621,23 +621,12 @@ en:
title: Filters
new:
title: Add new filter
- followers:
- domain: Domain
- explanation_html: If you want to ensure the privacy of your statuses, you must be aware of who is following you. Your private statuses are delivered to all servers where you have followers. You may wish to review them, and remove followers if you do not trust your privacy to be respected by the staff or software of those servers.
- followers_count: Number of followers
- lock_link: Lock your account
- purge: Remove from followers
- success:
- one: In the process of soft-blocking followers from one domain...
- other: In the process of soft-blocking followers from %{count} domains...
- true_privacy_html: Please mind that true privacy can only be achieved with end-to-end encryption.
- unlocked_warning_html: Anyone can follow you to immediately view your private statuses. %{lock_link} to be able to review and reject followers.
- unlocked_warning_title: Your account is not locked
footer:
developers: Developers
more: More…
resources: Resources
generic:
+ all: All
changes_saved_msg: Changes successfully saved!
copy: Copy
save_changes: Save changes
@@ -761,6 +750,15 @@ en:
other: Other
publishing: Publishing
web: Web
+ relationships:
+ abandoned: Abandoned
+ active: Active
+ mutual: Mutual
+ relationship: Relationship
+ remove_selected_domains: Remove all followers from the selected domains
+ remove_selected_followers: Remove selected followers
+ remove_selected_follows: Unfollow selected users
+ status: Account status
remote_follow:
acct: Enter your username@domain you want to act from
missing_resource: Could not find the required redirect URL for your account
@@ -835,11 +833,11 @@ en:
edit_profile: Edit profile
export: Data export
featured_tags: Featured hashtags
- followers: Authorized followers
import: Import
migrate: Account migration
notifications: Notifications
preferences: Preferences
+ relationships: Follows and followers
settings: Settings
two_factor_authentication: Two-factor Auth
your_apps: Your applications
diff --git a/config/locales/eo.yml b/config/locales/eo.yml
index 96739632605..58d898fab7f 100644
--- a/config/locales/eo.yml
+++ b/config/locales/eo.yml
@@ -595,18 +595,6 @@ eo:
title: Filtriloj
new:
title: Aldoni novan filtrilon
- followers:
- domain: Domajno
- explanation_html: Se vi volas esti certa pri la privateco de viaj mesaĝoj, vi bezonas esti atenta pri tiuj, kiuj sekvas vin. Viaj privataj mesaĝoj estas liveritaj al ĉiuj serviloj, kie vi havas sekvantojn. Eble vi ŝatus kontroli ilin, kaj forigi la sekvantojn de la serviloj, kie vi ne certas ĉu via privateco estos respektita de la tiea teamo aŭ programo.
- followers_count: Nombro de sekvantoj
- lock_link: Ŝlosu vian konton
- purge: Forigi el la sekvantoj
- success:
- one: Forigado de sekvantoj el iu domajno...
- other: Forigado de sekvantoj el %{count} domajnoj...
- true_privacy_html: Bonvolu atenti, ke vera privateco povas esti atingita nur per ĉifrado de komenco al fino.
- unlocked_warning_html: Iu ajn povas eksekvi vin por tuj vidi viajn privatajn mesaĝojn. %{lock_link} por povi akcepti kaj rifuzi petojn de sekvado.
- unlocked_warning_title: Via konto ne estas ŝlosita
footer:
developers: Programistoj
more: Pli…
@@ -799,7 +787,6 @@ eo:
edit_profile: Redakti profilon
export: Eksporti datumojn
featured_tags: Elstarigitaj kradvortoj
- followers: Rajtigitaj sekvantoj
import: Importi
migrate: Konta migrado
notifications: Sciigoj
diff --git a/config/locales/es.yml b/config/locales/es.yml
index 648541eda99..a79c3fb5dae 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -529,18 +529,6 @@ es:
title: Filtros
new:
title: Añadir un nuevo filtro
- followers:
- domain: Dominio
- explanation_html: Si deseas asegurar la privacidad de tus estados, tienes que cuidarte de quién te sigue. Tus estados privados son enviados a todas las instancias de tus seguidores. Puede que desees revisarlas, y remover seguidores si no confías en tu privacidad para ser respetado por el staff o software de esas instancias.
- followers_count: Número de seguidores
- lock_link: Bloquear tu cuenta
- purge: Remover de los seguidores
- success:
- one: En el proceso de bloquear suavemente usuarios de un solo dominio...
- other: En el proceso de bloquear suavemente usuarios de %{count} dominios...
- true_privacy_html: Por favor ten en cuenta que la verdadera privacidad se consigue con encriptación de punto a punto.
- unlocked_warning_html: Todos pueden seguirte para ver tus estados privados inmediatamente. %{lock_link} para poder chequear y rechazar seguidores.
- unlocked_warning_title: Tu cuenta no está bloqueada
footer:
developers: Desarrolladores
more: Mas…
@@ -711,7 +699,6 @@ es:
development: Desarrollo
edit_profile: Editar perfil
export: Exportar información
- followers: Seguidores autorizados
import: Importar
migrate: Migración de cuenta
notifications: Notificaciones
diff --git a/config/locales/eu.yml b/config/locales/eu.yml
index 59cba6287b5..187a5325b1f 100644
--- a/config/locales/eu.yml
+++ b/config/locales/eu.yml
@@ -592,18 +592,6 @@ eu:
title: Iragazkiak
new:
title: Gehitu iragazki berria
- followers:
- domain: Domeinua
- explanation_html: Zure mezuen pribatutasuna bermatu nahi baduzu, nork jarraitzen zaituen jakin behar duzu. Zure mezu pribatuak zure jarraitzaileak dituzten zerbitzari guztietara bidaltzen dira. Zerbitzari bateko langileek edo softwareak zure pribatutasunari dagokion begirunea ez dutela izango uste baduzu, berrikusi eta kendu jarraitzaileak.
- followers_count: Jarraitzaile kopurua
- lock_link: Giltzapetu zure kontua
- purge: Kendu jarraitzaileetatik
- success:
- one: Domeinu bateko jarraitzaileei blokeo leuna ezartzen...
- other: "%{count} domeinuetako jarraitzaileei blokeo leuna ezartzen..."
- true_privacy_html: Kontuan izan egiazko pribatutasuna lortzeko muturretik muturrerako zifratzea ezinbestekoa dela.
- unlocked_warning_html: Edonork jarraitu zaitzake eta berehala zure mezu pribatuak ikusi. %{lock_link} jarraitzaileak berrikusi eta ukatu ahal izateko.
- unlocked_warning_title: Zure kontua ez dago giltzapetuta
footer:
developers: Garatzaileak
more: Gehiago…
@@ -796,7 +784,6 @@ eu:
edit_profile: Aldatu profila
export: Datuen esportazioa
featured_tags: Nabarmendutako traolak
- followers: Baimendutako jarraitzaileak
import: Inportazioa
migrate: Kontuaren migrazioa
notifications: Jakinarazpenak
diff --git a/config/locales/fa.yml b/config/locales/fa.yml
index a1c891bc724..be19ff3dad4 100644
--- a/config/locales/fa.yml
+++ b/config/locales/fa.yml
@@ -593,18 +593,6 @@ fa:
title: فیلترها
new:
title: افزودن فیلتر تازه
- followers:
- domain: دامین
- explanation_html: اگر میخواهید از خصوصیبودن نوشتههای خود مطمئن شوید، باید بدانید که چه کسانی پیگیر شما هستند. نوشتههای خصوصی شما به همهٔ سرورهایی که در آنها پیگیر دارید فرستاده میشود. شاید بخواهید این سرورها را بررسی کنید، و اگر به مسئولان یا نرمافزارهای آنها در رعایت حریم خصوصی خود اعتماد ندارید، میتوانید آنها را حذف کنید.
- followers_count: تعداد پیگیران
- lock_link: حساب خود را خصوصی کنید
- purge: برداشتن پیگیری
- success:
- one: در حال انجام مسدودسازی نرم روی کاربران یک دامین...
- other: در حال انجام مسدودسازی نرم روی کاربران %{count} دامین...
- true_privacy_html: لطفاً بدانید که داشتن حریم خصوصی واقعی تنها با رمزگذاری سرتاسر (end-to-end encryption) ممکن است.
- unlocked_warning_html: هر کسی میتواند پیگیر شما شود تا بلافاصله نوشتههای خصوصی شما را ببیند. اگر %{lock_link} خواهید توانست درخواستهای پیگیری را بررسی کرده و نپذیرید.
- unlocked_warning_title: حساب شما خصوصی نیست
footer:
developers: برنامهنویسان
more: بیشتر…
@@ -807,7 +795,6 @@ fa:
edit_profile: ویرایش نمایه
export: برونسپاری دادهها
featured_tags: برچسبهای منتخب
- followers: پیگیران مورد تأیید
import: درونریزی
migrate: انتقال حساب
notifications: اعلانها
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index deacd351a29..029696f7dea 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -449,18 +449,6 @@ fi:
follows: Seurattavat
mutes: Mykistetyt
storage: Media-arkisto
- followers:
- domain: Verkkotunnus
- explanation_html: Jos haluat olla varma tilapäivitystesi yksityisyydestä, sinun täytyy tietää, ketkä seuraavat sinua. Yksityiset tilapäivityksesi lähetetään kaikkiin niihin instansseihin, joissa sinulla on seuraajia. Jos et luota siihen, että näiden instanssien ylläpitäjät tai ohjelmisto kunnioittavat yksityisyyttäsi, käy läpi seuraajaluettelosi ja poista tarvittaessa käyttäjiä.
- followers_count: Seuraajien määrä
- lock_link: Lukitse tili
- purge: Poista seuraajista
- success:
- one: Estetään kevyesti seuraajia yhdestä verkkotunnuksesta...
- other: Estetään kevyesti seuraajia %{count} verkkotunnuksesta...
- true_privacy_html: Muista, että kunnollinen yksityisyys voidaan varmistaa vain päästä päähän -salauksella.
- unlocked_warning_html: Kuka tahansa voi seurata sinua ja nähdä saman tien yksityiset tilapäivityksesi. %{lock_link}, niin voit tarkastaa ja torjua seuraajia.
- unlocked_warning_title: Tiliäsi ei ole lukittu
generic:
changes_saved_msg: Muutosten tallennus onnistui!
save_changes: Tallenna muutokset
@@ -622,7 +610,6 @@ fi:
development: Kehittäminen
edit_profile: Muokkaa profiilia
export: Vie tietoja
- followers: Valtuutetut seuraajat
import: Tuo
migrate: Tilin muutto muualle
notifications: Ilmoitukset
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 1694fda82fb..cf5b768d380 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -593,18 +593,6 @@ fr:
title: Filtres
new:
title: Ajouter un nouveau filtre
- followers:
- domain: Domaine
- explanation_html: Si vous voulez vous assurer que vos statuts restent privés, vous devez savoir qui vous suit. Vos statuts privés seront diffusés sur toutes les instances où vous avez des abonné·e·s. Vous voudrez peut-être les passer en revue et les supprimer si vous pensez que votre vie privée ne sera pas respectée par l’administration ou le logiciel de ces instances.
- followers_count: Nombre d’abonné⋅e⋅s
- lock_link: Rendez votre compte privé
- purge: Retirer de la liste d’abonné⋅e⋅s
- success:
- one: Suppression des abonné⋅e⋅s venant d’un domaine en cours…
- other: Suppression des abonné⋅e⋅s venant de %{count} domaines en cours…
- true_privacy_html: Soyez conscient⋅e⋅s qu’une vraie confidentialité ne peut être atteinte que par un chiffrement de bout-en-bout.
- unlocked_warning_html: N’importe qui peut vous suivre et voir vos statuts privés. %{lock_link} afin de pouvoir vérifier et rejeter des abonné⋅e⋅s.
- unlocked_warning_title: Votre compte n’est pas privé
footer:
developers: Développeurs
more: Davantage…
@@ -807,7 +795,6 @@ fr:
edit_profile: Modifier le profil
export: Export de données
featured_tags: Hashtags mis en avant
- followers: Abonné⋅es autorisé⋅es
import: Import de données
migrate: Migration de compte
notifications: Notifications
diff --git a/config/locales/gl.yml b/config/locales/gl.yml
index 2491284261e..1a1f6c5905e 100644
--- a/config/locales/gl.yml
+++ b/config/locales/gl.yml
@@ -593,18 +593,6 @@ gl:
title: Filtros
new:
title: Engadir novo filtro
- followers:
- domain: Dominio
- explanation_html: Se quere asegurar a intimidade dos seus estados, debe ser consciente de quen a está a seguir. Os seus estados privados son enviados a todas os servidores onde ten seguidoras. Podería querer revisalas, e elminar seguidoras si non confía que a súa intimidade sexa respetada polos administradores ou o software de ese servidor.
- followers_count: Número de seguidoras
- lock_link: Bloquear a súa conta
- purge: Eliminar das seguidoras
- success:
- one: En proceso de bloquear seguidoras de un dominio...
- other: No proceso de bloquear seguidoras de %{count} dominios...
- true_privacy_html: Por favor teña en conta que a verdadeira intimidade só pode ser conseguida con cifrado de extremo-a-extremo.
- unlocked_warning_html: Calquera pode seguila para inmediatamente ver os seus estados privados. %{lock_link} para poder revisar e rexeitar seguidoras.
- unlocked_warning_title: A súa conta non está pechada
footer:
developers: Desenvolvedoras
more: Máis…
@@ -807,7 +795,6 @@ gl:
edit_profile: Editar perfil
export: Exportar datos
featured_tags: Etiquetas destacadas
- followers: Seguidoras autorizadas
import: Importar
migrate: Migrar conta
notifications: Notificacións
diff --git a/config/locales/he.yml b/config/locales/he.yml
index 1ddb1361ddf..089af2bebde 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -240,18 +240,6 @@ he:
follows: רשימת נעקבים
mutes: רשימת השתקות
storage: אחסון מדיה
- followers:
- domain: קהילה
- explanation_html: אם ברצונך להבטיח את הפרטיות של הודעותיך, יש לשים לב מי עוקב אחריך. הודעותיך הפרטיות יועברו לכל השרתים בהם יש לך עוקבים. כדאי לעבור על הרשימה ולהסיר עוקבים אם אין לך אמון בתוכנה או בצוות המפעילים של השרת הרחוק שיכבד את פרטיותך.
- followers_count: מספר העוקבים
- lock_link: לנעול את חשבונך
- purge: הסרה מהעוקבים
- success:
- one: בתהליך חסימה של עוקבים ממתחם אחד...
- other: בתהליך חסימה של עוקבים המגיעים מ־%{count} מתחמים...
- true_privacy_html: 'לתשומת ליבך: פרטיות אמיתית ניתן להשיג אך ורק על ידי הצפנה מקצה לקצה.'
- unlocked_warning_html: כל אחד יכול לעקוב אחריך כדי לראות מיידית את חצרוציך הפרטיים. %{lock_link} כדי לבחון ולדחות עוקבים.
- unlocked_warning_title: חשבונך אינו נעול
generic:
changes_saved_msg: השינויים נשמרו בהצלחה!
save_changes: שמור שינויים
@@ -320,7 +308,6 @@ he:
back: חזרה למסטודון
edit_profile: עריכת פרופיל
export: יצוא מידע
- followers: עוקבים מאושרים
import: יבוא
preferences: העדפות
settings: הגדרות
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index 44399778c2b..04318f5e442 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -374,18 +374,6 @@ hu:
follows: Követettjeid
mutes: Némításaid
storage: Médiatároló
- followers:
- domain: Domain
- explanation_html: Ahhoz, hogy biztosítsd a tülkjeid adatvédelmét, tudnod kell, kik követnek téged. Még privátnak jelölt tülkjeid is továbbítódnak minden instanciára, ahol követőid vannak. Az alábbi listában láthatod, melyek ezek az instanciák; eltávolíthatod őket, ha nem vagy biztos benne, hogy az adott instancia üzemeltetői tiszteletben tartják az adatvédelmi beállításaidat.
- followers_count: Követők száma
- lock_link: Fiókod priváttá tétele
- purge: Eltávolítás a követőid közül
- success:
- one: Egy domainen található követőid tiltása folyamatban...
- other: "%{count} domainen található követőid tiltása folyamatban..."
- true_privacy_html: Tartsd észben, hogy valódi biztonság csak végponttól-végpontig titkosítással érhető el.
- unlocked_warning_html: Bárki követhet és így azonnal láthatja a privát tülkjeid. A %{lock_link} funkció bekapcsolásával lehetőséged van egyenként felülvizsgálni a követési kérelmeket.
- unlocked_warning_title: A fiókod jelenleg nem privát
generic:
changes_saved_msg: Változások sikeresen elmentve!
save_changes: Változások mentése
@@ -542,7 +530,6 @@ hu:
development: Fejlesztőknek
edit_profile: Profil szerkesztése
export: Adatok exportálása
- followers: Jóváhagyott követők
import: Importálás
migrate: Fiók átirányítása
notifications: Értesítések
diff --git a/config/locales/id.yml b/config/locales/id.yml
index a91f459a4f2..a27f1f00886 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -266,18 +266,6 @@ id:
follows: Anda ikuti
mutes: Anda bisukan
storage: Penyimpanan media
- followers:
- domain: Domain
- explanation_html: Jika anda ingin memastikan privasi dari status anda, anda harus tahu siapa yang mengikuti anda. Status pribadi anda dikirim ke semua server dimana pengikut anda berada. Anda mungkin ingin untuk mengkaji ulang dan menghapus pengikut jika anda tidak mempercayai bahwa privasi anda di tangan staf atau software di server tersebut.
- followers_count: Jumlah pengikut
- lock_link: Kunci akun anda
- purge: Hapus dari pengikut
- success:
- one: Dalam proses memblokir pengikut dari satu domain...
- other: Dalam proses memblokir pengikut dari %{count} domain...
- true_privacy_html: Mohon diingat bahwa privasi yang sebenarnya hanya dapat dicapai dengan enkripsi end-to-end.
- unlocked_warning_html: Semua orang dapat mengikuti anda untuk langsung dapat melihat status pribadi anda. %{lock_link} untuk dapat meninjau dan menolak calon pengikut.
- unlocked_warning_title: Akun anda tidak dikunci
generic:
changes_saved_msg: Perubahan berhasil disimpan!
save_changes: Simpan perubahan
@@ -344,7 +332,6 @@ id:
back: Kembali ke Mastodon
edit_profile: Ubah profil
export: Expor data
- followers: Pengikut yang diizinkan
import: Impor
preferences: Pilihan
settings: Pengaturan
diff --git a/config/locales/it.yml b/config/locales/it.yml
index 1af8bc08c5c..7d2e1dd2946 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -554,15 +554,6 @@ it:
title: Filtri
new:
title: Aggiungi filtro
- followers:
- domain: Dominio
- explanation_html: Se vuoi garantire la privacy dei tuoi status, devi sapere chi ti sta seguendo. I tuoi status privati vengono inviati a tutti i server su cui hai dei seguaci. Puoi controllare chi sono i tuoi seguaci, ed eliminarli se non hai fiducia che la tua privacy venga rispettata dallo staff o dal software di quei server.
- followers_count: Numero di seguaci
- lock_link: Blocca il tuo account
- purge: Elimina dai seguaci
- true_privacy_html: Tieni presente che l'effettiva riservatezza si può ottenere solo con la crittografia end-to-end.
- unlocked_warning_html: Chiunque può seguirti per vedere immediatamente i tuoi status privati. %{lock_link} per poter esaminare e respingere gli utenti che vogliono seguirti.
- unlocked_warning_title: Il tuo account non è bloccato
footer:
developers: Sviluppatori
more: Altro…
@@ -722,7 +713,6 @@ it:
development: Sviluppo
edit_profile: Modifica profilo
export: Esporta impostazioni
- followers: Seguaci autorizzati
import: Importa
migrate: Migrazione dell'account
notifications: Notifiche
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index 19845caa7ee..c3fa76530a1 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -607,18 +607,6 @@ ja:
title: フィルター
new:
title: 新規フィルターを追加
- followers:
- domain: ドメイン
- explanation_html: あなたの投稿のプライバシーを確保したい場合、誰があなたをフォローしているのかを把握している必要があります。 プライベート投稿は、あなたのフォロワーがいる全てのサーバーに配信されます。 フォロワーのサーバーの管理者やソフトウェアがあなたのプライバシーを尊重してくれるかどうか怪しい場合は、そのフォロワーを削除した方がよいかもしれません。
- followers_count: フォロワー数
- lock_link: 承認制アカウントにする
- purge: フォロワーから削除する
- success:
- one: 1個のドメインからソフトブロックするフォロワーを処理中...
- other: "%{count} 個のドメインからソフトブロックするフォロワーを処理中..."
- true_privacy_html: "プライバシーの保護はエンドツーエンドの暗号化でのみ実現可能であることに留意ください。"
- unlocked_warning_html: 誰でもあなたをフォローすることができ、フォロワー限定の投稿をすぐに見ることができます。フォローする人を限定したい場合は%{lock_link}に設定してください。
- unlocked_warning_title: このアカウントは承認制アカウントに設定されていません
footer:
developers: 開発者向け
more: さらに…
@@ -820,7 +808,6 @@ ja:
edit_profile: プロフィールを編集
export: データのエクスポート
featured_tags: 注目のハッシュタグ
- followers: 信頼済みのサーバー
import: データのインポート
migrate: アカウントの引っ越し
notifications: 通知
diff --git a/config/locales/ka.yml b/config/locales/ka.yml
index 5d0bba510a7..8e537c745af 100644
--- a/config/locales/ka.yml
+++ b/config/locales/ka.yml
@@ -496,18 +496,6 @@ ka:
title: ფილტრები
new:
title: ახალი ფილტრის დამატება
- followers:
- domain: დომენი
- explanation_html: თუ გსურთ უზრუნველყოთ თქვენი სტატუსების კონფიდენციალურობა, უნდა იცოდეთ თუ ვინ მოგყვებათ. კერძო სტატუსები მიეწოდება ყველა ინსტანციას, სადაც გყავთ მიმდევრები. შესაძლოა გსურდეთ განიხილოთ ისინი და ამოშალოთ მიმდევრები თუ არ ენდობით თქვენი კონფიდენციალურობის პატივისცემას სტაფისა თუ პროგრამისგან იმ ინსტანციებში.
- followers_count: მიმდევრების რაოდენობა
- lock_link: თქვენი ანგარიშის ჩაკეტვა
- purge: მიმდევრებიდან ამოშლა
- success:
- one: მიმდევრების სოფტ-ბლოკირების პროცესი ერთი დომენზე...
- other: მიმდევრების სოფტ-ბლოკირების პროცესი %{count} დომენზე...
- true_privacy_html: გთხოვთ გაითვალისწინეთ, ჭეშმარიტი კონფიდენციალურობა მიღწევადია მხოლოდ ენდ-თუ-ენდ შიფრაციით.
- unlocked_warning_html: ყველას შეუძლია გამოგყვეთ, რომ უცბად იხილოს თქვენი სტატუსები. %{lock_link} რომ შეძლოთ განიხილოთ და უარყოთ მიმდევრები.
- unlocked_warning_title: თქვენი ანგარიში არაა ჩაკეტილი
footer:
developers: დეველოპერები
more: მეტი…
@@ -677,7 +665,6 @@ ka:
development: დეველოპმენტი
edit_profile: პროფილის ცვლილება
export: მონაცემის ექსპორტი
- followers: ავტორიზირებული მიმდევრები
import: იმპორტი
migrate: ანგარიშის მიგრაცია
notifications: შეტყობინებები
diff --git a/config/locales/kk.yml b/config/locales/kk.yml
index 4897bc09514..aeea2593908 100644
--- a/config/locales/kk.yml
+++ b/config/locales/kk.yml
@@ -593,18 +593,6 @@ kk:
title: Фильтрлер
new:
title: Жаңа фильтр қосу
- followers:
- domain: Домен
- explanation_html: Егер сіз жазбаларыңыздың құпиялылығын қамтамасыз еткіңіз келсе, сізді кім іздейтінін білуіңіз керек. Сіздің жазбаларыңыз оқырмандарыңыз бар барлық серверлерге жеткізіледі . Оларды оқырмандарыңызға және админдерге немесе осы серверлердің бағдарламалық жасақтамасына жауапты қызметкерлерге сенбесеңіз, оқырмандарыңызды алып тастауыңызға болады.
- followers_count: Оқырман саны
- lock_link: Аккаунтыңызды құлыптау
- purge: Оқырмандар тізімінен шығару
- success:
- one: Бір доменнен оқырмандарды бұғаттау барысында...
- other: "%{count} доменнен оқырмандарды бұғаттау барысында..."
- true_privacy_html: Ұмытпаңыз, нақты құпиялылықты шифрлаудан соң ғана қол жеткізуге болатындығын ескеріңіз..
- unlocked_warning_html: Кез келген адам жазбаларыңызды оқу үшін сізге жазыла алады. Жазылушыларды қарап, қабылдамау үшін %{lock_link}.
- unlocked_warning_title: Аккаунтыңыз қазір құлыпталды
footer:
developers: Жасаушылар
more: Тағы…
@@ -796,7 +784,6 @@ kk:
edit_profile: Профиль өңдеу
export: Экспорт уақыты
featured_tags: Таңдаулы хэштегтер
- followers: Авторизацияланған оқырмандар
import: Импорт
migrate: Аккаунт көшіру
notifications: Ескертпелер
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index 9d480e7bc47..52042ae1abc 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -595,18 +595,6 @@ ko:
title: 필터
new:
title: 필터 추가
- followers:
- domain: 도메인
- explanation_html: 프라이버시를 확보하고 싶은 경우, 누가 여러분을 팔로우 하고 있는지 파악해둘 필요가 있습니다. 프라이빗 포스팅은 여러분의 팔로워가 소속하는 모든 서버로 배달됩니다. 팔로워가 소속된 서버 관리자나 소프트웨어가 여러분의 프라이버시를 존중하고 있는지 잘 모를 경우, 그 팔로워를 삭제하는 것이 좋을 수도 있습니다.
- followers_count: 팔로워 수
- lock_link: 비공개 계정
- purge: 팔로워에서 삭제
- success:
- one: 1개 도메인에서 팔로워를 soft-block 처리 중...
- other: "%{count}개 도메인에서 팔로워를 soft-block 처리 중..."
- true_privacy_html: "프라이버시 보호는 End-to-End 암호화로만 이루어 질 수 있다는 것에 유의해 주십시오."
- unlocked_warning_html: 누구든 여러분을 팔로우 할 수 있으며, 여러분의 프라이빗 투고를 볼 수 있습니다. 팔로우 할 수 있는 사람을 제한하고 싶은 경우 %{lock_link}에서 설정해 주십시오.
- unlocked_warning_title: 이 계정은 비공개로 설정되어 있지 않습니다
footer:
developers: 개발자
more: 더 보기…
@@ -809,7 +797,6 @@ ko:
edit_profile: 프로필 편집
export: 데이터 내보내기
featured_tags: 추천 해시태그
- followers: 신뢰 중인 인스턴스
import: 데이터 가져오기
migrate: 계정 이동
notifications: 알림
diff --git a/config/locales/lt.yml b/config/locales/lt.yml
index 4f8fd5825b2..0f5ca3091fb 100644
--- a/config/locales/lt.yml
+++ b/config/locales/lt.yml
@@ -602,19 +602,6 @@ lt:
title: Filtrai
new:
title: Pridėti naują filtrą
- followers:
- domain: Domenas
- explanation_html: Jeigu norite garantuoti savo statusų privatumą, turite žinoti, kas jus seka. Jūsų privatūs statusai yra pristatyti visiems serveriams, kur jūs turite sekėju. Galbūt jūs norite juos peržiūrėti ir panaikinti sekėjus, kuriais nepasitikite.
- followers_count: Sekėjų skaičius
- lock_link: Užrakinti savo paskyrą
- purge: Panaikint iš sekėju
- success:
- few: Švelnaus sekėjų blokavimo procedūroje iš %{count} domenų...
- one: Švelnaus sekėjų blokavimo procedūroje iš vieno domeno...
- other: Švelnaus sekėjų blokavimo procedūroje iš %{count} domenų...
- true_privacy_html: Prašau prisiminti, kad tikras privatumas gali būti pasiekamas tik su end-to-end užsifravimu.
- unlocked_warning_html: Visi, kurie nori matyti Jūsų privatų statusą, gali jus sekti. %{lock_link} kad galėtumėte peržiurėti ir pašalinti sekėjus.
- unlocked_warning_title: Jūsų paskyra neužrakinta
footer:
developers: Programuotojai
more: Daugiau…
@@ -810,7 +797,6 @@ lt:
edit_profile: Keisti profilį
export: Informacijos eksportas
featured_tags: Rodomi saitažodžiai(#)
- followers: Autorizuoti sekėjai
import: Importuoti
migrate: Paskyros migracija
notifications: Pranešimai
diff --git a/config/locales/ms.yml b/config/locales/ms.yml
index 0b1269fb2e8..fbadd80fde4 100644
--- a/config/locales/ms.yml
+++ b/config/locales/ms.yml
@@ -317,10 +317,6 @@ ms:
exports:
archive_takeout:
in_progress: Mengkompil arkib anda...
- followers:
- success:
- one: Dalam proses menyekat-lembut pengikut daripada satu domain...
- other: Dalam proses menyekat-lembut pengikut daripada %{count} domain...
notification_mailer:
digest:
title: Ketika anda tiada di sini...
diff --git a/config/locales/nl.yml b/config/locales/nl.yml
index f92ae3bf170..e75d684f1b7 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -593,18 +593,6 @@ nl:
title: Filters
new:
title: Nieuw filter toevoegen
- followers:
- domain: Domein
- explanation_html: Wanneer je de privacy van jouw toots wilt garanderen, moet je goed weten wie jouw volgers zijn. Toots die alleen aan jouw volgers zijn gericht, worden aan de Mastodonservers van jouw volgers afgeleverd. Daarom wil je ze misschien controleren en desnoods volgers verwijderen die zich op een Mastodonserver bevinden die jij niet vertrouwd. Bijvoorbeeld omdat de beheerder(s) of de software van zo'n server jouw privacy niet respecteert.
- followers_count: Aantal volgers
- lock_link: Maak jouw account besloten
- purge: Volgers verwijderen
- success:
- one: Bezig om volgers van één domein te verwijderen...
- other: Bezig om volgers van %{count} domeinen te verwijderen...
- true_privacy_html: Hou er wel rekening mee dat echte privacy alleen gegarandeerd kan worden met behulp van end-to-end-encryptie.
- unlocked_warning_html: Iedereen kan jou volgen en daarmee meteen toots zien die je alleen aan jouw volgers hebt gericht. %{lock_link} om volgers te kunnen beoordelen en desnoods te weigeren.
- unlocked_warning_title: Jouw account is niet besloten
footer:
developers: Ontwikkelaars
more: Meer…
@@ -797,7 +785,6 @@ nl:
edit_profile: Profiel bewerken
export: Exporteren
featured_tags: Uitgelichte hashtags
- followers: Geautoriseerde volgers
import: Importeren
migrate: Accountmigratie
notifications: Meldingen
diff --git a/config/locales/no.yml b/config/locales/no.yml
index 6ee42a7cac7..773f2d0603f 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -374,18 +374,6 @@
follows: Du følger
mutes: Du demper
storage: Medialagring
- followers:
- domain: Domene
- explanation_html: Hvis du vil styre hvem som ser statusene dine, må du være klar over hvem som følger deg. Dine private statuser leveres til alle instanser der du har følgere. Du bør kanskje se over dem, og fjerne følgere hvis du ikke stoler på at ditt privatliv vil bli respektert av staben eller programvaren på de instansene.
- followers_count: Antall følgere
- lock_link: Lås kontoen din
- purge: Fjern fra følgere
- success:
- one: I ferd med å mykblokkere følgere fra ett domene...
- other: I ferd med å mykblokkere følgere fra %{count} domener...
- true_privacy_html: Merk deg at virkelig privatliv kun kan oppnås med ende-til-ende-kryptering.
- unlocked_warning_html: Alle kan følge deg for å umiddelbart se dine private statuser. %{lock_link} for å kunne se over og avvise følgere.
- unlocked_warning_title: Din konto er ikke låst
generic:
changes_saved_msg: Vellykket lagring av endringer!
save_changes: Lagre endringer
@@ -542,7 +530,6 @@
development: Utvikling
edit_profile: Endre profil
export: Dataeksport
- followers: Godkjente følgere
import: Importér
migrate: Kontomigrering
notifications: Varslinger
diff --git a/config/locales/oc.yml b/config/locales/oc.yml
index b1d7c46d652..d87f7446f3f 100644
--- a/config/locales/oc.yml
+++ b/config/locales/oc.yml
@@ -649,18 +649,6 @@ oc:
title: Filtres
new:
title: Ajustar un nòu filtre
- followers:
- domain: Domeni
- explanation_html: Se volètz vos assegurar de la confidencialitat de vòstres estatuts, vos cal saber qual sèc vòstre compte. Vòstres estatuts privats son enviats a totas las instàncias qu’an de monde que vos sègon.. Benlèu que volètz repassar vòstra lista e tirar los seguidors s’avètz de dobtes tocant las politicas de confidencialitat dels gestionaris de lor instància o sul logicial qu’utilizan.
- followers_count: Nombre de seguidors
- lock_link: Clavar vòstre compte
- purge: Tirar dels seguidors
- success:
- one: Soi a blocar los seguidors d’un domeni…
- other: Soi a blocar los seguidors de %{count} domenis…
- true_privacy_html: Mèfi que la vertadièra confidencialitat pòt solament èsser amb un chiframent del cap a la fin (end-to-end).
- unlocked_warning_html: Tot lo monde pòt vos sègre e veire sulpic vòstres estatuts privats. %{lock_link} per poder repassar e regetar los seguidors.
- unlocked_warning_title: Vòstre compte es pas clavat
footer:
developers: Desvolopaires
more: Mai…
@@ -853,7 +841,6 @@ oc:
edit_profile: Modificar lo perfil
export: Exportar de donadas
featured_tags: Etiquetas en avant
- followers: Seguidors autorizats
import: Importar de donadas
migrate: Migracion de compte
notifications: Notificacions
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 6a2b15ba559..878416dcffc 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -606,20 +606,6 @@ pl:
title: Filtry
new:
title: Dodaj nowy filtr
- followers:
- domain: Domena
- explanation_html: Jeżeli chcesz mieć pewność, kto może przeczytać Twoje wpisy, musisz kontrolować, kto śledzi Twój profil. Twoje prywatne wpisy są dostarczane na te instancje, na których jesteś śledzony. Możesz sprawdzać, kto Cię śledzi i blokować ich, jeśli nie ufasz właścicielom lub oprogramowaniu danej instancji.
- followers_count: Liczba śledzących
- lock_link: Zablokuj swoje konto
- purge: Przestań śledzić
- success:
- few: W trakcie usuwania śledzących z %{count} domen…
- many: W trakcie usuwania śledzących z %{count} domen…
- one: W trakcie usuwania śledzących z jednej domeny…
- other: W trakcie usuwania śledzących z %{count} domen…
- true_privacy_html: Pamiętaj, że rzeczywista prywatność może zostać uzyskana wyłącznie dzięki szyfrowaniu end-to-end.
- unlocked_warning_html: Każdy może Cię śledzić, dzięki czemu może zobaczyć Twoje niepubliczne wpisy. %{lock_link} aby móc kontrolować, kto Cię śledzi.
- unlocked_warning_title: Twoje konto nie jest zablokowane
footer:
developers: Dla programistów
more: Więcej…
@@ -820,7 +806,6 @@ pl:
edit_profile: Edytuj profil
export: Eksportowanie danych
featured_tags: Wyróżnione hashtagi
- followers: Autoryzowani śledzący
import: Importowanie danych
migrate: Migracja konta
notifications: Powiadomienia
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index ae4b0a271b4..be1ea6155f4 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -585,18 +585,6 @@ pt-BR:
title: Filtros
new:
title: Adicionar novo filtro
- followers:
- domain: Domínio
- explanation_html: Se você quer garantir a privacidade de suas postagens, você deve ficar atento a quem está te seguindo.Suas postagens privadas são enviadas para todas as instâncias em que você tem seguidores. Convém revisá-las e remover seguidores se você acredita que a sua privacidade não será respeitada pela equipe ou software destas instâncias.
- followers_count: Número de seguidores
- lock_link: Tranque a sua conta
- purge: Remover de seus seguidores
- success:
- one: No processo de bloqueio suave de seguidores de outro domínio...
- other: No processo de bloqueio suave de seguidores de outros %{count} domínios...
- true_privacy_html: Lembre-se de que a verdadeira privacidade só pode ser alcançada através de encriptação ponto-a-ponto.
- unlocked_warning_html: Qualquer pessoa pode te seguir e ver as suas postagens privadas. %{lock_link} para ser capaz de revisar e rejeitar seguidores.
- unlocked_warning_title: A sua conta não está trancada
footer:
developers: Desenvolvedores
more: Mais…
@@ -782,7 +770,6 @@ pt-BR:
development: Desenvolvimento
edit_profile: Editar perfil
export: Exportar dados
- followers: Seguidores autorizados
import: Importar
migrate: Migração de conta
notifications: Notificações
diff --git a/config/locales/pt.yml b/config/locales/pt.yml
index c2a7c36f010..a024d12b57e 100644
--- a/config/locales/pt.yml
+++ b/config/locales/pt.yml
@@ -377,18 +377,6 @@ pt:
follows: Segues
mutes: Tens em silêncio
storage: Armazenamento de média
- followers:
- domain: Domínio
- explanation_html: Se queres garantir a privacidade das tuas publicações, deves ficar atento a quem te está a seguir.As tuas publicações privadas são enviadas para todas as instâncias nas que tens seguidores. Convém revisá-las e remover seguidores se achares que a tua privacidade não será respeitada pela equipa ou software destas instâncias.
- followers_count: Número de seguidores
- lock_link: Bloquear a tua conta
- purge: Eliminar dos seguidores
- success:
- one: No processo de bloqueio suave de seguidores de outro domínio...
- other: No processo de bloqueio suave de seguidores de outros %{count} domínios...
- true_privacy_html: Por favor leva em conta que a verdadeira privacidade só pode ser alcançada através de encriptação ponto-a-ponto.
- unlocked_warning_html: Qualquer pessoa pode seguir-te e ver as tuas publicações privadas. %{lock_link} para ser capaz de revisar e rejeitar seguidores.
- unlocked_warning_title: A tua conta não está bloqueada
generic:
changes_saved_msg: Alterações guardadas!
save_changes: Guardar alterações
@@ -544,7 +532,6 @@ pt:
development: Desenvolvimento
edit_profile: Editar perfil
export: Exportar dados
- followers: Seguidores autorizados
import: Importar
migrate: Migração de conta
notifications: Notificações
diff --git a/config/locales/ro.yml b/config/locales/ro.yml
index 82872e651d2..0331f002f60 100644
--- a/config/locales/ro.yml
+++ b/config/locales/ro.yml
@@ -109,9 +109,3 @@ ro:
title: Filtre
new:
title: Adaugă un filtru nou
- followers:
- domain: Domeniu
- explanation_html: Dacă vrei să fi sigur de confidențialitatea statusurilor tale, ar trebui să fi conștient de cine te urmărește. Statusurile tale private sunt livrate către toate instanțele unde ai urmăritori. Este recomandabil să verifici și să ștergi urmăritorii în care nu ai încredere că îți vor respecta intimitatea.
- followers_count: Numărul de urmăritori
- lock_link: Privează contul tău
- purge: Elimină de la urmăritori
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index 72513e58c8b..ffc9471cd30 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -519,20 +519,6 @@ ru:
title: Фильтры
new:
title: Добавить фильтр
- followers:
- domain: Домен
- explanation_html: Если Вы хотите быть уверены в приватности Ваших статусов, Вы должны иметь четкое представление о том, кто на Вас подписан. Ваши приватные статусы отправляются всем узлам, на которых у Вас есть подписчики. Рекомендуем удалить из подписчиков пользователей узлов, администрации или программному обеспечению которых Вы не доверяете.
- followers_count: Количество подписчиков
- lock_link: Закройте аккаунт
- purge: Удалить из подписчиков
- success:
- few: В процессе мягкой блокировки подписчиков с %{count} доменов...
- many: В процессе мягкой блокировки подписчиков с %{count} доменов...
- one: В процессе мягкой блокировки подписчиков с одного домена...
- other: В процессе мягкой блокировки подписчиков с %{count} доменов...
- true_privacy_html: Пожалуйста, заметьте, что настоящая конфиденциальность может быть достигнута только при помощи end-to-end шифрования.
- unlocked_warning_html: Кто угодно может подписаться на Вас и получить доступ к просмотру Ваших приватных статусов. %{lock_link}, чтобы получить возможность рассматривать и вручную подтверждать запросы о подписке.
- unlocked_warning_title: Ваш аккаунт не закрыт для подписки
footer:
developers: Разработчикам
more: Ещё…
@@ -709,7 +695,6 @@ ru:
development: Разработка
edit_profile: Изменить профиль
export: Экспорт данных
- followers: Авторизованные подписчики
import: Импорт
migrate: Перенос аккаунта
notifications: Уведомления
diff --git a/config/locales/sk.yml b/config/locales/sk.yml
index 565b2e8a8c2..550fc4fe81f 100644
--- a/config/locales/sk.yml
+++ b/config/locales/sk.yml
@@ -600,19 +600,6 @@ sk:
title: Triedenia
new:
title: Pridaj nové triedenie
- followers:
- domain: Doména
- explanation_html: Pokiaľ chceš zaručiť súkromie svojích príspevkov, musíš mať na vedomí, kto ťa sleduje. Tvoje súkromné príspevky sú doručené na každý server z ktorého ťa niekto následuje. Takže možno by si ich chcel/a skontrolovať, a odstrániť tých následovníkov, čo sú na serveroch ktorím dostatočne nedôveruješ v zmysle, že ich moderátori, alebo ich softvérové úpravy, budú tiež rešpektovať tvoje súkromie.
- followers_count: Počet následovateľov
- lock_link: Zamkni svoj účet
- purge: Odstráň sledovateľa
- success:
- few: Počas utišovania sledovateľov z %{count} domén...
- one: Počas utišovania sledovateľov z jednej domény...
- other: Počas utišovania sledovateľov z %{count} domén...
- true_privacy_html: Prosím ber na vedomie, že ozajstné súkromie sa dá dosiahnúť iba za pomoci end-to-end enkrypcie.
- unlocked_warning_html: Hocikto ťa môže následovať aby mohol/a ihneď vidieť tvoje súkromné príspevky. %{lock_link} aby si mohla skontrolovať a odmietať sledovateľov.
- unlocked_warning_title: Tvoj účet nieje zamknutý
footer:
developers: Vývojári
more: Viac…
@@ -818,7 +805,6 @@ sk:
edit_profile: Uprav profil
export: Exportovať dáta
featured_tags: Popredne zvýraznené haštagy
- followers: Povolení následovatelia
import: Importovať
migrate: Presunutie účtu
notifications: Oznámenia
diff --git a/config/locales/sq.yml b/config/locales/sq.yml
index b29564e74ba..f02c994ebc1 100644
--- a/config/locales/sq.yml
+++ b/config/locales/sq.yml
@@ -590,18 +590,6 @@ sq:
title: Filtra
new:
title: Shtoni filtër të ri
- followers:
- domain: Përkatësi
- explanation_html: Nëse doni të garantoni privatësinë e gjendjeve tuaja, duhet të jeni në dijeni se cilët ju ndjekin. Gjendjet tuaja private u dërgohen krejt shërbyes ku keni ndjekës. Mund të donit t’i rishqyrtoni ato, dhe të hiqni ndjekës, nëse nuk besoni se privatësia juaj respektohet nga stafi apo software-i i këtyre shërbyesve.
- followers_count: Numër ndjekësish
- lock_link: Kyçeni llogarinë tuaj
- purge: Hiqe nga ndjekësit
- success:
- one: Në përmbushje e sipër të bllokimit të butë të ndjekësve nga një përkatësi…
- other: Në përmbushje e sipër të bllokimit të butë të ndjekësve nga %{count} përkatësi…
- true_privacy_html: Ju lutemi, kini parasysh se privatësi e vërtetë mund të arrihet vetëm me fshehtëzim skaj-më-skaj.
- unlocked_warning_html: Mund t’ju ndjekë cilido, që të shohë menjëherë gjendjet tuaja private. %{lock_link} që të jeni në gjendje të shqyrtoni dhe hidhni poshtë ndjekës.
- unlocked_warning_title: Llogaria juaj s’është kyçur
footer:
developers: Zhvillues
more: Më tepër…
@@ -793,7 +781,6 @@ sq:
edit_profile: Përpunoni profilin
export: Eksportim të dhënash
featured_tags: Hashtagë të zgjedhur
- followers: Ndjekës të autorizuar
import: Importo
migrate: Migrim llogarie
notifications: Njoftime
diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml
index a43c639c0e0..a2d57ce29a8 100644
--- a/config/locales/sr-Latn.yml
+++ b/config/locales/sr-Latn.yml
@@ -367,20 +367,6 @@ sr-Latn:
follows: Pratite
mutes: Ućutkali ste
storage: Multimedijalno skladište
- followers:
- domain: Domen
- explanation_html: Ako želite da osigurate privatnost Vaših statusa, morate biti svesni ko Vas prati. Vaši privatni statusi se šalju na sve instance na kojima imate pratioce. Možda želite da ih pregledate i da uklonite one pratioce na onim instancama za koje nemate poverenja da će poštovati Vašu privatnost.
- followers_count: Broj pratilaca
- lock_link: Zaključajte nalog
- purge: Ukloni iz pratioca
- success:
- few: U procesu blokiranja pratioca sa %{count} domena...
- many: U procesu blokiranja pratioca sa %{count} domena...
- one: U procesu blokiranja pratioca sa jednog domena...
- other: U procesu blokiranja pratioca sa %{count} domena...
- true_privacy_html: Zapamtite da se prava privatnost može postići samo šifrovanjem sa kraja na kraj.
- unlocked_warning_html: Svako može da Vas zaprati da odmah vidi Vaše privatne statuse. %{lock_link} da biste pregledali i odbacili pratioce.
- unlocked_warning_title: Vaš nalog nije zaključan
generic:
changes_saved_msg: Izmene uspešno sačuvane!
save_changes: Snimi izmene
@@ -534,7 +520,6 @@ sr-Latn:
development: Razvoj
edit_profile: Izmena profila
export: Izvoz podataka
- followers: Autorizovani pratioci
import: Uvoz
migrate: Prebacivanje naloga
notifications: Obaveštenja
diff --git a/config/locales/sr.yml b/config/locales/sr.yml
index 5f7533ee15b..45a59bcb1f5 100644
--- a/config/locales/sr.yml
+++ b/config/locales/sr.yml
@@ -599,20 +599,6 @@ sr:
title: Филтери
new:
title: Додај нови филтер
- followers:
- domain: Домен
- explanation_html: Ако желите да осигурате приватност Ваших статуса, морате бити свесни ко Вас прати. Ваши приватни статуси се шаљу на све инстанце на којима имате пратиоце. Можда желите да их прегледате и да уклоните оне пратиоце на оним инстанцама за које немате поверења да ће поштовати Вашу приватност.
- followers_count: Број пратилаца
- lock_link: Закључајте налог
- purge: Уклони из пратиоца
- success:
- few: У процесу блокирања пратиоца са %{count} домена...
- many: У процесу блокирања пратиоца са %{count} домена...
- one: У процесу блокирања пратиоца са једног домена...
- other: У процесу блокирања пратиоца са %{count} домена...
- true_privacy_html: Запамтите да се права приватност може постићи само шифровањем са краја на крај.
- unlocked_warning_html: Свако може да Вас запрати да одмах види Ваше приватне статусе. %{lock_link} да бисте прегледали и одбацили пратиоце.
- unlocked_warning_title: Ваш налог није закључан
footer:
developers: Програмери
more: Више…
@@ -803,7 +789,6 @@ sr:
development: Развој
edit_profile: Измена профила
export: Извоз података
- followers: Ауторизовани пратиоци
import: Увоз
migrate: Пребацивање налога
notifications: Обавештења
diff --git a/config/locales/sv.yml b/config/locales/sv.yml
index 7478bef6c39..b0c04329a75 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -433,18 +433,6 @@ sv:
follows: Du följer
mutes: Du tystar
storage: Medialagring
- followers:
- domain: Domän
- explanation_html: Om du vill försäkra integriteten av dina statusar måste du vara medveten om vem som följer dig. Dina privata statusar levereras till alla instanser där du har följare. Du kanske vill granska och eventuellt ta bort följare om du inte litar på att din integritet respekteras hos medarbetarna eller programvara i dessa instanser.
- followers_count: Antal följare
- lock_link: Lås ditt konto
- purge: Ta bort från följare
- success:
- one: I processen med soft-blocking följare från en domän ...
- other: I processen med soft-blocking följare från %{count} domäner...
- true_privacy_html: Kom ihåg att sann integritet kan bara uppnås med end-to-end kryptering.
- unlocked_warning_html: Vem som helst kan följa dig för att omedelbart se dina privata statusar. %{lock_link} för att kunna granska och avvisa följare.
- unlocked_warning_title: Ditt konto är inte låst
generic:
changes_saved_msg: Ändringar sparades framgångsrikt!
save_changes: Spara ändringar
@@ -609,7 +597,6 @@ sv:
development: Utveckling
edit_profile: Redigera profil
export: Exportera data
- followers: Auktoriserade följare
import: Import
migrate: Kontoflytt
notifications: Meddelanden
diff --git a/config/locales/th.yml b/config/locales/th.yml
index 5e9be4da700..788bf62eb39 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -176,18 +176,6 @@ th:
follows: คุณติดตาม
mutes: คุณปิดเสียง
storage: ที่เก็บสื่อ
- followers:
- domain: โดเมน
- explanation_html: If you want to ensure the privacy of your statuses, you must be aware of who is following you. Your private statuses are delivered to all instances where you have followers. You may wish to review them, and remove followers if you do not trust your privacy to be respected by the staff or software of those instances.
- followers_count: จำนวนผู้ติดตาม
- lock_link: ล๊อคแอคเค๊าท์ของคุณ
- purge: นำผู้ติดตามออก
- success:
- one: In the process of soft-blocking followers from one domain...
- other: In the process of soft-blocking followers from %{count} domains...
- true_privacy_html: Please mind that true privacy can only be achieved with end-to-end encryption.
- unlocked_warning_html: Anyone can follow you to immediately view your private statuses. %{lock_link} to be able to review and reject followers.
- unlocked_warning_title: แอคเค๊าท์ของคุณไม่ได้ล๊อค
generic:
changes_saved_msg: บันทึกการแก้ไขแล้ว!
save_changes: บันทึกการเปลี่ยนแปลง
@@ -256,7 +244,6 @@ th:
back: กลับไปที่แมสโทดอน
edit_profile: แก้ไขโปรไฟล์
export: นำข้อมูลออก
- followers: Authorized followers
import: นำเข้า
preferences: Preferences
settings: ตั้งค่า
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index d5f48ee45f2..14e7f34df52 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -277,18 +277,6 @@ tr:
follows: Takip ettikleriniz
mutes: Susturduklarınız
storage: Ortam deposu
- followers:
- domain: Domain
- explanation_html: Eğer gönderilerinizin gizliliğini garanti altına almak istiyorsanız, sizi kimin takip ettiğinden emin olmak zorundasınız. Gizli gönderileriniz, takipçilerinizin olduğu bütün sunuculara iletilir. Gönderilerinizi gözden geçirmek isteyebilir, ve o sunuculardaki yazılımın veya ilgili çalışanın, gizliliğinizi suistimal edeceğinizi düşünüyorsanız, o sunucudaki takipçilerinizi silebilirsiniz.
- followers_count: Takipçi sayısı
- lock_link: Hesabımı kilitle
- purge: Takipçilerimden çıkar
- success:
- one: Domaindeki takipçilerin engellenmesi sürüyor...
- other: "%{count} domaindeki takipçilerin engellenmesi sürüyor..."
- true_privacy_html: 'Lütfen aklınızda bulundurun: gerçek gizlilik yalnızca uçtan-uca şifreleme ile sağlanır.'
- unlocked_warning_html: Herhangi bir kişi sizi takip edebilir ve paylaştığınız gizli gönderilerinizi görebilir. %{lock_link}'e tıklayarak takipçilerinizi gözden geçirebilir ve reddedebilirsiniz.
- unlocked_warning_title: Hesabınız kilitlendi
generic:
changes_saved_msg: Değişiklikler başarıyla kaydedildi!
save_changes: Değişiklikleri kaydet
@@ -357,7 +345,6 @@ tr:
back: Mastodon'a geri dön
edit_profile: Profili düzenle
export: Dışa aktar
- followers: İzin verilmiş takipçiler
import: İçe aktar
preferences: Tercihler
settings: Ayarlar
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index d8e2aa0660b..e72e2f46115 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -481,16 +481,6 @@ uk:
title: Фільтри
new:
title: Додати фільтр
- followers:
- domain: Домен
- explanation_html: Якщо Ви хочете бути впевнені в приватності Ваших статусів, Ви повинні мати чітке уявлення про те, хто на Вас підписаний. Ваші приватні статусі відправляються усім сайтам, на яких у Вас є підписники. Рекомендуємо видалити з підписників користувачів інстанцій, адміністрації чи програмному забезпеченню яких Ви не довіряєте.
- followers_count: Кількість підписників
- lock_link: Закрийте акаунт
- purge: Видалити з підписників
- success: У процесі м'якого блокування підписників з %{count} доменів...
- true_privacy_html: Будь ласка, помітьте, що справжняя конфіденційність може бути досягнена тільки за допомогою end-to-end шифрування.
- unlocked_warning_html: Хто завгодно може підписатися на Вас та отримати доступ до перегляду Ваших приватних статусів. %{lock_link}, щоб отримати можливість роздивлятися та вручну підтверджувати запити щодо підписки.
- unlocked_warning_title: Ваш аккаунт не закритий для підписки
generic:
changes_saved_msg: Зміни успішно збережені!
save_changes: Зберегти зміни
@@ -655,7 +645,6 @@ uk:
development: Розробка
edit_profile: Редагувати профіль
export: Експорт даних
- followers: Авторизовані підписники
import: Імпорт
migrate: Міграція акаунту
notifications: Сповіщення
diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml
index f91cef4a422..77cf3213617 100644
--- a/config/locales/zh-CN.yml
+++ b/config/locales/zh-CN.yml
@@ -498,16 +498,6 @@ zh-CN:
title: 过滤器
new:
title: 添加新的过滤器
- followers:
- domain: 域名
- explanation_html: 为保证你的嘟文的隐私安全,你应当经常检查你的关注者列表。受保护的嘟文将会发送到所有关注者所在的实例上。有些实例使用的软件代码或其管理员可能不会尊重你的隐私设置,因此你应当复查一下关注者列表,并移除那些你无法信任的关注者。
- followers_count: 关注者数量
- lock_link: 为你的帐户开启保护
- purge: 从关注者中移除
- success: 正在从 %{count} 个域名中移除关注者……
- true_privacy_html: 请始终铭记:真正的隐私只能靠端到端加密来实现!
- unlocked_warning_html: 任何人都可以在关注你后立即查看非公开的嘟文。只要%{lock_link},你就可以审核并拒绝关注请求。
- unlocked_warning_title: 你的帐户未受到保护
generic:
changes_saved_msg: 更改保存成功!
save_changes: 保存更改
@@ -671,7 +661,6 @@ zh-CN:
development: 开发
edit_profile: 更改个人资料
export: 导出
- followers: 已授权的关注者
import: 导入
migrate: 帐户迁移
notifications: 通知
diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml
index a2cfe56a942..7b200e91ac0 100644
--- a/config/locales/zh-HK.yml
+++ b/config/locales/zh-HK.yml
@@ -431,18 +431,6 @@ zh-HK:
follows: 你所關注的用戶
mutes: 你所靜音的用戶
storage: 媒體容量大小
- followers:
- domain: 網域
- explanation_html: 如果你想確保你的私隱,請留意是甚麼用戶在關注你。即使你的將文章設定「私人文章」,它仍為會被遞送至你所有關注者的服務站。如果你不信任某些用戶、或其服務站的管理者會尊重你私隱,請將他們自關注者名單私除。
- followers_count: 關注者數目
- lock_link: 將用戶轉為「私人」
- purge: 私除關注者
- success:
- one: 正準備軟性阻擋 1 個網域的關注者……
- other: 正準備軟性阻擋 %{count} 個網域的關注者……
- true_privacy_html: 請謹記,唯有點對點加密方可以真正確保你的私隱。
- unlocked_warning_html: 目前任何人都可以看到你的私人文章,若%{lock_link}的話,你將可以審批關注者。
- unlocked_warning_title: 你的用戶目前為「公共」
generic:
changes_saved_msg: 已成功儲存修改。
save_changes: 儲存修改
@@ -606,7 +594,6 @@ zh-HK:
development: 開發
edit_profile: 修改個人資料
export: 匯出
- followers: 授權關注
import: 匯入
migrate: 帳戶遷移
notifications: 通知
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index 4498eff954a..d05514b830b 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -436,16 +436,6 @@ zh-TW:
follows: 您關注的使用者
mutes: 您靜音的使用者
storage: 儲存空間大小
- followers:
- domain: 網域
- explanation_html: 為確保個人隱私,您必須知道有哪些使用者正關注你。您的私密內容會被發送到所有您有被關注的站點上。如果您不信任這些站點的管理者,您可以選擇檢查或刪除您的關注者。
- followers_count: 關注者數量
- lock_link: 將你的帳戶設定為私人
- purge: 移除關注者
- success: 正準備軟性封鎖 %{count} 個網域的關注者……
- true_privacy_html: 請謹記,唯有點對點加密方可以真正確保你的隱私。
- unlocked_warning_html: 任何人都可以在關注你後立即查看非公開的嘟文。只要%{lock_link},你就可以審核並拒絕關注請求。
- unlocked_warning_title: 你的帳戶是公開的
generic:
changes_saved_msg: 已成功儲存修改!
save_changes: 儲存修改
@@ -594,7 +584,6 @@ zh-TW:
development: 開發
edit_profile: 編輯使用者資訊
export: 匯出
- followers: 授權關注者
import: 匯入
migrate: 帳戶搬遷
notifications: 通知
diff --git a/config/navigation.rb b/config/navigation.rb
index 1be621ac242..77a300bbf8c 100644
--- a/config/navigation.rb
+++ b/config/navigation.rb
@@ -14,9 +14,9 @@ SimpleNavigation::Configuration.run do |navigation|
settings.item :import, safe_join([fa_icon('cloud-upload fw'), t('settings.import')]), settings_import_url
settings.item :export, safe_join([fa_icon('cloud-download fw'), t('settings.export')]), settings_export_url
settings.item :authorized_apps, safe_join([fa_icon('list fw'), t('settings.authorized_apps')]), oauth_authorized_applications_url
- settings.item :follower_domains, safe_join([fa_icon('users fw'), t('settings.followers')]), settings_follower_domains_url
end
+ primary.item :relationships, safe_join([fa_icon('users fw'), t('settings.relationships')]), relationships_url
primary.item :filters, safe_join([fa_icon('filter fw'), t('filters.index.title')]), filters_path, highlights_on: %r{/filters}
primary.item :invites, safe_join([fa_icon('user-plus fw'), t('invites.title')]), invites_path, if: proc { Setting.min_invite_role == 'user' }
diff --git a/config/routes.rb b/config/routes.rb
index 1bb87526420..dc5633a68d2 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -106,8 +106,6 @@ Rails.application.routes.draw do
resource :confirmation, only: [:new, :create]
end
- resource :follower_domains, only: [:show, :update]
-
resources :applications, except: [:edit] do
member do
post :regenerate
@@ -129,6 +127,7 @@ Rails.application.routes.draw do
resources :emojis, only: [:show]
resources :invites, only: [:index, :create, :destroy]
resources :filters, except: [:show]
+ resource :relationships, only: [:show, :update]
get '/public', to: 'public_timelines#show', as: :public_timeline
get '/media_proxy/:id/(*any)', to: 'media_proxy#show', as: :media_proxy
diff --git a/spec/controllers/settings/follower_domains_controller_spec.rb b/spec/controllers/relationships_controller_spec.rb
similarity index 64%
rename from spec/controllers/settings/follower_domains_controller_spec.rb
rename to spec/controllers/relationships_controller_spec.rb
index 6d415a65496..16e255afe11 100644
--- a/spec/controllers/settings/follower_domains_controller_spec.rb
+++ b/spec/controllers/relationships_controller_spec.rb
@@ -1,6 +1,6 @@
require 'rails_helper'
-describe Settings::FollowerDomainsController do
+describe RelationshipsController do
render_views
let(:user) { Fabricate(:user) }
@@ -12,24 +12,17 @@ describe Settings::FollowerDomainsController do
end
describe 'GET #show' do
- subject { get :show, params: { page: 2 } }
+ subject { get :show, params: { page: 2, relationship: 'followed_by' } }
- it 'assigns @account' do
- sign_in user, scope: :user
- subject
- expect(assigns(:account)).to eq user.account
- end
-
- it 'assigns @domains' do
+ it 'assigns @accounts' do
Fabricate(:account, domain: 'old').follow!(user.account)
Fabricate(:account, domain: 'recent').follow!(user.account)
sign_in user, scope: :user
subject
- assigned = assigns(:domains).per(1).to_a
+ assigned = assigns(:accounts).per(1).to_a
expect(assigned.size).to eq 1
- expect(assigned[0].accounts_from_domain).to eq 1
expect(assigned[0].domain).to eq 'old'
end
@@ -49,25 +42,24 @@ describe Settings::FollowerDomainsController do
stub_request(:post, 'http://example.com/salmon').to_return(status: 200)
end
- shared_examples 'redirects back to followers page' do |notice|
+ shared_examples 'redirects back to followers page' do
it 'redirects back to followers page' do
poopfeast.follow!(user.account)
sign_in user, scope: :user
subject
- expect(flash[:notice]).to eq notice
- expect(response).to redirect_to(settings_follower_domains_path)
+ expect(response).to redirect_to(relationships_path)
end
end
context 'when select parameter is not provided' do
subject { patch :update }
- include_examples 'redirects back to followers page', 'In the process of soft-blocking followers from 0 domains...'
+ include_examples 'redirects back to followers page'
end
context 'when select parameter is provided' do
- subject { patch :update, params: { select: ['example.com'] } }
+ subject { patch :update, params: { form_account_batch: { account_ids: [poopfeast.id] }, block_domains: '' } }
it 'soft-blocks followers from selected domains' do
poopfeast.follow!(user.account)
@@ -79,7 +71,7 @@ describe Settings::FollowerDomainsController do
end
include_examples 'authenticate user'
- include_examples 'redirects back to followers page', 'In the process of soft-blocking followers from one domain...'
+ include_examples 'redirects back to followers page'
end
end
end
From d5c79975ea13bfc061d08cc123ffc25fb589e3ba Mon Sep 17 00:00:00 2001
From: Nolan Lawson
Date: Sat, 16 Mar 2019 03:23:54 -0700
Subject: [PATCH 15/20] perf: remove stats.json generation in webpack (#10290)
* perf: remove stats.json generation in webpack
* fix code comment
---
config/webpack/production.js | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/config/webpack/production.js b/config/webpack/production.js
index 6f27aa2c700..c829ff6f194 100644
--- a/config/webpack/production.js
+++ b/config/webpack/production.js
@@ -57,13 +57,8 @@ module.exports = merge(sharedConfig, {
cache: true,
test: /\.(js|css|html|json|ico|svg|eot|otf|ttf|map)$/,
}),
- new BundleAnalyzerPlugin({ // generates report.html and stats.json
+ new BundleAnalyzerPlugin({ // generates report.html
analyzerMode: 'static',
- generateStatsFile: true,
- statsOptions: {
- // allows usage with http://chrisbateman.github.io/webpack-visualizer/
- chunkModules: true,
- },
openAnalyzer: false,
logLevel: 'silent', // do not bother Webpacker, who runs with --json and parses stdout
}),
From 1a0d3c9c65d663210494ec9b55912debad6331f5 Mon Sep 17 00:00:00 2001
From: Yamagishi Kazutoshi
Date: Sat, 16 Mar 2019 19:24:26 +0900
Subject: [PATCH 16/20] Do not use @babel/preset-env to compile node_modules
(#10289)
---
config/webpack/rules/node_modules.js | 3 ---
1 file changed, 3 deletions(-)
diff --git a/config/webpack/rules/node_modules.js b/config/webpack/rules/node_modules.js
index 422554a7699..7ed05504bf3 100644
--- a/config/webpack/rules/node_modules.js
+++ b/config/webpack/rules/node_modules.js
@@ -10,9 +10,6 @@ module.exports = {
loader: 'babel-loader',
options: {
babelrc: false,
- presets: [
- ['@babel/env', { modules: false }],
- ],
plugins: [
'transform-react-remove-prop-types',
],
From 3960a9d60554a7ee6b06ad834dae27f93978f22e Mon Sep 17 00:00:00 2001
From: Thibaut Girka
Date: Sat, 16 Mar 2019 14:23:50 +0100
Subject: [PATCH 17/20] Do not try to parse gif files as CSS or JS
---
config/webpacker.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/config/webpacker.yml b/config/webpacker.yml
index 4ad78a190ec..9accd6152d2 100644
--- a/config/webpacker.yml
+++ b/config/webpacker.yml
@@ -26,6 +26,7 @@ default: &default
- .tiff
- .ico
- .svg
+ - .gif
- .eot
- .otf
- .ttf
From 8e5d72dba89e8d2c4ecb8aa13827aabbcd92b633 Mon Sep 17 00:00:00 2001
From: Thibaut Girka
Date: Sat, 16 Mar 2019 14:26:14 +0100
Subject: [PATCH 18/20] Fix relationships controller/view wrt. glitch-soc
theming engine
---
app/controllers/relationships_controller.rb | 5 +++++
app/views/relationships/show.html.haml | 3 ---
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/app/controllers/relationships_controller.rb b/app/controllers/relationships_controller.rb
index e6dd65e4455..af91cb65842 100644
--- a/app/controllers/relationships_controller.rb
+++ b/app/controllers/relationships_controller.rb
@@ -5,6 +5,7 @@ class RelationshipsController < ApplicationController
before_action :authenticate_user!
before_action :set_accounts, only: :show
+ before_action :set_pack
before_action :set_body_classes
helper_method :following_relationship?, :followed_by_relationship?, :mutual_relationship?
@@ -95,4 +96,8 @@ class RelationshipsController < ApplicationController
def set_body_classes
@body_classes = 'admin'
end
+
+ def set_pack
+ use_pack 'admin'
+ end
end
diff --git a/app/views/relationships/show.html.haml b/app/views/relationships/show.html.haml
index 33a43f1a87c..94972026acd 100644
--- a/app/views/relationships/show.html.haml
+++ b/app/views/relationships/show.html.haml
@@ -1,9 +1,6 @@
- content_for :page_title do
= t('settings.relationships')
-- content_for :header_tags do
- = javascript_pack_tag 'admin', integrity: true, async: true, crossorigin: 'anonymous'
-
.filters
.filter-subset
%strong= t 'relationships.relationship'
From 47c8707f01d51e292f5009cd1027cbdf10961a0d Mon Sep 17 00:00:00 2001
From: Eugen Rochko
Date: Sat, 16 Mar 2019 11:23:22 +0100
Subject: [PATCH 19/20] [Glitch] Add relationship manager UI
Port SCSS changes from 1c113fd72df18999de1d6f09fa3790dd1f715506 to glitch-soc
---
.../flavours/glitch/styles/tables.scss | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/app/javascript/flavours/glitch/styles/tables.scss b/app/javascript/flavours/glitch/styles/tables.scss
index 296182ff522..11845fb17ce 100644
--- a/app/javascript/flavours/glitch/styles/tables.scss
+++ b/app/javascript/flavours/glitch/styles/tables.scss
@@ -140,6 +140,15 @@ a.table-action-link {
input {
margin-top: 8px;
}
+
+ &--aligned {
+ display: flex;
+ align-items: center;
+
+ input {
+ margin-top: 0;
+ }
+ }
}
&__actions,
@@ -183,6 +192,10 @@ a.table-action-link {
&__content {
padding-top: 12px;
padding-bottom: 16px;
+
+ &--unpadded {
+ padding: 0;
+ }
}
}
@@ -193,4 +206,10 @@ a.table-action-link {
font-weight: 700;
}
}
+
+ .nothing-here {
+ border: 1px solid darken($ui-base-color, 8%);
+ border-top: 0;
+ box-shadow: none;
+ }
}
From 0fbe90e2d3cfc2c5d1fd12ea564daa52a83ec0ac Mon Sep 17 00:00:00 2001
From: Thibaut Girka
Date: Sat, 16 Mar 2019 16:21:20 +0100
Subject: [PATCH 20/20] Fix settings/flavours
Update theming system to use new paths for media files
---
app/javascript/flavours/glitch/theme.yml | 6 ++----
app/javascript/flavours/vanilla/theme.yml | 6 ++----
app/views/settings/flavours/show.html.haml | 2 +-
3 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/app/javascript/flavours/glitch/theme.yml b/app/javascript/flavours/glitch/theme.yml
index d8f31338185..587cc0f1ed4 100644
--- a/app/javascript/flavours/glitch/theme.yml
+++ b/app/javascript/flavours/glitch/theme.yml
@@ -28,10 +28,8 @@ pack:
locales: locales
# (OPTIONAL) A file to use as the preview screenshot for the flavour,
-# or an array thereof. These filenames must be unique across all
-# images (regardless of path), so it's a good idea to namespace them
-# to your theme. It's up to you to let webpack know to compile them.
-screenshot: glitch-preview.jpg
+# or an array thereof. These are the full path from `app/javascript/`.
+screenshot: flavours/glitch/images/glitch-preview.jpg
# (OPTIONAL) The directory which contains the pack files.
# Defaults to the theme directory (`app/javascript/themes/[theme]`),
diff --git a/app/javascript/flavours/vanilla/theme.yml b/app/javascript/flavours/vanilla/theme.yml
index a215b2625ec..42e26daea72 100644
--- a/app/javascript/flavours/vanilla/theme.yml
+++ b/app/javascript/flavours/vanilla/theme.yml
@@ -26,10 +26,8 @@ pack:
locales: ../../mastodon/locales
# (OPTIONAL) A file to use as the preview screenshot for the flavour,
-# or an array thereof. These filenames must be unique across all
-# images (regardless of path), so it's a good idea to namespace them
-# to your theme. It's up to you to let webpack know to compile them.
-screenshot: screenshot.jpg
+# or an array thereof. These are the full path from `app/javascript/`.
+screenshot: images/screenshot.jpg
# (OPTIONAL) The directory which contains the pack files.
# Defaults to this directory (`app/javascript/flavour/[flavour]`),
diff --git a/app/views/settings/flavours/show.html.haml b/app/views/settings/flavours/show.html.haml
index a5126d9c529..c3f785aa03e 100644
--- a/app/views/settings/flavours/show.html.haml
+++ b/app/views/settings/flavours/show.html.haml
@@ -5,7 +5,7 @@
= render 'shared/error_messages', object: current_user
- Themes.instance.flavour(@selected)['screenshot'].each do |screen|
- %img.flavour-screen{ src: asset_pack_path(screen) }
+ %img.flavour-screen{ src: full_pack_url("media/#{screen}") }
.flavour-description
= t "flavours.#{@selected}.description", default: ''