Merge branch 'fix-undefined-bug' into 'develop'
Fix undefined bug with MediaModal See merge request soapbox-pub/soapbox!2066
This commit is contained in:
commit
92e94ae4a5
|
@ -95,7 +95,7 @@ const AccountGallery = () => {
|
||||||
const media = (attachment.status as Status).media_attachments;
|
const media = (attachment.status as Status).media_attachments;
|
||||||
const index = media.findIndex((x) => x.id === attachment.id);
|
const index = media.findIndex((x) => x.id === attachment.id);
|
||||||
|
|
||||||
dispatch(openModal('MEDIA', { media, index, status: attachment.status, account: attachment.account }));
|
dispatch(openModal('MEDIA', { media, index, status: attachment.status }));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ import Video from 'soapbox/features/video';
|
||||||
import ImageLoader from '../image-loader';
|
import ImageLoader from '../image-loader';
|
||||||
|
|
||||||
import type { List as ImmutableList } from 'immutable';
|
import type { List as ImmutableList } from 'immutable';
|
||||||
import type { Account, Attachment, Status } from 'soapbox/types/entities';
|
import type { Attachment, Status } from 'soapbox/types/entities';
|
||||||
|
|
||||||
const messages = defineMessages({
|
const messages = defineMessages({
|
||||||
close: { id: 'lightbox.close', defaultMessage: 'Close' },
|
close: { id: 'lightbox.close', defaultMessage: 'Close' },
|
||||||
|
@ -24,7 +24,6 @@ const messages = defineMessages({
|
||||||
interface IMediaModal {
|
interface IMediaModal {
|
||||||
media: ImmutableList<Attachment>,
|
media: ImmutableList<Attachment>,
|
||||||
status?: Status,
|
status?: Status,
|
||||||
account: Account,
|
|
||||||
index: number,
|
index: number,
|
||||||
time?: number,
|
time?: number,
|
||||||
onClose: () => void,
|
onClose: () => void,
|
||||||
|
@ -34,7 +33,6 @@ const MediaModal: React.FC<IMediaModal> = (props) => {
|
||||||
const {
|
const {
|
||||||
media,
|
media,
|
||||||
status,
|
status,
|
||||||
account,
|
|
||||||
onClose,
|
onClose,
|
||||||
time = 0,
|
time = 0,
|
||||||
} = props;
|
} = props;
|
||||||
|
@ -94,9 +92,9 @@ const MediaModal: React.FC<IMediaModal> = (props) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleStatusClick: React.MouseEventHandler = e => {
|
const handleStatusClick: React.MouseEventHandler = e => {
|
||||||
if (e.button === 0 && !(e.ctrlKey || e.metaKey)) {
|
if (status && e.button === 0 && !(e.ctrlKey || e.metaKey)) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
history.push(`/@${account.acct}/posts/${status?.id}`);
|
history.push(`/@${status.getIn(['account', 'acct'])}/posts/${status?.id}`);
|
||||||
onClose();
|
onClose();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -170,7 +168,7 @@ const MediaModal: React.FC<IMediaModal> = (props) => {
|
||||||
const width = (attachment.meta.getIn(['original', 'width']) || undefined) as number | undefined;
|
const width = (attachment.meta.getIn(['original', 'width']) || undefined) as number | undefined;
|
||||||
const height = (attachment.meta.getIn(['original', 'height']) || undefined) as number | undefined;
|
const height = (attachment.meta.getIn(['original', 'height']) || undefined) as number | undefined;
|
||||||
|
|
||||||
const link = (status && account && (
|
const link = (status && (
|
||||||
<a href={status.url} onClick={handleStatusClick}>
|
<a href={status.url} onClick={handleStatusClick}>
|
||||||
<FormattedMessage id='lightbox.view_context' defaultMessage='View context' />
|
<FormattedMessage id='lightbox.view_context' defaultMessage='View context' />
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -31,7 +31,7 @@ const ProfileMediaPanel: React.FC<IProfileMediaPanel> = ({ account }) => {
|
||||||
const media = attachment.getIn(['status', 'media_attachments']) as ImmutableList<Attachment>;
|
const media = attachment.getIn(['status', 'media_attachments']) as ImmutableList<Attachment>;
|
||||||
const index = media.findIndex(x => x.id === attachment.id);
|
const index = media.findIndex(x => x.id === attachment.id);
|
||||||
|
|
||||||
dispatch(openModal('MEDIA', { media, index, status: attachment.status, account: attachment.account }));
|
dispatch(openModal('MEDIA', { media, index, status: attachment.status }));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue