{ e.preventDefault(); }} ondrop={(e) => { e.preventDefault(); onDrag = false; }} />
{#if shareModalOpen} shareModal.close()} /> {/if}
{#if preprompt && preprompt != currentModel.preprompt} {/if} {#if messages.length > 0}
{#each messages as message, idx (message.id)} a.includes(message.id)) ?? []} isAuthor={!shared} readOnly={isReadOnly} isLast={idx === messages.length - 1} bind:editMsdgId onretry={(payload) => onretry?.(payload)} onshowAlternateMsg={(payload) => onshowAlternateMsg?.(payload)} /> {/each} {#if isReadOnly} {/if}
{:else if pending} {:else} { onmessage?.(content); }} /> {/if}
{#if !draft.length && !messages.length && !sources.length && !loading && currentModel.isRouter && routerExamples.length && !hideRouterExamples && !lastIsError}
{#each routerExamples as ex} {/each}
{/if} {#if shouldShowRouterFollowUps && !lastIsError}
{#each routerFollowUps as followUp} {/each}
{/if} {#if sources?.length && !loading}
{#each sources as source, index} {#await source then src} { files = files.filter((_, i) => i !== index); }} /> {/await} {/each}
{/if}
{#if !loading && lastIsError} { if (lastMessage && lastMessage.ancestors) { onretry?.({ id: lastMessage.id, }); } }} /> {/if}
{ e.preventDefault(); handleSubmit(); }} class={{ "relative flex w-full max-w-4xl flex-1 items-center rounded-xl border bg-gray-100 dark:border-gray-700 dark:bg-gray-800": true, "opacity-30": isReadOnly, "max-sm:mb-4": focused && isVirtualKeyboard(), }} > {#if onDrag && isFileUploadEnabled} {:else}
{#if lastIsError} {:else} {/if} {#if loading} onstop?.()} showBorder={true} classNames="absolute bottom-2 right-2 size-7 self-end rounded-full border bg-white text-black shadow transition-none dark:border-transparent dark:bg-gray-600 dark:text-white" /> {:else} {/if}
{/if}
{#if models.find((m) => m.id === currentModel.id)} {#if !currentModel.isRouter || !loading} { if (requireAuthUser()) { e.preventDefault(); } }} class="inline-flex items-center gap-1 hover:underline" > {#if currentModel.isRouter} {currentModel.displayName} {:else} Model: {currentModel.displayName} {/if} {:else if showRouterDetails && streamingRouterMetadata}
{streamingRouterMetadata.route} with {streamingRouterModelName}
{:else}
Routing
{/if} {:else} {currentModel.id} {/if} {#if !messages.length && !loading} Generated content may be inaccurate or false. {/if}