diff --git a/src/CodeSnippet/CodeSnippet.svelte b/src/CodeSnippet/CodeSnippet.svelte
index 64add0c3..1ab20730 100644
--- a/src/CodeSnippet/CodeSnippet.svelte
+++ b/src/CodeSnippet/CodeSnippet.svelte
@@ -88,15 +88,18 @@
/** Obtain a reference to the pre HTML element */
export let ref = null;
- import { createEventDispatcher, tick } from "svelte";
+ import { createEventDispatcher, tick, onMount } from "svelte";
import ChevronDown16 from "../icons/ChevronDown16.svelte";
import Button from "../Button/Button.svelte";
- import Copy from "../Copy/Copy.svelte";
import CopyButton from "../CopyButton/CopyButton.svelte";
import CodeSnippetSkeleton from "./CodeSnippetSkeleton.svelte";
const dispatch = createEventDispatcher();
+ /** @type {"fade-in" | "fade-out"} */
+ let animation = undefined;
+ let timeout = undefined;
+
function setShowMoreLess() {
const { height } = ref.getBoundingClientRect();
if (height > 0) showMoreLess = ref.getBoundingClientRect().height > 255;
@@ -114,6 +117,10 @@
if (code === undefined) setShowMoreLess();
if (code) tick().then(setShowMoreLess);
}
+
+ onMount(() => {
+ return () => clearTimeout(timeout);
+ });
@@ -144,20 +151,35 @@
{:else}
-