Refactor Pagination component and add Next and Prev components

This commit is contained in:
Valentin Popov 2024-09-12 22:38:34 +00:00
parent fd054f0fa4
commit 65ee69c645
Signed by: Valentin Popov
GPG Key ID: AE3CE523DAAA8401
3 changed files with 43 additions and 29 deletions

View File

@ -1,4 +1,7 @@
--- ---
import Next from "./Pagination/Next.astro";
import Prev from "./Pagination/Prev.astro";
type Props = { type Props = {
readonly prevUrl?: string; readonly prevUrl?: string;
readonly nextUrl?: string; readonly nextUrl?: string;
@ -8,39 +11,14 @@ const { prevUrl, nextUrl } = Astro.props;
--- ---
<style lang="scss"> <style lang="scss">
.pagination { div {
overflow: hidden; overflow: hidden;
padding: 3rem 0; padding: 3rem 0;
width: 100%; width: 100%;
} }
.prev,
.next {
max-width: 40%;
}
.prev {
float: left;
}
.next {
float: right;
}
</style> </style>
<div class="pagination"> <div>
{ {prevUrl && <Prev url={prevUrl} />}
prevUrl && ( {nextUrl && <Next url={nextUrl} />}
<span class="prev">
<a href={prevUrl}>&lt; Prev</a>
</span>
)
}
{
nextUrl && (
<span class="next">
<a href={nextUrl}>Next &gt;</a>
</span>
)
}
</div> </div>

View File

@ -0,0 +1,18 @@
---
type Props = {
readonly url: string;
};
const { url } = Astro.props;
---
<style lang="scss">
span {
float: right;
max-width: 40%;
}
</style>
<span>
<a href={url}>Next &gt;</a>
</span>

View File

@ -0,0 +1,18 @@
---
type Props = {
readonly url: string;
};
const { url } = Astro.props;
---
<style lang="scss">
span {
float: left;
max-width: 40%;
}
</style>
<span>
<a href={url}>&lt; Prev</a>
</span>