lbundle
Version:
Small zero-configuration bundler build on top of Rollup.js and SWC for NPM libraries
31 lines (28 loc) • 910 B
JavaScript
import path from 'path';
const getFilenameOutputFormat = function(filename) {
let isModule = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
const ext = path.extname(filename);
filename.substring;
switch(ext){
case '.mjs':
return 'esm';
case '.cjs':
return 'cjs';
}
const filenameWithoutExt = filename.substring(0, filename.length - ext.length);
const luxuryExt = path.extname(filenameWithoutExt);
if (!luxuryExt) {
return isModule ? 'esm' : 'cjs';
}
switch(luxuryExt){
case '.umd':
return 'umd';
case '.amd':
return 'amd';
case '.iife':
return 'iife';
}
throw new Error('[lbundle] unknown output format for filename: ' + filename);
};
export { getFilenameOutputFormat };
//# sourceMappingURL=get-filename-output-format.mjs.map