Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge develop #14

Merged
merged 29 commits into from
Apr 14, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
1ba9396
Add ollama, support, memGPT services
lehcode Apr 4, 2024
0ca8af9
feat: Docker services
lehcode Apr 4, 2024
309df69
hotfix: Restore useTranslation()
lehcode Apr 10, 2024
751442b
hotfix: Frontend integration
lehcode Apr 11, 2024
94619eb
hotfix: Backend app service dependencies fix under Conda
lehcode Apr 12, 2024
6fe6b59
feat: Add API startup script
lehcode Apr 12, 2024
ffbad57
feat: Add FastAPI server and Vite dev server logging for debug and li…
lehcode Apr 12, 2024
187ca9d
chore: Cleanup after local rebase
lehcode Apr 12, 2024
a3d6c03
feat: Improve docker compose services integration
lehcode Apr 12, 2024
03a530a
hotfix: Frontend and API integration. Build improvements.
lehcode Apr 14, 2024
e826a5c
feat/poetry-build (#8)
lehcode Apr 14, 2024
0676e94
fix: fix some of the styling to more closely match figma (#927)
Sparkier Apr 12, 2024
dea68c4
Add Italian, Spanish and Português (#1017)
PierrunoYT Apr 12, 2024
a52a495
Add Azure configuration doc (#1035)
enyst Apr 12, 2024
9165ba1
Formatting AZURE_LLM_GUIDE (#1046)
enyst Apr 12, 2024
c1754bf
Feat add agent manager (#904)
iFurySt Apr 12, 2024
1e73863
simplified get (#962)
SmartManoj Apr 12, 2024
8fdc728
Response recognition for weak llms (#523)
namtacs Apr 12, 2024
48efce0
Traffic Control: Add new config MAX_CHARS (#1015)
li-boxuan Apr 12, 2024
ea2abcf
fix: print the wrong ssh port number (#1054)
iFurySt Apr 13, 2024
30c4969
fix(editor): ui enhancements and code refactor (#1069)
akhilvc10 Apr 13, 2024
043ee5a
Add new sandbox type - local (#1029)
foragerr Apr 14, 2024
a53d4af
Auto-close stale issues and PRs (#1032)
rbren Apr 14, 2024
5a8553d
Throw error if an illegal sandbox type is used (#1087)
yimothysu Apr 14, 2024
fb30ad3
Unify linter behaviour across CI and pre-commit-hook (#1071)
li-boxuan Apr 14, 2024
a5051cb
Revamp Exception handling (#1080)
li-boxuan Apr 14, 2024
c5af998
doc: Add supplementary notes for WSL2 users to Local LLM Guide (#1031)
FZFR Apr 14, 2024
784f7ab
added to sudo group (#1091)
SmartManoj Apr 14, 2024
cddc385
chore: Merge .dockerignore
lehcode Apr 14, 2024
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
Prev Previous commit
Next Next commit
fix: fix some of the styling to more closely match figma (All-Hands-A…
…I#927)

* fix: fix some of the styling to more closely match figma

* overflow
  • Loading branch information
Sparkier authored and lehcode committed Apr 14, 2024
commit 0676e9454e214ec6796dddb8d2c779c5e3c3fb6d
6 changes: 5 additions & 1 deletion frontend/src/components/ChatInterface.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { Card, CardBody } from "@nextui-org/react";
import React, { useEffect, useRef } from "react";
import { IoMdChatbubbles } from "react-icons/io";
import { useSelector } from "react-redux";
import { useTypingEffect } from "../hooks/useTypingEffect";
import {
Expand Down Expand Up @@ -116,7 +117,10 @@ function ChatInterface(): JSX.Element {

return (
<div className="flex flex-col h-full p-0 bg-neutral-800">
<div className="border-b border-neutral-600 text-sm px-4 py-2">Chat</div>
<div className="flex items-center gap-2 border-b border-neutral-600 text-sm px-4 py-2">
<IoMdChatbubbles />
Chat
</div>
<MessageList />
{initialized ? null : <AgentStatusBar />}
<Input />
Expand Down
47 changes: 20 additions & 27 deletions frontend/src/components/CodeEditor.tsx
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
import Editor, { Monaco } from "@monaco-editor/react";
import { Tab, Tabs } from "@nextui-org/react";
import type { editor } from "monaco-editor";
import React, { useState } from "react";
import { Tabs, Tab } from "@nextui-org/react";
import { useSelector } from "react-redux";
import { RootState } from "../store";
import Files from "./Files";
import { cn } from "../utils/utils";

function CodeEditor(): JSX.Element {
const [selectedFileName, setSelectedFileName] = useState("welcome");
Expand All @@ -31,24 +30,19 @@ function CodeEditor(): JSX.Element {
};

return (
<div
className={`${cn(
explorerOpen ? "grid-cols-[250px_auto]" : "grid-cols-[50px_auto]",
)} grid h-full bg-neutral-900 transition-all duration-500 ease-in-out`}
>
<div>
<Files
setSelectedFileName={setSelectedFileName}
setExplorerOpen={setExplorerOpen}
explorerOpen={explorerOpen}
/>
</div>
<div>
<div className="flex h-full w-full bg-neutral-900 transition-all duration-500 ease-in-out">
<Files
setSelectedFileName={setSelectedFileName}
setExplorerOpen={setExplorerOpen}
explorerOpen={explorerOpen}
/>
<div className="flex flex-col min-h-0 w-full">
<Tabs
disableCursorAnimation
classNames={{
base: "border-b border-divider",
tabList:
"w-full relative rounded-none bg-neutral-900 p-0 border-r border-divider",
"w-full relative rounded-none bg-neutral-900 p-0 border-divider",
cursor: "w-full bg-neutral-600 rounded-none",
tab: "max-w-fit px-4 h-[36px]",
tabContent: "group-data-[selected=true]:text-neutral-50 ",
Expand All @@ -62,18 +56,17 @@ function CodeEditor(): JSX.Element {
: selectedFileName.toLocaleLowerCase()
}
title={!selectedFileName ? "Welcome" : selectedFileName}
>
<div>
<Editor
height="100vh"
defaultLanguage="python"
defaultValue="# Welcome to OpenDevin!"
value={code}
onMount={handleEditorDidMount}
/>
</div>
</Tab>
/>
</Tabs>
<div className="flex grow">
<Editor
height="100%"
defaultLanguage="python"
defaultValue="# Welcome to OpenDevin!"
value={code}
onMount={handleEditorDidMount}
/>
</div>
</div>
</div>
);
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/components/Files.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Accordion, AccordionItem, Button } from "@nextui-org/react";
import React, { useEffect } from "react";
import TreeView, { flattenTree } from "react-accessible-treeview";
import { AiOutlineFolder } from "react-icons/ai";
import { Accordion, AccordionItem, Button } from "@nextui-org/react";
import {
TbLayoutSidebarLeftCollapseFilled,
TbLayoutSidebarRightCollapseFilled,
Expand All @@ -13,8 +13,8 @@ import { useSelector } from "react-redux";
import { getWorkspace, selectFile } from "../services/fileService";
import { setCode, updateWorkspace } from "../state/codeSlice";
import store, { RootState } from "../store";
import FolderIcon from "./FolderIcon";
import FileIcon from "./FileIcons";
import FolderIcon from "./FolderIcon";

interface FilesProps {
setSelectedFileName: React.Dispatch<React.SetStateAction<string>>;
Expand Down Expand Up @@ -57,7 +57,7 @@ function Files({
);
}
return (
<div className="bg-neutral-800 h-full border-r-1 border-r-neutral-600 flex flex-col">
<div className="bg-neutral-800 h-full border-r-1 border-r-neutral-600 flex flex-col w-[250px]">
<div className="flex p-2 items-center justify-between ">
<Accordion className="px-0" defaultExpandedKeys={["1"]} isCompact>
<AccordionItem
Expand Down
2 changes: 2 additions & 0 deletions frontend/src/components/Input.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ function Input() {
<Textarea
className="py-4 px-4"
classNames={{
inputWrapper: "bg-neutral-700",
input: "pr-16 py-2",
}}
value={inputMessage}
Expand All @@ -66,6 +67,7 @@ function Input() {
)}
onClick={handleSendMessage}
disabled={!initialized}
aria-label="Send message"
>
{i18next.t("CHAT_INTERFACE$INPUT_SEND_MESSAGE_BUTTON_CONTENT")}
</button>
Expand Down
10 changes: 6 additions & 4 deletions frontend/src/components/Terminal.tsx
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
import React, { useEffect, useRef } from "react";
import { IDisposable, Terminal as XtermTerminal } from "@xterm/xterm";
import "@xterm/xterm/css/xterm.css";
import React, { useEffect, useRef } from "react";
import { VscTerminal } from "react-icons/vsc";
import { useSelector } from "react-redux";
import { FitAddon } from "xterm-addon-fit";
import ActionType from "../types/ActionType";
import ObservationType from "../types/ObservationType";
import Socket from "../services/socket";
import { RootState } from "../store";
import ActionType from "../types/ActionType";
import ObservationType from "../types/ObservationType";

class JsonWebsocketAddon {
_disposables: IDisposable[];
Expand Down Expand Up @@ -100,7 +101,8 @@ function Terminal(): JSX.Element {

return (
<div className="flex flex-col h-full">
<div className="px-4 py-2 text-sm border-b border-neutral-600">
<div className="flex items-center gap-2 px-4 py-2 text-sm border-b border-neutral-600">
<VscTerminal />
Terminal
</div>
<div className="grow p-2 flex min-h-0">
Expand Down
31 changes: 12 additions & 19 deletions frontend/src/components/Workspace.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { Tab, Tabs } from "@nextui-org/react";
import React, { useMemo, useState } from "react";
import { useTranslation } from "react-i18next";
import { FaCode } from "react-icons/fa6";
import { IoIosGlobe } from "react-icons/io";
import i18next from "i18next";
import Calendar from "../assets/calendar";
Expand Down Expand Up @@ -36,31 +35,31 @@ function Workspace() {
);

return (
<>
<div className="flex flex-col min-h-0 grow">
<div
role="tablist"
className="tabs tabs-bordered tabs-lg border-b border-neutral-600"
className="tabs tabs-bordered tabs-lg border-b border-neutral-600 flex"
>
<Tabs
disableCursorAnimation
classNames={{
base: "w-full",
tabList:
"w-full relative rounded-none bg-neutral-800 p-0 border-divider gap-0 h-[36px]",
cursor: "w-full bg-neutral-800 rounded-none",
tab: " rounded-none border-neutral-600 border-r-[1px] border-r",
"w-full relative rounded-none bg-neutral-900 p-0 gap-0 h-[36px] flex",
tab: "rounded-none border-neutral-600 data-[selected=true]:bg-neutral-800",
tabContent: "group-data-[selected=true]:text-neutral-50",
}}
variant="light"
size="lg"
onSelectionChange={(v) => {
setActiveTab(v as TabType);
}}
>
{AllTabs.map((tab) => (
{AllTabs.map((tab, index) => (
<Tab
key={tab}
className={`flex-grow ${index + 1 === AllTabs.length ? "" : "border-r"}`}
title={
<div className="flex items-center space-x-2 justify-center text-xs">
<div className="flex grow items-center gap-2 justify-center text-xs">
{tabData[tab].icon}
<span>{tabData[tab].name}</span>
</div>
Expand All @@ -69,16 +68,10 @@ function Workspace() {
))}
</Tabs>
</div>
{Object.keys(tabData).map((tab) => (
<div
className="h-full w-full bg-neutral-800"
key={tab}
hidden={activeTab !== tab}
>
{tabData[tab as TabType].component}
</div>
))}
</>
<div className="grow w-full bg-neutral-800 flex min-h-0">
{tabData[activeTab as TabType].component}
</div>
</div>
);
}
export default Workspace;