add theme
Before Width: | Height: | Size: 189 KiB After Width: | Height: | Size: 25 KiB |
BIN
app/javascript/images/logos/m_logo_dark.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
app/javascript/images/logos/m_logo_light.PNG
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
app/javascript/images/rabbit_ui_conversation.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
app/javascript/images/theme/bg_dark.png
Normal file
After Width: | Height: | Size: 2.3 MiB |
BIN
app/javascript/images/theme/bg_light.png
Normal file
After Width: | Height: | Size: 927 KiB |
BIN
app/javascript/images/theme/m_logo_dark.png
Normal file
After Width: | Height: | Size: 4.0 KiB |
BIN
app/javascript/images/theme/m_logo_light.png
Normal file
After Width: | Height: | Size: 4.0 KiB |
BIN
app/javascript/images/theme/wordmark_dark.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
app/javascript/images/theme/wordmark_light.png
Normal file
After Width: | Height: | Size: 24 KiB |
@ -193,12 +193,13 @@ export default class Dropdown extends PureComponent {
|
|||||||
id: id++,
|
id: id++,
|
||||||
};
|
};
|
||||||
|
|
||||||
handleClick = ({ type }) => {
|
handleClick = (e) => {
|
||||||
if (this.state.id === this.props.openDropdownId) {
|
if (this.state.id === this.props.openDropdownId) {
|
||||||
this.handleClose();
|
this.handleClose();
|
||||||
} else {
|
} else {
|
||||||
this.props.onOpen(this.state.id, this.handleItemClick, type !== 'click');
|
this.props.onOpen(this.state.id, this.handleItemClick, e.type !== 'click');
|
||||||
}
|
}
|
||||||
|
e.stopPropagation();
|
||||||
};
|
};
|
||||||
|
|
||||||
handleClose = () => {
|
handleClose = () => {
|
||||||
|
@ -112,9 +112,15 @@ class Poll extends ImmutablePureComponent {
|
|||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
handleVote = () => {
|
handleStopProp = (e) =>{
|
||||||
|
e.stopPropagation();
|
||||||
|
}
|
||||||
|
|
||||||
|
handleVote = (e) => {
|
||||||
|
e.stopPropagation();
|
||||||
if (this.props.disabled) {
|
if (this.props.disabled) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -122,15 +128,17 @@ class Poll extends ImmutablePureComponent {
|
|||||||
this.props.onVote(Object.keys(this.state.selected));
|
this.props.onVote(Object.keys(this.state.selected));
|
||||||
};
|
};
|
||||||
|
|
||||||
handleRefresh = () => {
|
handleRefresh = (e) => {
|
||||||
|
e.stopPropagation();
|
||||||
if (this.props.disabled) {
|
if (this.props.disabled) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.props.refresh();
|
this.props.refresh(e);
|
||||||
};
|
};
|
||||||
|
|
||||||
handleReveal = () => {
|
handleReveal = (e) => {
|
||||||
|
e.stopPropagation();
|
||||||
this.setState({ revealed: true });
|
this.setState({ revealed: true });
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -228,8 +236,8 @@ class Poll extends ImmutablePureComponent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className='poll'>
|
<div className='poll' onClick={this.handleStopProp}>
|
||||||
<ul>
|
<ul >
|
||||||
{poll.get('options').map((option, i) => this.renderOption(option, i, showResults))}
|
{poll.get('options').map((option, i) => this.renderOption(option, i, showResults))}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
@ -249,6 +249,14 @@ class Status extends ImmutablePureComponent {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
handleStatusClick = (e) => {
|
||||||
|
if (e.button === 0 && !(e.ctrlKey || e.metaKey) && this.context.router) {
|
||||||
|
e.preventDefault();
|
||||||
|
this.context.router.history.push(`/@${this.props.status.getIn(['account', 'acct'])}`+`/${this.props.status.get('id')}`)
|
||||||
|
}
|
||||||
|
e.stopPropagation();
|
||||||
|
};
|
||||||
handleDeployPictureInPicture = (type, mediaProps) => {
|
handleDeployPictureInPicture = (type, mediaProps) => {
|
||||||
const { deployPictureInPicture } = this.props;
|
const { deployPictureInPicture } = this.props;
|
||||||
const status = this._properStatus();
|
const status = this._properStatus();
|
||||||
@ -392,7 +400,7 @@ class Status extends ImmutablePureComponent {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<HotKeys handlers={minHandlers}>
|
<HotKeys handlers={minHandlers} >
|
||||||
<div className='status__wrapper status__wrapper--filtered focusable' tabIndex={0} ref={this.handleRef}>
|
<div className='status__wrapper status__wrapper--filtered focusable' tabIndex={0} ref={this.handleRef}>
|
||||||
<FormattedMessage id='status.filtered' defaultMessage='Filtered' />: {matchedFilters.join(', ')}.
|
<FormattedMessage id='status.filtered' defaultMessage='Filtered' />: {matchedFilters.join(', ')}.
|
||||||
{' '}
|
{' '}
|
||||||
@ -550,7 +558,7 @@ class Status extends ImmutablePureComponent {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<HotKeys handlers={handlers}>
|
<HotKeys handlers={handlers}>
|
||||||
<div className={classNames('status__wrapper', `status__wrapper-${status.get('visibility')}`, { 'status__wrapper-reply': !!status.get('in_reply_to_id'), unread, focusable: !this.props.muted })} tabIndex={this.props.muted ? null : 0} data-featured={featured ? 'true' : null} aria-label={textForScreenReader(intl, status, rebloggedByText)} ref={this.handleRef} data-nosnippet={status.getIn(['account', 'noindex'], true) || undefined}>
|
<div onClick={this.handleStatusClick} className={classNames('status__wrapper', `status__wrapper-${status.get('visibility')}`, { 'status__wrapper-reply': !!status.get('in_reply_to_id'), unread, focusable: !this.props.muted })} tabIndex={this.props.muted ? null : 0} data-featured={featured ? 'true' : null} aria-label={textForScreenReader(intl, status, rebloggedByText)} ref={this.handleRef} data-nosnippet={status.getIn(['account', 'noindex'], true) || undefined}>
|
||||||
{prepend}
|
{prepend}
|
||||||
|
|
||||||
<div className={classNames('status', `status-${status.get('visibility')}`, { 'status-reply': !!status.get('in_reply_to_id'), 'status--in-thread': !!rootId, 'status--first-in-thread': previousId && (!connectUp || connectToRoot), muted: this.props.muted })} data-id={status.get('id')}>
|
<div className={classNames('status', `status-${status.get('visibility')}`, { 'status-reply': !!status.get('in_reply_to_id'), 'status--in-thread': !!rootId, 'status--first-in-thread': previousId && (!connectUp || connectToRoot), muted: this.props.muted })} data-id={status.get('id')}>
|
||||||
|
@ -102,7 +102,24 @@ class StatusActionBar extends ImmutablePureComponent {
|
|||||||
'withDismiss',
|
'withDismiss',
|
||||||
];
|
];
|
||||||
|
|
||||||
handleReplyClick = () => {
|
|
||||||
|
// handleReplyClick = () => {
|
||||||
|
|
||||||
|
// if (e.button === 0 && !(e.ctrlKey || e.metaKey) && this.context.router) {
|
||||||
|
// e.preventDefault();
|
||||||
|
// const { signedIn } = this.context.identity;
|
||||||
|
|
||||||
|
// if (signedIn) {
|
||||||
|
// this.props.onReply(this.props.status, this.context.router.history);
|
||||||
|
// } else {
|
||||||
|
// this.props.onInteractionModal('reply', this.props.status);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// e.stopPropagation()
|
||||||
|
|
||||||
|
// };
|
||||||
|
|
||||||
|
handleReplyClick = e => {
|
||||||
const { signedIn } = this.context.identity;
|
const { signedIn } = this.context.identity;
|
||||||
|
|
||||||
if (signedIn) {
|
if (signedIn) {
|
||||||
@ -110,6 +127,7 @@ class StatusActionBar extends ImmutablePureComponent {
|
|||||||
} else {
|
} else {
|
||||||
this.props.onInteractionModal('reply', this.props.status);
|
this.props.onInteractionModal('reply', this.props.status);
|
||||||
}
|
}
|
||||||
|
e.stopPropagation();
|
||||||
};
|
};
|
||||||
|
|
||||||
handleShareClick = () => {
|
handleShareClick = () => {
|
||||||
@ -120,7 +138,7 @@ class StatusActionBar extends ImmutablePureComponent {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
handleFavouriteClick = () => {
|
handleFavouriteClick = e => {
|
||||||
const { signedIn } = this.context.identity;
|
const { signedIn } = this.context.identity;
|
||||||
|
|
||||||
if (signedIn) {
|
if (signedIn) {
|
||||||
@ -128,6 +146,7 @@ class StatusActionBar extends ImmutablePureComponent {
|
|||||||
} else {
|
} else {
|
||||||
this.props.onInteractionModal('favourite', this.props.status);
|
this.props.onInteractionModal('favourite', this.props.status);
|
||||||
}
|
}
|
||||||
|
e.stopPropagation();
|
||||||
};
|
};
|
||||||
|
|
||||||
handleReblogClick = e => {
|
handleReblogClick = e => {
|
||||||
@ -138,10 +157,12 @@ class StatusActionBar extends ImmutablePureComponent {
|
|||||||
} else {
|
} else {
|
||||||
this.props.onInteractionModal('reblog', this.props.status);
|
this.props.onInteractionModal('reblog', this.props.status);
|
||||||
}
|
}
|
||||||
|
e.stopPropagation();
|
||||||
};
|
};
|
||||||
|
|
||||||
handleBookmarkClick = () => {
|
handleBookmarkClick = e => {
|
||||||
this.props.onBookmark(this.props.status);
|
this.props.onBookmark(this.props.status);
|
||||||
|
e.stopPropagation();
|
||||||
};
|
};
|
||||||
|
|
||||||
handleDeleteClick = () => {
|
handleDeleteClick = () => {
|
||||||
@ -233,6 +254,11 @@ class StatusActionBar extends ImmutablePureComponent {
|
|||||||
this.props.onFilter();
|
this.props.onFilter();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
handleActionbarClick = (e) => {
|
||||||
|
console.log("dd")
|
||||||
|
e.stopPropagation();
|
||||||
|
};
|
||||||
|
|
||||||
render () {
|
render () {
|
||||||
const { status, relationship, intl, withDismiss, withCounters, scrollKey } = this.props;
|
const { status, relationship, intl, withDismiss, withCounters, scrollKey } = this.props;
|
||||||
const { signedIn, permissions } = this.context.identity;
|
const { signedIn, permissions } = this.context.identity;
|
||||||
|
@ -217,7 +217,7 @@ class StatusContent extends PureComponent {
|
|||||||
|
|
||||||
handleSpoilerClick = (e) => {
|
handleSpoilerClick = (e) => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
e.stopPropagation();
|
||||||
if (this.props.onExpandedToggle) {
|
if (this.props.onExpandedToggle) {
|
||||||
// The parent manages the state
|
// The parent manages the state
|
||||||
this.props.onExpandedToggle();
|
this.props.onExpandedToggle();
|
||||||
|
@ -33,13 +33,13 @@ export default class NavigationBar extends ImmutablePureComponent {
|
|||||||
<div className='navigation-bar__profile'>
|
<div className='navigation-bar__profile'>
|
||||||
<span>
|
<span>
|
||||||
<Link to={`/@${username}`}>
|
<Link to={`/@${username}`}>
|
||||||
<strong className='navigation-bar__profile-account'>{displayName}</strong>
|
<strong className='navigation-bar__profile-account display-name'>{displayName}</strong>
|
||||||
</Link>
|
</Link>
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<span>
|
<span>
|
||||||
<Link to={`/@${username}`}>
|
<Link to={`/@${username}`}>
|
||||||
<strong className='navigation-bar__profile-account'>@{username}</strong>
|
<strong className='navigation-bar__profile-account username'>@{username}</strong>
|
||||||
</Link>
|
</Link>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
@ -11,7 +11,7 @@ import { connect } from 'react-redux';
|
|||||||
|
|
||||||
import { debounce } from 'lodash';
|
import { debounce } from 'lodash';
|
||||||
|
|
||||||
import illustration from 'mastodon/../images/elephant_ui_conversation.svg';
|
import illustration from 'mastodon/../images/rabbit_ui_conversation.png';
|
||||||
import { fetchAccount } from 'mastodon/actions/accounts';
|
import { fetchAccount } from 'mastodon/actions/accounts';
|
||||||
import { focusCompose } from 'mastodon/actions/compose';
|
import { focusCompose } from 'mastodon/actions/compose';
|
||||||
import { closeOnboarding } from 'mastodon/actions/onboarding';
|
import { closeOnboarding } from 'mastodon/actions/onboarding';
|
||||||
|
@ -68,6 +68,10 @@ class DetailedStatus extends ImmutablePureComponent {
|
|||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
handleOpenVideo = (options) => {
|
handleOpenVideo = (options) => {
|
||||||
this.props.onOpenVideo(this.props.status.getIn(['media_attachments', 0]), options);
|
this.props.onOpenVideo(this.props.status.getIn(['media_attachments', 0]), options);
|
||||||
};
|
};
|
||||||
@ -296,7 +300,7 @@ class DetailedStatus extends ImmutablePureComponent {
|
|||||||
const expanded = !status.get('hidden') || status.get('spoiler_text').length === 0;
|
const expanded = !status.get('hidden') || status.get('spoiler_text').length === 0;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div style={outerStyle}>
|
<div style={outerStyle} >
|
||||||
<div ref={this.setRef} className={classNames('detailed-status', { compact })}>
|
<div ref={this.setRef} className={classNames('detailed-status', { compact })}>
|
||||||
{status.get('visibility') === 'direct' && (
|
{status.get('visibility') === 'direct' && (
|
||||||
<div className='status__prepend'>
|
<div className='status__prepend'>
|
||||||
|
@ -352,6 +352,9 @@ class Status extends ImmutablePureComponent {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
handleEditClick = (status, history) => {
|
handleEditClick = (status, history) => {
|
||||||
this.props.dispatch(editStatus(status.get('id'), history));
|
this.props.dispatch(editStatus(status.get('id'), history));
|
||||||
};
|
};
|
||||||
|
@ -623,7 +623,7 @@
|
|||||||
"server_banner.about_active_users": "30일 동안 이 서버를 사용한 사람들 (월간 활성 이용자)",
|
"server_banner.about_active_users": "30일 동안 이 서버를 사용한 사람들 (월간 활성 이용자)",
|
||||||
"server_banner.active_users": "활성 사용자",
|
"server_banner.active_users": "활성 사용자",
|
||||||
"server_banner.administered_by": "관리자:",
|
"server_banner.administered_by": "관리자:",
|
||||||
"server_banner.introduction": "{title}은 {WhippyEdition}으로 운영되는 마스토돈 인스턴스입니다. {WhippyEdition}은 오리지널 캐릭터의 교류를 목적으로 하는 커뮤니티를 위해 제공되고 있습니다.",
|
"server_banner.introduction": "{title}은(는) {WhippyEdition}으로 운영되는 마스토돈 인스턴스입니다. {WhippyEdition}은 오리지널 캐릭터의 교류를 목적으로 하는 커뮤니티를 위해 제공되고 있습니다.",
|
||||||
"server_banner.learn_more": "더 알아보기",
|
"server_banner.learn_more": "더 알아보기",
|
||||||
"server_banner.server_stats": "서버 통계:",
|
"server_banner.server_stats": "서버 통계:",
|
||||||
"sign_in_banner.create_account": "계정 생성",
|
"sign_in_banner.create_account": "계정 생성",
|
||||||
|
3
app/javascript/styles/bird-ui-dark.scss
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
@import 'application';
|
||||||
|
@import 'bird-ui/layout-single-column.scss';
|
||||||
|
@import 'bird-ui/layout-multiple-columns.scss';
|
5
app/javascript/styles/bird-ui-light.scss
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
@import 'mastodon-light/variables';
|
||||||
|
@import 'application';
|
||||||
|
@import 'mastodon-light/diff';
|
||||||
|
@import 'bird-ui/layout-single-column.scss';
|
||||||
|
@import 'bird-ui/layout-multiple-columns.scss';
|
4806
app/javascript/styles/bird-ui/layout-multiple-columns.scss
Normal file
4835
app/javascript/styles/bird-ui/layout-single-column.scss
Normal file
@ -678,3 +678,11 @@ img.logo--wordmark {
|
|||||||
img.logo--icon {
|
img.logo--icon {
|
||||||
content: url("../images/logos/logo_light.png");
|
content: url("../images/logos/logo_light.png");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@media screen and (max-width: $no-gap-breakpoint - 1px) {
|
||||||
|
.ui__header__logo img.logo {
|
||||||
|
content: url("../images/logos/m_logo_light.png");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -1040,7 +1040,7 @@ body > [data-popper-placement] {
|
|||||||
padding: 16px;
|
padding: 16px;
|
||||||
min-height: 54px;
|
min-height: 54px;
|
||||||
border-bottom: 1px solid lighten($ui-base-color, 8%);
|
border-bottom: 1px solid lighten($ui-base-color, 8%);
|
||||||
cursor: auto;
|
cursor: pointer;
|
||||||
|
|
||||||
@keyframes fade {
|
@keyframes fade {
|
||||||
0% {
|
0% {
|
||||||
@ -1059,6 +1059,7 @@ body > [data-popper-placement] {
|
|||||||
.video-player,
|
.video-player,
|
||||||
.audio-player,
|
.audio-player,
|
||||||
.attachment-list {
|
.attachment-list {
|
||||||
|
max-height: 500px;
|
||||||
margin-top: 16px;
|
margin-top: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1340,6 +1341,7 @@ body > [data-popper-placement] {
|
|||||||
.media-gallery,
|
.media-gallery,
|
||||||
.video-player,
|
.video-player,
|
||||||
.audio-player {
|
.audio-player {
|
||||||
|
max-height:unset;
|
||||||
margin-top: 16px;
|
margin-top: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1657,6 +1659,7 @@ a.account__display-name {
|
|||||||
line-height: 22px;
|
line-height: 22px;
|
||||||
margin-bottom: 16px;
|
margin-bottom: 16px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
width: fit-content;
|
||||||
|
|
||||||
strong,
|
strong,
|
||||||
span {
|
span {
|
||||||
@ -2487,8 +2490,15 @@ $ui-header-height: 55px;
|
|||||||
.error-column {
|
.error-column {
|
||||||
border-radius: 0 !important;
|
border-radius: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ui__header__logo img.logo {
|
||||||
|
content: url("../images/logos/m_logo_dark.png");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@media screen and (max-width: $no-gap-breakpoint - 285px - 1px) {
|
@media screen and (max-width: $no-gap-breakpoint - 285px - 1px) {
|
||||||
$sidebar-width: 55px;
|
$sidebar-width: 55px;
|
||||||
|
|
||||||
@ -2966,7 +2976,7 @@ $ui-header-height: 55px;
|
|||||||
}
|
}
|
||||||
|
|
||||||
.logo {
|
.logo {
|
||||||
height: 100px;
|
height: 85px;
|
||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -6311,7 +6321,6 @@ a.status-card {
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
display: block;
|
display: block;
|
||||||
position: relative;
|
position: relative;
|
||||||
border-radius: 8px;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|
||||||
&--tall {
|
&--tall {
|
||||||
|
3
app/javascript/styles/theme-ui-dark.scss
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
@import 'application';
|
||||||
|
@import 'theme-ui/layout-single-column.scss';
|
||||||
|
@import 'theme-ui/layout-multiple-columns.scss';
|
5
app/javascript/styles/theme-ui-light.scss
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
@import 'mastodon-light/variables';
|
||||||
|
@import 'application';
|
||||||
|
@import 'mastodon-light/diff';
|
||||||
|
@import 'theme-ui/layout-single-column.scss';
|
||||||
|
@import 'theme-ui/layout-multiple-columns.scss';
|
4839
app/javascript/styles/theme-ui/layout-multiple-columns.scss
Normal file
4886
app/javascript/styles/theme-ui/layout-single-column.scss
Normal file
@ -1733,11 +1733,11 @@ en:
|
|||||||
themes:
|
themes:
|
||||||
contrast: Mastodon (High contrast)
|
contrast: Mastodon (High contrast)
|
||||||
default: Mastodon Bird UI (Dark)
|
default: Mastodon Bird UI (Dark)
|
||||||
mastodon-bird-ui-light: Mastodon Bird UI (Light)
|
bird-ui-light: Mastodon Bird UI (Light)
|
||||||
|
bird-ui-dark: Mastodon Bird UI (dark)
|
||||||
mastodon-light: Mastodon (Light)
|
mastodon-light: Mastodon (Light)
|
||||||
mastodon-dark: Mastodon (Dark)
|
mastodon-dark: Mastodon (Dark)
|
||||||
mastodon-bird-ui-light-vanilla: Mastodon Bird UI - vanila (Light)
|
theme-ui-light: Mastodon Bird UI - vanila (dark)
|
||||||
mastodon-bird-ui-dark-vanilla: Mastodon Bird UI - vanila (dark)
|
|
||||||
time:
|
time:
|
||||||
formats:
|
formats:
|
||||||
default: "%b %d, %Y, %H:%M"
|
default: "%b %d, %Y, %H:%M"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
ko:
|
ko:
|
||||||
about:
|
about:
|
||||||
about_mastodon_html: '미래의 소셜 네트워크: 광고 없음, 기업 감시 없음, 윤리적 설계, 탈중앙화! 여러분만의 데이터를 Mastodon으로 소유하세요!'
|
about_mastodon_html: '휘핑 에디션 :: 오리지널 캐릭터의 교류를 목적으로 하는 커뮤니티를 위해 제공되는 마스토돈 에디션.'
|
||||||
contact_missing: 미설정
|
contact_missing: 미설정
|
||||||
contact_unavailable: 없음
|
contact_unavailable: 없음
|
||||||
hosted_on: "%{domain}에서 호스팅 되는 마스토돈"
|
hosted_on: "%{domain}에서 호스팅 되는 마스토돈"
|
||||||
@ -1701,12 +1701,12 @@ ko:
|
|||||||
does_not_match_previous_name: 이전 이름과 맞지 않습니다
|
does_not_match_previous_name: 이전 이름과 맞지 않습니다
|
||||||
themes:
|
themes:
|
||||||
contrast: 마스토돈 (고대비)
|
contrast: 마스토돈 (고대비)
|
||||||
default: 휘핑 에디션 테마 (어두움)
|
default: 휘핑 에디션 커스텀 테마 (어두움)
|
||||||
mastodon-bird-ui-light: 휘핑 에디션 테마 (밝음)
|
theme-ui-light: 휘핑 에디션 커스텀 테마 (밝음)
|
||||||
mastodon-light: 마스토돈 (밝음)
|
mastodon-light: 마스토돈 (밝음)
|
||||||
mastodon-dark: 마스토돈 (어두움)
|
mastodon-dark: 마스토돈 (어두움)
|
||||||
mastodon-bird-ui-light-vanilla: 파란새풍 테마 (밝음)
|
bird-ui-light: 파란새풍 테마 (밝음)
|
||||||
mastodon-bird-ui-dark-vanilla: 파란새풍 테마 (어두움)
|
bird-ui-dark: 파란새풍 테마 (어두움)
|
||||||
time:
|
time:
|
||||||
formats:
|
formats:
|
||||||
default: "%Y-%m-%d %H:%M"
|
default: "%Y-%m-%d %H:%M"
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
# default: styles/mastodon-bird-ui-dark.scss
|
# default: styles/mastodon-bird-ui-dark.scss
|
||||||
default: styles/application.scss
|
default: styles/theme-ui-dark.scss
|
||||||
# mastodon-bird-ui-light: styles/mastodon-bird-ui-light.scss
|
theme-ui-light : styles/theme-ui-light.scss
|
||||||
# bird-ui-light: styles/bird-ui-light.scss
|
bird-ui-light: styles/bird-ui-light.scss
|
||||||
# bird-ui-dark: styles/bird-ui-dark.scss
|
bird-ui-dark: styles/bird-ui-dark.scss
|
||||||
# # mastodon-dark: styles/application.scss
|
mastodon-dark: styles/application.scss
|
||||||
mastodon-light: styles/mastodon-light.scss
|
mastodon-light: styles/mastodon-light.scss
|
||||||
contrast: styles/contrast.scss
|
contrast: styles/contrast.scss
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |