mirror of
https://github.com/hzrd149/nostrudel.git
synced 2025-08-08 17:23:18 +02:00
small fix for mobile layout
fix global streams page
This commit is contained in:
@@ -34,7 +34,7 @@ export default function Layout({ children }: { children: React.ReactNode }) {
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<ReloadPrompt mb="2" />
|
<ReloadPrompt mb="2" />
|
||||||
<Flex direction={{ base: "column", md: "row" }}>
|
<Flex direction={{ base: "column", md: "row" }} minH="100vh">
|
||||||
<Spacer display={["none", null, "block"]} />
|
<Spacer display={["none", null, "block"]} />
|
||||||
{!isMobile && <DesktopSideNav position="sticky" top="0" flexShrink={0} />}
|
{!isMobile && <DesktopSideNav position="sticky" top="0" flexShrink={0} />}
|
||||||
<Container
|
<Container
|
||||||
|
@@ -22,7 +22,7 @@ function ChannelPage({ channel }: { channel: NostrEvent }) {
|
|||||||
const drawer = useDisclosure();
|
const drawer = useDisclosure();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Flex h="full" overflow="hidden" direction="column" p="2" gap="2">
|
<Flex h="full" overflow="hidden" direction="column" p="2" gap="2" flexGrow={1}>
|
||||||
<Flex gap="2" alignItems="center">
|
<Flex gap="2" alignItems="center">
|
||||||
<Button leftIcon={<ChevronLeftIcon />} onClick={() => navigate(-1)}>
|
<Button leftIcon={<ChevronLeftIcon />} onClick={() => navigate(-1)}>
|
||||||
Back
|
Back
|
||||||
|
@@ -9,7 +9,6 @@ import IntersectionObserverProvider from "../../../providers/intersection-observ
|
|||||||
import useSubject from "../../../hooks/use-subject";
|
import useSubject from "../../../hooks/use-subject";
|
||||||
import ChannelChatMessage from "./channel-chat-message";
|
import ChannelChatMessage from "./channel-chat-message";
|
||||||
import useClientSideMuteFilter from "../../../hooks/use-client-side-mute-filter";
|
import useClientSideMuteFilter from "../../../hooks/use-client-side-mute-filter";
|
||||||
import { isReply } from "../../../helpers/nostr/events";
|
|
||||||
import { LightboxProvider } from "../../../components/lightbox-provider";
|
import { LightboxProvider } from "../../../components/lightbox-provider";
|
||||||
|
|
||||||
export default function ChannelChatLog({
|
export default function ChannelChatLog({
|
||||||
@@ -21,7 +20,6 @@ export default function ChannelChatLog({
|
|||||||
const eventFilter = useCallback(
|
const eventFilter = useCallback(
|
||||||
(e: NostrEvent) => {
|
(e: NostrEvent) => {
|
||||||
if (clientMuteFilter(e)) return false;
|
if (clientMuteFilter(e)) return false;
|
||||||
if (isReply(e)) return false;
|
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
[clientMuteFilter],
|
[clientMuteFilter],
|
||||||
@@ -42,7 +40,7 @@ export default function ChannelChatLog({
|
|||||||
return (
|
return (
|
||||||
<IntersectionObserverProvider callback={callback}>
|
<IntersectionObserverProvider callback={callback}>
|
||||||
<LightboxProvider>
|
<LightboxProvider>
|
||||||
<Flex direction="column-reverse" overflowX="hidden" overflowY="auto" gap="2" {...props}>
|
<Flex direction="column-reverse" overflowX="hidden" overflowY="auto" gap="2" h="0" {...props}>
|
||||||
{messages.map((message) => (
|
{messages.map((message) => (
|
||||||
<ChannelChatMessage key={message.id} channel={channel} message={message} />
|
<ChannelChatMessage key={message.id} channel={channel} message={message} />
|
||||||
))}
|
))}
|
||||||
|
@@ -35,14 +35,14 @@ function StreamsPage() {
|
|||||||
|
|
||||||
const { filter, listId } = usePeopleListContext();
|
const { filter, listId } = usePeopleListContext();
|
||||||
const query = useMemo<NostrRequestFilter | undefined>(() => {
|
const query = useMemo<NostrRequestFilter | undefined>(() => {
|
||||||
if (!listId || !filter) return undefined;
|
if (!filter) return undefined;
|
||||||
return [
|
return [
|
||||||
{ authors: filter.authors, kinds: [STREAM_KIND] },
|
{ authors: filter.authors, kinds: [STREAM_KIND] },
|
||||||
{ "#p": filter.authors, kinds: [STREAM_KIND] },
|
{ "#p": filter.authors, kinds: [STREAM_KIND] },
|
||||||
];
|
];
|
||||||
}, [filter, listId]);
|
}, [filter]);
|
||||||
|
|
||||||
const timeline = useTimelineLoader(`${listId}-streams`, relays, query, { eventFilter });
|
const timeline = useTimelineLoader(`${listId ?? "global"}-streams`, relays, query, { eventFilter });
|
||||||
|
|
||||||
useRelaysChanged(relays, () => timeline.reset());
|
useRelaysChanged(relays, () => timeline.reset());
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user