Spaces:
Runtime error
Runtime error
| <script lang="ts"> | |
| import Tool from "./Tool.svelte"; | |
| export let title: string; | |
| let expanded = false; | |
| function toggleExpanded() { | |
| expanded = !expanded; | |
| } | |
| </script> | |
| <!-- svelte-ignore a11y-click-events-have-key-events --> | |
| <!-- svelte-ignore a11y-no-static-element-interactions --> | |
| <div class="box" on:click={toggleExpanded}> | |
| <div class="title"> | |
| <div class="wrench-icon"> | |
| 🛠️ | |
| </div> | |
| <span>{title}</span> | |
| </div> | |
| {#if expanded} | |
| <div class="content"> | |
| <slot></slot> | |
| </div> | |
| {/if} | |
| </div> | |
| <style> | |
| .box { | |
| border-radius: 4px; | |
| cursor: pointer; | |
| max-width: max-content; | |
| background: var(--color-accent-soft) | |
| } | |
| .title { | |
| display: flex; | |
| align-items: center; | |
| padding: 8px; | |
| } | |
| .wrench-icon { | |
| width: 18px; | |
| height: 18px; | |
| margin-right: 8px; | |
| } | |
| .icon { | |
| width: 0; | |
| height: 0; | |
| border-left: 5px solid transparent; | |
| border-right: 5px solid transparent; | |
| border-top: 5px solid purple; | |
| margin-left: auto; | |
| transition: transform 0.3s; | |
| } | |
| .icon.expanded { | |
| transform: rotate(180deg); | |
| } | |
| .content { | |
| padding: 8px; | |
| } | |
| </style> |