siroka postavitev z dvema novicama se ponovi po vsaki tretji vrstici, ne le na koncu mreze
This commit is contained in:
@@ -957,6 +957,19 @@ export default function Home() {
|
|||||||
return rows;
|
return rows;
|
||||||
}, [gridItems]);
|
}, [gridItems]);
|
||||||
|
|
||||||
|
// Siroka postavitev z dvema novicama: prej samo na koncu mreze, zdaj po
|
||||||
|
// vsaki tretji vrstici. Clanke jemljemo izza omejitve naslovnice, da se
|
||||||
|
// nobeden ne ponovi.
|
||||||
|
const widePairs = useMemo(() => {
|
||||||
|
const vMrezi = new Set(spaced.slice(0, 48).map((a) => a.id));
|
||||||
|
const ostanek = spaced.filter((a) => !vMrezi.has(a.id));
|
||||||
|
const pari: Article[][] = [];
|
||||||
|
for (let i = 0; i + 1 < ostanek.length && pari.length < 6; i += 2) {
|
||||||
|
pari.push([ostanek[i], ostanek[i + 1]]);
|
||||||
|
}
|
||||||
|
return pari;
|
||||||
|
}, [spaced]);
|
||||||
|
|
||||||
const widePickedArticles = useMemo(() => {
|
const widePickedArticles = useMemo(() => {
|
||||||
if (!articles || articles.length < 3) return [];
|
if (!articles || articles.length < 3) return [];
|
||||||
const carouselIds = new Set(articles.slice(0, 9).map((a) => a.id));
|
const carouselIds = new Set(articles.slice(0, 9).map((a) => a.id));
|
||||||
@@ -1058,6 +1071,12 @@ export default function Home() {
|
|||||||
? <MediumCard key={item.key} article={item.article} focalPoints={focalPoints} />
|
? <MediumCard key={item.key} article={item.article} focalPoints={focalPoints} />
|
||||||
: null
|
: null
|
||||||
)}
|
)}
|
||||||
|
{ri > 0 && (ri + 1) % 3 === 0 && widePairs[Math.floor(ri / 3) % Math.max(1, widePairs.length)] && (
|
||||||
|
<div className="sm:col-span-2 lg:col-span-4 grid grid-cols-1 sm:grid-cols-2 gap-4">
|
||||||
|
<WideCardClassic article={widePairs[Math.floor(ri / 3) % widePairs.length][0]} focalPoints={focalPoints} />
|
||||||
|
<WideCardClassic article={widePairs[Math.floor(ri / 3) % widePairs.length][1]} focalPoints={focalPoints} />
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
{ri === gridRows.length - 1 && widePickedArticles.length > 0 && (
|
{ri === gridRows.length - 1 && widePickedArticles.length > 0 && (
|
||||||
<div className="sm:col-span-2 lg:col-span-4 grid grid-cols-1 sm:grid-cols-2 gap-4">
|
<div className="sm:col-span-2 lg:col-span-4 grid grid-cols-1 sm:grid-cols-2 gap-4">
|
||||||
<WideCardClassic article={widePickedArticles[0]} focalPoints={focalPoints} />
|
<WideCardClassic article={widePickedArticles[0]} focalPoints={focalPoints} />
|
||||||
|
|||||||
Reference in New Issue
Block a user