Skip to content

Commit 35fd620

Browse files
authored
feat: restore commonjs bundle (chartjs#10984)
1 parent 185bb97 commit 35fd620

File tree

8 files changed

+63
-12
lines changed

8 files changed

+63
-12
lines changed

auto/auto.cjs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
const exports = require('../dist/chart.cjs');
2+
const {Chart, registerables} = exports;
3+
4+
Chart.register(...registerables);
5+
6+
module.exports = Object.assign(Chart, exports);

helpers/helpers.cjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = require('../dist/helpers.cjs');

package.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,18 @@
1515
"exports": {
1616
".": {
1717
"types": "./dist/types.d.ts",
18-
"import": "./dist/chart.js"
18+
"import": "./dist/chart.js",
19+
"require": "./dist/chart.cjs"
1920
},
2021
"./auto": {
2122
"types": "./auto/auto.d.ts",
22-
"import": "./auto/auto.js"
23+
"import": "./auto/auto.js",
24+
"require": "./auto/auto.cjs"
2325
},
2426
"./helpers": {
2527
"types": "./helpers/helpers.d.ts",
26-
"import": "./helpers/helpers.js"
28+
"import": "./helpers/helpers.js",
29+
"require": "./helpers/helpers.cjs"
2730
}
2831
},
2932
"types": "./dist/types.d.ts",

pnpm-lock.yaml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

rollup.config.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,5 +77,26 @@ export default [
7777
indent: false,
7878
sourcemap: true,
7979
},
80+
},
81+
82+
// CommonJS builds
83+
// dist/chart.js
84+
// helpers/*.js
85+
{
86+
input: {
87+
'dist/chart': 'src/index.ts',
88+
'dist/helpers': 'src/helpers/index.ts'
89+
},
90+
plugins: plugins(),
91+
external: _ => (/node_modules/).test(_),
92+
output: {
93+
dir: './',
94+
chunkFileNames: 'dist/chunks/[name].cjs',
95+
entryFileNames: '[name].cjs',
96+
banner,
97+
format: 'commonjs',
98+
indent: false,
99+
sourcemap: true,
100+
},
80101
}
81102
];
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"private": true,
3+
"description": "chart.js should work in Node",
4+
"scripts": {
5+
"test": "node test.js"
6+
},
7+
"dependencies": {
8+
"chart.js": "workspace:*"
9+
}
10+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
const {Chart} = require('chart.js');
2+
const {valueOrDefault} = require('chart.js/helpers');
3+
4+
Chart.register({
5+
id: 'TEST_PLUGIN',
6+
dummyValue: valueOrDefault(0, 1)
7+
});

test/integration/node/test.cjs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
1-
/* eslint-disable es/no-dynamic-import */
2-
Promise.all([
3-
import('chart.js'),
4-
import('chart.js/helpers')
5-
]).then(([{Chart}, {valueOrDefault}]) => {
6-
Chart.register({
7-
id: 'TEST_PLUGIN',
8-
dummyValue: valueOrDefault(0, 1)
9-
});
1+
const {Chart} = require('chart.js');
2+
const {valueOrDefault} = require('chart.js/helpers');
3+
4+
Chart.register({
5+
id: 'TEST_PLUGIN',
6+
dummyValue: valueOrDefault(0, 1)
107
});

0 commit comments

Comments
 (0)