2023-09-28 04:02:42 +02:00
|
|
|
<script lang="ts">
|
2023-09-28 23:50:27 +02:00
|
|
|
import { createEventDispatcher } from "svelte"
|
|
|
|
import StarElement from "./StarElement.svelte"
|
2023-09-28 04:02:42 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Number between 0 and 100. Every 10 points, another half star is added
|
|
|
|
*/
|
2023-09-28 23:50:27 +02:00
|
|
|
export let score: number
|
|
|
|
let dispatch = createEventDispatcher<{ hover: number; click: number }>()
|
2023-09-28 04:02:42 +02:00
|
|
|
|
2023-09-28 23:50:27 +02:00
|
|
|
let cutoffs = [20, 40, 60, 80, 100]
|
2023-09-28 04:02:42 +02:00
|
|
|
export let starSize = "w-h h-4"
|
|
|
|
</script>
|
2023-09-28 23:50:27 +02:00
|
|
|
|
2023-09-28 04:02:42 +02:00
|
|
|
{#if score !== undefined}
|
2023-09-28 23:50:27 +02:00
|
|
|
<div class="flex" on:mouseout>
|
|
|
|
{#each cutoffs as cutoff}
|
|
|
|
<StarElement {score} {cutoff} {starSize} on:hover on:click />
|
2023-09-28 04:02:42 +02:00
|
|
|
{/each}
|
2023-09-28 23:50:27 +02:00
|
|
|
</div>
|
|
|
|
{/if}
|