@douyinfe/semi-ui 2.8.0-beta.0 → 2.9.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/_base/_story/index.scss +0 -1
- package/badge/index.tsx +12 -3
- package/descriptions/index.tsx +4 -5
- package/descriptions/item.tsx +1 -1
- package/dist/css/semi.css +63 -16
- package/dist/css/semi.min.css +1 -1
- package/dist/umd/semi-ui.js +231 -53
- 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/divider/__test__/divider.test.js +72 -0
- package/divider/_story/Demo.tsx +16 -0
- package/divider/_story/divider.stories.js +41 -0
- package/divider/_story/divider.stories.tsx +8 -0
- package/divider/index.tsx +72 -0
- package/form/_story/demo.jsx +9 -0
- package/index.ts +1 -0
- package/lib/cjs/badge/index.d.ts +9 -0
- package/lib/cjs/badge/index.js +34 -6
- package/lib/cjs/descriptions/index.d.ts +1 -2
- package/lib/cjs/descriptions/index.js +4 -3
- package/lib/cjs/descriptions/item.d.ts +1 -1
- package/lib/cjs/divider/index.d.ts +20 -0
- package/lib/cjs/divider/index.js +88 -0
- package/lib/cjs/index.d.ts +1 -0
- package/lib/cjs/index.js +9 -0
- package/lib/cjs/slider/index.js +16 -12
- package/lib/cjs/tagInput/index.d.ts +1 -1
- package/lib/es/badge/index.d.ts +9 -0
- package/lib/es/badge/index.js +31 -6
- package/lib/es/descriptions/index.d.ts +1 -2
- package/lib/es/descriptions/index.js +4 -3
- package/lib/es/descriptions/item.d.ts +1 -1
- package/lib/es/divider/index.d.ts +20 -0
- package/lib/es/divider/index.js +68 -0
- package/lib/es/index.d.ts +1 -0
- package/lib/es/index.js +1 -0
- package/lib/es/slider/index.js +16 -12
- package/lib/es/tagInput/index.d.ts +1 -1
- package/package.json +11 -11
- package/select/__test__/select.test.js +16 -0
- package/slider/_story/slider.stories.js +28 -6
- package/slider/index.tsx +16 -11
- package/upload/_story/upload.stories.js +2 -3
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Divider } from '../../index';
|
|
2
|
+
|
|
3
|
+
describe('Divider', () => {
|
|
4
|
+
it('Divider-custom className & style', () => {
|
|
5
|
+
const props = {
|
|
6
|
+
className: 'test',
|
|
7
|
+
style: {
|
|
8
|
+
color: 'red',
|
|
9
|
+
},
|
|
10
|
+
};
|
|
11
|
+
const demo = mount(<Divider {...props}/>);
|
|
12
|
+
expect(demo.exists(`.semi-divider.test`)).toEqual(true);
|
|
13
|
+
expect(demo.find(`.semi-divider`)).toHaveStyle('color', 'red');
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('test title', () => {
|
|
17
|
+
const demo = mount(<Divider>divider title</Divider>);
|
|
18
|
+
expect(demo.getDOMNode().textContent).toEqual('divider title');
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
it('test align', () => {
|
|
22
|
+
|
|
23
|
+
const demo = mount(
|
|
24
|
+
<div>
|
|
25
|
+
Semi-Design
|
|
26
|
+
<Divider>divider center title</Divider>
|
|
27
|
+
Semi-Design
|
|
28
|
+
<Divider align="left">divider left title</Divider>
|
|
29
|
+
Semi-Design
|
|
30
|
+
<Divider align="right">divider right title</Divider>
|
|
31
|
+
</div>
|
|
32
|
+
);
|
|
33
|
+
expect(demo.exists(`.semi-divider-with-text-center`)).toBe(true);
|
|
34
|
+
expect(demo.exists(`.semi-divider-with-text-left`)).toBe(true);
|
|
35
|
+
expect(demo.exists(`.semi-divider-with-text-right`)).toBe(true);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it('test layout', () => {
|
|
39
|
+
const props = {
|
|
40
|
+
layout: 'vertical',
|
|
41
|
+
};
|
|
42
|
+
const demo = mount(
|
|
43
|
+
<div>
|
|
44
|
+
Semi-Design
|
|
45
|
+
<Divider {...props} />
|
|
46
|
+
Semi-Design
|
|
47
|
+
<Divider {...props} />
|
|
48
|
+
Semi-Design
|
|
49
|
+
<Divider {...props} />
|
|
50
|
+
</div>
|
|
51
|
+
);
|
|
52
|
+
expect(demo.exists(`.semi-divider-vertical`)).toBe(true);
|
|
53
|
+
demo.unmount();
|
|
54
|
+
});
|
|
55
|
+
it('test dashed',()=>{
|
|
56
|
+
const props = {
|
|
57
|
+
dashed:true
|
|
58
|
+
};
|
|
59
|
+
const demo = mount(
|
|
60
|
+
<div>
|
|
61
|
+
Semi-Design
|
|
62
|
+
<Divider {...props} />
|
|
63
|
+
Semi-Design
|
|
64
|
+
<Divider {...props} />
|
|
65
|
+
Semi-Design
|
|
66
|
+
<Divider {...props} />
|
|
67
|
+
</div>
|
|
68
|
+
);
|
|
69
|
+
expect(demo.exists('.semi-divider-dashed')).toBe(true);
|
|
70
|
+
demo.unmount();
|
|
71
|
+
})
|
|
72
|
+
});
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { storiesOf } from '@storybook/react';
|
|
3
|
+
// import { withKnobs, text, boolean } from '@storybook/addon-knobs';
|
|
4
|
+
|
|
5
|
+
import Divider from '../index';
|
|
6
|
+
import { IllustrationSuccess } from '@douyinfe/semi-illustrations';
|
|
7
|
+
|
|
8
|
+
const stories = storiesOf('Divider', module);
|
|
9
|
+
|
|
10
|
+
stories.add('Divider default', () => (
|
|
11
|
+
<div>
|
|
12
|
+
<p>Semi Design</p>
|
|
13
|
+
<Divider />
|
|
14
|
+
<p>Semi Design</p>
|
|
15
|
+
<Divider />
|
|
16
|
+
<p>Semi Design</p>
|
|
17
|
+
<Divider dashed />
|
|
18
|
+
<p>Semi Design</p>
|
|
19
|
+
</div>
|
|
20
|
+
));
|
|
21
|
+
|
|
22
|
+
stories.add('Divider vertical', () => (
|
|
23
|
+
<div>
|
|
24
|
+
<span>Semi Design</span>
|
|
25
|
+
<Divider layout="vertical" />
|
|
26
|
+
<span>Semi Design</span>
|
|
27
|
+
<Divider layout="vertical" />
|
|
28
|
+
<span>Semi Design</span>
|
|
29
|
+
</div>
|
|
30
|
+
));
|
|
31
|
+
|
|
32
|
+
stories.add('Divider title', () => (
|
|
33
|
+
<div>
|
|
34
|
+
<p>Semi Design </p>
|
|
35
|
+
<Divider>Title</Divider>
|
|
36
|
+
<p>Semi Design </p>
|
|
37
|
+
<Divider align='left'>Title</Divider>
|
|
38
|
+
<p>Semi Design </p>
|
|
39
|
+
<Divider align='right'>Title</Divider>
|
|
40
|
+
</div>
|
|
41
|
+
));
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import React, { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
import cls from 'classnames';
|
|
3
|
+
import { cssClasses } from '@douyinfe/semi-foundation/divider/constants';
|
|
4
|
+
import '@douyinfe/semi-foundation/divider/divider.scss';
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
const prefixCls = cssClasses.PREFIX;
|
|
8
|
+
|
|
9
|
+
export interface DividerProps {
|
|
10
|
+
/** The position of title inside divider */
|
|
11
|
+
align?: 'left' | 'right' | 'center';
|
|
12
|
+
/** space between divider and surroundings **/
|
|
13
|
+
margin?: number | string
|
|
14
|
+
/** The wrapped title */
|
|
15
|
+
children?: ReactNode;
|
|
16
|
+
/** Style class name */
|
|
17
|
+
className?: string;
|
|
18
|
+
/** Whether line is dashed */
|
|
19
|
+
dashed?: boolean;
|
|
20
|
+
/** The direction type of divider */
|
|
21
|
+
layout?: 'horizontal' | 'vertical';
|
|
22
|
+
/** Divider inline style */
|
|
23
|
+
style?: CSSProperties;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
const Divider: React.FC<DividerProps> = props => {
|
|
27
|
+
const {
|
|
28
|
+
layout = 'horizontal',
|
|
29
|
+
dashed,
|
|
30
|
+
align = 'center',
|
|
31
|
+
className,
|
|
32
|
+
margin,
|
|
33
|
+
style,
|
|
34
|
+
children,
|
|
35
|
+
...rest
|
|
36
|
+
} = props;
|
|
37
|
+
|
|
38
|
+
const dividerClassNames = cls(`${prefixCls}-divider`, className, {
|
|
39
|
+
[`${prefixCls}-divider-horizontal`]: layout === 'horizontal',
|
|
40
|
+
[`${prefixCls}-divider-vertical`]: layout === 'vertical',
|
|
41
|
+
[`${prefixCls}-divider-dashed`]: !!dashed,
|
|
42
|
+
[`${prefixCls}-divider-with-text`]: children && layout === 'horizontal',
|
|
43
|
+
[`${prefixCls}-divider-with-text-${align}`]: children && layout === 'horizontal',
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
let overrideDefaultStyle: CSSProperties = {};
|
|
47
|
+
if (margin !== undefined) {
|
|
48
|
+
if (layout === 'vertical') {
|
|
49
|
+
overrideDefaultStyle = {
|
|
50
|
+
'marginLeft': margin,
|
|
51
|
+
'marginRight': margin
|
|
52
|
+
};
|
|
53
|
+
} else if (layout === 'horizontal') {
|
|
54
|
+
overrideDefaultStyle = {
|
|
55
|
+
'marginTop': margin,
|
|
56
|
+
'marginBottom': margin,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return (
|
|
62
|
+
<div {...rest} className={dividerClassNames} style={{ ...overrideDefaultStyle, ...style }}>
|
|
63
|
+
{(children && layout === 'horizontal') ? (
|
|
64
|
+
typeof children === 'string' ? <span className={`${prefixCls}-divider_inner-text`}>
|
|
65
|
+
{children}
|
|
66
|
+
</span> : children
|
|
67
|
+
) : null}
|
|
68
|
+
</div>
|
|
69
|
+
);
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
export default Divider;
|
package/form/_story/demo.jsx
CHANGED
|
@@ -283,6 +283,15 @@ class BasicDemoWithInit extends Component {
|
|
|
283
283
|
</Form.AutoComplete>
|
|
284
284
|
</Col>
|
|
285
285
|
</Row>
|
|
286
|
+
<Row>
|
|
287
|
+
<Col span={12}>
|
|
288
|
+
<Form.TagInput
|
|
289
|
+
field='tags'
|
|
290
|
+
label='tags'
|
|
291
|
+
/>
|
|
292
|
+
</Col>
|
|
293
|
+
|
|
294
|
+
</Row>
|
|
286
295
|
</Form.Section>
|
|
287
296
|
<Form.Section text='资源详情'>
|
|
288
297
|
|
package/index.ts
CHANGED
|
@@ -20,6 +20,7 @@ export { default as Collapsible } from './collapsible';
|
|
|
20
20
|
export { default as ConfigProvider } from './configProvider';
|
|
21
21
|
export { default as DatePicker } from './datePicker';
|
|
22
22
|
export { default as Descriptions } from './descriptions';
|
|
23
|
+
export { default as Divider } from './divider';
|
|
23
24
|
export { default as Empty } from './empty';
|
|
24
25
|
export { default as Modal } from './modal';
|
|
25
26
|
export { default as Dropdown } from './dropdown';
|
package/lib/cjs/badge/index.d.ts
CHANGED
|
@@ -14,6 +14,9 @@ export interface BadgeProps {
|
|
|
14
14
|
style?: React.CSSProperties;
|
|
15
15
|
className?: string;
|
|
16
16
|
children?: React.ReactNode;
|
|
17
|
+
onMouseEnter?: (e: React.MouseEvent) => any;
|
|
18
|
+
onMouseLeave?: (e: React.MouseEvent) => any;
|
|
19
|
+
onClick?: (e: React.MouseEvent) => any;
|
|
17
20
|
}
|
|
18
21
|
export default class Badge extends PureComponent<BadgeProps> {
|
|
19
22
|
static contextType: React.Context<import("../configProvider/context").ContextValue>;
|
|
@@ -27,12 +30,18 @@ export default class Badge extends PureComponent<BadgeProps> {
|
|
|
27
30
|
style: PropTypes.Requireable<object>;
|
|
28
31
|
className: PropTypes.Requireable<string>;
|
|
29
32
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
33
|
+
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
34
|
+
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
|
|
35
|
+
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
|
|
30
36
|
};
|
|
31
37
|
static defaultProps: {
|
|
32
38
|
dot: boolean;
|
|
33
39
|
type: string;
|
|
34
40
|
theme: string;
|
|
35
41
|
className: string;
|
|
42
|
+
onClick: () => (...args: any[]) => void;
|
|
43
|
+
onMouseEnter: () => (...args: any[]) => void;
|
|
44
|
+
onMouseLeave: () => (...args: any[]) => void;
|
|
36
45
|
};
|
|
37
46
|
render(): JSX.Element;
|
|
38
47
|
}
|
package/lib/cjs/badge/index.js
CHANGED
|
@@ -14,8 +14,16 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
14
14
|
|
|
15
15
|
exports.default = void 0;
|
|
16
16
|
|
|
17
|
+
var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
|
|
18
|
+
|
|
19
|
+
var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
|
|
20
|
+
|
|
17
21
|
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
18
22
|
|
|
23
|
+
var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
|
|
24
|
+
|
|
25
|
+
var _noop2 = _interopRequireDefault(require("lodash/noop"));
|
|
26
|
+
|
|
19
27
|
var _isString2 = _interopRequireDefault(require("lodash/isString"));
|
|
20
28
|
|
|
21
29
|
var _isNumber2 = _interopRequireDefault(require("lodash/isNumber"));
|
|
@@ -36,6 +44,17 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "functi
|
|
|
36
44
|
|
|
37
45
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
38
46
|
|
|
47
|
+
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
48
|
+
var t = {};
|
|
49
|
+
|
|
50
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && (0, _indexOf.default)(e).call(e, p) < 0) t[p] = s[p];
|
|
51
|
+
|
|
52
|
+
if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
|
|
53
|
+
if ((0, _indexOf.default)(e).call(e, p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
54
|
+
}
|
|
55
|
+
return t;
|
|
56
|
+
};
|
|
57
|
+
|
|
39
58
|
const prefixCls = _constants.cssClasses.PREFIX;
|
|
40
59
|
|
|
41
60
|
class Badge extends _react.PureComponent {
|
|
@@ -48,7 +67,8 @@ class Badge extends _react.PureComponent {
|
|
|
48
67
|
|
|
49
68
|
const defaultPosition = direction === 'rtl' ? 'leftTop' : 'rightTop'; // eslint-disable-next-line max-len
|
|
50
69
|
|
|
51
|
-
const
|
|
70
|
+
const _a = this.props,
|
|
71
|
+
{
|
|
52
72
|
count,
|
|
53
73
|
dot,
|
|
54
74
|
type,
|
|
@@ -58,7 +78,9 @@ class Badge extends _react.PureComponent {
|
|
|
58
78
|
style,
|
|
59
79
|
children,
|
|
60
80
|
className
|
|
61
|
-
} =
|
|
81
|
+
} = _a,
|
|
82
|
+
rest = __rest(_a, ["count", "dot", "type", "theme", "position", "overflowCount", "style", "children", "className"]);
|
|
83
|
+
|
|
62
84
|
const custom = count && !((0, _isNumber2.default)(count) || (0, _isString2.default)(count));
|
|
63
85
|
const showBadge = count !== null && typeof count !== 'undefined';
|
|
64
86
|
const wrapper = (0, _classnames.default)(className, {
|
|
@@ -78,9 +100,9 @@ class Badge extends _react.PureComponent {
|
|
|
78
100
|
content = count;
|
|
79
101
|
}
|
|
80
102
|
|
|
81
|
-
return /*#__PURE__*/_react.default.createElement("span", {
|
|
103
|
+
return /*#__PURE__*/_react.default.createElement("span", (0, _assign.default)({
|
|
82
104
|
className: prefixCls
|
|
83
|
-
}, children, /*#__PURE__*/_react.default.createElement("span", {
|
|
105
|
+
}, rest), children, /*#__PURE__*/_react.default.createElement("span", {
|
|
84
106
|
className: wrapper,
|
|
85
107
|
style: style
|
|
86
108
|
}, dot ? null : content));
|
|
@@ -99,11 +121,17 @@ Badge.propTypes = {
|
|
|
99
121
|
overflowCount: _propTypes.default.number,
|
|
100
122
|
style: _propTypes.default.object,
|
|
101
123
|
className: _propTypes.default.string,
|
|
102
|
-
children: _propTypes.default.node
|
|
124
|
+
children: _propTypes.default.node,
|
|
125
|
+
onClick: _propTypes.default.func,
|
|
126
|
+
onMouseEnter: _propTypes.default.func,
|
|
127
|
+
onMouseLeave: _propTypes.default.func
|
|
103
128
|
};
|
|
104
129
|
Badge.defaultProps = {
|
|
105
130
|
dot: false,
|
|
106
131
|
type: 'primary',
|
|
107
132
|
theme: 'solid',
|
|
108
|
-
className: ''
|
|
133
|
+
className: '',
|
|
134
|
+
onClick: () => _noop2.default,
|
|
135
|
+
onMouseEnter: () => _noop2.default,
|
|
136
|
+
onMouseLeave: () => _noop2.default
|
|
109
137
|
};
|
|
@@ -6,8 +6,7 @@ import Item from './item';
|
|
|
6
6
|
export { DescriptionsItemProps } from './item';
|
|
7
7
|
export declare type DescriptionsSize = 'small' | 'medium' | 'large';
|
|
8
8
|
export interface Data {
|
|
9
|
-
|
|
10
|
-
key?: string | number;
|
|
9
|
+
key?: React.ReactNode;
|
|
11
10
|
value?: (() => React.ReactNode) | React.ReactNode;
|
|
12
11
|
hidden?: boolean;
|
|
13
12
|
}
|
|
@@ -60,10 +60,11 @@ class Descriptions extends _react.PureComponent {
|
|
|
60
60
|
["".concat(prefixCls, "-double")]: row,
|
|
61
61
|
[(0, _concat.default)(_context2 = "".concat(prefixCls, "-double-")).call(_context2, size)]: row
|
|
62
62
|
});
|
|
63
|
-
const childrenList = data && data.length ? (0, _map.default)(data).call(data, item => (0, _isPlainObject2.default)(item) ? /*#__PURE__*/_react.default.createElement(_item.default, (0, _assign.default)({
|
|
64
|
-
key: item.key,
|
|
63
|
+
const childrenList = data && data.length ? (0, _map.default)(data).call(data, (item, index) => (0, _isPlainObject2.default)(item) ? /*#__PURE__*/_react.default.createElement(_item.default, (0, _assign.default)({
|
|
65
64
|
itemKey: item.key
|
|
66
|
-
}, item
|
|
65
|
+
}, item, {
|
|
66
|
+
key: index
|
|
67
|
+
}), item.value) : null) : children;
|
|
67
68
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
68
69
|
className: classNames,
|
|
69
70
|
style: style
|
|
@@ -5,7 +5,7 @@ export interface DescriptionsItemProps {
|
|
|
5
5
|
hidden?: boolean;
|
|
6
6
|
className?: string;
|
|
7
7
|
style?: React.CSSProperties;
|
|
8
|
-
itemKey
|
|
8
|
+
itemKey?: React.ReactNode;
|
|
9
9
|
}
|
|
10
10
|
export default class Item extends PureComponent<DescriptionsItemProps> {
|
|
11
11
|
static propTypes: {
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React, { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
import '@douyinfe/semi-foundation/lib/cjs/divider/divider.css';
|
|
3
|
+
export interface DividerProps {
|
|
4
|
+
/** The position of title inside divider */
|
|
5
|
+
align?: 'left' | 'right' | 'center';
|
|
6
|
+
/** space between divider and surroundings **/
|
|
7
|
+
margin?: number | string;
|
|
8
|
+
/** The wrapped title */
|
|
9
|
+
children?: ReactNode;
|
|
10
|
+
/** Style class name */
|
|
11
|
+
className?: string;
|
|
12
|
+
/** Whether line is dashed */
|
|
13
|
+
dashed?: boolean;
|
|
14
|
+
/** The direction type of divider */
|
|
15
|
+
layout?: 'horizontal' | 'vertical';
|
|
16
|
+
/** Divider inline style */
|
|
17
|
+
style?: CSSProperties;
|
|
18
|
+
}
|
|
19
|
+
declare const Divider: React.FC<DividerProps>;
|
|
20
|
+
export default Divider;
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
+
|
|
7
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
exports.default = void 0;
|
|
12
|
+
|
|
13
|
+
var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
|
|
14
|
+
|
|
15
|
+
var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
|
|
16
|
+
|
|
17
|
+
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
18
|
+
|
|
19
|
+
var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
|
|
20
|
+
|
|
21
|
+
var _react = _interopRequireDefault(require("react"));
|
|
22
|
+
|
|
23
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
24
|
+
|
|
25
|
+
var _constants = require("@douyinfe/semi-foundation/lib/cjs/divider/constants");
|
|
26
|
+
|
|
27
|
+
require("@douyinfe/semi-foundation/lib/cjs/divider/divider.css");
|
|
28
|
+
|
|
29
|
+
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
30
|
+
var t = {};
|
|
31
|
+
|
|
32
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && (0, _indexOf.default)(e).call(e, p) < 0) t[p] = s[p];
|
|
33
|
+
|
|
34
|
+
if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
|
|
35
|
+
if ((0, _indexOf.default)(e).call(e, p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
36
|
+
}
|
|
37
|
+
return t;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
const prefixCls = _constants.cssClasses.PREFIX;
|
|
41
|
+
|
|
42
|
+
const Divider = props => {
|
|
43
|
+
var _context;
|
|
44
|
+
|
|
45
|
+
const {
|
|
46
|
+
layout = 'horizontal',
|
|
47
|
+
dashed,
|
|
48
|
+
align = 'center',
|
|
49
|
+
className,
|
|
50
|
+
margin,
|
|
51
|
+
style,
|
|
52
|
+
children
|
|
53
|
+
} = props,
|
|
54
|
+
rest = __rest(props, ["layout", "dashed", "align", "className", "margin", "style", "children"]);
|
|
55
|
+
|
|
56
|
+
const dividerClassNames = (0, _classnames.default)("".concat(prefixCls, "-divider"), className, {
|
|
57
|
+
["".concat(prefixCls, "-divider-horizontal")]: layout === 'horizontal',
|
|
58
|
+
["".concat(prefixCls, "-divider-vertical")]: layout === 'vertical',
|
|
59
|
+
["".concat(prefixCls, "-divider-dashed")]: !!dashed,
|
|
60
|
+
["".concat(prefixCls, "-divider-with-text")]: children && layout === 'horizontal',
|
|
61
|
+
[(0, _concat.default)(_context = "".concat(prefixCls, "-divider-with-text-")).call(_context, align)]: children && layout === 'horizontal'
|
|
62
|
+
});
|
|
63
|
+
let overrideDefaultStyle = {};
|
|
64
|
+
|
|
65
|
+
if (margin !== undefined) {
|
|
66
|
+
if (layout === 'vertical') {
|
|
67
|
+
overrideDefaultStyle = {
|
|
68
|
+
'marginLeft': margin,
|
|
69
|
+
'marginRight': margin
|
|
70
|
+
};
|
|
71
|
+
} else if (layout === 'horizontal') {
|
|
72
|
+
overrideDefaultStyle = {
|
|
73
|
+
'marginTop': margin,
|
|
74
|
+
'marginBottom': margin
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _assign.default)({}, rest, {
|
|
80
|
+
className: dividerClassNames,
|
|
81
|
+
style: (0, _assign.default)((0, _assign.default)({}, overrideDefaultStyle), style)
|
|
82
|
+
}), children && layout === 'horizontal' ? typeof children === 'string' ? /*#__PURE__*/_react.default.createElement("span", {
|
|
83
|
+
className: "".concat(prefixCls, "-divider_inner-text")
|
|
84
|
+
}, children) : children : null);
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
var _default = Divider;
|
|
88
|
+
exports.default = _default;
|
package/lib/cjs/index.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ export { default as Collapsible } from './collapsible';
|
|
|
20
20
|
export { default as ConfigProvider } from './configProvider';
|
|
21
21
|
export { default as DatePicker } from './datePicker';
|
|
22
22
|
export { default as Descriptions } from './descriptions';
|
|
23
|
+
export { default as Divider } from './divider';
|
|
23
24
|
export { default as Empty } from './empty';
|
|
24
25
|
export { default as Modal } from './modal';
|
|
25
26
|
export { default as Dropdown } from './dropdown';
|
package/lib/cjs/index.js
CHANGED
|
@@ -173,6 +173,13 @@ _Object$defineProperty(exports, "Descriptions", {
|
|
|
173
173
|
}
|
|
174
174
|
});
|
|
175
175
|
|
|
176
|
+
_Object$defineProperty(exports, "Divider", {
|
|
177
|
+
enumerable: true,
|
|
178
|
+
get: function () {
|
|
179
|
+
return _divider.default;
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
|
|
176
183
|
_Object$defineProperty(exports, "Dropdown", {
|
|
177
184
|
enumerable: true,
|
|
178
185
|
get: function () {
|
|
@@ -665,6 +672,8 @@ var _datePicker = _interopRequireDefault(require("./datePicker"));
|
|
|
665
672
|
|
|
666
673
|
var _descriptions = _interopRequireDefault(require("./descriptions"));
|
|
667
674
|
|
|
675
|
+
var _divider = _interopRequireDefault(require("./divider"));
|
|
676
|
+
|
|
668
677
|
var _empty = _interopRequireDefault(require("./empty"));
|
|
669
678
|
|
|
670
679
|
var _modal = _interopRequireDefault(require("./modal"));
|
package/lib/cjs/slider/index.js
CHANGED
|
@@ -296,7 +296,10 @@ class Slider extends _baseComponent.default {
|
|
|
296
296
|
["".concat(prefixCls, "-dot-active")]: this.foundation.isMarkActive(Number(mark)) === 'active'
|
|
297
297
|
});
|
|
298
298
|
const markPercent = (Number(mark) - min) / (max - min);
|
|
299
|
-
return activeResult ?
|
|
299
|
+
return activeResult ?
|
|
300
|
+
/*#__PURE__*/
|
|
301
|
+
// eslint-disable-next-line jsx-a11y/no-static-element-interactions
|
|
302
|
+
_react.default.createElement("span", {
|
|
300
303
|
key: mark,
|
|
301
304
|
onClick: e => this.foundation.handleWrapClick(e),
|
|
302
305
|
className: markClass,
|
|
@@ -477,6 +480,7 @@ class Slider extends _baseComponent.default {
|
|
|
477
480
|
onHandleMove: function (mousePos, isMin) {
|
|
478
481
|
let stateChangeCallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _noop2.default;
|
|
479
482
|
let clickTrack = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
483
|
+
let outPutValue = arguments.length > 4 ? arguments[4] : undefined;
|
|
480
484
|
|
|
481
485
|
const sliderDOMIsInRenderTree = _this.foundation.checkAndUpdateIsInRenderTreeState();
|
|
482
486
|
|
|
@@ -485,32 +489,32 @@ class Slider extends _baseComponent.default {
|
|
|
485
489
|
}
|
|
486
490
|
|
|
487
491
|
const {
|
|
488
|
-
value
|
|
489
|
-
onChange
|
|
492
|
+
value
|
|
490
493
|
} = _this.props;
|
|
494
|
+
let finalOutPutValue = outPutValue;
|
|
491
495
|
|
|
492
|
-
|
|
496
|
+
if (finalOutPutValue === undefined) {
|
|
497
|
+
const moveValue = _this.foundation.transPosToValue(mousePos, isMin);
|
|
493
498
|
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
499
|
+
if (moveValue === false) {
|
|
500
|
+
return;
|
|
501
|
+
}
|
|
497
502
|
|
|
498
|
-
|
|
503
|
+
finalOutPutValue = _this.foundation.outPutValue(moveValue);
|
|
504
|
+
}
|
|
499
505
|
|
|
500
506
|
const {
|
|
501
507
|
currentValue
|
|
502
508
|
} = _this.state;
|
|
503
509
|
|
|
504
|
-
if (!(0, _isEqual2.default)(_this.foundation.outPutValue(currentValue),
|
|
505
|
-
onChange(outPutValue);
|
|
506
|
-
|
|
510
|
+
if (!(0, _isEqual2.default)(_this.foundation.outPutValue(currentValue), finalOutPutValue)) {
|
|
507
511
|
if (!clickTrack && _this.foundation.valueFormatIsCorrect(value)) {
|
|
508
512
|
// still require afterChangeCallback when click on the track directly, need skip here
|
|
509
513
|
return false;
|
|
510
514
|
}
|
|
511
515
|
|
|
512
516
|
_this.setState({
|
|
513
|
-
currentValue:
|
|
517
|
+
currentValue: finalOutPutValue
|
|
514
518
|
}, stateChangeCallback);
|
|
515
519
|
}
|
|
516
520
|
},
|
|
@@ -82,7 +82,7 @@ declare class TagInput extends BaseComponent<TagInputProps, TagInputState> {
|
|
|
82
82
|
onRemove: PropTypes.Requireable<(...args: any[]) => any>;
|
|
83
83
|
onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
|
|
84
84
|
size: PropTypes.Requireable<"default" | "small" | "large">;
|
|
85
|
-
validateStatus: PropTypes.Requireable<"default" | "error" | "warning">;
|
|
85
|
+
validateStatus: PropTypes.Requireable<"default" | "error" | "warning" | "success">;
|
|
86
86
|
prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
87
87
|
suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
88
88
|
'aria-label': PropTypes.Requireable<string>;
|
package/lib/es/badge/index.d.ts
CHANGED
|
@@ -14,6 +14,9 @@ export interface BadgeProps {
|
|
|
14
14
|
style?: React.CSSProperties;
|
|
15
15
|
className?: string;
|
|
16
16
|
children?: React.ReactNode;
|
|
17
|
+
onMouseEnter?: (e: React.MouseEvent) => any;
|
|
18
|
+
onMouseLeave?: (e: React.MouseEvent) => any;
|
|
19
|
+
onClick?: (e: React.MouseEvent) => any;
|
|
17
20
|
}
|
|
18
21
|
export default class Badge extends PureComponent<BadgeProps> {
|
|
19
22
|
static contextType: React.Context<import("../configProvider/context").ContextValue>;
|
|
@@ -27,12 +30,18 @@ export default class Badge extends PureComponent<BadgeProps> {
|
|
|
27
30
|
style: PropTypes.Requireable<object>;
|
|
28
31
|
className: PropTypes.Requireable<string>;
|
|
29
32
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
33
|
+
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
34
|
+
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
|
|
35
|
+
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
|
|
30
36
|
};
|
|
31
37
|
static defaultProps: {
|
|
32
38
|
dot: boolean;
|
|
33
39
|
type: string;
|
|
34
40
|
theme: string;
|
|
35
41
|
className: string;
|
|
42
|
+
onClick: () => (...args: any[]) => void;
|
|
43
|
+
onMouseEnter: () => (...args: any[]) => void;
|
|
44
|
+
onMouseLeave: () => (...args: any[]) => void;
|
|
36
45
|
};
|
|
37
46
|
render(): JSX.Element;
|
|
38
47
|
}
|