From 47d3a2b393fef916143ac1a4667d026ce4306f3e Mon Sep 17 00:00:00 2001 From: Arman Date: Wed, 22 Mar 2023 12:23:00 +0100 Subject: [PATCH 1/4] feat: create paginator component --- src/lib/components/index.ts | 1 + src/lib/components/paginator.svelte | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 src/lib/components/paginator.svelte diff --git a/src/lib/components/index.ts b/src/lib/components/index.ts index 54b2251a5..acffa839f 100644 --- a/src/lib/components/index.ts +++ b/src/lib/components/index.ts @@ -1,6 +1,7 @@ export { default as Modal } from './modal.svelte'; export { default as Pagination } from './pagination.svelte'; export { default as PaginationInline } from './paginationInline.svelte'; +export { default as Paginator } from './paginator.svelte'; export { default as Card } from './card.svelte'; export { default as CardGrid } from './cardGrid.svelte'; export { default as CardContainer } from './cardContainer.svelte'; diff --git a/src/lib/components/paginator.svelte b/src/lib/components/paginator.svelte new file mode 100644 index 000000000..a22673377 --- /dev/null +++ b/src/lib/components/paginator.svelte @@ -0,0 +1,19 @@ + + +
+ +
+ +
+

Total results: {items?.length}

+ +
From 33739017281071ca18e9f95e7c5f0b9bec6c4b5d Mon Sep 17 00:00:00 2001 From: Arman Date: Wed, 22 Mar 2023 13:16:12 +0100 Subject: [PATCH 2/4] refactor: use new component --- src/lib/components/paginator.svelte | 4 +- src/lib/components/permissions/team.svelte | 70 +++++++------- src/lib/components/permissions/user.svelte | 104 ++++++++++----------- 3 files changed, 87 insertions(+), 91 deletions(-) diff --git a/src/lib/components/paginator.svelte b/src/lib/components/paginator.svelte index a22673377..b1634d47f 100644 --- a/src/lib/components/paginator.svelte +++ b/src/lib/components/paginator.svelte @@ -9,9 +9,7 @@ $: paginatedItems = items.slice(offset, offset + limit); -
- -
+

Total results: {items?.length}

diff --git a/src/lib/components/permissions/team.svelte b/src/lib/components/permissions/team.svelte index 86670c14b..6c638d205 100644 --- a/src/lib/components/permissions/team.svelte +++ b/src/lib/components/permissions/team.svelte @@ -3,7 +3,7 @@ import { createEventDispatcher } from 'svelte'; import { sdk } from '$lib/stores/sdk'; import { Query, type Models } from '@aw-labs/appwrite-console'; - import { AvatarInitials, EmptySearch, Modal, PaginationInline } from '..'; + import { AvatarInitials, EmptySearch, Modal, PaginationInline, Paginator } from '..'; import type { Writable } from 'svelte/store'; import type { Permission } from './permissions.svelte'; @@ -74,41 +74,39 @@ placeholder="Search by name or ID" bind:value={search} /> {#if results?.teams?.length} -
- - - {#each results.teams as team (team.$id)} - {@const role = `team:${team.$id}`} - {@const exists = $groups.has(role)} - - - - - {/each} - -
- onSelection(event, role)} /> - - -
-
-
-

Total results: {results?.total}

- -
+ +
+ + + {#each paginatedItems as team (team.$id)} + {@const role = `team:${team.$id}`} + {@const exists = $groups.has(role)} + + + + + {/each} + +
+ onSelection(event, role)} /> + + +
+
+
{:else if search}
diff --git a/src/lib/components/permissions/user.svelte b/src/lib/components/permissions/user.svelte index c074af4fd..c2668fb56 100644 --- a/src/lib/components/permissions/user.svelte +++ b/src/lib/components/permissions/user.svelte @@ -1,7 +1,7 @@