@douyinfe/semi-ui 2.51.3 → 2.52.0-beta.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 +285 -0
- package/dist/css/semi.min.css +1 -1
- package/dist/umd/semi-ui.js +434 -111
- 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 -1
- package/lib/cjs/_utils/index.js +0 -5
- package/lib/cjs/avatar/TopSlotSvg.d.ts +5 -0
- package/lib/cjs/avatar/TopSlotSvg.js +74 -0
- package/lib/cjs/avatar/index.d.ts +25 -0
- package/lib/cjs/avatar/index.js +126 -8
- package/lib/cjs/avatar/interface.d.ts +24 -1
- package/lib/cjs/dropdown/dropdownItem.js +2 -1
- package/lib/cjs/input/index.d.ts +1 -0
- package/lib/cjs/input/index.js +12 -4
- package/lib/cjs/modal/Modal.d.ts +1 -0
- package/lib/cjs/modal/Modal.js +11 -3
- package/lib/cjs/modal/confirm.d.ts +5 -0
- package/lib/cjs/slider/index.js +33 -1
- package/lib/cjs/table/ColumnFilter.d.ts +34 -18
- package/lib/cjs/table/ColumnFilter.js +134 -73
- package/lib/cjs/table/Table.d.ts +5 -5
- package/lib/cjs/table/Table.js +38 -13
- package/lib/cjs/table/index.d.ts +1 -1
- package/lib/cjs/table/interface.d.ts +30 -10
- package/lib/cjs/treeSelect/index.d.ts +2 -0
- package/lib/cjs/treeSelect/index.js +4 -0
- package/lib/es/_utils/index.d.ts +2 -1
- package/lib/es/_utils/index.js +0 -5
- package/lib/es/avatar/TopSlotSvg.d.ts +5 -0
- package/lib/es/avatar/TopSlotSvg.js +66 -0
- package/lib/es/avatar/index.d.ts +25 -0
- package/lib/es/avatar/index.js +126 -8
- package/lib/es/avatar/interface.d.ts +24 -1
- package/lib/es/dropdown/dropdownItem.js +2 -1
- package/lib/es/input/index.d.ts +1 -0
- package/lib/es/input/index.js +12 -4
- package/lib/es/modal/Modal.d.ts +1 -0
- package/lib/es/modal/Modal.js +11 -3
- package/lib/es/modal/confirm.d.ts +5 -0
- package/lib/es/slider/index.js +33 -1
- package/lib/es/table/ColumnFilter.d.ts +34 -18
- package/lib/es/table/ColumnFilter.js +135 -74
- package/lib/es/table/Table.d.ts +5 -5
- package/lib/es/table/Table.js +38 -13
- package/lib/es/table/index.d.ts +1 -1
- package/lib/es/table/interface.d.ts +30 -10
- package/lib/es/treeSelect/index.d.ts +2 -0
- package/lib/es/treeSelect/index.js +4 -0
- package/package.json +8 -8
package/lib/es/avatar/index.js
CHANGED
|
@@ -15,6 +15,7 @@ import '@douyinfe/semi-foundation/lib/es/avatar/avatar.css';
|
|
|
15
15
|
import { noop } from '@douyinfe/semi-foundation/lib/es/utils/function';
|
|
16
16
|
import BaseComponent from '../_base/baseComponent';
|
|
17
17
|
import { handlePrevent } from '@douyinfe/semi-foundation/lib/es/utils/a11y';
|
|
18
|
+
import TopSlotSvg from "./TopSlotSvg";
|
|
18
19
|
const sizeSet = strings.SIZE;
|
|
19
20
|
const shapeSet = strings.SHAPE;
|
|
20
21
|
const colorSet = strings.COLOR;
|
|
@@ -88,6 +89,64 @@ export default class Avatar extends BaseComponent {
|
|
|
88
89
|
}
|
|
89
90
|
return content;
|
|
90
91
|
};
|
|
92
|
+
this.renderBottomSlot = () => {
|
|
93
|
+
var _a, _b;
|
|
94
|
+
if (!this.props.bottomSlot) {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
if (this.props.bottomSlot.render) {
|
|
98
|
+
return this.props.bottomSlot.render();
|
|
99
|
+
}
|
|
100
|
+
const renderContent = (_a = this.props.bottomSlot.render) !== null && _a !== void 0 ? _a : () => {
|
|
101
|
+
var _a;
|
|
102
|
+
const style = {};
|
|
103
|
+
if (this.props.bottomSlot.bgColor) {
|
|
104
|
+
style['backgroundColor'] = this.props.bottomSlot.bgColor;
|
|
105
|
+
}
|
|
106
|
+
if (this.props.bottomSlot.textColor) {
|
|
107
|
+
style['color'] = this.props.bottomSlot.textColor;
|
|
108
|
+
}
|
|
109
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
110
|
+
style: style,
|
|
111
|
+
className: cls(`${prefixCls}-bottom_slot-shape_${this.props.bottomSlot.shape}`, `${prefixCls}-bottom_slot-shape_${this.props.bottomSlot.shape}-${this.props.size}`, (_a = this.props.bottomSlot.className) !== null && _a !== void 0 ? _a : "")
|
|
112
|
+
}, this.props.bottomSlot.text);
|
|
113
|
+
};
|
|
114
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
115
|
+
className: cls([`${prefixCls}-bottom_slot`]),
|
|
116
|
+
style: (_b = this.props.bottomSlot.style) !== null && _b !== void 0 ? _b : {}
|
|
117
|
+
}, renderContent());
|
|
118
|
+
};
|
|
119
|
+
this.renderTopSlot = () => {
|
|
120
|
+
var _a, _b, _c, _d;
|
|
121
|
+
if (!this.props.topSlot) {
|
|
122
|
+
return null;
|
|
123
|
+
}
|
|
124
|
+
if (this.props.topSlot.render) {
|
|
125
|
+
return this.props.topSlot.render();
|
|
126
|
+
}
|
|
127
|
+
const textStyle = {};
|
|
128
|
+
if (this.props.topSlot.textColor) {
|
|
129
|
+
textStyle['color'] = this.props.topSlot.textColor;
|
|
130
|
+
}
|
|
131
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
132
|
+
style: (_a = this.props.topSlot.style) !== null && _a !== void 0 ? _a : {},
|
|
133
|
+
className: cls([`${prefixCls}-top_slot-wrapper`, (_b = this.props.topSlot.className) !== null && _b !== void 0 ? _b : "", {
|
|
134
|
+
[`${prefixCls}-animated`]: this.props.contentMotion
|
|
135
|
+
}])
|
|
136
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
137
|
+
className: cls([`${prefixCls}-top_slot-bg`, `${prefixCls}-top_slot-bg-${this.props.size}`])
|
|
138
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
139
|
+
className: cls([`${prefixCls}-top_slot-bg-svg`, `${prefixCls}-top_slot-bg-svg-${this.props.size}`])
|
|
140
|
+
}, /*#__PURE__*/React.createElement(TopSlotSvg, {
|
|
141
|
+
gradientStart: (_c = this.props.topSlot.gradientStart) !== null && _c !== void 0 ? _c : "var(--semi-color-primary)",
|
|
142
|
+
gradientEnd: (_d = this.props.topSlot.gradientEnd) !== null && _d !== void 0 ? _d : "var(--semi-color-primary)"
|
|
143
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
|
144
|
+
className: cls([`${prefixCls}-top_slot`])
|
|
145
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
146
|
+
style: textStyle,
|
|
147
|
+
className: cls([`${prefixCls}-top_slot-content`, `${prefixCls}-top_slot-content-${this.props.size}`])
|
|
148
|
+
}, this.props.topSlot.text)));
|
|
149
|
+
};
|
|
91
150
|
this.state = {
|
|
92
151
|
isImgExist: true,
|
|
93
152
|
hoverContent: '',
|
|
@@ -205,7 +264,8 @@ export default class Avatar extends BaseComponent {
|
|
|
205
264
|
}
|
|
206
265
|
}
|
|
207
266
|
render() {
|
|
208
|
-
|
|
267
|
+
var _a, _b;
|
|
268
|
+
const _c = this.props,
|
|
209
269
|
{
|
|
210
270
|
shape,
|
|
211
271
|
children,
|
|
@@ -219,9 +279,13 @@ export default class Avatar extends BaseComponent {
|
|
|
219
279
|
srcSet,
|
|
220
280
|
style,
|
|
221
281
|
alt,
|
|
222
|
-
gap
|
|
223
|
-
|
|
224
|
-
|
|
282
|
+
gap,
|
|
283
|
+
bottomSlot,
|
|
284
|
+
topSlot,
|
|
285
|
+
border,
|
|
286
|
+
contentMotion
|
|
287
|
+
} = _c,
|
|
288
|
+
others = __rest(_c, ["shape", "children", "size", "color", "className", "hoverMask", "onClick", "imgAttr", "src", "srcSet", "style", "alt", "gap", "bottomSlot", "topSlot", "border", "contentMotion"]);
|
|
225
289
|
const {
|
|
226
290
|
isImgExist,
|
|
227
291
|
hoverContent,
|
|
@@ -233,14 +297,15 @@ export default class Avatar extends BaseComponent {
|
|
|
233
297
|
[`${prefixCls}-${size}`]: size,
|
|
234
298
|
[`${prefixCls}-${color}`]: color && !isImg,
|
|
235
299
|
[`${prefixCls}-img`]: isImg,
|
|
236
|
-
[`${prefixCls}-focus`]: focusVisible
|
|
300
|
+
[`${prefixCls}-focus`]: focusVisible,
|
|
301
|
+
[`${prefixCls}-animated`]: contentMotion
|
|
237
302
|
}, className);
|
|
238
303
|
const hoverRender = hoverContent ? /*#__PURE__*/React.createElement("div", {
|
|
239
304
|
className: `${prefixCls}-hover`,
|
|
240
305
|
"x-semi-prop": "hoverContent"
|
|
241
306
|
}, hoverContent) : null;
|
|
242
|
-
|
|
243
|
-
style: style,
|
|
307
|
+
let avatar = /*#__PURE__*/React.createElement("span", Object.assign({}, others, {
|
|
308
|
+
style: border || bottomSlot || topSlot || border ? {} : style,
|
|
244
309
|
className: avatarCls,
|
|
245
310
|
onClick: onClick,
|
|
246
311
|
onMouseEnter: this.onEnter,
|
|
@@ -248,6 +313,36 @@ export default class Avatar extends BaseComponent {
|
|
|
248
313
|
role: 'listitem',
|
|
249
314
|
ref: this.avatarRef
|
|
250
315
|
}), this.getContent(), hoverRender);
|
|
316
|
+
if (border) {
|
|
317
|
+
const borderStyle = {};
|
|
318
|
+
if (border === null || border === void 0 ? void 0 : border.color) {
|
|
319
|
+
borderStyle['borderColor'] = border.color;
|
|
320
|
+
}
|
|
321
|
+
avatar = /*#__PURE__*/React.createElement("div", {
|
|
322
|
+
style: Object.assign({
|
|
323
|
+
position: "relative"
|
|
324
|
+
}, style)
|
|
325
|
+
}, avatar, /*#__PURE__*/React.createElement("span", {
|
|
326
|
+
style: borderStyle,
|
|
327
|
+
className: cls([`${prefixCls}-additionalBorder`, `${prefixCls}-additionalBorder-${size}`, {
|
|
328
|
+
[`${prefixCls}-${shape}`]: shape
|
|
329
|
+
}])
|
|
330
|
+
}), ((_a = this.props.border) === null || _a === void 0 ? void 0 : _a.motion) && /*#__PURE__*/React.createElement("span", {
|
|
331
|
+
style: borderStyle,
|
|
332
|
+
className: cls([`${prefixCls}-additionalBorder`, `${prefixCls}-additionalBorder-${size}`, {
|
|
333
|
+
[`${prefixCls}-${shape}`]: shape,
|
|
334
|
+
[`${prefixCls}-additionalBorder-animated`]: (_b = this.props.border) === null || _b === void 0 ? void 0 : _b.motion
|
|
335
|
+
}])
|
|
336
|
+
}));
|
|
337
|
+
}
|
|
338
|
+
if (bottomSlot || topSlot || border) {
|
|
339
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
340
|
+
className: cls([`${prefixCls}-wrapper`]),
|
|
341
|
+
style: style
|
|
342
|
+
}, avatar, topSlot && ["small", "default", "medium", "large", "extra-large"].includes(size) && shape === "circle" && this.renderTopSlot(), bottomSlot && ["small", "default", "medium", "large", "extra-large"].includes(size) && this.renderBottomSlot());
|
|
343
|
+
} else {
|
|
344
|
+
return avatar;
|
|
345
|
+
}
|
|
251
346
|
}
|
|
252
347
|
}
|
|
253
348
|
Avatar.defaultProps = {
|
|
@@ -275,6 +370,29 @@ Avatar.propTypes = {
|
|
|
275
370
|
onError: PropTypes.func,
|
|
276
371
|
onClick: PropTypes.func,
|
|
277
372
|
onMouseEnter: PropTypes.func,
|
|
278
|
-
onMouseLeave: PropTypes.func
|
|
373
|
+
onMouseLeave: PropTypes.func,
|
|
374
|
+
bottomSlot: PropTypes.shape({
|
|
375
|
+
render: PropTypes.func,
|
|
376
|
+
shape: PropTypes.oneOf(['circle', 'square']),
|
|
377
|
+
text: PropTypes.node,
|
|
378
|
+
bgColor: PropTypes.string,
|
|
379
|
+
textColor: PropTypes.string,
|
|
380
|
+
className: PropTypes.string,
|
|
381
|
+
style: PropTypes.object
|
|
382
|
+
}),
|
|
383
|
+
topSlot: PropTypes.shape({
|
|
384
|
+
render: PropTypes.func,
|
|
385
|
+
gradientStart: PropTypes.string,
|
|
386
|
+
gradientEnd: PropTypes.string,
|
|
387
|
+
text: PropTypes.node,
|
|
388
|
+
textColor: PropTypes.string,
|
|
389
|
+
className: PropTypes.string,
|
|
390
|
+
style: PropTypes.object
|
|
391
|
+
}),
|
|
392
|
+
border: PropTypes.oneOfType([PropTypes.shape({
|
|
393
|
+
color: PropTypes.string,
|
|
394
|
+
motion: PropTypes.bool
|
|
395
|
+
}), PropTypes.bool]),
|
|
396
|
+
contentMotion: PropTypes.bool
|
|
279
397
|
};
|
|
280
398
|
Avatar.elementType = 'Avatar';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { CSSProperties } from 'react';
|
|
2
2
|
import { BaseProps } from '../_base/baseComponent';
|
|
3
3
|
export type AvatarShape = 'circle' | 'square';
|
|
4
4
|
export type AvatarSize = 'extra-extra-small' | 'extra-small' | 'small' | 'default' | 'medium' | 'large' | 'extra-large';
|
|
@@ -18,6 +18,29 @@ export interface AvatarProps extends BaseProps {
|
|
|
18
18
|
onMouseEnter?: React.MouseEventHandler;
|
|
19
19
|
onMouseLeave?: React.MouseEventHandler;
|
|
20
20
|
imgAttr?: React.ImgHTMLAttributes<HTMLImageElement>;
|
|
21
|
+
bottomSlot?: {
|
|
22
|
+
render?: () => React.ReactNode;
|
|
23
|
+
shape?: "circle" | "square";
|
|
24
|
+
text: React.ReactNode;
|
|
25
|
+
bgColor: string;
|
|
26
|
+
textColor: string;
|
|
27
|
+
className: string;
|
|
28
|
+
style?: CSSProperties;
|
|
29
|
+
};
|
|
30
|
+
topSlot?: {
|
|
31
|
+
render?: () => React.ReactNode;
|
|
32
|
+
gradientStart?: string;
|
|
33
|
+
gradientEnd?: string;
|
|
34
|
+
text: React.ReactNode;
|
|
35
|
+
textColor: string;
|
|
36
|
+
className: string;
|
|
37
|
+
style?: CSSProperties;
|
|
38
|
+
};
|
|
39
|
+
border?: {
|
|
40
|
+
color?: string;
|
|
41
|
+
motion?: boolean;
|
|
42
|
+
} & boolean;
|
|
43
|
+
contentMotion?: boolean;
|
|
21
44
|
}
|
|
22
45
|
export type AvatarGroupShape = 'circle' | 'square';
|
|
23
46
|
export type AvatarGroupSize = 'extra-extra-small' | 'extra-small' | 'small' | 'default' | 'medium' | 'large' | 'extra-large';
|
|
@@ -37,7 +37,8 @@ class DropdownItem extends BaseComponent {
|
|
|
37
37
|
const events = {};
|
|
38
38
|
if (!disabled) {
|
|
39
39
|
['onClick', 'onMouseEnter', 'onMouseLeave', 'onContextMenu'].forEach(eventName => {
|
|
40
|
-
|
|
40
|
+
const isInAnotherDropdown = this.context.level !== 1;
|
|
41
|
+
if (isInAnotherDropdown && eventName === "onClick") {
|
|
41
42
|
events["onMouseDown"] = e => {
|
|
42
43
|
var _a, _b;
|
|
43
44
|
if (e.button === 0) {
|
package/lib/es/input/index.d.ts
CHANGED
|
@@ -51,6 +51,7 @@ export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElem
|
|
|
51
51
|
preventScroll?: boolean;
|
|
52
52
|
/** internal prop, DatePicker use it */
|
|
53
53
|
showClearIgnoreDisabled?: boolean;
|
|
54
|
+
onlyBorder?: number;
|
|
54
55
|
}
|
|
55
56
|
export interface InputState {
|
|
56
57
|
value: React.ReactText;
|
package/lib/es/input/index.js
CHANGED
|
@@ -333,9 +333,10 @@ class Input extends BaseComponent {
|
|
|
333
333
|
getValueLength,
|
|
334
334
|
preventScroll,
|
|
335
335
|
borderless,
|
|
336
|
-
showClearIgnoreDisabled
|
|
336
|
+
showClearIgnoreDisabled,
|
|
337
|
+
onlyBorder
|
|
337
338
|
} = _a,
|
|
338
|
-
rest = __rest(_a, ["addonAfter", "addonBefore", "autoFocus", "clearIcon", "className", "disabled", "defaultValue", "placeholder", "prefix", "mode", "insetLabel", "insetLabelId", "validateStatus", "type", "readonly", "size", "suffix", "style", "showClear", "onEnterPress", "onClear", "hideSuffix", "inputStyle", "forwardRef", "maxLength", "getValueLength", "preventScroll", "borderless", "showClearIgnoreDisabled"]);
|
|
339
|
+
rest = __rest(_a, ["addonAfter", "addonBefore", "autoFocus", "clearIcon", "className", "disabled", "defaultValue", "placeholder", "prefix", "mode", "insetLabel", "insetLabelId", "validateStatus", "type", "readonly", "size", "suffix", "style", "showClear", "onEnterPress", "onClear", "hideSuffix", "inputStyle", "forwardRef", "maxLength", "getValueLength", "preventScroll", "borderless", "showClearIgnoreDisabled", "onlyBorder"]);
|
|
339
340
|
const {
|
|
340
341
|
value,
|
|
341
342
|
isFocus,
|
|
@@ -363,7 +364,8 @@ class Input extends BaseComponent {
|
|
|
363
364
|
[`${wrapperPrefix}-modebtn`]: mode === 'password',
|
|
364
365
|
[`${wrapperPrefix}-hidden`]: type === 'hidden',
|
|
365
366
|
[`${wrapperPrefix}-${size}`]: size,
|
|
366
|
-
[`${prefixCls}-borderless`]: borderless
|
|
367
|
+
[`${prefixCls}-borderless`]: borderless,
|
|
368
|
+
[`${prefixCls}-only_border`]: onlyBorder !== undefined && onlyBorder !== null
|
|
367
369
|
});
|
|
368
370
|
const inputCls = cls(prefixCls, {
|
|
369
371
|
[`${prefixCls}-${size}`]: size,
|
|
@@ -397,12 +399,18 @@ class Input extends BaseComponent {
|
|
|
397
399
|
if (validateStatus === 'error') {
|
|
398
400
|
inputProps['aria-invalid'] = 'true';
|
|
399
401
|
}
|
|
402
|
+
let wrapperStyle = Object.assign({}, style);
|
|
403
|
+
if (onlyBorder !== undefined) {
|
|
404
|
+
wrapperStyle = Object.assign({
|
|
405
|
+
borderWidth: onlyBorder
|
|
406
|
+
}, style);
|
|
407
|
+
}
|
|
400
408
|
return (
|
|
401
409
|
/*#__PURE__*/
|
|
402
410
|
// eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions
|
|
403
411
|
React.createElement("div", {
|
|
404
412
|
className: wrapperCls,
|
|
405
|
-
style:
|
|
413
|
+
style: wrapperStyle,
|
|
406
414
|
onMouseEnter: e => this.handleMouseOver(e),
|
|
407
415
|
onMouseLeave: e => this.handleMouseLeave(e),
|
|
408
416
|
onClick: e => this.handleClick(e)
|
package/lib/es/modal/Modal.d.ts
CHANGED
|
@@ -66,6 +66,7 @@ declare class Modal extends BaseComponent<ModalReactProps, ModalState> {
|
|
|
66
66
|
lazyRender: PropTypes.Requireable<boolean>;
|
|
67
67
|
direction: PropTypes.Requireable<string>;
|
|
68
68
|
fullScreen: PropTypes.Requireable<boolean>;
|
|
69
|
+
footerFill: PropTypes.Requireable<boolean>;
|
|
69
70
|
};
|
|
70
71
|
static defaultProps: {
|
|
71
72
|
zIndex: number;
|
package/lib/es/modal/Modal.js
CHANGED
|
@@ -45,7 +45,8 @@ class Modal extends BaseComponent {
|
|
|
45
45
|
cancelText,
|
|
46
46
|
confirmLoading,
|
|
47
47
|
cancelLoading,
|
|
48
|
-
hasCancel
|
|
48
|
+
hasCancel,
|
|
49
|
+
footerFill
|
|
49
50
|
} = this.props;
|
|
50
51
|
const getCancelButton = locale => {
|
|
51
52
|
if (!hasCancel) {
|
|
@@ -56,6 +57,7 @@ class Modal extends BaseComponent {
|
|
|
56
57
|
onClick: this.handleCancel,
|
|
57
58
|
loading: cancelLoading === undefined ? this.state.onCancelReturnPromiseStatus === "pending" : cancelLoading,
|
|
58
59
|
type: "tertiary",
|
|
60
|
+
block: footerFill,
|
|
59
61
|
autoFocus: true
|
|
60
62
|
}, this.props.cancelButtonProps, {
|
|
61
63
|
"x-semi-children-alias": "cancelText"
|
|
@@ -64,10 +66,15 @@ class Modal extends BaseComponent {
|
|
|
64
66
|
};
|
|
65
67
|
return /*#__PURE__*/React.createElement(LocaleConsumer, {
|
|
66
68
|
componentName: "Modal"
|
|
67
|
-
}, (locale, localeCode) => /*#__PURE__*/React.createElement("div",
|
|
69
|
+
}, (locale, localeCode) => /*#__PURE__*/React.createElement("div", {
|
|
70
|
+
className: cls({
|
|
71
|
+
[`${cssClasses.DIALOG}-footerfill`]: footerFill
|
|
72
|
+
})
|
|
73
|
+
}, getCancelButton(locale), /*#__PURE__*/React.createElement(Button, Object.assign({
|
|
68
74
|
"aria-label": "confirm",
|
|
69
75
|
type: okType,
|
|
70
76
|
theme: "solid",
|
|
77
|
+
block: footerFill,
|
|
71
78
|
loading: confirmLoading === undefined ? this.state.onOKReturnPromiseStatus === "pending" : confirmLoading,
|
|
72
79
|
onClick: this.handleOk
|
|
73
80
|
}, this.props.okButtonProps, {
|
|
@@ -301,7 +308,8 @@ Modal.propTypes = {
|
|
|
301
308
|
keepDOM: PropTypes.bool,
|
|
302
309
|
lazyRender: PropTypes.bool,
|
|
303
310
|
direction: PropTypes.oneOf(strings.directions),
|
|
304
|
-
fullScreen: PropTypes.bool
|
|
311
|
+
fullScreen: PropTypes.bool,
|
|
312
|
+
footerFill: PropTypes.bool
|
|
305
313
|
};
|
|
306
314
|
Modal.defaultProps = {
|
|
307
315
|
zIndex: 1000,
|
|
@@ -51,6 +51,7 @@ export declare function withInfo(props: ModalReactProps): {
|
|
|
51
51
|
direction?: any;
|
|
52
52
|
fullScreen?: boolean;
|
|
53
53
|
preventScroll?: boolean;
|
|
54
|
+
footerFill?: boolean;
|
|
54
55
|
type: "info";
|
|
55
56
|
};
|
|
56
57
|
export declare function withSuccess(props: ModalReactProps): {
|
|
@@ -94,6 +95,7 @@ export declare function withSuccess(props: ModalReactProps): {
|
|
|
94
95
|
direction?: any;
|
|
95
96
|
fullScreen?: boolean;
|
|
96
97
|
preventScroll?: boolean;
|
|
98
|
+
footerFill?: boolean;
|
|
97
99
|
type: "success";
|
|
98
100
|
};
|
|
99
101
|
export declare function withWarning(props: ModalReactProps): {
|
|
@@ -137,6 +139,7 @@ export declare function withWarning(props: ModalReactProps): {
|
|
|
137
139
|
direction?: any;
|
|
138
140
|
fullScreen?: boolean;
|
|
139
141
|
preventScroll?: boolean;
|
|
142
|
+
footerFill?: boolean;
|
|
140
143
|
type: "warning";
|
|
141
144
|
};
|
|
142
145
|
export declare function withError(props: ModalReactProps): {
|
|
@@ -179,6 +182,7 @@ export declare function withError(props: ModalReactProps): {
|
|
|
179
182
|
onOk?: (e: React.MouseEvent<Element, MouseEvent>) => void | Promise<any>;
|
|
180
183
|
lazyRender?: boolean;
|
|
181
184
|
fullScreen?: boolean;
|
|
185
|
+
footerFill?: boolean;
|
|
182
186
|
type: "error";
|
|
183
187
|
okButtonProps: {
|
|
184
188
|
id?: string;
|
|
@@ -506,5 +510,6 @@ export declare function withConfirm(props: ModalReactProps): {
|
|
|
506
510
|
direction?: any;
|
|
507
511
|
fullScreen?: boolean;
|
|
508
512
|
preventScroll?: boolean;
|
|
513
|
+
footerFill?: boolean;
|
|
509
514
|
type: "confirm";
|
|
510
515
|
};
|
package/lib/es/slider/index.js
CHANGED
|
@@ -28,6 +28,7 @@ export default class Slider extends BaseComponent {
|
|
|
28
28
|
constructor(props) {
|
|
29
29
|
super(props);
|
|
30
30
|
this.renderHandle = () => {
|
|
31
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
31
32
|
const {
|
|
32
33
|
vertical,
|
|
33
34
|
range,
|
|
@@ -126,6 +127,14 @@ export default class Slider extends BaseComponent {
|
|
|
126
127
|
"aria-valuenow": currentValue,
|
|
127
128
|
"aria-valuemax": max,
|
|
128
129
|
"aria-valuemin": min
|
|
130
|
+
}), this.props.handleDot && /*#__PURE__*/React.createElement("div", {
|
|
131
|
+
className: cssClasses.HANDLE_DOT,
|
|
132
|
+
style: Object.assign(Object.assign({}, ((_a = this.props.handleDot) === null || _a === void 0 ? void 0 : _a.size) ? {
|
|
133
|
+
width: this.props.handleDot.size,
|
|
134
|
+
height: this.props.handleDot.size
|
|
135
|
+
} : {}), ((_b = this.props.handleDot) === null || _b === void 0 ? void 0 : _b.color) ? {
|
|
136
|
+
backgroundColor: this.props.handleDot.color
|
|
137
|
+
} : {})
|
|
129
138
|
}))) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Tooltip, {
|
|
130
139
|
content: tipChildren.min,
|
|
131
140
|
position: "top",
|
|
@@ -177,6 +186,14 @@ export default class Slider extends BaseComponent {
|
|
|
177
186
|
"aria-valuenow": currentValue[0],
|
|
178
187
|
"aria-valuemax": currentValue[1],
|
|
179
188
|
"aria-valuemin": min
|
|
189
|
+
}), ((_c = this.props.handleDot) === null || _c === void 0 ? void 0 : _c[0]) && /*#__PURE__*/React.createElement("div", {
|
|
190
|
+
className: cssClasses.HANDLE_DOT,
|
|
191
|
+
style: Object.assign(Object.assign({}, ((_d = this.props.handleDot[0]) === null || _d === void 0 ? void 0 : _d.size) ? {
|
|
192
|
+
width: this.props.handleDot[0].size,
|
|
193
|
+
height: this.props.handleDot[0].size
|
|
194
|
+
} : {}), ((_e = this.props.handleDot[0]) === null || _e === void 0 ? void 0 : _e.color) ? {
|
|
195
|
+
backgroundColor: this.props.handleDot[0].color
|
|
196
|
+
} : {})
|
|
180
197
|
}))), /*#__PURE__*/React.createElement(Tooltip, {
|
|
181
198
|
content: tipChildren.max,
|
|
182
199
|
position: "top",
|
|
@@ -228,6 +245,14 @@ export default class Slider extends BaseComponent {
|
|
|
228
245
|
"aria-valuenow": currentValue[1],
|
|
229
246
|
"aria-valuemax": max,
|
|
230
247
|
"aria-valuemin": currentValue[0]
|
|
248
|
+
}), ((_f = this.props.handleDot) === null || _f === void 0 ? void 0 : _f[1]) && /*#__PURE__*/React.createElement("div", {
|
|
249
|
+
className: cssClasses.HANDLE_DOT,
|
|
250
|
+
style: Object.assign(Object.assign({}, ((_g = this.props.handleDot[1]) === null || _g === void 0 ? void 0 : _g.size) ? {
|
|
251
|
+
width: this.props.handleDot[1].size,
|
|
252
|
+
height: this.props.handleDot[1].size
|
|
253
|
+
} : {}), ((_h = this.props.handleDot[1]) === null || _h === void 0 ? void 0 : _h.color) ? {
|
|
254
|
+
backgroundColor: this.props.handleDot[1].color
|
|
255
|
+
} : {})
|
|
231
256
|
}))));
|
|
232
257
|
return handleContents;
|
|
233
258
|
};
|
|
@@ -644,7 +669,14 @@ Slider.propTypes = {
|
|
|
644
669
|
showBoundary: PropTypes.bool,
|
|
645
670
|
railStyle: PropTypes.object,
|
|
646
671
|
verticalReverse: PropTypes.bool,
|
|
647
|
-
getAriaValueText: PropTypes.func
|
|
672
|
+
getAriaValueText: PropTypes.func,
|
|
673
|
+
handleDot: PropTypes.oneOfType([PropTypes.shape({
|
|
674
|
+
size: PropTypes.string,
|
|
675
|
+
color: PropTypes.string
|
|
676
|
+
}), PropTypes.arrayOf(PropTypes.shape({
|
|
677
|
+
size: PropTypes.string,
|
|
678
|
+
color: PropTypes.string
|
|
679
|
+
}))])
|
|
648
680
|
};
|
|
649
681
|
Slider.defaultProps = {
|
|
650
682
|
// allowClear: false,
|
|
@@ -1,34 +1,50 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { DropdownProps } from '../dropdown';
|
|
3
|
-
import { Trigger, Position } from '../tooltip';
|
|
4
3
|
import { FilterIcon, Filter, OnFilterDropdownVisibleChange, RenderFilterDropdownItem } from './interface';
|
|
5
|
-
export
|
|
4
|
+
export default function ColumnFilter(props?: ColumnFilterProps): React.ReactElement;
|
|
5
|
+
export interface ColumnFilterProps extends Omit<RenderDropdownProps, keyof RenderFilterDropdownProps> {
|
|
6
6
|
prefixCls?: string;
|
|
7
7
|
filteredValue?: any[];
|
|
8
8
|
filterIcon?: FilterIcon;
|
|
9
9
|
filterDropdown?: React.ReactElement;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}) => React.ReactElement;
|
|
13
|
-
filterDropdownProps?: DropdownProps;
|
|
14
|
-
onFilterDropdownVisibleChange?: OnFilterDropdownVisibleChange;
|
|
15
|
-
onSelect?: (data: OnSelectData) => void;
|
|
16
|
-
}
|
|
17
|
-
export default function ColumnFilter(props?: ColumnFilterProps): React.ReactElement;
|
|
18
|
-
export interface OnSelectData {
|
|
19
|
-
value: any;
|
|
20
|
-
filteredValue: any;
|
|
21
|
-
included: boolean;
|
|
22
|
-
domEvent: React.MouseEvent<HTMLElement>;
|
|
10
|
+
filterDropdownProps?: FilterDropdownProps;
|
|
11
|
+
filters?: Filter[];
|
|
23
12
|
}
|
|
24
|
-
export interface RenderDropdownProps {
|
|
13
|
+
export interface RenderDropdownProps extends FilterDropdownProps, RenderFilterDropdownProps {
|
|
25
14
|
filterMultiple?: boolean;
|
|
26
15
|
filters?: Filter[];
|
|
27
16
|
filteredValue?: any[];
|
|
28
17
|
filterDropdownVisible?: boolean;
|
|
29
18
|
onSelect?: (data: OnSelectData) => void;
|
|
30
19
|
onFilterDropdownVisibleChange?: OnFilterDropdownVisibleChange;
|
|
31
|
-
|
|
32
|
-
position?: Position;
|
|
20
|
+
renderFilterDropdown?: (props?: RenderFilterDropdownProps) => React.ReactNode;
|
|
33
21
|
renderFilterDropdownItem?: RenderFilterDropdownItem;
|
|
34
22
|
}
|
|
23
|
+
export interface FilterDropdownProps extends Omit<DropdownProps, 'render' | 'onVisibleChange'> {
|
|
24
|
+
}
|
|
25
|
+
export interface OnSelectData {
|
|
26
|
+
value?: any;
|
|
27
|
+
/** only this value is used now */
|
|
28
|
+
filteredValue: any;
|
|
29
|
+
included?: boolean;
|
|
30
|
+
domEvent?: React.MouseEvent<HTMLElement>;
|
|
31
|
+
}
|
|
32
|
+
export interface RenderFilterDropdownProps {
|
|
33
|
+
/** temporary filteredValue */
|
|
34
|
+
tempFilteredValue: any[];
|
|
35
|
+
/** set temporary filteredValue */
|
|
36
|
+
setTempFilteredValue: (tempFilteredValue: any[]) => void;
|
|
37
|
+
/** set tempFilteredValue to filteredValue. You can also pass filteredValue to directly set the filteredValue */
|
|
38
|
+
confirm: (props?: {
|
|
39
|
+
closeDropdown?: boolean;
|
|
40
|
+
filteredValue?: any[];
|
|
41
|
+
}) => void;
|
|
42
|
+
/** clear tempFilteredValue and filteredValue */
|
|
43
|
+
clear: (props?: {
|
|
44
|
+
closeDropdown?: boolean;
|
|
45
|
+
}) => void;
|
|
46
|
+
/** close dropdown */
|
|
47
|
+
close: () => void;
|
|
48
|
+
/** column filters */
|
|
49
|
+
filters?: RenderDropdownProps['filters'];
|
|
50
|
+
}
|