astro-ghostcms/.pnpm-store/v3/files/9b/5bcb0d7e10d224136bb18a0d65f...

21 lines
655 B
Plaintext
Raw Permalink Normal View History

2024-02-14 14:10:47 +00:00
import { z } from "zod";
import { SitemapOptionsSchema } from "./schema.js";
const validateOptions = (site, opts) => {
const result = SitemapOptionsSchema.parse(opts);
z.object({
site: z.string().optional(),
// Astro takes care of `site`: how to validate, transform and refine
canonicalURL: z.string().optional()
// `canonicalURL` is already validated in prev step
}).refine((options) => options.site || options.canonicalURL, {
message: "Required `site` astro.config option or `canonicalURL` integration option"
}).parse({
site,
canonicalURL: result.canonicalURL
});
return result;
};
export {
validateOptions
};