mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-18 02:06:01 +00:00
58 lines
999 B
Svelte
58 lines
999 B
Svelte
<script lang="ts">
|
|
import FontIcon from '../icons/FontIcon.svelte';
|
|
|
|
export let isBold;
|
|
export let prefix;
|
|
export let icon;
|
|
export let isBusy;
|
|
export let title;
|
|
export let statusIcon;
|
|
export let statusTitle;
|
|
export let extInfo;
|
|
</script>
|
|
|
|
<div class="main" class:isBold draggable>
|
|
{prefix || ''}
|
|
{#if isBusy}
|
|
<FontIcon icon="icon loading" />
|
|
{:else}
|
|
<FontIcon {icon} />
|
|
{/if}
|
|
{title}
|
|
{#if statusIcon}
|
|
<span class="status">
|
|
<FontIcon icon={statusIcon} title={statusTitle} />
|
|
</span>
|
|
{/if}
|
|
{#if extInfo}
|
|
<span class="ext-info">
|
|
{extInfo}
|
|
</span>
|
|
{/if}
|
|
</div>
|
|
<slot />
|
|
|
|
<style>
|
|
.main {
|
|
padding: 5px;
|
|
cursor: pointer;
|
|
white-space: nowrap;
|
|
font-weight: normal;
|
|
}
|
|
.main:hover {
|
|
background-color: var(--theme-bg-hover);
|
|
|
|
}
|
|
.isBold {
|
|
font-weight: bold;
|
|
}
|
|
.status {
|
|
margin-left: 5px;
|
|
}
|
|
.ext-info {
|
|
font-weight: normal;
|
|
margin-left: 5px;
|
|
color: var(--theme-font-3);
|
|
}
|
|
</style>
|