UNPKG

@jackdbd/eleventy-plugin-text-to-speech

Version:

Eleventy plugin that uses text-to-speech to generate audio assets for your website, then injects audio players in your HTML.

33 lines 1.18 kB
import defDebug from 'debug'; import { validationError } from './errors.js'; import { DEBUG_PREFIX, ERR_PREFIX } from './constants.js'; const debug = defDebug(`${DEBUG_PREFIX}:validation`); export const validatedResult = (data, schema) => { if (process.env.SKIP_VALIDATION) { debug(`skipped validation (schema: %s)`, schema.description || 'not set'); return { error: undefined, value: data }; } else { const result = schema.safeParse(data); if (!result.success) { return { error: validationError(result.error), value: undefined }; } return { error: undefined, value: result.data }; } }; export const validatedDataOrThrow = (data, schema) => { if (process.env.SKIP_VALIDATION) { debug(`skipped validation (schema: %s)`, schema.description || 'not set'); return data; } else { const result = schema.safeParse(data); if (!result.success) { const err = validationError(result.error); console.error(`${ERR_PREFIX} ${err.message}`); throw err; } return result.data; } }; //# sourceMappingURL=validation.js.map