Commit Graph

1050 Commits

Author SHA1 Message Date
syuilo
af3258dc79 perf(backend): make some features optionable
Resolve #11064
Resolve #11065
2023-07-02 16:02:32 +09:00
syuilo
a1327fa9e1 perf(backend): allow get for some endpoints 2023-07-02 08:28:26 +09:00
Kagami Sascha Rosylight
1b1f82a2e2
feat(backend): accept OAuth bearer token (#11052)
* feat(backend): accept OAuth bearer token

* refactor

* Update packages/backend/src/server/api/ApiCallService.ts

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

* Update packages/backend/src/server/api/ApiCallService.ts

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

* fix

* kind: permission for account moved error

* also for suspended error

* Update packages/backend/src/server/api/StreamingApiServerService.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>
2023-06-28 13:37:13 +09:00
Kagami Sascha Rosylight
d23ad8b511
fix(backend): APIエラーのHTTP status code変更 (#11047) 2023-06-26 10:09:12 +09:00
syuilo
8099bc24e1
refactor(backend): use node16 for moduleResolution (#10938)
* refactor(backend): use node16 for moduleResolution

* update deps

* Update tsconfig.json

* ✌️

* revive KEYWORD

* restore strict-event-emitter-types dependency

* restore ms dependency

* cancel redundant import reorder

* fix

* Delete ms.ts

* remove rndstr

---------

Co-authored-by: Kagami Sascha Rosylight <saschanaz@outlook.com>
2023-06-25 21:13:15 +09:00
Kagami Sascha Rosylight
ef354e94f2
refactor(backend): replace rndstr with secureRndstr (#11044)
* refactor(backend): replace rndstr with secureRndstr

* Update pnpm-lock.yaml

* .js
2023-06-25 11:04:33 +09:00
Kagami Sascha Rosylight
a2c0573f84
refactor(backend): replace private-ip with ipaddr.js (#11041)
* refactor(backend): replace private-ip with ipaddr.js

* restore ip-cidr
2023-06-25 06:35:09 +09:00
syuilo
60cc7f62e6 update deps 2023-06-24 13:11:53 +09:00
Caipira
e8c5117b2d
fix(backend): Resolve missing parseObjectId in IdService (#11039) 2023-06-23 16:30:47 +09:00
Balazs Nadasdi
e2261b63e9
fix: clear queue endpoint error with redis script (#11037)
Error message:
```
ReplyError: ERR value is not an integer or out of range script: 720d973b3877f92b4fb3285ced83c97cdd204979, on @user_script:209.
```

The whole error can be tracked back to one of the arguments, which is
`Infinity` in the codebase, but it has to be a number.

The documentation in bullmq says `0` is unlimited[^1], and bullmq tries to
parse the argument with `tonumber` which returns with `-9223372036854775808` if
the argument is `"Infinity"` which is out of bound.

```
127.0.0.1:6379> eval 'return tonumber(ARGV[3])' '2' 'slippy.xyz:queue:inbox:inbox:delayed' 'slippy.xyz:queue:inbox:inbox:events' 'slippy.xyz:queue:inbox:inbox:' '1687183763944' Infinity 'delayed'
(integer) -9223372036854775808
127.0.0.1:6379>
```

[^1]: https://github.com/taskforcesh/bullmq/blob/master/src/commands/cleanJobsInSet-2.lua#L10

Signed-off-by: Efertone <efertone@pm.me>
2023-06-22 15:56:40 +09:00
syuilo
f5dfb64a52 ユーザー統計表示機能を削除
Resolve #10998
2023-06-13 14:13:33 +09:00
syuilo
46222d0258 tweak of f3a16bcd6 2023-06-10 17:41:52 +09:00
nenohi
f3a16bcd6d
ロールのユーザーリストを非公開にできるように (#10987)
* ロールのユーザーリストを非公開にできるように

* Changelog update
2023-06-10 17:26:48 +09:00
syuilo
e8420ad90b fix(backend): キャッシュが溜まり続けないように
Related #10984
2023-06-10 13:45:11 +09:00
syuilo
6182a1cb2c enhance(backend): WebSocketのPing/Pongをプロトコル制御フレームの物で判別する
Resolve #10969
2023-06-09 17:07:57 +09:00
syuilo
308ab8f177 chore 2023-06-09 16:11:28 +09:00
Ebise Lutica
34a32a8334
エラー画像URLを設定可能に (#10959)
* エラー画像URLを設定可能に

* Update CHANGELOG.md

* 設定したエラーアイコンをprefetchするようにbase.pugを変更

* 不足していたデータを追加

* enhance(frontend): デザイン調整
2023-06-09 14:00:53 +09:00
syuilo
703f3a8e37 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2023-06-09 12:51:19 +09:00
syuilo
13870c63b0 add note 2023-06-09 12:47:36 +09:00
Outvi V
95b2148bfe
fix: correctly check the sensitivity flag (#10976) 2023-06-09 10:13:46 +09:00
CaffeeLake
8263cc0094
Fix: #10955 TypeError: JSON5.parse is not a function (#10956)
* Fix: JSON5.parse is not a function

* update changelog

* update chglog

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-06-05 21:44:28 +09:00
tamaina
565c502bbf fix(backend): pageのピン留めを解除することができない問題を修正
Fix #10950
2023-06-05 09:04:30 +00:00
syuilo
0cb3c7481c fix typo: schema -> scheme 2023-06-05 10:55:18 +09:00
syuilo
5230ec883e fix(backend): 7日経過して無効化されたアンテナを再度有効化する方法がない問題を修正
Fix #10476
2023-06-02 15:18:34 +09:00
syuilo
91d790bbb6 update deps 2023-06-02 11:34:38 +09:00
syuilo
9eaca966a4 perf(backend): terminate stalled websocket connections
Resolve #10885
2023-06-02 09:13:41 +09:00
syuilo
ec2f05d4f7 fix(backend): i/notificationsのsinceIdが機能しない問題を修正
Fix #10902
2023-06-01 13:28:43 +09:00
syuilo
a6cd97ca9a fix(backend): 「アクセストークンの管理」画面でアプリの情報が表示されない問題を修正
Fix #10920
2023-05-30 17:27:47 +09:00
syuilo
8f14b42e81 perf: インスタンスデフォルトテーマを予めjson5 -> jsonに変換しておくことでjson5を初期バンドルに含めずに済むように 2023-05-30 11:51:29 +09:00
syuilo
f930eaee02
perf(backend): use websockets/ws instead of theturtle32/WebSocket-Node (#10884)
* perf(backend): use websockets/ws instead of theturtle32/WebSocket-Node

Resolve #10883

* refactor

* Update StreamingApiServerService.ts

* Update StreamingApiServerService.ts

* ✌️

* Update StreamingApiServerService.ts

* fix main stream init

* fix timing 2

* setIntervalの重複を避ける(気休め)

* add comment

* ✌️

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-05-29 13:32:19 +09:00
syuilo
b35b9bc27f Update QueueProcessorService.ts 2023-05-29 13:30:57 +09:00
syuilo
4790ddfad6 refactor of QueueProcessorService 2023-05-29 13:30:26 +09:00
syuilo
b6f21b6edb refactor 2023-05-29 13:21:26 +09:00
syuilo
fd7b77c542
enhance(backend): migrate bull to bullmq (#10910)
* wip

* wip

* Update QueueService.ts

* wip

* refactor

* ✌️

* fix

* Update QueueStatsService.ts

* refactor

* Update ApNoteService.ts

* Update mock-resolver.ts

* refactor

* Update mock-resolver.ts
2023-05-29 11:54:49 +09:00
Chocolate Pie
98aef974df
enhance: ハッシュタグのノート一覧ページから、そのハッシュタグで投稿するボタンを追加、お知らせの画像URLを空にできない問題を修正 (#10878)
* fix: お知らせの画像URLを空にできない問題を修正 (misskey-dev/misskey#10657)

* ハッシュタグのノート一覧ページからノートできるように(misskey-dev/misskey#10854)

* fix: 色々直した

* location.reloadを使わないように

* CHANGELOGを編集

* tweak

* Update tag.vue

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-05-26 14:47:31 +09:00
syuilo
38a1d6693a 🎨 2023-05-24 14:43:53 +09:00
syuilo
ed902658a9 refactor 2023-05-24 09:59:30 +09:00
Acid Chicken (硫酸鶏)
915ed39715
feat: support summary_large_image (#10862)
* feat: use summary_large_image

* chore: add video

* chore: ignore sensitive image on note
2023-05-20 10:35:23 +09:00
nenohi
bd6666173a
fix:ロールタイムライン無効に関する修正 (#10843)
* 修正

* note visibility change

* public投稿のみ

* update changelog

* RN非表示機能がうごかないところだった
2023-05-19 17:12:22 +09:00
Chocolate Pie
dddbc1c894
feat: 公開リスト (#10842)
* feat: まず公開できるように (misskey-dev/misskey#10447)

* feat: 公開したリストのページを作成 (misskey-dev/misskey#10447)

* feat: いいねできるように

* feat: インポートに対応

* wip

* wip

* CHANGELOGを編集

* add note

* refactor

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-05-19 10:06:12 +09:00
syuilo
3804c6e7ad feat: センシティブなカスタム絵文字のリアクションを受け入れない設定を追加 2023-05-19 09:43:38 +09:00
syuilo
231506772a tweak of 7ce569424 2023-05-18 20:17:32 +09:00
syuilo
db1098a180 feat(backend): カスタム絵文字ごとに連合するかどうか設定できるように 2023-05-18 18:48:35 +09:00
syuilo
7ce569424a feat: カスタム絵文字ごとにそれをリアクションとして使えるロールを設定できるように 2023-05-18 18:45:49 +09:00
syuilo
9b5b3a4d1b perf(backend): pre-compile regexp 2023-05-18 18:18:25 +09:00
syuilo
cbca48846c fix streamin error 2023-05-17 11:10:31 +09:00
syuilo
d10d5a8d53 enhance: タイムラインにフォロイーの行った他人へのリプライを含めるかどうかの設定をアカウントに保存するのをやめるように
Resolve #10646
2023-05-16 12:16:37 +09:00
syuilo
23f106a0c1 refactor(frontend): boot分割したり副作用減らしたりとか
#10838
2023-05-15 19:08:46 +09:00
syuilo
1cc106b8de fix(backend): ひとつのMeilisearchサーバーを複数のMisskeyサーバーで使えない問題を修正 2023-05-11 21:09:29 +09:00
syuilo
26d85c8bed enhance(backend): ノートのハッシュタグもMeilisearchに突っ込むように
今後ハッシュタグ検索とか実装するときのため
2023-05-11 16:33:39 +09:00
syuilo
b380dc53e1 fix typo 2023-05-11 16:22:46 +09:00
nenohi
c15b75e477
センシティブワードを正規表現、CWにも適用するように (#10688)
* cwにセンシティブが効いてない

* CWが無いときにTextを見るように

* 比較演算子間違えた

* とりあえずチェック

* 正規表現対応

* /test/giにも対応

* matchでしなくてもいいのでは感

* レビュー修正

* Update packages/backend/src/core/NoteCreateService.ts

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

* Update packages/backend/src/core/NoteCreateService.ts

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

* 修正

* wipかも

* wordsでスペース区切りのものできたかも

* なんか動いたかも

* test作成

* 文言の修正

* 修正

* note参照

---------

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2023-05-10 18:02:41 +09:00
syuilo
9557579b67 fix(backend): テスト時は一部のサービスを停止 2023-05-10 15:30:36 +09:00
syuilo
341c42ebb9 enhance(backend): graceful shutdown for job queue and refactor 2023-05-10 15:05:08 +09:00
syuilo
7ae1d6511a add X-Robots-Tag: noai 2023-05-10 10:57:27 +09:00
syuilo
0c4c4e7202 念のためnoimageaiもつける 2023-05-10 10:54:56 +09:00
syuilo
6a25015a78 enhance(backend): publicReactionsをデフォルトtrueに 2023-05-10 10:53:01 +09:00
syuilo
ae5a72a2df feat: 投稿したコンテンツのAIによる学習を軽減するオプションを追加
Resolve #10819
2023-05-10 10:52:41 +09:00
syuilo
22d6c7fe8a fix(backend): 13.11を経験しない状態で13.12にアップデートした場合ユーザープロフィール関連の画像が消失する問題を修正
Fix #10811
2023-05-09 15:28:44 +09:00
syuilo
b2f6c67aa9 fix(backend): リモートサーバーの情報が更新できない問題を修正
Fix #10787
2023-05-09 14:57:42 +09:00
syuilo
5c54e12099 fix(test): ジョブキューをテストが終わったら停止するように
Fix #10802 ?
2023-05-09 08:32:25 +09:00
syuilo
b565df6882 fix(backend): fix channels/owned
Fix #10791
2023-05-08 07:59:06 +09:00
tamaina
4dfe2c15b0 fix(backend): Fix #10786 2023-05-07 12:01:39 +00:00
syuilo
95a2de8d54 fix(backend): 凍結されたユーザーが一部APIのレスポンスに含まれる問題を修正 2023-05-07 17:36:13 +09:00
syuilo
95e7e003fd fix test 2023-05-07 12:04:16 +09:00
syuilo
29a84230b0 enhance(backend): SearchService.searchNoteでhost指定対応 2023-05-07 11:59:06 +09:00
syuilo
6ad9a9677a fix test 2023-05-07 11:31:32 +09:00
syuilo
1a4b4348a9 fix(backend): sort notes
Fix #10776
2023-05-06 12:49:49 +09:00
syuilo
0a59407a3c fix type 2023-05-06 10:24:14 +09:00
syuilo
10ff379b4c enhance(backend/frontend): モデレーションノートをユーザーのプロフィールページからも閲覧および編集できるように 2023-05-06 09:51:06 +09:00
syuilo
bd1c2abffc clean up 2023-05-06 09:39:14 +09:00
syuilo
c7d4264ecf refactor 2023-05-06 09:34:21 +09:00
Chocolate Pie
39748ea0c3
feat: アンテナのエクスポート・インポート (#10754)
* feat: アンテナのエクスポートに対応 (misskey-dev/misskey#10690)

* feat: アンテナのインポートに対応 (misskey-dev/misskey#10690)

* fix: タイポを修正

* feat: ユーザーリストをサポート

* fix: バグを直した

* fix: バグを直した

* fix: 適当に決めた変数名を変更

* fix

* fix: 変数の変更、リファクタリング
2023-05-06 08:17:55 +09:00
syuilo
5dfbce7571 feat: チャンネルの削除
Resolve #7171
Resolve #9935
2023-05-06 08:15:17 +09:00
Caipira
ae21b75687
fix(backend): Use SSL option for Meilisearch (#10772) 2023-05-06 04:02:34 +09:00
Acid Chicken (硫酸鶏)
4a72941eda
perf: use slacc on check-word-mute (#10721)
* perf: use slacc on check-word-mute when all of specified words are single word

* perf: use slacc as possible

* build: avoid tarball

* chore: update slacc

* build: update package name
2023-05-05 19:49:34 +09:00
nenohi
2d84e04240
ロールにNSFWを強制的につけるオプションを追加 (#10731)
* ロールにNSFWを強制的につけるオプションを追加

* すでにあるファイルにNSFWが付与できない

* NSFWを付与しようとするとエラーに

* add test

* Update packages/backend/src/core/RoleService.ts

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

* spacingで怒られたので

* ロール作成時のプロパティ削除

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-05-05 14:18:06 +09:00
syuilo
6db37d4fcb fix(backend): ノートの検索インデックス条件を調整 2023-05-05 12:24:29 +09:00
syuilo
5c08f2b93b
feat: Introduce Meilisearch (#10755)
* wip

* wip

* Update SearchService.ts

* Update SearchService.ts

* wip

* wip

* Update SearchService.ts

* Update CHANGELOG.md

* wip

* Update SearchService.ts

* Update docker-compose.yml.example
2023-05-05 08:52:14 +09:00
たーびん
8dab46470e
fix #10666 チャンネル検索ですべてのチャンネルの取得/表示ができるようにする (#10667)
* Update CHANGELOG.md

* fix : able to search all channels

* add chennel/search test

* update Changelog

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Co-authored-by: atsuchan <83960488+atsu1125@users.noreply.github.com>
Co-authored-by: Masaya Suzuki <15100604+massongit@users.noreply.github.com>
Co-authored-by: Kagami Sascha Rosylight <saschanaz@outlook.com>
Co-authored-by: taiy <53635909+taiyme@users.noreply.github.com>
Co-authored-by: xianon <xianon@hotmail.co.jp>
Co-authored-by: kabo2468 <28654659+kabo2468@users.noreply.github.com>
Co-authored-by: YS <47836716+yszkst@users.noreply.github.com>
Co-authored-by: Khsmty <me@khsmty.com>
Co-authored-by: Soni L <EnderMoneyMod@gmail.com>
Co-authored-by: mei23 <m@m544.net>
Co-authored-by: daima3629 <52790780+daima3629@users.noreply.github.com>
Co-authored-by: Windymelt <1113940+windymelt@users.noreply.github.com>
Co-authored-by: Ebise Lutica <7106976+EbiseLutica@users.noreply.github.com>
2023-05-05 08:48:14 +09:00
tamaina
58c3fc6cd2 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2023-05-02 16:21:25 +00:00
tamaina
363eb73fb3 fix 2023-05-02 16:21:18 +00:00
okayurisotto
43593603f1
fix(backend): fieldsの誤った定義を修正 (#10737) 2023-05-02 21:14:22 +09:00
syuilo
bcd123371b update deps 2023-05-02 20:52:36 +09:00
tamaina
f3e43a0fc6 refactor 2023-05-02 10:26:18 +00:00
tamaina
b3ec47c3f4 初期ユーザー登録時にはpreservedUsernamesを無視する
Fix #10738
2023-05-02 10:18:57 +00:00
syuilo
8dc5edde76 fix(backend): フォローリクエストの通知が残る問題を修正
Fix #10611
2023-05-02 12:14:06 +09:00
syuilo
d535ec21a2 feat: チャンネルに色を設定できるように 2023-05-02 09:36:40 +09:00
nexryai
7de59a80a2
fix(backend): サーバーメトリクスのメモリ使用率が不正確になることがある不具合の修正 (#10728)
* FIX: サーバーメトリクスのメモリ使用率が不正確になることがある不具合の修正

* Update CHANGELOG
2023-04-30 06:47:00 +09:00
Namekuji
d28866f71a
enhance: account migration (#10592)
* copy block and mute then create follow and unfollow jobs

* copy block and mute and update lists when detecting an account has moved

* no need to care promise orders

* refactor updating actor and target

* automatically accept if a locked account had accepted an old account

* fix exception format

* prevent the old account from calling some endpoints

* do not unfollow when moving

* adjust following and follower counts

* check movedToUri when receiving a follow request

* skip if no need to adjust

* Revert "disable account migration"

This reverts commit 2321214c98.

* fix translation specifier

* fix checking alsoKnownAs and uri

* fix updating account

* fix refollowing locked account

* decrease followersCount if followed by the old account

* adjust following and followers counts when unfollowing

* fix copying mutings

* prohibit moved account from moving again

* fix move service

* allow app creation after moving

* fix lint

* remove unnecessary field

* fix cache update

* add e2e test

* add e2e test of accepting the new account automatically

* force follow if any error happens

* remove unnecessary joins

* use Array.map instead of for const of

* ユーザーリストの移行は追加のみを行う

* nanka iroiro

* fix misskey-js?

* ✌️

* 移行を行ったアカウントからのフォローリクエストの自動許可を調整

* newUriを外に出す

* newUriを外に出す2

* clean up

* fix newUri

* prevent moving if the destination account has already moved

* set alsoKnownAs via /i/update

* fix database initialization

* add return type

* prohibit updating alsoKnownAs after moving

* skip to add to alsoKnownAs if toUrl is known

* skip adding to the list if it already has

* use Acct.parse instead

* rename error code

* 🎨

* 制限を5から10に緩和

* movedTo(Uri), alsoKnownAsはユーザーidを返すように

* test api res

* fix

* 元アカウントはミュートし続ける

* 🎨

* unfollow

* fix

* getUserUriをUserEntityServiceに

* ?

* job!

* 🎨

* instance => server

* accountMovedShort, forbiddenBecauseYouAreMigrated

* accountMovedShort

* fix test

* import, pin禁止

* 実績を凍結する

* clean up

* ✌️

* change message

* ブロック, フォロー, ミュート, リストのインポートファイルの制限を32MiBに

* Revert "ブロック, フォロー, ミュート, リストのインポートファイルの制限を32MiBに"

This reverts commit 3bd7be35d8aa455cb01ae58f8172a71a50485db1.

* validateAlsoKnownAs

* 移行後2時間以内はインポート可能なファイルサイズを拡大

* clean up

* どうせactorをupdatePersonで更新するならupdatePersonしか移行処理を発行しないことにする

* handle error?

* リモートからの移行処理の条件を是正

* log, port

* fix

* fix

* enhance(dev): non-production環境でhttpサーバー間でもユーザー、ノートの連合が可能なように

* refactor (use checkHttps)

* MISSKEY_WEBFINGER_USE_HTTP

* Environment Variable readme

* NEVER USE IN PRODUCTION

* fix punyHost

* fix indent

* fix

* experimental

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-04-30 00:09:29 +09:00
tamaina
351bee325b perf(backend): Use ThinUser in admin/federation/remove-all-following 2023-04-29 14:35:48 +00:00
Namekuji
0ab50f87a2
fix #10651 (#10684) 2023-04-29 23:27:14 +09:00
tamaina
09764b909b
enhance(dev): non-production環境でhttpサーバー間でもユーザー、ノートの連合が可能なように (#10717)
* enhance(dev): non-production環境でhttpサーバー間でもユーザー、ノートの連合が可能なように

* refactor (use checkHttps)

* MISSKEY_WEBFINGER_USE_HTTP

* Environment Variable readme

* NEVER USE IN PRODUCTION

* fix punyHost
2023-04-29 23:26:47 +09:00
okayurisotto
e2d9c0efe2
fix(backend): alsoKnownAsの誤った定義を修正 (#10725) 2023-04-29 19:24:33 +09:00
syuilo
0ad7869249 feat: preserved usernames
Resolve #10704
2023-04-29 17:03:14 +09:00
Yuriha
a986203b38
[fix] .wav .flac ファイルを再生可能にする (#10686)
* .wav .flac ファイルを再生可能にする
file-typeにより判定されたMIME TypeをHTML5 Audio/Video要素に認識されるものに書き換える

* fix typecheck error

* frontend側の FILE_TYPE_BROWSERSAFEも更新

* Update packages/backend/src/core/FileInfoService.ts

* ✌️

* 後方互換を確保

* add tests

* update changelog.md

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-04-26 02:17:58 +09:00
tamaina
2aa75f5489 fix 2023-04-25 06:29:27 +00:00
tamaina
b9b9cd0c78
enhance(server): 環境変数MISSKEY_CONFIG_YMLでdefault.ymlを任意のymlに変更可能に (#10712)
* enhance(server): MISSKEY_CONFIG_YMLでconfigを設定可能に

* update changelog
2023-04-25 15:18:03 +09:00
syuilo
b57ee4dd96 fix of 34492f3c9a 2023-04-22 20:12:41 +09:00
syuilo
8876ae09ed .js 2023-04-22 20:05:36 +09:00