First realish round of updates by Gemini...
This commit is contained in:
@@ -28,6 +28,29 @@ let lq__event_obj_li = $derived(liveQuery(async () => {
|
||||
return results;
|
||||
}));
|
||||
|
||||
let items_per_page = 10;
|
||||
let current_page = $state(1);
|
||||
|
||||
let paginated_events = $derived(() => {
|
||||
const start = (current_page - 1) * items_per_page;
|
||||
const end = start + items_per_page;
|
||||
return $lq__event_obj_li?.slice(start, end) ?? [];
|
||||
});
|
||||
|
||||
let total_events = $derived($lq__event_obj_li?.length ?? 0);
|
||||
let total_pages = $derived(Math.ceil(total_events / items_per_page));
|
||||
|
||||
function next_page() {
|
||||
if (current_page < total_pages) {
|
||||
current_page++;
|
||||
}
|
||||
}
|
||||
|
||||
function prev_page() {
|
||||
if (current_page > 1) {
|
||||
current_page--;
|
||||
}
|
||||
}
|
||||
|
||||
onMount(() => {
|
||||
// console.log('Events - Presentation Management: +page.svelte');
|
||||
@@ -85,7 +108,7 @@ onMount(() => {
|
||||
<ul
|
||||
class="space-y-2"
|
||||
>
|
||||
{#each $lq__event_obj_li as event_obj}
|
||||
{#each paginated_events as event_obj}
|
||||
<li
|
||||
class:dim={event_obj?.hide}
|
||||
>
|
||||
@@ -128,6 +151,11 @@ onMount(() => {
|
||||
</li>
|
||||
{/each}
|
||||
</ul>
|
||||
<div class="flex justify-center items-center space-x-4 mt-4">
|
||||
<button class="btn btn-sm" onclick={prev_page} disabled={current_page === 1}>Previous</button>
|
||||
<span>Page {current_page} of {total_pages}</span>
|
||||
<button class="btn btn-sm" onclick={next_page} disabled={current_page === total_pages}>Next</button>
|
||||
</div>
|
||||
{:else}
|
||||
<div class="flex flex-row items-center justify-center">
|
||||
<span class="fas fa-exclamation-triangle text-red-500 mx-1"></span>
|
||||
@@ -157,3 +185,4 @@ onMount(() => {
|
||||
|
||||
<style lang="postcss">
|
||||
</style>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user