2025-04-02 06:50:39 -04:00

43 lines
1.4 KiB
JavaScript

'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
exports.Settings =
exports.walkStream =
exports.walkSync =
exports.walk =
void 0;
const async_1 = require('./providers/async');
const stream_1 = require('./providers/stream');
const sync_1 = require('./providers/sync');
const settings_1 = require('./settings');
exports.Settings = settings_1.default;
function walk(directory, optionsOrSettingsOrCallback, callback) {
if (typeof optionsOrSettingsOrCallback === 'function') {
new async_1.default(directory, getSettings()).read(
optionsOrSettingsOrCallback
);
return;
}
new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(
callback
);
}
exports.walk = walk;
function walkSync(directory, optionsOrSettings) {
const settings = getSettings(optionsOrSettings);
const provider = new sync_1.default(directory, settings);
return provider.read();
}
exports.walkSync = walkSync;
function walkStream(directory, optionsOrSettings) {
const settings = getSettings(optionsOrSettings);
const provider = new stream_1.default(directory, settings);
return provider.read();
}
exports.walkStream = walkStream;
function getSettings(settingsOrOptions = {}) {
if (settingsOrOptions instanceof settings_1.default) {
return settingsOrOptions;
}
return new settings_1.default(settingsOrOptions);
}