diff --git a/ui/src/App.svelte b/ui/src/App.svelte index d0d136b..3a4d32d 100644 --- a/ui/src/App.svelte +++ b/ui/src/App.svelte @@ -3,38 +3,28 @@ - - {#await promise} - Loading - {:then lists} - - {#each lists as list} - - - - {/each} - - {:catch error} - Something went wrong - {/await} - + diff --git a/ui/src/PackageItem.svelte b/ui/src/components/PackageItem.svelte similarity index 100% rename from ui/src/PackageItem.svelte rename to ui/src/components/PackageItem.svelte diff --git a/ui/src/PackageList.svelte b/ui/src/components/PackageList.svelte similarity index 62% rename from ui/src/PackageList.svelte rename to ui/src/components/PackageList.svelte index 7c3c06e..3a84ed0 100644 --- a/ui/src/PackageList.svelte +++ b/ui/src/components/PackageList.svelte @@ -2,7 +2,9 @@ import PackageItem from "./PackageItem.svelte" import { fade, fly, draw } from 'svelte/transition'; - export let data; + export let name; + export let items; + export let id; let active = false; let shown_items = []; @@ -15,17 +17,21 @@ active = false } - $: if (data.items.length <= 4) { - shown_items = data.items + $: if (items.length <= 4) { + shown_items = items ellipsed = false } else { - shown_items = data.items.slice(0, !active && 3 || data.items.length) + shown_items = items.slice(0, !active && 3 || items.length) ellipsed = true } + + function onClick(e) { + window.location = `/lists/${e}`; + } - - {data.name} + + {name} {#each shown_items as item} diff --git a/ui/src/main.ts b/ui/src/main.ts index e7e7816..10bf999 100644 --- a/ui/src/main.ts +++ b/ui/src/main.ts @@ -3,7 +3,6 @@ import App from './App.svelte'; const app = new App({ target: document.body, props: { - name: 'world' } }); diff --git a/ui/src/routes/PackageLists.svelte b/ui/src/routes/PackageLists.svelte new file mode 100644 index 0000000..bc590c8 --- /dev/null +++ b/ui/src/routes/PackageLists.svelte @@ -0,0 +1,33 @@ + + + + + {#await getUsers()} + Loading + {:then lists} + + {#each lists as list} + + + + {/each} + + {:catch error} + Something went wrong + {/await} + +
Loading
Something went wrong