gradio
1<script lang="ts">
2import { default as Info } from "./Info.svelte";
3export let show_label = true;
4export let info: string | undefined = undefined;
5</script>
6
7<span
8class:sr-only={!show_label}
9class:hide={!show_label}
10class:has-info={info != null}
11data-testid="block-info"
12>
13<slot />
14</span>
15{#if info}
16<Info>{info}</Info>
17{/if}
18
19<style>
20span.has-info {
21margin-bottom: var(--spacing-xs);
22}
23span:not(.has-info) {
24margin-bottom: var(--spacing-lg);
25}
26span {
27display: inline-block;
28position: relative;
29z-index: var(--layer-4);
30border: solid var(--block-title-border-width)
31var(--block-title-border-color);
32border-radius: var(--block-title-radius);
33background: var(--block-title-background-fill);
34padding: var(--block-title-padding);
35color: var(--block-title-text-color);
36font-weight: var(--block-title-text-weight);
37font-size: var(--block-title-text-size);
38line-height: var(--line-sm);
39}
40
41.hide {
42margin: 0;
43height: 0;
44}
45</style>
46