diff options
author | mat <github@matdoes.dev> | 2022-04-09 15:08:37 -0500 |
---|---|---|
committer | mat <github@matdoes.dev> | 2022-04-09 15:08:37 -0500 |
commit | 312500edd00c44c0d28c78042ffb08de33ba3c90 (patch) | |
tree | 93041005f687f5ff4154ab30a24e7c5302a57abf /src/lib/sections/Coop.svelte | |
parent | ab3dcb36938c9da584bfcd2162dc02f999b50c8b (diff) | |
download | skyblock-stats-312500edd00c44c0d28c78042ffb08de33ba3c90.tar.gz skyblock-stats-312500edd00c44c0d28c78042ffb08de33ba3c90.tar.bz2 skyblock-stats-312500edd00c44c0d28c78042ffb08de33ba3c90.zip |
Add coop section
Diffstat (limited to 'src/lib/sections/Coop.svelte')
-rw-r--r-- | src/lib/sections/Coop.svelte | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/src/lib/sections/Coop.svelte b/src/lib/sections/Coop.svelte new file mode 100644 index 0000000..867d878 --- /dev/null +++ b/src/lib/sections/Coop.svelte @@ -0,0 +1,83 @@ +<script lang="ts"> + import type { CleanMemberProfile } from '$lib/APITypes' + import Username from '$lib/minecraft/Username.svelte' + import { millisecondsToTime } from '$lib/utils' + export let data: CleanMemberProfile + + $: isProfileCreator = data.member.coopInvitation?.invitedBy?.uuid == data.member.uuid +</script> + +{#if data.member.coopInvitation} + <div class="info-text primary-info-text"> + {#if isProfileCreator} + <p><b class="info-text-value">Created co-op</b></p> + {:else} + <p> + Invited by {#if data.member.coopInvitation.invitedBy} + <Username player={data.member.coopInvitation.invitedBy} prefix /> + {:else} + <b>Unknown player</b> + {/if} + </p> + {/if} + <p> + {isProfileCreator ? 'Began creation' : 'Invited'}: + <span class="info-text-value coop-invited-timeago"> + <b>{millisecondsToTime(Date.now() - data.member.coopInvitation.invitedTimestamp)}</b> ago + </span> + </p> + {#if data.member.coopInvitation.acceptedTimestamp} + <p> + {isProfileCreator ? 'Finished creation' : 'Accepted invite'}: + <span class="info-text-value coop-accepted-invite-after"> + after <b> + {millisecondsToTime( + data.member.coopInvitation.acceptedTimestamp - + data.member.coopInvitation.invitedTimestamp + )} + </b> + </span> + </p> + {/if} + </div> + <h3>Members</h3> + {#each data.profile.members.filter(m => !m.left) as player} + <span class="member"> + <Username {player} headType="2d" hyperlinkToProfile /> + </span> + {/each} + {#if data.profile.members.filter(m => m.left).length > 0} + <h3 class="previous-members-title">Previous members</h3> + {#each data.profile.members.filter(m => m.left) as player} + <span class="member"> + <Username + {player} + headType="2d" + hyperlinkToProfile="{player.username}/{data.profile.uuid}" + /> + </span> + {/each} + {/if} +{/if} + +<style> + p { + margin: 0; + } + .primary-info-text { + margin: 0.5em 0; + } + .info-text { + color: var(--theme-darker-text); + } + .info-text .info-text-value { + color: var(--theme-main-text); + } + + .member { + display: block; + } + .previous-members-title { + margin-top: 0.5rem; + } +</style> |