Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
298 changes: 298 additions & 0 deletions lovable.md

Large diffs are not rendered by default.

Binary file added mascort.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added packages/app/public/mascort.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 3 additions & 2 deletions packages/app/src/components/prompt-input.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -664,8 +664,8 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
if (!query.trim()) return [...references, ...agents, ...mcpResources, ...pinned]
const paths = await files.searchFilesAndDirectories(query)
const fileOptions: AtOption[] = paths
.filter((path) => !seen.has(path))
.map((path) => ({ type: "file", path, display: path }))
.filter((path: string) => !seen.has(path))
.map((path: string) => ({ type: "file", path, display: path }))
return [...references, ...agents, ...mcpResources, ...pinned, ...fileOptions]
},
key: atKey,
Expand Down Expand Up @@ -1462,6 +1462,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
<DockShellForm
data-dock-border-underlay="legacy"
onSubmit={handleSubmit}
class="min-h-[104px] rounded-[20px]"
classList={{
"group/prompt-input": true,
"border-icon-info-active border-dashed": store.draggingType !== null,
Expand Down
13 changes: 6 additions & 7 deletions packages/app/src/components/prompt-workspace-selector.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { Icon } from "@opencode-ai/ui/icon"
import { Icon as IconV2 } from "@opencode-ai/ui/v2/icon"
import { getFilename } from "@opencode-ai/core/util/path"
import { useLanguage } from "@/context/language"
import { useSync } from "@/context/sync"

export function PromptWorkspaceSelector(props: {
value: string
Expand All @@ -15,6 +16,7 @@ export function PromptWorkspaceSelector(props: {
onDone: () => void
}) {
const language = useLanguage()
const sync = useSync()
let pending: string | undefined
const selected = () => (props.value === props.projectRoot ? "main" : props.value)
const icon = () => {
Expand Down Expand Up @@ -93,17 +95,14 @@ export function PromptWorkspaceSelector(props: {
</MenuV2.Content>
</MenuV2.Portal>
</MenuV2>
<PromptGitStatus branch={props.branch} />
<PromptGitStatus branch={props.branch} noGit={sync().project?.vcs !== "git" || !props.branch} />
</>
)
}

export function PromptGitStatus(props: { branch?: string; noGit?: boolean }) {
const language = useLanguage()
const label = () => {
if (props.noGit) return language.t("session.new.git.none")
return props.branch
}
const isNoGit = () => Boolean(props.noGit || !props.branch)
const label = () => (isNoGit() ? "non git" : props.branch)

return (
<Show when={label()}>
Expand All @@ -112,7 +111,7 @@ export function PromptGitStatus(props: { branch?: string; noGit?: boolean }) {
<span class="hidden select-none opacity-50 sm:inline mx-1">/</span>
<TooltipV2
placement="top"
value={value()}
value={isNoGit() ? "Not a git repository" : value()}
class="min-w-0 max-w-[220px]"
contentClass="max-w-[calc(100vw-32px)] break-all"
>
Expand Down
Loading
Loading