summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api (follow)
Commit message (Collapse)AuthorAgeFilesLines
* fix(general): ↵zyoshoka2024-03-151-0/+2
| | | | | | | | | `flash/create`でPlayの公開範囲を指定できない問題の修正と編集画面の調整 (#13574) * fix(backend): param `visibility` wasn't included in `flash/create` * fix(frontend): tweak flash editor ui * Update CHANGELOG.md
* refactor(backend): UserEntityService.packMany()の高速化 (#13550)おさむのひと2024-03-121-5/+3
| | | | | * refactor(backend): UserEntityService.packMany()の高速化 * 修正
* enhance(backend): antennas/updateの必須項目をantennaIdのみに (#13542)yupix2024-03-101-5/+7
| | | | | * refactor: antennas/updateの必須項目を最小限に * fix: userListIdがnullにできない
* メンションの最大数をロールごとに設定可能にする (#13343)Yuriha2024-02-291-2/+11
| | | | | | | | | | | | | | | | | | | | | * Add new role policy: maximum mentions per note * fix * Reviewを反映 * fix * Add ChangeLog * Update type definitions * Add E2E test * CHANGELOG に説明を追加 --------- Co-authored-by: taichan <40626578+tai-cha@users.noreply.github.com>
* fix(backend): ↵zyoshoka2024-02-291-0/+8
| | | | | | | | | ダイレクトなノートに対してはダイレクトでしか返信できないように (#13477) * fix(backend): ダイレクトなノートに対してはダイレクトでしか返信できないように * Update CHANGELOG.md * test(backend): `notes/create`とWebSocket関連のテストを追加
* enhance: 通知の履歴をリセットできるように (#13335)かっこかり2024-02-293-0/+40
| | | | | | | | | | | | | | | * enhance: 通知の履歴をリセットできるように * Update Changelog * 通知欄も連動して更新するように * revert some changes * Update CHANGELOG.md * Remove unused part * fix
* enhance(backend): ↵taichan2024-02-282-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 通知がミュート・凍結を考慮するようにする (#13412) * Never return broken notifications #409 Since notifications are stored in Redis, we can't expect relational integrity: deleting a user will *not* delete notifications that mention it. But if we return notifications with missing bits (a `follow` without a `user`, for example), the frontend will get very confused and throw an exception while trying to render them. This change makes sure we never expose those broken notifications. For uniformity, I've applied the same logic to notes and roles mentioned in notifications, even if nobody reported breakage in those cases. Tested by creating a few types of notifications with a `notifierId`, then deleting their user. (cherry picked from commit 421f8d49e5d7a8dc3a798cc54716c767df8be3cb) * Update Changelog * Update CHANGELOG.md * enhance: 通知がミュートを考慮するようにする * enhance: 通知が凍結も考慮するようにする * fix: notifierIdがない通知が消えてしまう問題 * Add tests (通知がミュートを考慮しているかどうか) * fix: notifierIdがない通知が消えてしまう問題 (grouped) * Remove unused import * Fix: typo * Revert "enhance: 通知が凍結も考慮するようにする" This reverts commit b1e57e571dfd9a7d8b2430294473c2053cc3ea33. * Revert API handling * Remove unused imports * enhance: Check if notifierId is valid in NotificationEntityService * 通知作成時にpackしてnullになったらあとの処理をやめる * Remove duplication of valid notifier check * add filter notification is not null * Revert "Remove duplication of valid notifier check" This reverts commit 239a6952f717add53d52c3e701e7362eb1987645. * Improve performance * Fix packGrouped * Refactor: 判定部分を共通化 * Fix condition * use isNotNull * Update CHANGELOG.md * filterの改善 * Refactor: DONT REPEAT YOURSELF Note: GroupedNotificationはNotificationの拡張なのでその例外だけ書けば基本的に共通の処理になり複雑な個別の処理は増えにくいと思われる * Add groupedNotificationTypes * Update misskey-js typedef * Refactor: less sql calls * refactor * clean up * filter notes to mark as read * packed noteがmapなのでそちらを使う * if (notesToRead.size > 0) * if (notes.length === 0) return; * fix * Revert "if (notes.length === 0) return;" This reverts commit 22e2324f9633bddba50769ef838bc5ddb4564c88. * :art: * console.error * err * remove try-catch * 不要なジェネリクスを除去 * Revert (既読処理をpack内で行うものを元に戻す) * Clean * Update packages/backend/src/core/entities/NotificationEntityService.ts * Update packages/backend/src/core/entities/NotificationEntityService.ts * Update packages/backend/src/core/entities/NotificationEntityService.ts * Update packages/backend/src/core/entities/NotificationEntityService.ts * Update packages/backend/src/core/NotificationService.ts * Clean --------- Co-authored-by: dakkar <dakkar@thenautilus.net> Co-authored-by: kakkokari-gtyih <daisho7308+f@gmail.com> Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com> Co-authored-by: tamaina <tamaina@hotmail.co.jp> Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* fix(backend): ↵zyoshoka2024-02-281-1/+9
| | | | | | | | | | | | | | | | | リノート時のHTLへのストリーミングの意図しない挙動を修正 (#13425) * fix(backend): リノート時のストリーミングの意図しない挙動を修正 * Update CHANGELOG.md * fix: 不要な返り値 * fix: 不適切な条件分岐を修正 * test(backend): add htl tests --------- Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* fix(backend): fix incorrect schemas (#13458)zyoshoka2024-02-261-1/+4
|
* admin/emoji/updateの必須項目を減らす 等 (#13449)FineArchs2024-02-251-9/+18
| | | | | | | | | | | | | | | | | * admin/emoji/update enhancement * add CustomEmojiService.getEmojiByName * update endpoint * fix * Update update.ts * Update autogen files * type assertion * Update CHANGELOG.md
* fix: 古いキャッシュを使うのを修正 (#13453)tamaina2024-02-252-4/+4
|
* refactorsyuilo2024-02-241-1/+1
|
* enhance: ↵tamaina2024-02-231-12/+1
| | | | | | | | | リモートのフォロワーから再度Followが来た場合、acceptを返してあげる (#13388) * enhance: リモートのフォロワーから再度Followが来た場合、acceptを返してあげる * nanka meccha kaeta * ブロックチェックの後にフォロー関係の存在チェックをする
* fix(backend): ↵okayurisotto2024-02-231-1/+1
| | | | より多くの人に使われているハッシュタグが検索結果上位に来るように (#11498) (#13340)
* fix: ↵tamaina2024-02-233-0/+16
| | | | | | | | | プッシュ通知の変更が1時間ほど反映されない問題を修正 (#13407) * fix: プッシュ通知の変更が1時間ほど反映されない問題を修正 * 410 to refresh * refreshCache
* refactor(backend): ↵okayurisotto2024-02-233-3/+6
| | | | | | | `Array.prototype.filter`での非null確認では`isNotNull`関数を使うように (#13442) * `Array.prototype.filter`での非null確認では`isNotNull`関数を使うように * `{}` -> `NonNullable<unknown>`
* enhance: `meta`をSSR HTMLに埋め込む (#13436)かっこかり2024-02-231-409/+8
| | | | | | | | | | | | | | | | | * enhance: `meta`をSSR HTMLに埋め込む * HTML Metaの有効時間を指定 * 1時間 * MetaEntityService * JSONをPackするように * :v: --------- Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* flash/update で部分的に変更できるようにする (#13396)FineArchs2024-02-221-6/+6
| | | | | | | | | | | | | | | | | | | * make flash/update params optional * Update autogen files pnpm run build-misskey-js-with-types * Update update.ts * Update CHANGELOG.md * hasOwnProperty -> hasOwn Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com> --------- Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* refactor: Refactor NoteReadService.read (#13429)tamaina2024-02-221-3/+1
| | | | | | | | | | | * refactor: Refactor NoteReadService.read * clean up * Update packages/backend/src/core/NoteReadService.ts --------- Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* Merge branch 'develop' of https://github.com/misskey-dev/misskey into developsyuilo2024-02-221-2/+3
|\
| * fix: 禁止キーワードを含むノートがDelayed ↵anatawa122024-02-221-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Queueに追加されて再処理される問題 (#13428) * refactor: use IdentifiableError instead of NoteCreateService.ContainsProhibitedWordsError * fix: notes with prohibited words are reprocessed with delay * docs(changelog): 禁止キーワードを含むノートがDelayed Queueに追加されて再処理される問題 * lint: fix lint errors * fix: rethrowするべきなのにrethrowし忘れていたのを修正
* | enhance: ↵syuilo2024-02-222-3/+14
|/ | | | サーバーごとにモデレーションノートを残せるように
* fix: allow moderators see role assigned users; fix #13301 (#13315)Cocoa Hoto2024-02-171-1/+1
|
* feat: license violation protection (#13285)Acid Chicken (硫酸鶏)2024-02-173-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * spec(frontend): aboutページにリポジトリ・フィードバックのURLを表示させる Cherry-picked from MisskeyIO#441 Cherry-picked from MisskeyIO#438 * feat: license violation protection * build: fix typo * build: fix typo * fix: farewell to the static type land * fix: key typo * fix: import typo * fix: properly interpret `prominently` * docs: add disclaimer * docs: update CHANGELOG * chore: add gap --------- Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com> Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* refactor(backend): remove/replace deprecated type deps (#13252)zyoshoka2024-02-161-1/+1
|
* fix(backend): add missing schemas and fix incorrect schemas (#13295)zyoshoka2024-02-1620-37/+296
| | | | | | | | | | | | | | | * fix(backend): add missing schemas and fix incorrect schemas * fix: ci * fix: ci (本命) * fix: run `pnpm build-misskey-js-with-types` * fix: typos * fix: role-condition-formula-value contains `id` * fix: incorrect schema
* (re) update SPDX-FileCopyrightTexttamaina2024-02-13405-405/+405
| | | | Fix #13290
* Revert "update SPDX-FileCopyrightText"tamaina2024-02-13405-430/+430
| | | | This reverts commit 9b5aeb76d8c9372d67058c512597152b6bf222f2.
* update SPDX-FileCopyrightTextsyuilo2024-02-12405-430/+430
|
* fix: ↵おさむのひと2024-02-093-24/+57
| | | | | | | 特定文字列を含むノートを投稿できないようにする管理画面用設定項目を追加 (#13210) * fix: 特定文字列を含むノートを投稿できないようにする管理画面用設定項目を追加 * Serviceでチェックするように変更
* refactor(backend): exist -> exists (#13203)かっこかり2024-02-0826-33/+33
| | | | | * refactor(backend): exist -> exists * fix
* ignore `instance.actor` when checking if there are local users (#13146)Gianni Ceccarelli2024-02-042-11/+8
| | | | | | | | | | | | | | | | | | | * ignore `instance.actor` when checking if there are local users We've seen this happen a few times: * there was some AP software at $some_domain * it gets replaced by Misskey * before the first user can be created, an AP activity comes in * Misskey resolves the activity * to do this, it creates the `instance.actor` to sign its request * now there *is* a local user, so the `meta` endpoint returns `requireSetup:false` * the admin is very confused This commit factors out the check, and doesn't count the `instance.actor` as a real user. * autogen bits
* fix: api-docが開けない問題を修正 (#13132)yukineko2024-02-022-38/+40
| | | | | | | | | | | * refactor: 自己参照を使用している箇所に`selfRef`を持たせるように * feat: スキーマ生成時に自己参照を含むかどうかを指定できるように * fix: api.jsonにselfRefが含まれているのを修正 * refactor: 他の箇所と同様にselfRefの除去を行うように * remove: 不要なimportを削除
* fix: Hide reactions of all remote users / feat: moderators can see reactions ↵tamaina2024-02-011-3/+21
| | | | | | | | | | | | | of all users (#13128) * fix: Hide reactions of all remote users https://github.com/misskey-dev/misskey/issues/12964 * feat: Moderators can see reactions of all users https://github.com/misskey-dev/misskey/issues/13127 * modify CHANGELOG.md * fix iAmModerator
* refactor(backend): User関連のスキーマ/型の指定を強くする ↵zyoshoka2024-01-3136-51/+52
| | | | | | | | | | | | | | | | | (#12808) * refactor(backend): User関連のスキーマ/型の指定を強くする * refactor(backend): `pack()`の引数にスキーマを指定するように * chore: fix ci * fix: 変更漏れ * fix ci --------- Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
* refactor: frontendのcomponentsの型エラーを改善 (#12926)yukineko2024-01-303-3/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add: safeFloatParserを追加 * fix: 欠けていた型を追加 * refactor: pageBlockTypesをjson-schemaに移植 * refactor: components/global内の型エラーが出ている箇所を修正 * lint: fix null check style * refactor: fix type error * refactor: fix some type errors * fix: 翻訳が抜けていた箇所を修正 * refactor: getJsonSchemaで正しいスキーマが返されるように修正 * fix: MkChartの型エラーとbytesオプションが機能していない問題を修正 * fix(misskey-js): `drive`->`folderUpdated`のpayloadの型が間違っていたのを修正 * refactor: fix some type errors * change: Captcha読み込み中の文言をLoadingに変更 * refactor(backend/misskey-js): MainEventの型を改善 * refactor: chartjs-plugin-gradientが二重でpluginに登録されていたのを修正 * update: misskey-js.api.md * refactor: fix some type errors * fix: backendのtypecheckが落ちていたのを修正 * update: misskey-js.api.md * add: json-schemaのnoteにpollの型定義を追加 * refactor: noteのjson-schemaの型を改善 * refactor: MkPoll * refactor: fix some type errors * change: UserLiteにisLockedを持たせるように * fix: notificationスキーマにroleが含まれていないのを修正 * Revert "change: UserLiteにisLockedを持たせるように" This reverts commit 1bb0c8e7a9b19a4e9f21bf7381712b98f27672a5. * fix: フォロー通知から鍵垢へのフォローを行うと処理中のまま止まってしまう問題を修正 * refactor: noteスキーマのvisibilityにenumを追加 * change: deepCloneのCloneableTypeにundefinedを追加 * refactor: fix some type errors * refactor: `allowEmpty: false`を使用していた箇所を`minLength: 1`に置き換え * enhance: API 'retension' のresponseの型を追加 * fix: Chart関連のtooltipが正しい位置に表示されない問題を修正 * refactor: fix some type errors * fix: 型情報が不足していたのを修正 * enhance: announcementスキーマにenumを追加 * enhance: ロールポリシーの型定義をRoleServiceからjson-schemaに移植 * refactor: policiesを`ref: RolePolicies`に統一 * fix: API `meta` のレスポンスの型にpoliciesが含まれていないのを修正 * refactor: fix some type errors * fix: backendのlintが落ちているのを修正 * fix: MkFoldableSectionの開閉時のanimationが適用されていない問題を修正 * fix: backendのtypecheckが落ちているのを修正 * update: run build-misskey-js-with-types * fix: MkDialogのmount時に文字数制限の判定が行われない問題を修正 * update: CHANGELOG.md * refactor: MkUserSelectDialogの型を改善 * fix: deepCloneでundefinedはcloneしないように (#9207) * change: frontendのcloneをbackend側にも反映 * update: CHANGELOG.md * fix: RoleServiceからPackを通して型RolePoliciesに依存させないように * Update packages/frontend/src/scripts/get-note-summary.ts * revert RoleService.ts changes * change: optional chaining -> non-null assertion * remove: unused import * fix: propsで渡されたuserがUserLiteの場合に意図しない動作になってしまうのを修正 * change: fix null check style * refactor: fix type error * change: fix null check style * Update packages/frontend/src/components/MkDrive.vue Co-authored-by: syuilo <Syuilotan@yahoo.co.jp> * refactor: css moduleでglobalを使わないように * refactor: roleのiconUrlは必ず存在するものとして扱うように * enhance: MenuButtonのactiveにcomputedを受け付けられるように * Update packages/frontend/src/components/MkNotePreview.vue * Update MkWindow.vue * refactor: notification.noteは必ず存在するものとして扱うように * Update packages/frontend/src/components/MkNotification.vue Co-authored-by: syuilo <Syuilotan@yahoo.co.jp> * fix: MkSignupDialogでdoneのemit時にresを含んでいなかったのを修正 * Update packages/frontend/src/scripts/clone.ts Co-authored-by: syuilo <Syuilotan@yahoo.co.jp> * refactor: 不要な返り値の型を削除 * refactor: 不要なnullチェックを削除 * update: misskey-js-autogen * update: clone.ts * refactor * Update MkNotification.vue * Update MkNotification.vue * :v: * Update MkNotification.vue * Update MkNotification.vue * Update MkNotification.vue * Update MkNotifications.vue * Update MkUserSetupDialog.Profile.vue * Update MkUserCardMini.vue * :v: * Update MkMenu.vue --------- Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
* enhance(reversi): 変則なしマッチングを可能にsyuilo2024-01-241-1/+4
|
* enhance(reversi): more robust matching processsyuilo2024-01-241-1/+2
|
* enhance(reversi): 準備中の自分の対局も一覧に表示するようにsyuilo2024-01-241-1/+2
|
* enhance(reversi): improve desync handlingsyuilo2024-01-234-15/+71
|
* perf(reversi): improve performance of reversi backendsyuilo2024-01-223-4/+6
|
* enhance(reversi): some tweakssyuilo2024-01-221-5/+3
|
* enhance(reversi): tweak reversisyuilo2024-01-211-0/+8
|
* enhance(reversi): tweak reversisyuilo2024-01-212-34/+17
|
* enhance(reversi): tweak reversisyuilo2024-01-201-4/+10
|
* enhance(reversi): tweak reversisyuilo2024-01-201-3/+3
|
* feat: reversisyuilo2024-01-1912-1/+557
| | | | Resolve #12962
* enhance(drop-and-fusion): ゲームバランスの調整などsyuilo2024-01-171-2/+2
|
* refactor: ↵YS2024-01-154-7/+9
| | | | | | | | | | | | | noteテーブルのインデックス整理と配列カラムへのクエリでインデックスを使うように (#12993) * Optimize note model index * enhance(backend): ANY()をやめる (MisskeyIO#239) * add small e2e test drive endpoint --------- Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
* fix(backend): 虚無ノートを投稿できる問題の修正と `api.json` ↵zyoshoka2024-01-137-46/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | の OpenAPI Specification 3.1.0 への対応 (#12969) * fix(backend): `text: null`だけのノートは投稿できないように * add test * Update CHANGELOG.md * chore: bump OpenAPI Specification from 3.0.0 to 3.1.0 * chore: テストがすでにコメントで記述されていたのでそっちを使うことにする * fix test * fix(backend): prohibit posting whitespace-only notes * Update CHANGELOG.md * fix(backend): `renoteId`または`fileIds`(`mediaIds`)または`poll`が`null`でない場合に、`text が空白文字のみで構成されたリクエストになることを許可して、結果は`text: null`を返すように * test(backend): 引用renoteで空白文字のみで構成されたtextにするとレスポンスが`text: null`になることをチェックするテストを追加 * fix(frontend): `text`が`null`であって`renoteId`と`replyId`が`null`でないようなノートは引用リノートとして表示するように * fix(misskey-js): OpenAPI 3.1に対応 * fix(misskey-js): 型生成をOpenAPI Specification 3.1.0に対応 * fix(ci): `validate-api.json`をOpenAPI Specification 3.1.0に対応 * fix(ci): スキーマ書き換えの際のミスを修正 * Revert "fix(frontend): `text`が`null`であって`renoteId`と`replyId`が`null`でないようなノートは引用リノートとして表示するように" This reverts commit a9ca55343df6ea1679599acbc4801f78aa3a242b. * fix(misskey-js): `build-misskey-js-with-types`時は`api.json`のGETをスキップするように * Revert "fix(misskey-js): `build-misskey-js-with-types`時は`api.json`のGETをスキップするように" This reverts commit 865458989f9ddacc38d1bb3743a41ea828dbf324. * fix(misskey-js): `openapi-parser`で`validate`のかわりに`parse`を用いるように * Update CHANGELOG.md