2024-04-29 17:03:23 +02:00
|
|
|
<script lang="ts">
|
2024-09-26 13:31:19 +02:00
|
|
|
import { isMac, isSafari } from '$lib/utils';
|
|
|
|
import { onMount } from 'svelte';
|
|
|
|
import { _ } from 'svelte-i18n';
|
2024-04-29 17:03:23 +02:00
|
|
|
|
2024-09-26 13:31:19 +02:00
|
|
|
export let key: string | undefined = undefined;
|
|
|
|
export let shift: boolean = false;
|
|
|
|
export let ctrl: boolean = false;
|
|
|
|
export let click: boolean = false;
|
2024-04-29 17:03:23 +02:00
|
|
|
|
2024-09-26 13:31:19 +02:00
|
|
|
let mac = false;
|
|
|
|
let safari = false;
|
2024-04-29 17:03:23 +02:00
|
|
|
|
2024-09-26 13:31:19 +02:00
|
|
|
onMount(() => {
|
|
|
|
mac = isMac();
|
|
|
|
safari = isSafari();
|
|
|
|
});
|
2024-04-29 17:03:23 +02:00
|
|
|
</script>
|
|
|
|
|
2024-08-11 11:49:16 +02:00
|
|
|
<div
|
2024-09-26 13:31:19 +02:00
|
|
|
class="ml-auto pl-2 text-xs tracking-widest text-muted-foreground flex flex-row gap-0 items-baseline"
|
|
|
|
{...$$props}
|
2024-04-29 17:03:23 +02:00
|
|
|
>
|
2024-09-26 13:31:19 +02:00
|
|
|
{#if shift}
|
|
|
|
<span>⇧</span>
|
|
|
|
{/if}
|
|
|
|
{#if ctrl}
|
|
|
|
<span>{mac && !safari ? '⌘' : $_('menu.ctrl') + '+'}</span>
|
|
|
|
{/if}
|
|
|
|
{#if key}
|
|
|
|
<span class={key === '+' ? 'font-medium text-sm/4' : ''}>{key}</span>
|
|
|
|
{/if}
|
|
|
|
{#if click}
|
|
|
|
<span>{$_('menu.click')}</span>
|
|
|
|
{/if}
|
2024-08-11 11:49:16 +02:00
|
|
|
</div>
|