From d1b0463c296c21df4144a2c103bad58542d7022e Mon Sep 17 00:00:00 2001 From: Rachel Fae Fox Date: Tue, 25 Feb 2020 16:38:58 +0000 Subject: [PATCH] various changes --- app/controllers/remote_follow_controller.rb | 17 +- .../remote_interaction_controller.rb | 37 +- app/javascript/flavours/glitch/locales/en.js | 4 +- .../mastodon/locales/defaultMessages.json | 983 +++++++++++++----- app/javascript/mastodon/locales/en.json | 362 ++++--- config/locales/en.yml | 74 +- config/locales/simple_form.en.yml | 16 +- config/settings.yml | 2 +- package.json | 1 + yarn.lock | 153 +-- 10 files changed, 1024 insertions(+), 625 deletions(-) diff --git a/app/controllers/remote_follow_controller.rb b/app/controllers/remote_follow_controller.rb index 08b53a4d8..a2f9fea9d 100644 --- a/app/controllers/remote_follow_controller.rb +++ b/app/controllers/remote_follow_controller.rb @@ -9,10 +9,21 @@ class RemoteFollowController < ApplicationController before_action :set_body_classes def new - raise Mastodon::NotPermittedError unless user_signed_in? + @remote_follow = RemoteFollow.new(session_params) + end - FollowService.new.call(current_account, @account) unless current_account.following?(@account) - redirect_to TagManager.instance.url_for(@account) + def create + + @remote_follow = RemoteFollow.new(resource_params) + raise Mastodon::NotPermittedError unless user_signed_in? + + + if @remote_follow.valid? + session[:remote_follow] = @remote_follow.acct + redirect_to @remote_follow.subscribe_address_for(@account) + else + render :new + end end private diff --git a/app/controllers/remote_interaction_controller.rb b/app/controllers/remote_interaction_controller.rb index 7ecf95400..1a5ed5402 100644 --- a/app/controllers/remote_interaction_controller.rb +++ b/app/controllers/remote_interaction_controller.rb @@ -6,33 +6,22 @@ class RemoteInteractionController < ApplicationController layout 'modal' before_action :set_body_classes + before_action :set_interaction_type before_action :set_pack before_action :set_status def new - raise Mastodon::NotPermittedError unless user_signed_in? + @remote_follow = RemoteFollow.new(session_params) + end - case params[:type] - when 'reblog' - if current_account.statuses.where(reblog: @status).exists? - status = current_account.statuses.find_by(reblog: @status) - RemoveStatusService.new.call(status) - else - ReblogService.new.call(current_account, @status) - end - when 'favourite' - if Favourite.where(account: current_account, status: @status).exists? - UnfavouriteService.new.call(current_account, @status) - else - FavouriteService.new.call(current_account, @status, skip_authorize: true) - end - when 'follow' - FollowService.new.call(current_account, @status.account) - when 'unfollow' - UnfollowService.new.call(current_account, @status.account) - end - - redirect_to short_account_status_url(@status.account.username, @status.id, key: @sharekey) + def create + @remote_follow = RemoteFollow.new(resource_params) + if @remote_follow.valid? + session[:remote_follow] = @remote_follow.acct + redirect_to @remote_follow.interact_address_for(@status) + else + render :new + end end private @@ -67,4 +56,8 @@ class RemoteInteractionController < ApplicationController def set_pack use_pack 'modal' end +def set_interaction_type + @interaction_type = %w(reply reblog favourite).include?(params[:type]) ? params[:type] : 'reply' + end + end diff --git a/app/javascript/flavours/glitch/locales/en.js b/app/javascript/flavours/glitch/locales/en.js index fe961a9cb..9532c63bc 100644 --- a/app/javascript/flavours/glitch/locales/en.js +++ b/app/javascript/flavours/glitch/locales/en.js @@ -8,9 +8,9 @@ const messages = { 'layout.mobile': 'Mobile', 'navigation_bar.app_settings': 'UI options', 'getting_started.onboarding': 'Tutorial', - 'onboarding.page_one.federation': '{domain} is a \'instance\' of Monsterpit. Monsterpit is a network of independent servers joining up to make one larger social network. We call these servers communities.', + 'onboarding.page_one.federation': '{domain} is a \'instance\' of the fediverse. The fediverse is a network of independent servers joining up to make one larger social network. We call these servers communities.', 'onboarding.page_one.welcome': 'Welcome to {domain}!', - 'onboarding.page_six.github': '{domain} runs on Glitchsoc. Glitchsoc is a friendly {fork} of {Monsterpit}, and is compatible with any Monsterpit community or app. Glitchsoc is entirely free and open-source. You can report bugs, request features, or contribute to the code on {github}.', + 'onboarding.page_six.github': '{domain} runs on Glitchsoc. Glitchsoc is a friendly {fork} of {Mastodon}, and is compatible with any mastodon community or app. Glitchsoc is entirely free and open-source. You can report bugs, request features, or contribute to the code on {github}.', 'settings.auto_collapse': 'Automatic collapsing', 'settings.auto_collapse_all': 'Everything', 'settings.auto_collapse_lengthy': 'Lengthy roars', diff --git a/app/javascript/mastodon/locales/defaultMessages.json b/app/javascript/mastodon/locales/defaultMessages.json index 5c1ef6f08..42231a974 100644 --- a/app/javascript/mastodon/locales/defaultMessages.json +++ b/app/javascript/mastodon/locales/defaultMessages.json @@ -8,6 +8,14 @@ { "defaultMessage": "An unexpected error occurred.", "id": "alert.unexpected.message" + }, + { + "defaultMessage": "Rate limited", + "id": "alert.rate_limited.title" + }, + { + "defaultMessage": "Please retry after {retry_time, time, medium}.", + "id": "alert.rate_limited.message" } ], "path": "app/javascript/mastodon/actions/alerts.json" @@ -41,11 +49,11 @@ { "descriptors": [ { - "defaultMessage": "Join pack", + "defaultMessage": "Follow", "id": "account.follow" }, { - "defaultMessage": "Leave pack", + "defaultMessage": "Unfollow", "id": "account.unfollow" }, { @@ -71,6 +79,15 @@ ], "path": "app/javascript/mastodon/components/account.json" }, + { + "descriptors": [ + { + "defaultMessage": "{count} per week", + "id": "autosuggest_hashtag.per_week" + } + ], + "path": "app/javascript/mastodon/components/autosuggest_hashtag.json" + }, { "descriptors": [ { @@ -131,6 +148,27 @@ ], "path": "app/javascript/mastodon/components/domain.json" }, + { + "descriptors": [ + { + "defaultMessage": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.", + "id": "error.unexpected_crash.explanation" + }, + { + "defaultMessage": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.", + "id": "error.unexpected_crash.next_steps" + }, + { + "defaultMessage": "Report issue", + "id": "errors.unexpected_crash.report_issue" + }, + { + "defaultMessage": "Copy stacktrace to clipboard", + "id": "errors.unexpected_crash.copy_stacktrace" + } + ], + "path": "app/javascript/mastodon/components/error_boundary.json" + }, { "descriptors": [ { @@ -182,6 +220,10 @@ "defaultMessage": "Toggle visibility", "id": "media_gallery.toggle_visible" }, + { + "defaultMessage": "Not available", + "id": "status.uncached_media_warning" + }, { "defaultMessage": "Sensitive content", "id": "status.sensitive_warning" @@ -212,6 +254,19 @@ "defaultMessage": "Closed", "id": "poll.closed" }, + { + "defaultMessage": "You voted for this answer", + "description": "Tooltip of the \"voted\" checkmark in polls", + "id": "poll.voted" + }, + { + "defaultMessage": "{count, plural, one {# person} other {# people}}", + "id": "poll.total_people" + }, + { + "defaultMessage": "{count, plural, one {# vote} other {# votes}}", + "id": "poll.total_votes" + }, { "defaultMessage": "Vote", "id": "poll.vote" @@ -219,16 +274,29 @@ { "defaultMessage": "Refresh", "id": "poll.refresh" - }, - { - "defaultMessage": "{count, plural, one {# vote} other {# votes}}", - "id": "poll.total_votes" } ], "path": "app/javascript/mastodon/components/poll.json" }, { "descriptors": [ + { + "defaultMessage": "Loading…", + "id": "regeneration_indicator.label" + }, + { + "defaultMessage": "Your home feed is being prepared!", + "id": "regeneration_indicator.sublabel" + } + ], + "path": "app/javascript/mastodon/components/regeneration_indicator.json" + }, + { + "descriptors": [ + { + "defaultMessage": "today", + "id": "relative_time.today" + }, { "defaultMessage": "now", "id": "relative_time.just_now" @@ -279,15 +347,15 @@ "id": "status.delete" }, { - "defaultMessage": "Delete & edit", + "defaultMessage": "Delete & re-draft", "id": "status.redraft" }, { - "defaultMessage": "Whisper to @{name}", + "defaultMessage": "Direct message @{name}", "id": "status.direct" }, { - "defaultMessage": "Include @{name}", + "defaultMessage": "Mention @{name}", "id": "status.mention" }, { @@ -315,27 +383,35 @@ "id": "status.replyAll" }, { - "defaultMessage": "Repeat", + "defaultMessage": "Boost", "id": "status.reblog" }, { - "defaultMessage": "Repeat to original audience", + "defaultMessage": "Boost to original audience", "id": "status.reblog_private" }, { - "defaultMessage": "Unrepeat", + "defaultMessage": "Unboost", "id": "status.cancel_reblog_private" }, { - "defaultMessage": "This roar cannot be repeated", + "defaultMessage": "This post cannot be boosted", "id": "status.cannot_reblog" }, { - "defaultMessage": "Admire", + "defaultMessage": "Favourite", "id": "status.favourite" }, { - "defaultMessage": "Open roar", + "defaultMessage": "Bookmark", + "id": "status.bookmark" + }, + { + "defaultMessage": "Remove bookmark", + "id": "status.remove_bookmark" + }, + { + "defaultMessage": "Expand this status", "id": "status.open" }, { @@ -363,16 +439,32 @@ "id": "status.embed" }, { - "defaultMessage": "Moderate @{name}", + "defaultMessage": "Open moderation interface for @{name}", "id": "status.admin_account" }, { - "defaultMessage": "Moderate roar", + "defaultMessage": "Open this status in the moderation interface", "id": "status.admin_status" }, { - "defaultMessage": "Copy link to roar", + "defaultMessage": "Copy link to status", "id": "status.copy" + }, + { + "defaultMessage": "Hide everything from {domain}", + "id": "account.block_domain" + }, + { + "defaultMessage": "Unhide {domain}", + "id": "account.unblock_domain" + }, + { + "defaultMessage": "Unmute @{name}", + "id": "account.unmute" + }, + { + "defaultMessage": "Unblock @{name}", + "id": "account.unblock" } ], "path": "app/javascript/mastodon/components/status_action_bar.json" @@ -384,29 +476,16 @@ "id": "status.read_more" }, { - "defaultMessage": "Reveal", + "defaultMessage": "Show more", "id": "status.show_more" }, { - "defaultMessage": "Hide", + "defaultMessage": "Show less", "id": "status.show_less" } ], "path": "app/javascript/mastodon/components/status_content.json" }, - { - "descriptors": [ - { - "defaultMessage": "Loading…", - "id": "regeneration_indicator.label" - }, - { - "defaultMessage": "Your home feed is being prepared!", - "id": "regeneration_indicator.sublabel" - } - ], - "path": "app/javascript/mastodon/components/status_list.json" - }, { "descriptors": [ { @@ -414,11 +493,11 @@ "id": "status.filtered" }, { - "defaultMessage": "Pinned roar", + "defaultMessage": "Pinned toot", "id": "status.pinned" }, { - "defaultMessage": "{name} repeated", + "defaultMessage": "{name} boosted", "id": "status.reblogged_by" }, { @@ -431,11 +510,11 @@ { "descriptors": [ { - "defaultMessage": "Leave pack", + "defaultMessage": "Unfollow", "id": "confirmations.unfollow.confirm" }, { - "defaultMessage": "Are you sure you want to leave the pack of {name}?", + "defaultMessage": "Are you sure you want to unfollow {name}?", "id": "confirmations.unfollow.message" } ], @@ -461,21 +540,17 @@ "id": "confirmations.delete.confirm" }, { - "defaultMessage": "Are you sure you want to delete this roar?", + "defaultMessage": "Are you sure you want to delete this status?", "id": "confirmations.delete.message" }, { - "defaultMessage": "Delete & edit", + "defaultMessage": "Delete & redraft", "id": "confirmations.redraft.confirm" }, { - "defaultMessage": "Are you sure you want to delete this roar and edit it? Admirations and repeats will be lost, & growls to the original roar will be orphaned.", + "defaultMessage": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.", "id": "confirmations.redraft.message" }, - { - "defaultMessage": "Block", - "id": "confirmations.block.confirm" - }, { "defaultMessage": "Reply", "id": "confirmations.reply.confirm" @@ -485,12 +560,12 @@ "id": "confirmations.reply.message" }, { - "defaultMessage": "Block & Report", - "id": "confirmations.block.block_and_report" + "defaultMessage": "Hide entire domain", + "id": "confirmations.domain_block.confirm" }, { - "defaultMessage": "Are you sure you want to block {name}?", - "id": "confirmations.block.message" + "defaultMessage": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.", + "id": "confirmations.domain_block.message" } ], "path": "app/javascript/mastodon/containers/status_container.json" @@ -498,11 +573,11 @@ { "descriptors": [ { - "defaultMessage": "Roars", + "defaultMessage": "Toots", "id": "account.posts" }, { - "defaultMessage": "Roars & growls", + "defaultMessage": "Toots and replies", "id": "account.posts_with_replies" }, { @@ -524,31 +599,19 @@ { "descriptors": [ { - "defaultMessage": "Leave pack", + "defaultMessage": "Unfollow", "id": "confirmations.unfollow.confirm" }, - { - "defaultMessage": "Block", - "id": "confirmations.block.confirm" - }, { "defaultMessage": "Hide entire domain", "id": "confirmations.domain_block.confirm" }, { - "defaultMessage": "Block & Report", - "id": "confirmations.block.block_and_report" - }, - { - "defaultMessage": "Are you sure you want to leave the pack of {name}?", + "defaultMessage": "Are you sure you want to unfollow {name}?", "id": "confirmations.unfollow.message" }, { - "defaultMessage": "Are you sure you want to block {name}?", - "id": "confirmations.block.message" - }, - { - "defaultMessage": "Are you really, really sure you want to block the entire {domain}? Your packmates from that domain will be removed.", + "defaultMessage": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.", "id": "confirmations.domain_block.message" } ], @@ -561,7 +624,7 @@ "id": "empty_column.account_unavailable" }, { - "defaultMessage": "No roars here!", + "defaultMessage": "No toots here!", "id": "empty_column.account_timeline" } ], @@ -570,15 +633,19 @@ { "descriptors": [ { - "defaultMessage": "Leave pack", + "defaultMessage": "Unfollow", "id": "account.unfollow" }, { - "defaultMessage": "Join pack", + "defaultMessage": "Follow", "id": "account.follow" }, { - "defaultMessage": "Awaiting approval. Click to cancel join request", + "defaultMessage": "Cancel follow request", + "id": "account.cancel_follow_request" + }, + { + "defaultMessage": "Awaiting approval. Click to cancel follow request", "id": "account.requested" }, { @@ -594,15 +661,15 @@ "id": "account.link_verified_on" }, { - "defaultMessage": "This account is locked. The owner manually reviews who can join their pack.", + "defaultMessage": "This account privacy status is set to locked. The owner manually reviews who can follow them.", "id": "account.locked_info" }, { - "defaultMessage": "Include @{name}", + "defaultMessage": "Mention @{name}", "id": "account.mention" }, { - "defaultMessage": "Whisper to @{name}", + "defaultMessage": "Direct message @{name}", "id": "account.direct" }, { @@ -630,7 +697,7 @@ "id": "account.media" }, { - "defaultMessage": "Hide {domain}", + "defaultMessage": "Hide everything from {domain}", "id": "account.block_domain" }, { @@ -638,15 +705,15 @@ "id": "account.unblock_domain" }, { - "defaultMessage": "Hide repeats from @{name}", + "defaultMessage": "Hide boosts from @{name}", "id": "account.hide_reblogs" }, { - "defaultMessage": "Show repeats from @{name}", + "defaultMessage": "Show boosts from @{name}", "id": "account.show_reblogs" }, { - "defaultMessage": "Pins", + "defaultMessage": "Pinned toots", "id": "navigation_bar.pins" }, { @@ -654,11 +721,11 @@ "id": "navigation_bar.preferences" }, { - "defaultMessage": "New packmates", + "defaultMessage": "Follow requests", "id": "navigation_bar.follow_requests" }, { - "defaultMessage": "Admirations", + "defaultMessage": "Favourites", "id": "navigation_bar.favourites" }, { @@ -666,15 +733,15 @@ "id": "navigation_bar.lists" }, { - "defaultMessage": "Blocked creatures", + "defaultMessage": "Blocked users", "id": "navigation_bar.blocks" }, { - "defaultMessage": "Hidden communities", + "defaultMessage": "Hidden domains", "id": "navigation_bar.domain_blocks" }, { - "defaultMessage": "Muted creatures", + "defaultMessage": "Muted users", "id": "navigation_bar.mutes" }, { @@ -690,11 +757,11 @@ "id": "account.add_or_remove_from_list" }, { - "defaultMessage": "Moderate @{name}", + "defaultMessage": "Open moderation interface for @{name}", "id": "status.admin_account" }, { - "defaultMessage": "In your pack", + "defaultMessage": "Follows you", "id": "account.follows_you" }, { @@ -714,15 +781,19 @@ "id": "account.badges.bot" }, { - "defaultMessage": "Roars", + "defaultMessage": "Group", + "id": "account.badges.group" + }, + { + "defaultMessage": "Toots", "id": "account.posts" }, { - "defaultMessage": "In packs", + "defaultMessage": "Follows", "id": "account.follows" }, { - "defaultMessage": "Packmates", + "defaultMessage": "Followers", "id": "account.followers" } ], @@ -731,16 +802,54 @@ { "descriptors": [ { - "defaultMessage": "Blocked creatures", + "defaultMessage": "Play", + "id": "video.play" + }, + { + "defaultMessage": "Pause", + "id": "video.pause" + }, + { + "defaultMessage": "Mute sound", + "id": "video.mute" + }, + { + "defaultMessage": "Unmute sound", + "id": "video.unmute" + }, + { + "defaultMessage": "Download file", + "id": "video.download" + } + ], + "path": "app/javascript/mastodon/features/audio/index.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Blocked users", "id": "column.blocks" }, { - "defaultMessage": "You haven't blocked any creatures yet.", + "defaultMessage": "You haven't blocked any users yet.", "id": "empty_column.blocks" } ], "path": "app/javascript/mastodon/features/blocks/index.json" }, + { + "descriptors": [ + { + "defaultMessage": "Bookmarks", + "id": "column.bookmarks" + }, + { + "defaultMessage": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.", + "id": "empty_column.bookmarked_statuses" + } + ], + "path": "app/javascript/mastodon/features/bookmarked_statuses/index.json" + }, { "descriptors": [ { @@ -753,11 +862,11 @@ { "descriptors": [ { - "defaultMessage": "Monsterpit", + "defaultMessage": "Local timeline", "id": "column.community" }, { - "defaultMessage": "The Monsterpit timeline is empty. Write something publicly to get the ball rolling!", + "defaultMessage": "The local timeline is empty. Write something publicly to get the ball rolling!", "id": "empty_column.community" } ], @@ -770,7 +879,7 @@ "id": "account.edit_profile" }, { - "defaultMessage": "Pins", + "defaultMessage": "Pinned toots", "id": "navigation_bar.pins" }, { @@ -778,11 +887,11 @@ "id": "navigation_bar.preferences" }, { - "defaultMessage": "New packmates", + "defaultMessage": "Follow requests", "id": "navigation_bar.follow_requests" }, { - "defaultMessage": "Admirations", + "defaultMessage": "Favourites", "id": "navigation_bar.favourites" }, { @@ -790,20 +899,24 @@ "id": "navigation_bar.lists" }, { - "defaultMessage": "Blocked creatures", + "defaultMessage": "Blocked users", "id": "navigation_bar.blocks" }, { - "defaultMessage": "Hidden communities", + "defaultMessage": "Hidden domains", "id": "navigation_bar.domain_blocks" }, { - "defaultMessage": "Muted creatures", + "defaultMessage": "Muted users", "id": "navigation_bar.mutes" }, { "defaultMessage": "Muted words", "id": "navigation_bar.filters" + }, + { + "defaultMessage": "Logout", + "id": "navigation_bar.logout" } ], "path": "app/javascript/mastodon/features/compose/components/action_bar.json" @@ -811,7 +924,7 @@ { "descriptors": [ { - "defaultMessage": "Roar shamelessly!", + "defaultMessage": "What is on your mind?", "id": "compose_form.placeholder" }, { @@ -819,7 +932,7 @@ "id": "compose_form.spoiler_placeholder" }, { - "defaultMessage": "Roar", + "defaultMessage": "Toot", "id": "compose_form.publish" }, { @@ -856,7 +969,7 @@ "id": "emoji_button.search_results" }, { - "defaultMessage": "Monsters", + "defaultMessage": "People", "id": "emoji_button.people" }, { @@ -930,6 +1043,14 @@ "defaultMessage": "Poll duration", "id": "compose_form.poll.duration" }, + { + "defaultMessage": "Change poll to allow multiple choices", + "id": "compose_form.poll.switch_to_multiple" + }, + { + "defaultMessage": "Change poll to allow for a single choice", + "id": "compose_form.poll.switch_to_single" + }, { "defaultMessage": "{number, plural, one {# minute} other {# minutes}}", "id": "intervals.full.minutes" @@ -952,7 +1073,7 @@ "id": "privacy.public.short" }, { - "defaultMessage": "Roar to public timelines", + "defaultMessage": "Post to public timelines", "id": "privacy.public.long" }, { @@ -964,23 +1085,23 @@ "id": "privacy.unlisted.long" }, { - "defaultMessage": "Packmates-only", + "defaultMessage": "Followers-only", "id": "privacy.private.short" }, { - "defaultMessage": "Roar to packmates only", + "defaultMessage": "Post to followers only", "id": "privacy.private.long" }, { - "defaultMessage": "Whisper", + "defaultMessage": "Direct", "id": "privacy.direct.short" }, { - "defaultMessage": "Roar to mentioned creatures only", + "defaultMessage": "Post to mentioned users only", "id": "privacy.direct.long" }, { - "defaultMessage": "Adjust roar privacy", + "defaultMessage": "Adjust status privacy", "id": "privacy.change" } ], @@ -1006,11 +1127,11 @@ "id": "suggestions.header" }, { - "defaultMessage": "Monsters", + "defaultMessage": "People", "id": "search_results.accounts" }, { - "defaultMessage": "Roars", + "defaultMessage": "Toots", "id": "search_results.statuses" }, { @@ -1035,11 +1156,11 @@ "id": "search.placeholder" }, { - "defaultMessage": "Simple text returns roars you have written, admired, repeated, or have been mentioned in, as well as matching creaturenames, display names, and hashtags.", + "defaultMessage": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.", "id": "search_popout.tips.full_text" }, { - "defaultMessage": "Simple text returns matching display names, creaturenames and hashtags", + "defaultMessage": "Simple text returns matching display names, usernames and hashtags", "id": "search_popout.tips.text" }, { @@ -1051,11 +1172,11 @@ "id": "search_popout.tips.hashtag" }, { - "defaultMessage": "creature", + "defaultMessage": "user", "id": "search_popout.tips.user" }, { - "defaultMessage": "roar", + "defaultMessage": "status", "id": "search_popout.tips.status" } ], @@ -1064,7 +1185,7 @@ { "descriptors": [ { - "defaultMessage": "Add media (JPEG, PNG, GIF, WebM, MP4, MOV)", + "defaultMessage": "Add media ({formats})", "id": "upload_button.label" } ], @@ -1073,29 +1194,38 @@ { "descriptors": [ { - "defaultMessage": "Uploading...", + "defaultMessage": "Uploading…", "id": "upload_progress.label" } ], - "path": "app/javascript/mastodon/features/compose/components/upload_progress.json" + "path": "app/javascript/mastodon/features/compose/components/upload_form.json" }, { "descriptors": [ - { - "defaultMessage": "Describe for the visually impaired", - "id": "upload_form.description" - }, { "defaultMessage": "Delete", "id": "upload_form.undo" }, { - "defaultMessage": "Crop", - "id": "upload_form.focus" + "defaultMessage": "Edit", + "id": "upload_form.edit" } ], "path": "app/javascript/mastodon/features/compose/components/upload.json" }, + { + "descriptors": [ + { + "defaultMessage": "Are you sure you want to log out?", + "id": "confirmations.logout.message" + }, + { + "defaultMessage": "Log out", + "id": "confirmations.logout.confirm" + } + ], + "path": "app/javascript/mastodon/features/compose/containers/navigation_container.json" + }, { "descriptors": [ { @@ -1129,7 +1259,7 @@ { "descriptors": [ { - "defaultMessage": "Your account is not {locked}. Anyone can join your pack to view your follower-only roars.", + "defaultMessage": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.", "id": "compose_form.lock_disclaimer" }, { @@ -1137,11 +1267,11 @@ "id": "compose_form.lock_disclaimer.lock" }, { - "defaultMessage": "This roar won't be listed under any hashtag as it is unlisted. Only public roars can be searched by hashtag.", + "defaultMessage": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.", "id": "compose_form.hashtag_warning" }, { - "defaultMessage": "This roar will only be sent to all the mentioned creatures.", + "defaultMessage": "This toot will only be sent to all the mentioned users.", "id": "compose_form.direct_message_warning" }, { @@ -1154,23 +1284,23 @@ { "descriptors": [ { - "defaultMessage": "Main Menu", + "defaultMessage": "Getting started", "id": "getting_started.heading" }, { - "defaultMessage": "Pack", + "defaultMessage": "Home", "id": "tabs_bar.home" }, { - "defaultMessage": "Growls", + "defaultMessage": "Notifications", "id": "tabs_bar.notifications" }, { - "defaultMessage": "World", + "defaultMessage": "Federated timeline", "id": "navigation_bar.public_timeline" }, { - "defaultMessage": "Monsterpit", + "defaultMessage": "Local timeline", "id": "navigation_bar.community_timeline" }, { @@ -1178,12 +1308,20 @@ "id": "navigation_bar.preferences" }, { - "defaultMessage": "Sleep", + "defaultMessage": "Logout", "id": "navigation_bar.logout" }, { - "defaultMessage": "Compose new roar", + "defaultMessage": "Compose new toot", "id": "navigation_bar.compose" + }, + { + "defaultMessage": "Are you sure you want to log out?", + "id": "confirmations.logout.message" + }, + { + "defaultMessage": "Log out", + "id": "confirmations.logout.confirm" } ], "path": "app/javascript/mastodon/features/compose/index.json" @@ -1191,11 +1329,61 @@ { "descriptors": [ { - "defaultMessage": "Whispers", + "defaultMessage": "More", + "id": "status.more" + }, + { + "defaultMessage": "View conversation", + "id": "conversation.open" + }, + { + "defaultMessage": "Reply", + "id": "status.reply" + }, + { + "defaultMessage": "Mark as read", + "id": "conversation.mark_as_read" + }, + { + "defaultMessage": "Delete conversation", + "id": "conversation.delete" + }, + { + "defaultMessage": "Mute conversation", + "id": "status.mute_conversation" + }, + { + "defaultMessage": "Unmute conversation", + "id": "status.unmute_conversation" + }, + { + "defaultMessage": "With {names}", + "id": "conversation.with" + } + ], + "path": "app/javascript/mastodon/features/direct_timeline/components/conversation.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Reply", + "id": "confirmations.reply.confirm" + }, + { + "defaultMessage": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?", + "id": "confirmations.reply.message" + } + ], + "path": "app/javascript/mastodon/features/direct_timeline/containers/conversation_container.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Direct messages", "id": "column.direct" }, { - "defaultMessage": "You don't have any whispers yet. When you send or receive one, it will show up here.", + "defaultMessage": "You don't have any direct messages yet. When you send or receive one, it will show up here.", "id": "empty_column.direct" } ], @@ -1204,7 +1392,81 @@ { "descriptors": [ { - "defaultMessage": "Hidden communities", + "defaultMessage": "Follow", + "id": "account.follow" + }, + { + "defaultMessage": "Unfollow", + "id": "account.unfollow" + }, + { + "defaultMessage": "Awaiting approval", + "id": "account.requested" + }, + { + "defaultMessage": "Unblock @{name}", + "id": "account.unblock" + }, + { + "defaultMessage": "Unmute @{name}", + "id": "account.unmute" + }, + { + "defaultMessage": "Unfollow", + "id": "confirmations.unfollow.confirm" + }, + { + "defaultMessage": "Are you sure you want to unfollow {name}?", + "id": "confirmations.unfollow.message" + }, + { + "defaultMessage": "Toots", + "id": "account.posts" + }, + { + "defaultMessage": "Followers", + "id": "account.followers" + }, + { + "defaultMessage": "Never", + "id": "account.never_active" + }, + { + "defaultMessage": "Last active", + "id": "account.last_status" + } + ], + "path": "app/javascript/mastodon/features/directory/components/account_card.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Browse profiles", + "id": "column.directory" + }, + { + "defaultMessage": "Recently active", + "id": "directory.recently_active" + }, + { + "defaultMessage": "New arrivals", + "id": "directory.new_arrivals" + }, + { + "defaultMessage": "From {domain} only", + "id": "directory.local" + }, + { + "defaultMessage": "From known fediverse", + "id": "directory.federated" + } + ], + "path": "app/javascript/mastodon/features/directory/index.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Hidden domains", "id": "column.domain_blocks" }, { @@ -1221,11 +1483,11 @@ { "descriptors": [ { - "defaultMessage": "Admirations", + "defaultMessage": "Favourites", "id": "column.favourites" }, { - "defaultMessage": "You don't have any admirations yet. When you admire one, it will show up here.", + "defaultMessage": "You don't have any favourite toots yet. When you favourite one, it will show up here.", "id": "empty_column.favourited_statuses" } ], @@ -1234,7 +1496,11 @@ { "descriptors": [ { - "defaultMessage": "No one has admired this roar yet. When someone does, they will show up here.", + "defaultMessage": "Refresh", + "id": "refresh" + }, + { + "defaultMessage": "No one has favourited this toot yet. When someone does, they will show up here.", "id": "empty_column.favourites" } ], @@ -1243,7 +1509,7 @@ { "descriptors": [ { - "defaultMessage": "Accept", + "defaultMessage": "Authorize", "id": "follow_request.authorize" }, { @@ -1256,11 +1522,11 @@ { "descriptors": [ { - "defaultMessage": "New packmates", + "defaultMessage": "Follow requests", "id": "column.follow_requests" }, { - "defaultMessage": "You don't have any join requests yet. When you receive one, it will show up here.", + "defaultMessage": "You don't have any follow requests yet. When you receive one, it will show up here.", "id": "empty_column.follow_requests" } ], @@ -1273,7 +1539,7 @@ "id": "empty_column.account_unavailable" }, { - "defaultMessage": "No one follows this creature yet.", + "defaultMessage": "No one follows this user yet.", "id": "account.followers.empty" } ], @@ -1286,7 +1552,7 @@ "id": "empty_column.account_unavailable" }, { - "defaultMessage": "This creature doesn't follow anyone yet.", + "defaultMessage": "This user doesn't follow anyone yet.", "id": "account.follows.empty" } ], @@ -1295,15 +1561,45 @@ { "descriptors": [ { - "defaultMessage": "Pack", + "defaultMessage": "Close", + "id": "lightbox.close" + }, + { + "defaultMessage": "Previous", + "id": "lightbox.previous" + }, + { + "defaultMessage": "Next", + "id": "lightbox.next" + }, + { + "defaultMessage": "Announcement", + "id": "announcement.announcement" + } + ], + "path": "app/javascript/mastodon/features/getting_started/components/announcements.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Trending now", + "id": "trends.trending_now" + } + ], + "path": "app/javascript/mastodon/features/getting_started/components/trends.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Home", "id": "tabs_bar.home" }, { - "defaultMessage": "Growls", + "defaultMessage": "Notifications", "id": "tabs_bar.notifications" }, { - "defaultMessage": "World", + "defaultMessage": "Federated timeline", "id": "navigation_bar.public_timeline" }, { @@ -1311,39 +1607,43 @@ "id": "column_subheading.settings" }, { - "defaultMessage": "Monsterpit", + "defaultMessage": "Local timeline", "id": "navigation_bar.community_timeline" }, { - "defaultMessage": "Whispers", + "defaultMessage": "Direct messages", "id": "navigation_bar.direct" }, + { + "defaultMessage": "Bookmarks", + "id": "navigation_bar.bookmarks" + }, { "defaultMessage": "Preferences", "id": "navigation_bar.preferences" }, { - "defaultMessage": "New packmates", + "defaultMessage": "Follow requests", "id": "navigation_bar.follow_requests" }, { - "defaultMessage": "Admirations", + "defaultMessage": "Favourites", "id": "navigation_bar.favourites" }, { - "defaultMessage": "Blocked creatures", + "defaultMessage": "Blocked users", "id": "navigation_bar.blocks" }, { - "defaultMessage": "Hidden communities", + "defaultMessage": "Hidden domains", "id": "navigation_bar.domain_blocks" }, { - "defaultMessage": "Muted creatures", + "defaultMessage": "Muted users", "id": "navigation_bar.mutes" }, { - "defaultMessage": "Pins", + "defaultMessage": "Pinned toots", "id": "navigation_bar.pins" }, { @@ -1430,7 +1730,7 @@ "id": "home.column_settings.basic" }, { - "defaultMessage": "Show repeats", + "defaultMessage": "Show boosts", "id": "home.column_settings.show_reblogs" }, { @@ -1443,11 +1743,19 @@ { "descriptors": [ { - "defaultMessage": "Pack", + "defaultMessage": "Home", "id": "column.home" }, { - "defaultMessage": "Your home timeline is empty! Visit {public} or use search to get started and meet other creatures.", + "defaultMessage": "Show announcements", + "id": "home.show_announcements" + }, + { + "defaultMessage": "Hide announcements", + "id": "home.hide_announcements" + }, + { + "defaultMessage": "Your home timeline is empty! Visit {public} or use search to get started and meet other users.", "id": "empty_column.home" }, { @@ -1472,11 +1780,11 @@ "id": "introduction.welcome.action" }, { - "defaultMessage": "Pack", + "defaultMessage": "Home", "id": "introduction.federation.home.headline" }, { - "defaultMessage": "Roars from monsters in your pack will appear in your home feed. You can follow anyone on any server!", + "defaultMessage": "Posts from people you follow will appear in your home feed. You can follow anyone on any server!", "id": "introduction.federation.home.text" }, { @@ -1484,15 +1792,15 @@ "id": "introduction.federation.local.headline" }, { - "defaultMessage": "Public roars from monsters on the same server as you will appear in the Monsterpit timeline.", + "defaultMessage": "Public posts from people on the same server as you will appear in the local timeline.", "id": "introduction.federation.local.text" }, { - "defaultMessage": "World", + "defaultMessage": "Federated", "id": "introduction.federation.federated.headline" }, { - "defaultMessage": "Public roars from other servers of the fediverse will appear in the world timeline.", + "defaultMessage": "Public posts from other servers of the fediverse will appear in the federated timeline.", "id": "introduction.federation.federated.text" }, { @@ -1504,27 +1812,27 @@ "id": "introduction.interactions.reply.headline" }, { - "defaultMessage": "You can reply to other monsters's and your own roars, which will chain them together in a conversation.", + "defaultMessage": "You can reply to other people's and your own toots, which will chain them together in a conversation.", "id": "introduction.interactions.reply.text" }, { - "defaultMessage": "Repeat", + "defaultMessage": "Boost", "id": "introduction.interactions.reblog.headline" }, { - "defaultMessage": "You can share other monsters's roars with your packmates by repeating them.", + "defaultMessage": "You can share other people's toots with your followers by boosting them.", "id": "introduction.interactions.reblog.text" }, { - "defaultMessage": "Admire", + "defaultMessage": "Favourite", "id": "introduction.interactions.favourite.headline" }, { - "defaultMessage": "You can save a roar for later, and let the author know that you liked it, by admiring it.", + "defaultMessage": "You can save a toot for later, and let the author know that you liked it, by favouriting it.", "id": "introduction.interactions.favourite.text" }, { - "defaultMessage": "Finish roar-orial!", + "defaultMessage": "Finish toot-orial!", "id": "introduction.interactions.action" } ], @@ -1557,17 +1865,21 @@ "id": "keyboard_shortcuts.profile" }, { - "defaultMessage": "to admire", + "defaultMessage": "to favourite", "id": "keyboard_shortcuts.favourite" }, { - "defaultMessage": "to repeat", + "defaultMessage": "to boost", "id": "keyboard_shortcuts.boost" }, { - "defaultMessage": "to open roar", + "defaultMessage": "to open status", "id": "keyboard_shortcuts.enter" }, + { + "defaultMessage": "to open media", + "id": "keyboard_shortcuts.open_media" + }, { "defaultMessage": "to show/hide text behind CW", "id": "keyboard_shortcuts.toggle_hidden" @@ -1585,7 +1897,7 @@ "id": "keyboard_shortcuts.down" }, { - "defaultMessage": "to focus a roar in one of the columns", + "defaultMessage": "to focus a status in one of the columns", "id": "keyboard_shortcuts.column" }, { @@ -1593,7 +1905,7 @@ "id": "keyboard_shortcuts.compose" }, { - "defaultMessage": "to start a brand new roar", + "defaultMessage": "to start a brand new toot", "id": "keyboard_shortcuts.toot" }, { @@ -1617,15 +1929,15 @@ "id": "keyboard_shortcuts.notifications" }, { - "defaultMessage": "to open Monsterpit timeline", + "defaultMessage": "to open local timeline", "id": "keyboard_shortcuts.local" }, { - "defaultMessage": "to open world timeline", + "defaultMessage": "to open federated timeline", "id": "keyboard_shortcuts.federated" }, { - "defaultMessage": "to open whispers column", + "defaultMessage": "to open direct messages column", "id": "keyboard_shortcuts.direct" }, { @@ -1633,11 +1945,11 @@ "id": "keyboard_shortcuts.start" }, { - "defaultMessage": "to open admirations list", + "defaultMessage": "to open favourites list", "id": "keyboard_shortcuts.favourites" }, { - "defaultMessage": "to open pins list", + "defaultMessage": "to open pinned toots list", "id": "keyboard_shortcuts.pinned" }, { @@ -1645,15 +1957,15 @@ "id": "keyboard_shortcuts.my_profile" }, { - "defaultMessage": "to open blocked creatures list", + "defaultMessage": "to open blocked users list", "id": "keyboard_shortcuts.blocked" }, { - "defaultMessage": "to open muted creatures list", + "defaultMessage": "to open muted users list", "id": "keyboard_shortcuts.muted" }, { - "defaultMessage": "to open join requests list", + "defaultMessage": "to open follow requests list", "id": "keyboard_shortcuts.requests" }, { @@ -1701,7 +2013,7 @@ { "descriptors": [ { - "defaultMessage": "Search among monsters in your pack", + "defaultMessage": "Search among people you follow", "id": "lists.search" } ], @@ -1726,7 +2038,7 @@ "id": "lists.delete" }, { - "defaultMessage": "There is nothing in this list yet. When members of this list roar new roars, they will appear here.", + "defaultMessage": "There is nothing in this list yet. When members of this list post new statuses, they will appear here.", "id": "empty_column.list" } ], @@ -1765,11 +2077,11 @@ { "descriptors": [ { - "defaultMessage": "Muted creatures", + "defaultMessage": "Muted users", "id": "column.mutes" }, { - "defaultMessage": "You haven't muted any creatures yet.", + "defaultMessage": "You haven't muted any users yet.", "id": "empty_column.mutes" } ], @@ -1778,7 +2090,7 @@ { "descriptors": [ { - "defaultMessage": "Clear growls", + "defaultMessage": "Clear notifications", "id": "notifications.clear" } ], @@ -1810,32 +2122,28 @@ "defaultMessage": "Push notifications", "id": "notifications.column_settings.push" }, - { - "defaultMessage": "Basic", - "id": "home.column_settings.basic" - }, - { - "defaultMessage": "Update in real-time", - "id": "home.column_settings.update_live" - }, { "defaultMessage": "Quick filter bar", "id": "notifications.column_settings.filter_bar.category" }, { - "defaultMessage": "New packmate:", + "defaultMessage": "New followers:", "id": "notifications.column_settings.follow" }, { - "defaultMessage": "Admirations:", + "defaultMessage": "New follow requests:", + "id": "notifications.column_settings.follow_request" + }, + { + "defaultMessage": "Favourites:", "id": "notifications.column_settings.favourite" }, { - "defaultMessage": "Includes:", + "defaultMessage": "Mentions:", "id": "notifications.column_settings.mention" }, { - "defaultMessage": "Repeats:", + "defaultMessage": "Boosts:", "id": "notifications.column_settings.reblog" }, { @@ -1848,15 +2156,15 @@ { "descriptors": [ { - "defaultMessage": "Includes", + "defaultMessage": "Mentions", "id": "notifications.filter.mentions" }, { - "defaultMessage": "Admirations", + "defaultMessage": "Favourites", "id": "notifications.filter.favourites" }, { - "defaultMessage": "Repeats", + "defaultMessage": "Boosts", "id": "notifications.filter.boosts" }, { @@ -1864,7 +2172,7 @@ "id": "notifications.filter.polls" }, { - "defaultMessage": "In packs", + "defaultMessage": "Follows", "id": "notifications.filter.follows" }, { @@ -1877,20 +2185,41 @@ { "descriptors": [ { - "defaultMessage": "{name} joined your pack", - "id": "notification.follow" + "defaultMessage": "Authorize", + "id": "follow_request.authorize" }, { - "defaultMessage": "{name} admired your roar", + "defaultMessage": "Reject", + "id": "follow_request.reject" + } + ], + "path": "app/javascript/mastodon/features/notifications/components/follow_request.json" + }, + { + "descriptors": [ + { + "defaultMessage": "{name} favourited your status", "id": "notification.favourite" }, { - "defaultMessage": "{name} repeated your roar", - "id": "notification.reblog" + "defaultMessage": "{name} followed you", + "id": "notification.follow" + }, + { + "defaultMessage": "Your poll has ended", + "id": "notification.own_poll" }, { "defaultMessage": "A poll you have voted in has ended", "id": "notification.poll" + }, + { + "defaultMessage": "{name} boosted your status", + "id": "notification.reblog" + }, + { + "defaultMessage": "{name} has requested to follow you", + "id": "notification.follow_request" } ], "path": "app/javascript/mastodon/features/notifications/components/notification.json" @@ -1898,11 +2227,11 @@ { "descriptors": [ { - "defaultMessage": "Are you sure you want to permanently clear all your growls?", + "defaultMessage": "Are you sure you want to permanently clear all your notifications?", "id": "notifications.clear_confirmation" }, { - "defaultMessage": "Clear growls", + "defaultMessage": "Clear notifications", "id": "notifications.clear" } ], @@ -1911,7 +2240,7 @@ { "descriptors": [ { - "defaultMessage": "Growls", + "defaultMessage": "Notifications", "id": "column.notifications" }, { @@ -1924,7 +2253,7 @@ { "descriptors": [ { - "defaultMessage": "Pinned roar", + "defaultMessage": "Pinned toot", "id": "column.pins" } ], @@ -1933,11 +2262,11 @@ { "descriptors": [ { - "defaultMessage": "World", + "defaultMessage": "Federated timeline", "id": "column.public" }, { - "defaultMessage": "There is nothing here! Write something publicly, or manually follow creatures from other servers to fill it up", + "defaultMessage": "There is nothing here! Write something publicly, or manually follow users from other servers to fill it up", "id": "empty_column.public" } ], @@ -1946,7 +2275,11 @@ { "descriptors": [ { - "defaultMessage": "No one has repeated this roar yet. When someone does, they will show up here.", + "defaultMessage": "Refresh", + "id": "refresh" + }, + { + "defaultMessage": "No one has boosted this toot yet. When someone does, they will show up here.", "id": "status.reblogs.empty" } ], @@ -1959,15 +2292,15 @@ "id": "status.delete" }, { - "defaultMessage": "Delete & edit", + "defaultMessage": "Delete & re-draft", "id": "status.redraft" }, { - "defaultMessage": "Whisper to @{name}", + "defaultMessage": "Direct message @{name}", "id": "status.direct" }, { - "defaultMessage": "Include @{name}", + "defaultMessage": "Mention @{name}", "id": "status.mention" }, { @@ -1975,25 +2308,33 @@ "id": "status.reply" }, { - "defaultMessage": "Repeat", + "defaultMessage": "Boost", "id": "status.reblog" }, { - "defaultMessage": "Repeat to original audience", + "defaultMessage": "Boost to original audience", "id": "status.reblog_private" }, { - "defaultMessage": "Unrepeat", + "defaultMessage": "Unboost", "id": "status.cancel_reblog_private" }, { - "defaultMessage": "This roar cannot be repeated", + "defaultMessage": "This post cannot be boosted", "id": "status.cannot_reblog" }, { - "defaultMessage": "Admire", + "defaultMessage": "Favourite", "id": "status.favourite" }, + { + "defaultMessage": "Bookmark", + "id": "status.bookmark" + }, + { + "defaultMessage": "More", + "id": "status.more" + }, { "defaultMessage": "Mute @{name}", "id": "status.mute" @@ -2031,16 +2372,32 @@ "id": "status.embed" }, { - "defaultMessage": "Moderate @{name}", + "defaultMessage": "Open moderation interface for @{name}", "id": "status.admin_account" }, { - "defaultMessage": "Moderate roar", + "defaultMessage": "Open this status in the moderation interface", "id": "status.admin_status" }, { - "defaultMessage": "Copy link to roar", + "defaultMessage": "Copy link to status", "id": "status.copy" + }, + { + "defaultMessage": "Hide everything from {domain}", + "id": "account.block_domain" + }, + { + "defaultMessage": "Unhide {domain}", + "id": "account.unblock_domain" + }, + { + "defaultMessage": "Unmute @{name}", + "id": "account.unmute" + }, + { + "defaultMessage": "Unblock @{name}", + "id": "account.unblock" } ], "path": "app/javascript/mastodon/features/status/components/action_bar.json" @@ -2052,21 +2409,17 @@ "id": "confirmations.delete.confirm" }, { - "defaultMessage": "Are you sure you want to delete this roar?", + "defaultMessage": "Are you sure you want to delete this status?", "id": "confirmations.delete.message" }, { - "defaultMessage": "Delete & edit", + "defaultMessage": "Delete & redraft", "id": "confirmations.redraft.confirm" }, { - "defaultMessage": "Are you sure you want to delete this roar and edit it? Admirations and repeats will be lost, & growls to the original roar will be orphaned.", + "defaultMessage": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.", "id": "confirmations.redraft.message" }, - { - "defaultMessage": "Block", - "id": "confirmations.block.confirm" - }, { "defaultMessage": "Reply", "id": "confirmations.reply.confirm" @@ -2074,14 +2427,6 @@ { "defaultMessage": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?", "id": "confirmations.reply.message" - }, - { - "defaultMessage": "Block & Report", - "id": "confirmations.block.block_and_report" - }, - { - "defaultMessage": "Are you sure you want to block {name}?", - "id": "confirmations.block.message" } ], "path": "app/javascript/mastodon/features/status/containers/detailed_status_container.json" @@ -2093,27 +2438,23 @@ "id": "confirmations.delete.confirm" }, { - "defaultMessage": "Are you sure you want to delete this roar?", + "defaultMessage": "Are you sure you want to delete this status?", "id": "confirmations.delete.message" }, { - "defaultMessage": "Delete & edit", + "defaultMessage": "Delete & redraft", "id": "confirmations.redraft.confirm" }, { - "defaultMessage": "Are you sure you want to delete this roar and edit it? Admirations and repeats will be lost, & growls to the original roar will be orphaned.", + "defaultMessage": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.", "id": "confirmations.redraft.message" }, { - "defaultMessage": "Block", - "id": "confirmations.block.confirm" - }, - { - "defaultMessage": "Reveal all", + "defaultMessage": "Show more for all", "id": "status.show_more_all" }, { - "defaultMessage": "Hide all", + "defaultMessage": "Show less for all", "id": "status.show_less_all" }, { @@ -2129,12 +2470,12 @@ "id": "confirmations.reply.message" }, { - "defaultMessage": "Block & Report", - "id": "confirmations.block.block_and_report" + "defaultMessage": "Hide entire domain", + "id": "confirmations.domain_block.confirm" }, { - "defaultMessage": "Are you sure you want to block {name}?", - "id": "confirmations.block.message" + "defaultMessage": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.", + "id": "confirmations.domain_block.message" } ], "path": "app/javascript/mastodon/features/status/index.json" @@ -2142,11 +2483,41 @@ { "descriptors": [ { - "defaultMessage": "Unrepeat", + "defaultMessage": "View context", + "id": "lightbox.view_context" + } + ], + "path": "app/javascript/mastodon/features/ui/components/audio_modal.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Are you sure you want to block {name}?", + "id": "confirmations.block.message" + }, + { + "defaultMessage": "Cancel", + "id": "confirmation_modal.cancel" + }, + { + "defaultMessage": "Block & Report", + "id": "confirmations.block.block_and_report" + }, + { + "defaultMessage": "Block", + "id": "confirmations.block.confirm" + } + ], + "path": "app/javascript/mastodon/features/ui/components/block_modal.json" + }, + { + "descriptors": [ + { + "defaultMessage": "Unboost", "id": "status.cancel_reblog_private" }, { - "defaultMessage": "Repeat", + "defaultMessage": "Boost", "id": "status.reblog" }, { @@ -2156,6 +2527,19 @@ ], "path": "app/javascript/mastodon/features/ui/components/boost_modal.json" }, + { + "descriptors": [ + { + "defaultMessage": "Favourite", + "id": "status.favourite" + }, + { + "defaultMessage": "You can press {combo} to skip this next time", + "id": "favourite_modal.combo" + } + ], + "path": "app/javascript/mastodon/features/ui/components/favourite_modal.json" + }, { "descriptors": [ { @@ -2193,7 +2577,7 @@ { "descriptors": [ { - "defaultMessage": "Roar", + "defaultMessage": "Toot", "id": "compose_form.publish" } ], @@ -2210,12 +2594,16 @@ }, { "descriptors": [ + { + "defaultMessage": "Close", + "id": "lightbox.close" + }, { "defaultMessage": "Embed", "id": "status.embed" }, { - "defaultMessage": "Embed this roar on your website by copying the code below.", + "defaultMessage": "Embed this status on your website by copying the code below.", "id": "embed.instructions" }, { @@ -2225,6 +2613,55 @@ ], "path": "app/javascript/mastodon/features/ui/components/embed_modal.json" }, + { + "descriptors": [ + { + "defaultMessage": "Close", + "id": "lightbox.close" + }, + { + "defaultMessage": "Apply", + "id": "upload_modal.apply" + }, + { + "defaultMessage": "A quick brown fox jumps over the lazy dog", + "id": "upload_modal.description_placeholder" + }, + { + "defaultMessage": "Describe for people with hearing loss", + "id": "upload_form.audio_description" + }, + { + "defaultMessage": "Describe for people with hearing loss or visual impairment", + "id": "upload_form.video_description" + }, + { + "defaultMessage": "Describe for the visually impaired", + "id": "upload_form.description" + }, + { + "defaultMessage": "Edit media", + "id": "upload_modal.edit_media" + }, + { + "defaultMessage": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.", + "id": "upload_modal.hint" + }, + { + "defaultMessage": "Analyzing picture…", + "id": "upload_modal.analyzing_picture" + }, + { + "defaultMessage": "Detect text from picture", + "id": "upload_modal.detect_text" + }, + { + "defaultMessage": "Preview ({ratio})", + "id": "upload_modal.preview_label" + } + ], + "path": "app/javascript/mastodon/features/ui/components/focal_point_modal.json" + }, { "descriptors": [ { @@ -2236,6 +2673,14 @@ }, { "descriptors": [ + { + "defaultMessage": "Are you sure you want to log out?", + "id": "confirmations.logout.message" + }, + { + "defaultMessage": "Log out", + "id": "confirmations.logout.confirm" + }, { "defaultMessage": "Invite people", "id": "getting_started.invite" @@ -2307,7 +2752,11 @@ "id": "confirmations.mute.message" }, { - "defaultMessage": "Hide notifications from this creature?", + "defaultMessage": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.", + "id": "confirmations.mute.explanation" + }, + { + "defaultMessage": "Hide notifications from this user?", "id": "mute_modal.hide_notifications" }, { @@ -2347,10 +2796,18 @@ "defaultMessage": "Favourites", "id": "navigation_bar.favourites" }, + { + "defaultMessage": "Bookmarks", + "id": "navigation_bar.bookmarks" + }, { "defaultMessage": "Lists", "id": "navigation_bar.lists" }, + { + "defaultMessage": "Profile directory", + "id": "getting_started.directory" + }, { "defaultMessage": "Preferences", "id": "navigation_bar.preferences" @@ -2398,11 +2855,11 @@ { "descriptors": [ { - "defaultMessage": "Pack", + "defaultMessage": "Home", "id": "tabs_bar.home" }, { - "defaultMessage": "Growls", + "defaultMessage": "Notifications", "id": "tabs_bar.notifications" }, { @@ -2410,7 +2867,7 @@ "id": "tabs_bar.local_timeline" }, { - "defaultMessage": "World", + "defaultMessage": "Federated", "id": "tabs_bar.federated_timeline" }, { @@ -2441,7 +2898,7 @@ { "descriptors": [ { - "defaultMessage": "Your draft will be lost if you leave Monsterpit.", + "defaultMessage": "Your draft will be lost if you leave Mastodon.", "id": "ui.beforeunload" } ], @@ -2470,7 +2927,7 @@ "id": "video.hide" }, { - "defaultMessage": "Open video", + "defaultMessage": "Expand video", "id": "video.expand" }, { @@ -2485,6 +2942,10 @@ "defaultMessage": "Exit full screen", "id": "video.exit_fullscreen" }, + { + "defaultMessage": "Download file", + "id": "video.download" + }, { "defaultMessage": "Sensitive content", "id": "status.sensitive_warning" diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json index 9d6124e36..e25199905 100644 --- a/app/javascript/mastodon/locales/en.json +++ b/app/javascript/mastodon/locales/en.json @@ -1,48 +1,50 @@ { "account.add_or_remove_from_list": "Add or Remove from lists", "account.badges.bot": "Bot", - "account.badges.adult": "🔞 Adult content", - "account.badges.gently": "Gentlies kobolds", - "account.badges.kobold": "Gently the kobold", - "account.badges.locked": "🔒 Locked", - "account.badges.froze": "❄️ Frozen by admin", + "account.badges.group": "Group", "account.block": "Block @{name}", - "account.block_domain": "Hide {domain}", + "account.block_domain": "Hide everything from {domain}", "account.blocked": "Blocked", - "account.direct": "Whisper to @{name}", + "account.cancel_follow_request": "Cancel follow request", + "account.direct": "Direct message @{name}", "account.domain_blocked": "Domain hidden", "account.edit_profile": "Edit profile", "account.endorse": "Feature on profile", - "account.follow": "Join pack", - "account.followers": "Packmates", - "account.followers.empty": "No one follows this creature yet.", - "account.follows": "In packs", - "account.follows.empty": "This creature doesn't follow anyone yet.", - "account.follows_you": "In your pack", - "account.hide_reblogs": "Hide repeats from @{name}", + "account.follow": "Follow", + "account.followers": "Followers", + "account.followers.empty": "No one follows this user yet.", + "account.follows": "Follows", + "account.follows.empty": "This user doesn't follow anyone yet.", + "account.follows_you": "Follows you", + "account.hide_reblogs": "Hide boosts from @{name}", + "account.last_status": "Last active", "account.link_verified_on": "Ownership of this link was checked on {date}", - "account.locked_info": "This account is locked. The owner manually reviews who can join their pack.", + "account.locked_info": "This account privacy status is set to locked. The owner manually reviews who can follow them.", "account.media": "Media", - "account.mention": "Address @{name}", + "account.mention": "Mention @{name}", "account.moved_to": "{name} has moved to:", "account.mute": "Mute @{name}", "account.mute_notifications": "Mute notifications from @{name}", "account.muted": "Muted", - "account.posts": "Roars", - "account.reblogs": "Repeats", - "account.posts_with_replies": "Roars & growls", + "account.never_active": "Never", + "account.posts": "Toots", + "account.posts_with_replies": "Toots and replies", "account.report": "Report @{name}", - "account.requested": "Awaiting approval. Click to cancel join request", + "account.requested": "Awaiting approval. Click to cancel follow request", "account.share": "Share @{name}'s profile", - "account.show_reblogs": "Show repeats from @{name}", + "account.show_reblogs": "Show boosts from @{name}", "account.unblock": "Unblock @{name}", "account.unblock_domain": "Unhide {domain}", "account.unendorse": "Don't feature on profile", - "account.unfollow": "Leave pack", + "account.unfollow": "Unfollow", "account.unmute": "Unmute @{name}", "account.unmute_notifications": "Unmute notifications from @{name}", + "alert.rate_limited.message": "Please retry after {retry_time, time, medium}.", + "alert.rate_limited.title": "Rate limited", "alert.unexpected.message": "An unexpected error occurred.", "alert.unexpected.title": "Oops!", + "announcement.announcement": "Announcement", + "autosuggest_hashtag.per_week": "{count} per week", "boost_modal.combo": "You can press {combo} to skip this next time", "bundle_column_error.body": "Something went wrong while loading this component.", "bundle_column_error.retry": "Try again", @@ -50,19 +52,20 @@ "bundle_modal_error.close": "Close", "bundle_modal_error.message": "Something went wrong while loading this component.", "bundle_modal_error.retry": "Try again", - "column.blocks": "Blocked creatures", - "column.community": "Monsterpit", - "column.direct": "Whispers", - "column.domain_blocks": "Hidden communities", - "column.favourites": "Admirations", - "column.follow_requests": "New packmates", - "column.toot": "Roars & growls", - "column.home": "Pack", + "column.blocks": "Blocked users", + "column.bookmarks": "Bookmarks", + "column.community": "Local timeline", + "column.direct": "Direct messages", + "column.directory": "Browse profiles", + "column.domain_blocks": "Hidden domains", + "column.favourites": "Favourites", + "column.follow_requests": "Follow requests", + "column.home": "Home", "column.lists": "Lists", - "column.mutes": "Muted creatures", - "column.notifications": "Growls", - "column.pins": "Pins", - "column.public": "World", + "column.mutes": "Muted users", + "column.notifications": "Notifications", + "column.pins": "Pinned toots", + "column.public": "Federated timeline", "column_back_button.label": "Back", "column_header.hide_settings": "Hide settings", "column_header.moveLeft_settings": "Move column to the left", @@ -70,20 +73,25 @@ "column_header.pin": "Pin", "column_header.show_settings": "Show settings", "column_header.unpin": "Unpin", + "column.heading": "Misc", + "column.subheading": "Miscellaneous options", + "column_subheading.lists": "Lists", + "column_subheading.navigation": "Navigation", "column_subheading.settings": "Settings", "community.column_settings.media_only": "Media Only", - "compose_form.direct_message_warning": "This roar will only be sent to the mentioned creatures.", + "compose_form.direct_message_warning": "This toot will only be sent to the mentioned users.", "compose_form.direct_message_warning_learn_more": "Learn more", - "compose_form.hashtag_warning": "This roar won't be listed under any hashtag as it is unlisted. Only public roars can be searched by hashtag.", - "compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can join your pack to view your follower-only roars.", + "compose_form.hashtag_warning": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.", + "compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.", "compose_form.lock_disclaimer.lock": "locked", - "compose_form.placeholder": "Roar shamelessly!", - "compose_form.placeholder_as": "Signing as {signature}.\nRoar shamelessly!", - "compose_form.poll.add_option": "Add choice", + "compose_form.placeholder": "What's on your mind?", + "compose_form.poll.add_option": "Add a choice", "compose_form.poll.duration": "Poll duration", "compose_form.poll.option_placeholder": "Choice {number}", "compose_form.poll.remove_option": "Remove this choice", - "compose_form.publish": "Roar", + "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices", + "compose_form.poll.switch_to_single": "Change poll to allow for a single choice", + "compose_form.publish": "Toot", "compose_form.publish_loud": "{publish}!", "compose_form.sensitive.hide": "Mark media as sensitive", "compose_form.sensitive.marked": "Media is marked as sensitive", @@ -96,20 +104,31 @@ "confirmations.block.confirm": "Block", "confirmations.block.message": "Are you sure you want to block {name}?", "confirmations.delete.confirm": "Delete", - "confirmations.delete.message": "Are you sure you want to delete this roar?", + "confirmations.delete.message": "Are you sure you want to delete this status?", "confirmations.delete_list.confirm": "Delete", "confirmations.delete_list.message": "Are you sure you want to permanently delete this list?", "confirmations.domain_block.confirm": "Hide entire domain", - "confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? Your packmates from that domain will be removed.", + "confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.", + "confirmations.logout.confirm": "Log out", + "confirmations.logout.message": "Are you sure you want to log out?", "confirmations.mute.confirm": "Mute", + "confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.", "confirmations.mute.message": "Are you sure you want to mute {name}?", - "confirmations.redraft.confirm": "Delete & edit", - "confirmations.redraft.message": "Are you sure you want to delete this roar and edit it? Admirations and repeats will be lost, & growls to the original roar will be orphaned.", + "confirmations.redraft.confirm": "Delete & redraft", + "confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.", "confirmations.reply.confirm": "Reply", "confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?", - "confirmations.unfollow.confirm": "Leave pack", - "confirmations.unfollow.message": "Are you sure you want to leave the pack of {name}?", - "embed.instructions": "Embed this roar on your website by copying the code below.", + "confirmations.unfollow.confirm": "Unfollow", + "confirmations.unfollow.message": "Are you sure you want to unfollow {name}?", + "conversation.delete": "Delete conversation", + "conversation.mark_as_read": "Mark as read", + "conversation.open": "View conversation", + "conversation.with": "With {names}", + "directory.federated": "From known fediverse", + "directory.local": "From {domain} only", + "directory.new_arrivals": "New arrivals", + "directory.recently_active": "Recently active", + "embed.instructions": "Embed this status on your website by copying the code below.", "embed.preview": "Here is what it will look like:", "emoji_button.activity": "Activity", "emoji_button.custom": "Custom", @@ -119,38 +138,43 @@ "emoji_button.nature": "Nature", "emoji_button.not_found": "No emojos!! (╯°□°)╯︵ ┻━┻", "emoji_button.objects": "Objects", - "emoji_button.people": "Monsters", + "emoji_button.people": "People", "emoji_button.recent": "Frequently used", "emoji_button.search": "Search...", "emoji_button.search_results": "Search results", "emoji_button.symbols": "Symbols", "emoji_button.travel": "Travel & Places", - "empty_column.account_timeline": "No roars here!", + "empty_column.account_timeline": "No toots here!", "empty_column.account_unavailable": "Profile unavailable", - "empty_column.blocks": "You haven't blocked any creatures yet.", - "empty_column.community": "The Monsterpit timeline is empty. Write something publicly to get the ball rolling!", - "empty_column.direct": "You don't have any whispers yet. When you send or receive one, it will show up here.", + "empty_column.blocks": "You haven't blocked any users yet.", + "empty_column.bookmarked_statuses": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.", + "empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!", + "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.", "empty_column.domain_blocks": "There are no hidden domains yet.", - "empty_column.favourited_statuses": "You don't have any admirations yet. When you admire one, it will show up here.", - "empty_column.favourites": "No one has admired this roar yet. When someone does, they will show up here.", - "empty_column.follow_requests": "You don't have any join requests yet. When you receive one, it will show up here.", + "empty_column.favourited_statuses": "You don't have any favourite toots yet. When you favourite one, it will show up here.", + "empty_column.favourites": "No one has favourited this toot yet. When someone does, they will show up here.", + "empty_column.follow_requests": "You don't have any follow requests yet. When you receive one, it will show up here.", "empty_column.hashtag": "There is nothing in this hashtag yet.", - "empty_column.home": "Your home timeline is empty! Visit {public} or use search to get started and meet other creatures.", + "empty_column.home": "Your home timeline is empty! Visit {public} or use search to get started and meet other users.", "empty_column.home.public_timeline": "the public timeline", - "empty_column.list": "There is nothing in this list yet. When members of this list roar new roars, they will appear here.", + "empty_column.list": "There is nothing in this list yet. When members of this list post new statuses, they will appear here.", "empty_column.lists": "You don't have any lists yet. When you create one, it will show up here.", - "empty_column.mutes": "You haven't muted any creatures yet.", + "empty_column.mutes": "You haven't muted any users yet.", "empty_column.notifications": "You don't have any notifications yet. Interact with others to start the conversation.", - "empty_column.public": "There is nothing here! Write something publicly, or manually follow creatures from other servers to fill it up", - "follow_request.authorize": "Accept", + "empty_column.public": "There is nothing here! Write something publicly, or manually follow users from other servers to fill it up", + "error.unexpected_crash.explanation": "Due to a bug in our code or a browser compatibility issue, this page could not be displayed correctly.", + "error.unexpected_crash.next_steps": "Try refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.", + "errors.unexpected_crash.copy_stacktrace": "Copy stacktrace to clipboard", + "errors.unexpected_crash.report_issue": "Report issue", + "follow_request.authorize": "Authorize", "follow_request.reject": "Reject", "getting_started.developers": "Developers", "getting_started.directory": "Profile directory", "getting_started.documentation": "Documentation", - "getting_started.heading": "Main Menu", - "getting_started.invite": "Invite monsters", - "getting_started.open_source_notice": "Monsterpit is open source software. You can contribute or report issues on GitHub at {github}.", - "getting_started.security": "Security", + "getting_started.heading": "Getting started", + "getting_started.invite": "Invite people", + "getting_started.open_source_notice": "Mastodon is open source software. You can contribute or report issues on GitHub at {github}.", + "getting_started.security": "Account settings", "getting_started.terms": "Terms of service", "hashtag.column_header.tag_mode.all": "and {additional}", "hashtag.column_header.tag_mode.any": "or {additional}", @@ -162,59 +186,61 @@ "hashtag.column_settings.tag_mode.none": "None of these", "hashtag.column_settings.tag_toggle": "Include additional tags for this column", "home.column_settings.basic": "Basic", - "home.column_settings.show_reblogs": "Show repeats", + "home.column_settings.show_reblogs": "Show boosts", "home.column_settings.show_replies": "Show replies", - "home.column_settings.update_live": "Update in real-time", + "home.hide_announcements": "Hide announcements", + "home.show_announcements": "Show announcements", "intervals.full.days": "{number, plural, one {# day} other {# days}}", "intervals.full.hours": "{number, plural, one {# hour} other {# hours}}", "intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}", "introduction.federation.action": "Next", - "introduction.federation.federated.headline": "World", - "introduction.federation.federated.text": "Public roars from other servers of the fediverse will appear in the world timeline.", - "introduction.federation.home.headline": "Pack", - "introduction.federation.home.text": "Roars from monsters in your pack will appear in your home feed. You can follow anyone on any server!", + "introduction.federation.federated.headline": "Federated", + "introduction.federation.federated.text": "Public posts from other servers of the fediverse will appear in the federated timeline.", + "introduction.federation.home.headline": "Home", + "introduction.federation.home.text": "Posts from people you follow will appear in your home feed. You can follow anyone on any server!", "introduction.federation.local.headline": "Local", - "introduction.federation.local.text": "Public roars from monsters on the same server as you will appear in the Monsterpit timeline.", + "introduction.federation.local.text": "Public posts from people on the same server as you will appear in the local timeline.", "introduction.interactions.action": "Finish tutorial!", - "introduction.interactions.favourite.headline": "Admire", - "introduction.interactions.favourite.text": "You can save a roar for later, and let the author know that you liked it, by admiring it.", - "introduction.interactions.reblog.headline": "Repeat", - "introduction.interactions.reblog.text": "You can share other monsters's roars with your packmates by repeating them.", + "introduction.interactions.favourite.headline": "Favourite", + "introduction.interactions.favourite.text": "You can save a toot for later, and let the author know that you liked it, by favouriting it.", + "introduction.interactions.reblog.headline": "Boost", + "introduction.interactions.reblog.text": "You can share other people's toots with your followers by boosting them.", "introduction.interactions.reply.headline": "Reply", - "introduction.interactions.reply.text": "You can reply to other monsters's and your own roars, which will chain them together in a conversation.", + "introduction.interactions.reply.text": "You can reply to other people's and your own toots, which will chain them together in a conversation.", "introduction.welcome.action": "Let's go!", "introduction.welcome.headline": "First steps", "introduction.welcome.text": "Welcome to the fediverse! In a few moments, you'll be able to broadcast messages and talk to your friends across a wide variety of servers. But this server, {domain}, is special—it hosts your profile, so remember its name.", "keyboard_shortcuts.back": "to navigate back", - "keyboard_shortcuts.blocked": "to open blocked creatures list", - "keyboard_shortcuts.boost": "to repeat", - "keyboard_shortcuts.column": "to focus a roar in one of the columns", + "keyboard_shortcuts.blocked": "to open blocked users list", + "keyboard_shortcuts.boost": "to boost", + "keyboard_shortcuts.column": "to focus a status in one of the columns", "keyboard_shortcuts.compose": "to focus the compose textarea", "keyboard_shortcuts.description": "Description", - "keyboard_shortcuts.direct": "to open whispers column", + "keyboard_shortcuts.direct": "to open direct messages column", "keyboard_shortcuts.down": "to move down in the list", - "keyboard_shortcuts.enter": "to open roar", - "keyboard_shortcuts.favourite": "to admire", - "keyboard_shortcuts.favourites": "to open admirations list", - "keyboard_shortcuts.federated": "to open world timeline", + "keyboard_shortcuts.enter": "to open status", + "keyboard_shortcuts.favourite": "to favourite", + "keyboard_shortcuts.favourites": "to open favourites list", + "keyboard_shortcuts.federated": "to open federated timeline", "keyboard_shortcuts.heading": "Keyboard shortcuts", "keyboard_shortcuts.home": "to open home timeline", "keyboard_shortcuts.hotkey": "Hotkey", "keyboard_shortcuts.legend": "to display this legend", - "keyboard_shortcuts.local": "to open Monsterpit timeline", + "keyboard_shortcuts.local": "to open local timeline", "keyboard_shortcuts.mention": "to mention author", - "keyboard_shortcuts.muted": "to open muted creatures list", + "keyboard_shortcuts.muted": "to open muted users list", "keyboard_shortcuts.my_profile": "to open your profile", "keyboard_shortcuts.notifications": "to open notifications column", - "keyboard_shortcuts.pinned": "to open pins list", + "keyboard_shortcuts.open_media": "to open media", + "keyboard_shortcuts.pinned": "to open pinned toots list", "keyboard_shortcuts.profile": "to open author's profile", "keyboard_shortcuts.reply": "to reply", - "keyboard_shortcuts.requests": "to open join requests list", + "keyboard_shortcuts.requests": "to open follow requests list", "keyboard_shortcuts.search": "to focus search", "keyboard_shortcuts.start": "to open \"get started\" column", "keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW", "keyboard_shortcuts.toggle_sensitivity": "to show/hide media", - "keyboard_shortcuts.toot": "to start a brand new roar", + "keyboard_shortcuts.toot": "to start a brand new toot", "keyboard_shortcuts.unfocus": "to un-focus compose textarea/search", "keyboard_shortcuts.up": "to move up in the list", "lightbox.close": "Close", @@ -228,81 +254,85 @@ "lists.edit.submit": "Change title", "lists.new.create": "Add list", "lists.new.title_placeholder": "New list title", - "lists.search": "Search among monsters in your pack", + "lists.search": "Search among people you follow", "lists.subheading": "Your lists", - "lists.show_self": "Include your own roars", "load_pending": "{count, plural, one {# new item} other {# new items}}", "loading_indicator.label": "Loading...", "media_gallery.toggle_visible": "Toggle visibility", "missing_indicator.label": "Not found", "missing_indicator.sublabel": "This resource could not be found", - "mute_modal.hide_notifications": "Hide notifications from this creature?", + "mute_modal.hide_notifications": "Hide notifications from this user?", "navigation_bar.apps": "Mobile apps", - "navigation_bar.blocks": "Blocked creatures", - "navigation_bar.community_timeline": "Monsterpit", - "navigation_bar.compose": "Compose new roar", - "navigation_bar.direct": "Whispers", + "navigation_bar.blocks": "Blocked users", + "navigation_bar.bookmarks": "Bookmarks", + "navigation_bar.community_timeline": "Local timeline", + "navigation_bar.compose": "Compose new toot", + "navigation_bar.direct": "Direct messages", "navigation_bar.discover": "Discover", - "navigation_bar.domain_blocks": "Hidden communities", - "navigation_bar.drafts": "Show drafts", + "navigation_bar.domain_blocks": "Hidden domains", "navigation_bar.edit_profile": "Edit profile", - "navigation_bar.favourites": "Admirations", + "navigation_bar.favourites": "Favourites", "navigation_bar.filters": "Muted words", - "navigation_bar.follow_requests": "New packmates", - "navigation_bar.follows_and_followers": "Packmates", + "navigation_bar.follow_requests": "Follow requests", + "navigation_bar.follows_and_followers": "Follows and followers", "navigation_bar.info": "About this server", "navigation_bar.keyboard_shortcuts": "Hotkeys", "navigation_bar.lists": "Lists", - "navigation_bar.logout": "Sleep", + "navigation_bar.misc": "Misc", + "navigation_bar.logout": "Logout", "navigation_bar.mutes": "Muted users", "navigation_bar.personal": "Personal", - "navigation_bar.pins": "Pins", + "navigation_bar.pins": "Pinned toots", "navigation_bar.preferences": "Preferences", - "navigation_bar.public_timeline": "World", + "navigation_bar.public_timeline": "Federated timeline", "navigation_bar.security": "Security", - "notification.favourite": "{name} admired your roar", - "notification.follow": "{name} joined your pack", + "notification.favourite": "{name} favourited your status", + "notification.follow": "{name} followed you", + "notification.follow_request": "{name} has requested to follow you", "notification.mention": "{name} mentioned you", + "notification.own_poll": "Your poll has ended", "notification.poll": "A poll you have voted in has ended", - "notification.reblog": "{name} repeated your roar", - "notifications.clear": "Clear growls", - "notifications.clear_confirmation": "Are you sure you want to permanently clear all your growls?", + "notification.reblog": "{name} boosted your status", + "notifications.clear": "Clear notifications", + "notifications.clear_confirmation": "Are you sure you want to permanently clear all your notifications?", "notifications.column_settings.alert": "Desktop notifications", - "notifications.column_settings.favourite": "Admirations:", + "notifications.column_settings.favourite": "Favourites:", "notifications.column_settings.filter_bar.advanced": "Display all categories", "notifications.column_settings.filter_bar.category": "Quick filter bar", "notifications.column_settings.filter_bar.show": "Show", - "notifications.column_settings.follow": "New packmate:", + "notifications.column_settings.follow": "New followers:", + "notifications.column_settings.follow_request": "New follow requests:", "notifications.column_settings.mention": "Mentions:", "notifications.column_settings.poll": "Poll results:", "notifications.column_settings.push": "Push notifications", - "notifications.column_settings.reblog": "Repeats:", + "notifications.column_settings.reblog": "Boosts:", "notifications.column_settings.show": "Show in column", "notifications.column_settings.sound": "Play sound", "notifications.filter.all": "All", - "notifications.filter.boosts": "Repeats", - "notifications.filter.favourites": "Admirations", - "notifications.filter.follows": "In packs", + "notifications.filter.boosts": "Boosts", + "notifications.filter.favourites": "Favourites", + "notifications.filter.follows": "Follows", "notifications.filter.mentions": "Mentions", "notifications.filter.polls": "Poll results", "notifications.group": "{count} notifications", "poll.closed": "Closed", "poll.refresh": "Refresh", + "poll.total_people": "{count, plural, one {# person} other {# people}}", "poll.total_votes": "{count, plural, one {# vote} other {# votes}}", "poll.vote": "Vote", + "poll.voted": "You voted for this answer", "poll_button.add_poll": "Add a poll", "poll_button.remove_poll": "Remove poll", - "privacy.change": "Adjust roar privacy", - "privacy.direct.long": "Roar to mentioned creatures only", - "privacy.direct.short": "Whisper", - "privacy.local.short": "Monsterpit", - "privacy.local.long": "Roar to Monsterpit timeline", - "privacy.private.long": "Roar to packmates only", - "privacy.private.short": "Packmates-only", - "privacy.public.long": "Roar to public timelines", + "privacy.change": "Adjust status privacy", + "privacy.direct.long": "Post to mentioned users only", + "privacy.direct.short": "Direct", + "privacy.private.long": "Post to followers only", + "privacy.private.short": "Followers-only", + "privacy.public.long": "Post to public timelines", "privacy.public.short": "Public", - "privacy.unlisted.long": "Do not roar to public timelines", + "privacy.unlisted.long": "Do not post to public timelines", "privacy.unlisted.short": "Unlisted", + "refresh": "Refresh", "regeneration_indicator.label": "Loading…", "regeneration_indicator.sublabel": "Your home feed is being prepared!", "relative_time.days": "{number}d", @@ -310,6 +340,7 @@ "relative_time.just_now": "now", "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", + "relative_time.today": "today", "reply_indicator.cancel": "Cancel", "report.forward": "Forward to {target}", "report.forward_hint": "The account is from another server. Send an anonymized copy of the report there as well?", @@ -319,62 +350,64 @@ "report.target": "Reporting {target}", "search.placeholder": "Search", "search_popout.search_format": "Advanced search format", - "search_popout.tips.full_text": "Simple text returns roars you have written, admired, repeated, or have been mentioned in, as well as matching creaturenames, display names, and hashtags.", + "search_popout.tips.full_text": "Simple text returns statuses you have written, favourited, boosted, or have been mentioned in, as well as matching usernames, display names, and hashtags.", "search_popout.tips.hashtag": "hashtag", - "search_popout.tips.status": "roar", - "search_popout.tips.text": "Simple text returns matching display names, creaturenames and hashtags", - "search_popout.tips.user": "creature", - "search_results.accounts": "Monsters", + "search_popout.tips.status": "status", + "search_popout.tips.text": "Simple text returns matching display names, usernames and hashtags", + "search_popout.tips.user": "user", + "search_results.accounts": "People", "search_results.hashtags": "Hashtags", - "search_results.statuses": "Roars", + "search_results.statuses": "Toots", "search_results.statuses_fts_disabled": "Searching toots by their content is not enabled on this Mastodon server.", "search_results.total": "{count, number} {count, plural, one {result} other {results}}", - "status.admin_account": "Moderate @{name}", - "status.admin_status": "Moderate roar", + "status.admin_account": "Open moderation interface for @{name}", + "status.admin_status": "Open this status in the moderation interface", "status.block": "Block @{name}", - "status.cancel_reblog_private": "Unrepeat", - "status.cannot_reblog": "This roar cannot be repeated", - "status.copy": "Copy link to roar", + "status.bookmark": "Bookmark", + "status.cancel_reblog_private": "Unboost", + "status.cannot_reblog": "This post cannot be boosted", + "status.copy": "Copy link to status", "status.delete": "Delete", "status.detailed_status": "Detailed conversation view", - "status.direct": "Whisper to @{name}", + "status.direct": "Direct message @{name}", "status.embed": "Embed", - "status.favourite": "Admire", + "status.favourite": "Favourite", "status.filtered": "Filtered", "status.load_more": "Load more", "status.media_hidden": "Media hidden", - "status.mention": "Address @{name}", + "status.mention": "Mention @{name}", "status.more": "More", "status.mute": "Mute @{name}", "status.mute_conversation": "Mute conversation", - "status.open": "Open roar", + "status.open": "Expand this status", "status.pin": "Pin on profile", - "status.pinned": "Pinned roar", + "status.pinned": "Pinned toot", "status.read_more": "Read more", - "status.reblog": "Repeat", - "status.reblog_private": "Repeat to original audience", - "status.reblogged_by": "{name} repeated", - "status.reblogs.empty": "No one has repeated this roar yet. When someone does, they will show up here.", - "status.redraft": "Delete & edit", + "status.reblog": "Boost", + "status.reblog_private": "Boost to original audience", + "status.reblogged_by": "{name} boosted", + "status.reblogs.empty": "No one has boosted this toot yet. When someone does, they will show up here.", + "status.redraft": "Delete & re-draft", + "status.remove_bookmark": "Remove bookmark", "status.reply": "Reply", "status.replyAll": "Reply to thread", "status.report": "Report @{name}", - "status.sensitive_warning": "Reveal", - "status.sensitive_toggle": "Reveal", + "status.sensitive_warning": "Sensitive content", "status.share": "Share", - "status.show_less": "Hide", - "status.show_less_all": "Hide all", - "status.show_more": "Reveal", - "status.show_more_all": "Reveal all", + "status.show_less": "Show less", + "status.show_less_all": "Show less for all", + "status.show_more": "Show more", + "status.show_more_all": "Show more for all", "status.show_thread": "Show thread", + "status.uncached_media_warning": "Not available", "status.unmute_conversation": "Unmute conversation", "status.unpin": "Unpin from profile", "suggestions.dismiss": "Dismiss suggestion", "suggestions.header": "You might be interested in…", - "tabs_bar.federated_timeline": "World", - "tabs_bar.home": "Pack", + "tabs_bar.federated_timeline": "Federated", + "tabs_bar.home": "Home", "tabs_bar.local_timeline": "Local", - "tabs_bar.notifications": "Growls", + "tabs_bar.notifications": "Notifications", "tabs_bar.search": "Search", "time_remaining.days": "{number, plural, one {# day} other {# days}} left", "time_remaining.hours": "{number, plural, one {# hour} other {# hours}} left", @@ -382,18 +415,29 @@ "time_remaining.moments": "Moments remaining", "time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left", "trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking", - "ui.beforeunload": "Your draft will be lost if you leave Monsterpit.", + "trends.trending_now": "Trending now", + "ui.beforeunload": "Your draft will be lost if you leave Mastodon.", "upload_area.title": "Drag & drop to upload", - "upload_button.label": "Add media (JPEG, PNG, GIF, WebM, MP4, MOV)", + "upload_button.label": "Add media ({formats})", "upload_error.limit": "File upload limit exceeded.", "upload_error.poll": "File upload not allowed with polls.", + "upload_form.audio_description": "Describe for people with hearing loss", "upload_form.description": "Describe for the visually impaired", - "upload_form.focus": "Change preview", + "upload_form.edit": "Edit", "upload_form.undo": "Delete", + "upload_form.video_description": "Describe for people with hearing loss or visual impairment", + "upload_modal.analyzing_picture": "Analyzing picture…", + "upload_modal.apply": "Apply", + "upload_modal.description_placeholder": "A quick brown fox jumps over the lazy dog", + "upload_modal.detect_text": "Detect text from picture", + "upload_modal.edit_media": "Edit media", + "upload_modal.hint": "Click or drag the circle on the preview to choose the focal point which will always be in view on all thumbnails.", + "upload_modal.preview_label": "Preview ({ratio})", "upload_progress.label": "Uploading...", "video.close": "Close video", + "video.download": "Download file", "video.exit_fullscreen": "Exit full screen", - "video.expand": "Open video", + "video.expand": "Expand video", "video.fullscreen": "Full screen", "video.hide": "Hide video", "video.mute": "Mute sound", diff --git a/config/locales/en.yml b/config/locales/en.yml index 451bc3335..fce62a4de 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -9,9 +9,9 @@ en: administered_by: 'Administered by:' api: API apps: Mobile apps - apps_platforms: Use Monsterpit from iOS, Android and other platforms + apps_platforms: Use otherkin.club from iOS, Android and other platforms browse_directory: Browse a profile directory and filter by interests - browse_public_posts: Browse a live stream of public roars on Monsterpit + browse_public_posts: Browse a live stream of public roars on otherkin.club contact: Contact contact_missing: Not set contact_unavailable: N/A @@ -20,7 +20,7 @@ en: extended_description_html: |

A good place for rules

The extended description has not been set up yet.

- federation_hint_html: With an account on %{instance} you'll be able to follow monsters on any Monsterpit server and beyond. + federation_hint_html: With an account on %{instance} you'll be able to follow folks on any otherkin.club server and beyond. generic_description: "%{domain} is one server in the network" get_apps: Try a mobile app hosted_on: Mastodon hosted on %{domain} @@ -42,7 +42,7 @@ en: one: user other: users user_count_before: Home to - what_is_mastodon: What is Monsterpit? + what_is_mastodon: What is otherkin.club? accounts: choices_html: "%{name}'s choices:" follow: Follow @@ -60,7 +60,7 @@ en: people_followed_by: People whom %{name} follows people_who_follow: People who follow %{name} pin_errors: - following: You must be already following the monster you want to endorse + following: You must be already following the being you want to endorse posts: one: Roar other: Roars @@ -385,7 +385,7 @@ en: relays: add_new: Add new relay delete: Delete - description_html: A federation relay is an intermediary server that exchanges large volumes of public roars between servers that subscribe and publish to it. It can help small and medium servers discover content from the fediverse, which would otherwise require local creatures manually following other monsters on remote servers. + description_html: A federation relay is an intermediary server that exchanges large volumes of public roars between servers that subscribe and publish to it. It can help small and medium servers discover content from the fediverse, which would otherwise require local creatures manually following other folks on remote servers. disable: Disable disabled: Disabled enable: Enable @@ -493,13 +493,13 @@ en: desc_html: Show a staff badge on a creature page title: Show staff badge site_description: - desc_html: Introductory paragraph on the API. Describe what makes this Monsterpit server special and anything else important. You can use HTML tags, in particular <a> and <em>. + desc_html: Introductory paragraph on the API. Describe what makes this server special and anything else important. You can use HTML tags, in particular <a> and <em>. title: Server description site_description_extended: desc_html: A good place for your code of conduct, rules, guidelines and other things that set your server apart. You can use HTML tags title: Custom extended information site_short_description: - desc_html: Displayed in sidebar and meta tags. Describe what Monsterpit is and what makes this server special in a single paragraph. + desc_html: Displayed in sidebar and meta tags. Describe what is and what makes this server special in a single paragraph. title: Short server description site_terms: desc_html: You can write your own privacy policy, terms of service or other legalese. You can use HTML tags @@ -594,7 +594,7 @@ en: cas: CAS saml: SAML register: Sign up - registration_closed: "Monsterpit registrations are currently closed." + registration_closed: "otherkin.club registrations are currently closed." resend_confirmation: Resend confirmation instructions reset_password: Reset password security: Security @@ -641,8 +641,8 @@ en: explore_mastodon: Explore %{title} how_to_enable: You are not currently opted-in to the directory. You can opt-in below. Use hashtags in your bio text to be listed under specific hashtags! people: - one: "%{count} monster" - other: "%{count} monsters" + one: "%{count} being" + other: "%{count} beings" errors: '403': You don't have permission to view this page. '404': The page you are looking for isn't here. @@ -654,7 +654,7 @@ en: '500': content: We're sorry, but something went wrong on our end. title: This page is not correct - noscript_html: To use the Monsterpit web application, please enable JavaScript. Alternatively, try one of the native apps for Monsterpit for your platform. + noscript_html: To use the Monsterfork web application, please enable JavaScript. Alternatively, try one of the native apps for Monsterfork for your platform. existing_username_validator: not_found: could not find a local creature with that username not_found_multiple: could not find %{usernames} @@ -719,7 +719,7 @@ en: invalid_token: Keybase tokens are hashes of signatures and must be 66 hex characters verification_failed: Keybase does not recognize this token as a signature of Keybase creature %{kb_username}. Please retry from Keybase. wrong_user: Cannot create a proof for %{proving} while logged in as %{current}. Log in as %{proving} and try again. - explanation_html: Here you can cryptographically connect your other identities, such as a Keybase profile. This lets other monsters send you encrypted messages and trust content you send them. + explanation_html: Here you can cryptographically connect your other identities, such as a Keybase profile. This lets other folks send you encrypted messages and trust content you send them. i_am_html: I am %{username} on %{service}. identity: Identity inactive: Inactive @@ -733,7 +733,7 @@ en: merge_long: Keep existing records and add new ones overwrite: Overwrite overwrite_long: Replace current records with the new ones - preface: You can import data that you have exported from another server, such as a list of the monsters you are following or blocking. + preface: You can import data that you have exported from another server, such as a list of the you folks are following or blocking. success: Your data was successfully uploaded and will now be processed in due time types: blocking: Blocking list @@ -764,7 +764,7 @@ en: table: expires_at: Expires uses: Uses - title: Invite monsters + title: Invite folks lists: errors: limit: You have reached the maximum amount of lists @@ -910,7 +910,7 @@ en: weibo: Weibo current_session: Current session description: "%{browser} on %{platform}" - explanation: These are the web browsers currently logged in to your Monsterpit account. + explanation: These are the web browsers currently logged in to your otherkin.club account. ip: IP platforms: adobe_air: Adobe Air @@ -933,7 +933,7 @@ en: account_settings: Account settings appearance: Appearance authorized_apps: Authorized apps - back: Back to Monsterpit + back: Back to otherkin.club delete: Account deletion development: Development edit_profile: Edit profile @@ -990,8 +990,8 @@ en: public_long: Everyone can see unlisted: Unlisted unlisted_long: Everyone can see, but not listed on public timelines - local: Monsterpit - local_long: Everyone can see, but only listed on Monsterpit timeline + local: otherkin.club + local_long: Everyone can see, but only listed on otherkin.club timeline chat: Chat chat_long: Special visibility for only for chat messages stream_entries: @@ -1005,8 +1005,8 @@ en: @@ -1017,16 +1017,16 @@ en:

Any of the information we collect from you may be used in the following ways:


How do we protect your information?

-

We implement a variety of security measures to maintain the safety of your monsteral information when you enter, submit, or access your monsteral information. Among other things, your browser session, as well as the traffic between your applications and the API, are secured with SSL, and your password is hashed using a strong one-way algorithm. You may enable two-factor authentication to further secure access to your account.

+

We implement a variety of security measures to maintain the safety of your information when you enter, submit, or access your information. Among other things, your browser session, as well as the traffic between your applications and the API, are secured with SSL, and your password is hashed using a strong one-way algorithm. You may enable two-factor authentication to further secure access to your account.


@@ -1055,7 +1055,7 @@ en:

Do we disclose any information to outside parties?

-

We do not sell, trade, or otherwise transfer to outside parties your monsterally identifiable information. This does not include trusted third parties who assist us in operating our site, conducting our business, or servicing you, so long as those parties agree to keep this information confidential. We may also release your information when we believe release is appropriate to comply with the law, enforce our site policies, or protect ours or others rights, property, or safety.

+

We do not sell, trade, or otherwise transfer to outside parties your personally identifiable information. This does not include trusted third parties who assist us in operating our site, conducting our business, or servicing you, so long as those parties agree to keep this information confidential. We may also release your information when we believe release is appropriate to comply with the law, enforce our site policies, or protect ours or others rights, property, or safety.

Your public content may be downloaded by other servers in the network. Your public and followers-only posts are delivered to the servers where your followers reside, and direct messages are delivered to the servers of the recipients, in so far as those followers or recipients reside on a different server than this.

@@ -1065,9 +1065,9 @@ en:

Site usage by children

-

If this server is in the EU or the EEA: Our site, products and services are all directed to monsters who are at least 16 years old. If you are under the age of 16, per the requirements of the GDPR (General Data Protection Regulation) do not use this site.

+

If this server is in the EU or the EEA: Our site, products and services are all directed to folks who are at least 16 years old. If you are under the age of 16, per the requirements of the GDPR (General Data Protection Regulation) do not use this site.

-

If this server is in the USA: Our site, products and services are all directed to monsters who are at least 13 years old. If you are under the age of 13, per the requirements of COPPA (Children's Online Privacy Protection Act) do not use this site.

+

If this server is in the USA: Our site, products and services are all directed to folks who are at least 13 years old. If you are under the age of 13, per the requirements of COPPA (Children's Online Privacy Protection Act) do not use this site.

Law requirements can be different if this server is in another jurisdiction.

@@ -1107,7 +1107,7 @@ en: wrong_code: The entered code was invalid! Are server time and device time correct? user_mailer: backup_ready: - explanation: You requested a full backup of your Monsterpit account. It's now ready for download! + explanation: You requested a full backup of your account. It's now ready for download! subject: Your archive is ready for download title: Archive takeout warning: @@ -1115,7 +1115,7 @@ en: disable: While your account is frozen, your account data remains intact, but you cannot perform any actions until it is unlocked. force_sensitive: Your account's media has been forced to sensitive visibility until this limit is removed by a moderator. force_unlisted: Your account's roars have been forced to unlisted visibility until this limit is removed by a moderator. - silence: While your account is limited, only monsters who are already following you will see your roars on this server, and you may be excluded from various public listings. However, others may still manually join your pack. + silence: While your account is limited, only folks who are already following you will see your roars on this server, and you may be excluded from various public listings. However, others may still manually join your pack. suspend: Your account has been suspended. All of your roars and your uploaded media files have been irreversibly removed from this server, and servers where you had packmates. review_server_policies: Review server policies subject: @@ -1137,25 +1137,25 @@ en: edit_profile_step: You can customize your profile by uploading an avatar, header, changing your display name and more. If you’d like to review new packmates before they’re allowed to join your pack, you can lock your account. explanation: Here are some tips to get you started final_action: Start roaring - final_step: 'Start roaring! Even without packmates your public messages may be seen by others, for example on the Monsterpit timeline and in hashtags. You may want to introduce yourself on the #introductions hashtag.' + final_step: 'Start roaring! Even without packmates your public messages may be seen by others, for example on the timeline and in hashtags. You may want to introduce yourself on the #introductions hashtag.' full_handle: Your full handle full_handle_hint: This is what you would tell your friends so they can message or join your pack from another server. review_preferences_action: Change preferences review_preferences_step: Make sure to set your preferences, such as which emails you'd like to receive, or what privacy level you’d like your roars to default to. If you don’t have motion sickness, you could choose to enable GIF autoplay. - subject: Welcome to Monsterpit - tip_federated_timeline: The world timeline is a firehose view of the Monsterpit network. But it only includes monsters your neighbours are subscribed to, so it's not complete. - tip_following: You join your packr server's admin(s) by default. To find more interesting monsters, check the local and world timelines. - tip_local_timeline: The Monsterpit timeline is a firehose view of monsters on %{instance}. These are your immediate neighbours! - tip_mobile_webapp: If your mobile browser offers you to add Monsterpit to your homescreen, you can receive push notifications. It acts like a native app in many ways! + subject: Welcome to otherkin.club + tip_federated_timeline: The world timeline is a firehose view of the otherkin.club network. But it only includes folks your neighbours are subscribed to, so it's not complete. + tip_following: You join your packr server's admin(s) by default. To find more interesting folks, check the local and world timelines. + tip_local_timeline: The otherkin.club timeline is a firehose view of folks on %{instance}. These are your immediate neighbours! + tip_mobile_webapp: If your mobile browser offers you to add otherkin.club to your homescreen, you can receive push notifications. It acts like a native app in many ways! tips: Tips title: Welcome aboard, %{name}! users: - follow_limit_reached: You cannot follow more than %{limit} monsters + follow_limit_reached: You cannot follow more than %{limit} folks invalid_email: The e-mail address is invalid invalid_otp_token: Invalid two-factor code otp_lost_help_html: If you lost access to both, you may get in touch with %{email} seamless_external_login: This Monsterfork server is using a single sign-on system, such as LDAP or SAML, to host your account. You will need to use your community or organization's account self-service tool to change your password and/or e-mail. Please contact your admin for this information. signed_in_as: 'Signed in as:' verification: - explanation_html: 'You can verify yourself as the owner of the links in your profile metadata. For that, the linked website must contain a link back to your Monsterpit profile. The link back must have a rel="me" attribute. The text content of the link does not matter. Here is an example:' + explanation_html: 'You can verify yourself as the owner of the links in your profile metadata. For that, the linked website must contain a link back to your profile. The link back must have a rel="me" attribute. The text content of the link does not matter. Here is an example:' verification: Verification diff --git a/config/locales/simple_form.en.yml b/config/locales/simple_form.en.yml index 359d4e92e..fe1675127 100644 --- a/config/locales/simple_form.en.yml +++ b/config/locales/simple_form.en.yml @@ -11,13 +11,13 @@ en: warning_preset_id: Optional. You can still add custom text to end of the preset defaults: block_anon: Links to your public roars are disabled unless they are made accessible by sharekey. Be aware that roars sent to other Fediverse servers can be publically indexed! - unlisted: Excludes you from public repeated/admired by lists of *local* monsters + unlisted: Excludes you from public repeated lists of *local* folks autofollow: People who sign up through the invite will automatically join your pack avatar: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px bot: This account mainly performs automated actions and might not be monitored context: One or multiple contexts where the filter should apply - digest: Only sent after a long period of inactivity and only if you have received any monsteral messages in your absence - discoverable_html: The directory lets monsters find accounts based on interests and activity. Requires at least %{min_followers} packmates + digest: Only sent after a long period of inactivity and only if you have received any messages in your absence + discoverable_html: The directory lets folks find accounts based on interests and activity. Requires at least %{min_followers} packmates email: You will be sent a confirmation e-mail fields: You can have up to 4 items displayed as a table on your profile header: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px @@ -143,8 +143,8 @@ en: setting_boost_random: Boost in random order setting_boost_interval_from: Minimum boost interval setting_boost_interval_to: Maximum boost interval - setting_default_local: Default to Monsterpit-only roars (in Glitch flavour) - setting_always_local: Don't send your roars outside Monsterpit + setting_default_local: Default to otherkinclub-only roars (in Glitch flavour) + setting_always_local: Don't send your roars outside otherkin.club setting_rawr_federated: Show raw world timeline (may contain offensive content!) setting_hide_stats: Hide statistics on public pages setting_force_lowercase: make everything lowercase @@ -261,10 +261,10 @@ en: name: Hashtag interactions: must_be_follower: Block notifications from non-packmates - must_be_following: Block notifications from monsters you aren't in the pack of - must_be_following_dm: Block whispers from monsters you aren't in the pack of + must_be_following: Block notifications from folks you aren't in the pack of + must_be_following_dm: Block whispers from folks you aren't in the pack of invite_request: - text: "Introduce yourself and let the admins know what brings you to Monsterpit." + text: "Introduce yourself and let the admins know what brings you to otherkin.club." notification_emails: digest: Send digest e-mails favourite: Send e-mail when someone admires your roar diff --git a/config/settings.yml b/config/settings.yml index 5585af0f9..747e39908 100644 --- a/config/settings.yml +++ b/config/settings.yml @@ -2,7 +2,7 @@ # important settings can be changed from the admin interface. defaults: &defaults - site_title: 'Monsterpit' + site_title: 'otherkin.club' site_short_description: '' site_description: '' site_extended_description: '' diff --git a/package.json b/package.json index 3f0e8104f..6281b80d4 100644 --- a/package.json +++ b/package.json @@ -84,6 +84,7 @@ "babel-runtime": "^6.26.0", "blurhash": "^1.0.0", "classnames": "^2.2.5", + "clusterws": "^3.3.1", "compression-webpack-plugin": "^2.0.0", "cross-env": "^5.1.4", "css-loader": "^2.1.1", diff --git a/yarn.lock b/yarn.lock index 0bda4aea2..3157e1592 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2450,6 +2450,13 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" +clusterws@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/clusterws/-/clusterws-3.3.1.tgz#f168996d14ee10e92dd1f9952b0ab863e6911952" + integrity sha512-WEh56mkDUVP/+FcnYy5XdkfcKnV3V8IhEZvBgC/RS52RW/d2ix5qg2I3XqvVuWQO6u1Jka1gGg81W6OUYQDIgw== + dependencies: + uws "10.148.1" + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -3043,7 +3050,7 @@ debug@=3.1.0: dependencies: ms "2.0.0" -debug@^3.0.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.6: +debug@^3.0.0, debug@^3.1.1, debug@^3.2.5: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -3084,11 +3091,6 @@ deep-extend@^0.5.1: resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.5.1.tgz#b894a9dd90d3023fbf1c55a394fb858eb2066f1f" integrity sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w== -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -3177,11 +3179,6 @@ detect-file@^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: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - detect-newline@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" @@ -4376,13 +4373,6 @@ fs-extra@^8.0.1: jsonfile "^4.0.0" universalify "^0.1.0" -fs-minipass@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - fs-write-stream-atomic@^1.0.8: version "1.0.10" resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" @@ -4915,7 +4905,7 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: +iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -4944,13 +4934,6 @@ iferr@^0.1.5: resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= -ignore-walk@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" - integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== - dependencies: - minimatch "^3.0.4" - ignore@^3.1.2: version "3.3.10" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" @@ -5050,7 +5033,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: +ini@^1.3.4, ini@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== @@ -6551,21 +6534,6 @@ minimist@^1.1.1, minimist@^1.2.0: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= -minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - mississippi@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" @@ -6695,15 +6663,6 @@ nearley@^2.7.10: randexp "0.4.6" semver "^5.4.1" -needle@^2.2.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c" - integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - negotiator@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -6787,22 +6746,6 @@ node-notifier@^5.4.2: shellwords "^0.1.1" which "^1.3.0" -node-pre-gyp@*: - version "0.14.0" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83" - integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4.4.2" - node-releases@^1.1.44: version "1.1.45" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.45.tgz#4cf7e9175d71b1317f15ffd68ce63bce1d53e9f2" @@ -6810,14 +6753,6 @@ node-releases@^1.1.44: dependencies: semver "^6.3.0" -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - nopt@~1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" @@ -6857,26 +6792,6 @@ normalize-url@^3.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== -npm-bundled@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" - integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA== - dependencies: - npm-normalize-package-bin "^1.0.1" - -npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== - -npm-packlist@^1.1.6: - version "1.4.7" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.7.tgz#9e954365a06b80b18111ea900945af4f88ed4848" - integrity sha512-vAj7dIkp5NhieaGZxBJB8fF4R0078rqsmhJcAfXZ6O7JJhjhPK96n5Ry1oZcfLXgfun0GWTZPOxaEyqv8GBykQ== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -6884,7 +6799,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npmlog@^4.0.2, npmlog@^4.1.2: +npmlog@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -7119,19 +7034,11 @@ os-locale@^3.0.0, os-locale@^3.1.0: lcid "^2.0.0" mem "^4.0.0" -os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: +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= -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - p-defer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" @@ -8169,16 +8076,6 @@ raw-body@2.4.0: iconv-lite "0.4.24" unpipe "1.0.0" -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - react-dom@^16.8.6: version "16.12.0" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz#0da4b714b8d13c2038c9396b54a92baea633fe11" @@ -8866,7 +8763,7 @@ rimraf@2.6.3, rimraf@~2.6.2: dependencies: glob "^7.1.3" -rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3: +rimraf@^2.5.4, rimraf@^2.6.3: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -9044,7 +8941,7 @@ selfsigned@^1.10.7: dependencies: node-forge "0.9.0" -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -9579,7 +9476,7 @@ strip-eof@^1.0.0: resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: +strip-json-comments@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= @@ -9695,19 +9592,6 @@ tapable@^1.0.0, tapable@^1.1.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== -tar@^4.4.2: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.8.6" - minizlib "^1.2.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.3" - tcomb@^2.5.0: version "2.7.0" resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-2.7.0.tgz#10d62958041669a5d53567b9a4ee8cde22b1c2b0" @@ -10134,6 +10018,11 @@ uuid@^3.0.1, uuid@^3.1.0, uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== +uws@10.148.1: + version "10.148.1" + resolved "https://registry.yarnpkg.com/uws/-/uws-10.148.1.tgz#fd1a79cf6118a388e0a1bed8a1397030d2c4fd2c" + integrity sha1-/Rp5z2EYo4jgob7YoTlwMNLE/Sw= + v8-compile-cache@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" @@ -10537,7 +10426,7 @@ xtend@^4.0.0, xtend@~4.0.1: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== -yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: +yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==