Skip to content

Commit eda853d

Browse files
committed
feat: project config view
1 parent f4bc29d commit eda853d

38 files changed

+135
-191
lines changed

src/assets/image/icons/index.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -106,16 +106,8 @@ export { default as HistoryIcon } from "@assets/image/icons/History.svg?react";
106106
export { default as LaptopIcon } from "@assets/image/icons/Laptop.svg?react";
107107
export { default as SendIcon } from "@assets/image/icons/Send.svg?react";
108108
// Project Config Accordion Icons - Taken from: https://fontawesome.com License - https://fontawesome.com/license/free
109-
// Taken from: https://fontawesome.com/icons/book-open?f=classic&s=solid
110-
export { default as BookOpenIcon } from "@assets/image/icons/BookOpen.svg?react";
111109
// Taken from: https://fontawesome.com/icons/book?f=classic&s=solid
112110
export { default as BookClosedIcon } from "@assets/image/icons/BookClosed.svg?react";
113-
// Taken from: https://fontawesome.com/icons/folder-open?f=classic&s=solid
114-
export { default as FilesFolderIcon } from "@assets/image/icons/FilesFolder.svg?react";
115-
// Taken from: https://fontawesome.com/icons/folder?f=classic&s=solid
116-
export { default as FilesFolderClosedIcon } from "@assets/image/icons/FilesFolderClosed.svg?react";
117-
// Taken from: https://fontawesome.com/icons/plug?f=classic&s=solid
118-
export { default as ConnectionPlugIcon } from "@assets/image/icons/ConnectionPlug.svg?react";
119111
// Taken from: https://fontawesome.com/icons/link?f=classic&s=solid
120112
export { default as ConnectionUnplugIcon } from "@assets/image/icons/ConnectionUnplug.svg?react";
121113
// Taken from: https://tabler.io/icons/icon/variable
@@ -124,5 +116,3 @@ export { default as VariableCodeIcon } from "@assets/image/icons/VariableCode.sv
124116
export { default as VariableCircleIcon } from "@assets/image/icons/VariableCircle.svg?react";
125117
// Taken from: https://fontawesome.com/icons/bolt?f=classic&s=solid
126118
export { default as TriggerBoltIcon } from "@assets/image/icons/TriggerBolt.svg?react";
127-
// Taken from: https://fontawesome.com/icons/flag?f=classic&s=solid
128-
export { default as TriggerFlagIcon } from "@assets/image/icons/TriggerFlag.svg?react";

src/components/organisms/chatbotIframe/chatbotIframe.tsx

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,7 @@ import { aiChatbotUrl, defaultOpenedProjectFile, descopeProjectId, isDevelopment
1313
import { EventListenerName } from "@src/enums";
1414
import { triggerEvent, useChatbotIframeConnection, useEventListener } from "@src/hooks";
1515
import { ChatbotIframeProps } from "@src/interfaces/components";
16-
import {
17-
useDrawerStore,
18-
useOrganizationStore,
19-
useProjectStore,
20-
useSharedBetweenProjectsStore,
21-
useToastStore,
22-
} from "@src/store";
16+
import { useOrganizationStore, useProjectStore, useSharedBetweenProjectsStore, useToastStore } from "@src/store";
2317
import { MessageTypes } from "@src/types/iframeCommunication.type";
2418
import {
2519
cn,
@@ -77,14 +71,9 @@ export const ChatbotIframe = ({
7771
const currentOrganization = useOrganizationStore((state) => state.currentOrganization);
7872
const setExpandedProjectNavigation = useSharedBetweenProjectsStore((state) => state.setExpandedProjectNavigation);
7973
const selectionPerProject = useSharedBetweenProjectsStore((state) => state.selectionPerProject);
80-
const { isDrawerOpen } = useDrawerStore();
8174
const [retryToastDisplayed, setRetryToastDisplayed] = useState(false);
8275
const [chatbotUrlWithOrgId, setChatbotUrlWithOrgId] = useState("");
8376

84-
const currentProjectConfigMode = useMemo(() => {
85-
return isDrawerOpen("projectConfig");
86-
}, [isDrawerOpen]);
87-
8877
const [cacheBuster] = useState(() => Date.now().toString());
8978

9079
const computedChatbotUrl = useMemo(() => {
@@ -98,15 +87,14 @@ export const ChatbotIframe = ({
9887
params.append("bg-color", "1b1b1b");
9988
}
10089
if (projectId) {
101-
params.append("config-mode", currentProjectConfigMode ? "true" : "false");
10290
params.append("project-id", projectId);
10391
}
10492
if (displayDeployButton) {
10593
params.append("display-deploy-button", displayDeployButton ? "true" : "false");
10694
}
10795
params.append("_cb", cacheBuster);
10896
return `${aiChatbotUrl}?${params.toString()}`;
109-
}, [currentOrganization?.id, currentProjectConfigMode, projectId, displayDeployButton, isTransparent, cacheBuster]);
97+
}, [currentOrganization?.id, projectId, displayDeployButton, isTransparent, cacheBuster]);
11098

11199
useEffect(() => {
112100
if (!computedChatbotUrl || computedChatbotUrl === chatbotUrlWithOrgId) return;
@@ -242,9 +230,7 @@ export const ChatbotIframe = ({
242230
}, [location.pathname, location.search, location.hash]);
243231

244232
// Memoized computed values for performance
245-
const frameTitle = useMemo(() => {
246-
return currentProjectConfigMode ? t("titles.projectStatus") : t("titles.aiAssistant");
247-
}, [currentProjectConfigMode, t]);
233+
const frameTitle = t("titles.aiAssistant");
248234

249235
const frameClass = useMemo(() => {
250236
return cn("flex size-full flex-col items-center justify-center rounded-xl bg-gray-1100", {

src/components/organisms/code/table.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -288,9 +288,9 @@ export const CodeTable = () => {
288288
</div>
289289
</div>
290290

291-
{/* <DeleteFileModal isDeleting={isDeleting} onDelete={handleRemoveFile} /> */}
291+
<DeleteFileModal isDeleting={isDeleting} onDelete={handleRemoveFile} />
292292

293-
{/* <AddFileModal /> */}
293+
<AddFileModal />
294294
</div>
295295
);
296296
};

src/components/organisms/editorTabs.tsx

Lines changed: 6 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ import {
2727
import { MessageTypes } from "@src/types";
2828
import { Project } from "@src/types/models";
2929
import { OperationType } from "@type/global";
30-
import { cn, getPreference } from "@utilities";
30+
import { getPreference } from "@utilities";
3131

32-
import { Button, IconButton, IconSvg, Loader, MermaidDiagram, Spinner, Tab, Typography } from "@components/atoms";
32+
import { Button, IconSvg, Loader, MermaidDiagram, Spinner, Tab, Typography } from "@components/atoms";
3333
import { CodeFixDiffEditorModal } from "@components/organisms";
3434

3535
import { AKRoundLogo } from "@assets/image";
36-
import { Close, SaveIcon } from "@assets/image/icons";
36+
import { SaveIcon } from "@assets/image/icons";
3737

3838
export const EditorTabs = () => {
3939
const { projectId } = useParams() as { projectId: string };
@@ -68,10 +68,9 @@ export const EditorTabs = () => {
6868
}, [projectId]);
6969

7070
const addToast = useToastStore((state) => state.addToast);
71-
const { openFiles, openFileAsActive, closeOpenedFile } = useFileStore();
71+
const { openFiles, openFileAsActive } = useFileStore();
7272
const { openModal, closeModal } = useModalStore();
73-
const { cursorPositionPerProject, setCursorPosition, selectionPerProject, fullScreenEditor, setFullScreenEditor } =
74-
useSharedBetweenProjectsStore();
73+
const { cursorPositionPerProject, setCursorPosition, selectionPerProject } = useSharedBetweenProjectsStore();
7574

7675
let activeFile = openFiles[projectId]?.find((f: { isActive: boolean }) => f.isActive);
7776
let activeEditorFileName = activeFile?.name || "";
@@ -138,7 +137,7 @@ export const EditorTabs = () => {
138137
useEffect(() => {
139138
if (location.state?.revealStatusSidebar) {
140139
setTimeout(() => {
141-
triggerEvent(EventListenerName.displayProjectConfigSidebar);
140+
triggerEvent(EventListenerName.displayProjectSettingsSidebar);
142141
}, 100);
143142

144143
// eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -604,33 +603,6 @@ export const EditorTabs = () => {
604603
};
605604
}, [debouncedManualSave]);
606605

607-
const activeCloseIcon = (fileName: string) => {
608-
const isActiveFile = openFiles[projectId]?.find(({ isActive, name }) => name === fileName && isActive);
609-
610-
return cn("size-4 p-0.5 opacity-0 hover:bg-gray-1100 group-hover:opacity-100", {
611-
"opacity-100": isActiveFile,
612-
});
613-
};
614-
615-
const toggleFullScreenEditor = () => {
616-
setFullScreenEditor(projectId, !fullScreenEditor[projectId]);
617-
};
618-
619-
const handleCloseButtonClick = (
620-
event: React.MouseEvent<HTMLButtonElement | HTMLDivElement, MouseEvent>,
621-
name: string
622-
): void => {
623-
event.stopPropagation();
624-
625-
if (name === activeEditorFileName) {
626-
debouncedAutosave.cancel();
627-
}
628-
629-
closeOpenedFile(name);
630-
if (!fullScreenEditor[projectId] || openFiles[projectId]?.length !== 1) return;
631-
toggleFullScreenEditor();
632-
};
633-
634606
const isMarkdownFile = useMemo(() => activeEditorFileName.endsWith(".md"), [activeEditorFileName]);
635607
const readmeContent = useMemo(() => content.replace(/---[\s\S]*?---\n/, ""), [content]);
636608

src/components/organisms/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ export { NewProjectModal, ImportProjectModal } from "@components/organisms/modal
1111
export { Sidebar } from "@components/organisms/sidebar/sidebar";
1212
export { SplitFrame } from "@components/organisms/splitFrame";
1313
export { SystemLog } from "@components/organisms/systemLog";
14-
export { ProjectConfigTopbar, DashboardTopbar } from "@components/organisms/topbar";
14+
export { ProjectSettingsTopbar, DashboardTopbar } from "@components/organisms/topbar";
1515
export { TitleTopbar } from "@components/organisms/topbar";
1616
export { UserFeedbackForm } from "@components/organisms/userFeedbackForm";
1717
export { ProtectedRoute } from "@components/organisms/protectedRoute";
18-
export { ProjectConfigViewDrawer } from "@components/organisms/projectConfigView";
18+
export { ProjectSettingsViewDrawer } from "@components/organisms/projectSettingsView";
1919
export { TemplateStart } from "@components/organisms/templateStart";
2020
export { TourManager, TourPopover } from "@components/organisms/tour";
2121
export { CreateNewProject } from "@components/organisms/createNewProject";

src/components/organisms/projectConfigView/index.ts

Lines changed: 0 additions & 7 deletions
This file was deleted.

src/components/organisms/projectConfigView/projectConfigView.tsx

Lines changed: 0 additions & 42 deletions
This file was deleted.

src/components/organisms/projectConfigView/documentationModal.tsx renamed to src/components/organisms/projectSettingsView/documentationModal.tsx

File renamed without changes.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
export { ProjectSettingsConnections } from "./projectSettingsConnections";
2+
export { ProjectSettingsDocumentation } from "./projectSettingsDocumentation";
3+
export { ProjectSettingsFiles } from "./projectSettingsFiles";
4+
export { ProjectSettingsVariables } from "./projectSettingsVariables";
5+
export { ProjectSettingsTriggers } from "./projectSettingsTriggers";
6+
export { ProjectSettingsView } from "./projectSettingsView";
7+
export { ProjectSettingsViewDrawer } from "./projectSettingsViewDrawer";

src/components/organisms/projectConfigView/projectConfigConnections.tsx renamed to src/components/organisms/projectSettingsView/projectSettingsConnections.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import { Accordion, DropdownButton } from "@components/molecules";
1212
import { MoreIcon } from "@assets/image";
1313
import { CirclePlusIcon, ConnectionUnplugIcon, EditIcon, TrashIcon } from "@assets/image/icons";
1414

15-
export const ProjectConfigConnections = () => {
15+
export const ProjectSettingsConnections = () => {
1616
const { t } = useTranslation("project-configuration-view", { keyPrefix: "connections" });
1717
const { t: tConnections } = useTranslation("tabs", { keyPrefix: "connections" });
1818
const connections = useCacheStore((state) => state.connections);

0 commit comments

Comments
 (0)