Change "Direct" status visibility to "Only people I mention" in web UI (#18146)
- Change name of conversations column in web UI - Change hotkey for opening conversations column from `g d` to `g c` in web UI - Remove shortcuts for creating direct-visibility statuses from web UI
This commit is contained in:
		
					parent
					
						
							
								a8e27ac4d1
							
						
					
				
			
			
				commit
				
					
						be0bc9acbf
					
				
			
		
					 26 changed files with 87 additions and 91 deletions
				
			
		| 
						 | 
				
			
			@ -25,7 +25,7 @@ export function counterRenderer(counterType, isBold = true) {
 | 
			
		|||
    return (displayNumber, pluralReady) => (
 | 
			
		||||
      <FormattedMessage
 | 
			
		||||
        id='account.statuses_counter'
 | 
			
		||||
        defaultMessage='{count, plural, one {{counter} Toot} other {{counter} Toots}}'
 | 
			
		||||
        defaultMessage='{count, plural, one {{counter} Post} other {{counter} Posts}}'
 | 
			
		||||
        values={{
 | 
			
		||||
          count: pluralReady,
 | 
			
		||||
          counter: renderCounter(displayNumber),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -56,7 +56,7 @@ const messages = defineMessages({
 | 
			
		|||
  public_short: { id: 'privacy.public.short', defaultMessage: 'Public' },
 | 
			
		||||
  unlisted_short: { id: 'privacy.unlisted.short', defaultMessage: 'Unlisted' },
 | 
			
		||||
  private_short: { id: 'privacy.private.short', defaultMessage: 'Followers-only' },
 | 
			
		||||
  direct_short: { id: 'privacy.direct.short', defaultMessage: 'Direct' },
 | 
			
		||||
  direct_short: { id: 'privacy.direct.short', defaultMessage: 'Mentioned people only' },
 | 
			
		||||
  edited: { id: 'status.edited', defaultMessage: 'Edited {date}' },
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -349,7 +349,7 @@ class Status extends ImmutablePureComponent {
 | 
			
		|||
      prepend = (
 | 
			
		||||
        <div className='status__prepend'>
 | 
			
		||||
          <div className='status__prepend-icon-wrapper'><Icon id='thumb-tack' className='status__prepend-icon' fixedWidth /></div>
 | 
			
		||||
          <FormattedMessage id='status.pinned' defaultMessage='Pinned toot' />
 | 
			
		||||
          <FormattedMessage id='status.pinned' defaultMessage='Pinned post' />
 | 
			
		||||
        </div>
 | 
			
		||||
      );
 | 
			
		||||
    } else if (status.get('reblog', null) !== null && typeof status.get('reblog') === 'object') {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -266,7 +266,6 @@ class StatusActionBar extends ImmutablePureComponent {
 | 
			
		|||
      menu.push({ text: intl.formatMessage(messages.redraft), action: this.handleRedraftClick });
 | 
			
		||||
    } else {
 | 
			
		||||
      menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.handleMentionClick });
 | 
			
		||||
      menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.handleDirectClick });
 | 
			
		||||
      menu.push(null);
 | 
			
		||||
 | 
			
		||||
      if (relationship && relationship.get('muting')) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -38,7 +38,7 @@ const messages = defineMessages({
 | 
			
		|||
  showReblogs: { id: 'account.show_reblogs', defaultMessage: 'Show boosts from @{name}' },
 | 
			
		||||
  enableNotifications: { id: 'account.enable_notifications', defaultMessage: 'Notify me when @{name} posts' },
 | 
			
		||||
  disableNotifications: { id: 'account.disable_notifications', defaultMessage: 'Stop notifying me when @{name} posts' },
 | 
			
		||||
  pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned toots' },
 | 
			
		||||
  pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned posts' },
 | 
			
		||||
  preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },
 | 
			
		||||
  follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },
 | 
			
		||||
  favourites: { id: 'navigation_bar.favourites', defaultMessage: 'Favourites' },
 | 
			
		||||
| 
						 | 
				
			
			@ -177,7 +177,6 @@ class Header extends ImmutablePureComponent {
 | 
			
		|||
 | 
			
		||||
    if (account.get('id') !== me) {
 | 
			
		||||
      menu.push({ text: intl.formatMessage(messages.mention, { name: account.get('username') }), action: this.props.onMention });
 | 
			
		||||
      menu.push({ text: intl.formatMessage(messages.direct, { name: account.get('username') }), action: this.props.onDirect });
 | 
			
		||||
      menu.push(null);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -121,8 +121,8 @@ export default class Header extends ImmutablePureComponent {
 | 
			
		|||
 | 
			
		||||
        {!hideTabs && (
 | 
			
		||||
          <div className='account__section-headline'>
 | 
			
		||||
            <NavLink exact to={`/@${account.get('acct')}`}><FormattedMessage id='account.posts' defaultMessage='Toots' /></NavLink>
 | 
			
		||||
            <NavLink exact to={`/@${account.get('acct')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Toots and replies' /></NavLink>
 | 
			
		||||
            <NavLink exact to={`/@${account.get('acct')}`}><FormattedMessage id='account.posts' defaultMessage='Posts' /></NavLink>
 | 
			
		||||
            <NavLink exact to={`/@${account.get('acct')}/with_replies`}><FormattedMessage id='account.posts_with_replies' defaultMessage='Posts and replies' /></NavLink>
 | 
			
		||||
            <NavLink exact to={`/@${account.get('acct')}/media`}><FormattedMessage id='account.media' defaultMessage='Media' /></NavLink>
 | 
			
		||||
          </div>
 | 
			
		||||
        )}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -45,7 +45,7 @@ const mapStateToProps = (state, { params: { acct, id }, withReplies = false }) =
 | 
			
		|||
};
 | 
			
		||||
 | 
			
		||||
const RemoteHint = ({ url }) => (
 | 
			
		||||
  <TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.statuses' defaultMessage='Older toots' />} />
 | 
			
		||||
  <TimelineHint url={url} resource={<FormattedMessage id='timeline_hint.resources.statuses' defaultMessage='Older posts' />} />
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
RemoteHint.propTypes = {
 | 
			
		||||
| 
						 | 
				
			
			@ -156,7 +156,7 @@ class AccountTimeline extends ImmutablePureComponent {
 | 
			
		|||
    } else if (remote && statusIds.isEmpty()) {
 | 
			
		||||
      emptyMessage = <RemoteHint url={remoteUrl} />;
 | 
			
		||||
    } else {
 | 
			
		||||
      emptyMessage = <FormattedMessage id='empty_column.account_timeline' defaultMessage='No toots here!' />;
 | 
			
		||||
      emptyMessage = <FormattedMessage id='empty_column.account_timeline' defaultMessage='No posts found' />;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    const remoteMessage = remote ? <RemoteHint url={remoteUrl} /> : null;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -70,7 +70,7 @@ class Bookmarks extends ImmutablePureComponent {
 | 
			
		|||
    const { intl, statusIds, columnId, multiColumn, hasMore, isLoading } = this.props;
 | 
			
		||||
    const pinned = !!columnId;
 | 
			
		||||
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='empty_column.bookmarked_statuses' defaultMessage="You don't have any bookmarked toots yet. When you bookmark one, it will show up here." />;
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='empty_column.bookmarked_statuses' defaultMessage="You don't have any bookmarked posts yet. When you bookmark one, it will show up here." />;
 | 
			
		||||
 | 
			
		||||
    return (
 | 
			
		||||
      <Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.heading)}>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,7 +6,7 @@ import { defineMessages, injectIntl } from 'react-intl';
 | 
			
		|||
 | 
			
		||||
const messages = defineMessages({
 | 
			
		||||
  edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },
 | 
			
		||||
  pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned toots' },
 | 
			
		||||
  pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned posts' },
 | 
			
		||||
  preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },
 | 
			
		||||
  follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },
 | 
			
		||||
  favourites: { id: 'navigation_bar.favourites', defaultMessage: 'Favourites' },
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,12 +11,12 @@ import Icon from 'mastodon/components/icon';
 | 
			
		|||
 | 
			
		||||
const messages = defineMessages({
 | 
			
		||||
  public_short: { id: 'privacy.public.short', defaultMessage: 'Public' },
 | 
			
		||||
  public_long: { id: 'privacy.public.long', defaultMessage: 'Visible for all, shown in public timelines' },
 | 
			
		||||
  public_long: { id: 'privacy.public.long', defaultMessage: 'Visible for all' },
 | 
			
		||||
  unlisted_short: { id: 'privacy.unlisted.short', defaultMessage: 'Unlisted' },
 | 
			
		||||
  unlisted_long: { id: 'privacy.unlisted.long', defaultMessage: 'Visible for all, but not in public timelines' },
 | 
			
		||||
  private_short: { id: 'privacy.private.short', defaultMessage: 'Followers-only' },
 | 
			
		||||
  unlisted_long: { id: 'privacy.unlisted.long', defaultMessage: 'Visible for all, but opted-out of discovery features' },
 | 
			
		||||
  private_short: { id: 'privacy.private.short', defaultMessage: 'Followers only' },
 | 
			
		||||
  private_long: { id: 'privacy.private.long', defaultMessage: 'Visible for followers only' },
 | 
			
		||||
  direct_short: { id: 'privacy.direct.short', defaultMessage: 'Direct' },
 | 
			
		||||
  direct_short: { id: 'privacy.direct.short', defaultMessage: 'Only people I mention' },
 | 
			
		||||
  direct_long: { id: 'privacy.direct.long', defaultMessage: 'Visible for mentioned users only' },
 | 
			
		||||
  change_privacy: { id: 'privacy.change', defaultMessage: 'Adjust status privacy' },
 | 
			
		||||
});
 | 
			
		||||
| 
						 | 
				
			
			@ -242,7 +242,7 @@ class PrivacyDropdown extends React.PureComponent {
 | 
			
		|||
 | 
			
		||||
    if (!this.props.noDirect) {
 | 
			
		||||
      this.options.push(
 | 
			
		||||
        { icon: 'envelope', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) },
 | 
			
		||||
        { icon: 'at', value: 'direct', text: formatMessage(messages.direct_short), meta: formatMessage(messages.direct_long) },
 | 
			
		||||
      );
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -91,7 +91,7 @@ class SearchResults extends ImmutablePureComponent {
 | 
			
		|||
      count   += results.get('statuses').size;
 | 
			
		||||
      statuses = (
 | 
			
		||||
        <div className='search-results__section'>
 | 
			
		||||
          <h5><Icon id='quote-right' fixedWidth /><FormattedMessage id='search_results.statuses' defaultMessage='Toots' /></h5>
 | 
			
		||||
          <h5><Icon id='quote-right' fixedWidth /><FormattedMessage id='search_results.statuses' defaultMessage='Posts' /></h5>
 | 
			
		||||
 | 
			
		||||
          {results.get('statuses').map(statusId => <StatusContainer key={statusId} id={statusId} />)}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -101,10 +101,10 @@ class SearchResults extends ImmutablePureComponent {
 | 
			
		|||
    } else if(results.get('statuses') && results.get('statuses').size === 0 && !searchEnabled && !(searchTerm.startsWith('@') || searchTerm.startsWith('#') || searchTerm.includes(' '))) {
 | 
			
		||||
      statuses = (
 | 
			
		||||
        <div className='search-results__section'>
 | 
			
		||||
          <h5><Icon id='quote-right' fixedWidth /><FormattedMessage id='search_results.statuses' defaultMessage='Toots' /></h5>
 | 
			
		||||
          <h5><Icon id='quote-right' fixedWidth /><FormattedMessage id='search_results.statuses' defaultMessage='Posts' /></h5>
 | 
			
		||||
 | 
			
		||||
          <div className='search-results__info'>
 | 
			
		||||
            <FormattedMessage id='search_results.statuses_fts_disabled' defaultMessage='Searching toots by their content is not enabled on this Mastodon server.' />
 | 
			
		||||
            <FormattedMessage id='search_results.statuses_fts_disabled' defaultMessage='Searching posts by their content is not enabled on this Mastodon server.' />
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
      );
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -42,13 +42,13 @@ const WarningWrapper = ({ needsLockWarning, hashtagWarning, directMessageWarning
 | 
			
		|||
  }
 | 
			
		||||
 | 
			
		||||
  if (hashtagWarning) {
 | 
			
		||||
    return <Warning message={<FormattedMessage id='compose_form.hashtag_warning' defaultMessage="This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag." />} />;
 | 
			
		||||
    return <Warning message={<FormattedMessage id='compose_form.hashtag_warning' defaultMessage="This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag." />} />;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  if (directMessageWarning) {
 | 
			
		||||
    const message = (
 | 
			
		||||
      <span>
 | 
			
		||||
        <FormattedMessage id='compose_form.direct_message_warning' defaultMessage='This toot will only be sent to all the mentioned users.' /> <a href='/terms' target='_blank'><FormattedMessage id='compose_form.direct_message_warning_learn_more' defaultMessage='Learn more' /></a>
 | 
			
		||||
        <FormattedMessage id='compose_form.encryption_warning' defaultMessage='Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.' /> <a href='/terms' target='_blank'><FormattedMessage id='compose_form.direct_message_warning_learn_more' defaultMessage='Learn more' /></a>
 | 
			
		||||
      </span>
 | 
			
		||||
    );
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -26,7 +26,7 @@ const messages = defineMessages({
 | 
			
		|||
  community: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },
 | 
			
		||||
  preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },
 | 
			
		||||
  logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },
 | 
			
		||||
  compose: { id: 'navigation_bar.compose', defaultMessage: 'Compose new toot' },
 | 
			
		||||
  compose: { id: 'navigation_bar.compose', defaultMessage: 'Compose new post' },
 | 
			
		||||
  logoutMessage: { id: 'confirmations.logout.message', defaultMessage: 'Are you sure you want to log out?' },
 | 
			
		||||
  logoutConfirm: { id: 'confirmations.logout.confirm', defaultMessage: 'Log out' },
 | 
			
		||||
});
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,7 +10,7 @@ import { connectDirectStream } from '../../actions/streaming';
 | 
			
		|||
import ConversationsListContainer from './containers/conversations_list_container';
 | 
			
		||||
 | 
			
		||||
const messages = defineMessages({
 | 
			
		||||
  title: { id: 'column.direct', defaultMessage: 'Direct messages' },
 | 
			
		||||
  title: { id: 'column.conversations', defaultMessage: 'Conversations' },
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
export default @connect()
 | 
			
		||||
| 
						 | 
				
			
			@ -76,7 +76,7 @@ class DirectTimeline extends React.PureComponent {
 | 
			
		|||
    return (
 | 
			
		||||
      <Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.title)}>
 | 
			
		||||
        <ColumnHeader
 | 
			
		||||
          icon='envelope'
 | 
			
		||||
          icon='at'
 | 
			
		||||
          active={hasUnread}
 | 
			
		||||
          title={intl.formatMessage(messages.title)}
 | 
			
		||||
          onPin={this.handlePin}
 | 
			
		||||
| 
						 | 
				
			
			@ -91,7 +91,7 @@ class DirectTimeline extends React.PureComponent {
 | 
			
		|||
          scrollKey={`direct_timeline-${columnId}`}
 | 
			
		||||
          timelineId='direct'
 | 
			
		||||
          onLoadMore={this.handleLoadMore}
 | 
			
		||||
          emptyMessage={<FormattedMessage id='empty_column.direct' defaultMessage="You don't have any direct messages yet. When you send or receive one, it will show up here." />}
 | 
			
		||||
          emptyMessage={<FormattedMessage id='empty_column.conversations' defaultMessage="Once you send or receive a post that's only visible to people mentioned in it, it will show up here." />}
 | 
			
		||||
        />
 | 
			
		||||
      </Column>
 | 
			
		||||
    );
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -191,7 +191,7 @@ class AccountCard extends ImmutablePureComponent {
 | 
			
		|||
            <div className='account-card__counters__item'>
 | 
			
		||||
              <ShortNumber value={account.get('statuses_count')} />
 | 
			
		||||
              <small>
 | 
			
		||||
                <FormattedMessage id='account.posts' defaultMessage='Toots' />
 | 
			
		||||
                <FormattedMessage id='account.posts' defaultMessage='Posts' />
 | 
			
		||||
              </small>
 | 
			
		||||
            </div>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -100,7 +100,7 @@ class Results extends React.PureComponent {
 | 
			
		|||
          <button onClick={this.handleSelectAll} className={type === 'all' && 'active'}><FormattedMessage id='search_results.all' defaultMessage='All' /></button>
 | 
			
		||||
          <button onClick={this.handleSelectAccounts} className={type === 'accounts' && 'active'}><FormattedMessage id='search_results.accounts' defaultMessage='People' /></button>
 | 
			
		||||
          <button onClick={this.handleSelectHashtags} className={type === 'hashtags' && 'active'}><FormattedMessage id='search_results.hashtags' defaultMessage='Hashtags' /></button>
 | 
			
		||||
          <button onClick={this.handleSelectStatuses} className={type === 'statuses' && 'active'}><FormattedMessage id='search_results.statuses' defaultMessage='Toots' /></button>
 | 
			
		||||
          <button onClick={this.handleSelectStatuses} className={type === 'statuses' && 'active'}><FormattedMessage id='search_results.statuses' defaultMessage='Posts' /></button>
 | 
			
		||||
        </div>
 | 
			
		||||
 | 
			
		||||
        <div className='explore__search-results'>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -70,7 +70,7 @@ class Favourites extends ImmutablePureComponent {
 | 
			
		|||
    const { intl, statusIds, columnId, multiColumn, hasMore, isLoading } = this.props;
 | 
			
		||||
    const pinned = !!columnId;
 | 
			
		||||
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='empty_column.favourited_statuses' defaultMessage="You don't have any favourite toots yet. When you favourite one, it will show up here." />;
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='empty_column.favourited_statuses' defaultMessage="You don't have any favourite posts yet. When you favourite one, it will show up here." />;
 | 
			
		||||
 | 
			
		||||
    return (
 | 
			
		||||
      <Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.heading)}>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -59,7 +59,7 @@ class Favourites extends ImmutablePureComponent {
 | 
			
		|||
      );
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='empty_column.favourites' defaultMessage='No one has favourited this toot yet. When someone does, they will show up here.' />;
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='empty_column.favourites' defaultMessage='No one has favourited this post yet. When someone does, they will show up here.' />;
 | 
			
		||||
 | 
			
		||||
    return (
 | 
			
		||||
      <Column bindToDocument={!multiColumn}>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -22,7 +22,7 @@ const messages = defineMessages({
 | 
			
		|||
  settings_subheading: { id: 'column_subheading.settings', defaultMessage: 'Settings' },
 | 
			
		||||
  community_timeline: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },
 | 
			
		||||
  explore: { id: 'navigation_bar.explore', defaultMessage: 'Explore' },
 | 
			
		||||
  direct: { id: 'navigation_bar.direct', defaultMessage: 'Direct messages' },
 | 
			
		||||
  direct: { id: 'column.conversations', defaultMessage: 'Conversations' },
 | 
			
		||||
  bookmarks: { id: 'navigation_bar.bookmarks', defaultMessage: 'Bookmarks' },
 | 
			
		||||
  preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },
 | 
			
		||||
  follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },
 | 
			
		||||
| 
						 | 
				
			
			@ -30,7 +30,7 @@ const messages = defineMessages({
 | 
			
		|||
  blocks: { id: 'navigation_bar.blocks', defaultMessage: 'Blocked users' },
 | 
			
		||||
  domain_blocks: { id: 'navigation_bar.domain_blocks', defaultMessage: 'Hidden domains' },
 | 
			
		||||
  mutes: { id: 'navigation_bar.mutes', defaultMessage: 'Muted users' },
 | 
			
		||||
  pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned toots' },
 | 
			
		||||
  pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned posts' },
 | 
			
		||||
  lists: { id: 'navigation_bar.lists', defaultMessage: 'Lists' },
 | 
			
		||||
  discover: { id: 'navigation_bar.discover', defaultMessage: 'Discover' },
 | 
			
		||||
  personal: { id: 'navigation_bar.personal', defaultMessage: 'Personal' },
 | 
			
		||||
| 
						 | 
				
			
			@ -130,7 +130,7 @@ class GettingStarted extends ImmutablePureComponent {
 | 
			
		|||
    }
 | 
			
		||||
 | 
			
		||||
    navItems.push(
 | 
			
		||||
      <ColumnLink key='direct' icon='envelope' text={intl.formatMessage(messages.direct)} to='/conversations' />,
 | 
			
		||||
      <ColumnLink key='direct' icon='at' text={intl.formatMessage(messages.direct)} to='/conversations' />,
 | 
			
		||||
      <ColumnLink key='bookmark' icon='bookmark' text={intl.formatMessage(messages.bookmarks)} to='/bookmarks' />,
 | 
			
		||||
      <ColumnLink key='favourites' icon='star' text={intl.formatMessage(messages.favourites)} to='/favourites' />,
 | 
			
		||||
      <ColumnLink key='lists' icon='list-ul' text={intl.formatMessage(messages.lists)} to='/lists' />,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -86,7 +86,7 @@ class KeyboardShortcuts extends ImmutablePureComponent {
 | 
			
		|||
              </tr>
 | 
			
		||||
              <tr>
 | 
			
		||||
                <td><kbd>alt</kbd>+<kbd>n</kbd></td>
 | 
			
		||||
                <td><FormattedMessage id='keyboard_shortcuts.toot' defaultMessage='to start a brand new toot' /></td>
 | 
			
		||||
                <td><FormattedMessage id='keyboard_shortcuts.toot' defaultMessage='to start a brand new post' /></td>
 | 
			
		||||
              </tr>
 | 
			
		||||
              <tr>
 | 
			
		||||
                <td><kbd>alt</kbd>+<kbd>x</kbd></td>
 | 
			
		||||
| 
						 | 
				
			
			@ -122,7 +122,7 @@ class KeyboardShortcuts extends ImmutablePureComponent {
 | 
			
		|||
              </tr>
 | 
			
		||||
              <tr>
 | 
			
		||||
                <td><kbd>g</kbd>+<kbd>d</kbd></td>
 | 
			
		||||
                <td><FormattedMessage id='keyboard_shortcuts.direct' defaultMessage='to open direct messages column' /></td>
 | 
			
		||||
                <td><FormattedMessage id='keyboard_shortcuts.conversations' defaultMessage='to open conversations column' /></td>
 | 
			
		||||
              </tr>
 | 
			
		||||
              <tr>
 | 
			
		||||
                <td><kbd>g</kbd>+<kbd>s</kbd></td>
 | 
			
		||||
| 
						 | 
				
			
			@ -134,7 +134,7 @@ class KeyboardShortcuts extends ImmutablePureComponent {
 | 
			
		|||
              </tr>
 | 
			
		||||
              <tr>
 | 
			
		||||
                <td><kbd>g</kbd>+<kbd>p</kbd></td>
 | 
			
		||||
                <td><FormattedMessage id='keyboard_shortcuts.pinned' defaultMessage='to open pinned toots list' /></td>
 | 
			
		||||
                <td><FormattedMessage id='keyboard_shortcuts.pinned' defaultMessage='to open pinned posts list' /></td>
 | 
			
		||||
              </tr>
 | 
			
		||||
              <tr>
 | 
			
		||||
                <td><kbd>g</kbd>+<kbd>u</kbd></td>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -145,7 +145,7 @@ export default class ColumnSettings extends React.PureComponent {
 | 
			
		|||
        </div>
 | 
			
		||||
 | 
			
		||||
        <div role='group' aria-labelledby='notifications-status'>
 | 
			
		||||
          <span id='notifications-status' className='column-settings__section'><FormattedMessage id='notifications.column_settings.status' defaultMessage='New toots:' /></span>
 | 
			
		||||
          <span id='notifications-status' className='column-settings__section'><FormattedMessage id='notifications.column_settings.status' defaultMessage='New posts:' /></span>
 | 
			
		||||
 | 
			
		||||
          <div className='column-settings__row'>
 | 
			
		||||
            <SettingToggle disabled={browserPermission === 'denied'} prefix='notifications_desktop' settings={settings} settingPath={['alerts', 'status']} onChange={onChange} label={alertStr} />
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,7 +10,7 @@ import { defineMessages, injectIntl } from 'react-intl';
 | 
			
		|||
import ImmutablePureComponent from 'react-immutable-pure-component';
 | 
			
		||||
 | 
			
		||||
const messages = defineMessages({
 | 
			
		||||
  heading: { id: 'column.pins', defaultMessage: 'Pinned toot' },
 | 
			
		||||
  heading: { id: 'column.pins', defaultMessage: 'Pinned post' },
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
const mapStateToProps = state => ({
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -59,7 +59,7 @@ class Reblogs extends ImmutablePureComponent {
 | 
			
		|||
      );
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='status.reblogs.empty' defaultMessage='No one has boosted this toot yet. When someone does, they will show up here.' />;
 | 
			
		||||
    const emptyMessage = <FormattedMessage id='status.reblogs.empty' defaultMessage='No one has boosted this post yet. When someone does, they will show up here.' />;
 | 
			
		||||
 | 
			
		||||
    return (
 | 
			
		||||
      <Column bindToDocument={!multiColumn}>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -220,7 +220,6 @@ class ActionBar extends React.PureComponent {
 | 
			
		|||
      menu.push({ text: intl.formatMessage(messages.redraft), action: this.handleRedraftClick });
 | 
			
		||||
    } else {
 | 
			
		||||
      menu.push({ text: intl.formatMessage(messages.mention, { name: status.getIn(['account', 'username']) }), action: this.handleMentionClick });
 | 
			
		||||
      menu.push({ text: intl.formatMessage(messages.direct, { name: status.getIn(['account', 'username']) }), action: this.handleDirectClick });
 | 
			
		||||
      menu.push(null);
 | 
			
		||||
 | 
			
		||||
      if (relationship && relationship.get('muting')) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,7 +16,7 @@ const NavigationPanel = () => (
 | 
			
		|||
    <NavLink className='column-link column-link--transparent' to='/explore' data-preview-title-id='explore.title' data-preview-icon='hashtag'><Icon className='column-link__icon' id='hashtag' fixedWidth /><FormattedMessage id='explore.title' defaultMessage='Explore' /></NavLink>
 | 
			
		||||
    <NavLink className='column-link column-link--transparent' to='/public/local' data-preview-title-id='column.community' data-preview-icon='users' ><Icon className='column-link__icon' id='users' fixedWidth /><FormattedMessage id='tabs_bar.local_timeline' defaultMessage='Local' /></NavLink>
 | 
			
		||||
    <NavLink className='column-link column-link--transparent' exact to='/public' data-preview-title-id='column.public' data-preview-icon='globe' ><Icon className='column-link__icon' id='globe' fixedWidth /><FormattedMessage id='tabs_bar.federated_timeline' defaultMessage='Federated' /></NavLink>
 | 
			
		||||
    <NavLink className='column-link column-link--transparent' to='/conversations'><Icon className='column-link__icon' id='envelope' fixedWidth /><FormattedMessage id='navigation_bar.direct' defaultMessage='Direct messages' /></NavLink>
 | 
			
		||||
    <NavLink className='column-link column-link--transparent' to='/conversations'><Icon className='column-link__icon' id='at' fixedWidth /><FormattedMessage id='column.conversations' defaultMessage='Conversations' /></NavLink>
 | 
			
		||||
    <NavLink className='column-link column-link--transparent' to='/favourites'><Icon className='column-link__icon' id='star' fixedWidth /><FormattedMessage id='navigation_bar.favourites' defaultMessage='Favourites' /></NavLink>
 | 
			
		||||
    <NavLink className='column-link column-link--transparent' to='/bookmarks'><Icon className='column-link__icon' id='bookmark' fixedWidth /><FormattedMessage id='navigation_bar.bookmarks' defaultMessage='Bookmarks' /></NavLink>
 | 
			
		||||
    <NavLink className='column-link column-link--transparent' to='/lists'><Icon className='column-link__icon' id='list-ul' fixedWidth /><FormattedMessage id='navigation_bar.lists' defaultMessage='Lists' /></NavLink>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -206,7 +206,7 @@
 | 
			
		|||
  {
 | 
			
		||||
    "descriptors": [
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "{count, plural, one {{counter} Toot} other {{counter} Toots}}",
 | 
			
		||||
        "defaultMessage": "{count, plural, one {{counter} Post} other {{counter} Posts}}",
 | 
			
		||||
        "id": "account.statuses_counter"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -659,7 +659,7 @@
 | 
			
		|||
        "id": "privacy.private.short"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Direct",
 | 
			
		||||
        "defaultMessage": "Mentioned people only",
 | 
			
		||||
        "id": "privacy.direct.short"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -671,7 +671,7 @@
 | 
			
		|||
        "id": "status.filtered"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Pinned toot",
 | 
			
		||||
        "defaultMessage": "Pinned post",
 | 
			
		||||
        "id": "status.pinned"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -773,11 +773,11 @@
 | 
			
		|||
  {
 | 
			
		||||
    "descriptors": [
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Toots",
 | 
			
		||||
        "defaultMessage": "Posts",
 | 
			
		||||
        "id": "account.posts"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Toots and replies",
 | 
			
		||||
        "defaultMessage": "Posts and replies",
 | 
			
		||||
        "id": "account.posts_with_replies"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -820,7 +820,7 @@
 | 
			
		|||
  {
 | 
			
		||||
    "descriptors": [
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Older toots",
 | 
			
		||||
        "defaultMessage": "Older posts",
 | 
			
		||||
        "id": "timeline_hint.resources.statuses"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -832,7 +832,7 @@
 | 
			
		|||
        "id": "empty_column.account_unavailable"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "No toots here!",
 | 
			
		||||
        "defaultMessage": "No posts found",
 | 
			
		||||
        "id": "empty_column.account_timeline"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
| 
						 | 
				
			
			@ -946,7 +946,7 @@
 | 
			
		|||
        "id": "account.disable_notifications"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Pinned toots",
 | 
			
		||||
        "defaultMessage": "Pinned posts",
 | 
			
		||||
        "id": "navigation_bar.pins"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1069,7 +1069,7 @@
 | 
			
		|||
        "id": "column.bookmarks"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "You don't have any bookmarked toots yet. When you bookmark one, it will show up here.",
 | 
			
		||||
        "defaultMessage": "You don't have any bookmarked posts yet. When you bookmark one, it will show up here.",
 | 
			
		||||
        "id": "empty_column.bookmarked_statuses"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
| 
						 | 
				
			
			@ -1104,7 +1104,7 @@
 | 
			
		|||
        "id": "account.edit_profile"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Pinned toots",
 | 
			
		||||
        "defaultMessage": "Pinned posts",
 | 
			
		||||
        "id": "navigation_bar.pins"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1306,7 +1306,7 @@
 | 
			
		|||
        "id": "privacy.public.short"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Visible for all, shown in public timelines",
 | 
			
		||||
        "defaultMessage": "Visible for all",
 | 
			
		||||
        "id": "privacy.public.long"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1314,11 +1314,11 @@
 | 
			
		|||
        "id": "privacy.unlisted.short"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Visible for all, but not in public timelines",
 | 
			
		||||
        "defaultMessage": "Visible for all, but opted-out of discovery features",
 | 
			
		||||
        "id": "privacy.unlisted.long"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Followers-only",
 | 
			
		||||
        "defaultMessage": "Followers only",
 | 
			
		||||
        "id": "privacy.private.short"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1326,7 +1326,7 @@
 | 
			
		|||
        "id": "privacy.private.long"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Direct",
 | 
			
		||||
        "defaultMessage": "Only people I mention",
 | 
			
		||||
        "id": "privacy.direct.short"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1364,11 +1364,11 @@
 | 
			
		|||
        "id": "search_results.accounts"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Toots",
 | 
			
		||||
        "defaultMessage": "Posts",
 | 
			
		||||
        "id": "search_results.statuses"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Searching toots by their content is not enabled on this Mastodon server.",
 | 
			
		||||
        "defaultMessage": "Searching posts by their content is not enabled on this Mastodon server.",
 | 
			
		||||
        "id": "search_results.statuses_fts_disabled"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1504,12 +1504,12 @@
 | 
			
		|||
        "id": "compose_form.lock_disclaimer.lock"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "This toot won't be listed under any hashtag as it is unlisted. Only public toots can be searched by hashtag.",
 | 
			
		||||
        "defaultMessage": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.",
 | 
			
		||||
        "id": "compose_form.hashtag_warning"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "This toot will only be sent to all the mentioned users.",
 | 
			
		||||
        "id": "compose_form.direct_message_warning"
 | 
			
		||||
        "defaultMessage": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
 | 
			
		||||
        "id": "compose_form.encryption_warning"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Learn more",
 | 
			
		||||
| 
						 | 
				
			
			@ -1549,7 +1549,7 @@
 | 
			
		|||
        "id": "navigation_bar.logout"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Compose new toot",
 | 
			
		||||
        "defaultMessage": "Compose new post",
 | 
			
		||||
        "id": "navigation_bar.compose"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1616,12 +1616,12 @@
 | 
			
		|||
  {
 | 
			
		||||
    "descriptors": [
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Direct messages",
 | 
			
		||||
        "id": "column.direct"
 | 
			
		||||
        "defaultMessage": "Conversations",
 | 
			
		||||
        "id": "column.conversations"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
 | 
			
		||||
        "id": "empty_column.direct"
 | 
			
		||||
        "defaultMessage": "Once you send or receive a post that's only visible to people mentioned in it, it will show up here.",
 | 
			
		||||
        "id": "empty_column.conversations"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "path": "app/javascript/mastodon/features/direct_timeline/index.json"
 | 
			
		||||
| 
						 | 
				
			
			@ -1665,7 +1665,7 @@
 | 
			
		|||
        "id": "confirmations.unfollow.message"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Toots",
 | 
			
		||||
        "defaultMessage": "Posts",
 | 
			
		||||
        "id": "account.posts"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -1769,7 +1769,7 @@
 | 
			
		|||
        "id": "search_results.hashtags"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Toots",
 | 
			
		||||
        "defaultMessage": "Posts",
 | 
			
		||||
        "id": "search_results.statuses"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
| 
						 | 
				
			
			@ -1791,7 +1791,7 @@
 | 
			
		|||
        "id": "column.favourites"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "You don't have any favourite toots yet. When you favourite one, it will show up here.",
 | 
			
		||||
        "defaultMessage": "You don't have any favourite posts yet. When you favourite one, it will show up here.",
 | 
			
		||||
        "id": "empty_column.favourited_statuses"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
| 
						 | 
				
			
			@ -1804,7 +1804,7 @@
 | 
			
		|||
        "id": "refresh"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "No one has favourited this toot yet. When someone does, they will show up here.",
 | 
			
		||||
        "defaultMessage": "No one has favourited this post yet. When someone does, they will show up here.",
 | 
			
		||||
        "id": "empty_column.favourites"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
| 
						 | 
				
			
			@ -1965,8 +1965,8 @@
 | 
			
		|||
        "id": "navigation_bar.explore"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Direct messages",
 | 
			
		||||
        "id": "navigation_bar.direct"
 | 
			
		||||
        "defaultMessage": "Conversations",
 | 
			
		||||
        "id": "column.conversations"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Bookmarks",
 | 
			
		||||
| 
						 | 
				
			
			@ -1997,7 +1997,7 @@
 | 
			
		|||
        "id": "navigation_bar.mutes"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Pinned toots",
 | 
			
		||||
        "defaultMessage": "Pinned posts",
 | 
			
		||||
        "id": "navigation_bar.pins"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -2186,7 +2186,7 @@
 | 
			
		|||
        "id": "keyboard_shortcuts.compose"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "to start a brand new toot",
 | 
			
		||||
        "defaultMessage": "to start a brand new post",
 | 
			
		||||
        "id": "keyboard_shortcuts.toot"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -2222,8 +2222,8 @@
 | 
			
		|||
        "id": "keyboard_shortcuts.federated"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "to open direct messages column",
 | 
			
		||||
        "id": "keyboard_shortcuts.direct"
 | 
			
		||||
        "defaultMessage": "to open conversations column",
 | 
			
		||||
        "id": "keyboard_shortcuts.conversations"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "to open \"get started\" column",
 | 
			
		||||
| 
						 | 
				
			
			@ -2234,7 +2234,7 @@
 | 
			
		|||
        "id": "keyboard_shortcuts.favourites"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "to open pinned toots list",
 | 
			
		||||
        "defaultMessage": "to open pinned posts list",
 | 
			
		||||
        "id": "keyboard_shortcuts.pinned"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -2468,7 +2468,7 @@
 | 
			
		|||
        "id": "notifications.column_settings.poll"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "New toots:",
 | 
			
		||||
        "defaultMessage": "New posts:",
 | 
			
		||||
        "id": "notifications.column_settings.status"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -2690,7 +2690,7 @@
 | 
			
		|||
  {
 | 
			
		||||
    "descriptors": [
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Pinned toot",
 | 
			
		||||
        "defaultMessage": "Pinned post",
 | 
			
		||||
        "id": "column.pins"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
| 
						 | 
				
			
			@ -2729,7 +2729,7 @@
 | 
			
		|||
        "id": "refresh"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "No one has boosted this toot yet. When someone does, they will show up here.",
 | 
			
		||||
        "defaultMessage": "No one has boosted this post yet. When someone does, they will show up here.",
 | 
			
		||||
        "id": "status.reblogs.empty"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
| 
						 | 
				
			
			@ -3513,8 +3513,8 @@
 | 
			
		|||
        "id": "tabs_bar.federated_timeline"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Direct messages",
 | 
			
		||||
        "id": "navigation_bar.direct"
 | 
			
		||||
        "defaultMessage": "Conversations",
 | 
			
		||||
        "id": "column.conversations"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "defaultMessage": "Favourites",
 | 
			
		||||
| 
						 | 
				
			
			@ -3657,4 +3657,4 @@
 | 
			
		|||
    ],
 | 
			
		||||
    "path": "app/javascript/mastodon/features/video/index.json"
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -70,7 +70,7 @@
 | 
			
		|||
  "column.blocks": "Blocked users",
 | 
			
		||||
  "column.bookmarks": "Bookmarks",
 | 
			
		||||
  "column.community": "Local timeline",
 | 
			
		||||
  "column.direct": "Direct messages",
 | 
			
		||||
  "column.conversations": "Conversations",
 | 
			
		||||
  "column.directory": "Browse profiles",
 | 
			
		||||
  "column.domain_blocks": "Blocked domains",
 | 
			
		||||
  "column.favourites": "Favourites",
 | 
			
		||||
| 
						 | 
				
			
			@ -92,8 +92,8 @@
 | 
			
		|||
  "community.column_settings.local_only": "Local only",
 | 
			
		||||
  "community.column_settings.media_only": "Media Only",
 | 
			
		||||
  "community.column_settings.remote_only": "Remote only",
 | 
			
		||||
  "compose_form.direct_message_warning": "This post will only be sent to the mentioned users.",
 | 
			
		||||
  "compose_form.direct_message_warning_learn_more": "Learn more",
 | 
			
		||||
  "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
 | 
			
		||||
  "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.",
 | 
			
		||||
  "compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.",
 | 
			
		||||
  "compose_form.lock_disclaimer.lock": "locked",
 | 
			
		||||
| 
						 | 
				
			
			@ -166,7 +166,7 @@
 | 
			
		|||
  "empty_column.blocks": "You haven't blocked any users yet.",
 | 
			
		||||
  "empty_column.bookmarked_statuses": "You don't have any bookmarked posts yet. When you bookmark one, it will show up here.",
 | 
			
		||||
  "empty_column.community": "The local timeline is empty. Write something publicly to get the ball rolling!",
 | 
			
		||||
  "empty_column.direct": "You don't have any direct messages yet. When you send or receive one, it will show up here.",
 | 
			
		||||
  "empty_column.conversations": "Once you send or receive a post that's only visible to people mentioned in it, it will show up here.",
 | 
			
		||||
  "empty_column.domain_blocks": "There are no blocked domains yet.",
 | 
			
		||||
  "empty_column.explore_statuses": "Nothing is trending right now. Check back later!",
 | 
			
		||||
  "empty_column.favourited_statuses": "You don't have any favourite posts yet. When you favourite one, it will show up here.",
 | 
			
		||||
| 
						 | 
				
			
			@ -230,8 +230,8 @@
 | 
			
		|||
  "keyboard_shortcuts.boost": "Boost post",
 | 
			
		||||
  "keyboard_shortcuts.column": "Focus column",
 | 
			
		||||
  "keyboard_shortcuts.compose": "Focus compose textarea",
 | 
			
		||||
  "keyboard_shortcuts.conversations": "to open conversations column",
 | 
			
		||||
  "keyboard_shortcuts.description": "Description",
 | 
			
		||||
  "keyboard_shortcuts.direct": "Open direct messages column",
 | 
			
		||||
  "keyboard_shortcuts.down": "Move down in the list",
 | 
			
		||||
  "keyboard_shortcuts.enter": "Open post",
 | 
			
		||||
  "keyboard_shortcuts.favourite": "Favourite post",
 | 
			
		||||
| 
						 | 
				
			
			@ -290,7 +290,6 @@
 | 
			
		|||
  "navigation_bar.bookmarks": "Bookmarks",
 | 
			
		||||
  "navigation_bar.community_timeline": "Local timeline",
 | 
			
		||||
  "navigation_bar.compose": "Compose new post",
 | 
			
		||||
  "navigation_bar.direct": "Direct messages",
 | 
			
		||||
  "navigation_bar.discover": "Discover",
 | 
			
		||||
  "navigation_bar.domain_blocks": "Blocked domains",
 | 
			
		||||
  "navigation_bar.edit_profile": "Edit profile",
 | 
			
		||||
| 
						 | 
				
			
			@ -367,12 +366,12 @@
 | 
			
		|||
  "poll_button.remove_poll": "Remove poll",
 | 
			
		||||
  "privacy.change": "Change post privacy",
 | 
			
		||||
  "privacy.direct.long": "Visible for mentioned users only",
 | 
			
		||||
  "privacy.direct.short": "Direct",
 | 
			
		||||
  "privacy.direct.short": "Only people I mention",
 | 
			
		||||
  "privacy.private.long": "Visible for followers only",
 | 
			
		||||
  "privacy.private.short": "Followers-only",
 | 
			
		||||
  "privacy.public.long": "Visible for all, shown in public timelines",
 | 
			
		||||
  "privacy.private.short": "Followers only",
 | 
			
		||||
  "privacy.public.long": "Visible for all",
 | 
			
		||||
  "privacy.public.short": "Public",
 | 
			
		||||
  "privacy.unlisted.long": "Visible for all, but not in public timelines",
 | 
			
		||||
  "privacy.unlisted.long": "Visible for all, but opted-out of discovery features",
 | 
			
		||||
  "privacy.unlisted.short": "Unlisted",
 | 
			
		||||
  "refresh": "Refresh",
 | 
			
		||||
  "regeneration_indicator.label": "Loading…",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue