diff --git a/packages/ui/src/components/brand-icons.tsx b/packages/ui/src/components/brand-icons.tsx new file mode 100644 index 00000000..c8a0bd88 --- /dev/null +++ b/packages/ui/src/components/brand-icons.tsx @@ -0,0 +1,38 @@ +import type { Component } from "solid-js" + +type BrandIconProps = { + class?: string + title?: string +} + +export const GitHubMarkIcon: Component = (props) => ( + + {props.title ? {props.title} : null} + + +) + +export const DiscordSymbolIcon: Component = (props) => ( + + {props.title ? {props.title} : null} + + +) diff --git a/packages/ui/src/components/folder-selection-view.tsx b/packages/ui/src/components/folder-selection-view.tsx index c4e445e6..c4b7a408 100644 --- a/packages/ui/src/components/folder-selection-view.tsx +++ b/packages/ui/src/components/folder-selection-view.tsx @@ -6,6 +6,7 @@ import DirectoryBrowserDialog from "./directory-browser-dialog" import Kbd from "./kbd" import { openNativeFolderDialog, supportsNativeDialogs } from "../lib/native/native-functions" import VersionPill from "./version-pill" +import { DiscordSymbolIcon, GitHubMarkIcon } from "./brand-icons" const codeNomadLogo = new URL("../images/CodeNomad-Icon.png", import.meta.url).href @@ -188,6 +189,11 @@ const FolderSelectionView: Component = (props) => { if (isLoading()) return props.onSelectFolder(path, selectedBinary()) } + + const openExternalLink = (url: string) => { + if (typeof window === "undefined") return + window.open(url, "_blank", "noopener,noreferrer") + } async function handleBrowse() { if (isLoading()) return @@ -242,170 +248,211 @@ const FolderSelectionView: Component = (props) => { style="background-color: var(--surface-secondary)" >
-
-
- CodeNomad logo -
-

CodeNomad

-

Select a folder to start coding with AI

-
- -
-
- - -
- - 0} - fallback={ -
-
- -
-

No Recent Folders

-

Browse for a folder to get started

-
- } - > -
-
-

Recent Folders

-

- {folders().length} {folders().length === 1 ? "folder" : "folders"} available -

-
-
(recentListRef = el)}> - - {(folder, index) => ( -
-
- - -
-
- )} -
-
-
-
- -
- - -
- -
- - {/* Advanced settings section */} -
- -
+ -