@douyinfe/semi-ui 2.22.2 → 2.23.0-alpha.0
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 +8 -1
- package/dist/css/semi.min.css +1 -1
- package/dist/umd/semi-ui.js +278 -233
- 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/cjs/anchor/index.d.ts +1 -1
- package/lib/cjs/autoComplete/index.d.ts +1 -1
- package/lib/cjs/button/Button.d.ts +1 -1
- package/lib/cjs/button/buttonGroup.d.ts +1 -1
- package/lib/cjs/button/index.d.ts +1 -1
- package/lib/cjs/datePicker/datePicker.d.ts +1 -1
- package/lib/cjs/form/baseForm.d.ts +5 -5
- package/lib/cjs/form/errorMessage.d.ts +2 -1
- package/lib/cjs/form/field.d.ts +1 -1
- package/lib/cjs/form/hooks/useFormState.d.ts +2 -1
- package/lib/cjs/form/interface.d.ts +15 -15
- package/lib/cjs/image/image.js +12 -0
- package/lib/cjs/image/interface.d.ts +1 -1
- package/lib/cjs/image/preview.d.ts +1 -1
- package/lib/cjs/image/preview.js +2 -2
- package/lib/cjs/image/previewImage.d.ts +1 -1
- package/lib/cjs/image/previewImage.js +1 -1
- package/lib/cjs/image/previewInner.d.ts +1 -1
- package/lib/cjs/image/previewInner.js +13 -5
- package/lib/cjs/input/index.d.ts +1 -1
- package/lib/cjs/input/inputGroup.d.ts +1 -1
- package/lib/cjs/locale/source/tr_TR.js +2 -2
- package/lib/cjs/navigation/Item.d.ts +4 -1
- package/lib/cjs/navigation/Item.js +18 -5
- package/lib/cjs/navigation/index.d.ts +7 -1
- package/lib/cjs/navigation/index.js +4 -2
- package/lib/cjs/navigation/nav-context.d.ts +1 -0
- package/lib/cjs/rating/index.d.ts +1 -1
- package/lib/cjs/rating/item.d.ts +1 -1
- package/lib/cjs/switch/index.d.ts +1 -1
- package/lib/cjs/table/Body/index.js +2 -2
- package/lib/cjs/table/Table.d.ts +2 -2
- package/lib/cjs/table/Table.js +3 -2
- package/lib/cjs/table/index.d.ts +1 -1
- package/lib/cjs/tabs/TabPane.js +4 -3
- package/lib/cjs/tabs/interface.d.ts +1 -0
- package/lib/cjs/tagInput/index.d.ts +2 -2
- package/lib/cjs/tagInput/index.js +6 -4
- package/lib/cjs/timePicker/TimePicker.d.ts +1 -1
- package/lib/cjs/timePicker/index.d.ts +1 -1
- package/lib/cjs/transfer/index.d.ts +1 -0
- package/lib/cjs/transfer/index.js +7 -1
- package/lib/es/anchor/index.d.ts +1 -1
- package/lib/es/autoComplete/index.d.ts +1 -1
- package/lib/es/button/Button.d.ts +1 -1
- package/lib/es/button/buttonGroup.d.ts +1 -1
- package/lib/es/button/index.d.ts +1 -1
- package/lib/es/datePicker/datePicker.d.ts +1 -1
- package/lib/es/form/baseForm.d.ts +5 -5
- package/lib/es/form/errorMessage.d.ts +2 -1
- package/lib/es/form/field.d.ts +1 -1
- package/lib/es/form/hooks/useFormState.d.ts +2 -1
- package/lib/es/form/interface.d.ts +15 -15
- package/lib/es/image/image.js +11 -0
- package/lib/es/image/interface.d.ts +1 -1
- package/lib/es/image/preview.d.ts +1 -1
- package/lib/es/image/preview.js +2 -2
- package/lib/es/image/previewImage.d.ts +1 -1
- package/lib/es/image/previewImage.js +1 -1
- package/lib/es/image/previewInner.d.ts +1 -1
- package/lib/es/image/previewInner.js +13 -5
- package/lib/es/input/index.d.ts +1 -1
- package/lib/es/input/inputGroup.d.ts +1 -1
- package/lib/es/locale/source/tr_TR.js +2 -2
- package/lib/es/navigation/Item.d.ts +4 -1
- package/lib/es/navigation/Item.js +18 -5
- package/lib/es/navigation/index.d.ts +7 -1
- package/lib/es/navigation/index.js +4 -2
- package/lib/es/navigation/nav-context.d.ts +1 -0
- package/lib/es/rating/index.d.ts +1 -1
- package/lib/es/rating/item.d.ts +1 -1
- package/lib/es/switch/index.d.ts +1 -1
- package/lib/es/table/Body/index.js +3 -3
- package/lib/es/table/Table.d.ts +2 -2
- package/lib/es/table/Table.js +3 -2
- package/lib/es/table/index.d.ts +1 -1
- package/lib/es/tabs/TabPane.js +4 -3
- package/lib/es/tabs/interface.d.ts +1 -0
- package/lib/es/tagInput/index.d.ts +2 -2
- package/lib/es/tagInput/index.js +6 -4
- package/lib/es/timePicker/TimePicker.d.ts +1 -1
- package/lib/es/timePicker/index.d.ts +1 -1
- package/lib/es/transfer/index.d.ts +1 -0
- package/lib/es/transfer/index.js +7 -1
- package/package.json +7 -7
|
@@ -39,7 +39,7 @@ declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
|
|
|
39
39
|
static contextType: React.Context<ContextValue>;
|
|
40
40
|
static Link: typeof Link;
|
|
41
41
|
static PropTypes: {
|
|
42
|
-
size: PropTypes.Requireable<"
|
|
42
|
+
size: PropTypes.Requireable<"small" | "default">;
|
|
43
43
|
railTheme: PropTypes.Requireable<"primary" | "tertiary" | "muted">;
|
|
44
44
|
className: PropTypes.Requireable<string>;
|
|
45
45
|
style: PropTypes.Requireable<object>;
|
|
@@ -123,7 +123,7 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
|
|
|
123
123
|
renderSelectedItem: PropTypes.Requireable<(...args: any[]) => any>;
|
|
124
124
|
suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
125
125
|
showClear: PropTypes.Requireable<boolean>;
|
|
126
|
-
size: PropTypes.Requireable<"
|
|
126
|
+
size: PropTypes.Requireable<"small" | "default" | "large">;
|
|
127
127
|
style: PropTypes.Requireable<object>;
|
|
128
128
|
stopPropagation: PropTypes.Requireable<NonNullable<string | boolean>>;
|
|
129
129
|
maxHeight: PropTypes.Requireable<NonNullable<string | number>>;
|
|
@@ -47,7 +47,7 @@ export default class Button extends PureComponent<ButtonProps> {
|
|
|
47
47
|
disabled: PropTypes.Requireable<boolean>;
|
|
48
48
|
prefixCls: PropTypes.Requireable<string>;
|
|
49
49
|
style: PropTypes.Requireable<object>;
|
|
50
|
-
size: PropTypes.Requireable<"
|
|
50
|
+
size: PropTypes.Requireable<"small" | "default" | "large">;
|
|
51
51
|
type: PropTypes.Requireable<"warning" | "primary" | "tertiary" | "secondary" | "danger">;
|
|
52
52
|
block: PropTypes.Requireable<boolean>;
|
|
53
53
|
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
@@ -18,7 +18,7 @@ export default class ButtonGroup extends BaseComponent<ButtonGroupProps> {
|
|
|
18
18
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
19
19
|
disabled: PropTypes.Requireable<boolean>;
|
|
20
20
|
type: PropTypes.Requireable<string>;
|
|
21
|
-
size: PropTypes.Requireable<"
|
|
21
|
+
size: PropTypes.Requireable<"small" | "default" | "large">;
|
|
22
22
|
theme: PropTypes.Requireable<"solid" | "light" | "borderless">;
|
|
23
23
|
'aria-label': PropTypes.Requireable<string>;
|
|
24
24
|
};
|
|
@@ -22,7 +22,7 @@ declare class Button extends React.PureComponent<ButtonProps> {
|
|
|
22
22
|
onMouseEnter: import("prop-types").Requireable<(...args: any[]) => any>;
|
|
23
23
|
onMouseLeave: import("prop-types").Requireable<(...args: any[]) => any>;
|
|
24
24
|
disabled: import("prop-types").Requireable<boolean>;
|
|
25
|
-
size: import("prop-types").Requireable<"
|
|
25
|
+
size: import("prop-types").Requireable<"small" | "default" | "large">;
|
|
26
26
|
type: import("prop-types").Requireable<"warning" | "primary" | "tertiary" | "secondary" | "danger">;
|
|
27
27
|
block: import("prop-types").Requireable<boolean>;
|
|
28
28
|
onClick: import("prop-types").Requireable<(...args: any[]) => any>;
|
|
@@ -44,7 +44,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
|
|
|
44
44
|
'aria-labelledby': PropTypes.Requireable<string>;
|
|
45
45
|
'aria-required': PropTypes.Requireable<boolean>;
|
|
46
46
|
type: PropTypes.Requireable<"dateTime" | "date" | "month" | "dateRange" | "year" | "dateTimeRange">;
|
|
47
|
-
size: PropTypes.Requireable<"
|
|
47
|
+
size: PropTypes.Requireable<"small" | "default" | "large">;
|
|
48
48
|
density: PropTypes.Requireable<"default" | "compact">;
|
|
49
49
|
defaultValue: PropTypes.Requireable<NonNullable<string | number | object>>;
|
|
50
50
|
value: PropTypes.Requireable<NonNullable<string | number | object>>;
|
|
@@ -11,7 +11,7 @@ import { BaseFormProps, FormApi } from './interface';
|
|
|
11
11
|
interface BaseFormState {
|
|
12
12
|
formId: string;
|
|
13
13
|
}
|
|
14
|
-
declare class Form extends BaseComponent<BaseFormProps
|
|
14
|
+
declare class Form<Values extends Record<string, any> = any> extends BaseComponent<BaseFormProps<Values>, BaseFormState> {
|
|
15
15
|
static propTypes: {
|
|
16
16
|
'aria-label': PropTypes.Requireable<string>;
|
|
17
17
|
onSubmit: PropTypes.Requireable<(...args: any[]) => any>;
|
|
@@ -128,7 +128,7 @@ declare class Form extends BaseComponent<BaseFormProps, BaseFormState> {
|
|
|
128
128
|
preventScroll?: boolean;
|
|
129
129
|
showRestTagsPopover?: boolean;
|
|
130
130
|
restTagsPopoverProps?: import("../popover").PopoverProps;
|
|
131
|
-
} & Pick<import("../tooltip").TooltipProps, "
|
|
131
|
+
} & Pick<import("../tooltip").TooltipProps, "motion" | "stopPropagation" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & React.RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
|
|
132
132
|
static Checkbox: React.ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../checkbox").CheckboxProps & import("./interface").RCIncludeType>;
|
|
133
133
|
static CheckboxGroup: React.ComponentType<import("utility-types").Subtract<import("../checkbox").CheckboxGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & React.RefAttributes<any>>;
|
|
134
134
|
static Radio: React.ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../radio").RadioProps & import("./interface").RCIncludeType>;
|
|
@@ -148,11 +148,11 @@ declare class Form extends BaseComponent<BaseFormProps, BaseFormState> {
|
|
|
148
148
|
static InputGroup: typeof FormInputGroup;
|
|
149
149
|
static Label: typeof Label;
|
|
150
150
|
static Section: typeof Section;
|
|
151
|
-
formApi: FormApi
|
|
152
|
-
constructor(props: BaseFormProps);
|
|
151
|
+
formApi: FormApi<Values>;
|
|
152
|
+
constructor(props: BaseFormProps<Values>);
|
|
153
153
|
componentDidMount(): void;
|
|
154
154
|
componentWillUnmount(): void;
|
|
155
|
-
get adapter(): BaseFormAdapter<BaseFormProps,
|
|
155
|
+
get adapter(): BaseFormAdapter<BaseFormProps<Values>, BaseFormState, Values>;
|
|
156
156
|
get content(): React.ReactNode;
|
|
157
157
|
submit(e: React.FormEvent<HTMLFormElement>): void;
|
|
158
158
|
reset(e: React.FormEvent<HTMLFormElement>): void;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { PureComponent } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
|
|
3
|
+
import type { BasicFieldError } from '@douyinfe/semi-foundation/lib/cjs/form/interface';
|
|
4
|
+
export declare type ReactFieldError = BasicFieldError | React.ReactNode;
|
|
4
5
|
export interface ErrorMessageProps {
|
|
5
6
|
error?: ReactFieldError;
|
|
6
7
|
className?: string;
|
package/lib/cjs/form/field.d.ts
CHANGED
|
@@ -76,7 +76,7 @@ declare const FormSelect: import("react").ComponentType<import("utility-types").
|
|
|
76
76
|
preventScroll?: boolean;
|
|
77
77
|
showRestTagsPopover?: boolean;
|
|
78
78
|
restTagsPopoverProps?: import("../popover").PopoverProps;
|
|
79
|
-
} & Pick<import("../tooltip").TooltipProps, "
|
|
79
|
+
} & Pick<import("../tooltip").TooltipProps, "motion" | "stopPropagation" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & import("react").RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
|
|
80
80
|
declare const FormCheckboxGroup: import("react").ComponentType<import("utility-types").Subtract<import("../checkbox/checkboxGroup").CheckboxGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & import("react").RefAttributes<any>>;
|
|
81
81
|
declare const FormCheckbox: import("react").ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../checkbox/checkbox").CheckboxProps & import("./interface").RCIncludeType>;
|
|
82
82
|
declare const FormRadioGroup: import("react").ComponentType<import("utility-types").Subtract<import("../radio/radioGroup").RadioGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & import("react").RefAttributes<any>>;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
1
|
+
import { FormState } from '@douyinfe/semi-foundation/lib/cjs/form/interface';
|
|
2
|
+
declare function useFormState<T extends Record<string, any> = any>(): FormState<T>;
|
|
2
3
|
export default useFormState;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Subtract } from 'utility-types';
|
|
3
3
|
import type { RuleItem } from 'async-validator';
|
|
4
|
-
import { Options as scrollIntoViewOptions } from 'scroll-into-view-if-needed';
|
|
5
|
-
import { BaseFormApi as FormApi, FormState, WithFieldOption } from '@douyinfe/semi-foundation/lib/cjs/form/interface';
|
|
6
|
-
import { SelectProps } from '../select/index';
|
|
4
|
+
import type { Options as scrollIntoViewOptions } from 'scroll-into-view-if-needed';
|
|
5
|
+
import type { BaseFormApi as FormApi, FormState, WithFieldOption, AllErrors } from '@douyinfe/semi-foundation/lib/cjs/form/interface';
|
|
6
|
+
import type { SelectProps } from '../select/index';
|
|
7
7
|
import Option from '../select/option';
|
|
8
8
|
import OptGroup from '../select/optionGroup';
|
|
9
|
-
import { CheckboxProps } from '../checkbox/index';
|
|
10
|
-
import { RadioProps } from '../radio/index';
|
|
9
|
+
import type { CheckboxProps } from '../checkbox/index';
|
|
10
|
+
import type { RadioProps } from '../radio/index';
|
|
11
11
|
import { ReactFieldError as FieldError } from './errorMessage';
|
|
12
|
-
import { LabelProps } from './label';
|
|
13
|
-
export { FormState, FormApi, WithFieldOption, RuleItem };
|
|
12
|
+
import type { LabelProps } from './label';
|
|
13
|
+
export type { FormState, FormApi, WithFieldOption, RuleItem };
|
|
14
14
|
export declare type CommonFieldProps = {
|
|
15
15
|
/** Field is required (except Form. Checkbox within the Group, Form. Radio) */
|
|
16
16
|
field: string;
|
|
@@ -81,19 +81,19 @@ export interface FormFCChild<K extends Record<string, any> = any> {
|
|
|
81
81
|
values: K;
|
|
82
82
|
formApi: FormApi<K>;
|
|
83
83
|
}
|
|
84
|
-
export interface BaseFormProps extends Omit<React.FormHTMLAttributes<HTMLFormElement>, 'children' | 'onChange'> {
|
|
84
|
+
export interface BaseFormProps<Values extends Record<string, any> = any> extends Omit<React.FormHTMLAttributes<HTMLFormElement>, 'children' | 'onChange' | 'onSubmit' | 'onReset'> {
|
|
85
85
|
'aria-label'?: React.AriaAttributes['aria-label'];
|
|
86
|
-
onSubmit?: (values:
|
|
87
|
-
onSubmitFail?: (errors: Record<
|
|
86
|
+
onSubmit?: (values: Values) => void;
|
|
87
|
+
onSubmitFail?: (errors: Record<keyof Values, FieldError>, values: Partial<Values>) => void;
|
|
88
88
|
onReset?: () => void;
|
|
89
|
-
onValueChange?: (values:
|
|
90
|
-
onChange?: (formState: FormState) => void;
|
|
91
|
-
validateFields?: (values:
|
|
89
|
+
onValueChange?: (values: Values, changedValue: Partial<Values>) => void;
|
|
90
|
+
onChange?: (formState: FormState<Values>) => void;
|
|
91
|
+
validateFields?: (values: Values) => string | Partial<AllErrors<Values>>;
|
|
92
92
|
/** Use this if you want to populate the form with initial values. */
|
|
93
|
-
initValues?:
|
|
93
|
+
initValues?: Values;
|
|
94
94
|
id?: string;
|
|
95
95
|
/** getFormApi will be call once when Form mounted, u can save formApi reference in your component */
|
|
96
|
-
getFormApi?: (formApi: FormApi) => void;
|
|
96
|
+
getFormApi?: (formApi: FormApi<Values>) => void;
|
|
97
97
|
style?: React.CSSProperties;
|
|
98
98
|
className?: string;
|
|
99
99
|
layout?: 'horizontal' | 'vertical';
|
package/lib/cjs/image/image.js
CHANGED
|
@@ -7,6 +7,8 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _isObject2 = _interopRequireDefault(require("lodash/isObject"));
|
|
9
9
|
|
|
10
|
+
var _isBoolean2 = _interopRequireDefault(require("lodash/isBoolean"));
|
|
11
|
+
|
|
10
12
|
var _react = _interopRequireDefault(require("react"));
|
|
11
13
|
|
|
12
14
|
var _baseComponent = _interopRequireDefault(require("../_base/baseComponent"));
|
|
@@ -153,6 +155,16 @@ class Image extends _baseComponent.default {
|
|
|
153
155
|
willUpdateStates.loadStatus = "loading";
|
|
154
156
|
}
|
|
155
157
|
|
|
158
|
+
if ((0, _isObject2.default)(props.preview)) {
|
|
159
|
+
const {
|
|
160
|
+
visible
|
|
161
|
+
} = props.preview;
|
|
162
|
+
|
|
163
|
+
if ((0, _isBoolean2.default)(visible)) {
|
|
164
|
+
willUpdateStates.previewVisible = visible;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
156
168
|
return willUpdateStates;
|
|
157
169
|
}
|
|
158
170
|
|
|
@@ -60,7 +60,7 @@ export interface PreviewProps extends BaseProps {
|
|
|
60
60
|
onPrev?: (index: number) => void;
|
|
61
61
|
onNext?: (index: number) => void;
|
|
62
62
|
onRatioChange?: (type: RatioType) => void;
|
|
63
|
-
|
|
63
|
+
onRotateLeft?: (angle: number) => void;
|
|
64
64
|
onDownload?: (src: string, index: number) => void;
|
|
65
65
|
}
|
|
66
66
|
export interface MenuProps {
|
|
@@ -44,8 +44,8 @@ export default class Preview extends BaseComponent<PreviewProps, PreviewState> {
|
|
|
44
44
|
onPrev: PropTypes.Requireable<(...args: any[]) => any>;
|
|
45
45
|
onNext: PropTypes.Requireable<(...args: any[]) => any>;
|
|
46
46
|
onDownload: PropTypes.Requireable<(...args: any[]) => any>;
|
|
47
|
+
onRotateLeft: PropTypes.Requireable<(...args: any[]) => any>;
|
|
47
48
|
onRatioChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
48
|
-
onRotateChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
49
49
|
};
|
|
50
50
|
static defaultProps: {
|
|
51
51
|
src: any[];
|
package/lib/cjs/image/preview.js
CHANGED
|
@@ -241,8 +241,8 @@ Preview.propTypes = {
|
|
|
241
241
|
onPrev: _propTypes.default.func,
|
|
242
242
|
onNext: _propTypes.default.func,
|
|
243
243
|
onDownload: _propTypes.default.func,
|
|
244
|
-
|
|
245
|
-
|
|
244
|
+
onRotateLeft: _propTypes.default.func,
|
|
245
|
+
onRatioChange: _propTypes.default.func
|
|
246
246
|
};
|
|
247
247
|
Preview.defaultProps = {
|
|
248
248
|
src: [],
|
|
@@ -13,7 +13,7 @@ export default class PreviewImage extends BaseComponent<PreviewImageProps, Previ
|
|
|
13
13
|
zoomStep: PropTypes.Requireable<number>;
|
|
14
14
|
zoom: PropTypes.Requireable<number>;
|
|
15
15
|
ratio: PropTypes.Requireable<string>;
|
|
16
|
-
disableDownload: PropTypes.Requireable<
|
|
16
|
+
disableDownload: PropTypes.Requireable<boolean>;
|
|
17
17
|
clickZoom: PropTypes.Requireable<number>;
|
|
18
18
|
setRatio: PropTypes.Requireable<(...args: any[]) => any>;
|
|
19
19
|
onZoom: PropTypes.Requireable<(...args: any[]) => any>;
|
|
@@ -241,7 +241,7 @@ PreviewImage.propTypes = {
|
|
|
241
241
|
zoomStep: _propTypes.default.number,
|
|
242
242
|
zoom: _propTypes.default.number,
|
|
243
243
|
ratio: _propTypes.default.string,
|
|
244
|
-
disableDownload: _propTypes.default.
|
|
244
|
+
disableDownload: _propTypes.default.bool,
|
|
245
245
|
clickZoom: _propTypes.default.number,
|
|
246
246
|
setRatio: _propTypes.default.func,
|
|
247
247
|
onZoom: _propTypes.default.func,
|
|
@@ -45,7 +45,7 @@ export default class PreviewInner extends BaseComponent<PreviewInnerProps, Previ
|
|
|
45
45
|
onNext: PropTypes.Requireable<(...args: any[]) => any>;
|
|
46
46
|
onDownload: PropTypes.Requireable<(...args: any[]) => any>;
|
|
47
47
|
onRatioChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
48
|
-
|
|
48
|
+
onRotateLeft: PropTypes.Requireable<(...args: any[]) => any>;
|
|
49
49
|
};
|
|
50
50
|
static defaultProps: {
|
|
51
51
|
showTooltip: boolean;
|
|
@@ -127,11 +127,19 @@ class PreviewInner extends _baseComponent.default {
|
|
|
127
127
|
get adapter() {
|
|
128
128
|
return Object.assign(Object.assign({}, super.adapter), {
|
|
129
129
|
getIsInGroup: () => this.isInGroup(),
|
|
130
|
-
notifyChange: index => {
|
|
130
|
+
notifyChange: (index, direction) => {
|
|
131
131
|
const {
|
|
132
|
-
onChange
|
|
132
|
+
onChange,
|
|
133
|
+
onPrev,
|
|
134
|
+
onNext
|
|
133
135
|
} = this.props;
|
|
134
136
|
(0, _isFunction2.default)(onChange) && onChange(index);
|
|
137
|
+
|
|
138
|
+
if (direction === "prev") {
|
|
139
|
+
onPrev && onPrev(index);
|
|
140
|
+
} else {
|
|
141
|
+
onNext && onNext(index);
|
|
142
|
+
}
|
|
135
143
|
},
|
|
136
144
|
notifyZoom: (zoom, increase) => {
|
|
137
145
|
const {
|
|
@@ -165,9 +173,9 @@ class PreviewInner extends _baseComponent.default {
|
|
|
165
173
|
},
|
|
166
174
|
notifyRotateChange: angle => {
|
|
167
175
|
const {
|
|
168
|
-
|
|
176
|
+
onRotateLeft
|
|
169
177
|
} = this.props;
|
|
170
|
-
(0, _isFunction2.default)(
|
|
178
|
+
(0, _isFunction2.default)(onRotateLeft) && onRotateLeft(angle);
|
|
171
179
|
},
|
|
172
180
|
notifyDownload: (src, index) => {
|
|
173
181
|
const {
|
|
@@ -427,7 +435,7 @@ PreviewInner.propTypes = {
|
|
|
427
435
|
onNext: _propTypes.default.func,
|
|
428
436
|
onDownload: _propTypes.default.func,
|
|
429
437
|
onRatioChange: _propTypes.default.func,
|
|
430
|
-
|
|
438
|
+
onRotateLeft: _propTypes.default.func
|
|
431
439
|
};
|
|
432
440
|
PreviewInner.defaultProps = {
|
|
433
441
|
showTooltip: false,
|
package/lib/cjs/input/index.d.ts
CHANGED
|
@@ -82,7 +82,7 @@ declare class Input extends BaseComponent<InputProps, InputState> {
|
|
|
82
82
|
showClear: PropTypes.Requireable<boolean>;
|
|
83
83
|
hideSuffix: PropTypes.Requireable<boolean>;
|
|
84
84
|
placeholder: PropTypes.Requireable<any>;
|
|
85
|
-
size: PropTypes.Requireable<"
|
|
85
|
+
size: PropTypes.Requireable<"small" | "default" | "large">;
|
|
86
86
|
className: PropTypes.Requireable<string>;
|
|
87
87
|
style: PropTypes.Requireable<object>;
|
|
88
88
|
validateStatus: PropTypes.Requireable<"default" | "error" | "warning" | "success">;
|
|
@@ -21,7 +21,7 @@ export default class inputGroup extends BaseComponent<InputGroupProps, InputGrou
|
|
|
21
21
|
static propTypes: {
|
|
22
22
|
className: PropTypes.Requireable<string>;
|
|
23
23
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
24
|
-
size: PropTypes.Requireable<"
|
|
24
|
+
size: PropTypes.Requireable<"small" | "default" | "large">;
|
|
25
25
|
style: PropTypes.Requireable<object>;
|
|
26
26
|
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
|
|
27
27
|
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
|
|
@@ -12,6 +12,7 @@ export interface NavItemProps extends ItemProps, BaseProps {
|
|
|
12
12
|
level?: number;
|
|
13
13
|
link?: string;
|
|
14
14
|
linkOptions?: React.AnchorHTMLAttributes<HTMLAnchorElement>;
|
|
15
|
+
tabIndex?: number;
|
|
15
16
|
text?: React.ReactNode;
|
|
16
17
|
tooltipHideDelay?: number;
|
|
17
18
|
tooltipShowDelay?: number;
|
|
@@ -45,6 +46,7 @@ export default class NavItem extends BaseComponent<NavItemProps, NavItemState> {
|
|
|
45
46
|
link: PropTypes.Requireable<string>;
|
|
46
47
|
linkOptions: PropTypes.Requireable<object>;
|
|
47
48
|
disabled: PropTypes.Requireable<boolean>;
|
|
49
|
+
tabIndex: PropTypes.Requireable<number>;
|
|
48
50
|
};
|
|
49
51
|
static defaultProps: {
|
|
50
52
|
isSubNav: boolean;
|
|
@@ -55,6 +57,7 @@ export default class NavItem extends BaseComponent<NavItemProps, NavItemState> {
|
|
|
55
57
|
onMouseEnter: (...args: any[]) => void;
|
|
56
58
|
onMouseLeave: (...args: any[]) => void;
|
|
57
59
|
disabled: boolean;
|
|
60
|
+
tabIndex: number;
|
|
58
61
|
};
|
|
59
62
|
foundation: ItemFoundation;
|
|
60
63
|
context: NavContextType;
|
|
@@ -66,5 +69,5 @@ export default class NavItem extends BaseComponent<NavItemProps, NavItemState> {
|
|
|
66
69
|
wrapTooltip: (node: React.ReactNode) => JSX.Element;
|
|
67
70
|
handleClick: (e: React.MouseEvent) => void;
|
|
68
71
|
handleKeyPress: (e: React.KeyboardEvent) => void;
|
|
69
|
-
render(): React.
|
|
72
|
+
render(): React.ReactNode;
|
|
70
73
|
}
|
|
@@ -170,7 +170,8 @@ class NavItem extends _baseComponent.default {
|
|
|
170
170
|
link,
|
|
171
171
|
linkOptions,
|
|
172
172
|
disabled,
|
|
173
|
-
level = 0
|
|
173
|
+
level = 0,
|
|
174
|
+
tabIndex
|
|
174
175
|
} = this.props;
|
|
175
176
|
const {
|
|
176
177
|
mode,
|
|
@@ -233,7 +234,8 @@ class NavItem extends _baseComponent.default {
|
|
|
233
234
|
["".concat(clsPrefix, "-sub")]: isSubNav,
|
|
234
235
|
["".concat(clsPrefix, "-selected")]: selected && !isSubNav,
|
|
235
236
|
["".concat(clsPrefix, "-collapsed")]: isCollapsed,
|
|
236
|
-
["".concat(clsPrefix, "-disabled")]: disabled
|
|
237
|
+
["".concat(clsPrefix, "-disabled")]: disabled,
|
|
238
|
+
["".concat(clsPrefix, "-has-link")]: typeof link === 'string'
|
|
237
239
|
});
|
|
238
240
|
const ariaProps = {
|
|
239
241
|
'aria-disabled': disabled
|
|
@@ -250,7 +252,7 @@ class NavItem extends _baseComponent.default {
|
|
|
250
252
|
_react.default.createElement("li", Object.assign({
|
|
251
253
|
// if role = menuitem, the narration will read all expanded li
|
|
252
254
|
role: isSubNav ? null : "menuitem",
|
|
253
|
-
tabIndex: isSubNav ? -1 :
|
|
255
|
+
tabIndex: isSubNav ? -1 : tabIndex
|
|
254
256
|
}, ariaProps, {
|
|
255
257
|
style: style,
|
|
256
258
|
ref: this.setItemRef,
|
|
@@ -267,6 +269,15 @@ class NavItem extends _baseComponent.default {
|
|
|
267
269
|
itemDom = this.wrapTooltip(itemDom);
|
|
268
270
|
}
|
|
269
271
|
|
|
272
|
+
if (typeof this.context.renderWrapper === 'function') {
|
|
273
|
+
return this.context.renderWrapper({
|
|
274
|
+
itemElement: itemDom,
|
|
275
|
+
isSubNav: isSubNav,
|
|
276
|
+
isInSubNav: isInSubNav,
|
|
277
|
+
props: this.props
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
|
|
270
281
|
return itemDom;
|
|
271
282
|
}
|
|
272
283
|
|
|
@@ -291,7 +302,8 @@ NavItem.propTypes = {
|
|
|
291
302
|
isSubNav: _propTypes.default.bool,
|
|
292
303
|
link: _propTypes.default.string,
|
|
293
304
|
linkOptions: _propTypes.default.object,
|
|
294
|
-
disabled: _propTypes.default.bool
|
|
305
|
+
disabled: _propTypes.default.bool,
|
|
306
|
+
tabIndex: _propTypes.default.number
|
|
295
307
|
};
|
|
296
308
|
NavItem.defaultProps = {
|
|
297
309
|
isSubNav: false,
|
|
@@ -301,5 +313,6 @@ NavItem.defaultProps = {
|
|
|
301
313
|
onClick: _noop2.default,
|
|
302
314
|
onMouseEnter: _noop2.default,
|
|
303
315
|
onMouseLeave: _noop2.default,
|
|
304
|
-
disabled: false
|
|
316
|
+
disabled: false,
|
|
317
|
+
tabIndex: 0
|
|
305
318
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import BaseComponent, { BaseProps } from '../_base/baseComponent';
|
|
2
|
-
import React from 'react';
|
|
2
|
+
import React, { ReactElement, ReactNode } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { NavigationAdapter } from '@douyinfe/semi-foundation/lib/cjs/navigation/foundation';
|
|
5
5
|
import SubNav, { SubNavProps } from './SubNav';
|
|
@@ -63,6 +63,12 @@ export interface NavProps extends BaseProps {
|
|
|
63
63
|
isOpen: boolean;
|
|
64
64
|
}) => void;
|
|
65
65
|
onSelect?: (data: OnSelectedData) => void;
|
|
66
|
+
renderWrapper?: ({ itemElement, isSubNav, isInSubNav, props }: {
|
|
67
|
+
itemElement: ReactElement;
|
|
68
|
+
isInSubNav: boolean;
|
|
69
|
+
isSubNav: boolean;
|
|
70
|
+
props: NavItemProps | SubNavProps;
|
|
71
|
+
}) => ReactNode;
|
|
66
72
|
}
|
|
67
73
|
export interface NavState {
|
|
68
74
|
isCollapsed: boolean;
|
|
@@ -234,7 +234,8 @@ class Nav extends _baseComponent.default {
|
|
|
234
234
|
footer,
|
|
235
235
|
header,
|
|
236
236
|
toggleIconPosition,
|
|
237
|
-
limitIndent
|
|
237
|
+
limitIndent,
|
|
238
|
+
renderWrapper
|
|
238
239
|
} = this.props;
|
|
239
240
|
const {
|
|
240
241
|
selectedKeys,
|
|
@@ -341,7 +342,8 @@ class Nav extends _baseComponent.default {
|
|
|
341
342
|
locale,
|
|
342
343
|
prefixCls,
|
|
343
344
|
toggleIconPosition,
|
|
344
|
-
limitIndent
|
|
345
|
+
limitIndent,
|
|
346
|
+
renderWrapper
|
|
345
347
|
}
|
|
346
348
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
347
349
|
className: finalCls,
|
|
@@ -18,6 +18,7 @@ export interface NavContextType {
|
|
|
18
18
|
subNavCloseDelay?: NavProps['subNavCloseDelay'];
|
|
19
19
|
subNavOpenDelay?: NavProps['subNavOpenDelay'];
|
|
20
20
|
canUpdateOpenKeys?: boolean;
|
|
21
|
+
renderWrapper?: NavProps['renderWrapper'];
|
|
21
22
|
}
|
|
22
23
|
declare const NavContext: React.Context<NavContextType>;
|
|
23
24
|
export default NavContext;
|
|
@@ -69,7 +69,7 @@ export default class Rating extends BaseComponent<RatingProps, RatingState> {
|
|
|
69
69
|
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
|
|
70
70
|
onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
|
|
71
71
|
autoFocus: PropTypes.Requireable<boolean>;
|
|
72
|
-
size: PropTypes.Requireable<NonNullable<number | "
|
|
72
|
+
size: PropTypes.Requireable<NonNullable<number | "small" | "default">>;
|
|
73
73
|
tooltips: PropTypes.Requireable<string[]>;
|
|
74
74
|
id: PropTypes.Requireable<string>;
|
|
75
75
|
preventScroll: PropTypes.Requireable<boolean>;
|
package/lib/cjs/rating/item.d.ts
CHANGED
|
@@ -40,7 +40,7 @@ export default class Item extends BaseComponent<RatingItemProps, RatingItemState
|
|
|
40
40
|
disabled: PropTypes.Requireable<boolean>;
|
|
41
41
|
count: PropTypes.Requireable<number>;
|
|
42
42
|
ariaLabelPrefix: PropTypes.Requireable<string>;
|
|
43
|
-
size: PropTypes.Requireable<NonNullable<number | "
|
|
43
|
+
size: PropTypes.Requireable<NonNullable<number | "small" | "default">>;
|
|
44
44
|
'aria-describedby': PropTypes.Requireable<string>;
|
|
45
45
|
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
|
|
46
46
|
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
|
|
@@ -45,7 +45,7 @@ declare class Switch extends BaseComponent<SwitchProps, SwitchState> {
|
|
|
45
45
|
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
|
|
46
46
|
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
|
|
47
47
|
style: PropTypes.Requireable<object>;
|
|
48
|
-
size: PropTypes.Requireable<"
|
|
48
|
+
size: PropTypes.Requireable<"small" | "default" | "large">;
|
|
49
49
|
uncheckedText: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
50
50
|
id: PropTypes.Requireable<string>;
|
|
51
51
|
};
|
|
@@ -269,7 +269,7 @@ class Body extends _baseComponent.default {
|
|
|
269
269
|
width: tableWidth
|
|
270
270
|
},
|
|
271
271
|
className: tableCls
|
|
272
|
-
}, (0, _size2.default)(dataSource) === 0
|
|
272
|
+
}, children), (0, _size2.default)(dataSource) === 0 && emptySlot);
|
|
273
273
|
});
|
|
274
274
|
|
|
275
275
|
this.onItemsRendered = props => {
|
|
@@ -308,7 +308,7 @@ class Body extends _baseComponent.default {
|
|
|
308
308
|
|
|
309
309
|
const listStyle = {
|
|
310
310
|
width: '100%',
|
|
311
|
-
height: (virtualizedData === null || virtualizedData === void 0 ? void 0 : virtualizedData.length) ? y :
|
|
311
|
+
height: (virtualizedData === null || virtualizedData === void 0 ? void 0 : virtualizedData.length) ? y : _constants.numbers.DEFAULT_EMPTYSLOT_HEIGHT,
|
|
312
312
|
overflowX: 'auto',
|
|
313
313
|
overflowY: 'auto'
|
|
314
314
|
};
|
package/lib/cjs/table/Table.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ declare class Table<RecordType extends Record<string, any>> extends BaseComponen
|
|
|
52
52
|
components: PropTypes.Requireable<any>;
|
|
53
53
|
bordered: PropTypes.Requireable<boolean>;
|
|
54
54
|
loading: PropTypes.Requireable<boolean>;
|
|
55
|
-
size: PropTypes.Requireable<"
|
|
55
|
+
size: PropTypes.Requireable<"small" | "default" | "middle">;
|
|
56
56
|
tableLayout: PropTypes.Requireable<"" | "fixed" | "auto">;
|
|
57
57
|
columns: PropTypes.Requireable<PropTypes.InferProps<{
|
|
58
58
|
align: PropTypes.Requireable<"left" | "right" | "center">;
|
|
@@ -289,7 +289,7 @@ declare class Table<RecordType extends Record<string, any>> extends BaseComponen
|
|
|
289
289
|
showTotal?: boolean;
|
|
290
290
|
pageSize?: number;
|
|
291
291
|
pageSizeOpts?: number[];
|
|
292
|
-
size?: "
|
|
292
|
+
size?: "small" | "default";
|
|
293
293
|
currentPage?: number;
|
|
294
294
|
defaultCurrentPage?: number;
|
|
295
295
|
onPageChange?: (currentPage: number) => void;
|
package/lib/cjs/table/Table.js
CHANGED
|
@@ -678,8 +678,9 @@ class Table extends _baseComponent.default {
|
|
|
678
678
|
useFixedHeader,
|
|
679
679
|
headerRef: this._cacheHeaderRef,
|
|
680
680
|
bodyRef: this.bodyWrapRef,
|
|
681
|
-
includeHeader: !useFixedHeader
|
|
682
|
-
|
|
681
|
+
includeHeader: !useFixedHeader,
|
|
682
|
+
emptySlot
|
|
683
|
+
})), this.renderFooter(props)];
|
|
683
684
|
return table;
|
|
684
685
|
};
|
|
685
686
|
|
package/lib/cjs/table/index.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ declare class Table<RecordType extends Record<string, any> = Data> extends React
|
|
|
15
15
|
components: PropTypes.Requireable<any>;
|
|
16
16
|
bordered: PropTypes.Requireable<boolean>;
|
|
17
17
|
loading: PropTypes.Requireable<boolean>;
|
|
18
|
-
size: PropTypes.Requireable<"
|
|
18
|
+
size: PropTypes.Requireable<"small" | "default" | "middle">;
|
|
19
19
|
tableLayout: PropTypes.Requireable<"" | "fixed" | "auto">;
|
|
20
20
|
columns: PropTypes.Requireable<PropTypes.InferProps<{
|
|
21
21
|
align: PropTypes.Requireable<"left" | "right" | "center">;
|
package/lib/cjs/tabs/TabPane.js
CHANGED
|
@@ -83,9 +83,10 @@ class TabPane extends _react.PureComponent {
|
|
|
83
83
|
className,
|
|
84
84
|
style,
|
|
85
85
|
children,
|
|
86
|
-
itemKey
|
|
86
|
+
itemKey,
|
|
87
|
+
tabIndex
|
|
87
88
|
} = _a,
|
|
88
|
-
restProps = __rest(_a, ["className", "style", "children", "itemKey"]);
|
|
89
|
+
restProps = __rest(_a, ["className", "style", "children", "itemKey", "tabIndex"]);
|
|
89
90
|
|
|
90
91
|
const active = this.context.activeKey === itemKey;
|
|
91
92
|
const classNames = (0, _classnames.default)(className, {
|
|
@@ -123,7 +124,7 @@ class TabPane extends _react.PureComponent {
|
|
|
123
124
|
className: classNames,
|
|
124
125
|
style: style,
|
|
125
126
|
"aria-hidden": active ? 'false' : 'true',
|
|
126
|
-
tabIndex: 0
|
|
127
|
+
tabIndex: tabIndex ? tabIndex : 0
|
|
127
128
|
}, (0, _getDataAttr.default)(restProps), {
|
|
128
129
|
"x-semi-prop": "children"
|
|
129
130
|
}), /*#__PURE__*/_react.default.createElement(_cssAnimation.default, {
|