Skip to content

Commit 31f867c

Browse files
authored
perf: uninstall classnames, install clsx (#11)
1 parent 90347ed commit 31f867c

File tree

6 files changed

+16
-18
lines changed

6 files changed

+16
-18
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ es
2727
coverage
2828
yarn.lock
2929
package-lock.json
30+
pnpm-lock.yaml
3031
bun.lockb
3132
.vscode
3233

package.json

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
2-
"name": "@rc-component/trigger",
3-
"version": "3.5.2",
4-
"description": "base abstract trigger component for react",
2+
"name": "@rc-component/listy",
3+
"version": "1.0.0",
4+
"description": "base abstract listy component for react",
55
"engines": {
66
"node": ">=8.x"
77
},
@@ -44,15 +44,14 @@
4444
"@rc-component/motion": "^1.1.4",
4545
"@rc-component/portal": "^2.0.0",
4646
"@rc-component/resize-observer": "^1.0.0",
47-
"@rc-component/util": "^1.2.1",
48-
"classnames": "^2.3.2"
47+
"@rc-component/util": "^1.3.0",
48+
"clsx": "^2.1.1"
4949
},
5050
"devDependencies": {
5151
"@rc-component/father-plugin": "^2.0.0",
5252
"@rc-component/np": "^1.0.3",
5353
"@testing-library/jest-dom": "^6.1.4",
5454
"@testing-library/react": "^16.0.0",
55-
"@types/classnames": "^2.2.10",
5655
"@types/jest": "^30.0.0",
5756
"@types/node": "^24.0.3",
5857
"@types/react": "^19.1.2",

src/Popup/Arrow.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import classNames from 'classnames';
1+
import { clsx } from 'clsx';
22
import * as React from 'react';
33
import type { AlignType, ArrowPos, ArrowTypeOuter } from '../interface';
44

@@ -57,7 +57,7 @@ export default function Arrow(props: ArrowProps) {
5757
return (
5858
<div
5959
ref={arrowRef}
60-
className={classNames(`${prefixCls}-arrow`, className)}
60+
className={clsx(`${prefixCls}-arrow`, className)}
6161
style={alignStyle}
6262
>
6363
{content}

src/Popup/Mask.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import classNames from 'classnames';
1+
import { clsx } from 'clsx';
22
import type { CSSMotionProps } from '@rc-component/motion';
33
import CSSMotion from '@rc-component/motion';
44
import * as React from 'react';
@@ -36,7 +36,7 @@ export default function Mask(props: MaskProps) {
3636
{({ className }) => (
3737
<div
3838
style={{ zIndex }}
39-
className={classNames(
39+
className={clsx(
4040
`${prefixCls}-mask`,
4141
mobile && `${prefixCls}-mobile-mask`,
4242
className,

src/Popup/index.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import classNames from 'classnames';
1+
import { clsx } from 'clsx';
22
import type { CSSMotionProps } from '@rc-component/motion';
33
import CSSMotion from '@rc-component/motion';
44
import ResizeObserver from '@rc-component/resize-observer';
@@ -270,7 +270,7 @@ const Popup = React.forwardRef<HTMLDivElement, PopupProps>((props, ref) => {
270270
{ className: motionClassName, style: motionStyle },
271271
motionRef,
272272
) => {
273-
const cls = classNames(prefixCls, motionClassName, className, {
273+
const cls = clsx(prefixCls, motionClassName, className, {
274274
[`${prefixCls}-mobile`]: isMobile,
275275
});
276276

src/index.tsx

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import Portal from '@rc-component/portal';
2-
import classNames from 'classnames';
2+
import { clsx } from 'clsx';
33
import type { CSSMotionProps } from '@rc-component/motion';
44
import ResizeObserver from '@rc-component/resize-observer';
55
import { isDOM } from '@rc-component/util/lib/Dom/findDOMNode';
@@ -198,6 +198,7 @@ export function generateTrigger(
198198
const subPopupElements = React.useRef<Record<string, HTMLElement>>({});
199199

200200
const parentContext = React.useContext(TriggerContext);
201+
201202
const context = React.useMemo<TriggerContextProps>(() => {
202203
return {
203204
registerSubPopup: (id, subPopupEle) => {
@@ -427,7 +428,7 @@ export function generateTrigger(
427428
alignPoint,
428429
);
429430

430-
return classNames(baseClassName, getPopupClassNameFromAlign?.(alignInfo));
431+
return clsx(baseClassName, getPopupClassNameFromAlign?.(alignInfo));
431432
}, [
432433
alignInfo,
433434
getPopupClassNameFromAlign,
@@ -727,10 +728,7 @@ export function generateTrigger(
727728
ref={setPopupRef}
728729
prefixCls={prefixCls}
729730
popup={popup}
730-
className={classNames(
731-
popupClassName,
732-
!isMobile && alignedClassName,
733-
)}
731+
className={clsx(popupClassName, !isMobile && alignedClassName)}
734732
style={popupStyle}
735733
target={targetEle}
736734
onMouseEnter={onPopupMouseEnter}

0 commit comments

Comments
 (0)