+
Rows per page
+
@@ -97,13 +104,22 @@
] as TableHeader[];
});
+ const preferences = useViewPreferences();
+
const pagination = reactive({
descending: false,
page: 1,
- rowsPerPage: 10,
+ rowsPerPage: preferences.value.itemsPerTablePage,
rowsNumber: 0,
});
+ watch(
+ () => pagination.rowsPerPage,
+ newRowsPerPage => {
+ preferences.value.itemsPerTablePage = newRowsPerPage;
+ }
+ );
+
const next = () => pagination.page++;
const hasNext = computed(() => {
return pagination.page * pagination.rowsPerPage < props.items.length;
diff --git a/frontend/composables/use-preferences.ts b/frontend/composables/use-preferences.ts
index 848617510..93f81ccb0 100644
--- a/frontend/composables/use-preferences.ts
+++ b/frontend/composables/use-preferences.ts
@@ -9,6 +9,7 @@ export type LocationViewPreferences = {
editorAdvancedView: boolean;
itemDisplayView: ViewType;
theme: DaisyTheme;
+ itemsPerTablePage: number;
};
/**
@@ -24,6 +25,7 @@ export function useViewPreferences(): Ref {
editorAdvancedView: false,
itemDisplayView: "card",
theme: "homebox",
+ itemsPerTablePage: 10,
},
{ mergeDefaults: true }
);