Skip to content

Commit 1ed760c

Browse files
committed
add type:module to dist/esm for Node.js compatibility
1 parent a10ba30 commit 1ed760c

2 files changed

Lines changed: 14 additions & 1 deletion

File tree

packages/react-icons/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@
2828
"build:single:packages": "node ../../scripts/build-single-packages.mjs --config single-packages.config.json",
2929
"build:esm": "tsc --build tsconfig.json",
3030
"clean": "rimraf dist src/icons src/index.js src/index.d.ts",
31-
"generate": "rimraf dist/esm/icons dist/js/icons dist/static && yarn build:esm && node scripts/writeIcons.mjs"
31+
"generate": "rimraf dist/esm/icons dist/js/icons dist/static && yarn build:esm && node scripts/ensureEsmPackageJson.mjs && node scripts/writeIcons.mjs",
32+
"update-rhds-icons": "node scripts/parseRHIcons.mjs"
3233
},
3334
"devDependencies": {
3435
"@fortawesome/free-brands-svg-icons": "^5.15.4",
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { writeFileSync, mkdirSync } from 'fs';
2+
import { join, dirname } from 'path';
3+
import { fileURLToPath } from 'url';
4+
5+
const __dirname = dirname(fileURLToPath(import.meta.url));
6+
const esmPackageJsonPath = join(__dirname, '../dist/esm/package.json');
7+
8+
// Ensure dist/esm directory exists
9+
mkdirSync(dirname(esmPackageJsonPath), { recursive: true });
10+
11+
// Write package.json to mark ESM directory as a module
12+
writeFileSync(esmPackageJsonPath, JSON.stringify({ type: 'module' }, null, 2));

0 commit comments

Comments
 (0)