astx
Version:
super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring
31 lines (30 loc) • 3.06 kB
JavaScript
import path from 'path'
import glob from './glob.mjs'
const exts = [
'js',
'jsx',
'flow',
'ts',
'tsx',
'cjs',
'mjs',
'esm',
'mts',
'cts',
]
export default async function* astxGlob(options) {
for await (const entry of glob(options)) {
if (entry.endsWith('/')) {
for await (const file of glob({
...options,
nodir: true,
includeMatcher: undefined,
include: path.join(entry, '**', `*.{${exts.join(',')}}`),
})) {
yield file
}
} else {
yield entry
}
}
} //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwiZ2xvYiIsImV4dHMiLCJhc3R4R2xvYiIsIm9wdGlvbnMiLCJlbnRyeSIsImVuZHNXaXRoIiwiZmlsZSIsIm5vZGlyIiwiaW5jbHVkZU1hdGNoZXIiLCJ1bmRlZmluZWQiLCJpbmNsdWRlIiwiam9pbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2FzdHhHbG9iLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHaXRpZ25vcmUgZnJvbSAnZ2l0aWdub3JlLWZzJ1xuaW1wb3J0IHsgTWluaW1hdGNoIH0gZnJvbSAnbWluaW1hdGNoJ1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCBnbG9iLCB7IEZzIH0gZnJvbSAnLi9nbG9iJ1xuXG5leHBvcnQgdHlwZSBBc3R4R2xvYk9wdGlvbnMgPSB7XG4gIGluY2x1ZGU/OiBzdHJpbmdcbiAgZXhjbHVkZT86IHN0cmluZ1xuICBpbmNsdWRlTWF0Y2hlcj86IE1pbmltYXRjaFxuICBleGNsdWRlTWF0Y2hlcj86IE1pbmltYXRjaFxuICBnaXRpZ25vcmU/OiBHaXRpZ25vcmUgfCBudWxsXG4gIGN3ZD86IHN0cmluZ1xuICBmcz86IEZzXG4gIHZpc2l0ZWQ/OiBTZXQ8c3RyaW5nPlxuICBub2Rpcj86IGJvb2xlYW5cbiAgZG90PzogYm9vbGVhblxufVxuXG5jb25zdCBleHRzID0gW1xuICAnanMnLFxuICAnanN4JyxcbiAgJ2Zsb3cnLFxuICAndHMnLFxuICAndHN4JyxcbiAgJ2NqcycsXG4gICdtanMnLFxuICAnZXNtJyxcbiAgJ210cycsXG4gICdjdHMnLFxuXVxuXG5leHBvcnQgZGVmYXVsdCBhc3luYyBmdW5jdGlvbiogYXN0eEdsb2IoXG4gIG9wdGlvbnM6IEFzdHhHbG9iT3B0aW9uc1xuKTogQXN5bmNJdGVyYWJsZTxzdHJpbmc+IHtcbiAgZm9yIGF3YWl0IChjb25zdCBlbnRyeSBvZiBnbG9iKG9wdGlvbnMpKSB7XG4gICAgaWYgKGVudHJ5LmVuZHNXaXRoKCcvJykpIHtcbiAgICAgIGZvciBhd2FpdCAoY29uc3QgZmlsZSBvZiBnbG9iKHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgbm9kaXI6IHRydWUsXG4gICAgICAgIGluY2x1ZGVNYXRjaGVyOiB1bmRlZmluZWQsXG4gICAgICAgIGluY2x1ZGU6IHBhdGguam9pbihlbnRyeSwgJyoqJywgYCoueyR7ZXh0cy5qb2luKCcsJyl9fWApLFxuICAgICAgfSkpIHtcbiAgICAgICAgeWllbGQgZmlsZVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB5aWVsZCBlbnRyeVxuICAgIH1cbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOztBQUVBLE9BQU9BLElBQVAsTUFBaUIsTUFBakI7QUFDQSxPQUFPQyxJQUFQLE1BQXlCLFFBQXpCOzs7Ozs7Ozs7Ozs7Ozs7QUFlQSxNQUFNQyxJQUFJLEdBQUc7QUFDWCxJQURXO0FBRVgsS0FGVztBQUdYLE1BSFc7QUFJWCxJQUpXO0FBS1gsS0FMVztBQU1YLEtBTlc7QUFPWCxLQVBXO0FBUVgsS0FSVztBQVNYLEtBVFc7QUFVWCxLQVZXLENBQWI7OztBQWFBLGVBQWUsZ0JBQWdCQyxRQUFoQjtBQUNiQyxPQURhO0FBRVU7RUFDdkIsV0FBVyxNQUFNQyxLQUFqQixJQUEwQkosSUFBSSxDQUFDRyxPQUFELENBQTlCLEVBQXlDO0lBQ3ZDLElBQUlDLEtBQUssQ0FBQ0MsUUFBTixDQUFlLEdBQWYsQ0FBSixFQUF5QjtNQUN2QixXQUFXLE1BQU1DLElBQWpCLElBQXlCTixJQUFJLENBQUM7UUFDNUIsR0FBR0csT0FEeUI7UUFFNUJJLEtBQUssRUFBRSxJQUZxQjtRQUc1QkMsY0FBYyxFQUFFQyxTQUhZO1FBSTVCQyxPQUFPLEVBQUVYLElBQUksQ0FBQ1ksSUFBTCxDQUFVUCxLQUFWLEVBQWlCLElBQWpCLEVBQXdCLE1BQUtILElBQUksQ0FBQ1UsSUFBTCxDQUFVLEdBQVYsQ0FBZSxHQUE1QyxDQUptQixFQUFELENBQTdCO01BS0k7UUFDRixNQUFNTCxJQUFOO01BQ0Q7SUFDRixDQVRELE1BU087TUFDTCxNQUFNRixLQUFOO0lBQ0Q7RUFDRjtBQUNGIn0=