Files
pypistats.dev/src/routes/search/+page.server.ts
2025-08-12 10:35:39 -05:00

55 lines
980 B
TypeScript

import { searchPackages } from '$lib/api.js';
import type { PageLoad } from './$types';
export const load: PageLoad = async ({ url }) => {
const searchTerm = url.searchParams.get('q');
if (!searchTerm) {
return {
packages: [],
searchTerm: null
};
}
try {
const packages = await searchPackages(searchTerm);
return {
packages,
searchTerm
};
} catch (error) {
console.error('Error searching packages:', error);
return {
packages: [],
searchTerm
};
}
};
export const actions = {
default: async ({ request }) => {
const formData = await request.formData();
const searchTerm = formData.get('q');
if (!searchTerm) {
return {
packages: [],
searchTerm: null
};
}
try {
const packages = await searchPackages(searchTerm.toString());
return {
packages,
searchTerm
};
} catch (error) {
console.error('Error searching packages:', error);
return {
packages: [],
searchTerm
};
}
}
};