mirror of
https://github.com/fluxerapp/fluxer
synced 2026-10-18 05:25:40 +09:00
19 lines
739 B
TypeScript
19 lines
739 B
TypeScript
// SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
import type {Message} from '@app/features/messaging/models/MessagingMessage';
|
|
import {createContext, useContext} from 'react';
|
|
|
|
interface CollapsedMessageVisibilityContextValue {
|
|
isMessageRevealed: (message: Message) => boolean;
|
|
}
|
|
|
|
const defaultValue: CollapsedMessageVisibilityContextValue = {
|
|
isMessageRevealed: () => false,
|
|
};
|
|
export const CollapsedMessageVisibilityContext = createContext<CollapsedMessageVisibilityContextValue>(defaultValue);
|
|
export const CollapsedMessageVisibilityProvider = CollapsedMessageVisibilityContext.Provider;
|
|
|
|
export function useCollapsedMessageVisibility(): CollapsedMessageVisibilityContextValue {
|
|
return useContext(CollapsedMessageVisibilityContext);
|
|
}
|