feat(api): handle production gallery path

This commit is contained in:
2026-02-13 15:50:19 +01:00
parent 4b7b5b5154
commit d126eed766

View File

@@ -4,6 +4,10 @@ import { createHash } from "crypto";
import exifr from "exifr";
import { z } from "zod";
const galleryDir = import.meta.dev
? join(process.cwd(), "public/gallery")
: join(process.cwd(), ".output/public/gallery");
const exifSchema = z.object({
DateTimeOriginal: z.date(),
Make: z.string(),
@@ -19,17 +23,15 @@ const exifSchema = z.object({
export default defineCachedEventHandler(
async () => {
const publicDir = join(process.cwd(), "public/gallery");
try {
const files = await readdir(publicDir);
const files = await readdir(galleryDir);
const imageFiles = files.filter((file) =>
/\.(jpg|jpeg|png|webp)$/i.test(file),
);
const imagesWithExif = await Promise.all(
imageFiles.map(async (filename) => {
const filePath = join(publicDir, filename);
const filePath = join(galleryDir, filename);
const rawExif = await exifr.parse(filePath, {
tiff: true,
exif: true,
@@ -72,9 +74,8 @@ export default defineCachedEventHandler(
{
maxAge: 60 * 60 * 24,
getKey: async () => {
const publicDir = join(process.cwd(), "public/gallery");
try {
const files = await readdir(publicDir);
const files = await readdir(galleryDir);
const imageFiles = files.filter((file) =>
/\.(jpg|jpeg|png|webp)$/i.test(file),
);