<script lang="ts"> export let toc: Urara.Post.Toc const { title, slug, depth, children } = toc </script> {#if title} <span dir="ltr" on:click={() => // @ts-ignore Object is possibly 'null'. ts(2531) document.getElementById(slug).scrollIntoView({ behavior: 'smooth' })} id={`toc-link-${slug}`} class="cursor-pointer border-l-4 border-transparent transition-all hover:border-primary hover:bg-base-content hover:bg-opacity-10 active:bg-primary active:text-primary-content active:font-bold pr-4 {depth <= 2 ? 'py-3' : 'py-2'}" class:pl-4={depth <= 2} class:pl-8={depth === 3} class:pl-12={depth === 4} class:pl-16={depth === 5} class:pl-20={depth === 6}> {title} </span> {/if} {#if children} <ul dir="ltr" id={`toc-list-${slug ?? 'root'}`}> {#each children as child} <li id={`toc-item-${child.slug}`} class="flex flex-col"> <svelte:self toc={child} /> </li> {/each} </ul> {/if}