<script lang="ts"> import type { PageFragment } from '$gql/graphql'; import GalleryPage from './GalleryPage.svelte'; export let pages: PageFragment[]; </script> <div class="max-h-full gap-2 overflow-auto p-1 pr-3"> {#each pages as page, index} <GalleryPage {page} {index} on:open on:cover /> {/each} </div> <style> :root { --gallery-image-size: 100px; } @media (min-width: 1280px) { :root { --gallery-image-size: 180px; } } @media (min-width: 1600px) { :root { --gallery-image-size: 200px; } } @media (min-width: 1920px) { :root { --gallery-image-size: 240px; } } div { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--gallery-image-size), 1fr)); grid-auto-rows: fit-content(400px); } </style>