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
|
@ -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…
Reference in New Issue