MCPcopy Create free account
hub / github.com/ICBNetwork/web3-Wallet / loadRecord

Function loadRecord

ses.cjs:7830–7884  ·  view source on GitHub ↗
(
  compartmentPrivateFields,
  moduleAliases,
  compartment,
  moduleSpecifier,
  staticModuleRecord,
  pendingJobs,
  moduleLoads,
  errors,
  importMeta)

Source from the content-addressed store, hash-verified

7828 };
7829
7830const loadRecord= (
7831 compartmentPrivateFields,
7832 moduleAliases,
7833 compartment,
7834 moduleSpecifier,
7835 staticModuleRecord,
7836 pendingJobs,
7837 moduleLoads,
7838 errors,
7839 importMeta)=>
7840 {
7841 const { resolveHook, moduleRecords}= weakmapGet(
7842 compartmentPrivateFields,
7843 compartment);
7844
7845
7846 // resolve all imports relative to this referrer module.
7847 const resolvedImports= resolveAll(
7848 staticModuleRecord.imports,
7849 resolveHook,
7850 moduleSpecifier);
7851
7852 const moduleRecord= freeze({
7853 compartment,
7854 staticModuleRecord,
7855 moduleSpecifier,
7856 resolvedImports,
7857 importMeta});
7858
7859
7860 // Enqueue jobs to load this module's shallow dependencies.
7861 for( const fullSpecifier of values(resolvedImports)) {
7862 // Behold: recursion.
7863 // eslint-disable-next-line no-use-before-define
7864 const dependencyLoaded= memoizedLoadWithErrorAnnotation(
7865 compartmentPrivateFields,
7866 moduleAliases,
7867 compartment,
7868 fullSpecifier,
7869 pendingJobs,
7870 moduleLoads,
7871 errors);
7872
7873 setAdd(
7874 pendingJobs,
7875 promiseThen(dependencyLoaded, noop, (error)=>{
7876 arrayPush(errors, error);
7877 }));
7878
7879 }
7880
7881 // Memoize.
7882 mapSet(moduleRecords, moduleSpecifier, moduleRecord);
7883 return moduleRecord;
7884 };
7885
7886const loadWithoutErrorAnnotation= async(
7887 compartmentPrivateFields,

Callers 1

Calls 2

resolveAllFunction · 0.85

Tested by

no test coverage detected