]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/blob
6a91bf90524286b2f30d61f1fa17609789fd1c4d
[pkg/ggml/sources/llama.cpp] /
1 <script lang="ts">
2 import { isMobile } from '$lib/stores/viewport.svelte';
3 import ChatFormActionAddDropdown from './ChatFormActionAddDropdown.svelte';
4 import ChatFormActionAddSheet from './ChatFormActionAddSheet.svelte';
5 import ChatFormActionAddButton from './ChatFormActionAddButton.svelte';
6
7 interface Props {
8 disabled?: boolean;
9 hasAudioModality?: boolean;
10 hasVideoModality?: boolean;
11 hasMcpPromptsSupport?: boolean;
12 hasMcpResourcesSupport?: boolean;
13 hasVisionModality?: boolean;
14 onFileUpload?: () => void;
15 onMcpPromptClick?: () => void;
16 onMcpResourcesClick?: () => void;
17 onMcpSettingsClick?: () => void;
18 onSystemPromptClick?: () => void;
19 }
20
21 let {
22 disabled = false,
23 hasAudioModality = false,
24 hasVideoModality = false,
25 hasMcpPromptsSupport = false,
26 hasMcpResourcesSupport = false,
27 hasVisionModality = false,
28 onFileUpload,
29 onMcpPromptClick,
30 onMcpResourcesClick,
31 onMcpSettingsClick,
32 onSystemPromptClick
33 }: Props = $props();
34 </script>
35
36 {#if isMobile.current}
37 <ChatFormActionAddSheet
38 {disabled}
39 {hasAudioModality}
40 {hasVideoModality}
41 {hasVisionModality}
42 {hasMcpPromptsSupport}
43 {hasMcpResourcesSupport}
44 {onFileUpload}
45 {onMcpPromptClick}
46 {onMcpResourcesClick}
47 >
48 {#snippet trigger({ disabled, onclick })}
49 <ChatFormActionAddButton {disabled} {onclick} />
50 {/snippet}
51 </ChatFormActionAddSheet>
52 {:else}
53 <ChatFormActionAddDropdown
54 {disabled}
55 {hasAudioModality}
56 {hasVideoModality}
57 {hasVisionModality}
58 {hasMcpPromptsSupport}
59 {hasMcpResourcesSupport}
60 {onFileUpload}
61 {onMcpPromptClick}
62 {onMcpResourcesClick}
63 {onMcpSettingsClick}
64 {onSystemPromptClick}
65 />
66 {/if}