Add conditional exports property Lucide Svelte package.json (#1499)

* add exports property

* adjust wild card import

* Fix exports

* revert bundleSize plugin change

* Fix exports build warning
This commit is contained in:
Eric Fennis
2023-08-28 19:41:24 +02:00
committed by GitHub
parent 0e307087f6
commit 1bdeae5364
2 changed files with 29 additions and 5 deletions
+15 -3
View File
@@ -11,11 +11,23 @@
"directory": "packages/lucide-svelte"
},
"author": "Eric Fennis",
"amdName": "lucide-svelte",
"type": "module",
"main": "dist/esm/lucide-svelte.js",
"module": "dist/esm/lucide-svelte.js",
"svelte": "dist/svelte/lucide-svelte.js",
"exports": {
".": {
"default": "./dist/esm/lucide-svelte.js",
"svelte": "./dist/svelte/lucide-svelte.js",
"types": "./dist/lucide-svelte.d.ts"
},
"./icons": {
"default": "./dist/esm/icons/index.js",
"svelte": "./dist/svelte/icons/index.js"
},
"./icons/*": {
"default": "./dist/esm/icons/*.js",
"svelte": "./dist/svelte/icons/*.svelte"
}
},
"typings": "dist/lucide-svelte.d.ts",
"sideEffects": false,
"files": [
+14 -2
View File
@@ -15,6 +15,7 @@ const bundles = [
inputs,
outputDir,
preserveModules: true,
preserveModulesRoot: 'src',
},
{
format: 'svelte',
@@ -25,7 +26,7 @@ const bundles = [
];
const configs = bundles
.map(({ inputs, outputDir, format, minify, preserveModules }) =>
.map(({ inputs, outputDir, format, minify, preserveModules, preserveModulesRoot }) =>
inputs.map(input => ({
input,
plugins: [
@@ -35,7 +36,7 @@ const configs = bundles
include: 'src/**/*.svelte',
compilerOptions: {
dev: false,
css: false,
css: 'external',
hydratable: true,
},
emitCss: false,
@@ -59,11 +60,22 @@ const configs = bundles
file: `${outputDir}/${format}/${outputFileName}${minify ? '.min' : ''}.js`,
}),
preserveModules,
preserveModulesRoot,
format: format === 'svelte' ? 'esm' : format,
sourcemap: true,
globals: {
svelte: 'svelte',
},
entryFileNames: (chunkInfo) => {
if (chunkInfo.name.includes('node_modules')) {
const [pathToReplace, directory] = chunkInfo.name.match(/.*\/([^\/]+)\//);
const fileName = chunkInfo.name.replace(pathToReplace, '');
return `external/${directory}/${fileName}.js`;
}
return '[name].js';
}
},
})),
)