diff --git a/web/src/routes/agent/+page.svelte b/web/src/routes/agent/+page.svelte
index de385fd0..cbcd69e4 100644
--- a/web/src/routes/agent/+page.svelte
+++ b/web/src/routes/agent/+page.svelte
@@ -8,6 +8,7 @@
import ChatWindow from "$lib/components/chat/ChatWindow.svelte";
import { type Agent } from "$lib/types/Agent";
import LoadingPage from "$lib/components/LoadingPage.svelte";
+ import { apiRequest } from "$lib/utils/authenticate";
let currentAgentDetails: Agent;
let errorMessage: string = "Something went wrong";
@@ -135,64 +136,6 @@
});
});
- async function apiRequest(url: string, options: RequestInit) {
- try {
- const accessToken = localStorage.getItem("accessToken");
- const response = await fetch(url, {
- ...options,
- headers: {
- ...options.headers,
- },
- });
-
- if (response.status === 401) {
- const refreshed = await refreshAccessToken();
- if (refreshed) {
- // Retry the request with the refreshed token
- options.headers = {
- ...options.headers,
- Authorization: `Bearer ${accessToken}`, // use updated token
- };
- return await fetch(url, options);
- }
- }
-
- return response;
- } catch (error) {
- throw error;
- }
- }
-
- async function refreshAccessToken() {
- try {
- const refreshToken = localStorage.getItem("refreshToken");
-
- const response = await fetch(
- "https://api.commanddash.dev/account/github/refresh",
- {
- method: "POST",
- headers: {
- Authorization: `Bearer ${refreshToken}`,
- },
- },
- );
- const _response = await response.json();
- if (response.ok) {
- accessToken = _response.access_token;
- if (accessToken?.length === 0) {
- localStorage.setItem("accessToken", accessToken);
- }
- return true;
- } else {
- console.error("Failed to refresh token");
- return false;
- }
- } catch (error) {
- console.error("refreshAccessToken: error", error);
- return false;
- }
- }
-
const extractUris = (
data: { id: string; uri: { type: string; uri: string }[] }[],
): { type: string; uri: string }[] => {
diff --git a/web/src/routes/agent/[id]/+page.svelte b/web/src/routes/agent/[id]/+page.svelte
index cded9bb9..42de4c73 100644
--- a/web/src/routes/agent/[id]/+page.svelte
+++ b/web/src/routes/agent/[id]/+page.svelte
@@ -3,6 +3,7 @@
import { error } from "@sveltejs/kit";
import { page } from "$app/stores";
+ import { apiRequest } from "$lib/utils/authenticate";
import ChatWindow from "$lib/components/chat/ChatWindow.svelte";
import { type Agent } from "$lib/types/Agent";
import LoadingPage from "$lib/components/LoadingPage.svelte";
@@ -72,64 +73,6 @@
loading = false;
});
- async function apiRequest(url: string, options: RequestInit) {
- try {
- const accessToken = localStorage.getItem("accessToken");
- const response = await fetch(url, {
- ...options,
- headers: {
- ...options.headers,
- },
- });
-
- if (response.status === 401) {
- const refreshed = await refreshAccessToken();
- if (refreshed) {
- // Retry the request with the refreshed token
- options.headers = {
- ...options.headers,
- Authorization: `Bearer ${accessToken}`, // use updated token
- };
- return await fetch(url, options);
- }
- }
-
- return response;
- } catch (error) {
- throw error;
- }
- }
-
- async function refreshAccessToken() {
- try {
- const refreshToken = localStorage.getItem("refreshToken");
-
- const response = await fetch(
- "https://api.commanddash.dev/account/github/refresh",
- {
- method: "POST",
- headers: {
- Authorization: `Bearer ${refreshToken}`,
- },
- },
- );
- const _response = await response.json();
- if (response.ok) {
- accessToken = _response.access_token;
- if (accessToken?.length === 0) {
- localStorage.setItem("accessToken", accessToken);
- }
- return true;
- } else {
- console.error("Failed to refresh token");
- return false;
- }
- } catch (error) {
- console.error("refreshAccessToken: error", error);
- return false;
- }
- }
-
const extractUris = (
data: { id: string; uri: { type: string; uri: string }[] }[],
): { type: string; uri: string }[] => {
From 70a0c182ca76c7f4dda406b3f3566bfbe621276a Mon Sep 17 00:00:00 2001
From: Aarush-wadhia
Date: Fri, 27 Sep 2024 14:20:54 +0530
Subject: [PATCH 31/37] fix: Fixed search issue of the marketplace. No we can
query and get the agents as per search
---
web/src/routes/+page.svelte | 41 ++++++++++++++++++++++++-------------
1 file changed, 27 insertions(+), 14 deletions(-)
diff --git a/web/src/routes/+page.svelte b/web/src/routes/+page.svelte
index 34591ab2..51476e6c 100644
--- a/web/src/routes/+page.svelte
+++ b/web/src/routes/+page.svelte
@@ -73,10 +73,10 @@
throw new Error("Failed to fetch agents");
}
- agents = _agents.public_agents.agents;
- ownedAgents = _agents.owned_agents.agents;
- sharedAgents = _agents.shared_agents.agents;
- spotlightAgents = _agents.spotlight_agents.agents;
+ agents = _agents.public_agents.agents ?? [];
+ ownedAgents = _agents.owned_agents.agents ?? [];
+ sharedAgents = _agents.shared_agents.agents ?? [];
+ spotlightAgents = _agents.spotlight_agents.agents ?? [];
// Combine agents from new API into sections
if (ownedAgents?.length > 0) {
@@ -137,16 +137,29 @@
};
const search = debounce(async (value: string) => {
- searchValue = value.toLowerCase();
- filteredAgents = sections["All Agents"].filter((agent) => {
- return (
- agent.metadata.display_name.toLowerCase().includes(searchValue) ||
- agent.author?.name.toLowerCase().includes(searchValue) ||
- agent.author?.source_url?.toLowerCase().includes(searchValue)
- );
- });
- appInsights.trackEvent({ name: "Search", properties: { searchValue } }); // Track custom event
- }, SEARCH_DEBOUNCE_DELAY);
+ searchValue = value;
+ filteredAgents = [];
+
+ // Combine agents from all sections to filter
+ debugger;
+ const allAgents = [
+ ...ownedAgents,
+ ...sharedAgents,
+ ...spotlightAgents,
+ ...agents
+ ];
+
+ filteredAgents = allAgents.filter((agent) => {
+ return (
+ agent.metadata.display_name.toLowerCase().includes(searchValue.toLocaleLowerCase()) ||
+ agent.author?.name?.toLowerCase().includes(searchValue.toLocaleLowerCase()) ||
+ agent.author?.source_url?.toLowerCase().includes(searchValue.toLocaleLowerCase())
+ );
+ });
+
+ appInsights.trackEvent({ name: "Search", properties: { searchValue } }); // Track custom event
+}, SEARCH_DEBOUNCE_DELAY);
+
const formatGithubUrl = (url: string) => {
const urlObj = new URL(url);
From 8fc7250678686b9dc100b177c4a9c3f078b794ec Mon Sep 17 00:00:00 2001
From: Aarush-wadhia
Date: Sat, 28 Sep 2024 09:59:09 +0530
Subject: [PATCH 32/37] feat(Agents): Added chips at the bottom to remove and
switch between agents
---
vscode/media/command-deck/command-deck.js | 11 +-
vscode/media/market-place/market-place.js | 2 +-
vscode/media/onboarding/onboarding.html | 1 +
vscode/media/onboarding/onboarding.js | 207 +++++----------------
vscode/src/providers/chat_view_provider.ts | 1 +
5 files changed, 52 insertions(+), 170 deletions(-)
diff --git a/vscode/media/command-deck/command-deck.js b/vscode/media/command-deck/command-deck.js
index 8ed0cd0b..17508464 100644
--- a/vscode/media/command-deck/command-deck.js
+++ b/vscode/media/command-deck/command-deck.js
@@ -99,8 +99,6 @@ class CommandDeck {
let options = [];
if (query.startsWith('@')) {
options = await this.resolveFn(query, 'at');
- } else if (query.startsWith('/')) {
- options = await this.resolveFn(query, 'slash');
}
if (options.length !== 0) {
@@ -127,16 +125,13 @@ class CommandDeck {
if (!option?.name.startsWith('/')) {
this.ref.textContent = '';
}
- if (option?.name.startsWith('/')) {
- const textContent = this.ref.innerHTML;
- const atIndex = textContent.lastIndexOf('/');
- this.ref.innerHTML = textContent.substring(0, atIndex) + textContent.substring(atIndex + 1);
- }
if (option?.name.startsWith('@')) {
activeAgentAttach.style = "color: #497BEF; !important";
agentName = option?.metadata.display_name;
- headerLogo.src = option.metadata.avatar_id;
+ headerLogo.classList.add("hidden");
+ headerAgentLogo.classList.remove("hidden");
+ headerAgentLogo.src = option.metadata.avatar_id;
headerText.classList.add("hidden");
headerAgentName.classList.remove("hidden");
headerAgentName.textContent = option?.metadata.display_name;
diff --git a/vscode/media/market-place/market-place.js b/vscode/media/market-place/market-place.js
index c22dc7eb..501d195a 100644
--- a/vscode/media/market-place/market-place.js
+++ b/vscode/media/market-place/market-place.js
@@ -226,7 +226,7 @@ function loadOnErrorImage(agentImage) {
}
function handleSearchInput(event) {
- const searchText = event.target.value;
+ const searchText = event.target.value.toLowerCase();
const agentList = document.querySelectorAll('.market-place-list-background');
agentList.forEach(agent => {
diff --git a/vscode/media/onboarding/onboarding.html b/vscode/media/onboarding/onboarding.html
index 3416126a..a0f8500c 100644
--- a/vscode/media/onboarding/onboarding.html
+++ b/vscode/media/onboarding/onboarding.html
@@ -22,6 +22,7 @@