Compare commits

...

1399 Commits

Author SHA1 Message Date
syuilo
294c9840de 12.2.0 2020-02-06 22:27:32 +09:00
syuilo
568ecd9477 Resolve #5861 2020-02-06 22:25:45 +09:00
syuilo
169f3ed541 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2020-02-06 22:18:26 +09:00
syuilo
ff7ae427fd Resolve #5860 2020-02-06 22:18:23 +09:00
tamaina
1597415340 PWAとしてインストールできなかったのを修正 (#5863)
* pwa

* ✌️
2020-02-06 22:11:27 +09:00
syuilo
47f3261b9f Update CHANGELOG.md 2020-02-06 22:10:55 +09:00
syuilo
9e68eefbb7 Resolve #5859 2020-02-06 22:10:33 +09:00
syuilo
630c531d99 Improve messaging form 2020-02-06 19:22:15 +09:00
syuilo
c7da2a4b5f Resolve #5857 2020-02-06 19:11:14 +09:00
syuilo
692078f490 🎨 2020-02-06 18:49:57 +09:00
syuilo
0e29e864c8 Refactor 2020-02-06 18:25:25 +09:00
syuilo
1b7a601d27 Fix i18n 2020-02-06 17:50:59 +09:00
syuilo
a96076ee5b 🎨 2020-02-06 17:48:05 +09:00
syuilo
d580622d1b Update ja-JP.yml 2020-02-06 17:44:41 +09:00
syuilo
6edccad4dd 12.1.0 2020-02-06 17:29:59 +09:00
syuilo
8fa47dbcb1 🎨 2020-02-06 17:28:45 +09:00
syuilo
157f4bbc21 Update CHANGELOG.md 2020-02-06 17:26:09 +09:00
syuilo
3b0d0df068 i18n 2020-02-06 17:25:04 +09:00
syuilo
69802a9f00 Resolve #5850 2020-02-06 17:21:28 +09:00
syuilo
b940da45af Update CHANGELOG.md 2020-02-06 17:11:46 +09:00
MeiMei
bd6de0e204 Fix #5848 (#5853) 2020-02-06 17:11:02 +09:00
syuilo
958074e347 Update CHANGELOG.md 2020-02-06 17:08:05 +09:00
MeiMei
988ac80087 Correct Like id generation (#5852) 2020-02-06 17:07:37 +09:00
syuilo
1c7c72181e Fix #5838 2020-02-06 17:05:19 +09:00
syuilo
6857153367 Fix bug 2020-02-06 17:02:32 +09:00
syuilo
0a3a0f3beb Update sequential-entrance.vue 2020-02-06 14:55:27 +09:00
syuilo
e92e83746d Refactor 2020-02-06 14:37:29 +09:00
syuilo
3b34b3e9ea Fix #5843 2020-02-06 14:29:36 +09:00
syuilo
9506f53691 Update CHANGELOG.md 2020-02-06 14:25:36 +09:00
syuilo
92dc6db134 Update CHANGELOG.md 2020-02-06 14:24:43 +09:00
syuilo
1b88a7bc03 Fix #5842 and refactoring 2020-02-06 14:23:01 +09:00
syuilo
781cebf194 12.0.0 2020-02-06 09:35:15 +09:00
syuilo
b0c21aa233 12.0.0-beta.3 2020-02-06 09:17:30 +09:00
syuilo
b58afb0414 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2020-02-06 09:12:32 +09:00
syuilo
16b275a6b9 Update CHANGELOG.md 2020-02-06 09:12:20 +09:00
MeiMei
ac9612eb49 Fix nyaize 2 (#5841)
* Korean, English Nyaziation and special case exclusion

* Remove single en and unused

* order of exclude

* nl

* code style
2020-02-06 09:11:26 +09:00
syuilo
416accbe78 Renoteを解除できるように
Resolve #2231
2020-02-06 09:09:24 +09:00
syuilo
ee0531b048 12.0.0-beta.2 2020-02-05 21:47:04 +09:00
syuilo
e80da3c865 Update CHANGELOG.md 2020-02-05 21:42:33 +09:00
syuilo
712a90d502 Fix bug 2020-02-05 21:41:54 +09:00
syuilo
ab995930ff Refactor 2020-02-05 21:41:49 +09:00
syuilo
5dc27b6d4b Fix bug 2020-02-05 21:38:19 +09:00
syuilo
391a0a1e0d Refactor 2020-02-05 21:29:41 +09:00
syuilo
8d1db30129 Refactor: Better key name 2020-02-05 21:29:19 +09:00
syuilo
a0f35e240f Update post-form.vue 2020-02-05 21:28:51 +09:00
syuilo
570f4e921b Update CHANGELOG.md 2020-02-05 21:12:08 +09:00
syuilo
ddd7b04646 korean nyaize 2020-02-05 21:11:24 +09:00
syuilo
3c4bae763f Revert "Korean, English Nyaziation and special case exclusion (#5813)"
This reverts commit c110f0860e.
2020-02-05 20:56:28 +09:00
syuilo
75e360ae7a 12.0.0-beta.1 2020-02-05 15:42:08 +09:00
syuilo
90225f9d33 Update fetch-meta.ts 2020-02-05 15:41:14 +09:00
syuilo
bb555ab8ff 🎨 2020-02-05 15:12:08 +09:00
syuilo
868f6a1f0c Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2020-02-05 14:39:56 +09:00
syuilo
a3c1a29fbf Refactor 2020-02-05 14:39:52 +09:00
Acid Chicken (硫酸鶏)
f0c218200c Merge pull request #5823 from syuilo/patch/autogen/v11
[AUTOMATED] Update README.md
2020-02-05 13:37:18 +09:00
syuilo
9200b1cac2 Update CHANGELOG.md 2020-02-05 11:39:46 +09:00
syuilo
28c2063043 12.0.0-alpha.15 2020-02-05 10:17:30 +09:00
syuilo
8818648740 プロキシアカウントをユーザー名ではなくIDで保存するように 2020-02-05 10:15:09 +09:00
syuilo
ce589fee8c Fix bug 2020-02-05 09:50:03 +09:00
syuilo
f86cfdb1ce Update privacy.vue 2020-02-05 09:43:55 +09:00
syuilo
55cbf2c66e localOnlyを記憶できるように 2020-02-05 09:42:58 +09:00
Acid Chicken (硫酸鶏)
00515d35b9 Update README.md [AUTOGEN] 2020-02-05 09:42:12 +09:00
syuilo
5ce2bdf117 Fix #5799 2020-02-05 09:29:18 +09:00
syuilo
e65275da95 Update post-form.vue 2020-02-05 09:21:51 +09:00
syuilo
399903a462 localOnly 2020-02-05 09:15:28 +09:00
syuilo
9a30314e17 Update CHANGELOG.md 2020-02-05 09:07:57 +09:00
syuilo
2170a9fedb Update CHANGELOG.md 2020-02-05 09:01:27 +09:00
syuilo
0c291d1d8d Fix bug nado 2020-02-05 08:59:24 +09:00
syuilo
d765a43166 Update supported locales 2020-02-05 08:39:12 +09:00
syuilo
45d42d1063 New Crowdin translations (#5793)
* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)
2020-02-05 08:37:11 +09:00
syuilo
c5103672c9 Update CHANGELOG.md 2020-02-05 08:11:33 +09:00
fuyu
8e21458e16 コンポーネントの活性時に再計算するように (#5829) 2020-02-05 07:54:49 +09:00
tamaina
aade954dd7 Fix #5798 (#5816)
* Fix #5798

* clean

* Update src/client/components/post-form-attaches.vue

Co-Authored-By: Satsuki Yanagi <17376330+u1-liquid@users.noreply.github.com>

* nest

Co-authored-by: Satsuki Yanagi <17376330+u1-liquid@users.noreply.github.com>
2020-02-04 09:20:10 +09:00
syuilo
3ae73555a9 Update CHANGELOG.md 2020-02-04 08:38:48 +09:00
DW
c110f0860e Korean, English Nyaziation and special case exclusion (#5813) 2020-02-04 08:30:49 +09:00
MeiMei
b7a4f286b0 リモート投稿にリモートでされたリアクションが表示されるように (#5817)
* 第3インスタンスへのLikeも受け入れるように

* リアクション済みだったらエラーにせずに置き換えるように

* Likeを第3インスタンスにdeliverするように

* fix

* fix

* 同じリアクションがすでにされていたら何もしない

* リモートから自身の投稿へリアクションした場合にエラーにならないように
2020-02-04 08:26:00 +09:00
MeiMei
f640da911b Add Unicode 12.1 Emojis (#5825)
* 絵文字ピッカーにSHIBUYA 109を追加

* Emoji regex for Unicode 12.1

* 絵文字テーブルに Unicode 12.1 分を追加
2020-02-04 08:20:51 +09:00
Acid Chicken (硫酸鶏)
9e0347d3f9 Merge pull request #5815 from syuilo/patch/autogen/v11
[AUTOMATED] Update README.md
2020-02-04 00:22:47 +09:00
MeiMei
67496de411 AP inboxの最小リトライ間隔 1秒→1分 (#5818) 2020-02-03 21:05:38 +09:00
fuyu
2a5a055d1c ページバック前に判定を追加 (#5822) 2020-02-03 21:05:13 +09:00
Acid Chicken (硫酸鶏)
7075b66aa5 Update README.md [AUTOGEN] 2020-02-03 01:34:13 +09:00
Acid Chicken (硫酸鶏)
93457eacf7 Merge pull request #5807 from syuilo/patch/autogen/v11
[AUTOMATED] Update README.md
2020-02-03 01:33:30 +09:00
syuilo
2d1a72b218 Update CHANGELOG.md 2020-02-02 12:10:43 +09:00
DW
2db861991a Add ZWSP when federating emojis for Mastodon compatibility (#5810)
* Add ZWSP when federating emojis for Mastodon compatibility

* Use unicode escape sequence
2020-02-02 12:10:23 +09:00
DW
391500bdac Allow wider window for totp verification (#5811)
As server time and client time may not necessarily match
2020-02-02 11:50:15 +09:00
MeiMei
5b63c23ae1 Fix: emoji関連のリポジトリへのライセンス表記が必要 (#5809)
* .

* rename

* idx

* a
2020-02-02 06:11:14 +09:00
syuilo
34a7e2888d Update README.md 2020-02-02 06:10:04 +09:00
syuilo
700c343f7c Update CHANGELOG.md 2020-02-02 06:07:56 +09:00
Acid Chicken (硫酸鶏)
c30960d6bf Fix hashtags contained in private notes are shown in trends (#5805)
* Update trend.ts

* Fix query

* Update create.ts

* Update create.ts

* Update trend.ts
2020-02-02 05:42:58 +09:00
Acid Chicken (硫酸鶏)
ccceaabb52 Update README.md [AUTOGEN] 2020-02-02 01:05:10 +09:00
Acid Chicken (硫酸鶏)
721531c5b5 Merge pull request #5795 from syuilo/patch/autogen/v11
[AUTOMATED] Update README.md
2020-02-02 01:04:42 +09:00
syuilo
4f8a8f86bf Update CHANGELOG.md 2020-02-01 20:12:56 +09:00
syuilo
d773c220c7 Update yarn.lock 2020-02-01 18:21:28 +09:00
syuilo
b9a0d25601 Update package.json 2020-02-01 18:13:59 +09:00
syuilo
6e776650be 🎨 2020-02-01 17:26:17 +09:00
syuilo
cfe9452e92 Fix bug 2020-02-01 17:26:12 +09:00
syuilo
03b4f19a4c Maintainerはクライアントに表示するようになった 2020-02-01 17:16:17 +09:00
syuilo
a74c790ccb 12.0.0-alpha.14 2020-02-01 17:11:38 +09:00
syuilo
05f9135e30 🎨 2020-02-01 17:10:56 +09:00
fuyu
6f115c6d81 ")"が抜けていたので追加 (#5802) 2020-02-01 17:02:46 +09:00
syuilo
f04002188d Resolve #5513 2020-02-01 16:57:12 +09:00
MeiMei
d00e4433ee Fix test (#5801) 2020-02-01 15:48:50 +09:00
Hinaloe
2c1b26a988 ノートをウォッチした後にメニューが開けなくなるのを修正 (#5797) 2020-02-01 12:19:43 +09:00
syuilo
ace59fa717 Fix style 2020-02-01 11:44:31 +09:00
syuilo
1d1fc87920 Fix bug 2020-02-01 11:35:49 +09:00
syuilo
f976f32ea9 Update .gitignore 2020-02-01 11:10:30 +09:00
syuilo
cb3dd91a8c Update user.ts 2020-02-01 11:09:29 +09:00
syuilo
e2610c52f3 Update router.ts 2020-02-01 10:57:47 +09:00
syuilo
de239b6d67 Add note 2020-02-01 10:03:16 +09:00
syuilo
149de5b17b Improve navigation 2020-02-01 09:59:55 +09:00
syuilo
d47d6bb12b Fix bug 2020-02-01 09:45:30 +09:00
syuilo
c30c71c338 Rename theme 2020-02-01 09:21:28 +09:00
syuilo
a941c05d75 Update router.ts 2020-02-01 09:19:05 +09:00
syuilo
50fd020509 Update CHANGELOG.md 2020-02-01 09:17:35 +09:00
syuilo
4ec264755f Update router.ts 2020-02-01 09:16:18 +09:00
syuilo
53f018aae6 Fix bug 2020-02-01 09:12:04 +09:00
syuilo
38dded5061 Update avatar.vue 2020-02-01 09:01:20 +09:00
syuilo
59070cd626 Keep alive index page 2020-02-01 09:00:22 +09:00
syuilo
5875409841 Fix bug 2020-02-01 07:49:02 +09:00
syuilo
251bf4bd61 Improve usability 2020-02-01 07:42:21 +09:00
syuilo
958c59b065 Improve autocomplete 2020-02-01 07:38:40 +09:00
syuilo
46b0c5f354 ✌️ 2020-02-01 07:20:17 +09:00
syuilo
7ed3448e13 Resolve #1669 2020-02-01 07:16:52 +09:00
syuilo
d355f3f77c Update gulpfile.ts 2020-02-01 06:32:21 +09:00
Acid Chicken (硫酸鶏)
08b72eb8c7 Update README.md [AUTOGEN] 2020-01-31 18:11:11 +09:00
Acid Chicken (硫酸鶏)
3f2f4fa32e Merge pull request #5786 from syuilo/patch/autogen/v11
[AUTOMATED] Update README.md
2020-01-31 18:10:58 +09:00
syuilo
7fe6b1f84f Better migration 2020-01-31 16:57:13 +09:00
syuilo
2cca14a625 Show patrons 2020-01-31 16:33:36 +09:00
syuilo
856925f2ca Fix style 2020-01-31 15:50:46 +09:00
syuilo
a774767676 Fix bug 2020-01-31 15:45:19 +09:00
syuilo
299ec075e2 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2020-01-31 15:25:41 +09:00
syuilo
17a04e2676 Update icon 2020-01-31 15:25:38 +09:00
syuilo
dd3df080d3 Update CHANGELOG.md 2020-01-31 13:42:29 +09:00
syuilo
960b3c0aeb Update CHANGELOG.md 2020-01-31 13:34:40 +09:00
syuilo
84bf879b7d Update follow-button.vue 2020-01-31 12:01:13 +09:00
syuilo
a5cf189caa Improve follow button 2020-01-31 11:58:59 +09:00
syuilo
73e7c1bf67 Refactor 2020-01-31 11:38:52 +09:00
syuilo
acd64f58e3 Resolve #2230 2020-01-31 11:35:18 +09:00
syuilo
259254aca8 Add patreon link 2020-01-31 07:05:03 +09:00
syuilo
783fa161a1 Update ja-JP.yml 2020-01-31 07:01:56 +09:00
syuilo
963c7761f2 Pages 2020-01-31 07:01:45 +09:00
syuilo
1d6947d321 New Crowdin translations (#5792)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Traditional)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2020-01-31 05:33:31 +09:00
syuilo
27ffb192f0 Fix style 2020-01-31 05:21:41 +09:00
syuilo
7c64d677cb Fix style 2020-01-31 05:20:10 +09:00
syuilo
f1f8e6dfd3 Update CHANGELOG.md 2020-01-31 05:18:23 +09:00
syuilo
635afdf53f Fix password reset 2020-01-31 05:15:59 +09:00
syuilo
99b5d94b11 Show moderator badge 2020-01-31 05:09:52 +09:00
tamaina
db24dddeff Make notifications widget flexible (#5791)
* Make notifications widget flexible

* fix
2020-01-31 04:53:16 +09:00
tamaina
1f8334dcb7 fix 2020-01-30 20:27:14 +09:00
tamaina
0252e9b4b7 Fix duplicated disconnected dialog (Fix #5782) (#5790)
* Fix #5782
fix duplicated disconnected dialog

* fix
2020-01-30 19:57:22 +09:00
syuilo
13abd6596e Add some themes 🎨 2020-01-30 19:39:07 +09:00
syuilo
d8ab7f158c Update CHANGELOG.md 2020-01-30 19:00:11 +09:00
syuilo
5a97b67785 Fix 2020-01-30 19:00:08 +09:00
MeiMei
711aa564c1 AP audience (visibility) パースの修正 (#5783)
* Refactor audience

* audienceのないAP Object 対応

* fix

* Update src/remote/activitypub/audience.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Update src/remote/activitypub/audience.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2020-01-30 18:58:13 +09:00
tamaina
f6987c72ac Make timeline widget flexible (#5788) 2020-01-30 18:32:09 +09:00
syuilo
9107895754 Fix bug 2020-01-30 18:31:08 +09:00
syuilo
3dbc175091 Update CHANGELOG.md 2020-01-30 18:01:26 +09:00
syuilo
6dee3678fe Update CHANGELOG.md 2020-01-30 17:58:53 +09:00
syuilo
f55550cdeb Update CHANGELOG.md 2020-01-30 17:57:26 +09:00
syuilo
1446a20c70 Update CHANGELOG.md 2020-01-30 17:44:41 +09:00
YuzuRyo61
eafaebb0f9 Fix typo in CHANGELOG.md (#5789) 2020-01-30 17:31:20 +09:00
syuilo
de0d7701f9 Update CHANGELOG.md 2020-01-30 17:27:21 +09:00
syuilo
8e94c47362 Update CHANGELOG.md 2020-01-30 14:48:14 +09:00
syuilo
48e9898db1 2fa setting 2020-01-30 13:05:14 +09:00
syuilo
64dcd9d697 🎨 2020-01-30 11:12:58 +09:00
syuilo
a7f337e8e4 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2020-01-30 11:10:48 +09:00
syuilo
24c047b662 _section --> _card 2020-01-30 11:10:42 +09:00
MeiMei
e97bfe5696 Handle EmojiReaction activitiy (#5492)
* Handle some additional reaction activities

* Revert "Handle some additional reaction activities"

This reverts commit 1462ff12de.

* EmojiReaction
2020-01-30 08:03:50 +09:00
syuilo
fb9fed545e ✌️ 2020-01-30 07:53:19 +09:00
syuilo
964bfb36d8 Improve avatar/banner setting 2020-01-30 07:13:36 +09:00
syuilo
8b32157cf1 Fix bug 2020-01-30 06:23:34 +09:00
syuilo
f5d5d26b0e Adjust page style 2020-01-30 06:19:18 +09:00
syuilo
9f4da44b59 Fix 2020-01-30 06:11:35 +09:00
syuilo
ee0cbab4e4 Fix bug 2020-01-30 06:09:36 +09:00
syuilo
c44e8e6bf1 Emoji copy 2020-01-30 06:06:50 +09:00
syuilo
5ceffb2c17 Add moderator switch 2020-01-30 06:00:43 +09:00
syuilo
96648b651e isMarkedAsClosed --> isSuspended 2020-01-30 05:56:14 +09:00
syuilo
31abd2f59b Fix bug 2020-01-30 05:45:15 +09:00
syuilo
f6154dc0af v12 (#5712)
Co-authored-by: MeiMei <30769358+mei23@users.noreply.github.com>
Co-authored-by: Satsuki Yanagi <17376330+u1-liquid@users.noreply.github.com>
2020-01-30 04:37:25 +09:00
MeiMei
a5955c1123 Add Event activity-type support (#5785) 2020-01-30 01:38:05 +09:00
Takeshi Umeda
23f262c2e4 Add Group and Organization to validActor (#5784) 2020-01-30 01:36:44 +09:00
Acid Chicken (硫酸鶏)
39640b264d Update README.md [AUTOGEN] 2020-01-30 00:01:10 +09:00
Acid Chicken (硫酸鶏)
4845770880 Merge pull request #5779 from syuilo/patch/autogen/v11
[AUTOMATED] Update README.md
2020-01-30 00:00:22 +09:00
Acid Chicken (硫酸鶏)
c2b6b7b179 Update README.md [AUTOGEN] 2020-01-29 00:05:06 +09:00
Acid Chicken (硫酸鶏)
777c5a8704 Update README.md [AUTOGEN] (#5776) 2020-01-29 00:01:35 +09:00
Acid Chicken (硫酸鶏)
467304b470 Update README.md [AUTOGEN] 2020-01-28 00:02:12 +09:00
Acid Chicken (硫酸鶏)
c8ba5add8c Update README.md [AUTOGEN] (#5765) 2020-01-28 00:01:05 +09:00
Satsuki Yanagi
bbcc09d426 Allow 'internal' device in WebAuthN (#5756) 2020-01-27 05:38:40 +09:00
MeiMei
01c07d120f Resolve #5762 (#5770) 2020-01-27 05:37:53 +09:00
MeiMei
0c1076c917 userListチャンネルのオーナーチェック Fix #5772 (#5773)
* userListチャンネルのオーナーチェック Fix #5772

* comment
2020-01-27 05:36:59 +09:00
Acid Chicken (硫酸鶏)
cff91a7674 Update README.md [AUTOGEN] (#5764) 2020-01-25 22:21:28 +09:00
Acid Chicken (硫酸鶏)
fa8f9c286d Update README.md [AUTOGEN] (#5763) 2020-01-25 22:15:12 +09:00
Acid Chicken (硫酸鶏)
ad22491cc0 Update README.md [AUTOGEN] (#5759) 2020-01-25 21:31:54 +09:00
Acid Chicken (硫酸鶏)
1fc936965c Update README.md [AUTOGEN] (#5752) 2020-01-25 20:45:07 +09:00
Acid Chicken (硫酸鶏)
9c062643e1 Update README.md [AUTOGEN] (#5749) 2020-01-24 02:00:42 +09:00
Acid Chicken (硫酸鶏)
f9ad250112 Update README.md [AUTOGEN] (#5747) 2020-01-24 01:59:51 +09:00
Acid Chicken (硫酸鶏)
990ad0e01d Update README.md [AUTOGEN] (#5745) 2020-01-23 17:18:27 +09:00
Acid Chicken (硫酸鶏)
683974fa58 Update README.md [AUTOGEN] (#5743) 2020-01-23 17:17:18 +09:00
Acid Chicken (硫酸鶏)
a3eee05cea Update README.md [AUTOGEN] (#5741) 2020-01-22 07:28:27 +09:00
Acid Chicken (硫酸鶏)
93dae4ec1c Update README.md [AUTOGEN] (#5740) 2020-01-22 07:27:44 +09:00
MeiMei
84178ba38a APの流量制限とリトライ期間の変更 (#5734)
* AP rate limit

* AP Job attempts

* fix
2020-01-20 14:14:09 +09:00
MeiMei
46aaf8fa9a AP Actorの鍵とkeyIdのフォーマットの変更 (#5733)
* Node PKCS#8

* keyIdを#main-key形式に
2020-01-20 04:51:44 +09:00
MeiMei
5a950cf991 Fix syuilo#5729 (#5732) 2020-01-20 01:53:17 +09:00
MeiMei
75cb7f8b36 Fix #5728 (#5731) 2020-01-20 01:52:35 +09:00
MeiMei
79cbf0888c Redis subscriberで認証ができないのを修正 Fix #5727 (#5730) 2020-01-20 01:51:18 +09:00
MeiMei
10f237be95 Add mark-admin command (#5705)
* mark-admin command

* no cli
2020-01-20 01:50:12 +09:00
MeiMei
85971d3d88 Fix: PagesでDRPWPMが最初のしか出てこない (#5707) 2020-01-19 03:38:59 +09:00
MeiMei
26b193d39d fix (#5710) 2020-01-19 03:38:22 +09:00
Acid Chicken (硫酸鶏)
ab1b0cc840 Allow CORS requests in /.well-known/* routes (#5717)
* Allow CORS requests in /.well-known/* routes

* Fix bug
2020-01-16 04:46:43 +09:00
MeiMei
9703ba5340 ファイルと画像認識処理の改善 (#5690)
* dimensions制限とリファクタ

* comment

* 不要な変更削除

* use fromFile など

* Add probe-image-size.d.ts

* えーCRLFで作るなよ…

* Update src/@types/probe-image-size.d.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* fix d.ts

* Update src/@types/probe-image-size.d.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Update src/@types/probe-image-size.d.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* fix

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2020-01-12 16:40:58 +09:00
syuilo
d09d06e4cb Refactor 2020-01-10 16:23:58 +09:00
syuilo
3ed76718a8 Remove needless await 2020-01-10 16:04:25 +09:00
syuilo
45aae00ad5 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2020-01-10 15:55:44 +09:00
syuilo
c62a16ae64 Add some log for debugging 2020-01-10 15:55:40 +09:00
rinsuki
e6b93c1dbb Fix #5687 (#5701) 2020-01-10 11:16:08 +09:00
rinsuki
350310c4c2 ドキュメントのNode.js最小バージョンを修正 (#5700)
@typescript-eslint/parserが11.10.1以上じゃないと入らない

> error @typescript-eslint/parser@2.3.3: The engine "node" is incompatible with this module. Expected version "^8.10.0 || ^10.13.0 || >=11.10.1". Got "11.7.0"

https://github.com/syuilo/misskey/runs/274115939
2020-01-09 17:46:29 +09:00
rinsuki
1811725b9d ローカルタイムラインのテストを修正 (#5699)
visibility=specifiedな投稿はローカルタイムラインに流れない
2020-01-09 17:29:03 +09:00
Acid Chicken (硫酸鶏)
c0938fe372 Update README.md [AUTOGEN] (#5698) 2020-01-09 16:50:43 +09:00
MeiMei
0f25c74415 カスタム絵文字リアクションでないものは絵文字クエリをしないように (#5693)
* カスタム絵文字リアクションの絵文字がNoteに添付されないのを修正

* ねんのため

* 記述順

* カスタム絵文字リアクションでないものは絵文字クエリをしないように
2020-01-09 14:37:48 +09:00
rinsuki
3ecb0ab161 Add GitHub Actions (#5522)
* add .github/workflows/nodejs.yml

* fix

* GitHub Actions: Node.js 8.xはサポートしない

* add .github/workflows/docker.yml

* Dockerビルドをキャッシュするように

* Run test in github actions

* 同リポジトリ内からのプルリクだと無駄に二回走るのを抑制

* 6925c00のdocker.ymlへの適応忘れ

* fix .circleci/misskey/test.yml

* test実行時にDBとかredisとか動かすように

* fix

* fix tests (#5544)

* fix test

* fix compile errors

* PATH引き継ぎでchild_process.spawn時のENOENTを修正

*  サーバー起動処理を共通化

* fix coding style

* fd=4をipcに使うように

* fix port

* fix

* fix ws port

* #4033 にテストケースを追従

* fix?

* fix??

* fix

* fix

* fix

* maybe fix

* fix

* node 10.xサポートしてなかった

* 11.10じゃないとだめだった

* fix

* remove chart test

* fix

* chart test復活

* fix

* 一回一回コネクションを閉じる

* Revert "一回一回コネクションを閉じる"

This reverts commit 56e35cf4f8.

* 一回一回sync→dropしてるのをやめてみる

* fix

* fix

* …

* キャッシュを切ってみる

* add ts to require target

* omg fix

* Revert "キャッシュを切ってみる"

This reverts commit 88161c59d2.

* done呼び忘れ

* 実際の文字数リミットと違ってたので対応

* テストケースがバグってたので修正

* Revert "一回一回sync→dropしてるのをやめてみる"

This reverts commit a9e543ba2e.

* fix

* fix

* fix

* fix?

* fix

* chartのconnectionを分離する

* fix

* fix

* fix tsconfig?

* Revert "fix tsconfig?"

This reverts commit ba9269eaf6.

* fix

* TS_NODE_FILES を scripts の方で指定

* Windowsェ

* Circle CIの実行条件をmasterへのpushのみに

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2020-01-09 14:35:04 +09:00
syuilo
16fb7c4557 11.37.1 2020-01-07 23:35:29 +09:00
Satsuki Yanagi
8aafafe416 Fix #5688 (#5689)
* Resolve #5688

* あああああ

* 😇

* :thinking_face:

* Update detect-mine.ts

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2020-01-07 23:34:17 +09:00
syuilo
90cfd87f46 11.37.0 2020-01-07 22:04:46 +09:00
syuilo
5ff89e1538 New Crowdin translations (#5602)
* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)
2020-01-07 22:04:19 +09:00
syuilo
8b6968c665 Update dependencies 🚀 2020-01-07 21:51:37 +09:00
MeiMei
6ef1b1b1a2 カスタム絵文字リアクションの絵文字がNoteに添付されないのを修正 (#5686)
* カスタム絵文字リアクションの絵文字がNoteに添付されないのを修正

* ねんのため

* 記述順
2020-01-07 12:28:20 +09:00
Acid Chicken (硫酸鶏)
fc0e1955d7 Update README.md [AUTOGEN] (#5680) 2020-01-05 20:58:42 +09:00
MeiMei
c3b8123e32 Stacked bar chart の修正 (#5681)
* Revert "Stacked bar chart がおかしいのを修正 (#5654)"

This reverts commit b16e5bd136.

* apexcharts@3.12.0
2020-01-05 20:12:37 +09:00
Acid Chicken (硫酸鶏)
b6ec3f655a Update README.md [AUTOGEN] (#5676) 2020-01-04 22:25:31 +09:00
tamaina
e37840d870 ドライブ関連の修正 (#5673)
* ✌️

* Update add-file.ts

* fix
2020-01-04 07:20:41 +09:00
syuilo
85b7eb1fb8 2020 2020-01-02 04:15:16 +09:00
MeiMei
541f5f1314 Hide suspended user profile (#5452) 2020-01-02 02:47:20 +09:00
MeiMei
a3c7901f87 Fix: リモートプロキシ時にサムネイルのContent-Typeがおかしい (#5669) 2020-01-02 02:46:13 +09:00
MeiMei
78ef0a9929 ドライブファイルURL生成などの修正 (#5671)
* Fix: リモートプロキシ時にサムネイルのContent-Typeがおかしい

* fix drive
2020-01-02 02:45:05 +09:00
MeiMei
b0bb5d8dfc 期限切れ/未保存リモートファイルのローカルプロキシ (#5655)
* Media Proxy を実装

* サンプルを追加

* https://github.com/syuilo/misskey/pull/5649#discussion_r359967471 の修正

* https://github.com/syuilo/misskey/pull/5649#discussion_r359967966 の修正

* https://github.com/syuilo/misskey/pull/5649#discussion_r359968219 の修正

* 期限切れ/未保存リモートファイルのローカルプロキシ

* 設定

* 説明

* comment out

* fix

Co-authored-by: 和風ドレッシング <37681609+CookieRamen@users.noreply.github.com>
2019-12-31 17:23:47 +09:00
Acid Chicken (硫酸鶏)
307fc18138 Update README.md [AUTOGEN] (#5664) 2019-12-31 02:47:33 +09:00
Acid Chicken (硫酸鶏)
330f2dedf7 Update README.md [AUTOGEN] (#5661) 2019-12-27 06:43:54 +09:00
tamaina
c5c074f201 Update ja-JP.yml
誤字修正 少数→小数  
数→数値のほうがよさそうなので変更
2019-12-24 19:54:53 +09:00
MeiMei
b16e5bd136 Stacked bar chart がおかしいのを修正 (#5654)
* Fix stacked bar chart

* Fix drive stacked bar chart
2019-12-21 16:49:01 +09:00
Acid Chicken (硫酸鶏)
e13f778b33 Update README.md [AUTOGEN] (#5647) 2019-12-20 09:48:25 +09:00
syuilo
953142115c Update dependencies 🚀 2019-12-20 04:46:28 +09:00
syuilo
1eb5578063 Add round function 2019-12-20 02:09:51 +09:00
和風ドレッシング
9bc07c1a1c Media Proxy を実装 (#5649)
* Media Proxy を実装

* サンプルを追加
2019-12-20 01:54:28 +09:00
MeiMei
cbbdc98744 /files/ 下のヘッダ設定タイミングを修正 (#5650) 2019-12-20 01:39:59 +09:00
Acid Chicken (硫酸鶏)
4229065a69 Update README.md [AUTOGEN] (#5643) 2019-12-17 04:43:31 +09:00
MeiMei
932436096f 管理画面でstatsを継続リクエストしないように (#5608) 2019-12-15 03:43:31 +09:00
MeiMei
d95242cab0 ミュート/ブロックでページングと解除ができるように (#5610) 2019-12-15 03:42:33 +09:00
MeiMei
4214a0618e Update showdown to 1.9.1 (#5615) 2019-12-15 03:41:18 +09:00
MeiMei
c012f4f880 AP引用でquoteUrlに対応 (#5632)
* Supports quoteUrl

* Quote resolveをリトライする

* Update src/remote/activitypub/models/note.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Update src/remote/activitypub/models/note.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Update src/remote/activitypub/models/note.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Update src/remote/activitypub/models/note.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2019-12-15 03:37:54 +09:00
MeiMei
3e85aad80a Implement Talk has read federation (#5636)
* Talk read

* fix

* 複数のRead ActivityはCollectionとして送るように

* あ
2019-12-15 03:37:19 +09:00
MeiMei
648be3005f Fix #5637 (#5638) 2019-12-15 03:35:09 +09:00
MeiMei
66165b1935 Redis prefixにホスト名を使用するように (Resolve #5639) (#5640) 2019-12-15 03:34:11 +09:00
MeiMei
e9360ac892 Fix AP inbox Announce (#5641) 2019-12-15 03:32:48 +09:00
MeiMei
1d234e10bd Fix #4800 (#5622) 2019-12-12 00:49:30 +09:00
MeiMei
2a9de356db Fix #5611 (#5612) 2019-12-12 00:46:10 +09:00
MeiMei
43f3f8a058 Resolve syuilo#5548 (#5607) 2019-12-12 00:41:26 +09:00
riku6460
4998ba8866 Fix #5424 (#5604) 2019-12-12 00:39:59 +09:00
MeiMei
d18291cf0c gulpのminifyプロセスの改善 (#5624)
* Use terser instead of uglify

* Use gulp-clean-css instead of gulp-cssnano

* isProduction分岐を削除
2019-12-12 00:37:58 +09:00
MeiMei
fe9371f06c AP Signatureヘッダの特殊処理を削除 (#5628) 2019-12-11 23:14:51 +09:00
Acid Chicken (硫酸鶏)
05a15afadb Update README.md [AUTOGEN] (#5634) 2019-12-11 21:57:49 +09:00
Acid Chicken (硫酸鶏)
93417912bb Update README.md [AUTOGEN] (#5631) 2019-12-10 21:40:42 +09:00
Acid Chicken (硫酸鶏)
07a565a61a Update README.md [AUTOGEN] (#5626) 2019-12-10 21:25:36 +09:00
Acid Chicken (硫酸鶏)
332b13dfd0 Update README.md [AUTOGEN] (#5618) 2019-12-03 08:53:08 +09:00
Acid Chicken (硫酸鶏)
81477ea7ee Update README.md [AUTOGEN] (#5613) 2019-12-02 15:43:06 +09:00
Acid Chicken (硫酸鶏)
39e84539cd Update README.md [AUTOGEN] (#5606) 2019-12-01 17:39:30 +09:00
Acid Chicken (硫酸鶏)
6496fbf923 Update README.md [AUTOGEN] (#5601) 2019-11-25 18:27:00 +09:00
syuilo
de57dd7c97 11.36.0 2019-11-24 17:12:05 +09:00
syuilo
9985c010bc Update master.ts 2019-11-24 17:11:53 +09:00
syuilo
f7a328d66e Update dependencies 🚀 2019-11-24 17:09:32 +09:00
syuilo
50598bcefb New Crowdin translations (#5573)
* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Polish)
2019-11-24 17:01:34 +09:00
syuilo
9c38e9722a Fix bug 2019-11-24 16:43:19 +09:00
MeiMei
b241967fb9 Fix: ローカルにフォロワー限定投稿が流れてくる (#5598) 2019-11-24 08:31:57 +09:00
syuilo
1f86a6d329 Fix bug 2019-11-23 09:43:47 +09:00
syuilo
7a6b5b0bfc Remove unused import 2019-11-18 06:30:58 +09:00
syuilo
e406791b7b Fix bug 2019-11-18 06:27:22 +09:00
syuilo
4ce2f596ee Refactor 2019-11-18 06:25:47 +09:00
syuilo
567f71fe61 Refactor 2019-11-18 06:23:44 +09:00
Mary
70bb5879f9 boot: remove setAttribute() calls and translate reload msg (#5532)
* boot: remove setAttribute() calls and translate reload msg

* Update src/client/app/boot.js

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2019-11-17 00:44:21 +09:00
syuilo
cfd2d84b14 Link joinmisskey 2019-11-17 00:15:48 +09:00
MeiMei
44ab428803 無駄なAP deliverをしないように (#5589)
* DeliverManager, note/create

* recipe

* followers delivers

* comment

* rename

* fix

* cleanup
2019-11-09 18:51:54 +09:00
MeiMei
b34b728fbb Resolve #5587 (#5588)
* Resolve #5587

* stat
2019-11-09 18:24:41 +09:00
MeiMei
8ada1725bf 管理画面のジョブキュー一覧の修正 (#5586)
* Fix: inboxのジョブキューが表示されない

* ジョブキューで試行回数等を表示するように

* DBとオブジェクトストレージのジョブキューが表示されるように
2019-11-07 05:41:44 +09:00
MeiMei
873444c3c6 APの統計とログの修正と強化 (#5585)
* Fix #5580

* Improve AP logging
2019-11-07 00:02:18 +09:00
MeiMei
8bdd4fd061 Resolve #5582 (#5583) 2019-11-06 23:56:56 +09:00
MeiMei
f3b518fb62 Update yarn.lock (#5584) 2019-11-06 23:56:24 +09:00
syuilo
626d64631e 11.35.1 2019-11-05 22:24:00 +09:00
syuilo
608fa287c7 Update dependency 2019-11-05 22:21:52 +09:00
syuilo
a35d01ee0f Resolve #5581 2019-11-05 22:20:56 +09:00
syuilo
77c9b90e6d Store nodeinfo per federated instances (#5578)
* Store nodeinfo per federated instances

* Update fetch-nodeinfo.ts

* Update fetch-nodeinfo.ts

* update
2019-11-05 22:14:42 +09:00
syuilo
2f8992f98a Fix bug 2019-11-05 22:11:47 +09:00
tamaina
c8ab0e9d62 Update example.yml (#5572)
Redisの設定にprefix, dbを追加
2019-11-04 20:48:07 +09:00
syuilo
072bc2d9fb Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-11-04 20:44:05 +09:00
syuilo
cc7fec4b9f Improve reaction setting
Fix #5577
2019-11-04 20:44:01 +09:00
MeiMei
570931cff8 Fix #5552 (#5579) 2019-11-03 17:54:37 +09:00
Acid Chicken (硫酸鶏)
88ec15d4c7 Update README.md [AUTOGEN] (#5574) 2019-11-03 04:22:36 +09:00
Acid Chicken (硫酸鶏)
c23c8ae4c3 Update README.md [AUTOGEN] (#5570) 2019-11-02 13:47:24 +09:00
MeiMei
92af4401e2 実行時にpackage.jsonを参照しないように (#5418)
* 実行時にpackage.jsonを参照しないように

* nodeinfo

* move meta.json

* add dummy

* lowercase
2019-11-01 22:34:26 +09:00
syuilo
5b0dfa6130 11.35.0 2019-11-01 06:17:43 +09:00
syuilo
a664173b5b New Crowdin translations (#5503)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-11-01 05:46:47 +09:00
MeiMei
93a889df82 Preserve the attached order in AP (#5561)
* Preserve the attached order in AP

* Revert "Preserve the attached order in AP"

This reverts commit 8ac09cc81b.

* use IN
2019-11-01 05:46:20 +09:00
rinsuki
0c1d3e186b 新規投稿のMFMをHTMLに変換する際、リモートユーザーへのメンションのリンク先を(できれば)urlに (#5562)
* 新規投稿のMFMをHTMLに変換する際、リモートユーザーへのメンションのリンク先を(できれば)urlに

Fix #2467
Related #5560

* remove unnecessary import

* Update src/services/note/create.ts

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Apply suggestions from code review

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2019-11-01 05:43:54 +09:00
Acid Chicken (硫酸鶏)
e1cf090440 Update webpack.config.ts (#5567) 2019-11-01 05:40:11 +09:00
MeiMei
ff81648134 Resolve #5560 (#5568) 2019-11-01 05:39:00 +09:00
Acid Chicken (硫酸鶏)
1eed6911f0 Update README.md [AUTOGEN] (#5566) 2019-10-31 18:54:07 +09:00
syuilo
5faf9dc2c9 Clean up 2019-10-31 15:53:35 +09:00
syuilo
59a32e9352 Fix chart bug 2019-10-31 15:51:33 +09:00
Aya Morisawa
bf654c6f42 Componentize modal (#5386) 2019-10-29 09:51:19 +09:00
Acid Chicken (硫酸鶏)
34c82776fc Make issue process of registration tickets better (#5545)
* Make issue process of registration tickets better

* Fix illegal indent

* Bye rangestr

* Update invite.ts

* Fix bug

* Update invite.ts
2019-10-29 09:46:51 +09:00
MeiMei
02bde5150e Fix: プロフィールで他のユーザーにうつってもfieldsが更新されない (#5563) 2019-10-29 09:37:55 +09:00
MeiMei
245b08b624 Talk federation (#5534) 2019-10-29 06:01:14 +09:00
Acid Chicken (硫酸鶏)
1e58b3daff Update README.md [AUTOGEN] (#5556) 2019-10-29 01:06:29 +09:00
MeiMei
4f2b4366f2 Fix #5539 (#5542) 2019-10-28 20:34:01 +09:00
Acid Chicken (硫酸鶏)
7a94117d90 Update README.md [AUTOGEN] (#5553) 2019-10-28 14:54:33 +09:00
rinsuki
121c7542a0 投稿の文字数制限の初期値をmeta側と合わせる (#5546) 2019-10-26 00:16:47 +09:00
Acid Chicken (硫酸鶏)
e0433c6b89 Update README.md [AUTOGEN] (#5541) 2019-10-25 22:35:43 +09:00
syuilo
c9bf99fa66 Fix bug 2019-10-25 16:13:37 +09:00
rinsuki
795b56f8ab .config/example.ymlの不要なセミコロンを削除 (#5537) 2019-10-22 19:30:18 +09:00
tamaina
d2edd67cff Update README.md
joinmisskey.github.io -> join.misskey.page
2019-10-21 14:56:54 +09:00
syuilo
1ca6014284 Resolve #5533 2019-10-21 08:34:09 +09:00
syuilo
7ff8fb027d Fix #4731 2019-10-21 00:52:50 +09:00
MeiMei
d672bb4643 Escでメディアビューワが閉じれるように (#5494)
* EscやBackspaceでメディアビューワが閉じれるように

* Backspaceでは閉じないように
2019-10-21 00:46:14 +09:00
MeiMei
4c6c06c80a Improve emoji-picker (#5515)
* Improve emoji-picker

* remove unimplanted translation

* カテゴリのサジェスト

* use unique
2019-10-21 00:43:39 +09:00
Takeshi Umeda
97b6af62fe Add ssl to elasticsearch config settings (#5527) 2019-10-21 00:41:12 +09:00
syuilo
f180f02dd1 Fix bug on iOS 2019-10-20 23:13:14 +09:00
syuilo
3dbd48f744 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-10-20 23:12:14 +09:00
syuilo
3c99b2fd12 Improve usability 2019-10-20 23:12:07 +09:00
Acid Chicken (硫酸鶏)
3d2cfd10bc Update README.md [AUTOGEN] (#5526) 2019-10-20 11:36:33 +09:00
Acid Chicken (硫酸鶏)
e563798afb Update README.md [AUTOGEN] (#5519) 2019-10-18 14:33:45 +09:00
Acid Chicken (硫酸鶏)
f679926b4f Update README.md [AUTOGEN] (#5517) 2019-10-18 14:32:30 +09:00
Acid Chicken (硫酸鶏)
ff20045e1d Update README.md [AUTOGEN] (#5511) 2019-10-17 18:09:42 +09:00
syuilo
c81ff10d5b Fix bug 2019-10-17 00:42:04 +09:00
MeiMei
a103ae6755 Fix #5508 (#5509) 2019-10-16 04:03:51 +09:00
MeiMei
5c44c75c23 Fix #5504 など (#5507)
* カスタム絵文字を重複登録できないように

* fix

* fix
2019-10-16 04:03:18 +09:00
MeiMei
3a973aee69 みつけるの微修正 (#5506)
* default instance name

* とりあえずリモートの人気のユーザーはリモートのみにするように
2019-10-16 03:45:09 +09:00
syuilo
16d59e9988 11.34.0 2019-10-14 02:31:21 +09:00
syuilo
93ce25db91 Update dependencies 🚀 2019-10-14 02:26:02 +09:00
syuilo
c97a523ada New Crowdin translations (#5463)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-10-14 02:15:14 +09:00
MeiMei
488fe2e7bd みつけるに連合分を表示するように (#5490)
* みつける Fediverse

* discovered
2019-10-14 02:00:29 +09:00
MeiMei
8da278a279 Update https-proxy-agent など (#5497)
* Use proxy for web-push

* https-proxy-agent 3.0.0
2019-10-14 01:53:28 +09:00
syuilo
da69650505 Resolve #5500 2019-10-14 01:41:25 +09:00
MeiMei
a85f6edd8a 閉じずに残ってしまうメニューなどの修正 (#5496)
* Fix: ページ移動等してもメニュー等が閉じずに残ってしまう

* Fix: ページ移動してもメディアビューワーが残ってしまう
2019-10-09 21:42:23 +09:00
MeiMei
d17c6adba4 ダウンロードURLにdownloadを付けないなど (#5488) 2019-10-04 20:18:41 +09:00
syuilo
2671c6b4f2 Use node 12.11.1 2019-10-04 16:59:12 +09:00
Satsuki Yanagi
a81d5786f3 Indicate if input value is invalid (#5422)
* Indicate if input value is invalid

* titleのとなり

* となりにメッセージ

* CSS as Suggested

* 同じ色に
2019-10-04 14:18:49 +09:00
Acid Chicken (硫酸鶏)
75e2b075e1 Fix #5468 (#5470)
* Update activitypub.ts

* Update activitypub.ts

* Update activitypub.ts

* Update activitypub.ts

* fix type error

* trust the module

* remove space

* accept charset
2019-10-04 10:29:28 +09:00
MeiMei
533884dcaa Fix: オフライン時に大室櫻子が出てこない (#5480)
* Fix: オフライン時に大室櫻子が出てこない

* use onerror
2019-10-04 10:27:57 +09:00
Acid Chicken (硫酸鶏)
7298b41a16 Update README.md [AUTOGEN] (#5482) 2019-10-04 05:05:48 +09:00
Acid Chicken (硫酸鶏)
39561e858a Update README.md [AUTOGEN] (#5478) 2019-10-03 23:44:20 +09:00
Acid Chicken (硫酸鶏)
96b88ee369 Update README.md [AUTOGEN] (#5474) 2019-10-02 07:53:01 +09:00
Acid Chicken (硫酸鶏)
d94e2025be Update README.md [AUTOGEN] (#5471) 2019-10-02 07:27:25 +09:00
MeiMei
6ba5968861 Apply DB limit to the maximum note text length (#5465) 2019-10-01 01:46:31 +09:00
Aya Morisawa
cea2d621f2 Fix typo: accpet -> accept (#5469) 2019-09-30 19:00:17 +09:00
syuilo
84be4aa91e Update reversi-bot.ja-JP.md 2019-09-28 19:48:08 +09:00
syuilo
a943bf3906 11.33.0 2019-09-27 05:59:18 +09:00
syuilo
42a14508f6 Update dependencies 🚀 2019-09-27 05:50:34 +09:00
syuilo
f4cb62db16 Update node version 2019-09-27 05:19:06 +09:00
syuilo
4dc4ac2f0c Decrease tag limit 2019-09-27 05:18:09 +09:00
Acid Chicken (硫酸鶏)
bf9da8458c Limit the tag counts to 100 (#5263)
* Limit the tag counts to 256

* Update create.ts

* Update create.ts

* Update create.ts

* Limit the user tag
2019-09-27 05:16:59 +09:00
tamaina
1832b2e53c Update ja-JP.yml (#5393) 2019-09-27 05:14:10 +09:00
syuilo
17ebaa01f5 New Crowdin translations (#5423)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-09-27 05:13:41 +09:00
Acid Chicken (硫酸鶏)
c595f68d9d Update README.md [AUTOGEN] (#5461) 2019-09-27 05:13:31 +09:00
tamaina
b040ac6373 PWA Fix (#5432)
* PWA Fix

* SWが/api/へのリクエストに関与しないように

* fix semicolon

* Update base.pug

* Update base.pug
2019-09-27 05:12:56 +09:00
Aya Morisawa
e94dd8a5e8 Refactor removal of trailing comma/period (#5434)
* Refactor removal of trailing comma/period

* Use regex
2019-09-27 04:59:40 +09:00
MeiMei
e14509574d AP featured collectionの修正 / Collection Activityの対応 / typeの修正など (#5460)
* resolver type / fix updateFeatured

* type ApObject

* fix strange type

* AP Activity

* Collection Activityが失敗したらとりあえず無視
2019-09-27 04:58:28 +09:00
syuilo
3a093f8bd7 Use mk-frac 2019-09-26 05:47:42 +09:00
Acid Chicken (硫酸鶏)
ebb9a9b64f Add mk-frac component (#5456)
* Add mk-frac component

* Follow lint

* FIx linting miss
2019-09-26 04:24:38 +09:00
tamaina
ef17838c64 Better broadcast widget mk2 (#5455)
* better broadcast widget

* 🎨

* 🎨

* 🎨

* mk2 (left nav with chevron icons)

* fix

* button title
2019-09-26 04:23:48 +09:00
Satsuki Yanagi
11ddbdc58d Resolve #5454 (#5458) 2019-09-26 04:15:34 +09:00
Satsuki Yanagi
4e8047275b 任意のグループからユーザーを削除すると他のグループからでも削除されちゃうのを修正 (#5459) 2019-09-26 04:14:41 +09:00
MeiMei
c19670d611 Resolve #5447 (#5448)
* Resolve syuilo#5447

* subページではalternateを表示しないように
2019-09-24 04:08:52 +09:00
syuilo
540bd3630a Fix bug (#5453) 2019-09-24 03:58:00 +09:00
syuilo
49f6b3233e Fix bug 2019-09-24 02:57:34 +09:00
Acid Chicken (硫酸鶏)
0f2d392b4b Use stringz.length instead of String.length in hashtag length calculation (#5443)
* Use stringz.length instead of String.length

* length to 128, ignore combining
2019-09-22 01:21:45 +09:00
tamaina
53fba9b137 fix typo 2019-09-21 21:45:20 +09:00
YuzuRyo61
24f2183829 fix typo in misskey.nginx (#5445)
sites-ebabled => sites-enabled
2019-09-21 21:44:24 +09:00
Satsuki Yanagi
61642539b1 Adminページのユーザー一覧フィルターに利用可能アカウントを追加 (#5430)
* Adminページのユーザー一覧フィルターにアクティブアカウントを追加

* validator update

* availableに
2019-09-21 21:35:22 +09:00
MeiMei
1b7454ca77 Fix: syuilo#3122 (#5435) 2019-09-21 21:33:01 +09:00
MeiMei
60d2558ed6 絵文字ピッカーの Unicode 12.0 対応など (#5441)
* Twemoji 12.1

* 絵文字ライブラリを持つように

* Fix chess_pawn emoji

* Add Unicode 12.0 emojis

* Add transgender flag/symbol emoji

* Add some japanese emoji keywords

* format emojilist.json

* fix emojilist order

* Add missing flags
2019-09-21 21:31:38 +09:00
MeiMei
9f5a763c69 Fix: selectでprefix/sufixがないときにいらない下線が付く (#5440) 2019-09-21 01:47:32 +09:00
MeiMei
0ef31a8bac Fix: unknown user cause 500 on AP (#5436) 2019-09-20 05:14:21 +09:00
MeiMei
1a8632e802 Fix: Keycap Number Sign が表示できない (#5431)
* Fix: Keycap Number Sign が表示できない

* add U+20E3
2019-09-15 23:33:58 +09:00
MeiMei
c1c955031e Fix typo - invalied (#5433)
* Fix typo - invelied

* fix Valied
2019-09-15 23:27:33 +09:00
Zero King
75ab146860 Follow requests page improvements (#5429)
* follow-requests: add spacing between actions

* follow-requests: make separator more visible in dark themes
2019-09-15 02:38:34 +09:00
Satsuki Yanagi
c3f9b2dcc3 Resolve #5420 (#5421) 2019-09-12 21:27:44 +09:00
Aya Morisawa
c9e33f665e Check if there is a built code (#5415) 2019-09-10 17:15:38 +09:00
syuilo
b719d43049 11.32.0 2019-09-10 15:48:37 +09:00
syuilo
f555aa734b Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-09-10 15:46:20 +09:00
syuilo
37fb685016 Update dependencies 🚀 2019-09-10 15:46:00 +09:00
syuilo
09fe1b355a New Crowdin translations (#5385)
* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Traditional)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2019-09-10 15:44:25 +09:00
Aya Morisawa
9d530a5c38 Fix typo: ommited -> omitted (#5406) 2019-09-09 22:47:52 +09:00
MeiMei
827c378ac1 AP Lock (#5410) 2019-09-09 22:46:45 +09:00
syuilo
9b91b92bca Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-09-09 22:28:48 +09:00
syuilo
e7fcca0e06 Fix #5403 2019-09-09 22:28:41 +09:00
syuilo
a36e5b4543 Refactoring 2019-09-09 22:18:32 +09:00
syuilo
ba474648a2 Update CONTRIBUTING.md 2019-09-08 21:21:08 +09:00
MeiMei
a7b710a2f8 広告ブロッカーの警告を削除 (#5408)
* remove f*ckadbloack

* follow-buttonが消されないように

* revert version

* remove locales
2019-09-08 21:19:28 +09:00
MeiMei
c033464b92 AP Undo Announce (#5400)
* AP Undo Announce

* Use activity id
2019-09-08 11:30:44 +09:00
Acid Chicken (硫酸鶏)
3ef6305c76 Update README.md [AUTOGEN] (#5402) 2019-09-07 23:43:35 +09:00
Acid Chicken (硫酸鶏)
511ef20b8a Update README.md [AUTOGEN] (#5396) 2019-09-05 05:05:24 +09:00
syuilo
4db710a4b0 Fix indentation 2019-09-04 14:35:21 +09:00
Acid Chicken (硫酸鶏)
efe92724a4 Update README.md [AUTOGEN] (#5390) 2019-09-04 04:25:22 +09:00
syuilo
aa19767ebc 11.31.4 2019-09-03 08:00:41 +09:00
syuilo
143190ab38 Fix bug 2019-09-03 08:00:21 +09:00
syuilo
baf94f86c4 11.31.3 2019-09-03 07:28:45 +09:00
syuilo
d36b129369 Improve reaction tooltip 2019-09-03 07:25:02 +09:00
syuilo
f36d88246a Fetch more reactins 2019-09-03 07:15:53 +09:00
syuilo
03f87140b3 11.31.2 2019-09-03 06:58:19 +09:00
syuilo
1dc07f6b72 🎨 2019-09-03 06:58:01 +09:00
syuilo
0aa0a9d24b 11.31.1 2019-09-03 06:22:05 +09:00
syuilo
a9a93db2b4 Update reactions-viewer.reaction.vue 2019-09-03 06:20:52 +09:00
syuilo
f187df3933 Update reactions-viewer.reaction.vue 2019-09-03 06:20:04 +09:00
syuilo
8abe8042d7 Fix bug 2019-09-03 06:19:17 +09:00
syuilo
58fd46ff6f 🎨 2019-09-03 06:00:45 +09:00
syuilo
fef8b662c1 🎨 2019-09-03 05:50:01 +09:00
syuilo
8de2f4ce76 Update node to 12.9.1 2019-09-03 05:43:44 +09:00
Acid Chicken (硫酸鶏)
e5e344e1cd Update README.md [AUTOGEN] (#5382) 2019-09-03 01:02:57 +09:00
Aya Morisawa
e70d7edf41 Fix #5380 (#5381) 2019-09-02 07:01:33 +09:00
syuilo
71d4d51fb2 11.31.0 2019-09-02 06:33:07 +09:00
syuilo
aaf38f1cbe Update CHANGELOG.md 2019-09-02 06:23:10 +09:00
syuilo
0e0d6692c0 Fix bug 2019-09-02 06:21:43 +09:00
syuilo
29f927fe72 Update CHANGELOG.md 2019-09-02 06:21:06 +09:00
syuilo
ee39d9594e Improve readability 2019-09-02 06:04:12 +09:00
Oni-Men
cefd2a4c54 ページURLが空の時currentNameを使うように (#5368)
* ページURLが空の時currentNameを使う

* 空の時はページURLにcurrentNameを代入するように

* Update src/client/app/common/views/pages/page-editor/page-editor.vue

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* update validator

* Update src/client/app/common/views/pages/page-editor/page-editor.vue

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* やっぱりuuidは統一

* エラー処理を追加

* some fix

* ちょっとだけ翻訳の追加と改善

* リファクタリング

* Revert "やっぱりuuidは統一"

This reverts commit 965a860504.

* やっぱりuuidをわける

* エラー判定をidからcodeに+リファクタリング
2019-09-02 06:02:35 +09:00
syuilo
a08c20d9af Fix #5353 2019-09-02 05:59:24 +09:00
syuilo
dc11f1afbf Improve readavility 2019-09-02 05:52:38 +09:00
syuilo
b0f2b209a2 Fix error 2019-09-02 05:42:30 +09:00
syuilo
a25fdfd519 Fix #5373 2019-09-02 05:34:25 +09:00
syuilo
c1aa58596d Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-09-02 05:20:17 +09:00
syuilo
b6a3eb2445 Fix #5379 2019-09-02 05:20:06 +09:00
syuilo
310f4d2edb New Crowdin translations (#5337)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)
2019-09-02 05:04:24 +09:00
Aya Morisawa
701fee3139 Prevent users from opening note menu when already opened (#5367) 2019-09-02 04:45:01 +09:00
MeiMei
593c2b9517 Proxy for SMTP (#5371) 2019-09-02 04:42:52 +09:00
syuilo
96b2267cb8 Chart resyncing (#5372)
* wip

* Add test

* Fix test

* Insert moderation log

* Add todo
2019-09-02 04:41:26 +09:00
Acid Chicken (硫酸鶏)
84730a071a Update README.md [AUTOGEN] (#5377) 2019-09-02 04:06:54 +09:00
syuilo
d0b0cf8dfb Use npx 2019-09-01 04:31:59 +09:00
Aya Morisawa
749200d22b Show users who sent reaction on hover (#5362)
* Show users who sent reaction on hover

* Support i18n

* detail -> details

* Extract methods

* Update on change
2019-08-31 03:04:36 +09:00
syuilo
a47baad943 Update dependencies 🚀 2019-08-31 03:01:50 +09:00
syuilo
50abb51ece Syslog support
Resolve #5355
2019-08-30 08:29:46 +09:00
Aya Morisawa
1f890c5bed Assign URL to each page of admin (#5366)
* Assign URL to each page of admin

* Remove cursor pointer
2019-08-30 04:19:49 +09:00
Aya Morisawa
97f23af86d Assign URL to each page of settings (#5349)
* Assign URL to each page of settings

* Use router-link

* comma

* Use active-class

* Clean up

* space

* comma

* Redirect if mobile

* Redirect to /i/settings/profile

* Clean up
2019-08-29 14:57:28 +09:00
syuilo
d77aa1f26a 不要なプロパティをレスポンスから削除 2019-08-29 07:34:54 +09:00
Acid Chicken (硫酸鶏)
0b075ad4e9 Update README.md [AUTOGEN] (#5356) 2019-08-29 05:33:52 +09:00
Aya Morisawa
423f776ed0 Perform animation only when reaction is added (#5359) 2019-08-29 05:20:27 +09:00
Aya Morisawa
084fd8152b Refactor reactions-viewer.vue (#5358) 2019-08-29 05:15:14 +09:00
syuilo
89d35c2e63 Fix bug 2019-08-29 05:13:03 +09:00
Aya Morisawa
be33581642 Fix animation not being performed on new reaction (#5345)
* Fix animation not being performed on new reaction

* Clean up
2019-08-29 05:11:26 +09:00
Oni-Men
2d6d9f30e1 ページURLが他と重複してたらエラーを投げるように (#5354)
* [Page]nameが重複したときの処理を追加

* page-editor側のerr.idにuuidを適用

* refactor

* uuidをわけた
2019-08-28 08:00:05 +09:00
Aya Morisawa
85721065fd Save memo automatically (#5351)
* Save memo automatically

* Use clearTimeout

* Clean up

* Clean up
2019-08-28 02:26:19 +09:00
Aya Morisawa
9d65768d4d [MFM] Fallback to js if specified lang is not available (#5347) 2019-08-27 19:44:49 +09:00
MeiMei
13f69e4291 excludeNsfwやCWのNSFW扱いなど (#5341)
* NoteにisSensitive

* Revert "NoteにisSensitive"

This reverts commit 3d5bcfbaf0.

* query excludeNsfw

* AP deliverでCW付きはsensitiveにするように

* excludeNsfwでCW付きも除くように
2019-08-27 17:33:07 +09:00
MeiMei
6a0affcec1 Tune worker/job counts (#5346)
* デフォルトのワーカー数を1に

* Tune default job count
2019-08-27 05:33:24 +09:00
MeiMei
ab6a84cd45 未実装のTLのRenoteクエリを実装 (#5343)
* users/notes includeMyRenotes

* other renotes

* fix target user in users/notes

* users/notesからv10から未実装でありえないオプションを削除

* users/notesのincludeMyRenotesの説明を修正

* remove needless anonymous checks
2019-08-27 03:24:35 +09:00
Aya Morisawa
ba93bf7478 Prevent users from changing the disabled option (#5344) 2019-08-27 02:44:01 +09:00
Satsuki Yanagi
1c4e1af7c3 Improve post form (#5326)
* Improve post form

* Remove local icon from button
2019-08-25 16:12:01 +09:00
Satsuki Yanagi
a85f4c4fc4 Resolve #2716 (#5340)
* Resolve #2716

* Update ja-JP.yml
2019-08-25 16:11:20 +09:00
MeiMei
9d6c8806af CWの中のサムネイルのサイズが変なのを修正 (#5339)
* Fix #5338

* Revert "Fix #5338"

This reverts commit 72b32df2b7.

* Fix media-list height

* fix
2019-08-24 19:20:53 +09:00
syuilo
ff52ea2a7c 11.30.0 2019-08-24 02:28:43 +09:00
syuilo
f247ee9dd3 New Crowdin translations (#5322)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-08-24 02:24:24 +09:00
syuilo
f4cec53ba1 [Room] Make Pinguin customizable 2019-08-24 02:18:21 +09:00
syuilo
ad70b50fee [Room] Add energy drink 2019-08-23 06:52:42 +09:00
Acid Chicken (硫酸鶏)
ea7b2b3141 Update README.md [AUTOGEN] (#5335) 2019-08-23 05:06:22 +09:00
syuilo
c2f932e28b Fix #5324 2019-08-22 19:56:27 +09:00
syuilo
c637882578 カップ麺をスムーズシェードするように 2019-08-22 19:42:52 +09:00
syuilo
ef7221e39e Fix holo-display animation glitch 2019-08-22 19:37:01 +09:00
Oni-Men
6b571a7799 Improve furniture preview (#5328)
* Improve furniture preview

* improve calc method

* camera.aspectいらないことに気付いた

* refactor & go camera far away

* 対角線の長さで計算するように

* 対角線の計算にhypot()を使用

Co-Authored-By: Aya Morisawa <AyaMorisawa4869@gmail.com>
2019-08-22 18:34:15 +09:00
MeiMei
0638b6cb69 Roomで未保存警告ダイアログなどを追加 (#5332)
* Room保存時にダイアログを表示するように

* Roomから移動するときに未保存ならば警告するように
2019-08-22 18:33:50 +09:00
syuilo
a39c1706a1 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-08-22 02:40:19 +09:00
syuilo
c741e27057 [Room] Add holo-display 2019-08-22 02:40:01 +09:00
Aya Morisawa
ede854c215 Update button.vue (#5331) 2019-08-22 02:36:19 +09:00
Satsuki Yanagi
6a953b4d94 Update yarn.lock (#5327) 2019-08-21 13:04:51 +09:00
Aya Morisawa
1d763096c7 Update room section of CONTRIBUTING.md 2019-08-20 16:16:27 +09:00
Oni-Men
630d873ec0 [room]Add cup noodle (#5323)
* [Room] Add cup noodles

* remove ,

* Fix Cup-Noodle Texture
2019-08-20 15:57:42 +09:00
syuilo
d427957ea7 New Crowdin translations (#5321)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-08-20 02:19:06 +09:00
syuilo
2430cc0e2c New translations ja-JP.yml (English) (#5320) 2019-08-20 02:04:55 +09:00
syuilo
e57ee24864 New translations ja-JP.yml (French) (#5319) 2019-08-20 01:55:35 +09:00
syuilo
3bc05ab3f2 New Crowdin translations (#5318)
* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)
2019-08-20 01:44:22 +09:00
syuilo
4e50dcfa93 New Crowdin translations (#5313)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)
2019-08-19 21:24:43 +09:00
syuilo
fcf5531e5b 🎨 2019-08-19 16:44:55 +09:00
syuilo
3bef69ee58 🎨 2019-08-19 16:13:08 +09:00
syuilo
311a4f28b0 Resolve #5298 2019-08-19 16:05:57 +09:00
syuilo
01e692b353 Refactor 2019-08-19 15:59:36 +09:00
syuilo
3b445af6fc Improve readability 2019-08-19 15:51:00 +09:00
syuilo
1e43ece637 [Room] Update model 2019-08-19 14:01:05 +09:00
syuilo
6f1048c006 11.29.0 2019-08-19 12:39:26 +09:00
syuilo
d686e70f2b [Room] Better rendering 2019-08-19 12:35:18 +09:00
syuilo
70f524b82d New Crowdin translations (#5312)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Traditional)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2019-08-19 12:17:37 +09:00
syuilo
79c6475028 Improve readability 2019-08-19 02:19:37 +09:00
syuilo
7dee5309dc Refactoring 2019-08-19 02:06:37 +09:00
syuilo
958ec7b03f Fix #5307 2019-08-19 02:02:10 +09:00
syuilo
9153434906 [Room] Add bin 2019-08-19 01:54:06 +09:00
syuilo
3a08364c24 [Room] Add some furnitures 2019-08-19 01:45:20 +09:00
syuilo
a9beeab502 [Room] Better rendering 2019-08-19 01:43:45 +09:00
syuilo
38c901069a [Room] Better avatar rendering 2019-08-19 01:15:30 +09:00
syuilo
3f7606060e Update geometry name 2019-08-19 01:01:15 +09:00
kabo2468
777f20e9be Add Trash can (#5309)
new file:   src/client/assets/room/furnitures/trash-can/trash-can.blend
	new file:   src/client/assets/room/furnitures/trash-can/trash-can.glb
2019-08-19 00:51:57 +09:00
Aya Morisawa
8e39aecffe Update room section of CONTRIBUTING.md (#5306)
* Update room section of CONTRIBUTING.md

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md
2019-08-18 23:40:52 +09:00
syuilo
9e1ab54097 11.28.2 2019-08-18 20:32:23 +09:00
syuilo
0f9e09f4bd cors 2019-08-18 20:32:04 +09:00
MeiMei
743ebc17b9 Fix #5291 (#5294) 2019-08-18 20:25:12 +09:00
syuilo
9bc4af76b8 モバイルでもRoomを表示できるように 2019-08-18 19:11:24 +09:00
syuilo
46fa26426d Fix bug 2019-08-18 19:08:33 +09:00
syuilo
58d0dc1795 11.28.1 2019-08-18 16:56:42 +09:00
syuilo
bc11702f7d Fix #5290 2019-08-18 16:55:09 +09:00
syuilo
6288de5813 Fix #5291 2019-08-18 16:51:27 +09:00
syuilo
bbf59c7d9f 11.28.0 2019-08-18 16:07:55 +09:00
imgbot[bot]
d7787bacf7 [ImgBot] Optimize images (#5289)
*Total -- 2,381.44kb -> 1,992.59kb (16.33%)

/src/client/assets/room/furnitures/photoframe/photo-uv.png -- 20.34kb -> 2.58kb (87.33%)
/src/client/assets/room/furnitures/pc/motherboard-uv.png -- 21.43kb -> 2.85kb (86.69%)
/src/client/assets/room/furnitures/cardboard-box3/uv.png -- 21.58kb -> 3.51kb (83.72%)
/src/client/assets/room/furnitures/poster-v/uv.png -- 21.85kb -> 3.71kb (83.04%)
/src/client/assets/room/furnitures/milk/milk.png -- 3.76kb -> 0.64kb (82.89%)
/src/client/assets/room/furnitures/server/uv.png -- 22.29kb -> 3.92kb (82.42%)
/src/client/assets/room/furnitures/facial-tissue/facial-tissue.png -- 3.80kb -> 0.67kb (82.3%)
/src/client/assets/room/rooms/washitsu/tatami-uv.png -- 22.27kb -> 3.98kb (82.13%)
/src/client/assets/room/rooms/washitsu/husuma-uv.png -- 22.06kb -> 3.94kb (82.13%)
/src/client/assets/room/furnitures/tv/screen-uv.png -- 20.55kb -> 3.70kb (81.98%)
/src/client/assets/room/furnitures/poster-h/uv.png -- 20.15kb -> 3.70kb (81.65%)
/src/client/assets/room/furnitures/plant/plant-soil-uv.png -- 23.17kb -> 4.40kb (81%)
/src/client/assets/room/furnitures/facial-tissue/facial-tissue-uv.png -- 22.96kb -> 4.37kb (80.99%)
/src/client/assets/room/furnitures/cardboard-box2/uv.png -- 22.36kb -> 4.52kb (79.78%)
/src/client/assets/room/furnitures/book2/uv.png -- 37.36kb -> 8.41kb (77.49%)
/src/client/assets/room/furnitures/server/rack-uv.png -- 26.68kb -> 6.55kb (75.46%)
/src/client/assets/room/furnitures/monitor/screen-uv.png -- 5.81kb -> 1.46kb (74.88%)
/src/client/assets/room/furnitures/milk/milk-uv.png -- 49.21kb -> 16.19kb (67.1%)
/src/client/assets/room/furnitures/eraser/eraser-uv.png -- 27.93kb -> 10.90kb (60.96%)
/src/client/assets/room/furnitures/book2/barcode.png -- 8.71kb -> 3.42kb (60.72%)
/src/client/assets/room/rooms/washitsu/husuma.png -- 4.23kb -> 2.48kb (41.44%)
/src/client/assets/room/furnitures/server/rack.png -- 9.42kb -> 6.88kb (26.92%)
/src/client/assets/room/furnitures/eraser/cover.png -- 10.75kb -> 8.14kb (24.26%)
/src/client/assets/room/furnitures/plant2/soil.png -- 13.06kb -> 10.60kb (18.83%)
/src/client/assets/room/furnitures/plant/plant-soil.png -- 13.06kb -> 10.60kb (18.83%)
/src/client/assets/room/furnitures/monitor/screen.jpg -- 28.93kb -> 24.26kb (16.16%)
/src/client/assets/room/furnitures/cardboard-box3/texture.png -- 18.23kb -> 15.82kb (13.21%)
/src/client/assets/room/furnitures/cardboard-box2/texture.png -- 18.64kb -> 16.48kb (11.56%)
/src/client/assets/room/furnitures/book2/texture.png -- 64.05kb -> 59.59kb (6.97%)
/src/client/assets/room/furnitures/server/server.png -- 121.75kb -> 114.13kb (6.26%)
/src/client/assets/room/furnitures/pc/motherboard.jpg -- 67.25kb -> 63.09kb (6.19%)
/src/client/assets/room/furnitures/photoframe/photo.jpg -- 31.10kb -> 29.79kb (4.22%)
/src/client/assets/room/rooms/washitsu/tatami-single1600.png -- 1,163.42kb -> 1,145.84kb (1.51%)
/src/client/assets/room/rooms/washitsu/tatami.png -- 308.19kb -> 306.37kb (0.59%)
/src/client/assets/room/furnitures/moon/moon.jpg -- 85.11kb -> 85.11kb (0%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
2019-08-18 15:06:22 +09:00
syuilo
23ae0515c4 Update CHANGELOG.md 2019-08-18 15:05:13 +09:00
syuilo
fe88b34b8a Update node version 2019-08-18 14:56:54 +09:00
syuilo
74aa031a22 Update dependencies 🚀 2019-08-18 14:56:47 +09:00
syuilo
6aeed212d9 New Crowdin translations (#5249)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)
2019-08-18 14:43:30 +09:00
syuilo
45b972c059 MisskeyRoom (#5267)
* wip

* Add pemcil

* Fix bug

* Update .gitattributes

* Add 🍮

* Better 🍮

* Add color boxes

* Add pc

* Add keyboard

* Add 📦

* Add more 📦

* ✌️

* carpet

* Add plant

* ✌️

* ✌️

* Update room.vue

* Add plant

* ✌️

* ✌️

* ✌️

* ✌️

* ✌️

* 段ボール箱がてかりすぎているのを修正

* Update room.ts

* Render username

* ✌️

* Add new 📦

* Update room.ts

* Remove blender backup files

* Refactor

* Improve performance

* Update room.ts

* Update .gitattributes

* Update room.ts

* Better fan

* Better tissue rendering

* Add 🐧

* Create photoframe2.glb

* chairs

* Add 📖

* fix: HiDPi環境でオブジェクトを選択できない (#5268)

* Better monitor

* ✌️

* Add corkboard

* Add missing blend

* mousepad

* Add missing blend

* Add cube

* 額縁やモニターなどに任意の画像を表示できるように

* Update MisskeyRoom section of CONTRIBUTING.md (#5272)

* Update MisskeyRoom section of CONTRIBUTING.md

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md

* Refactor

* カスタムテクスチャがずれないように

* Remove debug code

* Update furnitures.json5

* 一部の家具の色を自由に変えられるように

* Update ja-JP.yml

* Type annotation

* 家具の色やテクスチャをすぐ反映するように

* Update room.vue

* Update furnitures.json5

* Add 📺

* Update ja-JP.yml

* 床の色を変えられるように

* 和室にできるように

* Update washitsu

* Use MeshLambertMaterial to improve performance

* Use MeshLambertMaterial

* Fix bug

* Refactor

* Update room.ts

* Fix washitsu

* Update room.vue

* Update washistu

* Use MeshLambertMaterial

* Update room.ts

* Set current property value

* Disable reactivity to improve performance a bit

* Fix bug

* Set current carpet color

* Update ja-JP.yml

* Add rubik-cube (#5278)

* Update ja-JP.yml (#5279)

* Update UI

* ルームの設定を追加

* Add room link

* 家具をドラッグで移動や回転できるように

* esnextにする (#5286)

* Fix moduleResolution

* Use uuid v4

* Fix bug

* マットの色を変えられるように

* ✌️

* 異方性フィルタリングするように

* グラフィックの品質をフィルタリングに反映

* Add bloom effect when ultra graphics

* Add posters

* 🎨
2019-08-18 14:41:33 +09:00
MeiMei
7ecfc007a9 updateHashtagを並列で行わないように (#5284) 2019-08-18 12:47:45 +09:00
MeiMei
fc78c75bab Fix: Hashtagがupdateできない (#5285) 2019-08-18 12:46:47 +09:00
Satsuki Yanagi
59493a0cd9 uuid() と lint (#5288)
* Import only v4 uuid, uuid() without version is deprecated

* Add Missing semicolon
2019-08-18 12:42:58 +09:00
MeiMei
6060c6d56e リモートユーザー向けのNoteUnreadsレコードは作成しないように (#5280) 2019-08-17 14:40:06 +09:00
MeiMei
6cdbb27169 Fix: ドライブアップロード直後に取得できるURLがoriginalじゃない (#5274) 2019-08-17 12:32:52 +09:00
MeiMei
ed8b073e54 タイトルやアイコンがきちんと設定されないことがあるのを修正 (#5265)
* Fix: og:site_nameがbase系ページに正しく反映さんれない

* instanceNameはAPIのmetaじゃなくてog:site_nameを参照するように

* Fix: タイトルが変更されるページから通常ページに遷移してもタイトルが戻らない

* Fix: タイトルが戻らない mobile / notifications

* Fix: faviconの変更が効かないページがある
2019-08-16 14:16:19 +09:00
syuilo
7dd193636c Fix #5260 2019-08-11 20:13:57 +09:00
MeiMei
01d018510c ユーザー名の突き抜けの修正 (#5261)
* 突き抜け deck フォロリク/vote

* 突き抜け desktop

* notification reactionで絵文字の縦がずれないように

* Fix: ユーザーページの名前が突き抜ける

* Fix: デッキカラムでユーザー名が長いと閉じれなくなる

* デッキのカウントの位置が右になってしまってたのを修正

* デッキヘッダーのellipsis
2019-08-11 19:48:54 +09:00
和風ドレッシング
1c273a0a75 Elasticsearchのインデックス名をconfigで変更できるように (#5257) 2019-08-09 13:04:35 +09:00
Satsuki Yanagi
fa2c7658a0 PackedUserがサイレンスや凍結の情報を持つように (#5255) 2019-08-08 09:31:40 +09:00
Satsuki Yanagi
84ca3a7d45 Unified the notation with "Renote" for consistency (#5256)
https://crowdin.com/translate/misskey/3/ja-zhcn#5238
2019-08-08 06:45:39 +09:00
Acid Chicken (硫酸鶏)
902c73e6ac Update README.md [AUTOGEN] (#5251) 2019-08-06 23:23:01 +09:00
MeiMei
3b626f72e4 Resolve #5247 (#5248) 2019-08-05 10:30:31 +09:00
Acid Chicken (硫酸鶏)
f5ce137a6b Update README.md [AUTOGEN] (#5246) 2019-08-03 19:56:59 +09:00
Acid Chicken (硫酸鶏)
3ce9d12361 Update README.md [AUTOGEN] (#5243) 2019-08-02 22:37:31 +09:00
Acid Chicken (硫酸鶏)
2fe2f3b1eb Update README.md [AUTOGEN] (#5240) 2019-08-02 21:21:31 +09:00
Acid Chicken (硫酸鶏)
17b3ee41db Update README.md [AUTOGEN] (#5239) 2019-08-01 22:26:11 +09:00
Takeshi Umeda
56d2a5d5d3 Modify ssl directive to 'ssl' for listen directive (#5237)
the "ssl" directive is deprecated. 
http://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl
2019-08-01 19:12:32 +09:00
syuilo
3a17ff0983 11.27.1 2019-08-01 15:47:02 +09:00
syuilo
9a9270bbe9 New Crowdin translations (#5230)
* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)
2019-08-01 15:44:53 +09:00
Acid Chicken (硫酸鶏)
512eee4f51 Update README.md [AUTOGEN] (#5236) 2019-08-01 01:32:00 +09:00
MeiMei
db01fa0eef Enable s3ForcePathStyle (#5234) 2019-07-31 18:11:11 +09:00
syuilo
0c49a1ebd5 11.27.0 2019-07-29 04:36:11 +09:00
syuilo
636d6394e3 Update CHANGELOG.md 2019-07-29 04:34:56 +09:00
syuilo
c67c091b3a New Crowdin translations (#5217)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)
2019-07-29 01:56:01 +09:00
Oni-Men
333604898c fix #5214 ウィジェットが選択されていないときは追加されないように (#5227)
* fix #5214

* null削除の取り消し

* 空白文字の調整
2019-07-28 14:12:33 +09:00
syuilo
076ac3b614 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-28 10:40:54 +09:00
syuilo
0e1468b159 Update CHANGELOG.md 2019-07-28 10:40:42 +09:00
syuilo
66409029e7 非ログイン時の警告処理 (#5219)
* Update note-mixin.ts

* Update note-mixin.ts

* ✌️

* Update note-mixin.ts

* Update note-menu.vue
2019-07-28 10:35:53 +09:00
syuilo
8ec6b2ec11 Fix error 2019-07-28 10:31:16 +09:00
MeiMei
14736620ec HTTPリクエストのKeep-AliveとPrxoy対応など (#5226)
* DriveのKeep-Alive, Proxy と APのProxy対応

* request系でKeep-Aliveするように

* fix lookup-dns-cache.d.ts

* remove debug output
2019-07-28 09:49:02 +09:00
Xeltica
831ca53b63 「削除して編集」機能を追加 (#5182)
* 「削除して編集」機能を追加

* UXの調整

* 殆どの情報を保持したまま編集できるように

* update lang
2019-07-28 05:33:12 +09:00
MeiMei
6138d46509 AP Emojiのupdatedは採用しないように (#5220)
* AP Emojiのupdatedは採用しない

* updated判定は残す
2019-07-28 05:32:40 +09:00
syuilo
c3003cb363 Improve mobile notifications view 2019-07-28 05:25:12 +09:00
syuilo
4277e53433 通知のフィルタ (#5224)
* ✌️

* Deck
2019-07-28 04:44:09 +09:00
MeiMei
6516bd2ade Fix: リンクバリデーションリンクが一瞬表示されてしまう (#5216)
* Fix: リンクバリデーションリンクが一瞬表示されてしまう

* use link
2019-07-26 00:17:34 +09:00
syuilo
27d22f954a 11.26.2 2019-07-25 02:23:42 +09:00
Satsuki Yanagi
88f5e8e8e2 Bye moment from package.json (#5215)
* Bye moment from package.json

* Use Mapped types for argument type definition
2019-07-25 01:36:48 +09:00
syuilo
fd2ae6d3cf Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-24 02:17:04 +09:00
syuilo
238edd36f7 Fix error 2019-07-24 02:16:41 +09:00
MeiMei
5d847f9808 Fix: some post form errors (#5212)
* Fix: type mismatch in post-form-attaches

* Fix: 'this is null' in post-form-window
2019-07-24 02:15:40 +09:00
syuilo
ac914af9c3 Fix #5210 2019-07-23 00:19:29 +09:00
Aya Morisawa
636f90ca0c Improve CONTRIBUTING.md (#5158) 2019-07-22 14:57:23 +09:00
syuilo
29469bb7c6 Better error 2019-07-22 10:18:27 +09:00
syuilo
4f043b1841 Update signup.ts 2019-07-22 10:16:25 +09:00
syuilo
85008303f5 Prevent username reusing 2019-07-22 10:15:00 +09:00
syuilo
3432d6e615 Update dependencies 🚀 2019-07-22 07:31:02 +09:00
syuilo
855c990a17 11.26.1 2019-07-21 22:59:57 +09:00
syuilo
eef2dc2f62 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-21 22:59:15 +09:00
syuilo
fa54140973 Update CHANGELOG.md 2019-07-21 22:58:57 +09:00
syuilo
e770d32916 New Crowdin translations (#5206)
* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)
2019-07-21 22:58:51 +09:00
Oni-Men
8aeabf530c Patch #5060 (#5205)
* fix #5060

* forgot ";" :p
2019-07-21 22:27:36 +09:00
syuilo
6fbf1cfc28 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-21 21:59:51 +09:00
syuilo
5480df35bc Update CHANGELOG.md 2019-07-21 21:58:48 +09:00
Aya Morisawa
8b5104d564 Update deprecated vscode extension (#5209) 2019-07-21 21:57:15 +09:00
Aya Morisawa
3c1192d6bf Unignore .vscode/extensions.json (#5208) 2019-07-21 20:27:43 +09:00
Satsuki Yanagi
eb8ef35122 Fix activity calendar for desktop widget (#5200)
* Fix activity calendar for desktop widget

* fetch past 21 weeks for activity widgets

* Cleanup

* forEach -> map

* Revert "forEach -> map"

This reverts commit b72e180ee4.
2019-07-21 19:12:16 +09:00
syuilo
8a31e5fd0f Update CHANGELOG.md 2019-07-21 03:27:17 +09:00
syuilo
751728db84 Update CHANGELOG.md 2019-07-21 03:25:10 +09:00
MeiMei
e695f54ef0 投稿フォームが画面外にはみ出さないように (#5203)
* 上下はみ出したウィンドウは上基準で収めるように

* 投稿フォームを画面より長くしないように
2019-07-20 17:50:01 +09:00
MeiMei
b2ed45ae38 Fix: スクロールしてると絵文字ピッカーの位置がずれる (#5204) 2019-07-20 17:47:40 +09:00
syuilo
5e36f75f8a Clean up: Remove unused imports 2019-07-20 04:09:33 +09:00
rinsuki
7ac13a386c Improve GenerateVideoThumbnail (#5186)
* Improve GenerateVideoThumbnail

* use fluent-ffmpeg

* Update src/services/drive/generate-video-thumbnail.ts
2019-07-20 03:28:14 +09:00
Satsuki Yanagi
56c8ad9df3 Improve usability of quote note by pasting url (#5196) 2019-07-20 03:23:16 +09:00
MeiMei
f1ab918ecd Fix question (#5197) 2019-07-20 03:20:06 +09:00
Acid Chicken (硫酸鶏)
42af8c7695 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-20 02:02:48 +09:00
imgbot[bot]
0de2e150cb [ImgBot] Optimize images (#5189)
/assets/ss/user.jpg -- 148.15kb -> 148.15kb (0%)
2019-07-20 01:56:09 +09:00
Acid Chicken (硫酸鶏)
1ac498c8fe Update README.md [AUTOGEN] (#5199) 2019-07-20 01:53:09 +09:00
Acid Chicken (硫酸鶏)
545d29a40a Update README.md [AUTOGEN] (#5193) 2019-07-20 00:40:08 +09:00
syuilo
73bbef2922 Merge branch 'master' into develop 2019-07-19 06:14:21 +09:00
syuilo
26567cdeb2 🎨 2019-07-19 06:13:56 +09:00
syuilo
84941cbb97 Update CHANGELOG.md 2019-07-19 04:13:20 +09:00
syuilo
cd5b24d4eb Merge branch 'develop' 2019-07-19 03:38:05 +09:00
syuilo
c8abd512e1 11.26.0 2019-07-19 03:37:48 +09:00
syuilo
de9bd2651b Remove unused import 2019-07-19 03:37:34 +09:00
syuilo
c432310cae MFMの引用がインライン表示になっている問題を修正 2019-07-19 03:30:37 +09:00
syuilo
1c95cdffdc Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-19 03:27:53 +09:00
syuilo
c3ec668e16 Update CHANGELOG.md 2019-07-19 03:27:49 +09:00
rinsuki
2af79e9855 特定ホストへのメンションの特別処理をクライアントに追加 (#5185)
* 特定ホストへのメンションの特別処理をクライアントに追加

Fix #5168

* Apply suggestions from code review

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Apply suggestions from code review

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Apply suggestions from code review

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Fix indent
2019-07-19 03:13:47 +09:00
Oni-Men
f6ac6f9c6f fix #5071 (#5184) 2019-07-18 20:56:48 +09:00
MeiMei
d8c835fa51 Fix signin (#5181)
* Revert "Fix signin history (#5180)"

This reverts commit a97c14a7b7.

* fix signin

* failはfail専用に

* fix password less 200
2019-07-18 05:26:58 +09:00
Satsuki Yanagi
a97c14a7b7 Fix signin history (#5180)
* Fix #5179

* Fix wrong value in signin history
2019-07-18 04:22:44 +09:00
syuilo
54ecf97c22 New Crowdin translations (#5175)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-07-18 02:03:47 +09:00
MeiMei
9c4e64b7b5 Send Delete activity on suspend (#5165)
* Send Delete Person activity

* Delete activityの後にフォロー解除する

* アカウント削除でもDelete activity
2019-07-18 02:03:28 +09:00
MeiMei
ef44eda69e Mastodonのリンクの所有者認証に対応 (#5161)
* Profile metadata を設定できるように

* API desc
2019-07-18 00:11:39 +09:00
Satsuki Yanagi
f1a7ab639b Resolve #5117 (#5171)
* Resolve #5117

* 出来立てのユーザーがストリームコネクションを持ってるはずがない
2019-07-18 00:00:03 +09:00
Satsuki Yanagi
0d8286cb2a Improve #5176 (#5178)
* 🎨

* Follow review

* Remove unnecessary colon
2019-07-17 23:59:21 +09:00
Satsuki Yanagi
8e4ad4b919 Improve usability of users view (#5176)
* Improve usability of users view

Resolve #5173

* Fix query

* Follow review and fix

* Follow review
2019-07-17 18:59:10 +09:00
Satsuki Yanagi
9a09ed6290 Cleanup source (#5177)
* Cleanup source

* 🙏
2019-07-17 17:13:38 +09:00
Satsuki Yanagi
9ca36021b0 Fix #5172 (#5174) 2019-07-17 13:28:27 +09:00
Acid Chicken (硫酸鶏)
eaebb95827 Update README.md [AUTOGEN] (#5163) 2019-07-17 04:28:11 +09:00
syuilo
b8cce2067c New translations ja-JP.yml (French) (#5170) 2019-07-17 01:34:32 +09:00
syuilo
07a0631964 New translations ja-JP.yml (French) (#5169) 2019-07-17 01:25:56 +09:00
MeiMei
ebc2b05231 fix build error (#5162) 2019-07-17 00:59:19 +09:00
Acid Chicken (硫酸鶏)
4c79dd4e96 Use yarn (#5154)
* Revert "✌️"

This reverts commit b5b437b878.

* Welcome back, yarn.lock

[lockfiles for all](https://yarnpkg.com/blog/2016/11/24/lockfiles-for-all/)

* Use alpine package registry instead of npm's

* Avoid npx

* Remove `"`

* Follow review

refs: https://github.com/syuilo/misskey/pull/5154#discussion_r303227256

* Update lockfile

* Use yarn instead of npm run

refs: https://github.com/syuilo/misskey/pull/5154#discussion_r303227285

* Back to npm

* Follow review

refs: https://github.com/syuilo/misskey/pull/5154#discussion_r303292279
2019-07-15 21:32:09 +09:00
syuilo
abc57519a7 New Crowdin translations (#5155)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)
2019-07-15 20:47:49 +09:00
Aya Morisawa
a23a10d375 Improve CONTRIBUTING.md (#5157) 2019-07-15 20:47:09 +09:00
Satsuki Yanagi
01e7716170 (コ`・ヘ・´ケ) (#5156) 2019-07-15 02:28:30 +09:00
Acid Chicken (硫酸鶏)
0a29ce13b6 Nothing 2019-07-14 11:08:13 +09:00
Acid Chicken (硫酸鶏)
6d0ee61661 Corriger les omissions 2019-07-14 11:04:27 +09:00
Acid Chicken (硫酸鶏)
9c684fd6c4 Welcome back, yarn.lock
[lockfiles for all](https://yarnpkg.com/blog/2016/11/24/lockfiles-for-all/)
2019-07-14 10:16:30 +09:00
Acid Chicken (硫酸鶏)
cbb8edd5ed Revert "Add yarn.lock to .gitignore (#3408)"
This reverts commit e8439679a5.
2019-07-14 10:09:00 +09:00
Acid Chicken (硫酸鶏)
f933fa0e78 Add FAQ in CONTRIBUTING.md 2019-07-14 10:06:10 +09:00
Acid Chicken (硫酸鶏)
b3e5198f23 Use yarn instead of npm 2019-07-14 10:04:52 +09:00
Acid Chicken (硫酸鶏)
6e042ca344 Revert "Docker: Back to npm from yarn (#4730)"
This reverts commit 112a72abdf.
2019-07-14 09:58:45 +09:00
Acid Chicken (硫酸鶏)
9381842af2 Bye @types/is-root 2019-07-14 09:42:22 +09:00
Acid Chicken (硫酸鶏)
a6644c540a Update dependency resolutions 2019-07-14 09:38:49 +09:00
syuilo
063427a660 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-14 04:02:41 +09:00
syuilo
6846067a5d Update CONTRIBUTING.md 2019-07-14 04:02:24 +09:00
Satsuki Yanagi
b7273c90ae Fix #5128 (#5153) 2019-07-14 03:56:34 +09:00
syuilo
a6f5e23069 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-14 03:54:02 +09:00
syuilo
f37f22b163 Fix bug 2019-07-14 03:53:45 +09:00
syuilo
9440fdb2d0 New Crowdin translations (#5152)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-07-14 03:33:31 +09:00
syuilo
96c19b2607 New Crowdin translations (#5151)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2019-07-14 03:28:30 +09:00
syuilo
b34c1379e9 Resolve #3238 2019-07-14 03:18:45 +09:00
syuilo
0fc965f342 New translations ja-JP.yml (Chinese Simplified) (#5149) 2019-07-13 02:04:09 +09:00
syuilo
617db05808 New translations ja-JP.yml (Chinese Simplified) (#5148) 2019-07-13 01:45:09 +09:00
syuilo
6a20ab687c New translations ja-JP.yml (Chinese Simplified) (#5146) 2019-07-13 01:13:50 +09:00
syuilo
6c3bcdad54 New translations ja-JP.yml (Chinese Simplified) (#5145) 2019-07-13 01:04:06 +09:00
syuilo
aeea275ec2 New Crowdin translations (#5144)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2019-07-12 22:36:09 +09:00
Satsuki Yanagi
b3c6e28717 Improve usability (#5142)
Fix #3862
2019-07-12 22:24:29 +09:00
MeiMei
70691e1523 Fix: proxy-media後のContent-Typeが違う (#5143) 2019-07-12 22:21:47 +09:00
syuilo
2cb032b0e0 Fix #5140 2019-07-12 03:17:31 +09:00
syuilo
ebbf5268ac Improve usability 2019-07-12 02:08:13 +09:00
syuilo
b2030e8403 🎨 2019-07-12 00:40:10 +09:00
syuilo
82493bb741 Update dependencies 🚀 2019-07-11 23:46:46 +09:00
syuilo
aa15901c23 New Crowdin translations (#5131)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-07-10 18:47:19 +09:00
syuilo
0bd4d069a2 New Crowdin translations (#5130)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)
2019-07-10 18:37:38 +09:00
syuilo
ab871c6991 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-10 18:30:58 +09:00
syuilo
feec5e88fc Pages: Implement radio button 2019-07-10 18:30:51 +09:00
MeiMei
a091cbb93a Prevent duplicate user registration (#5129) 2019-07-10 03:47:07 +09:00
Satsuki Yanagi
a59ab79da0 Fix drive browser showing false empty (#5127) 2019-07-09 17:38:14 +09:00
syuilo
8ca4d39440 Update doc 2019-07-09 17:06:12 +09:00
syuilo
41d041f701 Merge branch 'develop' 2019-07-09 17:03:38 +09:00
syuilo
3e516474c2 11.25.1 2019-07-09 17:03:24 +09:00
syuilo
405c9c258b New translations ja-JP.yml (English) (#5126) 2019-07-09 17:01:28 +09:00
MeiMei
24e389bcf3 Tune font (#5125) 2019-07-09 17:01:08 +09:00
syuilo
933c83679e Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-09 16:55:59 +09:00
syuilo
a7aa924949 Add userId prop 2019-07-09 16:55:55 +09:00
syuilo
0eb84fe874 Fix bug 2019-07-09 16:55:33 +09:00
syuilo
2f451fa058 New translations ja-JP.yml (English) (#5123) 2019-07-09 09:53:24 +09:00
syuilo
2465a377a1 Delete init.ts 2019-07-09 04:09:02 +09:00
syuilo
697219e946 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-09 00:11:18 +09:00
syuilo
4478298a0a Update uodate docs 2019-07-09 00:11:04 +09:00
syuilo
925f89720a New translations ja-JP.yml (Korean) (#5121) 2019-07-08 17:02:58 +09:00
syuilo
0f71d9f47a Merge branch 'develop' 2019-07-08 16:17:47 +09:00
syuilo
a7ec54ea97 11.25.0 2019-07-08 16:17:14 +09:00
syuilo
1d43d18b19 🎨 2019-07-08 16:11:52 +09:00
syuilo
0bcb25a983 New Crowdin translations (#5102)
* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)
2019-07-08 16:04:24 +09:00
syuilo
ec1f2a285b Resolve #5116 2019-07-08 16:03:17 +09:00
Satsuki Yanagi
c2c06694da Allow only one kind of date identifier at once (#5120) 2019-07-08 13:55:22 +09:00
tamaina
5343b005df Improve paste uploading Resolve #3023 (#4542)
* resolve #3023

* fix

* fix

* better description

* widget

* fix text

* Update post-form.vue

* Fix enter-file-name dialog title text

* Fix type

* On messaging room

* Replace moment.js to original one

* Fix formatDateTimeString
2019-07-08 13:46:31 +09:00
syuilo
eb783f827c Better display in narrow desktop and choosing client type; Fix #1442, Fix #2106, Resolve #4552 (#4549)
* fix #1442, fix #2106

* revert

* wip

* ✌️

* clean up

* fix

* https://github.com/syuilo/misskey/pull/4549#discussion_r287750004
2019-07-08 04:36:06 +09:00
syuilo
6064c3ae47 Add semicolons 2019-07-08 04:32:57 +09:00
syuilo
05862a420f Merge branch 'develop' into pr/4549 2019-07-08 04:27:18 +09:00
syuilo
393ad283e1 🎨 2019-07-08 04:19:17 +09:00
syuilo
841c8d619f 既定のアップロード先フォルダを設定できるように 2019-07-08 04:17:53 +09:00
YuzuRyo61
5c2ed9e5d3 11.24.0の注意書きを追記 (#5108) 2019-07-07 19:00:38 +09:00
MeiMei
d39aabc143 Fix notification wrap (#5118) 2019-07-07 18:59:54 +09:00
Satsuki Yanagi
4628f507e5 公開以外へのリプライ時元の公開範囲で指定したユーザー情報を引き継ぐように (#5119)
* 公開以外へのリプライ時元の公開範囲で指定したユーザー情報を引き継ぐように

* Use users/show userIds
2019-07-07 17:14:08 +09:00
syuilo
8b05816860 Refactor: Remove needless return 2019-07-07 15:29:08 +09:00
Satsuki Yanagi
3b8ea90fdc フォルダーを削除できないときダイアログボックスで知らせる (#5111)
* フォルダーを削除できないときダイアログボックスで知らせる

* https://github.com/syuilo/misskey/pull/5111#issuecomment-508959068

かわいい
2019-07-07 14:56:51 +09:00
MeiMei
638458e2c1 Fix: postgres redis cache の option が適用されない (#5114) 2019-07-07 07:59:59 +09:00
syuilo
bd8d7c3d0f Improve Page
* ページをピン留めできるように
* デッキでカラム内でページを見れるように
2019-07-07 06:56:13 +09:00
syuilo
4b747d20b7 Use npx to avoid global install of ts-node 2019-07-07 05:26:04 +09:00
syuilo
351b236014 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-07 05:13:21 +09:00
syuilo
e9251debe0 イベント送信時に指定の変数の値を添付出来るように 2019-07-07 05:12:31 +09:00
tamaina
22c4842154 https://github.com/syuilo/misskey/pull/4549#discussion_r287750004 2019-07-07 02:22:33 +09:00
tamaina
788edd3622 fix 2019-07-07 02:22:33 +09:00
tamaina
5afe96e15a clean up 2019-07-07 02:22:08 +09:00
tamaina
899fc8a7bd ✌️ 2019-07-07 02:22:08 +09:00
tamaina
2afcdda058 wip 2019-07-07 02:21:13 +09:00
tamaina
c2fc637575 revert 2019-07-07 02:18:24 +09:00
tamaina
82d2b0608f fix #1442, fix #2106 2019-07-07 02:18:24 +09:00
Satsuki Yanagi
047a46d966 Support password-less login with WebAuthn (#5112)
* Support password-less login with WebAuthn

* Fix initial value of usePasswordLessLogin
2019-07-07 01:38:36 +09:00
syuilo
e97dd13e81 Pages: ボタンを色付き表示できるように 2019-07-06 23:11:16 +09:00
syuilo
067e9ec6f4 Fix bug 2019-07-06 22:53:15 +09:00
syuilo
64397708fd MisskeyPagesにイベント送信ボタンを追加 2019-07-06 18:14:50 +09:00
syuilo
5ae6b0058f やった (#5110) 2019-07-06 00:46:00 +09:00
syuilo
c201326906 Merge branch 'develop' 2019-07-05 22:36:13 +09:00
syuilo
3bc2fe8527 11.24.2 2019-07-05 22:35:52 +09:00
syuilo
c76c1fc4ef Update CHANGELOG.md 2019-07-05 22:34:34 +09:00
syuilo
fb3fa06ae7 Update CHANGELOG.md 2019-07-05 22:33:54 +09:00
syuilo
48353cccae Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-05 22:32:19 +09:00
syuilo
65bf863093 Fix #4760 2019-07-05 22:32:15 +09:00
MeiMei
87a6ef0581 Fix: SingleLineなMFMが折り返されてしまう (#5109) 2019-07-05 21:47:18 +09:00
syuilo
af583d2ef6 Update CHANGELOG.md 2019-07-05 21:21:09 +09:00
syuilo
68d49bc770 Add PB 2019-07-05 21:18:49 +09:00
syuilo
d848195a6e チャートで数字が表示される問題を修正 2019-07-05 21:13:52 +09:00
syuilo
3c5324bbbb Merge branch 'develop' 2019-07-05 18:02:42 +09:00
syuilo
e2d59293fb 11.24.1 2019-07-05 18:02:29 +09:00
MeiMei
411f038f34 Fix: カスタム絵文字リアクションがたまに文字になってしまう (#5105) 2019-07-05 17:58:54 +09:00
MeiMei
26f2ae093b APNGでもMIME typeはimage/pngにするように (#5100)
* APNGでもMIME typeはimage/pngにするように

* Revert "APNGでもMIME typeはimage/pngにするように"

This reverts commit e579eb2bf4.

* APNGはファイル送信時のみimage/pngにするように
2019-07-05 17:44:23 +09:00
Satsuki Yanagi
6a53ccf814 ハッシュタグのトレンドの計算を5分単位で丸める (#5107) 2019-07-05 08:43:56 +09:00
Satsuki Yanagi
114523e69e Fix WebAuthn login (#5103) 2019-07-05 07:48:12 +09:00
Satsuki Yanagi
d5caf22d8c Update Emojis immediately (#5106) 2019-07-05 07:45:00 +09:00
Satsuki Yanagi
a8f945ae8e Update node version (#5101) 2019-07-05 02:48:32 +09:00
syuilo
d078f78602 Merge branch 'develop' 2019-07-05 02:13:02 +09:00
syuilo
a5c6145237 11.24.0 2019-07-05 02:12:45 +09:00
syuilo
50df9f7dff Update node version 2019-07-05 02:12:23 +09:00
syuilo
7b33522d97 New Crowdin translations (#5082)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Korean)
2019-07-05 02:09:59 +09:00
syuilo
d3edf03125 Fix errors 2019-07-05 02:00:54 +09:00
Acid Chicken (硫酸鶏)
d5cd38b459 Create partial type definition for 'jsrsasign' (#5092)
* Create partial type definition for 'jsrsasign'

* Update comments

* Add jsrsasign dependency

* Make some params of Signature class optional

* Make init argument of Signature.init optional
2019-07-05 01:54:16 +09:00
syuilo
2c76d410ab Resolve #1867 2019-07-04 22:59:52 +09:00
syuilo
dfd991a6c6 テストメールは管理者アドレスに送信するように 2019-07-04 21:08:47 +09:00
syuilo
16b81fff38 Resolve #3431 2019-07-04 21:07:02 +09:00
syuilo
f379a721f1 Fix bug 2019-07-04 20:52:21 +09:00
syuilo
194a958d40 Update CHANGELOG.md 2019-07-04 20:40:02 +09:00
syuilo
327ffd3498 Resolve #4321 2019-07-04 20:39:33 +09:00
syuilo
40276d7f1a テストページ廃止 2019-07-04 20:26:12 +09:00
syuilo
9254f95679 Update CHANGELOG.md 2019-07-04 15:14:13 +09:00
syuilo
2e1a9dffbe Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-07-04 14:45:33 +09:00
syuilo
ead5a6a258 APNG support 2019-07-04 14:45:28 +09:00
MeiMei
97002400a8 アバターファイル選択でimage以外は表示しないように (#5098) 2019-07-04 14:31:30 +09:00
syuilo
5e7a4e4752 Fix MIME 2019-07-03 23:43:09 +09:00
syuilo
2c955858a0 Add note 2019-07-03 20:31:52 +09:00
syuilo
a0e56504de Update package.json 2019-07-03 20:31:38 +09:00
Satsuki Yanagi
d46e9f5abe Update ESLint 🚀 (#5097) 2019-07-03 20:20:02 +09:00
Mary
fd94b817ab Implement Webauthn 🎉 (#5088)
* Implement Webauthn 🎉

* Share hexifyAB

* Move hr inside template and add AttestationChallenges janitor daemon

* Apply suggestions from code review

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Add newline at the end of file

* Fix stray newline in promise chain

* Ignore var in try{}catch(){} block

Co-Authored-By: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* Add missing comma

* Add missing semicolon

* Support more attestation formats

* add support for more key types and linter pass

* Refactor

* Refactor

* credentialId --> id

* Fix

* Improve readability

* Add indexes

* fixes for credentialId->id

* Avoid changing store state

* Fix syntax error and code style

* Remove unused import

* Refactor of getkey API

* Create 1561706992953-webauthn.ts

* Update ja-JP.yml

* Add type annotations

* Fix code style

* Specify depedency version

* Fix code style

* Fix janitor daemon and login requesting 2FA regardless of status
2019-07-03 20:18:07 +09:00
syuilo
f17e229c1e Resolve #5072 2019-07-03 03:58:45 +09:00
syuilo
96e23b0e5b MFMで連続したスペースがひとつに纏まるのを修正 2019-07-02 20:52:37 +09:00
syuilo
014b945ea6 Fix test 2019-07-02 20:08:30 +09:00
syuilo
76693138d3 Fix MFM parsing: Ignore parent [] of URL 2019-07-02 20:05:52 +09:00
syuilo
10677b57d4 Update dependencies 🚀 2019-07-02 19:20:34 +09:00
syuilo
5f0ac0f46a Fix #5073 2019-07-02 19:17:14 +09:00
syuilo
7ffe559525 Resolve #5085 2019-07-02 18:32:24 +09:00
Acid Chicken (硫酸鶏)
919e3e2fed Update README.md [AUTOGEN] (#5094) 2019-07-02 15:37:24 +09:00
syuilo
03e999875a リモートファイルの削除が重い問題を修正 2019-07-01 21:12:14 +09:00
syuilo
ed0070c470 Set job concurrency to reduce performance issue 2019-07-01 20:37:26 +09:00
syuilo
d764316708 Simplify log domain 2019-07-01 03:25:31 +09:00
syuilo
06b1203ef9 Create 1561873850023-ChartIndexes.ts 2019-06-30 14:51:57 +09:00
syuilo
b2cf74e878 Create accept-migration.ts 2019-06-30 04:49:30 +09:00
syuilo
21064f7859 Add initial migration 2019-06-29 23:19:21 +09:00
syuilo
bb2d76ffa3 Fix #4926 2019-06-29 23:12:00 +09:00
syuilo
763b70e01b Revert "Update ormconfig.ts"
This reverts commit 5a349eb376.
2019-06-29 15:58:04 +09:00
syuilo
5a349eb376 Update ormconfig.ts 2019-06-29 15:31:54 +09:00
MeiMei
0141affe05 Fix: AP object / actor type (#5086)
* attributedToがArrayの場合などに対応

* attachment以外で来るDocument系のObjectに対応

* Renote, Reply 対応

* 表示をいい感じに

* fix type

* revert as const

* Fix Note / Question type

* attributedToのtypeで複合配列を想定する
2019-06-28 18:54:09 +09:00
syuilo
a8379e3bc9 Use as const
#5089
2019-06-28 16:38:48 +09:00
syuilo
952789cc1e Use as const
#5089
2019-06-27 18:04:09 +09:00
syuilo
0500600cdd Merge branch 'develop' 2019-06-25 01:27:51 +09:00
syuilo
6b897e562a 11.23.1 2019-06-25 01:27:33 +09:00
syuilo
f74bc309b1 Fix bug 2019-06-25 01:24:01 +09:00
syuilo
bc83963ac7 English nyaize 2019-06-24 22:20:13 +09:00
syuilo
94715e6153 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-06-23 16:12:37 +09:00
syuilo
31a5247b9c 🎨 2019-06-23 16:12:11 +09:00
syuilo
ac9f77752d New translations ja-JP.yml (Chinese Simplified) (#5081) 2019-06-23 01:53:21 +09:00
syuilo
73ac2632c2 Merge branch 'develop' 2019-06-23 00:22:33 +09:00
syuilo
20f11a6701 11.23.0 2019-06-23 00:21:58 +09:00
syuilo
9bdc67c1f6 New Crowdin translations (#5065)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2019-06-23 00:21:04 +09:00
syuilo
bb4ca7b31a Resolve #5010 2019-06-23 00:06:39 +09:00
syuilo
89f16668e6 Fix #4519 2019-06-22 04:17:02 +09:00
syuilo
8409b59dea Improve usability 2019-06-22 04:09:53 +09:00
MeiMei
1707002d43 Block all activities from suspended users (#5076) 2019-06-21 15:42:07 +09:00
MeiMei
16b03fc157 Improve url-preview (#5077)
* url-previewリクエスト時にハッシュは除く

* ハッシュだけ違うプレビューカードは表示しない

*  url-previewをユーザーロケールで出し分けるように

* Fix code style
2019-06-21 15:41:02 +09:00
syuilo
fa0023e541 Fix bug 2019-06-21 15:11:56 +09:00
syuilo
aec5911821 Improve sync 2019-06-21 15:08:17 +09:00
syuilo
26f4c038f3 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-06-21 13:06:55 +09:00
syuilo
6136f6f33a デッキの状態を同期できるように 2019-06-21 13:06:47 +09:00
MeiMei
2b8d0225cc Enable ServiceWorker (#5075) 2019-06-21 11:50:38 +09:00
syuilo
18184441f1 ホームのカスタマイズ情報を複数のデバイス間で同期できるように 2019-06-21 01:50:01 +09:00
syuilo
bd83939993 Provide Redis version 2019-06-20 22:55:57 +09:00
syuilo
2c1932faa7 Add psql version to info page 2019-06-20 22:52:35 +09:00
syuilo
33d79420eb Fix code style 2019-06-19 17:47:24 +09:00
syuilo
80d8af84dd Merge branch 'develop' 2019-06-18 19:16:41 +09:00
syuilo
aac519bf80 11.22.0 2019-06-18 19:15:55 +09:00
syuilo
d64dffbdda Add index 2019-06-18 17:11:28 +09:00
syuilo
4015ccef2f Add chart indices 2019-06-18 17:10:28 +09:00
syuilo
b6f985abaf Update summaly to 2.3.0 2019-06-18 16:58:32 +09:00
syuilo
2dac8d3d1f Update db.vue 2019-06-18 16:53:14 +09:00
syuilo
4f284e1bc0 Resolve #5063 2019-06-18 16:49:58 +09:00
syuilo
b0280355e8 Better request interval 2019-06-18 16:17:20 +09:00
syuilo
048d88b784 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-06-18 15:56:31 +09:00
syuilo
bb52ebdc3e Provide version of postgresql 2019-06-18 15:56:03 +09:00
Satsuki Yanagi
5f2fda85ba Resolve #5069 (#5070) 2019-06-18 15:42:08 +09:00
syuilo
1331f0b953 Use WHATWG API
> New application code should use the WHATWG API.
2019-06-18 15:27:13 +09:00
syuilo
736fdabc1d Fix #2637 2019-06-18 15:19:19 +09:00
syuilo
7096c0ca49 Add note 2019-06-18 14:04:41 +09:00
syuilo
1a984de8e8 Better error handling 2019-06-18 13:58:59 +09:00
syuilo
285d0d13f9 Fix MFM URL parsing 2019-06-17 20:15:19 +09:00
syuilo
63c659bc8f Fix MFM strike parsing 2019-06-16 21:42:57 +09:00
syuilo
af60b45ee7 Fix MFM italic parsing 2019-06-16 21:30:51 +09:00
syuilo
e7effd606d Fix test 2019-06-16 21:30:26 +09:00
syuilo
5042d23bc4 Simplify test 2019-06-16 21:29:31 +09:00
syuilo
b134467bd3 Add some MFM tests 2019-06-16 21:26:43 +09:00
syuilo
5cc1aab530 Merge branch 'develop' 2019-06-16 16:09:04 +09:00
syuilo
49d57ce049 11.21.0 2019-06-16 16:08:36 +09:00
syuilo
f1feceaf1a Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-06-16 16:08:29 +09:00
syuilo
1204e1c5e4 Update dependencies 🚀 2019-06-16 16:07:57 +09:00
syuilo
96cf4c30cf New Crowdin translations (#5053)
* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (French)
2019-06-16 16:06:00 +09:00
MeiMei
a3853611ad Fix: オートコンプリートにアニメーション停止が効かない (#5061) 2019-06-16 16:04:27 +09:00
MeiMei
ef7eaaabfa Support Unicode 12.0 Emoji (#5062) 2019-06-16 14:24:37 +09:00
MeiMei
a4a96710b0 閉鎖しているホストにはAP deliverしないように (#5057)
* 閉鎖しているホストにはAP deliverしないように

* fix case
2019-06-15 17:09:59 +09:00
syuilo
6d08909b2f Refactor 2019-06-15 17:06:03 +09:00
syuilo
2615368b1e Resolve #365 2019-06-15 00:07:41 +09:00
Aya Morisawa
2bd03ca725 Use halfwidth space instead of fullwidth space in code (#5054) 2019-06-14 22:54:19 +09:00
MeiMei
67dda01fcb image以外はproxyしないように (#5051) 2019-06-14 12:14:23 +09:00
syuilo
e9dc54c4d9 サムネイル生成でエラーになってもファイルのアップロードを失敗しないように
#5050
2019-06-13 22:59:15 +09:00
syuilo
fde9fc2891 Make url preview log warn 2019-06-13 22:35:37 +09:00
syuilo
6e59798e82 Merge branch 'develop' 2019-06-13 18:22:49 +09:00
syuilo
5e3cc0a3c6 11.20.4 2019-06-13 18:22:31 +09:00
syuilo
cfb35324d0 Fix bug 2019-06-13 18:15:35 +09:00
syuilo
9bfbc12afa Add indexes 2019-06-13 15:30:51 +09:00
MeiMei
b41cddaf5a Fix: #5035 (#5048) 2019-06-12 13:47:58 +09:00
Satsuki Yanagi
1432a7193d 設定でPostgreSQLのクエリー結果のキャッシュを無効できるように (#5046) 2019-06-11 20:49:08 +09:00
Acid Chicken (硫酸鶏)
20630cb3a0 Update README.md [AUTOGEN] (#5044) 2019-06-11 16:57:52 +09:00
syuilo
2eb02ae581 Merge branch 'develop' 2019-06-10 23:11:22 +09:00
syuilo
801f9027aa 11.20.3 2019-06-10 23:11:04 +09:00
syuilo
802739a2df Fix bug 2019-06-10 23:09:36 +09:00
syuilo
95b1e1a21d Merge branch 'develop' 2019-06-10 11:44:01 +09:00
syuilo
b8060a522a 11.20.2 2019-06-10 11:43:45 +09:00
syuilo
fe2191a491 New Crowdin translations (#5040)
* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)
2019-06-10 11:42:06 +09:00
syuilo
2891f52817 Merge branch 'riamu' into develop 2019-06-10 11:41:07 +09:00
Satsuki Yanagi
5bdc44c672 ✌️ (#5041)
related #5020
2019-06-10 01:02:33 +09:00
syuilo
65d359b57a Fix #5020 2019-06-09 23:07:32 +09:00
syuilo
7b6e717e23 Merge branch 'develop' 2019-06-07 20:47:56 +09:00
syuilo
2820f6a621 11.20.1 2019-06-07 20:47:14 +09:00
syuilo
6f96e05fec New Crowdin translations (#4979)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)
2019-06-07 20:43:34 +09:00
syuilo
4c2c762b87 Fix #5036 2019-06-07 20:40:05 +09:00
syuilo
81fadfa4ff Fix bug 2019-06-07 20:34:05 +09:00
syuilo
c227641d50 Update dependencies 🚀 2019-06-07 20:29:13 +09:00
syuilo
dacc713f99 Fix #5021 2019-06-07 20:24:07 +09:00
syuilo
a1f794ee05 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-06-07 20:11:38 +09:00
syuilo
8b2098fc89 Fix bug 2019-06-07 20:11:23 +09:00
Acid Chicken (硫酸鶏)
4436852de0 Deny 'private' in note visibility (#5031)
Fixes #5028
2019-06-06 19:45:25 +09:00
Acid Chicken (硫酸鶏)
a8ff1e19dc Add resolutions for polluted packages
for yarn users: Just `yarn install` then vulnerabilities are fixed!
for npm users: Wait for support of 'resolutions' from npm.
2019-06-04 23:06:30 +09:00
Acid Chicken (硫酸鶏)
d559aa8e6d Update README.md [AUTOGEN] (#5025) 2019-06-04 18:19:16 +09:00
Aya Morisawa
83fedcff3b Add missing semicolon (#5030) 2019-06-04 18:03:56 +09:00
Acid Chicken (硫酸鶏)
9969cf8816 Update README.md [AUTOGEN] (#5017) 2019-06-02 10:13:11 +09:00
Acid Chicken (硫酸鶏)
dee48fff12 Update README.md [AUTOGEN] (#5013) 2019-06-01 20:38:46 +09:00
syuilo
aff80199e5 Fix bug 2019-05-29 12:22:47 +09:00
Acid Chicken (硫酸鶏)
b9f1a55190 Update README.md [AUTOGEN] (#5003) 2019-05-27 23:44:44 +09:00
Acid Chicken (硫酸鶏)
07d5bce61a Update README.md [AUTOGEN] (#5001) 2019-05-27 23:15:46 +09:00
Aya Morisawa
834edd216c Fix #4894 (#5000) 2019-05-27 20:04:01 +09:00
syuilo
4670a3d886 Merge branch 'develop' 2019-05-27 18:07:36 +09:00
syuilo
78952df364 11.20.0 2019-05-27 18:07:21 +09:00
syuilo
d69df60da4 Fix 2019-05-27 18:06:01 +09:00
syuilo
6ca69f6f2e Fix #4999 2019-05-27 18:03:13 +09:00
syuilo
8e8428b667 Fix bug 2019-05-27 18:01:06 +09:00
syuilo
5dbe1d448b Improve job queue view 2019-05-27 17:44:51 +09:00
syuilo
85d8e6f220 Refactoring 2019-05-27 17:23:05 +09:00
syuilo
72fb23f4d5 Improve drive management 2019-05-27 16:54:47 +09:00
syuilo
9403ee6495 Improve post form
Resolve #4998
Resolve #1151
2019-05-27 15:38:14 +09:00
Satsuki Yanagi
94ce4fa780 Fix #4996 (#4997) 2019-05-27 08:41:24 +09:00
Satsuki Yanagi
911f5c1455 i18n: ページ編集のカウンターの増加値 (#4995) 2019-05-27 00:03:39 +09:00
Aya Morisawa
a6a88af513 Add locales for admin/views/queue.vue (#4993) 2019-05-26 23:14:31 +09:00
Aya Morisawa
fad1352d51 Add locale for admin/views/federation.vue (#4994) 2019-05-26 23:14:09 +09:00
Aya Morisawa
41cdae07c3 Fix #4989 (#4992)
* Fix #4989

* Update
2019-05-26 22:35:25 +09:00
Aya Morisawa
3b0daeac3c Fix #4986 (#4991) 2019-05-26 22:05:09 +09:00
syuilo
99e4b06468 Merge branch 'develop' 2019-05-26 21:42:19 +09:00
syuilo
c88576e3e6 11.19.1 2019-05-26 21:42:03 +09:00
syuilo
4de709fe51 Fix #4990 2019-05-26 21:35:45 +09:00
syuilo
37e4226c70 Clean up 2019-05-26 21:16:52 +09:00
syuilo
1a6ed61b91 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-26 21:16:37 +09:00
syuilo
ac641da49c Update CHANGELOG.md 2019-05-26 21:16:27 +09:00
Aya Morisawa
933a79af93 Remove deprecated package @types/file-type (#4987) 2019-05-26 15:09:42 +09:00
syuilo
f36e3c69b4 Fix #4985 2019-05-26 13:42:53 +09:00
Aya Morisawa
c46bfcc768 Add links in CONTRIBUTING.md (#4984) 2019-05-26 12:48:37 +09:00
Aya Morisawa
c65ccd5eb0 Improve issues description (#4982) 2019-05-26 01:06:36 +09:00
syuilo
162a740295 Fix #4981 2019-05-26 00:38:26 +09:00
syuilo
9192e98e3f インスタンス名を空にしてもMisskeyロゴが表示されない問題を修正 2019-05-25 11:50:29 +09:00
syuilo
fad84203c0 Merge branch 'develop' 2019-05-25 09:22:25 +09:00
syuilo
622266d200 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-25 09:21:50 +09:00
syuilo
0f6cd3c125 11.19.0 2019-05-25 09:21:21 +09:00
syuilo
0dfc1fcf13 New Crowdin translations (#4955)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)
2019-05-25 09:11:42 +09:00
Satsuki Yanagi
efeebd2165 Better migration for UserProfile1556746559567 (#4969) 2019-05-25 09:11:24 +09:00
MeiMei
69a916d506 Fix: Firefoxでトークの下が隠れてしまう (#4974) 2019-05-25 09:10:51 +09:00
syuilo
114803a86a Fix #4972 2019-05-25 09:07:50 +09:00
syuilo
7f54c8fa2a 🎨 2019-05-25 09:05:14 +09:00
syuilo
0af3e15e82 🎨 2019-05-25 09:04:16 +09:00
syuilo
f9afebc12e Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-25 08:50:07 +09:00
syuilo
fc7268fd12 🎨 2019-05-25 08:49:58 +09:00
Satsuki Yanagi
7e7f94d685 Enable query result cache for meta / stats / hashtags trend (#4978) 2019-05-25 08:35:16 +09:00
syuilo
3ea7a49c1c Show page title 2019-05-24 19:36:35 +09:00
syuilo
f596a847c2 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-24 19:34:20 +09:00
syuilo
312ba501a3 Add deck fallback 2019-05-24 19:33:58 +09:00
Aya Morisawa
c6531e8609 Improve localization description (#4976)
* Improve localization description

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md
2019-05-24 19:31:40 +09:00
syuilo
36c2d0082f MisskeyPagesをホームUIに統合 2019-05-24 19:19:43 +09:00
syuilo
358bb0fc06 Misskey Pages でURLプレビューを表示するように 2019-05-24 18:11:33 +09:00
syuilo
5a4f6b4ada Update page-editor.vue 2019-05-24 18:11:12 +09:00
syuilo
03136caac4 Update instance.vue 2019-05-24 04:57:04 +09:00
Satsuki Yanagi
e6f78a73ab i18n: reaction-picker.vue (#4971) 2019-05-24 04:25:57 +09:00
syuilo
bcdab799d0 🎨 2019-05-24 04:17:14 +09:00
syuilo
50251955cd Improve usability 2019-05-24 03:57:03 +09:00
syuilo
2270fbf3ee 🎨 2019-05-24 03:46:20 +09:00
syuilo
deb6485cc2 Update dependency 🚀 2019-05-24 03:31:14 +09:00
Satsuki Yanagi
6de08d07a3 Support PostgreSQL Extra Connection options (#4970) 2019-05-24 03:26:56 +09:00
syuilo
f54cd10a04 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-23 23:46:20 +09:00
syuilo
dda7b0c80e Refactor 2019-05-23 23:46:10 +09:00
syuilo
3ed9e1ff3f Create FUNDING.yml 2019-05-23 22:43:24 +09:00
syuilo
9c8d26affa Resolve #4967 2019-05-23 14:11:42 +09:00
syuilo
1e1a7ee858 Add info 2019-05-23 13:38:07 +09:00
Satsuki Yanagi
9cfb72810c Fix bug (#4958)
4a88cb59
2019-05-22 14:27:10 +09:00
syuilo
14a774c723 Fix bug 2019-05-22 13:07:58 +09:00
syuilo
8509adf961 Add group update / transfer API (#4957) 2019-05-22 13:03:18 +09:00
syuilo
9d75ec799b Better deninition 2019-05-22 13:00:36 +09:00
syuilo
eed9266ecb align format 2019-05-22 12:58:53 +09:00
syuilo
4a88cb5968 rename 2019-05-22 12:58:44 +09:00
syuilo
50d4de19f0 Clean up 2019-05-22 12:56:42 +09:00
syuilo
c7456224af Fix bug 2019-05-22 12:55:53 +09:00
syuilo
c1524d9bef デッキでフォロー申請を見れるように 2019-05-22 12:54:28 +09:00
Satsuki Yanagi
aa1d2545b3 Fetch joined groups on accept group invites (#4956) 2019-05-22 12:25:14 +09:00
Satsuki Yanagi
1092818203 Add group update / transfer API 2019-05-22 05:06:58 +09:00
syuilo
d67d163c78 Merge branch 'develop' 2019-05-21 18:13:24 +09:00
syuilo
a973bd56fe 11.18.1 2019-05-21 18:13:10 +09:00
syuilo
08b6fda065 Fix bug 2019-05-21 18:09:05 +09:00
syuilo
d0cc145cb3 Clean up 2019-05-21 18:08:58 +09:00
syuilo
19588647d6 Improve usability 2019-05-21 18:06:00 +09:00
syuilo
09da292f1a Fix #4953 2019-05-21 17:43:27 +09:00
syuilo
c8107ff936 🎨 2019-05-21 17:40:58 +09:00
syuilo
b44afc1876 iOSで投稿フォームに自動フォーカスしない問題を修正 2019-05-21 17:39:23 +09:00
syuilo
c26168f22e Merge branch 'develop' 2019-05-21 08:57:10 +09:00
syuilo
391be342ac 11.18.0 2019-05-21 08:55:26 +09:00
syuilo
16549f8f84 Add da-DK 2019-05-21 08:51:32 +09:00
syuilo
2d2b65d9fa New Crowdin translations (#4931)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Traditional)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Danish)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)
2019-05-21 08:49:57 +09:00
syuilo
a12ad37522 Fix 2019-05-21 08:48:15 +09:00
syuilo
84541faf92 Update dependencies 🚀 2019-05-21 08:46:35 +09:00
syuilo
c7daaba370 🎨 2019-05-21 08:44:36 +09:00
syuilo
f128813a5e Fix 2019-05-21 08:23:37 +09:00
syuilo
699a55ea08 Fix 2019-05-21 08:21:26 +09:00
syuilo
90a674f99b Refactore 2019-05-21 08:19:29 +09:00
syuilo
f236d36ed3 Fix 2019-05-21 08:19:23 +09:00
syuilo
1b2200ccf4 Refactyor 2019-05-21 08:10:37 +09:00
syuilo
c6353f3502 Improve usability 2019-05-21 06:53:18 +09:00
syuilo
f09b8a78a0 Improve usability 2019-05-21 06:34:10 +09:00
syuilo
5f741ac46e Refactoring 2019-05-21 06:31:51 +09:00
syuilo
a434cfbe0d Fix 2019-05-21 04:26:14 +09:00
syuilo
cd4c7689b7 Reduce initial bundle size 2019-05-21 04:21:43 +09:00
syuilo
3cc2049fb3 Reduce initial bundle size 2019-05-21 03:45:07 +09:00
syuilo
0d3117e472 Fix 2019-05-21 03:40:18 +09:00
syuilo
b335975c97 Refactoring 2019-05-21 03:20:16 +09:00
syuilo
5511b6e013 Refactoring 2019-05-21 03:07:11 +09:00
syuilo
262d5ead51 Clean up 2019-05-20 22:59:10 +09:00
syuilo
a78b048720 Improve API doc 2019-05-20 22:01:32 +09:00
syuilo
e7dd5e155d Fix bugs
Use Not(IsNull())
2019-05-20 21:44:16 +09:00
MeiMei
5a3ea38bbf Fix: Delete is not deliver (#4950)
* Fix: Delete is not deliver

* fix
2019-05-20 13:34:51 +09:00
syuilo
786521eba7 Merge branch 'develop' 2019-05-20 00:12:42 +09:00
syuilo
202cb3048a 11.17.1 2019-05-20 00:12:19 +09:00
syuilo
7e642cf700 Fix bug 2019-05-19 23:42:18 +09:00
syuilo
7732aabc1e Fix bug 2019-05-19 23:29:28 +09:00
syuilo
1cf9f52eca Merge branch 'develop' 2019-05-19 21:02:32 +09:00
syuilo
d1d5e10b72 11.17.0 2019-05-19 21:02:17 +09:00
syuilo
c3fada264f Fix #4938 2019-05-19 20:57:05 +09:00
syuilo
45eeb74b83 Fix #4948 2019-05-19 20:52:00 +09:00
syuilo
b9a6e551cd Add unique index 2019-05-19 20:50:08 +09:00
syuilo
c610e5ed9b Update note-favorite.ts 2019-05-19 20:48:10 +09:00
syuilo
c2c2824e50 Fix bug 2019-05-19 20:47:41 +09:00
syuilo
01fab09683 Fix #4945 2019-05-19 20:43:33 +09:00
syuilo
e103904a04 Resolve #4941 2019-05-19 20:41:23 +09:00
Acid Chicken (硫酸鶏)
56678cbac0 Update README.md [AUTOGEN] (#4940) 2019-05-19 15:08:16 +09:00
syuilo
7fade8939d Merge branch 'develop' 2019-05-19 03:22:41 +09:00
syuilo
daa557f6a3 11.16.1 2019-05-19 03:22:26 +09:00
syuilo
23a257ed86 Update Dockerfile 2019-05-19 03:21:39 +09:00
syuilo
05d0620491 Merge branch 'develop' 2019-05-19 02:51:49 +09:00
syuilo
5225139284 11.16.0 2019-05-19 02:51:28 +09:00
syuilo
9b2e996cae 🎨 2019-05-19 02:47:31 +09:00
syuilo
6a561342a4 🎨 2019-05-19 02:39:34 +09:00
syuilo
429bed2f91 Refactor 2019-05-18 23:16:09 +09:00
syuilo
200d593414 Add group menu 2019-05-18 22:57:34 +09:00
syuilo
9dbe12135d Fix bug 2019-05-18 22:54:02 +09:00
syuilo
318d7f2652 🎨 2019-05-18 22:50:57 +09:00
syuilo
5a653531e2 Avoid error 2019-05-18 21:22:37 +09:00
syuilo
c7cc3dcdfd ユーザーグループ
Resolve #3218
2019-05-18 20:36:33 +09:00
syuilo
61f54f8f74 Fix bug 2019-05-18 00:38:33 +09:00
syuilo
a3b27fe3a1 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-17 19:56:56 +09:00
syuilo
380749051d ページにいいねできるように 2019-05-17 19:56:47 +09:00
ql3
81625f9fc5 Update gitignore to ignore config files for Intelij-IDEA (#4933) 2019-05-17 02:31:00 +09:00
syuilo
d6ccb1725b Update API docs 2019-05-17 00:19:23 +09:00
syuilo
5ce412aeda Merge branch 'develop' 2019-05-16 16:14:00 +09:00
syuilo
fe6d88e410 11.15.0 2019-05-16 16:13:46 +09:00
syuilo
a21357248f Dockerを使用している場合、アプデの際にマイグレを自動実行するように 2019-05-16 16:12:30 +09:00
syuilo
70d710c9a9 管理画面でreCAPTCHAのプレビューを表示するように 2019-05-16 16:08:50 +09:00
syuilo
183c82fb8d New Crowdin translations (#4924)
* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)
2019-05-16 13:11:56 +09:00
syuilo
62cbb92154 Fix #4930 2019-05-16 12:59:09 +09:00
syuilo
7d70126072 Merge branch 'develop' 2019-05-16 01:18:06 +09:00
syuilo
54bfffa7b9 11.14.0 2019-05-16 01:16:41 +09:00
syuilo
3f5b96bf62 Resolve #4928 2019-05-16 01:07:32 +09:00
syuilo
3d8bbedf1b GIFのサムネイルが生成されないのを修正
#4728
2019-05-15 21:27:20 +09:00
syuilo
23c9f6a6ca Resolve #4833 2019-05-15 20:41:01 +09:00
syuilo
5ba8d4949d インスタンスの設定画面を整理 2019-05-15 20:29:47 +09:00
syuilo
a6befdd541 Fix bug 2019-05-15 17:05:41 +09:00
syuilo
e5409db0e8 Resolve #4925 2019-05-14 23:54:39 +09:00
syuilo
678d610cd6 Update CHANGELOG.md 2019-05-14 21:27:20 +09:00
syuilo
466fe9c368 Merge branch 'develop' 2019-05-14 21:25:24 +09:00
syuilo
13feaea7b7 11.13.0 2019-05-14 21:25:00 +09:00
syuilo
e52f9301fa New Crowdin translations (#4878)
* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2019-05-14 21:18:05 +09:00
syuilo
1b58e18a6d Update dependencies 🚀 2019-05-14 21:17:29 +09:00
syuilo
b779ff08e0 特定のインスタンスのファイルをすべて削除できるように 2019-05-14 21:08:35 +09:00
syuilo
811f9c22d7 🎨 2019-05-14 20:57:24 +09:00
syuilo
c3529f0691 Improve usability 2019-05-14 20:53:49 +09:00
syuilo
f9f574532e インスタンスブロックを設定できるように 2019-05-14 20:49:09 +09:00
syuilo
92dee53dd6 Update note.ts 2019-05-14 12:04:40 +09:00
Satsuki Yanagi
5d42ee2359 Fix tag cloud on Welcome page (#4922)
Resolve #4754
2019-05-14 10:50:20 +09:00
tamaina
7c03d37caa Add ToSUrl, repositoryUrl, feedbackUrl (#4921)
* Add ToSUrl, repositoryUrl, feedbackUrl

* modify nodeinfo
2019-05-14 02:57:04 +09:00
MeiMei
b128b593c2 Fix: user menu (#4845) (#4920)
* Fix: Firefoxで自分のメニューが開けないなど

* 自分のユーザーメニューにはミュートなどを表示しないようになど
2019-05-14 02:53:05 +09:00
MeiMei
342e48ed77 Fix meta tags (#4918) 2019-05-14 02:50:23 +09:00
Acid Chicken (硫酸鶏)
052f8b265d Update README.md [AUTOGEN] (#4916) 2019-05-13 18:03:29 +09:00
Acid Chicken (硫酸鶏)
2eedc91d74 Update Docker images on CircleCI 2019-05-12 17:27:27 +09:00
MeiMei
410b9ad6bc Fix: ピン留め投稿の表示順がおかしい (#4906)
* Fix: syuilo#4904

* fix comment
2019-05-12 09:37:00 +09:00
kabo2468
24c6dff3e4 Fix #4875 (#4899) 2019-05-11 21:43:08 +09:00
syuilo
161db7636a Update log.ts 2019-05-11 10:58:34 +09:00
syuilo
796252357e Merge branch 'develop' 2019-05-10 17:33:21 +09:00
syuilo
b0344d52e9 11.12.0 2019-05-10 17:32:57 +09:00
syuilo
8e6da3a0d9 インスタンス運営者がピン留めユーザーを設定できるように
Related #4892
2019-05-10 17:30:28 +09:00
syuilo
756e4eaeec テキストのリスト内で変数埋め込みできるように 2019-05-10 16:08:01 +09:00
syuilo
3126d0730a MisskeyPagesで変数を並べ替えられるように 2019-05-10 16:04:32 +09:00
syuilo
748e9f15df Add notes/unrenote API 2019-05-10 15:53:53 +09:00
syuilo
7c714f5788 Improve MisskeyPages 2019-05-10 14:18:18 +09:00
MeiMei
d3c3ad839b Update ObjectStorage example (#4890) 2019-05-10 01:46:11 +09:00
syuilo
168de3c316 Resolve #4870 2019-05-09 23:27:34 +09:00
MeiMei
9e20fc5c88 Validate Note on createNote (#4881) 2019-05-09 15:43:31 +09:00
MeiMei
1ff5151786 Fix: みつけるで人気のタグが表示されない (#4883) 2019-05-09 15:42:56 +09:00
Acid Chicken (硫酸鶏)
a56738a331 Update README.md [AUTOGEN] (#4877) 2019-05-07 20:55:37 +09:00
syuilo
2d04a3d6d2 Merge branch 'develop' 2019-05-07 18:56:33 +09:00
syuilo
e0a55b9100 11.11.2 2019-05-07 18:56:19 +09:00
syuilo
0a57eecb3a New Crowdin translations (#4812)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)
2019-05-07 18:49:51 +09:00
syuilo
51f98020f6 Fix #4874 2019-05-07 18:48:38 +09:00
syuilo
70123805e1 Fix #4866 2019-05-07 18:23:12 +09:00
syuilo
1448b11d00 Clean up 2019-05-07 18:20:18 +09:00
syuilo
490b81ed05 Fix #4873 2019-05-07 18:14:37 +09:00
MeiMei
96f675abed Fix: IPv4 onlyホストからDualstackホストにAP deliverできない (#4872) 2019-05-07 17:49:25 +09:00
Satsuki Yanagi
4cd451c613 2段階認証コードの入力フォームタイプの訂正 (#4869)
Fix #4849, Resolve #4848
2019-05-07 08:45:29 +09:00
syuilo
187792dfc4 Fix bug 2019-05-06 20:09:13 +09:00
Satsuki Yanagi
3dde561fe5 Resolve #4864 (#4865) 2019-05-06 17:28:55 +09:00
syuilo
a75ec45172 Merge branch 'develop' 2019-05-05 20:36:25 +09:00
syuilo
3732ddf75f 11.11.1 2019-05-05 20:36:11 +09:00
syuilo
b8d8097734 Fix bug 2019-05-05 20:36:09 +09:00
syuilo
1092532292 Merge branch 'develop' 2019-05-05 20:33:44 +09:00
syuilo
8a79ba0e2b 11.11.0 2019-05-05 20:33:29 +09:00
syuilo
ca2949fbb4 MisskeyPagesにリストから選択関数を追加 2019-05-05 20:31:15 +09:00
syuilo
17b373ac07 ✌️ 2019-05-05 20:16:05 +09:00
syuilo
7aa66f438f Resolve #4853 2019-05-05 20:12:35 +09:00
syuilo
73641fd78d Fix #4852 2019-05-05 15:17:29 +09:00
syuilo
64aac9d6ad Fix #4862 2019-05-05 15:12:25 +09:00
syuilo
2be13736c8 Update user-profile.ts
#4809
2019-05-05 09:42:38 +09:00
MeiMei
ff4f5fec1d meidg (#4835) 2019-05-05 09:29:15 +09:00
Satsuki Yanagi
7d64f8abe4 外部サービス連携後のPackedUserがその情報を持つように (#4850) 2019-05-05 09:28:55 +09:00
Satsuki Yanagi
88e6929e9f 外部サービス連携ログインリンクにアイコン追加 (#4858) 2019-05-05 09:28:23 +09:00
Satsuki Yanagi
5fb0a995dd 様々な修正 (#4859)
Typo, Redundant code, Syntax error の修正
2019-05-05 09:27:55 +09:00
Satsuki Yanagi
58a04ce1a5 ログアウトの処理と外部サービス連携Viewがセッションクッキーを作らないように (#4856) 2019-05-05 04:04:30 +09:00
syuilo
f74e0d9123 Merge branch 'develop' 2019-05-04 15:21:51 +09:00
syuilo
c6249b82d4 11.10.1 2019-05-04 15:21:35 +09:00
syuilo
d6131c0b09 MisskeyPagesでページブロックを削除できなくなっていた問題を修正 2019-05-04 15:14:02 +09:00
syuilo
e62c810b7c Use node 12 2019-05-04 14:53:46 +09:00
syuilo
2851a1a7ef Update dependencies 🚀 2019-05-04 14:47:28 +09:00
syuilo
12cd2709d6 Merge branch 'develop' 2019-05-03 18:58:54 +09:00
syuilo
bf54e58873 11.10.0 2019-05-03 18:58:09 +09:00
syuilo
6b473e3a5c Fix #4840 2019-05-03 18:55:24 +09:00
syuilo
4b68abd963 割った余りを求める関数をMisskeyPagesに追加 2019-05-03 18:48:40 +09:00
Satsuki Yanagi
0e764a2b3e Fix external service authentication (#4846) 2019-05-03 18:38:19 +09:00
MeiMei
9d1ed1eb0d Some import and export fixes (#4842)
* Fix: Mastodon v2.8.0 のフォローリストがインポートできない

* Fix: エクスポートリクエストに失敗してもエラーが出ない (#4821)

* エクスポートファイルでは同一ハッシュチェックをしないように
2019-05-03 18:33:25 +09:00
syuilo
a09a3465a2 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-03 14:49:40 +09:00
syuilo
001969efaf Improve usability 2019-05-03 14:49:22 +09:00
Acid Chicken (硫酸鶏)
e7c515da9a Update README.md [AUTOGEN] (#4839) 2019-05-03 14:34:41 +09:00
Acid Chicken (硫酸鶏)
8367c7dd49 Update README.md [AUTOGEN] (#4837) 2019-05-03 14:32:09 +09:00
syuilo
55e6cae240 Fix #4834 2019-05-03 09:16:31 +09:00
syuilo
5553c3fb17 Improve usability 2019-05-03 08:27:46 +09:00
syuilo
026265cb1e Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-05-03 08:22:51 +09:00
syuilo
289c76a802 Disable ServiceWorker 2019-05-03 08:22:44 +09:00
Acid Chicken (硫酸鶏)
7c1bc1d6bc Update README.md [AUTOGEN] (#4832) 2019-05-02 19:44:59 +09:00
Acid Chicken (硫酸鶏)
90cf0d32b5 Update README.md [AUTOGEN] (#4827) 2019-05-02 18:48:48 +09:00
syuilo
88d934f922 Merge branch 'develop' 2019-05-02 17:57:29 +09:00
syuilo
abf11bb03c 11.9.0 2019-05-02 17:57:13 +09:00
syuilo
2d1f50303d Improve MisskeyPages 2019-05-02 17:55:59 +09:00
syuilo
9fb7c4091f Merge branch 'develop' 2019-05-02 17:18:34 +09:00
syuilo
2fdec27ab0 11.8.1 2019-05-02 17:18:11 +09:00
syuilo
aff56469ed Fix bug 2019-05-02 17:15:14 +09:00
Satsuki Yanagi
419cb7fbad Remove unwanted ! character in user token regex (#4830) 2019-05-02 06:24:32 +09:00
Satsuki Yanagi
7882851539 Fix TypeScript semantic error (#4828)
ビルドの時こういうエラーが出てます
src/misc/aiscript/evaluator.ts(2,29): error TS7016: Could not find a declaration file for module 'seedrandom'
2019-05-01 22:56:18 +09:00
syuilo
358299cf0e Merge branch 'develop' 2019-05-01 20:59:18 +09:00
syuilo
5a2af24869 11.8.0-2 2019-05-01 20:58:59 +09:00
syuilo
6d35872af5 Merge branch 'develop' 2019-05-01 20:57:23 +09:00
syuilo
559dfdaa80 11.8.0 2019-05-01 20:56:50 +09:00
syuilo
79c49bc926 ページのソースを見れるように 2019-05-01 20:48:56 +09:00
syuilo
76c538ad25 🎨 2019-05-01 19:50:56 +09:00
syuilo
e76e358d98 Fix bug 2019-05-01 19:50:52 +09:00
syuilo
76f37671b4 🎨 2019-05-01 19:45:05 +09:00
syuilo
a9fc176c3c Fix types 2019-05-01 19:31:34 +09:00
syuilo
8b13e3c327 Refactor 2019-05-01 19:20:47 +09:00
syuilo
c3cd6ad2d2 Refactoring 2019-05-01 18:33:11 +09:00
syuilo
3444b9c9c8 Add splitStrByLine function 2019-05-01 16:33:54 +09:00
syuilo
ca6fc9cd79 Remove strConcat function 2019-05-01 16:07:05 +09:00
syuilo
4747ae8b61 Improve AiScript 2019-05-01 15:17:24 +09:00
syuilo
b6c50d63a0 Update ja-JP.yml 2019-05-01 15:04:26 +09:00
syuilo
52ebf2055e Improve AiScript 2019-05-01 14:54:34 +09:00
syuilo
d0af2c2a98 Improve MisskeyPages 2019-05-01 10:37:25 +09:00
syuilo
10216af48a Improve MisskeyPages 2019-05-01 10:05:33 +09:00
syuilo
d0c8d537f5 Refactor 2019-05-01 09:15:29 +09:00
syuilo
1903aaf351 Improve API doc
Fix #4825
2019-05-01 04:44:46 +09:00
MeiMei
e6cdf1b995 Fix: mention (あなた宛て) streaming にミュートが効かない (#4823) 2019-04-30 15:53:13 +09:00
syuilo
2900d22cdc Update CHANGELOG.md 2019-04-30 12:38:07 +09:00
syuilo
dc072d4706 Merge branch 'develop' 2019-04-30 12:21:31 +09:00
syuilo
8ae14f146b 11.7.0 2019-04-30 12:20:59 +09:00
syuilo
57444c6c3f Update page-editor.el.post.vue 2019-04-30 12:17:53 +09:00
syuilo
759719d124 Improve MisskeyPages 2019-04-30 12:15:41 +09:00
syuilo
59782973be 🎨 2019-04-30 10:08:55 +09:00
syuilo
6c647ea91c Improve usability 2019-04-30 07:55:40 +09:00
syuilo
c9763dabe1 変換関数を追加 2019-04-30 07:49:46 +09:00
syuilo
da82754659 🎨 2019-04-30 07:43:56 +09:00
syuilo
a3cc0ad18b 🎨 2019-04-30 07:41:57 +09:00
syuilo
2e8e5c2751 Improve MisskeyPages
* ifブロック を追加
* ボタンやスイッチなどのテキストに変数使えるようにした
2019-04-30 06:40:02 +09:00
syuilo
a60d83b101 Fix ogp 2019-04-29 18:15:12 +09:00
syuilo
6d45265763 Use bigint 2019-04-29 17:38:31 +09:00
syuilo
42e84b77e1 Merge branch 'develop' 2019-04-29 15:26:43 +09:00
syuilo
24121cfadb 11.6.0 2019-04-29 15:26:09 +09:00
syuilo
93093dd288 🎨 2019-04-29 15:20:37 +09:00
syuilo
53381c04e6 🎨 2019-04-29 15:17:31 +09:00
syuilo
c6b64e57f1 いくつかの文字列関数を追加 2019-04-29 15:13:04 +09:00
syuilo
9158426d0a Improve usability 2019-04-29 14:51:04 +09:00
syuilo
cef26853df Improve usability 2019-04-29 14:46:35 +09:00
syuilo
c0673884c5 🎨 2019-04-29 14:38:06 +09:00
syuilo
c98eb64598 Fix bug 2019-04-29 14:37:58 +09:00
syuilo
8836bd4f3b Merge branch 'develop' 2019-04-29 11:11:17 +09:00
syuilo
a58df29208 11.5.1 2019-04-29 11:10:59 +09:00
syuilo
0d64a17d86 Update page.vue 2019-04-29 11:10:50 +09:00
syuilo
c886c09cdb MisskeyPagesで値が0の変数が表示されない問題を修正 2019-04-29 11:08:35 +09:00
syuilo
e86d0007c6 Fix error 2019-04-29 11:03:05 +09:00
syuilo
624ee76e71 Fix bug 2019-04-29 11:00:41 +09:00
syuilo
9406079cb7 Merge branch 'develop' 2019-04-29 09:29:48 +09:00
syuilo
cd2de7f893 11.5.0 2019-04-29 09:29:21 +09:00
syuilo
342061803e Update dependencies 🚀 2019-04-29 09:28:13 +09:00
syuilo
05b8111c19 Pages (#4811)
* wip

* wip

* wip

* Update page-editor.vue

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Update page-editor.variable.core.vue

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Update aiscript.ts

* wip

* Update package.json

* wip

* wip

* wip

* wip

* wip

* Update page.vue

* wip

* wip

* wip

* wip

* more info

* wip fn

* wip

* wip

* wip
2019-04-29 09:11:57 +09:00
syuilo
747a0b1791 Update define.ts 2019-04-28 19:56:41 +09:00
syuilo
c05586b53a Improve performance 2019-04-27 11:17:03 +09:00
YuzuRyo61
0cfca4a618 Fix official instance address (#4805)
いくつかのURLが misskey.xyz になってたままだったので misskey.io に訂正
2019-04-26 18:29:56 +09:00
syuilo
2b8187f7ab Fix bug 2019-04-26 00:54:11 +09:00
rinsuki
291e7e7943 おすすめユーザーに自分自身を含まないように (#4803)
Fix #4790
2019-04-26 00:52:58 +09:00
syuilo
535d10f469 Improve API console 2019-04-25 14:40:42 +09:00
syuilo
4cb58c0892 Refactor 2019-04-25 13:27:07 +09:00
syuilo
6721d27e3f Improve hashtag API 2019-04-25 13:25:10 +09:00
syuilo
da9dd7c423 Improve API definition 2019-04-25 12:56:52 +09:00
syuilo
867eb41618 Fix #4415 2019-04-25 12:37:13 +09:00
syuilo
6fdff13480 Update example.yml 2019-04-25 12:24:18 +09:00
syuilo
e581ead1ed Update CHANGELOG.md 2019-04-25 12:22:03 +09:00
syuilo
7495206db2 Merge branch 'develop' 2019-04-25 07:48:29 +09:00
syuilo
fe87d16d46 11.4.0 2019-04-25 07:48:12 +09:00
syuilo
0db54386cd Resolve #3119 2019-04-25 07:46:39 +09:00
syuilo
772258b0b8 Fix #4793 2019-04-25 04:32:01 +09:00
syuilo
3ef002e14d Fix bug 2019-04-25 04:27:34 +09:00
syuilo
b90d473ae5 Fix layout 2019-04-25 04:26:58 +09:00
syuilo
f5091d524b Refactorgin 2019-04-25 04:17:03 +09:00
MeiMei
ee5720df2c Fix #4704 (#4797)
*  Fix #4632

* Fix #4795
2019-04-25 04:07:39 +09:00
syuilo
afe2037985 Merge branch 'develop' 2019-04-24 20:51:34 +09:00
syuilo
878cd18144 11.3.1 2019-04-24 20:51:14 +09:00
syuilo
e8c8f67a09 Update post-form.vue
Close #4792

Co-Authored-By: tamaina <tamaina@hotmail.co.jp>
2019-04-24 20:47:47 +09:00
syuilo
7b29e7cf7e Fix bug 2019-04-24 20:41:32 +09:00
syuilo
723d3e6871 Merge branch 'develop' 2019-04-24 15:23:48 +09:00
syuilo
f063dee12a 11.3.0 2019-04-24 15:23:31 +09:00
syuilo
db4b315d3d Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-24 15:21:58 +09:00
syuilo
64d00b08a3 Improve announcement
* お知らせにMFMを使えるように
* お知らせに画像を添付できるように
2019-04-24 15:21:39 +09:00
Acid Chicken (硫酸鶏)
74736a941e Update README.md [AUTOGEN] (#4778) 2019-04-24 14:56:23 +09:00
Acid Chicken (硫酸鶏)
c40366f20a Update README.md [AUTOGEN] (#4777) 2019-04-24 14:55:49 +09:00
syuilo
d73e52ac2a Create find-by-hash.ts 2019-04-24 14:54:19 +09:00
syuilo
9fac8a611f Fix response 2019-04-24 14:54:15 +09:00
syuilo
9c774a50f8 Update attached-notes.ts 2019-04-24 14:54:06 +09:00
syuilo
4f20ee1909 Rename theme 2019-04-24 14:44:28 +09:00
syuilo
1440c5bc65 Fix bug 2019-04-24 14:39:59 +09:00
syuilo
5829b2a7c1 Update CHANGELOG.md 2019-04-24 10:07:27 +09:00
syuilo
e3c4bc18d0 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-24 10:02:49 +09:00
syuilo
8555ec2f72 Fix #4767 2019-04-24 10:02:31 +09:00
syuilo
8d7cefbbbe New Crowdin translations (#4771)
* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)
2019-04-24 09:54:43 +09:00
syuilo
5aa5896b22 Cache meta 2019-04-24 08:11:19 +09:00
syuilo
8a55bdd89d Increase reaction column length 2019-04-24 03:39:11 +09:00
syuilo
6444ef6444 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-24 03:26:10 +09:00
syuilo
701ab6cc68 Refactor 2019-04-24 03:26:02 +09:00
Acid Chicken (硫酸鶏)
3c6ce7a943 Update README.md [AUTOGEN] (#4773) 2019-04-24 00:34:48 +09:00
Acid Chicken (硫酸鶏)
1e54afd217 Update README.md [AUTOGEN] (#4772) 2019-04-24 00:33:55 +09:00
syuilo
4e90fd3a06 メンテナ名を必須でなくす
Close #4753
2019-04-23 22:48:53 +09:00
syuilo
0463c6bb0f Refactor API (#4770)
* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Update description.ts

* wip
2019-04-23 22:35:26 +09:00
syuilo
f31f986d66 Fix #4768 2019-04-23 02:50:59 +09:00
Acid Chicken (硫酸鶏)
c203c8302b Add @rinsuki into collaborators (#4762) 2019-04-22 18:19:20 +09:00
syuilo
dea4a7b389 Merge branch 'develop' 2019-04-22 00:50:14 +09:00
syuilo
0caf9b0706 11.2.2 2019-04-22 00:49:36 +09:00
syuilo
5f655c9fd7 Update dependencies 🚀 2019-04-22 00:43:15 +09:00
syuilo
44aed53998 New Crowdin translations (#4736)
* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Czech)
2019-04-22 00:39:00 +09:00
syuilo
f9ff621d4a 2段階認証を有効にするとログインできない問題を修正 2019-04-22 00:38:37 +09:00
かひわし4(バージョン1)
23a5a75778 Docker: Remove quotes in docker_example.env (#4765)
Docker does not parse quotes in env_file.
As follows if enclosed in quotation marks.

docker_example.env:
POSTGRES_PASSWORD="password"

Environment value in Misskey container:
$ echo $POSTGRES_PASSWORD
"password"

Some users may see this behavior as unexpected.

Dockerはenv_fileのクォーテーションマークを解析しません。
もし値がクォーテーションマークで囲まれていた場合は以下のような動作になります。

docker_example.env:
POSTGRES_PASSWORD="password"

Misskeyのコンテナ内の環境変数:
$ echo $POSTGRES_PASSWORD
"password"

この動作を予期しない動作のように思うユーザーがいるかもしれません。
2019-04-21 23:58:15 +09:00
MeiMei
a78475844a Fix: リモートユーザーの修復処理が自動的に実行されない など for v11 (#4764)
* Fix #4761

* Fix: updatePersonができない
2019-04-21 23:57:44 +09:00
syuilo
575cf2935e Merge branch 'develop' 2019-04-21 06:52:28 +09:00
syuilo
ae43aa1bc0 11.2.1 2019-04-21 06:52:01 +09:00
MeiMei
0ba71c6a47 Fix #4752 (#4759) 2019-04-21 02:30:18 +09:00
syuilo
643f7d1803 Update CHANGELOG.md 2019-04-20 05:19:28 +09:00
syuilo
5d06da4db2 Update CHANGELOG.md 2019-04-20 05:13:38 +09:00
syuilo
2934b09361 Fix bug 2019-04-19 21:37:36 +09:00
Acid Chicken (硫酸鶏)
97341d3fa0 Update README.md [AUTOGEN] (#4748) 2019-04-19 15:37:47 +09:00
syuilo
a95546ede0 Fix bug 2019-04-19 01:00:17 +09:00
syuilo
7b44727b23 Merge branch 'develop' 2019-04-18 22:01:45 +09:00
syuilo
debe648a98 11.2.0 2019-04-18 22:00:53 +09:00
syuilo
fda8cf77ed Improve warp 2019-04-18 22:00:11 +09:00
syuilo
8aaab195c6 Fix bug 2019-04-18 21:40:36 +09:00
syuilo
4096ddcbd0 Use - 2019-04-18 21:36:44 +09:00
syuilo
ae6cc11ad2 Fix icon 2019-04-18 21:34:56 +09:00
tamaina
dab7e527de Improve user lists index (#4605)
* wip

* Revert "wip"

This reverts commit 6212831ce3.

* improve list index

* Update user-lists.vue
2019-04-18 21:33:24 +09:00
syuilo
8b92feac71 Resolve #4732 2019-04-18 21:29:19 +09:00
tamaina
4beb3e5755 Fix #4734 (#4745) 2019-04-18 20:46:59 +09:00
syuilo
55f63229cd Update timemachine.vue 2019-04-18 19:42:40 +09:00
syuilo
7827aeb695 Resolve #4735 2019-04-18 19:40:23 +09:00
syuilo
cce768aaac Fix API definition 2019-04-18 14:58:43 +09:00
syuilo
80b83c0624 間違えた 2019-04-18 14:41:51 +09:00
syuilo
73b683bb4d Add test 2019-04-18 14:39:49 +09:00
syuilo
d78a5c0863 Fix #4703 2019-04-18 14:34:47 +09:00
syuilo
683e5b6abe Add type annotations 2019-04-18 14:29:17 +09:00
MeiMei
653b8f6352 スプラッシュがクリックに反応するように (#4561)
* confirm silence

* Resolve #4554

* Revert "confirm silence"

This reverts commit e1dbdc2bfc.
2019-04-18 03:37:49 +09:00
MeiMei
9ec6afa375 confirm on user menu (#4553) 2019-04-18 03:36:06 +09:00
MeiMei
adff5382ca confirm silence (#4560) 2019-04-18 03:33:51 +09:00
tamaina
704aabd703 Use menu instead of prompt Fix #4540, Fix #342 (#4575)
* Use menu instead prompt

* fix

* https://bit.ly/2U0JuVt

* fix
2019-04-18 03:32:45 +09:00
MeiMei
f7b1ef0690 アンケートウィジットでもMFMを使用するように v11 (#4741)
* MFM in poll

* use mfm
2019-04-18 03:14:04 +09:00
syuilo
929982117f Merge branch 'develop' 2019-04-18 01:12:21 +09:00
syuilo
56a530d769 11.1.6 2019-04-18 01:12:03 +09:00
syuilo
7ef75fb06b New Crowdin translations (#4692)
* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Czech)
2019-04-18 01:11:06 +09:00
かひわし4(バージョン1)
112a72abdf Docker: Back to npm from yarn (#4730)
This commit reverts "Fix Dockerfile #4214" which uses yarn instead of npm.
The cause of the build error is that binding.gyp and src/crypto_key.cc
are missing when installing dependencies.
In other words, yarn did not fix build error.

There is no reason to use yarn, so go back to npm.
2019-04-18 01:09:31 +09:00
syuilo
71813e03ee Fix bug 2019-04-18 01:05:40 +09:00
syuilo
9b05b6ef28 Improve readability 2019-04-18 00:57:06 +09:00
syuilo
54a87b25b3 Remove unused imports 2019-04-18 00:56:10 +09:00
MeiMei
55e97864bd Fix: v11で未認知ユーザーからActivityが飛んできた場合に処理できない (#4733)
* Fix: inboxに未知のユーザーが来ると処理できない

* こうかな
2019-04-18 00:53:00 +09:00
syuilo
95733c9490 [MFM] Better hashtag parsing 2019-04-18 00:40:56 +09:00
syuilo
e19ae644f1 Fix indent 2019-04-18 00:13:31 +09:00
syuilo
ac4ea25267 Better error handling 2019-04-18 00:09:08 +09:00
syuilo
611e4f34dc Merge branch 'develop' 2019-04-17 19:37:32 +09:00
syuilo
faf017f333 11.1.5 2019-04-17 19:36:58 +09:00
syuilo
5eec896615 Better avgColor 2019-04-17 17:13:49 +09:00
syuilo
17f35174ea 🎨 2019-04-17 17:01:57 +09:00
syuilo
bf71b31123 Update CONTRIBUTING.md 2019-04-17 16:59:39 +09:00
syuilo
9399a44c82 Fix error 2019-04-17 16:50:50 +09:00
syuilo
c96418806f Disable sql log 2019-04-17 16:45:31 +09:00
syuilo
7945eddef6 Clean up 2019-04-17 14:39:45 +09:00
syuilo
0ede390fef Refactor 2019-04-17 14:32:59 +09:00
syuilo
85959a3b9b Fix #4721 Fix #4722 2019-04-17 14:30:31 +09:00
syuilo
946c3a25b9 Clean up 2019-04-17 07:25:34 +09:00
syuilo
f9d697128a Update schemas.ts 2019-04-17 04:32:04 +09:00
syuilo
532ef744f4 Merge branch 'develop' 2019-04-17 02:58:09 +09:00
syuilo
27a961814b 11.1.4 2019-04-17 02:57:48 +09:00
syuilo
5a5b65e9bf Clean up 2019-04-17 02:57:36 +09:00
syuilo
96673ad610 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-17 02:51:19 +09:00
syuilo
a9025aea0d Better response 2019-04-17 02:51:12 +09:00
syuilo
f38ab0b973 Update delete-file.ts 2019-04-17 02:37:37 +09:00
tamaina
150dac00cf Update stream.ja-JP.md (#4725) 2019-04-17 02:21:22 +09:00
syuilo
bcb1a9c5d3 Refactor 2019-04-17 02:19:49 +09:00
かひわし4(バージョン1)
2e55aea584 Doc: Update setup documents (#4680)
* Doc: Update setup documents

Use GitHub api to checkout latest release instead of "git tag" command
which cannot accurately determine prerelease tag.
Also, Changed numbered list format because
the shell command is too long to fit on one line.

* Doc: Use tab instead of spaces

* Doc: Use master branch as latest release tag

master branch and latest release is the same.
master branch merges develop branch with each latest release.
2019-04-17 02:15:27 +09:00
syuilo
4f5a3f0df5 smallint 2019-04-17 02:12:15 +09:00
syuilo
e265b538cc Fix #4724 2019-04-17 02:11:22 +09:00
MeiMei
b186504718 Metaのアクセスでトランザクションを張るように (#4720)
* admin/instanceでmetaをキャッシュしないように

* Metaのアクセスにトランザクションをかける
2019-04-17 00:45:33 +09:00
syuilo
fc27890f13 Refactor 2019-04-17 00:34:49 +09:00
syuilo
a583939767 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-17 00:33:10 +09:00
syuilo
52e3bcfd29 Meta を二重にデータベースに保存できないように 2019-04-17 00:33:02 +09:00
Satsuki Yanagi
85d29a3f9d Correct syntax error (#4718) 2019-04-17 00:30:34 +09:00
YuzuRyo61
18944d389d Fix space indent in misskey.nginx (#4717)
Tabインデントになっていたものをスペースインデントに変更
2019-04-16 19:41:58 +09:00
syuilo
e90ac5d6a4 チャートの数値カラムの型を拡張 2019-04-16 17:52:09 +09:00
Acid Chicken (硫酸鶏)
cb9a6ae774 Update README.md [AUTOGEN] (#4697) 2019-04-16 13:07:00 +09:00
かひわし4(バージョン1)
3ef09aa6b2 Docker: Uncomment redis (#4707)
Redis is required since Misskey 11.0.0.
2019-04-16 13:06:36 +09:00
tamaina
4db22e45a2 fix syuilo#4711 (#4715) 2019-04-16 13:05:47 +09:00
tamaina
f966d0b32c 色々な修正; Fix #4709 (#4714)
* Fix a la carte 1

* use dialog instead of alert() etc
2019-04-16 13:05:10 +09:00
MeiMei
ba3879a95a Fix: admin/driveのアイコンがずれてる (#4710) 2019-04-16 02:46:47 +09:00
syuilo
c6cef0162d Merge branch 'develop' 2019-04-16 01:24:00 +09:00
syuilo
6d09aa86e9 11.1.3 2019-04-16 01:23:26 +09:00
syuilo
b711f0f9c6 Clean up 2019-04-16 01:22:48 +09:00
syuilo
8fefb3a4c9 Update authenticate.ts 2019-04-16 01:20:28 +09:00
syuilo
400cdf0f26 Fix #4705 2019-04-16 01:11:20 +09:00
syuilo
bce8c5a315 Refactor 2019-04-16 01:05:21 +09:00
かひわし4(バージョン1)
f44dc2dd05 Doc: Add "Init DB" section (#4695)
Misskey 11.x requires database initialization.
2019-04-15 23:39:09 +09:00
syuilo
df950d2fc5 Clean up 2019-04-15 23:37:35 +09:00
syuilo
5e1f804dd1 Merge branch 'develop' 2019-04-15 23:32:45 +09:00
syuilo
15de89f2f9 11.1.2 2019-04-15 23:32:26 +09:00
syuilo
df647a415c Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-15 23:29:44 +09:00
syuilo
fc66231f8e Fix #4701 2019-04-15 23:29:26 +09:00
YuzuRyo61
71df3e1566 APIドキュメントの説明とか一部追記 (#4702)
* Define description in generate.ts

* Add description in create.ts
2019-04-15 23:26:20 +09:00
syuilo
168c22fc98 Fix bug 2019-04-15 23:00:39 +09:00
syuilo
792ec23d7a Use pureimage instead of canvas 2019-04-15 22:58:04 +09:00
syuilo
ff625253ce Merge branch 'develop' 2019-04-15 22:09:10 +09:00
syuilo
8c872c6b22 11.1.1 2019-04-15 22:08:53 +09:00
syuilo
541f5bc0a6 Fix bug 2019-04-15 21:59:14 +09:00
syuilo
77ff7b9df0 デフォルトでHTLを表示するように 2019-04-15 21:30:49 +09:00
syuilo
203cc5075e Fix application-name 2019-04-15 21:17:52 +09:00
syuilo
7abfcd06da Merge branch 'develop' 2019-04-15 21:02:04 +09:00
syuilo
724f81c7f3 11.1.0 2019-04-15 21:01:46 +09:00
syuilo
4d2e98af7b 管理者やモデレーターはレートリミット無効に 2019-04-15 20:52:08 +09:00
syuilo
08221fdda7 Fix bug 2019-04-15 20:41:56 +09:00
syuilo
c0f72970b9 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-15 20:37:29 +09:00
syuilo
18bc4a49e8 ランダムにアバターを生成するように 2019-04-15 20:37:21 +09:00
Acid Chicken (硫酸鶏)
f90b6dbed4 Follow lint 2019-04-15 19:05:35 +09:00
syuilo
d2d991ff34 Fix error 2019-04-15 18:08:57 +09:00
syuilo
190a5e175b Fix bug 2019-04-15 16:37:54 +09:00
syuilo
a05f5a91b8 Merge branch 'develop' 2019-04-15 13:14:58 +09:00
syuilo
4d02ff27be 11.0.3 2019-04-15 13:14:36 +09:00
syuilo
df92b41d25 Fix bug 2019-04-15 13:11:17 +09:00
syuilo
075af96338 Fix error 2019-04-15 12:54:42 +09:00
syuilo
64bbc55336 Fix bug 2019-04-15 12:52:02 +09:00
syuilo
06c621acc1 Fix bug 2019-04-15 12:49:38 +09:00
syuilo
d040dc19bc Merge branch 'develop' 2019-04-15 12:23:20 +09:00
syuilo
a38ae4a402 11.0.2 2019-04-15 12:23:03 +09:00
syuilo
772063aade Refactor 2019-04-15 12:20:48 +09:00
syuilo
31c26354c5 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-15 12:11:58 +09:00
syuilo
64b331c5b2 Update read.ts 2019-04-15 12:11:32 +09:00
tamaina
94f8a145ec Better permisson Fix #2341 (#4611)
* Better permisson Fix #2341

* add kinds.ts

* test

* fix

* v11

* fix
2019-04-15 12:10:40 +09:00
syuilo
b357afa30a Clean up 2019-04-15 12:04:23 +09:00
syuilo
fee0437493 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2019-04-15 12:03:04 +09:00
syuilo
663b8864c1 Fix bug 2019-04-15 12:03:00 +09:00
syuilo
c6eafdde30 Fix bug 2019-04-15 11:59:25 +09:00
syuilo
f32ff95256 New Crowdin translations (#4685)
* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Czech)
2019-04-15 11:33:08 +09:00
MeiMei
0452b75c3e Fix #4688 (#4689) 2019-04-15 11:32:53 +09:00
Acid Chicken (硫酸鶏)
97efd23ec8 Update README.md [AUTOGEN] (#4691) 2019-04-15 11:31:32 +09:00
rinsuki
ea3e311528 簡易的なパーミッションの後方互換 (#4687) 2019-04-15 03:48:54 +09:00
rinsuki
0565454419 callbackUrlをappのレスポンスに追加 (#4686) 2019-04-15 03:39:31 +09:00
syuilo
35c79c2f29 Fix bug 2019-04-15 03:20:14 +09:00
syuilo
e6089aec48 Update README.md 2019-04-15 02:45:16 +09:00
syuilo
dd3f7834c3 Merge branch 'develop' 2019-04-15 01:06:57 +09:00
syuilo
f8cf18d880 11.0.1 2019-04-15 01:06:36 +09:00
syuilo
2ac7e242b6 Fix test 2019-04-15 01:03:57 +09:00
syuilo
d8b604a94f Update CHANGELOG.md 2019-04-14 23:18:01 +09:00
syuilo
a1f7b00981 Clean up 2019-04-14 22:54:33 +09:00
syuilo
b7ee42198c New translations ja-JP.yml (German) (#4683) 2019-04-14 22:40:35 +09:00
syuilo
d66e4b7ff9 Merge branch 'develop' 2019-04-14 20:38:55 +09:00
syuilo
7f9789cf65 11.0.0 2019-04-14 20:36:13 +09:00
syuilo
b41c18e033 New translations ja-JP.yml (English) (#4681) 2019-04-14 20:31:15 +09:00
syuilo
3c73a7ec6d inc/dec score 2019-04-14 20:28:57 +09:00
syuilo
182c09d952 Update note.ts 2019-04-14 20:26:47 +09:00
syuilo
9fb86aed04 Clean up 2019-04-14 18:18:20 +09:00
syuilo
b8f7b13b05 11.0.0-beta.16 2019-04-14 17:44:16 +09:00
syuilo
1ee1d5b6d1 Update and clean dependencies 🚀 2019-04-14 17:40:30 +09:00
syuilo
154c38c314 Fix URL 2019-04-14 17:23:11 +09:00
syuilo
3c0626752a 11.0.0-beta.15 2019-04-14 17:21:59 +09:00
syuilo
511ef77fb7 Update CHANGELOG.md 2019-04-14 17:21:37 +09:00
syuilo
4df3ede500 New Crowdin translations (#4641)
* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Czech)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)
2019-04-14 17:19:52 +09:00
Acid Chicken (硫酸鶏)
e83c080af8 Update README.md [AUTOGEN] (#4678) 2019-04-14 17:18:55 +09:00
Acid Chicken (硫酸鶏)
054220db70 リファクタリング (#4587)
* Use I cap

* Avoid _

* Use default value instead of optional boolean

* Bye useless variable

* Bye verbose try-catch
2019-04-14 17:18:17 +09:00
Acid Chicken (硫酸鶏)
97bff010a8 Update README.md [AUTOGEN] (#4665) 2019-04-14 17:12:49 +09:00
tamaina
487a3079cd Improve post form attaches; Fix #4673, Resolve #2327, Resolve #2145 [v11] (#4674)
* improve post form attaches

* Fix

* chain

* 右クリックでも反応するように
2019-04-14 17:12:04 +09:00
syuilo
2d5158c680 Fix bug 2019-04-14 16:06:04 +09:00
syuilo
837be06b72 Update docker-compose.yml 2019-04-14 12:05:12 +09:00
syuilo
7e0d8dd4d7 11.0.0-beta.14 2019-04-14 12:00:49 +09:00
syuilo
146fb23d7d Fix bug 2019-04-14 11:59:23 +09:00
syuilo
61455ffe29 Fix bug 2019-04-14 11:58:10 +09:00
syuilo
c267baafdc Fix bug 2019-04-14 11:56:37 +09:00
syuilo
42248a306a Better error handling 2019-04-14 11:53:47 +09:00
syuilo
694ec7ebe1 Fix bug 2019-04-14 11:50:31 +09:00
syuilo
e3b3f8fac1 Better error handling 2019-04-14 04:17:24 +09:00
syuilo
b390363b25 Update CHANGELOG.md 2019-04-14 02:44:49 +09:00
syuilo
f6f8cdbcf2 11.0.0-beta.13 2019-04-14 02:36:21 +09:00
syuilo
f46f53b8a3 Refactor 2019-04-14 02:36:00 +09:00
syuilo
a2fcae4383 Fix bug 2019-04-14 02:33:50 +09:00
syuilo
483f043768 11.0.0-beta.12 2019-04-14 02:24:27 +09:00
syuilo
f8e0f4f21f Fix bug 2019-04-14 02:21:57 +09:00
syuilo
9c3613e96d Improve error handling 2019-04-14 02:19:59 +09:00
syuilo
d9cacdc86d Update meid.ts 2019-04-14 01:47:46 +09:00
syuilo
aa3d2deeaa Add meid 2019-04-14 01:40:29 +09:00
syuilo
e64912545a Update id generation methods 2019-04-14 01:08:26 +09:00
syuilo
b247be80cc 11.0.0-beta.11 2019-04-13 20:02:47 +09:00
syuilo
343f2f1f33 Fix bug 2019-04-13 20:02:31 +09:00
syuilo
2d590df900 Clean up 2019-04-13 20:01:32 +09:00
syuilo
ba56b2b9fd Update CHANGELOG.md 2019-04-13 19:40:03 +09:00
syuilo
bf472b0c5e refactor 2019-04-13 19:36:57 +09:00
syuilo
f7961f34c5 Update CHANGELOG.md 2019-04-13 19:23:32 +09:00
syuilo
e369031a28 Redis必須に 2019-04-13 19:19:32 +09:00
syuilo
186d7bbfd9 Fix bug 2019-04-13 19:08:41 +09:00
syuilo
60a11f8da5 11.0.0-beta.10 2019-04-13 18:58:48 +09:00
syuilo
1181fcdceb Fix bug 2019-04-13 18:58:29 +09:00
syuilo
8cb9852058 リプライ先をエラー時に無視すると本来は投票なのに投票じゃないと扱われおかしくなるのでエラーにするように 2019-04-13 18:45:07 +09:00
syuilo
53d46d1cbe Fix error 2019-04-13 18:23:32 +09:00
syuilo
275e1c8de9 Refactor 2019-04-13 18:17:27 +09:00
syuilo
d46eca4c87 Refactor 2019-04-13 18:14:32 +09:00
syuilo
2927fb1597 11.0.0-beta.9 2019-04-13 17:27:17 +09:00
syuilo
8c72e011d2 Fix bug 2019-04-13 17:26:38 +09:00
syuilo
69662e24c3 Fix bug 2019-04-13 17:24:56 +09:00
syuilo
96099ffe98 11.0.0-beta.8 2019-04-13 16:55:13 +09:00
syuilo
ae16b45c11 Fix bug 2019-04-13 16:54:21 +09:00
syuilo
cfee87d3ef 11.0.0-beta.7 2019-04-13 15:18:27 +09:00
syuilo
5fcf5bc635 Fix bug 2019-04-13 15:18:12 +09:00
syuilo
14bcb813cc Update migrate.ts 2019-04-13 15:09:16 +09:00
syuilo
6af19794b6 11.0.0-beta.6 2019-04-13 15:03:56 +09:00
syuilo
8316186695 Clean packed responses 2019-04-13 15:02:15 +09:00
syuilo
85d3023cd5 Clean packed responses 2019-04-13 14:55:59 +09:00
syuilo
78414dee29 Add note 2019-04-13 14:45:51 +09:00
syuilo
084135141f typo 2019-04-13 14:37:45 +09:00
syuilo
467a21f028 Update CONTRIBUTING.md 2019-04-13 14:36:35 +09:00
syuilo
6e284c44d6 Update CONTRIBUTING.md 2019-04-13 14:34:34 +09:00
syuilo
daf9a449e8 Update CONTRIBUTING.md 2019-04-13 14:31:05 +09:00
syuilo
960268fd33 typo 2019-04-13 14:17:50 +09:00
syuilo
8c331da315 Fix bug 2019-04-13 14:11:15 +09:00
syuilo
b0d626d862 Update CONTRIBUTING.md 2019-04-13 14:04:29 +09:00
syuilo
a51fbd7316 Suppress errors 2019-04-13 04:00:02 +09:00
Acid Chicken (硫酸鶏)
155da0c6a3 Avoid roma-ji naming 2019-04-10 20:30:00 +09:00
syuilo
83b7010d6a 10.100.0 2019-04-09 21:13:52 +09:00
syuilo
71654cbe47 Fix #4636 2019-04-09 21:11:05 +09:00
syuilo
e8f96e848a Merge branch 'v10' of https://github.com/syuilo/misskey into v10 2019-04-09 21:10:36 +09:00
syuilo
251abf21d4 Update .gitignore 2019-04-09 21:10:18 +09:00
MeiMei
d103427932 Fix non media thumbnails (#4380) 2019-04-09 21:07:46 +09:00
MeiMei
592cdfa910 ユーザーリストでフォローボタンを表示するように (#4654) 2019-04-08 20:18:42 +09:00
MeiMei
f2ad1a0406 Fix: 投稿ウィジットでローカルのみの公開範囲で投稿できない (#4653) 2019-04-08 20:16:00 +09:00
MeiMei
82af9320c0 Fix: TLを遡った時に抜けがある時がある (v10) (#4629)
* Update the cursor when the timeline is updated

* fix releaseQueue
2019-04-08 15:18:44 +09:00
MeiMei
fceebf7388 Fix #4562 (#4563) 2019-04-08 15:17:39 +09:00
1204 changed files with 60871 additions and 68061 deletions

View File

@@ -1,93 +1,12 @@
version: 2.1
executors:
default:
working_directory: /tmp/workspace
docker:
- image: misskey/ci:latest
- image: circleci/mongo:latest
with-redis:
working_directory: /tmp/workspace
docker:
- image: misskey/ci:latest
- image: circleci/mongo:latest
- image: circleci/redis:latest
docker:
working_directory: /tmp/workspace
docker:
- image: docker:latest
jobs:
build:
executor: default
steps:
- checkout
- run:
name: Ensure yarn.lock
command: |
touch yarn.lock
- restore_cache:
name: Restore npm package caches
keys:
- yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "yarn.lock" }}
- yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-
- yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-
- yarn-v1-arch-{{ arch }}-
- yarn-v1-
- run:
name: Install Dependencies
command: |
yarn install
- run:
name: Configure
command: |
cp .circleci/misskey/default.yml .config
cp .circleci/misskey/test.yml .config
- run:
name: Build
command: |
yarn build
touch yarn.lock
- save_cache:
name: Cache npm packages
key: yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "yarn.lock" }}
paths:
- node_modules
- persist_to_workspace:
root: .
paths:
- .
test:
parameters:
executor:
type: string
default: "default"
without_redis:
type: boolean
default: false
executor: <<parameters.executor>>
steps:
- attach_workspace:
at: /tmp/workspace
- when:
condition: <<parameters.without_redis>>
steps:
- run:
name: Configure
command: |
mv .config/test.yml .config/test_redis.yml
touch .config/test.yml
cat .config/test_redis.yml | while IFS= read line; do if [[ "$line" = '# __REDIS__' ]]; then break; else echo "$line" >> .config/test.yml; fi; done
- run:
name: Test
command: |
yarn test
touch yarn.lock
- save_cache:
name: Cache npm packages
key: yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "yarn.lock" }}
paths:
- node_modules
docker:
parameters:
with_deploy:
@@ -119,73 +38,8 @@ jobs:
workflows:
version: 2
nodejs:
jobs:
- hold:
name: manual-build-trigger
type: approval
filters:
branches:
ignore: master
- build:
name: manual-build
requires:
- manual-build-trigger
filters:
branches:
ignore: master
- build:
name: auto-build
filters:
branches:
only: master
- test:
name: manual-test-with-redis
executor: with-redis
requires:
- manual-build
filters:
branches:
ignore: master
- test:
name: auto-test-without-redis
executor: with-redis
requires:
- auto-build
filters:
branches:
only: master
- test:
name: manual-test-with-redis
without_redis: true
requires:
- manual-build
filters:
branches:
ignore: master
- test:
name: auto-test-without-redis
without_redis: true
requires:
- auto-build
filters:
branches:
only: master
docker:
jobs:
- hold:
name: manual-build-trigger
type: approval
filters:
branches:
ignore: master
- docker:
name: manual-build
requires:
- manual-build-trigger
filters:
branches:
ignore: master
- docker:
name: auto-build
with_deploy: true

View File

@@ -1,14 +1,12 @@
url: 'http://misskey.local'
port: 80
mongodb:
port: 8080
db:
host: localhost
port: 27017
db: misskey
user: syuilo
port: 5432
db: test-misskey
user: postgres
pass: ''
drive:
storage: 'db'
redis:
host: localhost
port: 6379
pass: ''
id: aid

View File

@@ -1,15 +1,12 @@
url: 'http://misskey.local'
port: 80
mongodb:
port: 8080
db:
host: localhost
port: 27017
port: 5432
db: test-misskey
user: admin
user: postgres
pass: ''
drive:
storage: 'db'
# __REDIS__
redis:
host: localhost
port: 6379
pass: ''
id: aid

View File

@@ -1,5 +1,4 @@
# db settings
POSTGRES_PASSWORD="example-misskey-pass"
POSTGRES_USER="example-misskey-user"
POSTGRES_DB="misskey"
POSTGRES_PASSWORD=example-misskey-pass
POSTGRES_USER=example-misskey-user
POSTGRES_DB=misskey

View File

@@ -8,6 +8,9 @@
# Final accessible URL seen by a user.
url: https://example.tld/
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# URL SETTINGS AFTER THAT!
# ┌───────────────────────┐
#───┘ Port and TLS settings └───────────────────────────────────
@@ -62,13 +65,22 @@ db:
user: example-misskey-user
pass: example-misskey-pass
# Whether disable Caching queries
#disableCache: true
# Extra Connection options
#extra:
# ssl: true
# ┌─────────────────────┐
#───┘ Redis configuration └─────────────────────────────────────
#redis:
# host: localhost
# port: 6379
# pass: example-pass
redis:
host: localhost
port: 6379
#pass: example-pass
#prefix: example-prefix
#db: 1
# ┌─────────────────────────────┐
#───┘ Elasticsearch configuration └─────────────────────────────
@@ -78,47 +90,6 @@ db:
# port: 9200
# pass: null
# ┌────────────────────────────────────┐
#───┘ File storage (Drive) configuration └──────────────────────
drive:
storage: 'fs'
# OR
# storage: 'minio'
# bucket:
# prefix:
# config:
# endPoint:
# port:
# useSSL:
# accessKey:
# secretKey:
# S3 example
# storage: 'minio'
# bucket: bucket-name
# prefix: files
# config:
# endPoint: s3-us-west-2.amazonaws.com
# region: us-west-2
# useSSL: true
# accessKey: XXX
# secretKey: YYY
# S3 example (with CDN, custom domain)
# storage: 'minio'
# bucket: drive.example.com
# prefix: files
# baseUrl: https://drive.example.com
# config:
# endPoint: s3-us-west-2.amazonaws.com
# region: us-west-2
# useSSL: true
# accessKey: XXX
# secretKey: YYY
# ┌───────────────┐
#───┘ ID generation └───────────────────────────────────────────
@@ -127,38 +98,52 @@ drive:
# change it according to your preferences.
# Available methods:
# aid1 ... Use AID for ID generation (with random 1 char)
# aid2 ... Use AID for ID generation (with random 2 chars)
# aid3 ... Use AID for ID generation (with random 3 chars)
# aid4 ... Use AID for ID generation (with random 4 chars)
# ulid ... Use ulid for ID generation
# objectid ... This is left for backward compatibility.
# aid ... Short, Millisecond accuracy
# meid ... Similar to ObjectID, Millisecond accuracy
# ulid ... Millisecond accuracy
# objectid ... This is left for backward compatibility
# AID(n) is the original ID generation method.
# The trailing n represents the number of random characters that
# will be suffixed.
# The larger n is the safer. If n is small, the possibility of
# collision at the same time increases, but there are also
# advantages such as shortening of the URL.
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# ID SETTINGS AFTER THAT!
# ULID: Universally Unique Lexicographically Sortable Identifier.
# for more details: https://github.com/ulid/spec
# * Normally, AID should be sufficient.
# ObjectID is the method used in previous versions of Misskey.
# * Choose this if you are migrating from a previous Misskey.
id: 'aid2'
id: 'aid'
# ┌─────────────────────┐
#───┘ Other configuration └─────────────────────────────────────
# If enabled:
# The first account created is automatically marked as Admin.
autoAdmin: true
# Whether disable HSTS
#disableHsts: true
# Clustering
# Number of worker processes
#clusterLimit: 1
# Job concurrency per worker
# deliverJobConcurrency: 128
# inboxJobConcurrency: 16
# Job rate limiter
# deliverJobPerSec: 128
# inboxJobPerSec: 16
# Job attempts
# deliverJobMaxAttempts: 12
# inboxJobMaxAttempts: 8
# IP address family used for outgoing request (ipv4, ipv6 or dual)
#outgoingAddressFamily: ipv4
# Syslog option
#syslog:
# host: localhost
# port: 514
# Proxy for HTTP/HTTPS
#proxy: http://127.0.0.1:3128
# Proxy for SMTP/SMTPS
#proxySmtp: http://127.0.0.1:3128 # use HTTP/1.1 CONNECT
#proxySmtp: socks4://127.0.0.1:1080 # use SOCKS4
#proxySmtp: socks5://127.0.0.1:1080 # use SOCKS5
# Media Proxy
#mediaProxy: https://example.com/proxy

View File

@@ -1,23 +1,23 @@
{
"parserOptions": {
"parser": "typescript-eslint-parser"
"parser": "@typescript-eslint/parser"
},
"extends": [
"eslint:recommended",
"plugin:vue/recommended"
],
"rules": {
"vue/require-v-for-key": false,
"vue/max-attributes-per-line": false,
"vue/html-indent": false,
"vue/html-self-closing": false,
"vue/no-unused-vars": false,
"vue/attributes-order": false,
"vue/require-prop-types": false,
"vue/require-default-prop": false,
"vue/html-closing-bracket-spacing": false,
"vue/singleline-html-element-content-newline": false,
"vue/no-v-html": false,
"vue/require-v-for-key": 0,
"vue/max-attributes-per-line": 0,
"vue/html-indent": 0,
"vue/html-self-closing": 0,
"vue/no-unused-vars": 0,
"vue/attributes-order": 0,
"vue/require-prop-types": 0,
"vue/require-default-prop": 0,
"vue/html-closing-bracket-spacing": 0,
"vue/singleline-html-element-content-newline": 0,
"vue/no-v-html": 0,
"no-console": 0,
"no-unused-vars": 0,
"no-empty": 0

6
.gitattributes vendored
View File

@@ -1,5 +1,7 @@
*.svg -diff -text
*.psd -diff -text
*.ai -diff -text
yarn.lock -diff -text
package-lock.json -diff -text
*.mqo -diff -text
*.glb -diff -text
*.blend -diff -text
*.afdesign -diff -text

5
.github/CODEOWNERS vendored
View File

@@ -1,18 +1,17 @@
# PATH OWNERS
/.autogen/ @acid-chicken
/.circleci/ @syuilo @acid-chicken
/.config/ @syuilo @AyaMorisawa @mei23 @acid-chicken
/.config/ @syuilo @AyaMorisawa @mei23 @acid-chicken @rinsuki
# /.config/mongo_initdb_example.js @khws4v1
/.github/ @syuilo @AyaMorisawa @acid-chicken
/.vscode/ @acid-chicken
/assets/ @syuilo # @tamaina
/cli/ @syuilo
/docs/ @syuilo
/docs/*.en.md @AyaMorisawa # @skid9000
# /docs/*.fr.md @BoFFire
# /docs/docker.*.md @khws4v1
/locales/ @syuilo
/src/ @syuilo @AyaMorisawa @mei23 @acid-chicken
/src/ @syuilo @AyaMorisawa @mei23 @acid-chicken @rinsuki
# /src/crypto_key.cc @akihikodaki
# /src/crypto_key.d.ts @akihikodaki
/.dockerignore @syuilo # @khws4v1

3
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,3 @@
# These are supported funding model platforms
patreon: syuilo

18
.github/workflows/docker.yml vendored Normal file
View File

@@ -0,0 +1,18 @@
name: Docker build
on:
push:
branches:
- master
- develop
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Pull previous build result (for cache)
run: docker pull misskey/misskey:latest
- name: Build docker container
run: docker build --cache-from misskey/misskey:latest -t misskey/misskey .

42
.github/workflows/nodejs.yml vendored Normal file
View File

@@ -0,0 +1,42 @@
name: Node.js CI
on:
push:
branches:
- master
- develop
pull_request:
jobs:
build_and_test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [11.10.x, 12.x]
services:
postgres:
image: postgres:10-alpine
ports:
- 5432:5432
env:
POSTGRES_DB: test-misskey
redis:
image: redis:alpine
ports:
- 6379:6379
steps:
- uses: actions/checkout@v1
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: yarn install
- name: Copy Configure
run: cp .circleci/misskey/*.yml .config
- name: Build
run: yarn build
- name: Test
run: yarn test

26
.gitignore vendored
View File

@@ -1,11 +1,22 @@
# Visual Studio Code
/.vscode
!/.vscode/extensions.json
# Intelij-IDEA
/.idea
# Node.js
/node_modules
report.*.json
# config
/.config/*
!/.config/example.yml
!/.config/mongo_initdb_example.js
/.vscode
/node_modules
# misskey
/build
/built
built
/data
/.cache-loader
/db
@@ -17,6 +28,13 @@ api-docs.json
*.log
/redis
*.code-workspace
yarn.lock
.DS_Store
/files
ormconfig.json
# blender backups
*.blend1
*.blend2
*.blend3
*.blend4
*.blend5

5
.imgbotconfig Normal file
View File

@@ -0,0 +1,5 @@
{
"ignoredFiles": [
"test/resources/*"
]
}

View File

@@ -1 +1 @@
v11.7.0
v12.11.1

View File

@@ -2,10 +2,10 @@
"recommendations": [
"ducksoupdev.vue2",
"editorconfig.editorconfig",
"eg2.tslint",
"eg2.vscode-npm-script",
"hollowtree.vue-snippets",
"ms-vscode.typescript-javascript-grammar",
"ms-vscode.vscode-typescript-tslint-plugin",
"octref.vetur",
"sysoev.language-stylus"
]

File diff suppressed because it is too large Load Diff

View File

@@ -3,28 +3,56 @@
## Issues
Feature suggestions and bug reports are filed in https://github.com/syuilo/misskey/issues .
Before creating a new issue, please search existing issues to avoid duplication.
If you find the existing issue, please add your reaction or comment to the issue.
* Please search existing issues to avoid duplication. If your issue is already filed, please add your reaction or comment to the existing one.
* If you have multiple independent issues, please submit them separately.
## Branches
* **master** branch is tracking the latest release and used for production purposes.
* **develop** branch is where we work for the next release.
* **l10n_develop** branch is reserved for localization management.
## Localization (l10n)
Please use [Crowdin](https://crowdin.com/project/misskey) for localization.
Misskey uses [Crowdin](https://crowdin.com/project/misskey) for localization management.
You can improve our translations with your Crowdin account.
Your changes in Crowdin are automatically submitted as a PR (with the title "New Crowdin translations") to the repository.
The owner [@syuilo](https://github.com/syuilo) merges the PR into the develop branch before the next release.
If your language is not listed in Crowdin, please open an issue.
![Crowdin](https://d322cqt584bo4o.cloudfront.net/misskey/localized.svg)
## Internationalization (i18n)
Misskey uses [vue-i18n](https://github.com/kazupon/vue-i18n).
Misskey uses the Vue.js plugin [Vue I18n](https://github.com/kazupon/vue-i18n).
Documentation of Vue I18n is available at http://kazupon.github.io/vue-i18n/introduction.html .
## Documentation
* Documents for contributors are located in `/docs`.
* Documents for instance admins are located in `/docs`.
* Documents for end users are located in `src/docs`.
* Documents for contributors are located in [`/docs`](/docs).
* Documents for instance admins are located in [`/docs`](/docs).
* Documents for end users are located in [`/src/docs`](/src/docs).
## Test
* Test codes are located in `/test`.
* Test codes are located in [`/test`](/test).
## Continuous integration
Misskey uses CircleCI for automated test.
Configuration files are located in `/.circleci`.
Misskey uses CircleCI for executing automated tests.
Configuration files are located in [`/.circleci`](/.circleci).
## Adding MisskeyRoom items
* Use English for material, object and texture names.
* Use meter for unit of length.
* Your PR should include all source files (e.g. `.png`, `.blend`) of your models (for later editing).
* Your PR must include the glTF binary files (`.glb`) of your models.
* Add a locale key `room.furnitures.YOUR_ITEM` at [`/locales/ja-JP.yml`](/locales/ja-JP.yml).
* Add a furniture definition at [`/src/client/app/common/scripts/room/furnitures.json5`](/src/client/app/common/scripts/room/furnitures.json5).
If you have no experience on 3D modeling, we suggest to use the free 3DCG software [Blender](https://www.blender.org/).
You can find information on glTF 2.0 at [glTF 2.0 — Blender Manual]( https://docs.blender.org/manual/en/dev/addons/io_scene_gltf2.html).
## FAQ
### How to resolve conflictions occurred at yarn.lock?
Just execute `yarn` to fix it.
## Glossary
### AP
@@ -45,11 +73,65 @@ Convert な(na) to にゃ(nya)
#### Denyaize
Revert Nyaize
## Code style
### Use semicolon
To avoid ASI Hazard
## TypeScript Coding Style
### Do not omit semicolons
This is to avoid Automatic Semicolon Insertion (ASI) hazard.
Ref:
* https://www.ecma-international.org/ecma-262/#sec-automatic-semicolon-insertion
* https://github.com/tc39/ecma262/pull/1062
### Do not omit curly brackets
Bad:
``` ts
if (foo)
bar;
else
baz;
```
Good:
``` ts
if (foo) {
bar;
} else {
baz;
}
```
As a special case, you can omit the curly brackets if
* the body of the `if`-statement have only one statement and,
* the `if`-statement does not have `else`-clause.
Good:
``` ts
if (foo) bar;
```
Make sure that the condition and the body statement are on the same line.
### Do not use `==` when it can simply be replaced with `===`.
🥰
### Use only boolean (or null related) values in the condition of an `if`-statement.
Bad:
``` ts
if (foo.length)
```
Good:
``` ts
if (foo.length > 0)
```
### Do not use `export default`
This is because the current language support does not work well with `export default`.
Ref:
* https://basarat.gitbooks.io/typescript/docs/tips/defaultIsBad.html
* https://gfx.hatenablog.com/entry/2017/11/24/135343
### Don't use `export default`
Bad:
``` ts
export default function(foo: string): string {
@@ -98,6 +180,20 @@ query.andWhere(new Brackets(qb => {
}));
```
### Not `null` in TypeORM
```ts
const foo = await Foos.findOne({
bar: Not(null)
});
```
のようなクエリ(`bar`が`null`ではない)は期待通りに動作しない。
次のようにします:
```ts
const foo = await Foos.findOne({
bar: Not(IsNull())
});
```
### `null` in SQL
SQLを発行する際、パラメータが`null`になる可能性のある場合はSQL文を出し分けなければならない
例えば
@@ -130,6 +226,51 @@ const users = userIds.length > 0 ? await Users.find({
}) : [];
```
### 配列のインデックス in SQL
SQLでは配列のインデックスは**1始まり**。
`[a, b, c]`の `a`にアクセスしたいなら`[0]`ではなく`[1]`と書く
### `undefined`にご用心
MongoDBの時とは違い、findOneでレコードを取得する時に対象レコードが存在しない場合 **`undefined`** が返ってくるので注意。
MongoDBは`null`で返してきてたので、その感覚で`if (x === null)`とか書くとバグる。代わりに`if (x == null)`と書いてください
### 簡素な`undefined`チェック
データベースからレコードを取得するときに、プログラムの流れ的に(ほぼ)絶対`undefined`にはならない場合でも、`undefined`チェックしないとTypeScriptに怒られます。
でもいちいち複数行を費やして、発生するはずのない`undefined`をチェックするのも面倒なので、`ensure`というユーティリティ関数を用意しています。
例えば、
``` ts
const user = await Users.findOne(userId);
// この時点で user の型は User | undefined
if (user == null) {
throw 'missing user';
}
// この時点で user の型は User
```
という処理を`ensure`を使うと
``` ts
const user = await Users.findOne(userId).then(ensure);
// この時点で user の型は User
```
という風に書けます。
もちろん`ensure`内部でエラーを握りつぶすようなことはしておらず、万が一`undefined`だった場合はPromiseがRejectされ後続の処理は実行されません。
``` ts
const user = await Users.findOne(userId).then(ensure);
// 万が一 Users.findOne の結果が undefined だったら、ensure でエラーが発生するので
// この行に到達することは無い
// なので、.then(ensure) は
// if (user == null) {
// throw 'missing user';
// }
// の糖衣構文のような扱いです
```
### Migration作成方法
```
npx ts-node ./node_modules/typeorm/cli.js migration:generate -n 変更の名前
```
作成されたスクリプトは不必要な変更を含むため除去してください。
## その他
### HTMLのクラス名で follow という単語は使わない
広告ブロッカーで誤ってブロックされる

15
COPYING Normal file
View File

@@ -0,0 +1,15 @@
Unless otherwise stated this repository is
Copyright © 2014-2020 syuilo and contributers
And is distributed under The GNU Affero General Public License Version 3, you should have received a copy of the license file as LICENSE.
Misskey includes several third-party Open-Source softwares.
Unicode emoji regular expressions by Twitter, Inc.
License: MIT
https://github.com/twitter/twemoji-parser/blob/master/LICENSE.md
Emoji keywords for Unicode 11 and below by Mu-An Chiou
License: MIT
https://github.com/muan/emojilib/blob/master/LICENSE

View File

@@ -1,4 +1,4 @@
FROM node:11-alpine AS base
FROM node:12.11.1-alpine AS base
ENV NODE_ENV=production
@@ -21,7 +21,6 @@ RUN apk add --no-cache \
pkgconfig \
python \
zlib-dev
RUN npm i -g yarn
COPY package.json ./
RUN yarn install
@@ -40,4 +39,4 @@ COPY --from=builder /misskey/node_modules ./node_modules
COPY --from=builder /misskey/built ./built
COPY . ./
CMD ["npm", "start"]
CMD ["npm", "run", "migrateandstart"]

127
README.md
View File

@@ -1,6 +1,6 @@
<a href="https://xn--931a.moe/"><img src="https://github.com/syuilo/misskey/blob/develop/assets/ai-orig.png?raw=true" align="right" height="320px"/></a>
[![Misskey](/assets/title.png)](https://misskey.xyz/)
[![Misskey](/assets/title.png)](https://join.misskey.page/)
================================================================
[![CircleCI](https://img.shields.io/circleci/project/github/syuilo/misskey.svg?style=for-the-badge&logo=circleci)](https://circleci.com/gh/syuilo/misskey)
@@ -10,10 +10,10 @@
**A forever evolving, sophisticated microblogging platform.**
<p align="justify">
<a href="https://misskey.xyz">Misskey</a> is a decentralized microblogging platform born on Earth.
<a href="https://join.misskey.page/">Misskey</a> is a decentralized microblogging platform born on Earth.
Since it exists within the Fediverse (a universe where various social media platforms are organized),
it is mutually linked with other social media platforms.
Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet? <a href="https://joinmisskey.github.io/">Find an instance!</a>
Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet? <a href="https://join.misskey.page/">Find an instance!</a>
</p>
<a href="https://www.patreon.com/syuilo"><img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" alt="Become a Patron!" width="160" /></a>
@@ -59,7 +59,7 @@ Organize and store your files! Want to post a picture you have already uploaded?
---
...and more! Experience Misskey with your own eyes at [misskey.xyz](https://misskey.xyz) or join one of the [other instances](https://joinmisskey.github.io/) that are available.
...and more! Experience Misskey with your own eyes at [misskey.io](https://misskey.io/) or join one of the [other instances](https://joinmisskey.github.io/) that are available.
Screen shots
----------------------------------------------------------------
@@ -88,12 +88,14 @@ Please see the [Contribution Guide](./CONTRIBUTING.md).
<td><img src="https://avatars0.githubusercontent.com/u/10798641?s=460&v=4" alt="AyaMorisawa" width="100"></td>
<td><img src="https://avatars1.githubusercontent.com/u/30769358?s=460&v=4" alt="mei23" width="100"></td>
<td><img src="https://avatars2.githubusercontent.com/u/20679825?s=460&v=4" alt="acid-chicken" width="100"></td>
<td><img src="https://avatars2.githubusercontent.com/u/6533808?s=460&v=4" alt="rinsuki" width="100"></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/syuilo">@syuilo</a></td>
<td align="center"><a href="https://github.com/AyaMorisawa">@AyaMorisawa</a></td>
<td align="center"><a href="https://github.com/mei23">@mei23</a></td>
<td align="center"><a href="https://github.com/acid-chicken">@acid-chicken</a></td>
<td align="center"><a href="https://github.com/rinsuki">@rinsuki</a></td>
</tr>
</table>
@@ -101,77 +103,96 @@ Please see the [Contribution Guide](./CONTRIBUTING.md).
----------------------------------------------------------------
<!-- PATREON_START -->
<table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5888816/36da0f7c15954df0ab13f9abdf227f66/1?token-time=2145916800&token-hash=HGkZJ7s4bSaQVoOJ5q30mTWHTxDLiw1LuyaogKPLy24%3D" alt="Hiroshi Seki" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12190916/fb7fa7983c14425f890369535b1506a4/3?token-time=2145916800&token-hash=gr7DF8BuwflHvNoP24He4aa-5j8_KycrAQe3fHwQIUE%3D" alt="weep" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/12059069" alt="naga_rus" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12913507/f7181eacafe8469a93033d85f5969c29/4?token-time=2145916800&token-hash=vZdDTTF-ahiKBjjgppS2ev4rkD8H7TTKkXXoxsucs6Y%3D" alt="Melilot" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5670915/ee175f0bfb6347ffa4ea101a8c097bff/1?token-time=2145916800&token-hash=ubqJzjhBQUo8Nw6h_8jMDlJ5ocIO46EflpiRkp2jIw4%3D" alt="osapon" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/16869916" alt="見当かなみ" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/20832595" alt="Roujo" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/27956229" alt="Oliver Maximilian Seidel" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12190916/fb7fa7983c14425f890369535b1506a4/3.png?token-time=2145916800&token-hash=oH_i7gJjNT7Ot6j9JiVwy7ZJIBqACVnzLqlz4YrDAZA%3D" alt="weepjp" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/605366/c9dc408fdcbf412fb183ca5b06235f8d/1.jpeg?token-time=2145916800&token-hash=oaqsjLqOFjWN5I9hm2epOaTXaEtKwQUy5OW-EpAz6-g%3D" alt="Jon Leibowitz" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/19045173/cb91c0f345c24d4ebfd05f19906d5e26/1.png?token-time=2145916800&token-hash=o_zKBytJs_AxHwSYw_5R8eD0eSJe3RoTR3kR3Q0syN0%3D" alt="kiritan" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/24430516/b1964ac5b9f746d2a12ff53dbc9aa40a/1.jpg?token-time=2145916800&token-hash=bmEiMGYpp3bS7hCCbymjGGsHBZM3AXuBOFO3Kro37PU%3D" alt="Eduardo Quiros" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/14215107/1cbe1912c26143919fa0faca16f12ce1/3.png?token-time=2145916800&token-hash=Zq1TCK2tdY7xudEm_aV70bc_wxmol6pNj3ZWbpFUNbI%3D" alt="Nesakko" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/776209" alt="Denshi" width="100"></td>
</tr><tr>
<td><a href="https://www.patreon.com/rane_hs">Hiroshi Seki</a></td>
<td><a href="https://www.patreon.com/weepjp">weep</a></td>
<td><a href="https://www.patreon.com/user?u=12059069">naga_rus</a></td>
<td><a href="https://www.patreon.com/user?u=12913507">Melilot</a></td>
<td><a href="https://www.patreon.com/user?u=20832595">Roujo</a></td>
<td><a href="https://www.patreon.com/user?u=27956229">Oliver Maximilian Seidel</a></td>
<td><a href="https://www.patreon.com/weepjp">weepjp</a></td>
<td><a href="https://www.patreon.com/jonleibowitz">Jon Leibowitz</a></td>
<td><a href="https://www.patreon.com/user?u=19045173">kiritan</a></td>
<td><a href="https://www.patreon.com/user?u=24430516">Eduardo Quiros</a></td>
<td><a href="https://www.patreon.com/Nesakko">Nesakko</a></td>
<td><a href="https://www.patreon.com/user?u=776209">Denshi</a></td>
</tr></table>
<table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/3075183/c2ae575c604e420297f000ccc396e395/1.jpeg?token-time=2145916800&token-hash=O9qmPtpo6wWb0OuvnkEekhk_1WO2MTdytLr7ZgsAr80%3D" alt="Liaizon Wakest" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/557245" alt="mkatze" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/23915207/25428766ecd745478e600b3d7f871eb2/1.png?token-time=2145916800&token-hash=urCLLA4KjJZX92Y1CxcBP4d8bVTHGkiaPnQZp-Tqz68%3D" alt="kabo2468y" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/8249688/4aacf36b6b244ab1bc6653591b6640df/2.png?token-time=2145916800&token-hash=1ZEf2w6L34253cZXS_HlVevLEENWS9QqrnxGUAYblPo%3D" alt="AureoleArk" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5670915/ee175f0bfb6347ffa4ea101a8c097bff/1.jpg?token-time=2145916800&token-hash=mPLM9CA-riFHx-myr3bLZJuH2xBRHA9se5VbHhLIOuA%3D" alt="osapon" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/16869916" alt="見当かなみ" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/18899730/6a22797f68254034a854d69ea2445fc8/1.png?token-time=2145916800&token-hash=b_uj57yxo5VzkSOUS7oXE_762dyOTB_oxzbO6lFNG3k%3D" alt="YuzuRyo61" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5788159/af42076ab3354bb49803cfba65f94bee/1.jpg?token-time=2145916800&token-hash=iSaxp_Yr2-ZiU2YVi9rcpZZj9mj3UvNSMrZr4CU4qtA%3D" alt="mewl hayabusa" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/11357794/923ce94cd8c44ba788ee931907881839/1.png?token-time=2145916800&token-hash=9nEQje_eMvUjq9a7L3uBqW-MQbS-rRMaMgd7UYVoFNM%3D" alt="mydarkstar" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/28779508/3cd4cb7f017f4ee0864341e3464d42f9/1.png?token-time=2145916800&token-hash=eGQtR15be44kgvh8fw2Jx8Db4Bv15YBp2ldxh0EKRxA%3D" alt="S Y" width="100"></td>
</tr><tr>
<td><a href="https://www.patreon.com/wakest">Liaizon Wakest</a></td>
<td><a href="https://www.patreon.com/user?u=557245">mkatze</a></td>
<td><a href="https://www.patreon.com/user?u=23915207">kabo2468y</a></td>
<td><a href="https://www.patreon.com/AureoleArk">AureoleArk</a></td>
<td><a href="https://www.patreon.com/osapon">osapon</a></td>
<td><a href="https://www.patreon.com/user?u=16869916">見当かなみ</a></td>
<td><a href="https://www.patreon.com/Yuzulia">YuzuRyo61</a></td>
<td><a href="https://www.patreon.com/hs_sh_net">mewl hayabusa</a></td>
<td><a href="https://www.patreon.com/mydarkstar">mydarkstar</a></td>
<td><a href="https://www.patreon.com/user?u=28779508">S Y</a></td>
</tr></table>
<table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12021162/963128bb8d14476dbd8407943db8f31a/1?token-time=2145916800&token-hash=1FlxS9MEgmNGH_RHUVHbO5hIXB5I1z0lvA33CTvYvjA%3D" alt="gutfuckllc" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/11357794/923ce94cd8c44ba788ee931907881839/1?token-time=2145916800&token-hash=0xgcpqvFDqRcV_YIEhcPNVH7gs9sLg_BBnTJXCkN4ao%3D" alt="mydarkstar" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/12718187" alt="Peter G." width="100"></td>
<td><img src="https://c8.patreon.com/2/200/18833336" alt="itiradi" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13039004/509d0c412eb14ae08d6a812a3054f7d6/1?token-time=2145916800&token-hash=2PsbFNw0tnubZzgSXD01R6hIgncfiElG7H7HX2Y3dyo%3D" alt="nemu" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/16542964" alt="Takumi Sugita" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/17866454" alt="sikyosyounin" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5881381/6235ca5d3fb04c8e95ef5b4ff2abcc18/3?token-time=2145916800&token-hash=9JtETp0X8gI280Ne1E8bxn6j4Lw5o2k4mJkICx97V_k%3D" alt="YUKIMOCHI" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/17463605" alt="Sampot" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/17880724/311738c8a48f4a6b9443c2445a75adde/1?token-time=2145916800&token-hash=95p8VdGX45E8BitZR_eOcDlqCjumjzNLBPQJrJdeCpI%3D" alt="takimura" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5881381/6235ca5d3fb04c8e95ef5b4ff2abcc18/3.png?token-time=2145916800&token-hash=KjfQL8nf3AIf6WqzLshBYAyX44piAqOAZiYXgZS_H6A%3D" alt="YUKIMOCHI" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/26340354/08834cf767b3449e93098ef73a434e2f/2.png?token-time=2145916800&token-hash=nyM8DnKRL8hR47HQ619mUzsqVRpkWZjgtgBU9RY15Uc%3D" alt="totokoro" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/19356899/496b4681d33b4520bd7688e0fd19c04d/2.jpeg?token-time=2145916800&token-hash=_sTj3dUBOhn9qwiJ7F19Qd-yWWfUqJC_0jG1h0agEqQ%3D" alt="sheeta.s" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5827393/59893c191dda408f9cabd0f20a3a5627/1.jpeg?token-time=2145916800&token-hash=i9N05vOph-eP1LTLb9_npATjYOpntL0ZsHNaZFSsPmE%3D" alt="motcha" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13737140/1adf7835017d479280d90fe8d30aade2/1.png?token-time=2145916800&token-hash=0pdle8h5pDZrww0BDOjdz6zO-HudeGTh36a3qi1biVU%3D" alt="Satsuki Yanagi" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/17880724/311738c8a48f4a6b9443c2445a75adde/1.jpg?token-time=2145916800&token-hash=nVAntpybQrznE0rg05keLrSE6ogPKJXB13rmrJng42c%3D" alt="takimura" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13100201/fc5be4fa90444f09a9c8a06f72385272/1.png?token-time=2145916800&token-hash=i8PjlgfOB2LPEdbtWyx8ZPsBKhGcNZqcw_FQmH71UGU%3D" alt="aqz tamaina" width="100"></td>
</tr><tr>
<td><a href="https://www.patreon.com/gutfuckllc">gutfuckllc</a></td>
<td><a href="https://www.patreon.com/mydarkstar">mydarkstar</a></td>
<td><a href="https://www.patreon.com/user?u=12718187">Peter G.</a></td>
<td><a href="https://www.patreon.com/user?u=18833336">itiradi</a></td>
<td><a href="https://www.patreon.com/user?u=13039004">nemu</a></td>
<td><a href="https://www.patreon.com/user?u=16542964">Takumi Sugita</a></td>
<td><a href="https://www.patreon.com/user?u=17866454">sikyosyounin</a></td>
<td><a href="https://www.patreon.com/yukimochi">YUKIMOCHI</a></td>
<td><a href="https://www.patreon.com/user?u=17463605">Sampot</a></td>
<td><a href="https://www.patreon.com/user?u=26340354">totokoro</a></td>
<td><a href="https://www.patreon.com/user?u=19356899">sheeta.s</a></td>
<td><a href="https://www.patreon.com/user?u=5827393">motcha</a></td>
<td><a href="https://www.patreon.com/user?u=13737140">Satsuki Yanagi</a></td>
<td><a href="https://www.patreon.com/takimura">takimura</a></td>
<td><a href="https://www.patreon.com/aqz">aqz tamaina</a></td>
</tr></table>
<table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/17195955/be45e5e14c3e48b2bee0456c84e19df4/4?token-time=2145916800&token-hash=SbdZeN5SmsuT9stD6v0jN1z0hftg0FmRiCTxysU0Ihw%3D" alt="Damillora" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/16900731/935a10339daa4ede8e555903a0707060/1?token-time=2145916800&token-hash=3CrpqH-XtKs_NoIlSsTyVs8wCzP1WFCsG2xwps1IJq0%3D" alt="Atsuko Tominaga" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4389829/9f709180ac714651a70f74a82f3ffdb9/3?token-time=2145916800&token-hash=-iJszBqgYBhsM5qMdA1knf9wvprhEfESzKfR2oh7mIA%3D" alt="natalie" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13034746/c711c7f58e204ecfbc2fd646bc8a4eee/1?token-time=2145916800&token-hash=5T8XcaAf9Zyzfg3QubR06s_kJZkArVEM2dwObrBVAU4%3D" alt="Hiratake" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/18072312/98e894d960314fa7bc236a72a39488fe/1?token-time=2145916800&token-hash=D6QK3fPyqiYKJfOzc-QqaSSairUrWdjld-ewp2waj6s%3D" alt="Hekovic" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4503830/ccf2cc867ea64de0b524bb2e24b9a1cb/1?token-time=2145916800&token-hash=Ksk_2l3gjPDbnzMUOCSW1E-hdPJsNs2tSR4_RAakRK8%3D" alt="dansup" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/619786/32cf01444db24e578cd1982c197f6fc6/1?token-time=2145916800&token-hash=CXe9AqlZy9AsYfiWd3OBYVOzvODoN47Litz0Tu4BFpU%3D" alt="Gargron" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5731881/4b6038e6cda34c04b83a5fcce3806a93/1?token-time=2145916800&token-hash=xhR1n6NAAyEb-IUXLD6_dshkFa3mefU5ZZuk1L8qKTs%3D" alt="Nokotaro Takeda" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12531784/93a45137841849329ba692da92ac7c60/1?token-time=2145916800&token-hash=uR-48MQ0A4j0irQSrCAQZJ-sJUSs_Fkihlg3-l59b7c%3D" alt="Takashi Shibuya" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/16900731/619ab87cc08448439222631ebb26802f/1.gif?token-time=2145916800&token-hash=o27K7M02s1z-LkDUEO5Oa7cu-GviRXeOXxryi4o_6VU%3D" alt="Atsuko Tominaga" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4389829/9f709180ac714651a70f74a82f3ffdb9/3.png?token-time=2145916800&token-hash=FTm3WVom4dJ9NwWMU4OpCL_8Yc13WiwEbKrDPyTZTPs%3D" alt="natalie" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5923936/2a743cbfbff946c2af3f09026047c0da/2.png?token-time=2145916800&token-hash=h6yphW1qnM0n_NOWaf8qtszMRLXEwIxfk5beu4RxdT0%3D" alt="noellabo" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/2384390/5681180e1efb46a8b28e0e8d4c8b9037/1.jpg?token-time=2145916800&token-hash=SJcMy-Q1BcS940-LFUVOMfR7-5SgrzsEQGhYb3yowFk%3D" alt="CG" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/18072312/98e894d960314fa7bc236a72a39488fe/1.jpg?token-time=2145916800&token-hash=7bkMqTwHPRsJPGAq42PYdDXDZBVGLqdgr1ZmBxX8GFQ%3D" alt="Hekovic" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/24641572/b4fd175424814f15b0ca9178d2d2d2e4/1.png?token-time=2145916800&token-hash=e2fyqdbuJbpCckHcwux7rbuW6OPkKdERcus0u2wIEWU%3D" alt="uroco @99" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4503830/ccf2cc867ea64de0b524bb2e24b9a1cb/1.jpeg?token-time=2145916800&token-hash=L55UhJ0rcuNAH3w_ryeeGN4hC6taoOixyAhraEi0bzw%3D" alt="dansup" width="100"></td>
</tr><tr>
<td><a href="https://www.patreon.com/damillora">Damillora</a></td>
<td><a href="https://www.patreon.com/user?u=16900731">Atsuko Tominaga</a></td>
<td><a href="https://www.patreon.com/user?u=4389829">natalie</a></td>
<td><a href="https://www.patreon.com/hiratake">Hiratake</a></td>
<td><a href="https://www.patreon.com/noellabo">noellabo</a></td>
<td><a href="https://www.patreon.com/Corset">CG</a></td>
<td><a href="https://www.patreon.com/hekovic">Hekovic</a></td>
<td><a href="https://www.patreon.com/user?u=24641572">uroco @99</a></td>
<td><a href="https://www.patreon.com/dansup">dansup</a></td>
<td><a href="https://www.patreon.com/mastodon">Gargron</a></td>
</tr></table>
<table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5731881/4b6038e6cda34c04b83a5fcce3806a93/1.png?token-time=2145916800&token-hash=hBayGfOmQH3kRMdNnDe4oCZD_9fsJWSt29xXR3KRMVk%3D" alt="Nokotaro Takeda" width="100"></td>
<td><img src="https://c8.patreon.com/2/200/23932002" alt="nenohi" width="100"></td>
</tr><tr>
<td><a href="https://www.patreon.com/takenoko">Nokotaro Takeda</a></td>
<td><a href="https://www.patreon.com/user?u=12531784">Takashi Shibuya</a></td>
<td><a href="https://www.patreon.com/user?u=23932002">nenohi</a></td>
</tr></table>
**Last updated:** Sun, 07 Apr 2019 19:21:08 UTC
**Last updated:** Wed, 05 Feb 2020 00:42:12 UTC
<!-- PATREON_END -->
:four_leaf_clover: Copyright
----------------------------------------------------------------
> Copyright (c) 2014-2019 syuilo
Misskey is open-source software licensed under the [GNU AGPLv3](LICENSE).
[![][agpl-3.0-badge]][AGPL-3.0]
[agpl-3.0]: https://www.gnu.org/licenses/agpl-3.0.en.html
[agpl-3.0-badge]: https://img.shields.io/badge/license-AGPL--3.0-444444.svg?style=for-the-badge
[backer-url]: #backers
[backer-badge]: https://opencollective.com/misskey/backers/badge.svg
[backers-image]: https://opencollective.com/misskey/backers.svg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

BIN
assets/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -1,53 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
id="svg8"
version="1.1"
viewBox="0 0 135.46667 135.46667"
height="512"
width="512">
<defs
id="defs2" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
style="fill:#2fa3bc;fill-opacity:1"
transform="translate(-30.809093,-111.78601)"
id="layer1">
<g
style="fill:#2fa3bc;fill-opacity:1"
transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)"
id="g4502">
<g
id="g5125"
transform="translate(-1.3333333e-6,-1.3439941e-6)"
style="fill:#2fa3bc;fill-opacity:1">
<g
aria-label="Mi"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#2fa3bc;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="text4489"
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)">
<path
id="path5210"
transform="matrix(0.26412464,0,0,0.26412464,24.988264,136.28626)"
d="m 62.474609,76.585938 c -7.47555,0 -14.595784,1.246427 -21.359375,3.738281 C 29.011968,84.595952 19.044417,92.249798 11.212891,103.28516 3.7373405,113.96451 0,125.88934 0,139.06055 v 233.8789 c 0,17.08697 6.0510264,31.85913 18.154297,44.31836 12.459246,12.10327 27.233346,18.15625 44.320312,18.15625 17.442947,0 32.215089,-6.05298 44.318361,-18.15625 12.45925,-12.45923 18.68945,-27.23139 18.68945,-44.31836 V 330.4082 c 0.13441,-9.21122 9.6225,-6.79429 14.41797,0 8.98111,15.55395 28.02226,28.91242 50.19141,28.83594 22.16915,-0.0764 40.58194,-11.03699 50.19336,-28.83594 3.63981,-4.29263 13.89902,-11.60675 14.95117,0 v 42.53125 c 0,17.08697 6.05102,31.85913 18.15429,44.31836 12.45923,12.10327 27.23335,18.15625 44.32032,18.15625 17.44294,0 32.21509,-6.05298 44.31836,-18.15625 12.45923,-12.45923 18.68945,-27.23139 18.68945,-44.31836 v -233.8789 c 0,-13.17121 -3.9146,-25.09604 -11.74609,-35.77539 -7.47557,-11.035362 -17.26588,-18.689208 -29.36914,-22.960941 -7.11956,-2.491854 -14.23982,-3.738281 -21.35938,-3.738281 -19.22286,0 -35.41865,7.476649 -48.58984,22.427734 l -63.40235,74.199218 c -1.42391,1.06791 -6.14093,9.23242 -16.16015,9.23242 -10.01923,0 -14.20109,-8.16451 -15.625,-9.23242 L 110.53125,99.013672 C 97.716024,84.062587 81.697447,76.585938 62.474609,76.585938 Z m 395.060551,0 c -14.9511,-10e-7 -27.76596,5.340179 -38.44532,16.019531 -10.32338,10.323381 -15.48437,22.961011 -15.48437,37.912111 0,14.9511 5.16099,27.76596 15.48437,38.44531 10.67936,10.32338 23.49422,15.48633 38.44532,15.48633 14.95109,0 27.76596,-5.16295 38.44531,-15.48633 C 506.65982,158.28354 512,145.46868 512,130.51758 512,115.56648 506.65982,102.92885 495.98047,92.605469 485.30112,81.926117 472.48625,76.585938 457.53516,76.585938 Z m 0.5332,118.541012 c -14.9511,0 -27.76596,5.34018 -38.44531,16.01953 -10.67936,10.67936 -16.01758,23.49422 -16.01758,38.44532 v 131.89062 c 0,14.9511 5.33822,27.76596 16.01758,38.44531 10.67935,10.32339 23.49421,15.48633 38.44531,15.48633 14.9511,0 27.58873,-5.16294 37.91211,-15.48633 C 506.65982,409.24838 512,396.43352 512,381.48242 V 249.5918 c 0,-14.9511 -5.34018,-27.76596 -16.01953,-38.44532 -10.32338,-10.67935 -22.96101,-16.01953 -37.91211,-16.01953 z"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#2fa3bc;fill-opacity:1;stroke-width:1.09609616px" />
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.1 KiB

BIN
assets/icon.afdesign Normal file

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 430 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 671 B

BIN
assets/icons/512.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1015 B

View File

@@ -1,51 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
id="svg8"
version="1.1"
viewBox="0 0 135.46667 135.46667"
height="512"
width="512">
<defs
id="defs2" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
transform="translate(-30.809093,-111.78601)"
id="layer1">
<g
transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)"
id="g4502">
<g
id="g5125"
transform="translate(-1.3333333e-6,-1.3439941e-6)"
style="fill:#000000;fill-opacity:1">
<g
aria-label="Mi"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="text4489"
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)">
<path
id="path5210"
transform="matrix(0.26412464,0,0,0.26412464,24.988264,136.28626)"
d="m 62.474609,76.585938 c -7.47555,0 -14.595784,1.246427 -21.359375,3.738281 C 29.011968,84.595952 19.044417,92.249798 11.212891,103.28516 3.7373405,113.96451 0,125.88934 0,139.06055 v 233.8789 c 0,17.08697 6.0510264,31.85913 18.154297,44.31836 12.459246,12.10327 27.233346,18.15625 44.320312,18.15625 17.442947,0 32.215089,-6.05298 44.318361,-18.15625 12.45925,-12.45923 18.68945,-27.23139 18.68945,-44.31836 V 330.4082 c 0.13441,-9.21122 9.6225,-6.79429 14.41797,0 8.98111,15.55395 28.02226,28.91242 50.19141,28.83594 22.16915,-0.0764 40.58194,-11.03699 50.19336,-28.83594 3.63981,-4.29263 13.89902,-11.60675 14.95117,0 v 42.53125 c 0,17.08697 6.05102,31.85913 18.15429,44.31836 12.45923,12.10327 27.23335,18.15625 44.32032,18.15625 17.44294,0 32.21509,-6.05298 44.31836,-18.15625 12.45923,-12.45923 18.68945,-27.23139 18.68945,-44.31836 v -233.8789 c 0,-13.17121 -3.9146,-25.09604 -11.74609,-35.77539 -7.47557,-11.035362 -17.26588,-18.689208 -29.36914,-22.960941 -7.11956,-2.491854 -14.23982,-3.738281 -21.35938,-3.738281 -19.22286,0 -35.41865,7.476649 -48.58984,22.427734 l -63.40235,74.199218 c -1.42391,1.06791 -6.14093,9.23242 -16.16015,9.23242 -10.01923,0 -14.20109,-8.16451 -15.625,-9.23242 L 110.53125,99.013672 C 97.716024,84.062587 81.697447,76.585938 62.474609,76.585938 Z m 395.060551,0 c -14.9511,-10e-7 -27.76596,5.340179 -38.44532,16.019531 -10.32338,10.323381 -15.48437,22.961011 -15.48437,37.912111 0,14.9511 5.16099,27.76596 15.48437,38.44531 10.67936,10.32338 23.49422,15.48633 38.44532,15.48633 14.95109,0 27.76596,-5.16295 38.44531,-15.48633 C 506.65982,158.28354 512,145.46868 512,130.51758 512,115.56648 506.65982,102.92885 495.98047,92.605469 485.30112,81.926117 472.48625,76.585938 457.53516,76.585938 Z m 0.5332,118.541012 c -14.9511,0 -27.76596,5.34018 -38.44531,16.01953 -10.67936,10.67936 -16.01758,23.49422 -16.01758,38.44532 v 131.89062 c 0,14.9511 5.33822,27.76596 16.01758,38.44531 10.67935,10.32339 23.49421,15.48633 38.44531,15.48633 14.9511,0 27.58873,-5.16294 37.91211,-15.48633 C 506.65982,409.24838 512,396.43352 512,381.48242 V 249.5918 c 0,-14.9511 -5.34018,-27.76596 -16.01953,-38.44532 -10.32338,-10.67935 -22.96101,-16.01953 -37.91211,-16.01953 z"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#000000;fill-opacity:1;stroke-width:1.09609616px" />
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 148 KiB

View File

@@ -1,9 +0,0 @@
{
'targets': [
{
'target_name': 'crypto_key',
'sources': ['src/crypto_key.cc'],
'include_dirs': ['<!(node -e "require(\'nan\')")']
}
]
}

View File

@@ -6,7 +6,7 @@ services:
restart: always
links:
- db
# - redis
- redis
# - es
ports:
- "127.0.0.1:3000:3000"
@@ -14,13 +14,13 @@ services:
- internal_network
- external_network
# redis:
# restart: always
# image: redis:4.0-alpine
# networks:
# - internal_network
# volumes:
# - ./redis:/data
redis:
restart: always
image: redis:4.0-alpine
networks:
- internal_network
volumes:
- ./redis:/data
db:
restart: always

View File

@@ -9,9 +9,17 @@ This guide describes how to install and setup Misskey with Docker.
*1.* Download Misskey
----------------------------------------------------------------
1. `git clone -b master git://github.com/syuilo/misskey.git` Clone Misskey repository's master branch.
2. `cd misskey` Move to misskey directory.
3. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)` Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest) tag.
1. Clone Misskey repository's master branch.
`git clone -b master git://github.com/syuilo/misskey.git`
2. Move to misskey directory.
`cd misskey`
3. Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest) tag.
`git checkout master`
*2.* Configure Misskey
----------------------------------------------------------------
@@ -57,7 +65,13 @@ Build misskey with the following:
`docker-compose build`
*5.* That is it.
*5.* Init DB
----------------------------------------------------------------
``` shell
docker-compose run --rm web yarn run init
```
*6.* That is it.
----------------------------------------------------------------
Well done! Now you have an environment to run Misskey.
@@ -65,16 +79,16 @@ Well done! Now you have an environment to run Misskey.
Just `docker-compose up -d`. GLHF!
### How to update your Misskey server to the latest version
1. `git fetch`
2. `git stash`
3. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)`
1. `git stash`
2. `git checkout master`
3. `git pull`
4. `git stash pop`
5. `docker-compose build`
6. Check [ChangeLog](../CHANGELOG.md) for migration information
7. `docker-compose stop && docker-compose up -d`
### How to execute [cli commands](manage.en.md):
`docker-compose run --rm web node cli/mark-admin @example`
`docker-compose run --rm web node built/tools/mark-admin @example`
----------------------------------------------------------------

View File

@@ -10,9 +10,17 @@ Ce guide explique comment installer et configurer Misskey avec Docker.
*1.* Télécharger Misskey
----------------------------------------------------------------
1. `git clone -b master git://github.com/syuilo/misskey.git` Clone le dépôt de Misskey sur la branche master.
2. `cd misskey` Naviguez dans le dossier du dépôt.
3. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)` Checkout sur le tag de la [dernière version](https://github.com/syuilo/misskey/releases/latest).
1. Clone le dépôt de Misskey sur la branche master.
`git clone -b master git://github.com/syuilo/misskey.git`
2. Naviguez dans le dossier du dépôt.
`cd misskey`
3. Checkout sur le tag de la [dernière version](https://github.com/syuilo/misskey/releases/latest).
`git checkout master`
*2.* Configuration de Misskey
----------------------------------------------------------------
@@ -38,28 +46,42 @@ Parfait, Vous avez un environnement prêt pour démarrer Misskey.
Utilisez la commande `docker-compose up -d`. GLHF!
### How to update your Misskey server to the latest version
1. `git fetch`
2. `git stash`
3. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)`
1. `git stash`
2. `git checkout master`
3. `git pull`
4. `git stash pop`
5. `docker-compose build`
6. Consultez le [ChangeLog](../CHANGELOG.md) pour avoir les éventuelles informations de migration
7. `docker-compose stop && docker-compose up -d`
### Comment exécuter des [commandes](manage.fr.md)
`docker-compose run --rm web node cli/mark-admin @example`
`docker-compose run --rm web node built/tools/mark-admin @example`
### Configuration d'ElasticSearch (pour la fonction de recherche)
*1.* Préparation de l'environnement
----------------------------------------------------------------
1. `mkdir elasticsearch && chown 1000:1000 elasticsearch` Permet de créer le dossier d'accueil de la base ElasticSearch aves les bons droits
2. `sysctl -w vm.max_map_count=262144` Augmente la valeur max du paramètre map_count du système (valeur minimum pour pouvoir lancer ES)
1. Permet de créer le dossier d'accueil de la base ElasticSearch aves les bons droits
`mkdir elasticsearch && chown 1000:1000 elasticsearch`
2. Augmente la valeur max du paramètre map_count du système (valeur minimum pour pouvoir lancer ES)
`sysctl -w vm.max_map_count=262144`
*2.* Après lancement du docker-compose, initialisation de la base ElasticSearch
----------------------------------------------------------------
1. `docker-compose -it web /bin/sh` Connexion dans le conteneur web
2. `apk add curl` Ajout du paquet curl
3. `curl -X PUT "es:9200/misskey" -H 'Content-Type: application/json' -d'{ "settings" : { "index" : { } }}'` Création de la base ES
1. Connexion dans le conteneur web
`docker-compose -it web /bin/sh`
2. Ajout du paquet curl
`apk add curl`
3. Création de la base ES
`curl -X PUT "es:9200/misskey" -H 'Content-Type: application/json' -d'{ "settings" : { "index" : { } }}'`
4. `exit`
----------------------------------------------------------------

View File

@@ -9,9 +9,17 @@ Dockerを使ったMisskey構築方法
*1.* Misskeyのダウンロード
----------------------------------------------------------------
1. `git clone -b master git://github.com/syuilo/misskey.git` masterブランチからMisskeyレポジトリをクローン
2. `cd misskey` misskeyディレクトリに移動
3. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)` [最新のリリース](https://github.com/syuilo/misskey/releases/latest)を確認
1. masterブランチからMisskeyレポジトリをクローン
`git clone -b master git://github.com/syuilo/misskey.git`
2. misskeyディレクトリに移動
`cd misskey`
3. [最新のリリース](https://github.com/syuilo/misskey/releases/latest)を確認
`git checkout master`
*2.* 設定ファイルの作成と編集
----------------------------------------------------------------
@@ -57,7 +65,13 @@ cp docker_example.env docker.env
`docker-compose build`
*5.* 以上です!
*5.* データベースを初期化
----------------------------------------------------------------
``` shell
docker-compose run --rm web yarn run init
```
*6.* 以上です!
----------------------------------------------------------------
お疲れ様でした。これでMisskeyを動かす準備は整いました。
@@ -65,9 +79,9 @@ cp docker_example.env docker.env
`docker-compose up -d`するだけです。GLHF!
### Misskeyを最新バージョンにアップデートする方法:
1. `git fetch`
2. `git stash`
3. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)`
1. `git stash`
2. `git checkout master`
3. `git pull`
4. `git stash pop`
5. `docker-compose build`
6. [ChangeLog](../CHANGELOG.md)でマイグレーション情報を確認する
@@ -75,7 +89,7 @@ cp docker_example.env docker.env
### cliコマンドを実行する方法:
`docker-compose run --rm web node cli/mark-admin @example`
`docker-compose run --rm web node built/tools/mark-admin @example`
----------------------------------------------------------------

View File

@@ -1,7 +1,7 @@
# Sample nginx configuration for Misskey
#
# 1. Replace example.tld to your domain
# 2. Copy to /etc/nginx/sites-available/ and then symlink from /etc/nginx/sites-ebabled/
# 2. Copy to /etc/nginx/sites-available/ and then symlink from /etc/nginx/sites-enabled/
# or copy to /etc/nginx/conf.d/
# For WebSocket
@@ -25,11 +25,10 @@ server {
}
server {
listen 443 http2;
listen [::]:443 http2;
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.tld;
ssl on;
ssl_session_cache shared:ssl_session_cache:10m;
ssl_session_cache shared:ssl_session_cache:10m;
# To use Let's Encrypt certificate
ssl_certificate /etc/letsencrypt/live/example.tld/fullchain.pem;

View File

@@ -5,14 +5,10 @@ coming soon
## Mark as 'admin' user
``` shell
node cli/mark-admin (User-ID or Username)
node built/tools/mark-admin (Username)
```
e.g.
``` shell
# By id
node cli/mark-admin 57d01a501fdf2d07be417afe
# By username
node cli/suspend @syuilo
node built/tools/mark-admin @syuilo
```

View File

@@ -5,14 +5,10 @@ coming soon
## Marquer un utilisateur en tant que 'admin'
``` shell
node cli/mark-admin (ID utilisateur ou nom d'utilisateur)
node built/tools/mark-admin (nom d'utilisateur)
```
Exemple :
``` shell
# Par id
node cli/mark-admin 57d01a501fdf2d07be417afe
# Par nom d'utilisateur
node cli/suspend @syuilo
node built/tools/mark-admin @syuilo
```

View File

@@ -5,14 +5,10 @@ coming soon
## 管理者ユーザーを設定する
``` shell
node cli/mark-admin (ユーザーID または ユーザー名)
node built/tools/mark-admin (ユーザー名)
```
例:
``` shell
# ユーザーID
node cli/mark-admin 57d01a501fdf2d07be417afe
# ユーザー名
node cli/mark-admin @syuilo
node built/tools/mark-admin @syuilo
```

View File

@@ -22,55 +22,67 @@ adduser --disabled-password --disabled-login misskey
Please install and setup these softwares:
#### Dependencies :package:
* **[Node.js](https://nodejs.org/en/)** >= 11.7.0
* **[Node.js](https://nodejs.org/en/)** >= 11.10.1
* **[PostgreSQL](https://www.postgresql.org/)** >= 10
* **[Redis](https://redis.io/)**
##### Optional
* [Redis](https://redis.io/)
* Redis is optional, but we strongly recommended to install it
* [Yarn](https://yarnpkg.com/) *Optional but recommended for security reason. If you won't install it, use `npx yarn` instead of `yarn`.*
* [Elasticsearch](https://www.elastic.co/) - required to enable the search feature
* [FFmpeg](https://www.ffmpeg.org/)
*3.* Setup PostgreSQL
*3.* Install Misskey
----------------------------------------------------------------
:)
1. Connect to misskey user.
*4.* Install Misskey
----------------------------------------------------------------
1. `su - misskey` Connect to misskey user.
2. `git clone -b master git://github.com/syuilo/misskey.git` Clone the misskey repo from master branch.
3. `cd misskey` Navigate to misskey directory
4. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)` Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest)
5. `npm install` Install misskey dependencies.
`su - misskey`
*5.* Configure Misskey
2. Clone the misskey repo from master branch.
`git clone -b master git://github.com/syuilo/misskey.git`
3. Navigate to misskey directory
`cd misskey`
4. Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest)
`git checkout master`
5. Install misskey dependencies.
`yarn`
*4.* Configure Misskey
----------------------------------------------------------------
1. `cp .config/example.yml .config/default.yml` Copy the `.config/example.yml` and rename it to `default.yml`.
1. Copy the `.config/example.yml` and rename it to `default.yml`.
`cp .config/example.yml .config/default.yml`
2. Edit `default.yml`
*6.* Build Misskey
*5.* Build Misskey
----------------------------------------------------------------
Build misskey with the following:
`NODE_ENV=production npm run build`
`NODE_ENV=production yarn build`
If you're on Debian, you will need to install the `build-essential`, `python` package.
If you're still encountering errors about some modules, use node-gyp:
1. `npm install -g node-gyp`
2. `node-gyp configure`
3. `node-gyp build`
4. `NODE_ENV=production npm run build`
1. `npx node-gyp configure`
2. `npx node-gyp build`
3. `NODE_ENV=production yarn build`
*7.* Init DB
*6.* Init DB
----------------------------------------------------------------
``` shell
npm run init
yarn run init
```
*8.* That is it.
*7.* That is it.
----------------------------------------------------------------
Well done! Now, you have an environment that run to Misskey.
@@ -79,43 +91,55 @@ Just `NODE_ENV=production npm start`. GLHF!
### Launch with systemd
1. Create a systemd service here: `/etc/systemd/system/misskey.service`
1. Create a systemd service here
`/etc/systemd/system/misskey.service`
2. Edit it, and paste this and save:
```
[Unit]
Description=Misskey daemon
```
[Unit]
Description=Misskey daemon
[Service]
Type=simple
User=misskey
ExecStart=/usr/bin/npm start
WorkingDirectory=/home/misskey/misskey
Environment="NODE_ENV=production"
TimeoutSec=60
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=misskey
Restart=always
[Service]
Type=simple
User=misskey
ExecStart=/usr/bin/npm start
WorkingDirectory=/home/misskey/misskey
Environment="NODE_ENV=production"
TimeoutSec=60
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=misskey
Restart=always
[Install]
WantedBy=multi-user.target
```
[Install]
WantedBy=multi-user.target
```
3. `systemctl daemon-reload ; systemctl enable misskey` Reload systemd and enable the misskey service.
4. `systemctl start misskey` Start the misskey service.
3. Reload systemd and enable the misskey service.
`systemctl daemon-reload ; systemctl enable misskey`
4. Start the misskey service.
`systemctl start misskey`
You can check if the service is running with `systemctl status misskey`.
### How to update your Misskey server to the latest version
1. `git fetch`
2. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)`
3. `npm install`
4. `NODE_ENV=production npm run build`
5. Check [ChangeLog](../CHANGELOG.md) for migration information
1. `git checkout master`
2. `git pull`
3. `yarn install`
4. `NODE_ENV=production yarn build`
5. `yarn migrate`
6. Restart your Misskey process to apply changes
7. Enjoy
If you encounter any problems with updating, please try the following:
1. `yarn clean` or `yarn cleanall`
2. Retry update (Don't forget `yarn install`
----------------------------------------------------------------
If you have any questions or troubles, feel free to contact us!

View File

@@ -22,91 +22,111 @@ adduser --disabled-password --disabled-login misskey
Installez les paquets suivants :
#### Dépendences :package:
* **[Node.js](https://nodejs.org/en/)** >= 11.7.0
* **[Node.js](https://nodejs.org/en/)** >= 11.10.1
* **[PostgreSQL](https://www.postgresql.org/)** >= 10
* **[Redis](https://redis.io/)**
##### Optionnels
* [Redis](https://redis.io/)
* Redis est optionnel mais nous vous recommandons vivement de l'installer
* [Elasticsearch](https://www.elastic.co/) - requis pour pouvoir activer la fonctionnalité de recherche
* [Yarn](https://yarnpkg.com/) - *recommander pour des raisons de sécurité. Si vous ne l'installez pas, utilisez `npx yarn` au lieu de` yarn`.*
* [Elasticsearch](https://www.elastic.co/) - *requis pour pouvoir activer la fonctionnalité de recherche.*
* [FFmpeg](https://www.ffmpeg.org/)
*3.* Paramètrage de PostgreSQL
*3.* Installation de Misskey
----------------------------------------------------------------
:)
1. Basculez vers l'utilisateur misskey.
*4.* Installation de Misskey
----------------------------------------------------------------
1. `su - misskey` Basculez vers l'utilisateur misskey.
2. `git clone -b master git://github.com/syuilo/misskey.git` Clonez la branche master du dépôt misskey.
3. `cd misskey` Accédez au dossier misskey.
4. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)` Checkout sur le tag de la [version la plus récente](https://github.com/syuilo/misskey/releases/latest)
5. `npm install` Installez les dépendances de misskey.
`su - misskey`
*5.* Création du fichier de configuration
2. Clonez la branche master du dépôt misskey.
`git clone -b master git://github.com/syuilo/misskey.git`
3. Accédez au dossier misskey.
`cd misskey`
4. Checkout sur le tag de la [version la plus récente](https://github.com/syuilo/misskey/releases/latest)
`git checkout master`
5. Installez les dépendances de misskey.
`yarn install`
*4.* Création du fichier de configuration
----------------------------------------------------------------
1. `cp .config/example.yml .config/default.yml` Copiez le fichier `.config/example.yml` et renommez-le`default.yml`.
1. Copiez le fichier `.config/example.yml` et renommez-le`default.yml`.
`cp .config/example.yml .config/default.yml`
2. Editez le fichier `default.yml`
*6.* Construction de Misskey
*5.* Construction de Misskey
----------------------------------------------------------------
Construisez Misskey comme ceci :
`NODE_ENV=production npm run build`
`NODE_ENV=production yarn build`
Si vous êtes sous Debian, vous serez amené à installer les paquets `build-essential` et `python`.
Si vous rencontrez des erreurs concernant certains modules, utilisez node-gyp:
1. `npm install -g node-gyp`
2. `node-gyp configure`
3. `node-gyp build`
4. `NODE_ENV=production npm run build`
1. `npx node-gyp configure`
2. `npx node-gyp build`
3. `NODE_ENV=production yarn build`
*7.* C'est tout.
*6.* C'est tout.
----------------------------------------------------------------
Excellent ! Maintenant, vous avez un environnement prêt pour lancer Misskey
### Lancement conventionnel
Lancez tout simplement `NODE_ENV=production npm start`. Bonne chance et amusez-vous bien !
Lancez tout simplement `NODE_ENV=production yarn start`. Bonne chance et amusez-vous bien !
### Démarrage avec systemd
1. Créez un service systemd sur : `/etc/systemd/system/misskey.service`
1. Créez un service systemd sur
`/etc/systemd/system/misskey.service`
2. Editez-le puis copiez et coller ceci dans le fichier :
```
[Unit]
Description=Misskey daemon
```
[Unit]
Description=Misskey daemon
[Service]
Type=simple
User=misskey
ExecStart=/usr/bin/npm start
WorkingDirectory=/home/misskey/misskey
Environment="NODE_ENV=production"
TimeoutSec=60
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=misskey
Restart=always
[Service]
Type=simple
User=misskey
ExecStart=/usr/bin/npm start
WorkingDirectory=/home/misskey/misskey
Environment="NODE_ENV=production"
TimeoutSec=60
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=misskey
Restart=always
[Install]
WantedBy=multi-user.target
```
[Install]
WantedBy=multi-user.target
```
3. `systemctl daemon-reload ; systemctl enable misskey` Redémarre systemd et active le service misskey.
4. `systemctl start misskey` Démarre le service misskey.
3. Redémarre systemd et active le service misskey.
`systemctl daemon-reload ; systemctl enable misskey`
4. Démarre le service misskey.
`systemctl start misskey`
Vous pouvez vérifier si le service a démarré en utilisant la commande `systemctl status misskey`.
### Méthode de mise à jour vers la plus récente version de Misskey
1. `git fetch`
2. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)`
3. `npm install`
4. `NODE_ENV=production npm run build`
5. Consultez [ChangeLog](../CHANGELOG.md) pour les information de migration.
1. `git checkout master`
2. `git pull`
3. `yarn install`
4. `NODE_ENV=production yarn build`
5. `yarn migrate`
----------------------------------------------------------------

View File

@@ -22,105 +22,121 @@ adduser --disabled-password --disabled-login misskey
これらのソフトウェアをインストール・設定してください:
#### 依存関係 :package:
* **[Node.js](https://nodejs.org/en/)** (11.7.0以上)
* **[Node.js](https://nodejs.org/en/)** (11.10.1以上)
* **[PostgreSQL](https://www.postgresql.org/)** (10以上)
* **[Redis](https://redis.io/)**
##### オプション
* [Redis](https://redis.io/)
* Redisはオプションですが、インストールすることを強く推奨します
* インストールしなくていいのは、あなたのインスタンスが自分専用のときだけとお考えください。
* 具体的には、Redisをインストールしないと、次の事が出来なくなります:
* Misskeyプロセスを複数起動しての負荷分散
* レートリミット
* ジョブキュー
* Twitter連携
* [Yarn](https://yarnpkg.com/)
* セキュリティの観点から推奨されます。 yarn をインストールしない方針の場合は、文章中の `yarn` を適宜 `npx yarn` と読み替えてください
* [Elasticsearch](https://www.elastic.co/)
* 検索機能を有効にするためにはインストールが必要です。
* [FFmpeg](https://www.ffmpeg.org/)
*3.* PostgreSQLの設定
*3.* Misskeyのインストール
----------------------------------------------------------------
:)
1. misskeyユーザーを使用
*4.* Misskeyのインストール
----------------------------------------------------------------
1. `su - misskey` misskeyユーザーを使用
2. `git clone -b master git://github.com/syuilo/misskey.git` masterブランチからMisskeyレポジトリをクローン
3. `cd misskey` misskeyディレクトリに移動
4. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)` [最新のリリース](https://github.com/syuilo/misskey/releases/latest)を確認
5. `npm install` Misskeyの依存パッケージをインストール
`su - misskey`
*5.* 設定ファイルを作成する
2. masterブランチからMisskeyレポジトリをクローン
`git clone -b master git://github.com/syuilo/misskey.git`
3. misskeyディレクトリに移動
`cd misskey`
4. [最新のリリース](https://github.com/syuilo/misskey/releases/latest)を確認
`git checkout master`
5. Misskeyの依存パッケージをインストール
`yarn install`
*4.* 設定ファイルを作成する
----------------------------------------------------------------
1. `cp .config/example.yml .config/default.yml` `.config/example.yml`をコピーし名前を`default.yml`にする。
1. `.config/example.yml`をコピーし名前を`default.yml`にする。
`cp .config/example.yml .config/default.yml`
2. `default.yml` を編集する。
*6.* Misskeyのビルド
*5.* Misskeyのビルド
----------------------------------------------------------------
次のコマンドでMisskeyをビルドしてください:
`NODE_ENV=production npm run build`
`NODE_ENV=production yarn build`
Debianをお使いであれば、`build-essential`パッケージをインストールする必要があります。
何らかのモジュールでエラーが発生する場合はnode-gypを使ってください:
1. `npm install -g node-gyp`
2. `node-gyp configure`
3. `node-gyp build`
4. `NODE_ENV=production npm run build`
1. `npx node-gyp configure`
2. `npx node-gyp build`
3. `NODE_ENV=production yarn build`
*7.* データベースを初期化
*6.* データベースを初期化
----------------------------------------------------------------
``` shell
npm run init
yarn run init
```
*8.* 以上です!
*7.* 以上です!
----------------------------------------------------------------
お疲れ様でした。これでMisskeyを動かす準備は整いました。
### 通常起動
`NODE_ENV=production npm start`するだけです。GLHF!
`NODE_ENV=production yarn start`するだけです。GLHF!
### systemdを用いた起動
1. systemdサービスのファイルを作成: `/etc/systemd/system/misskey.service`
1. systemdサービスのファイルを作成
`/etc/systemd/system/misskey.service`
2. エディタで開き、以下のコードを貼り付けて保存:
```
[Unit]
Description=Misskey daemon
```
[Unit]
Description=Misskey daemon
[Service]
Type=simple
User=misskey
ExecStart=/usr/bin/npm start
WorkingDirectory=/home/misskey/misskey
Environment="NODE_ENV=production"
TimeoutSec=60
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=misskey
Restart=always
[Service]
Type=simple
User=misskey
ExecStart=/usr/bin/npm start
WorkingDirectory=/home/misskey/misskey
Environment="NODE_ENV=production"
TimeoutSec=60
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=misskey
Restart=always
[Install]
WantedBy=multi-user.target
```
CentOSで1024以下のポートを使用してMisskeyを使用する場合は`ExecStart=/usr/bin/sudo /usr/bin/npm start`に変更する必要があります。
[Install]
WantedBy=multi-user.target
```
3. `systemctl daemon-reload ; systemctl enable misskey` systemdを再読み込みしmisskeyサービスを有効化
4. `systemctl start misskey` misskeyサービスの起動
CentOSで1024以下のポートを使用してMisskeyを使用する場合は`ExecStart=/usr/bin/sudo /usr/bin/npm start`に変更する必要があります。
3. systemdを再読み込みしmisskeyサービスを有効化
`systemctl daemon-reload; systemctl enable misskey`
4. misskeyサービスの起動
`systemctl start misskey`
`systemctl status misskey`と入力すると、サービスの状態を調べることができます。
### Misskeyを最新バージョンにアップデートする方法:
1. `git fetch`
2. `git checkout $(git tag -l | grep -Ev -- '-(rc|alpha)\.[0-9]+$' | sort -V | tail -n 1)`
3. `npm install`
4. `NODE_ENV=production npm run build`
5. [ChangeLog](../CHANGELOG.md)でマイグレーション情報を確認する
1. `git checkout master`
2. `git pull`
3. `yarn install`
4. `NODE_ENV=production yarn build`
5. `yarn migrate`
なにか問題が発生した場合は、`npm run clean`または`npm run cleanall`すると直る場合があります。
なにか問題が発生した場合は、`yarn clean`または`yarn cleanall`すると直る場合があります。
----------------------------------------------------------------

View File

@@ -2,44 +2,26 @@
* Gulp tasks
*/
import * as fs from 'fs';
import * as gulp from 'gulp';
import * as gutil from 'gulp-util';
import * as ts from 'gulp-typescript';
const sourcemaps = require('gulp-sourcemaps');
import tslint from 'gulp-tslint';
const cssnano = require('gulp-cssnano');
const stylus = require('gulp-stylus');
import * as uglifyComposer from 'gulp-uglify/composer';
import * as rimraf from 'rimraf';
import chalk from 'chalk';
const imagemin = require('gulp-imagemin');
import * as rename from 'gulp-rename';
import * as mocha from 'gulp-mocha';
import * as replace from 'gulp-replace';
const uglifyes = require('uglify-es');
import * as rimraf from 'rimraf';
import * as rename from 'gulp-rename';
const cleanCSS = require('gulp-clean-css');
const sass = require('gulp-dart-sass');
const fiber = require('fibers');
const locales = require('./locales');
const uglify = uglifyComposer(uglifyes, console);
const env = process.env.NODE_ENV || 'development';
const isProduction = env === 'production';
const isDebug = !isProduction;
if (isDebug) {
console.warn(chalk.yellow.bold('WARNING! NODE_ENV is not "production".'));
console.warn(chalk.yellow.bold(' built script will not be compressed.'));
}
const meta = require('./package.json');
gulp.task('build:ts', () => {
const tsProject = ts.createProject('./tsconfig.json');
return tsProject
.src()
.pipe(sourcemaps.init())
.pipe(tsProject())
.on('error', () => {})
.pipe(sourcemaps.write('.', { includeContent: false, sourceRoot: '../built' }))
.pipe(gulp.dest('./built/'));
});
@@ -47,33 +29,62 @@ gulp.task('build:copy:views', () =>
gulp.src('./src/server/web/views/**/*').pipe(gulp.dest('./built/server/web/views'))
);
gulp.task('build:copy', gulp.parallel('build:copy:views', () =>
gulp.task('build:copy:locales', cb => {
fs.mkdirSync('./built/client/assets/locales', { recursive: true });
for (const [lang, locale] of Object.entries(locales)) {
fs.writeFileSync(`./built/client/assets/locales/${lang}.${meta.version}.json`, JSON.stringify(locale), 'utf-8');
}
cb();
});
gulp.task('build:copy', gulp.parallel('build:copy:views', 'build:copy:locales', () =>
gulp.src([
'./build/Release/crypto_key.node',
'./src/const.json',
'./src/emojilist.json',
'./src/server/web/views/**/*',
'./src/**/assets/**/*',
'!./src/client/app/**/assets/**/*'
'!./src/client/assets/**/*'
]).pipe(gulp.dest('./built/'))
));
gulp.task('lint', () =>
gulp.src('./src/**/*.ts')
.pipe(tslint({
formatter: 'verbose'
}))
.pipe(tslint.report())
gulp.task('clean', cb =>
rimraf('./built', cb)
);
gulp.task('format', () =>
gulp.src('./src/**/*.ts')
.pipe(tslint({
formatter: 'verbose',
fix: true
}))
.pipe(tslint.report())
gulp.task('cleanall', gulp.parallel('clean', cb =>
rimraf('./node_modules', cb)
));
gulp.task('build:client:styles', () =>
gulp.src('./src/client/style.scss')
.pipe(sass({ fiber }))
.pipe(cleanCSS())
.pipe(gulp.dest('./built/client/assets/'))
);
gulp.task('copy:client', () =>
gulp.src([
'./assets/**/*',
'./src/client/assets/**/*',
])
.pipe(rename(path => {
path.dirname = path.dirname!.replace('assets', '.');
}))
.pipe(gulp.dest('./built/client/assets/'))
);
gulp.task('build:client', gulp.parallel(
'build:client:styles',
'copy:client'
));
gulp.task('build', gulp.parallel(
'build:ts',
'build:copy',
'build:client',
));
gulp.task('mocha', () =>
gulp.src('./test/**/*.ts')
.pipe(mocha({
@@ -84,65 +95,4 @@ gulp.task('mocha', () =>
gulp.task('test', gulp.task('mocha'));
gulp.task('clean', cb =>
rimraf('./built', cb)
);
gulp.task('cleanall', gulp.parallel('clean', cb =>
rimraf('./node_modules', cb)
));
gulp.task('build:client:script', () => {
const client = require('./built/client/meta.json');
return gulp.src(['./src/client/app/boot.js', './src/client/app/safe.js'])
.pipe(replace('VERSION', JSON.stringify(client.version)))
.pipe(replace('ENV', JSON.stringify(env)))
.pipe(replace('LANGS', JSON.stringify(Object.keys(locales))))
.pipe(isProduction ? uglify({
toplevel: true
} as any) : gutil.noop())
.pipe(gulp.dest('./built/client/assets/'));
});
gulp.task('build:client:styles', () =>
gulp.src('./src/client/app/init.css')
.pipe(isProduction
? (cssnano as any)()
: gutil.noop())
.pipe(gulp.dest('./built/client/assets/'))
);
gulp.task('copy:client', () =>
gulp.src([
'./assets/**/*',
'./src/client/assets/**/*',
'./src/client/app/*/assets/**/*'
])
.pipe(isProduction ? (imagemin as any)() : gutil.noop())
.pipe(rename(path => {
path.dirname = path.dirname!.replace('assets', '.');
}))
.pipe(gulp.dest('./built/client/assets/'))
);
gulp.task('doc', () =>
gulp.src('./src/docs/**/*.styl')
.pipe(stylus())
.pipe((cssnano as any)())
.pipe(gulp.dest('./built/docs/assets/'))
);
gulp.task('build:client', gulp.parallel(
'build:client:script',
'build:client:styles',
'copy:client'
));
gulp.task('build', gulp.parallel(
'build:ts',
'build:copy',
'build:client',
'doc'
));
gulp.task('default', gulp.task('build'));

View File

@@ -1 +1,7 @@
require('./built').default();
const fs = require('fs');
if (fs.existsSync('./built')) {
require('./built').default();
} else {
console.log('Built code is not found. Probably an error occurred during a build or you just forgot to build.');
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,673 +1 @@
---
meta:
lang: "Deutsch"
common:
misskey: "Ein ⭐ des Fediversums"
about-title: "Ein ⭐ des Fediversums."
about: "Danke, dass Du Misskey gefunden hast. Misskey ist eine <b>dezentralisierte Microblogging-Plattform</b>, welche auf der ganzen Welt verteilt ist. Da es innerhalb es Fediversums existiert (ein Universum, in dem verschiedene Soziale Netzwerke organisiert sind), ist es unmittelbar mit anderen sozialen Netzwerken verbunden. Warum nimmst du dir nicht einmal eine Auszeit von dem Trubel der Stadt und tauchst in das neue Internet hinein?"
intro:
title: "Was ist Misskey?"
features: "Funktionen"
rich-contents: "Notizen"
reaction: "Reaktionen"
ui: "Benutzeroberfläche"
drive: "Drive"
adblock:
detected: "Bitte deaktiviere den Werbeblocker."
application-authorization: "Autorisierte Anwendungen"
close: "Schließen"
load-more: "Mehr laden"
enter-password: "Bitte Passwort eingeben"
2fa: "Zwei-Faktor-Authentifizierung"
got-it: "Verstanden!"
customization-tips:
title: "Anpassung-Tipps"
gotit: "Verstanden!"
notification:
file-uploaded: "Datei hochgeladen!"
message-from: "Nachricht von {}:"
reversi-invited-by: "Eingeladen von {}:"
notified-by: "Benachrichtigt von {}:"
reply-from: "Antwort von {}:"
quoted-by: "Zitiert von {}:"
time:
unknown: "Unbekannt"
future: "Zukunft"
just_now: "Gerade eben"
seconds_ago: "vor {} Sekunde(n)"
minutes_ago: "vor {} Minute(n)"
hours_ago: "vor {} Stunde(n)"
days_ago: "vor {} Tag(en)"
weeks_ago: "vor {} Woche(n)"
months_ago: "vor {} Monat(en)"
years_ago: "vor {} Jahr(en)"
month-and-day: "{day}/{month}"
trash: "Papierkorb"
drive: "Drive"
messaging: "Unterhaltungen"
home: "Home"
favorites: "Diese Notiz favorisieren"
weekday-short:
sunday: "So"
monday: "Mo"
tuesday: "Di"
wednesday: "Mi"
thursday: "Do"
friday: "Fr"
saturday: "Sa"
weekday:
sunday: "Sonntag"
monday: "Montag"
tuesday: "Dienstag"
wednesday: "Mittwoch"
thursday: "Donnerstag"
friday: "Freitag"
saturday: "Samstag"
reactions:
like: "Gefällt mir"
love: "Lieben"
laugh: "Lachen"
hmm: "Hmm...?"
surprise: "Wow"
congrats: "Glückwunsch!"
angry: "Wütend"
confused: "Verwirrt"
rip: "RIP"
pudding: "Pudding"
note-visibility:
public: "Öffentlich"
home: "Startseite"
home-desc: "Nur auf die Startseite posten"
followers: "Abonnenten"
followers-desc: "Nur für diejenigen sichtbar, die dir folgen"
specified: "Direkt"
specified-desc: "Nur für bestimmte Benutzer posten"
local-public: "Öffentlich (nur lokal)"
local-home: "Home (nur lokal)"
local-followers: "Follower (nur lokal)"
note-placeholders:
a: "Was machst du gerade?"
b: "Was ist so passiert?"
c: "Was geht dir durch den Kopf?"
d: "Willst du etwas sagen?"
e: "Schreib hier etwas!"
f: "Warte darauf, das du schreibst."
_settings:
profile: "Dein Profil"
notification: "Benachrichtigungen"
password: "Passwort"
search: "Suche"
delete: "Löschen"
loading: "Laden"
update-available-title: "Aktualisierung verfügbar"
update-available: "Eine neue Version von Misskey ist verfügbar ({newer}, aktuell ist {current}). Lade die Seite neu um die aktuelle Version zu laden"
my-token-regenerated: "Dein Token wurde generiert. Du wirst jetzt abgemeldet."
verified-user: "Verifizierter Benutzer"
do-not-use-in-production: "Dies ist eine Entwicklungsversion. Nicht in einer Produktionsumgebung verwenden."
error:
retry: "Erneut versuchen"
reversi:
drawn: "Unentschieden"
my-turn: "Du bist am Zug"
opponent-turn: "Dein Gegner ist an der Reihe"
black: "Schwarz"
white: "Weiß"
total: "Gesamt"
widgets:
analog-clock: "Analoge Uhr"
profile: "Profil"
calendar: "Kalender"
timemachine: "Kalender (Zeitmaschiene)"
activity: "Aktivitäten"
rss: "RSS Leser"
memo: "Notizen"
trends: "Trends"
photo-stream: "Bilder"
slideshow: "Diashow"
version: "Version"
notifications: "Benachrichtigungen"
users: "Empfohlene Benutzer"
polls: "Umfrage"
post-form: "Beitragsform"
server: "Server-Info"
nav: "Navigation"
tips: "Tipps"
hashtags: "Hashtags"
dev: "Fehler beim Erstellen der Applikation. Bitte versuche es erneut."
you: "Du"
auth/views/form.vue:
share-access: "Erlaubst Du <i>{name}</i> auf deinen Account zuzugreifen?"
permission-ask: "Diese Applikation benötigt folgende Berechtigungen:"
account-read: "Accountinformationen anzeigen."
account-write: "Accountinformationen bearbeiten."
note-write: "Senden."
like-write: "Auf Beiträge reagieren."
following-write: "Folgen oder entfolgen."
notification-read: "Siehe deine Benachrichtigungen."
notification-write: "Benachrichtigungen verwalten."
cancel: "Abbrechen"
accept: "Zugriff erlauben."
auth/views/index.vue:
loading: "Lädt"
denied: "Autorisierung der Anwendung wurde verweigert."
already-authorized: "Diese Anwendung ist bereits autorisiert."
allowed: "Autorisierung der Anwendung wurde erlaubt."
please-go-back: "Bitte gehe zurück zur Anwendung."
error: "Sitzung ist nicht vorhanden."
sign-in: "Bitte melde dich an."
common/views/pages/explore.vue:
verified-users: "Verifizierter Benutzer"
common/views/components/games/reversi/reversi.vue:
matching:
waiting-for: "Warten auf {}"
cancel: "Abbrechen"
common/views/components/games/reversi/reversi.game.vue:
surrender: "Aufgeben"
common/views/components/games/reversi/reversi.index.vue:
title: "Misskey Reversi"
sub-title: "Spiele Reversi mit deinen Freunden!"
invite: "Einladen"
rule: "Spielanleitung"
mode-invite: "Einladen"
all-games: "Alle Spiele"
enter-username: "Bitte gib einen Benutzernamen ein"
game-state:
ended: "Fertig"
common/views/components/games/reversi/reversi.room.vue:
settings-of-the-game: "Spieleinstellungen"
choose-map: "Wähle eine Karte"
random: "Zufällige Auswahl"
black-or-white: "Schwarz/Weiß"
black-is: "Schwarz ist {}"
rules: "Regeln"
waiting-for-other: "Warte auf den Gegner"
cancel: "Abbrechen"
ready: "Bereit"
common/views/components/connect-failed.vue:
title: "Verbindung zum Server ist fehlgeschlagen"
description: "Es gibt entweder ein Problem mit deiner Internetverbindung, der Server ist nicht erreichbar oder wird gerade gewartet. Bitte versuche es später noch einmal."
thanks: "Vielen Dank für das nutzen von Misskey."
troubleshoot: "Problembehandlung"
common/views/components/connect-failed.troubleshooter.vue:
title: "Problembehandlung"
network: "Netzwerkverbindung"
checking-network: "Prüfen der Netzwerkverbindung"
internet: "Internetverbindung"
checking-internet: "Internetverbindung wird getestet"
server: "Serververbindung"
checking-server: "Überprüfung der Server-Verbindung"
finding: "Nach dem Problem suchen"
no-network: "Keine Netzwerkverbindung"
no-network-desc: "Bitte stelle sicher, dass du mit dem Internet verbunden bist."
no-internet: "Keine Internetverbindung"
no-internet-desc: "Bitte vergewissere dich, dass du mit dem Internet verbunden bist."
no-server: "Verbindung mit dem Server nicht möglich"
no-server-desc: "Die Internetverbindung scheint in Ordnung zu sein, aber eine Verbindung mit dem Misskey Server konnte nicht hergestellt werden. Möglicherweise ist dieser zur Zeit offline oder in der Wartung, bitte versuche es später noch einmal."
success: "Erfolgreich mit dem Misskey Server verbunden"
success-desc: "Die Verbindung scheint zu funktionieren. Bitte lade die Seite neu."
flush: "Cache leeren"
set-version: "Version angeben"
common/views/components/media-banner.vue:
sensitive: "Dieser Inhalt ist NSFW"
click-to-show: "Klicke zum den Inhalt anzusehen"
common/views/components/theme.vue:
light-theme: "Thema"
dark-theme: "Thema während des Nachtmodus"
light-themes: "Helles Thema"
dark-themes: "Dunkles Thema"
install: "Anwenden"
installed: "\"{}\" wurde installiert"
create-a-theme: "Thema erstellen"
save-created-theme: "Thema speichern"
primary-color: "Primäre Farbe"
secondary-color: "Sekundäre Farbe"
text-color: "Textfarbe"
base-theme: "Basisthema"
base-theme-light: "Hell"
base-theme-dark: "Dunkel"
theme-name: "Name des Themas"
preview-created-theme: "Vorschau"
invalid-theme: "Thema ist ungültig"
already-installed: "Thema ist bereits installiert"
author: "Autor"
export: "Exportieren"
import: "Importieren"
common/views/components/cw-button.vue:
poll: "Umfrage"
common/views/components/messaging.vue:
search-user: "Einen Nutzer suchen"
you: "Du"
no-history: "Keine Chronik"
common/views/components/messaging-room.vue:
empty: "Keine Unterhaltungen"
no-history: "Keine weitere Chronik vorhanden"
resize-form: "Ziehen um die Größe zu verändern"
new-message: "Neue Nachricht"
common/views/components/messaging-room.form.vue:
input-message-here: "Nachricht hier eingeben"
send: "Senden"
attach-from-local: "Wähle Dateien von deinem PC aus"
attach-from-drive: "Wähle Dateien von deinem Speicher aus"
common/views/components/messaging-room.message.vue:
is-read: "Gelesen"
deleted: "Diese Nachricht wurde gelöscht"
common/views/components/nav.vue:
about: "Über"
stats: "Statistiken"
status: "Status"
wiki: "Wiki"
donors: "Spender"
repository: "Projektarchiv"
develop: "Entwickler"
feedback: "Feedback"
common/views/components/note-menu.vue:
favorite: "Diese Notiz favorisieren"
unfavorite: "Aus Favoriten entfernen"
pin: "An die Profilseite pinnen"
delete: "Löschen"
delete-confirm: "Diesen Post löschen?"
remote: "Auf Quelle anzeigen"
common/views/components/poll.vue:
vote-to: "Stimme für '{}'"
vote-count: "{} Stimmen"
vote: "Abstimmen"
show-result: "Zeige Ergebnis"
voted: "Abgestimmt"
common/views/components/poll-editor.vue:
no-only-one-choice: "Du musst zwei oder mehr Entscheidungen angeben"
choice-n: "Auswahl {}"
remove: "Diese Auswahl entfernen"
add: "+ Eine Auswahl hinzufügen"
destroy: "Diese Abstimmung löschen"
day: "So"
common/views/components/reaction-picker.vue:
choose-reaction: "Wähle eine Reaktion aus"
common/views/components/emoji-picker.vue:
activity: "Aktivität"
common/views/components/signin.vue:
username: "Benutzername"
password: "Passwort"
token: "Token"
signing-in: "Melde an..."
or: "Oder"
common/views/components/signup.vue:
username: "Benutzername"
checking: "Überprüfung..."
available: "Verfügbar"
unavailable: "Nicht verfügbar"
error: "Verbindungsfehler"
invalid-format: "Benutze nur Buchstaben, Zahlen und _"
too-short: "Bitte mindestens ein Zeichen eingeben"
too-long: "Bitte maximal 20 Zeichen verwenden"
password: "Passwort"
password-placeholder: "Wir empfehlen mindestens 8 Zeichen"
weak-password: "Schwaches Passwort"
normal-password: "Faires Passwort"
strong-password: "Schwaches Passwort"
retype: "Wiederholen"
retype-placeholder: "Bitte das Passwort erneut eingeben"
password-matched: "OK"
password-not-matched: "Stimmt nicht überein"
recaptcha: "Captcha"
create: "Account erstellen"
some-error: "Die Anmeldung konnte aufgrund eines Fehler nicht abgeschlossen werden. Bitte versuche es erneut."
common/views/components/special-message.vue:
new-year: "Frohes neues Jahr!"
christmas: "Frohe Weihnachten!"
common/views/components/stream-indicator.vue:
connecting: "Verbindung wird hergestellt"
reconnecting: "Erneut verbinden"
connected: "Verbindung hergestellt"
common/views/components/notification-settings.vue:
title: "Benachrichtigungen"
common/views/components/uploader.vue:
waiting: "Warten"
common/views/components/visibility-chooser.vue:
public: "Öffentlich"
home: "Home"
home-desc: "Nur auf die Startseite posten"
followers: "Folgende"
followers-desc: "Nur für diejenigen sichtbar, die dir folgen"
specified: "Direkt"
specified-desc: "Poste nur für bestimmte Benutzer"
local-public: "Öffentlich (nur lokal)"
local-home: "Home (nur lokal)"
local-followers: "Follower (nur lokal)"
common/views/components/profile-editor.vue:
title: "Dein Profil"
avatar: "Avatar"
banner: "Banner"
save: "Speichern"
export: "Exportieren"
import: "Importieren"
export-targets:
user-lists: "Listen"
enter-password: "Bitte Passwort eingeben"
common/views/widgets/broadcast.vue:
fetching: "Laden"
no-broadcasts: "Keine Broadcasts"
have-a-nice-day: "Schönen Tag!"
next: "Nächster"
common/views/widgets/photo-stream.vue:
title: "Fotostream"
no-photos: "Keine Fotos"
common/views/widgets/posts-monitor.vue:
toggle: "Sicht umschalten"
common/views/widgets/server.vue:
title: "Serverinformationen"
toggle: "Sicht umschalten"
common/views/widgets/memo.vue:
title: "Notizen"
memo: "Schreib hier!"
save: "Speichern"
desktop:
banner: "Banner"
desktop/views/components/activity.chart.vue:
total: "Schwarz ... komplett"
notes: "Blau ... Hinweise"
replies: "Rot ... Antworten"
renotes: "Grün ... Anmerkungen"
desktop/views/components/activity.vue:
title: "Aktivität"
toggle: "Sichten umschalten"
desktop/views/components/calendar.vue:
prev: "Vorheriger Monat"
next: "Nächster Monat"
go: "Klicke zur Navigation"
desktop/views/components/choose-file-from-drive-window.vue:
upload: "Dateien von deinem PC hochladen"
cancel: "Abbrechen"
ok: "OK"
choose-prompt: "Wähle eine Datei aus"
desktop/views/components/choose-folder-from-drive-window.vue:
cancel: "Abbrechen"
ok: "OK"
choose-prompt: "Wähle einen Ordner"
desktop/views/components/crop-window.vue:
skip: "Zuschneiden überspringen"
cancel: "Abbrechen"
ok: "OK"
desktop/views/components/drive-window.vue:
used: "benutzt"
desktop/views/components/drive.file.vue:
avatar: "Avatar"
banner: "Banner"
contextmenu:
rename: "Umbenennen"
copy-url: "URL kopieren"
download: "Download"
else-files: "Anderes…"
set-as-avatar: "Als Avatar festlegen"
set-as-banner: "Setze als Banner"
open-in-app: "In der App öffnen"
add-app: "App hinzufügen"
rename-file: "Datei umbennen"
input-new-file-name: "Gib den neuen Dateinamen an"
copied: "Kopieren erfolgreich"
copied-url-to-clipboard: "URL wurde in die Zwischenablage kopiert"
desktop/views/components/drive.folder.vue:
unable-to-process: "Der Vorgang konnte nicht beendet werden"
circular-reference-detected: "Das Zielverzeichnis ist ein Unterverzeichnis des Verzeichnisses welches du verschieben möchtest"
unhandled-error: "Unbekannter Fehler"
contextmenu:
move-to-this-folder: "Verschiebe in diesen Ordner"
show-in-new-window: "In einem neuen Fenster anzeigen"
rename: "Umbenennen"
rename-folder: "Ordner umbenennen"
input-new-folder-name: "Namen für neuen Ordner eingeben"
desktop/views/components/drive.vue:
search: "Suchen"
empty-draghover: "Herzlich Willkommen!"
empty-drive: "Dein Speicher ist leer"
empty-drive-description: "Du kannst rechts klicken und \"Datei hochladen\" auswählen oder eine Datei per Drag and Drop auf das Fenster ziehen."
empty-folder: "Dieser Ordner ist leer"
unable-to-process: "Der Vorgang konnte nicht beendet werden"
circular-reference-detected: "Das Zielverzeichnis ist ein Unterverzeichnis des Verzeichnisses welches du verschieben möchtest"
unhandled-error: "Unbekannter Fehler"
url-upload: "Von einer URL hochladen"
url-of-file: "URL der Datei, welche du hochladen möchtest"
url-upload-requested: "Upload angefordert"
may-take-time: "Es kann eine Weile dauern, bis der Upload fertiggestellt ist."
create-folder: "Ein Verzeichnis erstellen"
folder-name: "Ordnername"
contextmenu:
create-folder: "Ein Verzeichnis erstellen"
upload: "Eine Datei hochladen"
url-upload: "Von einer URL hochladen"
desktop/views/components/followers.vue:
empty: "Dir scheint niemand zu folgen."
desktop/views/components/following.vue:
empty: "Du folgst niemanden"
desktop/views/components/home.vue:
done: "Verbunden"
add-widget: "Widget hinzufügen:"
add: "Hinzufügen"
desktop/views/input-dialog.vue:
cancel: "Abbrechen"
ok: "OK"
desktop/views/components/note-detail.vue:
private: "Dieser Post ist privat"
deleted: "Dieser Beitrag wurde entfernt"
location: "Ort"
renote: "Anmerkung"
add-reaction: "Reaktion hinzufügen"
desktop/views/components/note.vue:
reply: "Antworten"
renote: "Anmerkung"
private: "Dieser Post ist privat"
deleted: "Dieser Beitrag wurde entfernt"
desktop/views/components/notes.vue:
error: "Laden fehlgeschlagen."
retry: "Erneut versuchen"
desktop/views/components/notifications.vue:
empty: "Keine Benachrichtigungen"
desktop/views/components/post-form.vue:
add-visible-user: "+Nutzer hinzufügen"
hide-contents: "Inhalt verstecken"
reply-placeholder: "Antworte auf diese Anmerkung..."
quote-placeholder: "Zitiere diese Anmerkung..."
submit: "Beitragsform"
reply: "Antworten"
renote: "Anmerkung"
posted: "Gepostet!"
replied: "Geantwortet!"
reposted: "Weitergesagt!"
note-failed: "Anmerkung fehlgeschlagen"
reply-failed: "Antwort fehlgeschlagen"
renote-failed: "Anmerkung fehlgeschlagen"
posting: "Posting"
attach-media-from-local: "Medien von deinem PC hinzufügen"
attach-media-from-drive: "Medien von deinem Speicher hinzufügen"
attach-cancel: "Hinzufügen abbrechen"
create-poll: "Eine Abstimmung erstellen"
text-remain: "{} Zeichen verbleibend"
visibility: "Sichtbarkeit"
error: "Fehler"
enter-username: "Bitte gib einen Benutzernamen ein..."
desktop/views/components/post-form-window.vue:
note: "Neue Notiz"
reply: "Antworten"
attaches: "{} Medien hinzugefügt"
uploading-media: "Lade {} Medien hoch"
desktop/views/components/progress-dialog.vue:
waiting: "Warten"
desktop/views/components/renote-form.vue:
quote: "Zitieren..."
cancel: "Abbrechen"
renote: "Anmerkung"
reposting: "Weitersagen..."
success: "Weitergesagt!"
failure: "Weitersagen fehlgeschlagen"
desktop/views/components/renote-form-window.vue:
title: "Bist du dir sicher, dass du das reposten willst?"
desktop/views/components/settings.2fa.vue:
url: "https://www.google.de/intl/de/landing/2step/"
register: "Ein Gerät registrieren"
already-registered: "Das Gerät wurde bereits registriert"
unregister: "Abschalten"
unregistered: "Zwei-Faktor-Authentifizierung wurde deaktiviert."
enter-password: "Bitte Passwort eingeben"
token: "Token"
common/views/components/api-settings.vue:
enter-password: "Bitte Passwort eingeben"
console:
send: "Senden"
common/views/components/drive-settings.vue:
in-use: "benutzt"
stats: "Statistiken"
common/views/components/mute-and-block.vue:
save: "Speichern"
desktop/views/components/sub-note-content.vue:
private: "Dieser Post ist privat"
deleted: "Dieser Beitrag wurde entfernt"
poll: "Umfrage"
desktop/views/components/settings.tags.vue:
add: "Hinzufügen"
save: "Speichern"
desktop/views/components/taskmanager.vue:
title: "Taskmanager"
desktop/views/components/timeline.vue:
home: "Home"
local: "Lokal"
global: "Global"
list: "Listen"
desktop/views/components/ui.header.account.vue:
profile: "Dein Profil"
lists: "Listen"
desktop/views/components/ui.header.nav.vue:
game: "Spielen"
desktop/views/components/ui.header.notifications.vue:
title: "Benachrichtigungen"
desktop/views/components/ui.header.post.vue:
post: "Einen neuen Post erstellen"
desktop/views/components/ui.header.search.vue:
placeholder: "Suchen"
desktop/views/components/user-lists-window.vue:
title: "Listen"
desktop/views/components/users-list.vue:
fetching: "Lade…"
admin/views/dashboard.vue:
drive: "Drive"
admin/views/abuse.vue:
remove-report: "Löschen"
admin/views/instance.vue:
invite: "Einladen"
save: "Speichern"
admin/views/charts.vue:
drive: "Drive"
admin/views/drive.vue:
origin:
local: "Lokal"
delete: "Löschen"
admin/views/users.vue:
users:
state:
verified: "Verifizierter Benutzer"
origin:
local: "Lokal"
admin/views/emoji.vue:
add-emoji:
add: "Hinzufügen"
emojis:
remove: "Löschen"
admin/views/announcements.vue:
save: "Speichern"
remove: "Löschen"
add: "Hinzufügen"
admin/views/federation.vue:
status: "Status"
desktop/views/pages/note.vue:
prev: "Vorheriger Kommentar"
next: "Nächster Kommentar"
desktop/views/pages/selectdrive.vue:
title: "Wähle Datei(en) aus"
ok: "OK"
cancel: "Abbrechen"
desktop/views/pages/user-list.users.vue:
username: "Benutzername"
desktop/views/pages/user/user.followers-you-know.vue:
loading: "Laden"
desktop/views/pages/user/user.friends.vue:
loading: "Laden"
desktop/views/pages/user/user.photos.vue:
loading: "Laden"
no-photos: "Keine Fotos"
desktop/views/pages/user/user.header.vue:
month: "Mo"
day: "So"
desktop/views/widgets/notifications.vue:
title: "Benachrichtigungen"
desktop/views/widgets/polls.vue:
title: "Umfrage"
nothing: "Keine Benachrichtigungen"
desktop/views/widgets/trends.vue:
nothing: "Keine Benachrichtigungen"
mobile/views/components/drive.vue:
used: "benutzt"
folder-name: "Ordnername"
url-prompt: "URL der Datei, welche du hochladen möchtest"
mobile/views/components/drive.file-detail.vue:
download: "Download"
rename: "Umbenennen"
mobile/views/components/note.vue:
private: "Dieser Post ist privat"
deleted: "Dieser Beitrag wurde entfernt"
location: "Ort"
mobile/views/components/note-detail.vue:
reply: "Antworten"
private: "Dieser Post ist privat"
deleted: "Dieser Beitrag wurde entfernt"
location: "Ort"
mobile/views/components/notifications.vue:
empty: "Keine Benachrichtigungen"
mobile/views/components/post-form.vue:
reply: "Antworten"
renote: "Anmerkung"
reply-placeholder: "Antworte auf diese Anmerkung..."
mobile/views/components/sub-note-content.vue:
private: "Dieser Post ist privat"
deleted: "Dieser Beitrag wurde entfernt"
poll: "Umfrage"
mobile/views/components/ui.nav.vue:
notifications: "Benachrichtigungen"
search: "Suchen"
user-lists: "Listen"
game: "Spielen"
about: "Über"
mobile/views/pages/user-lists.vue:
title: "Listen"
mobile/views/pages/home.vue:
home: "Home"
local: "Lokal"
global: "Global"
mobile/views/pages/widgets.vue:
add-widget: "Hinzufügen"
customization-tips: "Anpassung-Tipps"
mobile/views/pages/widgets/activity.vue:
activity: "Aktivität"
mobile/views/pages/note.vue:
prev: "Vorheriger Kommentar"
next: "Nächster Kommentar"
mobile/views/pages/search.vue:
search: "Suchen"
mobile/views/pages/user/home.vue:
activity: "Aktivität"
keywords: "Schlagwörter"
mobile/views/pages/user/home.photos.vue:
no-photos: "Keine Fotos"
deck:
home: "Home"
local: "Lokal"
global: "Global"
notifications: "Benachrichtigungen"
list: "Listen"
rename: "Umbenennen"
deck/deck.user-column.vue:
activity: "Aktivität"
dev/views/new-app.vue:
account-read: "Accountinformationen anzeigen."
account-write: "Accountinformationen bearbeiten."
note-write: "Senden."
following-write: "Folgen oder entfolgen."
notification-read: "Siehe deine Benachrichtigungen."
notification-write: "Benachrichtigungen verwalten."

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -14,18 +14,19 @@ const merge = (...args) => args.reduce((a, c) => ({
}), {});
const languages = [
'cs-CZ',
'de-DE',
//'cs-CZ',
//'da-DK',
//'de-DE',
'en-US',
'es-ES',
'fr-FR',
//'fr-FR',
'ja-JP',
'ja-KS',
//'ja-KS',
'ko-KR',
'nl-NL',
'pl-PL',
'zh-CN',
'zh-TW',
//'nl-NL',
//'pl-PL',
//'zh-CN',
//'zh-TW',
];
const primaries = {

View File

@@ -1,6 +0,0 @@
---
meta:
lang: "Italiano"
common:
misskey: "A ⭐ of the fediverse"
about-title: "A ⭐ of the fediverse."

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,629 +1 @@
---
meta:
lang: "Nederlands"
common:
misskey: "Deel alles met anderen die ook Misskey gebruiken."
intro:
rich-contents: "Bericht"
reaction: "Reactie"
close: "Sluiten"
enter-password: "Voer het wachtwoord in"
time:
unknown: "onbekend"
future: "toekomstig"
just_now: "zojuist"
seconds_ago: "{}s geleden"
minutes_ago: "{}m geleden"
hours_ago: "{}u geleden"
days_ago: "{}d geleden"
weeks_ago: "{}week/weken geleden"
months_ago: "{}maand(en) geleden"
years_ago: "{}jaar geleden"
home: "Startpagina"
timeline: "Tijdlijn"
followers: "Volgers"
favorites: "Deze notitie toevoegen aan favorieten"
weekday-short:
sunday: "Z"
monday: "M"
tuesday: "D"
wednesday: "W"
thursday: "D"
friday: "V"
saturday: "Z"
reactions:
like: "Leuk"
love: "Geweldig"
laugh: "Grappig"
hmm: "Eh...?"
surprise: "Wauw"
congrats: "Gefeliciteerd!"
angry: "Boos"
confused: "Verward"
pudding: "Pudding"
note-visibility:
home: "Startpagina"
followers: "Volgers"
_settings:
profile: "Je profiel"
notification: "Meldingen"
password: "Wachtwoord"
timeline: "Tijdlijn"
search: "Zoeken"
delete: "Verwijderen"
loading: "Bezig met laden"
update-available: "Er is een nieuwe versie van Misskey beschikbaar: {newer} (de huidige versie is {current}). Herlaad de pagina om de update toe te passen."
my-token-regenerated: "Je sleutel is gegenereerd; je wordt nu uitgelogd."
widgets:
profile: "Je profiel"
activity: "Activiteit"
trends: "Populair"
photo-stream: "Fotostream"
notifications: "Meldingen"
users: "Aanbevolen gebruikers"
server: "Serverinformatie"
you: "Jij"
auth/views/form.vue:
cancel: "Annuleren"
auth/views/index.vue:
loading: "Bezig met laden"
common/views/components/games/reversi/reversi.vue:
matching:
cancel: "Annuleren"
common/views/components/games/reversi/reversi.room.vue:
cancel: "Annuleren"
common/views/components/connect-failed.vue:
title: "Verbinden met server mislukt"
description: "Er is een probleem met je internetverbinding, de server ligt plat of er wordt aan gewerkt. {Probeer} het later opnieuw."
thanks: "Bedankt voor het gebruiken van Misskey."
troubleshoot: "Probleemoplossing"
common/views/components/connect-failed.troubleshooter.vue:
title: "Probleemoplossing"
network: "Netwerkverbinding"
checking-network: "Bezig met controleren van netwerkverbinding"
internet: "Internetverbinding"
checking-internet: "Bezig met controleren van internetverbinding"
server: "Serververbinding"
checking-server: "Bezig met controleren van serververbinding"
finding: "Bezig met vaststellen van probleem"
no-network: "Er is geen internetverbinding"
no-network-desc: "Zorg ervoor dat je verbonden bent met een netwerk."
no-internet: "Er is geen internetverbinding"
no-internet-desc: "Zorg ervoor dat je verbonden bent met het internet."
no-server: "Verbinden met Misskey-server mislukt"
no-server-desc: "De netwerkverbinding van je computer is goed, maar er kan geen verbinding worden gemaakt met de Misskey-server. Het kan dat de server plat ligt of dat eraan wordt gewerkt. Probeer het later opnieuw."
success: "Verbonden met de Misskey-server"
success-desc: "Het verbinden lijkt te lukken. Herlaad de pagina."
flush: "Cache leegmaken"
set-version: "Versie opgeven"
common/views/components/theme.vue:
desc: "Omschrijving"
common/views/components/messaging.vue:
search-user: "Gebruiker zoeken"
you: "Jij"
no-history: "Geen geschiedenis"
common/views/components/messaging-room.vue:
empty: "Geen gesprekken"
no-history: "Er is geen verdere geschiedenis"
resize-form: "Versleep om grootte te wijzigen"
new-message: "Nieuw bericht"
common/views/components/messaging-room.form.vue:
input-message-here: "Voer hier je bericht in"
send: "Versturen"
attach-from-local: "Bestanden bijvoegen van je computer"
attach-from-drive: "Bestanden bijvoegen van je Drive"
common/views/components/messaging-room.message.vue:
is-read: "Gelezen"
deleted: "Dit bericht is verwijderd"
common/views/components/nav.vue:
about: "Over"
stats: "Statistieken"
status: "Status"
donors: "Donateurs"
repository: "Broncode"
develop: "Ontwikkelaars"
feedback: "Feedback"
common/views/components/note-menu.vue:
favorite: "Deze notitie toevoegen aan favorieten"
pin: "Vastmaken aan profielpagina"
delete: "Verwijderen"
remote: "Origineel tonen"
common/views/components/poll.vue:
vote-to: "Stemmen op '{}'"
vote-count: "{} stemmen"
vote: "Stemmen"
show-result: "Resultaten tonen"
voted: "Gestemd"
common/views/components/poll-editor.vue:
no-only-one-choice: "Je moet twee of meer keuzes invoeren."
choice-n: "Keuze {}"
remove: "Deze keuze verwijderen"
add: "+ Keuze toevoegen"
destroy: "Deze peiling vernietigen"
day: "Z"
common/views/components/reaction-picker.vue:
choose-reaction: "Kies een reactie"
common/views/components/emoji-picker.vue:
activity: "Activiteit"
common/views/components/signin.vue:
username: "Gebruikersnaam"
password: "Wachtwoord"
token: "Sleutel"
signing-in: "Bezig met inloggen..."
common/views/components/signup.vue:
username: "Gebruikersnaam"
checking: "Bezig met controleren..."
available: "Beschikbaar"
unavailable: "Niet beschikbaar"
error: "Netwerkfout"
invalid-format: "Gebruik alleen letters, cijfers en -."
too-short: "Voer minimaal 1 teken in!"
too-long: "Voer maximaal 20 tekens in."
password: "Wachtwoord"
password-placeholder: "Wij raden aan meer dan 8 tekens te gebruiken."
weak-password: "Zwak"
normal-password: "'t Ken net"
strong-password: "Sterk"
retype: "Opnieuw invoeren"
retype-placeholder: "Wachtwoord bevestigen"
password-matched: "Oké"
password-not-matched: "Komt niet overeen"
recaptcha: "Verifiëren"
create: "Account creëren"
some-error: "Het creëren van een account is mislukt. Probeer het opnieuw."
common/views/components/special-message.vue:
new-year: "Gelukkig nieuwjaar!"
christmas: "Fijne kerstdagen!"
common/views/components/stream-indicator.vue:
connecting: "Bezig met verbinden"
reconnecting: "Bezig met herverbinden"
connected: "Verbonden"
common/views/components/notification-settings.vue:
title: "Meldingen"
common/views/components/github-setting.vue:
detail: "Details bekijken..."
common/views/components/discord-setting.vue:
detail: "Details bekijken..."
common/views/components/uploader.vue:
waiting: "Bezig met wachten"
common/views/components/visibility-chooser.vue:
home: "Startpagina"
followers: "Volgers"
common/views/components/profile-editor.vue:
title: "Je profiel"
name: "Naam"
avatar: "Gebruikersafbeelding"
banner: "Omslagfoto"
export-targets:
following-list: "Volgend"
user-lists: "Lijsten"
enter-password: "Voer het wachtwoord in"
common/views/components/user-list-editor.vue:
users: "Gebruiker"
common/views/widgets/broadcast.vue:
fetching: "Bezig met ophalen"
no-broadcasts: "Geen uitzendingen"
have-a-nice-day: "Fijne dag!"
next: "Volgende"
common/views/widgets/photo-stream.vue:
title: "Fotostream"
no-photos: "Geen foto's"
common/views/widgets/posts-monitor.vue:
toggle: "Schakelen tussen weergaven"
common/views/widgets/server.vue:
title: "Serverinformatie"
toggle: "Schakelen tussen weergaven"
common/views/pages/follow.vue:
signed-in-as: "Ingelogd als {}"
follow: "Volgend"
desktop:
banner: "Omslagfoto"
desktop/views/components/activity.chart.vue:
total: "Zwart ... totaal"
notes: "Blauw ... notities"
replies: "Rood ... antwoorden"
renotes: "Groen ... gedeelde notities"
desktop/views/components/activity.vue:
title: "Activiteit"
toggle: "Schakelen tussen weergaven"
desktop/views/components/calendar.vue:
prev: "Vorige maand"
next: "Volgende maand"
go: "Klik om te navigeren"
desktop/views/components/choose-file-from-drive-window.vue:
upload: "Bestanden uploaden van je computer"
cancel: "Annuleren"
ok: "Oké"
choose-prompt: "Kies een bestand"
desktop/views/components/choose-folder-from-drive-window.vue:
cancel: "Annuleren"
ok: "Oké"
choose-prompt: "Kies een map"
desktop/views/components/crop-window.vue:
skip: "Bijsnijden overslaan"
cancel: "Annuleren"
ok: "Oké"
desktop/views/components/drive-window.vue:
used: "gebruikt"
desktop/views/components/drive.file.vue:
avatar: "Gebruikersafbeelding"
banner: "Omslagfoto"
contextmenu:
rename: "Naam wijzigen"
copy-url: "URL kopiëren"
download: "Downloaden"
else-files: "Overig"
set-as-avatar: "Instellen als gebruikersafbeelding"
set-as-banner: "Instellen als omslagfoto"
open-in-app: "Openen in app"
add-app: "App toevoegen"
rename-file: "Bestandsnaam wijzigen"
input-new-file-name: "Voer een nieuwe naam in"
copied: "Gekopieerd"
copied-url-to-clipboard: "URL gekopieerd naar klembord"
desktop/views/components/drive.folder.vue:
unable-to-process: "De operatie kan niet worden voltooid."
circular-reference-detected: "De bestemmingsmap is een submap van de map die je wilt verplaatsen."
unhandled-error: "Onbekende fout"
contextmenu:
move-to-this-folder: "Verplaatsen naar deze map"
show-in-new-window: "Openen in nieuw venster"
rename: "Naam wijzigen"
rename-folder: "Mapnaam wijzigen"
input-new-folder-name: "Voer een nieuwe naam in"
desktop/views/components/drive.vue:
search: "Zoeken"
empty-draghover: "Welkom!"
empty-drive: "Je schijf is leeg"
empty-drive-description: "Je kunt ook uploaden door te klikken met de rechtermuisknop en te kiezen voor \"Bestand uploaden\" of door een bestand naar dit venster te slepen."
empty-folder: "Deze map is leeg"
unable-to-process: "De operatie kan niet worden voltooid."
circular-reference-detected: "De bestemmingsmap is een submap van de te verplaatsen map."
unhandled-error: "Onbekende fout"
url-upload: "Uploaden via URL"
url-of-file: "URL van het te uploaden bestand"
url-upload-requested: "Uploadverzoek"
may-take-time: "Het kan even duren voordat het uploaden voltooid is."
create-folder: "Map creëren"
folder-name: "Mapnaam"
contextmenu:
create-folder: "Map creëren"
upload: "Bestand uploaden"
url-upload: "Uploaden via URL"
desktop/views/components/followers-window.vue:
followers: "Volgers van {}"
desktop/views/components/followers.vue:
empty: "Het lijkt erop dat je geen volgers hebt."
desktop/views/components/following-window.vue:
following: "Volgend {}"
desktop/views/components/following.vue:
empty: "Je volgt niemand."
desktop/views/components/game-window.vue:
game: "Othello"
desktop/views/components/home.vue:
done: "Versturen"
add-widget: "Widget toevoegen:"
add: "Toevoegen"
desktop/views/input-dialog.vue:
cancel: "Annuleren"
ok: "Oké"
desktop/views/components/note-detail.vue:
private: "(dit bericht is privé)"
location: "Locatie"
add-reaction: "Reactie"
desktop/views/components/note.vue:
reply: "Beantwoorden"
add-reaction: "Reactie"
private: "(dit bericht is privé)"
desktop/views/components/notes.vue:
error: "Laden mislukt."
retry: "Opnieuw proberen"
desktop/views/components/notifications.vue:
empty: "Geen meldingen"
desktop/views/components/post-form.vue:
reply-placeholder: "Deze notitie beantwoorden..."
quote-placeholder: "Deze notitie citeren..."
submit: "Bericht"
reply: "Beantwoorden"
posted: "Geplaatst!"
replied: "Beantwoord!"
reposted: "Hergeplaatst!"
note-failed: "Noteren mislukt"
reply-failed: "Beantwoorden mislukt"
renote-failed: "Renote mislukt"
posting: "Bezig met plaatsen"
attach-media-from-local: "Media bijvoegen van je computer"
attach-media-from-drive: "Media bijvoegen uit je Drive"
attach-cancel: "Bijlage annuleren"
create-poll: "Peiling creëren"
text-remain: "{} resterende tekens"
desktop/views/components/post-form-window.vue:
note: "Nieuwe notitie"
reply: "Beantwoorden"
attaches: "{} media bijgevoegd"
uploading-media: "Bezig met uploaden van media {}"
desktop/views/components/progress-dialog.vue:
waiting: "Bezig met wachten"
desktop/views/components/renote-form.vue:
quote: "Citeren..."
cancel: "Annuleren"
reposting: "Bezig met herplaatsen..."
success: "Hergeplaatst!"
failure: "Renote mislukt"
desktop/views/components/renote-form-window.vue:
title: "Weet je zeker dat je deze notitie wilt renoten?"
desktop/views/components/settings.2fa.vue:
intro: "Als je verificatie in twee stappen instelt, dan heb je niet alleen een wachtwoord nodig bij het inloggen, maar ook een geregistreerd fysiek apparaat (zoals je smartphone). Dit verhoogt de veiligheid. "
detail: "Details bekijken..."
url: "https://www.google.com/landing/2step/"
caution: "Als je geen toegang meer hebt tot je apparaat, dan kun je niet meer verbinden met Misskey!"
register: "Apparaat registreren"
already-registered: "Er is al een apparaat geregistreerd"
unregister: "Uitschakelen"
unregistered: "Authenticatie in twee stappen is uitgeschakeld."
enter-password: "Voer het wachtwoord in"
authenticator: "Installeer eerst Google Authenticator op je apparaat:"
howtoinstall: "Hoe installeer ik dit?"
token: "Sleutel"
scan: "Scan daarna de QR-code:"
done: "Voer de op je apparaat getoonde sleutel in:"
submit: "Versturen"
success: "Instellen voltooid!"
failed: "Instellen mislukt. Zorg ervoor dat de sleutel juist is."
info: "Vanaf nu moet je ook de op je apparaat getoonde sleutel tonen bij het inloggen op Misskey."
common/views/components/api-settings.vue:
enter-password: "Voer het wachtwoord in"
console:
parameter: "Parameters"
send: "Versturen"
common/views/components/drive-settings.vue:
in-use: "gebruikt"
stats: "Statistieken"
desktop/views/components/sub-note-content.vue:
private: "(dit bericht is privé)"
poll: "Peilingen"
desktop/views/components/settings.tags.vue:
add: "Toevoegen"
desktop/views/components/taskmanager.vue:
title: "Taakbeheer"
desktop/views/components/timeline.vue:
home: "Startpagina"
local: "Lokaal"
global: "Algemeen"
list: "Lijsten"
desktop/views/components/ui.header.account.vue:
profile: "Je profiel"
lists: "Lijsten"
desktop/views/components/ui.header.nav.vue:
game: "Othello spelen"
desktop/views/components/ui.header.notifications.vue:
title: "Meldingen"
desktop/views/components/ui.header.post.vue:
post: "Nieuw bericht opstellen"
desktop/views/components/ui.header.search.vue:
placeholder: "Zoeken"
desktop/views/components/user-lists-window.vue:
title: "Lijsten"
create-list: "Lijst creëren"
desktop/views/components/user-preview.vue:
notes: "Berichten"
following: "Volgend"
followers: "Volgers"
desktop/views/components/users-list.vue:
all: "Alle"
iknow: "die ik ken"
fetching: "Bezig met laden…"
desktop/views/components/users-list-item.vue:
followed: "Volgt jou"
desktop/views/components/window.vue:
popout: "Uitvouwen"
close: "Sluiten"
admin/views/index.vue:
users: "Gebruiker"
admin/views/dashboard.vue:
notes: "Bericht"
admin/views/abuse.vue:
remove-report: "Verwijderen"
admin/views/instance.vue:
user-recommendation-config: "Aanbevolen gebruikers"
admin/views/charts.vue:
notes: "Bericht"
users: "Gebruiker"
admin/views/drive.vue:
origin:
local: "Lokaal"
delete: "Verwijderen"
admin/views/users.vue:
users:
title: "Gebruiker"
state:
all: "Alle"
origin:
local: "Lokaal"
admin/views/emoji.vue:
add-emoji:
add: "Toevoegen"
emojis:
remove: "Verwijderen"
admin/views/announcements.vue:
remove: "Verwijderen"
add: "Toevoegen"
admin/views/federation.vue:
notes: "Bericht"
users: "Gebruiker"
followers: "Volgers"
status: "Status"
states:
all: "Alle"
desktop/views/pages/welcome.vue:
timeline: "Tijdlijn"
desktop/views/pages/note.vue:
prev: "Vorige notitie"
next: "Volgende notitie"
desktop/views/pages/selectdrive.vue:
title: "Bestand(en) kiezen"
ok: "Oké"
cancel: "Annuleren"
upload: "Bestanden uploaden van je PC"
desktop/views/pages/user-list.users.vue:
users: "Gebruiker"
add-user: "Gebruiker toevoegen"
username: "Gebruikersnaam"
desktop/views/pages/user/user.followers-you-know.vue:
title: "Volgers die je kent"
loading: "Bezig met laden"
no-users: "Geen gebruikers"
desktop/views/pages/user/user.friends.vue:
title: "Frequent beantwoord"
loading: "Bezig met laden"
no-users: "Geen gebruikers"
desktop/views/pages/user/user.photos.vue:
title: "Foto's"
loading: "Bezig met laden"
no-photos: "Geen foto's"
desktop/views/pages/user/user.header.vue:
posts: "Bericht"
following: "Volgend"
followers: "Volgers"
month: "M"
day: "Z"
follows-you: "Volgt jou"
desktop/views/pages/user/user.timeline.vue:
default: "Berichten"
with-replies: "Berichten en antwoorden"
with-media: "Media"
desktop/views/widgets/notifications.vue:
title: "Meldingen"
desktop/views/widgets/polls.vue:
title: "Peilingen"
refresh: "Anderen tonen"
nothing: "Niks"
desktop/views/widgets/post-form.vue:
title: "Bericht"
note: "Bericht"
desktop/views/widgets/profile.vue:
update-banner: "Klik om je omslagfoto te wijzigen"
update-avatar: "Klik om je gebruikersafbeelding te wijzigen"
desktop/views/widgets/trends.vue:
title: "Populair"
refresh: "Anderen tonen"
nothing: "Niks"
desktop/views/widgets/users.vue:
title: "Aanbevolen gebruikers"
refresh: "Anderen tonen"
no-one: "Niemand"
mobile/views/components/drive.vue:
used: "gebruikt"
folder-count: "Map(pen)"
count-separator: ", "
file-count: "Bestand(en)"
nothing-in-drive: "Niks"
folder-is-empty: "Deze map is leeg"
folder-name: "Mapnaam"
url-prompt: "URL van het te uploaden bestand"
mobile/views/components/drive-file-chooser.vue:
select-file: "Kies een bestand"
mobile/views/components/drive-folder-chooser.vue:
select-folder: "Kies een map"
mobile/views/components/drive.file-detail.vue:
download: "Downloaden"
rename: "Naam wijzigen"
move: "Verplaatsen"
hash: "Hash (md5)"
common/views/components/follow-button.vue:
follow: "Volgend"
mobile/views/components/note.vue:
private: "(dit bericht is privé)"
location: "Locatie"
mobile/views/components/note-detail.vue:
reply: "Beantwoorden"
reaction: "Reactie"
private: "(dit bericht is privé)"
location: "Locatie"
mobile/views/components/notifications.vue:
empty: "Geen meldingen"
mobile/views/components/post-form.vue:
add-visible-user: "Gebruiker toevoegen"
submit: "Plaatsen"
reply: "Antwoord"
reply-placeholder: "Deze notitie beantwoorden..."
mobile/views/components/sub-note-content.vue:
private: "(dit bericht is privé)"
media-count: "{} media"
poll: "Peiling"
mobile/views/components/ui.nav.vue:
timeline: "Tijdlijn"
notifications: "Meldingen"
search: "Zoeken"
user-lists: "Lijsten"
game: "Othello spelen"
about: "Over Misskey"
mobile/views/pages/user-lists.vue:
title: "Lijsten"
mobile/views/pages/home.vue:
home: "Startpagina"
local: "Lokaal"
global: "Algemeen"
mobile/views/pages/widgets.vue:
add-widget: "Toevoegen"
mobile/views/pages/widgets/activity.vue:
activity: "Activiteit"
mobile/views/pages/note.vue:
title: "Bericht"
prev: "Vorige notitie"
next: "Volgende notitie"
mobile/views/pages/games/reversi.vue:
reversi: "Othello"
mobile/views/pages/search.vue:
search: "Zoeken"
mobile/views/pages/selectdrive.vue:
select-file: "Kies een bestand"
mobile/views/pages/settings.vue:
signed-in-as: "Ingelogd als {}"
mobile/views/pages/user.vue:
follows-you: "Volgt jou"
following: "Volgend"
followers: "Volgers"
notes: "Berichten"
overview: "Overzicht"
timeline: "Tijdlijn"
media: "Media"
mobile/views/pages/user/home.vue:
recent-notes: "Recente notities"
images: "Afbeeldingen"
activity: "Activiteit"
keywords: "Sleutelwoorden"
domains: "Domeinnamen"
frequently-replied-users: "Frequent beantwoord"
followers-you-know: "Volgers die je kent"
last-used-at: "Laatst actief"
mobile/views/pages/user/home.photos.vue:
no-photos: "Geen foto's"
deck:
home: "Startpagina"
local: "Lokaal"
global: "Algemeen"
notifications: "Meldingen"
list: "Lijsten"
rename: "Naam wijzigen"
deck/deck.user-column.vue:
follows-you: "Volgt jou"
posts: "Bericht"
following: "Volgend"
followers: "Volgers"
images: "Afbeeldingen"
activity: "Activiteit"
timeline: "Tijdlijn"
docs:
edit-this-page-on-github: "Heb je een fout ontdekt of wil je bijdragen aan de documentatie? "
edit-this-page-on-github-link: "Bewerk deze pagina op GitHub!"
api:
entities:
properties: "Eigenschappen"
endpoints:
params: "Parameters"
res: "Antwoord"
props:
name: "Naam"
type: "Type"
description: "Omschrijving"

View File

@@ -1,499 +1 @@
---
meta:
lang: "Norsk Bokmål"
common:
misskey: "En ⭐ av fediverse"
about-title: "En ⭐ av fediverse"
about: "Takk for at du fant Misskey. Misskey er en <b>desentralisert mikroblogging platform</b> født på jorden. Siden den eksisterer sammen med Fediverset (Et univers hvor forskjellige sosiale media-plattformer blir organisert), så blir den gjensidig tilknyttet med andre sosiale media-plattformer. Hvorfor ikke ta en pause fra kjas og mas fra storbyen og hoppe inn i en ny type internett?"
intro:
title: "Hva er Misskey?"
features: "Funksjoner"
rich-contents: "Innlegg"
drive: "Disk"
close: "Lukk"
got-it: "Skjønner!"
notification:
file-uploaded: "Filen ble lastet opp!"
message-from: "Melding fra {}:"
reversi-invited: "Invitert til et spill"
reversi-invited-by: "Invitert av {}:"
notified-by: "Invitert av {}:"
reply-from: "Svar fra {}:"
quoted-by: "Sitert av {}:"
time:
unknown: "ukjent"
future: "fremtidig"
just_now: "akkurat nå"
seconds_ago: "{} sekunder siden"
minutes_ago: "{} minutter siden"
hours_ago: "{} t siden"
days_ago: "{} d siden"
weeks_ago: "{} uke(r) siden"
months_ago: "{} måned(er) siden"
years_ago: "{} år siden"
month-and-day: "{day}/{month}"
trash: "Papirkurv"
drive: "Disk"
home: "Hjem"
followers: "Følgere"
favorites: "Merket som favoritt"
weekday-short:
sunday: "S"
monday: "M"
tuesday: "T"
wednesday: "O"
thursday: "T"
friday: "F"
saturday: "L"
weekday:
sunday: "Søndag"
monday: "Mandag"
tuesday: "Tirsdag"
wednesday: "Onsdag"
thursday: "Torsdag"
friday: "Fredag"
saturday: "Lørdag"
reactions:
like: "Lik"
love: "Elsk"
laugh: "Le"
hmm: "Hmm…?"
surprise: "Wow"
congrats: "Gratulerer!"
angry: "Sint"
confused: "Forvirret"
rip: "RIP"
pudding: "Pudding"
note-visibility:
public: "Offentlig"
home: "Hjem"
followers: "Følgere"
specified: "Direkte"
_settings:
notification: "Notifikasjon"
password: "Passord"
search: "Søk"
delete: "Slett"
loading: "Laster inn..."
update-available: "En ny versjon av Misskey er nå tilgjengelig ({newer}, nåværende versjon er {current}). Last inn siden igjen for at oppdateringen skal tre i kraft."
my-token-regenerated: "Ditt synbol har blitt generert. Du vil nå bli utlogget."
reversi:
black: "Sort"
white: "Hvit"
total: "Totalt"
widgets:
calendar: "Kalender"
memo: "Notis"
trends: "Populært nå"
version: "Versjon"
notifications: "Notifikasjon"
tips: "Tips"
you: "Du"
auth/views/form.vue:
cancel: "Avbryt"
auth/views/index.vue:
loading: "Laster inn..."
common/views/components/games/reversi/reversi.vue:
matching:
cancel: "Avbryt"
common/views/components/games/reversi/reversi.game.vue:
surrender: "Gi opp"
common/views/components/games/reversi/reversi.index.vue:
invite: "Inviter"
rule: "Slik spiller du"
mode-invite: "Inviter"
game-state:
ended: "Ferdig"
playing: "Pågår"
common/views/components/games/reversi/reversi.room.vue:
random: "Tilfeldig"
black-is: "Sort er {}"
rules: "Regler"
waiting-for-both: "Venter på deg"
cancel: "Avbryt"
ready: "Klar"
cancel-ready: "Avbryt \"Klar\""
common/views/components/connect-failed.vue:
title: "Kunne ikke koble til tjeneren."
description: "Det er enten et problem med internettilknytningen din, eller så har tjeneren blitt tatt ned for vedlikehold. {Prøv igjen} senere."
common/views/components/media-banner.vue:
sensitive: "Sensitivt innhold"
common/views/components/theme.vue:
text-color: "Tekstfarge"
base-theme-dark: "Mørk"
theme-name: "Tema navn"
author: "Forfatter"
desc: "Beskrivelse"
common/views/components/cw-button.vue:
hide: "Skjul"
common/views/components/messaging.vue:
you: "Du"
common/views/components/messaging-room.form.vue:
send: "Send"
common/views/components/messaging-room.message.vue:
is-read: "Lest"
common/views/components/nav.vue:
stats: "Statistikk"
status: "Status"
wiki: "Wiki"
donors: "Donatorer"
repository: "Kodelager"
develop: "Utviklere"
common/views/components/note-menu.vue:
detail: "Detaljer"
favorite: "Merket som favoritt"
pin: "Fest til profilen din"
delete: "Slett"
common/views/components/poll.vue:
vote-count: "{} stemmer"
vote: "Stem"
show-result: "Vis resultater"
voted: "Stemt"
common/views/components/poll-editor.vue:
choice-n: "Valg {}"
day: "S"
common/views/components/signin.vue:
username: "Brukernavn"
password: "Passord"
token: "Token"
or: "Eller"
common/views/components/signup.vue:
username: "Brukernavn"
error: "Nettverksfeil"
password: "Passord"
retype: "Gjenta"
recaptcha: "Captcha"
common/views/components/stream-indicator.vue:
connecting: "Tilkobler"
reconnecting: "Kobler til på nytt"
connected: "Tilkoblet"
common/views/components/notification-settings.vue:
title: "Notifikasjon"
common/views/components/github-setting.vue:
detail: "Detaljer..."
common/views/components/discord-setting.vue:
detail: "Detaljer..."
common/views/components/uploader.vue:
waiting: "Venter"
common/views/components/visibility-chooser.vue:
public: "Offentlig"
home: "Hjem"
followers: "Følgere"
specified: "Direkte"
common/views/components/profile-editor.vue:
name: "Navn"
avatar: "Avatar"
banner: "Banner"
save: "Lagre"
export-targets:
following-list: "Følger"
user-lists: "Lister"
common/views/components/user-list-editor.vue:
users: "Bruker"
common/views/widgets/broadcast.vue:
fetching: "Henter"
next: "Neste"
common/views/widgets/calendar.vue:
year: "År {}"
month: "Måned {}"
day: "Dag {}"
today: "I dag:"
this-month: "Denne måneden:"
this-year: "Dette året:"
common/views/widgets/memo.vue:
title: "Notis"
save: "Lagre"
common/views/pages/follow.vue:
follow: "Følg"
desktop:
banner: "Banner"
avatar: "Avatar"
desktop/views/components/calendar.vue:
prev: "Forrige måned"
next: "Neste måned"
desktop/views/components/choose-file-from-drive-window.vue:
cancel: "Avbryt"
ok: "Ok"
desktop/views/components/choose-folder-from-drive-window.vue:
cancel: "Avbryt"
ok: "Ok"
desktop/views/components/crop-window.vue:
cancel: "Avbryt"
ok: "Ok"
desktop/views/components/drive-window.vue:
used: "brukt"
desktop/views/components/drive.file.vue:
avatar: "Avatar"
banner: "Banner"
nsfw: "NSFW"
contextmenu:
rename: "Endre navn"
copied: "Kopiert"
desktop/views/components/drive.folder.vue:
contextmenu:
rename: "Endre navn"
desktop/views/components/drive.vue:
search: "Søk"
desktop/views/components/media-video.vue:
sensitive: "Innholdet er NSFW"
desktop/views/components/game-window.vue:
game: "Reversi"
desktop/views/components/home.vue:
done: "Fullført"
add: "Legg til"
desktop/views/input-dialog.vue:
cancel: "Avbryt"
ok: "Ok"
desktop/views/components/note-detail.vue:
location: "Lokasjon"
desktop/views/components/note.vue:
reply: "Svar"
detail: "Detaljer"
desktop/views/components/notes.vue:
retry: "Prøv på nytt"
desktop/views/components/post-form.vue:
submit: "Send"
reply: "Svar"
posting: "Publiserer"
recent-tags: "Nylig"
visibility: "Synlighet"
error: "Feil"
desktop/views/components/post-form-window.vue:
note: "Nytt innlegg"
reply: "Svar"
desktop/views/components/progress-dialog.vue:
waiting: "Venter"
desktop/views/components/renote-form.vue:
cancel: "Avbryt"
desktop/views/components/settings.2fa.vue:
detail: "Detaljer..."
unregister: "Avregistrer"
token: "Token"
submit: "Send"
common/views/components/media-image.vue:
sensitive: "Innholdet er NSFW"
common/views/components/api-settings.vue:
console:
parameter: "Parametere"
send: "Send"
common/views/components/drive-settings.vue:
in-use: "brukt"
stats: "Statistikk"
common/views/components/mute-and-block.vue:
save: "Lagre"
desktop/views/components/settings.tags.vue:
add: "Legg til"
save: "Lagre"
desktop/views/components/timeline.vue:
home: "Hjem"
local: "Lokalt"
global: "Globalt"
list: "Lister"
list-name: "Liste navn"
desktop/views/components/ui.header.vue:
adjective: "-san"
desktop/views/components/ui.header.account.vue:
lists: "Lister"
admin: "Admin"
desktop/views/components/ui.header.nav.vue:
game: "Spill"
desktop/views/components/ui.header.notifications.vue:
title: "Notifikasjon"
desktop/views/components/ui.header.post.vue:
post: "Skriv nytt innlegg"
desktop/views/components/ui.header.search.vue:
placeholder: "Søk"
desktop/views/components/received-follow-requests-window.vue:
accept: "Godta"
reject: "Avslå"
desktop/views/components/user-lists-window.vue:
title: "Brukerlister"
list-name: "Liste navn"
desktop/views/components/user-preview.vue:
notes: "Innlegg"
following: "Følger"
followers: "Følgere"
desktop/views/components/users-list.vue:
all: "Alle"
iknow: "Du kjenner"
desktop/views/components/window.vue:
close: "Lukk"
admin/views/index.vue:
users: "Bruker"
announcements: "Kunngjøringer"
admin/views/dashboard.vue:
notes: "Innlegg"
drive: "Disk"
admin/views/abuse.vue:
details: "Detaljer"
remove-report: "Slett"
admin/views/instance.vue:
invite: "Inviter"
save: "Lagre"
admin/views/charts.vue:
notes: "Innlegg"
users: "Bruker"
drive: "Disk"
admin/views/drive.vue:
origin:
local: "Lokalt"
delete: "Slett"
admin/views/users.vue:
users:
title: "Bruker"
state:
all: "Alle"
origin:
local: "Lokalt"
admin/views/emoji.vue:
add-emoji:
add: "Legg til"
emojis:
remove: "Slett"
admin/views/announcements.vue:
announcements: "Kunngjøringer"
save: "Lagre"
remove: "Slett"
add: "Legg til"
admin/views/federation.vue:
notes: "Innlegg"
users: "Bruker"
followers: "Følgere"
status: "Status"
states:
all: "Alle"
desktop/views/pages/welcome.vue:
announcements: "Kunngjøringer"
info: "Informasjon"
desktop/views/pages/note.vue:
prev: "Forrige innlegg"
next: "Neste innlegg"
desktop/views/pages/selectdrive.vue:
ok: "Ok"
cancel: "Avbryt"
desktop/views/pages/user-list.users.vue:
users: "Bruker"
username: "Brukernavn"
desktop/views/pages/user/user.followers-you-know.vue:
loading: "Laster inn"
desktop/views/pages/user/user.friends.vue:
loading: "Laster inn"
desktop/views/pages/user/user.photos.vue:
title: "Bilder"
loading: "Laster inn"
desktop/views/pages/user/user.header.vue:
posts: "Innlegg"
following: "Følger"
followers: "Følgere"
month: "M"
day: "S"
desktop/views/pages/user/user.timeline.vue:
default: "Innlegg"
with-replies: "Innlegg og svar"
with-media: "Media"
desktop/views/widgets/notifications.vue:
title: "Notifikasjon"
desktop/views/widgets/polls.vue:
refresh: "Oppdater"
desktop/views/widgets/post-form.vue:
title: "Innlegg"
note: "Innlegg"
desktop/views/widgets/trends.vue:
title: "Populært nå"
refresh: "Oppdater"
desktop/views/widgets/users.vue:
refresh: "Oppdater"
no-one: "Ingen"
mobile/views/components/drive.vue:
used: "brukt"
folder-count: "Mappe(r)"
count-separator: ","
file-count: "Fil(er)"
mobile/views/components/drive.file.vue:
nsfw: "NSFW"
mobile/views/components/drive.file-detail.vue:
rename: "Endre navn"
move: "Flytt"
exif: "EXIF"
nsfw: "NSFW"
mobile/views/components/media-video.vue:
sensitive: "Innholdet er NSFW"
common/views/components/follow-button.vue:
follow: "Følger"
mobile/views/components/note.vue:
location: "Lokasjon"
mobile/views/components/note-detail.vue:
reply: "Svar"
location: "Lokasjon"
mobile/views/components/note-preview.vue:
admin: "admin"
bot: "bot"
cat: "katt"
mobile/views/components/note-sub.vue:
admin: "admin"
bot: "bot"
cat: "katt"
mobile/views/components/post-form.vue:
submit: "Send"
reply: "Svar"
error: "Feil"
mobile/views/components/ui.header.vue:
adjective: "Mr."
mobile/views/components/ui.nav.vue:
notifications: "Notifikasjon"
search: "Søk"
user-lists: "Lister"
game: "Spill"
admin: "Admin"
mobile/views/pages/user-lists.vue:
title: "Lister"
mobile/views/pages/home.vue:
home: "Hjem"
local: "Lokalt"
global: "Globalt"
mobile/views/pages/widgets.vue:
add-widget: "Legg til"
mobile/views/pages/received-follow-requests.vue:
accept: "Godta"
reject: "Avslå"
mobile/views/pages/note.vue:
title: "Innlegg"
prev: "Forrige innlegg"
next: "Neste innlegg"
mobile/views/pages/games/reversi.vue:
reversi: "Reversi"
mobile/views/pages/search.vue:
search: "Søk"
mobile/views/pages/user.vue:
following: "Følger"
followers: "Følgere"
notes: "Innlegg"
overview: "Oversikt"
media: "Media"
mobile/views/pages/user/home.vue:
recent-notes: "Nylige innlegg"
images: "Bilder"
keywords: "Nøkkelord"
deck:
home: "Hjem"
local: "Lokalt"
global: "Globalt"
notifications: "Notifikasjon"
list: "Lister"
rename: "Endre navn"
deck/deck.user-column.vue:
posts: "Innlegg"
following: "Følger"
followers: "Følgere"
images: "Bilder"
docs:
api:
entities:
properties: "Egenskaper"
endpoints:
params: "Parametere"
res: "Respons"
props:
name: "Navn"
type: "Type"
description: "Beskrivelse"

File diff suppressed because it is too large Load Diff

View File

@@ -1,298 +1 @@
---
meta:
lang: "Português"
common:
misskey: "Uma ⭐ do fediverso"
about-title: "Uma ⭐ do fediverso."
about: "Obrigado por encontrar Misskey. Uma <b>plataforma descentralizada de microblog</b> nascida na Terra. Já que ela existe no Fediverso (um universo onde várias plataformas de mídia social são organizadas), ela é ligada com outras plataformas.Por que você não tira uma folga do agito e confusão da cidade, e mergulha em uma nova internet?"
intro:
title: "O que é Misskey?"
about: "Misskey é um <b>serviço de microblog descentralizado</b>. Personalização sofisticada da interface, variedade de reações a posts, armazenamento de arquivos grátis com gerenciamento integrado e outras funções avançadas estão disponíveis. Um sistema em rede chamado \"Fediverso\" permite que nos comuniquemos com usuários em outras redes sociais. Se você postar algo, por exemplo, seu post não será mandado apenas para o Misskey, mas também para o Mastodon. Apenas imagine que o planeta está enviando ondas de rádio para outros planetas para se comunicar."
features: "Recursos"
rich-contents: "Post"
rich-contents-desc: "Apenas poste suas ideias, temas do momento e qualquer coisa que você queira compartilhar. Você pode querer decorar suas palavras, anexar suas imagens favoritas, enviar arquivos, inclusive vídeos ou criar uma enquete. Essas são as coisas que você pode fazer em Misskey."
reaction: "Reações"
adblock:
detected: "Por favor, desative o bloqueador de anúncios."
warning: "Alguns recursos podem não estar disponíveis ou apresentar mal funcionamento se o bloqueio de anúncios estiver ativado. <strong>Misskey não está usando anúncios</strong>"
application-authorization: "Aplicativos autorizados"
close: "Fechar"
do-not-copy-paste: "Por favor, não digite ou copie o código aqui. A conta pode ser comprometida."
got-it: "Entendi!"
customization-tips:
title: "Dicas de personalização"
gotit: "Entendi!"
notification:
file-uploaded: "Arquivo enviado!"
message-from: "Mensagem de {}:"
reversi-invited: "Convidado a jogar"
reversi-invited-by: "Convidado por {}:"
notified-by: "Notificado por {}:"
reply-from: "Resposta de {}:"
quoted-by: "Citado por {}:"
time:
unknown: "Desconhecido"
future: "futuro"
just_now: "agora"
seconds_ago: "{} sec atrás"
minutes_ago: "{} min atrás"
hours_ago: "{} h atrás"
days_ago: "{} d atrás"
weeks_ago: "{} sem atrás"
months_ago: "{} m atrás"
years_ago: "{} ano(s) atrás"
month-and-day: "{day}/{month}"
trash: "Lixo"
timeline: "Linha do tempo"
followers: "Seguidores"
weekday-short:
sunday: "Dom"
monday: "Seg"
tuesday: "Ter"
wednesday: "Qua"
thursday: "Qui"
friday: "Sex"
saturday: "Seb"
weekday:
sunday: "domingo"
monday: "segunda"
tuesday: "terça"
wednesday: "quarta"
thursday: "quinta"
friday: "sexta"
saturday: "sábado"
reactions:
like: "Curtir"
love: "Amei"
laugh: "Riso"
hmm: "Hmm...?"
surprise: "Uau"
congrats: "Parabéns!"
angry: "Raiva"
confused: "Confuso"
rip: "RIP"
pudding: "Pudim"
note-visibility:
followers: "Seguidores"
note-placeholders:
a: "O que está fazendo?"
b: "O que está acontecendo?"
c: "No que está pensando?"
d: "Quer postar algo?"
e: "Escreva aqui"
f: "Esperando você escrever."
_settings:
timeline: "Linha do tempo"
search: "Buscar"
delete: "Apagar"
loading: "Carregando"
update-available-title: "Atualização disponível"
update-available: "Uma nova versão de Misskey está disponível ({newer}). A versão atual é {current}. Recarregue a página para atualizar."
my-token-regenerated: "Seu token foi recriado, portanto você foi deslogado."
verified-user: "Conta verificada"
reversi:
drawn: "Empatado"
my-turn: "Seu turno"
opponent-turn: "Turno do oponente"
black: "Pretas"
white: "Brancas"
total: "Total"
widgets:
analog-clock: "Relógio analógico"
profile: "Perfil"
calendar: "Calendário"
timemachine: "Calendário (máquina do tempo)"
activity: "Atividade"
rss: "Leitor de RSS"
memo: "Nota adesiva"
trends: "Tendências"
posts-monitor: "Gráfico de publicações"
version: "Versão"
notifications: "Notificações"
users: "Usuário sugeridos"
polls: "Enquetes"
post-form: "Formulário de publicação"
server: "Informações do servidor"
nav: "Navegação"
tips: "Dicas"
hashtags: "Hashtags"
you: "Você"
auth/views/form.vue:
permission-ask: "Este aplicativo precisa das seguintes permissões:"
account-read: "Ver informações da conta."
account-write: "Modificar informações da conta."
note-write: "Publicar"
cancel: "Cancelar"
accept: "Permitir acesso"
auth/views/index.vue:
loading: "Carregando"
already-authorized: "Este aplicativo já foi autorizado"
allowed: "Aplicativos com acesso autorizado"
callback-url: "Voltando ao aplicativo"
please-go-back: "Por favor, volte ao aplicativo."
error: "A sessão não existe."
sign-in: "Por favor, entre."
common/views/pages/explore.vue:
verified-users: "Conta verificada"
common/views/components/games/reversi/reversi.index.vue:
invite: "Convidar"
rule: "Como jogar"
mode-invite: "Convidar"
mode-invite-desc: "Convidar um usuário para jogar"
invitations: "Você foi convidado!"
my-games: "Meu jogo"
all-games: "Todos os jogos"
enter-username: "Digite o nome de usuário."
game-state:
ended: "Terminado"
common/views/components/games/reversi/reversi.room.vue:
rules: "Regras"
cancel: "Cancelar"
common/views/components/connect-failed.troubleshooter.vue:
flush: "Limpar o cache"
common/views/components/theme.vue:
desc: "Descrição"
common/views/components/cw-button.vue:
poll: "Enquetes"
common/views/components/messaging.vue:
you: "Você"
common/views/components/note-menu.vue:
delete: "Apagar"
common/views/components/poll-editor.vue:
day: "Dom"
common/views/components/visibility-chooser.vue:
followers: "Seguidores"
common/views/components/profile-editor.vue:
name: "Nome"
export-targets:
following-list: "Seguindo"
common/views/widgets/posts-monitor.vue:
title: "Gráfico de publicações"
common/views/widgets/memo.vue:
title: "Nota adesiva"
common/views/pages/follow.vue:
follow: "Seguindo"
desktop/views/components/choose-file-from-drive-window.vue:
upload: "Envie arquivos do seu dispositivo"
ok: "OK"
desktop/views/components/choose-folder-from-drive-window.vue:
ok: "OK"
desktop/views/components/crop-window.vue:
ok: "OK"
desktop/views/input-dialog.vue:
ok: "OK"
common/views/components/api-settings.vue:
console:
parameter: "Parâmetros"
desktop/views/components/sub-note-content.vue:
poll: "Enquetes"
desktop/views/components/user-preview.vue:
following: "Seguindo"
followers: "Seguidores"
desktop/views/components/users-list-item.vue:
followed: "Te segue"
admin/views/abuse.vue:
remove-report: "Apagar"
admin/views/instance.vue:
invite: "Convidar"
admin/views/drive.vue:
delete: "Apagar"
admin/views/users.vue:
users:
state:
verified: "Conta verificada"
admin/views/emoji.vue:
emojis:
remove: "Apagar"
admin/views/announcements.vue:
remove: "Apagar"
admin/views/federation.vue:
followers: "Seguidores"
desktop/views/pages/welcome.vue:
timeline: "Timeline"
powered-by-misskey: "Desenvolvido por <b>Misskey</b>."
desktop/views/pages/drive.vue:
title: "Drive Misskey"
desktop/views/pages/note.vue:
prev: "Nota anterior"
next: "Próxima nota"
desktop/views/pages/selectdrive.vue:
title: "Selecione um arquivo"
ok: "OK"
cancel: "Cancelar"
upload: "Envie arquivos do seu dispositivo"
desktop/views/pages/search.vue:
not-available: "A pesquisa está desligada nas configurações desta instância."
desktop/views/pages/user/user.followers-you-know.vue:
loading: "Carregando"
desktop/views/pages/user/user.friends.vue:
loading: "Carregando"
desktop/views/pages/user/user.photos.vue:
loading: "Carregando"
desktop/views/pages/user/user.header.vue:
following: "Seguindo"
followers: "Seguidores"
month: "Seg"
day: "Dom"
follows-you: "Te segue"
desktop/views/pages/user/user.timeline.vue:
with-media: "Mídia"
desktop/views/widgets/polls.vue:
title: "Enquetes"
common/views/components/follow-button.vue:
follow: "Seguindo"
mobile/views/components/sub-note-content.vue:
poll: "Enquetes"
mobile/views/components/ui.nav.vue:
timeline: "Linha do tempo"
mobile/views/pages/widgets.vue:
customization-tips: "Dicas de personalização"
mobile/views/pages/note.vue:
prev: "Nota anterior"
next: "Próxima nota"
mobile/views/pages/search.vue:
search: "Pesquisar"
mobile/views/pages/user.vue:
follows-you: "Te segue"
following: "Seguindo"
followers: "Seguidores"
notes: "Posts"
timeline: "Linha do tempo"
media: "Mídia"
mobile/views/pages/user/home.vue:
recent-notes: "Notas recentes"
images: "Imagens"
activity: "Atividade"
keywords: "Palavras chave"
domains: "Domínios"
followers-you-know: "Seguidores que você conhece"
last-used-at: "Ativo pela última vez"
mobile/views/pages/user/home.photos.vue:
no-photos: "Sem fotos"
deck/deck.user-column.vue:
follows-you: "Te segue"
following: "Seguindo"
followers: "Seguidores"
images: "Imagens"
timeline: "Linha do tempo"
docs:
edit-this-page-on-github-link: "Edite esta página no GitHub!"
api:
entities:
properties: "Propriedades"
endpoints:
params: "Parâmetros"
no-params: "Sem parâmetros"
res: "Resposta"
show-src-link: "Veja o código no GitHub"
generated: "Este documento foi gerado pelas definições da API."
props:
name: "Nome"
type: "Tipo"
description: "Descrição"
dev/views/index.vue:
manage-apps: "Gerenciar aplicativos"
dev/views/new-app.vue:
account-read: "Ver informações da conta."
account-write: "Modificar informações da conta."
note-write: "Publicar"

View File

@@ -1,148 +1 @@
---
meta:
lang: "Русский язык"
common:
misskey: "Мы — ⭐ fediverse"
about-title: "Мы — ⭐ fediverse"
about: "Спасибо, что нашли Misskey. Misskey — это <b>децентрализованная платформа для микроблоггинга</b> родом с планеты Земля. Поскольку она существует внутри Fediverse (вселенной различных социальных платформ), она связана с другими платформами. Отдохните от шума большого города — и познакомьтесь с новым интернетом."
intro:
title: "Что такое Misskey?"
about: "Misskey - это <b>децентрализованный сервис микроблогинга</b> с открытым исходным кодом. Он имеет такие функции, как: навороченный, полностью настраиваемый пользовательский интерфейс, множество реакций на посты, бесплатное хранилище файлов с интегрированной системой управления и ещё куча передовых фишек. А ещё сетевая система под названием “Fediverse” позволяет нам общаться с пользователями других социальных сетей. Например, если ты что-нибудь запостишь, то твой пост будет отослан не только в Misskey, но ещё и mastodon. Просто представь, что планета посылает микроволны на другую планету для коммуникации."
features: "Особенности"
rich-contents: "Посты"
rich-contents-desc: "Просто выложи свою идею, актуальные темы и всё, что тебе хочется показать миру. Ты можешь декорировать свои слова, прикреплять свои любимые картинки, отправлять файлы с фильмами и создать голосование - это те вещи, которые ты можешь сделать с помощью Misskey!"
reaction: "Реакции"
reaction-desc: "Самый лёгкий способ выразить свои эмоции. Misskey позволяет добавлять различные виды реакций к постам других людей. Эмоциональный опыт из Misskey никогда не появится в других социальных сетях, позволяющих только жать “лайки”."
ui: "Интерфейс"
ui-desc: "Нет такого интерфейса, понравившегося всем. Поэтому у Misskey имеется пользовательский интерфейс, широко настраиваемый под ваши вкусы. Создай себе уникальную домашнюю страницу редактируя, подстраивая оформление ленты и размещая виджеты, которые тоже можно кастомизировать."
drive: "Хранилище файлов"
drive-desc: "Хотите запостить картинку, которую уже отправляли ранее? Хочется сортировать, переименовать и создать папку для ваших выложенных файлов? Тогда Misskey Drive - это лучшее решение для вас. Очень лёгкий способ делиться своими файлами онлайн."
outro: "Попробуйте будущие, уникальные для Misskey функции своими глазами! Если чувствуете, что это не в вашем вкусе, то попробуйте другие инстанции, ведь Misskey - это децентрализованная социальная сеть, так что ты можешь с лёгкостью найти себе товарищей. И наконец, GLHF!"
adblock:
detected: "Пожалуйста, отключите блокировщик рекламы."
warning: "Некоторые функции перестанут быть доступными или будут работать неправильно, если включена блокировка рекламы. <strong>В Misskey нет рекламы</strong>."
application-authorization: "Авторизация приложений"
close: "Закрыть"
do-not-copy-paste: "Пожалуйста, не вводите и не вставляйте сюда код. Аккаунту может угрожать опасность."
load-more: "Загрузить больше"
enter-password: "Пожалуйста, введите ваш пароль"
customization-tips:
title: "Советы по настройке"
gotit: "Понятно!"
notification:
file-uploaded: "Файл отправлен!"
message-from: "Сообщение от {}:"
reversi-invited: "Приглашён в игру"
reversi-invited-by: "Был приглашён {}:"
notified-by: "Был приглашён {}:"
reply-from: "Ответ от {}:"
quoted-by: "Цитировано {}:"
time:
unknown: "неизвестно"
future: "сейчас"
just_now: "сейчас"
seconds_ago: "{} секунд назад"
minutes_ago: "{} минут назад"
hours_ago: "{} часов назад"
days_ago: "{} дней назад"
weeks_ago: "{} недель назад"
months_ago: "{} месяцев назад"
years_ago: "{} лет назад"
month-and-day: "{day}.{month}"
trash: "Мусорное ведро"
drive: "Drive"
messaging: "Чат"
weekday-short:
sunday: "Вс"
monday: "Пн"
tuesday: "Вт"
wednesday: "Ср"
thursday: "Чт"
friday: "Пт"
saturday: "Сб"
weekday:
sunday: "Воскресенье"
monday: "Понедельник"
tuesday: "Вторник"
wednesday: "Среда"
thursday: "Четверг"
friday: "Пятница"
saturday: "Суббота"
reactions:
like: "Нравится"
laugh: "Ха-Ха"
rip: "RIP"
do-not-use-in-production: "Эта сборка для разработчиков. Не используйте в продакшне."
error:
title: "Что-то пошло не так :("
retry: "Повторить"
reversi:
drawn: "Ничья"
my-turn: "Ваш ход"
opponent-turn: "Ход оппонента"
turn-of: "Ход {name}"
past-turn-of: "Ход {name}"
won: "{name} победил"
black: "Чёрный"
white: "Белый"
total: "Всего"
this-turn: "Ход {count}"
widgets:
analog-clock: "Аналоговые часы"
profile: "Профиль"
calendar: "Календарь"
timemachine: "Календарь (машина времени)"
activity: "Активность"
rss: "Ридер RSS"
memo: "Заметка"
trends: "Популярное"
photo-stream: "Фотопоток"
slideshow: "Слайдшоу"
version: "Версия"
notifications: "Уведомления"
users: "Рекомендованные пользователи"
polls: "Голосования"
server: "Информация о сервере"
hashtags: "Хэштеги"
dev: "Не удалось создать приложение. Пожалуйста, попробуйте ещё раз."
ai-chan-kawaii: "Ai-chan kawaii!"
auth/views/form.vue:
share-access: "Вы разрешаете <i>{name}</i> получить доступ к вашему аккаунту?"
common/views/components/games/reversi/reversi.index.vue:
game-state:
ended: "Завершено"
playing: "В процессе"
common/views/components/games/reversi/reversi.room.vue:
settings-of-the-game: "Настройки игры"
random: "Случайно"
black-or-white: "Чёрные/Белые"
black-is: "{} ходит чёрными"
rules: "Правила"
settings-of-the-bot: "Настройки бота"
this-game-is-started-soon: "Игра вот-вот начнётся"
waiting-for-other: "Ожидание оппонента"
cancel: "Отмена"
ready: "Готов"
common/views/components/connect-failed.vue:
title: "Невозможно подключиться к серверу"
common/views/components/cw-button.vue:
poll: "Голосования"
common/views/components/poll-editor.vue:
day: "Вс"
common/views/widgets/memo.vue:
title: "Заметка"
desktop/views/components/sub-note-content.vue:
poll: "Голосования"
admin/views/dashboard.vue:
drive: "Хранилище файлов"
admin/views/charts.vue:
drive: "Хранилище файлов"
desktop/views/pages/user/user.header.vue:
month: "Пн"
day: "Вс"
desktop/views/widgets/polls.vue:
title: "Голосования"
mobile/views/components/sub-note-content.vue:
poll: "Голосования"
mobile/views/pages/widgets.vue:
customization-tips: "Советы по настройке"

File diff suppressed because it is too large Load Diff

View File

@@ -1,88 +1 @@
---
meta:
lang: "中文(繁体)"
common:
intro:
title: "什麽是 Misskey 呢?"
rich-contents: "發佈"
reaction: "回應"
drive: "雲端硬碟"
adblock:
detected: "請禁用廣告封鎖器"
close: "關閉"
enter-password: "請輸入密碼"
2fa: "雙重身份驗證"
dark-mode: "夜間模式"
signup: "註冊"
signout: "登出"
notification:
reversi-invited: "您已被邀請加入壹場遊戲"
reversi-invited-by: "來自{}的邀請"
notified-by: "來自{}的邀請"
time:
future: "未來"
just_now: "剛剛"
drive: "雲端硬碟"
weekday:
sunday: "週日"
monday: "週一"
tuesday: "週二"
wednesday: "週三"
thursday: "週四"
friday: "週五"
saturday: "週六"
reactions:
like: "贊"
love: "喜歡"
congrats: "恭喜"
_settings:
password: "密碼"
font-size: "字體大小"
font-size-x-small: "小"
font-size-small: "較小"
deck-column-width-wide: "寬"
timeline: "時間軸"
common/views/components/connect-failed.troubleshooter.vue:
flush: "清除快取"
common/views/components/theme.vue:
light-themes: "淺色主題"
dark-themes: "深色主題"
install-a-theme: "安裝主題"
save-created-theme: "保存主題"
common/views/components/signin.vue:
signin-with-twitter: "用 Twitter 帳號登入"
signin-with-github: "用 GitHub 帳號登入"
signin-with-discord: "用 Discord 帳號登入"
login-failed: "登錄失敗。 請檢查用戶名和密碼。"
common/views/components/signup.vue:
invitation-code: "邀請碼"
username: "用戶名"
available: "可用"
too-long: "請不要超過20個字元"
password: "密碼"
password-placeholder: "建議至少8個字元"
common/views/components/stream-indicator.vue:
connecting: "正在連線"
reconnecting: "正在重新連線"
connected: "已建立連線"
common/views/components/integration-settings.vue:
disconnect: "中斷連線"
common/views/components/github-setting.vue:
reconnect: "重新連線"
disconnect: "中斷連線"
common/views/components/discord-setting.vue:
reconnect: "重新連線"
disconnect: "中斷連線"
common/views/components/language-settings.vue:
recommended: "推薦"
auto: "自動"
specify-language: "指定語言"
common/views/components/profile-editor.vue:
title: "個人資料"
name: "名稱"
birthday: "生日:"
privacy: "隱私"
admin/views/dashboard.vue:
drive: "雲端硬碟"
admin/views/charts.vue:
drive: "雲端硬碟"

View File

@@ -0,0 +1,485 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class Init1000000000000 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TYPE "log_level_enum" AS ENUM('error', 'warning', 'info', 'success', 'debug')`);
await queryRunner.query(`CREATE TABLE "log" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "domain" character varying(64) array NOT NULL DEFAULT '{}'::varchar[], "level" "log_level_enum" NOT NULL, "worker" character varying(8) NOT NULL, "machine" character varying(128) NOT NULL, "message" character varying(1024) NOT NULL, "data" jsonb NOT NULL DEFAULT '{}', CONSTRAINT "PK_350604cbdf991d5930d9e618fbd" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_8e4eb51a35d81b64dda28eed0a" ON "log" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_8cb40cfc8f3c28261e6f887b03" ON "log" ("domain") `);
await queryRunner.query(`CREATE INDEX "IDX_584b536b49e53ac81beb39a177" ON "log" ("level") `);
await queryRunner.query(`CREATE TABLE "drive_folder" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "name" character varying(128) NOT NULL, "userId" character varying(32), "parentId" character varying(32), CONSTRAINT "PK_7a0c089191f5ebdc214e0af808a" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_02878d441ceae15ce060b73daf" ON "drive_folder" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_f4fc06e49c0171c85f1c48060d" ON "drive_folder" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_00ceffb0cdc238b3233294f08f" ON "drive_folder" ("parentId") `);
await queryRunner.query(`CREATE TABLE "drive_file" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32), "userHost" character varying(128), "md5" character varying(32) NOT NULL, "name" character varying(256) NOT NULL, "type" character varying(128) NOT NULL, "size" integer NOT NULL, "comment" character varying(512), "properties" jsonb NOT NULL DEFAULT '{}', "storedInternal" boolean NOT NULL, "url" character varying(512) NOT NULL, "thumbnailUrl" character varying(512), "webpublicUrl" character varying(512), "accessKey" character varying(256), "thumbnailAccessKey" character varying(256), "webpublicAccessKey" character varying(256), "uri" character varying(512), "src" character varying(512), "folderId" character varying(32), "isSensitive" boolean NOT NULL DEFAULT false, "isLink" boolean NOT NULL DEFAULT false, CONSTRAINT "PK_43ddaaaf18c9e68029b7cbb032e" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_c8dfad3b72196dd1d6b5db168a" ON "drive_file" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_860fa6f6c7df5bb887249fba22" ON "drive_file" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_92779627994ac79277f070c91e" ON "drive_file" ("userHost") `);
await queryRunner.query(`CREATE INDEX "IDX_37bb9a1b4585f8a3beb24c62d6" ON "drive_file" ("md5") `);
await queryRunner.query(`CREATE INDEX "IDX_a40b8df8c989d7db937ea27cf6" ON "drive_file" ("type") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_d85a184c2540d2deba33daf642" ON "drive_file" ("accessKey") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_e74022ce9a074b3866f70e0d27" ON "drive_file" ("thumbnailAccessKey") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_c55b2b7c284d9fef98026fc88e" ON "drive_file" ("webpublicAccessKey") `);
await queryRunner.query(`CREATE INDEX "IDX_e5848eac4940934e23dbc17581" ON "drive_file" ("uri") `);
await queryRunner.query(`CREATE INDEX "IDX_bb90d1956dafc4068c28aa7560" ON "drive_file" ("folderId") `);
await queryRunner.query(`CREATE TABLE "user" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "updatedAt" TIMESTAMP WITH TIME ZONE, "lastFetchedAt" TIMESTAMP WITH TIME ZONE, "username" character varying(128) NOT NULL, "usernameLower" character varying(128) NOT NULL, "name" character varying(128), "followersCount" integer NOT NULL DEFAULT 0, "followingCount" integer NOT NULL DEFAULT 0, "notesCount" integer NOT NULL DEFAULT 0, "avatarId" character varying(32), "bannerId" character varying(32), "tags" character varying(128) array NOT NULL DEFAULT '{}'::varchar[], "avatarUrl" character varying(512), "bannerUrl" character varying(512), "avatarColor" character varying(32), "bannerColor" character varying(32), "isSuspended" boolean NOT NULL DEFAULT false, "isSilenced" boolean NOT NULL DEFAULT false, "isLocked" boolean NOT NULL DEFAULT false, "isBot" boolean NOT NULL DEFAULT false, "isCat" boolean NOT NULL DEFAULT false, "isAdmin" boolean NOT NULL DEFAULT false, "isModerator" boolean NOT NULL DEFAULT false, "isVerified" boolean NOT NULL DEFAULT false, "emojis" character varying(128) array NOT NULL DEFAULT '{}'::varchar[], "host" character varying(128), "inbox" character varying(512), "sharedInbox" character varying(512), "featured" character varying(512), "uri" character varying(512), "token" character(16), CONSTRAINT "UQ_a854e557b1b14814750c7c7b0c9" UNIQUE ("token"), CONSTRAINT "REL_58f5c71eaab331645112cf8cfa" UNIQUE ("avatarId"), CONSTRAINT "REL_afc64b53f8db3707ceb34eb28e" UNIQUE ("bannerId"), CONSTRAINT "PK_cace4a159ff9f2512dd42373760" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_e11e649824a45d8ed01d597fd9" ON "user" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_80ca6e6ef65fb9ef34ea8c90f4" ON "user" ("updatedAt") `);
await queryRunner.query(`CREATE INDEX "IDX_a27b942a0d6dcff90e3ee9b5e8" ON "user" ("usernameLower") `);
await queryRunner.query(`CREATE INDEX "IDX_fa99d777623947a5b05f394cae" ON "user" ("tags") `);
await queryRunner.query(`CREATE INDEX "IDX_3252a5df8d5bbd16b281f7799e" ON "user" ("host") `);
await queryRunner.query(`CREATE INDEX "IDX_be623adaa4c566baf5d29ce0c8" ON "user" ("uri") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_a854e557b1b14814750c7c7b0c" ON "user" ("token") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_5deb01ae162d1d70b80d064c27" ON "user" ("usernameLower", "host") `);
await queryRunner.query(`CREATE TABLE "app" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32), "secret" character varying(64) NOT NULL, "name" character varying(128) NOT NULL, "description" character varying(512) NOT NULL, "permission" character varying(64) array NOT NULL, "callbackUrl" character varying(512), CONSTRAINT "PK_9478629fc093d229df09e560aea" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_048a757923ed8b157e9895da53" ON "app" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_3f5b0899ef90527a3462d7c2cb" ON "app" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_f49922d511d666848f250663c4" ON "app" ("secret") `);
await queryRunner.query(`CREATE TABLE "access_token" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "token" character varying(128) NOT NULL, "hash" character varying(128) NOT NULL, "userId" character varying(32) NOT NULL, "appId" character varying(32) NOT NULL, CONSTRAINT "PK_f20f028607b2603deabd8182d12" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_70ba8f6af34bc924fc9e12adb8" ON "access_token" ("token") `);
await queryRunner.query(`CREATE INDEX "IDX_64c327441248bae40f7d92f34f" ON "access_token" ("hash") `);
await queryRunner.query(`CREATE INDEX "IDX_9949557d0e1b2c19e5344c171e" ON "access_token" ("userId") `);
await queryRunner.query(`CREATE TYPE "note_visibility_enum" AS ENUM('public', 'home', 'followers', 'specified')`);
await queryRunner.query(`CREATE TABLE "note" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "replyId" character varying(32), "renoteId" character varying(32), "text" text, "name" character varying(256), "cw" character varying(512), "appId" character varying(32), "userId" character varying(32) NOT NULL, "viaMobile" boolean NOT NULL DEFAULT false, "localOnly" boolean NOT NULL DEFAULT false, "renoteCount" smallint NOT NULL DEFAULT 0, "repliesCount" smallint NOT NULL DEFAULT 0, "reactions" jsonb NOT NULL DEFAULT '{}', "visibility" "note_visibility_enum" NOT NULL, "uri" character varying(512), "score" integer NOT NULL DEFAULT 0, "fileIds" character varying(32) array NOT NULL DEFAULT '{}'::varchar[], "attachedFileTypes" character varying(256) array NOT NULL DEFAULT '{}'::varchar[], "visibleUserIds" character varying(32) array NOT NULL DEFAULT '{}'::varchar[], "mentions" character varying(32) array NOT NULL DEFAULT '{}'::varchar[], "mentionedRemoteUsers" text NOT NULL DEFAULT '[]', "emojis" character varying(128) array NOT NULL DEFAULT '{}'::varchar[], "tags" character varying(128) array NOT NULL DEFAULT '{}'::varchar[], "hasPoll" boolean NOT NULL DEFAULT false, "geo" jsonb DEFAULT null, "userHost" character varying(128), "replyUserId" character varying(32), "replyUserHost" character varying(128), "renoteUserId" character varying(32), "renoteUserHost" character varying(128), CONSTRAINT "PK_96d0c172a4fba276b1bbed43058" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_e7c0567f5261063592f022e9b5" ON "note" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_17cb3553c700a4985dff5a30ff" ON "note" ("replyId") `);
await queryRunner.query(`CREATE INDEX "IDX_52ccc804d7c69037d558bac4c9" ON "note" ("renoteId") `);
await queryRunner.query(`CREATE INDEX "IDX_5b87d9d19127bd5d92026017a7" ON "note" ("userId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_153536c67d05e9adb24e99fc2b" ON "note" ("uri") `);
await queryRunner.query(`CREATE INDEX "IDX_51c063b6a133a9cb87145450f5" ON "note" ("fileIds") `);
await queryRunner.query(`CREATE INDEX "IDX_25dfc71b0369b003a4cd434d0b" ON "note" ("attachedFileTypes") `);
await queryRunner.query(`CREATE INDEX "IDX_796a8c03959361f97dc2be1d5c" ON "note" ("visibleUserIds") `);
await queryRunner.query(`CREATE INDEX "IDX_54ebcb6d27222913b908d56fd8" ON "note" ("mentions") `);
await queryRunner.query(`CREATE INDEX "IDX_88937d94d7443d9a99a76fa5c0" ON "note" ("tags") `);
await queryRunner.query(`CREATE INDEX "IDX_7125a826ab192eb27e11d358a5" ON "note" ("userHost") `);
await queryRunner.query(`CREATE TABLE "poll_vote" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, "choice" integer NOT NULL, CONSTRAINT "PK_fd002d371201c472490ba89c6a0" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_0fb627e1c2f753262a74f0562d" ON "poll_vote" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_66d2bd2ee31d14bcc23069a89f" ON "poll_vote" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_aecfbd5ef60374918e63ee95fa" ON "poll_vote" ("noteId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_50bd7164c5b78f1f4a42c4d21f" ON "poll_vote" ("userId", "noteId", "choice") `);
await queryRunner.query(`CREATE TABLE "note_reaction" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, "reaction" character varying(128) NOT NULL, CONSTRAINT "PK_767ec729b108799b587a3fcc9cf" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_01f4581f114e0ebd2bbb876f0b" ON "note_reaction" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_13761f64257f40c5636d0ff95e" ON "note_reaction" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_45145e4953780f3cd5656f0ea6" ON "note_reaction" ("noteId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_ad0c221b25672daf2df320a817" ON "note_reaction" ("userId", "noteId") `);
await queryRunner.query(`CREATE TABLE "note_watching" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, "noteUserId" character varying(32) NOT NULL, CONSTRAINT "PK_49286fdb23725945a74aa27d757" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_318cdf42a9cfc11f479bd802bb" ON "note_watching" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_b0134ec406e8d09a540f818288" ON "note_watching" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_03e7028ab8388a3f5e3ce2a861" ON "note_watching" ("noteId") `);
await queryRunner.query(`CREATE INDEX "IDX_44499765eec6b5489d72c4253b" ON "note_watching" ("noteUserId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_a42c93c69989ce1d09959df4cf" ON "note_watching" ("userId", "noteId") `);
await queryRunner.query(`CREATE TABLE "note_unread" ("id" character varying(32) NOT NULL, "userId" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, "noteUserId" character varying(32) NOT NULL, "isSpecified" boolean NOT NULL, CONSTRAINT "PK_1904eda61a784f57e6e51fa9c1f" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_56b0166d34ddae49d8ef7610bb" ON "note_unread" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_e637cba4dc4410218c4251260e" ON "note_unread" ("noteId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_d908433a4953cc13216cd9c274" ON "note_unread" ("userId", "noteId") `);
await queryRunner.query(`CREATE TABLE "notification" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "notifieeId" character varying(32) NOT NULL, "notifierId" character varying(32) NOT NULL, "type" character varying(32) NOT NULL, "isRead" boolean NOT NULL DEFAULT false, "noteId" character varying(32), "reaction" character varying(128), "choice" integer, CONSTRAINT "PK_705b6c7cdf9b2c2ff7ac7872cb7" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_b11a5e627c41d4dc3170f1d370" ON "notification" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_3c601b70a1066d2c8b517094cb" ON "notification" ("notifieeId") `);
await queryRunner.query(`CREATE TABLE "meta" ("id" character varying(32) NOT NULL, "name" character varying(128), "description" character varying(1024), "maintainerName" character varying(128), "maintainerEmail" character varying(128), "announcements" jsonb NOT NULL DEFAULT '[]', "disableRegistration" boolean NOT NULL DEFAULT false, "disableLocalTimeline" boolean NOT NULL DEFAULT false, "disableGlobalTimeline" boolean NOT NULL DEFAULT false, "enableEmojiReaction" boolean NOT NULL DEFAULT true, "useStarForReactionFallback" boolean NOT NULL DEFAULT false, "langs" character varying(64) array NOT NULL DEFAULT '{}'::varchar[], "hiddenTags" character varying(256) array NOT NULL DEFAULT '{}'::varchar[], "blockedHosts" character varying(256) array NOT NULL DEFAULT '{}'::varchar[], "mascotImageUrl" character varying(512) DEFAULT '/assets/ai.png', "bannerUrl" character varying(512), "errorImageUrl" character varying(512) DEFAULT 'https://xn--931a.moe/aiart/yubitun.png', "iconUrl" character varying(512), "cacheRemoteFiles" boolean NOT NULL DEFAULT true, "proxyAccount" character varying(128), "enableRecaptcha" boolean NOT NULL DEFAULT false, "recaptchaSiteKey" character varying(64), "recaptchaSecretKey" character varying(64), "localDriveCapacityMb" integer NOT NULL DEFAULT 1024, "remoteDriveCapacityMb" integer NOT NULL DEFAULT 32, "maxNoteTextLength" integer NOT NULL DEFAULT 500, "summalyProxy" character varying(128), "enableEmail" boolean NOT NULL DEFAULT false, "email" character varying(128), "smtpSecure" boolean NOT NULL DEFAULT false, "smtpHost" character varying(128), "smtpPort" integer, "smtpUser" character varying(128), "smtpPass" character varying(128), "enableServiceWorker" boolean NOT NULL DEFAULT false, "swPublicKey" character varying(128), "swPrivateKey" character varying(128), "enableTwitterIntegration" boolean NOT NULL DEFAULT false, "twitterConsumerKey" character varying(128), "twitterConsumerSecret" character varying(128), "enableGithubIntegration" boolean NOT NULL DEFAULT false, "githubClientId" character varying(128), "githubClientSecret" character varying(128), "enableDiscordIntegration" boolean NOT NULL DEFAULT false, "discordClientId" character varying(128), "discordClientSecret" character varying(128), CONSTRAINT "PK_c4c17a6c2bd7651338b60fc590b" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TABLE "following" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "followeeId" character varying(32) NOT NULL, "followerId" character varying(32) NOT NULL, "followerHost" character varying(128), "followerInbox" character varying(512), "followerSharedInbox" character varying(512), "followeeHost" character varying(128), "followeeInbox" character varying(512), "followeeSharedInbox" character varying(512), CONSTRAINT "PK_c76c6e044bdf76ecf8bfb82a645" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_582f8fab771a9040a12961f3e7" ON "following" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_24e0042143a18157b234df186c" ON "following" ("followeeId") `);
await queryRunner.query(`CREATE INDEX "IDX_6516c5a6f3c015b4eed39978be" ON "following" ("followerId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_307be5f1d1252e0388662acb96" ON "following" ("followerId", "followeeId") `);
await queryRunner.query(`CREATE TABLE "instance" ("id" character varying(32) NOT NULL, "caughtAt" TIMESTAMP WITH TIME ZONE NOT NULL, "host" character varying(128) NOT NULL, "system" character varying(64), "usersCount" integer NOT NULL DEFAULT 0, "notesCount" integer NOT NULL DEFAULT 0, "followingCount" integer NOT NULL DEFAULT 0, "followersCount" integer NOT NULL DEFAULT 0, "driveUsage" integer NOT NULL DEFAULT 0, "driveFiles" integer NOT NULL DEFAULT 0, "latestRequestSentAt" TIMESTAMP WITH TIME ZONE, "latestStatus" integer, "latestRequestReceivedAt" TIMESTAMP WITH TIME ZONE, "lastCommunicatedAt" TIMESTAMP WITH TIME ZONE NOT NULL, "isNotResponding" boolean NOT NULL DEFAULT false, "isMarkedAsClosed" boolean NOT NULL DEFAULT false, CONSTRAINT "PK_eaf60e4a0c399c9935413e06474" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_2cd3b2a6b4cf0b910b260afe08" ON "instance" ("caughtAt") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_8d5afc98982185799b160e10eb" ON "instance" ("host") `);
await queryRunner.query(`CREATE TABLE "muting" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "muteeId" character varying(32) NOT NULL, "muterId" character varying(32) NOT NULL, CONSTRAINT "PK_2e92d06c8b5c602eeb27ca9ba48" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_f86d57fbca33c7a4e6897490cc" ON "muting" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_ec96b4fed9dae517e0dbbe0675" ON "muting" ("muteeId") `);
await queryRunner.query(`CREATE INDEX "IDX_93060675b4a79a577f31d260c6" ON "muting" ("muterId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_1eb9d9824a630321a29fd3b290" ON "muting" ("muterId", "muteeId") `);
await queryRunner.query(`CREATE TABLE "sw_subscription" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "endpoint" character varying(512) NOT NULL, "auth" character varying(256) NOT NULL, "publickey" character varying(128) NOT NULL, CONSTRAINT "PK_e8f763631530051b95eb6279b91" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_97754ca6f2baff9b4abb7f853d" ON "sw_subscription" ("userId") `);
await queryRunner.query(`CREATE TABLE "blocking" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "blockeeId" character varying(32) NOT NULL, "blockerId" character varying(32) NOT NULL, CONSTRAINT "PK_e5d9a541cc1965ee7e048ea09dd" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_b9a354f7941c1e779f3b33aea6" ON "blocking" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_2cd4a2743a99671308f5417759" ON "blocking" ("blockeeId") `);
await queryRunner.query(`CREATE INDEX "IDX_0627125f1a8a42c9a1929edb55" ON "blocking" ("blockerId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_98a1bc5cb30dfd159de056549f" ON "blocking" ("blockerId", "blockeeId") `);
await queryRunner.query(`CREATE TABLE "user_list" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "name" character varying(128) NOT NULL, CONSTRAINT "PK_87bab75775fd9b1ff822b656402" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_b7fcefbdd1c18dce86687531f9" ON "user_list" ("userId") `);
await queryRunner.query(`CREATE TABLE "user_list_joining" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "userListId" character varying(32) NOT NULL, CONSTRAINT "PK_11abb3768da1c5f8de101c9df45" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_d844bfc6f3f523a05189076efa" ON "user_list_joining" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_605472305f26818cc93d1baaa7" ON "user_list_joining" ("userListId") `);
await queryRunner.query(`CREATE TABLE "hashtag" ("id" character varying(32) NOT NULL, "name" character varying(128) NOT NULL, "mentionedUserIds" character varying(32) array NOT NULL, "mentionedUsersCount" integer NOT NULL DEFAULT 0, "mentionedLocalUserIds" character varying(32) array NOT NULL, "mentionedLocalUsersCount" integer NOT NULL DEFAULT 0, "mentionedRemoteUserIds" character varying(32) array NOT NULL, "mentionedRemoteUsersCount" integer NOT NULL DEFAULT 0, "attachedUserIds" character varying(32) array NOT NULL, "attachedUsersCount" integer NOT NULL DEFAULT 0, "attachedLocalUserIds" character varying(32) array NOT NULL, "attachedLocalUsersCount" integer NOT NULL DEFAULT 0, "attachedRemoteUserIds" character varying(32) array NOT NULL, "attachedRemoteUsersCount" integer NOT NULL DEFAULT 0, CONSTRAINT "PK_cb36eb8af8412bfa978f1165d78" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_347fec870eafea7b26c8a73bac" ON "hashtag" ("name") `);
await queryRunner.query(`CREATE INDEX "IDX_2710a55f826ee236ea1a62698f" ON "hashtag" ("mentionedUsersCount") `);
await queryRunner.query(`CREATE INDEX "IDX_0e206cec573f1edff4a3062923" ON "hashtag" ("mentionedLocalUsersCount") `);
await queryRunner.query(`CREATE INDEX "IDX_4c02d38a976c3ae132228c6fce" ON "hashtag" ("mentionedRemoteUsersCount") `);
await queryRunner.query(`CREATE INDEX "IDX_d57f9030cd3af7f63ffb1c267c" ON "hashtag" ("attachedUsersCount") `);
await queryRunner.query(`CREATE INDEX "IDX_0c44bf4f680964145f2a68a341" ON "hashtag" ("attachedLocalUsersCount") `);
await queryRunner.query(`CREATE INDEX "IDX_0b03cbcd7e6a7ce068efa8ecc2" ON "hashtag" ("attachedRemoteUsersCount") `);
await queryRunner.query(`CREATE TABLE "note_favorite" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, CONSTRAINT "PK_af0da35a60b9fa4463a62082b36" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_47f4b1892f5d6ba8efb3057d81" ON "note_favorite" ("userId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_0f4fb9ad355f3effff221ef245" ON "note_favorite" ("userId", "noteId") `);
await queryRunner.query(`CREATE TABLE "abuse_user_report" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "reporterId" character varying(32) NOT NULL, "comment" character varying(512) NOT NULL, CONSTRAINT "PK_87873f5f5cc5c321a1306b2d18c" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_db2098070b2b5a523c58181f74" ON "abuse_user_report" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_d049123c413e68ca52abe73420" ON "abuse_user_report" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_04cc96756f89d0b7f9473e8cdf" ON "abuse_user_report" ("reporterId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_5cd442c3b2e74fdd99dae20243" ON "abuse_user_report" ("userId", "reporterId") `);
await queryRunner.query(`CREATE TABLE "registration_ticket" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "code" character varying(64) NOT NULL, CONSTRAINT "PK_f11696b6fafcf3662d4292734f8" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_0ff69e8dfa9fe31bb4a4660f59" ON "registration_ticket" ("code") `);
await queryRunner.query(`CREATE TABLE "messaging_message" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "recipientId" character varying(32) NOT NULL, "text" character varying(4096), "isRead" boolean NOT NULL DEFAULT false, "fileId" character varying(32), CONSTRAINT "PK_db398fd79dc95d0eb8c30456eaa" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_e21cd3646e52ef9c94aaf17c2e" ON "messaging_message" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_5377c307783fce2b6d352e1203" ON "messaging_message" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_cac14a4e3944454a5ce7daa514" ON "messaging_message" ("recipientId") `);
await queryRunner.query(`CREATE TABLE "signin" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "ip" character varying(128) NOT NULL, "headers" jsonb NOT NULL, "success" boolean NOT NULL, CONSTRAINT "PK_9e96ddc025712616fc492b3b588" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_2c308dbdc50d94dc625670055f" ON "signin" ("userId") `);
await queryRunner.query(`CREATE TABLE "auth_session" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "token" character varying(128) NOT NULL, "userId" character varying(32), "appId" character varying(32) NOT NULL, CONSTRAINT "PK_19354ed146424a728c1112a8cbf" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_62cb09e1129f6ec024ef66e183" ON "auth_session" ("token") `);
await queryRunner.query(`CREATE TABLE "follow_request" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "followeeId" character varying(32) NOT NULL, "followerId" character varying(32) NOT NULL, "requestId" character varying(128), "followerHost" character varying(128), "followerInbox" character varying(512), "followerSharedInbox" character varying(512), "followeeHost" character varying(128), "followeeInbox" character varying(512), "followeeSharedInbox" character varying(512), CONSTRAINT "PK_53a9aa3725f7a3deb150b39dbfc" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_12c01c0d1a79f77d9f6c15fadd" ON "follow_request" ("followeeId") `);
await queryRunner.query(`CREATE INDEX "IDX_a7fd92dd6dc519e6fb435dd108" ON "follow_request" ("followerId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_d54a512b822fac7ed52800f6b4" ON "follow_request" ("followerId", "followeeId") `);
await queryRunner.query(`CREATE TABLE "emoji" ("id" character varying(32) NOT NULL, "updatedAt" TIMESTAMP WITH TIME ZONE, "name" character varying(128) NOT NULL, "host" character varying(128), "url" character varying(512) NOT NULL, "uri" character varying(512), "type" character varying(64), "aliases" character varying(128) array NOT NULL DEFAULT '{}'::varchar[], CONSTRAINT "PK_df74ce05e24999ee01ea0bc50a3" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_b37dafc86e9af007e3295c2781" ON "emoji" ("name") `);
await queryRunner.query(`CREATE INDEX "IDX_5900e907bb46516ddf2871327c" ON "emoji" ("host") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_4f4d35e1256c84ae3d1f0eab10" ON "emoji" ("name", "host") `);
await queryRunner.query(`CREATE TABLE "reversi_game" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "startedAt" TIMESTAMP WITH TIME ZONE, "user1Id" character varying(32) NOT NULL, "user2Id" character varying(32) NOT NULL, "user1Accepted" boolean NOT NULL DEFAULT false, "user2Accepted" boolean NOT NULL DEFAULT false, "black" integer, "isStarted" boolean NOT NULL DEFAULT false, "isEnded" boolean NOT NULL DEFAULT false, "winnerId" character varying(32), "surrendered" character varying(32), "logs" jsonb NOT NULL DEFAULT '[]', "map" character varying(64) array NOT NULL, "bw" character varying(32) NOT NULL, "isLlotheo" boolean NOT NULL DEFAULT false, "canPutEverywhere" boolean NOT NULL DEFAULT false, "loopedBoard" boolean NOT NULL DEFAULT false, "form1" jsonb DEFAULT null, "form2" jsonb DEFAULT null, "crc32" character varying(32), CONSTRAINT "PK_76b30eeba71b1193ad7c5311c3f" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_b46ec40746efceac604142be1c" ON "reversi_game" ("createdAt") `);
await queryRunner.query(`CREATE TABLE "reversi_matching" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "parentId" character varying(32) NOT NULL, "childId" character varying(32) NOT NULL, CONSTRAINT "PK_880bd0afbab232f21c8b9d146cf" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_b604d92d6c7aec38627f6eaf16" ON "reversi_matching" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_3b25402709dd9882048c2bbade" ON "reversi_matching" ("parentId") `);
await queryRunner.query(`CREATE INDEX "IDX_e247b23a3c9b45f89ec1299d06" ON "reversi_matching" ("childId") `);
await queryRunner.query(`CREATE TABLE "user_note_pining" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, CONSTRAINT "PK_a6a2dad4ae000abce2ea9d9b103" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_bfbc6f79ba4007b4ce5097f08d" ON "user_note_pining" ("userId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_410cd649884b501c02d6e72738" ON "user_note_pining" ("userId", "noteId") `);
await queryRunner.query(`CREATE TYPE "poll_notevisibility_enum" AS ENUM('public', 'home', 'followers', 'specified')`);
await queryRunner.query(`CREATE TABLE "poll" ("noteId" character varying(32) NOT NULL, "expiresAt" TIMESTAMP WITH TIME ZONE, "multiple" boolean NOT NULL, "choices" character varying(128) array NOT NULL DEFAULT '{}'::varchar[], "votes" integer array NOT NULL, "noteVisibility" "poll_notevisibility_enum" NOT NULL, "userId" character varying(32) NOT NULL, "userHost" character varying(128), CONSTRAINT "REL_da851e06d0dfe2ef397d8b1bf1" UNIQUE ("noteId"), CONSTRAINT "PK_da851e06d0dfe2ef397d8b1bf1b" PRIMARY KEY ("noteId"))`);
await queryRunner.query(`CREATE INDEX "IDX_0610ebcfcfb4a18441a9bcdab2" ON "poll" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_7fa20a12319c7f6dc3aed98c0a" ON "poll" ("userHost") `);
await queryRunner.query(`CREATE TABLE "user_keypair" ("userId" character varying(32) NOT NULL, "publicKey" character varying(4096) NOT NULL, "privateKey" character varying(4096) NOT NULL, CONSTRAINT "REL_f4853eb41ab722fe05f81cedeb" UNIQUE ("userId"), CONSTRAINT "PK_f4853eb41ab722fe05f81cedeb6" PRIMARY KEY ("userId"))`);
await queryRunner.query(`CREATE TABLE "user_publickey" ("userId" character varying(32) NOT NULL, "keyId" character varying(256) NOT NULL, "keyPem" character varying(4096) NOT NULL, CONSTRAINT "REL_10c146e4b39b443ede016f6736" UNIQUE ("userId"), CONSTRAINT "PK_10c146e4b39b443ede016f6736d" PRIMARY KEY ("userId"))`);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_171e64971c780ebd23fae140bb" ON "user_publickey" ("keyId") `);
await queryRunner.query(`CREATE TABLE "user_profile" ("userId" character varying(32) NOT NULL, "location" character varying(128), "birthday" character(10), "description" character varying(1024), "fields" jsonb NOT NULL DEFAULT '[]', "url" character varying(512), "email" character varying(128), "emailVerifyCode" character varying(128), "emailVerified" boolean NOT NULL DEFAULT false, "twoFactorTempSecret" character varying(128), "twoFactorSecret" character varying(128), "twoFactorEnabled" boolean NOT NULL DEFAULT false, "password" character varying(128), "clientData" jsonb NOT NULL DEFAULT '{}', "autoWatch" boolean NOT NULL DEFAULT false, "autoAcceptFollowed" boolean NOT NULL DEFAULT false, "alwaysMarkNsfw" boolean NOT NULL DEFAULT false, "carefulBot" boolean NOT NULL DEFAULT false, "twitter" boolean NOT NULL DEFAULT false, "twitterAccessToken" character varying(64) DEFAULT null, "twitterAccessTokenSecret" character varying(64) DEFAULT null, "twitterUserId" character varying(64) DEFAULT null, "twitterScreenName" character varying(64) DEFAULT null, "github" boolean NOT NULL DEFAULT false, "githubAccessToken" character varying(64) DEFAULT null, "githubId" integer DEFAULT null, "githubLogin" character varying(64) DEFAULT null, "discord" boolean NOT NULL DEFAULT false, "discordAccessToken" character varying(64) DEFAULT null, "discordRefreshToken" character varying(64) DEFAULT null, "discordExpiresDate" integer DEFAULT null, "discordId" character varying(64) DEFAULT null, "discordUsername" character varying(64) DEFAULT null, "discordDiscriminator" character varying(64) DEFAULT null, "userHost" character varying(128), CONSTRAINT "REL_51cb79b5555effaf7d69ba1cff" UNIQUE ("userId"), CONSTRAINT "PK_51cb79b5555effaf7d69ba1cff9" PRIMARY KEY ("userId"))`);
await queryRunner.query(`CREATE INDEX "IDX_dce530b98e454793dac5ec2f5a" ON "user_profile" ("userHost") `);
await queryRunner.query(`CREATE TYPE "__chart__active_users_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__active_users" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__active_users_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___local_count" bigint NOT NULL, "___remote_count" bigint NOT NULL, CONSTRAINT "PK_317237a9f733b970604a11e314f" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__drive_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__drive" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__drive_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___local_totalCount" bigint NOT NULL, "___local_totalSize" bigint NOT NULL, "___local_incCount" bigint NOT NULL, "___local_incSize" bigint NOT NULL, "___local_decCount" bigint NOT NULL, "___local_decSize" bigint NOT NULL, "___remote_totalCount" bigint NOT NULL, "___remote_totalSize" bigint NOT NULL, "___remote_incCount" bigint NOT NULL, "___remote_incSize" bigint NOT NULL, "___remote_decCount" bigint NOT NULL, "___remote_decSize" bigint NOT NULL, CONSTRAINT "PK_f96bc548a765cd4b3b354221ce7" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__federation_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__federation" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__federation_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___instance_total" bigint NOT NULL, "___instance_inc" bigint NOT NULL, "___instance_dec" bigint NOT NULL, CONSTRAINT "PK_b39dcd31a0fe1a7757e348e85fd" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__hashtag_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__hashtag" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__hashtag_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___local_count" bigint NOT NULL, "___remote_count" bigint NOT NULL, CONSTRAINT "PK_c32f1ea2b44a5d2f7881e37f8f9" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__instance_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__instance" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__instance_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___requests_failed" bigint NOT NULL, "___requests_succeeded" bigint NOT NULL, "___requests_received" bigint NOT NULL, "___notes_total" bigint NOT NULL, "___notes_inc" bigint NOT NULL, "___notes_dec" bigint NOT NULL, "___notes_diffs_normal" bigint NOT NULL, "___notes_diffs_reply" bigint NOT NULL, "___notes_diffs_renote" bigint NOT NULL, "___users_total" bigint NOT NULL, "___users_inc" bigint NOT NULL, "___users_dec" bigint NOT NULL, "___following_total" bigint NOT NULL, "___following_inc" bigint NOT NULL, "___following_dec" bigint NOT NULL, "___followers_total" bigint NOT NULL, "___followers_inc" bigint NOT NULL, "___followers_dec" bigint NOT NULL, "___drive_totalFiles" bigint NOT NULL, "___drive_totalUsage" bigint NOT NULL, "___drive_incFiles" bigint NOT NULL, "___drive_incUsage" bigint NOT NULL, "___drive_decFiles" bigint NOT NULL, "___drive_decUsage" bigint NOT NULL, CONSTRAINT "PK_1267c67c7c2d47b4903975f2c00" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__network_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__network" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__network_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___incomingRequests" bigint NOT NULL, "___outgoingRequests" bigint NOT NULL, "___totalTime" bigint NOT NULL, "___incomingBytes" bigint NOT NULL, "___outgoingBytes" bigint NOT NULL, CONSTRAINT "PK_bc4290c2e27fad14ef0c1ca93f3" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__notes_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__notes" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__notes_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___local_total" bigint NOT NULL, "___local_inc" bigint NOT NULL, "___local_dec" bigint NOT NULL, "___local_diffs_normal" bigint NOT NULL, "___local_diffs_reply" bigint NOT NULL, "___local_diffs_renote" bigint NOT NULL, "___remote_total" bigint NOT NULL, "___remote_inc" bigint NOT NULL, "___remote_dec" bigint NOT NULL, "___remote_diffs_normal" bigint NOT NULL, "___remote_diffs_reply" bigint NOT NULL, "___remote_diffs_renote" bigint NOT NULL, CONSTRAINT "PK_0aec823fa85c7f901bdb3863b14" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__per_user_drive_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__per_user_drive" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__per_user_drive_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___totalCount" bigint NOT NULL, "___totalSize" bigint NOT NULL, "___incCount" bigint NOT NULL, "___incSize" bigint NOT NULL, "___decCount" bigint NOT NULL, "___decSize" bigint NOT NULL, CONSTRAINT "PK_d0ef23d24d666e1a44a0cd3d208" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__per_user_following_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__per_user_following" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__per_user_following_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___local_followings_total" bigint NOT NULL, "___local_followings_inc" bigint NOT NULL, "___local_followings_dec" bigint NOT NULL, "___local_followers_total" bigint NOT NULL, "___local_followers_inc" bigint NOT NULL, "___local_followers_dec" bigint NOT NULL, "___remote_followings_total" bigint NOT NULL, "___remote_followings_inc" bigint NOT NULL, "___remote_followings_dec" bigint NOT NULL, "___remote_followers_total" bigint NOT NULL, "___remote_followers_inc" bigint NOT NULL, "___remote_followers_dec" bigint NOT NULL, CONSTRAINT "PK_85bb1b540363a29c2fec83bd907" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__per_user_notes_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__per_user_notes" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__per_user_notes_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___total" bigint NOT NULL, "___inc" bigint NOT NULL, "___dec" bigint NOT NULL, "___diffs_normal" bigint NOT NULL, "___diffs_reply" bigint NOT NULL, "___diffs_renote" bigint NOT NULL, CONSTRAINT "PK_334acf6e915af2f29edc11b8e50" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__per_user_reaction_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__per_user_reaction" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__per_user_reaction_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___local_count" bigint NOT NULL, "___remote_count" bigint NOT NULL, CONSTRAINT "PK_984f54dae441e65b633e8d27a7f" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__test_grouped_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__test_grouped" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__test_grouped_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___foo_total" bigint NOT NULL, "___foo_inc" bigint NOT NULL, "___foo_dec" bigint NOT NULL, CONSTRAINT "PK_f4a2b175d308695af30d4293272" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__test_unique_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__test_unique" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__test_unique_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___foo" bigint NOT NULL, CONSTRAINT "PK_409bac9c97cc612d8500012319d" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__test_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__test" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__test_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___foo_total" bigint NOT NULL, "___foo_inc" bigint NOT NULL, "___foo_dec" bigint NOT NULL, CONSTRAINT "PK_b4bc31dffbd1b785276a3ecfc1e" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE TYPE "__chart__users_span_enum" AS ENUM('hour', 'day')`);
await queryRunner.query(`CREATE TABLE "__chart__users" ("id" SERIAL NOT NULL, "date" integer NOT NULL, "group" character varying(128), "span" "__chart__users_span_enum" NOT NULL, "unique" jsonb NOT NULL DEFAULT '{}', "___local_total" bigint NOT NULL, "___local_inc" bigint NOT NULL, "___local_dec" bigint NOT NULL, "___remote_total" bigint NOT NULL, "___remote_inc" bigint NOT NULL, "___remote_dec" bigint NOT NULL, CONSTRAINT "PK_4dfcf2c78d03524b9eb2c99d328" PRIMARY KEY ("id"))`);
await queryRunner.query(`ALTER TABLE "drive_folder" ADD CONSTRAINT "FK_f4fc06e49c0171c85f1c48060d2" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "drive_folder" ADD CONSTRAINT "FK_00ceffb0cdc238b3233294f08f2" FOREIGN KEY ("parentId") REFERENCES "drive_folder"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "drive_file" ADD CONSTRAINT "FK_860fa6f6c7df5bb887249fba22e" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "drive_file" ADD CONSTRAINT "FK_bb90d1956dafc4068c28aa7560a" FOREIGN KEY ("folderId") REFERENCES "drive_folder"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user" ADD CONSTRAINT "FK_58f5c71eaab331645112cf8cfa5" FOREIGN KEY ("avatarId") REFERENCES "drive_file"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user" ADD CONSTRAINT "FK_afc64b53f8db3707ceb34eb28e2" FOREIGN KEY ("bannerId") REFERENCES "drive_file"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "app" ADD CONSTRAINT "FK_3f5b0899ef90527a3462d7c2cb3" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "access_token" ADD CONSTRAINT "FK_9949557d0e1b2c19e5344c171e9" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "access_token" ADD CONSTRAINT "FK_a3ff16c90cc87a82a0b5959e560" FOREIGN KEY ("appId") REFERENCES "app"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note" ADD CONSTRAINT "FK_17cb3553c700a4985dff5a30ff5" FOREIGN KEY ("replyId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note" ADD CONSTRAINT "FK_52ccc804d7c69037d558bac4c96" FOREIGN KEY ("renoteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note" ADD CONSTRAINT "FK_ec5c201576192ba8904c345c5cc" FOREIGN KEY ("appId") REFERENCES "app"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note" ADD CONSTRAINT "FK_5b87d9d19127bd5d92026017a7b" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "poll_vote" ADD CONSTRAINT "FK_66d2bd2ee31d14bcc23069a89f8" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "poll_vote" ADD CONSTRAINT "FK_aecfbd5ef60374918e63ee95fa7" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_reaction" ADD CONSTRAINT "FK_13761f64257f40c5636d0ff95ee" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_reaction" ADD CONSTRAINT "FK_45145e4953780f3cd5656f0ea6a" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_watching" ADD CONSTRAINT "FK_b0134ec406e8d09a540f8182888" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_watching" ADD CONSTRAINT "FK_03e7028ab8388a3f5e3ce2a8619" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_unread" ADD CONSTRAINT "FK_56b0166d34ddae49d8ef7610bb9" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_unread" ADD CONSTRAINT "FK_e637cba4dc4410218c4251260e4" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "notification" ADD CONSTRAINT "FK_3c601b70a1066d2c8b517094cb9" FOREIGN KEY ("notifieeId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "notification" ADD CONSTRAINT "FK_3b4e96eec8d36a8bbb9d02aa710" FOREIGN KEY ("notifierId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "notification" ADD CONSTRAINT "FK_769cb6b73a1efe22ddf733ac453" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "following" ADD CONSTRAINT "FK_24e0042143a18157b234df186c3" FOREIGN KEY ("followeeId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "following" ADD CONSTRAINT "FK_6516c5a6f3c015b4eed39978be5" FOREIGN KEY ("followerId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "muting" ADD CONSTRAINT "FK_ec96b4fed9dae517e0dbbe0675c" FOREIGN KEY ("muteeId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "muting" ADD CONSTRAINT "FK_93060675b4a79a577f31d260c67" FOREIGN KEY ("muterId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "sw_subscription" ADD CONSTRAINT "FK_97754ca6f2baff9b4abb7f853dd" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "blocking" ADD CONSTRAINT "FK_2cd4a2743a99671308f5417759e" FOREIGN KEY ("blockeeId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "blocking" ADD CONSTRAINT "FK_0627125f1a8a42c9a1929edb552" FOREIGN KEY ("blockerId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_list" ADD CONSTRAINT "FK_b7fcefbdd1c18dce86687531f99" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_list_joining" ADD CONSTRAINT "FK_d844bfc6f3f523a05189076efaa" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_list_joining" ADD CONSTRAINT "FK_605472305f26818cc93d1baaa74" FOREIGN KEY ("userListId") REFERENCES "user_list"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_favorite" ADD CONSTRAINT "FK_47f4b1892f5d6ba8efb3057d81a" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "note_favorite" ADD CONSTRAINT "FK_0e00498f180193423c992bc4370" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" ADD CONSTRAINT "FK_d049123c413e68ca52abe734203" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" ADD CONSTRAINT "FK_04cc96756f89d0b7f9473e8cdf3" FOREIGN KEY ("reporterId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "messaging_message" ADD CONSTRAINT "FK_5377c307783fce2b6d352e1203b" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "messaging_message" ADD CONSTRAINT "FK_cac14a4e3944454a5ce7daa5142" FOREIGN KEY ("recipientId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "messaging_message" ADD CONSTRAINT "FK_535def119223ac05ad3fa9ef64b" FOREIGN KEY ("fileId") REFERENCES "drive_file"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "signin" ADD CONSTRAINT "FK_2c308dbdc50d94dc625670055f7" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "auth_session" ADD CONSTRAINT "FK_c072b729d71697f959bde66ade0" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "auth_session" ADD CONSTRAINT "FK_dbe037d4bddd17b03a1dc778dee" FOREIGN KEY ("appId") REFERENCES "app"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "follow_request" ADD CONSTRAINT "FK_12c01c0d1a79f77d9f6c15fadd2" FOREIGN KEY ("followeeId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "follow_request" ADD CONSTRAINT "FK_a7fd92dd6dc519e6fb435dd108f" FOREIGN KEY ("followerId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "reversi_game" ADD CONSTRAINT "FK_f7467510c60a45ce5aca6292743" FOREIGN KEY ("user1Id") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "reversi_game" ADD CONSTRAINT "FK_6649a4e8c5d5cf32fb03b5da9f6" FOREIGN KEY ("user2Id") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "reversi_matching" ADD CONSTRAINT "FK_3b25402709dd9882048c2bbade0" FOREIGN KEY ("parentId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "reversi_matching" ADD CONSTRAINT "FK_e247b23a3c9b45f89ec1299d066" FOREIGN KEY ("childId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_note_pining" ADD CONSTRAINT "FK_bfbc6f79ba4007b4ce5097f08d6" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_note_pining" ADD CONSTRAINT "FK_68881008f7c3588ad7ecae471cf" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "poll" ADD CONSTRAINT "FK_da851e06d0dfe2ef397d8b1bf1b" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_keypair" ADD CONSTRAINT "FK_f4853eb41ab722fe05f81cedeb6" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_publickey" ADD CONSTRAINT "FK_10c146e4b39b443ede016f6736d" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_profile" ADD CONSTRAINT "FK_51cb79b5555effaf7d69ba1cff9" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" DROP CONSTRAINT "FK_51cb79b5555effaf7d69ba1cff9"`);
await queryRunner.query(`ALTER TABLE "user_publickey" DROP CONSTRAINT "FK_10c146e4b39b443ede016f6736d"`);
await queryRunner.query(`ALTER TABLE "user_keypair" DROP CONSTRAINT "FK_f4853eb41ab722fe05f81cedeb6"`);
await queryRunner.query(`ALTER TABLE "poll" DROP CONSTRAINT "FK_da851e06d0dfe2ef397d8b1bf1b"`);
await queryRunner.query(`ALTER TABLE "user_note_pining" DROP CONSTRAINT "FK_68881008f7c3588ad7ecae471cf"`);
await queryRunner.query(`ALTER TABLE "user_note_pining" DROP CONSTRAINT "FK_bfbc6f79ba4007b4ce5097f08d6"`);
await queryRunner.query(`ALTER TABLE "reversi_matching" DROP CONSTRAINT "FK_e247b23a3c9b45f89ec1299d066"`);
await queryRunner.query(`ALTER TABLE "reversi_matching" DROP CONSTRAINT "FK_3b25402709dd9882048c2bbade0"`);
await queryRunner.query(`ALTER TABLE "reversi_game" DROP CONSTRAINT "FK_6649a4e8c5d5cf32fb03b5da9f6"`);
await queryRunner.query(`ALTER TABLE "reversi_game" DROP CONSTRAINT "FK_f7467510c60a45ce5aca6292743"`);
await queryRunner.query(`ALTER TABLE "follow_request" DROP CONSTRAINT "FK_a7fd92dd6dc519e6fb435dd108f"`);
await queryRunner.query(`ALTER TABLE "follow_request" DROP CONSTRAINT "FK_12c01c0d1a79f77d9f6c15fadd2"`);
await queryRunner.query(`ALTER TABLE "auth_session" DROP CONSTRAINT "FK_dbe037d4bddd17b03a1dc778dee"`);
await queryRunner.query(`ALTER TABLE "auth_session" DROP CONSTRAINT "FK_c072b729d71697f959bde66ade0"`);
await queryRunner.query(`ALTER TABLE "signin" DROP CONSTRAINT "FK_2c308dbdc50d94dc625670055f7"`);
await queryRunner.query(`ALTER TABLE "messaging_message" DROP CONSTRAINT "FK_535def119223ac05ad3fa9ef64b"`);
await queryRunner.query(`ALTER TABLE "messaging_message" DROP CONSTRAINT "FK_cac14a4e3944454a5ce7daa5142"`);
await queryRunner.query(`ALTER TABLE "messaging_message" DROP CONSTRAINT "FK_5377c307783fce2b6d352e1203b"`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" DROP CONSTRAINT "FK_04cc96756f89d0b7f9473e8cdf3"`);
await queryRunner.query(`ALTER TABLE "abuse_user_report" DROP CONSTRAINT "FK_d049123c413e68ca52abe734203"`);
await queryRunner.query(`ALTER TABLE "note_favorite" DROP CONSTRAINT "FK_0e00498f180193423c992bc4370"`);
await queryRunner.query(`ALTER TABLE "note_favorite" DROP CONSTRAINT "FK_47f4b1892f5d6ba8efb3057d81a"`);
await queryRunner.query(`ALTER TABLE "user_list_joining" DROP CONSTRAINT "FK_605472305f26818cc93d1baaa74"`);
await queryRunner.query(`ALTER TABLE "user_list_joining" DROP CONSTRAINT "FK_d844bfc6f3f523a05189076efaa"`);
await queryRunner.query(`ALTER TABLE "user_list" DROP CONSTRAINT "FK_b7fcefbdd1c18dce86687531f99"`);
await queryRunner.query(`ALTER TABLE "blocking" DROP CONSTRAINT "FK_0627125f1a8a42c9a1929edb552"`);
await queryRunner.query(`ALTER TABLE "blocking" DROP CONSTRAINT "FK_2cd4a2743a99671308f5417759e"`);
await queryRunner.query(`ALTER TABLE "sw_subscription" DROP CONSTRAINT "FK_97754ca6f2baff9b4abb7f853dd"`);
await queryRunner.query(`ALTER TABLE "muting" DROP CONSTRAINT "FK_93060675b4a79a577f31d260c67"`);
await queryRunner.query(`ALTER TABLE "muting" DROP CONSTRAINT "FK_ec96b4fed9dae517e0dbbe0675c"`);
await queryRunner.query(`ALTER TABLE "following" DROP CONSTRAINT "FK_6516c5a6f3c015b4eed39978be5"`);
await queryRunner.query(`ALTER TABLE "following" DROP CONSTRAINT "FK_24e0042143a18157b234df186c3"`);
await queryRunner.query(`ALTER TABLE "notification" DROP CONSTRAINT "FK_769cb6b73a1efe22ddf733ac453"`);
await queryRunner.query(`ALTER TABLE "notification" DROP CONSTRAINT "FK_3b4e96eec8d36a8bbb9d02aa710"`);
await queryRunner.query(`ALTER TABLE "notification" DROP CONSTRAINT "FK_3c601b70a1066d2c8b517094cb9"`);
await queryRunner.query(`ALTER TABLE "note_unread" DROP CONSTRAINT "FK_e637cba4dc4410218c4251260e4"`);
await queryRunner.query(`ALTER TABLE "note_unread" DROP CONSTRAINT "FK_56b0166d34ddae49d8ef7610bb9"`);
await queryRunner.query(`ALTER TABLE "note_watching" DROP CONSTRAINT "FK_03e7028ab8388a3f5e3ce2a8619"`);
await queryRunner.query(`ALTER TABLE "note_watching" DROP CONSTRAINT "FK_b0134ec406e8d09a540f8182888"`);
await queryRunner.query(`ALTER TABLE "note_reaction" DROP CONSTRAINT "FK_45145e4953780f3cd5656f0ea6a"`);
await queryRunner.query(`ALTER TABLE "note_reaction" DROP CONSTRAINT "FK_13761f64257f40c5636d0ff95ee"`);
await queryRunner.query(`ALTER TABLE "poll_vote" DROP CONSTRAINT "FK_aecfbd5ef60374918e63ee95fa7"`);
await queryRunner.query(`ALTER TABLE "poll_vote" DROP CONSTRAINT "FK_66d2bd2ee31d14bcc23069a89f8"`);
await queryRunner.query(`ALTER TABLE "note" DROP CONSTRAINT "FK_5b87d9d19127bd5d92026017a7b"`);
await queryRunner.query(`ALTER TABLE "note" DROP CONSTRAINT "FK_ec5c201576192ba8904c345c5cc"`);
await queryRunner.query(`ALTER TABLE "note" DROP CONSTRAINT "FK_52ccc804d7c69037d558bac4c96"`);
await queryRunner.query(`ALTER TABLE "note" DROP CONSTRAINT "FK_17cb3553c700a4985dff5a30ff5"`);
await queryRunner.query(`ALTER TABLE "access_token" DROP CONSTRAINT "FK_a3ff16c90cc87a82a0b5959e560"`);
await queryRunner.query(`ALTER TABLE "access_token" DROP CONSTRAINT "FK_9949557d0e1b2c19e5344c171e9"`);
await queryRunner.query(`ALTER TABLE "app" DROP CONSTRAINT "FK_3f5b0899ef90527a3462d7c2cb3"`);
await queryRunner.query(`ALTER TABLE "user" DROP CONSTRAINT "FK_afc64b53f8db3707ceb34eb28e2"`);
await queryRunner.query(`ALTER TABLE "user" DROP CONSTRAINT "FK_58f5c71eaab331645112cf8cfa5"`);
await queryRunner.query(`ALTER TABLE "drive_file" DROP CONSTRAINT "FK_bb90d1956dafc4068c28aa7560a"`);
await queryRunner.query(`ALTER TABLE "drive_file" DROP CONSTRAINT "FK_860fa6f6c7df5bb887249fba22e"`);
await queryRunner.query(`ALTER TABLE "drive_folder" DROP CONSTRAINT "FK_00ceffb0cdc238b3233294f08f2"`);
await queryRunner.query(`ALTER TABLE "drive_folder" DROP CONSTRAINT "FK_f4fc06e49c0171c85f1c48060d2"`);
await queryRunner.query(`DROP TABLE "__chart__users"`);
await queryRunner.query(`DROP TYPE "__chart__users_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__test"`);
await queryRunner.query(`DROP TYPE "__chart__test_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__test_unique"`);
await queryRunner.query(`DROP TYPE "__chart__test_unique_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__test_grouped"`);
await queryRunner.query(`DROP TYPE "__chart__test_grouped_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__per_user_reaction"`);
await queryRunner.query(`DROP TYPE "__chart__per_user_reaction_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__per_user_notes"`);
await queryRunner.query(`DROP TYPE "__chart__per_user_notes_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__per_user_following"`);
await queryRunner.query(`DROP TYPE "__chart__per_user_following_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__per_user_drive"`);
await queryRunner.query(`DROP TYPE "__chart__per_user_drive_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__notes"`);
await queryRunner.query(`DROP TYPE "__chart__notes_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__network"`);
await queryRunner.query(`DROP TYPE "__chart__network_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__instance"`);
await queryRunner.query(`DROP TYPE "__chart__instance_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__hashtag"`);
await queryRunner.query(`DROP TYPE "__chart__hashtag_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__federation"`);
await queryRunner.query(`DROP TYPE "__chart__federation_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__drive"`);
await queryRunner.query(`DROP TYPE "__chart__drive_span_enum"`);
await queryRunner.query(`DROP TABLE "__chart__active_users"`);
await queryRunner.query(`DROP TYPE "__chart__active_users_span_enum"`);
await queryRunner.query(`DROP INDEX "IDX_dce530b98e454793dac5ec2f5a"`);
await queryRunner.query(`DROP TABLE "user_profile"`);
await queryRunner.query(`DROP INDEX "IDX_171e64971c780ebd23fae140bb"`);
await queryRunner.query(`DROP TABLE "user_publickey"`);
await queryRunner.query(`DROP TABLE "user_keypair"`);
await queryRunner.query(`DROP INDEX "IDX_7fa20a12319c7f6dc3aed98c0a"`);
await queryRunner.query(`DROP INDEX "IDX_0610ebcfcfb4a18441a9bcdab2"`);
await queryRunner.query(`DROP TABLE "poll"`);
await queryRunner.query(`DROP TYPE "poll_notevisibility_enum"`);
await queryRunner.query(`DROP INDEX "IDX_410cd649884b501c02d6e72738"`);
await queryRunner.query(`DROP INDEX "IDX_bfbc6f79ba4007b4ce5097f08d"`);
await queryRunner.query(`DROP TABLE "user_note_pining"`);
await queryRunner.query(`DROP INDEX "IDX_e247b23a3c9b45f89ec1299d06"`);
await queryRunner.query(`DROP INDEX "IDX_3b25402709dd9882048c2bbade"`);
await queryRunner.query(`DROP INDEX "IDX_b604d92d6c7aec38627f6eaf16"`);
await queryRunner.query(`DROP TABLE "reversi_matching"`);
await queryRunner.query(`DROP INDEX "IDX_b46ec40746efceac604142be1c"`);
await queryRunner.query(`DROP TABLE "reversi_game"`);
await queryRunner.query(`DROP INDEX "IDX_4f4d35e1256c84ae3d1f0eab10"`);
await queryRunner.query(`DROP INDEX "IDX_5900e907bb46516ddf2871327c"`);
await queryRunner.query(`DROP INDEX "IDX_b37dafc86e9af007e3295c2781"`);
await queryRunner.query(`DROP TABLE "emoji"`);
await queryRunner.query(`DROP INDEX "IDX_d54a512b822fac7ed52800f6b4"`);
await queryRunner.query(`DROP INDEX "IDX_a7fd92dd6dc519e6fb435dd108"`);
await queryRunner.query(`DROP INDEX "IDX_12c01c0d1a79f77d9f6c15fadd"`);
await queryRunner.query(`DROP TABLE "follow_request"`);
await queryRunner.query(`DROP INDEX "IDX_62cb09e1129f6ec024ef66e183"`);
await queryRunner.query(`DROP TABLE "auth_session"`);
await queryRunner.query(`DROP INDEX "IDX_2c308dbdc50d94dc625670055f"`);
await queryRunner.query(`DROP TABLE "signin"`);
await queryRunner.query(`DROP INDEX "IDX_cac14a4e3944454a5ce7daa514"`);
await queryRunner.query(`DROP INDEX "IDX_5377c307783fce2b6d352e1203"`);
await queryRunner.query(`DROP INDEX "IDX_e21cd3646e52ef9c94aaf17c2e"`);
await queryRunner.query(`DROP TABLE "messaging_message"`);
await queryRunner.query(`DROP INDEX "IDX_0ff69e8dfa9fe31bb4a4660f59"`);
await queryRunner.query(`DROP TABLE "registration_ticket"`);
await queryRunner.query(`DROP INDEX "IDX_5cd442c3b2e74fdd99dae20243"`);
await queryRunner.query(`DROP INDEX "IDX_04cc96756f89d0b7f9473e8cdf"`);
await queryRunner.query(`DROP INDEX "IDX_d049123c413e68ca52abe73420"`);
await queryRunner.query(`DROP INDEX "IDX_db2098070b2b5a523c58181f74"`);
await queryRunner.query(`DROP TABLE "abuse_user_report"`);
await queryRunner.query(`DROP INDEX "IDX_0f4fb9ad355f3effff221ef245"`);
await queryRunner.query(`DROP INDEX "IDX_47f4b1892f5d6ba8efb3057d81"`);
await queryRunner.query(`DROP TABLE "note_favorite"`);
await queryRunner.query(`DROP INDEX "IDX_0b03cbcd7e6a7ce068efa8ecc2"`);
await queryRunner.query(`DROP INDEX "IDX_0c44bf4f680964145f2a68a341"`);
await queryRunner.query(`DROP INDEX "IDX_d57f9030cd3af7f63ffb1c267c"`);
await queryRunner.query(`DROP INDEX "IDX_4c02d38a976c3ae132228c6fce"`);
await queryRunner.query(`DROP INDEX "IDX_0e206cec573f1edff4a3062923"`);
await queryRunner.query(`DROP INDEX "IDX_2710a55f826ee236ea1a62698f"`);
await queryRunner.query(`DROP INDEX "IDX_347fec870eafea7b26c8a73bac"`);
await queryRunner.query(`DROP TABLE "hashtag"`);
await queryRunner.query(`DROP INDEX "IDX_605472305f26818cc93d1baaa7"`);
await queryRunner.query(`DROP INDEX "IDX_d844bfc6f3f523a05189076efa"`);
await queryRunner.query(`DROP TABLE "user_list_joining"`);
await queryRunner.query(`DROP INDEX "IDX_b7fcefbdd1c18dce86687531f9"`);
await queryRunner.query(`DROP TABLE "user_list"`);
await queryRunner.query(`DROP INDEX "IDX_98a1bc5cb30dfd159de056549f"`);
await queryRunner.query(`DROP INDEX "IDX_0627125f1a8a42c9a1929edb55"`);
await queryRunner.query(`DROP INDEX "IDX_2cd4a2743a99671308f5417759"`);
await queryRunner.query(`DROP INDEX "IDX_b9a354f7941c1e779f3b33aea6"`);
await queryRunner.query(`DROP TABLE "blocking"`);
await queryRunner.query(`DROP INDEX "IDX_97754ca6f2baff9b4abb7f853d"`);
await queryRunner.query(`DROP TABLE "sw_subscription"`);
await queryRunner.query(`DROP INDEX "IDX_1eb9d9824a630321a29fd3b290"`);
await queryRunner.query(`DROP INDEX "IDX_93060675b4a79a577f31d260c6"`);
await queryRunner.query(`DROP INDEX "IDX_ec96b4fed9dae517e0dbbe0675"`);
await queryRunner.query(`DROP INDEX "IDX_f86d57fbca33c7a4e6897490cc"`);
await queryRunner.query(`DROP TABLE "muting"`);
await queryRunner.query(`DROP INDEX "IDX_8d5afc98982185799b160e10eb"`);
await queryRunner.query(`DROP INDEX "IDX_2cd3b2a6b4cf0b910b260afe08"`);
await queryRunner.query(`DROP TABLE "instance"`);
await queryRunner.query(`DROP INDEX "IDX_307be5f1d1252e0388662acb96"`);
await queryRunner.query(`DROP INDEX "IDX_6516c5a6f3c015b4eed39978be"`);
await queryRunner.query(`DROP INDEX "IDX_24e0042143a18157b234df186c"`);
await queryRunner.query(`DROP INDEX "IDX_582f8fab771a9040a12961f3e7"`);
await queryRunner.query(`DROP TABLE "following"`);
await queryRunner.query(`DROP TABLE "meta"`);
await queryRunner.query(`DROP INDEX "IDX_3c601b70a1066d2c8b517094cb"`);
await queryRunner.query(`DROP INDEX "IDX_b11a5e627c41d4dc3170f1d370"`);
await queryRunner.query(`DROP TABLE "notification"`);
await queryRunner.query(`DROP INDEX "IDX_d908433a4953cc13216cd9c274"`);
await queryRunner.query(`DROP INDEX "IDX_e637cba4dc4410218c4251260e"`);
await queryRunner.query(`DROP INDEX "IDX_56b0166d34ddae49d8ef7610bb"`);
await queryRunner.query(`DROP TABLE "note_unread"`);
await queryRunner.query(`DROP INDEX "IDX_a42c93c69989ce1d09959df4cf"`);
await queryRunner.query(`DROP INDEX "IDX_44499765eec6b5489d72c4253b"`);
await queryRunner.query(`DROP INDEX "IDX_03e7028ab8388a3f5e3ce2a861"`);
await queryRunner.query(`DROP INDEX "IDX_b0134ec406e8d09a540f818288"`);
await queryRunner.query(`DROP INDEX "IDX_318cdf42a9cfc11f479bd802bb"`);
await queryRunner.query(`DROP TABLE "note_watching"`);
await queryRunner.query(`DROP INDEX "IDX_ad0c221b25672daf2df320a817"`);
await queryRunner.query(`DROP INDEX "IDX_45145e4953780f3cd5656f0ea6"`);
await queryRunner.query(`DROP INDEX "IDX_13761f64257f40c5636d0ff95e"`);
await queryRunner.query(`DROP INDEX "IDX_01f4581f114e0ebd2bbb876f0b"`);
await queryRunner.query(`DROP TABLE "note_reaction"`);
await queryRunner.query(`DROP INDEX "IDX_50bd7164c5b78f1f4a42c4d21f"`);
await queryRunner.query(`DROP INDEX "IDX_aecfbd5ef60374918e63ee95fa"`);
await queryRunner.query(`DROP INDEX "IDX_66d2bd2ee31d14bcc23069a89f"`);
await queryRunner.query(`DROP INDEX "IDX_0fb627e1c2f753262a74f0562d"`);
await queryRunner.query(`DROP TABLE "poll_vote"`);
await queryRunner.query(`DROP INDEX "IDX_7125a826ab192eb27e11d358a5"`);
await queryRunner.query(`DROP INDEX "IDX_88937d94d7443d9a99a76fa5c0"`);
await queryRunner.query(`DROP INDEX "IDX_54ebcb6d27222913b908d56fd8"`);
await queryRunner.query(`DROP INDEX "IDX_796a8c03959361f97dc2be1d5c"`);
await queryRunner.query(`DROP INDEX "IDX_25dfc71b0369b003a4cd434d0b"`);
await queryRunner.query(`DROP INDEX "IDX_51c063b6a133a9cb87145450f5"`);
await queryRunner.query(`DROP INDEX "IDX_153536c67d05e9adb24e99fc2b"`);
await queryRunner.query(`DROP INDEX "IDX_5b87d9d19127bd5d92026017a7"`);
await queryRunner.query(`DROP INDEX "IDX_52ccc804d7c69037d558bac4c9"`);
await queryRunner.query(`DROP INDEX "IDX_17cb3553c700a4985dff5a30ff"`);
await queryRunner.query(`DROP INDEX "IDX_e7c0567f5261063592f022e9b5"`);
await queryRunner.query(`DROP TABLE "note"`);
await queryRunner.query(`DROP TYPE "note_visibility_enum"`);
await queryRunner.query(`DROP INDEX "IDX_9949557d0e1b2c19e5344c171e"`);
await queryRunner.query(`DROP INDEX "IDX_64c327441248bae40f7d92f34f"`);
await queryRunner.query(`DROP INDEX "IDX_70ba8f6af34bc924fc9e12adb8"`);
await queryRunner.query(`DROP TABLE "access_token"`);
await queryRunner.query(`DROP INDEX "IDX_f49922d511d666848f250663c4"`);
await queryRunner.query(`DROP INDEX "IDX_3f5b0899ef90527a3462d7c2cb"`);
await queryRunner.query(`DROP INDEX "IDX_048a757923ed8b157e9895da53"`);
await queryRunner.query(`DROP TABLE "app"`);
await queryRunner.query(`DROP INDEX "IDX_5deb01ae162d1d70b80d064c27"`);
await queryRunner.query(`DROP INDEX "IDX_a854e557b1b14814750c7c7b0c"`);
await queryRunner.query(`DROP INDEX "IDX_be623adaa4c566baf5d29ce0c8"`);
await queryRunner.query(`DROP INDEX "IDX_3252a5df8d5bbd16b281f7799e"`);
await queryRunner.query(`DROP INDEX "IDX_fa99d777623947a5b05f394cae"`);
await queryRunner.query(`DROP INDEX "IDX_a27b942a0d6dcff90e3ee9b5e8"`);
await queryRunner.query(`DROP INDEX "IDX_80ca6e6ef65fb9ef34ea8c90f4"`);
await queryRunner.query(`DROP INDEX "IDX_e11e649824a45d8ed01d597fd9"`);
await queryRunner.query(`DROP TABLE "user"`);
await queryRunner.query(`DROP INDEX "IDX_bb90d1956dafc4068c28aa7560"`);
await queryRunner.query(`DROP INDEX "IDX_e5848eac4940934e23dbc17581"`);
await queryRunner.query(`DROP INDEX "IDX_c55b2b7c284d9fef98026fc88e"`);
await queryRunner.query(`DROP INDEX "IDX_e74022ce9a074b3866f70e0d27"`);
await queryRunner.query(`DROP INDEX "IDX_d85a184c2540d2deba33daf642"`);
await queryRunner.query(`DROP INDEX "IDX_a40b8df8c989d7db937ea27cf6"`);
await queryRunner.query(`DROP INDEX "IDX_37bb9a1b4585f8a3beb24c62d6"`);
await queryRunner.query(`DROP INDEX "IDX_92779627994ac79277f070c91e"`);
await queryRunner.query(`DROP INDEX "IDX_860fa6f6c7df5bb887249fba22"`);
await queryRunner.query(`DROP INDEX "IDX_c8dfad3b72196dd1d6b5db168a"`);
await queryRunner.query(`DROP TABLE "drive_file"`);
await queryRunner.query(`DROP INDEX "IDX_00ceffb0cdc238b3233294f08f"`);
await queryRunner.query(`DROP INDEX "IDX_f4fc06e49c0171c85f1c48060d"`);
await queryRunner.query(`DROP INDEX "IDX_02878d441ceae15ce060b73daf"`);
await queryRunner.query(`DROP TABLE "drive_folder"`);
await queryRunner.query(`DROP INDEX "IDX_584b536b49e53ac81beb39a177"`);
await queryRunner.query(`DROP INDEX "IDX_8cb40cfc8f3c28261e6f887b03"`);
await queryRunner.query(`DROP INDEX "IDX_8e4eb51a35d81b64dda28eed0a"`);
await queryRunner.query(`DROP TABLE "log"`);
await queryRunner.query(`DROP TYPE "log_level_enum"`);
}
}

View File

@@ -0,0 +1,31 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class Pages1556348509290 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TYPE "page_visibility_enum" AS ENUM('public', 'followers', 'specified')`);
await queryRunner.query(`CREATE TABLE "page" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "updatedAt" TIMESTAMP WITH TIME ZONE NOT NULL, "title" character varying(256) NOT NULL, "name" character varying(256) NOT NULL, "summary" character varying(256), "alignCenter" boolean NOT NULL, "font" character varying(32) NOT NULL, "userId" character varying(32) NOT NULL, "eyeCatchingImageId" character varying(32), "content" jsonb NOT NULL DEFAULT '[]', "variables" jsonb NOT NULL DEFAULT '[]', "visibility" "page_visibility_enum" NOT NULL, "visibleUserIds" character varying(32) array NOT NULL DEFAULT '{}'::varchar[], CONSTRAINT "PK_742f4117e065c5b6ad21b37ba1f" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_fbb4297c927a9b85e9cefa2eb1" ON "page" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_af639b066dfbca78b01a920f8a" ON "page" ("updatedAt") `);
await queryRunner.query(`CREATE INDEX "IDX_b82c19c08afb292de4600d99e4" ON "page" ("name") `);
await queryRunner.query(`CREATE INDEX "IDX_ae1d917992dd0c9d9bbdad06c4" ON "page" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_90148bbc2bf0854428786bfc15" ON "page" ("visibleUserIds") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_2133ef8317e4bdb839c0dcbf13" ON "page" ("userId", "name") `);
await queryRunner.query(`ALTER TABLE "page" ADD CONSTRAINT "FK_ae1d917992dd0c9d9bbdad06c4a" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "page" ADD CONSTRAINT "FK_3126dd7c502c9e4d7597ef7ef10" FOREIGN KEY ("eyeCatchingImageId") REFERENCES "drive_file"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "page" DROP CONSTRAINT "FK_3126dd7c502c9e4d7597ef7ef10"`);
await queryRunner.query(`ALTER TABLE "page" DROP CONSTRAINT "FK_ae1d917992dd0c9d9bbdad06c4a"`);
await queryRunner.query(`DROP INDEX "IDX_2133ef8317e4bdb839c0dcbf13"`);
await queryRunner.query(`DROP INDEX "IDX_90148bbc2bf0854428786bfc15"`);
await queryRunner.query(`DROP INDEX "IDX_ae1d917992dd0c9d9bbdad06c4"`);
await queryRunner.query(`DROP INDEX "IDX_b82c19c08afb292de4600d99e4"`);
await queryRunner.query(`DROP INDEX "IDX_af639b066dfbca78b01a920f8a"`);
await queryRunner.query(`DROP INDEX "IDX_fbb4297c927a9b85e9cefa2eb1"`);
await queryRunner.query(`DROP TABLE "page"`);
await queryRunner.query(`DROP TYPE "page_visibility_enum"`);
}
}

View File

@@ -0,0 +1,16 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class UserProfile1556746559567 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" ALTER COLUMN "githubId" TYPE VARCHAR(64) USING "githubId"::VARCHAR(64)`);
await queryRunner.query(`ALTER TABLE "user_profile" ALTER COLUMN "discordExpiresDate" TYPE VARCHAR(64) USING "discordExpiresDate"::VARCHAR(64)`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`UPDATE "user_profile" SET github = FALSE, discord = FALSE`);
await queryRunner.query(`ALTER TABLE "user_profile" ALTER COLUMN "githubId" TYPE INTEGER USING NULL`);
await queryRunner.query(`ALTER TABLE "user_profile" ALTER COLUMN "discordExpiresDate" TYPE INTEGER USING NULL`);
}
}

View File

@@ -0,0 +1,13 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class PinnedUsers1557476068003 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" ADD "pinnedUsers" character varying(256) array NOT NULL DEFAULT '{}'::varchar[]`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "pinnedUsers"`);
}
}

View File

@@ -0,0 +1,16 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class AddSomeUrls1557761316509 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" ADD "ToSUrl" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "repositoryUrl" character varying(512) NOT NULL DEFAULT 'https://github.com/syuilo/misskey'`);
await queryRunner.query(`ALTER TABLE "meta" ADD "feedbackUrl" character varying(512) DEFAULT 'https://github.com/syuilo/misskey/issues/new'`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "feedbackUrl"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "repositoryUrl"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "ToSUrl"`);
}
}

View File

@@ -0,0 +1,31 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class ObjectStorageSetting1557932705754 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" ADD "useObjectStorage" boolean NOT NULL DEFAULT false`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStorageBucket" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStoragePrefix" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStorageBaseUrl" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStorageEndpoint" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStorageRegion" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStorageAccessKey" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStorageSecretKey" character varying(512)`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStoragePort" integer`);
await queryRunner.query(`ALTER TABLE "meta" ADD "objectStorageUseSSL" boolean NOT NULL DEFAULT true`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStorageUseSSL"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStoragePort"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStorageSecretKey"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStorageAccessKey"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStorageRegion"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStorageEndpoint"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStorageBaseUrl"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStoragePrefix"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "objectStorageBucket"`);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "useObjectStorage"`);
}
}

View File

@@ -0,0 +1,23 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class PageLike1558072954435 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "page_like" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "pageId" character varying(32) NOT NULL, CONSTRAINT "PK_813f034843af992d3ae0f43c64c" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_0e61efab7f88dbb79c9166dbb4" ON "page_like" ("userId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_4ce6fb9c70529b4c8ac46c9bfa" ON "page_like" ("userId", "pageId") `);
await queryRunner.query(`ALTER TABLE "page" ADD "likedCount" integer NOT NULL DEFAULT 0`);
await queryRunner.query(`ALTER TABLE "page_like" ADD CONSTRAINT "FK_0e61efab7f88dbb79c9166dbb48" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "page_like" ADD CONSTRAINT "FK_cf8782626dced3176038176a847" FOREIGN KEY ("pageId") REFERENCES "page"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "page_like" DROP CONSTRAINT "FK_cf8782626dced3176038176a847"`);
await queryRunner.query(`ALTER TABLE "page_like" DROP CONSTRAINT "FK_0e61efab7f88dbb79c9166dbb48"`);
await queryRunner.query(`ALTER TABLE "page" DROP COLUMN "likedCount"`);
await queryRunner.query(`DROP INDEX "IDX_4ce6fb9c70529b4c8ac46c9bfa"`);
await queryRunner.query(`DROP INDEX "IDX_0e61efab7f88dbb79c9166dbb4"`);
await queryRunner.query(`DROP TABLE "page_like"`);
}
}

View File

@@ -0,0 +1,41 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class UserGroup1558103093633 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "user_group" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "name" character varying(256) NOT NULL, "userId" character varying(32) NOT NULL, "isPrivate" boolean NOT NULL DEFAULT false, CONSTRAINT "PK_3c29fba6fe013ec8724378ce7c9" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_20e30aa35180e317e133d75316" ON "user_group" ("createdAt") `);
await queryRunner.query(`CREATE INDEX "IDX_3d6b372788ab01be58853003c9" ON "user_group" ("userId") `);
await queryRunner.query(`CREATE TABLE "user_group_joining" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "userGroupId" character varying(32) NOT NULL, CONSTRAINT "PK_15f2425885253c5507e1599cfe7" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_f3a1b4bd0c7cabba958a0c0b23" ON "user_group_joining" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_67dc758bc0566985d1b3d39986" ON "user_group_joining" ("userGroupId") `);
await queryRunner.query(`ALTER TABLE "messaging_message" ADD "groupId" character varying(32)`);
await queryRunner.query(`ALTER TABLE "messaging_message" ADD "reads" character varying(32) array NOT NULL DEFAULT '{}'::varchar[]`);
await queryRunner.query(`ALTER TABLE "messaging_message" ALTER COLUMN "recipientId" DROP NOT NULL`);
await queryRunner.query(`COMMENT ON COLUMN "messaging_message"."recipientId" IS 'The recipient user ID.'`);
await queryRunner.query(`CREATE INDEX "IDX_2c4be03b446884f9e9c502135b" ON "messaging_message" ("groupId") `);
await queryRunner.query(`ALTER TABLE "messaging_message" ADD CONSTRAINT "FK_2c4be03b446884f9e9c502135be" FOREIGN KEY ("groupId") REFERENCES "user_group"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_group" ADD CONSTRAINT "FK_3d6b372788ab01be58853003c93" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_group_joining" ADD CONSTRAINT "FK_f3a1b4bd0c7cabba958a0c0b231" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_group_joining" ADD CONSTRAINT "FK_67dc758bc0566985d1b3d399865" FOREIGN KEY ("userGroupId") REFERENCES "user_group"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_group_joining" DROP CONSTRAINT "FK_67dc758bc0566985d1b3d399865"`);
await queryRunner.query(`ALTER TABLE "user_group_joining" DROP CONSTRAINT "FK_f3a1b4bd0c7cabba958a0c0b231"`);
await queryRunner.query(`ALTER TABLE "user_group" DROP CONSTRAINT "FK_3d6b372788ab01be58853003c93"`);
await queryRunner.query(`ALTER TABLE "messaging_message" DROP CONSTRAINT "FK_2c4be03b446884f9e9c502135be"`);
await queryRunner.query(`DROP INDEX "IDX_2c4be03b446884f9e9c502135b"`);
await queryRunner.query(`COMMENT ON COLUMN "messaging_message"."recipientId" IS ''`);
await queryRunner.query(`ALTER TABLE "messaging_message" ALTER COLUMN "recipientId" SET NOT NULL`);
await queryRunner.query(`ALTER TABLE "messaging_message" DROP COLUMN "reads"`);
await queryRunner.query(`ALTER TABLE "messaging_message" DROP COLUMN "groupId"`);
await queryRunner.query(`DROP INDEX "IDX_67dc758bc0566985d1b3d39986"`);
await queryRunner.query(`DROP INDEX "IDX_f3a1b4bd0c7cabba958a0c0b23"`);
await queryRunner.query(`DROP TABLE "user_group_joining"`);
await queryRunner.query(`DROP INDEX "IDX_3d6b372788ab01be58853003c9"`);
await queryRunner.query(`DROP INDEX "IDX_20e30aa35180e317e133d75316"`);
await queryRunner.query(`DROP TABLE "user_group"`);
}
}

View File

@@ -0,0 +1,25 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class UserGroupInvite1558257926829 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "user_group_invite" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "userGroupId" character varying(32) NOT NULL, CONSTRAINT "PK_3893884af0d3a5f4d01e7921a97" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_1039988afa3bf991185b277fe0" ON "user_group_invite" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_e10924607d058004304611a436" ON "user_group_invite" ("userGroupId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_78787741f9010886796f2320a4" ON "user_group_invite" ("userId", "userGroupId") `);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_d9ecaed8c6dc43f3592c229282" ON "user_group_joining" ("userId", "userGroupId") `);
await queryRunner.query(`ALTER TABLE "user_group_invite" ADD CONSTRAINT "FK_1039988afa3bf991185b277fe03" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_group_invite" ADD CONSTRAINT "FK_e10924607d058004304611a436a" FOREIGN KEY ("userGroupId") REFERENCES "user_group"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_group_invite" DROP CONSTRAINT "FK_e10924607d058004304611a436a"`);
await queryRunner.query(`ALTER TABLE "user_group_invite" DROP CONSTRAINT "FK_1039988afa3bf991185b277fe03"`);
await queryRunner.query(`DROP INDEX "IDX_d9ecaed8c6dc43f3592c229282"`);
await queryRunner.query(`DROP INDEX "IDX_78787741f9010886796f2320a4"`);
await queryRunner.query(`DROP INDEX "IDX_e10924607d058004304611a436"`);
await queryRunner.query(`DROP INDEX "IDX_1039988afa3bf991185b277fe0"`);
await queryRunner.query(`DROP TABLE "user_group_invite"`);
}
}

View File

@@ -0,0 +1,13 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class UserListJoining1558266512381 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_90f7da835e4c10aca6853621e1" ON "user_list_joining" ("userId", "userListId") `);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`DROP INDEX "IDX_90f7da835e4c10aca6853621e1"`);
}
}

View File

@@ -0,0 +1,29 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class webauthn1561706992953 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "attestation_challenge" ("id" character varying(32) NOT NULL, "userId" character varying(32) NOT NULL, "challenge" character varying(64) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "registrationChallenge" boolean NOT NULL DEFAULT false, CONSTRAINT "PK_d0ba6786e093f1bcb497572a6b5" PRIMARY KEY ("id", "userId"))`);
await queryRunner.query(`CREATE INDEX "IDX_f1a461a618fa1755692d0e0d59" ON "attestation_challenge" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_47efb914aed1f72dd39a306c7b" ON "attestation_challenge" ("challenge") `);
await queryRunner.query(`CREATE TABLE "user_security_key" ("id" character varying NOT NULL, "userId" character varying(32) NOT NULL, "publicKey" character varying NOT NULL, "lastUsed" TIMESTAMP WITH TIME ZONE NOT NULL, "name" character varying(30) NOT NULL, CONSTRAINT "PK_3e508571121ab39c5f85d10c166" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_ff9ca3b5f3ee3d0681367a9b44" ON "user_security_key" ("userId") `);
await queryRunner.query(`CREATE INDEX "IDX_0d7718e562dcedd0aa5cf2c9f7" ON "user_security_key" ("publicKey") `);
await queryRunner.query(`ALTER TABLE "user_profile" ADD "securityKeysAvailable" boolean NOT NULL DEFAULT false`);
await queryRunner.query(`ALTER TABLE "attestation_challenge" ADD CONSTRAINT "FK_f1a461a618fa1755692d0e0d592" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
await queryRunner.query(`ALTER TABLE "user_security_key" ADD CONSTRAINT "FK_ff9ca3b5f3ee3d0681367a9b447" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_security_key" DROP CONSTRAINT "FK_ff9ca3b5f3ee3d0681367a9b447"`);
await queryRunner.query(`ALTER TABLE "attestation_challenge" DROP CONSTRAINT "FK_f1a461a618fa1755692d0e0d592"`);
await queryRunner.query(`ALTER TABLE "user_profile" DROP COLUMN "securityKeysAvailable"`);
await queryRunner.query(`DROP INDEX "IDX_0d7718e562dcedd0aa5cf2c9f7"`);
await queryRunner.query(`DROP INDEX "IDX_ff9ca3b5f3ee3d0681367a9b44"`);
await queryRunner.query(`DROP TABLE "user_security_key"`);
await queryRunner.query(`DROP INDEX "IDX_47efb914aed1f72dd39a306c7b"`);
await queryRunner.query(`DROP INDEX "IDX_f1a461a618fa1755692d0e0d59"`);
await queryRunner.query(`DROP TABLE "attestation_challenge"`);
}
}

View File

@@ -0,0 +1,201 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class ChartIndexes1561873850023 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE INDEX "IDX_0ad37b7ef50f4ddc84363d7ccc" ON "__chart__active_users" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_15e91a03aeeac9dbccdf43fc06" ON "__chart__active_users" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_00ed5f86db1f7efafb1978bf21" ON "__chart__active_users" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_20f57cc8f142c131340ee16742" ON "__chart__active_users" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_9a3ed15a30ab7e3a37702e6e08" ON "__chart__active_users" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_c26e2c1cbb6e911e0554b27416" ON "__chart__active_users" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_13565815f618a1ff53886c5b28" ON "__chart__drive" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_3fa0d0f17ca72e3dc80999a032" ON "__chart__drive" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_7a170f67425e62a8fabb76c872" ON "__chart__drive" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_6e1df243476e20cbf86572ecc0" ON "__chart__drive" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_3313d7288855ec105b5bbf6c21" ON "__chart__drive" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_06690fc959f1c9fdaf21928222" ON "__chart__drive" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_36cb699c49580d4e6c2e6159f9" ON "__chart__federation" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_e447064455928cf627590ef527" ON "__chart__federation" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_76e87c7bfc5d925fcbba405d84" ON "__chart__federation" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_2d416e6af791a82e338c79d480" ON "__chart__federation" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_dd907becf76104e4b656659e6b" ON "__chart__federation" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_e9cd07672b37d8966cf3709283" ON "__chart__federation" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_07747a1038c05f532a718fe1de" ON "__chart__hashtag" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_fcc181fb8283009c61cc4083ef" ON "__chart__hashtag" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_99a7d2faaef84a6f728d714ad6" ON "__chart__hashtag" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_49975586f50ed7b800fdd88fbd" ON "__chart__hashtag" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_25a97c02003338124b2b75fdbc" ON "__chart__hashtag" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_6d6f156ceefc6bc5f273a0e370" ON "__chart__hashtag" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_6b8f34a1a64b06014b6fb66824" ON "__chart__instance" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_c12f0af4a66cdd30c2287ce8aa" ON "__chart__instance" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_da8a46ba84ca1d8bb5a29bfb63" ON "__chart__instance" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_d0a4f79af5a97b08f37b547197" ON "__chart__instance" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_39ee857ab2f23493037c6b6631" ON "__chart__instance" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_f5448d9633cff74208d850aabe" ON "__chart__instance" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_a1efd3e0048a5f2793a47360dc" ON "__chart__network" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_f8dd01baeded2ffa833e0a610a" ON "__chart__network" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_7b5da130992ec9df96712d4290" ON "__chart__network" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_08fac0eb3b11f04c200c0b40dd" ON "__chart__network" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_0a905b992fecd2b5c3fb98759e" ON "__chart__network" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_9ff6944f01acb756fdc92d7563" ON "__chart__network" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_42eb716a37d381cdf566192b2b" ON "__chart__notes" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_e69096589f11e3baa98ddd64d0" ON "__chart__notes" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_7036f2957151588b813185c794" ON "__chart__notes" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_0c9a159c5082cbeef3ca6706b5" ON "__chart__notes" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_f09d543e3acb16c5976bdb31fa" ON "__chart__notes" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_924fc196c80ca24bae01dd37e4" ON "__chart__notes" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_5f86db6492274e07c1a3cdf286" ON "__chart__per_user_drive" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_328f259961e60c4fa0bfcf55ca" ON "__chart__per_user_drive" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_e496ca8096d28f6b9b509264dc" ON "__chart__per_user_drive" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_42ea9381f0fda8dfe0fa1c8b53" ON "__chart__per_user_drive" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_30bf67687f483ace115c5ca642" ON "__chart__per_user_drive" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_f2aeafde2ae6fbad38e857631b" ON "__chart__per_user_drive" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_7af07790712aa3438ff6773f3b" ON "__chart__per_user_following" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_f92dd6d03f8d994f29987f6214" ON "__chart__per_user_following" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_4b3593098b6edc9c5afe36b18b" ON "__chart__per_user_following" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_57b5458d0d3d6d1e7f13d4e57f" ON "__chart__per_user_following" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_b77d4dd9562c3a899d9a286fcd" ON "__chart__per_user_following" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_4db3b84c7be0d3464714f3e0b1" ON "__chart__per_user_following" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_84234bd1abb873f07329681c83" ON "__chart__per_user_notes" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_8d2cbbc8114d90d19b44d626b6" ON "__chart__per_user_notes" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_55bf20f366979f2436de99206b" ON "__chart__per_user_notes" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_046feeb12e9ef5f783f409866a" ON "__chart__per_user_notes" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_5048e9daccbbbc6d567bb142d3" ON "__chart__per_user_notes" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_f68a5ab958f9f5fa17a32ac23b" ON "__chart__per_user_notes" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_f7bf4c62059764c2c2bb40fdab" ON "__chart__per_user_reaction" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_65633a106bce43fc7c5c30a5c7" ON "__chart__per_user_reaction" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_8cf3156fd7a6b15c43459c6e3b" ON "__chart__per_user_reaction" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_edeb73c09c3143a81bcb34d569" ON "__chart__per_user_reaction" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_229a41ad465f9205f1f5703291" ON "__chart__per_user_reaction" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_e316f01a6d24eb31db27f88262" ON "__chart__per_user_reaction" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_0c641990ecf47d2545df4edb75" ON "__chart__test_grouped" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_2be7ec6cebddc14dc11e206686" ON "__chart__test_grouped" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_234dff3c0b56a6150b95431ab9" ON "__chart__test_grouped" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_a5133470f4825902e170328ca5" ON "__chart__test_grouped" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_b14489029e4b3aaf4bba5fb524" ON "__chart__test_grouped" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_84e661abb7bd1e51b690d4b017" ON "__chart__test_grouped" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_437bab3c6061d90f6bb65fd2cc" ON "__chart__test_unique" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_5c73bf61da4f6e6f15bae88ed1" ON "__chart__test_unique" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_bbfa573a8181018851ed0b6357" ON "__chart__test_unique" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_d70c86baedc68326be11f9c0ce" ON "__chart__test_unique" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_a0cd75442dd10d0643a17c4a49" ON "__chart__test_unique" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_66e1e1ecd2f29e57778af35b59" ON "__chart__test_unique" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_b070a906db04b44c67c6c2144d" ON "__chart__test" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_92255988735563f0fe4aba1f05" ON "__chart__test" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_d41cce6aee1a50bfc062038f9b" ON "__chart__test" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_c5870993e25c3d5771f91f5003" ON "__chart__test" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_a319e5dbf47e8a17497623beae" ON "__chart__test" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_f170de677ea75ad4533de2723e" ON "__chart__test" ("span", "date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_845254b3eaf708ae8a6cac3026" ON "__chart__users" ("date") `);
await queryRunner.query(`CREATE INDEX "IDX_7c184198ecf66a8d3ecb253ab3" ON "__chart__users" ("span") `);
await queryRunner.query(`CREATE INDEX "IDX_ed9b95919c672a13008e9487ee" ON "__chart__users" ("group") `);
await queryRunner.query(`CREATE INDEX "IDX_f091abb24193d50c653c6b77fc" ON "__chart__users" ("span", "date") `);
await queryRunner.query(`CREATE INDEX "IDX_337e9599f278bd7537fe30876f" ON "__chart__users" ("date", "group") `);
await queryRunner.query(`CREATE INDEX "IDX_a770a57c70e668cc61590c9161" ON "__chart__users" ("span", "date", "group") `);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`DROP INDEX "IDX_a770a57c70e668cc61590c9161"`);
await queryRunner.query(`DROP INDEX "IDX_337e9599f278bd7537fe30876f"`);
await queryRunner.query(`DROP INDEX "IDX_f091abb24193d50c653c6b77fc"`);
await queryRunner.query(`DROP INDEX "IDX_ed9b95919c672a13008e9487ee"`);
await queryRunner.query(`DROP INDEX "IDX_7c184198ecf66a8d3ecb253ab3"`);
await queryRunner.query(`DROP INDEX "IDX_845254b3eaf708ae8a6cac3026"`);
await queryRunner.query(`DROP INDEX "IDX_f170de677ea75ad4533de2723e"`);
await queryRunner.query(`DROP INDEX "IDX_a319e5dbf47e8a17497623beae"`);
await queryRunner.query(`DROP INDEX "IDX_c5870993e25c3d5771f91f5003"`);
await queryRunner.query(`DROP INDEX "IDX_d41cce6aee1a50bfc062038f9b"`);
await queryRunner.query(`DROP INDEX "IDX_92255988735563f0fe4aba1f05"`);
await queryRunner.query(`DROP INDEX "IDX_b070a906db04b44c67c6c2144d"`);
await queryRunner.query(`DROP INDEX "IDX_66e1e1ecd2f29e57778af35b59"`);
await queryRunner.query(`DROP INDEX "IDX_a0cd75442dd10d0643a17c4a49"`);
await queryRunner.query(`DROP INDEX "IDX_d70c86baedc68326be11f9c0ce"`);
await queryRunner.query(`DROP INDEX "IDX_bbfa573a8181018851ed0b6357"`);
await queryRunner.query(`DROP INDEX "IDX_5c73bf61da4f6e6f15bae88ed1"`);
await queryRunner.query(`DROP INDEX "IDX_437bab3c6061d90f6bb65fd2cc"`);
await queryRunner.query(`DROP INDEX "IDX_84e661abb7bd1e51b690d4b017"`);
await queryRunner.query(`DROP INDEX "IDX_b14489029e4b3aaf4bba5fb524"`);
await queryRunner.query(`DROP INDEX "IDX_a5133470f4825902e170328ca5"`);
await queryRunner.query(`DROP INDEX "IDX_234dff3c0b56a6150b95431ab9"`);
await queryRunner.query(`DROP INDEX "IDX_2be7ec6cebddc14dc11e206686"`);
await queryRunner.query(`DROP INDEX "IDX_0c641990ecf47d2545df4edb75"`);
await queryRunner.query(`DROP INDEX "IDX_e316f01a6d24eb31db27f88262"`);
await queryRunner.query(`DROP INDEX "IDX_229a41ad465f9205f1f5703291"`);
await queryRunner.query(`DROP INDEX "IDX_edeb73c09c3143a81bcb34d569"`);
await queryRunner.query(`DROP INDEX "IDX_8cf3156fd7a6b15c43459c6e3b"`);
await queryRunner.query(`DROP INDEX "IDX_65633a106bce43fc7c5c30a5c7"`);
await queryRunner.query(`DROP INDEX "IDX_f7bf4c62059764c2c2bb40fdab"`);
await queryRunner.query(`DROP INDEX "IDX_f68a5ab958f9f5fa17a32ac23b"`);
await queryRunner.query(`DROP INDEX "IDX_5048e9daccbbbc6d567bb142d3"`);
await queryRunner.query(`DROP INDEX "IDX_046feeb12e9ef5f783f409866a"`);
await queryRunner.query(`DROP INDEX "IDX_55bf20f366979f2436de99206b"`);
await queryRunner.query(`DROP INDEX "IDX_8d2cbbc8114d90d19b44d626b6"`);
await queryRunner.query(`DROP INDEX "IDX_84234bd1abb873f07329681c83"`);
await queryRunner.query(`DROP INDEX "IDX_4db3b84c7be0d3464714f3e0b1"`);
await queryRunner.query(`DROP INDEX "IDX_b77d4dd9562c3a899d9a286fcd"`);
await queryRunner.query(`DROP INDEX "IDX_57b5458d0d3d6d1e7f13d4e57f"`);
await queryRunner.query(`DROP INDEX "IDX_4b3593098b6edc9c5afe36b18b"`);
await queryRunner.query(`DROP INDEX "IDX_f92dd6d03f8d994f29987f6214"`);
await queryRunner.query(`DROP INDEX "IDX_7af07790712aa3438ff6773f3b"`);
await queryRunner.query(`DROP INDEX "IDX_f2aeafde2ae6fbad38e857631b"`);
await queryRunner.query(`DROP INDEX "IDX_30bf67687f483ace115c5ca642"`);
await queryRunner.query(`DROP INDEX "IDX_42ea9381f0fda8dfe0fa1c8b53"`);
await queryRunner.query(`DROP INDEX "IDX_e496ca8096d28f6b9b509264dc"`);
await queryRunner.query(`DROP INDEX "IDX_328f259961e60c4fa0bfcf55ca"`);
await queryRunner.query(`DROP INDEX "IDX_5f86db6492274e07c1a3cdf286"`);
await queryRunner.query(`DROP INDEX "IDX_924fc196c80ca24bae01dd37e4"`);
await queryRunner.query(`DROP INDEX "IDX_f09d543e3acb16c5976bdb31fa"`);
await queryRunner.query(`DROP INDEX "IDX_0c9a159c5082cbeef3ca6706b5"`);
await queryRunner.query(`DROP INDEX "IDX_7036f2957151588b813185c794"`);
await queryRunner.query(`DROP INDEX "IDX_e69096589f11e3baa98ddd64d0"`);
await queryRunner.query(`DROP INDEX "IDX_42eb716a37d381cdf566192b2b"`);
await queryRunner.query(`DROP INDEX "IDX_9ff6944f01acb756fdc92d7563"`);
await queryRunner.query(`DROP INDEX "IDX_0a905b992fecd2b5c3fb98759e"`);
await queryRunner.query(`DROP INDEX "IDX_08fac0eb3b11f04c200c0b40dd"`);
await queryRunner.query(`DROP INDEX "IDX_7b5da130992ec9df96712d4290"`);
await queryRunner.query(`DROP INDEX "IDX_f8dd01baeded2ffa833e0a610a"`);
await queryRunner.query(`DROP INDEX "IDX_a1efd3e0048a5f2793a47360dc"`);
await queryRunner.query(`DROP INDEX "IDX_f5448d9633cff74208d850aabe"`);
await queryRunner.query(`DROP INDEX "IDX_39ee857ab2f23493037c6b6631"`);
await queryRunner.query(`DROP INDEX "IDX_d0a4f79af5a97b08f37b547197"`);
await queryRunner.query(`DROP INDEX "IDX_da8a46ba84ca1d8bb5a29bfb63"`);
await queryRunner.query(`DROP INDEX "IDX_c12f0af4a66cdd30c2287ce8aa"`);
await queryRunner.query(`DROP INDEX "IDX_6b8f34a1a64b06014b6fb66824"`);
await queryRunner.query(`DROP INDEX "IDX_6d6f156ceefc6bc5f273a0e370"`);
await queryRunner.query(`DROP INDEX "IDX_25a97c02003338124b2b75fdbc"`);
await queryRunner.query(`DROP INDEX "IDX_49975586f50ed7b800fdd88fbd"`);
await queryRunner.query(`DROP INDEX "IDX_99a7d2faaef84a6f728d714ad6"`);
await queryRunner.query(`DROP INDEX "IDX_fcc181fb8283009c61cc4083ef"`);
await queryRunner.query(`DROP INDEX "IDX_07747a1038c05f532a718fe1de"`);
await queryRunner.query(`DROP INDEX "IDX_e9cd07672b37d8966cf3709283"`);
await queryRunner.query(`DROP INDEX "IDX_dd907becf76104e4b656659e6b"`);
await queryRunner.query(`DROP INDEX "IDX_2d416e6af791a82e338c79d480"`);
await queryRunner.query(`DROP INDEX "IDX_76e87c7bfc5d925fcbba405d84"`);
await queryRunner.query(`DROP INDEX "IDX_e447064455928cf627590ef527"`);
await queryRunner.query(`DROP INDEX "IDX_36cb699c49580d4e6c2e6159f9"`);
await queryRunner.query(`DROP INDEX "IDX_06690fc959f1c9fdaf21928222"`);
await queryRunner.query(`DROP INDEX "IDX_3313d7288855ec105b5bbf6c21"`);
await queryRunner.query(`DROP INDEX "IDX_6e1df243476e20cbf86572ecc0"`);
await queryRunner.query(`DROP INDEX "IDX_7a170f67425e62a8fabb76c872"`);
await queryRunner.query(`DROP INDEX "IDX_3fa0d0f17ca72e3dc80999a032"`);
await queryRunner.query(`DROP INDEX "IDX_13565815f618a1ff53886c5b28"`);
await queryRunner.query(`DROP INDEX "IDX_c26e2c1cbb6e911e0554b27416"`);
await queryRunner.query(`DROP INDEX "IDX_9a3ed15a30ab7e3a37702e6e08"`);
await queryRunner.query(`DROP INDEX "IDX_20f57cc8f142c131340ee16742"`);
await queryRunner.query(`DROP INDEX "IDX_00ed5f86db1f7efafb1978bf21"`);
await queryRunner.query(`DROP INDEX "IDX_15e91a03aeeac9dbccdf43fc06"`);
await queryRunner.query(`DROP INDEX "IDX_0ad37b7ef50f4ddc84363d7ccc"`);
await queryRunner.query(`DROP INDEX "IDX_90148bbc2bf0854428786bfc15"`);
await queryRunner.query(`DROP INDEX "IDX_88937d94d7443d9a99a76fa5c0"`);
await queryRunner.query(`DROP INDEX "IDX_54ebcb6d27222913b908d56fd8"`);
await queryRunner.query(`DROP INDEX "IDX_796a8c03959361f97dc2be1d5c"`);
await queryRunner.query(`DROP INDEX "IDX_25dfc71b0369b003a4cd434d0b"`);
await queryRunner.query(`DROP INDEX "IDX_51c063b6a133a9cb87145450f5"`);
await queryRunner.query(`DROP INDEX "IDX_fa99d777623947a5b05f394cae"`);
await queryRunner.query(`DROP INDEX "IDX_315c779174fe8247ab324f036e"`);
await queryRunner.query(`DROP INDEX "IDX_c5d46cbfda48b1c33ed852e21b"`);
await queryRunner.query(`DROP INDEX "IDX_8cb40cfc8f3c28261e6f887b03"`);
}
}

View File

@@ -0,0 +1,13 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class PasswordLessLogin1562422242907 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" ADD COLUMN "usePasswordLessLogin" boolean DEFAULT false NOT NULL`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" DROP COLUMN "usePasswordLessLogin"`);
}
}

View File

@@ -0,0 +1,17 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class PinnedPage1562444565093 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" ADD "pinnedPageId" character varying(32)`);
await queryRunner.query(`ALTER TABLE "user_profile" ADD CONSTRAINT "UQ_6dc44f1ceb65b1e72bacef2ca27" UNIQUE ("pinnedPageId")`);
await queryRunner.query(`ALTER TABLE "user_profile" ADD CONSTRAINT "FK_6dc44f1ceb65b1e72bacef2ca27" FOREIGN KEY ("pinnedPageId") REFERENCES "page"("id") ON DELETE SET NULL ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" DROP CONSTRAINT "FK_6dc44f1ceb65b1e72bacef2ca27"`);
await queryRunner.query(`ALTER TABLE "user_profile" DROP CONSTRAINT "UQ_6dc44f1ceb65b1e72bacef2ca27"`);
await queryRunner.query(`ALTER TABLE "user_profile" DROP COLUMN "pinnedPageId"`);
}
}

View File

@@ -0,0 +1,13 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class PageTitleHideOption1562448332510 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "page" ADD "hideTitleWhenPinned" boolean NOT NULL DEFAULT false`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "page" DROP COLUMN "hideTitleWhenPinned"`);
}
}

View File

@@ -0,0 +1,17 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class ModerationLog1562869971568 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "moderation_log" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "type" character varying(128) NOT NULL, "info" jsonb NOT NULL, CONSTRAINT "PK_d0adca6ecfd068db83e4526cc26" PRIMARY KEY ("id"))`);
await queryRunner.query(`CREATE INDEX "IDX_a08ad074601d204e0f69da9a95" ON "moderation_log" ("userId") `);
await queryRunner.query(`ALTER TABLE "moderation_log" ADD CONSTRAINT "FK_a08ad074601d204e0f69da9a954" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "moderation_log" DROP CONSTRAINT "FK_a08ad074601d204e0f69da9a954"`);
await queryRunner.query(`DROP INDEX "IDX_a08ad074601d204e0f69da9a95"`);
await queryRunner.query(`DROP TABLE "moderation_log"`);
}
}

View File

@@ -0,0 +1,13 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class UsedUsername1563757595828 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "used_username" ("username" character varying(128) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, CONSTRAINT "PK_78fd79d2d24c6ac2f4cc9a31a5d" PRIMARY KEY ("username"))`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`DROP TABLE "used_username"`);
}
}

View File

@@ -0,0 +1,13 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class room1565634203341 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" ADD "room" jsonb NOT NULL DEFAULT '{}'`);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "user_profile" DROP COLUMN "room"`);
}
}

View File

@@ -0,0 +1,13 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class CustomEmojiCategory1571220798684 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "emoji" ADD "category" character varying(128)`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "emoji" DROP COLUMN "category"`, undefined);
}
}

View File

@@ -0,0 +1,29 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class nodeinfo1572760203493 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "system"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "softwareName" character varying(64) DEFAULT null`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "softwareVersion" character varying(64) DEFAULT null`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "openRegistrations" boolean DEFAULT null`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "name" character varying(256) DEFAULT null`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "description" character varying(4096) DEFAULT null`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "maintainerName" character varying(128) DEFAULT null`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "maintainerEmail" character varying(256) DEFAULT null`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "infoUpdatedAt" TIMESTAMP WITH TIME ZONE`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "infoUpdatedAt"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "maintainerEmail"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "maintainerName"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "description"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "name"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "openRegistrations"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "softwareVersion"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "softwareName"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "system" character varying(64)`, undefined);
}
}

View File

@@ -0,0 +1,14 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class TalkFederationId1576269851876 implements MigrationInterface {
name = 'TalkFederationId1576269851876'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "messaging_message" ADD "uri" character varying(512)`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "messaging_message" DROP COLUMN "uri"`, undefined);
}
}

View File

@@ -0,0 +1,14 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class ProxyRemoteFiles1576869585998 implements MigrationInterface {
name = 'ProxyRemoteFiles1576869585998'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" ADD "proxyRemoteFiles" boolean NOT NULL DEFAULT false`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "proxyRemoteFiles"`, undefined);
}
}

View File

@@ -0,0 +1,34 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v121579267006611 implements MigrationInterface {
name = 'v121579267006611'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "announcement" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "text" character varying(8192) NOT NULL, "title" character varying(256) NOT NULL, "imageUrl" character varying(1024), CONSTRAINT "PK_e0ef0550174fd1099a308fd18a0" PRIMARY KEY ("id"))`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_118ec703e596086fc4515acb39" ON "announcement" ("createdAt") `, undefined);
await queryRunner.query(`CREATE TABLE "announcement_read" ("id" character varying(32) NOT NULL, "userId" character varying(32) NOT NULL, "announcementId" character varying(32) NOT NULL, CONSTRAINT "PK_4b90ad1f42681d97b2683890c5e" PRIMARY KEY ("id"))`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_8288151386172b8109f7239ab2" ON "announcement_read" ("userId") `, undefined);
await queryRunner.query(`CREATE INDEX "IDX_603a7b1e7aa0533c6c88e9bfaf" ON "announcement_read" ("announcementId") `, undefined);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_924fa71815cfa3941d003702a0" ON "announcement_read" ("userId", "announcementId") `, undefined);
await queryRunner.query(`ALTER TABLE "user" DROP COLUMN "isVerified"`, undefined);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "announcements"`, undefined);
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "enableEmojiReaction"`, undefined);
await queryRunner.query(`ALTER TABLE "announcement_read" ADD CONSTRAINT "FK_8288151386172b8109f7239ab28" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
await queryRunner.query(`ALTER TABLE "announcement_read" ADD CONSTRAINT "FK_603a7b1e7aa0533c6c88e9bfafe" FOREIGN KEY ("announcementId") REFERENCES "announcement"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "announcement_read" DROP CONSTRAINT "FK_603a7b1e7aa0533c6c88e9bfafe"`, undefined);
await queryRunner.query(`ALTER TABLE "announcement_read" DROP CONSTRAINT "FK_8288151386172b8109f7239ab28"`, undefined);
await queryRunner.query(`ALTER TABLE "meta" ADD "enableEmojiReaction" boolean NOT NULL DEFAULT true`, undefined);
await queryRunner.query(`ALTER TABLE "meta" ADD "announcements" jsonb NOT NULL DEFAULT '[]'`, undefined);
await queryRunner.query(`ALTER TABLE "user" ADD "isVerified" boolean NOT NULL DEFAULT false`, undefined);
await queryRunner.query(`DROP INDEX "IDX_924fa71815cfa3941d003702a0"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_603a7b1e7aa0533c6c88e9bfaf"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_8288151386172b8109f7239ab2"`, undefined);
await queryRunner.query(`DROP TABLE "announcement_read"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_118ec703e596086fc4515acb39"`, undefined);
await queryRunner.query(`DROP TABLE "announcement"`, undefined);
}
}

View File

@@ -0,0 +1,14 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1221579270193251 implements MigrationInterface {
name = 'v1221579270193251'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "announcement_read" ADD "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "announcement_read" DROP COLUMN "createdAt"`, undefined);
}
}

View File

@@ -0,0 +1,14 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1231579282808087 implements MigrationInterface {
name = 'v1231579282808087'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "announcement" ADD "updatedAt" TIMESTAMP WITH TIME ZONE`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "announcement" DROP COLUMN "updatedAt"`, undefined);
}
}

View File

@@ -0,0 +1,16 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1241579544426412 implements MigrationInterface {
name = 'v1241579544426412'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "notification" ADD "followRequestId" character varying(32)`, undefined);
await queryRunner.query(`ALTER TABLE "notification" ADD CONSTRAINT "FK_bd7fab507621e635b32cd31892c" FOREIGN KEY ("followRequestId") REFERENCES "follow_request"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "notification" DROP CONSTRAINT "FK_bd7fab507621e635b32cd31892c"`, undefined);
await queryRunner.query(`ALTER TABLE "notification" DROP COLUMN "followRequestId"`, undefined);
}
}

View File

@@ -0,0 +1,54 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1251579977526288 implements MigrationInterface {
name = 'v1251579977526288'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TABLE "clip" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "name" character varying(128) NOT NULL, "isPublic" boolean NOT NULL DEFAULT false, CONSTRAINT "PK_f0685dac8d4dd056d7255670b75" PRIMARY KEY ("id"))`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_2b5ec6c574d6802c94c80313fb" ON "clip" ("userId") `, undefined);
await queryRunner.query(`CREATE TABLE "clip_note" ("id" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, "clipId" character varying(32) NOT NULL, CONSTRAINT "PK_e94cda2f40a99b57e032a1a738b" PRIMARY KEY ("id"))`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_a012eaf5c87c65da1deb5fdbfa" ON "clip_note" ("noteId") `, undefined);
await queryRunner.query(`CREATE INDEX "IDX_ebe99317bbbe9968a0c6f579ad" ON "clip_note" ("clipId") `, undefined);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_6fc0ec357d55a18646262fdfff" ON "clip_note" ("noteId", "clipId") `, undefined);
await queryRunner.query(`CREATE TYPE "antenna_src_enum" AS ENUM('home', 'all', 'list')`, undefined);
await queryRunner.query(`CREATE TABLE "antenna" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "userId" character varying(32) NOT NULL, "name" character varying(128) NOT NULL, "src" "antenna_src_enum" NOT NULL, "userListId" character varying(32), "keywords" jsonb NOT NULL DEFAULT '[]', "withFile" boolean NOT NULL, "expression" character varying(2048), "notify" boolean NOT NULL, "hasNewNote" boolean NOT NULL DEFAULT false, CONSTRAINT "PK_c170b99775e1dccca947c9f2d5f" PRIMARY KEY ("id"))`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_6446c571a0e8d0f05f01c78909" ON "antenna" ("userId") `, undefined);
await queryRunner.query(`CREATE TABLE "antenna_note" ("id" character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, "antennaId" character varying(32) NOT NULL, CONSTRAINT "PK_fb28d94d0989a3872df19fd6ef8" PRIMARY KEY ("id"))`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_bd0397be22147e17210940e125" ON "antenna_note" ("noteId") `, undefined);
await queryRunner.query(`CREATE INDEX "IDX_0d775946662d2575dfd2068a5f" ON "antenna_note" ("antennaId") `, undefined);
await queryRunner.query(`CREATE UNIQUE INDEX "IDX_335a0bf3f904406f9ef3dd51c2" ON "antenna_note" ("noteId", "antennaId") `, undefined);
await queryRunner.query(`ALTER TABLE "note" DROP COLUMN "geo"`, undefined);
await queryRunner.query(`ALTER TABLE "clip" ADD CONSTRAINT "FK_2b5ec6c574d6802c94c80313fb2" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
await queryRunner.query(`ALTER TABLE "clip_note" ADD CONSTRAINT "FK_a012eaf5c87c65da1deb5fdbfa3" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
await queryRunner.query(`ALTER TABLE "clip_note" ADD CONSTRAINT "FK_ebe99317bbbe9968a0c6f579adf" FOREIGN KEY ("clipId") REFERENCES "clip"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" ADD CONSTRAINT "FK_6446c571a0e8d0f05f01c789096" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" ADD CONSTRAINT "FK_709d7d32053d0dd7620f678eeb9" FOREIGN KEY ("userListId") REFERENCES "user_list"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
await queryRunner.query(`ALTER TABLE "antenna_note" ADD CONSTRAINT "FK_bd0397be22147e17210940e125b" FOREIGN KEY ("noteId") REFERENCES "note"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
await queryRunner.query(`ALTER TABLE "antenna_note" ADD CONSTRAINT "FK_0d775946662d2575dfd2068a5f5" FOREIGN KEY ("antennaId") REFERENCES "antenna"("id") ON DELETE CASCADE ON UPDATE NO ACTION`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "antenna_note" DROP CONSTRAINT "FK_0d775946662d2575dfd2068a5f5"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna_note" DROP CONSTRAINT "FK_bd0397be22147e17210940e125b"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" DROP CONSTRAINT "FK_709d7d32053d0dd7620f678eeb9"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" DROP CONSTRAINT "FK_6446c571a0e8d0f05f01c789096"`, undefined);
await queryRunner.query(`ALTER TABLE "clip_note" DROP CONSTRAINT "FK_ebe99317bbbe9968a0c6f579adf"`, undefined);
await queryRunner.query(`ALTER TABLE "clip_note" DROP CONSTRAINT "FK_a012eaf5c87c65da1deb5fdbfa3"`, undefined);
await queryRunner.query(`ALTER TABLE "clip" DROP CONSTRAINT "FK_2b5ec6c574d6802c94c80313fb2"`, undefined);
await queryRunner.query(`ALTER TABLE "note" ADD "geo" jsonb`, undefined);
await queryRunner.query(`DROP INDEX "IDX_335a0bf3f904406f9ef3dd51c2"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_0d775946662d2575dfd2068a5f"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_bd0397be22147e17210940e125"`, undefined);
await queryRunner.query(`DROP TABLE "antenna_note"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_6446c571a0e8d0f05f01c78909"`, undefined);
await queryRunner.query(`DROP TABLE "antenna"`, undefined);
await queryRunner.query(`DROP TYPE "antenna_src_enum"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_6fc0ec357d55a18646262fdfff"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_ebe99317bbbe9968a0c6f579ad"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_a012eaf5c87c65da1deb5fdbfa"`, undefined);
await queryRunner.query(`DROP TABLE "clip_note"`, undefined);
await queryRunner.query(`DROP INDEX "IDX_2b5ec6c574d6802c94c80313fb"`, undefined);
await queryRunner.query(`DROP TABLE "clip"`, undefined);
}
}

View File

@@ -0,0 +1,18 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1261579993013959 implements MigrationInterface {
name = 'v1261579993013959'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "antenna" DROP COLUMN "hasNewNote"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna_note" ADD "read" boolean NOT NULL DEFAULT false`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_9937ea48d7ae97ffb4f3f063a4" ON "antenna_note" ("read") `, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`DROP INDEX "IDX_9937ea48d7ae97ffb4f3f063a4"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna_note" DROP COLUMN "read"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" ADD "hasNewNote" boolean NOT NULL DEFAULT false`, undefined);
}
}

View File

@@ -0,0 +1,24 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1271580069531114 implements MigrationInterface {
name = 'v1271580069531114'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "antenna" ADD "users" character varying(1024) array NOT NULL DEFAULT '{}'::varchar[]`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" ADD "caseSensitive" boolean NOT NULL DEFAULT false`, undefined);
await queryRunner.query(`ALTER TYPE "public"."antenna_src_enum" RENAME TO "antenna_src_enum_old"`, undefined);
await queryRunner.query(`CREATE TYPE "antenna_src_enum" AS ENUM('home', 'all', 'users', 'list')`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" ALTER COLUMN "src" TYPE "antenna_src_enum" USING "src"::"text"::"antenna_src_enum"`, undefined);
await queryRunner.query(`DROP TYPE "antenna_src_enum_old"`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`CREATE TYPE "antenna_src_enum_old" AS ENUM('home', 'all', 'list')`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" ALTER COLUMN "src" TYPE "antenna_src_enum_old" USING "src"::"text"::"antenna_src_enum_old"`, undefined);
await queryRunner.query(`DROP TYPE "antenna_src_enum"`, undefined);
await queryRunner.query(`ALTER TYPE "antenna_src_enum_old" RENAME TO "antenna_src_enum"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" DROP COLUMN "caseSensitive"`, undefined);
await queryRunner.query(`ALTER TABLE "antenna" DROP COLUMN "users"`, undefined);
}
}

View File

@@ -0,0 +1,16 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1281580148575182 implements MigrationInterface {
name = 'v1281580148575182'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "note" DROP CONSTRAINT "FK_ec5c201576192ba8904c345c5cc"`, undefined);
await queryRunner.query(`ALTER TABLE "note" DROP COLUMN "appId"`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "note" ADD "appId" character varying(32)`, undefined);
await queryRunner.query(`ALTER TABLE "note" ADD CONSTRAINT "FK_ec5c201576192ba8904c345c5cc" FOREIGN KEY ("appId") REFERENCES "app"("id") ON DELETE SET NULL ON UPDATE NO ACTION`, undefined);
}
}

View File

@@ -0,0 +1,14 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v1291580154400017 implements MigrationInterface {
name = 'v1291580154400017'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "antenna" ADD "withReplies" boolean NOT NULL DEFAULT false`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "antenna" DROP COLUMN "withReplies"`, undefined);
}
}

View File

@@ -0,0 +1,19 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v12101580276619901 implements MigrationInterface {
name = 'v12101580276619901'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`TRUNCATE TABLE "notification"`, undefined);
await queryRunner.query(`ALTER TABLE "notification" DROP COLUMN "type"`, undefined);
await queryRunner.query(`CREATE TYPE "notification_type_enum" AS ENUM('follow', 'mention', 'reply', 'renote', 'quote', 'reaction', 'pollVote', 'receiveFollowRequest', 'followRequestAccepted')`, undefined);
await queryRunner.query(`ALTER TABLE "notification" ADD "type" "notification_type_enum" NOT NULL`, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "notification" DROP COLUMN "type"`, undefined);
await queryRunner.query(`DROP TYPE "notification_type_enum"`, undefined);
await queryRunner.query(`ALTER TABLE "notification" ADD "type" character varying(32) NOT NULL`, undefined);
}
}

View File

@@ -0,0 +1,18 @@
import {MigrationInterface, QueryRunner} from "typeorm";
export class v12111580331224276 implements MigrationInterface {
name = 'v12111580331224276'
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "isMarkedAsClosed"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "isSuspended" boolean NOT NULL DEFAULT false`, undefined);
await queryRunner.query(`CREATE INDEX "IDX_34500da2e38ac393f7bb6b299c" ON "instance" ("isSuspended") `, undefined);
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.query(`DROP INDEX "IDX_34500da2e38ac393f7bb6b299c"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" DROP COLUMN "isSuspended"`, undefined);
await queryRunner.query(`ALTER TABLE "instance" ADD "isMarkedAsClosed" boolean NOT NULL DEFAULT false`, undefined);
}
}

Some files were not shown because too many files have changed in this diff Show More