All files / src/resolver index.ts

45.45% Statements 5/11
0% Branches 0/5
25% Functions 1/4
33.33% Lines 3/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45  1x                       1x                                                           9x  
import { IsomorphicRollupFs } from "../fs-iface";
import { nodeResolve } from "../node-resolve";
 
export type ResolverOptions = {
  fs: IsomorphicRollupFs;
  rootDir?: string | undefined;
  warn?: ((...data: any[]) => void) | undefined;
  validateImportsExports?: boolean | undefined;
  ignoreExports?: boolean | undefined;
  preferBuiltins?: boolean | undefined;
  extensions?: string[] | undefined;
  browser?: boolean;
};
export const resolver = ({
  fs,
  rootDir = "/",
  warn = () => {},
  validateImportsExports = false,
  ignoreExports = false,
  preferBuiltins = false,
  extensions,
  browser,
}: ResolverOptions) => {
  const res = nodeResolve({
    fs,
    rootDir,
    validateImportsExports,
    preferBuiltins,
    ignoreExports,
    extensions,
    browser,
  });
  return async (importee: string, importer: string) => {
    // @ts-ignore
    const handler = res.resolveId.handler.bind(res);
    // @ts-ignore
    res.warn = warn;
    // @ts-ignore
    res.resolve = handler;
    return await handler(importee, importer, {});
  };
};
 
export { createResolve } from "./resolve.js";