dbe34684d8
* feat: new page layout + endpoint * feat: non-parallel mass import * feat: paginated admin library * feat: lint and performance improvement * feat: library filter util * feat: link frontend features to backend * fix: lint * fix: small fixes * feat: bump torrential * fix: lint
23 lines
654 B
TypeScript
23 lines
654 B
TypeScript
import { ArkErrors, type } from "arktype";
|
|
import { defineClientEventHandler } from "~/server/internal/clients/event-handler";
|
|
import { createDownloadManifestDetails } from "~/server/internal/library/manifest/index";
|
|
|
|
const Query = type({
|
|
version: "string",
|
|
previous: "string?",
|
|
refresh: "string?",
|
|
});
|
|
|
|
export default defineClientEventHandler(async (h3) => {
|
|
const query = Query(getQuery(h3));
|
|
if (query instanceof ArkErrors)
|
|
throw createError({ statusCode: 400, message: query.summary });
|
|
|
|
const result = await createDownloadManifestDetails(
|
|
query.version,
|
|
query.previous,
|
|
query.refresh == "true",
|
|
);
|
|
return result;
|
|
});
|