Update use-pagination.ts
This commit is contained in:
		
							parent
							
								
									d3bc92daff
								
							
						
					
					
						commit
						1b77f0d2b2
					
				| 
						 | 
					@ -3,7 +3,7 @@
 | 
				
			||||||
 * SPDX-License-Identifier: AGPL-3.0-only
 | 
					 * SPDX-License-Identifier: AGPL-3.0-only
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import { computed, isRef, nextTick, onActivated, onBeforeMount, onBeforeUnmount, onDeactivated, onUnmounted, ref, watch } from 'vue';
 | 
					import { computed, isRef, ref, watch } from 'vue';
 | 
				
			||||||
import * as Misskey from 'misskey-js';
 | 
					import * as Misskey from 'misskey-js';
 | 
				
			||||||
import type { ComputedRef, Ref, ShallowRef } from 'vue';
 | 
					import type { ComputedRef, Ref, ShallowRef } from 'vue';
 | 
				
			||||||
import { misskeyApi } from '@/utility/misskey-api.js';
 | 
					import { misskeyApi } from '@/utility/misskey-api.js';
 | 
				
			||||||
| 
						 | 
					@ -162,35 +162,23 @@ export function usePagination<T>(props: {
 | 
				
			||||||
		});
 | 
							});
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/**
 | 
						function trim() {
 | 
				
			||||||
 * 新着アイテムをitemsの先頭に追加し、MAX_ITEMSを適用する
 | 
							if (items.value.size >= MAX_ITEMS) canFetchMore.value = true;
 | 
				
			||||||
 * @param newItems 新しいアイテムの配列
 | 
							items.value = new Map([...items.value].slice(0, MAX_ITEMS));
 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
	function unshiftItems(newItems: MisskeyEntity[]) {
 | 
					 | 
				
			||||||
		const length = newItems.length + items.value.size;
 | 
					 | 
				
			||||||
		items.value = new Map([...arrayToEntries(newItems), ...items.value].slice(0, MAX_ITEMS));
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		if (length >= MAX_ITEMS) canFetchMore.value = true;
 | 
					 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/**
 | 
						function unshiftItems(newItems: MisskeyEntity[]) {
 | 
				
			||||||
 * 古いアイテムをitemsの末尾に追加し、MAX_ITEMSを適用する
 | 
							items.value = new Map([...arrayToEntries(newItems), ...items.value]);
 | 
				
			||||||
 * @param oldItems 古いアイテムの配列
 | 
						}
 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
	function concatItems(oldItems: MisskeyEntity[]) {
 | 
					 | 
				
			||||||
		const length = oldItems.length + items.value.size;
 | 
					 | 
				
			||||||
		items.value = new Map([...items.value, ...arrayToEntries(oldItems)].slice(0, MAX_ITEMS));
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (length >= MAX_ITEMS) canFetchMore.value = true;
 | 
						function concatItems(oldItems: MisskeyEntity[]) {
 | 
				
			||||||
 | 
							items.value = new Map([...items.value, ...arrayToEntries(oldItems)]);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	function prepend(item: MisskeyEntity) {
 | 
						function prepend(item: MisskeyEntity) {
 | 
				
			||||||
		unshiftItems([item]);
 | 
							unshiftItems([item]);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/*
 | 
					 | 
				
			||||||
 * アイテムを末尾に追加する(使うの?)
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
	const appendItem = (item: MisskeyEntity): void => {
 | 
						const appendItem = (item: MisskeyEntity): void => {
 | 
				
			||||||
		items.value.set(item.id, item);
 | 
							items.value.set(item.id, item);
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
| 
						 | 
					@ -215,6 +203,7 @@ export function usePagination<T>(props: {
 | 
				
			||||||
		fetchMoreAhead,
 | 
							fetchMoreAhead,
 | 
				
			||||||
		unshiftItems,
 | 
							unshiftItems,
 | 
				
			||||||
		prepend,
 | 
							prepend,
 | 
				
			||||||
 | 
							trim,
 | 
				
			||||||
		error,
 | 
							error,
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue