summaryrefslogtreecommitdiff
path: root/src/components/LallansIssuesGallery.astro
blob: f4c8e16260f79e81dfba590108afd0d08daf1c56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
---
import { Image } from 'astro:assets';
import { getAllLallansIssues } from '$data/lallans';
import { getLocaleFromPathOrThrow } from '$lib/getLocaleFromPath';
import type LallansIssue from '$types/LallansIssue';

const locale = getLocaleFromPathOrThrow(Astro.url.pathname);
const issues = (await getAllLallansIssues()).sort(issueNumberDescending);

function issueNumberDescending(issue1: LallansIssue, issue2: LallansIssue) {
  return issue2.issueNumber - issue1.issueNumber;
}

const mostRecentIssue = issues[0];
const allOtherIssues = issues.slice(1);
---

<ul class="link-gallery link-gallery--splash-first">
  <li>
    <a
      class="link-gallery__container"
      href={`/${locale}/furthsettins/lallans/${mostRecentIssue.issueNumber}`}
    >
      <Image src={mostRecentIssue.img.width192} alt="" />
      <p class="link-gallery__title">
        Lallans {mostRecentIssue.issueNumber}
        <br />
        <small>{mostRecentIssue.issueName}</small>
      </p>
    </a>
  </li>

  {
    allOtherIssues.map((issue) => (
      <li>
        <a
          class="link-gallery__container"
          href={`/${locale}/furthsettins/lallans/${issue.issueNumber}`}
        >
          <p class="link-gallery__title">
            Lallans {issue.issueNumber}
            <br />
            <small>{issue.issueName}</small>
          </p>
        </a>
      </li>
    ))
  }
</ul>