Skip to content

Commit 594cfe5

Browse files
authored
[core] Don't ship type tests (#21300)
1 parent 3a7d4c6 commit 594cfe5

File tree

9 files changed

+100
-20
lines changed

9 files changed

+100
-20
lines changed

packages/material-ui-codemod/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"scripts": {
1616
"test": "cd ../../ && cross-env NODE_ENV=test mocha 'packages/material-ui-codemod/**/*.test.js'",
1717
"prebuild": "rimraf lib",
18-
"build": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js ./src --out-dir ./lib --ignore **/*.test.js",
18+
"build": "node ../../scripts/build cjs --out-dir ./lib",
1919
"release": "yarn build && npm publish"
2020
},
2121
"repository": {

packages/material-ui-docs/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
"homepage": "https://github.com/mui-org/material-ui/tree/master/packages/material-ui-lab",
2525
"scripts": {
2626
"build": "yarn build:cjs && yarn build:esm && yarn build:copy-files",
27-
"build:cjs": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js ./src --out-dir ./build --ignore \"**/*.test.js\"",
28-
"build:esm": "cross-env NODE_ENV=production BABEL_ENV=esm babel --config-file ../../babel.config.js ./src --out-dir ./build/esm --ignore \"**/*.test.js\"",
27+
"build:cjs": "node ../../scripts/build cjs",
28+
"build:esm": "node ../../scripts/build esm",
2929
"build:copy-files": "node ../../scripts/copy-files.js",
3030
"prebuild": "rimraf build",
3131
"release": "yarn build && npm publish build --tag latest",

packages/material-ui-icons/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
"homepage": "https://github.com/mui-org/material-ui/tree/master/packages/material-ui-icons",
2525
"scripts": {
2626
"build": "yarn build:cjs && yarn build:esm && yarn build:es && yarn build:typings && yarn build:copy-files",
27-
"build:cjs": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js ./src --out-dir ./build --ignore \"**/*.test.js\"",
28-
"build:esm": "cross-env NODE_ENV=production BABEL_ENV=esm babel --config-file ../../babel.config.js ./src --out-dir ./build/esm --ignore \"**/*.test.js\"",
27+
"build:cjs": "node ../../scripts/build cjs",
28+
"build:esm": "node ../../scripts/build esm",
2929
"build:es": "echo 'skip es folder'",
3030
"build:copy-files": "node ../../scripts/copy-files.js",
3131
"build:typings": "babel-node --config-file ../../babel.config.js ./scripts/create-typings.js",

packages/material-ui-lab/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@
2424
"homepage": "https://github.com/mui-org/material-ui/tree/master/packages/material-ui-lab",
2525
"scripts": {
2626
"build": "yarn build:cjs && yarn build:esm && yarn build:es && yarn build:copy-files",
27-
"build:cjs": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js ./src --out-dir ./build --ignore \"**/*.test.js\"",
28-
"build:esm": "cross-env NODE_ENV=production BABEL_ENV=esm babel --config-file ../../babel.config.js ./src --out-dir ./build/esm --ignore \"**/*.test.js\"",
29-
"build:es": "cross-env NODE_ENV=production BABEL_ENV=es babel --config-file ../../babel.config.js ./src --out-dir ./build/es --ignore \"**/*.test.js\"",
27+
"build:cjs": "node ../../scripts/build cjs",
28+
"build:esm": "node ../../scripts/build esm",
29+
"build:es": "node ../../scripts/build es",
3030
"build:copy-files": "node ../../scripts/copy-files.js",
3131
"prebuild": "rimraf build",
3232
"release": "yarn build && npm publish build --tag latest",

packages/material-ui-styles/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@
2828
},
2929
"scripts": {
3030
"build": "yarn build:cjs && yarn build:esm && yarn build:es && yarn build:copy-files",
31-
"build:cjs": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js ./src --out-dir ./build --ignore \"**/*.test.js\"",
32-
"build:esm": "cross-env NODE_ENV=production BABEL_ENV=esm babel --config-file ../../babel.config.js ./src --out-dir ./build/esm --ignore \"**/*.test.js\"",
33-
"build:es": "cross-env NODE_ENV=production BABEL_ENV=es babel --config-file ../../babel.config.js ./src --out-dir ./build/es --ignore \"**/*.test.js\"",
31+
"build:cjs": "node ../../scripts/build cjs",
32+
"build:esm": "node ../../scripts/build esm",
33+
"build:es": "node ../../scripts/build es",
3434
"build:copy-files": "node ../../scripts/copy-files.js",
3535
"prebuild": "rimraf build",
3636
"release": "yarn build && npm publish build --tag latest",

packages/material-ui-system/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@
2828
},
2929
"scripts": {
3030
"build": "yarn build:cjs && yarn build:esm && yarn build:es && yarn build:copy-files",
31-
"build:cjs": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js ./src --out-dir ./build --ignore \"**/*.test.js\"",
32-
"build:esm": "cross-env NODE_ENV=production BABEL_ENV=esm babel --config-file ../../babel.config.js ./src --out-dir ./build/esm --ignore \"**/*.test.js\"",
33-
"build:es": "cross-env NODE_ENV=production BABEL_ENV=es babel --config-file ../../babel.config.js ./src --out-dir ./build/es --ignore \"**/*.test.js\"",
31+
"build:cjs": "node ../../scripts/build cjs",
32+
"build:esm": "node ../../scripts/build esm",
33+
"build:es": "node ../../scripts/build es",
3434
"build:copy-files": "node ../../scripts/copy-files.js",
3535
"prebuild": "rimraf build",
3636
"release": "yarn build && npm publish build --tag latest",

packages/material-ui-utils/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@
2424
"homepage": "https://github.com/mui-org/material-ui/tree/master/packages/material-ui-utils",
2525
"scripts": {
2626
"build": "yarn build:cjs && yarn build:esm && yarn build:es && yarn build:copy-files",
27-
"build:cjs": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js ./src --out-dir ./build --ignore \"**/*.test.js\"",
28-
"build:esm": "cross-env NODE_ENV=production BABEL_ENV=esm babel --config-file ../../babel.config.js ./src --out-dir ./build/esm --ignore \"**/*.test.js\"",
29-
"build:es": "cross-env NODE_ENV=production BABEL_ENV=es babel --config-file ../../babel.config.js ./src --out-dir ./build/es --ignore \"**/*.test.js\"",
27+
"build:cjs": "node ../../scripts/build cjs",
28+
"build:esm": "node ../../scripts/build esm",
29+
"build:es": "node ../../scripts/build es",
3030
"build:copy-files": "node ../../scripts/copy-files.js",
3131
"prebuild": "rimraf build",
3232
"release": "yarn build && npm publish build --tag latest",

packages/material-ui/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626
},
2727
"scripts": {
2828
"build": "yarn build:cjs && yarn build:esm && yarn build:es && yarn build:umd && yarn build:copy-files && yarn build:types",
29-
"build:cjs": "cross-env NODE_ENV=production BABEL_ENV=cjs babel --config-file ../../babel.config.js --extensions \".js,.ts\" ./src --out-dir ./build --ignore \"**/*.test.js,**/*.d.ts\"",
30-
"build:esm": "cross-env NODE_ENV=production BABEL_ENV=esm babel --config-file ../../babel.config.js --extensions \".js,.ts\" ./src --out-dir ./build/esm --ignore \"**/*.test.js,**/*.d.ts\"",
31-
"build:es": "cross-env NODE_ENV=production BABEL_ENV=es babel --config-file ../../babel.config.js --extensions \".js,.ts\" ./src --out-dir ./build/es --ignore \"**/*.test.js,**/*.d.ts\"",
29+
"build:cjs": "node ../../scripts/build cjs",
30+
"build:esm": "node ../../scripts/build esm",
31+
"build:es": "node ../../scripts/build es",
3232
"build:umd": "cross-env BABEL_ENV=production-umd rollup -c scripts/rollup.config.js",
3333
"build:copy-files": "node ../../scripts/copy-files.js",
3434
"build:types": "tsc -p tsconfig.build.json",

scripts/build.js

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
const childProcess = require('child_process');
2+
const path = require('path');
3+
const { promisify } = require('util');
4+
const yargs = require('yargs');
5+
6+
const exec = promisify(childProcess.exec);
7+
8+
const validBundles = [
9+
// legacy build using commonJS modules
10+
'cjs',
11+
// modern build
12+
'es',
13+
// legacy build using ES6 modules
14+
'esm',
15+
];
16+
17+
async function run(argv) {
18+
const { bundle, outDir: relativeOutDir, verbose } = argv;
19+
20+
if (validBundles.indexOf(bundle) === -1) {
21+
throw new TypeError(
22+
`Unrecognized bundle '${bundle}'. Did you mean one of "${validBundles.join('", "')}"?`,
23+
);
24+
}
25+
26+
const env = {
27+
NODE_ENV: 'production',
28+
BABEL_ENV: bundle,
29+
};
30+
const babelConfigPath = path.resolve(__dirname, '../babel.config.js');
31+
const srcDir = path.resolve('./src');
32+
const outDir = path.resolve(
33+
relativeOutDir,
34+
{
35+
cjs: '.',
36+
esm: './esm',
37+
es: './es',
38+
}[bundle],
39+
);
40+
41+
const command = [
42+
'yarn babel',
43+
'--config-file',
44+
babelConfigPath,
45+
'--extensions',
46+
'".js,.ts"',
47+
srcDir,
48+
'--out-dir',
49+
outDir,
50+
'--ignore',
51+
'"**/*.test.js","**/*.spec.ts","**/*.d.ts"',
52+
].join(' ');
53+
54+
if (verbose) {
55+
// eslint-disable-next-line no-console
56+
console.log(`running '${command}' with ${JSON.stringify(env)}`);
57+
}
58+
59+
return exec(command, { env });
60+
}
61+
62+
yargs
63+
.command({
64+
command: '$0 <bundle>',
65+
description: 'build package',
66+
builder: (command) => {
67+
return command
68+
.positional('bundle', {
69+
description: `Valid bundles: "${validBundles.join('" | "')}"`,
70+
type: 'string',
71+
})
72+
.option('out-dir', { default: './build', type: 'string' })
73+
.option('verbose', { type: 'boolean' });
74+
},
75+
handler: run,
76+
})
77+
.help()
78+
.strict(true)
79+
.version(false)
80+
.parse();

0 commit comments

Comments
 (0)