first commit
This commit is contained in:
148
node_modules/cosmiconfig/dist/index.js
generated
vendored
Normal file
148
node_modules/cosmiconfig/dist/index.js
generated
vendored
Normal file
@@ -0,0 +1,148 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.defaultLoadersSync = exports.defaultLoaders = exports.globalConfigSearchPlacesSync = exports.globalConfigSearchPlaces = exports.getDefaultSearchPlacesSync = exports.getDefaultSearchPlaces = exports.cosmiconfigSync = exports.cosmiconfig = void 0;
|
||||
const defaults_1 = require("./defaults");
|
||||
Object.defineProperty(exports, "defaultLoaders", { enumerable: true, get: function () { return defaults_1.defaultLoaders; } });
|
||||
Object.defineProperty(exports, "defaultLoadersSync", { enumerable: true, get: function () { return defaults_1.defaultLoadersSync; } });
|
||||
Object.defineProperty(exports, "getDefaultSearchPlaces", { enumerable: true, get: function () { return defaults_1.getDefaultSearchPlaces; } });
|
||||
Object.defineProperty(exports, "getDefaultSearchPlacesSync", { enumerable: true, get: function () { return defaults_1.getDefaultSearchPlacesSync; } });
|
||||
Object.defineProperty(exports, "globalConfigSearchPlaces", { enumerable: true, get: function () { return defaults_1.globalConfigSearchPlaces; } });
|
||||
Object.defineProperty(exports, "globalConfigSearchPlacesSync", { enumerable: true, get: function () { return defaults_1.globalConfigSearchPlacesSync; } });
|
||||
const Explorer_js_1 = require("./Explorer.js");
|
||||
const ExplorerSync_js_1 = require("./ExplorerSync.js");
|
||||
const util_1 = require("./util");
|
||||
const identity = function identity(x) {
|
||||
return x;
|
||||
};
|
||||
function getUserDefinedOptionsFromMetaConfig() {
|
||||
const metaExplorer = new ExplorerSync_js_1.ExplorerSync({
|
||||
moduleName: 'cosmiconfig',
|
||||
stopDir: process.cwd(),
|
||||
searchPlaces: defaults_1.metaSearchPlaces,
|
||||
ignoreEmptySearchPlaces: false,
|
||||
applyPackagePropertyPathToConfiguration: true,
|
||||
loaders: defaults_1.defaultLoaders,
|
||||
transform: identity,
|
||||
cache: true,
|
||||
metaConfigFilePath: null,
|
||||
mergeImportArrays: true,
|
||||
mergeSearchPlaces: true,
|
||||
searchStrategy: 'none',
|
||||
});
|
||||
const metaConfig = metaExplorer.search();
|
||||
if (!metaConfig) {
|
||||
return null;
|
||||
}
|
||||
if (metaConfig.config?.loaders) {
|
||||
throw new Error('Can not specify loaders in meta config file');
|
||||
}
|
||||
if (metaConfig.config?.searchStrategy) {
|
||||
throw new Error('Can not specify searchStrategy in meta config file');
|
||||
}
|
||||
const overrideOptions = {
|
||||
mergeSearchPlaces: true,
|
||||
...(metaConfig.config ?? {}),
|
||||
};
|
||||
return {
|
||||
config: (0, util_1.removeUndefinedValuesFromObject)(overrideOptions),
|
||||
filepath: metaConfig.filepath,
|
||||
};
|
||||
}
|
||||
function getResolvedSearchPlaces(moduleName, toolDefinedSearchPlaces, userConfiguredOptions) {
|
||||
const userConfiguredSearchPlaces = userConfiguredOptions.searchPlaces?.map((path) => path.replace('{name}', moduleName));
|
||||
if (userConfiguredOptions.mergeSearchPlaces) {
|
||||
return [...(userConfiguredSearchPlaces ?? []), ...toolDefinedSearchPlaces];
|
||||
}
|
||||
return (userConfiguredSearchPlaces ??
|
||||
/* istanbul ignore next */ toolDefinedSearchPlaces);
|
||||
}
|
||||
function mergeOptionsBase(moduleName, defaults, options) {
|
||||
const userDefinedConfig = getUserDefinedOptionsFromMetaConfig();
|
||||
if (!userDefinedConfig) {
|
||||
return {
|
||||
...defaults,
|
||||
...(0, util_1.removeUndefinedValuesFromObject)(options),
|
||||
loaders: {
|
||||
...defaults.loaders,
|
||||
...options.loaders,
|
||||
},
|
||||
};
|
||||
}
|
||||
const userConfiguredOptions = userDefinedConfig.config;
|
||||
const toolDefinedSearchPlaces = options.searchPlaces ?? defaults.searchPlaces;
|
||||
return {
|
||||
...defaults,
|
||||
...(0, util_1.removeUndefinedValuesFromObject)(options),
|
||||
metaConfigFilePath: userDefinedConfig.filepath,
|
||||
...userConfiguredOptions,
|
||||
searchPlaces: getResolvedSearchPlaces(moduleName, toolDefinedSearchPlaces, userConfiguredOptions),
|
||||
loaders: {
|
||||
...defaults.loaders,
|
||||
...options.loaders,
|
||||
},
|
||||
};
|
||||
}
|
||||
function validateOptions(options) {
|
||||
if (options.searchStrategy != null &&
|
||||
options.searchStrategy !== 'global' &&
|
||||
options.stopDir) {
|
||||
throw new Error('Can not supply `stopDir` option with `searchStrategy` other than "global"');
|
||||
}
|
||||
}
|
||||
function mergeOptions(moduleName, options) {
|
||||
validateOptions(options);
|
||||
const defaults = {
|
||||
moduleName,
|
||||
searchPlaces: (0, defaults_1.getDefaultSearchPlaces)(moduleName),
|
||||
ignoreEmptySearchPlaces: true,
|
||||
cache: true,
|
||||
transform: identity,
|
||||
loaders: defaults_1.defaultLoaders,
|
||||
metaConfigFilePath: null,
|
||||
mergeImportArrays: true,
|
||||
mergeSearchPlaces: true,
|
||||
searchStrategy: options.stopDir ? 'global' : 'none',
|
||||
};
|
||||
return mergeOptionsBase(moduleName, defaults, options);
|
||||
}
|
||||
function mergeOptionsSync(moduleName, options) {
|
||||
validateOptions(options);
|
||||
const defaults = {
|
||||
moduleName,
|
||||
searchPlaces: (0, defaults_1.getDefaultSearchPlacesSync)(moduleName),
|
||||
ignoreEmptySearchPlaces: true,
|
||||
cache: true,
|
||||
transform: identity,
|
||||
loaders: defaults_1.defaultLoadersSync,
|
||||
metaConfigFilePath: null,
|
||||
mergeImportArrays: true,
|
||||
mergeSearchPlaces: true,
|
||||
searchStrategy: options.stopDir ? 'global' : 'none',
|
||||
};
|
||||
return mergeOptionsBase(moduleName, defaults, options);
|
||||
}
|
||||
function cosmiconfig(moduleName, options = {}) {
|
||||
const normalizedOptions = mergeOptions(moduleName, options);
|
||||
const explorer = new Explorer_js_1.Explorer(normalizedOptions);
|
||||
return {
|
||||
search: explorer.search.bind(explorer),
|
||||
load: explorer.load.bind(explorer),
|
||||
clearLoadCache: explorer.clearLoadCache.bind(explorer),
|
||||
clearSearchCache: explorer.clearSearchCache.bind(explorer),
|
||||
clearCaches: explorer.clearCaches.bind(explorer),
|
||||
};
|
||||
}
|
||||
exports.cosmiconfig = cosmiconfig;
|
||||
function cosmiconfigSync(moduleName, options = {}) {
|
||||
const normalizedOptions = mergeOptionsSync(moduleName, options);
|
||||
const explorerSync = new ExplorerSync_js_1.ExplorerSync(normalizedOptions);
|
||||
return {
|
||||
search: explorerSync.search.bind(explorerSync),
|
||||
load: explorerSync.load.bind(explorerSync),
|
||||
clearLoadCache: explorerSync.clearLoadCache.bind(explorerSync),
|
||||
clearSearchCache: explorerSync.clearSearchCache.bind(explorerSync),
|
||||
clearCaches: explorerSync.clearCaches.bind(explorerSync),
|
||||
};
|
||||
}
|
||||
exports.cosmiconfigSync = cosmiconfigSync;
|
||||
//# sourceMappingURL=index.js.map
|
||||
Reference in New Issue
Block a user