2023-10-06 23:56:50 +02:00
|
|
|
<script lang="ts">
|
2023-11-09 16:30:26 +01:00
|
|
|
import Pin from "../../assets/svg/Pin.svelte"
|
|
|
|
import Square from "../../assets/svg/Square.svelte"
|
|
|
|
import Circle from "../../assets/svg/Circle.svelte"
|
|
|
|
import Checkmark from "../../assets/svg/Checkmark.svelte"
|
|
|
|
import Clock from "../../assets/svg/Clock.svelte"
|
|
|
|
import Close from "../../assets/svg/Close.svelte"
|
|
|
|
import Crosshair from "../../assets/svg/Crosshair.svelte"
|
|
|
|
import Help from "../../assets/svg/Help.svelte"
|
|
|
|
import Home from "../../assets/svg/Home.svelte"
|
|
|
|
import Invalid from "../../assets/svg/Invalid.svelte"
|
|
|
|
import Location from "../../assets/svg/Location.svelte"
|
|
|
|
import Location_empty from "../../assets/svg/Location_empty.svelte"
|
|
|
|
import Location_locked from "../../assets/svg/Location_locked.svelte"
|
|
|
|
import Note from "../../assets/svg/Note.svelte"
|
|
|
|
import Resolved from "../../assets/svg/Resolved.svelte"
|
|
|
|
import Ring from "../../assets/svg/Ring.svelte"
|
|
|
|
import Scissors from "../../assets/svg/Scissors.svelte"
|
|
|
|
import Teardrop from "../../assets/svg/Teardrop.svelte"
|
|
|
|
import Teardrop_with_hole_green from "../../assets/svg/Teardrop_with_hole_green.svelte"
|
|
|
|
import Triangle from "../../assets/svg/Triangle.svelte"
|
2023-11-19 05:05:15 +01:00
|
|
|
import Brick_wall_square from "../../assets/svg/Brick_wall_square.svelte";
|
|
|
|
import Brick_wall_round from "../../assets/svg/Brick_wall_round.svelte";
|
|
|
|
import Gps_arrow from "../../assets/svg/Gps_arrow.svelte";
|
2023-10-06 23:56:50 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Renders a single icon.
|
|
|
|
*
|
|
|
|
* Icons -placed on top of each other- form a 'Marker' together
|
|
|
|
*/
|
|
|
|
|
2023-11-09 16:30:26 +01:00
|
|
|
export let icon: string | undefined
|
|
|
|
export let color: string | undefined
|
2023-10-06 23:56:50 +02:00
|
|
|
</script>
|
|
|
|
|
2023-10-11 04:16:52 +02:00
|
|
|
{#if icon}
|
2023-11-09 16:30:26 +01:00
|
|
|
<div class="absolute top-0 left-0 h-full w-full">
|
2023-10-11 04:16:52 +02:00
|
|
|
{#if icon === "pin"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Pin {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "square"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Square {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "circle"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Circle {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "checkmark"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Checkmark {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "clock"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Clock {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "close"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Close {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "crosshair"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Crosshair {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "help"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Help {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "home"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Home {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "invalid"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Invalid {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "location"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Location {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "location_empty"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Location_empty {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "location_locked"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Location_locked {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "note"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Note {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "resolved"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Resolved {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "ring"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Ring {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "scissors"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Scissors {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "teardrop"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Teardrop {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "teardrop_with_hole_green"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Teardrop_with_hole_green {color} />
|
2023-10-11 04:16:52 +02:00
|
|
|
{:else if icon === "triangle"}
|
2023-10-06 23:56:50 +02:00
|
|
|
<Triangle {color} />
|
2023-11-19 05:05:15 +01:00
|
|
|
{:else if icon === "brick_wall_square"}
|
|
|
|
<Brick_wall_square {color} />
|
|
|
|
{:else if icon === "brick_wall_round"}
|
|
|
|
<Brick_wall_round {color} />
|
|
|
|
{:else if icon === "gps_arrow"}
|
|
|
|
<Gps_arrow {color} />
|
|
|
|
{:else if icon === "checkmark"}
|
|
|
|
<Checkmark {color} />
|
|
|
|
{:else if icon === "help"}
|
|
|
|
<Help {color} />
|
|
|
|
{:else if icon === "close"}
|
|
|
|
<Close {color} />
|
|
|
|
{:else if icon === "invalid"}
|
|
|
|
<Invalid {color} />
|
2023-10-06 23:56:50 +02:00
|
|
|
{:else}
|
2023-11-09 16:30:26 +01:00
|
|
|
<img class="h-full w-full" src={icon} />
|
2023-10-06 23:56:50 +02:00
|
|
|
{/if}
|
|
|
|
</div>
|
|
|
|
{/if}
|