Skypack is failing to build cjs projects where a given dependency exports esm (and other) builds.
This cjs module, which simply requires multiformats
(exports esm + cjs), aims to replicate the skypack build failure.
The skypack build result looks like:
import require$$0 from "/-/[email protected]/dist=es2020,mode=imports/optimized/multiformats/cid.js";
const {CID} = require$$0;
var cjsEsmSkypackBuildRep = () => {
const cid2 = CID.parse("bagaaierasords4njcts6vs7qvdjfcvgnume4hqohf65zsfguprqphs3icwea");
return cid2;
};
export default cjsEsmSkypackBuildRep;
Where /-/[email protected]/dist=es2020,mode=imports/optimized/multiformats/cid.js
source obtained in the browser is:
class CID {
// ...
}
// ...
export {CID};
Runnable code: https://codepen.io/vascosantos/pen/gOWMbLM
import sth from 'https://cdn.skypack.dev/cjs-esm-skypack-build-rep'
Results on
Uncaught TypeError: Cannot destructure property 'CID' of 'require$$0' as it is null.
at cjs-esm-skypack-build-rep.js:2
const { CID } = require('multiformats')
Results in exactly the same issue.
const testEsmExport = require('esm-export-test-module')
Results in exactly the same issue.