Compare commits
53 Commits
Author | SHA1 | Date | |
---|---|---|---|
81cc6f3104 | |||
cc0b9c6933 | |||
5671f1c6a4 | |||
89dee86f39 | |||
b414068ada | |||
3be7952e9f | |||
137b5da4aa | |||
2ee1639acb | |||
a05b184595 | |||
f3bacae1dc | |||
af5fb99fe6 | |||
0ebe4ad7a3 | |||
0cf99037c8 | |||
b913debc57 | |||
abe3f1f5e9 | |||
d30b88364c | |||
4840b7acf7 | |||
f5bac11fae | |||
68a70a94fc | |||
bf7436ddf8 | |||
b99155a084 | |||
027e62a6ea | |||
c6b6c8afbd | |||
1236a09247 | |||
6a4d38045e | |||
281aed2797 | |||
3e47f9943a | |||
f6d27dd17d | |||
073704c7af | |||
809db02ca2 | |||
2e45ff6a32 | |||
02d6974be9 | |||
e530afb2fe | |||
dba15f0e8b | |||
8f771c60c5 | |||
d9b1ca8c48 | |||
9e247c119a | |||
08b5e21e96 | |||
2101d3aa5b | |||
aa80fb5d4a | |||
63727f6514 | |||
ade35cbb2d | |||
6ec9059ccc | |||
c93d1711cf | |||
e734ad0413 | |||
047dee3a70 | |||
8c76089caf | |||
ab6cf2dba3 | |||
65a309e605 | |||
f37e713640 | |||
bc1e9245bd | |||
2fa82bde16 | |||
140249172c |
@ -4,6 +4,10 @@
|
|||||||
notifications:
|
notifications:
|
||||||
email: false
|
email: false
|
||||||
|
|
||||||
|
branches:
|
||||||
|
except:
|
||||||
|
- l10n_master
|
||||||
|
|
||||||
language: node_js
|
language: node_js
|
||||||
|
|
||||||
node_js:
|
node_js:
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "Deutsch"
|
lang: "Deutsch"
|
||||||
divider: ""
|
divider: " "
|
||||||
common:
|
common:
|
||||||
misskey: "Teile alles mit anderen mithilfe von Misskey"
|
misskey: "Teile alles mit anderen mithilfe von Misskey"
|
||||||
time:
|
time:
|
||||||
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "すべての通知を既読にしますか?"
|
read-all: "すべての通知を既読にしますか?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -166,14 +166,14 @@ common/views/widgets/server.vue:
|
|||||||
title: "Server info"
|
title: "Server info"
|
||||||
toggle: "Toggle views"
|
toggle: "Toggle views"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/visibility-chooser.vue:
|
||||||
public: "公開"
|
public: "Public"
|
||||||
home: "ホーム"
|
home: "Home"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
followers: "フォロワー"
|
followers: "Followers"
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
specified: "ダイレクト"
|
specified: "Direct"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
private: "非公開"
|
private: "Private"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Blue ... Notes"
|
||||||
@ -475,8 +475,8 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "Description"
|
description: "Description"
|
||||||
birthday: "Birthday"
|
birthday: "Birthday"
|
||||||
save: "Update profile"
|
save: "Update profile"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "This account is a Bot"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "This account is a Cat"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(this post is private)"
|
hidden: "(this post is private)"
|
||||||
media: " media"
|
media: " media"
|
||||||
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "Popout"
|
popout: "Popout"
|
||||||
close: "Close"
|
close: "Close"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "Log In"
|
||||||
|
signup: "Sign up"
|
||||||
|
signin-button: "Log in"
|
||||||
|
signup-button: "Sign up"
|
||||||
|
timeline: "Timeline"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "Are you sure you want to mark all unread notifications as read?"
|
read-all: "Are you sure you want to mark all unread notifications as read?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "Profile"
|
title: "Profile"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "Name"
|
name: "Name"
|
||||||
account: "Account"
|
account: "Account"
|
||||||
location: "Location"
|
location: "Location"
|
||||||
@ -684,8 +689,7 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "Birthday"
|
birthday: "Birthday"
|
||||||
avatar: "Avatar"
|
avatar: "Avatar"
|
||||||
banner: "Banner"
|
banner: "Banner"
|
||||||
is-bot: "This account is a Bot"
|
is-cat: "This account is a Cat"
|
||||||
is-cat: "このアカウントはCatです"
|
|
||||||
save: "Update profile"
|
save: "Update profile"
|
||||||
saved: "Profile updated successfully"
|
saved: "Profile updated successfully"
|
||||||
uploading: "Uploading"
|
uploading: "Uploading"
|
||||||
|
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "すべての通知を既読にしますか?"
|
read-all: "すべての通知を既読にしますか?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "日本語"
|
lang: "Français"
|
||||||
divider: ""
|
divider: " "
|
||||||
common:
|
common:
|
||||||
misskey: "Partagez avec les autres en utilisant Misskey"
|
misskey: "Partagez avec les autres en utilisant Misskey"
|
||||||
time:
|
time:
|
||||||
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "Êtes vous sûr de vouloir marqués toutes les notifications non-lus en tant que lus?"
|
read-all: "Êtes vous sûr de vouloir marqués toutes les notifications non-lus en tant que lus?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "すべての通知を既読にしますか?"
|
read-all: "すべての通知を既読にしますか?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -612,6 +612,13 @@ desktop/views/components/window.vue:
|
|||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
|
|
||||||
@ -807,7 +814,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
|
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -815,7 +821,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "すべての通知を既読にしますか?"
|
read-all: "すべての通知を既読にしますか?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "japoński"
|
lang: "język polski"
|
||||||
divider: ""
|
divider: " "
|
||||||
common:
|
common:
|
||||||
misskey: "Dziel się zawartością z innymi korzystając z Misskey."
|
misskey: "Dziel się zawartością z innymi korzystając z Misskey."
|
||||||
time:
|
time:
|
||||||
@ -166,14 +166,14 @@ common/views/widgets/server.vue:
|
|||||||
title: "Informacje o serwerze"
|
title: "Informacje o serwerze"
|
||||||
toggle: "Przełącz widok"
|
toggle: "Przełącz widok"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/visibility-chooser.vue:
|
||||||
public: "公開"
|
public: "Publiczny"
|
||||||
home: "ホーム"
|
home: "Lokalny"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
home-desc: "Widoczny tylko na tej instancji"
|
||||||
followers: "フォロワー"
|
followers: "Dla śledzących"
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
followers-desc: "Widoczny tylko dla osób, które Cię śledzą"
|
||||||
specified: "ダイレクト"
|
specified: "Bezpośredni"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
specified-desc: "Tylko dla określonych użytkowników"
|
||||||
private: "非公開"
|
private: "Prywatny"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Czarny … Łącznie"
|
total: "Czarny … Łącznie"
|
||||||
notes: "Niebieski … Wpisy"
|
notes: "Niebieski … Wpisy"
|
||||||
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Dysk Misskey"
|
title: "Dysk Misskey"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "Czy na pewno chcesz oznaczyć wszystkie powiadomienia jako przeczytane?"
|
read-all: "Czy na pewno chcesz oznaczyć wszystkie powiadomienia jako przeczytane?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "Profil"
|
title: "Profil"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "Nazwa"
|
name: "Nazwa"
|
||||||
account: "Konto"
|
account: "Konto"
|
||||||
location: "Lokalizacja"
|
location: "Lokalizacja"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "Data urodzenia"
|
birthday: "Data urodzenia"
|
||||||
avatar: "Awatar"
|
avatar: "Awatar"
|
||||||
banner: "Baner"
|
banner: "Baner"
|
||||||
is-bot: "To konto jest botem"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "Aktualizuj profil"
|
save: "Aktualizuj profil"
|
||||||
saved: "Pomyślnie zaktualizowano profil"
|
saved: "Pomyślnie zaktualizowano profil"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "日本語"
|
lang: "Русский язык"
|
||||||
divider: ""
|
divider: " "
|
||||||
common:
|
common:
|
||||||
misskey: "Misskeyで皆と共有しよう。"
|
misskey: "Misskeyで皆と共有しよう。"
|
||||||
time:
|
time:
|
||||||
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "すべての通知を既読にしますか?"
|
read-all: "すべての通知を既読にしますか?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -523,6 +523,12 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@ -676,7 +682,6 @@ mobile/views/pages/notifications.vue:
|
|||||||
read-all: "すべての通知を既読にしますか?"
|
read-all: "すべての通知を既読にしますか?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "プロフィール"
|
||||||
will-be-published: "※公開されます"
|
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@ -684,7 +689,6 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-bot: "このアカウントはBotです"
|
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "プロフィールを保存しました"
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"name": "misskey",
|
"name": "misskey",
|
||||||
"author": "syuilo <i@syuilo.com>",
|
"author": "syuilo <i@syuilo.com>",
|
||||||
"version": "2.14.0",
|
"version": "2.16.2",
|
||||||
"clientVersion": "1.0.5606",
|
"clientVersion": "1.0.5657",
|
||||||
"codename": "nighthike",
|
"codename": "nighthike",
|
||||||
"main": "./built/index.js",
|
"main": "./built/index.js",
|
||||||
"private": true,
|
"private": true,
|
||||||
|
@ -40,9 +40,6 @@
|
|||||||
const data = JSON.parse(vuex);
|
const data = JSON.parse(vuex);
|
||||||
if (data.device.lang) lang = data.device.lang;
|
if (data.device.lang) lang = data.device.lang;
|
||||||
}
|
}
|
||||||
|
|
||||||
const storedLang = localStorage.getItem('lang');
|
|
||||||
if (storedLang) lang = storedLang;
|
|
||||||
//#endregion
|
//#endregion
|
||||||
|
|
||||||
// Detect the user agent
|
// Detect the user agent
|
||||||
|
@ -26,7 +26,11 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
style(): any {
|
style(): any {
|
||||||
return {
|
return {
|
||||||
backgroundColor: this.user.avatarColor && this.user.avatarColor.length == 3 ? `rgb(${ this.user.avatarColor.join(',') })` : null,
|
backgroundColor: this.lightmode
|
||||||
|
? `rgb(${ this.user.avatarColor.slice(0, 3).join(',') })`
|
||||||
|
: this.user.avatarColor && this.user.avatarColor.length == 3
|
||||||
|
? `rgb(${ this.user.avatarColor.join(',') })`
|
||||||
|
: null,
|
||||||
backgroundImage: this.lightmode ? null : `url(${ this.user.avatarUrl }?thumbnail)`,
|
backgroundImage: this.lightmode ? null : `url(${ this.user.avatarUrl }?thumbnail)`,
|
||||||
borderRadius: (this as any).clientSettings.circleIcons ? '100%' : null
|
borderRadius: (this as any).clientSettings.circleIcons ? '100%' : null
|
||||||
};
|
};
|
||||||
|
@ -28,7 +28,7 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
document.title = 'Oops!';
|
document.title = 'Oops!';
|
||||||
document.documentElement.style.background = '#f8f8f8';
|
document.documentElement.style.setProperty('background', '#f8f8f8', 'important');
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
reload() {
|
reload() {
|
||||||
|
@ -4,6 +4,9 @@
|
|||||||
<div class="main">
|
<div class="main">
|
||||||
<header>
|
<header>
|
||||||
<router-link class="name" :to="note.user | userPage" v-user-preview="note.userId">{{ note.user | userName }}</router-link>
|
<router-link class="name" :to="note.user | userPage" v-user-preview="note.userId">{{ note.user | userName }}</router-link>
|
||||||
|
<span class="is-admin" v-if="note.user.isAdmin">admin</span>
|
||||||
|
<span class="is-bot" v-if="note.user.isBot">bot</span>
|
||||||
|
<span class="is-cat" v-if="note.user.isCat">cat</span>
|
||||||
<span class="username"><mk-acct :user="note.user"/></span>
|
<span class="username"><mk-acct :user="note.user"/></span>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
|
<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
|
||||||
@ -68,7 +71,6 @@ root(isDark)
|
|||||||
align-items baseline
|
align-items baseline
|
||||||
margin-bottom 2px
|
margin-bottom 2px
|
||||||
white-space nowrap
|
white-space nowrap
|
||||||
line-height 21px
|
|
||||||
|
|
||||||
> .name
|
> .name
|
||||||
display block
|
display block
|
||||||
@ -84,6 +86,20 @@ root(isDark)
|
|||||||
&:hover
|
&:hover
|
||||||
text-decoration underline
|
text-decoration underline
|
||||||
|
|
||||||
|
> .is-admin
|
||||||
|
> .is-bot
|
||||||
|
> .is-cat
|
||||||
|
margin 0 0.5em 0 0
|
||||||
|
padding 1px 5px
|
||||||
|
font-size 10px
|
||||||
|
color isDark ? #758188 : #aaa
|
||||||
|
border solid 1px isDark ? #57616f : #ddd
|
||||||
|
border-radius 3px
|
||||||
|
|
||||||
|
&.is-admin
|
||||||
|
border-color isDark ? #d42c41 : #f56a7b
|
||||||
|
color isDark ? #d42c41 : #f56a7b
|
||||||
|
|
||||||
> .username
|
> .username
|
||||||
margin 0 .5em 0 0
|
margin 0 .5em 0 0
|
||||||
color isDark ? #606984 : #d1d8da
|
color isDark ? #606984 : #d1d8da
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
<div class="main">
|
<div class="main">
|
||||||
<header>
|
<header>
|
||||||
<router-link class="name" :to="p.user | userPage" v-user-preview="p.user.id">{{ p.user | userName }}</router-link>
|
<router-link class="name" :to="p.user | userPage" v-user-preview="p.user.id">{{ p.user | userName }}</router-link>
|
||||||
|
<span class="is-admin" v-if="p.user.isAdmin">admin</span>
|
||||||
<span class="is-bot" v-if="p.user.isBot">bot</span>
|
<span class="is-bot" v-if="p.user.isBot">bot</span>
|
||||||
<span class="is-cat" v-if="p.user.isCat">cat</span>
|
<span class="is-cat" v-if="p.user.isCat">cat</span>
|
||||||
<span class="username"><mk-acct :user="p.user"/></span>
|
<span class="username"><mk-acct :user="p.user"/></span>
|
||||||
@ -431,6 +432,7 @@ root(isDark)
|
|||||||
&:hover
|
&:hover
|
||||||
text-decoration underline
|
text-decoration underline
|
||||||
|
|
||||||
|
> .is-admin
|
||||||
> .is-bot
|
> .is-bot
|
||||||
> .is-cat
|
> .is-cat
|
||||||
margin 0 .5em 0 0
|
margin 0 .5em 0 0
|
||||||
@ -440,6 +442,10 @@ root(isDark)
|
|||||||
border solid 1px isDark ? #57616f : #ddd
|
border solid 1px isDark ? #57616f : #ddd
|
||||||
border-radius 3px
|
border-radius 3px
|
||||||
|
|
||||||
|
&.is-admin
|
||||||
|
border-color isDark ? #d42c41 : #f56a7b
|
||||||
|
color isDark ? #d42c41 : #f56a7b
|
||||||
|
|
||||||
> .username
|
> .username
|
||||||
margin 0 .5em 0 0
|
margin 0 .5em 0 0
|
||||||
overflow hidden
|
overflow hidden
|
||||||
|
@ -1,23 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-welcome">
|
<div class="mk-welcome">
|
||||||
<main>
|
<main>
|
||||||
<div class="top">
|
<img src="assets/title.svg" alt="Misskey">
|
||||||
<div>
|
<p><button class="signup" @click="signup">%i18n:@signup-button%</button><button class="signin" @click="signin">%i18n:@signin-button%</button></p>
|
||||||
<div>
|
|
||||||
<h1>Share<br><span ref="share">Everything!</span><span class="cursor">_</span></h1>
|
<div class="tl">
|
||||||
<p>ようこそ! <b>Misskey</b>はTwitter風ミニブログSNSです。思ったことや皆と共有したいことを投稿しましょう。タイムラインを見れば、皆の関心事をすぐにチェックすることもできます。<a :href="aboutUrl">詳しく...</a></p>
|
<header>%fa:comments R% %i18n:@timeline%<div><span></span><span></span><span></span></div></header>
|
||||||
<p><button class="signup" @click="signup">はじめる</button><button class="signin" @click="signin">ログイン</button></p>
|
<mk-welcome-timeline/>
|
||||||
<div class="users">
|
|
||||||
<mk-avatar class="avatar" v-for="user in users" :key="user.id" :user="user"/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<div>
|
|
||||||
<header>%fa:comments R% タイムライン<div><span></span><span></span><span></span></div></header>
|
|
||||||
<mk-welcome-timeline/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
<mk-forkit/>
|
<mk-forkit/>
|
||||||
@ -28,11 +17,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
<modal name="signup" width="500px" height="auto" scrollable>
|
<modal name="signup" width="500px" height="auto" scrollable>
|
||||||
<header :class="$style.signupFormHeader">新規登録</header>
|
<header :class="$style.signupFormHeader">%i18n:@signup%</header>
|
||||||
<mk-signup :class="$style.signupForm"/>
|
<mk-signup :class="$style.signupForm"/>
|
||||||
</modal>
|
</modal>
|
||||||
<modal name="signin" width="500px" height="auto" scrollable>
|
<modal name="signin" width="500px" height="auto" scrollable>
|
||||||
<header :class="$style.signinFormHeader">ログイン</header>
|
<header :class="$style.signinFormHeader">%i18n:@signin%</header>
|
||||||
<mk-signin :class="$style.signinForm"/>
|
<mk-signin :class="$style.signinForm"/>
|
||||||
</modal>
|
</modal>
|
||||||
</div>
|
</div>
|
||||||
@ -42,58 +31,13 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import { docsUrl, copyright, lang } from '../../../config';
|
import { docsUrl, copyright, lang } from '../../../config';
|
||||||
|
|
||||||
const shares = [
|
|
||||||
'Everything!',
|
|
||||||
'Webpages',
|
|
||||||
'Photos',
|
|
||||||
'Interests',
|
|
||||||
'Favorites'
|
|
||||||
];
|
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
aboutUrl: `${docsUrl}/${lang}/about`,
|
aboutUrl: `${docsUrl}/${lang}/about`,
|
||||||
copyright,
|
copyright
|
||||||
users: [],
|
|
||||||
clock: null,
|
|
||||||
i: 0
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
|
||||||
(this as any).api('users', {
|
|
||||||
sort: '+follower',
|
|
||||||
limit: 20
|
|
||||||
}).then(users => {
|
|
||||||
this.users = users;
|
|
||||||
});
|
|
||||||
|
|
||||||
this.clock = setInterval(() => {
|
|
||||||
if (++this.i == shares.length) this.i = 0;
|
|
||||||
const speed = 70;
|
|
||||||
const text = (this.$refs.share as any).innerText;
|
|
||||||
for (let i = 0; i < text.length; i++) {
|
|
||||||
setTimeout(() => {
|
|
||||||
if (this.$refs.share) {
|
|
||||||
(this.$refs.share as any).innerText = text.substr(0, text.length - i);
|
|
||||||
}
|
|
||||||
}, i * speed)
|
|
||||||
}
|
|
||||||
setTimeout(() => {
|
|
||||||
const newText = shares[this.i];
|
|
||||||
for (let i = 0; i <= newText.length; i++) {
|
|
||||||
setTimeout(() => {
|
|
||||||
if (this.$refs.share) {
|
|
||||||
(this.$refs.share as any).innerText = newText.substr(0, i);
|
|
||||||
}
|
|
||||||
}, i * speed)
|
|
||||||
}
|
|
||||||
}, text.length * speed);
|
|
||||||
}, 4000);
|
|
||||||
},
|
|
||||||
beforeDestroy() {
|
|
||||||
clearInterval(this.clock);
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
signup() {
|
signup() {
|
||||||
this.$modal.show('signup');
|
this.$modal.show('signup');
|
||||||
@ -121,155 +65,95 @@ export default Vue.extend({
|
|||||||
display flex
|
display flex
|
||||||
flex-direction column
|
flex-direction column
|
||||||
flex 1
|
flex 1
|
||||||
$width = 1000px
|
|
||||||
|
|
||||||
background linear-gradient(to bottom, #1e1d65, #bd6659)
|
|
||||||
//background-image url('/assets/welcome-bg.svg')
|
|
||||||
background-size cover
|
|
||||||
background-position top center
|
|
||||||
|
|
||||||
&:before
|
|
||||||
content ""
|
|
||||||
display block
|
|
||||||
position fixed
|
|
||||||
bottom 0
|
|
||||||
left 0
|
|
||||||
width 100%
|
|
||||||
height 100%
|
|
||||||
background-image url('/assets/welcome-fg.svg')
|
|
||||||
background-size cover
|
|
||||||
background-position bottom center
|
|
||||||
|
|
||||||
> main
|
> main
|
||||||
display flex
|
|
||||||
flex 1
|
flex 1
|
||||||
|
padding 64px 0 0 0
|
||||||
|
text-align center
|
||||||
|
color #555
|
||||||
|
|
||||||
> .top
|
> img
|
||||||
display flex
|
width 350px
|
||||||
width 100%
|
|
||||||
|
|
||||||
> div
|
> p
|
||||||
display flex
|
margin 8px 0
|
||||||
max-width $width + 64px
|
line-height 2em
|
||||||
margin 0 auto
|
|
||||||
padding 80px 32px 0 32px
|
|
||||||
|
|
||||||
> *
|
button
|
||||||
margin-bottom 48px
|
padding 8px 16px
|
||||||
|
font-size inherit
|
||||||
|
|
||||||
> div:first-child
|
.signup
|
||||||
margin-right 48px
|
color $theme-color
|
||||||
color #fff
|
border solid 2px $theme-color
|
||||||
text-shadow 0 0 12px #172062
|
border-radius 4px
|
||||||
|
|
||||||
> h1
|
&:focus
|
||||||
margin 0
|
box-shadow 0 0 0 3px rgba($theme-color, 0.2)
|
||||||
font-weight bold
|
|
||||||
//font-variant small-caps
|
|
||||||
letter-spacing 12px
|
|
||||||
font-family 'Sarpanch', sans-serif
|
|
||||||
font-size 42px
|
|
||||||
line-height 48px
|
|
||||||
|
|
||||||
> .cursor
|
&:hover
|
||||||
animation cursor 1s infinite linear both
|
color $theme-color-foreground
|
||||||
|
background $theme-color
|
||||||
|
|
||||||
@keyframes cursor
|
&:active
|
||||||
0%
|
color $theme-color-foreground
|
||||||
opacity 1
|
background darken($theme-color, 10%)
|
||||||
50%
|
border-color darken($theme-color, 10%)
|
||||||
opacity 0
|
|
||||||
|
|
||||||
> p
|
.signin
|
||||||
margin 1em 0
|
&:hover
|
||||||
line-height 2em
|
color #000
|
||||||
|
|
||||||
button
|
> .tl
|
||||||
padding 8px 16px
|
margin 32px auto 0 auto
|
||||||
font-size inherit
|
width 410px
|
||||||
|
text-align left
|
||||||
|
background #fff
|
||||||
|
border-radius 8px
|
||||||
|
box-shadow 0 8px 32px rgba(#000, 0.15)
|
||||||
|
overflow hidden
|
||||||
|
|
||||||
.signup
|
> header
|
||||||
color $theme-color
|
z-index 1
|
||||||
border solid 2px $theme-color
|
padding 12px 16px
|
||||||
border-radius 4px
|
color #888d94
|
||||||
|
box-shadow 0 1px 0px rgba(#000, 0.1)
|
||||||
|
|
||||||
&:focus
|
> div
|
||||||
box-shadow 0 0 0 3px rgba($theme-color, 0.2)
|
position absolute
|
||||||
|
top 0
|
||||||
|
right 0
|
||||||
|
padding inherit
|
||||||
|
|
||||||
&:hover
|
> span
|
||||||
color $theme-color-foreground
|
display inline-block
|
||||||
background $theme-color
|
height 11px
|
||||||
|
width 11px
|
||||||
|
margin-left 6px
|
||||||
|
background #ccc
|
||||||
|
border-radius 100%
|
||||||
|
vertical-align middle
|
||||||
|
|
||||||
&:active
|
&:nth-child(1)
|
||||||
color $theme-color-foreground
|
background #5BCC8B
|
||||||
background darken($theme-color, 10%)
|
|
||||||
border-color darken($theme-color, 10%)
|
|
||||||
|
|
||||||
.signin
|
&:nth-child(2)
|
||||||
&:hover
|
background #E6BB46
|
||||||
color #fff
|
|
||||||
|
|
||||||
> .users
|
&:nth-child(3)
|
||||||
margin 16px 0 0 0
|
background #DF7065
|
||||||
|
|
||||||
> *
|
> .mk-welcome-timeline
|
||||||
display inline-block
|
max-height 350px
|
||||||
margin 4px
|
overflow auto
|
||||||
width 38px
|
|
||||||
height 38px
|
|
||||||
border-radius 6px
|
|
||||||
|
|
||||||
> div:last-child
|
|
||||||
|
|
||||||
> div
|
|
||||||
width 410px
|
|
||||||
background #fff
|
|
||||||
border-radius 8px
|
|
||||||
box-shadow 0 0 0 12px rgba(#000, 0.1)
|
|
||||||
overflow hidden
|
|
||||||
|
|
||||||
> header
|
|
||||||
z-index 1
|
|
||||||
padding 12px 16px
|
|
||||||
color #888d94
|
|
||||||
box-shadow 0 1px 0px rgba(#000, 0.1)
|
|
||||||
|
|
||||||
> div
|
|
||||||
position absolute
|
|
||||||
top 0
|
|
||||||
right 0
|
|
||||||
padding inherit
|
|
||||||
|
|
||||||
> span
|
|
||||||
display inline-block
|
|
||||||
height 11px
|
|
||||||
width 11px
|
|
||||||
margin-left 6px
|
|
||||||
background #ccc
|
|
||||||
border-radius 100%
|
|
||||||
vertical-align middle
|
|
||||||
|
|
||||||
&:nth-child(1)
|
|
||||||
background #5BCC8B
|
|
||||||
|
|
||||||
&:nth-child(2)
|
|
||||||
background #E6BB46
|
|
||||||
|
|
||||||
&:nth-child(3)
|
|
||||||
background #DF7065
|
|
||||||
|
|
||||||
> .mk-welcome-timeline
|
|
||||||
max-height 350px
|
|
||||||
overflow auto
|
|
||||||
|
|
||||||
> footer
|
> footer
|
||||||
font-size 12px
|
font-size 12px
|
||||||
color #949ea5
|
color #949ea5
|
||||||
|
|
||||||
> div
|
> div
|
||||||
max-width $width
|
|
||||||
margin 0 auto
|
margin 0 auto
|
||||||
padding 0 0 42px 0
|
padding 64px
|
||||||
text-align center
|
text-align center
|
||||||
|
|
||||||
> .c
|
> .c
|
||||||
|
@ -70,7 +70,7 @@ init((launch) => {
|
|||||||
routes: [
|
routes: [
|
||||||
{ path: '/', name: 'index', component: MkIndex },
|
{ path: '/', name: 'index', component: MkIndex },
|
||||||
{ path: '/signup', name: 'signup', component: MkSignup },
|
{ path: '/signup', name: 'signup', component: MkSignup },
|
||||||
{ path: '/i/settings', component: MkSettings },
|
{ path: '/i/settings', name: 'settings', component: MkSettings },
|
||||||
{ path: '/i/notifications', name: 'notifications', component: MkNotifications },
|
{ path: '/i/notifications', name: 'notifications', component: MkNotifications },
|
||||||
{ path: '/i/widgets', name: 'widgets', component: MkWidgets },
|
{ path: '/i/widgets', name: 'widgets', component: MkWidgets },
|
||||||
{ path: '/i/messaging', name: 'messaging', component: MkMessaging },
|
{ path: '/i/messaging', name: 'messaging', component: MkMessaging },
|
||||||
|
@ -1,9 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="sub">
|
<div class="sub" :class="{ smart: $store.state.device.postStyle == 'smart' }">
|
||||||
<mk-avatar class="avatar" :user="note.user"/>
|
<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle != 'smart'"/>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<header>
|
<header>
|
||||||
|
<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle == 'smart'"/>
|
||||||
<router-link class="name" :to="note.user | userPage">{{ note.user | userName }}</router-link>
|
<router-link class="name" :to="note.user | userPage">{{ note.user | userName }}</router-link>
|
||||||
|
<span class="is-admin" v-if="note.user.isAdmin">admin</span>
|
||||||
|
<span class="is-bot" v-if="note.user.isBot">bot</span>
|
||||||
|
<span class="is-cat" v-if="note.user.isCat">cat</span>
|
||||||
<span class="username"><mk-acct :user="note.user"/></span>
|
<span class="username"><mk-acct :user="note.user"/></span>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
|
<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
|
||||||
@ -42,6 +46,13 @@ root(isDark)
|
|||||||
@media (min-width 600px)
|
@media (min-width 600px)
|
||||||
padding 24px 32px
|
padding 24px 32px
|
||||||
|
|
||||||
|
&.smart
|
||||||
|
> .main
|
||||||
|
width 100%
|
||||||
|
|
||||||
|
> header
|
||||||
|
align-items center
|
||||||
|
|
||||||
&:after
|
&:after
|
||||||
content ""
|
content ""
|
||||||
display block
|
display block
|
||||||
@ -73,6 +84,13 @@ root(isDark)
|
|||||||
margin-bottom 2px
|
margin-bottom 2px
|
||||||
white-space nowrap
|
white-space nowrap
|
||||||
|
|
||||||
|
> .avatar
|
||||||
|
flex-shrink 0
|
||||||
|
margin-right 8px
|
||||||
|
width 18px
|
||||||
|
height 18px
|
||||||
|
border-radius 100%
|
||||||
|
|
||||||
> .name
|
> .name
|
||||||
display block
|
display block
|
||||||
margin 0 0.5em 0 0
|
margin 0 0.5em 0 0
|
||||||
@ -88,6 +106,20 @@ root(isDark)
|
|||||||
&:hover
|
&:hover
|
||||||
text-decoration underline
|
text-decoration underline
|
||||||
|
|
||||||
|
> .is-admin
|
||||||
|
> .is-bot
|
||||||
|
> .is-cat
|
||||||
|
margin 0 0.5em 0 0
|
||||||
|
padding 1px 5px
|
||||||
|
font-size 10px
|
||||||
|
color isDark ? #758188 : #aaa
|
||||||
|
border solid 1px isDark ? #57616f : #ddd
|
||||||
|
border-radius 3px
|
||||||
|
|
||||||
|
&.is-admin
|
||||||
|
border-color isDark ? #d42c41 : #f56a7b
|
||||||
|
color isDark ? #d42c41 : #f56a7b
|
||||||
|
|
||||||
> .username
|
> .username
|
||||||
text-align left
|
text-align left
|
||||||
margin 0
|
margin 0
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
<header>
|
<header>
|
||||||
<mk-avatar class="avatar" :user="p.user" v-if="$store.state.device.postStyle == 'smart'"/>
|
<mk-avatar class="avatar" :user="p.user" v-if="$store.state.device.postStyle == 'smart'"/>
|
||||||
<router-link class="name" :to="p.user | userPage">{{ p.user | userName }}</router-link>
|
<router-link class="name" :to="p.user | userPage">{{ p.user | userName }}</router-link>
|
||||||
|
<span class="is-admin" v-if="p.user.isAdmin">admin</span>
|
||||||
<span class="is-bot" v-if="p.user.isBot">bot</span>
|
<span class="is-bot" v-if="p.user.isBot">bot</span>
|
||||||
<span class="is-cat" v-if="p.user.isCat">cat</span>
|
<span class="is-cat" v-if="p.user.isCat">cat</span>
|
||||||
<span class="username"><mk-acct :user="p.user"/></span>
|
<span class="username"><mk-acct :user="p.user"/></span>
|
||||||
@ -289,6 +290,7 @@ root(isDark)
|
|||||||
padding 16px 32px
|
padding 16px 32px
|
||||||
|
|
||||||
.avatar
|
.avatar
|
||||||
|
flex-shrink 0
|
||||||
display inline-block
|
display inline-block
|
||||||
width 20px
|
width 20px
|
||||||
height 20px
|
height 20px
|
||||||
@ -387,6 +389,7 @@ root(isDark)
|
|||||||
&:hover
|
&:hover
|
||||||
text-decoration underline
|
text-decoration underline
|
||||||
|
|
||||||
|
> .is-admin
|
||||||
> .is-bot
|
> .is-bot
|
||||||
> .is-cat
|
> .is-cat
|
||||||
margin 0 0.5em 0 0
|
margin 0 0.5em 0 0
|
||||||
@ -396,6 +399,10 @@ root(isDark)
|
|||||||
border solid 1px isDark ? #57616f : #ddd
|
border solid 1px isDark ? #57616f : #ddd
|
||||||
border-radius 3px
|
border-radius 3px
|
||||||
|
|
||||||
|
&.is-admin
|
||||||
|
border-color isDark ? #d42c41 : #f56a7b
|
||||||
|
color isDark ? #d42c41 : #f56a7b
|
||||||
|
|
||||||
> .username
|
> .username
|
||||||
margin 0 0.5em 0 0
|
margin 0 0.5em 0 0
|
||||||
overflow hidden
|
overflow hidden
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
<li><a @click="search">%fa:search%%i18n:@search%%fa:angle-right%</a></li>
|
<li><a @click="search">%fa:search%%i18n:@search%%fa:angle-right%</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul>
|
<ul>
|
||||||
<li><router-link to="/i/settings">%fa:cog%%i18n:@settings%%fa:angle-right%</router-link></li>
|
<li><router-link to="/i/settings" :data-active="$route.name == 'settings'">%fa:cog%%i18n:@settings%%fa:angle-right%</router-link></li>
|
||||||
<li @click="dark"><p><template v-if="_darkmode_">%fa:moon%</template><template v-else>%fa:R moon%</template><span>ダークモード</span></p></li>
|
<li @click="dark"><p><template v-if="_darkmode_">%fa:moon%</template><template v-else>%fa:R moon%</template><span>ダークモード</span></p></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
@ -27,7 +27,6 @@
|
|||||||
<md-icon>%fa:birthday-cake%</md-icon>
|
<md-icon>%fa:birthday-cake%</md-icon>
|
||||||
<label>%i18n:@birthday%</label>
|
<label>%i18n:@birthday%</label>
|
||||||
<md-input type="date" v-model="birthday" :disabled="saving"/>
|
<md-input type="date" v-model="birthday" :disabled="saving"/>
|
||||||
<span class="md-helper-text">%i18n:@will-be-published%</span>
|
|
||||||
</md-field>
|
</md-field>
|
||||||
|
|
||||||
<md-field>
|
<md-field>
|
||||||
@ -49,10 +48,6 @@
|
|||||||
:md-active.sync="uploading"
|
:md-active.sync="uploading"
|
||||||
md-content="%18n:!@uploading%"/>
|
md-content="%18n:!@uploading%"/>
|
||||||
|
|
||||||
<div>
|
|
||||||
<md-switch v-model="isBot">%i18n:@is-bot%</md-switch>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<md-switch v-model="isCat">%i18n:@is-cat%</md-switch>
|
<md-switch v-model="isCat">%i18n:@is-cat%</md-switch>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 16.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
||||||
<svg version="1.1" id="レイヤー_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
|
|
||||||
y="0px" width="256px" height="256px" viewBox="0 0 256 256" enable-background="new 0 0 256 256" xml:space="preserve">
|
|
||||||
<circle fill="#2B2F2D" cx="128" cy="153.6" r="19.201"/>
|
|
||||||
<circle fill="#2B2F2D" cx="51.2" cy="153.6" r="19.2"/>
|
|
||||||
<circle fill="#2B2F2D" cx="204.8" cy="153.6" r="19.2"/>
|
|
||||||
<polyline fill="none" stroke="#2B2F2D" stroke-width="16" stroke-linejoin="round" stroke-miterlimit="10" points="51.2,153.6
|
|
||||||
89.601,102.4 128,153.6 166.4,102.4 204.799,153.6 "/>
|
|
||||||
<circle fill="#2B2F2D" cx="89.6" cy="102.4" r="19.2"/>
|
|
||||||
<circle fill="#2B2F2D" cx="166.4" cy="102.4" r="19.199"/>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 1021 B |
@ -10,11 +10,6 @@
|
|||||||
localStorage.setItem('v', v);
|
localStorage.setItem('v', v);
|
||||||
}
|
}
|
||||||
|
|
||||||
const lang = window.prompt('Enter language (optional):');
|
|
||||||
if (lang && lang.length > 0) {
|
|
||||||
localStorage.setItem('lang', lang);
|
|
||||||
}
|
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
location.href = '/';
|
location.href = '/';
|
||||||
}, 500);
|
}, 500);
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
import * as mongo from 'mongodb';
|
import * as mongo from 'mongodb';
|
||||||
import { default as Notification, INotification } from '../../../models/notification';
|
import { default as Notification, INotification } from '../../../models/notification';
|
||||||
import publishUserStream from '../../../publishers/stream';
|
import publishUserStream from '../../../publishers/stream';
|
||||||
|
import Mute from '../../../models/mute';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Mark as read notification(s)
|
* Mark as read notification(s)
|
||||||
@ -26,6 +27,11 @@ export default (
|
|||||||
? [new mongo.ObjectID(message)]
|
? [new mongo.ObjectID(message)]
|
||||||
: [(message as INotification)._id];
|
: [(message as INotification)._id];
|
||||||
|
|
||||||
|
const mute = await Mute.find({
|
||||||
|
muterId: userId
|
||||||
|
});
|
||||||
|
const mutedUserIds = mute.map(m => m.muteeId);
|
||||||
|
|
||||||
// Update documents
|
// Update documents
|
||||||
await Notification.update({
|
await Notification.update({
|
||||||
_id: { $in: ids },
|
_id: { $in: ids },
|
||||||
@ -42,6 +48,9 @@ export default (
|
|||||||
const count = await Notification
|
const count = await Notification
|
||||||
.count({
|
.count({
|
||||||
notifieeId: userId,
|
notifieeId: userId,
|
||||||
|
notifierId: {
|
||||||
|
$nin: mutedUserIds
|
||||||
|
},
|
||||||
isRead: false
|
isRead: false
|
||||||
}, {
|
}, {
|
||||||
limit: 1
|
limit: 1
|
||||||
|
@ -96,8 +96,7 @@ module.exports = (params, user) => new Promise(async (res, rej) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Serialize
|
// Serialize
|
||||||
res(await Promise.all(notifications.map(async notification =>
|
res(await Promise.all(notifications.map(notification => pack(notification))));
|
||||||
await pack(notification))));
|
|
||||||
|
|
||||||
// Mark as read all
|
// Mark as read all
|
||||||
if (notifications.length > 0 && markAsRead) {
|
if (notifications.length > 0 && markAsRead) {
|
||||||
|
@ -9,8 +9,7 @@ import Mute from '../../../../models/mute';
|
|||||||
*/
|
*/
|
||||||
module.exports = (params, user) => new Promise(async (res, rej) => {
|
module.exports = (params, user) => new Promise(async (res, rej) => {
|
||||||
const mute = await Mute.find({
|
const mute = await Mute.find({
|
||||||
muterId: user._id,
|
muterId: user._id
|
||||||
deletedAt: { $exists: false }
|
|
||||||
});
|
});
|
||||||
const mutedUserIds = mute.map(m => m.muteeId);
|
const mutedUserIds = mute.map(m => m.muteeId);
|
||||||
|
|
||||||
|
@ -49,8 +49,8 @@ const router = new Router();
|
|||||||
//#region static assets
|
//#region static assets
|
||||||
|
|
||||||
router.get('/assets/*', async ctx => {
|
router.get('/assets/*', async ctx => {
|
||||||
// 無圧縮スクリプトを用意するのは大変なので一時的に無効化
|
// 互換性のため
|
||||||
const path = process.env.NODE_ENV == 'production' ? ctx.path.replace('raw.js', 'min.js') : ctx.path.replace('min.js', 'raw.js');
|
const path = ctx.path.replace('.raw.js', '.js').replace('.min.js', '.js');
|
||||||
await send(ctx, path, {
|
await send(ctx, path, {
|
||||||
root: client,
|
root: client,
|
||||||
maxage: ms('7 days'),
|
maxage: ms('7 days'),
|
||||||
|
Reference in New Issue
Block a user