All files / generateExportFile generateExportFile.ts

100% Statements 15/15
66.67% Branches 4/6
100% Functions 3/3
100% Lines 13/13

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 311x 1x     1x 2x 2x 4x 4x 2x 4x   2x   2x 2x   4x                          
import { travelDirectory } from "./utils/travelDirectory";
import { generateIndexTs } from "./utils/generateIndexTs";
import { RecursiveGenerateReexportIndex } from "../types";
 
export const generateExportFile = ({
  rootDirectory,
  ignoreDestinationPaths,
  generateFileExt = "js",
  fileExts = ["ts", "tsx", "js", "jsx"],
  babelConfigPath,
  stripFileExts = fileExts
}: RecursiveGenerateReexportIndex) => {
  return travelDirectory({
    rootDirectory,
    travelCallBack: ({ directory, childFiles, childDirectories }) => {
      generateIndexTs({
        inputFileNames: childFiles.filter(
          childFild => !/index\..+$/g.test(childFild)
        ),
        inputDirectoryNames: childDirectories,
        destinationPath: directory,
        fileExts,
        ignoreDestinationPaths,
        babelConfigPath,
        stripFileExts,
        generateFileExt
      });
    }
  });
};