From 7ab5640191ecf9e16e975d909a7cb7aa3468700b Mon Sep 17 00:00:00 2001 From: Volpeon Date: Wed, 22 Jul 2026 22:28:12 +0200 Subject: Update --- src/pages/pkg/corvos.ts | 35 +++++++++++++++++++++++++++++++++++ src/pages/pkg/corvos@[version].ts | 35 ----------------------------------- 2 files changed, 35 insertions(+), 35 deletions(-) create mode 100644 src/pages/pkg/corvos.ts delete mode 100644 src/pages/pkg/corvos@[version].ts (limited to 'src/pages/pkg') diff --git a/src/pages/pkg/corvos.ts b/src/pages/pkg/corvos.ts new file mode 100644 index 0000000..6dcb65a --- /dev/null +++ b/src/pages/pkg/corvos.ts @@ -0,0 +1,35 @@ +import * as zip from "@zip-js/zip-js"; +import { Page, PipelineStageError } from "corvos"; +import { binaryLoader } from "corvos/core/loaders/binary.ts"; + +import { strapiLoader } from "$/deps/strapi.tsx"; +import { releaseStrapiSchema } from "$/schemas/releases.ts"; +import site from "@/corvos.config.ts"; + +export const pages = site.$.pageGenerator(async function* () { + for await (const item of strapiLoader.loadCollection("corvos-releases", releaseStrapiSchema, { + "populate[0]": "files", + "sort[0]": "date:desc", + })) { + if (item instanceof PipelineStageError) { + yield item; + continue; + } + + const res = await binaryLoader(new URL(item.files.url)); + const reader = new zip.ZipReader(new zip.Uint8ArrayReader(res.content)); + + for await (const entry of reader.getEntriesGenerator()) { + if (entry.directory) { + continue; + } + + yield new Page( + ".", + new Uint8Array(await entry.arrayBuffer()), + { version: item.version }, + `/pkg/corvos@${item.version}/${entry.filename}`, + ); + } + } +}); diff --git a/src/pages/pkg/corvos@[version].ts b/src/pages/pkg/corvos@[version].ts deleted file mode 100644 index 6dcb65a..0000000 --- a/src/pages/pkg/corvos@[version].ts +++ /dev/null @@ -1,35 +0,0 @@ -import * as zip from "@zip-js/zip-js"; -import { Page, PipelineStageError } from "corvos"; -import { binaryLoader } from "corvos/core/loaders/binary.ts"; - -import { strapiLoader } from "$/deps/strapi.tsx"; -import { releaseStrapiSchema } from "$/schemas/releases.ts"; -import site from "@/corvos.config.ts"; - -export const pages = site.$.pageGenerator(async function* () { - for await (const item of strapiLoader.loadCollection("corvos-releases", releaseStrapiSchema, { - "populate[0]": "files", - "sort[0]": "date:desc", - })) { - if (item instanceof PipelineStageError) { - yield item; - continue; - } - - const res = await binaryLoader(new URL(item.files.url)); - const reader = new zip.ZipReader(new zip.Uint8ArrayReader(res.content)); - - for await (const entry of reader.getEntriesGenerator()) { - if (entry.directory) { - continue; - } - - yield new Page( - ".", - new Uint8Array(await entry.arrayBuffer()), - { version: item.version }, - `/pkg/corvos@${item.version}/${entry.filename}`, - ); - } - } -}); -- cgit v1.3.1