mirror of
https://github.com/paricafe/misskey.git
synced 2024-11-24 16:26:44 -06:00
WIP #332
This commit is contained in:
parent
e70729dda4
commit
4a70af8b62
21 changed files with 124 additions and 46 deletions
|
@ -121,3 +121,81 @@ desktop:
|
|||
|
||||
mk-repost-form-window:
|
||||
title: "この投稿をRepostしますか?"
|
||||
|
||||
mobile:
|
||||
tags:
|
||||
mk-drive-file-viewer:
|
||||
download: "ダウンロード"
|
||||
rename: "名前を変更"
|
||||
move: "移動"
|
||||
fash: "ハッシュ"
|
||||
|
||||
mk-entrance-signin:
|
||||
signup: "新規登録"
|
||||
about: "Misskeyについて"
|
||||
|
||||
mk-entrance-signup:
|
||||
cancel: "キャンセル"
|
||||
|
||||
mk-authorized-apps-page:
|
||||
application: "アプリケーション"
|
||||
|
||||
mk-signin-history-page:
|
||||
signin-history: "ログイン履歴"
|
||||
|
||||
mk-twitter-setting-page:
|
||||
twitter-integration: "Twitter連携"
|
||||
|
||||
mk-drive-page:
|
||||
drive: "ドライブ"
|
||||
|
||||
mk-entrance:
|
||||
ok: "わかった"
|
||||
|
||||
mk-home:
|
||||
home: "ホーム"
|
||||
|
||||
mk-messaging-room-page:
|
||||
message: "メッセージ"
|
||||
|
||||
mk-messaging-page:
|
||||
message: "メッセージ"
|
||||
|
||||
mk-notifications-page:
|
||||
notifications: "通知"
|
||||
|
||||
mk-post-page:
|
||||
submit: "投稿"
|
||||
|
||||
mk-search-page:
|
||||
search: "検索"
|
||||
|
||||
mk-settings-page:
|
||||
profile: "プロフィール"
|
||||
applications: "アプリケーション"
|
||||
twitter-integration: "Twitter連携"
|
||||
signin-history: "ログイン履歴"
|
||||
settings: "設定"
|
||||
|
||||
mk-user-followers-page:
|
||||
followers-of: "{}のフォロワー"
|
||||
|
||||
mk-user-following-page:
|
||||
following-of: "{}のフォロー"
|
||||
|
||||
mk-drive-folder-selector:
|
||||
select-folder: "フォルダーを選択"
|
||||
|
||||
mk-drive-selector:
|
||||
select-file: "ファイルを選択"
|
||||
|
||||
mk-drive:
|
||||
drive: "ドライブ"
|
||||
used: "使用中"
|
||||
folder-count: "フォルダ"
|
||||
count-separator: "、"
|
||||
file-count: "ファイル"
|
||||
load-more: "もっと読み込む"
|
||||
loading: "読み込み中"
|
||||
nothing-in-drive: "ドライブには何もありません"
|
||||
folder-is-empty: "このフォルダは空です"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<mk-drive-folder-selector>
|
||||
<div class="body">
|
||||
<header>
|
||||
<h1>フォルダを選択</h1>
|
||||
<h1>%i18n:mobile.tags.mk-drive-folder-selector.select-folder%</h1>
|
||||
<button class="close" onclick={ cancel }><i class="fa fa-times"></i></button>
|
||||
<button class="ok" onclick={ ok }><i class="fa fa-check"></i></button>
|
||||
</header>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<mk-drive-selector>
|
||||
<div class="body">
|
||||
<header>
|
||||
<h1>ファイルを選択<span class="count" if={ files.length > 0 }>({ files.length })</span></h1>
|
||||
<h1>%i18n:mobile.tags.mk-drive-selector.select-file%<span class="count" if={ files.length > 0 }>({ files.length })</span></h1>
|
||||
<button class="close" onclick={ cancel }><i class="fa fa-times"></i></button>
|
||||
<button class="ok" onclick={ ok }><i class="fa fa-check"></i></button>
|
||||
</header>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<mk-drive>
|
||||
<nav>
|
||||
<p onclick={ goRoot }><i class="fa fa-cloud"></i>ドライブ</p>
|
||||
<p onclick={ goRoot }><i class="fa fa-cloud"></i>%i18n:mobile.tags.mk-drive.drive%</p>
|
||||
<virtual each={ folder in hierarchyFolders }>
|
||||
<span><i class="fa fa-angle-right"></i></span>
|
||||
<p onclick={ move }>{ folder.name }</p>
|
||||
|
@ -17,30 +17,30 @@
|
|||
<mk-uploader ref="uploader"></mk-uploader>
|
||||
<div class="browser { fetching: fetching }" if={ file == null }>
|
||||
<div class="info" if={ info }>
|
||||
<p if={ folder == null }>{ (info.usage / info.capacity * 100).toFixed(1) }%使用中</p>
|
||||
<p if={ folder == null }>{ (info.usage / info.capacity * 100).toFixed(1) }% %i18n:mobile.tags.mk-drive.used%</p>
|
||||
<p if={ folder != null && (folder.folders_count > 0 || folder.files_count > 0) }>
|
||||
<virtual if={ folder.folders_count > 0 }>{ folder.folders_count }フォルダ</virtual>
|
||||
<virtual if={ folder.folders_count > 0 && folder.files_count > 0 }>、</virtual>
|
||||
<virtual if={ folder.files_count > 0 }>{ folder.files_count }ファイル</virtual>
|
||||
<virtual if={ folder.folders_count > 0 }>{ folder.folders_count } %i18:mobile.tags.mk-drive.folder-count%</virtual>
|
||||
<virtual if={ folder.folders_count > 0 && folder.files_count > 0 }>%i18n:mobile.tags.mk-drive.count-separator%</virtual>
|
||||
<virtual if={ folder.files_count > 0 }>{ folder.files_count } %i18n:mobile.tags.mk-drive.file-count%</virtual>
|
||||
</p>
|
||||
</div>
|
||||
<div class="folders" if={ folders.length > 0 }>
|
||||
<virtual each={ folder in folders }>
|
||||
<mk-drive-folder folder={ folder }></mk-drive-folder>
|
||||
</virtual>
|
||||
<p if={ moreFolders }>もっと読み込む</p>
|
||||
<p if={ moreFolders }>%i18n:mobile.tags.mk-drive.load-more%</p>
|
||||
</div>
|
||||
<div class="files" if={ files.length > 0 }>
|
||||
<virtual each={ file in files }>
|
||||
<mk-drive-file file={ file }></mk-drive-file>
|
||||
</virtual>
|
||||
<button class="more" if={ moreFiles } onclick={ fetchMoreFiles }>
|
||||
{ fetchingMoreFiles ? '読み込み中' : 'もっと読み込む' }
|
||||
{ fetchingMoreFiles ? '%i18n:mobile.tags.mk-drive.loading%' : '%i18n:mobile.tags.mk-drive.load-more%' }
|
||||
</button>
|
||||
</div>
|
||||
<div class="empty" if={ files.length == 0 && folders.length == 0 && !fetching }>
|
||||
<p if={ !folder == null }>ドライブには何もありません。</p>
|
||||
<p if={ folder != null }>このフォルダーは空です</p>
|
||||
<p if={ !folder == null }>%i18n:mobile.tags.mk-drive.nothing-in-drive%</p>
|
||||
<p if={ folder != null }>%i18n:mobile.tags.mk-drive.drive-is-empty%</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="fetching" if={ fetching && file == null && files.length == 0 && folders.length == 0 }>
|
||||
|
|
|
@ -29,20 +29,20 @@
|
|||
<div class="menu">
|
||||
<div>
|
||||
<a href={ file.url + '?download' } download={ file.name }>
|
||||
<i class="fa fa-download"></i>ダウンロード
|
||||
<i class="fa fa-download"></i>%i18n:mobile.tags.mk-drive-file-viewer.download%
|
||||
</a>
|
||||
<button onclick={ rename }>
|
||||
<i class="fa fa-pencil"></i>名前を変更
|
||||
<i class="fa fa-pencil"></i>%i18n:mobile.tags.mk-drive-file-viewer.rename%
|
||||
</button>
|
||||
<button onclick={ move }>
|
||||
<i class="fa fa-folder-open"></i>移動
|
||||
<i class="fa fa-folder-open"></i>%i18n:mobile.tags.mk-drive-file-viewer.move%
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hash">
|
||||
<div>
|
||||
<p>
|
||||
<i class="fa fa-hashtag"></i>ファイルのハッシュ値
|
||||
<i class="fa fa-hashtag"></i>%i18n:mobile.tags.mk-drive-file-viewer.hash%
|
||||
</p>
|
||||
<code>{ file.hash }</code>
|
||||
</div>
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey Drive';
|
||||
ui.trigger('title', '<i class="fa fa-cloud"></i>ドライブ');
|
||||
ui.trigger('title', '<i class="fa fa-cloud"></i>%i18n:mobile.tags.mk-drive-page.drive%');
|
||||
|
||||
ui.trigger('func', () => {
|
||||
this.refs.ui.refs.browser.openContextMenu();
|
||||
|
@ -37,7 +37,7 @@
|
|||
history.pushState(null, title, '/i/drive');
|
||||
|
||||
document.title = title;
|
||||
ui.trigger('title', '<i class="fa fa-cloud"></i>ドライブ');
|
||||
ui.trigger('title', '<i class="fa fa-cloud"></i>%i18n:mobile.tags.mk-drive-page.drive%');
|
||||
});
|
||||
|
||||
this.refs.ui.refs.browser.on('open-folder', (folder, silent) => {
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<mk-entrance-signup if={ mode == 'signup' }></mk-entrance-signup>
|
||||
<div class="introduction" if={ mode == 'introduction' }>
|
||||
<mk-introduction></mk-introduction>
|
||||
<button onclick={ signin }>わかった</button>
|
||||
<button onclick={ signin }>%i18n:mobile.tags.mk-entrance.ok%</button>
|
||||
</div>
|
||||
</main>
|
||||
<footer>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<mk-entrance-signin>
|
||||
<mk-signin></mk-signin>
|
||||
<div class="divider"><span>or</span></div>
|
||||
<button class="signup" onclick={ parent.signup }>新規登録</button><a class="introduction" onclick={ parent.introduction }>Misskeyについて</a>
|
||||
<button class="signup" onclick={ parent.signup }>%i18n:mobile.tags.mk-entrance.signup%</button><a class="introduction" onclick={ parent.introduction }>%i18n:mobile.tags.mk-entrance-signin.about%</a>
|
||||
<style>
|
||||
:scope
|
||||
display block
|
||||
|
@ -43,9 +43,9 @@
|
|||
font-size 12px
|
||||
color #666
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</style>
|
||||
</mk-entrance-signin>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<mk-entrance-signup>
|
||||
<mk-signup></mk-signup>
|
||||
<button class="cancel" type="button" onclick={ parent.signin } title="キャンセル"><i class="fa fa-times"></i></button>
|
||||
<button class="cancel" type="button" onclick={ parent.signin } title="%i18n:mobile.tags.mk-entrance-signup.cancel%"><i class="fa fa-times"></i></button>
|
||||
<style>
|
||||
:scope
|
||||
display block
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey'
|
||||
ui.trigger('title', '<i class="fa fa-home"></i>ホーム');
|
||||
ui.trigger('title', '<i class="fa fa-home"></i>%i18n:mobile.tags.mk-home.home%');
|
||||
|
||||
ui.trigger('func', () => {
|
||||
openPostForm();
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
user: user
|
||||
});
|
||||
|
||||
document.title = `メッセージ: ${user.name} | Misskey`;
|
||||
document.title = `%i18n:mobile.tags.mk-messaging-room-page.message%: ${user.name} | Misskey`;
|
||||
// TODO: ユーザー名をエスケープ
|
||||
ui.trigger('title', '<i class="fa fa-comments-o"></i>' + user.name);
|
||||
});
|
||||
|
|
|
@ -12,8 +12,8 @@
|
|||
this.mixin('page');
|
||||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey | メッセージ';
|
||||
ui.trigger('title', '<i class="fa fa-comments-o"></i>メッセージ');
|
||||
document.title = 'Misskey | %i18n:mobile.tags.mk-messaging-page.message%';
|
||||
ui.trigger('title', '<i class="fa fa-comments-o"></i>%i18n:mobile.tags.mk-messaging-page.message%');
|
||||
|
||||
this.refs.ui.refs.index.on('navigate-user', user => {
|
||||
this.page('/i/messaging/' + user.username);
|
||||
|
|
|
@ -11,8 +11,8 @@
|
|||
import Progress from '../../../common/scripts/loading';
|
||||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey | 通知';
|
||||
ui.trigger('title', '<i class="fa fa-bell-o"></i>通知');
|
||||
document.title = 'Misskey | %i18n:mobile.tags.mk-notifications-page.notifications%';
|
||||
ui.trigger('title', '<i class="fa fa-bell-o"></i>%i18n:mobile.tags.mk-notifications-page.notifications%');
|
||||
|
||||
Progress.start();
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey';
|
||||
ui.trigger('title', '<i class="fa fa-sticky-note-o"></i>投稿');
|
||||
ui.trigger('title', '<i class="fa fa-sticky-note-o"></i>%i18n:mobile.tags.mk-post-page.submit%');
|
||||
|
||||
Progress.start();
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
import Progress from '../../../common/scripts/loading';
|
||||
|
||||
this.on('mount', () => {
|
||||
document.title = `検索: ${this.opts.query} | Misskey`
|
||||
document.title = `%i18n:mobile.tags.mk-search-page.search%: ${this.opts.query} | Misskey`
|
||||
// TODO: クエリをHTMLエスケープ
|
||||
ui.trigger('title', '<i class="fa fa-search"></i>' + this.opts.query);
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
<mk-settings-page>
|
||||
<mk-ui ref="ui">
|
||||
<ul>
|
||||
<li><a><i class="fa fa-user"></i>プロフィール</a></li>
|
||||
<li><a href="./settings/authorized-apps"><i class="fa fa-puzzle-piece"></i>アプリケーション</a></li>
|
||||
<li><a href="./settings/twitter"><i class="fa fa-twitter"></i>Twitter連携</a></li>
|
||||
<li><a href="./settings/signin-history"><i class="fa fa-sign-in"></i>ログイン履歴</a></li>
|
||||
<li><a><i class="fa fa-user"></i>%i18n:mobile.tags.mk-settings-page.profile%</a></li>
|
||||
<li><a href="./settings/authorized-apps"><i class="fa fa-puzzle-piece"></i>%i18n:mobile.tags.mk-settings-page.applications%</a></li>
|
||||
<li><a href="./settings/twitter"><i class="fa fa-twitter"></i>%i18n:mobile.tags.mk-settings-page.twitter-integration%</a></li>
|
||||
<li><a href="./settings/signin-history"><i class="fa fa-sign-in"></i>%i18n:mobile.tags.mk-settings-page.signin-history%</a></li>
|
||||
<li><a href="./settings/api"><i class="fa fa-key"></i>API</a></li>
|
||||
</ul>
|
||||
</mk-ui>
|
||||
|
@ -16,8 +16,8 @@
|
|||
import ui from '../../scripts/ui-event';
|
||||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey | 設定';
|
||||
ui.trigger('title', '<i class="fa fa-cog"></i>設定');
|
||||
document.title = 'Misskey | %i18n:mobile.tags.mk-settings-page.settings%';
|
||||
ui.trigger('title', '<i class="fa fa-cog"></i>%i18n:mobile.tags.mk-settings-page.settings%');
|
||||
});
|
||||
</script>
|
||||
</mk-settings-page>
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
const ui = require('../../../scripts/ui-event');
|
||||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey | アプリケーション';
|
||||
ui.trigger('title', '<i class="fa fa-puzzle-piece"></i>アプリケーション');
|
||||
document.title = 'Misskey | %i18n:mobile.tags.mk-authorized-apps-page.application%';
|
||||
ui.trigger('title', '<i class="fa fa-puzzle-piece"></i>%i18n:mobile.tags.mk-authorized-apps-page.application%');
|
||||
});
|
||||
</script>
|
||||
</mk-authorized-apps-page>
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
const ui = require('../../../scripts/ui-event');
|
||||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey | ログイン履歴';
|
||||
ui.trigger('title', '<i class="fa fa-sign-in"></i>ログイン履歴');
|
||||
document.title = 'Misskey | %i18n:mobile.tags.mk-signin-history-page.signin-history%';
|
||||
ui.trigger('title', '<i class="fa fa-sign-in"></i>%i18n:mobile.tags.mk-signin-history-page.signin-history%');
|
||||
});
|
||||
</script>
|
||||
</mk-signin-history-page>
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
const ui = require('../../../scripts/ui-event');
|
||||
|
||||
this.on('mount', () => {
|
||||
document.title = 'Misskey | Twitter連携';
|
||||
ui.trigger('title', '<i class="fa fa-twitter"></i>Twitter連携');
|
||||
document.title = 'Misskey | %i18n:mobile.tags.mk-twitter-setting-page.twitter-integration%';
|
||||
ui.trigger('title', '<i class="fa fa-twitter"></i>%i18n:mobile.tags.mk-twitter-setting-page.twitter-integration%');
|
||||
});
|
||||
</script>
|
||||
</mk-twitter-setting-page>
|
||||
|
|
|
@ -26,9 +26,9 @@
|
|||
user: user
|
||||
});
|
||||
|
||||
document.title = user.name + 'のフォロワー | Misskey';
|
||||
document.title = '%i18n:mobile.tags.mk-user-followers-page.followers-of%'.replace('{}', user.name) + ' | Misskey';
|
||||
// TODO: ユーザー名をエスケープ
|
||||
ui.trigger('title', '<img src="' + user.avatar_url + '?thumbnail&size=64">' + user.name + 'のフォロワー');
|
||||
ui.trigger('title', '<img src="' + user.avatar_url + '?thumbnail&size=64">' + '%i18n:mobile.tags.mk-user-followers-page.followers-of%'.replace('{}', user.name));
|
||||
|
||||
this.refs.ui.refs.list.on('loaded', () => {
|
||||
Progress.done();
|
||||
|
|
|
@ -26,9 +26,9 @@
|
|||
user: user
|
||||
});
|
||||
|
||||
document.title = user.name + 'のフォロー | Misskey';
|
||||
document.title = '%i18n:mobile.tags.mk-user-following-page.following-of%'.replace('{}', user.name) + ' | Misskey';
|
||||
// TODO: ユーザー名をエスケープ
|
||||
ui.trigger('title', '<img src="' + user.avatar_url + '?thumbnail&size=64">' + user.name + 'のフォロー');
|
||||
ui.trigger('title', '<img src="' + user.avatar_url + '?thumbnail&size=64">' + '%i18n:mobile.tags.mk-user-following-page.following-of%'.replace('{}', user.name));
|
||||
|
||||
this.refs.ui.refs.list.on('loaded', () => {
|
||||
Progress.done();
|
||||
|
|
Loading…
Reference in a new issue