diff --git a/front/packages/ui/src/fetch-infinite.tsx b/front/packages/ui/src/fetch-infinite.tsx index f2978fac..23961a95 100644 --- a/front/packages/ui/src/fetch-infinite.tsx +++ b/front/packages/ui/src/fetch-infinite.tsx @@ -51,7 +51,7 @@ export const InfiniteFetchList = ({ divider?: boolean | ComponentType; Header?: ComponentType | ReactElement; headerProps?: Props; - getItemType?: (item: Data, index: number) => string | number; + getItemType?: (item: WithLoading, index: number) => string | number; fetchMore?: boolean; }): JSX.Element | null => { const { numColumns, size } = useBreakpointMap(layout); diff --git a/front/packages/ui/src/fetch-infinite.web.tsx b/front/packages/ui/src/fetch-infinite.web.tsx index a0b0aab1..7a700545 100644 --- a/front/packages/ui/src/fetch-infinite.web.tsx +++ b/front/packages/ui/src/fetch-infinite.web.tsx @@ -159,7 +159,7 @@ export const InfiniteFetchList = ({ divider?: boolean | ComponentType; Header?: ComponentType<{ children: JSX.Element } & HeaderProps> | ReactElement; headerProps: HeaderProps; - getItemType?: (item: Data, index: number) => string | number; + getItemType?: (item: WithLoading, index: number) => string | number; fetchMore?: boolean; }): JSX.Element | null => { const oldItems = useRef(); diff --git a/front/packages/ui/src/home/news.tsx b/front/packages/ui/src/home/news.tsx index 9fb2f5e6..133fc0bb 100644 --- a/front/packages/ui/src/home/news.tsx +++ b/front/packages/ui/src/home/news.tsx @@ -41,6 +41,7 @@ import { EpisodeBox, episodeDisplayNumber } from "../details/episode"; export const NewsList = () => { const { t } = useTranslation(); + const { css } = useYoshiki(); return ( <> @@ -48,6 +49,9 @@ export const NewsList = () => { + x.kind === NewsKind.Movie || (x.isLoading && i % 2) ? "movie" : "episode" + } empty={t("home.none")} > {(x, i) => @@ -69,6 +73,9 @@ export const NewsList = () => { } overview={x.name} thumbnail={x.thumbnail} + // TODO: support this on mobile too + // @ts-expect-error This is a web only property + {...css({ gridColumnEnd: "span 2" })} /> ) }