diff options
| author | secondl1ght <[email protected]> | 2022-07-30 20:45:19 -0600 |
|---|---|---|
| committer | secondl1ght <[email protected]> | 2022-07-30 20:45:19 -0600 |
| commit | 27cbd543cece74228680d74f276eca89e13b557b (patch) | |
| tree | bfec136e0ca6350897fa0e7a6126921e2f9b649b /src/components | |
| parent | 2bca310acc4ca22960c5902b402c2ae23d0f7755 (diff) | |
| download | coinos-ui-27cbd543cece74228680d74f276eca89e13b557b.tar.gz coinos-ui-27cbd543cece74228680d74f276eca89e13b557b.zip | |
add user public page
Diffstat (limited to 'src/components')
| -rw-r--r-- | src/components/AppHeader.svelte | 84 |
1 files changed, 46 insertions, 38 deletions
diff --git a/src/components/AppHeader.svelte b/src/components/AppHeader.svelte index 9f73adbf..d0123650 100644 --- a/src/components/AppHeader.svelte +++ b/src/components/AppHeader.svelte @@ -5,6 +5,8 @@ import { goto } from '$app/navigation'; import { Icon } from '$comp'; + export let avatarPosition = 'left-[calc(50vw-48px)]'; + const menuButtons = [ { title: 'Customers', icon: 'customers', goto: 'customers' }, { title: 'Dashboard', icon: 'dash', goto: 'dashboard' }, @@ -24,48 +26,54 @@ }; </script> -<header class="bg-gradient-to-r from-primary to-gradient h-[20vh] w-full relative"> +<header class="bg-gradient-to-r from-primary to-gradient h-[175px] w-full relative"> <nav class="flex justify-end items-center space-x-4 p-5"> - <a href={`/${$user.username}/receive`}> - <button class="bg-white p-2 rounded-full w-12 h-12" - ><Icon icon="numpad" style="mx-auto" /> - </button> - </a> - <a href={`/${$user.username}/transactions`}> - <button class="bg-white p-2 rounded-full w-12 h-12" - ><Icon icon="clock" style="mx-auto" /> - </button> - </a> - <a href={`/${$user.username}`}> - <button class="bg-white p-2 rounded-full w-12 h-12" - ><Icon icon="profile" style="mx-auto" /> - </button> - </a> - <div class="relative"> - <button class="bg-white p-2 rounded-full w-12 h-12" on:click={() => (showMenu = !showMenu)} - ><Icon icon="menu" style="mx-auto" /> - </button> - <div - class="{showMenu - ? 'block' - : 'hidden'} absolute top-14 right-0 bg-white rounded-3xl p-8 shadow-xl z" - > - <ul class="space-y-5 w-32"> - {#each menuButtons as button} - <li> - <button - class="flex justify-center items-center font-semibold text-sm" - on:click={() => handleMenuItemClick(button.goto)} - ><Icon icon={button.icon} style="mr-1" /> {button.title} - </button> - </li> - {/each} - </ul> + {#if $user} + <a href={`/${$user.username}/receive`}> + <button class="bg-white p-2 rounded-full w-12 h-12" + ><Icon icon="numpad" style="mx-auto" /> + </button> + </a> + <a href={`/${$user.username}/transactions`}> + <button class="bg-white p-2 rounded-full w-12 h-12" + ><Icon icon="clock" style="mx-auto" /> + </button> + </a> + <a href={`/${$user.username}`}> + <button class="bg-white p-2 rounded-full w-12 h-12" + ><Icon icon="profile" style="mx-auto" /> + </button> + </a> + <div class="relative"> + <button class="bg-white p-2 rounded-full w-12 h-12" on:click={() => (showMenu = !showMenu)} + ><Icon icon="menu" style="mx-auto" /> + </button> + <div + class="{showMenu + ? 'block' + : 'hidden'} absolute top-14 right-0 bg-white rounded-3xl p-8 shadow-xl z" + > + <ul class="space-y-5 w-32"> + {#each menuButtons as button} + <li> + <button + class="flex justify-center items-center font-semibold text-sm" + on:click={() => handleMenuItemClick(button.goto)} + ><Icon icon={button.icon} style="mr-1" /> {button.title} + </button> + </li> + {/each} + </ul> + </div> </div> - </div> + {:else} + <a href="/login"> + <button class="bg-white px-5 py-2 rounded-xl font-semibold text-sm">Sign in </button> + </a> + {/if} </nav> <div - class="absolute top-[calc(20vh-48px)] left-[calc(50vw-48px)] rounded-full border-4 border-white p-4 bg-gradient-to-r from-primary to-gradient w-24 h-24" + class="absolute top-[calc(175px-48px)] {avatarPosition} rounded-full border-4 border-white p-4 bg-gradient-to-r from-primary to-gradient w-24 h-24" > <Icon icon="logo-symbol-white" style="mx-auto" /> </div> |
