diff --git a/.github/workflows/feature-based.yaml b/.github/workflows/feature-based.yaml index e3c8b8f31..d27a93f33 100644 --- a/.github/workflows/feature-based.yaml +++ b/.github/workflows/feature-based.yaml @@ -69,6 +69,7 @@ jobs: GH_NEXT_PUBLIC_GA_ID=G-FT28TL1W3M GH_IPFS_PIN_URL=https://test-pin.crustcloud.io/psa GH_COVALENT_API_KEY=cqt_rQtDdp9G9DFvqcGjVPDD4FFCyhFQ + target: runner tags: | ${{ env.image }} cache-from: type=local,src=/tmp/.buildx-cache diff --git a/src/components/navbar/Navbar/Navbar.tsx b/src/components/navbar/Navbar/Navbar.tsx index bf499dfe9..21f23c47b 100644 --- a/src/components/navbar/Navbar/Navbar.tsx +++ b/src/components/navbar/Navbar/Navbar.tsx @@ -3,6 +3,7 @@ import Button from '@/components/Button' import Container from '@/components/Container' import Logo from '@/components/Logo' import { ANN_CHAT_ID } from '@/constants/chat' +import useIsInIframe from '@/hooks/useIsInIframe' import usePrevious from '@/hooks/usePrevious' import { useConfigContext } from '@/providers/ConfigProvider' import { getBlockedResourcesQuery } from '@/services/api/moderation/query' @@ -16,7 +17,14 @@ import { LocalStorage } from '@/utils/storage' import dynamic from 'next/dynamic' import Link from 'next/link' import { useRouter } from 'next/router' -import { ComponentProps, useEffect, useMemo, useRef, useState } from 'react' +import { + ComponentProps, + ReactNode, + useEffect, + useMemo, + useRef, + useState, +} from 'react' import { HiOutlineBell, HiOutlineChevronLeft } from 'react-icons/hi2' const ProfileAvatar = dynamic(() => import('./ProfileAvatar'), { @@ -33,10 +41,10 @@ export type NavbarProps = ComponentProps<'div'> & { forceUseDefaultBackLink?: boolean } customContent?: (elements: { - logoLink: JSX.Element - authComponent: JSX.Element - notificationBell: JSX.Element - backButton: JSX.Element + logoLink: ReactNode + authComponent: ReactNode + notificationBell: ReactNode + backButton: ReactNode }) => JSX.Element } @@ -115,7 +123,8 @@ export default function Navbar({ ) - const notificationBell = + const isInIframe = useIsInIframe() + const notificationBell = !isInIframe && return ( <> diff --git a/src/modules/chat/ChatPage/ChatPage.tsx b/src/modules/chat/ChatPage/ChatPage.tsx index 08193f80e..54e440d77 100644 --- a/src/modules/chat/ChatPage/ChatPage.tsx +++ b/src/modules/chat/ChatPage/ChatPage.tsx @@ -34,7 +34,7 @@ import { replaceUrl } from '@/utils/window' import dynamic from 'next/dynamic' import { ImageProps } from 'next/image' import Router, { useRouter } from 'next/router' -import { useEffect, useRef, useState } from 'react' +import { ReactNode, useEffect, useRef, useState } from 'react' import urlJoin from 'url-join' const NetworkStatus = dynamic(() => import('@/components/NetworkStatus'), { @@ -224,7 +224,7 @@ function NavbarChatInfo({ }: { image: ImageProps['src'] messageCount: number - backButton: JSX.Element + backButton: ReactNode chatMetadata?: ChatMetadata chatId: string }) { diff --git a/src/modules/chat/HubPage/HubPageNavbar.tsx b/src/modules/chat/HubPage/HubPageNavbar.tsx index 95cf70081..47ec05e82 100644 --- a/src/modules/chat/HubPage/HubPageNavbar.tsx +++ b/src/modules/chat/HubPage/HubPageNavbar.tsx @@ -7,13 +7,13 @@ import NavbarWithSearch, { import useIsInIframe from '@/hooks/useIsInIframe' import { getSpaceQuery } from '@/services/subsocial/spaces' import { getHubIds } from '@/utils/env/client' -import { useState } from 'react' +import { ReactNode, useState } from 'react' export type HubPageNavbarProps = { - logo: JSX.Element - auth: JSX.Element - backButton: JSX.Element - notificationBell: JSX.Element + logo: ReactNode + auth: ReactNode + backButton: ReactNode + notificationBell: ReactNode searchProps: NavbarWithSearchProps['searchProps'] hubId: string chatsCount: number