@douyinfe/semi-ui 2.8.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.
Files changed (43) hide show
  1. package/_base/_story/index.scss +0 -1
  2. package/badge/index.tsx +12 -3
  3. package/descriptions/index.tsx +4 -5
  4. package/descriptions/item.tsx +1 -1
  5. package/dist/css/semi.css +63 -16
  6. package/dist/css/semi.min.css +1 -1
  7. package/dist/umd/semi-ui.js +181 -26
  8. package/dist/umd/semi-ui.js.map +1 -1
  9. package/dist/umd/semi-ui.min.js +1 -1
  10. package/dist/umd/semi-ui.min.js.map +1 -1
  11. package/divider/__test__/divider.test.js +72 -0
  12. package/divider/_story/Demo.tsx +16 -0
  13. package/divider/_story/divider.stories.js +41 -0
  14. package/divider/_story/divider.stories.tsx +8 -0
  15. package/divider/index.tsx +72 -0
  16. package/form/_story/demo.jsx +9 -0
  17. package/index.ts +1 -0
  18. package/lib/cjs/badge/index.d.ts +9 -0
  19. package/lib/cjs/badge/index.js +34 -6
  20. package/lib/cjs/descriptions/index.d.ts +1 -2
  21. package/lib/cjs/descriptions/index.js +4 -3
  22. package/lib/cjs/descriptions/item.d.ts +1 -1
  23. package/lib/cjs/divider/index.d.ts +20 -0
  24. package/lib/cjs/divider/index.js +88 -0
  25. package/lib/cjs/index.d.ts +1 -0
  26. package/lib/cjs/index.js +9 -0
  27. package/lib/cjs/slider/index.js +16 -12
  28. package/lib/cjs/tagInput/index.d.ts +1 -1
  29. package/lib/es/badge/index.d.ts +9 -0
  30. package/lib/es/badge/index.js +31 -6
  31. package/lib/es/descriptions/index.d.ts +1 -2
  32. package/lib/es/descriptions/index.js +4 -3
  33. package/lib/es/descriptions/item.d.ts +1 -1
  34. package/lib/es/divider/index.d.ts +20 -0
  35. package/lib/es/divider/index.js +68 -0
  36. package/lib/es/index.d.ts +1 -0
  37. package/lib/es/index.js +1 -0
  38. package/lib/es/slider/index.js +16 -12
  39. package/lib/es/tagInput/index.d.ts +1 -1
  40. package/package.json +10 -10
  41. package/slider/_story/slider.stories.js +28 -6
  42. package/slider/index.tsx +16 -11
  43. 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,16 @@
1
+ import React from 'react';
2
+ import Divider from '../index';
3
+
4
+ const Demo = () => {
5
+ return (
6
+ <>
7
+ <p>Semi Design </p>
8
+ <Divider />
9
+ <p>Semi Design </p>
10
+ <Divider />
11
+ <p>Semi Design </p>
12
+ </>
13
+ );
14
+ };
15
+
16
+ export default Demo;
@@ -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,8 @@
1
+ import * as React from 'react';
2
+ import { storiesOf } from '@storybook/react';
3
+
4
+ import Demo from './Demo';
5
+
6
+ const stories = storiesOf('Divider', module);
7
+
8
+ stories.add('Divider', () => <Demo />);
@@ -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;
@@ -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';
@@ -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
  }
@@ -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
- } = this.props;
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
- [x: string]: any;
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), item.value) : null) : children;
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: string | number;
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;
@@ -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"));
@@ -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 ? /*#__PURE__*/_react.default.createElement("span", {
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
- const moveValue = _this.foundation.transPosToValue(mousePos, isMin);
496
+ if (finalOutPutValue === undefined) {
497
+ const moveValue = _this.foundation.transPosToValue(mousePos, isMin);
493
498
 
494
- if (moveValue === false) {
495
- return;
496
- }
499
+ if (moveValue === false) {
500
+ return;
501
+ }
497
502
 
498
- const outPutValue = _this.foundation.outPutValue(moveValue);
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), outPutValue)) {
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: outPutValue
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>;
@@ -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
  }