Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 0 additions & 9 deletions .fatherrc.js

This file was deleted.

5 changes: 5 additions & 0 deletions .fatherrc.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import { defineConfig } from "father";

export default defineConfig({
plugins: ["@rc-component/father-plugin"],
});
8 changes: 8 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"endOfLine": "lf",
"semi": true,
"singleQuote": true,
"tabWidth": 2,
"trailingComma": "all",
"proseWrap": "never"
}
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
"rc-util": "^5.17.0"
},
"devDependencies": {
"@rc-component/father-plugin": "^1.0.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^14.0.0",
"@types/classnames": "^2.2.6",
Expand All @@ -59,7 +60,7 @@
"@types/warning": "^3.0.0",
"cross-env": "^7.0.0",
"dumi": "^1.1.38",
"father": "^2.13.2",
"father": "^4.0.0",
"husky": "^8.0.3",
"jest-environment-jsdom": "^29.5.0",
"jquery": "^3.3.1",
Expand Down
39 changes: 27 additions & 12 deletions src/Dropdown.tsx
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
import * as React from 'react';
import Trigger from '@rc-component/trigger';
import type { TriggerProps } from '@rc-component/trigger';
import classNames from 'classnames';
import Trigger from '@rc-component/trigger';
import type {
AnimationType,
ActionType,
AlignType,
AnimationType,
BuildInPlacements,
ActionType,
} from '@rc-component/trigger/lib/interface';
import Placements from './placements';
import classNames from 'classnames';
import { composeRef, supportRef } from 'rc-util/lib/ref';
import type { ReactElement } from 'react';
import React from 'react';
import useAccessibility from './hooks/useAccessibility';
import Overlay from './Overlay';
import { composeRef, supportRef } from 'rc-util/lib/ref';
import { ReactElement } from 'react';
import Placements from './placements';

export interface DropdownProps
extends Pick<
Expand Down Expand Up @@ -99,7 +99,14 @@ function Dropdown(props: DropdownProps, ref) {
}
};

const getMenuElement = () => <Overlay ref={overlayRef} overlay={overlay} prefixCls={prefixCls} arrow={arrow} />
const getMenuElement = () => (
<Overlay
ref={overlayRef}
overlay={overlay}
prefixCls={prefixCls}
arrow={arrow}
/>
);

const getMenuElementOrLambda = () => {
if (typeof overlay === 'function') {
Expand All @@ -126,9 +133,17 @@ function Dropdown(props: DropdownProps, ref) {
};

const childrenNode = React.cloneElement(children, {
className: classNames(children.props?.className, mergedVisible && getOpenClassName()),
ref: supportRef(children) ? composeRef(childRef, (children as ReactElement & {ref: React.Ref<HTMLElement>}).ref) : undefined,
})
className: classNames(
children.props?.className,
mergedVisible && getOpenClassName(),
),
ref: supportRef(children)
? composeRef(
childRef,
(children as ReactElement & { ref: React.Ref<HTMLElement> }).ref,
)
: undefined,
});

let triggerHideAction = hideAction;
if (!triggerHideAction && trigger.indexOf('contextMenu') !== -1) {
Expand Down
Loading