Conflicts:
- `app/javascript/packs/public.jsx`:
In glitch-soc, this file was split across the following files:
- `app/javascript/packs/public.jsx`
- `app/javascript/core/embed.js`
- `app/javascript/core/settings.js`
Update all those files accordingly, as well as the related `theme.yml` files.
Conflicts:
- `app/views/admin/custom_emojis/new.html.haml`:
Upstream split some `simple_form` arguments across multiple lines.
One of the arguments in glitch-soc was different.
Split as upstream's did, keeping our different limit argument.
- `app/views/admin/settings/appearance/show.html.haml`:
Upstream split some `simple_form` arguments across multiple lines.
Glitch-soc had a different field because of the different theming
system.
Kept glitch-soc's definition of that form field.
Conflicts:
- `spec/controllers/api/v1/accounts/credentials_controller_spec.rb`
Conflict due to glitch-soc's different note length handling.
Ported the changes in `spec/requests/api/v1/accounts/credentials_spec.rb` instead.
Conflicts:
- `config/routes/api.rb`:
glitch-soc has an extra `:destroy` action on notifications for historical reasons.
Kept it for now, while otherwise updating as upstream did.
@ -189,18 +189,20 @@ class About extends PureComponent {
<>
<p><FormattedMessageid='about.domain_blocks.preamble'defaultMessage='Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.'/></p>
<p>{(block.get('comment')||'').length>0?block.get('comment'):<FormattedMessageid='about.domain_blocks.no_reason_available'defaultMessage='Reason not available'/>}</p>
</div>
))}
</div>
<p>{(block.get('comment')||'').length>0?block.get('comment'):<FormattedMessageid='about.domain_blocks.no_reason_available'defaultMessage='Reason not available'/>}</p>
</div>
))}
</div>
)}
</>
):(
<p><FormattedMessageid='about.not_available'defaultMessage='This information has not been made available on this server.'/></p>
<p>{isSelf?<FormattedMessageid='domain_pill.your_username'defaultMessage='Your unique identifier on this server. It’s possible to find users with the same username on different servers.'/>:<FormattedMessageid='domain_pill.their_username'defaultMessage='Their unique identifier on their server. It’s possible to find users with the same username on different servers.'/>}</p>
<p>{isSelf?<FormattedMessageid='domain_pill.your_server'defaultMessage='Your digital home, where all of your posts live. Don’t like this one? Transfer servers at any time and bring your followers, too.'/>:<FormattedMessageid='domain_pill.their_server'defaultMessage='Their digital home, where all of their posts live.'/>}</p>
</div>
</div>
</div>
<p>{isSelf?<FormattedMessageid='domain_pill.who_you_are'defaultMessage='Because your handle says who you are and where you are, people can interact with you across the social web of <button>ActivityPub-powered platforms</button>.'values={{button:x=><buttononClick={handleExpandClick}className='link-button'>{x}</button>}}/>:<FormattedMessageid='domain_pill.who_they_are'defaultMessage='Since handles say who someone is and where they are, you can interact with people across the social web of <button>ActivityPub-powered platforms</button>.'values={{button:x=><buttononClick={handleExpandClick}className='link-button'>{x}</button>}}/>}</p>
{expanded&&(
<>
<p><FormattedMessageid='domain_pill.activitypub_like_language'defaultMessage='ActivityPub is like the language Mastodon speaks with other social networks.'/></p>
<p><FormattedMessageid='domain_pill.activitypub_lets_connect'defaultMessage='It lets you connect and interact with people not just on Mastodon, but across different social apps too.'/></p>
message:<FormattedMessageid='confirmations.domain_block.message'defaultMessage='Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.'values={{domain:<strong>{domain}</strong>}}/>,
<SettingTogglesettings={settings}settingPath={['conversations']}onChange={onChange}label={<FormattedMessageid='direct.group_by_conversations'defaultMessage='Group by conversation'/>}/>
<SettingTogglesettings={settings}settingPath={['conversations']}onChange={onChange}label={<FormattedMessageid='direct.group_by_conversations'defaultMessage='Group by conversation'/>}/>
<spanclassName='warning-hint'><FormattedMessageid='notifications.permission_denied'defaultMessage='Desktop notifications are unavailable due to previously denied browser permissions request'/></span>
</div>
<spanclassName='warning-hint'><FormattedMessageid='notifications.permission_denied'defaultMessage='Desktop notifications are unavailable due to previously denied browser permissions request'/></span>
<FormattedMessageid='notifications.permission_required'defaultMessage='Desktop notifications are unavailable because the required permission has not been granted.'/><GrantPermissionButtononClick={onRequestNotificationPermission}/>
</span>
</div>
<spanclassName='warning-hint'>
<FormattedMessageid='notifications.permission_required'defaultMessage='Desktop notifications are unavailable because the required permission has not been granted.'/><GrantPermissionButtononClick={onRequestNotificationPermission}/>
<strong><FormattedMessageid='notifications.policy.filter_not_followers_title'defaultMessage='People not following you'/></strong>
<spanclassName='hint'><FormattedMessageid='notifications.policy.filter_not_followers_hint'defaultMessage='Including people who have been following you fewer than {days, plural, one {one day} other {# days}}'values={{days:3}}/></span>
<spanclassName='hint'><FormattedMessageid='notifications.policy.filter_new_accounts.hint'defaultMessage='Created within the past {days, plural, one {one day} other {# days}}'values={{days:30}}/></span>
<spanclassName='hint'><FormattedMessageid='notifications.policy.filter_private_mentions_hint'defaultMessage="Filtered unless it's in reply to your own mention or if you follow the sender"/></span>
<span><FormattedMessageid='filtered_notifications_banner.pending_requests'defaultMessage='Notifications from {count, plural, =0 {no one} one {one person} other {# people}} you may know'values={{count:policy.getIn(['summary','pending_requests_count'])}}/></span>