diff --git a/src/frontend/src/contexts/tabsContext.tsx b/src/frontend/src/contexts/tabsContext.tsx
index 480a154f8..18927a480 100644
--- a/src/frontend/src/contexts/tabsContext.tsx
+++ b/src/frontend/src/contexts/tabsContext.tsx
@@ -19,6 +19,7 @@ import { typesContext } from "./typesContext";
import { APITemplateType, TemplateVariableType } from "../types/api";
import { v4 as uuidv4 } from "uuid";
import { addEdge } from "reactflow";
+import _ from "lodash";
const TabsContextInitialValue: TabsContextType = {
save: () => {},
@@ -58,23 +59,29 @@ export function TabsProvider({ children }: { children: ReactNode }) {
return newNodeId.current;
}
function save() {
- let Saveflows = [...flows];
- if (Saveflows.length !== 0)
+ // added clone deep to avoid mutating the original object
+ let Saveflows = _.cloneDeep(flows);
+ if (Saveflows.length !== 0) {
Saveflows.forEach((flow) => {
if (flow.data && flow.data?.nodes)
flow.data?.nodes.forEach((node) => {
+ console.log(node.data.type);
+ //looking for file fields to prevent saving the content and breaking the flow for exceeding the the data limite for local storage
Object.keys(node.data.node.template).forEach((key) => {
+ console.log(node.data.node.template[key].type);
if (node.data.node.template[key].type === "file") {
- // ! Commenting this out for now, as it is causing issues with the file upload
- // node.data.node.template[key].content = "";
+ console.log(node.data.node.template[key]);
+ node.data.node.template[key].content = null;
+ node.data.node.template[key].value = "";
}
});
});
});
- window.localStorage.setItem(
- "tabsData",
- JSON.stringify({ tabIndex, flows: Saveflows, id })
- );
+ window.localStorage.setItem(
+ "tabsData",
+ JSON.stringify({ tabIndex, flows: Saveflows, id })
+ );
+ }
}
useEffect(() => {
//save tabs locally
diff --git a/src/frontend/src/icons/Airbyte/airbyte.svg b/src/frontend/src/icons/Airbyte/airbyte.svg
new file mode 100644
index 000000000..eefa1bceb
--- /dev/null
+++ b/src/frontend/src/icons/Airbyte/airbyte.svg
@@ -0,0 +1,22 @@
+
+
+
diff --git a/src/frontend/src/icons/Airbyte/index.tsx b/src/frontend/src/icons/Airbyte/index.tsx
new file mode 100644
index 000000000..6fb8daf24
--- /dev/null
+++ b/src/frontend/src/icons/Airbyte/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as AirbyteSVG } from "./airbyte.svg";
+
+export const AirbyteIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/AzLogo/az_logo.svg b/src/frontend/src/icons/AzLogo/az_logo.svg
new file mode 100644
index 000000000..4f2e75777
--- /dev/null
+++ b/src/frontend/src/icons/AzLogo/az_logo.svg
@@ -0,0 +1,49 @@
+
diff --git a/src/frontend/src/icons/AzLogo/index.tsx b/src/frontend/src/icons/AzLogo/index.tsx
new file mode 100644
index 000000000..96a8a058a
--- /dev/null
+++ b/src/frontend/src/icons/AzLogo/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as AzSVG } from "./az_logo.svg";
+
+export const AzIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/Bing/bing.svg b/src/frontend/src/icons/Bing/bing.svg
new file mode 100644
index 000000000..0d93e379c
--- /dev/null
+++ b/src/frontend/src/icons/Bing/bing.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Bing/index.tsx b/src/frontend/src/icons/Bing/index.tsx
new file mode 100644
index 000000000..abaf31be4
--- /dev/null
+++ b/src/frontend/src/icons/Bing/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as BingSVG } from "./bing.svg";
+
+export const BingIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/ChromaIcon/index.tsx b/src/frontend/src/icons/ChromaIcon/index.tsx
index 2e4790edc..afcb868a8 100644
--- a/src/frontend/src/icons/ChromaIcon/index.tsx
+++ b/src/frontend/src/icons/ChromaIcon/index.tsx
@@ -1,10 +1,9 @@
import React, { forwardRef } from "react";
import { ReactComponent as ChromaSVG } from "./chroma.svg";
-const ChromaIcon = forwardRef>(
- (props, ref) => {
- return ;
- }
-);
-
-export default ChromaIcon;
+export const ChromaIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Cohere/cohere.svg b/src/frontend/src/icons/Cohere/cohere.svg
new file mode 100644
index 000000000..54ead3cf1
--- /dev/null
+++ b/src/frontend/src/icons/Cohere/cohere.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Cohere/index.tsx b/src/frontend/src/icons/Cohere/index.tsx
new file mode 100644
index 000000000..bcb15dd24
--- /dev/null
+++ b/src/frontend/src/icons/Cohere/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as CohereSVG } from "./cohere.svg";
+
+export const CohereIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Evernote/evernote-icon.svg b/src/frontend/src/icons/Evernote/evernote-icon.svg
new file mode 100644
index 000000000..2a3495980
--- /dev/null
+++ b/src/frontend/src/icons/Evernote/evernote-icon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Evernote/index.tsx b/src/frontend/src/icons/Evernote/index.tsx
new file mode 100644
index 000000000..685d9da13
--- /dev/null
+++ b/src/frontend/src/icons/Evernote/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as EvernoteSVG } from "./evernote-icon.svg";
+
+export const EvernoteIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/FacebookMessenger/Facebook_Messenger_logo_2020.svg b/src/frontend/src/icons/FacebookMessenger/Facebook_Messenger_logo_2020.svg
new file mode 100644
index 000000000..bd980c3af
--- /dev/null
+++ b/src/frontend/src/icons/FacebookMessenger/Facebook_Messenger_logo_2020.svg
@@ -0,0 +1,2 @@
+
diff --git a/src/frontend/src/icons/FacebookMessenger/index.tsx b/src/frontend/src/icons/FacebookMessenger/index.tsx
new file mode 100644
index 000000000..4450570aa
--- /dev/null
+++ b/src/frontend/src/icons/FacebookMessenger/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as FacebookMessengerSVG } from "./Facebook_Messenger_logo_2020.svg";
+
+export const FBIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/GitBook/gitbook-svgrepo-com.svg b/src/frontend/src/icons/GitBook/gitbook-svgrepo-com.svg
new file mode 100644
index 000000000..75eaa6da1
--- /dev/null
+++ b/src/frontend/src/icons/GitBook/gitbook-svgrepo-com.svg
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/GitBook/index.tsx b/src/frontend/src/icons/GitBook/index.tsx
new file mode 100644
index 000000000..0e312a8e1
--- /dev/null
+++ b/src/frontend/src/icons/GitBook/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as GitBookSVG } from "./gitbook-svgrepo-com.svg";
+
+export const GitBookIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Google/google.svg b/src/frontend/src/icons/Google/google.svg
new file mode 100644
index 000000000..b518c5270
--- /dev/null
+++ b/src/frontend/src/icons/Google/google.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Google/index.tsx b/src/frontend/src/icons/Google/index.tsx
new file mode 100644
index 000000000..5159ba23b
--- /dev/null
+++ b/src/frontend/src/icons/Google/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as GoogleSVG } from "./google.svg";
+
+export const GoogleIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/HuggingFace/hf-logo.svg b/src/frontend/src/icons/HuggingFace/hf-logo.svg
new file mode 100644
index 000000000..ab959d165
--- /dev/null
+++ b/src/frontend/src/icons/HuggingFace/hf-logo.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/frontend/src/icons/HuggingFace/index.tsx b/src/frontend/src/icons/HuggingFace/index.tsx
new file mode 100644
index 000000000..44fc68609
--- /dev/null
+++ b/src/frontend/src/icons/HuggingFace/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as HugginFaceSVG } from "./hf-logo.svg";
+
+export const HugginFaceIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/IFixIt/ifixit-seeklogo.com.svg b/src/frontend/src/icons/IFixIt/ifixit-seeklogo.com.svg
new file mode 100644
index 000000000..cbb67cf79
--- /dev/null
+++ b/src/frontend/src/icons/IFixIt/ifixit-seeklogo.com.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/IFixIt/index.tsx b/src/frontend/src/icons/IFixIt/index.tsx
new file mode 100644
index 000000000..9124266e4
--- /dev/null
+++ b/src/frontend/src/icons/IFixIt/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as IFixItSVG } from "./ifixit-seeklogo.com.svg";
+
+export const IFixIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/Meta/index.tsx b/src/frontend/src/icons/Meta/index.tsx
new file mode 100644
index 000000000..0aabeea74
--- /dev/null
+++ b/src/frontend/src/icons/Meta/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as MetaSVG } from "./meta-icon.svg";
+
+export const MetaIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/Meta/meta-icon.svg b/src/frontend/src/icons/Meta/meta-icon.svg
new file mode 100644
index 000000000..f5e8b583c
--- /dev/null
+++ b/src/frontend/src/icons/Meta/meta-icon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Midjorney/Midjourney_Emblem.svg b/src/frontend/src/icons/Midjorney/Midjourney_Emblem.svg
new file mode 100644
index 000000000..9c90d37e2
--- /dev/null
+++ b/src/frontend/src/icons/Midjorney/Midjourney_Emblem.svg
@@ -0,0 +1,53 @@
+
diff --git a/src/frontend/src/icons/Midjorney/index.tsx b/src/frontend/src/icons/Midjorney/index.tsx
new file mode 100644
index 000000000..fd09aa700
--- /dev/null
+++ b/src/frontend/src/icons/Midjorney/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as MidjorneySVG } from "./Midjourney_Emblem.svg";
+
+export const MidjorneyIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Notion/Notion-logo.svg b/src/frontend/src/icons/Notion/Notion-logo.svg
new file mode 100644
index 000000000..bf6442f76
--- /dev/null
+++ b/src/frontend/src/icons/Notion/Notion-logo.svg
@@ -0,0 +1,4 @@
+
diff --git a/src/frontend/src/icons/Notion/index.tsx b/src/frontend/src/icons/Notion/index.tsx
new file mode 100644
index 000000000..265a5c153
--- /dev/null
+++ b/src/frontend/src/icons/Notion/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as NotionSVG } from "./Notion-logo.svg";
+
+export const NotionIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/OpenAi/index.tsx b/src/frontend/src/icons/OpenAi/index.tsx
new file mode 100644
index 000000000..940f4f908
--- /dev/null
+++ b/src/frontend/src/icons/OpenAi/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as OpenAiSVG } from "./openAI.svg";
+
+export const OpenAiIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/OpenAi/openAI.svg b/src/frontend/src/icons/OpenAi/openAI.svg
new file mode 100644
index 000000000..e81233fe6
--- /dev/null
+++ b/src/frontend/src/icons/OpenAi/openAI.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/PowerPoint/PowerPoint.svg b/src/frontend/src/icons/PowerPoint/PowerPoint.svg
new file mode 100644
index 000000000..1b9ee4383
--- /dev/null
+++ b/src/frontend/src/icons/PowerPoint/PowerPoint.svg
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+]>
+
diff --git a/src/frontend/src/icons/PowerPoint/index.tsx b/src/frontend/src/icons/PowerPoint/index.tsx
new file mode 100644
index 000000000..89d6fb53b
--- /dev/null
+++ b/src/frontend/src/icons/PowerPoint/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as PowerPointSVG } from "./PowerPoint.svg";
+
+export const PowerPointIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/QDrant/QDrant.svg b/src/frontend/src/icons/QDrant/QDrant.svg
new file mode 100644
index 000000000..a53c6596c
--- /dev/null
+++ b/src/frontend/src/icons/QDrant/QDrant.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/QDrant/index.tsx b/src/frontend/src/icons/QDrant/index.tsx
new file mode 100644
index 000000000..5bc03e070
--- /dev/null
+++ b/src/frontend/src/icons/QDrant/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as QDrantSVG } from "./QDrant.svg";
+
+export const QDrantIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/ReadTheDocs/index.tsx b/src/frontend/src/icons/ReadTheDocs/index.tsx
new file mode 100644
index 000000000..87a327912
--- /dev/null
+++ b/src/frontend/src/icons/ReadTheDocs/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as ReadTheDocsSVG } from "./readthedocsio-icon.svg";
+
+export const ReadTheDocsIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/ReadTheDocs/readthedocsio-icon.svg b/src/frontend/src/icons/ReadTheDocs/readthedocsio-icon.svg
new file mode 100644
index 000000000..22f38b47a
--- /dev/null
+++ b/src/frontend/src/icons/ReadTheDocs/readthedocsio-icon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Searx/Searx_logo.svg b/src/frontend/src/icons/Searx/Searx_logo.svg
new file mode 100644
index 000000000..45eecb16c
--- /dev/null
+++ b/src/frontend/src/icons/Searx/Searx_logo.svg
@@ -0,0 +1,198 @@
+
+
+
+
diff --git a/src/frontend/src/icons/Searx/index.tsx b/src/frontend/src/icons/Searx/index.tsx
new file mode 100644
index 000000000..c1196c68a
--- /dev/null
+++ b/src/frontend/src/icons/Searx/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as SearxSVG } from "./Searx_logo.svg";
+
+export const SearxIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/Serper/index.tsx b/src/frontend/src/icons/Serper/index.tsx
new file mode 100644
index 000000000..77ea58077
--- /dev/null
+++ b/src/frontend/src/icons/Serper/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as SerperSVG } from "./serper.svg";
+
+export const SerperIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Serper/serper.svg b/src/frontend/src/icons/Serper/serper.svg
new file mode 100644
index 000000000..a984dbfe8
--- /dev/null
+++ b/src/frontend/src/icons/Serper/serper.svg
@@ -0,0 +1,38 @@
+
+
+
diff --git a/src/frontend/src/icons/Slack/index.tsx b/src/frontend/src/icons/Slack/index.tsx
new file mode 100644
index 000000000..ec5bdc108
--- /dev/null
+++ b/src/frontend/src/icons/Slack/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as SlackSVG } from "./slack-icon.svg";
+
+export const SlackIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/Slack/slack-icon.svg b/src/frontend/src/icons/Slack/slack-icon.svg
new file mode 100644
index 000000000..c5f26c10e
--- /dev/null
+++ b/src/frontend/src/icons/Slack/slack-icon.svg
@@ -0,0 +1,6 @@
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Weaviate/index.tsx b/src/frontend/src/icons/Weaviate/index.tsx
new file mode 100644
index 000000000..f1aeeb1af
--- /dev/null
+++ b/src/frontend/src/icons/Weaviate/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as WeaviateSVG } from "./weaviate.svg";
+
+export const WeaviateIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Weaviate/weaviate.svg b/src/frontend/src/icons/Weaviate/weaviate.svg
new file mode 100644
index 000000000..d5b3bda24
--- /dev/null
+++ b/src/frontend/src/icons/Weaviate/weaviate.svg
@@ -0,0 +1,142 @@
+
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Wikipedia/Wikipedia.svg b/src/frontend/src/icons/Wikipedia/Wikipedia.svg
new file mode 100644
index 000000000..aa0cec73f
--- /dev/null
+++ b/src/frontend/src/icons/Wikipedia/Wikipedia.svg
@@ -0,0 +1,424 @@
+
+
+
diff --git a/src/frontend/src/icons/Wikipedia/index.tsx b/src/frontend/src/icons/Wikipedia/index.tsx
new file mode 100644
index 000000000..446f9c108
--- /dev/null
+++ b/src/frontend/src/icons/Wikipedia/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as WikipediaSVG } from "./Wikipedia.svg";
+
+export const WikipediaIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Wolfram/index.tsx b/src/frontend/src/icons/Wolfram/index.tsx
new file mode 100644
index 000000000..8f1b3e089
--- /dev/null
+++ b/src/frontend/src/icons/Wolfram/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as WolframSVG } from "./wolfram.svg";
+
+export const WolframIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/Wolfram/wolfram.svg b/src/frontend/src/icons/Wolfram/wolfram.svg
new file mode 100644
index 000000000..105a2c12b
--- /dev/null
+++ b/src/frontend/src/icons/Wolfram/wolfram.svg
@@ -0,0 +1,250 @@
+
+
\ No newline at end of file
diff --git a/src/frontend/src/icons/Word/index.tsx b/src/frontend/src/icons/Word/index.tsx
new file mode 100644
index 000000000..8c6cf9f31
--- /dev/null
+++ b/src/frontend/src/icons/Word/index.tsx
@@ -0,0 +1,8 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as WordSVG } from "./word.svg";
+
+export const WordIcon = forwardRef>(
+ (props, ref) => {
+ return ;
+ }
+);
diff --git a/src/frontend/src/icons/Word/word.svg b/src/frontend/src/icons/Word/word.svg
new file mode 100644
index 000000000..2060f5289
--- /dev/null
+++ b/src/frontend/src/icons/Word/word.svg
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+]>
+
diff --git a/src/frontend/src/icons/hackerNews/Y_Combinator_logo.svg b/src/frontend/src/icons/hackerNews/Y_Combinator_logo.svg
new file mode 100644
index 000000000..b502950a2
--- /dev/null
+++ b/src/frontend/src/icons/hackerNews/Y_Combinator_logo.svg
@@ -0,0 +1,7 @@
+
+
diff --git a/src/frontend/src/icons/hackerNews/index.tsx b/src/frontend/src/icons/hackerNews/index.tsx
new file mode 100644
index 000000000..787a94274
--- /dev/null
+++ b/src/frontend/src/icons/hackerNews/index.tsx
@@ -0,0 +1,9 @@
+import React, { forwardRef } from "react";
+import { ReactComponent as HackerNewsSVG } from "./Y_Combinator_logo.svg";
+
+export const HackerNewsIcon = forwardRef<
+ SVGSVGElement,
+ React.PropsWithChildren<{}>
+>((props, ref) => {
+ return ;
+});
diff --git a/src/frontend/src/icons/index.tsx b/src/frontend/src/icons/index.tsx
deleted file mode 100644
index 2b01bf567..000000000
--- a/src/frontend/src/icons/index.tsx
+++ /dev/null
@@ -1 +0,0 @@
-export { default as ChromaIcon } from "./ChromaIcon";
diff --git a/src/frontend/src/utils.ts b/src/frontend/src/utils.ts
index ef944aa47..cebf4fb02 100644
--- a/src/frontend/src/utils.ts
+++ b/src/frontend/src/utils.ts
@@ -20,7 +20,32 @@ import { Connection, Edge, Node, ReactFlowInstance, addEdge } from "reactflow";
import { FlowType, NodeType } from "./types/flow";
import { APITemplateType, TemplateVariableType } from "./types/api";
import _ from "lodash";
-import { ChromaIcon } from "./icons";
+import { ChromaIcon } from "./icons/ChromaIcon";
+import { AirbyteIcon } from "./icons/Airbyte";
+import { AzIcon } from "./icons/AzLogo";
+import { BingIcon } from "./icons/Bing";
+import { CohereIcon } from "./icons/Cohere";
+import { EvernoteIcon } from "./icons/Evernote";
+import { FBIcon } from "./icons/FacebookMessenger";
+import { GitBookIcon } from "./icons/GitBook";
+import { GoogleIcon } from "./icons/Google";
+import { HackerNewsIcon } from "./icons/hackerNews";
+import { HugginFaceIcon } from "./icons/HuggingFace";
+import { IFixIcon } from "./icons/IFixIt";
+import { MetaIcon } from "./icons/Meta";
+import { MidjorneyIcon } from "./icons/Midjorney";
+import { NotionIcon } from "./icons/Notion";
+import { OpenAiIcon } from "./icons/OpenAi";
+import { PowerPointIcon } from "./icons/PowerPoint";
+import { QDrantIcon } from "./icons/QDrant";
+import { ReadTheDocsIcon } from "./icons/ReadTheDocs";
+import { SearxIcon } from "./icons/Searx";
+import { SlackIcon } from "./icons/Slack";
+import { WeaviateIcon } from "./icons/Weaviate";
+import { WikipediaIcon } from "./icons/Wikipedia";
+import { WolframIcon } from "./icons/Wolfram";
+import { WordIcon } from "./icons/Word";
+import { SerperIcon } from "./icons/Serper";
import { v4 as uuidv4 } from "uuid";
export function classNames(...classes: Array) {
@@ -125,6 +150,38 @@ export const nodeIcons: {
>;
} = {
Chroma: ChromaIcon,
+ AirbyteJSONLoader: AirbyteIcon,
+ // SerpAPIWrapper: SerperIcon,
+ // AZLyricsLoader: AzIcon,
+ BingSearchAPIWrapper: BingIcon,
+ Cohere: CohereIcon,
+ CohereEmbeddings: CohereIcon,
+ EverNoteLoader: EvernoteIcon,
+ FacebookChatLoader: FBIcon,
+ GitbookLoader: GitBookIcon,
+ GoogleSearchAPIWrapper: GoogleIcon,
+ GoogleSearchResults: GoogleIcon,
+ GoogleSearchRun: GoogleIcon,
+ HNLoader: HackerNewsIcon,
+ HuggingFaceHub: HugginFaceIcon,
+ HuggingFaceEmbeddings: HugginFaceIcon,
+ IFixitLoader: IFixIcon,
+ Meta: MetaIcon,
+ Midjorney: MidjorneyIcon,
+ NotionDirectoryLoader: NotionIcon,
+ ChatOpenAI: OpenAiIcon,
+ OpenAI: OpenAiIcon,
+ OpenAIEmbeddings: OpenAiIcon,
+ PowerPoint: PowerPointIcon,
+ Qdrant: QDrantIcon,
+ ReadTheDocs: ReadTheDocsIcon,
+ Searx: SearxIcon,
+ SlackDirectoryLoader: SlackIcon,
+ // Weaviate: WeaviateIcon,
+ // WikipediaAPIWrapper: WikipediaIcon,
+ // WolframAlphaQueryRun: WolframIcon,
+ // WolframAlphaAPIWrapper: WolframIcon,
+ Word: WordIcon,
agents: RocketLaunchIcon,
chains: LinkIcon,
memories: CpuChipIcon,