26 lines
1.0 KiB
JavaScript
26 lines
1.0 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.Settings = exports.scandirSync = exports.scandir = void 0;
|
|
const async = require("./providers/async");
|
|
const sync = require("./providers/sync");
|
|
const settings_1 = require("./settings");
|
|
exports.Settings = settings_1.default;
|
|
function scandir(path, optionsOrSettingsOrCallback, callback) {
|
|
if (typeof optionsOrSettingsOrCallback === 'function') {
|
|
return async.read(path, getSettings(), optionsOrSettingsOrCallback);
|
|
}
|
|
async.read(path, getSettings(optionsOrSettingsOrCallback), callback);
|
|
}
|
|
exports.scandir = scandir;
|
|
function scandirSync(path, optionsOrSettings) {
|
|
const settings = getSettings(optionsOrSettings);
|
|
return sync.read(path, settings);
|
|
}
|
|
exports.scandirSync = scandirSync;
|
|
function getSettings(settingsOrOptions = {}) {
|
|
if (settingsOrOptions instanceof settings_1.default) {
|
|
return settingsOrOptions;
|
|
}
|
|
return new settings_1.default(settingsOrOptions);
|
|
}
|