Buckets:
frohzinn/bcbsma-storage / llama.cpp /tools /ui /src /lib /components /app /models /ModelBadge.svelte
| <script lang="ts"> | |
| import { Package } from '@lucide/svelte'; | |
| import { BadgeInfo, ActionIconCopyToClipboard } from '$lib/components/app'; | |
| import ModelId from './ModelId.svelte'; | |
| import { modelsStore } from '$lib/stores/models.svelte'; | |
| import { serverStore } from '$lib/stores/server.svelte'; | |
| import * as Tooltip from '$lib/components/ui/tooltip'; | |
| interface Props { | |
| class?: string; | |
| model?: string; | |
| onclick?: () => void; | |
| showCopyIcon?: boolean; | |
| showTooltip?: boolean; | |
| } | |
| let { | |
| class: className = '', | |
| model: modelProp, | |
| onclick, | |
| showCopyIcon = false, | |
| showTooltip = false | |
| }: Props = $props(); | |
| let model = $derived(modelProp || modelsStore.singleModelName); | |
| let isModelMode = $derived(serverStore.isModelMode); | |
| let shouldShow = $derived(model && (modelProp !== undefined || isModelMode)); | |
| </script> | |
| {#snippet badgeContent(triggerProps?: Record<string, unknown>)} | |
| <BadgeInfo {...triggerProps ?? {}} class={className} {onclick}> | |
| {#snippet icon()} | |
| <Package class="h-3 w-3" /> | |
| {/snippet} | |
| {#if model} | |
| <ModelId modelId={model} /> | |
| {/if} | |
| {#if showCopyIcon} | |
| <ActionIconCopyToClipboard text={model || ''} ariaLabel="Copy model name" /> | |
| {/if} | |
| </BadgeInfo> | |
| {/snippet} | |
| {#if shouldShow} | |
| {#if showTooltip} | |
| <Tooltip.Root> | |
| <Tooltip.Trigger> | |
| <!-- prevent another nested button element --> | |
| {#snippet child({ props })} | |
| {@render badgeContent(props)} | |
| {/snippet} | |
| </Tooltip.Trigger> | |
| <Tooltip.Content> | |
| {onclick ? 'Click for model details' : model} | |
| </Tooltip.Content> | |
| </Tooltip.Root> | |
| {:else} | |
| {@render badgeContent()} | |
| {/if} | |
| {/if} | |
Xet Storage Details
- Size:
- 1.6 kB
- Xet hash:
- 04ee9c7a81f717684b9039519d995b742d4c7109768ec22be7d228ab4b5d28d3
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.