From 4336e89ba2ff0af9ed7e043604f7c9d7a3499a4a Mon Sep 17 00:00:00 2001 From: Steven <stevenlgtm@gmail.com> Date: Mon, 21 Oct 2024 20:40:54 +0800 Subject: [PATCH] feat: pass search params to shortcuts --- frontend/web/src/pages/ShortcutSpace.tsx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/frontend/web/src/pages/ShortcutSpace.tsx b/frontend/web/src/pages/ShortcutSpace.tsx index a79b4c8..effd3e6 100644 --- a/frontend/web/src/pages/ShortcutSpace.tsx +++ b/frontend/web/src/pages/ShortcutSpace.tsx @@ -1,7 +1,7 @@ import { Button } from "@mui/joy"; import { useEffect, useState } from "react"; import toast from "react-hot-toast"; -import { useParams } from "react-router-dom"; +import { useLocation, useParams, useSearchParams } from "react-router-dom"; import CreateShortcutDrawer from "@/components/CreateShortcutDrawer"; import { isURL } from "@/helpers/utils"; import useNavigateTo from "@/hooks/useNavigateTo"; @@ -10,6 +10,7 @@ import { Shortcut } from "@/types/proto/api/v1/shortcut_service"; const ShortcutSpace = () => { const params = useParams(); + const [searchParams] = useSearchParams(); const shortcutName = params["*"] || ""; const navigateTo = useNavigateTo(); const userStore = useUserStore(); @@ -69,7 +70,11 @@ const ShortcutSpace = () => { // If shortcut is a URL, redirect to it directly. if (isURL(shortcut.link)) { window.document.title = "Redirecting..."; - window.location.href = shortcut.link; + const url = new URL(shortcut.link); + searchParams.forEach((value, key) => { + url.searchParams.append(key, value); + }); + window.location.href = url.toString(); return null; }