New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More β†’
Socket
Sign inDemoInstall
Socket

esmock

Package Overview
Dependencies
Maintainers
1
Versions
108
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

esmock - npm Package Compare versions

Comparing version 2.2.1 to 2.2.2

4

package.json
{
"name": "esmock",
"type": "module",
"version": "2.2.1",
"version": "2.2.2",
"license": "ISC",

@@ -57,4 +57,4 @@ "readmeFilename": "README.md",

"engines": {
"node": ">=14.16.0"
"node": ">=14.16.0 <=19.9.0"
}
}

@@ -12,9 +12,9 @@ ```diff

**esmock provides native ESM import mocking for unit tests.** Use examples below as a quick-start guide, see the [descriptive and friendly esmock guide here,][10] or browse [esmock's test runner examples.][3]
**esmock provides native ESM import mocking for unit tests.** Use examples below as a quick-start guide, see the [descriptive and friendly esmock guide here,][4] or browse [esmock's test runner examples.][3]
[10]: https://github.com/iambumblehead/esmock/wiki
[0]: http://www.bumblehead.com "bumblehead"
[0]: https://www.bumblehead.com "bumblehead"
[1]: https://github.com/iambumblehead/esmock/workflows/nodejs-ci/badge.svg "nodejs-ci pipeline"
[2]: https://github.com/iambumblehead/esmock "esmock"
[3]: https://github.com/iambumblehead/esmock/tree/master/tests "tests"
[4]: https://github.com/iambumblehead/esmock/wiki

@@ -56,3 +56,3 @@ `esmock` is used with node's --loader

test('should mock packages and local files', async () => {
test('package, alias and local file mocks', async () => {
const cookup = await esmock('../src/cookup.js', {

@@ -70,3 +70,3 @@ addpkg: (a, b) => a + b,

test('should do global instance mocks β€”third param', async () => {
test('global instance mocks β€”third param', async () => {
const { getFile } = await esmock('../src/main.js', {}, {

@@ -79,3 +79,3 @@ fs: { readFileSync: () => 'returns this 🌎 globally' }

test('should mock "await import()" using esmock.p', async () => {
test('mocks "await import()" using esmock.p', async () => {
// using esmock.p, mock definitions are kept in cache

@@ -91,3 +91,3 @@ const doAwaitImport = await esmock.p('../awaitImportLint.js', {

test('should support "strict" mocking, at esmock.strict', async () => {
test('esmock.strict mocks', async () => {
// replace original module definitions and do not merge them

@@ -99,3 +99,3 @@ const pathWrapper = await esmock.strict('../src/pathWrapper.js', {

// error, because "path" mock above does not define path.basename
await assert.rejects(async () => pathWrapper.basename('/dog.png'), {
assert.rejects(() => pathWrapper.basename('/dog.🐢.png'), {
name: 'TypeError',

@@ -102,0 +102,0 @@ message: 'path.basename is not a function'

@@ -1,3 +0,3 @@

import we from"process";var g=import.meta.url;var ye=(e,t)=>new Error(`invalid moduleId: "${e}" (used by ${t})`),be=(e,t)=>new Error(`un-mocked moduleId: "${e}" (used by ${t})`),Ie=()=>new Error("the loader chain process must include esmock. start the process using --loader=esmock."),Me=(e,t)=>new Error(`no mocks provided for module: "${e}" (used by ${t}`),d={errModuleIdNotFound:ye,errModuleIdNotMocked:be,errMissingLoader:Ie,errModuleIdNoDefs:Me};var[G,xe]=we.versions.node.split(".").map(e=>+e),W=G<16||G===16&&xe<12,$e=/\?esmkgdefs=.*/,Oe=/.*\?esmkgdefs=/,_=/#-#esmkdefs/,K=/esmkTreeId=\d*/,Re=/esmkModuleId=([^&]*)/,z=/\?esmk=\d*/,U=/.*exportNames=(.*)/,Ee=/.*#-#/,Se=/isesm=true/,Ce=/isfound=false/,V=async(e,t,s)=>s.parentURL&&(s.conditions.slice(-1)[0]==="node-addons"||s.importAssertions||W)?await e(t,s):await e(t),$t=async(e,t,s)=>{let{parentURL:o}=t,r=z.test(o)?global.esmockTreeIdGet(o.match(z)[0].split("=")[1]):o;if(!K.test(r))return V(s,e,t);let[n]=String(r).match(K),[c,a]=r.split(_),l=c&&c.replace(Oe,"");if(r.includes(`esmkModuleId=${e}&isfound=false`)){let A=new RegExp(".*file:///"+e+"(\\?"+n+"(?:(?!#-#).)*).*"),D=(l.match(A)||a.match(A)||[])[1];if(D)return{shortCircuit:!0,url:g+D}}let u=await V(s,e,t),b=new RegExp(".*("+u.url+"\\?"+n+"(?:(?!#-#).)*).*"),k=b.test(a)&&a.replace(b,"$1")||b.test(l)&&l.replace(b,"$1");if(k?u.url=Se.test(k)?k:g+"#-#"+k:l&&l!=="0"&&(u.url.startsWith("node:")||(u.url+="?esmkgdefs="+l)),/strict=3/.test(r)&&!k)throw d.errModuleIdNotMocked(u.url,r.split("?")[0]);return u},B="esmock-loader=true",ve=e=>`${e}?${B}`,Z=async e=>(await import(ve(e))).default===!0,Te=async(e,t,s)=>{if(e.endsWith(B))return{format:"module",shortCircuit:!0,responseURL:e,source:"export default true"};if(_.test(e))return s(e,t);e=e.replace($e,""),e.startsWith(g)&&(e=e.replace(Ee,""),Ce.test(e)&&(e=e.replace(g,`file:///${e.match(Re)[1]}`)));let o=U.test(e)&&e.replace(U,"$1").split(",");return o.length?{format:"module",shortCircuit:!0,responseURL:encodeURI(e),source:o.map(r=>r==="default"?`export default global.esmockCacheGet("${e}").default`:`export const ${r} = global.esmockCacheGet("${e}").${r}`).join(`
`)}:s(e,t)},Ot=W&&Te;var q=(e=>async()=>e||(e=await Z(import.meta.url)))();import et from"fs";import tt from"node:url";import ee from"fs";import te from"url";import i from"path";import se from"module";var O=se.createRequire(import.meta.url),H=ee.realpathSync.native,oe=new RegExp("^(?:node:)?("+se.builtinModules.join("|").replace("/","/")+")$"),Pe=/^\.?\.?([a-zA-Z]:)?(\/|\\)/,R=/^.\.?(?=\/|\\)/,Q=/\\/g,Fe=/index.[tj]sx?$/,Ne=/[\\/]resolvewithplus[\\/]/,Ae=/(^@[^/]*\/[^/]*|^[^/]*)\/?(.*)$/,w=/^#/,re=/(\*)/g,ne=/([./])/g,De=/^node:/,Ge=/^file:/,ce=[".js",".mjs",".ts",".tsx",".json",".node"],J="node_modules",M="package.json",X="node",Y="default",E="import",I=".",ie=e=>e&&typeof e=="object",x={},Ke=e=>De.test(e)?e:`node:${e}`,ze=e=>e&&te.pathToFileURL(e).href,Ue=e=>oe.test(e),Ve=e=>Ge.test(e)?te.fileURLToPath(e):e,We=e=>i.resolve(i.extname(e)?i.dirname(e):e)+i.sep,$=e=>Q.test(e)?e.replace(Q,i.posix.sep):e,p=(e,t)=>{try{t=ee.statSync(e)}catch{t=!1}return t&&(t.isFile()||t.isFIFO())},ae=e=>e.split(i.sep).reduce((t,s,o)=>(s===J&&!Ne.test(e)||(s=o?i.join(t[0][o-1],s):s||i.sep,t[0].push(s),t[1].push(i.resolve(i.join(s,J)))),t),[[],[]])[1].reverse(),_e=e=>{let t=e.split(i.sep).slice(1).reduce((s,o,r)=>(s.push(i.resolve(i.join(r?s[r-1]:i.sep,o))),s),[]).reverse().find(s=>p(i.join(s,M)));return t&&i.join(t,M)},Be=e=>(String(e).match(Ae)||[]).slice(1),L=(e,t)=>new RegExp(e.replace(ne,"\\$1").replace(re,".*")).test(t),Ze=(e,t,s)=>{let o=new RegExp(e.replace(ne,"\\$1").replace(re,"(.*)")),r=(s.match(o)||[])[1];return r&&t.replace("*",r)},le=(e,t,s,o=!1)=>(L(e,s)&&(t.includes("*")?L(t,s)?o=s:e.includes("*")&&e!==t&&(o=Ze(e,t,s)):o=t),o),ue=(e,t,s,o=e[0])=>e.length?(w.test(s)?w.test(o):R.test(o))&&typeof t[o]=="string"&&le(o,t[o],s)||ue(e.slice(1),t,s):null,m=(e,t)=>{let s=!1;return typeof e=="string"?e:(!s&&Array.isArray(e)&&(s=e.reduce((o,r)=>o||m(r,t),null)),!s&&ie(e)&&(typeof e[t]=="string"&&(s=e[t]),!s&&e[X]&&(s=m(e[X],t)),!s&&e[Y]&&(s=m(e[Y],t)),!s&&e[t]&&(s=m(e[t],t)),!s&&e[I]&&(s=typeof e[I]=="string"?t===E&&m(e[I],t):m(e[I],t)),s||(s=ue(Object.keys(e),e,t))),s)},me=(e,t)=>{let s=t&&t.ismodule&&e.module,o=s||t&&t.browser&&e.browser,r=e.exports,n,c;return o&&(typeof o=="string"?c=o:ie(o)&&([n]=Object.keys(o).filter(a=>Fe.test(a)),c=n in o&&o[n])),r&&(c=m(r,E)),c},h=e=>{var t=null;return p(e)?t=e:ce.some(s=>p(e+s)&&(t=e+s)),t},de=(e,t)=>{let s=null,o,r=i.join(e,M),n=p(r)&&O(r);return(o=me(n,t))?s=h(i.join(e,o)):(o=n.main)?s=h(i.join(e,o))||h(i.join(e,i.join(o,"index"))):ce.some(c=>(c=i.join(e,`index${c}`))&&p(c)&&(s=c)),s},pe=(e,t,s)=>{let o=R.test(e)?i.join(t,e):e;return h(o,s)||de(o,s)},qe=(e,t,s)=>{let o=s&&s.imports,r=m(o,t);return r&&(R.test(r)?i.join(e,r):fe(r,e,{isposixpath:!0}))},He=(e,t,s,o)=>{let r=m(o&&o.exports,s?"./"+s:E);return r&&i.join(e,t,r)},Qe=(e,t,s,o)=>{let r=i.join(e,t,M),n=p(r),c=n&&O(r);return n&&He(e,t,s,c,o)},Je=(e,t,s)=>{let o=_e(t),r=i.dirname(o);return o&&qe(r,e,O(o),s)},Xe=(e,t,s)=>{let[o,r]=Be(e);if(w.test(o))return Je(e,t,s);let n=ae(t).sort((c,a)=>c.length>a.length);return function c(a,l,u=l-1){return l--?Qe(i.join(a[u-l]),o,r,s)||pe(i.join(a[u-l],e),null,s)||c(n,l,u):null}(n,n.length)},Ye=(e,t,s)=>{var o=null;return t=typeof t=="string"?We(Ve(decodeURI(t))):process.cwd(),oe.test(e)?o=Ke(e):(o=Pe.test(e)?pe($(e),t,s):Xe(e,t),o=o&&(s.isposixpath?H(o):ze($(H(o))))),o},fe=(e,t,s)=>{let o=x[e+t];return o||(o=Ye(e,t,s||{}),x[e+t]=o)},j=Object.assign(fe,{pathToPosix:$,getasnode_module_paths:ae,getesmkeyvalmatch:le,getasfilesync:h,getasdirsync:de,gettargetindex:me,iscoremodule:Ue,esmparse:m,cache:x});var S={isESM:{},mockDefs:{}},ke=(e,t)=>global.mockKeys[String(e)]=t,C=e=>global.mockKeys[String(e)],v=(e,t)=>global.esmockCache.mockDefs[e]=t,Le=e=>global.esmockCache.mockDefs[e],ge=e=>S.isESM[e],he=(e,t)=>S.isESM[e]=t;Object.assign(global,{esmockCache:S,esmockCacheGet:Le,esmockTreeIdGet:C,mockKeys:{}});var T=e=>typeof e=="object"&&e,P=e=>T(e)&&"default"in e,st=/^\.?\.?([a-zA-Z]:)?(\/|\\)/,ot=typeof import.meta.resolve=="function",rt=((e=0)=>()=>++e)(),nt=e=>e.startsWith("file://")?e:tt.pathToFileURL(e),ct=Object.getPrototypeOf({}),it=e=>Object.getPrototypeOf(e)===ct,at=(e,t)=>it(e)?Object.assign({},e,t):Object.assign(Object.keys(e).reduce((s,o)=>(Object.defineProperty(s,o,{value:e[o],writable:!0}),s),Object.create(e)),t),lt=(e,t)=>T(e)&&T(t)?at(e,t):t,ut=(e,t,s)=>(t=Object.assign({},e||{},{default:lt(P(e)&&e.default,P(t)?t.default:t)},t),!j.iscoremodule(s)&&Object.isExtensible(t.default)&&(t.default.default=t.default),t),mt=/(^\s*|[});\n]\s*)(import\s+(['"]|(\*\s+as\s+)?[^"'()\n;]+\s+from\s+['"]|\{)|export\s+\*\s+from\s+["']|export\s+(\{|default|function|class|var|const|let|async\s+function))/,dt=(e,t)=>(t=ge(e),typeof t=="boolean"||(t=!j.iscoremodule(e)&&st.test(e)&&mt.test(et.readFileSync(e,"utf-8")),he(e,t)),t),pt=(e,t)=>{let s=P(e)&&e.default;return/boolean|string|number/.test(typeof s)?e:Object.isExtensible(s)?Object.assign(s,e,{esmkTreeId:t}):Object.assign({},s,e,{esmkTreeId:t})},ft=e=>{let t=n=>n==="null"||v(n,null),s=C(e.split("esmk=")[1]),[o,r]=s.split("#-#esmkdefs=");String(r).split("#-#").forEach(t),String(o.split("esmkgdefs=")[1]).split("#-#").forEach(t)},kt=async(e,t,s,o,r)=>{t=ut(r.strict||!o||await import(o),t,o);let n=(o||"file:///"+s)+"?"+["esmkTreeId="+e,"esmkModuleId="+s,"isfound="+Boolean(o),"isesm="+dt(o),"exportNames="+Object.keys(t).sort().join()].join("&");return v(n,t),n},F=async(e,t,s,o,r,n,c)=>{if(o=o||Object.keys(s),c=o[0],n=n||[],!c)return n;let a=ot?await import.meta.resolve(c,nt(e)).catch(()=>null):j(c,e);if(!a&&r.isModuleNotFoundError!==!1)throw d.errModuleIdNotFound(c,e);return n.push(await kt(t,s[c],c,a,r)),F(e,t,s,o.slice(1),r,n)},gt=async(e,t,s,o,r)=>{let n=j(e,t);if(!n)throw d.errModuleIdNotFound(e,t);let c=o?Object.keys(o):[],a=s?Object.keys(s):[];if(r.strict===3&&!c.length&&!a.length)throw d.errModuleIdNoDefs(e,t);let l=typeof r.id=="number"?r.id:rt(),u=`${n}?key=${l}&strict=${r.strict}?`+["esmkgdefs="+(c.length&&(await F(t,l,o,c,r)).join("#-#")||0),"esmkdefs=",a.length&&(await F(t,l,s,a,r)).join("#-#")||0].join("#-#");return ke(String(l),u),n+`?esmk=${l}`},y=Object.assign(gt,{purge:ft,sanitize:pt});var ht=/^.*(\(|at )(.*):[\d]*:[\d]*.*$/,je=(e,t)=>(e=typeof e[1]=="string"?e:[e[0],new Error().stack.split(`
`)[3].replace(ht,"$2"),...e.slice(1)],e[4]={...e[4],...t},e);var f=e=>async(...t)=>{let[s,o,r,n,c]=je(t,e);if(!await q())throw d.errMissingLoader();let a=await y(s,o,r,n,c),l=await import(a);return c.purge!==!1&&y.purge(a),y.sanitize(l,a)},N=e=>e&&/object|function/.test(typeof e)&&"esmkTreeId"in e&&y.purge(e.esmkTreeId),jt=Object.assign(f({strict:1}),{purge:N,p:f({strict:1,purge:!1})}),yt=Object.assign(f({strict:3}),{purge:N,p:f({strict:3,purge:!1})}),qt=Object.assign(f(),{purge:N,p:f({purge:!1}),strict:jt,strictest:yt});export{qt as default,Ot as getSource,Te as load,Z as loaderIsVerified,$t as resolve,jt as strict,yt as strictest};
import $e from"process";var y=import.meta.url;var Ie=(e,t)=>new Error(`invalid moduleId: "${e}" (used by ${t})`),Me=(e,t)=>new Error(`un-mocked moduleId: "${e}" (used by ${t})`),we=()=>new Error("the loader chain process must include esmock. start the process using --loader=esmock."),xe=(e,t)=>new Error(`no mocks provided for module: "${e}" (used by ${t}`),d={errModuleIdNotFound:Ie,errModuleIdNotMocked:Me,errMissingLoader:we,errModuleIdNoDefs:xe};var[K,Oe]=$e.versions.node.split(".").map(e=>+e),_=K<16||K===16&&Oe<12,Re=/\?esmkgdefs=.*/,Ee=/.*\?esmkgdefs=/,B=/#-#esmkdefs/,z=/esmkTreeId=\d*/,Se=/esmkModuleId=([^&]*)/,U=/\?esmk=\d*/,V=/.*exportNames=(.*)/,ve=/.*#-#/,Ce=/isesm=true/,Fe=/isfound=false/,W=async(e,t,s)=>s.parentURL&&(s.conditions.slice(-1)[0]==="node-addons"||s.importAssertions||_)?await e(t,s):await e(t),Ot=async(e,t,s)=>{let{parentURL:o}=t,r=U.test(o)?global.esmockTreeIdGet(o.match(U)[0].split("=")[1]):o;if(!z.test(r))return W(s,e,t);let[n]=String(r).match(z),[c,a]=r.split(B),l=c&&c.replace(Ee,"");if(r.includes(`esmkModuleId=${e}&isfound=false`)){let D=new RegExp(".*file:///"+e+"(\\?"+n+"(?:(?!#-#).)*).*"),G=(l.match(D)||a.match(D)||[])[1];if(G)return{shortCircuit:!0,url:y+G}}let u=await W(s,e,t),I=new RegExp(".*("+u.url+"\\?"+n+"(?:(?!#-#).)*).*"),h=I.test(a)&&a.replace(I,"$1")||I.test(l)&&l.replace(I,"$1");if(h?u.url=Ce.test(h)?h:y+"#-#"+h:l&&l!=="0"&&(u.url.startsWith("node:")||(u.url+="?esmkgdefs="+l)),/strict=3/.test(r)&&!h)throw d.errModuleIdNotMocked(u.url,r.split("?")[0]);return u},Z="esmock-loader=true",Te=e=>`${e}?${Z}`,q=async e=>(await import(Te(e))).default===!0,Ae=async(e,t,s)=>{if(e.endsWith(Z))return{format:"module",shortCircuit:!0,responseURL:e,source:"export default true"};if(B.test(e))return s(e,t);e=e.replace(Re,""),e.startsWith(y)&&(e=e.replace(ve,""),Fe.test(e)&&(e=e.replace(y,`file:///${e.match(Se)[1]}`)));let o=V.test(e)&&e.replace(V,"$1").split(",");return o.length?{format:"module",shortCircuit:!0,responseURL:encodeURI(e),source:o.map(r=>r==="default"?`export default global.esmockCacheGet("${e}").default`:`export const ${r} = global.esmockCacheGet("${e}").${r}`).join(`
`)}:s(e,t)},Rt=_&&Ae;var H=(e=>async()=>e||(e=await q(import.meta.url)))();import st from"fs";import ot from"node:url";import te from"fs";import se from"url";import i from"path";import oe from"module";var R=oe.createRequire(import.meta.url),Q=te.realpathSync.native,re=new RegExp("^(?:node:)?("+oe.builtinModules.join("|").replace("/","/")+")$"),Pe=/^\.?\.?([a-zA-Z]:)?(\/|\\)/,E=/^.\.?(?=\/|\\)/,J=/\\/g,Ne=/index.[tj]sx?$/,De=/[\\/]resolvewithplus[\\/]/,Ge=/(^@[^/]*\/[^/]*|^[^/]*)\/?(.*)$/,x=/^#/,ne=/(\*)/g,ce=/([./])/g,Ke=/^node:/,ze=/^file:/,ie=[".js",".mjs",".ts",".tsx",".json",".node"],X="node_modules",w="package.json",Y="node",L="default",S="import",M=".",ae=e=>e&&typeof e=="object",$={},Ue=e=>Ke.test(e)?e:`node:${e}`,Ve=e=>e&&se.pathToFileURL(e).href,We=e=>re.test(e),_e=e=>ze.test(e)?se.fileURLToPath(e):e,Be=e=>i.resolve(i.extname(e)?i.dirname(e):e)+i.sep,O=e=>J.test(e)?e.replace(J,i.posix.sep):e,p=(e,t)=>{try{t=te.statSync(e)}catch{t=!1}return t&&(t.isFile()||t.isFIFO())},le=e=>e.split(i.sep).reduce((t,s,o)=>(s===X&&!De.test(e)||(s=o?i.join(t[0][o-1],s):s||i.sep,t[0].push(s),t[1].push(i.resolve(i.join(s,X)))),t),[[],[]])[1].reverse(),Ze=e=>{let t=e.split(i.sep).slice(1).reduce((s,o,r)=>(s.push(i.resolve(i.join(r?s[r-1]:i.sep,o))),s),[]).reverse().find(s=>p(i.join(s,w)));return t&&i.join(t,w)},qe=e=>(String(e).match(Ge)||[]).slice(1),ee=(e,t)=>new RegExp(e.replace(ce,"\\$1").replace(ne,".*")).test(t),He=(e,t,s)=>{let o=new RegExp(e.replace(ce,"\\$1").replace(ne,"(.*)")),r=(s.match(o)||[])[1];return r&&t.replace("*",r)},ue=(e,t,s,o=!1)=>(ee(e,s)&&(t.includes("*")?ee(t,s)?o=s:e.includes("*")&&e!==t&&(o=He(e,t,s)):o=t),o),me=(e,t,s,o=e[0])=>e.length?(x.test(s)?x.test(o):E.test(o))&&typeof t[o]=="string"&&ue(o,t[o],s)||me(e.slice(1),t,s):null,m=(e,t)=>{let s=!1;return typeof e=="string"?e:(!s&&Array.isArray(e)&&(s=e.reduce((o,r)=>o||m(r,t),null)),!s&&ae(e)&&(typeof e[t]=="string"&&(s=e[t]),!s&&e[Y]&&(s=m(e[Y],t)),!s&&e[L]&&(s=m(e[L],t)),!s&&e[t]&&(s=m(e[t],t)),!s&&e[M]&&(s=typeof e[M]=="string"?t===S&&m(e[M],t):m(e[M],t)),s||(s=me(Object.keys(e),e,t))),s)},de=(e,t)=>{let s=t&&t.ismodule&&e.module,o=s||t&&t.browser&&e.browser,r=e.exports,n,c;return o&&(typeof o=="string"?c=o:ae(o)&&([n]=Object.keys(o).filter(a=>Ne.test(a)),c=n in o&&o[n])),r&&(c=m(r,S)),c},j=e=>{var t=null;return p(e)?t=e:ie.some(s=>p(e+s)&&(t=e+s)),t},pe=(e,t)=>{let s=null,o,r=i.join(e,w),n=p(r)&&R(r);return(o=de(n,t))?s=j(i.join(e,o)):(o=n.main)?s=j(i.join(e,o))||j(i.join(e,i.join(o,"index"))):ie.some(c=>(c=i.join(e,`index${c}`))&&p(c)&&(s=c)),s},fe=(e,t,s)=>{let o=E.test(e)?i.join(t,e):e;return j(o,s)||pe(o,s)},Qe=(e,t,s)=>{let o=s&&s.imports,r=m(o,t);return r&&(E.test(r)?i.join(e,r):ke(r,e,{isposixpath:!0}))},Je=(e,t,s,o)=>{let r=m(o&&o.exports,s?"./"+s:S);return r&&i.join(e,t,r)},Xe=(e,t,s,o)=>{let r=i.join(e,t,w),n=p(r),c=n&&R(r);return n&&Je(e,t,s,c,o)},Ye=(e,t,s)=>{let o=Ze(t),r=i.dirname(o);return o&&Qe(r,e,R(o),s)},Le=(e,t,s)=>{let[o,r]=qe(e);if(x.test(o))return Ye(e,t,s);let n=le(t).sort((c,a)=>c.length>a.length);return function c(a,l,u=l-1){return l--?Xe(i.join(a[u-l]),o,r,s)||fe(i.join(a[u-l],e),null,s)||c(n,l,u):null}(n,n.length)},et=(e,t,s)=>{var o=null;return t=typeof t=="string"?Be(_e(decodeURI(t))):process.cwd(),re.test(e)?o=Ue(e):(o=Pe.test(e)?fe(O(e),t,s):Le(e,t),o=o&&(s.isposixpath?Q(o):Ve(O(Q(o))))),o},ke=(e,t,s)=>{let o=$[e+t];return o||(o=et(e,t,s||{}),$[e+t]=o)},f=Object.assign(ke,{pathToPosix:O,getasnode_module_paths:le,getesmkeyvalmatch:ue,getasfilesync:j,getasdirsync:pe,gettargetindex:de,iscoremodule:We,esmparse:m,cache:$});var v={isESM:{},mockDefs:{}},ge=(e,t)=>global.mockKeys[String(e)]=t,C=e=>global.mockKeys[String(e)],F=(e,t)=>global.esmockCache.mockDefs[e]=t,tt=e=>global.esmockCache.mockDefs[e],he=e=>v.isESM[e],ye=(e,t)=>v.isESM[e]=t;Object.assign(global,{esmockCache:v,esmockCacheGet:tt,esmockTreeIdGet:C,mockKeys:{}});var T=e=>typeof e=="object"&&e,A=e=>T(e)&&"default"in e,rt=/^\.?\.?([a-zA-Z]:)?(\/|\\)/,nt=typeof import.meta.resolve=="function",ct=((e=0)=>()=>++e)(),je=e=>e.startsWith("file://")?e:ot.pathToFileURL(e),it=Object.getPrototypeOf({}),at=e=>Object.getPrototypeOf(e)===it,k=nt?import.meta.resolve.constructor.name==="AsyncFunction"?async(e,t)=>import.meta.resolve(e,je(t)).catch(()=>f(e,t)):(e,t)=>{try{return import.meta.resolve(e,je(t))}catch{return f(e,t)}}:f,lt=(e,t)=>at(e)?Object.assign({},e,t):Object.assign(Object.keys(e).reduce((s,o)=>(Object.defineProperty(s,o,{value:e[o],writable:!0}),s),Object.create(e)),t),ut=(e,t)=>T(e)&&T(t)?lt(e,t):t,mt=(e,t,s)=>(t=Object.assign({},e||{},{default:ut(A(e)&&e.default,A(t)?t.default:t)},t),!f.iscoremodule(s)&&Object.isExtensible(t.default)&&(t.default.default=t.default),t),dt=/(^\s*|[});\n]\s*)(import\s+(['"]|(\*\s+as\s+)?[^"'()\n;]+\s+from\s+['"]|\{)|export\s+\*\s+from\s+["']|export\s+(\{|default|function|class|var|const|let|async\s+function))/,pt=(e,t)=>(t=he(e),typeof t=="boolean"||(t=!f.iscoremodule(e)&&rt.test(e)&&dt.test(st.readFileSync(e,"utf-8")),ye(e,t)),t),ft=(e,t)=>{let s=A(e)&&e.default;return/boolean|string|number/.test(typeof s)?e:Object.isExtensible(s)?Object.assign(s,e,{esmkTreeId:t}):Object.assign({},s,e,{esmkTreeId:t})},kt=e=>{let t=n=>n==="null"||F(n,null),s=C(e.split("esmk=")[1]),[o,r]=s.split("#-#esmkdefs=");String(r).split("#-#").forEach(t),String(o.split("esmkgdefs=")[1]).split("#-#").forEach(t)},gt=async(e,t,s,o,r)=>{t=mt(r.strict||!o||await import(o),t,o);let n=(o||"file:///"+s)+"?"+["esmkTreeId="+e,"esmkModuleId="+s,"isfound="+Boolean(o),"isesm="+pt(o),"exportNames="+Object.keys(t).sort().join()].join("&");return F(n,t),n},P=async(e,t,s,o,r,n,c)=>{if(o=o||Object.keys(s),c=o[0],n=n||[],!c)return n;let a=k.constructor.name==="AsyncFunction"?await k(c,e):k(c,e);if(!a&&r.isModuleNotFoundError!==!1)throw d.errModuleIdNotFound(c,e);return n.push(await gt(t,s[c],c,a,r)),P(e,t,s,o.slice(1),r,n)},ht=async(e,t,s,o,r)=>{let n=k.constructor.name==="AsyncFunction"?await k(e,t):k(e,t);if(!n)throw d.errModuleIdNotFound(e,t);let c=o?Object.keys(o):[],a=s?Object.keys(s):[];if(r.strict===3&&!c.length&&!a.length)throw d.errModuleIdNoDefs(e,t);let l=typeof r.id=="number"?r.id:ct(),u=`${n}?key=${l}&strict=${r.strict}?`+["esmkgdefs="+(c.length&&(await P(t,l,o,c,r)).join("#-#")||0),"esmkdefs=",a.length&&(await P(t,l,s,a,r)).join("#-#")||0].join("#-#");return ge(String(l),u),n+`?esmk=${l}`},b=Object.assign(ht,{purge:kt,sanitize:ft});var yt=/^.*(\(|at )(.*):[\d]*:[\d]*.*$/,be=(e,t)=>(e=typeof e[1]=="string"?e:[e[0],new Error().stack.split(`
`)[3].replace(yt,"$2"),...e.slice(1)],e[4]={...e[4],...t},e);var g=e=>async(...t)=>{let[s,o,r,n,c]=be(t,e);if(!await H())throw d.errMissingLoader();let a=await b(s,o,r,n,c),l=await import(a);return c.purge!==!1&&b.purge(a),b.sanitize(l,a)},N=e=>e&&/object|function/.test(typeof e)&&"esmkTreeId"in e&&b.purge(e.esmkTreeId),jt=Object.assign(g({strict:1}),{purge:N,p:g({strict:1,purge:!1})}),bt=Object.assign(g({strict:3}),{purge:N,p:g({strict:3,purge:!1})}),Ht=Object.assign(g(),{purge:N,p:g({purge:!1}),strict:jt,strictest:bt});export{Ht as default,Rt as getSource,Ae as load,q as loaderIsVerified,Ot as resolve,jt as strict,bt as strictest};
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚑️ by Socket Inc