mirror of
				https://codeberg.org/yeentown/barkey.git
				synced 2025-11-04 07:24:13 +00:00 
			
		
		
		
	notes/local-timeline と notes/global-timeline のサインインを不要に
This commit is contained in:
		
							parent
							
								
									06e77a4f16
								
							
						
					
					
						commit
						43eb8bd99b
					
				
					 3 changed files with 36 additions and 29 deletions
				
			
		| 
						 | 
				
			
			@ -515,7 +515,6 @@ const endpoints: Endpoint[] = [
 | 
			
		|||
	},
 | 
			
		||||
	{
 | 
			
		||||
		name: 'notes/local-timeline',
 | 
			
		||||
		withCredential: true,
 | 
			
		||||
		limit: {
 | 
			
		||||
			duration: ms('10minutes'),
 | 
			
		||||
			max: 100
 | 
			
		||||
| 
						 | 
				
			
			@ -523,7 +522,6 @@ const endpoints: Endpoint[] = [
 | 
			
		|||
	},
 | 
			
		||||
	{
 | 
			
		||||
		name: 'notes/global-timeline',
 | 
			
		||||
		withCredential: true,
 | 
			
		||||
		limit: {
 | 
			
		||||
			duration: ms('10minutes'),
 | 
			
		||||
			max: 100
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,7 +9,7 @@ import { pack } from '../../../../models/note';
 | 
			
		|||
/**
 | 
			
		||||
 * Get timeline of global
 | 
			
		||||
 */
 | 
			
		||||
module.exports = async (params, user, app) => {
 | 
			
		||||
module.exports = async (params, user) => {
 | 
			
		||||
	// Get 'limit' parameter
 | 
			
		||||
	const [limit = 10, limitErr] = $.num.optional().range(1, 100).get(params.limit);
 | 
			
		||||
	if (limitErr) throw 'invalid limit param';
 | 
			
		||||
| 
						 | 
				
			
			@ -36,9 +36,9 @@ module.exports = async (params, user, app) => {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	// ミュートしているユーザーを取得
 | 
			
		||||
	const mutedUserIds = (await Mute.find({
 | 
			
		||||
	const mutedUserIds = user ? (await Mute.find({
 | 
			
		||||
		muterId: user._id
 | 
			
		||||
	})).map(m => m.muteeId);
 | 
			
		||||
	})).map(m => m.muteeId) : null;
 | 
			
		||||
 | 
			
		||||
	//#region Construct query
 | 
			
		||||
	const sort = {
 | 
			
		||||
| 
						 | 
				
			
			@ -46,18 +46,24 @@ module.exports = async (params, user, app) => {
 | 
			
		|||
	};
 | 
			
		||||
 | 
			
		||||
	const query = {
 | 
			
		||||
		// mute
 | 
			
		||||
		userId: {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		},
 | 
			
		||||
		'_reply.userId': {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		},
 | 
			
		||||
		'_renote.userId': {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		}
 | 
			
		||||
		// public only
 | 
			
		||||
		visibility: 'public'
 | 
			
		||||
	} as any;
 | 
			
		||||
 | 
			
		||||
	if (mutedUserIds && mutedUserIds.length > 0) {
 | 
			
		||||
		query.userId = {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		query['_reply.userId'] = {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		query['_renote.userId'] = {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		};
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (sinceId) {
 | 
			
		||||
		sort._id = 1;
 | 
			
		||||
		query._id = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,7 +9,7 @@ import { pack } from '../../../../models/note';
 | 
			
		|||
/**
 | 
			
		||||
 * Get timeline of local
 | 
			
		||||
 */
 | 
			
		||||
module.exports = async (params, user, app) => {
 | 
			
		||||
module.exports = async (params, user) => {
 | 
			
		||||
	// Get 'limit' parameter
 | 
			
		||||
	const [limit = 10, limitErr] = $.num.optional().range(1, 100).get(params.limit);
 | 
			
		||||
	if (limitErr) throw 'invalid limit param';
 | 
			
		||||
| 
						 | 
				
			
			@ -36,9 +36,9 @@ module.exports = async (params, user, app) => {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	// ミュートしているユーザーを取得
 | 
			
		||||
	const mutedUserIds = (await Mute.find({
 | 
			
		||||
	const mutedUserIds = user ? (await Mute.find({
 | 
			
		||||
		muterId: user._id
 | 
			
		||||
	})).map(m => m.muteeId);
 | 
			
		||||
	})).map(m => m.muteeId) : null;
 | 
			
		||||
 | 
			
		||||
	//#region Construct query
 | 
			
		||||
	const sort = {
 | 
			
		||||
| 
						 | 
				
			
			@ -46,17 +46,6 @@ module.exports = async (params, user, app) => {
 | 
			
		|||
	};
 | 
			
		||||
 | 
			
		||||
	const query = {
 | 
			
		||||
		// mute
 | 
			
		||||
		userId: {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		},
 | 
			
		||||
		'_reply.userId': {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		},
 | 
			
		||||
		'_renote.userId': {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		},
 | 
			
		||||
 | 
			
		||||
		// public only
 | 
			
		||||
		visibility: 'public',
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -64,6 +53,20 @@ module.exports = async (params, user, app) => {
 | 
			
		|||
		'_user.host': null
 | 
			
		||||
	} as any;
 | 
			
		||||
 | 
			
		||||
	if (mutedUserIds && mutedUserIds.length > 0) {
 | 
			
		||||
		query.userId = {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		query['_reply.userId'] = {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		};
 | 
			
		||||
 | 
			
		||||
		query['_renote.userId'] = {
 | 
			
		||||
			$nin: mutedUserIds
 | 
			
		||||
		};
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (sinceId) {
 | 
			
		||||
		sort._id = 1;
 | 
			
		||||
		query._id = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue