aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Error/DotDotDot.svelte
blob: 88b46374a1f4f9e19b48ad22f4db77558bef2218 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<script lang="ts">
  import { onDestroy, onMount } from 'svelte';

  export let max: number | undefined = undefined;
  export let perMs = 1000;
  export let start = '';

  let dots = start;
  let interval: ReturnType<typeof setInterval>;

  onMount(() => {
    interval = setInterval(() => {
      dots += '.';

      if (max && dots.length > max) dots = '';
    }, perMs);
  });

  onDestroy(() => clearInterval(interval));
</script>

{dots}