Skip to content

Commit

Permalink
Add side effects
Browse files Browse the repository at this point in the history
  • Loading branch information
domoritz committed Jan 15, 2024
1 parent b522f8c commit 5b509cc
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions js/gulp/package-task.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,11 @@ export const packageTask = ((cache) => memoizeTask(cache, function bundle(target

export default packageTask;

const sideEffects = (ext) => [
`./Arrow.dom.${ext ?? '*'}`,
`./Arrow.node.${ext ?? '*'}`,
];

const createMainPackageJson = (target, format) => (orig) => ({
...createTypeScriptPackageJson(target, format)(orig),
bin: orig.bin,
Expand Down Expand Up @@ -84,7 +89,7 @@ const createMainPackageJson = (target, format) => (orig) => ({
},
},
},
sideEffects: false,
sideEffects: sideEffects('*'),
esm: { mode: `all`, sourceMap: true }
});

Expand All @@ -96,7 +101,7 @@ const createTypeScriptPackageJson = (target, format) => (orig) => ({
types: `${mainExport}.node.ts`,
browser: `${mainExport}.dom.ts`,
type: 'module',
sideEffects: false,
sideEffects: sideEffects('ts'),
esm: { mode: `auto`, sourceMap: true },
dependencies: {
'@types/node': '*',
Expand Down Expand Up @@ -124,7 +129,7 @@ const createScopedPackageJSON = (target, format) => (({ name, ...orig }) =>
// set "module" if building scoped ESM target
module: format === 'esm' ? `${mainExport}.node.js` : undefined,
// set "sideEffects" to false as a hint to Webpack that it's safe to tree-shake the ESM target
sideEffects: format === 'esm' ? false : undefined,
sideEffects: format === 'esm' ? sideEffects('mjs') : undefined,
// include "esm" settings for https://www.npmjs.com/package/esm if building scoped ESM target
esm: format === `esm` ? { mode: `auto`, sourceMap: true } : undefined,
// set "types" (for TypeScript/VSCode)
Expand Down

0 comments on commit 5b509cc

Please sign in to comment.