mirror of
https://git.kescher.at/CatCatNya/catstodon.git
synced 2024-11-24 03:28:06 +01:00
Merge pull request #1358 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
This commit is contained in:
commit
c7da2cc5a1
97 changed files with 1466 additions and 629 deletions
|
@ -1,3 +1,4 @@
|
|||
VAGRANT=true
|
||||
LOCAL_DOMAIN=mastodon.local
|
||||
BIND=0.0.0.0
|
||||
DB_HOST=/var/run/postgresql/
|
||||
|
|
14
Gemfile
14
Gemfile
|
@ -9,7 +9,7 @@ gem 'puma', '~> 4.3'
|
|||
gem 'rails', '~> 5.2.4.3'
|
||||
gem 'sprockets', '~> 3.7.2'
|
||||
gem 'thor', '~> 0.20'
|
||||
gem 'rack', '~> 2.2.2'
|
||||
gem 'rack', '~> 2.2.3'
|
||||
|
||||
gem 'thwait', '~> 0.1.0'
|
||||
gem 'e2mmap', '~> 0.1.0'
|
||||
|
@ -20,7 +20,7 @@ gem 'makara', '~> 0.4'
|
|||
gem 'pghero', '~> 2.5'
|
||||
gem 'dotenv-rails', '~> 2.7'
|
||||
|
||||
gem 'aws-sdk-s3', '~> 1.67', require: false
|
||||
gem 'aws-sdk-s3', '~> 1.68', require: false
|
||||
gem 'fog-core', '<= 2.1.0'
|
||||
gem 'fog-openstack', '~> 0.3', require: false
|
||||
gem 'paperclip', '~> 6.0'
|
||||
|
@ -61,7 +61,7 @@ gem 'htmlentities', '~> 4.3'
|
|||
gem 'http', '~> 4.4'
|
||||
gem 'http_accept_language', '~> 2.1'
|
||||
gem 'http_parser.rb', '~> 0.6', git: 'https://github.com/tmm1/http_parser.rb', ref: '54b17ba8c7d8d20a16dfc65d1775241833219cf2', submodules: true
|
||||
gem 'httplog', '~> 1.4.2'
|
||||
gem 'httplog', '~> 1.4.3'
|
||||
gem 'idn-ruby', require: 'idn'
|
||||
gem 'kaminari', '~> 1.2'
|
||||
gem 'link_header', '~> 0.0'
|
||||
|
@ -80,7 +80,7 @@ gem 'rack-attack', '~> 6.3'
|
|||
gem 'rack-cors', '~> 1.1', require: 'rack/cors'
|
||||
gem 'rails-i18n', '~> 5.1'
|
||||
gem 'rails-settings-cached', '~> 0.6'
|
||||
gem 'redis', '~> 4.1', require: ['redis', 'redis/connection/hiredis']
|
||||
gem 'redis', '~> 4.2', require: ['redis', 'redis/connection/hiredis']
|
||||
gem 'mario-redis-lock', '~> 1.2', require: 'redis_lock'
|
||||
gem 'rqrcode', '~> 1.1'
|
||||
gem 'ruby-progressbar', '~> 1.10'
|
||||
|
@ -128,7 +128,7 @@ group :test do
|
|||
gem 'rspec-sidekiq', '~> 3.0'
|
||||
gem 'simplecov', '~> 0.18', require: false
|
||||
gem 'webmock', '~> 3.8'
|
||||
gem 'parallel_tests', '~> 2.32'
|
||||
gem 'parallel_tests', '~> 3.0'
|
||||
gem 'rspec_junit_formatter', '~> 0.4'
|
||||
end
|
||||
|
||||
|
@ -142,9 +142,9 @@ group :development do
|
|||
gem 'letter_opener_web', '~> 1.4'
|
||||
gem 'memory_profiler'
|
||||
gem 'rubocop', '~> 0.85', require: false
|
||||
gem 'rubocop-rails', '~> 2.5', require: false
|
||||
gem 'rubocop-rails', '~> 2.6', require: false
|
||||
gem 'brakeman', '~> 4.8', require: false
|
||||
gem 'bundler-audit', '~> 0.6', require: false
|
||||
gem 'bundler-audit', '~> 0.7', require: false
|
||||
|
||||
gem 'capistrano', '~> 3.14'
|
||||
gem 'capistrano-rails', '~> 1.5'
|
||||
|
|
58
Gemfile.lock
58
Gemfile.lock
|
@ -86,23 +86,23 @@ GEM
|
|||
activerecord (>= 3.2, < 7.0)
|
||||
rake (>= 10.4, < 14.0)
|
||||
arel (9.0.0)
|
||||
ast (2.4.0)
|
||||
ast (2.4.1)
|
||||
attr_encrypted (3.1.0)
|
||||
encryptor (~> 3.0.0)
|
||||
av (0.9.0)
|
||||
cocaine (~> 0.5.3)
|
||||
aws-eventstream (1.1.0)
|
||||
aws-partitions (1.326.0)
|
||||
aws-sdk-core (3.98.0)
|
||||
aws-partitions (1.329.0)
|
||||
aws-sdk-core (3.99.2)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
aws-partitions (~> 1, >= 1.239.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
jmespath (~> 1.0)
|
||||
aws-sdk-kms (1.33.0)
|
||||
aws-sdk-core (~> 3, >= 3.71.0)
|
||||
aws-sdk-kms (1.34.1)
|
||||
aws-sdk-core (~> 3, >= 3.99.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-s3 (1.67.1)
|
||||
aws-sdk-core (~> 3, >= 3.96.1)
|
||||
aws-sdk-s3 (1.68.1)
|
||||
aws-sdk-core (~> 3, >= 3.99.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sigv4 (1.1.4)
|
||||
|
@ -124,11 +124,11 @@ GEM
|
|||
bullet (6.1.0)
|
||||
activesupport (>= 3.0.0)
|
||||
uniform_notifier (~> 1.11)
|
||||
bundler-audit (0.6.1)
|
||||
bundler-audit (0.7.0.1)
|
||||
bundler (>= 1.2.0, < 3)
|
||||
thor (~> 0.18)
|
||||
thor (>= 0.18, < 2)
|
||||
byebug (11.1.3)
|
||||
capistrano (3.14.0)
|
||||
capistrano (3.14.1)
|
||||
airbrussh (>= 1.0.0)
|
||||
i18n
|
||||
rake (>= 10.0.0)
|
||||
|
@ -173,7 +173,7 @@ GEM
|
|||
css_parser (1.7.1)
|
||||
addressable
|
||||
debug_inspector (0.0.3)
|
||||
devise (4.7.1)
|
||||
devise (4.7.2)
|
||||
bcrypt (~> 3.0)
|
||||
orm_adapter (~> 0.1)
|
||||
railties (>= 4.1.0)
|
||||
|
@ -216,7 +216,7 @@ GEM
|
|||
erubi (1.9.0)
|
||||
et-orbi (1.2.4)
|
||||
tzinfo
|
||||
excon (0.73.0)
|
||||
excon (0.74.0)
|
||||
fabrication (2.21.1)
|
||||
faker (2.12.0)
|
||||
i18n (>= 1.6, < 2)
|
||||
|
@ -282,7 +282,7 @@ GEM
|
|||
http-parser (1.2.1)
|
||||
ffi-compiler (>= 1.0, < 2.0)
|
||||
http_accept_language (2.1.1)
|
||||
httplog (1.4.2)
|
||||
httplog (1.4.3)
|
||||
rack (>= 1.0)
|
||||
rainbow (>= 2.0.0)
|
||||
i18n (1.8.3)
|
||||
|
@ -371,7 +371,7 @@ GEM
|
|||
net-ldap (0.16.2)
|
||||
net-scp (3.0.0)
|
||||
net-ssh (>= 2.6.5, < 7.0.0)
|
||||
net-ssh (6.0.2)
|
||||
net-ssh (6.1.0)
|
||||
nio4r (2.5.2)
|
||||
nokogiri (1.10.9)
|
||||
mini_portile2 (~> 2.4.0)
|
||||
|
@ -404,8 +404,8 @@ GEM
|
|||
paperclip-av-transcoder (0.6.4)
|
||||
av (~> 0.9.0)
|
||||
paperclip (>= 2.5.2)
|
||||
parallel (1.19.1)
|
||||
parallel_tests (2.32.0)
|
||||
parallel (1.19.2)
|
||||
parallel_tests (3.0.0)
|
||||
parallel
|
||||
parser (2.7.1.3)
|
||||
ast (~> 2.4.0)
|
||||
|
@ -439,7 +439,7 @@ GEM
|
|||
pundit (2.1.0)
|
||||
activesupport (>= 3.0.0)
|
||||
raabro (1.3.1)
|
||||
rack (2.2.2)
|
||||
rack (2.2.3)
|
||||
rack-attack (6.3.1)
|
||||
rack (>= 1.0, < 3)
|
||||
rack-cors (1.1.1)
|
||||
|
@ -491,7 +491,7 @@ GEM
|
|||
rdf-normalize (0.4.0)
|
||||
rdf (~> 3.1)
|
||||
redcarpet (3.5.0)
|
||||
redis (4.1.4)
|
||||
redis (4.2.1)
|
||||
redis-actionpack (5.2.0)
|
||||
actionpack (>= 5, < 7)
|
||||
redis-rack (>= 2.1.0, < 3)
|
||||
|
@ -556,17 +556,17 @@ GEM
|
|||
unicode-display_width (>= 1.4.0, < 2.0)
|
||||
rubocop-ast (0.0.3)
|
||||
parser (>= 2.7.0.1)
|
||||
rubocop-rails (2.5.2)
|
||||
activesupport
|
||||
rubocop-rails (2.6.0)
|
||||
activesupport (>= 4.2.0)
|
||||
rack (>= 1.1)
|
||||
rubocop (>= 0.72.0)
|
||||
rubocop (>= 0.82.0)
|
||||
ruby-progressbar (1.10.1)
|
||||
ruby-saml (1.11.0)
|
||||
nokogiri (>= 1.5.10)
|
||||
rufus-scheduler (3.6.0)
|
||||
fugit (~> 1.1, >= 1.1.6)
|
||||
safe_yaml (1.0.5)
|
||||
sanitize (5.2.0)
|
||||
sanitize (5.2.1)
|
||||
crass (~> 1.0.2)
|
||||
nokogiri (>= 1.8.0)
|
||||
nokogumbo (~> 2.0)
|
||||
|
@ -675,7 +675,7 @@ DEPENDENCIES
|
|||
active_record_query_trace (~> 1.7)
|
||||
addressable (~> 2.7)
|
||||
annotate (~> 3.1)
|
||||
aws-sdk-s3 (~> 1.67)
|
||||
aws-sdk-s3 (~> 1.68)
|
||||
better_errors (~> 2.7)
|
||||
binding_of_caller (~> 0.7)
|
||||
blurhash (~> 0.1)
|
||||
|
@ -683,7 +683,7 @@ DEPENDENCIES
|
|||
brakeman (~> 4.8)
|
||||
browser
|
||||
bullet (~> 6.1)
|
||||
bundler-audit (~> 0.6)
|
||||
bundler-audit (~> 0.7)
|
||||
capistrano (~> 3.14)
|
||||
capistrano-rails (~> 1.5)
|
||||
capistrano-rbenv (~> 2.1)
|
||||
|
@ -718,7 +718,7 @@ DEPENDENCIES
|
|||
http (~> 4.4)
|
||||
http_accept_language (~> 2.1)
|
||||
http_parser.rb (~> 0.6)!
|
||||
httplog (~> 1.4.2)
|
||||
httplog (~> 1.4.3)
|
||||
i18n-tasks (~> 0.9)
|
||||
idn-ruby
|
||||
iso-639
|
||||
|
@ -746,7 +746,7 @@ DEPENDENCIES
|
|||
paperclip (~> 6.0)
|
||||
paperclip-av-transcoder (~> 0.6)
|
||||
parallel (~> 1.19)
|
||||
parallel_tests (~> 2.32)
|
||||
parallel_tests (~> 3.0)
|
||||
parslet
|
||||
pg (~> 1.2)
|
||||
pghero (~> 2.5)
|
||||
|
@ -758,7 +758,7 @@ DEPENDENCIES
|
|||
pry-rails (~> 0.3)
|
||||
puma (~> 4.3)
|
||||
pundit (~> 2.1)
|
||||
rack (~> 2.2.2)
|
||||
rack (~> 2.2.3)
|
||||
rack-attack (~> 6.3)
|
||||
rack-cors (~> 1.1)
|
||||
rails (~> 5.2.4.3)
|
||||
|
@ -767,7 +767,7 @@ DEPENDENCIES
|
|||
rails-settings-cached (~> 0.6)
|
||||
rdf-normalize (~> 0.4)
|
||||
redcarpet (~> 3.4)
|
||||
redis (~> 4.1)
|
||||
redis (~> 4.2)
|
||||
redis-namespace (~> 1.7)
|
||||
redis-rails (~> 5.0)
|
||||
rqrcode (~> 1.1)
|
||||
|
@ -775,7 +775,7 @@ DEPENDENCIES
|
|||
rspec-sidekiq (~> 3.0)
|
||||
rspec_junit_formatter (~> 0.4)
|
||||
rubocop (~> 0.85)
|
||||
rubocop-rails (~> 2.5)
|
||||
rubocop-rails (~> 2.6)
|
||||
ruby-progressbar (~> 1.10)
|
||||
sanitize (~> 5.2)
|
||||
sidekiq (~> 6.0)
|
||||
|
|
|
@ -32,6 +32,7 @@ export default class ScrollableList extends PureComponent {
|
|||
hasMore: PropTypes.bool,
|
||||
numPending: PropTypes.number,
|
||||
prepend: PropTypes.node,
|
||||
append: PropTypes.node,
|
||||
alwaysPrepend: PropTypes.bool,
|
||||
emptyMessage: PropTypes.node,
|
||||
children: PropTypes.node,
|
||||
|
@ -272,7 +273,7 @@ export default class ScrollableList extends PureComponent {
|
|||
}
|
||||
|
||||
render () {
|
||||
const { children, scrollKey, trackScroll, shouldUpdateScroll, showLoading, isLoading, hasMore, numPending, prepend, alwaysPrepend, emptyMessage, onLoadMore } = this.props;
|
||||
const { children, scrollKey, trackScroll, shouldUpdateScroll, showLoading, isLoading, hasMore, numPending, prepend, alwaysPrepend, append, emptyMessage, onLoadMore } = this.props;
|
||||
const { fullscreen } = this.state;
|
||||
const childrenCount = React.Children.count(children);
|
||||
|
||||
|
@ -319,6 +320,8 @@ export default class ScrollableList extends PureComponent {
|
|||
))}
|
||||
|
||||
{loadMore}
|
||||
|
||||
{!hasMore && append}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
|
18
app/javascript/flavours/glitch/components/timeline_hint.js
Normal file
18
app/javascript/flavours/glitch/components/timeline_hint.js
Normal file
|
@ -0,0 +1,18 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
const TimelineHint = ({ resource, url }) => (
|
||||
<div className='timeline-hint'>
|
||||
<strong><FormattedMessage id='timeline_hint.remote_resource_not_displayed' defaultMessage='{resource} from other servers are not displayed.' values={{ resource }} /></strong>
|
||||
<br />
|
||||
<a href={url} target='_blank'><FormattedMessage id='account.browse_more_on_origin_server' defaultMessage='Browse more on the original profile' /></a>
|
||||
</div>
|
||||
);
|
||||
|
||||
TimelineHint.propTypes = {
|
||||
resource: PropTypes.node.isRequired,
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default TimelineHint;
|
|
@ -15,11 +15,14 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
|
|||
import { FormattedMessage } from 'react-intl';
|
||||
import { fetchAccountIdentityProofs } from '../../actions/identity_proofs';
|
||||
import MissingIndicator from 'flavours/glitch/components/missing_indicator';
|
||||
import TimelineHint from 'flavours/glitch/components/timeline_hint';
|
||||
|
||||
const mapStateToProps = (state, { params: { accountId }, withReplies = false }) => {
|
||||
const path = withReplies ? `${accountId}:with_replies` : accountId;
|
||||
|
||||
return {
|
||||
remote: !!state.getIn(['accounts', accountId, 'acct']) !== state.getIn(['accounts', accountId, 'username']),
|
||||
remoteUrl: state.getIn(['accounts', accountId, 'url']),
|
||||
isAccount: !!state.getIn(['accounts', accountId]),
|
||||
statusIds: state.getIn(['timelines', `account:${path}`, 'items'], ImmutableList()),
|
||||
featuredStatusIds: withReplies ? ImmutableList() : state.getIn(['timelines', `account:${accountId}:pinned`, 'items'], ImmutableList()),
|
||||
|
@ -28,6 +31,14 @@ const mapStateToProps = (state, { params: { accountId }, withReplies = false })
|
|||
};
|
||||
};
|
||||
|
||||
const RemoteHint = ({ url }) => (
|
||||
<TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.statuses' defaultMessage='Older toots' />} />
|
||||
);
|
||||
|
||||
RemoteHint.propTypes = {
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default @connect(mapStateToProps)
|
||||
class AccountTimeline extends ImmutablePureComponent {
|
||||
|
||||
|
@ -40,6 +51,8 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
hasMore: PropTypes.bool,
|
||||
withReplies: PropTypes.bool,
|
||||
isAccount: PropTypes.bool,
|
||||
remote: PropTypes.bool,
|
||||
remoteUrl: PropTypes.string,
|
||||
multiColumn: PropTypes.bool,
|
||||
};
|
||||
|
||||
|
@ -78,7 +91,7 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
render () {
|
||||
const { statusIds, featuredStatusIds, isLoading, hasMore, isAccount, multiColumn } = this.props;
|
||||
const { statusIds, featuredStatusIds, isLoading, hasMore, isAccount, multiColumn, remote, remoteUrl } = this.props;
|
||||
|
||||
if (!isAccount) {
|
||||
return (
|
||||
|
@ -97,6 +110,16 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
);
|
||||
}
|
||||
|
||||
let emptyMessage;
|
||||
|
||||
if (remote && statusIds.isEmpty()) {
|
||||
emptyMessage = <RemoteHint url={remoteUrl} />;
|
||||
} else {
|
||||
emptyMessage = <FormattedMessage id='empty_column.account_timeline' defaultMessage='No toots here!' />;
|
||||
}
|
||||
|
||||
const remoteMessage = remote ? <RemoteHint url={remoteUrl} /> : null;
|
||||
|
||||
return (
|
||||
<Column ref={this.setRef} name='account'>
|
||||
<ProfileColumnHeader onClick={this.handleHeaderClick} multiColumn={multiColumn} />
|
||||
|
@ -104,13 +127,14 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
<StatusList
|
||||
prepend={<HeaderContainer accountId={this.props.params.accountId} />}
|
||||
alwaysPrepend
|
||||
append={remoteMessage}
|
||||
scrollKey='account_timeline'
|
||||
statusIds={statusIds}
|
||||
featuredStatusIds={featuredStatusIds}
|
||||
isLoading={isLoading}
|
||||
hasMore={hasMore}
|
||||
onLoadMore={this.handleLoadMore}
|
||||
emptyMessage={<FormattedMessage id='empty_column.account_timeline' defaultMessage='No toots here!' />}
|
||||
emptyMessage={emptyMessage}
|
||||
bindToDocument={!multiColumn}
|
||||
timelineId='account'
|
||||
/>
|
||||
|
|
|
@ -125,6 +125,7 @@ class Audio extends React.PureComponent {
|
|||
this.wavesurfer.createPeakCache();
|
||||
this.wavesurfer.load(this.props.src);
|
||||
this.wavesurfer.toggleInteraction();
|
||||
this.wavesurfer.setVolume(this.state.volume);
|
||||
this.loaded = true;
|
||||
}
|
||||
|
||||
|
|
|
@ -17,14 +17,25 @@ import HeaderContainer from 'flavours/glitch/features/account_timeline/container
|
|||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
import MissingIndicator from 'flavours/glitch/components/missing_indicator';
|
||||
import ScrollableList from 'flavours/glitch/components/scrollable_list';
|
||||
import TimelineHint from 'flavours/glitch/components/timeline_hint';
|
||||
|
||||
const mapStateToProps = (state, props) => ({
|
||||
remote: !!state.getIn(['accounts', props.params.accountId, 'acct']) !== state.getIn(['accounts', props.params.accountId, 'username']),
|
||||
remoteUrl: state.getIn(['accounts', props.params.accountId, 'url']),
|
||||
isAccount: !!state.getIn(['accounts', props.params.accountId]),
|
||||
accountIds: state.getIn(['user_lists', 'followers', props.params.accountId, 'items']),
|
||||
hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next']),
|
||||
isLoading: state.getIn(['user_lists', 'followers', props.params.accountId, 'isLoading'], true),
|
||||
});
|
||||
|
||||
const RemoteHint = ({ url }) => (
|
||||
<TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.followers' defaultMessage='Followers' />} />
|
||||
);
|
||||
|
||||
RemoteHint.propTypes = {
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default @connect(mapStateToProps)
|
||||
class Followers extends ImmutablePureComponent {
|
||||
|
||||
|
@ -35,6 +46,8 @@ class Followers extends ImmutablePureComponent {
|
|||
hasMore: PropTypes.bool,
|
||||
isLoading: PropTypes.bool,
|
||||
isAccount: PropTypes.bool,
|
||||
remote: PropTypes.bool,
|
||||
remoteUrl: PropTypes.string,
|
||||
multiColumn: PropTypes.bool,
|
||||
};
|
||||
|
||||
|
@ -65,7 +78,7 @@ class Followers extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
render () {
|
||||
const { accountIds, hasMore, isAccount, multiColumn, isLoading } = this.props;
|
||||
const { accountIds, hasMore, isAccount, multiColumn, isLoading, remote, remoteUrl } = this.props;
|
||||
|
||||
if (!isAccount) {
|
||||
return (
|
||||
|
@ -83,7 +96,15 @@ class Followers extends ImmutablePureComponent {
|
|||
);
|
||||
}
|
||||
|
||||
const emptyMessage = <FormattedMessage id='account.followers.empty' defaultMessage='No one follows this user yet.' />;
|
||||
let emptyMessage;
|
||||
|
||||
if (remote && accountIds.isEmpty()) {
|
||||
emptyMessage = <RemoteHint url={remoteUrl} />;
|
||||
} else {
|
||||
emptyMessage = <FormattedMessage id='account.followers.empty' defaultMessage='No one follows this user yet.' />;
|
||||
}
|
||||
|
||||
const remoteMessage = remote ? <RemoteHint url={remoteUrl} /> : null;
|
||||
|
||||
return (
|
||||
<Column ref={this.setRef}>
|
||||
|
@ -96,6 +117,7 @@ class Followers extends ImmutablePureComponent {
|
|||
onLoadMore={this.handleLoadMore}
|
||||
prepend={<HeaderContainer accountId={this.props.params.accountId} hideTabs />}
|
||||
alwaysPrepend
|
||||
append={remoteMessage}
|
||||
emptyMessage={emptyMessage}
|
||||
bindToDocument={!multiColumn}
|
||||
>
|
||||
|
|
|
@ -17,14 +17,25 @@ import HeaderContainer from 'flavours/glitch/features/account_timeline/container
|
|||
import ImmutablePureComponent from 'react-immutable-pure-component';
|
||||
import MissingIndicator from 'flavours/glitch/components/missing_indicator';
|
||||
import ScrollableList from 'flavours/glitch/components/scrollable_list';
|
||||
import TimelineHint from 'flavours/glitch/components/timeline_hint';
|
||||
|
||||
const mapStateToProps = (state, props) => ({
|
||||
remote: !!state.getIn(['accounts', props.params.accountId, 'acct']) !== state.getIn(['accounts', props.params.accountId, 'username']),
|
||||
remoteUrl: state.getIn(['accounts', props.params.accountId, 'url']),
|
||||
isAccount: !!state.getIn(['accounts', props.params.accountId]),
|
||||
accountIds: state.getIn(['user_lists', 'following', props.params.accountId, 'items']),
|
||||
hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next']),
|
||||
isLoading: state.getIn(['user_lists', 'following', props.params.accountId, 'isLoading'], true),
|
||||
});
|
||||
|
||||
const RemoteHint = ({ url }) => (
|
||||
<TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.follows' defaultMessage='Follows' />} />
|
||||
);
|
||||
|
||||
RemoteHint.propTypes = {
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default @connect(mapStateToProps)
|
||||
class Following extends ImmutablePureComponent {
|
||||
|
||||
|
@ -35,6 +46,8 @@ class Following extends ImmutablePureComponent {
|
|||
hasMore: PropTypes.bool,
|
||||
isLoading: PropTypes.bool,
|
||||
isAccount: PropTypes.bool,
|
||||
remote: PropTypes.bool,
|
||||
remoteUrl: PropTypes.string,
|
||||
multiColumn: PropTypes.bool,
|
||||
};
|
||||
|
||||
|
@ -65,7 +78,7 @@ class Following extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
render () {
|
||||
const { accountIds, hasMore, isAccount, multiColumn, isLoading } = this.props;
|
||||
const { accountIds, hasMore, isAccount, multiColumn, isLoading, remote, remoteUrl } = this.props;
|
||||
|
||||
if (!isAccount) {
|
||||
return (
|
||||
|
@ -83,7 +96,15 @@ class Following extends ImmutablePureComponent {
|
|||
);
|
||||
}
|
||||
|
||||
const emptyMessage = <FormattedMessage id='account.follows.empty' defaultMessage="This user doesn't follow anyone yet." />;
|
||||
let emptyMessage;
|
||||
|
||||
if (remote && accountIds.isEmpty()) {
|
||||
emptyMessage = <RemoteHint url={remoteUrl} />;
|
||||
} else {
|
||||
emptyMessage = <FormattedMessage id='account.follows.empty' defaultMessage="This user doesn't follow anyone yet." />;
|
||||
}
|
||||
|
||||
const remoteMessage = remote ? <RemoteHint url={remoteUrl} /> : null;
|
||||
|
||||
return (
|
||||
<Column ref={this.setRef}>
|
||||
|
@ -96,6 +117,7 @@ class Following extends ImmutablePureComponent {
|
|||
onLoadMore={this.handleLoadMore}
|
||||
prepend={<HeaderContainer accountId={this.props.params.accountId} hideTabs />}
|
||||
alwaysPrepend
|
||||
append={remoteMessage}
|
||||
emptyMessage={emptyMessage}
|
||||
bindToDocument={!multiColumn}
|
||||
>
|
||||
|
|
|
@ -1093,6 +1093,31 @@
|
|||
border-bottom: 1px solid lighten($ui-base-color, 8%);
|
||||
}
|
||||
|
||||
.timeline-hint {
|
||||
text-align: center;
|
||||
color: $darker-text-color;
|
||||
padding: 15px;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
cursor: default;
|
||||
|
||||
strong {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
a {
|
||||
color: lighten($ui-highlight-color, 8%);
|
||||
text-decoration: none;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
text-decoration: underline;
|
||||
color: lighten($ui-highlight-color, 12%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.missing-indicator {
|
||||
padding-top: 20px + 48px;
|
||||
|
||||
|
|
|
@ -6,13 +6,18 @@ const trie = new Trie(Object.keys(unicodeMapping));
|
|||
|
||||
const assetHost = process.env.CDN_HOST || '';
|
||||
|
||||
// Emoji requiring extra borders depending on theme
|
||||
const darkEmoji = '🎱🐜⚫🖤⬛◼️◾◼️✒️▪️💣🎳📷📸♣️🕶️✴️🔌💂♀️📽️🍳🦍💂🔪🕳️🕹️🕋🖊️🖋️💂♂️🎤🎓🎥🎼♠️🎩🦃📼📹🎮🐃🏴';
|
||||
const lightEmoji = '👽⚾🐔☁️💨🕊️👀🍥👻🐐❕❔⛸️🌩️🔊🔇📃🌧️🐏🍚🍙🐓🐑💀☠️🌨️🔉🔈💬💭🏐🏳️⚪⬜◽◻️▫️';
|
||||
// Convert to file names from emojis. (For different variation selector emojis)
|
||||
const emojiFilenames = (emojis) => {
|
||||
return emojis.map(v => unicodeMapping[v].filename);
|
||||
};
|
||||
|
||||
const emojiFilename = (filename, match) => {
|
||||
// Emoji requiring extra borders depending on theme
|
||||
const darkEmoji = emojiFilenames(['🎱', '🐜', '⚫', '🖤', '⬛', '◼️', '◾', '◼️', '✒️', '▪️', '💣', '🎳', '📷', '📸', '♣️', '🕶️', '✴️', '🔌', '💂♀️', '📽️', '🍳', '🦍', '💂', '🔪', '🕳️', '🕹️', '🕋', '🖊️', '🖋️', '💂♂️', '🎤', '🎓', '🎥', '🎼', '♠️', '🎩', '🦃', '📼', '📹', '🎮', '🐃', '🏴']);
|
||||
const lightEmoji = emojiFilenames(['👽', '⚾', '🐔', '☁️', '💨', '🕊️', '👀', '🍥', '👻', '🐐', '❕', '❔', '⛸️', '🌩️', '🔊', '🔇', '📃', '🌧️', '🐏', '🍚', '🍙', '🐓', '🐑', '💀', '☠️', '🌨️', '🔉', '🔈', '💬', '💭', '🏐', '🏳️', '⚪', '⬜', '◽', '◻️', '▫️']);
|
||||
|
||||
const emojiFilename = (filename) => {
|
||||
const borderedEmoji = (document.body && document.body.classList.contains('skin-mastodon-light')) ? lightEmoji : darkEmoji;
|
||||
return borderedEmoji.includes(match) ? (filename + '_border') : filename;
|
||||
return borderedEmoji.includes(filename) ? (filename + '_border') : filename;
|
||||
};
|
||||
|
||||
const emojify = (str, customEmojis = {}) => {
|
||||
|
@ -69,7 +74,7 @@ const emojify = (str, customEmojis = {}) => {
|
|||
} else if (!useSystemEmojiFont) { // matched to unicode emoji
|
||||
const { filename, shortCode } = unicodeMapping[match];
|
||||
const title = shortCode ? `:${shortCode}:` : '';
|
||||
replacement = `<img draggable="false" class="emojione" alt="${match}" title="${title}" src="${assetHost}/emoji/${emojiFilename(filename, match)}.svg" />`;
|
||||
replacement = `<img draggable="false" class="emojione" alt="${match}" title="${title}" src="${assetHost}/emoji/${emojiFilename(filename)}.svg" />`;
|
||||
rend = i + match.length;
|
||||
// If the matched character was followed by VS15 (for selecting text presentation), skip it.
|
||||
if (str.codePointAt(rend) === 65038) {
|
||||
|
|
|
@ -66,7 +66,7 @@ export default class ModalRoot extends React.PureComponent {
|
|||
// immediately selectable, we have to wait for observers to run, as
|
||||
// described in https://github.com/WICG/inert#performance-and-gotchas
|
||||
Promise.resolve().then(() => {
|
||||
this.activeElement.focus();
|
||||
this.activeElement.focus({ preventScroll: true });
|
||||
this.activeElement = null;
|
||||
}).catch((error) => {
|
||||
console.error(error);
|
||||
|
|
|
@ -32,6 +32,7 @@ export default class ScrollableList extends PureComponent {
|
|||
hasMore: PropTypes.bool,
|
||||
numPending: PropTypes.number,
|
||||
prepend: PropTypes.node,
|
||||
append: PropTypes.node,
|
||||
alwaysPrepend: PropTypes.bool,
|
||||
emptyMessage: PropTypes.node,
|
||||
children: PropTypes.node,
|
||||
|
@ -280,7 +281,7 @@ export default class ScrollableList extends PureComponent {
|
|||
}
|
||||
|
||||
render () {
|
||||
const { children, scrollKey, trackScroll, shouldUpdateScroll, showLoading, isLoading, hasMore, numPending, prepend, alwaysPrepend, emptyMessage, onLoadMore } = this.props;
|
||||
const { children, scrollKey, trackScroll, shouldUpdateScroll, showLoading, isLoading, hasMore, numPending, prepend, alwaysPrepend, append, emptyMessage, onLoadMore } = this.props;
|
||||
const { fullscreen } = this.state;
|
||||
const childrenCount = React.Children.count(children);
|
||||
|
||||
|
@ -327,6 +328,8 @@ export default class ScrollableList extends PureComponent {
|
|||
))}
|
||||
|
||||
{loadMore}
|
||||
|
||||
{!hasMore && append}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
|
18
app/javascript/mastodon/components/timeline_hint.js
Normal file
18
app/javascript/mastodon/components/timeline_hint.js
Normal file
|
@ -0,0 +1,18 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
const TimelineHint = ({ resource, url }) => (
|
||||
<div className='timeline-hint'>
|
||||
<strong><FormattedMessage id='timeline_hint.remote_resource_not_displayed' defaultMessage='{resource} from other servers are not displayed.' values={{ resource }} /></strong>
|
||||
<br />
|
||||
<a href={url} target='_blank'><FormattedMessage id='account.browse_more_on_origin_server' defaultMessage='Browse more on the original profile' /></a>
|
||||
</div>
|
||||
);
|
||||
|
||||
TimelineHint.propTypes = {
|
||||
resource: PropTypes.node.isRequired,
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default TimelineHint;
|
|
@ -14,6 +14,7 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
|
|||
import { FormattedMessage } from 'react-intl';
|
||||
import { fetchAccountIdentityProofs } from '../../actions/identity_proofs';
|
||||
import MissingIndicator from 'mastodon/components/missing_indicator';
|
||||
import TimelineHint from 'mastodon/components/timeline_hint';
|
||||
|
||||
const emptyList = ImmutableList();
|
||||
|
||||
|
@ -21,6 +22,8 @@ const mapStateToProps = (state, { params: { accountId }, withReplies = false })
|
|||
const path = withReplies ? `${accountId}:with_replies` : accountId;
|
||||
|
||||
return {
|
||||
remote: !!state.getIn(['accounts', accountId, 'acct']) !== state.getIn(['accounts', accountId, 'username']),
|
||||
remoteUrl: state.getIn(['accounts', accountId, 'url']),
|
||||
isAccount: !!state.getIn(['accounts', accountId]),
|
||||
statusIds: state.getIn(['timelines', `account:${path}`, 'items'], emptyList),
|
||||
featuredStatusIds: withReplies ? ImmutableList() : state.getIn(['timelines', `account:${accountId}:pinned`, 'items'], emptyList),
|
||||
|
@ -30,6 +33,14 @@ const mapStateToProps = (state, { params: { accountId }, withReplies = false })
|
|||
};
|
||||
};
|
||||
|
||||
const RemoteHint = ({ url }) => (
|
||||
<TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.statuses' defaultMessage='Older toots' />} />
|
||||
);
|
||||
|
||||
RemoteHint.propTypes = {
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default @connect(mapStateToProps)
|
||||
class AccountTimeline extends ImmutablePureComponent {
|
||||
|
||||
|
@ -44,6 +55,8 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
withReplies: PropTypes.bool,
|
||||
blockedBy: PropTypes.bool,
|
||||
isAccount: PropTypes.bool,
|
||||
remote: PropTypes.bool,
|
||||
remoteUrl: PropTypes.string,
|
||||
multiColumn: PropTypes.bool,
|
||||
};
|
||||
|
||||
|
@ -78,7 +91,7 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
}
|
||||
|
||||
render () {
|
||||
const { shouldUpdateScroll, statusIds, featuredStatusIds, isLoading, hasMore, blockedBy, isAccount, multiColumn } = this.props;
|
||||
const { shouldUpdateScroll, statusIds, featuredStatusIds, isLoading, hasMore, blockedBy, isAccount, multiColumn, remote, remoteUrl } = this.props;
|
||||
|
||||
if (!isAccount) {
|
||||
return (
|
||||
|
@ -97,7 +110,17 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
);
|
||||
}
|
||||
|
||||
const emptyMessage = blockedBy ? <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' /> : <FormattedMessage id='empty_column.account_timeline' defaultMessage='No toots here!' />;
|
||||
let emptyMessage;
|
||||
|
||||
if (blockedBy) {
|
||||
emptyMessage = <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' />;
|
||||
} else if (remote && statusIds.isEmpty()) {
|
||||
emptyMessage = <RemoteHint url={remoteUrl} />;
|
||||
} else {
|
||||
emptyMessage = <FormattedMessage id='empty_column.account_timeline' defaultMessage='No toots here!' />;
|
||||
}
|
||||
|
||||
const remoteMessage = remote ? <RemoteHint url={remoteUrl} /> : null;
|
||||
|
||||
return (
|
||||
<Column>
|
||||
|
@ -106,6 +129,7 @@ class AccountTimeline extends ImmutablePureComponent {
|
|||
<StatusList
|
||||
prepend={<HeaderContainer accountId={this.props.params.accountId} />}
|
||||
alwaysPrepend
|
||||
append={remoteMessage}
|
||||
scrollKey='account_timeline'
|
||||
statusIds={blockedBy ? emptyList : statusIds}
|
||||
featuredStatusIds={featuredStatusIds}
|
||||
|
|
|
@ -128,6 +128,7 @@ class Audio extends React.PureComponent {
|
|||
this.wavesurfer.createPeakCache();
|
||||
this.wavesurfer.load(this.props.src);
|
||||
this.wavesurfer.toggleInteraction();
|
||||
this.wavesurfer.setVolume(this.state.volume);
|
||||
this.loaded = true;
|
||||
}
|
||||
|
||||
|
|
|
@ -78,5 +78,15 @@ describe('emoji', () => {
|
|||
expect(emojify('✴︎')) // This is U+2734 EIGHT POINTED BLACK STAR then U+FE0E VARIATION SELECTOR-15
|
||||
.toEqual('<img draggable="false" class="emojione" alt="✴" title=":eight_pointed_black_star:" src="/emoji/2734_border.svg" />');
|
||||
});
|
||||
|
||||
it('does an simple emoji properly', () => {
|
||||
expect(emojify('♀♂'))
|
||||
.toEqual('<img draggable="false" class="emojione" alt="♀" title=":female_sign:" src="/emoji/2640.svg" /><img draggable="false" class="emojione" alt="♂" title=":male_sign:" src="/emoji/2642.svg" />');
|
||||
});
|
||||
|
||||
it('does an emoji containing ZWJ properly', () => {
|
||||
expect(emojify('💂♀️💂♂️'))
|
||||
.toEqual('<img draggable="false" class="emojione" alt="💂\u200D♀️" title=":female-guard:" src="/emoji/1f482-200d-2640-fe0f_border.svg" /><img draggable="false" class="emojione" alt="💂\u200D♂️" title=":male-guard:" src="/emoji/1f482-200d-2642-fe0f_border.svg" />');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
@ -6,13 +6,18 @@ const trie = new Trie(Object.keys(unicodeMapping));
|
|||
|
||||
const assetHost = process.env.CDN_HOST || '';
|
||||
|
||||
// Emoji requiring extra borders depending on theme
|
||||
const darkEmoji = '🎱🐜⚫🖤⬛◼️◾◼️✒️▪️💣🎳📷📸♣️🕶️✴️🔌💂♀️📽️🍳🦍💂🔪🕳️🕹️🕋🖊️🖋️💂♂️🎤🎓🎥🎼♠️🎩🦃📼📹🎮🐃🏴';
|
||||
const lightEmoji = '👽⚾🐔☁️💨🕊️👀🍥👻🐐❕❔⛸️🌩️🔊🔇📃🌧️🐏🍚🍙🐓🐑💀☠️🌨️🔉🔈💬💭🏐🏳️⚪⬜◽◻️▫️';
|
||||
// Convert to file names from emojis. (For different variation selector emojis)
|
||||
const emojiFilenames = (emojis) => {
|
||||
return emojis.map(v => unicodeMapping[v].filename);
|
||||
};
|
||||
|
||||
const emojiFilename = (filename, match) => {
|
||||
// Emoji requiring extra borders depending on theme
|
||||
const darkEmoji = emojiFilenames(['🎱', '🐜', '⚫', '🖤', '⬛', '◼️', '◾', '◼️', '✒️', '▪️', '💣', '🎳', '📷', '📸', '♣️', '🕶️', '✴️', '🔌', '💂♀️', '📽️', '🍳', '🦍', '💂', '🔪', '🕳️', '🕹️', '🕋', '🖊️', '🖋️', '💂♂️', '🎤', '🎓', '🎥', '🎼', '♠️', '🎩', '🦃', '📼', '📹', '🎮', '🐃', '🏴']);
|
||||
const lightEmoji = emojiFilenames(['👽', '⚾', '🐔', '☁️', '💨', '🕊️', '👀', '🍥', '👻', '🐐', '❕', '❔', '⛸️', '🌩️', '🔊', '🔇', '📃', '🌧️', '🐏', '🍚', '🍙', '🐓', '🐑', '💀', '☠️', '🌨️', '🔉', '🔈', '💬', '💭', '🏐', '🏳️', '⚪', '⬜', '◽', '◻️', '▫️']);
|
||||
|
||||
const emojiFilename = (filename) => {
|
||||
const borderedEmoji = (document.body && document.body.classList.contains('theme-mastodon-light')) ? lightEmoji : darkEmoji;
|
||||
return borderedEmoji.includes(match) ? (filename + '_border') : filename;
|
||||
return borderedEmoji.includes(filename) ? (filename + '_border') : filename;
|
||||
};
|
||||
|
||||
const emojify = (str, customEmojis = {}) => {
|
||||
|
@ -69,7 +74,7 @@ const emojify = (str, customEmojis = {}) => {
|
|||
} else { // matched to unicode emoji
|
||||
const { filename, shortCode } = unicodeMapping[match];
|
||||
const title = shortCode ? `:${shortCode}:` : '';
|
||||
replacement = `<img draggable="false" class="emojione" alt="${match}" title="${title}" src="${assetHost}/emoji/${emojiFilename(filename, match)}.svg" />`;
|
||||
replacement = `<img draggable="false" class="emojione" alt="${match}" title="${title}" src="${assetHost}/emoji/${emojiFilename(filename)}.svg" />`;
|
||||
rend = i + match.length;
|
||||
// If the matched character was followed by VS15 (for selecting text presentation), skip it.
|
||||
if (str.codePointAt(rend) === 65038) {
|
||||
|
|
|
@ -17,8 +17,11 @@ import HeaderContainer from '../account_timeline/containers/header_container';
|
|||
import ColumnBackButton from '../../components/column_back_button';
|
||||
import ScrollableList from '../../components/scrollable_list';
|
||||
import MissingIndicator from 'mastodon/components/missing_indicator';
|
||||
import TimelineHint from 'mastodon/components/timeline_hint';
|
||||
|
||||
const mapStateToProps = (state, props) => ({
|
||||
remote: !!state.getIn(['accounts', props.params.accountId, 'acct']) !== state.getIn(['accounts', props.params.accountId, 'username']),
|
||||
remoteUrl: state.getIn(['accounts', props.params.accountId, 'url']),
|
||||
isAccount: !!state.getIn(['accounts', props.params.accountId]),
|
||||
accountIds: state.getIn(['user_lists', 'followers', props.params.accountId, 'items']),
|
||||
hasMore: !!state.getIn(['user_lists', 'followers', props.params.accountId, 'next']),
|
||||
|
@ -26,6 +29,14 @@ const mapStateToProps = (state, props) => ({
|
|||
blockedBy: state.getIn(['relationships', props.params.accountId, 'blocked_by'], false),
|
||||
});
|
||||
|
||||
const RemoteHint = ({ url }) => (
|
||||
<TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.followers' defaultMessage='Followers' />} />
|
||||
);
|
||||
|
||||
RemoteHint.propTypes = {
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default @connect(mapStateToProps)
|
||||
class Followers extends ImmutablePureComponent {
|
||||
|
||||
|
@ -38,6 +49,8 @@ class Followers extends ImmutablePureComponent {
|
|||
isLoading: PropTypes.bool,
|
||||
blockedBy: PropTypes.bool,
|
||||
isAccount: PropTypes.bool,
|
||||
remote: PropTypes.bool,
|
||||
remoteUrl: PropTypes.string,
|
||||
multiColumn: PropTypes.bool,
|
||||
};
|
||||
|
||||
|
@ -60,7 +73,7 @@ class Followers extends ImmutablePureComponent {
|
|||
}, 300, { leading: true });
|
||||
|
||||
render () {
|
||||
const { shouldUpdateScroll, accountIds, hasMore, blockedBy, isAccount, multiColumn, isLoading } = this.props;
|
||||
const { shouldUpdateScroll, accountIds, hasMore, blockedBy, isAccount, multiColumn, isLoading, remote, remoteUrl } = this.props;
|
||||
|
||||
if (!isAccount) {
|
||||
return (
|
||||
|
@ -78,7 +91,17 @@ class Followers extends ImmutablePureComponent {
|
|||
);
|
||||
}
|
||||
|
||||
const emptyMessage = blockedBy ? <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' /> : <FormattedMessage id='account.followers.empty' defaultMessage='No one follows this user yet.' />;
|
||||
let emptyMessage;
|
||||
|
||||
if (blockedBy) {
|
||||
emptyMessage = <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' />;
|
||||
} else if (remote && accountIds.isEmpty()) {
|
||||
emptyMessage = <RemoteHint url={remoteUrl} />;
|
||||
} else {
|
||||
emptyMessage = <FormattedMessage id='account.followers.empty' defaultMessage='No one follows this user yet.' />;
|
||||
}
|
||||
|
||||
const remoteMessage = remote ? <RemoteHint url={remoteUrl} /> : null;
|
||||
|
||||
return (
|
||||
<Column>
|
||||
|
@ -92,6 +115,7 @@ class Followers extends ImmutablePureComponent {
|
|||
shouldUpdateScroll={shouldUpdateScroll}
|
||||
prepend={<HeaderContainer accountId={this.props.params.accountId} hideTabs />}
|
||||
alwaysPrepend
|
||||
append={remoteMessage}
|
||||
emptyMessage={emptyMessage}
|
||||
bindToDocument={!multiColumn}
|
||||
>
|
||||
|
|
|
@ -17,8 +17,11 @@ import HeaderContainer from '../account_timeline/containers/header_container';
|
|||
import ColumnBackButton from '../../components/column_back_button';
|
||||
import ScrollableList from '../../components/scrollable_list';
|
||||
import MissingIndicator from 'mastodon/components/missing_indicator';
|
||||
import TimelineHint from 'mastodon/components/timeline_hint';
|
||||
|
||||
const mapStateToProps = (state, props) => ({
|
||||
remote: !!state.getIn(['accounts', props.params.accountId, 'acct']) !== state.getIn(['accounts', props.params.accountId, 'username']),
|
||||
remoteUrl: state.getIn(['accounts', props.params.accountId, 'url']),
|
||||
isAccount: !!state.getIn(['accounts', props.params.accountId]),
|
||||
accountIds: state.getIn(['user_lists', 'following', props.params.accountId, 'items']),
|
||||
hasMore: !!state.getIn(['user_lists', 'following', props.params.accountId, 'next']),
|
||||
|
@ -26,6 +29,14 @@ const mapStateToProps = (state, props) => ({
|
|||
blockedBy: state.getIn(['relationships', props.params.accountId, 'blocked_by'], false),
|
||||
});
|
||||
|
||||
const RemoteHint = ({ url }) => (
|
||||
<TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.follows' defaultMessage='Follows' />} />
|
||||
);
|
||||
|
||||
RemoteHint.propTypes = {
|
||||
url: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
export default @connect(mapStateToProps)
|
||||
class Following extends ImmutablePureComponent {
|
||||
|
||||
|
@ -38,6 +49,8 @@ class Following extends ImmutablePureComponent {
|
|||
isLoading: PropTypes.bool,
|
||||
blockedBy: PropTypes.bool,
|
||||
isAccount: PropTypes.bool,
|
||||
remote: PropTypes.bool,
|
||||
remoteUrl: PropTypes.string,
|
||||
multiColumn: PropTypes.bool,
|
||||
};
|
||||
|
||||
|
@ -60,7 +73,7 @@ class Following extends ImmutablePureComponent {
|
|||
}, 300, { leading: true });
|
||||
|
||||
render () {
|
||||
const { shouldUpdateScroll, accountIds, hasMore, blockedBy, isAccount, multiColumn, isLoading } = this.props;
|
||||
const { shouldUpdateScroll, accountIds, hasMore, blockedBy, isAccount, multiColumn, isLoading, remote, remoteUrl } = this.props;
|
||||
|
||||
if (!isAccount) {
|
||||
return (
|
||||
|
@ -78,7 +91,17 @@ class Following extends ImmutablePureComponent {
|
|||
);
|
||||
}
|
||||
|
||||
const emptyMessage = blockedBy ? <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' /> : <FormattedMessage id='account.follows.empty' defaultMessage="This user doesn't follow anyone yet." />;
|
||||
let emptyMessage;
|
||||
|
||||
if (blockedBy) {
|
||||
emptyMessage = <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' />;
|
||||
} else if (remote && accountIds.isEmpty()) {
|
||||
emptyMessage = <RemoteHint url={remoteUrl} />;
|
||||
} else {
|
||||
emptyMessage = <FormattedMessage id='account.follows.empty' defaultMessage="This user doesn't follow anyone yet." />;
|
||||
}
|
||||
|
||||
const remoteMessage = remote ? <RemoteHint url={remoteUrl} /> : null;
|
||||
|
||||
return (
|
||||
<Column>
|
||||
|
@ -92,6 +115,7 @@ class Following extends ImmutablePureComponent {
|
|||
shouldUpdateScroll={shouldUpdateScroll}
|
||||
prepend={<HeaderContainer accountId={this.props.params.accountId} hideTabs />}
|
||||
alwaysPrepend
|
||||
append={remoteMessage}
|
||||
emptyMessage={emptyMessage}
|
||||
bindToDocument={!multiColumn}
|
||||
>
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "حظر @{name}",
|
||||
"account.block_domain": "إخفاء كل شيء قادم من اسم النطاق {domain}",
|
||||
"account.blocked": "محظور",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "إلغاء طلب المتابَعة",
|
||||
"account.direct": "رسالة خاصة إلى @{name}",
|
||||
"account.domain_blocked": "النطاق مخفي",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "للردّ",
|
||||
"keyboard_shortcuts.requests": "لفتح قائمة طلبات المتابعة",
|
||||
"keyboard_shortcuts.search": "للتركيز على البحث",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "لفتح عمود \"هيا نبدأ\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "لعرض أو إخفاء النص مِن وراء التحذير",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "لعرض/إخفاء الوسائط",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# دقيقة} other {# دقائق}} متبقية",
|
||||
"time_remaining.moments": "لحظات متبقية",
|
||||
"time_remaining.seconds": "{number, plural, one {# ثانية} other {# ثوانٍ}} متبقية",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, zero {} one {شخص واحد} two {شخصين} few {أشخاص} many {أشخاص} other {أشخاص}} تتحدّث",
|
||||
"trends.trending_now": "المتداولة الآن",
|
||||
"ui.beforeunload": "سوف تفقد مسودتك إن تركت ماستدون.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloquiar a @{name}",
|
||||
"account.block_domain": "Anubrir tolo de {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Encaboxar la solicitú de siguimientu",
|
||||
"account.direct": "Unviar un mensaxe direutu a @{name}",
|
||||
"account.domain_blocked": "Dominiu anubríu",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "pa responder",
|
||||
"keyboard_shortcuts.requests": "p'abrir la llista de solicitúes de siguimientu",
|
||||
"keyboard_shortcuts.search": "pa enfocar la gueta",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "p'abrir la columna «entamar»",
|
||||
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minutu restante} other {# minutos restantes}}",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# segundu restante} other {# segundos restantes}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persona} other {persones}} falando",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "El borrador va perdese si coles de Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Блокирай",
|
||||
"account.block_domain": "скрий всичко от (домейн)",
|
||||
"account.blocked": "Блокирани",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Откажи искането за следване",
|
||||
"account.direct": "Direct Message @{name}",
|
||||
"account.domain_blocked": "Скрит домейн",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} কে ব্লক করুন",
|
||||
"account.block_domain": "{domain} থেকে সব আড়াল করুন",
|
||||
"account.blocked": "অবরুদ্ধ",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "অনুসরণ অনুরোধ বাতিল করুন",
|
||||
"account.direct": "@{name} কে সরাসরি বার্তা",
|
||||
"account.domain_blocked": "ডোমেন গোপন করুন",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "মতামত দিতে",
|
||||
"keyboard_shortcuts.requests": "অনুসরণ অনুরোধের তালিকা দেখতে",
|
||||
"keyboard_shortcuts.search": "খোঁজার অংশে ফোকাস করতে",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"প্রথম শুরুর\" কলাম বের করতে",
|
||||
"keyboard_shortcuts.toggle_hidden": "CW লেখা দেখতে বা লুকাতে",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "ভিডিও/ছবি দেখতে বা বন্ধ করতে",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# মিনিট} other {# মিনিট}} বাকি আছে",
|
||||
"time_remaining.moments": "সময় বাকি আছে",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} বাকি আছে",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} কথা বলছে",
|
||||
"trends.trending_now": "বর্তমানে জনপ্রিয়",
|
||||
"ui.beforeunload": "যে পর্যন্ত এটা লেখা হয়েছে, মাস্টাডন থেকে চলে গেলে এটা মুছে যাবে।",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Berzañ @{name}",
|
||||
"account.block_domain": "Berzañ pep tra eus {domain}",
|
||||
"account.blocked": "Stanket",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Nullañ ar bedadenn heuliañ",
|
||||
"account.direct": "Kas ur gemennadenn da @{name}",
|
||||
"account.domain_blocked": "Domani berzet",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "da respont",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Luskad ar mare",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloqueja @{name}",
|
||||
"account.block_domain": "Amaga-ho tot de {domain}",
|
||||
"account.blocked": "Bloquejat",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Anul·la la sol·licitud de seguiment",
|
||||
"account.direct": "Missatge directe @{name}",
|
||||
"account.domain_blocked": "Domini ocult",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "respondre",
|
||||
"keyboard_shortcuts.requests": "per a obrir la llista de sol·licituds de seguiment",
|
||||
"keyboard_shortcuts.search": "per a centrar la cerca",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "per a obrir la columna \"Començar\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "per a mostrar o amagar text sota CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "per a mostrar o amagar contingut multimèdia",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minut} other {# minuts}} restants",
|
||||
"time_remaining.moments": "Moments restants",
|
||||
"time_remaining.seconds": "{number, plural, one {# segon} other {# segons}} restants",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persona} other {persones}} parlant-hi",
|
||||
"trends.trending_now": "Ara en tendència",
|
||||
"ui.beforeunload": "El teu esborrany es perdrà si surts de Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bluccà @{name}",
|
||||
"account.block_domain": "Piattà u duminiu {domain}",
|
||||
"account.blocked": "Bluccatu",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Annullà a dumanda d'abbunamentu",
|
||||
"account.direct": "Missaghju direttu @{name}",
|
||||
"account.domain_blocked": "Duminiu piattatu",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "risponde",
|
||||
"keyboard_shortcuts.requests": "per apre a lista di dumande d'abbunamentu",
|
||||
"keyboard_shortcuts.search": "fucalizà nant'à l'area di circata",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "per apre a culonna \"per principià\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "vede/piattà u testu daretu à l'avertimentu CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "vede/piattà i media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuta ferma} other {# minute fermanu}} left",
|
||||
"time_remaining.moments": "Ci fermanu qualchi mumentu",
|
||||
"time_remaining.seconds": "{number, plural, one {# siconda ferma} other {# siconde fermanu}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} parlanu",
|
||||
"trends.trending_now": "Tindenze d'avà",
|
||||
"ui.beforeunload": "A bruttacopia sarà persa s'ellu hè chjosu Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Zablokovat uživatele @{name}",
|
||||
"account.block_domain": "Skrýt vše ze serveru {domain}",
|
||||
"account.blocked": "Blokováno",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Zrušit žádost o sledování",
|
||||
"account.direct": "Poslat uživateli @{name} přímou zprávu",
|
||||
"account.domain_blocked": "Doména skryta",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "odpovědět",
|
||||
"keyboard_shortcuts.requests": "otevření seznamu požadavků o sledování",
|
||||
"keyboard_shortcuts.search": "zaměření na hledání",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "otevření sloupce „začínáme“",
|
||||
"keyboard_shortcuts.toggle_hidden": "zobrazení/skrytí textu za varováním o obsahu",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "zobrazení/skrytí médií",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {Zbývá # minuta} few {Zbývají # minuty} many {Zbývá # minut} other {Zbývá # minut}}",
|
||||
"time_remaining.moments": "Zbývá několik sekund",
|
||||
"time_remaining.seconds": "{number, plural, one {Zbývá # sekunda} few {Zbývají # sekundy} many {Zbývá # sekund} other {Zbývá # sekund}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {člověk} few {lidé} many {lidí} other {lidí}} hovoří",
|
||||
"trends.trending_now": "Aktuální trendy",
|
||||
"ui.beforeunload": "Pokud Mastodon opustíte, váš koncept se ztratí.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blocio @{name}",
|
||||
"account.block_domain": "Cuddio popeth rhag {domain}",
|
||||
"account.blocked": "Blociwyd",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Canslo cais dilyn",
|
||||
"account.direct": "Neges breifat @{name}",
|
||||
"account.domain_blocked": "Parth wedi ei guddio",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "i ateb",
|
||||
"keyboard_shortcuts.requests": "i agor rhestr ceisiadau dilyn",
|
||||
"keyboard_shortcuts.search": "i ffocysu chwilio",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "i agor colofn \"dechrau arni\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "i ddangos/cuddio testun tu ôl i CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "i ddangos/gyddio cyfryngau",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# funud} other {# o funudau}} ar ôl",
|
||||
"time_remaining.moments": "Munudau ar ôl",
|
||||
"time_remaining.seconds": "{number, plural, one {# eiliad} other {# o eiliadau}} ar ôl",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} yn siarad",
|
||||
"trends.trending_now": "Yn tueddu nawr",
|
||||
"ui.beforeunload": "Mi fyddwch yn colli eich drafft os gadewch Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloker @{name}",
|
||||
"account.block_domain": "Skjul alt fra {domain}",
|
||||
"account.blocked": "Blokeret",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Annullér følgeranmodning",
|
||||
"account.direct": "Send en direkte besked til @{name}",
|
||||
"account.domain_blocked": "Domænet er blevet skjult",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "for at svare",
|
||||
"keyboard_shortcuts.requests": "for at åbne listen over følgeranmodninger",
|
||||
"keyboard_shortcuts.search": "for at fokusere søgningen",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "for at åbne \"kom igen\" kolonnen",
|
||||
"keyboard_shortcuts.toggle_hidden": "for at vise/skjule tekst bag CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "for at vise/skjule medier",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minut} other {# minutter}} tilbage",
|
||||
"time_remaining.moments": "Få øjeblikke tilbage",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekund} other {# sekunder}} tilbage",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {personer}} snakker",
|
||||
"trends.trending_now": "Hot lige nu",
|
||||
"ui.beforeunload": "Din kladde vil gå tabt hvis du forlader Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} blockieren",
|
||||
"account.block_domain": "Alles von {domain} blockieren",
|
||||
"account.blocked": "Blockiert",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Folgeanfrage abbrechen",
|
||||
"account.direct": "Direktnachricht an @{name}",
|
||||
"account.domain_blocked": "Domain versteckt",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "antworten",
|
||||
"keyboard_shortcuts.requests": "Liste der Folge-Anfragen öffnen",
|
||||
"keyboard_shortcuts.search": "Suche fokussieren",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"Erste Schritte\"-Spalte öffnen",
|
||||
"keyboard_shortcuts.toggle_hidden": "Text hinter einer Inhaltswarnung verstecken/anzeigen",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Medien hinter einer Inhaltswarnung verstecken/anzeigen",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# Minute} other {# Minuten}} verbleibend",
|
||||
"time_remaining.moments": "Schließt in Kürze",
|
||||
"time_remaining.seconds": "{number, plural, one {# Sekunde} other {# Sekunden}} verbleibend",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, eine {Person} other {Personen}} reden darüber",
|
||||
"trends.trending_now": "In den Trends",
|
||||
"ui.beforeunload": "Dein Entwurf geht verloren, wenn du Mastodon verlässt.",
|
||||
|
|
|
@ -507,6 +507,19 @@
|
|||
],
|
||||
"path": "app/javascript/mastodon/components/status.json"
|
||||
},
|
||||
{
|
||||
"descriptors": [
|
||||
{
|
||||
"defaultMessage": "{resource} from other servers are not displayed.",
|
||||
"id": "timeline_hint.remote_resource_not_displayed"
|
||||
},
|
||||
{
|
||||
"defaultMessage": "Browse more on the original profile",
|
||||
"id": "account.browse_more_on_origin_server"
|
||||
}
|
||||
],
|
||||
"path": "app/javascript/mastodon/components/timeline_hint.json"
|
||||
},
|
||||
{
|
||||
"descriptors": [
|
||||
{
|
||||
|
@ -619,6 +632,10 @@
|
|||
},
|
||||
{
|
||||
"descriptors": [
|
||||
{
|
||||
"defaultMessage": "Older toots",
|
||||
"id": "timeline_hint.resources.statuses"
|
||||
},
|
||||
{
|
||||
"defaultMessage": "Profile unavailable",
|
||||
"id": "empty_column.account_unavailable"
|
||||
|
@ -1542,6 +1559,10 @@
|
|||
},
|
||||
{
|
||||
"descriptors": [
|
||||
{
|
||||
"defaultMessage": "Followers",
|
||||
"id": "timeline_hint.resources.followers"
|
||||
},
|
||||
{
|
||||
"defaultMessage": "Profile unavailable",
|
||||
"id": "empty_column.account_unavailable"
|
||||
|
@ -1555,6 +1576,10 @@
|
|||
},
|
||||
{
|
||||
"descriptors": [
|
||||
{
|
||||
"defaultMessage": "Follows",
|
||||
"id": "timeline_hint.resources.follows"
|
||||
},
|
||||
{
|
||||
"defaultMessage": "Profile unavailable",
|
||||
"id": "empty_column.account_unavailable"
|
||||
|
@ -1920,6 +1945,10 @@
|
|||
"defaultMessage": "to start a brand new toot",
|
||||
"id": "keyboard_shortcuts.toot"
|
||||
},
|
||||
{
|
||||
"defaultMessage": "to show/hide CW field",
|
||||
"id": "keyboard_shortcuts.spoilers"
|
||||
},
|
||||
{
|
||||
"defaultMessage": "to navigate back",
|
||||
"id": "keyboard_shortcuts.back"
|
||||
|
@ -2427,6 +2456,15 @@
|
|||
],
|
||||
"path": "app/javascript/mastodon/features/status/components/action_bar.json"
|
||||
},
|
||||
{
|
||||
"descriptors": [
|
||||
{
|
||||
"defaultMessage": "Sensitive content",
|
||||
"id": "status.sensitive_warning"
|
||||
}
|
||||
],
|
||||
"path": "app/javascript/mastodon/features/status/components/card.json"
|
||||
},
|
||||
{
|
||||
"descriptors": [
|
||||
{
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Αποκλεισμός @{name}",
|
||||
"account.block_domain": "Απόκρυψη όλων από {domain}",
|
||||
"account.blocked": "Αποκλεισμένος/η",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Ακύρωση αιτήματος παρακολούθησης",
|
||||
"account.direct": "Προσωπικό μήνυμα προς @{name}",
|
||||
"account.domain_blocked": "Κρυμμένος τομέας",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "απάντηση",
|
||||
"keyboard_shortcuts.requests": "άνοιγμα λίστας αιτημάτων παρακολούθησης",
|
||||
"keyboard_shortcuts.search": "εστίαση αναζήτησης",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "άνοιγμα κολώνας \"Ξεκινώντας\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "εμφάνιση/απόκρυψη κειμένου πίσω από την προειδοποίηση",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "εμφάνιση/απόκρυψη πολυμέσων",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "απομένουν {number, plural, one {# λεπτό} other {# λεπτά}}",
|
||||
"time_remaining.moments": "Απομένουν στιγμές",
|
||||
"time_remaining.seconds": "απομένουν {number, plural, one {# δευτερόλεπτο} other {# δευτερόλεπτα}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {άτομο μιλάει} other {άτομα μιλάνε}}",
|
||||
"trends.trending_now": "Δημοφιλή τώρα",
|
||||
"ui.beforeunload": "Το προσχέδιό σου θα χαθεί αν φύγεις από το Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Block @{name}",
|
||||
"account.block_domain": "Block domain {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct message @{name}",
|
||||
"account.domain_blocked": "Domain blocked",
|
||||
|
@ -240,6 +241,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -417,6 +419,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloki @{name}",
|
||||
"account.block_domain": "Kaŝi ĉion de {domain}",
|
||||
"account.blocked": "Blokita",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Nuligi peton de sekvado",
|
||||
"account.direct": "Rekte mesaĝi @{name}",
|
||||
"account.domain_blocked": "Domajno kaŝita",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "respondi",
|
||||
"keyboard_shortcuts.requests": "malfermi la liston de petoj de sekvado",
|
||||
"keyboard_shortcuts.search": "enfokusigi la serĉilon",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "malfermi la kolumnon «por komenci»",
|
||||
"keyboard_shortcuts.toggle_hidden": "montri/kaŝi tekston malantaŭ enhava averto",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "montri/kaŝi aŭdovidaĵojn",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuto} other {# minutoj}} restas",
|
||||
"time_remaining.moments": "Momenteto restas",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekundo} other {# sekundoj}} restas",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persono} other {personoj}} parolas",
|
||||
"trends.trending_now": "Nunaj furoraĵoj",
|
||||
"ui.beforeunload": "Via malneto perdiĝos se vi eliras de Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloquear a @{name}",
|
||||
"account.block_domain": "Ocultar todo de {domain}",
|
||||
"account.blocked": "Bloqueado",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancelar la solicitud de seguimiento",
|
||||
"account.direct": "Mensaje directo a @{name}",
|
||||
"account.domain_blocked": "Dominio oculto",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "para responder",
|
||||
"keyboard_shortcuts.requests": "para abrir la lista de solicitudes de seguimiento",
|
||||
"keyboard_shortcuts.search": "para enfocar la búsqueda",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "para abrir la columna \"Introducción\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "para mostrar/ocultar el texto detrás de la advertencia de contenido",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "para mostrar/ocultar los medios",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural,one {queda # minuto} other {quedan # minutos}}",
|
||||
"time_remaining.moments": "Momentos restantes",
|
||||
"time_remaining.seconds": "{number, plural,one {queda # segundo} other {quedan # segundos}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persona} other {personas}} hablando",
|
||||
"trends.trending_now": "Tendencia ahora",
|
||||
"ui.beforeunload": "Tu borrador se perderá si abandonás Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloquear a @{name}",
|
||||
"account.block_domain": "Ocultar todo de {domain}",
|
||||
"account.blocked": "Bloqueado",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancelar la solicitud de seguimiento",
|
||||
"account.direct": "Mensaje directo a @{name}",
|
||||
"account.domain_blocked": "Dominio oculto",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "para responder",
|
||||
"keyboard_shortcuts.requests": "abrir la lista de peticiones de seguidores",
|
||||
"keyboard_shortcuts.search": "para poner el foco en la búsqueda",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "abrir la columna \"comenzar\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "mostrar/ocultar texto tras aviso de contenido (CW)",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuto restante} other {# minutos restantes}}",
|
||||
"time_remaining.moments": "Momentos restantes",
|
||||
"time_remaining.seconds": "{number, plural, one {# segundo restante} other {# segundos restantes}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persona} other {personas}} hablando",
|
||||
"trends.trending_now": "Tendencia ahora",
|
||||
"ui.beforeunload": "Tu borrador se perderá si sales de Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokeeri @{name}",
|
||||
"account.block_domain": "Peida kõik domeenist {domain}",
|
||||
"account.blocked": "Blokeeritud",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Tühista jälgimistaotlus",
|
||||
"account.direct": "Otsesõnum @{name}",
|
||||
"account.domain_blocked": "Domeen peidetud",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "vastamiseks",
|
||||
"keyboard_shortcuts.requests": "avamaks jälgimistaotluste nimistut",
|
||||
"keyboard_shortcuts.search": "otsingu fokuseerimiseks",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "avamaks \"Alusta\" tulpa",
|
||||
"keyboard_shortcuts.toggle_hidden": "näitamaks/peitmaks teksti CW taga",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "et peita/näidata meediat",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minut} other {# minutit}} left",
|
||||
"time_remaining.moments": "Hetked jäänud",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekund} other {# sekundit}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {inimene} other {inimesed}} talking",
|
||||
"trends.trending_now": "Praegu populaarne",
|
||||
"ui.beforeunload": "Teie mustand läheb kaotsi, kui lahkute Mastodonist.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokeatu @{name}",
|
||||
"account.block_domain": "Ezkutatu {domain} domeinuko guztia",
|
||||
"account.blocked": "Blokeatuta",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Ezeztatu jarraitzeko eskaria",
|
||||
"account.direct": "Mezu zuzena @{name}(r)i",
|
||||
"account.domain_blocked": "Ezkutatutako domeinua",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "erantzutea",
|
||||
"keyboard_shortcuts.requests": "jarraitzeko eskarien zerrenda irekitzeko",
|
||||
"keyboard_shortcuts.search": "bilaketan fokua jartzea",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"Menua\" zutabea irekitzeko",
|
||||
"keyboard_shortcuts.toggle_hidden": "testua erakustea/ezkutatzea abisu baten atzean",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "multimedia erakutsi/ezkutatzeko",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {minutu #} other {# minutu}} amaitzeko",
|
||||
"time_remaining.moments": "Amaitzekotan",
|
||||
"time_remaining.seconds": "{number, plural, one {segundo #} other {# segundo}} amaitzeko",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {pertsona} other {pertsona}} hitz egiten",
|
||||
"trends.trending_now": "Joera orain",
|
||||
"ui.beforeunload": "Zure zirriborroa galduko da Mastodon uzten baduzu.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "مسدودسازی @{name}",
|
||||
"account.block_domain": "نهفتن همه چیز از {domain}",
|
||||
"account.blocked": "مسدود",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "لغو درخواست پیگیری",
|
||||
"account.direct": "پیام خصوصی به @{name}",
|
||||
"account.domain_blocked": "دامنهٔ نهفته",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "برای پاسخ",
|
||||
"keyboard_shortcuts.requests": "برای گشودن فهرست درخواستهای پیگیری",
|
||||
"keyboard_shortcuts.search": "برای تمرکز روی جستجو",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "برای گشودن ستون «آغاز کنید»",
|
||||
"keyboard_shortcuts.toggle_hidden": "برای نمایش/نهفتن نوشتهٔ پشت هشدار محتوا",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "برای نمایش/نهفتن رسانه",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}} باقی مانده",
|
||||
"time_remaining.moments": "زمان باقیمانده",
|
||||
"time_remaining.seconds": "{number, plural, one {# ثانیه} other {# ثانیه}} باقی مانده",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {نفر نوشته است} other {نفر نوشتهاند}}",
|
||||
"trends.trending_now": "پرطرفدار",
|
||||
"ui.beforeunload": "اگر از ماستودون خارج شوید پیشنویس شما از دست خواهد رفت.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Estä @{name}",
|
||||
"account.block_domain": "Piilota kaikki sisältö verkkotunnuksesta {domain}",
|
||||
"account.blocked": "Estetty",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Peruuta seurauspyyntö",
|
||||
"account.direct": "Viesti käyttäjälle @{name}",
|
||||
"account.domain_blocked": "Verkko-osoite piilotettu",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "vastaa",
|
||||
"keyboard_shortcuts.requests": "avaa lista seurauspyynnöistä",
|
||||
"keyboard_shortcuts.search": "siirry hakukenttään",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "avaa \"Aloitus\" -sarake",
|
||||
"keyboard_shortcuts.toggle_hidden": "näytä/piilota sisältövaroituksella merkitty teksti",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "näytä/piilota media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuutti} other {# minuuttia}} jäljellä",
|
||||
"time_remaining.moments": "Hetki jäljellä",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekunti} other {# sekuntia}} jäljellä",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {henkilö} other {henkilöä}} keskustelee",
|
||||
"trends.trending_now": "Suosittua nyt",
|
||||
"ui.beforeunload": "Luonnos häviää, jos poistut Mastodonista.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloquer @{name}",
|
||||
"account.block_domain": "Bloquer le domaine {domain}",
|
||||
"account.blocked": "Bloqué·e",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Annuler la demande de suivi",
|
||||
"account.direct": "Envoyer un message direct à @{name}",
|
||||
"account.domain_blocked": "Domaine bloqué",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "répondre",
|
||||
"keyboard_shortcuts.requests": "ouvrir la liste de demandes d’abonnement",
|
||||
"keyboard_shortcuts.search": "cibler la zone de recherche",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "ouvrir la colonne « Pour commencer »",
|
||||
"keyboard_shortcuts.toggle_hidden": "déplier/replier le texte derrière un CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "afficher/cacher les médias",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} restantes",
|
||||
"time_remaining.moments": "Encore quelques instants",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} restantes",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {personne discute} other {personnes discutent}}",
|
||||
"trends.trending_now": "Tendance en ce moment",
|
||||
"ui.beforeunload": "Votre brouillon sera perdu si vous quittez Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Block @{name}",
|
||||
"account.block_domain": "Hide everything from {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct message @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloquear @{name}",
|
||||
"account.block_domain": "Agochar todo de {domain}",
|
||||
"account.blocked": "Bloqueada",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Desbotar solicitude de seguimento",
|
||||
"account.direct": "Mensaxe directa @{name}",
|
||||
"account.domain_blocked": "Dominio agochado",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "para responder",
|
||||
"keyboard_shortcuts.requests": "para abrir a listaxe das peticións de seguimento",
|
||||
"keyboard_shortcuts.search": "para destacar a procura",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "para abrir a columna dos \"primeiros pasos\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "para amosar/agochar texto detrás do aviso de contido (AC)",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "para amosar/agochar contido multimedia",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuto} other {# minutos}} restantes",
|
||||
"time_remaining.moments": "Momentos restantes",
|
||||
"time_remaining.seconds": "{number, plural, one {# segundo} other {# segundos}} restantes",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persoa} other {persoas}} falando",
|
||||
"trends.trending_now": "Tendencias actuais",
|
||||
"ui.beforeunload": "O borrador perderase se saes de Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "חסימת @{name}",
|
||||
"account.block_domain": "להסתיר הכל מהקהילה {domain}",
|
||||
"account.blocked": "חסום",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "בטל בקשת מעקב",
|
||||
"account.direct": "Direct Message @{name}",
|
||||
"account.domain_blocked": "הדומיין חסוי",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "לענות",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "להתמקד בחלון החיפוש",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "הטיוטא תאבד אם תעזבו את מסטודון.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} को ब्लॉक करें",
|
||||
"account.block_domain": "{domain} के सारी चीज़े छुपाएं",
|
||||
"account.blocked": "ब्लॉक",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "फ़ॉलो रिक्वेस्ट रद्द करें",
|
||||
"account.direct": "प्रत्यक्ष संदेश @{name}",
|
||||
"account.domain_blocked": "छिपा हुआ डोमेन",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "जवाब के लिए",
|
||||
"keyboard_shortcuts.requests": "फॉलो रिक्वेस्ट लिस्ट खोलने के लिए",
|
||||
"keyboard_shortcuts.search": "गहरी खोज के लिए",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokiraj @{name}",
|
||||
"account.block_domain": "Sakrij sve sa {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct Message @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} letiltása",
|
||||
"account.block_domain": "Minden elrejtése innen: {domain}",
|
||||
"account.blocked": "Letiltva",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Követési kérelem törlése",
|
||||
"account.direct": "Közvetlen üzenet @{name} számára",
|
||||
"account.domain_blocked": "Rejtett domain",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "válasz",
|
||||
"keyboard_shortcuts.requests": "követési kérések listájának megnyitása",
|
||||
"keyboard_shortcuts.search": "fókuszálás a keresőre",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"Első lépések\" megnyitása",
|
||||
"keyboard_shortcuts.toggle_hidden": "tartalmi figyelmeztetéssel ellátott szöveg mutatása/elrejtése",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "média mutatása/elrejtése",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# perc} other {# perc}} van hátra",
|
||||
"time_remaining.moments": "Pillanatok vannak hátra",
|
||||
"time_remaining.seconds": "{number, plural, one {# másodperc} other {# másodperc}} van hátra",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {résztvevő} other {résztvevő}} beszélget",
|
||||
"trends.trending_now": "Most felkapott",
|
||||
"ui.beforeunload": "A piszkozatod el fog veszni, ha elhagyod a Mastodont.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Արգելափակել @{name}֊ին",
|
||||
"account.block_domain": "Թաքցնել ամէնը հետեւեալ տիրոյթից՝ {domain}",
|
||||
"account.blocked": "Արգելափակուած է",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "չեղարկել հետեւելու հայցը",
|
||||
"account.direct": "Նամակ գրել @{name} -ին",
|
||||
"account.domain_blocked": "Տիրոյթը արգելափակուած է",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "պատասխանելու համար",
|
||||
"keyboard_shortcuts.requests": "հետեւելու հայցերի ցանկը դիտելու համար",
|
||||
"keyboard_shortcuts.search": "որոնման դաշտին սեւեռվելու համար",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "«սկսել» սիւնակը բացելու համար",
|
||||
"keyboard_shortcuts.toggle_hidden": "CW֊ի ետեւի տեքստը ցուցադրել֊թաքցնելու համար",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "մեդիան ցուցադրել֊թաքցնելու համար",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# րոպե} other {# րոպե}} անց",
|
||||
"time_remaining.moments": "Մնացել է մի քանի վարկյան",
|
||||
"time_remaining.seconds": "{number, plural, one {# վայրկյան} other {# վայրկյան}} անց",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {հոգի} other {հոգի}} խոսում է սրա մասին",
|
||||
"trends.trending_now": "Այժմ արդիական",
|
||||
"ui.beforeunload": "Քո սեւագիրը կկորի, եթե լքես Մաստոդոնը։",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokir @{name}",
|
||||
"account.block_domain": "Sembunyikan segalanya dari {domain}",
|
||||
"account.blocked": "Terblokir",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Batalkan permintaan ikuti",
|
||||
"account.direct": "Direct Message @{name}",
|
||||
"account.domain_blocked": "Domain disembunyikan",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "balas",
|
||||
"keyboard_shortcuts.requests": "buka daftar permintaan ikuti",
|
||||
"keyboard_shortcuts.search": "untuk fokus mencari",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "buka kolom \"memulai\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "tampilkan/sembunyikan teks di belakang CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "tampilkan/sembunyikan media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, other {# menit}} tersisa",
|
||||
"time_remaining.moments": "Momen tersisa",
|
||||
"time_remaining.seconds": "{number, plural, other {# detik}} tersisa",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, other {orang}} berbicara",
|
||||
"trends.trending_now": "Sedang tren sekarang",
|
||||
"ui.beforeunload": "Naskah anda akan hilang jika anda keluar dari Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokusar @{name}",
|
||||
"account.block_domain": "Hide everything from {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct Message @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Útiloka @{name}",
|
||||
"account.block_domain": "Fela allt frá {domain}",
|
||||
"account.blocked": "Útilokaður",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Hætta við beiðni um að fylgjast með",
|
||||
"account.direct": "Bein skilaboð til @{name}",
|
||||
"account.domain_blocked": "Lén falið",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "að svara",
|
||||
"keyboard_shortcuts.requests": "að opna lista yfir fylgjendabeiðnir",
|
||||
"keyboard_shortcuts.search": "að setja virkni í leit",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "að opna \"komast í gang\" dálk",
|
||||
"keyboard_shortcuts.toggle_hidden": "að birta/fela texta á bak við aðvörun vegna efnis",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "að birta/fela myndir",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# mínúta} other {# mínútur}} eftir",
|
||||
"time_remaining.moments": "Tími eftir",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekúnda} other {# sekúndur}} eftir",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {aðili} other {aðilar}} að tala",
|
||||
"trends.trending_now": "Í umræðunni núna",
|
||||
"ui.beforeunload": "Drögin tapast ef þú ferð út úr Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blocca @{name}",
|
||||
"account.block_domain": "Nascondi tutto da {domain}",
|
||||
"account.blocked": "Bloccato",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Annulla richiesta di seguire",
|
||||
"account.direct": "Invia messaggio privato a @{name}",
|
||||
"account.domain_blocked": "Dominio nascosto",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "per rispondere",
|
||||
"keyboard_shortcuts.requests": "per aprire l'elenco delle richieste di seguirti",
|
||||
"keyboard_shortcuts.search": "per spostare il focus sulla ricerca",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "per aprire la colonna \"Come iniziare\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "per mostrare/nascondere il testo dei CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrare/nascondere media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuto} other {# minuti}} left",
|
||||
"time_remaining.moments": "Restano pochi istanti",
|
||||
"time_remaining.seconds": "{number, plural, one {# secondo} other {# secondi}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persona ne sta} other {persone ne stanno}} parlando",
|
||||
"trends.trending_now": "Di tendenza ora",
|
||||
"ui.beforeunload": "La bozza andrà persa se esci da Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name}さんをブロック",
|
||||
"account.block_domain": "{domain}全体をブロック",
|
||||
"account.blocked": "ブロック済み",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "フォローリクエストを取り消す",
|
||||
"account.direct": "@{name}さんにダイレクトメッセージ",
|
||||
"account.domain_blocked": "ドメインブロック中",
|
||||
|
@ -240,6 +241,7 @@
|
|||
"keyboard_shortcuts.reply": "返信",
|
||||
"keyboard_shortcuts.requests": "フォローリクエストのリストを開く",
|
||||
"keyboard_shortcuts.search": "検索欄に移動",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"スタート\" カラムを開く",
|
||||
"keyboard_shortcuts.toggle_hidden": "CWで隠れた文を見る/隠す",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "非表示のメディアを見る/隠す",
|
||||
|
@ -417,6 +419,10 @@
|
|||
"time_remaining.minutes": "残り{number}分",
|
||||
"time_remaining.moments": "まもなく終了",
|
||||
"time_remaining.seconds": "残り{number}秒",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count}人がトゥート",
|
||||
"trends.trending_now": "トレンドタグ",
|
||||
"ui.beforeunload": "Mastodonから離れると送信前の投稿は失われます。",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "დაბლოკე @{name}",
|
||||
"account.block_domain": "დაიმალოს ყველაფერი დომენიდან {domain}",
|
||||
"account.blocked": "დაიბლოკა",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "პირდაპირი წერილი @{name}-ს",
|
||||
"account.domain_blocked": "დომენი დამალულია",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "პასუხისთვის",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "ძიებაზე ფოკუსირებისთვის",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "to open \"get started\" column",
|
||||
"keyboard_shortcuts.toggle_hidden": "გაფრთხილების უკან ტექსტის გამოსაჩენად/დასამალვად",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} საუბრობს",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "თქვენი დრაფტი გაუქმდება თუ დატოვებთ მასტოდონს.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Seḥbes @{name}",
|
||||
"account.block_domain": "Ffer kra i d-yekkan seg {domain}",
|
||||
"account.blocked": "Yettuseḥbes",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Sefsex asuter n uḍfaṛ",
|
||||
"account.direct": "Izen usrid i @{name}",
|
||||
"account.domain_blocked": "Taɣult yeffren",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "i tririt",
|
||||
"keyboard_shortcuts.requests": "akken ad d-teldiḍ umuγ n yisuturen n teḍfeṛt",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "akken ad d-teldiḍ ajgu n \"bdu\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "i teskent/tuffra n yimidyaten",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "Mazal {number, plural, one {# n tesdat} other {# n tesdatin}}",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "Mazal {number, plural, one {# n tasint} other {# n tsinin}} id yugran",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {n umdan} other {n yemdanen}} i yettmeslayen",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Arewway-ik·im ad iruḥ ma yella tefeɣ-d deg Maṣṭudun.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Бұғаттау @{name}",
|
||||
"account.block_domain": "Домендегі барлығын бұғатта {domain}",
|
||||
"account.blocked": "Бұғатталды",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Жазылуға сұранымды қайтару",
|
||||
"account.direct": "Жеке хат @{name}",
|
||||
"account.domain_blocked": "Домен жабық",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "жауап жазу",
|
||||
"keyboard_shortcuts.requests": "жазылу сұранымдарын қарау",
|
||||
"keyboard_shortcuts.search": "іздеу",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "бастапқы бағанға бару",
|
||||
"keyboard_shortcuts.toggle_hidden": "жабық мәтінді CW ашу/жабу",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "көрсет/жап",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# минут} other {# минут}}",
|
||||
"time_remaining.moments": "Қалған уақыт",
|
||||
"time_remaining.seconds": "{number, plural, one {# секунд} other {# секунд}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} жазған екен",
|
||||
"trends.trending_now": "Тренд тақырыптар",
|
||||
"ui.beforeunload": "Mastodon желісінен шықсаңыз, нобайыңыз сақталмайды.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Block @{name}",
|
||||
"account.block_domain": "Hide everything from {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct message @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name}을 차단",
|
||||
"account.block_domain": "{domain} 전체를 숨김",
|
||||
"account.blocked": "차단됨",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "팔로우 요청 취소",
|
||||
"account.direct": "@{name}의 다이렉트 메시지",
|
||||
"account.domain_blocked": "도메인 숨겨짐",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "답장",
|
||||
"keyboard_shortcuts.requests": "팔로우 요청 리스트 열기",
|
||||
"keyboard_shortcuts.search": "검색창에 포커스",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"시작하기\" 컬럼 열기",
|
||||
"keyboard_shortcuts.toggle_hidden": "CW로 가려진 텍스트를 표시/비표시",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "이미지 보이기/숨기기",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number} 분 남음",
|
||||
"time_remaining.moments": "남은 시간",
|
||||
"time_remaining.seconds": "{number} 초 남음",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} 명의 사람들이 말하고 있습니다",
|
||||
"trends.trending_now": "지금 유행중",
|
||||
"ui.beforeunload": "지금 나가면 저장되지 않은 항목을 잃게 됩니다.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Block @{name}",
|
||||
"account.block_domain": "Hide everything from {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct message @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloķēt @{name}",
|
||||
"account.block_domain": "Slēpt visu no {domain}",
|
||||
"account.blocked": "Bloķēts",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Privātā ziņa @{name}",
|
||||
"account.domain_blocked": "Domēns ir paslēpts",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Блокирај @{name}",
|
||||
"account.block_domain": "Сокријај се од {domain}",
|
||||
"account.blocked": "Блокиран",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Одкажи барање за следење",
|
||||
"account.direct": "Директна порана @{name}",
|
||||
"account.domain_blocked": "Скриен домен",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "одговори",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# минута} other {# минути}} {number, plural, one {остана} other {останаа}}",
|
||||
"time_remaining.moments": "Уште некои мига",
|
||||
"time_remaining.seconds": "{number, plural, one {# секунда} other {# секунди}} {number, plural, one {остана} other {останаа}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} നെ ബ്ലോക്ക് ചെയ്യുക",
|
||||
"account.block_domain": "{domain} ൽ നിന്നുള്ള എല്ലാം മറയ്കുക",
|
||||
"account.blocked": "തടഞ്ഞു",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "പിന്തുടരാനുള്ള അപേക്ഷ നിരസിക്കുക",
|
||||
"account.direct": "@{name} ന് നേരിട്ട് മെസേജ് അയക്കുക",
|
||||
"account.domain_blocked": "മേഖല മറയ്ക്കപ്പെട്ടിരിക്കുന്നു",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} यांना ब्लॉक करा",
|
||||
"account.block_domain": "{domain} पासून सर्व लपवा",
|
||||
"account.blocked": "ब्लॉक केले आहे",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "अनुयायी होण्याची विनंती रद्द करा",
|
||||
"account.direct": "थेट संदेश @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Block @{name}",
|
||||
"account.block_domain": "Hide everything from {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct message @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} blokkeren",
|
||||
"account.block_domain": "Alles van {domain} verbergen",
|
||||
"account.blocked": "Geblokkeerd",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Volgverzoek annuleren",
|
||||
"account.direct": "@{name} een direct bericht sturen",
|
||||
"account.domain_blocked": "Domein verborgen",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "om te reageren",
|
||||
"keyboard_shortcuts.requests": "om jouw volgverzoeken te tonen",
|
||||
"keyboard_shortcuts.search": "om het zoekvak te focussen",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "om de \"Aan de slag\"-kolom te tonen",
|
||||
"keyboard_shortcuts.toggle_hidden": "om tekst achter een waarschuwing (CW) te tonen/verbergen",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "om media te tonen/verbergen",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuut} other {# minuten}} te gaan",
|
||||
"time_remaining.moments": "Nog enkele ogenblikken resterend",
|
||||
"time_remaining.seconds": "{number, plural, one {# seconde} other {# seconden}} te gaan",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persoon praat} other {mensen praten}} hierover",
|
||||
"trends.trending_now": "Trends",
|
||||
"ui.beforeunload": "Je concept zal verloren gaan als je Mastodon verlaat.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokker @{name}",
|
||||
"account.block_domain": "Skjul alt frå {domain}",
|
||||
"account.blocked": "Blokkert",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Fjern fylgjeførespurnad",
|
||||
"account.direct": "Send melding til @{name}",
|
||||
"account.domain_blocked": "Domenet er gøymt",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "for å svara",
|
||||
"keyboard_shortcuts.requests": "for å opna lista med fylgjeførespurnader",
|
||||
"keyboard_shortcuts.search": "for å fokusera søket",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "for å opna \"kom i gang\"-feltet",
|
||||
"keyboard_shortcuts.toggle_hidden": "for å visa/gøyma tekst bak innhaldsvarsel",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "for å visa/gøyma media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minutt} other {# minutt}} igjen",
|
||||
"time_remaining.moments": "Kort tid igjen",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekund} other {# sekund}} igjen",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {folk}} snakkar",
|
||||
"trends.trending_now": "Populært no",
|
||||
"ui.beforeunload": "Kladden din forsvinn om du forlèt Mastodon no.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokkér @{name}",
|
||||
"account.block_domain": "Skjul alt fra {domain}",
|
||||
"account.blocked": "Blokkert",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Avbryt følge forespørsel",
|
||||
"account.direct": "Direct Message @{name}",
|
||||
"account.domain_blocked": "Domenet skjult",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "for å svare",
|
||||
"keyboard_shortcuts.requests": "åpne følgingsforespørselslisten",
|
||||
"keyboard_shortcuts.search": "å fokusere søk",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "åpne «Sett i gang»-kolonnen",
|
||||
"keyboard_shortcuts.toggle_hidden": "å vise/skjule tekst bak en innholdsadvarsel",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "å vise/skjule media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minutt} other {# minutter}} igjen",
|
||||
"time_remaining.moments": "Gjenværende øyeblikk",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekund} other {# sekunder}} igjen",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {personer}} snakker om det",
|
||||
"trends.trending_now": "Trender nå",
|
||||
"ui.beforeunload": "Din kladd vil bli forkastet om du forlater Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blocar @{name}",
|
||||
"account.block_domain": "Tot amagar del domeni {domain}",
|
||||
"account.blocked": "Blocat",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Anullar la demanda de seguiment",
|
||||
"account.direct": "Escriure un MP a @{name}",
|
||||
"account.domain_blocked": "Domeni amagat",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "respondre",
|
||||
"keyboard_shortcuts.requests": "dorbir la lista de demanda d’abonament",
|
||||
"keyboard_shortcuts.search": "anar a la recèrca",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "dobrir la colomna « Per començar »",
|
||||
"keyboard_shortcuts.toggle_hidden": "mostrar/amagar lo tèxte dels avertiments",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrar/rescondre los mèdias",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "demòra{number, plural, one { # minuta} other {n # minutas}}",
|
||||
"time_remaining.moments": "Moments restants",
|
||||
"time_remaining.seconds": "demòra{number, plural, one { # segonda} other {n # segondas}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} ne charra other {people}} ne charran",
|
||||
"trends.trending_now": "Tendéncia del moment",
|
||||
"ui.beforeunload": "Vòstre brolhon serà perdut se quitatz Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokuj @{name}",
|
||||
"account.block_domain": "Blokuj wszystko z {domain}",
|
||||
"account.blocked": "Zablokowany(-a)",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Zrezygnuj z prośby o możliwość śledzenia",
|
||||
"account.direct": "Wyślij wiadomość bezpośrednią do @{name}",
|
||||
"account.domain_blocked": "Ukryto domenę",
|
||||
|
@ -240,6 +241,7 @@
|
|||
"keyboard_shortcuts.reply": "aby odpowiedzieć",
|
||||
"keyboard_shortcuts.requests": "aby przejść do listy próśb o możliwość śledzenia",
|
||||
"keyboard_shortcuts.search": "aby przejść do pola wyszukiwania",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "aby otworzyć kolumnę „Rozpocznij”",
|
||||
"keyboard_shortcuts.toggle_hidden": "aby wyświetlić lub ukryć wpis spod CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "by pokazać/ukryć multimedia",
|
||||
|
@ -417,6 +419,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {Pozostała # minuta} few {Pozostały # minuty} many {Pozostało # minut} other {Pozostało # minut}}",
|
||||
"time_remaining.moments": "Pozostała chwila",
|
||||
"time_remaining.seconds": "{number, plural, one {Pozostała # sekunda} few {Pozostały # sekundy} many {Pozostało # sekund} other {Pozostało # sekund}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {osoba rozmawia} few {osoby rozmawiają} other {osób rozmawia}} o tym",
|
||||
"trends.trending_now": "Popularne teraz",
|
||||
"ui.beforeunload": "Utracisz tworzony wpis, jeżeli opuścisz Mastodona.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloquear @{name}",
|
||||
"account.block_domain": "Bloquear domínio {domain}",
|
||||
"account.blocked": "Bloqueado",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancelar solicitação para seguir",
|
||||
"account.direct": "Enviar toot direto para @{name}",
|
||||
"account.domain_blocked": "Domínio bloqueado",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "para responder",
|
||||
"keyboard_shortcuts.requests": "para abrir lista de pedidos para seguir",
|
||||
"keyboard_shortcuts.search": "para focar pesquisa",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "para abrir coluna \"primeiros passos\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "mostrar/ocultar o toot com Aviso de Conteúdo",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar mídia",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuto restante} other {# minutos restantes}}",
|
||||
"time_remaining.moments": "Momentos faltantes",
|
||||
"time_remaining.seconds": "{number, plural, one {# segundo restante} other {# segundos restantes}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {pessoa} other {pessoas}} falando",
|
||||
"trends.trending_now": "Em alta no momento",
|
||||
"ui.beforeunload": "Seu rascunho vai ser perdido se você sair do Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloquear @{name}",
|
||||
"account.block_domain": "Esconder tudo do domínio {domain}",
|
||||
"account.blocked": "Bloqueado",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancelar pedido de seguidor",
|
||||
"account.direct": "Mensagem directa @{name}",
|
||||
"account.domain_blocked": "Domínio escondido",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "para responder",
|
||||
"keyboard_shortcuts.requests": "para abrir a lista dos pedidos de seguidor",
|
||||
"keyboard_shortcuts.search": "para focar na pesquisa",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "para abrir a coluna dos \"primeiros passos\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "para mostrar/esconder texto atrás de CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{número, plural, um {# minute} outro {# minutes}} faltam",
|
||||
"time_remaining.moments": "Momentos restantes",
|
||||
"time_remaining.seconds": "{número, plural, um {# second} outro {# seconds}} faltam",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, uma {person} outra {people}} a falar",
|
||||
"trends.trending_now": "Tendências atuais",
|
||||
"ui.beforeunload": "O teu rascunho será perdido se abandonares o Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blocați @{name}",
|
||||
"account.block_domain": "Blocați domeniul {domain}",
|
||||
"account.blocked": "Blocat",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Anulați cererea de urmărire",
|
||||
"account.direct": "Mesaj direct @{name}",
|
||||
"account.domain_blocked": "Domeniu blocat",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "să răspundă",
|
||||
"keyboard_shortcuts.requests": "să deschidă lista cu cereri de urmărire",
|
||||
"keyboard_shortcuts.search": "să focalizeze căutarea",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "să deschidă coloana \"Începere\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "să arate/ascundă textul în spatele CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "pentru a afișa/ascunde media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minut} other {# minute}} rămase",
|
||||
"time_remaining.moments": "Momente rămase",
|
||||
"time_remaining.seconds": "{number, plural, one {# secundă} other {# secunde}} rămase",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persoană} other {persoane}} vorbește/ecs",
|
||||
"trends.trending_now": "În tendință acum",
|
||||
"ui.beforeunload": "Postarea se va pierde dacă părăsești pagina.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Заблокировать @{name}",
|
||||
"account.block_domain": "Заблокировать {domain}",
|
||||
"account.blocked": "Заблокирован(а)",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Отменить запрос",
|
||||
"account.direct": "Написать @{name}",
|
||||
"account.domain_blocked": "Домен скрыт",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "ответить",
|
||||
"keyboard_shortcuts.requests": "перейти к запросам на подписку",
|
||||
"keyboard_shortcuts.search": "перейти к поиску",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "перейти к разделу \"добро пожаловать\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "показать/скрыть текст за предупреждением",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "показать/скрыть медиафайлы",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {осталась # минута} few {осталось # минуты} many {осталось # минут} other {осталось # минут}}",
|
||||
"time_remaining.moments": "остались считанные мгновения",
|
||||
"time_remaining.seconds": "{number, plural, one {# секунда} many {# секунд} other {# секунды}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {человек говорит} few {человека говорят} other {человек говорят}} про это",
|
||||
"trends.trending_now": "Самое актуальное",
|
||||
"ui.beforeunload": "Ваш черновик будет утерян, если вы покинете Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Bloca @{name}",
|
||||
"account.block_domain": "Bloca domìniu{domain}",
|
||||
"account.blocked": "Blocadu",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Annulla rechesta de sighidura",
|
||||
"account.direct": "Messàgiu deretu a @{name}",
|
||||
"account.domain_blocked": "Domìniu blocadu",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "pro rispòndere",
|
||||
"keyboard_shortcuts.requests": "pro abèrrere sa lista de rechestas de sighidura",
|
||||
"keyboard_shortcuts.search": "pro atzentrare sa chirca",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "pro abèrrere sa colunna \"Cumintza\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "pro ammustrare o cuare testu de is CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "pro ammustrare o cuare mèdias",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {abarrat # minutu} other {abarrant # minutos}}",
|
||||
"time_remaining.moments": "Abarrant pagu momentos",
|
||||
"time_remaining.seconds": "{number, plural, one {abarrat # segundu} other {abarrant # segundos}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {persone} other {persones}} nde sunt chistionende",
|
||||
"trends.trending_now": "Est tendèntzia immoe",
|
||||
"ui.beforeunload": "S'abbotzu tuo at a èssere pèrdidu si essis dae Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokuj @{name}",
|
||||
"account.block_domain": "Ukry všetko z {domain}",
|
||||
"account.blocked": "Blokovaný/á",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Zruš žiadosť o sledovanie",
|
||||
"account.direct": "Priama správa pre @{name}",
|
||||
"account.domain_blocked": "Doména ukrytá",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "odpovedať",
|
||||
"keyboard_shortcuts.requests": "otvor zoznam žiadostí o sledovanie",
|
||||
"keyboard_shortcuts.search": "zameraj sa na vyhľadávanie",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "otvor panel ''začíname''",
|
||||
"keyboard_shortcuts.toggle_hidden": "ukáž/skry text za CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "pre zobrazenie/skrytie médií",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "Ostáva {number, plural, one {# minúta} few {# minút} many {# minút} other {# minúty}}",
|
||||
"time_remaining.moments": "Ostáva už iba chviľka",
|
||||
"time_remaining.seconds": "Ostáva {number, plural, one {# sekunda} few {# sekúnd} many {# sekúnd} other {# sekúnd}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {človek spomína} other {ľudí spomína}}",
|
||||
"trends.trending_now": "Teraz populárne",
|
||||
"ui.beforeunload": "Čo máš rozpísané sa stratí, ak opustíš Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokiraj @{name}",
|
||||
"account.block_domain": "Skrij vse iz {domain}",
|
||||
"account.blocked": "Blokirano",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Neposredno sporočilo @{name}",
|
||||
"account.domain_blocked": "Skrita domena",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "odgovori",
|
||||
"keyboard_shortcuts.requests": "odpri seznam s prošnjami za sledenje",
|
||||
"keyboard_shortcuts.search": "fokusiraj na iskanje",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "odpri stolpec \"začni\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "prikaži/skrij besedilo za CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "prikaži/skrij medije",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minuta} other {# minut}} je ostalo",
|
||||
"time_remaining.moments": "Preostali trenutki",
|
||||
"time_remaining.seconds": "{number, plural, one {# sekunda} other {# sekund}} je ostalo",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {oseba} other {ljudi}} govori",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Vaš osnutek bo izgubljen, če zapustite Mastodona.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blloko @{name}",
|
||||
"account.block_domain": "Fshih gjithçka prej {domain}",
|
||||
"account.blocked": "E bllokuar",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Anulo kërkesën e ndjekjes",
|
||||
"account.direct": "Mesazh i drejtpërdrejt për @{name}",
|
||||
"account.domain_blocked": "Përkatësi e fshehur",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "për t’u përgjigjur",
|
||||
"keyboard_shortcuts.requests": "për hapje liste kërkesash për ndjekje",
|
||||
"keyboard_shortcuts.search": "për kalim fokusi te kërkimi",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "për hapjen e shtyllës \"fillojani\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "për shfaqje/fshehje teksti pas CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "për të shfaqur/të fshehur media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural,one {# minutë}other {# minuta}} mbetur",
|
||||
"time_remaining.moments": "Momente të mbetura",
|
||||
"time_remaining.seconds": "{number, plural,one {# sekond}other {# sekonda}} mbetur",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, një {person} {people} të tjerë} po flasin",
|
||||
"trends.trending_now": "Në trend",
|
||||
"ui.beforeunload": "Skica juaj do të humbë nëse dilni nga Mastodon-i.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blokiraj korisnika @{name}",
|
||||
"account.block_domain": "Sakrij sve sa domena {domain}",
|
||||
"account.blocked": "Blocked",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "Direct Message @{name}",
|
||||
"account.domain_blocked": "Domain hidden",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "da odgovorite",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "da se prebacite na pretragu",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Ako napustite Mastodont, izgubićete napisani nacrt.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Блокирај @{name}",
|
||||
"account.block_domain": "Сакриј све са домена {domain}",
|
||||
"account.blocked": "Блокиран",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Поништи захтеве за праћење",
|
||||
"account.direct": "Директна порука @{name}",
|
||||
"account.domain_blocked": "Домен сакривен",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "да одговорите",
|
||||
"keyboard_shortcuts.requests": "да отворите листу примљених захтева за праћење",
|
||||
"keyboard_shortcuts.search": "да се пребаците на претрагу",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "да отворите колону \"почнимо\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "да прикажете/сакријте текст иза CW-а",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {човек} other {људи}} прича",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Ако напустите Мастодонт, изгубићете написани нацрт.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Blockera @{name}",
|
||||
"account.block_domain": "Dölj allt från {domain}",
|
||||
"account.blocked": "Blockerad",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Avbryt följarförfrågan",
|
||||
"account.direct": "Skicka ett direktmeddelande till @{name}",
|
||||
"account.domain_blocked": "Domän dold",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "för att svara",
|
||||
"keyboard_shortcuts.requests": "för att öppna Följförfrågningar",
|
||||
"keyboard_shortcuts.search": "för att fokusera sökfältet",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "för att öppna \"Kom igång\"-kolumnen",
|
||||
"keyboard_shortcuts.toggle_hidden": "för att visa/gömma text bakom CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "för att visa/gömma media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{minutes, plural, one {1 minut} other {# minuter}} kvar",
|
||||
"time_remaining.moments": "Återstående tillfällen",
|
||||
"time_remaining.seconds": "{hours, plural, one {# sekund} other {# sekunder}} kvar",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, en {person} andra {people}} pratar",
|
||||
"trends.trending_now": "Trendar nu",
|
||||
"ui.beforeunload": "Ditt utkast kommer att förloras om du lämnar Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} -ஐத் தடு",
|
||||
"account.block_domain": "{domain} யில் இருந்து வரும் எல்லாவற்றையும் மறை",
|
||||
"account.blocked": "முடக்கப்பட்டது",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "பின்தொடரும் கோரிக்கையை நிராகரி",
|
||||
"account.direct": "நேரடி செய்தி @{name}",
|
||||
"account.domain_blocked": "மறைக்கப்பட்டத் தளங்கள்",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "பதிலளிக்க",
|
||||
"keyboard_shortcuts.requests": "கோரிக்கைகள் பட்டியலைத் திறக்க",
|
||||
"keyboard_shortcuts.search": "தேடல் கவனம் செலுத்த",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "'தொடங்குவதற்கு' நெடுவரிசை திறக்க",
|
||||
"keyboard_shortcuts.toggle_hidden": "CW க்கு பின்னால் உரையை மறைக்க / மறைக்க",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "படிமங்களைக் காட்ட/மறைக்க",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} மற்ற {# minutes}} left",
|
||||
"time_remaining.moments": "தருணங்கள் மீதமுள்ளன",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} மற்ற {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} மற்ற {people}} உரையாடு",
|
||||
"trends.trending_now": "இப்போது செல்திசையில் இருப்பவை",
|
||||
"ui.beforeunload": "நீங்கள் வெளியே சென்றால் உங்கள் வரைவு இழக்கப்படும் மஸ்தோடோன்.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} ను బ్లాక్ చేయి",
|
||||
"account.block_domain": "{domain} నుంచి అన్నీ దాచిపెట్టు",
|
||||
"account.blocked": "బ్లాక్ అయినవి",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Cancel follow request",
|
||||
"account.direct": "@{name}కు నేరుగా సందేశం పంపు",
|
||||
"account.domain_blocked": "డొమైన్ దాచిపెట్టబడినది",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "ప్రత్యుత్తరం ఇవ్వడానికి",
|
||||
"keyboard_shortcuts.requests": "ఫాలో రిక్వెస్ట్ల జాబితాను తెరవడానికి",
|
||||
"keyboard_shortcuts.search": "శోధనపై దృష్టి పెట్టండి",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"ఇక్కడ ప్రారంభించండి\" నిలువు వరుసను తెరవడానికి",
|
||||
"keyboard_shortcuts.toggle_hidden": "CW వెనుక ఉన్న పాఠ్యాన్ని చూపడానికి / దాచడానికి",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "కొన్ని క్షణాలు మాత్రమే మిగిలి ఉన్నాయి",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} మాట్లాడుతున్నారు",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "మీరు మాస్టొడొన్ను వదిలివేస్తే మీ డ్రాఫ్ట్లు పోతాయి.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "ปิดกั้น @{name}",
|
||||
"account.block_domain": "ปิดกั้นโดเมน {domain}",
|
||||
"account.blocked": "ปิดกั้นอยู่",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "ยกเลิกคำขอติดตาม",
|
||||
"account.direct": "ส่งข้อความโดยตรงถึง @{name}",
|
||||
"account.domain_blocked": "ปิดกั้นโดเมนอยู่",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "เพื่อตอบกลับ",
|
||||
"keyboard_shortcuts.requests": "เพื่อเปิดรายการคำขอติดตาม",
|
||||
"keyboard_shortcuts.search": "เพื่อโฟกัสการค้นหา",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "เพื่อเปิดคอลัมน์ \"เริ่มต้นใช้งาน\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "เพื่อแสดง/ซ่อนข้อความที่อยู่หลังคำเตือนเนื้อหา",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "เพื่อแสดง/ซ่อนสื่อ",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "เหลืออีก {number, plural, other {# นาที}}",
|
||||
"time_remaining.moments": "ช่วงเวลาที่เหลือ",
|
||||
"time_remaining.seconds": "เหลืออีก {number, plural, other {# วินาที}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, other {คน}}กำลังพูดคุย",
|
||||
"trends.trending_now": "กำลังนิยม",
|
||||
"ui.beforeunload": "แบบร่างของคุณจะหายไปหากคุณออกจาก Mastodon",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "@{name} adlı kişiyi engelle",
|
||||
"account.block_domain": "{domain} alanından her şeyi gizle",
|
||||
"account.blocked": "Engellenmiş",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Takip isteğini iptal et",
|
||||
"account.direct": "Mesaj gönder @{name}",
|
||||
"account.domain_blocked": "Alan adı gizlendi",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "cevaplamak için",
|
||||
"keyboard_shortcuts.requests": "takip istekleri listesini açmak için",
|
||||
"keyboard_shortcuts.search": "aramaya odaklanmak için",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "\"başlayın\" sütununu açmak için",
|
||||
"keyboard_shortcuts.toggle_hidden": "CW'den önceki yazıyı göstermek/gizlemek için",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "medyayı göstermek/gizlemek için",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# dakika} other {# dakika}} kaldı",
|
||||
"time_remaining.moments": "Sadece birkaç dakika kaldı",
|
||||
"time_remaining.seconds": "{number, plural, one {# saniye} other {# saniye}} kaldı",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {kişi} other {kişi}} konuşuyor",
|
||||
"trends.trending_now": "Şu an popüler",
|
||||
"ui.beforeunload": "Mastodon'dan ayrılırsanız taslağınız kaybolacak.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Заблокувати @{name}",
|
||||
"account.block_domain": "Заглушити {domain}",
|
||||
"account.blocked": "Заблоковані",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Скасувати запит на підписку",
|
||||
"account.direct": "Пряме повідомлення @{name}",
|
||||
"account.domain_blocked": "Домен приховано",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "відповісти",
|
||||
"keyboard_shortcuts.requests": "відкрити список бажаючих підписатися",
|
||||
"keyboard_shortcuts.search": "сфокусуватися на пошуку",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "відкрити колонку \"Початок\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "показати/приховати текст під попередженням",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "показати/приховати медіа",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# хвилина} few {# хвилини} other {# хвилин}}",
|
||||
"time_remaining.moments": "Залишилось секунд",
|
||||
"time_remaining.seconds": "{number, plural, one {# секунда} few {# секунди} other {# секунд}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {людина} few {людини} many {людей} other {людей}} обговорюють це",
|
||||
"trends.trending_now": "Актуальні",
|
||||
"ui.beforeunload": "Вашу чернетку буде втрачено, якщо ви покинете Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "مسدود @{name}",
|
||||
"account.block_domain": "{domain} سے سب چھپائیں",
|
||||
"account.blocked": "مسدود کردہ",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "درخواستِ پیروی منسوخ کریں",
|
||||
"account.direct": "راست پیغام @{name}",
|
||||
"account.domain_blocked": "پوشیدہ ڈومین",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "to reply",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"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",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, one {# minute} other {# minutes}} left",
|
||||
"time_remaining.moments": "Moments remaining",
|
||||
"time_remaining.seconds": "{number, plural, one {# second} other {# seconds}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} {rawCount, plural, one {person} other {people}} talking",
|
||||
"trends.trending_now": "Trending now",
|
||||
"ui.beforeunload": "Your draft will be lost if you leave Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "Chặn @{name}",
|
||||
"account.block_domain": "Ẩn mọi thứ từ {domain}",
|
||||
"account.blocked": "Đã chặn",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "Hủy theo yêu cầu",
|
||||
"account.direct": "Nhắn riêng @{name}",
|
||||
"account.domain_blocked": "Miền đã ẩn",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "để trả lời",
|
||||
"keyboard_shortcuts.requests": "để mở danh sách các yêu cầu",
|
||||
"keyboard_shortcuts.search": "để vào ô tìm kiếm",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "để mở cột \"Bắt đầu\"",
|
||||
"keyboard_shortcuts.toggle_hidden": "để ẩn/hiện đằng sau văn bản CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "để hiển thị / ẩn media",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "{number, plural, other {}} left",
|
||||
"time_remaining.moments": "Còn lại",
|
||||
"time_remaining.seconds": "{number, plural, other {}} left",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{Count} {rawCount, số nhiều, một {người} khác {người}} nói chuyện",
|
||||
"trends.trending_now": "Đang là xu hướng",
|
||||
"ui.beforeunload": "Bản nháp của bạn sẽ bị mất nếu bạn rời của Mastodon.",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "屏蔽 @{name}",
|
||||
"account.block_domain": "隐藏来自 {domain} 的内容",
|
||||
"account.blocked": "已屏蔽",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "取消关注请求",
|
||||
"account.direct": "发送私信给 @{name}",
|
||||
"account.domain_blocked": "网站已屏蔽",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "回复嘟文",
|
||||
"keyboard_shortcuts.requests": "打开关注请求列表",
|
||||
"keyboard_shortcuts.search": "选择搜索框",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "打开“开始使用”栏",
|
||||
"keyboard_shortcuts.toggle_hidden": "显示或隐藏被折叠的正文",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "显示/隐藏媒体",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "剩余 {number, plural, one {# 分钟} other {# 分钟}}",
|
||||
"time_remaining.moments": "即将结束",
|
||||
"time_remaining.seconds": "剩余 {number, plural, one {# 秒} other {# 秒}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} 人正在讨论",
|
||||
"trends.trending_now": "现在流行",
|
||||
"ui.beforeunload": "如果你现在离开 Mastodon,你的草稿内容将会丢失。",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "封鎖 @{name}",
|
||||
"account.block_domain": "隱藏來自 {domain} 的一切文章",
|
||||
"account.blocked": "封鎖",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "取消關注請求",
|
||||
"account.direct": "私訊 @{name}",
|
||||
"account.domain_blocked": "服務站被隱藏",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "回覆",
|
||||
"keyboard_shortcuts.requests": "開啟關注請求名單",
|
||||
"keyboard_shortcuts.search": "把標示移動到搜索",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "開啟「開始使用」欄位",
|
||||
"keyboard_shortcuts.toggle_hidden": "顯示或隱藏被標為敏感的文字",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "顯示 / 隱藏媒體",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "剩餘{number, plural, one {# 分鐘} other {# 分鐘}}",
|
||||
"time_remaining.moments": "剩餘時間",
|
||||
"time_remaining.seconds": "剩餘 {number, plural, one {# 秒} other {# 秒}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} 位用戶在討論",
|
||||
"trends.trending_now": "目前趨勢",
|
||||
"ui.beforeunload": "如果你現在離開 Mastodon,你的草稿內容將會被丟棄。",
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
"account.block": "封鎖 @{name}",
|
||||
"account.block_domain": "隱藏來自 {domain} 的所有內容",
|
||||
"account.blocked": "已封鎖",
|
||||
"account.browse_more_on_origin_server": "Browse more on the original profile",
|
||||
"account.cancel_follow_request": "取消關注請求",
|
||||
"account.direct": "傳私訊給 @{name}",
|
||||
"account.domain_blocked": "已隱藏網域",
|
||||
|
@ -236,6 +237,7 @@
|
|||
"keyboard_shortcuts.reply": "回覆",
|
||||
"keyboard_shortcuts.requests": "開啟關注請求名單",
|
||||
"keyboard_shortcuts.search": "將焦點移至搜尋框",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "開啟「開始使用」欄位",
|
||||
"keyboard_shortcuts.toggle_hidden": "顯示/隱藏在內容警告之後的正文",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "顯示 / 隱藏媒體",
|
||||
|
@ -412,6 +414,10 @@
|
|||
"time_remaining.minutes": "剩餘{number, plural, one {# 分鐘} other {# 分鐘}}",
|
||||
"time_remaining.moments": "剩餘時間",
|
||||
"time_remaining.seconds": "剩餘 {number, plural, one {# 秒} other {# 秒}}",
|
||||
"timeline_hint.remote_resource_not_displayed": "{resource} from other servers are not displayed.",
|
||||
"timeline_hint.resources.followers": "Followers",
|
||||
"timeline_hint.resources.follows": "Follows",
|
||||
"timeline_hint.resources.statuses": "Older toots",
|
||||
"trends.count_by_accounts": "{count} 位使用者在討論",
|
||||
"trends.trending_now": "目前趨勢",
|
||||
"ui.beforeunload": "如果離開 Mastodon,你的草稿將會不見。",
|
||||
|
|
|
@ -3227,6 +3227,31 @@ a.status-card.compact:hover {
|
|||
border-bottom: 1px solid lighten($ui-base-color, 8%);
|
||||
}
|
||||
|
||||
.timeline-hint {
|
||||
text-align: center;
|
||||
color: $darker-text-color;
|
||||
padding: 15px;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
cursor: default;
|
||||
|
||||
strong {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
a {
|
||||
color: lighten($ui-highlight-color, 8%);
|
||||
text-decoration: none;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
text-decoration: underline;
|
||||
color: lighten($ui-highlight-color, 12%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.regeneration-indicator {
|
||||
text-align: center;
|
||||
font-size: 16px;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
lock '3.14.0'
|
||||
lock '3.14.1'
|
||||
|
||||
set :repo_url, ENV.fetch('REPO', 'https://github.com/tootsuite/mastodon.git')
|
||||
set :branch, ENV.fetch('BRANCH', 'master')
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
Redis.exists_returns_integer = false
|
||||
|
||||
redis_connection = Redis.new(
|
||||
url: ENV['REDIS_URL'],
|
||||
driver: :hiredis
|
||||
|
|
|
@ -24,15 +24,22 @@ services:
|
|||
|
||||
# es:
|
||||
# restart: always
|
||||
# image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.1.3
|
||||
# image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.8.10
|
||||
# environment:
|
||||
# - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
|
||||
# - "cluster.name=es-mastodon"
|
||||
# - "discovery.type=single-node"
|
||||
# - "bootstrap.memory_lock=true"
|
||||
# networks:
|
||||
# - internal_network
|
||||
# healthcheck:
|
||||
# test: ["CMD-SHELL", "curl --silent --fail localhost:9200/_cluster/health || exit 1"]
|
||||
# volumes:
|
||||
# - ./elasticsearch:/usr/share/elasticsearch/data
|
||||
# ulimits:
|
||||
# memlock:
|
||||
# soft: -1
|
||||
# hard: -1
|
||||
|
||||
web:
|
||||
build: .
|
||||
|
|
|
@ -63,7 +63,7 @@
|
|||
"@babel/core": "^7.10.2",
|
||||
"@babel/plugin-proposal-class-properties": "^7.8.3",
|
||||
"@babel/plugin-proposal-decorators": "^7.8.3",
|
||||
"@babel/plugin-transform-react-inline-elements": "^7.9.0",
|
||||
"@babel/plugin-transform-react-inline-elements": "^7.10.1",
|
||||
"@babel/plugin-transform-runtime": "^7.10.1",
|
||||
"@babel/preset-env": "^7.10.2",
|
||||
"@babel/preset-react": "^7.10.1",
|
||||
|
@ -87,7 +87,7 @@
|
|||
"compression-webpack-plugin": "^4.0.0",
|
||||
"copy-webpack-plugin": "^6.0.2",
|
||||
"cross-env": "^7.0.2",
|
||||
"css-loader": "^3.5.3",
|
||||
"css-loader": "^3.6.0",
|
||||
"cssnano": "^4.1.10",
|
||||
"detect-passive-events": "^1.0.2",
|
||||
"dotenv": "^8.2.0",
|
||||
|
@ -178,11 +178,11 @@
|
|||
"enzyme": "^3.11.0",
|
||||
"enzyme-adapter-react-16": "^1.15.2",
|
||||
"eslint": "^6.8.0",
|
||||
"eslint-plugin-import": "~2.20.2",
|
||||
"eslint-plugin-import": "~2.21.2",
|
||||
"eslint-plugin-jsx-a11y": "~6.2.3",
|
||||
"eslint-plugin-promise": "~4.2.1",
|
||||
"eslint-plugin-react": "~7.20.0",
|
||||
"jest": "^25.4.0",
|
||||
"jest": "^26.0.1",
|
||||
"raf": "^3.4.1",
|
||||
"react-intl-translations-manager": "^5.0.3",
|
||||
"react-test-renderer": "^16.13.1",
|
||||
|
|
Loading…
Reference in a new issue