Refactor to use 'defaultMediaVisibility' function
This commit is contained in:
@ -80,7 +80,7 @@ const Status: React.FC<IStatus> = (props) => {
|
||||
const didShowCard = useRef(false);
|
||||
const node = useRef<HTMLDivElement>(null);
|
||||
|
||||
const [showMedia, setShowMedia] = useState<boolean>(status.visibility === 'self' ? false : defaultMediaVisibility(status, displayMedia));
|
||||
const [showMedia, setShowMedia] = useState<boolean>(defaultMediaVisibility(status, displayMedia));
|
||||
|
||||
const actualStatus = getActualStatus(status);
|
||||
|
||||
@ -90,7 +90,7 @@ const Status: React.FC<IStatus> = (props) => {
|
||||
}, []);
|
||||
|
||||
useEffect(() => {
|
||||
setShowMedia(status.visibility === 'self' ? false : defaultMediaVisibility(status, displayMedia));
|
||||
setShowMedia(defaultMediaVisibility(status, displayMedia));
|
||||
}, [status.id]);
|
||||
|
||||
const handleToggleMediaVisibility = (): void => {
|
||||
|
||||
@ -3,6 +3,7 @@ import React, { useEffect, useState } from 'react';
|
||||
import { defineMessages, useIntl } from 'react-intl';
|
||||
|
||||
import { useSettings, useSoapboxConfig } from 'soapbox/hooks';
|
||||
import { defaultMediaVisibility } from 'soapbox/utils/status';
|
||||
|
||||
import { Button, HStack, Text } from '../ui';
|
||||
|
||||
@ -27,23 +28,15 @@ interface ISensitiveContentOverlay {
|
||||
const SensitiveContentOverlay = (props: ISensitiveContentOverlay) => {
|
||||
const { onToggleVisibility, status } = props;
|
||||
const isUnderReview = status.visibility === 'self';
|
||||
const isSensitive = status.sensitive;
|
||||
|
||||
const settings = useSettings();
|
||||
const displayMedia = settings.get('displayMedia') as string | undefined;
|
||||
const displayMedia = settings.get('displayMedia') as string;
|
||||
|
||||
const intl = useIntl();
|
||||
|
||||
const { links } = useSoapboxConfig();
|
||||
|
||||
const [visible, setVisible] = useState<boolean>(
|
||||
isUnderReview === true ? false : null
|
||||
|| (
|
||||
props.visible !== undefined
|
||||
? props.visible
|
||||
: (displayMedia !== 'hide_all' && !isSensitive || displayMedia === 'show_all')
|
||||
),
|
||||
);
|
||||
const [visible, setVisible] = useState<boolean>(defaultMediaVisibility(status, displayMedia));
|
||||
|
||||
const toggleVisibility = (event: React.MouseEvent<HTMLButtonElement>) => {
|
||||
event.stopPropagation();
|
||||
|
||||
Reference in New Issue
Block a user