expandGlobSync

import { expandGlobSync } from "jsr:@ende/fs";

function

function* expandGlobSync(glob: string | URL, options?: ExpandGlobOptions): IterableIterator<WalkEntry>

Returns an iterator that yields each file path matching the given glob pattern. The file paths are relative to the provided root directory. If root is not provided, the current working directory is used. The root directory is not included in the yielded file paths.

Requires the --allow-read flag.

glob: string | URL

The glob pattern to expand.

options?: ExpandGlobOptions

Additional options for the expansion.

Returns

An iterator that yields each walk entry matching the glob pattern.

Example: Usage

File structure:

folder
├── script.ts
└── foo.ts
// script.ts
import { expandGlobSync } from "@ende/fs/expand-glob";

const entries = [];
for (const entry of expandGlobSync("*.ts")) {
  entries.push(entry);
}

entries[0]!.path; // "/Users/user/folder/script.ts"
entries[0]!.name; // "script.ts"
entries[0]!.isFile; // false
entries[0]!.isDirectory; // true
entries[0]!.isSymlink; // false

entries[1]!.path; // "/Users/user/folder/foo.ts"
entries[1]!.name; // "foo.ts"
entries[1]!.isFile; // true
entries[1]!.isDirectory; // false
entries[1]!.isSymlink; // false

See also

Source