Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
inference-widgets
/
packages
/widgets
/src
/lib
/components
/InferenceWidget
/shared
/WidgetTextInput
/WidgetTextInput.svelte
| <script lang="ts"> | |
| import LogInPopover from "../../../LogInPopover/LogInPopover.svelte"; | |
| import { createEventDispatcher } from "svelte"; | |
| import { onCmdEnter } from "../../../../utils/ViewUtils.js"; | |
| import WidgetLabel from "../WidgetLabel/WidgetLabel.svelte"; | |
| import { isLoggedIn } from "../../stores.js"; | |
| export let label: string | undefined = undefined; | |
| export let placeholder: string = "Your sentence here..."; | |
| export let isLoading = false; | |
| export let isDisabled = false; | |
| export let value: string; | |
| let popOverOpen = false; | |
| const dispatch = createEventDispatcher<{ cmdEnter: void }>(); | |
| </script> | |
| <LogInPopover bind:open={popOverOpen}> | |
| <WidgetLabel {label}> | |
| <svelte:fragment slot="after"> | |
| <input | |
| bind:value | |
| class="{label ? 'mt-1.5' : ''} form-input-alt block w-full" | |
| placeholder={isDisabled ? "" : placeholder} | |
| disabled={isDisabled} | |
| type="text" | |
| use:onCmdEnter={{ disabled: isLoading || isDisabled }} | |
| on:cmdEnter={() => { | |
| if (!$isLoggedIn) { | |
| popOverOpen = true; | |
| return; | |
| } | |
| dispatch("cmdEnter"); | |
| }} | |
| /> | |
| </svelte:fragment> | |
| </WidgetLabel> | |
| </LogInPopover> | |