From aa7712f2262c2368eb6391854de6fe09523060f1 Mon Sep 17 00:00:00 2001 From: danidfra Date: Tue, 10 Dec 2024 23:13:21 -0300 Subject: [PATCH] Remove ImmutableList from "media-gallery" --- src/components/media-gallery.tsx | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/components/media-gallery.tsx b/src/components/media-gallery.tsx index 085d95e61..4e580cce2 100644 --- a/src/components/media-gallery.tsx +++ b/src/components/media-gallery.tsx @@ -16,8 +16,6 @@ import { isPanoramic, isPortrait, isNonConformingRatio, minimumAspectRatio, maxi import SvgIcon from './ui/svg-icon.tsx'; -import type { List as ImmutableList } from 'immutable'; - // const Gameboy = lazy(() => import('./gameboy')); const ATTACHMENT_LIMIT = 4; @@ -46,7 +44,7 @@ const withinLimits = (aspectRatio: number) => { }; const shouldLetterbox = (attachment: Attachment): boolean => { - const aspectRatio = attachment.getIn(['meta', 'original', 'aspect']) as number | undefined; + const aspectRatio = attachment.meta.original.aspect as number | undefined; if (!aspectRatio) return true; return !withinLimits(aspectRatio); @@ -159,7 +157,7 @@ const Item: React.FC = ({ const attachmentIcon = ( ); @@ -291,9 +289,9 @@ const Item: React.FC = ({ export interface IMediaGallery { sensitive?: boolean; - media: ImmutableList; + media: Attachment[]; height?: number; - onOpenMedia: (media: ImmutableList, index: number) => void; + onOpenMedia: (media: Attachment[], index: number) => void; defaultWidth?: number; cacheWidth?: (width: number) => void; visible?: boolean; @@ -323,7 +321,7 @@ const MediaGallery: React.FC = (props) => { const getSizeDataSingle = (): SizeData => { const w = width || defaultWidth; - const aspectRatio = media.getIn([0, 'meta', 'original', 'aspect']) as number | undefined; + const aspectRatio = media[0].meta.original.aspect as number | undefined; const getHeight = () => { if (!aspectRatio) return w * 9 / 16; @@ -349,7 +347,7 @@ const MediaGallery: React.FC = (props) => { let itemsDimensions: Dimensions[] = []; const ratios = Array(size).fill(null).map((_, i) => - media.getIn([i, 'meta', 'original', 'aspect']) as number, + media[i].meta.original.aspect as number, ); const [ar1, ar2, ar3, ar4] = ratios; @@ -547,9 +545,9 @@ const MediaGallery: React.FC = (props) => { }; }; - const sizeData: SizeData = getSizeData(media.size); + const sizeData: SizeData = getSizeData(media.length); - const children = media.take(ATTACHMENT_LIMIT).map((attachment, i) => ( + const children = media.slice(0, ATTACHMENT_LIMIT).map((attachment, i) => ( = (props) => { visible={!!props.visible} dimensions={sizeData.itemsDimensions[i]} last={i === ATTACHMENT_LIMIT - 1} - total={media.size} + total={media.length} compact={compact} /> ));