@douyinfe/semi-ui 2.1.0-beta.2 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/semi.css +14 -1
- package/dist/css/semi.min.css +1 -1
- package/dist/umd/semi-ui.js +263 -135
- package/dist/umd/semi-ui.js.map +1 -1
- package/dist/umd/semi-ui.min.js +1 -1
- package/dist/umd/semi-ui.min.js.map +1 -1
- package/lib/es/autoComplete/index.d.ts +36 -11
- package/lib/es/button/index.d.ts +0 -1
- package/lib/es/button/index.js +1 -2
- package/lib/es/calendar/dayCalendar.js +1 -1
- package/lib/es/calendar/monthCalendar.js +1 -1
- package/lib/es/calendar/rangeCalendar.js +1 -1
- package/lib/es/calendar/weekCalendar.js +1 -1
- package/lib/es/cascader/index.d.ts +1 -0
- package/lib/es/cascader/index.js +15 -3
- package/lib/es/collapse/index.js +1 -5
- package/lib/es/collapsible/index.js +4 -1
- package/lib/es/datePicker/yearAndMonth.d.ts +2 -2
- package/lib/es/datePicker/yearAndMonth.js +1 -1
- package/lib/es/form/baseForm.d.ts +4 -10
- package/lib/es/form/baseForm.js +1 -2
- package/lib/es/form/field.d.ts +4 -22
- package/lib/es/form/field.js +2 -18
- package/lib/es/form/hoc/withField.d.ts +1 -1
- package/lib/es/form/hoc/withField.js +0 -3
- package/lib/es/iconButton/index.d.ts +0 -1
- package/lib/es/iconButton/index.js +0 -1
- package/lib/es/locale/localeConsumer.d.ts +5 -5
- package/lib/es/modal/useModal/HookModal.d.ts +3 -2
- package/lib/es/modal/useModal/index.js +1 -1
- package/lib/es/notification/index.d.ts +1 -1
- package/lib/es/notification/index.js +1 -1
- package/lib/es/popconfirm/index.d.ts +5 -1
- package/lib/es/popconfirm/index.js +10 -4
- package/lib/es/popover/index.d.ts +3 -1
- package/lib/es/popover/index.js +4 -8
- package/lib/es/radio/context.d.ts +1 -1
- package/lib/es/radio/radio.d.ts +2 -2
- package/lib/es/radio/radioGroup.d.ts +4 -4
- package/lib/es/rating/index.d.ts +1 -1
- package/lib/es/resizeObserver/index.js +1 -0
- package/lib/es/scrollList/scrollItem.d.ts +12 -11
- package/lib/es/scrollList/scrollItem.js +8 -8
- package/lib/es/select/index.js +18 -11
- package/lib/es/select/option.js +4 -4
- package/lib/es/select/utils.d.ts +1 -1
- package/lib/es/select/utils.js +12 -8
- package/lib/es/sideSheet/SideSheetContent.d.ts +1 -1
- package/lib/es/sideSheet/index.d.ts +3 -3
- package/lib/es/steps/basicSteps.js +2 -2
- package/lib/es/steps/fillSteps.js +3 -3
- package/lib/es/steps/navSteps.js +2 -2
- package/lib/es/tabs/TabBar.d.ts +5 -3
- package/lib/es/tabs/TabBar.js +12 -4
- package/lib/es/tabs/TabPane.d.ts +2 -1
- package/lib/es/tabs/TabPane.js +3 -2
- package/lib/es/tabs/index.d.ts +3 -1
- package/lib/es/tabs/index.js +85 -16
- package/lib/es/tabs/interface.d.ts +6 -1
- package/lib/es/tagInput/index.d.ts +3 -0
- package/lib/es/tagInput/index.js +6 -1
- package/lib/es/timePicker/Combobox.d.ts +10 -4
- package/lib/es/timePicker/Combobox.js +2 -1
- package/lib/es/timePicker/TimePicker.d.ts +1 -1
- package/lib/es/tooltip/index.d.ts +3 -0
- package/lib/es/tooltip/index.js +3 -0
- package/lib/es/tree/interface.d.ts +2 -2
- package/lib/es/treeSelect/index.d.ts +2 -11
- package/lib/es/treeSelect/index.js +2 -1
- package/lib/es/typography/base.d.ts +1 -1
- package/lib/es/typography/paragraph.d.ts +1 -1
- package/lib/es/typography/text.d.ts +1 -1
- package/lib/es/typography/title.d.ts +1 -1
- package/lib/es/upload/fileCard.d.ts +3 -18
- package/lib/es/upload/index.d.ts +4 -57
- package/lib/es/upload/interface.d.ts +56 -0
- package/lib/es/upload/interface.js +1 -0
- package/package.json +9 -8
|
@@ -16,15 +16,16 @@ import { Motion } from '../_base/base';
|
|
|
16
16
|
export interface BaseDataItem extends DataItem {
|
|
17
17
|
label?: React.ReactNode;
|
|
18
18
|
}
|
|
19
|
-
export
|
|
19
|
+
export declare type AutoCompleteItems = BaseDataItem | string | number;
|
|
20
|
+
export interface AutoCompleteProps<T extends AutoCompleteItems> {
|
|
20
21
|
autoAdjustOverflow?: boolean;
|
|
21
22
|
autoFocus?: boolean;
|
|
22
23
|
className?: string;
|
|
23
24
|
children?: React.ReactNode;
|
|
24
|
-
data?:
|
|
25
|
+
data?: T[];
|
|
25
26
|
disabled?: boolean;
|
|
26
27
|
defaultOpen?: boolean;
|
|
27
|
-
defaultValue?:
|
|
28
|
+
defaultValue?: T;
|
|
28
29
|
defaultActiveFirstOption?: boolean;
|
|
29
30
|
dropdownMatchSelectWidth?: boolean;
|
|
30
31
|
dropdownClassName?: string;
|
|
@@ -41,7 +42,7 @@ export interface AutoCompleteProps<Item extends BaseDataItem = BaseDataItem> {
|
|
|
41
42
|
onBlur?: (e: React.FocusEvent) => void;
|
|
42
43
|
onChange?: (value: string | number) => void;
|
|
43
44
|
onSearch?: (inputValue: string) => void;
|
|
44
|
-
onSelect?: (value:
|
|
45
|
+
onSelect?: (value: T) => void;
|
|
45
46
|
onClear?: () => void;
|
|
46
47
|
onChangeWithObject?: boolean;
|
|
47
48
|
onSelectWithObject?: boolean;
|
|
@@ -49,8 +50,8 @@ export interface AutoCompleteProps<Item extends BaseDataItem = BaseDataItem> {
|
|
|
49
50
|
prefix?: React.ReactNode;
|
|
50
51
|
placeholder?: string;
|
|
51
52
|
position?: Position;
|
|
52
|
-
renderItem?: (option:
|
|
53
|
-
renderSelectedItem?: (option:
|
|
53
|
+
renderItem?: (option: T) => React.ReactNode;
|
|
54
|
+
renderSelectedItem?: (option: T) => string;
|
|
54
55
|
size?: 'small' | 'default' | 'large';
|
|
55
56
|
style?: React.CSSProperties;
|
|
56
57
|
suffix?: React.ReactNode;
|
|
@@ -74,7 +75,7 @@ interface AutoCompleteState {
|
|
|
74
75
|
rePosKey: number;
|
|
75
76
|
keyboardEventSet?: KeyboardEventType;
|
|
76
77
|
}
|
|
77
|
-
declare class AutoComplete extends BaseComponent<AutoCompleteProps
|
|
78
|
+
declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<AutoCompleteProps<T>, AutoCompleteState> {
|
|
78
79
|
static propTypes: {
|
|
79
80
|
autoFocus: PropTypes.Requireable<boolean>;
|
|
80
81
|
autoAdjustOverflow: PropTypes.Requireable<boolean>;
|
|
@@ -118,15 +119,39 @@ declare class AutoComplete extends BaseComponent<AutoCompleteProps, AutoComplete
|
|
|
118
119
|
zIndex: PropTypes.Requireable<number>;
|
|
119
120
|
};
|
|
120
121
|
static Option: typeof Option;
|
|
121
|
-
static defaultProps:
|
|
122
|
+
static defaultProps: {
|
|
123
|
+
stopPropagation: boolean;
|
|
124
|
+
motion: boolean;
|
|
125
|
+
zIndex: number;
|
|
126
|
+
position: "bottomLeft";
|
|
127
|
+
data: [];
|
|
128
|
+
showClear: boolean;
|
|
129
|
+
disabled: boolean;
|
|
130
|
+
size: "default";
|
|
131
|
+
onFocus: (...args: any[]) => void;
|
|
132
|
+
onSearch: (...args: any[]) => void;
|
|
133
|
+
onClear: (...args: any[]) => void;
|
|
134
|
+
onBlur: (...args: any[]) => void;
|
|
135
|
+
onSelect: (...args: any[]) => void;
|
|
136
|
+
onChange: (...args: any[]) => void;
|
|
137
|
+
onSelectWithObject: boolean;
|
|
138
|
+
onDropdownVisibleChange: (...args: any[]) => void;
|
|
139
|
+
defaultActiveFirstOption: boolean;
|
|
140
|
+
dropdownMatchSelectWidth: boolean;
|
|
141
|
+
loading: boolean;
|
|
142
|
+
maxHeight: number;
|
|
143
|
+
validateStatus: "default";
|
|
144
|
+
autoFocus: boolean;
|
|
145
|
+
emptyContent: null;
|
|
146
|
+
};
|
|
122
147
|
triggerRef: React.RefObject<HTMLDivElement> | null;
|
|
123
148
|
optionsRef: React.RefObject<HTMLDivElement> | null;
|
|
124
149
|
private clickOutsideHandler;
|
|
125
|
-
constructor(props: AutoCompleteProps);
|
|
126
|
-
get adapter(): AutoCompleteAdapter<AutoCompleteProps
|
|
150
|
+
constructor(props: AutoCompleteProps<T>);
|
|
151
|
+
get adapter(): AutoCompleteAdapter<AutoCompleteProps<T>, AutoCompleteState>;
|
|
127
152
|
componentDidMount(): void;
|
|
128
153
|
componentWillUnmount(): void;
|
|
129
|
-
componentDidUpdate(prevProps: AutoCompleteProps
|
|
154
|
+
componentDidUpdate(prevProps: AutoCompleteProps<T>, prevState: AutoCompleteState): void;
|
|
130
155
|
onSelect: (option: StateOptionItem, optionIndex: number, e: React.MouseEvent | React.KeyboardEvent) => void;
|
|
131
156
|
onSearch: (value: string) => void;
|
|
132
157
|
onBlur: (e: React.FocusEvent) => void;
|
package/lib/es/button/index.d.ts
CHANGED
|
@@ -14,7 +14,6 @@ declare class Button extends React.PureComponent<ButtonProps> {
|
|
|
14
14
|
loading: import("prop-types").Requireable<boolean>;
|
|
15
15
|
prefixCls: import("prop-types").Requireable<string>;
|
|
16
16
|
icon: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
|
|
17
|
-
iconType: import("prop-types").Requireable<import("prop-types").ReactElementLike>;
|
|
18
17
|
iconSize: import("prop-types").Requireable<string>;
|
|
19
18
|
noHorizontalPadding: import("prop-types").Requireable<string | boolean | any[]>;
|
|
20
19
|
children: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
|
package/lib/es/button/index.js
CHANGED
|
@@ -12,8 +12,7 @@ class Button extends React.PureComponent {
|
|
|
12
12
|
render() {
|
|
13
13
|
const props = _Object$assign({}, this.props);
|
|
14
14
|
|
|
15
|
-
const hasIcon = Boolean(props.icon
|
|
16
|
-
|
|
15
|
+
const hasIcon = Boolean(props.icon);
|
|
17
16
|
const isLoading = Boolean(props.loading);
|
|
18
17
|
const isDisabled = Boolean(props.disabled);
|
|
19
18
|
|
|
@@ -7,6 +7,7 @@ import Input from '../input/index';
|
|
|
7
7
|
import { PopoverProps } from '../popover/index';
|
|
8
8
|
import { CascaderData, Entities, Entity, Data } from './item';
|
|
9
9
|
import { Motion } from '../_base/base';
|
|
10
|
+
export { CascaderType, ShowNextType } from '@douyinfe/semi-foundation/lib/es/cascader/foundation';
|
|
10
11
|
export { CascaderData, Entity, Data, CascaderItemProps } from './item';
|
|
11
12
|
export interface ScrollPanelProps extends BasicScrollPanelProps {
|
|
12
13
|
activeNode: CascaderData;
|
package/lib/es/cascader/index.js
CHANGED
|
@@ -272,15 +272,27 @@ class Cascader extends BaseComponent {
|
|
|
272
272
|
this.renderCustomTrigger = () => {
|
|
273
273
|
const {
|
|
274
274
|
disabled,
|
|
275
|
-
triggerRender
|
|
275
|
+
triggerRender,
|
|
276
|
+
multiple,
|
|
277
|
+
autoMergeValue
|
|
276
278
|
} = this.props;
|
|
277
279
|
const {
|
|
278
280
|
selectedKeys,
|
|
279
281
|
inputValue,
|
|
280
|
-
inputPlaceHolder
|
|
282
|
+
inputPlaceHolder,
|
|
283
|
+
mergedCheckedKeys,
|
|
284
|
+
checkedKeys
|
|
281
285
|
} = this.state;
|
|
286
|
+
let realValue;
|
|
287
|
+
|
|
288
|
+
if (multiple) {
|
|
289
|
+
realValue = autoMergeValue ? mergedCheckedKeys : checkedKeys;
|
|
290
|
+
} else {
|
|
291
|
+
realValue = [...selectedKeys][0];
|
|
292
|
+
}
|
|
293
|
+
|
|
282
294
|
return /*#__PURE__*/React.createElement(Trigger, {
|
|
283
|
-
value:
|
|
295
|
+
value: realValue,
|
|
284
296
|
inputValue: inputValue,
|
|
285
297
|
onChange: this.handleInputChange,
|
|
286
298
|
onClear: this.handleClear,
|
package/lib/es/collapse/index.js
CHANGED
|
@@ -47,12 +47,8 @@ class Collapse extends BaseComponent {
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
get adapter() {
|
|
50
|
-
var _this = this;
|
|
51
|
-
|
|
52
50
|
return _Object$assign(_Object$assign({}, super.adapter), {
|
|
53
|
-
handleChange:
|
|
54
|
-
return _this.props.onChange(...arguments);
|
|
55
|
-
},
|
|
51
|
+
handleChange: (activeKey, e) => this.props.onChange(activeKey, e),
|
|
56
52
|
addActiveKey: activeSet => this.setState({
|
|
57
53
|
activeSet
|
|
58
54
|
})
|
|
@@ -32,8 +32,8 @@ declare class YearAndMonth extends BaseComponent<YearAndMonthProps, YearAndMonth
|
|
|
32
32
|
onSelect: (...args: any[]) => void;
|
|
33
33
|
};
|
|
34
34
|
foundation: YearAndMonthFoundation;
|
|
35
|
-
yearRef: React.RefObject<ScrollItem
|
|
36
|
-
monthRef: React.RefObject<ScrollItem
|
|
35
|
+
yearRef: React.RefObject<ScrollItem<YearScrollItem>>;
|
|
36
|
+
monthRef: React.RefObject<ScrollItem<MonthScrollItem>>;
|
|
37
37
|
constructor(props: YearAndMonthProps);
|
|
38
38
|
get adapter(): YearAndMonthAdapter;
|
|
39
39
|
static getDerivedStateFromProps(props: YearAndMonthProps, state: YearAndMonthState): Partial<YearAndMonthFoundationState>;
|
|
@@ -220,7 +220,7 @@ class YearAndMonth extends BaseComponent {
|
|
|
220
220
|
className: prefix
|
|
221
221
|
}, /*#__PURE__*/React.createElement(IconButton, {
|
|
222
222
|
noHorizontalPadding: false,
|
|
223
|
-
|
|
223
|
+
icon: /*#__PURE__*/React.createElement(IconChevronLeft, {
|
|
224
224
|
size: iconSize
|
|
225
225
|
}),
|
|
226
226
|
size: buttonSize,
|
|
@@ -116,19 +116,13 @@ declare class Form extends BaseComponent<BaseFormProps, BaseFormState> {
|
|
|
116
116
|
static Radio: React.ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../radio").RadioProps & import("./interface").RCIncludeType>;
|
|
117
117
|
static RadioGroup: React.ComponentType<import("utility-types").Subtract<import("../radio").RadioGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
118
118
|
static DatePicker: React.ComponentType<import("utility-types").Subtract<import("../datePicker").DatePickerProps & React.RefAttributes<import("../datePicker/datePicker").default>, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
119
|
-
static TimePicker: React.ComponentType<import("utility-types").Subtract<import("../timePicker").TimePickerProps
|
|
120
|
-
children?: React.ReactNode;
|
|
121
|
-
}), import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
119
|
+
static TimePicker: React.ComponentType<import("utility-types").Subtract<import("../timePicker").TimePickerProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
122
120
|
static Switch: React.ComponentType<import("utility-types").Subtract<import("../switch").SwitchProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
123
121
|
static Slider: React.ComponentType<import("utility-types").Subtract<import("../slider").SliderProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
124
|
-
static TreeSelect: React.ComponentType<import("utility-types").Subtract<import("../treeSelect").TreeSelectProps
|
|
125
|
-
|
|
126
|
-
}), import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
127
|
-
static Cascader: React.ComponentType<import("utility-types").Subtract<import("../cascader").CascaderProps | (import("../cascader").CascaderProps & {
|
|
128
|
-
children?: React.ReactNode;
|
|
129
|
-
}), import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
122
|
+
static TreeSelect: React.ComponentType<import("utility-types").Subtract<import("../treeSelect").TreeSelectProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
123
|
+
static Cascader: React.ComponentType<import("utility-types").Subtract<import("../cascader").CascaderProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
130
124
|
static Rating: React.ComponentType<import("utility-types").Subtract<import("../rating").RatingProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
131
|
-
static AutoComplete: React.ComponentType<import("utility-types").Subtract<import("../autoComplete").AutoCompleteProps<import("../autoComplete").
|
|
125
|
+
static AutoComplete: React.ComponentType<import("utility-types").Subtract<import("../autoComplete").AutoCompleteProps<import("../autoComplete").AutoCompleteItems>, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
132
126
|
static Upload: React.ComponentType<import("utility-types").Subtract<import("../upload").UploadProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
133
127
|
static TagInput: React.ComponentType<import("utility-types").Subtract<import("../tagInput").TagInputProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
134
128
|
static Slot: (props: import("./slot").SlotProps) => JSX.Element;
|
package/lib/es/form/baseForm.js
CHANGED
|
@@ -49,8 +49,7 @@ class Form extends BaseComponent {
|
|
|
49
49
|
this.state = {
|
|
50
50
|
formId: getUuidv4()
|
|
51
51
|
};
|
|
52
|
-
warning(
|
|
53
|
-
props.component && props.render, '[Semi Form] You should not use <Form component> and <Form render> in ths same time; <Form render> will be ignored');
|
|
52
|
+
warning(Boolean(props.component && props.render), '[Semi Form] You should not use <Form component> and <Form render> in ths same time; <Form render> will be ignored');
|
|
54
53
|
warning(props.component && props.children && !isEmptyChildren(props.children), '[Semi Form] You should not use <Form component> and <Form>{children}</Form> in ths same time; <Form>{children}</Form> will be ignored');
|
|
55
54
|
warning(props.render && props.children && !isEmptyChildren(props.children), '[Semi Form] You should not use <Form render> and <Form>{children}</Form> in ths same time; <Form>{children}</Form> will be ignored');
|
|
56
55
|
this.submit = _bindInstanceProperty(_context = this.submit).call(_context, this);
|
package/lib/es/form/field.d.ts
CHANGED
|
@@ -68,29 +68,11 @@ declare const FormRadio: import("react").ComponentType<import("utility-types").S
|
|
|
68
68
|
declare const FormDatePicker: import("react").ComponentType<import("utility-types").Subtract<import("../datePicker/datePicker").DatePickerProps & import("react").RefAttributes<import("../datePicker/datePicker").default>, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
69
69
|
declare const FormSwitch: import("react").ComponentType<import("utility-types").Subtract<import("../switch/index").SwitchProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
70
70
|
declare const FormSlider: import("react").ComponentType<import("utility-types").Subtract<import("../slider/index").SliderProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
* 1. TimePicker: The propTypes of the locale is defined as object (it is not necessary and too troublesome to write a complete shapeOf),
|
|
75
|
-
* but the interface defines a complete type, the two cannot match, and ts will report an error, so skip it here.
|
|
76
|
-
*
|
|
77
|
-
* 2. Cascader: treeData { label, value } define in PropTypes.shapeOf alreaady declare isRequired, ts still throw error
|
|
78
|
-
* 【Property is optional in type “InferProps<{ value: Validator<string | number>; label: Validator<any>; }>” but required in type CascaderData】
|
|
79
|
-
* skip it here.
|
|
80
|
-
* 3. TreeSelect: value same as cascader, skip it here
|
|
81
|
-
*
|
|
82
|
-
*/
|
|
83
|
-
declare const FormTimePicker: import("react").ComponentType<import("utility-types").Subtract<import("../timePicker/TimePicker").TimePickerProps | (import("../timePicker/TimePicker").TimePickerProps & {
|
|
84
|
-
children?: import("react").ReactNode;
|
|
85
|
-
}), import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
86
|
-
declare const FormTreeSelect: import("react").ComponentType<import("utility-types").Subtract<import("../treeSelect/index").TreeSelectProps | (import("../treeSelect/index").TreeSelectProps & {
|
|
87
|
-
children?: import("react").ReactNode;
|
|
88
|
-
}), import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
89
|
-
declare const FormCascader: import("react").ComponentType<import("utility-types").Subtract<import("../cascader/index").CascaderProps | (import("../cascader/index").CascaderProps & {
|
|
90
|
-
children?: import("react").ReactNode;
|
|
91
|
-
}), import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
71
|
+
declare const FormTimePicker: import("react").ComponentType<import("utility-types").Subtract<import("../timePicker/TimePicker").TimePickerProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
72
|
+
declare const FormTreeSelect: import("react").ComponentType<import("utility-types").Subtract<import("../treeSelect/index").TreeSelectProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
73
|
+
declare const FormCascader: import("react").ComponentType<import("utility-types").Subtract<import("../cascader/index").CascaderProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
92
74
|
declare const FormRating: import("react").ComponentType<import("utility-types").Subtract<import("../rating/index").RatingProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
93
|
-
declare const FormAutoComplete: import("react").ComponentType<import("utility-types").Subtract<import("../autoComplete/index").AutoCompleteProps<import("../autoComplete/index").
|
|
75
|
+
declare const FormAutoComplete: import("react").ComponentType<import("utility-types").Subtract<import("../autoComplete/index").AutoCompleteProps<import("../autoComplete/index").AutoCompleteItems>, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
94
76
|
declare const FormUpload: import("react").ComponentType<import("utility-types").Subtract<import("../upload/index").UploadProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
95
77
|
declare const FormTagInput: import("react").ComponentType<import("utility-types").Subtract<import("../tagInput/index").TagInputProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps>;
|
|
96
78
|
export { FormInput, FormInputNumber, FormTextArea, FormSelect, FormCheckboxGroup, FormCheckbox, FormRadioGroup, FormRadio, FormDatePicker, FormSwitch, FormSlider, FormTimePicker, FormTreeSelect, FormCascader, FormRating, FormAutoComplete, FormUpload, FormTagInput };
|
package/lib/es/form/field.js
CHANGED
|
@@ -51,24 +51,8 @@ const FormSwitch = withField(Switch, {
|
|
|
51
51
|
valueKey: 'checked'
|
|
52
52
|
});
|
|
53
53
|
const FormSlider = withField(Slider);
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
*
|
|
57
|
-
* 1. TimePicker: The propTypes of the locale is defined as object (it is not necessary and too troublesome to write a complete shapeOf),
|
|
58
|
-
* but the interface defines a complete type, the two cannot match, and ts will report an error, so skip it here.
|
|
59
|
-
*
|
|
60
|
-
* 2. Cascader: treeData { label, value } define in PropTypes.shapeOf alreaady declare isRequired, ts still throw error
|
|
61
|
-
* 【Property is optional in type “InferProps<{ value: Validator<string | number>; label: Validator<any>; }>” but required in type CascaderData】
|
|
62
|
-
* skip it here.
|
|
63
|
-
* 3. TreeSelect: value same as cascader, skip it here
|
|
64
|
-
*
|
|
65
|
-
*/
|
|
66
|
-
// @ts-ignore-next-line
|
|
67
|
-
|
|
68
|
-
const FormTimePicker = withField(TimePicker); // @ts-ignore-next-line
|
|
69
|
-
|
|
70
|
-
const FormTreeSelect = withField(TreeSelect); // @ts-ignore-next-line
|
|
71
|
-
|
|
54
|
+
const FormTimePicker = withField(TimePicker);
|
|
55
|
+
const FormTreeSelect = withField(TreeSelect);
|
|
72
56
|
const FormCascader = withField(Cascader);
|
|
73
57
|
const FormRating = withField(Rating);
|
|
74
58
|
const FormAutoComplete = withField(AutoComplete, {
|
|
@@ -8,5 +8,5 @@ import { Subtract } from 'utility-types';
|
|
|
8
8
|
* 2. Insert <Label>
|
|
9
9
|
* 3. Insert <ErrorMessage>
|
|
10
10
|
*/
|
|
11
|
-
declare function withField<C extends React.
|
|
11
|
+
declare function withField<C extends React.ElementType, T extends Subtract<React.ComponentProps<C>, CommonexcludeType> & CommonFieldProps, R extends React.ComponentType<T>>(Component: C, opts?: WithFieldOption): R;
|
|
12
12
|
export default withField;
|
|
@@ -5,8 +5,6 @@ import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance
|
|
|
5
5
|
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
|
6
6
|
import _Object$values from "@babel/runtime-corejs3/core-js-stable/object/values";
|
|
7
7
|
|
|
8
|
-
/* argus-disable unPkgSensitiveInfo */
|
|
9
|
-
|
|
10
8
|
/* eslint-disable max-lines-per-function, react-hooks/rules-of-hooks, prefer-const, max-len */
|
|
11
9
|
import React, { useState, useLayoutEffect, useMemo, useRef, forwardRef } from 'react';
|
|
12
10
|
import classNames from 'classnames';
|
|
@@ -507,7 +505,6 @@ function withField(Component, opts) {
|
|
|
507
505
|
return useMemo(() => FieldComponent, [...shouldUpdate]);
|
|
508
506
|
} else {
|
|
509
507
|
// Some Custom Component with inner state shouldn't be memo, otherwise the component will not updated when the internal state is updated
|
|
510
|
-
// Fixed issue 328
|
|
511
508
|
return FieldComponent;
|
|
512
509
|
}
|
|
513
510
|
};
|
|
@@ -32,7 +32,6 @@ declare class IconButton extends PureComponent<IconButtonProps> {
|
|
|
32
32
|
loading: PropTypes.Requireable<boolean>;
|
|
33
33
|
prefixCls: PropTypes.Requireable<string>;
|
|
34
34
|
icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
35
|
-
iconType: PropTypes.Requireable<PropTypes.ReactElementLike>;
|
|
36
35
|
iconSize: PropTypes.Requireable<string>;
|
|
37
36
|
noHorizontalPadding: PropTypes.Requireable<string | boolean | any[]>;
|
|
38
37
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
@@ -108,7 +108,6 @@ IconButton.propTypes = {
|
|
|
108
108
|
loading: PropTypes.bool,
|
|
109
109
|
prefixCls: PropTypes.string,
|
|
110
110
|
icon: PropTypes.oneOfType([PropTypes.object, PropTypes.string, PropTypes.node]),
|
|
111
|
-
iconType: PropTypes.element,
|
|
112
111
|
iconSize: PropTypes.oneOf(iconSizes),
|
|
113
112
|
noHorizontalPadding: PropTypes.oneOfType([PropTypes.bool, PropTypes.string, PropTypes.array]),
|
|
114
113
|
children: PropTypes.node,
|
|
@@ -2,12 +2,12 @@ import React, { Component } from 'react';
|
|
|
2
2
|
import { Locale as dateFns } from 'date-fns';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { Locale } from './interface';
|
|
5
|
-
declare type ChildrenRender = (componentLocal:
|
|
6
|
-
export interface LocaleConsumerProps {
|
|
5
|
+
declare type ChildrenRender<T> = (componentLocal: T, localeCode: string, dateFnsLocale: dateFns) => React.ReactNode;
|
|
6
|
+
export interface LocaleConsumerProps<T> {
|
|
7
7
|
componentName: string;
|
|
8
|
-
children?: ChildrenRender
|
|
8
|
+
children?: ChildrenRender<T>;
|
|
9
9
|
}
|
|
10
|
-
export default class LocaleConsumer extends Component<LocaleConsumerProps
|
|
10
|
+
export default class LocaleConsumer<T> extends Component<LocaleConsumerProps<T>> {
|
|
11
11
|
static propTypes: {
|
|
12
12
|
componentName: PropTypes.Validator<string>;
|
|
13
13
|
children: PropTypes.Requireable<any>;
|
|
@@ -15,7 +15,7 @@ export default class LocaleConsumer extends Component<LocaleConsumerProps> {
|
|
|
15
15
|
static defaultProps: {
|
|
16
16
|
componentName: string;
|
|
17
17
|
};
|
|
18
|
-
renderChildren(localeData: Locale, children: ChildrenRender): React.ReactNode;
|
|
18
|
+
renderChildren(localeData: Locale, children: ChildrenRender<T>): React.ReactNode;
|
|
19
19
|
render(): JSX.Element;
|
|
20
20
|
}
|
|
21
21
|
export {};
|
|
@@ -6,8 +6,9 @@ interface HookModalProps {
|
|
|
6
6
|
config: ConfirmProps;
|
|
7
7
|
motion?: Motion;
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
export interface HookModalRef {
|
|
10
10
|
destroy: () => void;
|
|
11
11
|
update: (newConfig: ConfirmProps) => void;
|
|
12
|
-
}
|
|
12
|
+
}
|
|
13
|
+
declare const _default: React.ForwardRefExoticComponent<HookModalProps & React.RefAttributes<HookModalRef>>;
|
|
13
14
|
export default _default;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import HookModal from './HookModal';
|
|
4
|
-
import { withConfirm, withInfo, withSuccess,
|
|
4
|
+
import { withConfirm, withError, withInfo, withSuccess, withWarning } from '../confirm';
|
|
5
5
|
let uuid = 0;
|
|
6
6
|
|
|
7
7
|
function usePatchElement() {
|
|
@@ -43,7 +43,7 @@ declare class NotificationList extends BaseComponent<NotificationListProps, Noti
|
|
|
43
43
|
static destroyAll(): void;
|
|
44
44
|
static config(opts: ConfigProps): void;
|
|
45
45
|
add: (noticeOpts: NoticeProps) => any;
|
|
46
|
-
remove: (id: string) => void;
|
|
46
|
+
remove: (id: string | number) => void;
|
|
47
47
|
destroyAll: () => any;
|
|
48
48
|
renderNoticeInPosition: (notices: NoticeInstance[], position: NoticePosition, removedItems?: NoticeInstance[]) => JSX.Element;
|
|
49
49
|
setPosInStyle(noticeInstance: NoticeInstance): {};
|
|
@@ -39,7 +39,7 @@ class NotificationList extends BaseComponent {
|
|
|
39
39
|
this.add = noticeOpts => this.foundation.addNotice(noticeOpts);
|
|
40
40
|
|
|
41
41
|
this.remove = id => {
|
|
42
|
-
this.foundation.removeNotice(id);
|
|
42
|
+
this.foundation.removeNotice(String(id));
|
|
43
43
|
};
|
|
44
44
|
|
|
45
45
|
this.destroyAll = () => this.foundation.destroyAll();
|
|
@@ -29,6 +29,7 @@ export interface PopconfirmProps extends PopoverProps {
|
|
|
29
29
|
onCancel?: (e: React.MouseEvent) => void;
|
|
30
30
|
onConfirm?: (e: React.MouseEvent) => void;
|
|
31
31
|
onVisibleChange?: (visible: boolean) => void;
|
|
32
|
+
onClickOutSide?: (e: React.MouseEvent) => void;
|
|
32
33
|
}
|
|
33
34
|
export interface PopconfirmState {
|
|
34
35
|
visible: boolean;
|
|
@@ -50,13 +51,14 @@ export default class Popconfirm extends BaseComponent<PopconfirmProps, Popconfir
|
|
|
50
51
|
cancelType: PropTypes.Requireable<string>;
|
|
51
52
|
onCancel: PropTypes.Requireable<(...args: any[]) => any>;
|
|
52
53
|
onConfirm: PropTypes.Requireable<(...args: any[]) => any>;
|
|
53
|
-
|
|
54
|
+
onClickOutSide: PropTypes.Requireable<(...args: any[]) => any>;
|
|
54
55
|
onVisibleChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
55
56
|
visible: PropTypes.Requireable<boolean>;
|
|
56
57
|
defaultVisible: PropTypes.Requireable<boolean>;
|
|
57
58
|
okButtonProps: PropTypes.Requireable<object>;
|
|
58
59
|
cancelButtonProps: PropTypes.Requireable<object>;
|
|
59
60
|
stopPropagation: PropTypes.Requireable<string | boolean>;
|
|
61
|
+
zIndex: PropTypes.Requireable<number>;
|
|
60
62
|
trigger: PropTypes.Requireable<string>;
|
|
61
63
|
position: PropTypes.Requireable<string>;
|
|
62
64
|
};
|
|
@@ -72,6 +74,7 @@ export default class Popconfirm extends BaseComponent<PopconfirmProps, Popconfir
|
|
|
72
74
|
zIndex: number;
|
|
73
75
|
onCancel: (...args: any[]) => void;
|
|
74
76
|
onConfirm: (...args: any[]) => void;
|
|
77
|
+
onClickOutSide: (...args: any[]) => void;
|
|
75
78
|
};
|
|
76
79
|
constructor(props: PopconfirmProps);
|
|
77
80
|
static getDerivedStateFromProps(props: PopconfirmProps, state: PopconfirmState): Partial<PopconfirmState>;
|
|
@@ -79,6 +82,7 @@ export default class Popconfirm extends BaseComponent<PopconfirmProps, Popconfir
|
|
|
79
82
|
handleCancel: (e: React.MouseEvent) => void;
|
|
80
83
|
handleConfirm: (e: React.MouseEvent) => void;
|
|
81
84
|
handleVisibleChange: (visible: boolean) => void;
|
|
85
|
+
handleClickOutSide: (e: React.MouseEvent) => any;
|
|
82
86
|
stopImmediatePropagation: (e: React.SyntheticEvent) => void;
|
|
83
87
|
renderControls(): JSX.Element;
|
|
84
88
|
renderConfirmPopCard(): JSX.Element;
|
|
@@ -38,6 +38,8 @@ export default class Popconfirm extends BaseComponent {
|
|
|
38
38
|
|
|
39
39
|
this.handleVisibleChange = visible => this.foundation.handleVisibleChange(visible);
|
|
40
40
|
|
|
41
|
+
this.handleClickOutSide = e => this.foundation.handleClickOutSide(e);
|
|
42
|
+
|
|
41
43
|
this.stopImmediatePropagation = e => e && e.nativeEvent && e.nativeEvent.stopImmediatePropagation();
|
|
42
44
|
|
|
43
45
|
this.state = {
|
|
@@ -66,7 +68,8 @@ export default class Popconfirm extends BaseComponent {
|
|
|
66
68
|
}),
|
|
67
69
|
notifyConfirm: e => this.props.onConfirm(e),
|
|
68
70
|
notifyCancel: e => this.props.onCancel(e),
|
|
69
|
-
notifyVisibleChange: visible => this.props.onVisibleChange(visible)
|
|
71
|
+
notifyVisibleChange: visible => this.props.onVisibleChange(visible),
|
|
72
|
+
notifyClickOutSide: e => this.props.onClickOutSide(e)
|
|
70
73
|
});
|
|
71
74
|
}
|
|
72
75
|
|
|
@@ -165,7 +168,8 @@ export default class Popconfirm extends BaseComponent {
|
|
|
165
168
|
const popContent = this.renderConfirmPopCard();
|
|
166
169
|
const popProps = {
|
|
167
170
|
onVisibleChange: this.handleVisibleChange,
|
|
168
|
-
className: cssClasses.POPOVER
|
|
171
|
+
className: cssClasses.POPOVER,
|
|
172
|
+
onClickOutSide: this.handleClickOutSide
|
|
169
173
|
};
|
|
170
174
|
|
|
171
175
|
if (this.isControlled('visible')) {
|
|
@@ -196,13 +200,14 @@ Popconfirm.propTypes = {
|
|
|
196
200
|
cancelType: PropTypes.string,
|
|
197
201
|
onCancel: PropTypes.func,
|
|
198
202
|
onConfirm: PropTypes.func,
|
|
199
|
-
|
|
203
|
+
onClickOutSide: PropTypes.func,
|
|
200
204
|
onVisibleChange: PropTypes.func,
|
|
201
205
|
visible: PropTypes.bool,
|
|
202
206
|
defaultVisible: PropTypes.bool,
|
|
203
207
|
okButtonProps: PropTypes.object,
|
|
204
208
|
cancelButtonProps: PropTypes.object,
|
|
205
209
|
stopPropagation: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
|
|
210
|
+
zIndex: PropTypes.number,
|
|
206
211
|
// private
|
|
207
212
|
trigger: PropTypes.string,
|
|
208
213
|
position: PropTypes.string
|
|
@@ -221,5 +226,6 @@ Popconfirm.defaultProps = {
|
|
|
221
226
|
prefixCls: cssClasses.PREFIX,
|
|
222
227
|
zIndex: numbers.DEFAULT_Z_INDEX,
|
|
223
228
|
onCancel: noop,
|
|
224
|
-
onConfirm: noop
|
|
229
|
+
onConfirm: noop,
|
|
230
|
+
onClickOutSide: noop
|
|
225
231
|
};
|
|
@@ -22,6 +22,7 @@ export interface PopoverProps extends BaseProps {
|
|
|
22
22
|
trigger?: Trigger;
|
|
23
23
|
contentClassName?: string | any[];
|
|
24
24
|
onVisibleChange?: (visible: boolean) => void;
|
|
25
|
+
onClickOutSide?: (e: React.MouseEvent) => void;
|
|
25
26
|
showArrow?: boolean;
|
|
26
27
|
spacing?: number;
|
|
27
28
|
stopPropagation?: boolean | string;
|
|
@@ -50,6 +51,7 @@ declare class Popover extends React.PureComponent<PopoverProps, PopoverState> {
|
|
|
50
51
|
trigger: PropTypes.Validator<"hover" | "focus" | "click" | "custom">;
|
|
51
52
|
contentClassName: PropTypes.Requireable<string | any[]>;
|
|
52
53
|
onVisibleChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
54
|
+
onClickOutSide: PropTypes.Requireable<(...args: any[]) => any>;
|
|
53
55
|
style: PropTypes.Requireable<object>;
|
|
54
56
|
spacing: PropTypes.Requireable<number>;
|
|
55
57
|
zIndex: PropTypes.Requireable<number>;
|
|
@@ -79,8 +81,8 @@ declare class Popover extends React.PureComponent<PopoverProps, PopoverState> {
|
|
|
79
81
|
okText: string;
|
|
80
82
|
position: string;
|
|
81
83
|
prefixCls: string;
|
|
84
|
+
onClickOutSide: (...args: any[]) => void;
|
|
82
85
|
};
|
|
83
|
-
constructor(props: PopoverProps);
|
|
84
86
|
renderPopCard(): JSX.Element;
|
|
85
87
|
render(): JSX.Element;
|
|
86
88
|
}
|
package/lib/es/popover/index.js
CHANGED
|
@@ -21,17 +21,11 @@ import { cssClasses, strings, numbers } from '@douyinfe/semi-foundation/lib/es/p
|
|
|
21
21
|
import Tooltip from '../tooltip/index';
|
|
22
22
|
import Arrow from './Arrow';
|
|
23
23
|
import '@douyinfe/semi-foundation/lib/es/popover/popover.css';
|
|
24
|
+
import { noop } from 'lodash-es';
|
|
24
25
|
const positionSet = strings.POSITION_SET;
|
|
25
26
|
const triggerSet = strings.TRIGGER_SET;
|
|
26
27
|
|
|
27
28
|
class Popover extends React.PureComponent {
|
|
28
|
-
constructor(props) {
|
|
29
|
-
super(props);
|
|
30
|
-
this.state = {
|
|
31
|
-
popConfirmVisible: false
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
|
|
35
29
|
renderPopCard() {
|
|
36
30
|
const {
|
|
37
31
|
content,
|
|
@@ -107,6 +101,7 @@ Popover.propTypes = {
|
|
|
107
101
|
trigger: PropTypes.oneOf(triggerSet).isRequired,
|
|
108
102
|
contentClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),
|
|
109
103
|
onVisibleChange: PropTypes.func,
|
|
104
|
+
onClickOutSide: PropTypes.func,
|
|
110
105
|
style: PropTypes.object,
|
|
111
106
|
spacing: PropTypes.number,
|
|
112
107
|
zIndex: PropTypes.number,
|
|
@@ -130,6 +125,7 @@ Popover.defaultProps = {
|
|
|
130
125
|
cancelText: 'No',
|
|
131
126
|
okText: 'Yes',
|
|
132
127
|
position: 'bottom',
|
|
133
|
-
prefixCls: cssClasses.PREFIX
|
|
128
|
+
prefixCls: cssClasses.PREFIX,
|
|
129
|
+
onClickOutSide: noop
|
|
134
130
|
};
|
|
135
131
|
export default Popover;
|