Experiment immersive media render on large-size post

This commit is contained in:
Lim Chee Aun 2024-06-10 20:42:38 +08:00
parent 17230fc690
commit 8a10a81fec
2 changed files with 86 additions and 42 deletions

View file

@ -1349,6 +1349,26 @@ body:has(#modal-container .carousel) .status .media img:hover {
background-color: var(--outline-color); background-color: var(--outline-color);
} }
.status.large .media-large-container {
width: 100%;
max-width: 100%;
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
column-gap: 8px;
flex-wrap: wrap;
text-align: center;
figure {
justify-content: center;
figcaption {
text-align: center;
}
}
}
@keyframes media-carousel-slide { @keyframes media-carousel-slide {
0% { 0% {
transform: translateX(calc(var(--dots-count, 1) * 2.5px)); transform: translateX(calc(var(--dots-count, 1) * 2.5px));

View file

@ -1990,7 +1990,31 @@ function Status({
{showSpoilerMedia ? 'Show less' : 'Show media'} {showSpoilerMedia ? 'Show less' : 'Show media'}
</button> </button>
)} )}
{!!mediaAttachments.length && ( {!!mediaAttachments.length &&
(mediaAttachments.length > 1 &&
(isSizeLarge || (withinContext && size === 'm')) ? (
<div class="media-large-container">
{mediaAttachments.map((media, i) => (
<div key={media.id} class={`media-container media-eq1`}>
<Media
media={media}
autoAnimate
showCaption
allowLongerCaption={!content}
lang={language}
to={`/${instance}/s/${id}?${
withinContext ? 'media' : 'media-only'
}=${i + 1}`}
onClick={
onMediaClick
? (e) => onMediaClick(e, i, media, status)
: undefined
}
/>
</div>
))}
</div>
) : (
<MultipleMediaFigure <MultipleMediaFigure
lang={language} lang={language}
enabled={showMultipleMediaCaptions} enabled={showMultipleMediaCaptions}
@ -2033,7 +2057,7 @@ function Status({
))} ))}
</div> </div>
</MultipleMediaFigure> </MultipleMediaFigure>
)} ))}
{!!card && {!!card &&
/^https/i.test(card?.url) && /^https/i.test(card?.url) &&
!sensitive && !sensitive &&