mirror of
				https://codeberg.org/yeentown/barkey.git
				synced 2025-10-26 19:14:12 +00:00 
			
		
		
		
	View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/489 Closes #490 Approved-by: fEmber <acomputerdog@gmail.com> Approved-by: Marie <marie@kaifa.ch>
This commit is contained in:
		
						commit
						886948769e
					
				
					 3 changed files with 12 additions and 6 deletions
				
			
		|  | @ -66,6 +66,7 @@ export const paramDef = { | |||
| 	properties: { | ||||
| 		query: { type: 'string', nullable: true, default: null }, | ||||
| 		limit: { type: 'integer', minimum: 1, maximum: 100, default: 10 }, | ||||
| 		offset: { type: 'integer', minimum: 1, nullable: true, default: null }, | ||||
| 		sinceId: { type: 'string', format: 'misskey:id' }, | ||||
| 		untilId: { type: 'string', format: 'misskey:id' }, | ||||
| 	}, | ||||
|  | @ -91,7 +92,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- | |||
| 				//q.andWhere('emoji.name ILIKE :q', { q: `%${ sqlLikeEscape(ps.query) }%` });
 | ||||
| 				//const emojis = await q.limit(ps.limit).getMany();
 | ||||
| 
 | ||||
| 				emojis = await q.orderBy('length(emoji.name)', 'ASC').getMany(); | ||||
| 				emojis = await q.orderBy('length(emoji.name)', 'ASC').addOrderBy('id', 'DESC').getMany(); | ||||
| 				const queryarry = ps.query.match(/:([\p{Letter}\p{Number}\p{Mark}_+-]*):/ug); | ||||
| 
 | ||||
| 				if (queryarry) { | ||||
|  | @ -105,9 +106,9 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- | |||
| 						emoji.aliases.some(a => a.includes(queryNfc)) || | ||||
| 						emoji.category?.includes(queryNfc)); | ||||
| 				} | ||||
| 				emojis.splice(ps.limit + 1); | ||||
| 				emojis = emojis.slice((ps.offset ?? 0), ((ps.offset ?? 0) + ps.limit)); | ||||
| 			} else { | ||||
| 				emojis = await q.limit(ps.limit).getMany(); | ||||
| 				emojis = await q.take(ps.limit).skip(ps.offset ?? 0).getMany(); | ||||
| 			} | ||||
| 
 | ||||
| 			return this.emojiEntityService.packDetailedMany(emojis); | ||||
|  |  | |||
|  | @ -73,7 +73,7 @@ export type Paging<E extends keyof Misskey.Endpoints = keyof Misskey.Endpoints> | |||
| 	 */ | ||||
| 	reversed?: boolean; | ||||
| 
 | ||||
| 	offsetMode?: boolean; | ||||
| 	offsetMode?: boolean | ComputedRef<boolean>; | ||||
| 
 | ||||
| 	pageEl?: HTMLElement; | ||||
| }; | ||||
|  | @ -240,10 +240,11 @@ const fetchMore = async (): Promise<void> => { | |||
| 	if (!more.value || fetching.value || moreFetching.value || items.value.size === 0) return; | ||||
| 	moreFetching.value = true; | ||||
| 	const params = props.pagination.params ? isRef(props.pagination.params) ? props.pagination.params.value : props.pagination.params : {}; | ||||
| 	const offsetMode = props.offsetMode ? isRef(props.offsetMode) ? props.offsetMode.value : props.offsetMode : false; | ||||
| 	await misskeyApi<MisskeyEntity[]>(props.pagination.endpoint, { | ||||
| 		...params, | ||||
| 		limit: SECOND_FETCH_LIMIT, | ||||
| 		...(props.pagination.offsetMode ? { | ||||
| 		...(offsetMode ? { | ||||
| 			offset: offset.value, | ||||
| 		} : { | ||||
| 			untilId: Array.from(items.value.keys()).at(-1), | ||||
|  | @ -304,10 +305,11 @@ const fetchMoreAhead = async (): Promise<void> => { | |||
| 	if (!more.value || fetching.value || moreFetching.value || items.value.size === 0) return; | ||||
| 	moreFetching.value = true; | ||||
| 	const params = props.pagination.params ? isRef(props.pagination.params) ? props.pagination.params.value : props.pagination.params : {}; | ||||
| 	const offsetMode = props.offsetMode ? isRef(props.offsetMode) ? props.offsetMode.value : props.offsetMode : false; | ||||
| 	await misskeyApi<MisskeyEntity[]>(props.pagination.endpoint, { | ||||
| 		...params, | ||||
| 		limit: SECOND_FETCH_LIMIT, | ||||
| 		...(props.pagination.offsetMode ? { | ||||
| 		...(offsetMode ? { | ||||
| 			offset: offset.value, | ||||
| 		} : { | ||||
| 			sinceId: Array.from(items.value.keys()).at(-1), | ||||
|  |  | |||
|  | @ -98,6 +98,9 @@ const selectedEmojis = ref<string[]>([]); | |||
| const pagination = { | ||||
| 	endpoint: 'admin/emoji/list' as const, | ||||
| 	limit: 30, | ||||
| 	offsetMode: computed(() => ( | ||||
| 		(query.value && query.value !== '') ? true : false | ||||
| 	)), | ||||
| 	params: computed(() => ({ | ||||
| 		query: (query.value && query.value !== '') ? query.value : null, | ||||
| 	})), | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue