Files
pages/src/routes/feed/+page.ts

37 lines
970 B
TypeScript

import { entries } from './feed';
let entriesPerPage = 8;
export async function load({ params, url }) {
// Get page index
let pageIndex = Number(url.searchParams.get('p'));
if (pageIndex == 0) {
pageIndex = 1;
}
// TODO check if index exceeds maximum permitted and redirect (to max page?)
let contents = [];
let start = (pageIndex - 1) * entriesPerPage;
for (let i = start; i < start + entriesPerPage; i += 1) {
// Stop iterating when end reached
if (i >= entries.length) {
break;
}
// Vite complains if I don't do this even though it's stupid
const path = entries[i].split("/");
const page = await import(`./${path[0]}/${path[1]}.md`);
contents.push(page.default);
}
let currentPage = pageIndex;
let maxPages = Math.ceil(entries.length / entriesPerPage);
return {
currentPage,
maxPages,
contents,
};
}