blackmagic-esp32-s2/components/svelte-portal/src/lib/SpinnerBig.svelte

100 lines
1.9 KiB
Svelte

<script>
import { onMount } from "svelte";
const items = [
[
[".", "o", "O", " "],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
],
[
[" ", ".", "o", "O"],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
],
[
[" ", " ", ".", "o"],
[" ", " ", " ", "O"],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
],
[
[" ", " ", " ", "."],
[" ", " ", " ", "o"],
[" ", " ", " ", "O"],
[" ", " ", " ", " "],
],
[
[" ", " ", " ", " "],
[" ", " ", " ", "."],
[" ", " ", " ", "o"],
[" ", " ", " ", "O"],
],
[
[" ", " ", " ", " "],
[" ", " ", " ", " "],
[" ", " ", " ", "."],
[" ", " ", "O", "o"],
],
[
[" ", " ", " ", " "],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
[" ", "O", "o", "."],
],
[
[" ", " ", " ", " "],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
["O", "o", ".", " "],
],
[
[" ", " ", " ", " "],
[" ", " ", " ", " "],
["O", " ", " ", " "],
["o", ".", " ", " "],
],
[
[" ", " ", " ", " "],
["O", " ", " ", " "],
["o", " ", " ", " "],
[".", " ", " ", " "],
],
[
["O", " ", " ", " "],
["o", " ", " ", " "],
[".", " ", " ", " "],
[" ", " ", " ", " "],
],
[
["o", "O", " ", " "],
[".", " ", " ", " "],
[" ", " ", " ", " "],
[" ", " ", " ", " "],
],
];
let index = 0;
let text_pointer = items[index];
function timer_tick() {
index++;
if (index >= items.length) index = 0;
text_pointer = items[index];
}
onMount(() => setInterval(timer_tick, 100));
</script>
<div>
{#each text_pointer as text_line}
{#each text_line as text, i}
{#if text == " "}&nbsp;{:else}{text}{/if}
{#if i < 3}&nbsp;{/if}
{/each}
<br />
{/each}
</div>