ajv-validator / ajv-validator/ajv

ESM native Ajv support in the (near)future or will it remain commonjs/require based?

Abierto
#2,569 0 comentarios 3 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
TypeScript
Estrellas
14.8k
Forks
1k
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

It is heavily used library, and with browsers moving more towards native, the require() usage in Ajv becomes invalid.

For example native-federation uses ESM modules through importMaps.
Browser does not support commonJs modules in this case - require() is primarily for nodejs.

The flags in new Ajv() for esm etc do not apply - since the code itself fails to parse before it is executed. It does runtime imports of dependencies.

Right now i use a custom hack where i use esbuild t orecompile the dist/ajv.js, then use a wrapper .msj that reexports the Ajv.
And use the native federation sharing functionality to rewrite the provided code entrypoints for Ajv package.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.