From 33115d8bf394e805df9051bd57842bc830389412 Mon Sep 17 00:00:00 2001 From: ranjith Date: Wed, 15 Oct 2025 15:17:44 +0530 Subject: [PATCH] WMS-29186 | Open wavepulse in new tab --- .../app/client/[channelId]/[section]/page.tsx | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/server/app/client/[channelId]/[section]/page.tsx b/server/app/client/[channelId]/[section]/page.tsx index 4cba351..67629d8 100644 --- a/server/app/client/[channelId]/[section]/page.tsx +++ b/server/app/client/[channelId]/[section]/page.tsx @@ -1,7 +1,7 @@ "use client"; import { UIAgentContext, useAppConnected, useAppInfo, useComponentTree, useConsole, useDatabases, useLocalStorage, useLocation, useNetworkRequests, usePlatformInfo, useStorageEntries, useTimelineLog } from "@/hooks/hooks"; -import { Tabs, Tab, Button, Input, DropdownMenu, DropdownItem, Dropdown, DropdownTrigger, ButtonGroup } from "@nextui-org/react"; +import { Tabs, Tab, Button, Input, DropdownMenu, DropdownItem, Dropdown, DropdownTrigger, ButtonGroup, Tooltip } from "@nextui-org/react"; import { useRouter } from "next/navigation"; import { useContext, useState, useEffect , useMemo, useCallback} from "react"; import { Info } from "./info"; @@ -64,6 +64,7 @@ function PulsePage({ section, refresh, channelId }: { section: string, refresh: const [appId, setAppId] = useState(localStorage.getItem('wavepulse.lastopenedapp.id') || 'com.application.id'); //should get props.path into this page const [expoUrl, setExpoUrl] = useState(localStorage.getItem('wavepulse.lastopenedexpo.url') || ''); const [url, setUrl] = useState(''); + const [isIframe, setIsIframe] = useState(false); const [selectedConnectOption, setSelectedConnectOption] = useState(['mobile']); useEffect(() => { if (selectedConnectOption[0] === 'mobile') { @@ -79,6 +80,11 @@ function PulsePage({ section, refresh, channelId }: { section: string, refresh: uiAgent.onConnect(() => { setIsConnected(uiAgent.isConnected); }); + try { + setIsIframe(window.self !== window.top); + } catch { + setIsIframe(true); + } }, []); useEffect(() => { setIsConnected(!!uiAgent.sessionDataKey); @@ -95,6 +101,16 @@ function PulsePage({ section, refresh, channelId }: { section: string, refresh: },[]); return (
+ {isIframe && + + }