diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2023-09-28 11:41:41 +0900 |
|---|---|---|
| committer | Insert5StarName <anime@shourai.de> | 2023-09-28 12:37:31 +0200 |
| commit | 0e7a1ac44ece3de0d3f16a1835e9ddab513f9f6d (patch) | |
| tree | 2f9af8b304f2b9dc0755069cc23e13f8b4bdf450 /packages/backend/src/server/api/endpoints | |
| parent | .js (diff) | |
| download | sharkey-0e7a1ac44ece3de0d3f16a1835e9ddab513f9f6d.tar.gz sharkey-0e7a1ac44ece3de0d3f16a1835e9ddab513f9f6d.tar.bz2 sharkey-0e7a1ac44ece3de0d3f16a1835e9ddab513f9f6d.zip | |
enhance: タイムラインからRenoteを除外するオプションを追加
Diffstat (limited to 'packages/backend/src/server/api/endpoints')
| -rw-r--r-- | packages/backend/src/server/api/endpoints/notes/user-list-timeline.ts | 16 | ||||
| -rw-r--r-- | packages/backend/src/server/api/endpoints/users/notes.ts | 8 |
2 files changed, 20 insertions, 4 deletions
diff --git a/packages/backend/src/server/api/endpoints/notes/user-list-timeline.ts b/packages/backend/src/server/api/endpoints/notes/user-list-timeline.ts index 6932073791..c20274b2ba 100644 --- a/packages/backend/src/server/api/endpoints/notes/user-list-timeline.ts +++ b/packages/backend/src/server/api/endpoints/notes/user-list-timeline.ts @@ -49,6 +49,8 @@ export const paramDef = { includeMyRenotes: { type: 'boolean', default: true }, includeRenotedMyNotes: { type: 'boolean', default: true }, includeLocalRenotes: { type: 'boolean', default: true }, + withReplies: { type: 'boolean', default: false }, + withRenotes: { type: 'boolean', default: true }, withFiles: { type: 'boolean', default: false, @@ -130,6 +132,20 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- })); } + if (!ps.withReplies) { + query.andWhere('note.replyId IS NULL'); + } + + if (ps.withRenotes === false) { + query.andWhere(new Brackets(qb => { + qb.orWhere('note.renoteId IS NULL'); + qb.orWhere(new Brackets(qb => { + qb.orWhere('note.text IS NOT NULL'); + qb.orWhere('note.fileIds != \'{}\''); + })); + })); + } + if (ps.withFiles) { query.andWhere('note.fileIds != \'{}\''); } diff --git a/packages/backend/src/server/api/endpoints/users/notes.ts b/packages/backend/src/server/api/endpoints/users/notes.ts index 982fcc858a..e660a0bb25 100644 --- a/packages/backend/src/server/api/endpoints/users/notes.ts +++ b/packages/backend/src/server/api/endpoints/users/notes.ts @@ -41,8 +41,8 @@ export const paramDef = { type: 'object', properties: { userId: { type: 'string', format: 'misskey:id' }, - includeReplies: { type: 'boolean', default: true }, - includeRenotes: { type: 'boolean', default: true }, + withReplies: { type: 'boolean', default: false }, + withRenotes: { type: 'boolean', default: true }, limit: { type: 'integer', minimum: 1, maximum: 100, default: 10 }, sinceId: { type: 'string', format: 'misskey:id' }, untilId: { type: 'string', format: 'misskey:id' }, @@ -115,11 +115,11 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- } } - if (!ps.includeReplies) { + if (!ps.withReplies) { query.andWhere('note.replyId IS NULL'); } - if (ps.includeRenotes === false) { + if (ps.withRenotes === false) { query.andWhere(new Brackets(qb => { qb.orWhere('note.renoteId IS NULL'); qb.orWhere(new Brackets(qb => { |