diff --git a/README.md b/README.md index 8baf8f3..bfe3150 100644 --- a/README.md +++ b/README.md @@ -170,7 +170,7 @@ By default the plugin will remove unnecessary function calls and if all calls ar Example of some unnecessary calls ```javascript -import clsx from 'clsx'; +import clsx from 'clsx/lite'; const x = clsx('foo', 'bar'); const y = clsx({ classA: foo === 'a', classB: foo !== 'a' }); const z = clsx({ diff --git a/benchmark/index.js b/benchmark/index.js index f535096..a1d3f3c 100644 --- a/benchmark/index.js +++ b/benchmark/index.js @@ -1,7 +1,7 @@ const Benchmark = require('benchmark'); const path = require('path'); const fs = require('fs'); -const clsx = require('clsx'); +const clsx = require('clsx/lite'); const classnames = require('classnames'); function bench(name, { title, before, after }) { diff --git a/package.json b/package.json index 2f62d41..89ea165 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "babel-plugin-tester": "^7.0.3", "benchmark": "^2.1.4", "classnames": "^2.2.6", - "clsx": "^1.0.4", + "clsx": "^2.1.0", "husky": "^4.2.3", "jest": "^24.9.0", "prettier": "^2.0.1", diff --git a/src/options.ts b/src/options.ts index fdb52d0..992ccd4 100644 --- a/src/options.ts +++ b/src/options.ts @@ -1,5 +1,5 @@ const DefaultSettings = { - libraries: ['clsx', 'classnames'], + libraries: ['clsx/lite', 'classnames'], functionNames: [] as string[], removeUnnecessaryCalls: true, collectCalls: false, diff --git a/test/fixtures/find-function-names/namespace-import/code.js b/test/fixtures/find-function-names/namespace-import/code.js index 06a4883..92bfe4f 100644 --- a/test/fixtures/find-function-names/namespace-import/code.js +++ b/test/fixtures/find-function-names/namespace-import/code.js @@ -1,3 +1,3 @@ -import * as clsx from 'clsx'; +import * as clsx from 'clsx/lite'; clsx({ foo: true }); diff --git a/test/fixtures/find-function-names/namespace-import/output.js b/test/fixtures/find-function-names/namespace-import/output.js index bdc658b..29cde35 100644 --- a/test/fixtures/find-function-names/namespace-import/output.js +++ b/test/fixtures/find-function-names/namespace-import/output.js @@ -1,2 +1,2 @@ -import * as clsx from 'clsx'; +import * as clsx from 'clsx/lite'; clsx('foo'); diff --git a/test/fixtures/find-function-names/unused-import/code.js b/test/fixtures/find-function-names/unused-import/code.js index c3555c1..e01fe84 100644 --- a/test/fixtures/find-function-names/unused-import/code.js +++ b/test/fixtures/find-function-names/unused-import/code.js @@ -1,4 +1,4 @@ -import clsx from 'clsx'; +import clsx from 'clsx/lite'; const cn = require('classnames'); const x = clsx('foo'); diff --git a/test/fixtures/find-function-names/using-import/code.js b/test/fixtures/find-function-names/using-import/code.js index 0e29ea0..73d7c02 100644 --- a/test/fixtures/find-function-names/using-import/code.js +++ b/test/fixtures/find-function-names/using-import/code.js @@ -1,3 +1,3 @@ -import fooFunction from 'clsx'; +import fooFunction from 'clsx/lite'; fooFunction({ foo: true }); diff --git a/test/fixtures/find-function-names/using-import/output.js b/test/fixtures/find-function-names/using-import/output.js index 2a74edd..4c34ae8 100644 --- a/test/fixtures/find-function-names/using-import/output.js +++ b/test/fixtures/find-function-names/using-import/output.js @@ -1,2 +1,2 @@ -import fooFunction from 'clsx'; +import fooFunction from 'clsx/lite'; fooFunction('foo'); diff --git a/test/fixtures/find-function-names/using-require/code.js b/test/fixtures/find-function-names/using-require/code.js index 983a68d..1ebed79 100644 --- a/test/fixtures/find-function-names/using-require/code.js +++ b/test/fixtures/find-function-names/using-require/code.js @@ -1,3 +1,3 @@ -const fooFunction = require('clsx'); +const fooFunction = require('clsx/lite'); fooFunction({ foo: true }); diff --git a/test/fixtures/find-function-names/using-require/output.js b/test/fixtures/find-function-names/using-require/output.js index befa5fa..853fb78 100644 --- a/test/fixtures/find-function-names/using-require/output.js +++ b/test/fixtures/find-function-names/using-require/output.js @@ -1,3 +1,3 @@ -const fooFunction = require('clsx'); +const fooFunction = require('clsx/lite'); fooFunction('foo'); diff --git a/test/fixtures/proptypes/member-access/code.js b/test/fixtures/proptypes/member-access/code.js index e605bdb..eb51509 100644 --- a/test/fixtures/proptypes/member-access/code.js +++ b/test/fixtures/proptypes/member-access/code.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const x = clsx(props.position === 'top' && classes.x, props.position === 'bottom' && classes.y); diff --git a/test/fixtures/proptypes/member-access/output.js b/test/fixtures/proptypes/member-access/output.js index 21adc61..bf06b7d 100644 --- a/test/fixtures/proptypes/member-access/output.js +++ b/test/fixtures/proptypes/member-access/output.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const x = clsx(props.position === 'top' ? classes.x : classes.y); diff --git a/test/fixtures/proptypes/object-pattern-assignment/code.js b/test/fixtures/proptypes/object-pattern-assignment/code.js index e3e5bec..e9a635e 100644 --- a/test/fixtures/proptypes/object-pattern-assignment/code.js +++ b/test/fixtures/proptypes/object-pattern-assignment/code.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const { position = 'top', anchor: a = 'left' } = props; diff --git a/test/fixtures/proptypes/object-pattern-assignment/output.js b/test/fixtures/proptypes/object-pattern-assignment/output.js index b2520f4..f417e20 100644 --- a/test/fixtures/proptypes/object-pattern-assignment/output.js +++ b/test/fixtures/proptypes/object-pattern-assignment/output.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const { position = 'top', anchor: a = 'left' } = props; diff --git a/test/fixtures/proptypes/object-pattern-inline/code.js b/test/fixtures/proptypes/object-pattern-inline/code.js index 21824d2..4c88282 100644 --- a/test/fixtures/proptypes/object-pattern-inline/code.js +++ b/test/fixtures/proptypes/object-pattern-inline/code.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo({ position: p }) { const x = clsx(p === 'top' && classes.x, p === 'bottom' && classes.y); diff --git a/test/fixtures/proptypes/object-pattern-inline/output.js b/test/fixtures/proptypes/object-pattern-inline/output.js index 9a245a1..4ac5bb0 100644 --- a/test/fixtures/proptypes/object-pattern-inline/output.js +++ b/test/fixtures/proptypes/object-pattern-inline/output.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo({ position: p }) { const x = clsx(p === 'top' ? classes.x : classes.y); diff --git a/test/fixtures/proptypes/object-pattern-rest/code.js b/test/fixtures/proptypes/object-pattern-rest/code.js index 81250b7..208724f 100644 --- a/test/fixtures/proptypes/object-pattern-rest/code.js +++ b/test/fixtures/proptypes/object-pattern-rest/code.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const { position: p, ...rest } = props; diff --git a/test/fixtures/proptypes/object-pattern-rest/output.js b/test/fixtures/proptypes/object-pattern-rest/output.js index 7abcd3f..d02b3cc 100644 --- a/test/fixtures/proptypes/object-pattern-rest/output.js +++ b/test/fixtures/proptypes/object-pattern-rest/output.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const { position: p, ...rest } = props; diff --git a/test/fixtures/proptypes/object-pattern/code.js b/test/fixtures/proptypes/object-pattern/code.js index f70507c..9a0454c 100644 --- a/test/fixtures/proptypes/object-pattern/code.js +++ b/test/fixtures/proptypes/object-pattern/code.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const { position: p } = props; diff --git a/test/fixtures/proptypes/object-pattern/output.js b/test/fixtures/proptypes/object-pattern/output.js index eadc653..247127c 100644 --- a/test/fixtures/proptypes/object-pattern/output.js +++ b/test/fixtures/proptypes/object-pattern/output.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const { position: p } = props; diff --git a/test/fixtures/proptypes/variable-declaration/code.js b/test/fixtures/proptypes/variable-declaration/code.js index 5720972..6047a5c 100644 --- a/test/fixtures/proptypes/variable-declaration/code.js +++ b/test/fixtures/proptypes/variable-declaration/code.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const p = props.position; diff --git a/test/fixtures/proptypes/variable-declaration/output.js b/test/fixtures/proptypes/variable-declaration/output.js index cf5dc55..5000c24 100644 --- a/test/fixtures/proptypes/variable-declaration/output.js +++ b/test/fixtures/proptypes/variable-declaration/output.js @@ -1,5 +1,5 @@ +import clsx from 'clsx/lite'; import PropTypes from 'prop-types'; -import clsx from 'clsx'; function foo(props) { const p = props.position; diff --git a/test/fixtures/referenced-object/transformed-callee/code.js b/test/fixtures/referenced-object/transformed-callee/code.js index 4fab8b0..f155c62 100644 --- a/test/fixtures/referenced-object/transformed-callee/code.js +++ b/test/fixtures/referenced-object/transformed-callee/code.js @@ -1,4 +1,4 @@ -import clsx from 'clsx'; +import clsx from 'clsx/lite'; const stateClasses = { checked: isChecked, diff --git a/test/fixtures/referenced-object/transformed-callee/output.js b/test/fixtures/referenced-object/transformed-callee/output.js index f3230b9..535624f 100644 --- a/test/fixtures/referenced-object/transformed-callee/output.js +++ b/test/fixtures/referenced-object/transformed-callee/output.js @@ -1,10 +1,10 @@ 'use strict'; -var _clsx = _interopRequireDefault(require('clsx')); +var _lite = _interopRequireDefault(require('clsx/lite')); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -const stateClasses = (0, _clsx.default)(isChecked && 'checked'); -(0, _clsx.default)(stateClasses); +const stateClasses = (0, _lite.default)(isChecked && 'checked'); +(0, _lite.default)(stateClasses); diff --git a/yarn.lock b/yarn.lock index b876b21..18e2e61 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1967,7 +1967,7 @@ __metadata: babel-plugin-tester: ^7.0.3 benchmark: ^2.1.4 classnames: ^2.2.6 - clsx: ^1.0.4 + clsx: ^2.1.0 find-cache-dir: ^3.2.0 husky: ^4.2.3 jest: ^24.9.0 @@ -2316,10 +2316,10 @@ __metadata: languageName: node linkType: hard -"clsx@npm:^1.0.4": - version: 1.0.4 - resolution: "clsx@npm:1.0.4" - checksum: bd2a74dbc2fa10d44c5cb083d2ed65da098fd9bc502af767c723becd2f2acb9f09824aac13ed871e93d4afa7c8af5c68b9f3ec99581de157aae7aeee2aca7d2e +"clsx@npm:^2.1.0": + version: 2.1.0 + resolution: "clsx@npm:2.1.0" + checksum: 43fefc29b6b49c9476fbce4f8b1cc75c27b67747738e598e6651dd40d63692135dc60b18fa1c5b78a2a9ba8ae6fd2055a068924b94e20b42039bd53b78b98e1d languageName: node linkType: hard