@douyinfe/semi-ui 2.52.3 → 2.53.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/umd/semi-ui.js +804 -273
- 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/_utils/index.d.ts +2 -0
- package/lib/cjs/_utils/index.js +77 -0
- package/lib/cjs/_utils/semi-global.d.ts +46 -0
- package/lib/cjs/_utils/semi-global.js +13 -0
- package/lib/cjs/autoComplete/index.d.ts +2 -25
- package/lib/cjs/autoComplete/index.js +4 -2
- package/lib/cjs/avatar/index.d.ts +2 -10
- package/lib/cjs/avatar/index.js +4 -2
- package/lib/cjs/backtop/index.d.ts +2 -5
- package/lib/cjs/backtop/index.js +4 -2
- package/lib/cjs/button/Button.d.ts +1 -1
- package/lib/cjs/button/index.d.ts +3 -1
- package/lib/cjs/button/index.js +3 -0
- package/lib/cjs/carousel/index.d.ts +2 -2
- package/lib/cjs/cascader/index.d.ts +2 -31
- package/lib/cjs/cascader/index.js +3 -2
- package/lib/cjs/collapse/index.d.ts +2 -7
- package/lib/cjs/collapse/index.js +4 -2
- package/lib/cjs/collapsible/index.d.ts +3 -9
- package/lib/cjs/collapsible/index.js +4 -2
- package/lib/cjs/configProvider/index.d.ts +2 -1
- package/lib/cjs/configProvider/index.js +5 -2
- package/lib/cjs/datePicker/datePicker.d.ts +2 -44
- package/lib/cjs/datePicker/datePicker.js +4 -2
- package/lib/cjs/dropdown/index.d.ts +2 -12
- package/lib/cjs/dropdown/index.js +4 -2
- package/lib/cjs/form/arrayField.js +3 -3
- package/lib/cjs/modal/Modal.d.ts +2 -20
- package/lib/cjs/modal/Modal.js +3 -2
- package/lib/cjs/modal/confirm.d.ts +14 -14
- package/lib/cjs/navigation/index.d.ts +2 -15
- package/lib/cjs/navigation/index.js +4 -2
- package/lib/cjs/notification/notice.d.ts +2 -12
- package/lib/cjs/notification/notice.js +3 -2
- package/lib/cjs/overflowList/index.d.ts +2 -9
- package/lib/cjs/overflowList/index.js +3 -2
- package/lib/cjs/popconfirm/index.d.ts +2 -15
- package/lib/cjs/popconfirm/index.js +4 -2
- package/lib/cjs/popover/index.d.ts +2 -23
- package/lib/cjs/popover/index.js +4 -2
- package/lib/cjs/resizeObserver/index.d.ts +14 -1
- package/lib/cjs/resizeObserver/index.js +66 -31
- package/lib/cjs/select/index.d.ts +1 -0
- package/lib/cjs/select/index.js +3 -2
- package/lib/cjs/sideSheet/index.d.ts +1 -0
- package/lib/cjs/sideSheet/index.js +20 -18
- package/lib/cjs/tabs/index.d.ts +1 -0
- package/lib/cjs/tabs/index.js +4 -2
- package/lib/cjs/tagInput/index.d.ts +1 -1
- package/lib/cjs/timePicker/index.d.ts +2 -34
- package/lib/cjs/timePicker/index.js +3 -1
- package/lib/cjs/toast/toast.d.ts +2 -11
- package/lib/cjs/toast/toast.js +3 -2
- package/lib/cjs/tooltip/index.d.ts +2 -32
- package/lib/cjs/tooltip/index.js +3 -2
- package/lib/cjs/typography/base.d.ts +7 -4
- package/lib/cjs/typography/base.js +127 -64
- package/lib/cjs/typography/numeral.d.ts +1 -1
- package/lib/cjs/typography/paragraph.d.ts +1 -1
- package/lib/cjs/typography/text.d.ts +1 -1
- package/lib/cjs/typography/title.d.ts +1 -1
- package/lib/es/_utils/index.d.ts +2 -0
- package/lib/es/_utils/index.js +75 -0
- package/lib/es/_utils/semi-global.d.ts +46 -0
- package/lib/es/_utils/semi-global.js +6 -0
- package/lib/es/autoComplete/index.d.ts +2 -25
- package/lib/es/autoComplete/index.js +4 -2
- package/lib/es/avatar/index.d.ts +2 -10
- package/lib/es/avatar/index.js +4 -2
- package/lib/es/backtop/index.d.ts +2 -5
- package/lib/es/backtop/index.js +4 -2
- package/lib/es/button/Button.d.ts +1 -1
- package/lib/es/button/index.d.ts +3 -1
- package/lib/es/button/index.js +3 -0
- package/lib/es/carousel/index.d.ts +2 -2
- package/lib/es/cascader/index.d.ts +2 -31
- package/lib/es/cascader/index.js +4 -3
- package/lib/es/collapse/index.d.ts +2 -7
- package/lib/es/collapse/index.js +4 -2
- package/lib/es/collapsible/index.d.ts +3 -9
- package/lib/es/collapsible/index.js +4 -2
- package/lib/es/configProvider/index.d.ts +2 -1
- package/lib/es/configProvider/index.js +5 -2
- package/lib/es/datePicker/datePicker.d.ts +2 -44
- package/lib/es/datePicker/datePicker.js +4 -2
- package/lib/es/dropdown/index.d.ts +2 -12
- package/lib/es/dropdown/index.js +4 -2
- package/lib/es/form/arrayField.js +3 -3
- package/lib/es/modal/Modal.d.ts +2 -20
- package/lib/es/modal/Modal.js +4 -3
- package/lib/es/modal/confirm.d.ts +14 -14
- package/lib/es/navigation/index.d.ts +2 -15
- package/lib/es/navigation/index.js +4 -2
- package/lib/es/notification/notice.d.ts +2 -12
- package/lib/es/notification/notice.js +4 -3
- package/lib/es/overflowList/index.d.ts +2 -9
- package/lib/es/overflowList/index.js +4 -3
- package/lib/es/popconfirm/index.d.ts +2 -15
- package/lib/es/popconfirm/index.js +4 -2
- package/lib/es/popover/index.d.ts +2 -23
- package/lib/es/popover/index.js +4 -2
- package/lib/es/resizeObserver/index.d.ts +14 -1
- package/lib/es/resizeObserver/index.js +64 -30
- package/lib/es/select/index.d.ts +1 -0
- package/lib/es/select/index.js +4 -3
- package/lib/es/sideSheet/index.d.ts +1 -0
- package/lib/es/sideSheet/index.js +21 -19
- package/lib/es/tabs/index.d.ts +1 -0
- package/lib/es/tabs/index.js +4 -2
- package/lib/es/tagInput/index.d.ts +1 -1
- package/lib/es/timePicker/index.d.ts +2 -34
- package/lib/es/timePicker/index.js +3 -1
- package/lib/es/toast/toast.d.ts +2 -11
- package/lib/es/toast/toast.js +4 -3
- package/lib/es/tooltip/index.d.ts +2 -32
- package/lib/es/tooltip/index.js +4 -3
- package/lib/es/typography/base.d.ts +7 -4
- package/lib/es/typography/base.js +128 -65
- package/lib/es/typography/numeral.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/package.json +9 -8
|
@@ -10,7 +10,7 @@ import ResizeObserver from '../resizeObserver';
|
|
|
10
10
|
import IntersectionObserver from './intersectionObserver';
|
|
11
11
|
import OverflowListFoundation from '@douyinfe/semi-foundation/lib/es/overflowList/foundation';
|
|
12
12
|
import '@douyinfe/semi-foundation/lib/es/overflowList/overflowList.css';
|
|
13
|
-
import { cloneDeep } from '../_utils';
|
|
13
|
+
import { cloneDeep, getDefaultPropsFromGlobalConfig } from '../_utils';
|
|
14
14
|
const prefixCls = cssClasses.PREFIX;
|
|
15
15
|
const Boundary = strings.BOUNDARY_MAP;
|
|
16
16
|
const OverflowDirection = strings.OVERFLOW_DIR;
|
|
@@ -269,7 +269,8 @@ class OverflowList extends BaseComponent {
|
|
|
269
269
|
}, list);
|
|
270
270
|
}
|
|
271
271
|
}
|
|
272
|
-
OverflowList.
|
|
272
|
+
OverflowList.__SemiComponentName__ = "OverflowList";
|
|
273
|
+
OverflowList.defaultProps = getDefaultPropsFromGlobalConfig(OverflowList.__SemiComponentName__, {
|
|
273
274
|
collapseFrom: 'end',
|
|
274
275
|
minVisibleItems: 0,
|
|
275
276
|
overflowRenderer: () => null,
|
|
@@ -277,7 +278,7 @@ OverflowList.defaultProps = {
|
|
|
277
278
|
threshold: 0.75,
|
|
278
279
|
visibleItemRenderer: () => null,
|
|
279
280
|
onOverflow: () => null
|
|
280
|
-
};
|
|
281
|
+
});
|
|
281
282
|
OverflowList.propTypes = {
|
|
282
283
|
// if render in scroll mode, key is required in items
|
|
283
284
|
className: PropTypes.string,
|
|
@@ -65,21 +65,8 @@ export default class Popconfirm extends BaseComponent<PopconfirmProps, Popconfir
|
|
|
65
65
|
trigger: PropTypes.Requireable<string>;
|
|
66
66
|
position: PropTypes.Requireable<string>;
|
|
67
67
|
};
|
|
68
|
-
static
|
|
69
|
-
|
|
70
|
-
trigger: string;
|
|
71
|
-
onVisibleChange: (...args: any[]) => void;
|
|
72
|
-
disabled: boolean;
|
|
73
|
-
icon: JSX.Element;
|
|
74
|
-
okType: string;
|
|
75
|
-
cancelType: string;
|
|
76
|
-
prefixCls: string;
|
|
77
|
-
zIndex: number;
|
|
78
|
-
showCloseIcon: boolean;
|
|
79
|
-
onCancel: (...args: any[]) => void;
|
|
80
|
-
onConfirm: (...args: any[]) => void;
|
|
81
|
-
onClickOutSide: (...args: any[]) => void;
|
|
82
|
-
};
|
|
68
|
+
static __SemiComponentName__: string;
|
|
69
|
+
static defaultProps: any;
|
|
83
70
|
footerRef: React.RefObject<HTMLDivElement | null>;
|
|
84
71
|
popoverRef: React.RefObject<Popover | null>;
|
|
85
72
|
foundation: PopconfirmFoundation;
|
|
@@ -22,6 +22,7 @@ import Button from '../button';
|
|
|
22
22
|
import ConfigContext from '../configProvider/context';
|
|
23
23
|
import LocaleConsumer from '../locale/localeConsumer';
|
|
24
24
|
import '@douyinfe/semi-foundation/lib/es/popconfirm/popconfirm.css';
|
|
25
|
+
import { getDefaultPropsFromGlobalConfig } from "../_utils";
|
|
25
26
|
export default class Popconfirm extends BaseComponent {
|
|
26
27
|
constructor(props) {
|
|
27
28
|
super(props);
|
|
@@ -253,7 +254,8 @@ Popconfirm.propTypes = {
|
|
|
253
254
|
trigger: PropTypes.string,
|
|
254
255
|
position: PropTypes.string
|
|
255
256
|
};
|
|
256
|
-
Popconfirm.
|
|
257
|
+
Popconfirm.__SemiComponentName__ = "Popconfirm";
|
|
258
|
+
Popconfirm.defaultProps = getDefaultPropsFromGlobalConfig(Popconfirm.__SemiComponentName__, {
|
|
257
259
|
stopPropagation: true,
|
|
258
260
|
trigger: 'click',
|
|
259
261
|
// position: 'bottomLeft',
|
|
@@ -270,4 +272,4 @@ Popconfirm.defaultProps = {
|
|
|
270
272
|
onCancel: _noop,
|
|
271
273
|
onConfirm: _noop,
|
|
272
274
|
onClickOutSide: _noop
|
|
273
|
-
};
|
|
275
|
+
});
|
|
@@ -81,29 +81,8 @@ declare class Popover extends React.PureComponent<PopoverProps, PopoverState> {
|
|
|
81
81
|
guardFocus: PropTypes.Requireable<boolean>;
|
|
82
82
|
disableArrowKeyDown: PropTypes.Requireable<boolean>;
|
|
83
83
|
};
|
|
84
|
-
static
|
|
85
|
-
|
|
86
|
-
offsetY: number;
|
|
87
|
-
offsetX: number;
|
|
88
|
-
height: number;
|
|
89
|
-
width: 24;
|
|
90
|
-
};
|
|
91
|
-
showArrow: boolean;
|
|
92
|
-
autoAdjustOverflow: boolean;
|
|
93
|
-
zIndex: number;
|
|
94
|
-
motion: boolean;
|
|
95
|
-
trigger: string;
|
|
96
|
-
cancelText: string;
|
|
97
|
-
okText: string;
|
|
98
|
-
position: string;
|
|
99
|
-
prefixCls: string;
|
|
100
|
-
onClickOutSide: (...args: any[]) => void;
|
|
101
|
-
onEscKeyDown: (...args: any[]) => void;
|
|
102
|
-
closeOnEsc: boolean;
|
|
103
|
-
returnFocusOnClose: boolean;
|
|
104
|
-
guardFocus: boolean;
|
|
105
|
-
disableFocusListener: boolean;
|
|
106
|
-
};
|
|
84
|
+
static __SemiComponentName__: string;
|
|
85
|
+
static defaultProps: any;
|
|
107
86
|
context: ContextValue;
|
|
108
87
|
tooltipRef: React.RefObject<Tooltip | null>;
|
|
109
88
|
constructor(props: PopoverProps);
|
package/lib/es/popover/index.js
CHANGED
|
@@ -17,6 +17,7 @@ import Tooltip from '../tooltip/index';
|
|
|
17
17
|
import Arrow from './Arrow';
|
|
18
18
|
import '@douyinfe/semi-foundation/lib/es/popover/popover.css';
|
|
19
19
|
import isNullOrUndefined from '@douyinfe/semi-foundation/lib/es/utils/isNullOrUndefined';
|
|
20
|
+
import { getDefaultPropsFromGlobalConfig } from "../_utils";
|
|
20
21
|
const positionSet = strings.POSITION_SET;
|
|
21
22
|
const triggerSet = strings.TRIGGER_SET;
|
|
22
23
|
class Popover extends React.PureComponent {
|
|
@@ -140,7 +141,8 @@ Popover.propTypes = {
|
|
|
140
141
|
guardFocus: PropTypes.bool,
|
|
141
142
|
disableArrowKeyDown: PropTypes.bool
|
|
142
143
|
};
|
|
143
|
-
Popover.
|
|
144
|
+
Popover.__SemiComponentName__ = "Popover";
|
|
145
|
+
Popover.defaultProps = getDefaultPropsFromGlobalConfig(Popover.__SemiComponentName__, {
|
|
144
146
|
arrowBounding: numbers.ARROW_BOUNDING,
|
|
145
147
|
showArrow: false,
|
|
146
148
|
autoAdjustOverflow: true,
|
|
@@ -157,5 +159,5 @@ Popover.defaultProps = {
|
|
|
157
159
|
returnFocusOnClose: true,
|
|
158
160
|
guardFocus: true,
|
|
159
161
|
disableFocusListener: true
|
|
160
|
-
};
|
|
162
|
+
});
|
|
161
163
|
export default Popover;
|
|
@@ -9,26 +9,39 @@ export interface ResizeEntry {
|
|
|
9
9
|
export interface ReactResizeObserverProps extends BaseProps {
|
|
10
10
|
onResize?: (entries: ResizeEntry[]) => void;
|
|
11
11
|
observeParent?: boolean;
|
|
12
|
+
observerProperty?: ObserverProperty;
|
|
13
|
+
delayTick?: number;
|
|
14
|
+
}
|
|
15
|
+
export declare enum ObserverProperty {
|
|
16
|
+
Width = "width",
|
|
17
|
+
Height = "height",
|
|
18
|
+
All = "all"
|
|
12
19
|
}
|
|
13
20
|
export default class ReactResizeObserver extends BaseComponent<ReactResizeObserverProps> {
|
|
14
21
|
static propTypes: {
|
|
15
22
|
onResize: PropTypes.Requireable<(...args: any[]) => any>;
|
|
16
23
|
observeParent: PropTypes.Requireable<boolean>;
|
|
24
|
+
observerProperty: PropTypes.Requireable<string>;
|
|
25
|
+
delayTick: PropTypes.Requireable<number>;
|
|
17
26
|
};
|
|
18
27
|
static defaultProps: {
|
|
19
28
|
onResize: () => void;
|
|
20
29
|
observeParent: boolean;
|
|
30
|
+
observerProperty: string;
|
|
31
|
+
delayTick: number;
|
|
21
32
|
};
|
|
22
33
|
observer: ResizeObserver;
|
|
23
34
|
childNode: any;
|
|
24
35
|
element: Element;
|
|
25
36
|
_parentNode: HTMLElement;
|
|
37
|
+
formerPropertyValue: Map<Element, number>;
|
|
26
38
|
constructor(props: ReactResizeObserverProps);
|
|
27
39
|
componentDidMount(): void;
|
|
28
40
|
componentDidUpdate(prevProps: ReactResizeObserverProps): void;
|
|
29
41
|
componentWillUnmount(): void;
|
|
30
42
|
getElement: () => Element | Text;
|
|
31
|
-
|
|
43
|
+
handleResizeEventTriggered: (entries: ResizeEntry[]) => void;
|
|
44
|
+
observeElement: (force?: boolean) => void;
|
|
32
45
|
mergeRef: (ref: any, node: HTMLDivElement) => void;
|
|
33
46
|
render(): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
34
47
|
}
|
|
@@ -2,9 +2,18 @@ import React from 'react';
|
|
|
2
2
|
import { findDOMNode } from 'react-dom';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import BaseComponent from '../_base/baseComponent';
|
|
5
|
+
export var ObserverProperty;
|
|
6
|
+
(function (ObserverProperty) {
|
|
7
|
+
ObserverProperty["Width"] = "width";
|
|
8
|
+
ObserverProperty["Height"] = "height";
|
|
9
|
+
ObserverProperty["All"] = "all";
|
|
10
|
+
})(ObserverProperty || (ObserverProperty = {}));
|
|
5
11
|
export default class ReactResizeObserver extends BaseComponent {
|
|
6
12
|
constructor(props) {
|
|
13
|
+
var _this;
|
|
7
14
|
super(props);
|
|
15
|
+
_this = this;
|
|
16
|
+
this.formerPropertyValue = new Map();
|
|
8
17
|
this.getElement = () => {
|
|
9
18
|
try {
|
|
10
19
|
// using findDOMNode for two reasons:
|
|
@@ -16,6 +25,54 @@ export default class ReactResizeObserver extends BaseComponent {
|
|
|
16
25
|
return null;
|
|
17
26
|
}
|
|
18
27
|
};
|
|
28
|
+
this.handleResizeEventTriggered = entries => {
|
|
29
|
+
if (this.props.observerProperty === ObserverProperty.All) {
|
|
30
|
+
this.props.onResize(entries);
|
|
31
|
+
} else {
|
|
32
|
+
const finalEntries = [];
|
|
33
|
+
for (const entry of entries) {
|
|
34
|
+
if (this.formerPropertyValue.has(entry.target)) {
|
|
35
|
+
if (entry.contentRect[this.props.observerProperty] !== this.formerPropertyValue.get(entry.target)) {
|
|
36
|
+
this.formerPropertyValue.set(entry.target, entry.contentRect[this.props.observerProperty]);
|
|
37
|
+
finalEntries.push(entry);
|
|
38
|
+
}
|
|
39
|
+
} else {
|
|
40
|
+
this.formerPropertyValue.set(entry.target, entry.contentRect[this.props.observerProperty]);
|
|
41
|
+
finalEntries.push(entry);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
if (finalEntries.length > 0) {
|
|
45
|
+
this.props.onResize(finalEntries);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
this.observeElement = function () {
|
|
50
|
+
let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
51
|
+
const element = _this.getElement();
|
|
52
|
+
if (!_this.observer) {
|
|
53
|
+
_this.observer = new ResizeObserver(_this.handleResizeEventTriggered);
|
|
54
|
+
}
|
|
55
|
+
if (!(element && element instanceof Element)) {
|
|
56
|
+
// stop everything if not defined
|
|
57
|
+
_this.observer.disconnect();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (element === _this.element && !force) {
|
|
61
|
+
// abort if given same element -- nothing to update (unless forced)
|
|
62
|
+
return;
|
|
63
|
+
} else {
|
|
64
|
+
// clear observer list if new element
|
|
65
|
+
_this.observer.disconnect();
|
|
66
|
+
// remember element reference for next time
|
|
67
|
+
_this.element = element;
|
|
68
|
+
}
|
|
69
|
+
// observer callback is invoked immediately when observing new elements
|
|
70
|
+
_this.observer.observe(element);
|
|
71
|
+
if (_this.props.observeParent && element.parentNode && element.parentNode.ownerDocument && element.parentNode.ownerDocument.defaultView && element.parentNode instanceof element.parentNode.ownerDocument.defaultView.HTMLElement) {
|
|
72
|
+
_this._parentNode = element.parentNode;
|
|
73
|
+
_this.observer.observe(_this._parentNode);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
19
76
|
this.mergeRef = (ref, node) => {
|
|
20
77
|
this.childNode = node;
|
|
21
78
|
if (typeof ref === 'function') {
|
|
@@ -25,7 +82,7 @@ export default class ReactResizeObserver extends BaseComponent {
|
|
|
25
82
|
}
|
|
26
83
|
};
|
|
27
84
|
if (globalThis['ResizeObserver']) {
|
|
28
|
-
this.observer = new ResizeObserver(
|
|
85
|
+
this.observer = new ResizeObserver(this.handleResizeEventTriggered);
|
|
29
86
|
}
|
|
30
87
|
}
|
|
31
88
|
componentDidMount() {
|
|
@@ -43,33 +100,6 @@ export default class ReactResizeObserver extends BaseComponent {
|
|
|
43
100
|
this.element = null;
|
|
44
101
|
}
|
|
45
102
|
}
|
|
46
|
-
observeElement() {
|
|
47
|
-
let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
48
|
-
const element = this.getElement();
|
|
49
|
-
if (!this.observer) {
|
|
50
|
-
this.observer = new ResizeObserver(this.props.onResize);
|
|
51
|
-
}
|
|
52
|
-
if (!(element && element instanceof Element)) {
|
|
53
|
-
// stop everything if not defined
|
|
54
|
-
this.observer.disconnect();
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
if (element === this.element && !force) {
|
|
58
|
-
// abort if given same element -- nothing to update (unless forced)
|
|
59
|
-
return;
|
|
60
|
-
} else {
|
|
61
|
-
// clear observer list if new element
|
|
62
|
-
this.observer.disconnect();
|
|
63
|
-
// remember element reference for next time
|
|
64
|
-
this.element = element;
|
|
65
|
-
}
|
|
66
|
-
// observer callback is invoked immediately when observing new elements
|
|
67
|
-
this.observer.observe(element);
|
|
68
|
-
if (this.props.observeParent && element.parentNode && element.parentNode.ownerDocument && element.parentNode.ownerDocument.defaultView && element.parentNode instanceof element.parentNode.ownerDocument.defaultView.HTMLElement) {
|
|
69
|
-
this._parentNode = element.parentNode;
|
|
70
|
-
this.observer.observe(this._parentNode);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
103
|
render() {
|
|
74
104
|
const child = React.Children.only(this.props.children);
|
|
75
105
|
const {
|
|
@@ -82,9 +112,13 @@ export default class ReactResizeObserver extends BaseComponent {
|
|
|
82
112
|
}
|
|
83
113
|
ReactResizeObserver.propTypes = {
|
|
84
114
|
onResize: PropTypes.func,
|
|
85
|
-
observeParent: PropTypes.bool
|
|
115
|
+
observeParent: PropTypes.bool,
|
|
116
|
+
observerProperty: PropTypes.string,
|
|
117
|
+
delayTick: PropTypes.number
|
|
86
118
|
};
|
|
87
119
|
ReactResizeObserver.defaultProps = {
|
|
88
120
|
onResize: () => {},
|
|
89
|
-
observeParent: false
|
|
121
|
+
observeParent: false,
|
|
122
|
+
observerProperty: "all",
|
|
123
|
+
delayTick: 0
|
|
90
124
|
};
|
package/lib/es/select/index.d.ts
CHANGED
|
@@ -251,6 +251,7 @@ declare class Select extends BaseComponent<SelectProps, SelectState> {
|
|
|
251
251
|
arrowIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
252
252
|
preventScroll: PropTypes.Requireable<boolean>;
|
|
253
253
|
};
|
|
254
|
+
static __SemiComponentName__: string;
|
|
254
255
|
static defaultProps: Partial<SelectProps>;
|
|
255
256
|
inputRef: React.RefObject<HTMLInputElement>;
|
|
256
257
|
triggerRef: React.RefObject<HTMLDivElement>;
|
package/lib/es/select/index.js
CHANGED
|
@@ -38,7 +38,7 @@ import OptionGroup from './optionGroup';
|
|
|
38
38
|
import Spin from '../spin';
|
|
39
39
|
import Trigger from '../trigger';
|
|
40
40
|
import { IconChevronDown, IconClear } from '@douyinfe/semi-icons';
|
|
41
|
-
import { isSemiIcon, getFocusableElements, getActiveElement } from '../_utils';
|
|
41
|
+
import { isSemiIcon, getFocusableElements, getActiveElement, getDefaultPropsFromGlobalConfig } from '../_utils';
|
|
42
42
|
import { getUuidShort } from '@douyinfe/semi-foundation/lib/es/utils/uuid';
|
|
43
43
|
import '@douyinfe/semi-foundation/lib/es/select/select.css';
|
|
44
44
|
const prefixcls = cssClasses.PREFIX;
|
|
@@ -1284,7 +1284,8 @@ Select.propTypes = {
|
|
|
1284
1284
|
// tagClosable: PropTypes.bool,
|
|
1285
1285
|
};
|
|
1286
1286
|
|
|
1287
|
-
Select.
|
|
1287
|
+
Select.__SemiComponentName__ = "Select";
|
|
1288
|
+
Select.defaultProps = getDefaultPropsFromGlobalConfig(Select.__SemiComponentName__, {
|
|
1288
1289
|
stopPropagation: true,
|
|
1289
1290
|
motion: true,
|
|
1290
1291
|
borderless: false,
|
|
@@ -1329,6 +1330,6 @@ Select.defaultProps = {
|
|
|
1329
1330
|
// renderSelectedItem: (optionNode) => optionNode.label,
|
|
1330
1331
|
// The default creator rendering is related to i18, so it is not declared here
|
|
1331
1332
|
// renderCreateItem: (input) => input
|
|
1332
|
-
};
|
|
1333
|
+
});
|
|
1333
1334
|
|
|
1334
1335
|
export default Select;
|
|
@@ -45,6 +45,7 @@ export default class SideSheet extends BaseComponent<SideSheetReactProps, SideSh
|
|
|
45
45
|
keepDOM: PropTypes.Requireable<boolean>;
|
|
46
46
|
'aria-label': PropTypes.Requireable<string>;
|
|
47
47
|
};
|
|
48
|
+
static __SemiComponentName__: string;
|
|
48
49
|
static defaultProps: SideSheetReactProps;
|
|
49
50
|
private _active;
|
|
50
51
|
constructor(props: SideSheetReactProps);
|
|
@@ -18,7 +18,7 @@ import SideSheetContent from './SideSheetContent';
|
|
|
18
18
|
import SideSheetFoundation from '@douyinfe/semi-foundation/lib/es/sideSheet/sideSheetFoundation';
|
|
19
19
|
import '@douyinfe/semi-foundation/lib/es/sideSheet/sideSheet.css';
|
|
20
20
|
import CSSAnimation from "../_cssAnimation";
|
|
21
|
-
import { getScrollbarWidth } from '../_utils';
|
|
21
|
+
import { getDefaultPropsFromGlobalConfig, getScrollbarWidth } from '../_utils';
|
|
22
22
|
const prefixCls = cssClasses.PREFIX;
|
|
23
23
|
const defaultWidthList = strings.WIDTH;
|
|
24
24
|
const defaultHeight = strings.HEIGHT;
|
|
@@ -141,6 +141,15 @@ export default class SideSheet extends BaseComponent {
|
|
|
141
141
|
keepDOM
|
|
142
142
|
} = _a,
|
|
143
143
|
props = __rest(_a, ["placement", "className", "children", "width", "height", "motion", "visible", "style", "maskStyle", "size", "zIndex", "getPopupContainer", "keepDOM"]);
|
|
144
|
+
let wrapperStyle = {
|
|
145
|
+
zIndex
|
|
146
|
+
};
|
|
147
|
+
if (getPopupContainer) {
|
|
148
|
+
wrapperStyle = {
|
|
149
|
+
zIndex,
|
|
150
|
+
position: 'static'
|
|
151
|
+
};
|
|
152
|
+
}
|
|
144
153
|
const {
|
|
145
154
|
direction
|
|
146
155
|
} = this.context;
|
|
@@ -189,35 +198,27 @@ export default class SideSheet extends BaseComponent {
|
|
|
189
198
|
animationStyle,
|
|
190
199
|
animationEventsNeedBind
|
|
191
200
|
} = _ref2;
|
|
192
|
-
return shouldRender ? /*#__PURE__*/React.createElement(
|
|
201
|
+
return shouldRender ? /*#__PURE__*/React.createElement(Portal, {
|
|
202
|
+
getPopupContainer: getPopupContainer,
|
|
203
|
+
style: wrapperStyle
|
|
204
|
+
}, /*#__PURE__*/React.createElement(SideSheetContent, Object.assign({}, contentProps, {
|
|
193
205
|
maskExtraProps: maskAnimationEventsNeedBind,
|
|
194
206
|
wrapperExtraProps: animationEventsNeedBind,
|
|
195
207
|
dialogClassName: animationClassName,
|
|
196
208
|
maskClassName: maskAnimationClassName,
|
|
197
209
|
maskStyle: Object.assign({}, maskStyle),
|
|
198
210
|
style: Object.assign(Object.assign({}, animationStyle), style)
|
|
199
|
-
}), children) : /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
211
|
+
}), children)) : /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
200
212
|
});
|
|
201
213
|
});
|
|
202
214
|
}
|
|
203
215
|
render() {
|
|
204
216
|
const {
|
|
205
217
|
zIndex,
|
|
206
|
-
getPopupContainer
|
|
218
|
+
getPopupContainer,
|
|
219
|
+
visible
|
|
207
220
|
} = this.props;
|
|
208
|
-
|
|
209
|
-
zIndex
|
|
210
|
-
};
|
|
211
|
-
if (getPopupContainer) {
|
|
212
|
-
wrapperStyle = {
|
|
213
|
-
zIndex,
|
|
214
|
-
position: 'static'
|
|
215
|
-
};
|
|
216
|
-
}
|
|
217
|
-
return /*#__PURE__*/React.createElement(Portal, {
|
|
218
|
-
getPopupContainer: getPopupContainer,
|
|
219
|
-
style: wrapperStyle
|
|
220
|
-
}, this.renderContent());
|
|
221
|
+
return this.renderContent();
|
|
221
222
|
}
|
|
222
223
|
}
|
|
223
224
|
SideSheet.contextType = ConfigContext;
|
|
@@ -248,7 +249,8 @@ SideSheet.propTypes = {
|
|
|
248
249
|
keepDOM: PropTypes.bool,
|
|
249
250
|
'aria-label': PropTypes.string
|
|
250
251
|
};
|
|
251
|
-
SideSheet.
|
|
252
|
+
SideSheet.__SemiComponentName__ = "SideSheet";
|
|
253
|
+
SideSheet.defaultProps = getDefaultPropsFromGlobalConfig(SideSheet.__SemiComponentName__, {
|
|
252
254
|
visible: false,
|
|
253
255
|
motion: true,
|
|
254
256
|
mask: true,
|
|
@@ -262,4 +264,4 @@ SideSheet.defaultProps = {
|
|
|
262
264
|
closeOnEsc: false,
|
|
263
265
|
afterVisibleChange: _noop,
|
|
264
266
|
keepDOM: false
|
|
265
|
-
};
|
|
267
|
+
});
|
package/lib/es/tabs/index.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ declare class Tabs extends BaseComponent<TabsProps, TabsState> {
|
|
|
38
38
|
onTabClose: PropTypes.Requireable<(...args: any[]) => any>;
|
|
39
39
|
preventScroll: PropTypes.Requireable<boolean>;
|
|
40
40
|
};
|
|
41
|
+
static __SemiComponentName__: string;
|
|
41
42
|
static defaultProps: TabsProps;
|
|
42
43
|
contentRef: RefObject<HTMLDivElement>;
|
|
43
44
|
contentHeight: string;
|
package/lib/es/tabs/index.js
CHANGED
|
@@ -20,6 +20,7 @@ import TabBar from './TabBar';
|
|
|
20
20
|
import TabPane from './TabPane';
|
|
21
21
|
import TabItem from './TabItem';
|
|
22
22
|
import TabsContext from './tabs-context';
|
|
23
|
+
import { getDefaultPropsFromGlobalConfig } from "../_utils";
|
|
23
24
|
const panePickKeys = ['className', 'style', 'disabled', 'itemKey', 'tab', 'icon'];
|
|
24
25
|
export * from './interface';
|
|
25
26
|
class Tabs extends BaseComponent {
|
|
@@ -320,7 +321,8 @@ Tabs.propTypes = {
|
|
|
320
321
|
onTabClose: PropTypes.func,
|
|
321
322
|
preventScroll: PropTypes.bool
|
|
322
323
|
};
|
|
323
|
-
Tabs.
|
|
324
|
+
Tabs.__SemiComponentName__ = "Tabs";
|
|
325
|
+
Tabs.defaultProps = getDefaultPropsFromGlobalConfig(Tabs.__SemiComponentName__, {
|
|
324
326
|
children: [],
|
|
325
327
|
collapsible: false,
|
|
326
328
|
keepDOM: true,
|
|
@@ -332,5 +334,5 @@ Tabs.defaultProps = {
|
|
|
332
334
|
tabPosition: 'top',
|
|
333
335
|
type: 'line',
|
|
334
336
|
onTabClose: () => undefined
|
|
335
|
-
};
|
|
337
|
+
});
|
|
336
338
|
export default Tabs;
|
|
@@ -34,7 +34,7 @@ export interface TagInputProps {
|
|
|
34
34
|
onFocus?: (e: React.MouseEvent<HTMLInputElement>) => void;
|
|
35
35
|
onInputChange?: (value: string, e: React.MouseEvent<HTMLInputElement>) => void;
|
|
36
36
|
onInputExceed?: ((value: string) => void);
|
|
37
|
-
onKeyDown?: (e: React.
|
|
37
|
+
onKeyDown?: (e: React.KeyboardEvent<HTMLInputElement>) => void;
|
|
38
38
|
onRemove?: (removedValue: string, idx: number) => void;
|
|
39
39
|
placeholder?: string;
|
|
40
40
|
insetLabel?: React.ReactNode;
|
|
@@ -72,39 +72,7 @@ export default class LocaleTimePicker extends React.PureComponent<LocalePickerPr
|
|
|
72
72
|
motion: import("prop-types").Requireable<NonNullable<boolean | object>>;
|
|
73
73
|
autoAdjustOverflow: import("prop-types").Requireable<boolean>;
|
|
74
74
|
};
|
|
75
|
-
static
|
|
76
|
-
|
|
77
|
-
borderless: boolean;
|
|
78
|
-
getPopupContainer: () => HTMLElement;
|
|
79
|
-
showClear: boolean;
|
|
80
|
-
zIndex: number;
|
|
81
|
-
rangeSeparator: " ~ ";
|
|
82
|
-
onOpenChange: (...args: any[]) => void;
|
|
83
|
-
clearText: string;
|
|
84
|
-
prefixCls: string;
|
|
85
|
-
inputReadOnly: boolean;
|
|
86
|
-
style: {};
|
|
87
|
-
stopPropagation: boolean;
|
|
88
|
-
className: string;
|
|
89
|
-
popupClassName: string;
|
|
90
|
-
popupStyle: {
|
|
91
|
-
left: string;
|
|
92
|
-
top: string;
|
|
93
|
-
};
|
|
94
|
-
disabledHours: () => number[];
|
|
95
|
-
disabledMinutes: () => number[];
|
|
96
|
-
disabledSeconds: () => number[];
|
|
97
|
-
hideDisabledOptions: boolean;
|
|
98
|
-
onFocus: (...args: any[]) => void;
|
|
99
|
-
onBlur: (...args: any[]) => void;
|
|
100
|
-
onChange: (...args: any[]) => void;
|
|
101
|
-
onChangeWithDateFirst: boolean;
|
|
102
|
-
use12Hours: boolean;
|
|
103
|
-
focusOnOpen: boolean;
|
|
104
|
-
onKeyDown: (...args: any[]) => void;
|
|
105
|
-
size: "default";
|
|
106
|
-
type: "time";
|
|
107
|
-
motion: boolean;
|
|
108
|
-
};
|
|
75
|
+
static __SemiComponentName__: string;
|
|
76
|
+
static defaultProps: any;
|
|
109
77
|
render(): JSX.Element;
|
|
110
78
|
}
|
|
@@ -3,6 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import LocaleConsumer from '../locale/localeConsumer';
|
|
4
4
|
import BaseTimePicker from './TimePicker';
|
|
5
5
|
import ConfigContext from '../configProvider/context';
|
|
6
|
+
import { getDefaultPropsFromGlobalConfig } from "../_utils";
|
|
6
7
|
export default class LocaleTimePicker extends React.PureComponent {
|
|
7
8
|
render() {
|
|
8
9
|
const {
|
|
@@ -26,4 +27,5 @@ export default class LocaleTimePicker extends React.PureComponent {
|
|
|
26
27
|
}
|
|
27
28
|
}
|
|
28
29
|
LocaleTimePicker.propTypes = BaseTimePicker.propTypes;
|
|
29
|
-
LocaleTimePicker.
|
|
30
|
+
LocaleTimePicker.__SemiComponentName__ = "TimePicker";
|
|
31
|
+
LocaleTimePicker.defaultProps = getDefaultPropsFromGlobalConfig(LocaleTimePicker.__SemiComponentName__, BaseTimePicker.defaultProps);
|
package/lib/es/toast/toast.d.ts
CHANGED
|
@@ -35,17 +35,8 @@ declare class Toast extends BaseComponent<ToastReactProps, ToastState> {
|
|
|
35
35
|
icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
36
36
|
direction: PropTypes.Requireable<string>;
|
|
37
37
|
};
|
|
38
|
-
static
|
|
39
|
-
|
|
40
|
-
content: string;
|
|
41
|
-
close: (...args: any[]) => void;
|
|
42
|
-
duration: number;
|
|
43
|
-
textMaxWidth: number;
|
|
44
|
-
showClose: boolean;
|
|
45
|
-
stack: boolean;
|
|
46
|
-
stackExpanded: boolean;
|
|
47
|
-
theme: string;
|
|
48
|
-
};
|
|
38
|
+
static __SemiComponentName__: string;
|
|
39
|
+
static defaultProps: any;
|
|
49
40
|
constructor(props: ToastReactProps);
|
|
50
41
|
context: ContextValue;
|
|
51
42
|
get adapter(): ToastAdapter;
|
package/lib/es/toast/toast.js
CHANGED
|
@@ -8,7 +8,7 @@ import { numbers, cssClasses, strings } from '@douyinfe/semi-foundation/lib/es/t
|
|
|
8
8
|
import BaseComponent from '../_base/baseComponent';
|
|
9
9
|
import Button from '../iconButton/index';
|
|
10
10
|
import { IconClose, IconAlertTriangle, IconInfoCircle, IconTickCircle, IconAlertCircle } from '@douyinfe/semi-icons';
|
|
11
|
-
import { isSemiIcon } from '../_utils';
|
|
11
|
+
import { getDefaultPropsFromGlobalConfig, isSemiIcon } from '../_utils';
|
|
12
12
|
const prefixCls = cssClasses.PREFIX;
|
|
13
13
|
class Toast extends BaseComponent {
|
|
14
14
|
constructor(props) {
|
|
@@ -153,7 +153,8 @@ Toast.propTypes = {
|
|
|
153
153
|
icon: PropTypes.node,
|
|
154
154
|
direction: PropTypes.oneOf(strings.directions)
|
|
155
155
|
};
|
|
156
|
-
Toast.
|
|
156
|
+
Toast.__SemiComponentName__ = "Toast";
|
|
157
|
+
Toast.defaultProps = getDefaultPropsFromGlobalConfig(Toast.__SemiComponentName__, {
|
|
157
158
|
onClose: _noop,
|
|
158
159
|
content: '',
|
|
159
160
|
close: _noop,
|
|
@@ -163,5 +164,5 @@ Toast.defaultProps = {
|
|
|
163
164
|
stack: false,
|
|
164
165
|
stackExpanded: false,
|
|
165
166
|
theme: 'normal'
|
|
166
|
-
};
|
|
167
|
+
});
|
|
167
168
|
export default Toast;
|
|
@@ -127,38 +127,8 @@ export default class Tooltip extends BaseComponent<TooltipProps, TooltipState> {
|
|
|
127
127
|
preventScroll: PropTypes.Requireable<boolean>;
|
|
128
128
|
keepDOM: PropTypes.Requireable<boolean>;
|
|
129
129
|
};
|
|
130
|
-
static
|
|
131
|
-
|
|
132
|
-
readonly offsetX: 0;
|
|
133
|
-
readonly offsetY: 2;
|
|
134
|
-
readonly width: 24;
|
|
135
|
-
readonly height: 7;
|
|
136
|
-
};
|
|
137
|
-
autoAdjustOverflow: boolean;
|
|
138
|
-
arrowPointAtCenter: boolean;
|
|
139
|
-
trigger: string;
|
|
140
|
-
transformFromCenter: boolean;
|
|
141
|
-
position: string;
|
|
142
|
-
prefixCls: "semi-tooltip";
|
|
143
|
-
role: string;
|
|
144
|
-
mouseEnterDelay: 50;
|
|
145
|
-
mouseLeaveDelay: 50;
|
|
146
|
-
motion: boolean;
|
|
147
|
-
onVisibleChange: (...args: any[]) => void;
|
|
148
|
-
onClickOutSide: (...args: any[]) => void;
|
|
149
|
-
spacing: 8;
|
|
150
|
-
margin: 0;
|
|
151
|
-
showArrow: boolean;
|
|
152
|
-
wrapWhenSpecial: boolean;
|
|
153
|
-
zIndex: 1060;
|
|
154
|
-
closeOnEsc: boolean;
|
|
155
|
-
guardFocus: boolean;
|
|
156
|
-
returnFocusOnClose: boolean;
|
|
157
|
-
onEscKeyDown: (...args: any[]) => void;
|
|
158
|
-
disableFocusListener: boolean;
|
|
159
|
-
disableArrowKeyDown: boolean;
|
|
160
|
-
keepDOM: boolean;
|
|
161
|
-
};
|
|
130
|
+
static __SemiComponentName__: string;
|
|
131
|
+
static defaultProps: any;
|
|
162
132
|
eventManager: Event;
|
|
163
133
|
triggerEl: React.RefObject<unknown>;
|
|
164
134
|
containerEl: React.RefObject<HTMLDivElement>;
|
package/lib/es/tooltip/index.js
CHANGED
|
@@ -28,7 +28,7 @@ import { getUuidShort } from '@douyinfe/semi-foundation/lib/es/utils/uuid';
|
|
|
28
28
|
import '@douyinfe/semi-foundation/lib/es/tooltip/tooltip.css';
|
|
29
29
|
import BaseComponent from '../_base/baseComponent';
|
|
30
30
|
import { isHTMLElement } from '../_base/reactUtils';
|
|
31
|
-
import { getActiveElement, getFocusableElements, stopPropagation } from '../_utils';
|
|
31
|
+
import { getActiveElement, getDefaultPropsFromGlobalConfig, getFocusableElements, stopPropagation } from '../_utils';
|
|
32
32
|
import Portal from '../_portal/index';
|
|
33
33
|
import ConfigContext from '../configProvider/context';
|
|
34
34
|
import TriangleArrow from './TriangleArrow';
|
|
@@ -672,7 +672,8 @@ Tooltip.propTypes = {
|
|
|
672
672
|
preventScroll: PropTypes.bool,
|
|
673
673
|
keepDOM: PropTypes.bool
|
|
674
674
|
};
|
|
675
|
-
Tooltip.
|
|
675
|
+
Tooltip.__SemiComponentName__ = "Tooltip";
|
|
676
|
+
Tooltip.defaultProps = getDefaultPropsFromGlobalConfig(Tooltip.__SemiComponentName__, {
|
|
676
677
|
arrowBounding: numbers.ARROW_BOUNDING,
|
|
677
678
|
autoAdjustOverflow: true,
|
|
678
679
|
arrowPointAtCenter: true,
|
|
@@ -698,4 +699,4 @@ Tooltip.defaultProps = {
|
|
|
698
699
|
disableFocusListener: false,
|
|
699
700
|
disableArrowKeyDown: false,
|
|
700
701
|
keepDOM: false
|
|
701
|
-
};
|
|
702
|
+
});
|