Spaces:
Build error
Build error
File size: 1,596 Bytes
2ebb1e7 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | <script lang="ts">
import { copyText, copiedId } from './docs-store';
export let code: string;
export let id: string;
export let label: string = '';
export let method: 'GET' | 'POST' | '' = '';
export let lang: string = '';
</script>
<div class="rounded-2xl border border-[#e5e5e5] dark:border-gray-850 overflow-hidden">
{#if label || method}
<div class="flex items-center justify-between px-4 py-2.5 bg-[#f9f9f9] dark:bg-gray-900 border-b border-[#e5e5e5] dark:border-gray-850">
<div class="flex items-center gap-2">
{#if method}
<span class="text-xs font-bold font-mono text-white px-2 py-0.5 rounded
{method === 'POST' ? 'bg-green-500' : 'bg-[#555] dark:bg-gray-700'}">
{method}
</span>
{/if}
{#if label}
<span class="text-xs font-medium text-[#888888] dark:text-gray-600">{label}</span>
{/if}
</div>
{#if lang}
<span class="text-[10px] font-mono text-[#cccccc] dark:text-gray-700 uppercase">{lang}</span>
{/if}
</div>
{/if}
<div class="relative">
<pre class="p-4 text-sm font-mono text-[#0f0f0f] dark:text-gray-200 overflow-x-auto bg-white dark:bg-gray-950"><code>{@html code}</code></pre>
<button
on:click={() => copyText(id, code)}
class="absolute top-3 right-3 p-1.5 rounded-lg border border-[#e5e5e5] dark:border-gray-800 text-[#888] dark:text-gray-600 hover:text-[#0f0f0f] dark:hover:text-gray-200 hover:border-[#ccc] dark:hover:border-gray-700 transition-all text-xs font-mono bg-white dark:bg-gray-950"
title="Copy to clipboard"
>
{$copiedId === id ? '✓' : '⎘'}
</button>
</div>
</div>
|