probably wasn't overfetching at all
All checks were successful
delpoy / build-and-deploy (push) Successful in 1m24s
All checks were successful
delpoy / build-and-deploy (push) Successful in 1m24s
This commit is contained in:
@ -1,6 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { onMount, tick } from 'svelte';
|
import { onMount, tick } from 'svelte';
|
||||||
import { sleep } from '$lib/components/utils';
|
|
||||||
|
|
||||||
export let onUpdate: () => Promise<any> = Promise.resolve;
|
export let onUpdate: () => Promise<any> = Promise.resolve;
|
||||||
|
|
||||||
|
@ -25,17 +25,20 @@
|
|||||||
let reportFilter = { draft: false, status: null, reporter: null, reported: null };
|
let reportFilter = { draft: false, status: null, reporter: null, reported: null };
|
||||||
let activeReport: typeof Report.prototype.dataValues | null = null;
|
let activeReport: typeof Report.prototype.dataValues | null = null;
|
||||||
|
|
||||||
async function fetchReports(
|
async function fetchReports(extendedFilter?: {
|
||||||
filter?: typeof reportFilter | { hash: string }
|
hash?: string;
|
||||||
): Promise<{ reports: typeof reports; count: number }> {
|
limit?: number;
|
||||||
|
from?: number;
|
||||||
|
}): Promise<{ reports: typeof reports; count: number }> {
|
||||||
if (!browser) return { reports: [], count: 0 };
|
if (!browser) return { reports: [], count: 0 };
|
||||||
|
|
||||||
const response = await fetch(`${env.PUBLIC_BASE_PATH}/admin/reports`, {
|
const response = await fetch(`${env.PUBLIC_BASE_PATH}/admin/reports`, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
...(filter ?? reportFilter),
|
...reportFilter,
|
||||||
limit: reportsPerRequest,
|
limit: extendedFilter?.limit ?? reportsPerRequest,
|
||||||
from: reports.length
|
from: extendedFilter?.from ?? reports.length,
|
||||||
|
hash: extendedFilter?.hash
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -92,7 +95,7 @@
|
|||||||
let saveActiveReportChangesModal: HTMLDialogElement;
|
let saveActiveReportChangesModal: HTMLDialogElement;
|
||||||
let newReportModal: HTMLDialogElement;
|
let newReportModal: HTMLDialogElement;
|
||||||
|
|
||||||
$: if (reportFilter) fetchReports().then((r) => (reports = r.reports));
|
$: if (reportFilter) fetchReports({ from: 0 }).then((r) => (reports = r.reports));
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="h-full flex flex-row">
|
<div class="h-full flex flex-row">
|
||||||
|
@ -22,14 +22,21 @@
|
|||||||
let userTableContainerElement: HTMLDivElement;
|
let userTableContainerElement: HTMLDivElement;
|
||||||
let newUserModal: HTMLDialogElement;
|
let newUserModal: HTMLDialogElement;
|
||||||
|
|
||||||
async function fetchUsers(): Promise<typeof users> {
|
async function fetchUsers(extendedFilter?: {
|
||||||
|
limit?: number;
|
||||||
|
from?: number;
|
||||||
|
}): Promise<typeof users> {
|
||||||
if (!browser) return [];
|
if (!browser) return [];
|
||||||
|
|
||||||
if (userTableContainerElement) userTableContainerElement.scrollTop = 0;
|
if (userTableContainerElement) userTableContainerElement.scrollTop = 0;
|
||||||
|
|
||||||
const response = await fetch(`${env.PUBLIC_BASE_PATH}/admin/users`, {
|
const response = await fetch(`${env.PUBLIC_BASE_PATH}/admin/users`, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: JSON.stringify({ ...userFilter, limit: usersPerRequest, from: users.length })
|
body: JSON.stringify({
|
||||||
|
...userFilter,
|
||||||
|
limit: extendedFilter?.limit ?? usersPerRequest,
|
||||||
|
from: extendedFilter?.from ?? users.length
|
||||||
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
return await response.json();
|
return await response.json();
|
||||||
@ -58,7 +65,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$: if (userFilter) fetchUsers().then((u) => (users = u));
|
$: if (userFilter) fetchUsers({ from: 0 }).then((u) => (users = u));
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="h-full flex flex-col overflow-hidden">
|
<div class="h-full flex flex-col overflow-hidden">
|
||||||
|
Reference in New Issue
Block a user