aboutsummaryrefslogtreecommitdiff
path: root/packages/bun-types/scripts/utils/getDotTsFiles.ts
blob: ea9580a9c14083d4c4e0f2f8acc8fa8812ab18f9 (plain) (blame)
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
import { readdir } from "node:fs/promises";
import { join } from "node:path";

const allDotTsFiles: string[] = [];
export const getDotTsFiles = async (
  prefix = "",
  folder: string = join(import.meta.dir, "..", ".."),
  folderName?: string,
) => {
  const files = await readdir(folder, { withFileTypes: true });
  for await (const file of files) {
    if (
      file.isDirectory() &&
      (file.name === "node_modules" || file.name === "tests")
    )
      continue;

    if (file.isDirectory())
      await getDotTsFiles(prefix, join(folder, file.name), file.name);
    else if (file.name.endsWith(".d.ts"))
      allDotTsFiles.push(prefix + join(folderName || "", file.name));
  }

  return allDotTsFiles;
};