Redesign public profiles and toots (#8068)
This commit is contained in:
parent
e23b26178a
commit
bb71538bb5
@ -8,6 +8,7 @@ module AccountControllerConcern
|
|||||||
included do
|
included do
|
||||||
layout 'public'
|
layout 'public'
|
||||||
before_action :set_account
|
before_action :set_account
|
||||||
|
before_action :set_instance_presenter
|
||||||
before_action :set_link_headers
|
before_action :set_link_headers
|
||||||
before_action :check_account_suspension
|
before_action :check_account_suspension
|
||||||
end
|
end
|
||||||
@ -18,6 +19,10 @@ module AccountControllerConcern
|
|||||||
@account = Account.find_local!(params[:account_username])
|
@account = Account.find_local!(params[:account_username])
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def set_instance_presenter
|
||||||
|
@instance_presenter = InstancePresenter.new
|
||||||
|
end
|
||||||
|
|
||||||
def set_link_headers
|
def set_link_headers
|
||||||
response.headers['Link'] = LinkHeader.new(
|
response.headers['Link'] = LinkHeader.new(
|
||||||
[
|
[
|
||||||
|
@ -12,6 +12,7 @@ class StatusesController < ApplicationController
|
|||||||
|
|
||||||
before_action :set_account
|
before_action :set_account
|
||||||
before_action :set_status
|
before_action :set_status
|
||||||
|
before_action :set_instance_presenter
|
||||||
before_action :set_link_headers
|
before_action :set_link_headers
|
||||||
before_action :check_account_suspension
|
before_action :check_account_suspension
|
||||||
before_action :redirect_to_original, only: [:show]
|
before_action :redirect_to_original, only: [:show]
|
||||||
@ -148,6 +149,10 @@ class StatusesController < ApplicationController
|
|||||||
raise ActiveRecord::RecordNotFound
|
raise ActiveRecord::RecordNotFound
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def set_instance_presenter
|
||||||
|
@instance_presenter = InstancePresenter.new
|
||||||
|
end
|
||||||
|
|
||||||
def check_account_suspension
|
def check_account_suspension
|
||||||
gone if @account.suspended?
|
gone if @account.suspended?
|
||||||
end
|
end
|
||||||
|
@ -12,6 +12,52 @@ module StreamEntriesHelper
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def account_action_button(account)
|
||||||
|
if user_signed_in?
|
||||||
|
if account.id == current_user.account_id
|
||||||
|
link_to settings_profile_url, class: 'button logo-button' do
|
||||||
|
safe_join([render(file: Rails.root.join('app', 'javascript', 'images', 'logo.svg')), t('settings.edit_profile')])
|
||||||
|
end
|
||||||
|
elsif current_account.following?(account) || current_account.requested?(account)
|
||||||
|
link_to account_unfollow_path(account), class: 'button logo-button', data: { method: :post } do
|
||||||
|
safe_join([render(file: Rails.root.join('app', 'javascript', 'images', 'logo.svg')), t('accounts.unfollow')])
|
||||||
|
end
|
||||||
|
else
|
||||||
|
link_to account_follow_path(account), class: 'button logo-button', data: { method: :post } do
|
||||||
|
safe_join([render(file: Rails.root.join('app', 'javascript', 'images', 'logo.svg')), t('accounts.follow')])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
link_to account_remote_follow_path(account), class: 'button logo-button modal-button', target: '_new' do
|
||||||
|
safe_join([render(file: Rails.root.join('app', 'javascript', 'images', 'logo.svg')), t('accounts.follow')])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def account_badge(account)
|
||||||
|
if account.bot?
|
||||||
|
content_tag(:div, content_tag(:div, t('accounts.roles.bot'), class: 'account-role bot'), class: 'roles')
|
||||||
|
elsif Setting.show_staff_badge && account.user_staff?
|
||||||
|
content_tag(:div, class: 'roles') do
|
||||||
|
if account.user_admin?
|
||||||
|
content_tag(:div, t('accounts.roles.admin'), class: 'account-role admin')
|
||||||
|
elsif account.user_moderator?
|
||||||
|
content_tag(:div, t('accounts.roles.moderator'), class: 'account-role moderator')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_to_more(url)
|
||||||
|
link_to t('statuses.show_more'), url, class: 'load-more load-gap'
|
||||||
|
end
|
||||||
|
|
||||||
|
def nothing_here(extra_classes = '')
|
||||||
|
content_tag(:div, class: "nothing-here #{extra_classes}") do
|
||||||
|
t('accounts.nothing_here')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def account_description(account)
|
def account_description(account)
|
||||||
prepend_str = [
|
prepend_str = [
|
||||||
[
|
[
|
||||||
|
@ -60,6 +60,32 @@ const getUnitDelay = units => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const timeAgoString = (intl, date, now, year) => {
|
||||||
|
const delta = now - date.getTime();
|
||||||
|
|
||||||
|
let relativeTime;
|
||||||
|
|
||||||
|
if (delta < 10 * SECOND) {
|
||||||
|
relativeTime = intl.formatMessage(messages.just_now);
|
||||||
|
} else if (delta < 7 * DAY) {
|
||||||
|
if (delta < MINUTE) {
|
||||||
|
relativeTime = intl.formatMessage(messages.seconds, { number: Math.floor(delta / SECOND) });
|
||||||
|
} else if (delta < HOUR) {
|
||||||
|
relativeTime = intl.formatMessage(messages.minutes, { number: Math.floor(delta / MINUTE) });
|
||||||
|
} else if (delta < DAY) {
|
||||||
|
relativeTime = intl.formatMessage(messages.hours, { number: Math.floor(delta / HOUR) });
|
||||||
|
} else {
|
||||||
|
relativeTime = intl.formatMessage(messages.days, { number: Math.floor(delta / DAY) });
|
||||||
|
}
|
||||||
|
} else if (date.getFullYear() === year) {
|
||||||
|
relativeTime = intl.formatDate(date, shortDateFormatOptions);
|
||||||
|
} else {
|
||||||
|
relativeTime = intl.formatDate(date, { ...shortDateFormatOptions, year: 'numeric' });
|
||||||
|
}
|
||||||
|
|
||||||
|
return relativeTime;
|
||||||
|
};
|
||||||
|
|
||||||
@injectIntl
|
@injectIntl
|
||||||
export default class RelativeTimestamp extends React.Component {
|
export default class RelativeTimestamp extends React.Component {
|
||||||
|
|
||||||
@ -121,28 +147,8 @@ export default class RelativeTimestamp extends React.Component {
|
|||||||
render () {
|
render () {
|
||||||
const { timestamp, intl, year } = this.props;
|
const { timestamp, intl, year } = this.props;
|
||||||
|
|
||||||
const date = new Date(timestamp);
|
const date = new Date(timestamp);
|
||||||
const delta = this.state.now - date.getTime();
|
const relativeTime = timeAgoString(intl, date, this.state.now, year);
|
||||||
|
|
||||||
let relativeTime;
|
|
||||||
|
|
||||||
if (delta < 10 * SECOND) {
|
|
||||||
relativeTime = intl.formatMessage(messages.just_now);
|
|
||||||
} else if (delta < 7 * DAY) {
|
|
||||||
if (delta < MINUTE) {
|
|
||||||
relativeTime = intl.formatMessage(messages.seconds, { number: Math.floor(delta / SECOND) });
|
|
||||||
} else if (delta < HOUR) {
|
|
||||||
relativeTime = intl.formatMessage(messages.minutes, { number: Math.floor(delta / MINUTE) });
|
|
||||||
} else if (delta < DAY) {
|
|
||||||
relativeTime = intl.formatMessage(messages.hours, { number: Math.floor(delta / HOUR) });
|
|
||||||
} else {
|
|
||||||
relativeTime = intl.formatMessage(messages.days, { number: Math.floor(delta / DAY) });
|
|
||||||
}
|
|
||||||
} else if (date.getFullYear() === year) {
|
|
||||||
relativeTime = intl.formatDate(date, shortDateFormatOptions);
|
|
||||||
} else {
|
|
||||||
relativeTime = intl.formatDate(date, { ...shortDateFormatOptions, year: 'numeric' });
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<time dateTime={timestamp} title={intl.formatDate(date, dateFormatOptions)}>
|
<time dateTime={timestamp} title={intl.formatDate(date, dateFormatOptions)}>
|
||||||
|
@ -22,15 +22,15 @@ window.addEventListener('message', e => {
|
|||||||
|
|
||||||
function main() {
|
function main() {
|
||||||
const { length } = require('stringz');
|
const { length } = require('stringz');
|
||||||
const IntlRelativeFormat = require('intl-relativeformat').default;
|
const IntlMessageFormat = require('intl-messageformat').default;
|
||||||
|
const { timeAgoString } = require('../mastodon/components/relative_timestamp');
|
||||||
const { delegate } = require('rails-ujs');
|
const { delegate } = require('rails-ujs');
|
||||||
const emojify = require('../mastodon/features/emoji/emoji').default;
|
const emojify = require('../mastodon/features/emoji/emoji').default;
|
||||||
const { getLocale } = require('../mastodon/locales');
|
const { getLocale } = require('../mastodon/locales');
|
||||||
const { localeData } = getLocale();
|
const { messages } = getLocale();
|
||||||
const React = require('react');
|
const React = require('react');
|
||||||
const ReactDOM = require('react-dom');
|
const ReactDOM = require('react-dom');
|
||||||
|
const Rellax = require('rellax');
|
||||||
localeData.forEach(IntlRelativeFormat.__addLocaleData);
|
|
||||||
|
|
||||||
ready(() => {
|
ready(() => {
|
||||||
const locale = document.documentElement.lang;
|
const locale = document.documentElement.lang;
|
||||||
@ -43,8 +43,6 @@ function main() {
|
|||||||
minute: 'numeric',
|
minute: 'numeric',
|
||||||
});
|
});
|
||||||
|
|
||||||
const relativeFormat = new IntlRelativeFormat(locale);
|
|
||||||
|
|
||||||
[].forEach.call(document.querySelectorAll('.emojify'), (content) => {
|
[].forEach.call(document.querySelectorAll('.emojify'), (content) => {
|
||||||
content.innerHTML = emojify(content.innerHTML);
|
content.innerHTML = emojify(content.innerHTML);
|
||||||
});
|
});
|
||||||
@ -59,12 +57,16 @@ function main() {
|
|||||||
|
|
||||||
[].forEach.call(document.querySelectorAll('time.time-ago'), (content) => {
|
[].forEach.call(document.querySelectorAll('time.time-ago'), (content) => {
|
||||||
const datetime = new Date(content.getAttribute('datetime'));
|
const datetime = new Date(content.getAttribute('datetime'));
|
||||||
|
const now = new Date();
|
||||||
|
|
||||||
content.title = dateTimeFormat.format(datetime);
|
content.title = dateTimeFormat.format(datetime);
|
||||||
content.textContent = relativeFormat.format(datetime);
|
content.textContent = timeAgoString({
|
||||||
|
formatMessage: ({ id, defaultMessage }, values) => (new IntlMessageFormat(messages[id] || defaultMessage, locale)).format(values),
|
||||||
|
formatDate: (date, options) => (new Intl.DateTimeFormat(locale, options)).format(date),
|
||||||
|
}, datetime, now, datetime.getFullYear());
|
||||||
});
|
});
|
||||||
|
|
||||||
[].forEach.call(document.querySelectorAll('.logo-button'), (content) => {
|
[].forEach.call(document.querySelectorAll('.modal-button'), (content) => {
|
||||||
content.addEventListener('click', (e) => {
|
content.addEventListener('click', (e) => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
window.open(e.target.href, 'mastodon-intent', 'width=445,height=600,resizable=no,menubar=no,status=no,scrollbars=yes');
|
window.open(e.target.href, 'mastodon-intent', 'width=445,height=600,resizable=no,menubar=no,status=no,scrollbars=yes');
|
||||||
@ -82,6 +84,8 @@ function main() {
|
|||||||
})
|
})
|
||||||
.catch(error => console.error(error));
|
.catch(error => console.error(error));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
new Rellax('.parallax', { speed: -1 });
|
||||||
});
|
});
|
||||||
|
|
||||||
delegate(document, '.webapp-btn', 'click', ({ target, button }) => {
|
delegate(document, '.webapp-btn', 'click', ({ target, button }) => {
|
||||||
@ -106,15 +110,20 @@ function main() {
|
|||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
delegate(document, '.account_display_name', 'input', ({ target }) => {
|
delegate(document, '#account_display_name', 'input', ({ target }) => {
|
||||||
const nameCounter = document.querySelector('.name-counter');
|
const nameCounter = document.querySelector('.name-counter');
|
||||||
|
const name = document.querySelector('.card .display-name strong');
|
||||||
|
|
||||||
if (nameCounter) {
|
if (nameCounter) {
|
||||||
nameCounter.textContent = 30 - length(target.value);
|
nameCounter.textContent = 30 - length(target.value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (name) {
|
||||||
|
name.innerHTML = emojify(target.value);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
delegate(document, '.account_note', 'input', ({ target }) => {
|
delegate(document, '#account_note', 'input', ({ target }) => {
|
||||||
const noteCounter = document.querySelector('.note-counter');
|
const noteCounter = document.querySelector('.note-counter');
|
||||||
|
|
||||||
if (noteCounter) {
|
if (noteCounter) {
|
||||||
@ -123,7 +132,7 @@ function main() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
delegate(document, '#account_avatar', 'change', ({ target }) => {
|
delegate(document, '#account_avatar', 'change', ({ target }) => {
|
||||||
const avatar = document.querySelector('.card.compact .avatar img');
|
const avatar = document.querySelector('.card .avatar img');
|
||||||
const [file] = target.files || [];
|
const [file] = target.files || [];
|
||||||
const url = file ? URL.createObjectURL(file) : avatar.dataset.originalSrc;
|
const url = file ? URL.createObjectURL(file) : avatar.dataset.originalSrc;
|
||||||
|
|
||||||
@ -131,11 +140,21 @@ function main() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
delegate(document, '#account_header', 'change', ({ target }) => {
|
delegate(document, '#account_header', 'change', ({ target }) => {
|
||||||
const header = document.querySelector('.card.compact');
|
const header = document.querySelector('.card .card__img img');
|
||||||
const [file] = target.files || [];
|
const [file] = target.files || [];
|
||||||
const url = file ? URL.createObjectURL(file) : header.dataset.originalSrc;
|
const url = file ? URL.createObjectURL(file) : header.dataset.originalSrc;
|
||||||
|
|
||||||
header.style.backgroundImage = `url(${url})`;
|
header.src = url;
|
||||||
|
});
|
||||||
|
|
||||||
|
delegate(document, '#account_locked', 'change', ({ target }) => {
|
||||||
|
const lock = document.querySelector('.card .display-name i');
|
||||||
|
|
||||||
|
if (target.checked) {
|
||||||
|
lock.style.display = 'inline';
|
||||||
|
} else {
|
||||||
|
lock.style.display = 'none';
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
@import 'mastodon/lists';
|
@import 'mastodon/lists';
|
||||||
@import 'mastodon/footer';
|
@import 'mastodon/footer';
|
||||||
@import 'mastodon/compact_header';
|
@import 'mastodon/compact_header';
|
||||||
@import 'mastodon/landing_strip';
|
@import 'mastodon/widgets';
|
||||||
@import 'mastodon/forms';
|
@import 'mastodon/forms';
|
||||||
@import 'mastodon/accounts';
|
@import 'mastodon/accounts';
|
||||||
@import 'mastodon/stream_entries';
|
@import 'mastodon/stream_entries';
|
||||||
|
@ -1,243 +1,100 @@
|
|||||||
.card {
|
.card {
|
||||||
background-color: $base-shadow-color;
|
& > a {
|
||||||
background-size: cover;
|
|
||||||
background-position: center;
|
|
||||||
border-radius: 4px 4px 0 0;
|
|
||||||
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
|
||||||
overflow: hidden;
|
|
||||||
position: relative;
|
|
||||||
display: flex;
|
|
||||||
|
|
||||||
&::after {
|
|
||||||
background: rgba(darken($ui-base-color, 8%), 0.5);
|
|
||||||
display: block;
|
display: block;
|
||||||
content: "";
|
text-decoration: none;
|
||||||
position: absolute;
|
color: inherit;
|
||||||
left: 0;
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
top: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 740px) {
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
border-radius: 0;
|
box-shadow: none;
|
||||||
box-shadow: none;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.card__illustration {
|
&:hover,
|
||||||
padding: 60px 0;
|
&:active,
|
||||||
position: relative;
|
&:focus {
|
||||||
flex: 1 1 auto;
|
.card__bar {
|
||||||
display: flex;
|
background: lighten($ui-base-color, 8%);
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card__bio {
|
|
||||||
max-width: 260px;
|
|
||||||
flex: 1 1 auto;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: space-between;
|
|
||||||
background: rgba(darken($ui-base-color, 8%), 0.8);
|
|
||||||
position: relative;
|
|
||||||
z-index: 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.compact {
|
|
||||||
padding: 30px 0;
|
|
||||||
border-radius: 4px;
|
|
||||||
|
|
||||||
.avatar {
|
|
||||||
margin-bottom: 0;
|
|
||||||
|
|
||||||
img {
|
|
||||||
object-fit: cover;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.name {
|
&__img {
|
||||||
display: block;
|
height: 130px;
|
||||||
font-size: 20px;
|
|
||||||
line-height: 18px * 1.5;
|
|
||||||
color: $primary-text-color;
|
|
||||||
padding: 10px 15px;
|
|
||||||
padding-bottom: 0;
|
|
||||||
font-weight: 500;
|
|
||||||
position: relative;
|
position: relative;
|
||||||
z-index: 2;
|
background: darken($ui-base-color, 12%);
|
||||||
margin-bottom: 30px;
|
border-radius: 4px 4px 0 0;
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
|
|
||||||
small {
|
|
||||||
display: block;
|
|
||||||
font-size: 14px;
|
|
||||||
color: $highlight-text-color;
|
|
||||||
font-weight: 400;
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
|
|
||||||
.fa {
|
|
||||||
margin-left: 3px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.avatar {
|
|
||||||
width: 120px;
|
|
||||||
margin: 0 auto;
|
|
||||||
position: relative;
|
|
||||||
z-index: 2;
|
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 120px;
|
|
||||||
height: 120px;
|
|
||||||
display: block;
|
display: block;
|
||||||
border-radius: 120px;
|
|
||||||
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.roles {
|
|
||||||
margin-bottom: 30px;
|
|
||||||
padding: 0 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.details-counters {
|
|
||||||
margin-top: 30px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.counter {
|
|
||||||
width: 33.3%;
|
|
||||||
box-sizing: border-box;
|
|
||||||
flex: 0 0 auto;
|
|
||||||
color: $darker-text-color;
|
|
||||||
padding: 5px 10px 0;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
border-right: 1px solid lighten($ui-base-color, 4%);
|
|
||||||
cursor: default;
|
|
||||||
text-align: center;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
a {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:last-child {
|
|
||||||
border-right: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
&::after {
|
|
||||||
display: block;
|
|
||||||
content: "";
|
|
||||||
position: absolute;
|
|
||||||
bottom: -10px;
|
|
||||||
left: 0;
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
border-bottom: 4px solid $ui-primary-color;
|
height: 100%;
|
||||||
opacity: 0.5;
|
margin: 0;
|
||||||
transition: all 400ms ease;
|
object-fit: cover;
|
||||||
|
border-radius: 4px 4px 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.active {
|
@media screen and (max-width: 600px) {
|
||||||
&::after {
|
height: 200px;
|
||||||
border-bottom: 4px solid $highlight-text-color;
|
}
|
||||||
opacity: 1;
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__bar {
|
||||||
|
position: relative;
|
||||||
|
padding: 15px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-start;
|
||||||
|
align-items: center;
|
||||||
|
background: lighten($ui-base-color, 4%);
|
||||||
|
border-radius: 0 0 4px 4px;
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
width: 48px;
|
||||||
|
height: 48px;
|
||||||
|
padding-top: 2px;
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: block;
|
||||||
|
margin: 0;
|
||||||
|
border-radius: 4px;
|
||||||
|
background: darken($ui-base-color, 8%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:hover {
|
.display-name {
|
||||||
&::after {
|
margin-left: 15px;
|
||||||
opacity: 1;
|
text-align: left;
|
||||||
transition-duration: 100ms;
|
|
||||||
|
strong {
|
||||||
|
font-size: 15px;
|
||||||
|
color: $primary-text-color;
|
||||||
|
font-weight: 500;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
span {
|
||||||
text-decoration: none;
|
display: block;
|
||||||
color: inherit;
|
font-size: 14px;
|
||||||
}
|
color: $darker-text-color;
|
||||||
|
|
||||||
.counter-label {
|
|
||||||
font-size: 12px;
|
|
||||||
display: block;
|
|
||||||
margin-bottom: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.counter-number {
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 18px;
|
|
||||||
color: $primary-text-color;
|
|
||||||
font-family: 'mastodon-font-display', sans-serif;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.bio {
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 18px;
|
|
||||||
padding: 0 15px;
|
|
||||||
color: $secondary-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 480px) {
|
|
||||||
display: block;
|
|
||||||
|
|
||||||
.card__bio {
|
|
||||||
max-width: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.name,
|
|
||||||
.roles {
|
|
||||||
text-align: center;
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bio {
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.card,
|
|
||||||
.account-grid-card {
|
|
||||||
.controls {
|
|
||||||
position: absolute;
|
|
||||||
top: 15px;
|
|
||||||
left: 15px;
|
|
||||||
z-index: 2;
|
|
||||||
|
|
||||||
.icon-button {
|
|
||||||
color: rgba($white, 0.8);
|
|
||||||
text-decoration: none;
|
|
||||||
font-size: 13px;
|
|
||||||
line-height: 13px;
|
|
||||||
font-weight: 500;
|
|
||||||
|
|
||||||
.fa {
|
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
margin-right: 5px;
|
overflow: hidden;
|
||||||
}
|
text-overflow: ellipsis;
|
||||||
|
|
||||||
&:hover,
|
|
||||||
&:active,
|
|
||||||
&:focus {
|
|
||||||
color: $white;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.account-grid-card .controls {
|
|
||||||
left: auto;
|
|
||||||
right: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pagination {
|
.pagination {
|
||||||
padding: 30px 0;
|
padding: 30px 0;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@ -314,289 +171,23 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.accounts-grid {
|
|
||||||
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
|
||||||
background: darken($simple-background-color, 8%);
|
|
||||||
border-radius: 0 0 4px 4px;
|
|
||||||
padding: 20px 5px;
|
|
||||||
padding-bottom: 10px;
|
|
||||||
overflow: hidden;
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
z-index: 2;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
&.empty img {
|
|
||||||
position: absolute;
|
|
||||||
opacity: 0.2;
|
|
||||||
height: 200px;
|
|
||||||
left: 0;
|
|
||||||
bottom: 0;
|
|
||||||
pointer-events: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 740px) {
|
|
||||||
border-radius: 0;
|
|
||||||
box-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.account-grid-card {
|
|
||||||
box-sizing: border-box;
|
|
||||||
width: 335px;
|
|
||||||
background: $simple-background-color;
|
|
||||||
border-radius: 4px;
|
|
||||||
color: $inverted-text-color;
|
|
||||||
margin: 0 5px 10px;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
@media screen and (max-width: 740px) {
|
|
||||||
width: calc(100% - 10px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.account-grid-card__header {
|
|
||||||
overflow: hidden;
|
|
||||||
height: 100px;
|
|
||||||
border-radius: 4px 4px 0 0;
|
|
||||||
background-color: lighten($inverted-text-color, 4%);
|
|
||||||
background-size: cover;
|
|
||||||
background-position: center;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
&::after {
|
|
||||||
background: rgba(darken($ui-base-color, 8%), 0.5);
|
|
||||||
display: block;
|
|
||||||
content: "";
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.account-grid-card__avatar {
|
|
||||||
box-sizing: border-box;
|
|
||||||
padding: 15px;
|
|
||||||
position: absolute;
|
|
||||||
z-index: 2;
|
|
||||||
top: 100px - (40px + 2px);
|
|
||||||
left: -2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.avatar {
|
|
||||||
width: 80px;
|
|
||||||
height: 80px;
|
|
||||||
|
|
||||||
img {
|
|
||||||
display: block;
|
|
||||||
width: 80px;
|
|
||||||
height: 80px;
|
|
||||||
border-radius: 80px;
|
|
||||||
border: 2px solid $simple-background-color;
|
|
||||||
background: $simple-background-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.name {
|
|
||||||
padding: 15px;
|
|
||||||
padding-top: 10px;
|
|
||||||
padding-left: 15px + 80px + 15px;
|
|
||||||
|
|
||||||
a {
|
|
||||||
display: block;
|
|
||||||
color: $inverted-text-color;
|
|
||||||
text-decoration: none;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
overflow: hidden;
|
|
||||||
font-weight: 500;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
.display_name {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.display_name {
|
|
||||||
font-size: 16px;
|
|
||||||
display: block;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.username {
|
|
||||||
color: $lighter-text-color;
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: 400;
|
|
||||||
}
|
|
||||||
|
|
||||||
.account__header__content {
|
|
||||||
padding: 10px 15px;
|
|
||||||
padding-top: 15px;
|
|
||||||
color: $lighter-text-color;
|
|
||||||
word-wrap: break-word;
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
height: 5.5em;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
&::after {
|
|
||||||
display: block;
|
|
||||||
content: "";
|
|
||||||
width: 100%;
|
|
||||||
height: 100px;
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
background: linear-gradient(to bottom, rgba($simple-background-color, 0.01) 0%, rgba($simple-background-color, 1) 100%);
|
|
||||||
left: 0;
|
|
||||||
border-radius: 0 0 4px 4px;
|
|
||||||
pointer-events: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.nothing-here {
|
.nothing-here {
|
||||||
width: 100%;
|
background: $ui-base-color;
|
||||||
display: block;
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
color: $light-text-color;
|
color: $light-text-color;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 130px 0;
|
display: flex;
|
||||||
padding-top: 125px;
|
justify-content: center;
|
||||||
margin: 0 auto;
|
align-items: center;
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
|
||||||
|
|
||||||
.account-card {
|
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
text-align: left;
|
padding: 20px;
|
||||||
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
min-height: 30vh;
|
||||||
background: $simple-background-color;
|
|
||||||
|
|
||||||
&__header {
|
&--under-tabs {
|
||||||
background: $base-shadow-color;
|
border-radius: 0 0 4px 4px;
|
||||||
background-size: cover;
|
|
||||||
background-position: center center;
|
|
||||||
height: 90px;
|
|
||||||
border-radius: 4px 4px 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
& > .detailed-status__display-name {
|
|
||||||
display: block;
|
|
||||||
overflow: hidden;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 10px;
|
|
||||||
|
|
||||||
&:last-child {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
& > div:first-child {
|
|
||||||
flex: 0 0 auto;
|
|
||||||
margin-right: 10px;
|
|
||||||
width: 48px;
|
|
||||||
height: 48px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.avatar {
|
|
||||||
display: block;
|
|
||||||
border-radius: 4px;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.display-name {
|
|
||||||
flex: 1 0 auto;
|
|
||||||
display: block;
|
|
||||||
max-width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
cursor: default;
|
|
||||||
|
|
||||||
& > .detailed-status__display-name {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
strong {
|
|
||||||
font-weight: 500;
|
|
||||||
color: $ui-base-color;
|
|
||||||
|
|
||||||
@each $lang in $cjk-langs {
|
|
||||||
&:lang(#{$lang}) {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
span {
|
|
||||||
font-size: 14px;
|
|
||||||
color: $light-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
.display-name {
|
|
||||||
strong {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.counter {
|
|
||||||
box-sizing: border-box;
|
|
||||||
flex: 0 0 auto;
|
|
||||||
color: $light-text-color;
|
|
||||||
padding: 0 10px;
|
|
||||||
cursor: default;
|
|
||||||
text-align: center;
|
|
||||||
position: relative;
|
|
||||||
line-height: 24px;
|
|
||||||
|
|
||||||
.counter-label {
|
|
||||||
font-size: 12px;
|
|
||||||
display: block;
|
|
||||||
text-transform: uppercase;
|
|
||||||
}
|
|
||||||
|
|
||||||
.counter-number {
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 16px;
|
|
||||||
color: $inverted-text-color;
|
|
||||||
font-family: 'mastodon-font-display', sans-serif;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.activity-stream-tabs {
|
|
||||||
background: $simple-background-color;
|
|
||||||
border-bottom: 1px solid $ui-secondary-color;
|
|
||||||
position: relative;
|
|
||||||
z-index: 2;
|
|
||||||
|
|
||||||
a {
|
|
||||||
display: inline-block;
|
|
||||||
padding: 15px;
|
|
||||||
text-decoration: none;
|
|
||||||
color: $highlight-text-color;
|
|
||||||
text-transform: uppercase;
|
|
||||||
font-weight: 500;
|
|
||||||
|
|
||||||
&:hover,
|
|
||||||
&:active,
|
|
||||||
&:focus {
|
|
||||||
color: lighten($highlight-text-color, 8%);
|
|
||||||
}
|
|
||||||
|
|
||||||
&.active {
|
|
||||||
color: $inverted-text-color;
|
|
||||||
cursor: default;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -629,14 +220,14 @@
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
margin: 15px -15px -15px;
|
margin: 15px -15px -15px;
|
||||||
border: 0 none;
|
border: 0 none;
|
||||||
border-top: 1px solid lighten($ui-base-color, 4%);
|
border-top: 1px solid lighten($ui-base-color, 12%);
|
||||||
border-bottom: 1px solid lighten($ui-base-color, 4%);
|
border-bottom: 1px solid lighten($ui-base-color, 12%);
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
line-height: 20px;
|
line-height: 20px;
|
||||||
|
|
||||||
dl {
|
dl {
|
||||||
display: flex;
|
display: flex;
|
||||||
border-bottom: 1px solid lighten($ui-base-color, 4%);
|
border-bottom: 1px solid lighten($ui-base-color, 12%);
|
||||||
}
|
}
|
||||||
|
|
||||||
dt,
|
dt,
|
||||||
|
@ -1,13 +1,12 @@
|
|||||||
body {
|
body {
|
||||||
font-family: 'mastodon-font-sans-serif', sans-serif;
|
font-family: 'mastodon-font-sans-serif', sans-serif;
|
||||||
background: $ui-base-color;
|
background: darken($ui-base-color, 8%);
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
background-attachment: fixed;
|
background-attachment: fixed;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
line-height: 18px;
|
line-height: 18px;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: $primary-text-color;
|
color: $primary-text-color;
|
||||||
padding-bottom: 20px;
|
|
||||||
text-rendering: optimizelegibility;
|
text-rendering: optimizelegibility;
|
||||||
font-feature-settings: "kern";
|
font-feature-settings: "kern";
|
||||||
text-size-adjust: none;
|
text-size-adjust: none;
|
||||||
@ -52,7 +51,7 @@ body {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.embed {
|
&.embed {
|
||||||
background: transparent;
|
background: lighten($ui-base-color, 4%);
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding-bottom: 0;
|
padding-bottom: 0;
|
||||||
|
|
||||||
|
@ -946,6 +946,18 @@
|
|||||||
background: lighten($ui-base-color, 4%);
|
background: lighten($ui-base-color, 4%);
|
||||||
padding: 14px 10px;
|
padding: 14px 10px;
|
||||||
|
|
||||||
|
&--flex {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: flex-start;
|
||||||
|
|
||||||
|
.status__content,
|
||||||
|
.detailed-status__meta {
|
||||||
|
flex: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.status__content {
|
.status__content {
|
||||||
font-size: 19px;
|
font-size: 19px;
|
||||||
line-height: 24px;
|
line-height: 24px;
|
||||||
|
@ -118,3 +118,576 @@
|
|||||||
margin-left: 8px;
|
margin-left: 8px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.public-layout {
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
padding-top: 48px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.container {
|
||||||
|
max-width: 960px;
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.header {
|
||||||
|
background: lighten($ui-base-color, 8%);
|
||||||
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
|
border-radius: 4px;
|
||||||
|
height: 48px;
|
||||||
|
margin: 10px 0;
|
||||||
|
display: flex;
|
||||||
|
align-items: stretch;
|
||||||
|
justify-content: center;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
position: fixed;
|
||||||
|
width: 100%;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
margin: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
z-index: 110;
|
||||||
|
}
|
||||||
|
|
||||||
|
& > div {
|
||||||
|
flex: 1 1 33.3%;
|
||||||
|
min-height: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-left {
|
||||||
|
display: flex;
|
||||||
|
align-items: stretch;
|
||||||
|
justify-content: flex-start;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-center {
|
||||||
|
display: flex;
|
||||||
|
align-items: stretch;
|
||||||
|
justify-content: center;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-right {
|
||||||
|
display: flex;
|
||||||
|
align-items: stretch;
|
||||||
|
justify-content: flex-end;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.brand {
|
||||||
|
display: block;
|
||||||
|
padding: 15px;
|
||||||
|
|
||||||
|
img {
|
||||||
|
display: block;
|
||||||
|
height: 18px;
|
||||||
|
width: auto;
|
||||||
|
position: relative;
|
||||||
|
bottom: -2px;
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&:active {
|
||||||
|
background: lighten($ui-base-color, 12%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-link {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding: 0 1rem;
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: 500;
|
||||||
|
text-decoration: none;
|
||||||
|
color: $darker-text-color;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&:active {
|
||||||
|
text-decoration: underline;
|
||||||
|
color: $primary-text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-button {
|
||||||
|
background: lighten($ui-base-color, 16%);
|
||||||
|
margin: 8px;
|
||||||
|
margin-left: 0;
|
||||||
|
border-radius: 4px;
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&:active {
|
||||||
|
text-decoration: none;
|
||||||
|
background: lighten($ui-base-color, 20%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$no-columns-breakpoint: 600px;
|
||||||
|
|
||||||
|
.grid {
|
||||||
|
display: grid;
|
||||||
|
grid-gap: 10px;
|
||||||
|
grid-template-columns: minmax(300px, 3fr) minmax(298px, 1fr);
|
||||||
|
grid-auto-columns: 25%;
|
||||||
|
grid-auto-rows: max-content;
|
||||||
|
|
||||||
|
.column-0 {
|
||||||
|
grid-row: 1;
|
||||||
|
grid-column: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-1 {
|
||||||
|
grid-row: 1;
|
||||||
|
grid-column: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-columns-breakpoint) {
|
||||||
|
grid-template-columns: 100%;
|
||||||
|
grid-gap: 0;
|
||||||
|
|
||||||
|
.column-1 {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.public-account-header {
|
||||||
|
overflow: hidden;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
|
|
||||||
|
&__image {
|
||||||
|
border-radius: 4px 4px 0 0;
|
||||||
|
overflow: hidden;
|
||||||
|
height: 300px;
|
||||||
|
position: relative;
|
||||||
|
background: darken($ui-base-color, 12%);
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
content: "";
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
box-shadow: inset 0 -1px 1px 1px rgba($base-shadow-color, 0.15);
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
object-fit: cover;
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
border-radius: 4px 4px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
|
height: 200px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
margin-bottom: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
|
||||||
|
&__image::after {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__image,
|
||||||
|
&__image img {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__bar {
|
||||||
|
position: relative;
|
||||||
|
margin-top: -80px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-start;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
content: "";
|
||||||
|
display: block;
|
||||||
|
background: lighten($ui-base-color, 4%);
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
height: 60px;
|
||||||
|
border-radius: 0 0 4px 4px;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar {
|
||||||
|
display: block;
|
||||||
|
width: 120px;
|
||||||
|
height: 120px;
|
||||||
|
padding-left: 20px - 4px;
|
||||||
|
flex: 0 0 auto;
|
||||||
|
|
||||||
|
img {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 4px solid lighten($ui-base-color, 4%);
|
||||||
|
background: darken($ui-base-color, 8%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
|
margin-top: 0;
|
||||||
|
background: lighten($ui-base-color, 4%);
|
||||||
|
border-radius: 0 0 4px 4px;
|
||||||
|
padding: 5px;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar {
|
||||||
|
width: 48px;
|
||||||
|
height: 48px;
|
||||||
|
padding: 7px 0;
|
||||||
|
padding-left: 10px;
|
||||||
|
|
||||||
|
img {
|
||||||
|
border: 0;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 360px) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-columns-breakpoint) {
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__tabs {
|
||||||
|
flex: 1 1 auto;
|
||||||
|
margin-left: 20px;
|
||||||
|
|
||||||
|
&__name {
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-bottom: 8px;
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 20px;
|
||||||
|
line-height: 18px * 1.5;
|
||||||
|
color: $primary-text-color;
|
||||||
|
font-weight: 500;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
text-shadow: 1px 1px 1px $base-shadow-color;
|
||||||
|
|
||||||
|
small {
|
||||||
|
display: block;
|
||||||
|
font-size: 14px;
|
||||||
|
color: $primary-text-color;
|
||||||
|
font-weight: 400;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
|
margin-left: 15px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
&__name {
|
||||||
|
padding-top: 0;
|
||||||
|
padding-bottom: 0;
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 16px;
|
||||||
|
line-height: 24px;
|
||||||
|
text-shadow: none;
|
||||||
|
|
||||||
|
small {
|
||||||
|
color: $darker-text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__tabs {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-start;
|
||||||
|
align-items: stretch;
|
||||||
|
height: 58px;
|
||||||
|
|
||||||
|
.details-counters {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
min-width: 300px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-columns-breakpoint) {
|
||||||
|
.details-counters {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.counter {
|
||||||
|
width: 33.3%;
|
||||||
|
box-sizing: border-box;
|
||||||
|
flex: 0 0 auto;
|
||||||
|
color: $darker-text-color;
|
||||||
|
padding: 10px;
|
||||||
|
border-right: 1px solid lighten($ui-base-color, 4%);
|
||||||
|
cursor: default;
|
||||||
|
text-align: center;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
border-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
display: block;
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
border-bottom: 4px solid $ui-primary-color;
|
||||||
|
opacity: 0.5;
|
||||||
|
transition: all 400ms ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
&::after {
|
||||||
|
border-bottom: 4px solid $highlight-text-color;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
&::after {
|
||||||
|
opacity: 1;
|
||||||
|
transition-duration: 100ms;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
color: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.counter-label {
|
||||||
|
font-size: 12px;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.counter-number {
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 18px;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
color: $primary-text-color;
|
||||||
|
font-family: 'mastodon-font-display', sans-serif;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.spacer {
|
||||||
|
flex: 1 1 auto;
|
||||||
|
height: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__buttons {
|
||||||
|
padding: 7px 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__extra {
|
||||||
|
display: none;
|
||||||
|
margin-top: 4px;
|
||||||
|
|
||||||
|
.public-account-bio {
|
||||||
|
border-radius: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
background: transparent;
|
||||||
|
margin: 0 -5px;
|
||||||
|
|
||||||
|
.account__header__fields {
|
||||||
|
border-top: 1px solid lighten($ui-base-color, 12%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.roles {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__links {
|
||||||
|
margin-top: -15px;
|
||||||
|
font-size: 14px;
|
||||||
|
color: $darker-text-color;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: inline-block;
|
||||||
|
color: $darker-text-color;
|
||||||
|
text-decoration: none;
|
||||||
|
padding: 15px;
|
||||||
|
|
||||||
|
strong {
|
||||||
|
font-weight: 700;
|
||||||
|
color: $primary-text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-columns-breakpoint) {
|
||||||
|
display: block;
|
||||||
|
flex: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.account__section-headline {
|
||||||
|
border-radius: 4px 4px 0 0;
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.detailed-status__meta {
|
||||||
|
margin-top: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.public-account-bio {
|
||||||
|
background: lighten($ui-base-color, 8%);
|
||||||
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
|
border-radius: 4px;
|
||||||
|
overflow: hidden;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
box-shadow: none;
|
||||||
|
margin-bottom: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.account__header__fields {
|
||||||
|
margin: 0;
|
||||||
|
border-top: 0;
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: lighten($ui-highlight-color, 8%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.account__header__content {
|
||||||
|
padding: 20px;
|
||||||
|
padding-bottom: 0;
|
||||||
|
color: $primary-text-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__extra,
|
||||||
|
.roles {
|
||||||
|
padding: 20px;
|
||||||
|
font-size: 14px;
|
||||||
|
color: $darker-text-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.roles {
|
||||||
|
padding-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.static-icon-button {
|
||||||
|
color: $action-button-color;
|
||||||
|
font-size: 18px;
|
||||||
|
|
||||||
|
& > span {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-grid {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
min-width: 100%;
|
||||||
|
margin: 0 -5px;
|
||||||
|
|
||||||
|
& > div {
|
||||||
|
box-sizing: border-box;
|
||||||
|
flex: 1 0 auto;
|
||||||
|
width: 300px;
|
||||||
|
padding: 0 5px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
max-width: 33.333%;
|
||||||
|
|
||||||
|
@media screen and (max-width: 900px) {
|
||||||
|
max-width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
margin: 0;
|
||||||
|
border-top: 1px solid lighten($ui-base-color, 8%);
|
||||||
|
|
||||||
|
& > div {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
border-bottom: 1px solid lighten($ui-base-color, 8%);
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card__bar {
|
||||||
|
background: $ui-base-color;
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:active,
|
||||||
|
&:focus {
|
||||||
|
background: lighten($ui-base-color, 4%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -1,39 +1,140 @@
|
|||||||
.footer {
|
.public-layout {
|
||||||
text-align: center;
|
.footer {
|
||||||
margin-top: 30px;
|
text-align: left;
|
||||||
padding-bottom: 60px;
|
padding-top: 20px;
|
||||||
font-size: 12px;
|
padding-bottom: 60px;
|
||||||
color: $darker-text-color;
|
font-size: 12px;
|
||||||
|
color: lighten($ui-base-color, 34%);
|
||||||
|
|
||||||
.footer__domain {
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
font-weight: 500;
|
padding-left: 20px;
|
||||||
|
padding-right: 20px;
|
||||||
a {
|
|
||||||
color: inherit;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.powered-by,
|
.grid {
|
||||||
.single-user-login {
|
display: grid;
|
||||||
font-weight: 400;
|
grid-gap: 10px;
|
||||||
|
grid-template-columns: 1fr 1fr 2fr 1fr 1fr;
|
||||||
|
|
||||||
a {
|
.column-0 {
|
||||||
color: inherit;
|
grid-column: 1;
|
||||||
text-decoration: underline;
|
grid-row: 1;
|
||||||
font-weight: 500;
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
&:hover {
|
.column-1 {
|
||||||
|
grid-column: 2;
|
||||||
|
grid-row: 1;
|
||||||
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-2 {
|
||||||
|
grid-column: 3;
|
||||||
|
grid-row: 1;
|
||||||
|
min-width: 0;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
h4 a {
|
||||||
|
color: lighten($ui-base-color, 34%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-3 {
|
||||||
|
grid-column: 4;
|
||||||
|
grid-row: 1;
|
||||||
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-4 {
|
||||||
|
grid-column: 5;
|
||||||
|
grid-row: 1;
|
||||||
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 690px) {
|
||||||
|
grid-template-columns: 1fr 2fr 1fr;
|
||||||
|
|
||||||
|
.column-0,
|
||||||
|
.column-1 {
|
||||||
|
grid-column: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-1 {
|
||||||
|
grid-row: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-2 {
|
||||||
|
grid-column: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-3,
|
||||||
|
.column-4 {
|
||||||
|
grid-column: 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
.column-4 {
|
||||||
|
grid-row: 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
|
.column-1 {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
.column-0,
|
||||||
|
.column-1,
|
||||||
|
.column-3,
|
||||||
|
.column-4 {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
text-transform: uppercase;
|
||||||
|
font-weight: 700;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: $darker-text-color;
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: inherit;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
img {
|
ul a {
|
||||||
margin: 0 4px;
|
text-decoration: none;
|
||||||
position: relative;
|
color: lighten($ui-base-color, 34%);
|
||||||
bottom: -1px;
|
|
||||||
height: 18px;
|
&:hover,
|
||||||
vertical-align: top;
|
&:active,
|
||||||
|
&:focus {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.brand {
|
||||||
|
svg {
|
||||||
|
display: block;
|
||||||
|
height: 36px;
|
||||||
|
width: auto;
|
||||||
|
margin: 0 auto;
|
||||||
|
|
||||||
|
path {
|
||||||
|
fill: lighten($ui-base-color, 34%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&:active {
|
||||||
|
svg path {
|
||||||
|
fill: lighten($ui-base-color, 38%);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,111 +0,0 @@
|
|||||||
.landing-strip,
|
|
||||||
.memoriam-strip {
|
|
||||||
background: rgba(darken($ui-base-color, 7%), 0.8);
|
|
||||||
color: $darker-text-color;
|
|
||||||
font-weight: 400;
|
|
||||||
padding: 14px;
|
|
||||||
border-radius: 4px;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
|
|
||||||
strong,
|
|
||||||
a {
|
|
||||||
font-weight: 500;
|
|
||||||
|
|
||||||
@each $lang in $cjk-langs {
|
|
||||||
&:lang(#{$lang}) {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: inherit;
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.logo {
|
|
||||||
width: 30px;
|
|
||||||
height: 30px;
|
|
||||||
flex: 0 0 auto;
|
|
||||||
margin-right: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 740px) {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.memoriam-strip {
|
|
||||||
background: rgba($base-shadow-color, 0.7);
|
|
||||||
}
|
|
||||||
|
|
||||||
.moved-strip {
|
|
||||||
padding: 14px;
|
|
||||||
border-radius: 4px;
|
|
||||||
background: rgba(darken($ui-base-color, 7%), 0.8);
|
|
||||||
color: $secondary-text-color;
|
|
||||||
font-weight: 400;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
|
|
||||||
strong,
|
|
||||||
a {
|
|
||||||
font-weight: 500;
|
|
||||||
|
|
||||||
@each $lang in $cjk-langs {
|
|
||||||
&:lang(#{$lang}) {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: inherit;
|
|
||||||
text-decoration: underline;
|
|
||||||
|
|
||||||
&.mention {
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
span {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:focus,
|
|
||||||
&:hover,
|
|
||||||
&:active {
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
span {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__message {
|
|
||||||
margin-bottom: 15px;
|
|
||||||
|
|
||||||
.fa {
|
|
||||||
margin-right: 5px;
|
|
||||||
color: $darker-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__card {
|
|
||||||
.detailed-status__display-avatar {
|
|
||||||
position: relative;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detailed-status__display-name {
|
|
||||||
margin-bottom: 0;
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
span {
|
|
||||||
color: $highlight-text-color;
|
|
||||||
font-weight: 400;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,367 +1,145 @@
|
|||||||
.activity-stream {
|
.activity-stream {
|
||||||
clear: both;
|
|
||||||
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
|
border-radius: 4px;
|
||||||
|
overflow: hidden;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
margin-bottom: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
&--headless {
|
||||||
|
border-radius: 0;
|
||||||
|
margin: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
|
||||||
|
.detailed-status,
|
||||||
|
.status {
|
||||||
|
border-radius: 0 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
div[data-component] {
|
div[data-component] {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.entry {
|
.entry {
|
||||||
background: $simple-background-color;
|
background: $ui-base-color;
|
||||||
|
|
||||||
.detailed-status.light,
|
.detailed-status,
|
||||||
.status.light,
|
.status,
|
||||||
.more.light {
|
.load-more {
|
||||||
border-bottom: 1px solid $ui-secondary-color;
|
|
||||||
animation: none;
|
animation: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:last-child {
|
&:last-child {
|
||||||
&,
|
.detailed-status,
|
||||||
.detailed-status.light,
|
.status {
|
||||||
.status.light {
|
|
||||||
border-bottom: 0;
|
border-bottom: 0;
|
||||||
border-radius: 0 0 4px 4px;
|
border-radius: 0 0 4px 4px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:first-child {
|
&:first-child {
|
||||||
&,
|
.detailed-status,
|
||||||
.detailed-status.light,
|
.status {
|
||||||
.status.light {
|
|
||||||
border-radius: 4px 4px 0 0;
|
border-radius: 4px 4px 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:last-child {
|
&:last-child {
|
||||||
&,
|
.detailed-status,
|
||||||
.detailed-status.light,
|
.status {
|
||||||
.status.light {
|
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-width: 740px) {
|
@media screen and (max-width: 740px) {
|
||||||
&,
|
.detailed-status,
|
||||||
.detailed-status.light,
|
.status {
|
||||||
.status.light {
|
|
||||||
border-radius: 0 !important;
|
border-radius: 0 !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
&.with-header {
|
.button.logo-button {
|
||||||
.entry {
|
flex: 0 auto;
|
||||||
&:first-child {
|
font-size: 14px;
|
||||||
&,
|
background: $ui-highlight-color;
|
||||||
.detailed-status.light,
|
color: $primary-text-color;
|
||||||
.status.light {
|
text-transform: none;
|
||||||
border-radius: 0;
|
line-height: 36px;
|
||||||
}
|
height: auto;
|
||||||
|
padding: 3px 15px;
|
||||||
|
border: 0;
|
||||||
|
|
||||||
&:last-child {
|
svg {
|
||||||
&,
|
width: 20px;
|
||||||
.detailed-status.light,
|
height: auto;
|
||||||
.status.light {
|
vertical-align: middle;
|
||||||
border-radius: 0 0 4px 4px;
|
margin-right: 5px;
|
||||||
}
|
|
||||||
}
|
path:first-child {
|
||||||
}
|
fill: $primary-text-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
path:last-child {
|
||||||
|
fill: $ui-highlight-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.media-gallery__gifv__label {
|
&:active,
|
||||||
bottom: 9px;
|
&:focus,
|
||||||
}
|
&:hover {
|
||||||
|
background: lighten($ui-highlight-color, 10%);
|
||||||
|
|
||||||
.status.light {
|
svg path:last-child {
|
||||||
padding: 14px 14px 14px (48px + 14px * 2);
|
fill: lighten($ui-highlight-color, 10%);
|
||||||
position: relative;
|
|
||||||
min-height: 48px;
|
|
||||||
cursor: default;
|
|
||||||
|
|
||||||
.status__header {
|
|
||||||
font-size: 15px;
|
|
||||||
|
|
||||||
.status__meta {
|
|
||||||
float: right;
|
|
||||||
font-size: 14px;
|
|
||||||
|
|
||||||
.status__relative-time {
|
|
||||||
color: $lighter-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.status__display-name {
|
|
||||||
display: block;
|
|
||||||
max-width: 100%;
|
|
||||||
padding-right: 25px;
|
|
||||||
color: $inverted-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.status__avatar {
|
|
||||||
position: absolute;
|
|
||||||
left: 14px;
|
|
||||||
top: 14px;
|
|
||||||
width: 48px;
|
|
||||||
height: 48px;
|
|
||||||
|
|
||||||
& > div {
|
|
||||||
width: 48px;
|
|
||||||
height: 48px;
|
|
||||||
}
|
|
||||||
|
|
||||||
img {
|
|
||||||
display: block;
|
|
||||||
border-radius: 4px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.display-name {
|
|
||||||
display: block;
|
|
||||||
max-width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
|
|
||||||
strong {
|
|
||||||
font-weight: 500;
|
|
||||||
color: $inverted-text-color;
|
|
||||||
|
|
||||||
@each $lang in $cjk-langs {
|
|
||||||
&:lang(#{$lang}) {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
span {
|
|
||||||
font-size: 14px;
|
|
||||||
color: $light-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.status__content {
|
|
||||||
color: $inverted-text-color;
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: $highlight-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
a.status__content__spoiler-link {
|
|
||||||
color: $primary-text-color;
|
|
||||||
background: $ui-base-color;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
background: lighten($ui-base-color, 8%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.detailed-status.light {
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
padding: 14px;
|
svg {
|
||||||
background: $simple-background-color;
|
display: none;
|
||||||
cursor: default;
|
|
||||||
|
|
||||||
.detailed-status__display-name {
|
|
||||||
display: block;
|
|
||||||
overflow: hidden;
|
|
||||||
margin-bottom: 15px;
|
|
||||||
|
|
||||||
& > div {
|
|
||||||
float: left;
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.display-name {
|
|
||||||
display: block;
|
|
||||||
max-width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
|
|
||||||
strong {
|
|
||||||
font-weight: 500;
|
|
||||||
color: $inverted-text-color;
|
|
||||||
|
|
||||||
@each $lang in $cjk-langs {
|
|
||||||
&:lang(#{$lang}) {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
span {
|
|
||||||
font-size: 14px;
|
|
||||||
color: $light-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.avatar {
|
|
||||||
width: 48px;
|
|
||||||
height: 48px;
|
|
||||||
|
|
||||||
img {
|
|
||||||
display: block;
|
|
||||||
border-radius: 4px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.status__content {
|
|
||||||
color: $inverted-text-color;
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: $highlight-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
a.status__content__spoiler-link {
|
|
||||||
color: $primary-text-color;
|
|
||||||
background: $ui-base-color;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
background: lighten($ui-base-color, 8%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.detailed-status__meta {
|
|
||||||
margin-top: 15px;
|
|
||||||
color: $light-text-color;
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 18px;
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
span > span {
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 12px;
|
|
||||||
margin-left: 6px;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.status-card {
|
|
||||||
border-color: lighten($ui-secondary-color, 4%);
|
|
||||||
color: $lighter-text-color;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
background: lighten($ui-secondary-color, 4%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.status-card__title,
|
|
||||||
.status-card__description {
|
|
||||||
color: $inverted-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.status-card__image {
|
|
||||||
background: $ui-secondary-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.media-spoiler {
|
|
||||||
background: $ui-base-color;
|
|
||||||
color: $darker-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pre-header {
|
|
||||||
padding: 14px 0;
|
|
||||||
padding-left: (48px + 14px * 2);
|
|
||||||
padding-bottom: 0;
|
|
||||||
margin-bottom: -4px;
|
|
||||||
color: $light-text-color;
|
|
||||||
font-size: 14px;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
.pre-header__icon {
|
|
||||||
position: absolute;
|
|
||||||
left: (48px + 14px * 2 - 30px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.status__display-name.muted strong {
|
|
||||||
color: $light-text-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.open-in-web-link {
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.more {
|
|
||||||
color: $darker-text-color;
|
|
||||||
display: block;
|
|
||||||
padding: 14px;
|
|
||||||
text-align: center;
|
|
||||||
|
|
||||||
&:not(:hover) {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.embed {
|
.embed,
|
||||||
.activity-stream {
|
.public-layout {
|
||||||
box-shadow: none;
|
.detailed-status {
|
||||||
|
padding: 15px;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.entry {
|
.status {
|
||||||
.detailed-status.light {
|
padding: 15px 15px 15px (48px + 15px * 2);
|
||||||
display: flex;
|
min-height: 48px + 2px;
|
||||||
flex-wrap: wrap;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: flex-start;
|
|
||||||
|
|
||||||
.detailed-status__display-name {
|
&__avatar {
|
||||||
flex: 1;
|
left: 15px;
|
||||||
margin: 0 5px 15px 0;
|
top: 17px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.button.button-secondary.logo-button {
|
&__content {
|
||||||
flex: 0 auto;
|
padding-top: 5px;
|
||||||
font-size: 14px;
|
|
||||||
background: $ui-highlight-color;
|
|
||||||
color: $primary-text-color;
|
|
||||||
border: 0;
|
|
||||||
|
|
||||||
svg {
|
|
||||||
width: 20px;
|
|
||||||
height: auto;
|
|
||||||
vertical-align: middle;
|
|
||||||
margin-right: 5px;
|
|
||||||
|
|
||||||
path:first-child {
|
|
||||||
fill: $primary-text-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
path:last-child {
|
|
||||||
fill: $ui-highlight-color;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&:active,
|
|
||||||
&:focus,
|
|
||||||
&:hover {
|
|
||||||
background: lighten($ui-highlight-color, 10%);
|
|
||||||
|
|
||||||
svg path:last-child {
|
|
||||||
fill: lighten($ui-highlight-color, 10%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.status__content,
|
&__prepend {
|
||||||
.detailed-status__meta {
|
margin-left: 48px + 15px * 2;
|
||||||
flex: 100%;
|
padding-top: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__prepend-icon-wrapper {
|
||||||
|
left: -32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.media-gallery,
|
||||||
|
&__action-bar,
|
||||||
|
.video-player {
|
||||||
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -46,3 +46,5 @@ $cjk-langs: ja, ko, zh-CN, zh-HK, zh-TW;
|
|||||||
$media-modal-media-max-width: 100%;
|
$media-modal-media-max-width: 100%;
|
||||||
// put margins on top and bottom of image to avoid the screen covered by image.
|
// put margins on top and bottom of image to avoid the screen covered by image.
|
||||||
$media-modal-media-max-height: 80%;
|
$media-modal-media-max-height: 80%;
|
||||||
|
|
||||||
|
$no-gap-breakpoint: 415px;
|
||||||
|
123
app/javascript/styles/mastodon/widgets.scss
Normal file
123
app/javascript/styles/mastodon/widgets.scss
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
.hero-widget {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
|
|
||||||
|
&__img {
|
||||||
|
width: 100%;
|
||||||
|
height: 167px;
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
border-radius: 4px 4px 0 0;
|
||||||
|
background: $base-shadow-color;
|
||||||
|
|
||||||
|
img {
|
||||||
|
object-fit: cover;
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
border-radius: 4px 4px 0 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__text {
|
||||||
|
background: $ui-base-color;
|
||||||
|
padding: 20px;
|
||||||
|
border-radius: 0 0 4px 4px;
|
||||||
|
font-size: 14px;
|
||||||
|
color: $darker-text-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.moved-account-widget {
|
||||||
|
padding: 15px;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
border-radius: 4px;
|
||||||
|
background: $ui-base-color;
|
||||||
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
|
color: $secondary-text-color;
|
||||||
|
font-weight: 400;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
|
||||||
|
strong,
|
||||||
|
a {
|
||||||
|
font-weight: 500;
|
||||||
|
|
||||||
|
@each $lang in $cjk-langs {
|
||||||
|
&:lang(#{$lang}) {
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: inherit;
|
||||||
|
text-decoration: underline;
|
||||||
|
|
||||||
|
&.mention {
|
||||||
|
text-decoration: none;
|
||||||
|
|
||||||
|
span {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:focus,
|
||||||
|
&:hover,
|
||||||
|
&:active {
|
||||||
|
text-decoration: none;
|
||||||
|
|
||||||
|
span {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__message {
|
||||||
|
margin-bottom: 15px;
|
||||||
|
|
||||||
|
.fa {
|
||||||
|
margin-right: 5px;
|
||||||
|
color: $darker-text-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__card {
|
||||||
|
.detailed-status__display-avatar {
|
||||||
|
position: relative;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.detailed-status__display-name {
|
||||||
|
margin-bottom: 0;
|
||||||
|
text-decoration: none;
|
||||||
|
|
||||||
|
span {
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.memoriam-widget {
|
||||||
|
padding: 20px;
|
||||||
|
border-radius: 4px;
|
||||||
|
background: $base-shadow-color;
|
||||||
|
box-shadow: 0 0 15px rgba($base-shadow-color, 0.2);
|
||||||
|
font-size: 14px;
|
||||||
|
color: $darker-text-color;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.moved-account-widget,
|
||||||
|
.memoriam-widget {
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint) {
|
||||||
|
margin-bottom: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
}
|
@ -5,11 +5,12 @@ module AccountHeader
|
|||||||
|
|
||||||
IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze
|
IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze
|
||||||
LIMIT = 2.megabytes
|
LIMIT = 2.megabytes
|
||||||
|
MAX_PIXELS = 750_000 # 1500x500px
|
||||||
|
|
||||||
class_methods do
|
class_methods do
|
||||||
def header_styles(file)
|
def header_styles(file)
|
||||||
styles = { original: { geometry: '700x335#', file_geometry_parser: FastGeometryParser } }
|
styles = { original: { pixels: MAX_PIXELS, file_geometry_parser: FastGeometryParser } }
|
||||||
styles[:static] = { geometry: '700x335#', format: 'png', convert_options: '-coalesce', file_geometry_parser: FastGeometryParser } if file.content_type == 'image/gif'
|
styles[:static] = { format: 'png', convert_options: '-coalesce', file_geometry_parser: FastGeometryParser } if file.content_type == 'image/gif'
|
||||||
styles
|
styles
|
||||||
end
|
end
|
||||||
|
|
||||||
|
15
app/views/accounts/_bio.html.haml
Normal file
15
app/views/accounts/_bio.html.haml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
.public-account-bio
|
||||||
|
- unless account.fields.empty?
|
||||||
|
.account__header__fields
|
||||||
|
- account.fields.each do |field|
|
||||||
|
%dl
|
||||||
|
%dt.emojify{ title: field.name }= field.name
|
||||||
|
%dd.emojify{ title: field.value }= Formatter.instance.format_field(account, field.value, custom_emojify: true)
|
||||||
|
|
||||||
|
= account_badge(account)
|
||||||
|
|
||||||
|
- if account.note.present?
|
||||||
|
.account__header__content.emojify= Formatter.instance.simplified_format(account, custom_emojify: true)
|
||||||
|
|
||||||
|
.public-account-bio__extra
|
||||||
|
= t 'accounts.joined', date: l(account.created_at, format: :month)
|
@ -1,28 +0,0 @@
|
|||||||
- relationships ||= nil
|
|
||||||
|
|
||||||
- unless account.memorial? || account.moved?
|
|
||||||
- if user_signed_in?
|
|
||||||
- requested = relationships ? relationships.requested[account.id].present? : current_account.requested?(account)
|
|
||||||
- following = relationships ? relationships.following[account.id].present? : current_account.following?(account)
|
|
||||||
|
|
||||||
- if user_signed_in? && current_account.id != account.id && !requested
|
|
||||||
.controls
|
|
||||||
- if following
|
|
||||||
= link_to (account.local? ? account_unfollow_path(account) : remote_unfollow_path(acct: account.acct)), data: { method: :post }, class: 'icon-button' do
|
|
||||||
= fa_icon 'user-times'
|
|
||||||
= t('accounts.unfollow')
|
|
||||||
- else
|
|
||||||
= link_to (account.local? ? account_follow_path(account) : authorize_follow_path(acct: account.acct)), data: { method: :post }, class: 'icon-button' do
|
|
||||||
= fa_icon 'user-plus'
|
|
||||||
= t('accounts.follow')
|
|
||||||
- elsif user_signed_in? && current_account.id == account.id
|
|
||||||
.controls
|
|
||||||
= link_to settings_profile_url, class: 'icon-button' do
|
|
||||||
= fa_icon 'pencil'
|
|
||||||
= t('settings.edit_profile')
|
|
||||||
- elsif !user_signed_in?
|
|
||||||
.controls
|
|
||||||
.remote-follow
|
|
||||||
= link_to (account.local? ? account_remote_follow_path(account) : "web+mastodon://follow?uri=#{account.uri}"), class: 'icon-button' do
|
|
||||||
= fa_icon 'user-plus'
|
|
||||||
= t('accounts.remote_follow')
|
|
@ -1,8 +0,0 @@
|
|||||||
.accounts-grid{ class: accounts.empty? ? 'empty' : '' }
|
|
||||||
- if accounts.empty?
|
|
||||||
= image_tag asset_pack_path('elephant_ui_greeting.svg'), alt: '', role: 'presentational'
|
|
||||||
= render partial: 'accounts/nothing_here'
|
|
||||||
- else
|
|
||||||
= render partial: 'accounts/grid_card', collection: accounts, as: :account, cached: !user_signed_in?
|
|
||||||
|
|
||||||
= paginate follows
|
|
@ -1,3 +0,0 @@
|
|||||||
.accounts-grid.empty
|
|
||||||
= image_tag asset_pack_path('elephant_ui_greeting.svg'), alt: '', role: 'presentational'
|
|
||||||
%p.nothing-here= t('accounts.network_hidden')
|
|
@ -1,12 +0,0 @@
|
|||||||
.account-grid-card
|
|
||||||
.account-grid-card__header{ style: "background-image: url(#{account.header.url(:original)})" }
|
|
||||||
= render 'accounts/follow_button', account: account, relationships: @relationships
|
|
||||||
.account-grid-card__avatar
|
|
||||||
.avatar= image_tag account.avatar.url(:original)
|
|
||||||
.name
|
|
||||||
= link_to TagManager.instance.url_for(account) do
|
|
||||||
%span.display_name.emojify= display_name(account, custom_emojify: true)
|
|
||||||
%span.username
|
|
||||||
@#{account.local? ? account.local_username_and_domain : account.acct}
|
|
||||||
= fa_icon('lock') if account.locked?
|
|
||||||
.account__header__content.p-note.emojify= Formatter.instance.simplified_format(account)
|
|
@ -1,51 +1,43 @@
|
|||||||
.card.h-card.p-author{ style: "background-image: url(#{account.header.url(:original)})" }
|
.public-account-header
|
||||||
.card__illustration
|
.public-account-header__image
|
||||||
= render 'accounts/follow_button', account: account
|
= image_tag account.header.url, class: 'parallax'
|
||||||
.avatar= image_tag account.avatar.url(:original), class: 'u-photo'
|
.public-account-header__bar
|
||||||
|
= link_to short_account_url(account), class: 'avatar' do
|
||||||
|
= image_tag account.avatar.url
|
||||||
|
.public-account-header__tabs
|
||||||
|
.public-account-header__tabs__name
|
||||||
|
%h1
|
||||||
|
= display_name(account)
|
||||||
|
%small
|
||||||
|
= acct(account)
|
||||||
|
= fa_icon('lock') if account.locked?
|
||||||
|
.public-account-header__tabs__tabs
|
||||||
|
.details-counters
|
||||||
|
.counter{ class: active_nav_class(short_account_url(account)) }
|
||||||
|
= link_to short_account_url(account), class: 'u-url u-uid' do
|
||||||
|
%span.counter-number= number_to_human account.statuses_count, strip_insignificant_zeros: true
|
||||||
|
%span.counter-label= t('accounts.posts')
|
||||||
|
|
||||||
.card__bio
|
.counter{ class: active_nav_class(account_following_index_url(account)) }
|
||||||
%h1.name
|
= link_to account_following_index_url(account) do
|
||||||
%span.p-name.emojify= display_name(account, custom_emojify: true)
|
%span.counter-number= number_to_human account.following_count, strip_insignificant_zeros: true
|
||||||
%small<
|
%span.counter-label= t('accounts.following')
|
||||||
%span>< @#{account.local_username_and_domain}
|
|
||||||
= fa_icon('lock') if account.locked?
|
|
||||||
|
|
||||||
- if account.bot?
|
.counter{ class: active_nav_class(account_followers_url(account)) }
|
||||||
.roles
|
= link_to account_followers_url(account) do
|
||||||
.account-role.bot
|
%span.counter-number= number_to_human account.followers_count, strip_insignificant_zeros: true
|
||||||
= t 'accounts.roles.bot'
|
%span.counter-label= t('accounts.followers')
|
||||||
- elsif Setting.show_staff_badge
|
.spacer
|
||||||
- if account.user_admin?
|
.public-account-header__tabs__tabs__buttons
|
||||||
.roles
|
= account_action_button(account)
|
||||||
.account-role.admin
|
|
||||||
= t 'accounts.roles.admin'
|
|
||||||
- elsif account.user_moderator?
|
|
||||||
.roles
|
|
||||||
.account-role.moderator
|
|
||||||
= t 'accounts.roles.moderator'
|
|
||||||
|
|
||||||
.bio
|
.public-account-header__extra
|
||||||
.account__header__content.p-note.emojify= Formatter.instance.simplified_format(account, custom_emojify: true)
|
= render 'accounts/bio', account: account
|
||||||
|
|
||||||
- unless account.fields.empty?
|
.public-account-header__extra__links
|
||||||
.account__header__fields
|
|
||||||
- account.fields.each do |field|
|
|
||||||
%dl
|
|
||||||
%dt.emojify{ title: field.name }= field.name
|
|
||||||
%dd.emojify{ title: field.value }= Formatter.instance.format_field(account, field.value, custom_emojify: true)
|
|
||||||
|
|
||||||
.details-counters
|
|
||||||
.counter{ class: active_nav_class(short_account_url(account)) }
|
|
||||||
= link_to short_account_url(account), class: 'u-url u-uid' do
|
|
||||||
%span.counter-number= number_to_human account.statuses_count, strip_insignificant_zeros: true
|
|
||||||
%span.counter-label= t('accounts.posts')
|
|
||||||
|
|
||||||
.counter{ class: active_nav_class(account_following_index_url(account)) }
|
|
||||||
= link_to account_following_index_url(account) do
|
= link_to account_following_index_url(account) do
|
||||||
%span.counter-number= number_to_human account.following_count, strip_insignificant_zeros: true
|
%strong= number_to_human account.following_count, strip_insignificant_zeros: true
|
||||||
%span.counter-label= t('accounts.following')
|
= t('accounts.following')
|
||||||
|
|
||||||
.counter{ class: active_nav_class(account_followers_url(account)) }
|
|
||||||
= link_to account_followers_url(account) do
|
= link_to account_followers_url(account) do
|
||||||
%span.counter-number= number_to_human account.followers_count, strip_insignificant_zeros: true
|
%strong= number_to_human account.followers_count, strip_insignificant_zeros: true
|
||||||
%span.counter-label= t('accounts.followers')
|
= t('accounts.followers')
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
- moved_to_account = account.moved_to_account
|
- moved_to_account = account.moved_to_account
|
||||||
|
|
||||||
.moved-strip
|
.moved-account-widget
|
||||||
.moved-strip__message
|
.moved-account-widget__message
|
||||||
= fa_icon 'suitcase'
|
= fa_icon 'suitcase'
|
||||||
= t('accounts.moved_html', name: content_tag(:strong, display_name(account, custom_emojify: true), class: :emojify), new_profile_link: link_to(content_tag(:strong, safe_join(['@', content_tag(:span, moved_to_account.acct)])), TagManager.instance.url_for(moved_to_account), class: 'mention'))
|
= t('accounts.moved_html', name: content_tag(:bdi, content_tag(:strong, display_name(account, custom_emojify: true), class: :emojify)), new_profile_link: link_to(content_tag(:strong, safe_join(['@', content_tag(:span, moved_to_account.acct)])), TagManager.instance.url_for(moved_to_account), class: 'mention'))
|
||||||
|
|
||||||
.moved-strip__card
|
.moved-account-widget__card
|
||||||
= link_to TagManager.instance.url_for(moved_to_account), class: 'detailed-status__display-name p-author h-card', target: '_blank', rel: 'noopener' do
|
= link_to TagManager.instance.url_for(moved_to_account), class: 'detailed-status__display-name p-author h-card', target: '_blank', rel: 'noopener' do
|
||||||
.detailed-status__display-avatar
|
.detailed-status__display-avatar
|
||||||
.account__avatar-overlay
|
.account__avatar-overlay
|
||||||
@ -13,5 +13,6 @@
|
|||||||
.account__avatar-overlay-overlay{ style: "background-image: url('#{account.avatar.url(:original)}')" }
|
.account__avatar-overlay-overlay{ style: "background-image: url('#{account.avatar.url(:original)}')" }
|
||||||
|
|
||||||
%span.display-name
|
%span.display-name
|
||||||
%strong.emojify= display_name(moved_to_account, custom_emojify: true)
|
%bdi
|
||||||
|
%strong.emojify= display_name(moved_to_account, custom_emojify: true)
|
||||||
%span @#{moved_to_account.acct}
|
%span @#{moved_to_account.acct}
|
@ -1 +0,0 @@
|
|||||||
%p.nothing-here= t('accounts.nothing_here')
|
|
@ -20,36 +20,39 @@
|
|||||||
= opengraph 'og:type', 'profile'
|
= opengraph 'og:type', 'profile'
|
||||||
= render 'og', account: @account, url: short_account_url(@account, only_path: false)
|
= render 'og', account: @account, url: short_account_url(@account, only_path: false)
|
||||||
|
|
||||||
- if @account.memorial?
|
|
||||||
.memoriam-strip= t('in_memoriam_html')
|
|
||||||
- elsif @account.moved?
|
|
||||||
= render partial: 'moved_strip', locals: { account: @account }
|
|
||||||
- elsif show_landing_strip?
|
|
||||||
= render partial: 'shared/landing_strip', locals: { account: @account }
|
|
||||||
|
|
||||||
.h-feed
|
= render 'header', account: @account, with_bio: true
|
||||||
%data.p-name{ value: "#{@account.username} on #{site_hostname}" }/
|
|
||||||
|
|
||||||
= render 'header', account: @account
|
.grid
|
||||||
|
.column-0
|
||||||
|
.h-feed
|
||||||
|
%data.p-name{ value: "#{@account.username} on #{site_hostname}" }/
|
||||||
|
|
||||||
.activity-stream-tabs
|
.account__section-headline
|
||||||
= active_link_to t('accounts.posts'), short_account_url(@account)
|
= active_link_to t('accounts.posts'), short_account_url(@account)
|
||||||
= active_link_to t('accounts.posts_with_replies'), short_account_with_replies_url(@account)
|
= active_link_to t('accounts.posts_with_replies'), short_account_with_replies_url(@account)
|
||||||
= active_link_to t('accounts.media'), short_account_media_url(@account)
|
= active_link_to t('accounts.media'), short_account_media_url(@account)
|
||||||
|
|
||||||
- if @statuses.empty?
|
- if @statuses.empty?
|
||||||
.accounts-grid
|
= nothing_here 'nothing-here--under-tabs'
|
||||||
= render 'nothing_here'
|
- else
|
||||||
- else
|
.activity-stream
|
||||||
.activity-stream.with-header
|
- if params[:page].to_i.zero?
|
||||||
- if params[:page].to_i.zero?
|
= render partial: 'stream_entries/status', collection: @pinned_statuses, as: :status, locals: { pinned: true }
|
||||||
= render partial: 'stream_entries/status', collection: @pinned_statuses, as: :status, locals: { pinned: true }
|
|
||||||
|
|
||||||
= render partial: 'stream_entries/status', collection: @statuses, as: :status
|
- if @newer_url
|
||||||
|
.entry= link_to_more @newer_url
|
||||||
|
|
||||||
- if @newer_url || @older_url
|
= render partial: 'stream_entries/status', collection: @statuses, as: :status
|
||||||
.pagination
|
|
||||||
- if @older_url
|
- if @older_url
|
||||||
= link_to safe_join([fa_icon('chevron-left'), t('pagination.older')], ' '), @older_url, class: 'older', rel: 'next'
|
.entry= link_to_more @older_url
|
||||||
- if @newer_url
|
|
||||||
= link_to safe_join([t('pagination.newer'), fa_icon('chevron-right')], ' '), @newer_url, class: 'newer', rel: 'prev'
|
.column-1
|
||||||
|
- if @account.memorial?
|
||||||
|
.memoriam-widget= t('in_memoriam_html')
|
||||||
|
- elsif @account.moved?
|
||||||
|
= render 'moved', account: @account
|
||||||
|
|
||||||
|
= render 'bio', account: @account
|
||||||
|
= render 'application/sidebar'
|
||||||
|
16
app/views/application/_card.html.haml
Normal file
16
app/views/application/_card.html.haml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
- account_url = local_assigns[:admin] ? admin_account_path(account.id) : TagManager.instance.url_for(account)
|
||||||
|
|
||||||
|
.card.h-card
|
||||||
|
= link_to account_url, target: '_blank', rel: 'noopener' do
|
||||||
|
.card__img
|
||||||
|
= image_tag account.header.url, alt: ''
|
||||||
|
.card__bar
|
||||||
|
.avatar
|
||||||
|
= image_tag account.avatar.url, alt: '', width: 48, height: 48, class: 'u-photo'
|
||||||
|
|
||||||
|
.display-name
|
||||||
|
%bdi
|
||||||
|
%strong.emojify.p-name= display_name(account, custom_emojify: true)
|
||||||
|
%span
|
||||||
|
= acct(account)
|
||||||
|
= fa_icon('lock') if account.locked?
|
6
app/views/application/_sidebar.html.haml
Normal file
6
app/views/application/_sidebar.html.haml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
.hero-widget
|
||||||
|
.hero-widget__img
|
||||||
|
= image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('preview.jpg'), alt: @instance_presenter.site_title
|
||||||
|
|
||||||
|
.hero-widget__text
|
||||||
|
%p= @instance_presenter.site_description.html_safe.presence || t('about.generic_description', domain: site_hostname)
|
@ -10,7 +10,7 @@
|
|||||||
- if @invite.present? && @invite.autofollow?
|
- if @invite.present? && @invite.autofollow?
|
||||||
.fields-group{ style: 'margin-bottom: 30px' }
|
.fields-group{ style: 'margin-bottom: 30px' }
|
||||||
%p.hint{ style: 'text-align: center' }= t('invites.invited_by')
|
%p.hint{ style: 'text-align: center' }= t('invites.invited_by')
|
||||||
= render 'authorize_follows/card', account: @invite.user.account
|
= render 'application/card', account: @invite.user.account
|
||||||
|
|
||||||
= f.simple_fields_for :account do |ff|
|
= f.simple_fields_for :account do |ff|
|
||||||
.input-with-append
|
.input-with-append
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
.account-card
|
|
||||||
.account-card__header{ style: "background-image: url(#{account.header.url(:original)})" }
|
|
||||||
.detailed-status__display-name
|
|
||||||
%div
|
|
||||||
= image_tag account.avatar.url(:original), alt: '', width: 48, height: 48, class: 'avatar'
|
|
||||||
|
|
||||||
%span.display-name
|
|
||||||
- account_url = local_assigns[:admin] ? admin_account_path(account.id) : TagManager.instance.url_for(account)
|
|
||||||
= link_to account_url, class: 'detailed-status__display-name p-author h-card', target: '_blank', rel: 'noopener' do
|
|
||||||
%strong.emojify= display_name(account, custom_emojify: true)
|
|
||||||
%span @#{account.acct}
|
|
||||||
|
|
||||||
.counter
|
|
||||||
%span.counter-number= number_to_human account.statuses_count, strip_insignificant_zeros: true
|
|
||||||
%span.counter-label= t('accounts.posts')
|
|
||||||
|
|
||||||
.counter
|
|
||||||
%span.counter-number= number_to_human account.following_count, strip_insignificant_zeros: true
|
|
||||||
%span.counter-label= t('accounts.following')
|
|
||||||
|
|
||||||
.counter
|
|
||||||
%span.counter-number= number_to_human account.followers_count, strip_insignificant_zeros: true
|
|
||||||
%span.counter-label= t('accounts.followers')
|
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
.form-container
|
.form-container
|
||||||
.follow-prompt
|
.follow-prompt
|
||||||
= render 'card', account: @account
|
= render 'application/card', account: @account
|
||||||
|
|
||||||
- if current_account.following?(@account)
|
- if current_account.following?(@account)
|
||||||
.flash-message
|
.flash-message
|
||||||
|
@ -8,6 +8,6 @@
|
|||||||
- else
|
- else
|
||||||
%h2= t('authorize_follow.following')
|
%h2= t('authorize_follow.following')
|
||||||
|
|
||||||
= render 'card', account: @account
|
= render 'application/card', account: @account
|
||||||
|
|
||||||
= render 'post_follow_actions'
|
= render 'post_follow_actions'
|
||||||
|
@ -8,6 +8,11 @@
|
|||||||
= render 'accounts/header', account: @account
|
= render 'accounts/header', account: @account
|
||||||
|
|
||||||
- if @account.user_hides_network?
|
- if @account.user_hides_network?
|
||||||
= render 'accounts/follow_grid_hidden'
|
.nothing-here= t('accounts.network_hidden')
|
||||||
|
- elsif @follows.empty?
|
||||||
|
= nothing_here
|
||||||
- else
|
- else
|
||||||
= render 'accounts/follow_grid', follows: @follows, accounts: @follows.map(&:account)
|
.card-grid
|
||||||
|
= render partial: 'application/card', collection: @follows.map(&:account), as: :account
|
||||||
|
|
||||||
|
= paginate @follows
|
||||||
|
@ -8,6 +8,11 @@
|
|||||||
= render 'accounts/header', account: @account
|
= render 'accounts/header', account: @account
|
||||||
|
|
||||||
- if @account.user_hides_network?
|
- if @account.user_hides_network?
|
||||||
= render 'accounts/follow_grid_hidden'
|
.nothing-here= t('accounts.network_hidden')
|
||||||
|
- elsif @follows.empty?
|
||||||
|
= nothing_here
|
||||||
- else
|
- else
|
||||||
= render 'accounts/follow_grid', follows: @follows, accounts: @follows.map(&:target_account)
|
.card-grid
|
||||||
|
= render partial: 'application/card', collection: @follows.map(&:target_account), as: :account
|
||||||
|
|
||||||
|
= paginate @follows
|
||||||
|
@ -2,16 +2,49 @@
|
|||||||
= javascript_pack_tag 'public', integrity: true, crossorigin: 'anonymous'
|
= javascript_pack_tag 'public', integrity: true, crossorigin: 'anonymous'
|
||||||
|
|
||||||
- content_for :content do
|
- content_for :content do
|
||||||
.container-alt= yield
|
.public-layout
|
||||||
.footer
|
.container
|
||||||
- if !user_signed_in? && single_user_mode?
|
%nav.header
|
||||||
%span.single-user-login
|
.nav-left
|
||||||
= link_to t('auth.login'), new_user_session_path
|
= link_to root_url, class: 'brand' do
|
||||||
—
|
= image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon'
|
||||||
%span.footer__domain= link_to site_hostname, about_path
|
.nav-center
|
||||||
- else
|
.nav-right
|
||||||
%span.footer__domain= link_to site_hostname, root_path
|
- if user_signed_in?
|
||||||
%span.powered-by
|
= link_to t('settings.back'), root_url, class: 'nav-link nav-button webapp-btn'
|
||||||
!= t('generic.powered_by', link: link_to('https://joinmastodon.org') { image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon' })
|
- else
|
||||||
|
= link_to t('auth.login'), new_user_session_path, class: 'webapp-btn nav-link nav-button'
|
||||||
|
= link_to t('auth.register'), new_user_registration_path, class: 'webapp-btn nav-link nav-button'
|
||||||
|
|
||||||
|
.container= yield
|
||||||
|
|
||||||
|
.container
|
||||||
|
.footer
|
||||||
|
.grid
|
||||||
|
.column-0
|
||||||
|
%h4= t 'footer.resources'
|
||||||
|
%ul
|
||||||
|
%li= link_to t('about.terms'), terms_path
|
||||||
|
%li= link_to t('about.privacy_policy'), terms_path
|
||||||
|
.column-1
|
||||||
|
%h4= t 'footer.developers'
|
||||||
|
%ul
|
||||||
|
%li= link_to t('about.documentation'), 'https://github.com/tootsuite/documentation'
|
||||||
|
%li= link_to t('about.api'), 'https://github.com/tootsuite/documentation/blob/master/Using-the-API/API.md'
|
||||||
|
.column-2
|
||||||
|
%h4= link_to t('about.what_is_mastodon'), 'https://joinmastodon.org/'
|
||||||
|
|
||||||
|
= link_to root_url, class: 'brand' do
|
||||||
|
= render file: Rails.root.join('app', 'javascript', 'images', 'logo_transparent.svg')
|
||||||
|
.column-3
|
||||||
|
%h4= site_hostname
|
||||||
|
%ul
|
||||||
|
%li= link_to t('about.about_this'), about_more_path
|
||||||
|
%li= "v#{Mastodon::Version.to_s}"
|
||||||
|
.column-4
|
||||||
|
%h4= t 'footer.more'
|
||||||
|
%ul
|
||||||
|
%li= link_to t('about.source_code'), Mastodon::Version.source_url
|
||||||
|
%li= link_to 'joinmastodon.org', 'https://joinmastodon.org'
|
||||||
|
|
||||||
= render template: 'layouts/application'
|
= render template: 'layouts/application'
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
.follow-prompt
|
.follow-prompt
|
||||||
%h2= t('remote_follow.prompt')
|
%h2= t('remote_follow.prompt')
|
||||||
|
|
||||||
= render partial: 'authorize_follows/card', locals: { account: @account }
|
= render partial: 'application/card', locals: { account: @account }
|
||||||
|
|
||||||
= simple_form_for @remote_follow, as: :remote_follow, url: account_remote_follow_path(@account) do |f|
|
= simple_form_for @remote_follow, as: :remote_follow, url: account_remote_follow_path(@account) do |f|
|
||||||
= render 'shared/error_messages', object: @remote_follow
|
= render 'shared/error_messages', object: @remote_follow
|
||||||
|
@ -5,6 +5,6 @@
|
|||||||
.follow-prompt
|
.follow-prompt
|
||||||
%h2= t('remote_unfollow.unfollowed')
|
%h2= t('remote_unfollow.unfollowed')
|
||||||
|
|
||||||
= render 'card', account: @account
|
= render 'application/card', account: @account
|
||||||
|
|
||||||
= render 'post_follow_actions'
|
= render 'post_follow_actions'
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
%p.hint= t('migrations.currently_redirecting')
|
%p.hint= t('migrations.currently_redirecting')
|
||||||
|
|
||||||
.fields-group
|
.fields-group
|
||||||
= render partial: 'authorize_follows/card', locals: { account: @migration.account }
|
= render partial: 'application/card', locals: { account: @migration.account }
|
||||||
|
|
||||||
= render 'shared/error_messages', object: @migration
|
= render 'shared/error_messages', object: @migration
|
||||||
|
|
||||||
|
@ -8,8 +8,7 @@
|
|||||||
= f.input :display_name, placeholder: t('simple_form.labels.defaults.display_name'), hint: t('simple_form.hints.defaults.display_name', count: 30 - @account.display_name.size).html_safe
|
= f.input :display_name, placeholder: t('simple_form.labels.defaults.display_name'), hint: t('simple_form.hints.defaults.display_name', count: 30 - @account.display_name.size).html_safe
|
||||||
= f.input :note, placeholder: t('simple_form.labels.defaults.note'), hint: t('simple_form.hints.defaults.note', count: 160 - @account.note.size).html_safe
|
= f.input :note, placeholder: t('simple_form.labels.defaults.note'), hint: t('simple_form.hints.defaults.note', count: 160 - @account.note.size).html_safe
|
||||||
|
|
||||||
.card.compact{ style: "background-image: url(#{@account.header.url(:original)})", data: { original_src: @account.header.url(:original) } }
|
= render 'application/card', account: @account
|
||||||
.avatar= image_tag @account.avatar.url(:original), data: { original_src: @account.avatar.url(:original) }
|
|
||||||
|
|
||||||
.fields-group
|
.fields-group
|
||||||
= f.input :avatar, wrapper: :with_label, input_html: { accept: AccountAvatar::IMAGE_MIME_TYPES.join(',') }, hint: t('simple_form.hints.defaults.avatar')
|
= f.input :avatar, wrapper: :with_label, input_html: { accept: AccountAvatar::IMAGE_MIME_TYPES.join(',') }, hint: t('simple_form.hints.defaults.avatar')
|
||||||
|
@ -1,6 +0,0 @@
|
|||||||
.landing-strip
|
|
||||||
= image_tag asset_pack_path('logo.svg'), class: 'logo'
|
|
||||||
|
|
||||||
%div
|
|
||||||
= t('landing_strip_html', name: content_tag(:span, display_name(account, custom_emojify: true), class: :emojify), link_to_root_path: link_to(content_tag(:strong, site_hostname), root_path))
|
|
||||||
= t('landing_strip_signup_html', sign_up_path: open_registrations? ? new_user_registration_path : 'https://joinmastodon.org/#getting-started')
|
|
@ -1,7 +0,0 @@
|
|||||||
.media-spoiler-wrapper{ class: sensitive == false && 'media-spoiler-wrapper__visible' }
|
|
||||||
.spoiler-button
|
|
||||||
.icon-button.overlayed
|
|
||||||
%i.fa.fa-fw.fa-eye
|
|
||||||
.media-spoiler
|
|
||||||
%span= t('stream_entries.sensitive_content')
|
|
||||||
%span= t('stream_entries.click_to_show')
|
|
@ -1,16 +1,15 @@
|
|||||||
.detailed-status.light
|
.detailed-status.detailed-status--flex
|
||||||
= link_to TagManager.instance.url_for(status.account), class: 'detailed-status__display-name p-author h-card', target: stream_link_target, rel: 'noopener' do
|
= link_to TagManager.instance.url_for(status.account), class: 'detailed-status__display-name p-author h-card', target: stream_link_target, rel: 'noopener' do
|
||||||
%div
|
.detailed-status__display-avatar
|
||||||
.avatar
|
= image_tag status.account.avatar.url(:original), width: 48, height: 48, alt: '', class: 'account__avatar u-photo'
|
||||||
= image_tag status.account.avatar.url(:original), width: 48, height: 48, alt: '', class: 'u-photo'
|
|
||||||
%span.display-name
|
%span.display-name
|
||||||
%strong.p-name.emojify= display_name(status.account, custom_emojify: true)
|
%bdi
|
||||||
%span= acct(status.account)
|
%strong.display-name__html.p-name.emojify= display_name(status.account, custom_emojify: true)
|
||||||
|
%span.display-name__account
|
||||||
|
= acct(status.account)
|
||||||
|
= fa_icon('lock') if status.account.locked?
|
||||||
|
|
||||||
- if !user_signed_in? || embedded_view?
|
= account_action_button(status.account)
|
||||||
= link_to account_remote_follow_path(status.account), class: 'button button-secondary logo-button', target: '_new' do
|
|
||||||
= render file: Rails.root.join('app', 'javascript', 'images', 'logo.svg')
|
|
||||||
= t('accounts.follow')
|
|
||||||
|
|
||||||
.status__content.emojify<
|
.status__content.emojify<
|
||||||
- if status.spoiler_text?
|
- if status.spoiler_text?
|
||||||
@ -30,6 +29,7 @@
|
|||||||
|
|
||||||
.detailed-status__meta
|
.detailed-status__meta
|
||||||
%data.dt-published{ value: status.created_at.to_time.iso8601 }
|
%data.dt-published{ value: status.created_at.to_time.iso8601 }
|
||||||
|
|
||||||
= link_to TagManager.instance.url_for(status), class: 'detailed-status__datetime u-url u-uid', target: stream_link_target, rel: 'noopener' do
|
= link_to TagManager.instance.url_for(status), class: 'detailed-status__datetime u-url u-uid', target: stream_link_target, rel: 'noopener' do
|
||||||
%time.formatted{ datetime: status.created_at.iso8601, title: l(status.created_at) }= l(status.created_at)
|
%time.formatted{ datetime: status.created_at.iso8601, title: l(status.created_at) }= l(status.created_at)
|
||||||
·
|
·
|
||||||
@ -40,20 +40,20 @@
|
|||||||
= link_to status.application.name, status.application.website, class: 'detailed-status__application', target: '_blank', rel: 'noopener'
|
= link_to status.application.name, status.application.website, class: 'detailed-status__application', target: '_blank', rel: 'noopener'
|
||||||
·
|
·
|
||||||
- if status.direct_visibility?
|
- if status.direct_visibility?
|
||||||
%span<
|
%span.detailed-status__link<
|
||||||
= fa_icon('envelope')
|
= fa_icon('envelope')
|
||||||
- elsif status.private_visibility?
|
- elsif status.private_visibility?
|
||||||
%span<
|
%span.detailed-status__link<
|
||||||
= fa_icon('lock')
|
= fa_icon('lock')
|
||||||
- else
|
- else
|
||||||
%span<
|
%span.detailed-status__link<
|
||||||
= fa_icon('retweet')
|
= fa_icon('retweet')
|
||||||
%span= status.reblogs_count
|
%span.detailed-status__reblogs= number_to_human status.reblogs_count, strip_insignificant_zeros: true
|
||||||
·
|
·
|
||||||
%span<
|
%span.detailed-status__link<
|
||||||
= fa_icon('star')
|
= fa_icon('star')
|
||||||
%span= status.favourites_count
|
%span.detailed-status__favorites= number_to_human status.favourites_count, strip_insignificant_zeros: true
|
||||||
|
|
||||||
- if user_signed_in?
|
- if user_signed_in?
|
||||||
·
|
·
|
||||||
= link_to t('statuses.open_in_web'), web_url("statuses/#{status.id}"), class: 'open-in-web-link', target: '_blank'
|
= link_to t('statuses.open_in_web'), web_url("statuses/#{status.id}"), class: 'detailed-status__application', target: '_blank'
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
.media-item
|
|
||||||
= link_to media.remote_url.blank? ? media.file.url(:original) : media.remote_url, style: media.image? ? "background-image: url(#{media.file.url(:original)})" : '', target: '_blank', rel: 'noopener', class: "u-#{media.video? || media.gifv? ? 'video' : 'photo'}" do
|
|
||||||
- unless media.image?
|
|
||||||
%video{ src: media.file.url(:original), autoplay: true, loop: true }/
|
|
@ -1,2 +0,0 @@
|
|||||||
= link_to url, class: 'more light' do
|
|
||||||
= t('statuses.show_more')
|
|
@ -1,18 +1,19 @@
|
|||||||
.status.light
|
.status
|
||||||
.status__header
|
.status__info
|
||||||
.status__meta
|
= link_to TagManager.instance.url_for(status), class: 'status__relative-time u-url u-uid', target: stream_link_target, rel: 'noopener' do
|
||||||
= link_to TagManager.instance.url_for(status), class: 'status__relative-time u-url u-uid', target: stream_link_target, rel: 'noopener' do
|
%time.time-ago{ datetime: status.created_at.iso8601, title: l(status.created_at) }= l(status.created_at)
|
||||||
%time.time-ago{ datetime: status.created_at.iso8601, title: l(status.created_at) }= l(status.created_at)
|
%data.dt-published{ value: status.created_at.to_time.iso8601 }
|
||||||
%data.dt-published{ value: status.created_at.to_time.iso8601 }
|
|
||||||
|
|
||||||
= link_to TagManager.instance.url_for(status.account), class: 'status__display-name p-author h-card', target: stream_link_target, rel: 'noopener' do
|
= link_to TagManager.instance.url_for(status.account), class: 'status__display-name p-author h-card', target: stream_link_target, rel: 'noopener' do
|
||||||
.status__avatar
|
.status__avatar
|
||||||
%div
|
%div
|
||||||
= image_tag status.account.avatar(:original), width: 48, height: 48, alt: '', class: 'u-photo'
|
= image_tag status.account.avatar(:original), width: 48, height: 48, alt: '', class: 'u-photo account__avatar'
|
||||||
%span.display-name
|
%span.display-name
|
||||||
%strong.p-name.emojify= display_name(status.account, custom_emojify: true)
|
%bdi
|
||||||
%span= acct(status.account)
|
%strong.display-name__html.p-name.emojify= display_name(status.account, custom_emojify: true)
|
||||||
|
%span.display-name__account
|
||||||
|
= acct(status.account)
|
||||||
|
= fa_icon('lock') if status.account.locked?
|
||||||
.status__content.emojify<
|
.status__content.emojify<
|
||||||
- if status.spoiler_text?
|
- if status.spoiler_text?
|
||||||
%p{ style: 'margin-bottom: 0' }<
|
%p{ style: 'margin-bottom: 0' }<
|
||||||
@ -26,3 +27,16 @@
|
|||||||
= react_component :video, src: video.file.url(:original), preview: video.file.url(:small), sensitive: status.sensitive? && !current_account&.user&.setting_display_sensitive_media, width: 610, height: 343, inline: true
|
= react_component :video, src: video.file.url(:original), preview: video.file.url(:small), sensitive: status.sensitive? && !current_account&.user&.setting_display_sensitive_media, width: 610, height: 343, inline: true
|
||||||
- else
|
- else
|
||||||
= react_component :media_gallery, height: 343, sensitive: status.sensitive? && !current_account&.user&.setting_display_sensitive_media, 'autoPlayGif': current_account&.user&.setting_auto_play_gif, media: status.media_attachments.map { |a| ActiveModelSerializers::SerializableResource.new(a, serializer: REST::MediaAttachmentSerializer).as_json }
|
= react_component :media_gallery, height: 343, sensitive: status.sensitive? && !current_account&.user&.setting_display_sensitive_media, 'autoPlayGif': current_account&.user&.setting_auto_play_gif, media: status.media_attachments.map { |a| ActiveModelSerializers::SerializableResource.new(a, serializer: REST::MediaAttachmentSerializer).as_json }
|
||||||
|
|
||||||
|
.status__action-bar
|
||||||
|
.status__action-bar-button.static-icon-button<
|
||||||
|
- if status.public_visibility? || status.unlisted_visibility?
|
||||||
|
= fa_icon 'retweet fw'
|
||||||
|
%span.detailed-status__reblogs= number_to_human status.reblogs_count, strip_insignificant_zeros: true
|
||||||
|
- elsif status.private_visibility?
|
||||||
|
= fa_icon 'lock fw'
|
||||||
|
- else
|
||||||
|
= fa_icon 'envelope fw'
|
||||||
|
.status__action-bar-button.static-icon-button<
|
||||||
|
= fa_icon 'star fw'
|
||||||
|
%span.detailed-status__favorites= number_to_human status.favourites_count, strip_insignificant_zeros: true
|
||||||
|
@ -16,24 +16,25 @@
|
|||||||
- if status.reply? && include_threads
|
- if status.reply? && include_threads
|
||||||
- if @next_ancestor
|
- if @next_ancestor
|
||||||
.entry{ class: entry_classes }
|
.entry{ class: entry_classes }
|
||||||
= render 'stream_entries/more', url: TagManager.instance.url_for(@next_ancestor)
|
= link_to_more TagManager.instance.url_for(@next_ancestor)
|
||||||
|
|
||||||
= render partial: 'stream_entries/status', collection: @ancestors, as: :status, locals: { is_predecessor: true, direct_reply_id: status.in_reply_to_id }
|
= render partial: 'stream_entries/status', collection: @ancestors, as: :status, locals: { is_predecessor: true, direct_reply_id: status.in_reply_to_id }
|
||||||
|
|
||||||
.entry{ class: entry_classes }
|
.entry{ class: entry_classes }
|
||||||
|
|
||||||
- if status.reblog?
|
- if status.reblog?
|
||||||
.pre-header
|
.status__prepend
|
||||||
.pre-header__icon
|
.status__prepend-icon-wrapper
|
||||||
= fa_icon('retweet fw')
|
%i.status__prepend-icon.fa.fa-fw.fa-retweet
|
||||||
%span
|
%span
|
||||||
= link_to TagManager.instance.url_for(status.account), class: 'status__display-name muted' do
|
= link_to TagManager.instance.url_for(status.account), class: 'status__display-name muted' do
|
||||||
%strong.emojify= display_name(status.account, custom_emojify: true)
|
%bdi
|
||||||
|
%strong.emojify= display_name(status.account, custom_emojify: true)
|
||||||
= t('stream_entries.reblogged')
|
= t('stream_entries.reblogged')
|
||||||
- elsif pinned
|
- elsif pinned
|
||||||
.pre-header
|
.status__prepend
|
||||||
.pre-header__icon
|
.status__prepend-icon-wrapper
|
||||||
= fa_icon('thumb-tack fw')
|
%i.status__prepend-icon.fa.fa-fw.fa-thumb-tack
|
||||||
%span
|
%span
|
||||||
= t('stream_entries.pinned')
|
= t('stream_entries.pinned')
|
||||||
|
|
||||||
@ -42,13 +43,13 @@
|
|||||||
- if include_threads
|
- if include_threads
|
||||||
- if @since_descendant_thread_id
|
- if @since_descendant_thread_id
|
||||||
.entry{ class: entry_classes }
|
.entry{ class: entry_classes }
|
||||||
= render 'stream_entries/more', url: short_account_status_url(status.account.username, status, max_descendant_thread_id: @since_descendant_thread_id + 1)
|
= link_to_more short_account_status_url(status.account.username, status, max_descendant_thread_id: @since_descendant_thread_id + 1)
|
||||||
- @descendant_threads.each do |thread|
|
- @descendant_threads.each do |thread|
|
||||||
= render partial: 'stream_entries/status', collection: thread[:statuses], as: :status, locals: { is_successor: true, parent_id: status.id }
|
= render partial: 'stream_entries/status', collection: thread[:statuses], as: :status, locals: { is_successor: true, parent_id: status.id }
|
||||||
|
|
||||||
- if thread[:next_status]
|
- if thread[:next_status]
|
||||||
.entry{ class: entry_classes }
|
.entry{ class: entry_classes }
|
||||||
= render 'stream_entries/more', url: TagManager.instance.url_for(thread[:next_status])
|
= link_to_more TagManager.instance.url_for(thread[:next_status])
|
||||||
- if @next_descendant_thread
|
- if @next_descendant_thread
|
||||||
.entry{ class: entry_classes }
|
.entry{ class: entry_classes }
|
||||||
= render 'stream_entries/more', url: short_account_status_url(status.account.username, status, since_descendant_thread_id: @max_descendant_thread_id - 1)
|
= link_to_more short_account_status_url(status.account.username, status, since_descendant_thread_id: @max_descendant_thread_id - 1)
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
- cache @stream_entry.activity do
|
- cache @stream_entry.activity do
|
||||||
.activity-stream.activity-stream-headless
|
.activity-stream.activity-stream--headless
|
||||||
= render "stream_entries/#{@type}", @type.to_sym => @stream_entry.activity, centered: true
|
= render "stream_entries/#{@type}", @type.to_sym => @stream_entry.activity, centered: true
|
||||||
|
@ -17,8 +17,9 @@
|
|||||||
= render 'stream_entries/og_description', activity: @stream_entry.activity
|
= render 'stream_entries/og_description', activity: @stream_entry.activity
|
||||||
= render 'stream_entries/og_image', activity: @stream_entry.activity, account: @account
|
= render 'stream_entries/og_image', activity: @stream_entry.activity, account: @account
|
||||||
|
|
||||||
- if show_landing_strip?
|
.grid
|
||||||
= render partial: 'shared/landing_strip', locals: { account: @stream_entry.account }
|
.column-0
|
||||||
|
.activity-stream.activity-stream-headless.h-entry
|
||||||
.activity-stream.activity-stream-headless.h-entry
|
= render partial: "stream_entries/#{@type}", locals: { @type.to_sym => @stream_entry.activity, include_threads: true }
|
||||||
= render partial: "stream_entries/#{@type}", locals: { @type.to_sym => @stream_entry.activity, include_threads: true }
|
.column-1
|
||||||
|
= render 'application/sidebar'
|
||||||
|
@ -46,7 +46,6 @@ ar:
|
|||||||
people_who_follow: الأشخاص الذين يتبعون %{name}
|
people_who_follow: الأشخاص الذين يتبعون %{name}
|
||||||
posts: منشورات
|
posts: منشورات
|
||||||
posts_with_replies: التبويقات و الردود
|
posts_with_replies: التبويقات و الردود
|
||||||
remote_follow: إتبع عن بعد
|
|
||||||
reserved_username: إسم المستخدم محجوز
|
reserved_username: إسم المستخدم محجوز
|
||||||
roles:
|
roles:
|
||||||
admin: المدير
|
admin: المدير
|
||||||
@ -516,7 +515,6 @@ ar:
|
|||||||
unlocked_warning_title: إنّ حسابك غير مقفل
|
unlocked_warning_title: إنّ حسابك غير مقفل
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: تم حفظ التعديلات بنجاح !
|
changes_saved_msg: تم حفظ التعديلات بنجاح !
|
||||||
powered_by: مدعوم بـ %{link}
|
|
||||||
save_changes: حفظ التغييرات
|
save_changes: حفظ التغييرات
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: لا يزال هناك خلل ما إلى حد الآن. يُرجى إعادة النظر في الخطأ أسفله
|
one: لا يزال هناك خلل ما إلى حد الآن. يُرجى إعادة النظر في الخطأ أسفله
|
||||||
@ -551,8 +549,6 @@ ar:
|
|||||||
expires_at: تنتهي مدة صلاحيتها في
|
expires_at: تنتهي مدة صلاحيتها في
|
||||||
uses: يستخدِم
|
uses: يستخدِم
|
||||||
title: دعوة أشخاص
|
title: دعوة أشخاص
|
||||||
landing_strip_html: "<strong>%{name}</strong> هو أحد مُستخدِمي %{link_to_root_path}. بإمكانك متابعته أو التواصل معه إن كنت تملك حسابًا أيا كان على البيئة الموحَّدة فيديفرس."
|
|
||||||
landing_strip_signup_html: إن كنت لا تملك واحدا، يمكنك <a href="%{sign_up_path}">التسجيل مِن هنا</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: لقد بلغت الحد الأقصى للقوائم
|
limit: لقد بلغت الحد الأقصى للقوائم
|
||||||
@ -720,7 +716,6 @@ ar:
|
|||||||
unlisted: غير مُدرَج
|
unlisted: غير مُدرَج
|
||||||
unlisted_long: يُمكن لأيٍ كان رُؤيتَه و لكن لن يُعرَض على الخيوط العامة
|
unlisted_long: يُمكن لأيٍ كان رُؤيتَه و لكن لن يُعرَض على الخيوط العامة
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: إضغط للعرض
|
|
||||||
pinned: تبويق مثبّت
|
pinned: تبويق مثبّت
|
||||||
reblogged: رقى
|
reblogged: رقى
|
||||||
sensitive_content: محتوى حساس
|
sensitive_content: محتوى حساس
|
||||||
|
@ -96,8 +96,6 @@ ast:
|
|||||||
followers:
|
followers:
|
||||||
domain: Dominiu
|
domain: Dominiu
|
||||||
followers_count: Númberu de siguidores
|
followers_count: Númberu de siguidores
|
||||||
generic:
|
|
||||||
powered_by: cola potencia de %{link}
|
|
||||||
invites:
|
invites:
|
||||||
expires_in:
|
expires_in:
|
||||||
'1800': 30 minutos
|
'1800': 30 minutos
|
||||||
@ -183,7 +181,6 @@ ast:
|
|||||||
other: "%{count} vídeos"
|
other: "%{count} vídeos"
|
||||||
title: "%{name}: «%{quote}»"
|
title: "%{name}: «%{quote}»"
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Primi p'amosar
|
|
||||||
sensitive_content: Conteníu sensible
|
sensitive_content: Conteníu sensible
|
||||||
themes:
|
themes:
|
||||||
default: Mastodon
|
default: Mastodon
|
||||||
|
@ -22,7 +22,6 @@ bg:
|
|||||||
people_followed_by: Хора, които %{name} следва
|
people_followed_by: Хора, които %{name} следва
|
||||||
people_who_follow: Хора, които следват %{name}
|
people_who_follow: Хора, които следват %{name}
|
||||||
posts: Публикации
|
posts: Публикации
|
||||||
remote_follow: Последвай
|
|
||||||
unfollow: Не следвай
|
unfollow: Не следвай
|
||||||
application_mailer:
|
application_mailer:
|
||||||
settings: 'Промяна на предпочитанията за e-mail: %{link}'
|
settings: 'Промяна на предпочитанията за e-mail: %{link}'
|
||||||
@ -64,7 +63,6 @@ bg:
|
|||||||
storage: Съхранение на мултимедия
|
storage: Съхранение на мултимедия
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Успешно запазване на промените!
|
changes_saved_msg: Успешно запазване на промените!
|
||||||
powered_by: поддържано от %{link}
|
|
||||||
save_changes: Запази промените
|
save_changes: Запази промените
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Нещо все още не е наред! Моля, прегледай грешката по-долу
|
one: Нещо все още не е наред! Моля, прегледай грешката по-долу
|
||||||
@ -76,8 +74,6 @@ bg:
|
|||||||
blocking: Списък на блокираните
|
blocking: Списък на блокираните
|
||||||
following: Списък на последователите
|
following: Списък на последователите
|
||||||
upload: Качване
|
upload: Качване
|
||||||
landing_strip_html: "<strong>%{name}</strong> е потребител от %{link_to_root_path}. Можеш да ги следваш, или да контактуваш с тях, ако имаш акаунт където и да е из федерираната вселена на Mastodon."
|
|
||||||
landing_strip_signup_html: Ако нямаш акаунт, можеш да си <a href="%{sign_up_path}">създадеш ето тук</a>.
|
|
||||||
media_attachments:
|
media_attachments:
|
||||||
validations:
|
validations:
|
||||||
images_and_video: Не мога да прикача видеоклип към публикация, която вече съдържа изображения
|
images_and_video: Не мога да прикача видеоклип към публикация, която вече съдържа изображения
|
||||||
@ -144,7 +140,6 @@ bg:
|
|||||||
public: Публично
|
public: Публично
|
||||||
unlisted: Публично, но не показвай в публичния канал
|
unlisted: Публично, но не показвай в публичния канал
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Покажи
|
|
||||||
reblogged: споделено
|
reblogged: споделено
|
||||||
sensitive_content: Деликатно съдържание
|
sensitive_content: Деликатно съдържание
|
||||||
time:
|
time:
|
||||||
|
@ -46,7 +46,6 @@ ca:
|
|||||||
people_who_follow: Usuaris que segueixen %{name}
|
people_who_follow: Usuaris que segueixen %{name}
|
||||||
posts: Toots
|
posts: Toots
|
||||||
posts_with_replies: Toots i respostes
|
posts_with_replies: Toots i respostes
|
||||||
remote_follow: Seguiment remot
|
|
||||||
reserved_username: El nom d'usuari està reservat
|
reserved_username: El nom d'usuari està reservat
|
||||||
roles:
|
roles:
|
||||||
admin: Administrador
|
admin: Administrador
|
||||||
@ -504,7 +503,6 @@ ca:
|
|||||||
unlocked_warning_title: El teu compte no està blocat
|
unlocked_warning_title: El teu compte no està blocat
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Els canvis s'han desat correctament!
|
changes_saved_msg: Els canvis s'han desat correctament!
|
||||||
powered_by: amb tecnologia %{link}
|
|
||||||
save_changes: Desa els canvis
|
save_changes: Desa els canvis
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Alguna cosa no va bé! Si us plau, revisa l'error
|
one: Alguna cosa no va bé! Si us plau, revisa l'error
|
||||||
@ -540,8 +538,6 @@ ca:
|
|||||||
expires_at: Caduca
|
expires_at: Caduca
|
||||||
uses: Usos
|
uses: Usos
|
||||||
title: Convida persones
|
title: Convida persones
|
||||||
landing_strip_html: "<strong>%{name}</strong> és un usuari/a de %{link_to_root_path}. Pots seguir-lo/la o interactuar amb ell/a si tens un compte a qualsevol node del fediverse."
|
|
||||||
landing_strip_signup_html: Si no en tens, pots <a href="%{sign_up_path}">registrar-te aquí</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Has assolit la quantitat màxima de llistes
|
limit: Has assolit la quantitat màxima de llistes
|
||||||
@ -710,7 +706,6 @@ ca:
|
|||||||
unlisted: No llistat
|
unlisted: No llistat
|
||||||
unlisted_long: Tothom ho pot veure, però no es mostra en la història federada
|
unlisted_long: Tothom ho pot veure, però no es mostra en la història federada
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Clic per mostrar
|
|
||||||
pinned: Toot fixat
|
pinned: Toot fixat
|
||||||
reblogged: ha impulsat
|
reblogged: ha impulsat
|
||||||
sensitive_content: Contingut sensible
|
sensitive_content: Contingut sensible
|
||||||
|
@ -46,7 +46,6 @@ co:
|
|||||||
people_who_follow: Seguitanu %{name}
|
people_who_follow: Seguitanu %{name}
|
||||||
posts: Statuti
|
posts: Statuti
|
||||||
posts_with_replies: Statuti è risposte
|
posts_with_replies: Statuti è risposte
|
||||||
remote_follow: Siguità d’altrò
|
|
||||||
reserved_username: Stu cugnome hè riservatu
|
reserved_username: Stu cugnome hè riservatu
|
||||||
roles:
|
roles:
|
||||||
admin: Amministratore
|
admin: Amministratore
|
||||||
@ -488,7 +487,6 @@ co:
|
|||||||
unlocked_warning_title: U vostru contu hè pubblicu
|
unlocked_warning_title: U vostru contu hè pubblicu
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Cambiamenti salvati!
|
changes_saved_msg: Cambiamenti salvati!
|
||||||
powered_by: mossu da %{link}
|
|
||||||
save_changes: Salvà e mudificazione
|
save_changes: Salvà e mudificazione
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Qualcosa ùn và bè! Verificate u prublemu quì sottu
|
one: Qualcosa ùn và bè! Verificate u prublemu quì sottu
|
||||||
@ -523,8 +521,6 @@ co:
|
|||||||
expires_at: Spira
|
expires_at: Spira
|
||||||
uses: Utiliza
|
uses: Utiliza
|
||||||
title: Invità ghjente
|
title: Invità ghjente
|
||||||
landing_strip_html: "<strong>%{name}</strong> hè nant’à %{link_to_root_path}. Pudete seguitallu·a o cumunicà cù ellu·a cù un contu in qualche parte di u fediverse."
|
|
||||||
landing_strip_signup_html: Pudete ancu <a href="%{sign_up_path}">arrigistravi quì</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Ùn pudete più creà altre liste
|
limit: Ùn pudete più creà altre liste
|
||||||
@ -691,7 +687,6 @@ co:
|
|||||||
unlisted: Micca listatu
|
unlisted: Micca listatu
|
||||||
unlisted_long: Tuttu u mondu pò vede, mà micca indè e linee pubbliche
|
unlisted_long: Tuttu u mondu pò vede, mà micca indè e linee pubbliche
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Cliccà per vede
|
|
||||||
pinned: Statutu puntarulatu
|
pinned: Statutu puntarulatu
|
||||||
reblogged: spartutu
|
reblogged: spartutu
|
||||||
sensitive_content: Cuntenutu sensibile
|
sensitive_content: Cuntenutu sensibile
|
||||||
|
@ -46,7 +46,6 @@ da:
|
|||||||
people_who_follow: Folk der følger %{name}
|
people_who_follow: Folk der følger %{name}
|
||||||
posts: Dyt
|
posts: Dyt
|
||||||
posts_with_replies: Toots og svar
|
posts_with_replies: Toots og svar
|
||||||
remote_follow: Følg fra andre instanser
|
|
||||||
reserved_username: Brugernavnet er reserveret
|
reserved_username: Brugernavnet er reserveret
|
||||||
roles:
|
roles:
|
||||||
admin: Administrator
|
admin: Administrator
|
||||||
@ -464,7 +463,6 @@ da:
|
|||||||
unlocked_warning_title: Din konto er ikke låst
|
unlocked_warning_title: Din konto er ikke låst
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Ændringerne blev gemt!
|
changes_saved_msg: Ændringerne blev gemt!
|
||||||
powered_by: drevet af %{link}
|
|
||||||
save_changes: Gem ændringer
|
save_changes: Gem ændringer
|
||||||
imports:
|
imports:
|
||||||
types:
|
types:
|
||||||
@ -593,7 +591,6 @@ da:
|
|||||||
public_long: Alle kan se
|
public_long: Alle kan se
|
||||||
unlisted: Ikke listet
|
unlisted: Ikke listet
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Tryk for at vise
|
|
||||||
pinned: Fastgjort toot
|
pinned: Fastgjort toot
|
||||||
sensitive_content: Følsomt indhold
|
sensitive_content: Følsomt indhold
|
||||||
themes:
|
themes:
|
||||||
|
@ -46,7 +46,6 @@ de:
|
|||||||
people_who_follow: Profile, die %{name} folgen
|
people_who_follow: Profile, die %{name} folgen
|
||||||
posts: Beiträge
|
posts: Beiträge
|
||||||
posts_with_replies: Beiträge mit Antworten
|
posts_with_replies: Beiträge mit Antworten
|
||||||
remote_follow: Folgen
|
|
||||||
reserved_username: Dieser Profilname ist belegt
|
reserved_username: Dieser Profilname ist belegt
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -517,7 +516,6 @@ de:
|
|||||||
unlocked_warning_title: Dein Konto ist nicht gesperrt
|
unlocked_warning_title: Dein Konto ist nicht gesperrt
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Änderungen gespeichert!
|
changes_saved_msg: Änderungen gespeichert!
|
||||||
powered_by: angetrieben von %{link}
|
|
||||||
save_changes: Änderungen speichern
|
save_changes: Änderungen speichern
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Etwas ist noch nicht ganz richtig! Bitte korrigiere den Fehler
|
one: Etwas ist noch nicht ganz richtig! Bitte korrigiere den Fehler
|
||||||
@ -553,8 +551,6 @@ de:
|
|||||||
expires_at: Läuft ab
|
expires_at: Läuft ab
|
||||||
uses: Verwendungen
|
uses: Verwendungen
|
||||||
title: Leute Einladen
|
title: Leute Einladen
|
||||||
landing_strip_html: "<strong>%{name}</strong> hat ein Profil auf %{link_to_root_path}. Du kannst folgen oder interagieren, sofern du ein Konto irgendwo im Fediversum hast."
|
|
||||||
landing_strip_signup_html: Wenn nicht, kannst du dich <a href="%{sign_up_path}">hier anmelden</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Du hast die maximale Anzahl an Listen erreicht
|
limit: Du hast die maximale Anzahl an Listen erreicht
|
||||||
@ -723,7 +719,6 @@ de:
|
|||||||
unlisted: Nicht gelistet
|
unlisted: Nicht gelistet
|
||||||
unlisted_long: Für alle sichtbar, aber nicht in öffentlichen Zeitleisten aufgelistet
|
unlisted_long: Für alle sichtbar, aber nicht in öffentlichen Zeitleisten aufgelistet
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klicken, um zu zeigen
|
|
||||||
pinned: Angehefteter Beitrag
|
pinned: Angehefteter Beitrag
|
||||||
reblogged: teilte
|
reblogged: teilte
|
||||||
sensitive_content: Heikle Inhalte
|
sensitive_content: Heikle Inhalte
|
||||||
|
@ -46,7 +46,6 @@ el:
|
|||||||
people_who_follow: Χρήστες που ακολουθούν τον/την %{name}
|
people_who_follow: Χρήστες που ακολουθούν τον/την %{name}
|
||||||
posts: Τουτ
|
posts: Τουτ
|
||||||
posts_with_replies: Τουτ και απαντήσεις
|
posts_with_replies: Τουτ και απαντήσεις
|
||||||
remote_follow: Απομακρυσμένη παρακολούθηση
|
|
||||||
reserved_username: Το όνομα χρήστη είναι κατειλημμένο
|
reserved_username: Το όνομα χρήστη είναι κατειλημμένο
|
||||||
roles:
|
roles:
|
||||||
admin: Διαχειριστής
|
admin: Διαχειριστής
|
||||||
@ -536,7 +535,6 @@ el:
|
|||||||
unlocked_warning_title: Ο λογαριασμός σου δεν είναι κλειδωμένος
|
unlocked_warning_title: Ο λογαριασμός σου δεν είναι κλειδωμένος
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Οι αλλαγές αποθηκεύτηκαν!
|
changes_saved_msg: Οι αλλαγές αποθηκεύτηκαν!
|
||||||
powered_by: παρέχεται από %{link}
|
|
||||||
save_changes: Αποθήκευσε αλλαγές
|
save_changes: Αποθήκευσε αλλαγές
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Κάτι δεν είναι εντάξει ακόμα! Για κοίταξε το παρακάτω σφάλμα
|
one: Κάτι δεν είναι εντάξει ακόμα! Για κοίταξε το παρακάτω σφάλμα
|
||||||
@ -572,8 +570,6 @@ el:
|
|||||||
expires_at: Λήγει
|
expires_at: Λήγει
|
||||||
uses: Χρήσεις
|
uses: Χρήσεις
|
||||||
title: Προσκάλεσε άτομα
|
title: Προσκάλεσε άτομα
|
||||||
landing_strip_html: Ο/Η <strong>%{name}</strong> είναι χρήστης στο %{link_to_root_path}. Μπορείς να ακολουθήσεις ή να αλληλεπιδράσεις μαζί τους αν έχεις λογαριασμό οπουδήποτε στο fediverse.
|
|
||||||
landing_strip_signup_html: Αν όχι, μπορείς να <a href="%{sign_up_path}">γραφτείς εδώ</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Έχεις φτάσει το μέγιστο πλήθος επιτρεπτών λιστών
|
limit: Έχεις φτάσει το μέγιστο πλήθος επιτρεπτών λιστών
|
||||||
@ -741,7 +737,6 @@ el:
|
|||||||
unlisted: Ακαταχώριστο
|
unlisted: Ακαταχώριστο
|
||||||
unlisted_long: Βλέπει οποιοσδήποτε, αλλά δεν καταχωρείται στις δημόσιες ροές
|
unlisted_long: Βλέπει οποιοσδήποτε, αλλά δεν καταχωρείται στις δημόσιες ροές
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Κλικ για εμφάνιση
|
|
||||||
pinned: Καρφιτσωμένο τουτ
|
pinned: Καρφιτσωμένο τουτ
|
||||||
reblogged: προωθημένο
|
reblogged: προωθημένο
|
||||||
sensitive_content: Ευαίσθητο περιεχόμενο
|
sensitive_content: Ευαίσθητο περιεχόμενο
|
||||||
|
@ -5,11 +5,13 @@ en:
|
|||||||
about_mastodon_html: Mastodon is a social network based on open web protocols and free, open-source software. It is decentralized like e-mail.
|
about_mastodon_html: Mastodon is a social network based on open web protocols and free, open-source software. It is decentralized like e-mail.
|
||||||
about_this: About
|
about_this: About
|
||||||
administered_by: 'Administered by:'
|
administered_by: 'Administered by:'
|
||||||
|
api: API
|
||||||
closed_registrations: Registrations are currently closed on this instance. However! You can find a different instance to make an account on and get access to the very same network from there.
|
closed_registrations: Registrations are currently closed on this instance. However! You can find a different instance to make an account on and get access to the very same network from there.
|
||||||
contact: Contact
|
contact: Contact
|
||||||
contact_missing: Not set
|
contact_missing: Not set
|
||||||
contact_unavailable: N/A
|
contact_unavailable: N/A
|
||||||
description_headline: What is %{domain}?
|
description_headline: What is %{domain}?
|
||||||
|
documentation: Documentation
|
||||||
domain_count_after: other instances
|
domain_count_after: other instances
|
||||||
domain_count_before: Connected to
|
domain_count_before: Connected to
|
||||||
extended_description_html: |
|
extended_description_html: |
|
||||||
@ -28,9 +30,11 @@ en:
|
|||||||
hosted_on: Mastodon hosted on %{domain}
|
hosted_on: Mastodon hosted on %{domain}
|
||||||
learn_more: Learn more
|
learn_more: Learn more
|
||||||
other_instances: Instance list
|
other_instances: Instance list
|
||||||
|
privacy_policy: Privacy policy
|
||||||
source_code: Source code
|
source_code: Source code
|
||||||
status_count_after: statuses
|
status_count_after: statuses
|
||||||
status_count_before: Who authored
|
status_count_before: Who authored
|
||||||
|
terms: Terms of service
|
||||||
user_count_after: users
|
user_count_after: users
|
||||||
user_count_before: Home to
|
user_count_before: Home to
|
||||||
what_is_mastodon: What is Mastodon?
|
what_is_mastodon: What is Mastodon?
|
||||||
@ -38,6 +42,7 @@ en:
|
|||||||
follow: Follow
|
follow: Follow
|
||||||
followers: Followers
|
followers: Followers
|
||||||
following: Following
|
following: Following
|
||||||
|
joined: Joined %{date}
|
||||||
media: Media
|
media: Media
|
||||||
moved_html: "%{name} has moved to %{new_profile_link}:"
|
moved_html: "%{name} has moved to %{new_profile_link}:"
|
||||||
network_hidden: This information is not available
|
network_hidden: This information is not available
|
||||||
@ -46,7 +51,6 @@ en:
|
|||||||
people_who_follow: People who follow %{name}
|
people_who_follow: People who follow %{name}
|
||||||
posts: Toots
|
posts: Toots
|
||||||
posts_with_replies: Toots and replies
|
posts_with_replies: Toots and replies
|
||||||
remote_follow: Remote follow
|
|
||||||
reserved_username: The username is reserved
|
reserved_username: The username is reserved
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -534,9 +538,12 @@ en:
|
|||||||
true_privacy_html: Please mind that <strong>true privacy can only be achieved with end-to-end encryption</strong>.
|
true_privacy_html: Please mind that <strong>true privacy can only be achieved with end-to-end encryption</strong>.
|
||||||
unlocked_warning_html: Anyone can follow you to immediately view your private statuses. %{lock_link} to be able to review and reject followers.
|
unlocked_warning_html: Anyone can follow you to immediately view your private statuses. %{lock_link} to be able to review and reject followers.
|
||||||
unlocked_warning_title: Your account is not locked
|
unlocked_warning_title: Your account is not locked
|
||||||
|
footer:
|
||||||
|
developers: Developers
|
||||||
|
more: More…
|
||||||
|
resources: Resources
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Changes successfully saved!
|
changes_saved_msg: Changes successfully saved!
|
||||||
powered_by: powered by %{link}
|
|
||||||
save_changes: Save changes
|
save_changes: Save changes
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Something isn't quite right yet! Please review the error below
|
one: Something isn't quite right yet! Please review the error below
|
||||||
@ -572,8 +579,6 @@ en:
|
|||||||
expires_at: Expires
|
expires_at: Expires
|
||||||
uses: Uses
|
uses: Uses
|
||||||
title: Invite people
|
title: Invite people
|
||||||
landing_strip_html: "<strong>%{name}</strong> is a user on %{link_to_root_path}. You can follow them or interact with them if you have an account anywhere in the fediverse."
|
|
||||||
landing_strip_signup_html: If you don't, you can <a href="%{sign_up_path}">sign up here</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: You have reached the maximum amount of lists
|
limit: You have reached the maximum amount of lists
|
||||||
@ -742,7 +747,6 @@ en:
|
|||||||
unlisted: Unlisted
|
unlisted: Unlisted
|
||||||
unlisted_long: Everyone can see, but not listed on public timelines
|
unlisted_long: Everyone can see, but not listed on public timelines
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Click to show
|
|
||||||
pinned: Pinned toot
|
pinned: Pinned toot
|
||||||
reblogged: boosted
|
reblogged: boosted
|
||||||
sensitive_content: Sensitive content
|
sensitive_content: Sensitive content
|
||||||
@ -836,6 +840,7 @@ en:
|
|||||||
time:
|
time:
|
||||||
formats:
|
formats:
|
||||||
default: "%b %d, %Y, %H:%M"
|
default: "%b %d, %Y, %H:%M"
|
||||||
|
month: "%b %Y"
|
||||||
two_factor_authentication:
|
two_factor_authentication:
|
||||||
code_hint: Enter the code generated by your authenticator app to confirm
|
code_hint: Enter the code generated by your authenticator app to confirm
|
||||||
description_html: If you enable <strong>two-factor authentication</strong>, logging in will require you to be in possession of your phone, which will generate tokens for you to enter.
|
description_html: If you enable <strong>two-factor authentication</strong>, logging in will require you to be in possession of your phone, which will generate tokens for you to enter.
|
||||||
|
@ -46,7 +46,6 @@ eo:
|
|||||||
people_who_follow: Sekvantoj de %{name}
|
people_who_follow: Sekvantoj de %{name}
|
||||||
posts: Mesaĝoj
|
posts: Mesaĝoj
|
||||||
posts_with_replies: Mesaĝoj kaj respondoj
|
posts_with_replies: Mesaĝoj kaj respondoj
|
||||||
remote_follow: Fore sekvi
|
|
||||||
reserved_username: La uzantnomo estas rezervita
|
reserved_username: La uzantnomo estas rezervita
|
||||||
roles:
|
roles:
|
||||||
admin: Administranto
|
admin: Administranto
|
||||||
@ -517,7 +516,6 @@ eo:
|
|||||||
unlocked_warning_title: Via konto ne estas ŝlosita
|
unlocked_warning_title: Via konto ne estas ŝlosita
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Ŝanĝoj sukcese konservitaj!
|
changes_saved_msg: Ŝanĝoj sukcese konservitaj!
|
||||||
powered_by: povigita de %{link}
|
|
||||||
save_changes: Konservi ŝanĝojn
|
save_changes: Konservi ŝanĝojn
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Io mise okazis! Bonvolu konsulti la suban erar-raporton
|
one: Io mise okazis! Bonvolu konsulti la suban erar-raporton
|
||||||
@ -553,8 +551,6 @@ eo:
|
|||||||
expires_at: Eksvalidiĝas je
|
expires_at: Eksvalidiĝas je
|
||||||
uses: Uzoj
|
uses: Uzoj
|
||||||
title: Inviti homojn
|
title: Inviti homojn
|
||||||
landing_strip_html: "<strong>%{name}</strong> estas uzanto en %{link_to_root_path}. Vi povas sekvi tiun aŭ interagi kun tiu, se vi havas konton ie ajn en la fediverse."
|
|
||||||
landing_strip_signup_html: Se vi ne havas, vi povas <a href="%{sign_up_path}">registriĝi ĉi tie</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Vi atingis la maksimuman kvanton de listoj
|
limit: Vi atingis la maksimuman kvanton de listoj
|
||||||
@ -723,7 +719,6 @@ eo:
|
|||||||
unlisted: Nelistigita
|
unlisted: Nelistigita
|
||||||
unlisted_long: Ĉiuj povas vidi, sed nelistigita en publikaj tempolinioj
|
unlisted_long: Ĉiuj povas vidi, sed nelistigita en publikaj tempolinioj
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Alklaki por montri
|
|
||||||
pinned: Alpinglita
|
pinned: Alpinglita
|
||||||
reblogged: diskonigita
|
reblogged: diskonigita
|
||||||
sensitive_content: Tikla enhavo
|
sensitive_content: Tikla enhavo
|
||||||
|
@ -45,7 +45,6 @@ es:
|
|||||||
people_who_follow: Usuarios que siguen a %{name}
|
people_who_follow: Usuarios que siguen a %{name}
|
||||||
posts: Toots
|
posts: Toots
|
||||||
posts_with_replies: Toots con respuestas
|
posts_with_replies: Toots con respuestas
|
||||||
remote_follow: Seguir
|
|
||||||
reserved_username: El nombre de usuario está reservado
|
reserved_username: El nombre de usuario está reservado
|
||||||
roles:
|
roles:
|
||||||
admin: Administrador
|
admin: Administrador
|
||||||
@ -486,7 +485,6 @@ es:
|
|||||||
unlocked_warning_title: Tu cuenta no está bloqueada
|
unlocked_warning_title: Tu cuenta no está bloqueada
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: "¡Cambios guardados con éxito!"
|
changes_saved_msg: "¡Cambios guardados con éxito!"
|
||||||
powered_by: gracias a %{link}
|
|
||||||
save_changes: Guardar cambios
|
save_changes: Guardar cambios
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: "¡Algo no está bien! Por favor, revisa el error"
|
one: "¡Algo no está bien! Por favor, revisa el error"
|
||||||
@ -521,8 +519,6 @@ es:
|
|||||||
expires_at: Expira
|
expires_at: Expira
|
||||||
uses: Usos
|
uses: Usos
|
||||||
title: Invitar a gente
|
title: Invitar a gente
|
||||||
landing_strip_html: "<strong>%{name}</strong> es un usuario en %{link_to_root_path}. Puedes seguirlo(a) o interactuar con el o ella si tienes una cuenta en cualquier parte del fediverse."
|
|
||||||
landing_strip_signup_html: Si no tienes una, puedes <a href="%{sign_up_path}">registrarte aquí</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Has alcanzado la cantidad máxima de listas
|
limit: Has alcanzado la cantidad máxima de listas
|
||||||
@ -688,7 +684,6 @@ es:
|
|||||||
unlisted: Público, pero no mostrar en la historia federada
|
unlisted: Público, pero no mostrar en la historia federada
|
||||||
unlisted_long: Todos pueden ver, pero no está listado en las líneas de tiempo públicas
|
unlisted_long: Todos pueden ver, pero no está listado en las líneas de tiempo públicas
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Click para mostrar
|
|
||||||
pinned: Toot fijado
|
pinned: Toot fijado
|
||||||
reblogged: retooteado
|
reblogged: retooteado
|
||||||
sensitive_content: Contenido sensible
|
sensitive_content: Contenido sensible
|
||||||
|
@ -46,7 +46,6 @@ eu:
|
|||||||
people_who_follow: "%{name} jarraitzen dutenak"
|
people_who_follow: "%{name} jarraitzen dutenak"
|
||||||
posts: Toot-ak
|
posts: Toot-ak
|
||||||
posts_with_replies: Toot eta erantzunak
|
posts_with_replies: Toot eta erantzunak
|
||||||
remote_follow: Jarraitu urrunetik
|
|
||||||
reserved_username: Erabiltzaile-izena erreserbatuta dago
|
reserved_username: Erabiltzaile-izena erreserbatuta dago
|
||||||
roles:
|
roles:
|
||||||
admin: Administratzailea
|
admin: Administratzailea
|
||||||
@ -488,7 +487,6 @@ eu:
|
|||||||
unlocked_warning_title: Zure kontua ez dago giltzapetuta
|
unlocked_warning_title: Zure kontua ez dago giltzapetuta
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Aldaketak ongi gorde dira!
|
changes_saved_msg: Aldaketak ongi gorde dira!
|
||||||
powered_by: "(e)k %{link} darabil"
|
|
||||||
save_changes: Gorde aldaketak
|
save_changes: Gorde aldaketak
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Zerbait ez dabil ongi! Egiaztatu beheko errorea mesedez
|
one: Zerbait ez dabil ongi! Egiaztatu beheko errorea mesedez
|
||||||
@ -524,8 +522,6 @@ eu:
|
|||||||
expires_at: Iraungitzea
|
expires_at: Iraungitzea
|
||||||
uses: Erabilerak
|
uses: Erabilerak
|
||||||
title: Gonbidatu jendea
|
title: Gonbidatu jendea
|
||||||
landing_strip_html: "<strong>%{name}</strong> %{link_to_root_path} instantziako erabiltzailea da. Fedibertsoko edozein tokitan kontua baduzu jarraitu dezakezu eta harremanetan jarri."
|
|
||||||
landing_strip_signup_html: Ez baduzu, <a href="%{sign_up_path}">hemen izena eman</a> dezakezu.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Gehieneko zerrenda kopurura heldu zara
|
limit: Gehieneko zerrenda kopurura heldu zara
|
||||||
@ -693,7 +689,6 @@ eu:
|
|||||||
unlisted: Zerrendatu gabea
|
unlisted: Zerrendatu gabea
|
||||||
unlisted_long: Edonork ikusi dezake, baina ez da denbora-lerro publikoetan agertzen
|
unlisted_long: Edonork ikusi dezake, baina ez da denbora-lerro publikoetan agertzen
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klik erakusteko
|
|
||||||
pinned: Finkatutako toot-a
|
pinned: Finkatutako toot-a
|
||||||
reblogged: "(r)en bultzada"
|
reblogged: "(r)en bultzada"
|
||||||
sensitive_content: Eduki hunkigarria
|
sensitive_content: Eduki hunkigarria
|
||||||
|
@ -46,7 +46,6 @@ fa:
|
|||||||
people_who_follow: کسانی که %{name} را پی میگیرند
|
people_who_follow: کسانی که %{name} را پی میگیرند
|
||||||
posts: نوشتهها
|
posts: نوشتهها
|
||||||
posts_with_replies: نوشتهها و پاسخها
|
posts_with_replies: نوشتهها و پاسخها
|
||||||
remote_follow: پیگیری غیرمستقیم
|
|
||||||
reserved_username: این نام کاربری در دسترس نیست
|
reserved_username: این نام کاربری در دسترس نیست
|
||||||
roles:
|
roles:
|
||||||
admin: مدیر
|
admin: مدیر
|
||||||
@ -536,7 +535,6 @@ fa:
|
|||||||
unlocked_warning_title: حساب شما خصوصی نیست
|
unlocked_warning_title: حساب شما خصوصی نیست
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: تغییرات با موفقیت ذخیره شدند!
|
changes_saved_msg: تغییرات با موفقیت ذخیره شدند!
|
||||||
powered_by: نیرو گرفته از %{link}
|
|
||||||
save_changes: ذخیرهٔ تغییرات
|
save_changes: ذخیرهٔ تغییرات
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: یک چیزی هنوز درست نیست! لطفاً خطاهای زیر را ببینید
|
one: یک چیزی هنوز درست نیست! لطفاً خطاهای زیر را ببینید
|
||||||
@ -572,8 +570,6 @@ fa:
|
|||||||
expires_at: تاریخ انقضا
|
expires_at: تاریخ انقضا
|
||||||
uses: استفادهها
|
uses: استفادهها
|
||||||
title: دعوت دیگران
|
title: دعوت دیگران
|
||||||
landing_strip_html: "<strong>%{name}</strong> کاربری روی %{link_to_root_path} است. شما با داشتن حساب روی هر سروری میتوانید نوشتههای او را پیگیری کرده یا با او ارتباط داشته باشید."
|
|
||||||
landing_strip_signup_html: اگر هنوز حسابی ندارید <a href="%{sign_up_path}">اینجا حساب باز کنید</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: از این بیشتر نمیشود فهرست داشت
|
limit: از این بیشتر نمیشود فهرست داشت
|
||||||
@ -742,7 +738,6 @@ fa:
|
|||||||
unlisted: فهرستنشده
|
unlisted: فهرستنشده
|
||||||
unlisted_long: عمومی، ولی در فهرست نوشتهها نمایش نمییابد
|
unlisted_long: عمومی، ولی در فهرست نوشتهها نمایش نمییابد
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: برای نمایش کلیک کنید
|
|
||||||
pinned: نوشتههای ثابت
|
pinned: نوشتههای ثابت
|
||||||
reblogged: بازبوقید
|
reblogged: بازبوقید
|
||||||
sensitive_content: محتوای حساس
|
sensitive_content: محتوای حساس
|
||||||
|
@ -46,7 +46,6 @@ fi:
|
|||||||
people_who_follow: Käyttäjän %{name} seuraajat
|
people_who_follow: Käyttäjän %{name} seuraajat
|
||||||
posts: Tuuttaukset
|
posts: Tuuttaukset
|
||||||
posts_with_replies: Tuuttaukset ja vastaukset
|
posts_with_replies: Tuuttaukset ja vastaukset
|
||||||
remote_follow: Etäseuranta
|
|
||||||
reserved_username: Käyttäjänimi on varattu
|
reserved_username: Käyttäjänimi on varattu
|
||||||
roles:
|
roles:
|
||||||
admin: Ylläpitäjä
|
admin: Ylläpitäjä
|
||||||
@ -484,7 +483,6 @@ fi:
|
|||||||
unlocked_warning_title: Tiliäsi ei ole lukittu
|
unlocked_warning_title: Tiliäsi ei ole lukittu
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Muutosten tallennus onnistui!
|
changes_saved_msg: Muutosten tallennus onnistui!
|
||||||
powered_by: voimanlähteenä %{link}
|
|
||||||
save_changes: Tallenna muutokset
|
save_changes: Tallenna muutokset
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Kaikki ei ole aivan oikein! Tarkasta alla oleva virhe
|
one: Kaikki ei ole aivan oikein! Tarkasta alla oleva virhe
|
||||||
@ -519,8 +517,6 @@ fi:
|
|||||||
expires_at: Vanhenee
|
expires_at: Vanhenee
|
||||||
uses: Käytetty
|
uses: Käytetty
|
||||||
title: Kutsu ihmisiä
|
title: Kutsu ihmisiä
|
||||||
landing_strip_html: "<strong>%{name}</strong> on käyttäjänä palvelimella %{link_to_root_path}. Voit seurata heitä tai pitää heihin yhteyttä, jos sinulla on tili missä tahansa fediversumin kolkassa."
|
|
||||||
landing_strip_signup_html: Jos sinulla ei ole tiliä, voit <a href="%{sign_up_path}">rekisteröityä tätä kautta</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Sinulla on jo suurin sallittu määrä listoja
|
limit: Sinulla on jo suurin sallittu määrä listoja
|
||||||
@ -684,7 +680,6 @@ fi:
|
|||||||
unlisted: Listaamaton julkinen
|
unlisted: Listaamaton julkinen
|
||||||
unlisted_long: Kaikki voivat nähdä, mutta ei näytetä julkisilla aikajanoilla
|
unlisted_long: Kaikki voivat nähdä, mutta ei näytetä julkisilla aikajanoilla
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Katso napsauttamalla
|
|
||||||
pinned: Kiinnitetty tuuttaus
|
pinned: Kiinnitetty tuuttaus
|
||||||
reblogged: buustasi
|
reblogged: buustasi
|
||||||
sensitive_content: Arkaluontoista sisältöä
|
sensitive_content: Arkaluontoista sisältöä
|
||||||
|
@ -46,7 +46,6 @@ fr:
|
|||||||
people_who_follow: Personnes qui suivent %{name}
|
people_who_follow: Personnes qui suivent %{name}
|
||||||
posts: Statuts
|
posts: Statuts
|
||||||
posts_with_replies: Statuts & réponses
|
posts_with_replies: Statuts & réponses
|
||||||
remote_follow: Suivre à distance
|
|
||||||
reserved_username: Ce nom d’utilisateur⋅ice est réservé
|
reserved_username: Ce nom d’utilisateur⋅ice est réservé
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -488,7 +487,6 @@ fr:
|
|||||||
unlocked_warning_title: Votre compte n’est pas privé
|
unlocked_warning_title: Votre compte n’est pas privé
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Les modifications ont été enregistrées avec succès !
|
changes_saved_msg: Les modifications ont été enregistrées avec succès !
|
||||||
powered_by: propulsé par %{link}
|
|
||||||
save_changes: Enregistrer les modifications
|
save_changes: Enregistrer les modifications
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Quelque chose ne va pas ! Vérifiez l’erreur ci-dessous
|
one: Quelque chose ne va pas ! Vérifiez l’erreur ci-dessous
|
||||||
@ -523,8 +521,6 @@ fr:
|
|||||||
expires_at: Expire
|
expires_at: Expire
|
||||||
uses: Utilise
|
uses: Utilise
|
||||||
title: Inviter des gens
|
title: Inviter des gens
|
||||||
landing_strip_html: <strong>%{name}</strong> utilise %{link_to_root_path}. Vous pouvez læ suivre et interagir si vous possédez un compte quelque part dans le "fediverse".
|
|
||||||
landing_strip_signup_html: Si ce n’est pas le cas, vous pouvez <a href="%{sign_up_path}">en créer un ici</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Vous avez atteint le nombre maximum de listes
|
limit: Vous avez atteint le nombre maximum de listes
|
||||||
@ -691,7 +687,6 @@ fr:
|
|||||||
unlisted: Public sans être affiché sur le fil public
|
unlisted: Public sans être affiché sur le fil public
|
||||||
unlisted_long: Tout le monde peut voir vos statuts mais ils ne seront pas sur listés sur les fils publics
|
unlisted_long: Tout le monde peut voir vos statuts mais ils ne seront pas sur listés sur les fils publics
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Cliquer pour afficher
|
|
||||||
pinned: Pouet épinglé
|
pinned: Pouet épinglé
|
||||||
reblogged: a partagé
|
reblogged: a partagé
|
||||||
sensitive_content: Contenu sensible
|
sensitive_content: Contenu sensible
|
||||||
|
@ -46,7 +46,6 @@ gl:
|
|||||||
people_who_follow: Personas que seguen a %{name}
|
people_who_follow: Personas que seguen a %{name}
|
||||||
posts: Mensaxes
|
posts: Mensaxes
|
||||||
posts_with_replies: Toots e respostas
|
posts_with_replies: Toots e respostas
|
||||||
remote_follow: Seguimento remoto
|
|
||||||
reserved_username: O nome de usuaria está reservado
|
reserved_username: O nome de usuaria está reservado
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -535,7 +534,6 @@ gl:
|
|||||||
unlocked_warning_title: A súa conta non está pechada
|
unlocked_warning_title: A súa conta non está pechada
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Cambios gardados correctamente!!
|
changes_saved_msg: Cambios gardados correctamente!!
|
||||||
powered_by: grazas a %{link}
|
|
||||||
save_changes: Gardar cambios
|
save_changes: Gardar cambios
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Algo non está ben de todo! Por favor revise abaixo o erro
|
one: Algo non está ben de todo! Por favor revise abaixo o erro
|
||||||
@ -571,8 +569,6 @@ gl:
|
|||||||
expires_at: Caduca
|
expires_at: Caduca
|
||||||
uses: Usos
|
uses: Usos
|
||||||
title: Convidar xente
|
title: Convidar xente
|
||||||
landing_strip_html: "<strong>%{name}</strong> é unha usuaria en %{link_to_root_path}. Pode seguila ou interactuar con ela si ten unha conta en algún lugar do fediverso."
|
|
||||||
landing_strip_signup_html: Si non, pode <a href="%{sign_up_path}">rexistrarse aquí</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Acadou o número máximo de listas
|
limit: Acadou o número máximo de listas
|
||||||
@ -741,7 +737,6 @@ gl:
|
|||||||
unlisted: Non listado
|
unlisted: Non listado
|
||||||
unlisted_long: Visible para calquera, pero non listado en liñas de tempo públicas
|
unlisted_long: Visible para calquera, pero non listado en liñas de tempo públicas
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Pulse para mostrar
|
|
||||||
pinned: Mensaxe fixada
|
pinned: Mensaxe fixada
|
||||||
reblogged: promovida
|
reblogged: promovida
|
||||||
sensitive_content: Contido sensible
|
sensitive_content: Contido sensible
|
||||||
|
@ -44,7 +44,6 @@ he:
|
|||||||
people_who_follow: העוקבים של %{name}
|
people_who_follow: העוקבים של %{name}
|
||||||
posts: הודעות
|
posts: הודעות
|
||||||
posts_with_replies: חצרוצים ותגובות
|
posts_with_replies: חצרוצים ותגובות
|
||||||
remote_follow: מעקב מרחוק
|
|
||||||
reserved_username: שם המשתמש שמור
|
reserved_username: שם המשתמש שמור
|
||||||
roles:
|
roles:
|
||||||
admin: מנהל
|
admin: מנהל
|
||||||
@ -286,7 +285,6 @@ he:
|
|||||||
unlocked_warning_title: חשבונך אינו נעול
|
unlocked_warning_title: חשבונך אינו נעול
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: השינויים נשמרו בהצלחה!
|
changes_saved_msg: השינויים נשמרו בהצלחה!
|
||||||
powered_by: רץ על %{link}
|
|
||||||
save_changes: שמור שינויים
|
save_changes: שמור שינויים
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: משהו לא לגמרי בסדר עדיין! אנא הציצו על השגיאה מטה
|
one: משהו לא לגמרי בסדר עדיין! אנא הציצו על השגיאה מטה
|
||||||
@ -299,8 +297,6 @@ he:
|
|||||||
following: רשימת נעקבים
|
following: רשימת נעקבים
|
||||||
muting: רשימת השתקות
|
muting: רשימת השתקות
|
||||||
upload: יבוא
|
upload: יבוא
|
||||||
landing_strip_html: "<strong>%{name}</strong> מזהה משתמש(ת) מהקהילה %{link_to_root_path}. ניתן לעקוב אחריהם או לדבר איתם בעזרת חשבון על כל שרת קהילה ברחבי הפדרציה."
|
|
||||||
landing_strip_signup_html: לחלופין , ניתן <a href="%{sign_up_path}">להרשם מקומית כאן</a>.
|
|
||||||
media_attachments:
|
media_attachments:
|
||||||
validations:
|
validations:
|
||||||
images_and_video: לא ניתן להוסיף וידאו לחצרוץ שכבר מכיל תמונות
|
images_and_video: לא ניתן להוסיף וידאו לחצרוץ שכבר מכיל תמונות
|
||||||
@ -372,7 +368,6 @@ he:
|
|||||||
unlisted: מוסתר
|
unlisted: מוסתר
|
||||||
unlisted_long: פומבי, אבל לא להצגה בפיד הציבורי
|
unlisted_long: פומבי, אבל לא להצגה בפיד הציבורי
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: ללחוץ להצגה
|
|
||||||
reblogged: הודהד
|
reblogged: הודהד
|
||||||
sensitive_content: תוכן רגיש
|
sensitive_content: תוכן רגיש
|
||||||
time:
|
time:
|
||||||
|
@ -22,7 +22,6 @@ hr:
|
|||||||
people_followed_by: Ljudi koje %{name} slijedi
|
people_followed_by: Ljudi koje %{name} slijedi
|
||||||
people_who_follow: Ljudi koji slijede %{name}
|
people_who_follow: Ljudi koji slijede %{name}
|
||||||
posts: Postovi
|
posts: Postovi
|
||||||
remote_follow: Remote follow
|
|
||||||
unfollow: Prestani slijediti
|
unfollow: Prestani slijediti
|
||||||
application_mailer:
|
application_mailer:
|
||||||
settings: 'Promijeni e-mail postavke: %{link}'
|
settings: 'Promijeni e-mail postavke: %{link}'
|
||||||
@ -64,7 +63,6 @@ hr:
|
|||||||
storage: Pohrana media zapisa
|
storage: Pohrana media zapisa
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Izmjene su uspješno sačuvane!
|
changes_saved_msg: Izmjene su uspješno sačuvane!
|
||||||
powered_by: omogućuje %{link}
|
|
||||||
save_changes: Sačuvaj izmjene
|
save_changes: Sačuvaj izmjene
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Nešto ne štima! Vidi grešku ispod
|
one: Nešto ne štima! Vidi grešku ispod
|
||||||
@ -77,8 +75,6 @@ hr:
|
|||||||
following: Lista onih koje slijedim
|
following: Lista onih koje slijedim
|
||||||
muting: Lista utišanih
|
muting: Lista utišanih
|
||||||
upload: Upload
|
upload: Upload
|
||||||
landing_strip_html: "<strong>%{name}</strong> je korisnik na %{link_to_root_path}. Možeš ih slijediti ili komunicirati s njima ako imaš račun igdje u fediversu."
|
|
||||||
landing_strip_signup_html: Ako nemaš, možeš se <a href="%{sign_up_path}">registrirati ovdje</a>.
|
|
||||||
notification_mailer:
|
notification_mailer:
|
||||||
digest:
|
digest:
|
||||||
body: 'Ovo je kratak sažetak propuštenog %{instance} od tvog prošlog posjeta %{since}:'
|
body: 'Ovo je kratak sažetak propuštenog %{instance} od tvog prošlog posjeta %{since}:'
|
||||||
@ -141,7 +137,6 @@ hr:
|
|||||||
public: Javno
|
public: Javno
|
||||||
unlisted: Javno, no nemoj prikazati na javnom timelineu
|
unlisted: Javno, no nemoj prikazati na javnom timelineu
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klikni da bi prikazao
|
|
||||||
reblogged: potaknut
|
reblogged: potaknut
|
||||||
sensitive_content: Osjetljivi sadržaj
|
sensitive_content: Osjetljivi sadržaj
|
||||||
time:
|
time:
|
||||||
|
@ -44,7 +44,6 @@ hu:
|
|||||||
people_who_follow: "%{name} követői"
|
people_who_follow: "%{name} követői"
|
||||||
posts: Tülkök
|
posts: Tülkök
|
||||||
posts_with_replies: Tülkök és válaszok
|
posts_with_replies: Tülkök és válaszok
|
||||||
remote_follow: Követés más hálózaton
|
|
||||||
reserved_username: Ez egy már lefoglalt felhasználónév
|
reserved_username: Ez egy már lefoglalt felhasználónév
|
||||||
roles:
|
roles:
|
||||||
admin: Adminisztrátor
|
admin: Adminisztrátor
|
||||||
@ -427,7 +426,6 @@ hu:
|
|||||||
unlocked_warning_title: A fiókod jelenleg nem privát
|
unlocked_warning_title: A fiókod jelenleg nem privát
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Változások sikeresen elmentve!
|
changes_saved_msg: Változások sikeresen elmentve!
|
||||||
powered_by: működteti a %{link}
|
|
||||||
save_changes: Változások mentése
|
save_changes: Változások mentése
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Valami nincs rendjén! Kérlek tekintsd meg a hibát alant
|
one: Valami nincs rendjén! Kérlek tekintsd meg a hibát alant
|
||||||
@ -461,8 +459,6 @@ hu:
|
|||||||
expires_at: Lejárat
|
expires_at: Lejárat
|
||||||
uses: Használat
|
uses: Használat
|
||||||
title: Meghívások
|
title: Meghívások
|
||||||
landing_strip_html: "<strong>%{name}</strong> az alábbi instancia használója: %{link_to_root_path}. Követheted vagy kapcsolatba léphetsz vele, ha már van felhasználói fiókod a föderációban."
|
|
||||||
landing_strip_signup_html: Ha még nincs fiókod, <a href="%{sign_up_path}">itt regisztrálhatsz</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Elérted a hozzáadható listák maximális számát
|
limit: Elérted a hozzáadható listák maximális számát
|
||||||
@ -610,7 +606,6 @@ hu:
|
|||||||
unlisted: Listázatlan
|
unlisted: Listázatlan
|
||||||
unlisted_long: Mindenki látja, de a nyilvános időfolyamokban nem jelenik meg
|
unlisted_long: Mindenki látja, de a nyilvános időfolyamokban nem jelenik meg
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Megtekintéshez kattints
|
|
||||||
pinned: Kitűzött tülk
|
pinned: Kitűzött tülk
|
||||||
reblogged: reblogolt
|
reblogged: reblogolt
|
||||||
sensitive_content: Szenzitív tartalom
|
sensitive_content: Szenzitív tartalom
|
||||||
|
@ -22,7 +22,6 @@ id:
|
|||||||
people_followed_by: Orang yang diikuti %{name}
|
people_followed_by: Orang yang diikuti %{name}
|
||||||
people_who_follow: Orang-orang yang mengikuti %{name}
|
people_who_follow: Orang-orang yang mengikuti %{name}
|
||||||
posts: Postingan
|
posts: Postingan
|
||||||
remote_follow: Mengikuti
|
|
||||||
unfollow: Berhenti mengikuti
|
unfollow: Berhenti mengikuti
|
||||||
admin:
|
admin:
|
||||||
accounts:
|
accounts:
|
||||||
@ -213,7 +212,6 @@ id:
|
|||||||
unlocked_warning_title: Akun anda tidak dikunci
|
unlocked_warning_title: Akun anda tidak dikunci
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Perubahan berhasil disimpan!
|
changes_saved_msg: Perubahan berhasil disimpan!
|
||||||
powered_by: didukung oleh %{link}
|
|
||||||
save_changes: Simpan perubahan
|
save_changes: Simpan perubahan
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Ada yang tidak beres! Mohon tinjau error dibawah ini
|
one: Ada yang tidak beres! Mohon tinjau error dibawah ini
|
||||||
@ -226,8 +224,6 @@ id:
|
|||||||
following: Daftar diikuti
|
following: Daftar diikuti
|
||||||
muting: Daftar didiamkan
|
muting: Daftar didiamkan
|
||||||
upload: Unggah
|
upload: Unggah
|
||||||
landing_strip_html: "<strong>%{name}</strong> adalah pengguna di %{link_to_root_path}.Anda dapat mengikuti mereka atau berinteraksi dengan mereka jika anda memiliki akun di fediverse."
|
|
||||||
landing_strip_signup_html: Jika anda tidak punya, anda bisa <a href="%{sign_up_path}">daftar disini</a>.
|
|
||||||
media_attachments:
|
media_attachments:
|
||||||
validations:
|
validations:
|
||||||
images_and_video: Tidak bisa melampirkan video pada status yang telah memiliki gambar
|
images_and_video: Tidak bisa melampirkan video pada status yang telah memiliki gambar
|
||||||
@ -298,7 +294,6 @@ id:
|
|||||||
public_long: Bisa dilihat semua orang
|
public_long: Bisa dilihat semua orang
|
||||||
unlisted: Bisa dilihat semua orang, tapi tidak ditampilkan di linimasa publik
|
unlisted: Bisa dilihat semua orang, tapi tidak ditampilkan di linimasa publik
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klik untuk menampilkan
|
|
||||||
reblogged: di-boost-kan
|
reblogged: di-boost-kan
|
||||||
sensitive_content: Konten sensitif
|
sensitive_content: Konten sensitif
|
||||||
time:
|
time:
|
||||||
|
@ -22,7 +22,6 @@ io:
|
|||||||
people_followed_by: Sequati da %{name}
|
people_followed_by: Sequati da %{name}
|
||||||
people_who_follow: Sequanti di %{name}
|
people_who_follow: Sequanti di %{name}
|
||||||
posts: Mesaji
|
posts: Mesaji
|
||||||
remote_follow: Fore sequar
|
|
||||||
unfollow: Dessequar
|
unfollow: Dessequar
|
||||||
admin:
|
admin:
|
||||||
accounts:
|
accounts:
|
||||||
@ -192,7 +191,6 @@ io:
|
|||||||
storage: Konservado di kontenajo
|
storage: Konservado di kontenajo
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Chanji senprobleme konservita!
|
changes_saved_msg: Chanji senprobleme konservita!
|
||||||
powered_by: povigita da %{link}
|
|
||||||
save_changes: Konservar la chanji
|
save_changes: Konservar la chanji
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Ulo ne eventis senprobleme! Voluntez konsultar la suba eror-raporto.
|
one: Ulo ne eventis senprobleme! Voluntez konsultar la suba eror-raporto.
|
||||||
@ -205,8 +203,6 @@ io:
|
|||||||
following: Listo de sequati
|
following: Listo de sequati
|
||||||
muting: Muting list
|
muting: Muting list
|
||||||
upload: Kargar
|
upload: Kargar
|
||||||
landing_strip_html: "<strong>%{name}</strong> esas uzero en %{link_to_root_path}. Tu povas sequar lu o komunikar kun lu, se tu havas konto irgaloke en la Fediverse."
|
|
||||||
landing_strip_signup_html: Se tu ne havas, tu povas <a href="%{sign_up_path}">membreskar hike</a>.
|
|
||||||
media_attachments:
|
media_attachments:
|
||||||
validations:
|
validations:
|
||||||
images_and_video: Cannot attach a video to a status that already contains images
|
images_and_video: Cannot attach a video to a status that already contains images
|
||||||
@ -274,7 +270,6 @@ io:
|
|||||||
public: Publika
|
public: Publika
|
||||||
unlisted: Publika, ma ne aperos en publika tempolinei
|
unlisted: Publika, ma ne aperos en publika tempolinei
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Kliktar por montrar
|
|
||||||
reblogged: diskonocigita
|
reblogged: diskonocigita
|
||||||
sensitive_content: Titiliva kontenajo
|
sensitive_content: Titiliva kontenajo
|
||||||
time:
|
time:
|
||||||
|
@ -46,7 +46,6 @@ it:
|
|||||||
people_who_follow: Persone che seguono %{name}
|
people_who_follow: Persone che seguono %{name}
|
||||||
posts: Posts
|
posts: Posts
|
||||||
posts_with_replies: Toot e risposte
|
posts_with_replies: Toot e risposte
|
||||||
remote_follow: Segui da remoto
|
|
||||||
reserved_username: Il nome utente è riservato
|
reserved_username: Il nome utente è riservato
|
||||||
roles:
|
roles:
|
||||||
admin: Amministratore
|
admin: Amministratore
|
||||||
@ -433,7 +432,6 @@ it:
|
|||||||
unlocked_warning_html: Chiunque può seguirti per vedere immediatamente i tuoi status privati. %{lock_link} per poter esaminare e respingere gli utenti che vogliono seguirti.
|
unlocked_warning_html: Chiunque può seguirti per vedere immediatamente i tuoi status privati. %{lock_link} per poter esaminare e respingere gli utenti che vogliono seguirti.
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Modifiche effettuate con successo!
|
changes_saved_msg: Modifiche effettuate con successo!
|
||||||
powered_by: offerto da %{link}
|
|
||||||
save_changes: Salva modifiche
|
save_changes: Salva modifiche
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Qualcosa ancora non va bene! Per favore, controlla l'errore qui sotto
|
one: Qualcosa ancora non va bene! Per favore, controlla l'errore qui sotto
|
||||||
@ -467,8 +465,6 @@ it:
|
|||||||
expires_at: Scade
|
expires_at: Scade
|
||||||
uses: Utilizzi
|
uses: Utilizzi
|
||||||
title: Invita persone
|
title: Invita persone
|
||||||
landing_strip_html: "<strong>%{name}</strong> è un utente su %{link_to_root_path}. Puoi seguirlo o interagire con lui se possiedi un account ovunque nel fediverse."
|
|
||||||
landing_strip_signup_html: Se non possiedi un account, puoi <a href="%{sign_up_path}">iscriverti qui</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Hai raggiunto il numero massimo di liste
|
limit: Hai raggiunto il numero massimo di liste
|
||||||
@ -605,7 +601,6 @@ it:
|
|||||||
unlisted: Pubblico, ma non visibile sulla timeline pubblica
|
unlisted: Pubblico, ma non visibile sulla timeline pubblica
|
||||||
unlisted_long: Tutti lo possono vedere, ma non compare nelle timeline pubbliche
|
unlisted_long: Tutti lo possono vedere, ma non compare nelle timeline pubbliche
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Clicca per mostrare
|
|
||||||
pinned: Toot fissato in cima
|
pinned: Toot fissato in cima
|
||||||
reblogged: condiviso
|
reblogged: condiviso
|
||||||
sensitive_content: Materiale sensibile
|
sensitive_content: Materiale sensibile
|
||||||
|
@ -46,7 +46,6 @@ ja:
|
|||||||
people_who_follow: "%{name} さんをフォロー中のアカウント"
|
people_who_follow: "%{name} さんをフォロー中のアカウント"
|
||||||
posts: トゥート
|
posts: トゥート
|
||||||
posts_with_replies: トゥートと返信
|
posts_with_replies: トゥートと返信
|
||||||
remote_follow: リモートフォロー
|
|
||||||
reserved_username: このユーザー名は予約されています
|
reserved_username: このユーザー名は予約されています
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -535,7 +534,6 @@ ja:
|
|||||||
unlocked_warning_title: このアカウントは承認制アカウントに設定されていません
|
unlocked_warning_title: このアカウントは承認制アカウントに設定されていません
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: 正常に変更されました!
|
changes_saved_msg: 正常に変更されました!
|
||||||
powered_by: powered by %{link}
|
|
||||||
save_changes: 変更を保存
|
save_changes: 変更を保存
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: エラーが発生しました! 以下のエラーを確認してください
|
one: エラーが発生しました! 以下のエラーを確認してください
|
||||||
@ -571,8 +569,6 @@ ja:
|
|||||||
expires_at: 有効期限
|
expires_at: 有効期限
|
||||||
uses: 使用
|
uses: 使用
|
||||||
title: 新規ユーザーの招待
|
title: 新規ユーザーの招待
|
||||||
landing_strip_html: "<strong>%{name}</strong> さんはインスタンス %{link_to_root_path} のユーザーです。アカウントさえ持っていればフォローしたり会話したりできます。"
|
|
||||||
landing_strip_signup_html: もしお持ちでないなら <a href="%{sign_up_path}">こちら</a> からサインアップできます。
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: リストの上限に達しました
|
limit: リストの上限に達しました
|
||||||
@ -741,7 +737,6 @@ ja:
|
|||||||
unlisted: 未収載
|
unlisted: 未収載
|
||||||
unlisted_long: 誰でも見ることができますが、公開タイムラインには表示されません
|
unlisted_long: 誰でも見ることができますが、公開タイムラインには表示されません
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: クリックして表示
|
|
||||||
pinned: 固定されたトゥート
|
pinned: 固定されたトゥート
|
||||||
reblogged: さんがブースト
|
reblogged: さんがブースト
|
||||||
sensitive_content: 閲覧注意
|
sensitive_content: 閲覧注意
|
||||||
|
@ -46,7 +46,6 @@ ko:
|
|||||||
people_who_follow: "%{name} 님을 팔로우 중인 계정"
|
people_who_follow: "%{name} 님을 팔로우 중인 계정"
|
||||||
posts: 툿
|
posts: 툿
|
||||||
posts_with_replies: 툿과 답장
|
posts_with_replies: 툿과 답장
|
||||||
remote_follow: 리모트 팔로우
|
|
||||||
reserved_username: 이 아이디는 예약되어 있습니다
|
reserved_username: 이 아이디는 예약되어 있습니다
|
||||||
roles:
|
roles:
|
||||||
admin: 관리자
|
admin: 관리자
|
||||||
@ -509,7 +508,6 @@ ko:
|
|||||||
unlocked_warning_title: 이 계정은 비공개로 설정되어 있지 않습니다
|
unlocked_warning_title: 이 계정은 비공개로 설정되어 있지 않습니다
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: 정상적으로 변경되었습니다!
|
changes_saved_msg: 정상적으로 변경되었습니다!
|
||||||
powered_by: "%{link}에 의해 제공"
|
|
||||||
save_changes: 변경 사항을 저장
|
save_changes: 변경 사항을 저장
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: 오류가 발생했습니다. 아래 오류를 확인해 주십시오
|
one: 오류가 발생했습니다. 아래 오류를 확인해 주십시오
|
||||||
@ -545,8 +543,6 @@ ko:
|
|||||||
expires_at: 만료
|
expires_at: 만료
|
||||||
uses: 사용됨
|
uses: 사용됨
|
||||||
title: 초대
|
title: 초대
|
||||||
landing_strip_html: "<strong>%{name}</strong> 님은 %{link_to_root_path} 인스턴스의 사용자입니다. 계정을 가지고 있다면 팔로우 하거나 대화할 수 있습니다."
|
|
||||||
landing_strip_signup_html: 아직 계정이 없다면 <a href="%{sign_up_path}">여기서</a> 등록할 수 있습니다.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: 리스트 최대치에 도달했습니다
|
limit: 리스트 최대치에 도달했습니다
|
||||||
@ -715,7 +711,6 @@ ko:
|
|||||||
unlisted: 공개 타임라인 비공개
|
unlisted: 공개 타임라인 비공개
|
||||||
unlisted_long: 누구나 볼 수 있지만, 공개 타임라인에는 표시되지 않습니다
|
unlisted_long: 누구나 볼 수 있지만, 공개 타임라인에는 표시되지 않습니다
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: 클릭해서 표시
|
|
||||||
pinned: 고정된 툿
|
pinned: 고정된 툿
|
||||||
reblogged: 님이 부스트 했습니다
|
reblogged: 님이 부스트 했습니다
|
||||||
sensitive_content: 민감한 컨텐츠
|
sensitive_content: 민감한 컨텐츠
|
||||||
|
@ -46,7 +46,6 @@ nl:
|
|||||||
people_who_follow: Mensen die %{name} volgen
|
people_who_follow: Mensen die %{name} volgen
|
||||||
posts: Toots
|
posts: Toots
|
||||||
posts_with_replies: Toots en reacties
|
posts_with_replies: Toots en reacties
|
||||||
remote_follow: Extern volgen
|
|
||||||
reserved_username: Deze gebruikersnaam is gereserveerd
|
reserved_username: Deze gebruikersnaam is gereserveerd
|
||||||
roles:
|
roles:
|
||||||
admin: Beheerder
|
admin: Beheerder
|
||||||
@ -536,7 +535,6 @@ nl:
|
|||||||
unlocked_warning_title: Jouw account is niet besloten
|
unlocked_warning_title: Jouw account is niet besloten
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Wijzigingen succesvol opgeslagen!
|
changes_saved_msg: Wijzigingen succesvol opgeslagen!
|
||||||
powered_by: wordt mogelijk gemaakt door %{link}
|
|
||||||
save_changes: Wijzigingen opslaan
|
save_changes: Wijzigingen opslaan
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Er is iets niet helemaal goed! Bekijk onderstaande fout
|
one: Er is iets niet helemaal goed! Bekijk onderstaande fout
|
||||||
@ -572,8 +570,6 @@ nl:
|
|||||||
expires_at: Verloopt op
|
expires_at: Verloopt op
|
||||||
uses: Aantal keer te gebruiken
|
uses: Aantal keer te gebruiken
|
||||||
title: Mensen uitnodigen
|
title: Mensen uitnodigen
|
||||||
landing_strip_html: "<strong>%{name}</strong> is een gebruiker op %{link_to_root_path}. Je kunt deze volgen en ermee communiceren als je op Mastodon (of ergens anders in de fediverse) een account hebt."
|
|
||||||
landing_strip_signup_html: Als je dat niet hebt, kun je je <a href="%{sign_up_path}">hier registreren</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Je hebt het maximaal aantal lijsten bereikt
|
limit: Je hebt het maximaal aantal lijsten bereikt
|
||||||
@ -742,7 +738,6 @@ nl:
|
|||||||
unlisted: Minder openbaar
|
unlisted: Minder openbaar
|
||||||
unlisted_long: Aan iedereen tonen, maar niet op openbare tijdlijnen
|
unlisted_long: Aan iedereen tonen, maar niet op openbare tijdlijnen
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klik om te tonen
|
|
||||||
pinned: Vastgemaakte toot
|
pinned: Vastgemaakte toot
|
||||||
reblogged: boostte
|
reblogged: boostte
|
||||||
sensitive_content: Gevoelige inhoud
|
sensitive_content: Gevoelige inhoud
|
||||||
|
@ -44,7 +44,6 @@
|
|||||||
people_who_follow: Folk som følger %{name}
|
people_who_follow: Folk som følger %{name}
|
||||||
posts: Poster
|
posts: Poster
|
||||||
posts_with_replies: Tuter med svar
|
posts_with_replies: Tuter med svar
|
||||||
remote_follow: Følg fra andre instanser
|
|
||||||
reserved_username: Brukernavnet er reservert
|
reserved_username: Brukernavnet er reservert
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -427,7 +426,6 @@
|
|||||||
unlocked_warning_title: Din konto er ikke låst
|
unlocked_warning_title: Din konto er ikke låst
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Vellykket lagring av endringer!
|
changes_saved_msg: Vellykket lagring av endringer!
|
||||||
powered_by: drevet av %{link}
|
|
||||||
save_changes: Lagre endringer
|
save_changes: Lagre endringer
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Noe er ikke helt riktig ennå. Vennligst se etter en gang til
|
one: Noe er ikke helt riktig ennå. Vennligst se etter en gang til
|
||||||
@ -461,8 +459,6 @@
|
|||||||
expires_at: Utløper
|
expires_at: Utløper
|
||||||
uses: Bruk
|
uses: Bruk
|
||||||
title: Inviter personer
|
title: Inviter personer
|
||||||
landing_strip_html: "<strong>%{name}</strong> er en bruker på %{link_to_root_path}. Du kan følge dem eller kommunisere med dem hvis du har en konto hvor som helst i fediverset."
|
|
||||||
landing_strip_signup_html: Hvis du ikke har en konto så kan du <a href="%{sign_up_path}">registrere deg her</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Du har nådd det maksimale antall lister
|
limit: Du har nådd det maksimale antall lister
|
||||||
@ -610,7 +606,6 @@
|
|||||||
unlisted: Uoppført
|
unlisted: Uoppført
|
||||||
unlisted_long: Synlig for alle, men ikke på offentlige tidslinjer
|
unlisted_long: Synlig for alle, men ikke på offentlige tidslinjer
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klikk for å vise
|
|
||||||
pinned: Festet tut
|
pinned: Festet tut
|
||||||
reblogged: fremhevde
|
reblogged: fremhevde
|
||||||
sensitive_content: Følsomt innhold
|
sensitive_content: Følsomt innhold
|
||||||
|
@ -46,7 +46,6 @@ oc:
|
|||||||
people_who_follow: Lo monde que sègon %{name}
|
people_who_follow: Lo monde que sègon %{name}
|
||||||
posts: Tuts
|
posts: Tuts
|
||||||
posts_with_replies: Tuts e responsas
|
posts_with_replies: Tuts e responsas
|
||||||
remote_follow: Sègre a distància
|
|
||||||
reserved_username: Aqueste nom d’utilizaire es reservat
|
reserved_username: Aqueste nom d’utilizaire es reservat
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -593,7 +592,6 @@ oc:
|
|||||||
unlocked_warning_title: Vòstre compte es pas clavat
|
unlocked_warning_title: Vòstre compte es pas clavat
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Cambiaments ben realizats !
|
changes_saved_msg: Cambiaments ben realizats !
|
||||||
powered_by: propulsat per %{link}
|
|
||||||
save_changes: Salvar los cambiaments
|
save_changes: Salvar los cambiaments
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: I a quicòm que truca ! Mercés de corregir l’error çai-jos
|
one: I a quicòm que truca ! Mercés de corregir l’error çai-jos
|
||||||
@ -629,8 +627,6 @@ oc:
|
|||||||
expires_at: Expirats
|
expires_at: Expirats
|
||||||
uses: Usatges
|
uses: Usatges
|
||||||
title: Convidar de mond
|
title: Convidar de mond
|
||||||
landing_strip_html: "<strong>%{name}</strong> utiliza %{link_to_root_path}. Podètz lo/la sègre o interagir amb el o ela s’avètz un compte ont que siasque sul fediverse."
|
|
||||||
landing_strip_signup_html: S’es pas lo cas, podètz <a href="%{sign_up_path}">vos marcar aquí</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Avètz atengut lo maximum de listas
|
limit: Avètz atengut lo maximum de listas
|
||||||
@ -799,7 +795,6 @@ oc:
|
|||||||
unlisted: Pas listat
|
unlisted: Pas listat
|
||||||
unlisted_long: Tot lo monde pòt veire mai serà pas visible sul flux public
|
unlisted_long: Tot lo monde pòt veire mai serà pas visible sul flux public
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Clicatz per veire
|
|
||||||
pinned: Tut penjat
|
pinned: Tut penjat
|
||||||
reblogged: a partejat
|
reblogged: a partejat
|
||||||
sensitive_content: Contengut sensible
|
sensitive_content: Contengut sensible
|
||||||
|
@ -46,7 +46,6 @@ pl:
|
|||||||
people_who_follow: Osoby, które śledzą konto %{name}
|
people_who_follow: Osoby, które śledzą konto %{name}
|
||||||
posts: Wpisy
|
posts: Wpisy
|
||||||
posts_with_replies: Wpisy z odpowiedziami
|
posts_with_replies: Wpisy z odpowiedziami
|
||||||
remote_follow: Śledź zdalnie
|
|
||||||
reserved_username: Ta nazwa użytkownika jest zarezerwowana
|
reserved_username: Ta nazwa użytkownika jest zarezerwowana
|
||||||
roles:
|
roles:
|
||||||
admin: Administrator
|
admin: Administrator
|
||||||
@ -537,7 +536,6 @@ pl:
|
|||||||
unlocked_warning_title: Twoje konto nie jest zablokowane
|
unlocked_warning_title: Twoje konto nie jest zablokowane
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Ustawienia zapisane!
|
changes_saved_msg: Ustawienia zapisane!
|
||||||
powered_by: uruchomione na %{link}
|
|
||||||
save_changes: Zapisz zmiany
|
save_changes: Zapisz zmiany
|
||||||
validation_errors:
|
validation_errors:
|
||||||
few: Coś jest wciąż nie tak! Przejrzyj %{count} poniższe błędy
|
few: Coś jest wciąż nie tak! Przejrzyj %{count} poniższe błędy
|
||||||
@ -577,8 +575,6 @@ pl:
|
|||||||
expires_at: Wygaśnie po
|
expires_at: Wygaśnie po
|
||||||
uses: Użycia
|
uses: Użycia
|
||||||
title: Zaproś użytkowników
|
title: Zaproś użytkowników
|
||||||
landing_strip_html: "<strong>%{name}</strong> ma konto na %{link_to_root_path}. Możesz je śledzić i wejść z nim w interakcję jeśli masz konto gdziekolwiek w Fediwersum."
|
|
||||||
landing_strip_signup_html: Jeśli jeszcze go nie masz, możesz <a href="%{sign_up_path}">stworzyć konto</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Przekroczyłeś maksymalną liczbę utworzonych list
|
limit: Przekroczyłeś maksymalną liczbę utworzonych list
|
||||||
@ -755,7 +751,6 @@ pl:
|
|||||||
unlisted: Niewypisane
|
unlisted: Niewypisane
|
||||||
unlisted_long: Widoczne dla wszystkich, ale nie wyświetlane na publicznych osiach czasu
|
unlisted_long: Widoczne dla wszystkich, ale nie wyświetlane na publicznych osiach czasu
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Naciśnij aby wyświetlić
|
|
||||||
pinned: Przypięty wpis
|
pinned: Przypięty wpis
|
||||||
reblogged: podbił
|
reblogged: podbił
|
||||||
sensitive_content: Wrażliwa zawartość
|
sensitive_content: Wrażliwa zawartość
|
||||||
|
@ -46,7 +46,6 @@ pt-BR:
|
|||||||
people_who_follow: Pessoas que seguem %{name}
|
people_who_follow: Pessoas que seguem %{name}
|
||||||
posts: Toots
|
posts: Toots
|
||||||
posts_with_replies: Toots e respostas
|
posts_with_replies: Toots e respostas
|
||||||
remote_follow: Siga remotamente
|
|
||||||
reserved_username: Este usuário está reservado
|
reserved_username: Este usuário está reservado
|
||||||
roles:
|
roles:
|
||||||
admin: Administrador
|
admin: Administrador
|
||||||
@ -536,7 +535,6 @@ pt-BR:
|
|||||||
unlocked_warning_title: A sua conta não está trancada
|
unlocked_warning_title: A sua conta não está trancada
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Mudanças salvas com sucesso!
|
changes_saved_msg: Mudanças salvas com sucesso!
|
||||||
powered_by: graças a tecnologia de %{link}
|
|
||||||
save_changes: Salvar mudanças
|
save_changes: Salvar mudanças
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Algo não está certo! Por favor, reveja o erro abaixo
|
one: Algo não está certo! Por favor, reveja o erro abaixo
|
||||||
@ -572,8 +570,6 @@ pt-BR:
|
|||||||
expires_at: Expira em
|
expires_at: Expira em
|
||||||
uses: Usos
|
uses: Usos
|
||||||
title: Convidar pessoas
|
title: Convidar pessoas
|
||||||
landing_strip_html: "<strong>%{name}</strong> é um usuário no %{link_to_root_path}. Você pode segui-lo ou interagir com ele se você tiver uma conta em qualquer lugar no fediverso."
|
|
||||||
landing_strip_signup_html: Se não, você pode <a href="%{sign_up_path}">se cadastrar aqui</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Você alcançou o número máximo de listas
|
limit: Você alcançou o número máximo de listas
|
||||||
@ -742,7 +738,6 @@ pt-BR:
|
|||||||
unlisted: Não listado
|
unlisted: Não listado
|
||||||
unlisted_long: Todos podem ver, porém não será postado nas timelines públicas
|
unlisted_long: Todos podem ver, porém não será postado nas timelines públicas
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Clique para mostrar
|
|
||||||
pinned: Toot fixado
|
pinned: Toot fixado
|
||||||
reblogged: compartilhou
|
reblogged: compartilhou
|
||||||
sensitive_content: Conteúdo sensível
|
sensitive_content: Conteúdo sensível
|
||||||
|
@ -44,7 +44,6 @@ pt:
|
|||||||
people_who_follow: Pessoas que seguem %{name}
|
people_who_follow: Pessoas que seguem %{name}
|
||||||
posts: Posts
|
posts: Posts
|
||||||
posts_with_replies: Posts e Respostas
|
posts_with_replies: Posts e Respostas
|
||||||
remote_follow: Seguir remotamente
|
|
||||||
reserved_username: Este nome de utilizadores é reservado
|
reserved_username: Este nome de utilizadores é reservado
|
||||||
roles:
|
roles:
|
||||||
admin: Administrador
|
admin: Administrador
|
||||||
@ -430,7 +429,6 @@ pt:
|
|||||||
unlocked_warning_title: A tua conta não está bloqueada
|
unlocked_warning_title: A tua conta não está bloqueada
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Alterações guardadas!
|
changes_saved_msg: Alterações guardadas!
|
||||||
powered_by: fornecido por %{link}
|
|
||||||
save_changes: Guardar alterações
|
save_changes: Guardar alterações
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Algo não está correcto. Por favor vê o erro abaixo
|
one: Algo não está correcto. Por favor vê o erro abaixo
|
||||||
@ -464,8 +462,6 @@ pt:
|
|||||||
expires_at: Expira
|
expires_at: Expira
|
||||||
uses: Usos
|
uses: Usos
|
||||||
title: Convidar pessoas
|
title: Convidar pessoas
|
||||||
landing_strip_html: "<strong>%{name}</strong> é um utilizador em %{link_to_root_path}. Podes segui-lo ou interagir com ele se tiveres uma conta em qualquer lugar no fediverso."
|
|
||||||
landing_strip_signup_html: If you don't, you can <a href="%{sign_up_path}">sign up here</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Número máximo de listas alcançado
|
limit: Número máximo de listas alcançado
|
||||||
@ -612,7 +608,6 @@ pt:
|
|||||||
unlisted: Público, mas não mostre no timeline público
|
unlisted: Público, mas não mostre no timeline público
|
||||||
unlisted_long: Todos podem ver, porém não será postado nas timelines públicas
|
unlisted_long: Todos podem ver, porém não será postado nas timelines públicas
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Clique pra mostrar
|
|
||||||
pinned: Toot fixado
|
pinned: Toot fixado
|
||||||
reblogged: boosted
|
reblogged: boosted
|
||||||
sensitive_content: Conteúdo sensível
|
sensitive_content: Conteúdo sensível
|
||||||
|
@ -46,7 +46,6 @@ ru:
|
|||||||
people_who_follow: Подписчики %{name}
|
people_who_follow: Подписчики %{name}
|
||||||
posts: Посты
|
posts: Посты
|
||||||
posts_with_replies: Посты с ответами
|
posts_with_replies: Посты с ответами
|
||||||
remote_follow: Подписаться на удаленном узле
|
|
||||||
reserved_username: Имя пользователя зарезервировано
|
reserved_username: Имя пользователя зарезервировано
|
||||||
roles:
|
roles:
|
||||||
admin: Администратор
|
admin: Администратор
|
||||||
@ -492,7 +491,6 @@ ru:
|
|||||||
unlocked_warning_title: Ваш аккаунт не закрыт для подписки
|
unlocked_warning_title: Ваш аккаунт не закрыт для подписки
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Изменения успешно сохранены!
|
changes_saved_msg: Изменения успешно сохранены!
|
||||||
powered_by: работает на %{link}
|
|
||||||
save_changes: Сохранить изменения
|
save_changes: Сохранить изменения
|
||||||
validation_errors:
|
validation_errors:
|
||||||
few: Что-то здесь не так! Пожалуйста, прочитайте о %{count} ошибках ниже
|
few: Что-то здесь не так! Пожалуйста, прочитайте о %{count} ошибках ниже
|
||||||
@ -531,8 +529,6 @@ ru:
|
|||||||
expires_at: Истекает
|
expires_at: Истекает
|
||||||
uses: Исп.
|
uses: Исп.
|
||||||
title: Пригласить людей
|
title: Пригласить людей
|
||||||
landing_strip_html: "<strong>%{name}</strong> - пользователь на %{link_to_root_path}. Вы можете подписаться на него/нее и общаться с ним/ней, если у Вас есть аккаунт на любом узле общей сети."
|
|
||||||
landing_strip_signup_html: Если у Вас его нет, вы можете <a href="%{sign_up_path}">зарегистрироваться здесь</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Вы достигли максимального числа списков
|
limit: Вы достигли максимального числа списков
|
||||||
@ -709,7 +705,6 @@ ru:
|
|||||||
unlisted: Скрывать из лент
|
unlisted: Скрывать из лент
|
||||||
unlisted_long: Показывать всем, но не отображать в публичных лентах
|
unlisted_long: Показывать всем, но не отображать в публичных лентах
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Показать
|
|
||||||
pinned: Закреплённое сообщение
|
pinned: Закреплённое сообщение
|
||||||
reblogged: продвинул(а)
|
reblogged: продвинул(а)
|
||||||
sensitive_content: Чувствительный контент
|
sensitive_content: Чувствительный контент
|
||||||
|
@ -46,7 +46,6 @@ sk:
|
|||||||
people_who_follow: Ľudia sledujúci %{name}
|
people_who_follow: Ľudia sledujúci %{name}
|
||||||
posts: Príspevky
|
posts: Príspevky
|
||||||
posts_with_replies: Príspevky s odpoveďami
|
posts_with_replies: Príspevky s odpoveďami
|
||||||
remote_follow: Sleduj vzdialeného
|
|
||||||
reserved_username: Prihlasovacie meno je rezervované
|
reserved_username: Prihlasovacie meno je rezervované
|
||||||
roles:
|
roles:
|
||||||
admin: Administrátor
|
admin: Administrátor
|
||||||
@ -526,7 +525,6 @@ sk:
|
|||||||
unlocked_warning_title: Tvoj účet nieje zamknutý
|
unlocked_warning_title: Tvoj účet nieje zamknutý
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Zmeny boli úspešne uložené!
|
changes_saved_msg: Zmeny boli úspešne uložené!
|
||||||
powered_by: poháňané vďaka %{link}
|
|
||||||
save_changes: Uložiť zmeny
|
save_changes: Uložiť zmeny
|
||||||
validation_errors:
|
validation_errors:
|
||||||
few: Niečo ešte stále nieje v poriadku! Prosím skontroluj všetky %{count} chyby
|
few: Niečo ešte stále nieje v poriadku! Prosím skontroluj všetky %{count} chyby
|
||||||
@ -564,8 +562,6 @@ sk:
|
|||||||
expires_at: Vyprší
|
expires_at: Vyprší
|
||||||
uses: Používa
|
uses: Používa
|
||||||
title: Pozvi ľudí
|
title: Pozvi ľudí
|
||||||
landing_strip_html: "<strong>%{name}</strong> je užívateľ na serveri %{link_to_root_path}. Ty ich môžeš následovať a môžeš s nimi interaktovať pokiaľ máš účet kdekoľvek v rámci fediversa."
|
|
||||||
landing_strip_signup_html: Pokiaľ ešte nemáš, môžeš <a href="%{sign_up_path}">si tu vytvoriť účet</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Dosiahli ste maximálny možný počet zoznamov
|
limit: Dosiahli ste maximálny možný počet zoznamov
|
||||||
@ -725,7 +721,6 @@ sk:
|
|||||||
unlisted: Nezaradené
|
unlisted: Nezaradené
|
||||||
unlisted_long: Všetci môžu vidieť, ale nieje zaradené do verejnej osi
|
unlisted_long: Všetci môžu vidieť, ale nieje zaradené do verejnej osi
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klikni pre zobrazenie
|
|
||||||
pinned: Pripnutý toot
|
pinned: Pripnutý toot
|
||||||
reblogged: vyzdvihnutý
|
reblogged: vyzdvihnutý
|
||||||
sensitive_content: Senzitívny obsah
|
sensitive_content: Senzitívny obsah
|
||||||
|
@ -42,7 +42,6 @@ sl:
|
|||||||
people_who_follow: Ljudje, ki sledijo %{name}
|
people_who_follow: Ljudje, ki sledijo %{name}
|
||||||
posts: Tuti
|
posts: Tuti
|
||||||
posts_with_replies: Tuti in odgovori
|
posts_with_replies: Tuti in odgovori
|
||||||
remote_follow: Oddaljeno sledenje
|
|
||||||
reserved_username: Uporabniško ime je zasedeno
|
reserved_username: Uporabniško ime je zasedeno
|
||||||
roles:
|
roles:
|
||||||
admin: Skrbnik
|
admin: Skrbnik
|
||||||
|
@ -44,7 +44,6 @@ sr-Latn:
|
|||||||
people_who_follow: Ljudi koji prate %{name}
|
people_who_follow: Ljudi koji prate %{name}
|
||||||
posts: Tutovi
|
posts: Tutovi
|
||||||
posts_with_replies: Tutovi i odgovori
|
posts_with_replies: Tutovi i odgovori
|
||||||
remote_follow: Udaljena praćenja
|
|
||||||
reserved_username: Korisničko ime je rezervisano
|
reserved_username: Korisničko ime je rezervisano
|
||||||
roles:
|
roles:
|
||||||
admin: Administrator
|
admin: Administrator
|
||||||
@ -422,7 +421,6 @@ sr-Latn:
|
|||||||
unlocked_warning_title: Vaš nalog nije zaključan
|
unlocked_warning_title: Vaš nalog nije zaključan
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Izmene uspešno sačuvane!
|
changes_saved_msg: Izmene uspešno sačuvane!
|
||||||
powered_by: omogućio %{link}
|
|
||||||
save_changes: Snimi izmene
|
save_changes: Snimi izmene
|
||||||
validation_errors:
|
validation_errors:
|
||||||
few: Nešto nije baš kako treba! Pregledajte %{count} greške ispod
|
few: Nešto nije baš kako treba! Pregledajte %{count} greške ispod
|
||||||
@ -460,8 +458,6 @@ sr-Latn:
|
|||||||
expires_at: Ističe
|
expires_at: Ističe
|
||||||
uses: Korišćenja
|
uses: Korišćenja
|
||||||
title: Pozovi ljude
|
title: Pozovi ljude
|
||||||
landing_strip_html: "<strong>%{name}</strong> je korisnik na %{link_to_root_path}. Možete ga zapratiti ili komunicirati sa njim ako imte nalog bilo gde u fediversu."
|
|
||||||
landing_strip_signup_html: Ako nemate, možete se <a href="%{sign_up_path}">registrovati ovde</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Dostigli ste limit broja listi
|
limit: Dostigli ste limit broja listi
|
||||||
@ -602,7 +598,6 @@ sr-Latn:
|
|||||||
unlisted: Neizlistano
|
unlisted: Neizlistano
|
||||||
unlisted_long: Svako može da vidi, ali nije izlistano na javnim lajnama
|
unlisted_long: Svako može da vidi, ali nije izlistano na javnim lajnama
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klikni da vidiš
|
|
||||||
pinned: Prikačeni tut
|
pinned: Prikačeni tut
|
||||||
reblogged: podržano
|
reblogged: podržano
|
||||||
sensitive_content: Osetljiv sadržaj
|
sensitive_content: Osetljiv sadržaj
|
||||||
|
@ -45,7 +45,6 @@ sr:
|
|||||||
people_who_follow: Људи који прате %{name}
|
people_who_follow: Људи који прате %{name}
|
||||||
posts: Тутови
|
posts: Тутови
|
||||||
posts_with_replies: Тутови и одговори
|
posts_with_replies: Тутови и одговори
|
||||||
remote_follow: Удаљена праћења
|
|
||||||
reserved_username: Корисничко име је резервисано
|
reserved_username: Корисничко име је резервисано
|
||||||
roles:
|
roles:
|
||||||
admin: Администратор
|
admin: Администратор
|
||||||
@ -423,7 +422,6 @@ sr:
|
|||||||
unlocked_warning_title: Ваш налог није закључан
|
unlocked_warning_title: Ваш налог није закључан
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Измене успешно сачуване!
|
changes_saved_msg: Измене успешно сачуване!
|
||||||
powered_by: омогућио %{link}
|
|
||||||
save_changes: Сними измене
|
save_changes: Сними измене
|
||||||
validation_errors:
|
validation_errors:
|
||||||
few: Нешто није баш како треба! Прегледајте %{count} грешке испод
|
few: Нешто није баш како треба! Прегледајте %{count} грешке испод
|
||||||
@ -461,8 +459,6 @@ sr:
|
|||||||
expires_at: Истиче
|
expires_at: Истиче
|
||||||
uses: Коришћења
|
uses: Коришћења
|
||||||
title: Позови људе
|
title: Позови људе
|
||||||
landing_strip_html: "<strong>%{name}</strong> је корисник на %{link_to_root_path}. Можете га запратити или комуницирати са њим ако имте налог било где у федиверсу."
|
|
||||||
landing_strip_signup_html: Ако немате, можете се <a href="%{sign_up_path}">регистровати овде</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Достигли сте лимит броја листи
|
limit: Достигли сте лимит броја листи
|
||||||
@ -603,7 +599,6 @@ sr:
|
|||||||
unlisted: Неизлистано
|
unlisted: Неизлистано
|
||||||
unlisted_long: Свако може да види, али није излистано на јавним лајнама
|
unlisted_long: Свако може да види, али није излистано на јавним лајнама
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Кликни да видиш
|
|
||||||
pinned: Прикачени тут
|
pinned: Прикачени тут
|
||||||
reblogged: подржано
|
reblogged: подржано
|
||||||
sensitive_content: Осетљив садржај
|
sensitive_content: Осетљив садржај
|
||||||
|
@ -46,7 +46,6 @@ sv:
|
|||||||
people_who_follow: Personer som följer %{name}
|
people_who_follow: Personer som följer %{name}
|
||||||
posts: Toots
|
posts: Toots
|
||||||
posts_with_replies: Toots med svar
|
posts_with_replies: Toots med svar
|
||||||
remote_follow: Avlägsen följare
|
|
||||||
reserved_username: Användarnamnet är reserverat
|
reserved_username: Användarnamnet är reserverat
|
||||||
roles:
|
roles:
|
||||||
admin: Admin
|
admin: Admin
|
||||||
@ -488,7 +487,6 @@ sv:
|
|||||||
unlocked_warning_title: Ditt konto är inte låst
|
unlocked_warning_title: Ditt konto är inte låst
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Ändringar sparades framgångsrikt!
|
changes_saved_msg: Ändringar sparades framgångsrikt!
|
||||||
powered_by: drivs av %{link}
|
|
||||||
save_changes: Spara ändringar
|
save_changes: Spara ändringar
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Något är inte riktigt rätt ännu! Kontrollera felet nedan
|
one: Något är inte riktigt rätt ännu! Kontrollera felet nedan
|
||||||
@ -524,8 +522,6 @@ sv:
|
|||||||
expires_at: Utgår
|
expires_at: Utgår
|
||||||
uses: Användningar
|
uses: Användningar
|
||||||
title: Bjud in andra
|
title: Bjud in andra
|
||||||
landing_strip_html: "<strong>%{name}</strong> är en användare på %{link_to_root_path}. Du kan följa dem eller interagera med dem om du har ett konto någonstans i federationen."
|
|
||||||
landing_strip_signup_html: Om du inte gör det, så kan du <a href="%{sign_up_path}">registrera dig här</a>.
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: Du har nått det maximala antalet listor
|
limit: Du har nått det maximala antalet listor
|
||||||
@ -693,7 +689,6 @@ sv:
|
|||||||
unlisted: Olistade
|
unlisted: Olistade
|
||||||
unlisted_long: Alla kan se, men listas inte på offentliga tidslinjer
|
unlisted_long: Alla kan se, men listas inte på offentliga tidslinjer
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Klicka för att visa
|
|
||||||
pinned: Fäst toot
|
pinned: Fäst toot
|
||||||
reblogged: boostad
|
reblogged: boostad
|
||||||
sensitive_content: Känsligt innehåll
|
sensitive_content: Känsligt innehåll
|
||||||
|
@ -22,7 +22,6 @@ th:
|
|||||||
people_followed_by: ถูกติดตามโดย %{name}
|
people_followed_by: ถูกติดตามโดย %{name}
|
||||||
people_who_follow: คนที่ติดตาม %{name}
|
people_who_follow: คนที่ติดตาม %{name}
|
||||||
posts: โพสต์
|
posts: โพสต์
|
||||||
remote_follow: Remote follow
|
|
||||||
unfollow: เลิกติดตาม
|
unfollow: เลิกติดตาม
|
||||||
admin:
|
admin:
|
||||||
accounts:
|
accounts:
|
||||||
@ -216,7 +215,6 @@ th:
|
|||||||
unlocked_warning_title: แอคเค๊าท์ของคุณไม่ได้ล๊อค
|
unlocked_warning_title: แอคเค๊าท์ของคุณไม่ได้ล๊อค
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: บันทึกการแก้ไขแล้ว!
|
changes_saved_msg: บันทึกการแก้ไขแล้ว!
|
||||||
powered_by: powered by %{link}
|
|
||||||
save_changes: บันทึกการเปลี่ยนแปลง
|
save_changes: บันทึกการเปลี่ยนแปลง
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Something isn't quite right yet! Please review the error below
|
one: Something isn't quite right yet! Please review the error below
|
||||||
@ -229,8 +227,6 @@ th:
|
|||||||
following: Following list
|
following: Following list
|
||||||
muting: Muting list
|
muting: Muting list
|
||||||
upload: Upload
|
upload: Upload
|
||||||
landing_strip_html: "<strong>%{name}</strong> is a user on %{link_to_root_path}. You can follow them or interact with them if you have an account anywhere in the fediverse."
|
|
||||||
landing_strip_signup_html: If you don't, you can <a href="%{sign_up_path}">sign up here</a>.
|
|
||||||
media_attachments:
|
media_attachments:
|
||||||
validations:
|
validations:
|
||||||
images_and_video: Cannot attach a video to a status that already contains images
|
images_and_video: Cannot attach a video to a status that already contains images
|
||||||
@ -302,7 +298,6 @@ th:
|
|||||||
unlisted: Unlisted
|
unlisted: Unlisted
|
||||||
unlisted_long: Everyone can see, but not listed on public timelines
|
unlisted_long: Everyone can see, but not listed on public timelines
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: คลิกเพื่อแสดง
|
|
||||||
reblogged: boosted
|
reblogged: boosted
|
||||||
sensitive_content: Sensitive content
|
sensitive_content: Sensitive content
|
||||||
time:
|
time:
|
||||||
|
@ -22,7 +22,6 @@ tr:
|
|||||||
people_followed_by: Kullanıcı %{name}'in takip ettikleri
|
people_followed_by: Kullanıcı %{name}'in takip ettikleri
|
||||||
people_who_follow: Kullanıcı %{name}'i takip edenler
|
people_who_follow: Kullanıcı %{name}'i takip edenler
|
||||||
posts: Gönderiler
|
posts: Gönderiler
|
||||||
remote_follow: Uzaktan takip et
|
|
||||||
unfollow: Takibi bırak
|
unfollow: Takibi bırak
|
||||||
admin:
|
admin:
|
||||||
accounts:
|
accounts:
|
||||||
@ -214,7 +213,6 @@ tr:
|
|||||||
unlocked_warning_title: Hesabınız kilitlendi
|
unlocked_warning_title: Hesabınız kilitlendi
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Değişiklikler başarıyla kaydedildi!
|
changes_saved_msg: Değişiklikler başarıyla kaydedildi!
|
||||||
powered_by: powered by %{link}
|
|
||||||
save_changes: Değişiklikleri kaydet
|
save_changes: Değişiklikleri kaydet
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Bir şeyler ters gitti! Lütfen aşağıdaki hatayı gözden geçiriniz
|
one: Bir şeyler ters gitti! Lütfen aşağıdaki hatayı gözden geçiriniz
|
||||||
@ -227,8 +225,6 @@ tr:
|
|||||||
following: Takip edilenler listesi
|
following: Takip edilenler listesi
|
||||||
muting: Susturulanlar listesi
|
muting: Susturulanlar listesi
|
||||||
upload: Yükle
|
upload: Yükle
|
||||||
landing_strip_html: "<strong>%{name}</strong>, %{link_to_root_path} sunucusundaki bir kullanıcıdır. Onu takip edebilir, veya Mastodon ağındaki bir hesabınızı kullanarak etkileşime geçebilirsiniz."
|
|
||||||
landing_strip_signup_html: Eğer hesabınız yoksa <a href="%{sign_up_path}">buradan kaydolabilirsiniz</a>.
|
|
||||||
media_attachments:
|
media_attachments:
|
||||||
validations:
|
validations:
|
||||||
images_and_video: Halihazırda görsel içeren bir gönderiye video ekleyemezsiniz.
|
images_and_video: Halihazırda görsel içeren bir gönderiye video ekleyemezsiniz.
|
||||||
@ -300,7 +296,6 @@ tr:
|
|||||||
unlisted: Listelenmemiş
|
unlisted: Listelenmemiş
|
||||||
unlisted_long: Herkes görebilir fakat herkese açık zaman tünellerinde listelenmez.
|
unlisted_long: Herkes görebilir fakat herkese açık zaman tünellerinde listelenmez.
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Görüntülemek için tıklayınız
|
|
||||||
reblogged: boost edildi
|
reblogged: boost edildi
|
||||||
sensitive_content: Hassas içerik
|
sensitive_content: Hassas içerik
|
||||||
time:
|
time:
|
||||||
|
@ -22,7 +22,6 @@ uk:
|
|||||||
people_followed_by: Люди, на яких підписаний(-а) %{name}
|
people_followed_by: Люди, на яких підписаний(-а) %{name}
|
||||||
people_who_follow: Підписники %{name}
|
people_who_follow: Підписники %{name}
|
||||||
posts: Пости
|
posts: Пости
|
||||||
remote_follow: Підписатися на іншій інстанції
|
|
||||||
unfollow: Відписатися
|
unfollow: Відписатися
|
||||||
admin:
|
admin:
|
||||||
accounts:
|
accounts:
|
||||||
@ -199,7 +198,6 @@ uk:
|
|||||||
unlocked_warning_title: Ваш аккаунт не закритий для підписки
|
unlocked_warning_title: Ваш аккаунт не закритий для підписки
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: Зміни успішно збережені!
|
changes_saved_msg: Зміни успішно збережені!
|
||||||
powered_by: працює на %{link}
|
|
||||||
save_changes: Зберегти зміни
|
save_changes: Зберегти зміни
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: Щось тут не так! Будь ласка, ознайомтеся з помилкою нижче
|
one: Щось тут не так! Будь ласка, ознайомтеся з помилкою нижче
|
||||||
@ -212,8 +210,6 @@ uk:
|
|||||||
following: Підписки
|
following: Підписки
|
||||||
muting: Список глушення
|
muting: Список глушення
|
||||||
upload: Завантажити
|
upload: Завантажити
|
||||||
landing_strip_html: "<strong>%{name}</strong> - користувач на %{link_to_root_path}. Ви можете підписатися на нього/неї та спілкуватися з ним/нею, якщо у Вас є акаунт на будь-якій інстанції загальної мережі."
|
|
||||||
landing_strip_signup_html: Якщо його у Вас немає, Ви можете <a href="%{sign_up_path}">зареєструватися тут</a>.
|
|
||||||
media_attachments:
|
media_attachments:
|
||||||
validations:
|
validations:
|
||||||
images_and_video: Не можна додати відео до статусу з зображеннями
|
images_and_video: Не можна додати відео до статусу з зображеннями
|
||||||
@ -289,7 +285,6 @@ uk:
|
|||||||
unlisted: Приховувати зі стріок
|
unlisted: Приховувати зі стріок
|
||||||
unlisted_long: Показувати всім, але не відображати в публічних стрічках
|
unlisted_long: Показувати всім, але не відображати в публічних стрічках
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: Показати
|
|
||||||
reblogged: передмухнув(-ла)
|
reblogged: передмухнув(-ла)
|
||||||
sensitive_content: Непристойний контент
|
sensitive_content: Непристойний контент
|
||||||
time:
|
time:
|
||||||
|
@ -46,7 +46,6 @@ zh-CN:
|
|||||||
people_who_follow: 关注 %{name} 的人
|
people_who_follow: 关注 %{name} 的人
|
||||||
posts: 嘟文
|
posts: 嘟文
|
||||||
posts_with_replies: 嘟文和回复
|
posts_with_replies: 嘟文和回复
|
||||||
remote_follow: 跨站关注
|
|
||||||
reserved_username: 此用户名已被保留
|
reserved_username: 此用户名已被保留
|
||||||
roles:
|
roles:
|
||||||
admin: 管理员
|
admin: 管理员
|
||||||
@ -484,7 +483,6 @@ zh-CN:
|
|||||||
unlocked_warning_title: 你的帐户未受到保护
|
unlocked_warning_title: 你的帐户未受到保护
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: 更改保存成功!
|
changes_saved_msg: 更改保存成功!
|
||||||
powered_by: 基于 %{link} 构建
|
|
||||||
save_changes: 保存更改
|
save_changes: 保存更改
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: 出错啦!检查一下下面出错的地方吧
|
one: 出错啦!检查一下下面出错的地方吧
|
||||||
@ -518,8 +516,6 @@ zh-CN:
|
|||||||
expires_at: 失效时间
|
expires_at: 失效时间
|
||||||
uses: 已使用次数
|
uses: 已使用次数
|
||||||
title: 邀请用户
|
title: 邀请用户
|
||||||
landing_strip_html: "<strong>%{name}</strong> 是一位来自 %{link_to_root_path} 的用户。如果你想关注他们或者与他们互动,你需要在任意一个 Mastodon 实例或与其兼容的网站上拥有一个帐户。"
|
|
||||||
landing_strip_signup_html: 还没有这种帐户?你可以<a href="%{sign_up_path}">在本站注册一个</a>。
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: 你所建立的列表数量已经达到上限
|
limit: 你所建立的列表数量已经达到上限
|
||||||
@ -681,7 +677,6 @@ zh-CN:
|
|||||||
unlisted: 不公开
|
unlisted: 不公开
|
||||||
unlisted_long: 所有人可见,但不会出现在公共时间轴上
|
unlisted_long: 所有人可见,但不会出现在公共时间轴上
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: 点击显示
|
|
||||||
pinned: 置顶嘟文
|
pinned: 置顶嘟文
|
||||||
reblogged: 转嘟
|
reblogged: 转嘟
|
||||||
sensitive_content: 敏感内容
|
sensitive_content: 敏感内容
|
||||||
|
@ -46,7 +46,6 @@ zh-HK:
|
|||||||
people_who_follow: 關注 %{name} 的人
|
people_who_follow: 關注 %{name} 的人
|
||||||
posts: 文章
|
posts: 文章
|
||||||
posts_with_replies: 文章和回覆
|
posts_with_replies: 文章和回覆
|
||||||
remote_follow: 跨站關注
|
|
||||||
reserved_username: 此用戶名已被保留
|
reserved_username: 此用戶名已被保留
|
||||||
roles:
|
roles:
|
||||||
admin: 管理員
|
admin: 管理員
|
||||||
@ -488,7 +487,6 @@ zh-HK:
|
|||||||
unlocked_warning_title: 你的用戶目前為「公共」
|
unlocked_warning_title: 你的用戶目前為「公共」
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: 已成功儲存修改。
|
changes_saved_msg: 已成功儲存修改。
|
||||||
powered_by: 網站由 %{link} 開發
|
|
||||||
save_changes: 儲存修改
|
save_changes: 儲存修改
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: 提交的資料有問題
|
one: 提交的資料有問題
|
||||||
@ -524,8 +522,6 @@ zh-HK:
|
|||||||
expires_at: 失效時間
|
expires_at: 失效時間
|
||||||
uses: 已使用次數
|
uses: 已使用次數
|
||||||
title: 邀請用戶
|
title: 邀請用戶
|
||||||
landing_strip_html: "<strong>%{name}</strong> 是一個在 %{link_to_root_path} 的用戶。只要你有任何 Mastodon 服務站、或者聯盟網站的用戶,便可以跨站關注此站用戶,或者與他們互動。"
|
|
||||||
landing_strip_signup_html: 如果你沒有這類用戶,歡迎在<a href="%{sign_up_path}">此處登記</a>。
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: 你所建立的列表數量已經達到上限
|
limit: 你所建立的列表數量已經達到上限
|
||||||
@ -692,7 +688,6 @@ zh-HK:
|
|||||||
unlisted: 公開,但不在公共時間軸顯示
|
unlisted: 公開,但不在公共時間軸顯示
|
||||||
unlisted_long: 所有人都能看到,但不在公共時間軸(本站時間軸、跨站時間軸)顯示
|
unlisted_long: 所有人都能看到,但不在公共時間軸(本站時間軸、跨站時間軸)顯示
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: 點擊顯示
|
|
||||||
pinned: 置頂文章
|
pinned: 置頂文章
|
||||||
reblogged: 轉推
|
reblogged: 轉推
|
||||||
sensitive_content: 敏感內容
|
sensitive_content: 敏感內容
|
||||||
|
@ -46,7 +46,6 @@ zh-TW:
|
|||||||
people_who_follow: 關注 %{name} 的人
|
people_who_follow: 關注 %{name} 的人
|
||||||
posts: 嘟文
|
posts: 嘟文
|
||||||
posts_with_replies: 嘟文與回覆
|
posts_with_replies: 嘟文與回覆
|
||||||
remote_follow: 跨站關注
|
|
||||||
reserved_username: 此用戶名已被保留
|
reserved_username: 此用戶名已被保留
|
||||||
roles:
|
roles:
|
||||||
admin: 管理員
|
admin: 管理員
|
||||||
@ -488,7 +487,6 @@ zh-TW:
|
|||||||
unlocked_warning_title: 你的帳戶是公開的
|
unlocked_warning_title: 你的帳戶是公開的
|
||||||
generic:
|
generic:
|
||||||
changes_saved_msg: 已成功儲存修改!
|
changes_saved_msg: 已成功儲存修改!
|
||||||
powered_by: 網站由 %{link} 開發
|
|
||||||
save_changes: 儲存修改
|
save_changes: 儲存修改
|
||||||
validation_errors:
|
validation_errors:
|
||||||
one: 送出的資料有問題
|
one: 送出的資料有問題
|
||||||
@ -524,8 +522,6 @@ zh-TW:
|
|||||||
expires_at: 失效時間
|
expires_at: 失效時間
|
||||||
uses: 已使用次數
|
uses: 已使用次數
|
||||||
title: 邀請使用者
|
title: 邀請使用者
|
||||||
landing_strip_html: "<strong>%{name}</strong> 是一個在 %{link_to_root_path} 的使用者。只要您有任何 Mastodon 站點、或者聯盟站點的帳戶,便可以跨站關注此站使用者,或者與他們互動。"
|
|
||||||
landing_strip_signup_html: 如果您沒有這些帳戶,歡迎在<a href="%{sign_up_path}">這裡註冊</a>。
|
|
||||||
lists:
|
lists:
|
||||||
errors:
|
errors:
|
||||||
limit: 你所建立的列表數量已經達到上限
|
limit: 你所建立的列表數量已經達到上限
|
||||||
@ -685,7 +681,6 @@ zh-TW:
|
|||||||
unlisted: 公開,但不在公共時間軸顯示
|
unlisted: 公開,但不在公共時間軸顯示
|
||||||
unlisted_long: 所有人都能看到,但不會出現在公共時間軸上
|
unlisted_long: 所有人都能看到,但不會出現在公共時間軸上
|
||||||
stream_entries:
|
stream_entries:
|
||||||
click_to_show: 點選顯示
|
|
||||||
pinned: 置頂嘟文
|
pinned: 置頂嘟文
|
||||||
reblogged: 轉嘟
|
reblogged: 轉嘟
|
||||||
sensitive_content: 敏感內容
|
sensitive_content: 敏感內容
|
||||||
|
@ -32,8 +32,12 @@ module Mastodon
|
|||||||
[to_a.join('.'), flags].join
|
[to_a.join('.'), flags].join
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def repository
|
||||||
|
'tootsuite/mastodon'
|
||||||
|
end
|
||||||
|
|
||||||
def source_base_url
|
def source_base_url
|
||||||
'https://github.com/tootsuite/mastodon'
|
"https://github.com/#{repository}"
|
||||||
end
|
end
|
||||||
|
|
||||||
# specify git tag or commit hash here
|
# specify git tag or commit hash here
|
||||||
|
@ -105,6 +105,7 @@
|
|||||||
"redux": "^3.7.1",
|
"redux": "^3.7.1",
|
||||||
"redux-immutable": "^4.0.0",
|
"redux-immutable": "^4.0.0",
|
||||||
"redux-thunk": "^2.2.0",
|
"redux-thunk": "^2.2.0",
|
||||||
|
"rellax": "^1.6.2",
|
||||||
"requestidlecallback": "^0.3.0",
|
"requestidlecallback": "^0.3.0",
|
||||||
"reselect": "^3.0.1",
|
"reselect": "^3.0.1",
|
||||||
"rimraf": "^2.6.1",
|
"rimraf": "^2.6.1",
|
||||||
|
@ -12,6 +12,7 @@ describe 'stream_entries/show.html.haml', without_verify_partial_doubles: true d
|
|||||||
allow(view).to receive(:full_asset_url).and_return('//asset.host/image.svg')
|
allow(view).to receive(:full_asset_url).and_return('//asset.host/image.svg')
|
||||||
allow(view).to receive(:local_time)
|
allow(view).to receive(:local_time)
|
||||||
allow(view).to receive(:local_time_ago)
|
allow(view).to receive(:local_time_ago)
|
||||||
|
assign(:instance_presenter, InstancePresenter.new)
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'has valid author h-card and basic data for a detailed_status' do
|
it 'has valid author h-card and basic data for a detailed_status' do
|
||||||
|
@ -7188,6 +7188,10 @@ regjsparser@^0.1.4:
|
|||||||
dependencies:
|
dependencies:
|
||||||
jsesc "~0.5.0"
|
jsesc "~0.5.0"
|
||||||
|
|
||||||
|
rellax@^1.6.2:
|
||||||
|
version "1.6.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/rellax/-/rellax-1.6.2.tgz#b22c8715f56324fa8b396465d3dca9953b711f30"
|
||||||
|
|
||||||
remove-trailing-separator@^1.0.1:
|
remove-trailing-separator@^1.0.1:
|
||||||
version "1.1.0"
|
version "1.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
|
resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
|
||||||
|
Loading…
Reference in New Issue
Block a user