Files
moreminimore-new/node_modules/astro/dist/content/runtime-assets.js

27 lines
872 B
JavaScript

import * as z from "zod/v4";
import { emitClientAsset } from "../assets/utils/assets.js";
import { emitImageMetadata } from "../assets/utils/node.js";
function createImage(pluginContext, shouldEmitFile, entryFilePath) {
return () => {
return z.string().transform(async (imagePath, ctx) => {
const resolvedFilePath = (await pluginContext.resolve(imagePath, entryFilePath))?.id;
const metadata = await emitImageMetadata(
resolvedFilePath,
shouldEmitFile ? (opts) => emitClientAsset(pluginContext, opts) : void 0
);
if (!metadata) {
ctx.addIssue({
code: "custom",
message: `Image ${imagePath} does not exist. Is the path correct?`,
fatal: true
});
return z.never();
}
return { ...metadata, ASTRO_ASSET: metadata.fsPath };
});
};
}
export {
createImage
};