Skip to content

Commit 46b89a5

Browse files
committed
Add supports-color as optional peerDependency
This is the proper way to declare this type of dependency. Note that if `peerDependenciesMeta` is not supported by the package manager and `supports-color` is not installed, a warning will be displayed.
1 parent 5c7c61d commit 46b89a5

2 files changed

Lines changed: 9 additions & 3 deletions

File tree

package.json

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,5 +47,13 @@
4747
"xo": "^0.23.0"
4848
},
4949
"main": "./src/index.js",
50-
"browser": "./src/browser.js"
50+
"browser": "./src/browser.js",
51+
"peerDependencies": {
52+
"supports-color": "^6.1.0"
53+
},
54+
"peerDependenciesMeta": {
55+
"supports-color": {
56+
"optional": true
57+
}
58+
}
5159
}

src/node.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@ exports.useColors = useColors;
2323
exports.colors = [6, 2, 3, 4, 5, 1];
2424

2525
try {
26-
// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)
27-
// eslint-disable-next-line import/no-extraneous-dependencies
2826
const supportsColor = require('supports-color');
2927

3028
if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {

0 commit comments

Comments
 (0)