Socket
Socket
Sign inDemoInstall

bunchee

Package Overview
Dependencies
Maintainers
1
Versions
144
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bunchee - npm Package Compare versions

Comparing version 4.3.2 to 4.3.3

63

dist/bin/cli.js

@@ -17,3 +17,3 @@ #!/usr/bin/env node

const availableExtensions = [
const availableExtensions = new Set([
'js',

@@ -27,3 +27,3 @@ 'cjs',

'mts'
];
]);
const SRC = 'src';

@@ -35,3 +35,3 @@ const dtsExtensionsMap = {

};
const tsExtensions = [
const tsExtensions = new Set([
'ts',

@@ -41,3 +41,3 @@ 'tsx',

'mts'
];
]);

@@ -141,3 +141,3 @@ function getDefaultExportFromCjs (x) {

const ext = path__default.default.extname(filename).slice(1);
return tsExtensions.includes(ext);
return tsExtensions.has(ext);
}

@@ -147,6 +147,6 @@ function fileExists(filePath) {

}
const hasAvailableExtension = (filename)=>availableExtensions.includes(path__default.default.extname(filename).slice(1));
const hasAvailableExtension = (filename)=>availableExtensions.has(path__default.default.extname(filename).slice(1));
const baseNameWithoutExtension = (filename)=>path__default.default.basename(filename, path__default.default.extname(filename));
var version = "4.3.2";
var version = "4.3.3";

@@ -158,2 +158,8 @@ function relativify(path) {

const DIST = 'dist';
const DEFAULT_TS_CONFIG = {
compilerOptions: {
module: 'ESNext',
moduleResolution: 'bundler'
}
};
// Output with posix style in package.json

@@ -203,5 +209,5 @@ function getDistPath(...subPaths) {

if (binDirent.isFile()) {
const binFile = path__default.default.join(sourceFolderPath, dirent.name, binDirent.name);
const binFileAbsolutePath = path__default.default.join(sourceFolderPath, dirent.name, binDirent.name);
const binName = baseNameWithoutExtension(binDirent.name);
if (fs__default.default.existsSync(binFile)) {
if (fs__default.default.existsSync(binFileAbsolutePath)) {
bins.set(binName, binDirent.name);

@@ -213,5 +219,4 @@ }

// Search folder/<index>.<ext> convention entries
const extensions = availableExtensions;
for (const extension of extensions){
const indexFile = path__default.default.join(sourceFolderPath, dirent.name, `index.${extension}`);
for (const extension of availableExtensions){
const indexFile = path__default.default.join(dirent.name, `index.${extension}`);
if (fs__default.default.existsSync(indexFile)) {

@@ -224,3 +229,3 @@ exportsEntries.set(dirent.name, indexFile);

} else if (dirent.isFile()) {
const isAvailableExtension = availableExtensions.includes(path__default.default.extname(dirent.name).slice(1));
const isAvailableExtension = availableExtensions.has(path__default.default.extname(dirent.name).slice(1));
if (isAvailableExtension) {

@@ -290,14 +295,14 @@ const baseName = baseNameWithoutExtension(dirent.name);

const tsconfigPath = path__default.default.join(cwd, 'tsconfig.json');
if (!fs__default.default.existsSync(tsconfigPath)) {
const sourceFiles = [
...exportsEntries.values()
].concat([
...bins.values()
]);
const hasTypeScriptFiles = sourceFiles.some((filename)=>isTypescriptFile(filename));
if (hasTypeScriptFiles) {
isUsingTs = true;
await fsp__default.default.writeFile(tsconfigPath, '{}', 'utf-8');
logger.log(`Detected using TypeScript but tsconfig.json is missing, created a ${pc.blue('tsconfig.json')} for you.`);
const sourceFiles = [
...exportsEntries.values()
].concat([
...bins.values()
]);
const hasTypeScriptFiles = sourceFiles.some((filename)=>isTypescriptFile(filename));
if (hasTypeScriptFiles) {
isUsingTs = true;
if (!fs__default.default.existsSync(tsconfigPath)) {
await fsp__default.default.writeFile(tsconfigPath, JSON.stringify(DEFAULT_TS_CONFIG, null, 2), 'utf-8');
}
logger.log(`Detected using TypeScript but tsconfig.json is missing, created a ${pc.blue('tsconfig.json')} for you.`);
}

@@ -344,6 +349,10 @@ // Configure as ESM package by default if there's no package.json

const mainCondition = isESM ? 'import' : 'require';
pkgJson.main = isUsingTs ? mainExport[mainCondition].default : mainExport[mainCondition];
pkgJson.module = isUsingTs ? mainExport.import.default : mainExport.import;
if (!pkgJson.main) {
pkgJson.main = isUsingTs ? mainExport[mainCondition].default : mainExport[mainCondition];
}
if (!pkgJson.module) {
pkgJson.module = isUsingTs ? mainExport.import.default : mainExport.import;
}
if (isUsingTs) {
pkgJson.types = isESM ? mainExport.import.types : mainExport.require.types;
pkgJson.types = mainExport[mainCondition].types;
}

@@ -350,0 +359,0 @@ }

@@ -33,3 +33,3 @@ Object.defineProperty(exports, '__esModule', { value: true });

const availableExtensions = [
const availableExtensions = new Set([
'js',

@@ -43,3 +43,3 @@ 'cjs',

'mts'
];
]);
const nodeResolveExtensions = [

@@ -53,7 +53,7 @@ '.mjs',

];
const availableExportConventions = [
const availableExportConventions = new Set([
'react-server',
'react-native',
'edge-light'
];
]);
const availableESExtensionsRegex = /\.(m|c)?[jt]sx?$/;

@@ -197,3 +197,3 @@ const SRC = 'src';

// $binary represents `pkg.bin`
if (availableExportConventions.includes(exportType) && exportType !== '$binary') {
if (availableExportConventions.has(exportType) && exportType !== '$binary') {
const filename = await findSourceEntryFile(cwd, exportPath, exportType, ext);

@@ -212,3 +212,3 @@ if (filename) return filename;

const nonNullable = (n)=>Boolean(n);
const hasAvailableExtension = (filename)=>availableExtensions.includes(path__default.default.extname(filename).slice(1));
const hasAvailableExtension = (filename)=>availableExtensions.has(path__default.default.extname(filename).slice(1));
const hasCjsExtension = (filename)=>path__default.default.extname(filename) === '.cjs';

@@ -1021,3 +1021,3 @@

// Special cases of export type, only pass down the exportPaths for the type
if (availableExportConventions.includes(exportType)) {
if (availableExportConventions.has(exportType)) {
exportCondForType = {

@@ -1024,0 +1024,0 @@ [entryExport]: exportCondRef[exportType]

{
"name": "bunchee",
"version": "4.3.2",
"version": "4.3.3",
"description": "zero config bundler for js/ts/jsx libraries",

@@ -57,3 +57,3 @@ "bin": "./dist/bin/cli.js",

"@rollup/pluginutils": "^5.1.0",
"@swc/core": "^1.3.99",
"@swc/core": "^1.3.102",
"@swc/helpers": "^0.5.3",

@@ -63,3 +63,3 @@ "arg": "^5.0.2",

"publint": "~0.2.7",
"rollup": "^4.9.1",
"rollup": "^4.9.4",
"rollup-plugin-dts": "^6.1.0",

@@ -66,0 +66,0 @@ "rollup-plugin-swc3": "^0.11.0",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc