rsuite 5.0.0-beta.5 → 5.0.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 (194) hide show
  1. package/Animation/styles/index.less +16 -16
  2. package/Animation/styles/mixin.less +2 -2
  3. package/Button/styles/index.less +36 -1
  4. package/Button/styles/mixin.less +7 -1
  5. package/CHANGELOG.md +47 -4
  6. package/Calendar/styles/index.less +7 -1
  7. package/Checkbox/styles/index.less +18 -2
  8. package/DatePicker/styles/index.less +6 -2
  9. package/Drawer/styles/index.less +11 -2
  10. package/Drawer/styles/mixin.less +2 -2
  11. package/Dropdown/styles/index.less +4 -0
  12. package/Form/styles/mixin.less +6 -0
  13. package/InputGroup/styles/index.less +4 -0
  14. package/Message/styles/index.less +16 -0
  15. package/Modal/styles/index.less +3 -2
  16. package/Nav/styles/index.less +18 -2
  17. package/Navbar/styles/index.less +68 -34
  18. package/Notification/styles/index.less +9 -3
  19. package/Pagination/styles/index.less +12 -1
  20. package/Pagination/styles/mixin.less +7 -0
  21. package/Picker/styles/index.less +25 -3
  22. package/Picker/styles/mixin.less +7 -2
  23. package/Popover/styles/index.less +23 -30
  24. package/Popover/styles/mixins.less +72 -0
  25. package/README.md +4 -4
  26. package/Radio/styles/index.less +16 -0
  27. package/RadioGroup/styles/index.less +4 -0
  28. package/Rate/styles/index.less +13 -2
  29. package/Ripple/styles/index.less +8 -4
  30. package/Sidenav/styles/index.less +160 -47
  31. package/Table/styles/index.less +8 -0
  32. package/TagInput/package.json +7 -0
  33. package/TagInput/styles/index.less +13 -0
  34. package/Toggle/styles/index.less +29 -19
  35. package/Tooltip/styles/index.less +32 -38
  36. package/Tooltip/styles/mixins.less +72 -0
  37. package/Uploader/styles/index.less +11 -1
  38. package/cjs/@types/common.d.ts +2 -0
  39. package/cjs/Animation/Bounce.js +10 -4
  40. package/cjs/Animation/Collapse.d.ts +1 -48
  41. package/cjs/Animation/Collapse.js +60 -106
  42. package/cjs/Animation/Fade.js +10 -5
  43. package/cjs/Animation/Slide.js +8 -4
  44. package/cjs/Carousel/Carousel.d.ts +7 -0
  45. package/cjs/Carousel/Carousel.js +24 -11
  46. package/cjs/CheckTree/index.js +14 -5
  47. package/cjs/CheckTreePicker/CheckTreePicker.js +9 -5
  48. package/cjs/DatePicker/DatePicker.d.ts +5 -1
  49. package/cjs/DatePicker/DatePicker.js +2 -13
  50. package/cjs/DateRangePicker/Calendar.d.ts +2 -1
  51. package/cjs/DateRangePicker/Calendar.js +4 -3
  52. package/cjs/DateRangePicker/DateRangePicker.d.ts +1 -1
  53. package/cjs/DateRangePicker/DateRangePicker.js +58 -43
  54. package/cjs/DateRangePicker/utils.d.ts +1 -1
  55. package/cjs/DateRangePicker/utils.js +9 -5
  56. package/cjs/Dropdown/Dropdown.js +31 -18
  57. package/cjs/Dropdown/DropdownContext.d.ts +4 -1
  58. package/cjs/Dropdown/DropdownItem.js +31 -4
  59. package/cjs/Dropdown/DropdownState.d.ts +37 -0
  60. package/cjs/Dropdown/DropdownState.js +66 -0
  61. package/cjs/Dropdown/DropdownToggle.js +3 -6
  62. package/cjs/InputNumber/InputNumber.js +11 -10
  63. package/cjs/InputPicker/InputPicker.d.ts +16 -3
  64. package/cjs/InputPicker/InputPicker.js +85 -44
  65. package/cjs/List/ListItem.d.ts +1 -1
  66. package/cjs/Menu/MenuItem.js +1 -1
  67. package/cjs/MultiCascader/MultiCascader.js +4 -3
  68. package/cjs/Nav/NavItem.js +11 -63
  69. package/cjs/Navbar/NavbarItem.d.ts +19 -0
  70. package/cjs/Navbar/NavbarItem.js +93 -0
  71. package/cjs/Pagination/Pagination.js +1 -1
  72. package/cjs/Picker/PickerToggle.js +2 -2
  73. package/cjs/Picker/utils.d.ts +1 -1
  74. package/cjs/Picker/utils.js +26 -22
  75. package/cjs/Progress/ProgressCircle.js +15 -15
  76. package/cjs/SelectPicker/SelectPicker.d.ts +1 -3
  77. package/cjs/Sidenav/SidenavDropdown.js +6 -1
  78. package/cjs/Sidenav/SidenavItem.js +46 -12
  79. package/cjs/Slider/Slider.js +2 -1
  80. package/cjs/TagInput/index.d.ts +13 -0
  81. package/cjs/TagInput/index.js +58 -0
  82. package/cjs/TagPicker/index.d.ts +10 -2
  83. package/cjs/TagPicker/index.js +25 -6
  84. package/cjs/Tree/Tree.d.ts +0 -2
  85. package/cjs/Tree/Tree.js +13 -4
  86. package/cjs/Tree/TreeContext.d.ts +7 -0
  87. package/cjs/Tree/TreeContext.js +13 -0
  88. package/cjs/TreePicker/TreeNode.js +10 -3
  89. package/cjs/TreePicker/TreePicker.js +22 -10
  90. package/cjs/Uploader/UploadFileItem.d.ts +5 -0
  91. package/cjs/Uploader/UploadFileItem.js +4 -3
  92. package/cjs/Uploader/Uploader.d.ts +8 -3
  93. package/cjs/Uploader/Uploader.js +12 -6
  94. package/cjs/index.d.ts +2 -0
  95. package/cjs/index.js +5 -1
  96. package/cjs/utils/ajaxUpload.d.ts +5 -1
  97. package/cjs/utils/ajaxUpload.js +24 -13
  98. package/cjs/utils/constants.d.ts +1 -0
  99. package/cjs/utils/constants.js +1 -0
  100. package/cjs/utils/dateUtils.d.ts +1 -0
  101. package/cjs/utils/dateUtils.js +5 -1
  102. package/cjs/utils/useInternalId.d.ts +4 -0
  103. package/cjs/utils/useInternalId.js +24 -0
  104. package/cjs/utils/useUniqueId.d.ts +1 -1
  105. package/cjs/utils/useUniqueId.js +1 -1
  106. package/dist/rsuite-rtl.css +1614 -221
  107. package/dist/rsuite-rtl.min.css +1 -1
  108. package/dist/rsuite-rtl.min.css.map +1 -1
  109. package/dist/rsuite.css +1618 -221
  110. package/dist/rsuite.js +288 -288
  111. package/dist/rsuite.min.css +1 -1
  112. package/dist/rsuite.min.css.map +1 -1
  113. package/dist/rsuite.min.js +1 -1
  114. package/dist/rsuite.min.js.map +1 -1
  115. package/esm/@types/common.d.ts +2 -0
  116. package/esm/Animation/Bounce.js +8 -4
  117. package/esm/Animation/Collapse.d.ts +1 -48
  118. package/esm/Animation/Collapse.js +59 -104
  119. package/esm/Animation/Fade.js +8 -4
  120. package/esm/Animation/Slide.js +6 -3
  121. package/esm/Carousel/Carousel.d.ts +7 -0
  122. package/esm/Carousel/Carousel.js +25 -12
  123. package/esm/CheckTree/index.js +11 -5
  124. package/esm/CheckTreePicker/CheckTreePicker.js +8 -6
  125. package/esm/DatePicker/DatePicker.d.ts +5 -1
  126. package/esm/DatePicker/DatePicker.js +2 -13
  127. package/esm/DateRangePicker/Calendar.d.ts +2 -1
  128. package/esm/DateRangePicker/Calendar.js +4 -3
  129. package/esm/DateRangePicker/DateRangePicker.d.ts +1 -1
  130. package/esm/DateRangePicker/DateRangePicker.js +27 -12
  131. package/esm/DateRangePicker/utils.d.ts +1 -1
  132. package/esm/DateRangePicker/utils.js +7 -3
  133. package/esm/Dropdown/Dropdown.js +30 -19
  134. package/esm/Dropdown/DropdownContext.d.ts +4 -1
  135. package/esm/Dropdown/DropdownItem.js +30 -6
  136. package/esm/Dropdown/DropdownState.d.ts +37 -0
  137. package/esm/Dropdown/DropdownState.js +55 -0
  138. package/esm/Dropdown/DropdownToggle.js +3 -6
  139. package/esm/InputNumber/InputNumber.js +11 -10
  140. package/esm/InputPicker/InputPicker.d.ts +16 -3
  141. package/esm/InputPicker/InputPicker.js +84 -45
  142. package/esm/List/ListItem.d.ts +1 -1
  143. package/esm/Menu/MenuItem.js +1 -1
  144. package/esm/MultiCascader/MultiCascader.js +4 -3
  145. package/esm/Nav/NavItem.js +12 -61
  146. package/esm/Navbar/NavbarItem.d.ts +19 -0
  147. package/esm/Navbar/NavbarItem.js +73 -0
  148. package/esm/Pagination/Pagination.js +1 -1
  149. package/esm/Picker/PickerToggle.js +2 -2
  150. package/esm/Picker/utils.d.ts +1 -1
  151. package/esm/Picker/utils.js +26 -22
  152. package/esm/Progress/ProgressCircle.js +15 -15
  153. package/esm/SelectPicker/SelectPicker.d.ts +1 -3
  154. package/esm/Sidenav/SidenavDropdown.js +5 -1
  155. package/esm/Sidenav/SidenavItem.js +47 -13
  156. package/esm/Slider/Slider.js +2 -1
  157. package/esm/TagInput/index.d.ts +13 -0
  158. package/esm/TagInput/index.js +44 -0
  159. package/esm/TagPicker/index.d.ts +10 -2
  160. package/esm/TagPicker/index.js +23 -6
  161. package/esm/Tree/Tree.d.ts +0 -2
  162. package/esm/Tree/Tree.js +10 -4
  163. package/esm/Tree/TreeContext.d.ts +7 -0
  164. package/esm/Tree/TreeContext.js +3 -0
  165. package/esm/TreePicker/TreeNode.js +10 -4
  166. package/esm/TreePicker/TreePicker.js +23 -12
  167. package/esm/Uploader/UploadFileItem.d.ts +5 -0
  168. package/esm/Uploader/UploadFileItem.js +2 -3
  169. package/esm/Uploader/Uploader.d.ts +8 -3
  170. package/esm/Uploader/Uploader.js +12 -6
  171. package/esm/index.d.ts +2 -0
  172. package/esm/index.js +1 -0
  173. package/esm/utils/ajaxUpload.d.ts +5 -1
  174. package/esm/utils/ajaxUpload.js +24 -13
  175. package/esm/utils/constants.d.ts +1 -0
  176. package/esm/utils/constants.js +1 -0
  177. package/esm/utils/dateUtils.d.ts +1 -0
  178. package/esm/utils/dateUtils.js +1 -0
  179. package/esm/utils/useInternalId.d.ts +4 -0
  180. package/esm/utils/useInternalId.js +16 -0
  181. package/esm/utils/useUniqueId.d.ts +1 -1
  182. package/esm/utils/useUniqueId.js +1 -1
  183. package/package.json +4 -9
  184. package/styles/color-modes/dark.less +28 -5
  185. package/styles/color-modes/high-contrast.less +317 -0
  186. package/styles/color-modes/light.less +24 -1
  187. package/styles/color-modes.less +5 -0
  188. package/styles/colors/high-contrast.less +105 -0
  189. package/styles/index.less +1 -0
  190. package/styles/mixins/color-modes.less +6 -0
  191. package/styles/mixins/listbox.less +13 -1
  192. package/styles/mixins/menu.less +7 -0
  193. package/styles/mixins/utilities.less +9 -1
  194. package/styles/variables.less +11 -0
@@ -72,6 +72,8 @@ export interface PickerBaseProps<LocaleType = any> extends WithAsProps, Animatio
72
72
  defaultOpen?: boolean;
73
73
  /** A picker that can clear values */
74
74
  cleanable?: boolean;
75
+ /** A picker can have different sizes */
76
+ size?: TypeAttributes.Size;
75
77
  /** Called when Modal is displayed */
76
78
  onOpen?: () => void;
77
79
  /** Called when Modal is closed */
@@ -2,19 +2,23 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import React from 'react';
4
4
  import Transition from './Transition';
5
+ import { useClassNames } from '../utils';
5
6
  var Bounce = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
6
7
  var _ref$timeout = _ref.timeout,
7
8
  timeout = _ref$timeout === void 0 ? 300 : _ref$timeout,
8
9
  props = _objectWithoutPropertiesLoose(_ref, ["timeout"]);
9
10
 
11
+ var _useClassNames = useClassNames('anim'),
12
+ prefix = _useClassNames.prefix;
13
+
10
14
  return /*#__PURE__*/React.createElement(Transition, _extends({}, props, {
11
15
  ref: ref,
12
16
  animation: true,
13
17
  timeout: timeout,
14
- enteringClassName: "bounce-in animated",
15
- enteredClassName: "bounce-in animated",
16
- exitingClassName: "bounce-out animated",
17
- exitedClassName: "bounce-out animated"
18
+ enteringClassName: prefix('bounce-in'),
19
+ enteredClassName: prefix('bounce-in'),
20
+ exitingClassName: prefix('bounce-out'),
21
+ exitedClassName: prefix('bounce-out')
18
22
  }));
19
23
  });
20
24
  Bounce.displayName = 'Bounce';
@@ -1,5 +1,4 @@
1
1
  import React from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import { TransitionProps } from './Transition';
4
3
  export declare enum DIMENSION {
5
4
  HEIGHT = "height",
@@ -10,52 +9,6 @@ export interface CollapseProps extends TransitionProps {
10
9
  dimension?: DIMENSION | (() => DIMENSION);
11
10
  /** Function that returns the height or width of the animating DOM node */
12
11
  getDimensionValue?: (dimension: DIMENSION, elem: Element) => number;
13
- /** ARIA role of collapsible element */
14
- role?: string;
15
- }
16
- declare function defaultGetDimensionValue(dimension: DIMENSION, elem: HTMLElement): number;
17
- declare class Collapse extends React.Component<CollapseProps> {
18
- static propTypes: {
19
- dimension: PropTypes.Requireable<any>;
20
- getDimensionValue: PropTypes.Requireable<(...args: any[]) => any>;
21
- role: PropTypes.Requireable<string>;
22
- animation: PropTypes.Requireable<boolean>;
23
- children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
24
- className: PropTypes.Requireable<string>;
25
- in: PropTypes.Requireable<boolean>;
26
- unmountOnExit: PropTypes.Requireable<boolean>;
27
- transitionAppear: PropTypes.Requireable<boolean>;
28
- timeout: PropTypes.Requireable<number>;
29
- exitedClassName: PropTypes.Requireable<string>;
30
- exitingClassName: PropTypes.Requireable<string>;
31
- enteredClassName: PropTypes.Requireable<string>;
32
- enteringClassName: PropTypes.Requireable<string>;
33
- onEnter: PropTypes.Requireable<(...args: any[]) => any>;
34
- onEntering: PropTypes.Requireable<(...args: any[]) => any>;
35
- onEntered: PropTypes.Requireable<(...args: any[]) => any>;
36
- onExit: PropTypes.Requireable<(...args: any[]) => any>;
37
- onExiting: PropTypes.Requireable<(...args: any[]) => any>;
38
- onExited: PropTypes.Requireable<(...args: any[]) => any>;
39
- };
40
- static displayName: string;
41
- static defaultProps: {
42
- timeout: number;
43
- dimension: DIMENSION;
44
- exitedClassName: string;
45
- exitingClassName: string;
46
- enteredClassName: string;
47
- enteringClassName: string;
48
- getDimensionValue: typeof defaultGetDimensionValue;
49
- };
50
- transitionRef: React.RefObject<any>;
51
- constructor(props: any);
52
- getTransitionInstance(): any;
53
- handleEnter: (elem: HTMLElement) => void;
54
- handleEntering: (elem: HTMLElement) => void;
55
- handleEntered: (elem: HTMLElement) => void;
56
- handleExit: (elem: HTMLElement) => void;
57
- handleExiting: (elem: HTMLElement) => void;
58
- dimension(): DIMENSION;
59
- render(): JSX.Element;
60
12
  }
13
+ declare const Collapse: React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<any>>;
61
14
  export default Collapse;
@@ -1,14 +1,12 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
3
- import React from 'react';
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ import React, { useCallback } from 'react';
4
4
  import PropTypes from 'prop-types';
5
- import classNames from 'classnames';
6
5
  import { getStyle, addStyle } from 'dom-lib';
7
6
  import get from 'lodash/get';
8
7
  import capitalize from 'lodash/capitalize';
9
- import pick from 'lodash/pick';
10
8
  import Transition, { transitionPropTypes } from './Transition';
11
- import createChainedFunction from '../utils/createChainedFunction';
9
+ import { useClassNames, createChainedFunction } from '../utils';
12
10
  export var DIMENSION;
13
11
 
14
12
  (function (DIMENSION) {
@@ -36,110 +34,67 @@ function getScrollDimensionValue(elem, dimension) {
36
34
  return value + "px";
37
35
  }
38
36
 
39
- var Collapse = /*#__PURE__*/function (_React$Component) {
40
- _inheritsLoose(Collapse, _React$Component);
41
-
42
- function Collapse(props) {
43
- var _this;
44
-
45
- _this = _React$Component.call(this, props) || this;
46
- _this.transitionRef = void 0;
47
-
48
- _this.handleEnter = function (elem) {
49
- var dimension = _this.dimension();
50
-
51
- addStyle(elem, dimension, 0);
52
- };
53
-
54
- _this.handleEntering = function (elem) {
55
- var dimension = _this.dimension();
56
-
57
- addStyle(elem, dimension, getScrollDimensionValue(elem, dimension));
58
- };
59
-
60
- _this.handleEntered = function (elem) {
61
- var dimension = _this.dimension();
62
-
63
- addStyle(elem, dimension, 'auto');
64
- };
65
-
66
- _this.handleExit = function (elem) {
67
- var dimension = _this.dimension();
68
-
69
- var getDimensionValue = _this.props.getDimensionValue;
70
- var value = getDimensionValue ? getDimensionValue(dimension, elem) : 0;
71
- addStyle(elem, dimension, value + "px");
72
- };
73
-
74
- _this.handleExiting = function (elem) {
75
- var dimension = _this.dimension();
76
-
77
- triggerBrowserReflow(elem);
78
- addStyle(elem, dimension, 0);
79
- };
80
-
81
- _this.transitionRef = /*#__PURE__*/React.createRef();
82
- return _this;
83
- } // for testing
84
-
85
-
86
- var _proto = Collapse.prototype;
87
-
88
- _proto.getTransitionInstance = function getTransitionInstance() {
89
- return this.transitionRef.current;
90
- };
91
-
92
- _proto.dimension = function dimension() {
93
- var dimension = this.props.dimension;
94
- return typeof dimension === 'function' ? dimension() : dimension;
95
- };
96
-
97
- _proto.render = function render() {
98
- var _this$props = this.props,
99
- role = _this$props.role,
100
- className = _this$props.className,
101
- onExited = _this$props.onExited,
102
- onEnter = _this$props.onEnter,
103
- onEntering = _this$props.onEntering,
104
- onEntered = _this$props.onEntered,
105
- onExit = _this$props.onExit,
106
- onExiting = _this$props.onExiting;
107
- var enterEventHandler = createChainedFunction(this.handleEnter, onEnter);
108
- var enteringEventHandler = createChainedFunction(this.handleEntering, onEntering);
109
- var enteredEventHandler = createChainedFunction(this.handleEntered, onEntered);
110
- var exitEventHandler = createChainedFunction(this.handleExit, onExit);
111
- var exitingEventHandler = createChainedFunction(this.handleExiting, onExiting);
112
- return /*#__PURE__*/React.createElement(Transition, _extends({}, pick(this.props, Object.keys(transitionPropTypes)), {
113
- ref: this.transitionRef,
114
- "aria-expanded": role ? this.props.in : null,
115
- className: classNames(className, {
116
- width: this.dimension() === 'width'
117
- }),
118
- onEnter: enterEventHandler,
119
- onEntering: enteringEventHandler,
120
- onEntered: enteredEventHandler,
121
- onExit: exitEventHandler,
122
- onExiting: exitingEventHandler,
123
- onExited: onExited
124
- }));
125
- };
126
-
127
- return Collapse;
128
- }(React.Component);
129
-
130
- Collapse.propTypes = _extends({}, transitionPropTypes, {
131
- dimension: PropTypes.any,
132
- getDimensionValue: PropTypes.func,
133
- role: PropTypes.string
37
+ var Collapse = /*#__PURE__*/React.forwardRef(function (props, ref) {
38
+ var className = props.className,
39
+ dimensionProp = props.dimension,
40
+ exitedClassName = props.exitedClassName,
41
+ exitingClassName = props.exitingClassName,
42
+ enteredClassName = props.enteredClassName,
43
+ enteringClassName = props.enteringClassName,
44
+ getDimensionValue = props.getDimensionValue,
45
+ onEnter = props.onEnter,
46
+ onEntering = props.onEntering,
47
+ onEntered = props.onEntered,
48
+ onExit = props.onExit,
49
+ onExiting = props.onExiting,
50
+ rest = _objectWithoutPropertiesLoose(props, ["className", "dimension", "exitedClassName", "exitingClassName", "enteredClassName", "enteringClassName", "getDimensionValue", "onEnter", "onEntering", "onEntered", "onExit", "onExiting"]);
51
+
52
+ var _useClassNames = useClassNames('anim'),
53
+ prefix = _useClassNames.prefix,
54
+ merge = _useClassNames.merge;
55
+
56
+ var dimension = typeof dimensionProp === 'function' ? dimensionProp() : dimensionProp;
57
+ var handleEnter = useCallback(function (elem) {
58
+ addStyle(elem, dimension, 0);
59
+ }, [dimension]);
60
+ var handleEntering = useCallback(function (elem) {
61
+ addStyle(elem, dimension, getScrollDimensionValue(elem, dimension));
62
+ }, [dimension]);
63
+ var handleEntered = useCallback(function (elem) {
64
+ addStyle(elem, dimension, 'auto');
65
+ }, [dimension]);
66
+ var handleExit = useCallback(function (elem) {
67
+ var value = getDimensionValue ? getDimensionValue(dimension, elem) : 0;
68
+ addStyle(elem, dimension, value + "px");
69
+ }, [dimension, getDimensionValue]);
70
+ var handleExiting = useCallback(function (elem) {
71
+ triggerBrowserReflow(elem);
72
+ addStyle(elem, dimension, 0);
73
+ }, [dimension]);
74
+ return /*#__PURE__*/React.createElement(Transition, _extends({}, rest, {
75
+ ref: ref,
76
+ className: merge(className, prefix({
77
+ 'collapse-horizontal': dimension === 'width'
78
+ })),
79
+ exitedClassName: exitedClassName || prefix('collapse'),
80
+ exitingClassName: exitingClassName || prefix('collapsing'),
81
+ enteredClassName: enteredClassName || prefix('collapse', 'in'),
82
+ enteringClassName: enteringClassName || prefix('collapsing'),
83
+ onEnter: createChainedFunction(handleEnter, onEnter),
84
+ onEntering: createChainedFunction(handleEntering, onEntering),
85
+ onEntered: createChainedFunction(handleEntered, onEntered),
86
+ onExit: createChainedFunction(handleExit, onExit),
87
+ onExiting: createChainedFunction(handleExiting, onExiting)
88
+ }));
134
89
  });
135
90
  Collapse.displayName = 'Collapse';
136
91
  Collapse.defaultProps = {
137
92
  timeout: 300,
138
93
  dimension: DIMENSION.HEIGHT,
139
- exitedClassName: 'collapse',
140
- exitingClassName: 'collapsing',
141
- enteredClassName: 'collapse in',
142
- enteringClassName: 'collapsing',
143
94
  getDimensionValue: defaultGetDimensionValue
144
95
  };
96
+ Collapse.propTypes = _extends({}, transitionPropTypes, {
97
+ dimension: PropTypes.any,
98
+ getDimensionValue: PropTypes.func
99
+ });
145
100
  export default Collapse;
@@ -1,20 +1,24 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import React from 'react';
4
- import classNames from 'classnames';
5
4
  import Transition from './Transition';
5
+ import { useClassNames } from '../utils';
6
6
  var Fade = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
7
7
  var _ref$timeout = _ref.timeout,
8
8
  timeout = _ref$timeout === void 0 ? 300 : _ref$timeout,
9
9
  className = _ref.className,
10
10
  props = _objectWithoutPropertiesLoose(_ref, ["timeout", "className"]);
11
11
 
12
+ var _useClassNames = useClassNames('anim'),
13
+ prefix = _useClassNames.prefix,
14
+ merge = _useClassNames.merge;
15
+
12
16
  return /*#__PURE__*/React.createElement(Transition, _extends({}, props, {
13
17
  ref: ref,
14
18
  timeout: timeout,
15
- className: classNames(className, 'fade'),
16
- enteredClassName: "in",
17
- enteringClassName: "in"
19
+ className: merge(className, prefix('fade')),
20
+ enteredClassName: prefix('in'),
21
+ enteringClassName: prefix('in')
18
22
  }));
19
23
  });
20
24
  Fade.displayName = 'Fade';
@@ -1,8 +1,8 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import React from 'react';
4
- import classNames from 'classnames';
5
4
  import Transition from './Transition';
5
+ import { useClassNames } from '../utils';
6
6
  var Slide = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
7
7
  var _ref$timeout = _ref.timeout,
8
8
  timeout = _ref$timeout === void 0 ? 300 : _ref$timeout,
@@ -10,8 +10,11 @@ var Slide = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
10
10
  placement = _ref$placement === void 0 ? 'right' : _ref$placement,
11
11
  props = _objectWithoutPropertiesLoose(_ref, ["timeout", "placement"]);
12
12
 
13
- var enterClassName = classNames('slide-in', placement, 'animated');
14
- var exitClassName = classNames('slide-out', placement, 'animated');
13
+ var _useClassNames = useClassNames('anim'),
14
+ prefix = _useClassNames.prefix;
15
+
16
+ var enterClassName = prefix('slide-in', placement);
17
+ var exitClassName = prefix('slide-out', placement);
15
18
  return /*#__PURE__*/React.createElement(Transition, _extends({}, props, {
16
19
  ref: ref,
17
20
  animation: true,
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { WithAsProps, RsRefForwardingComponent } from '../@types/common';
2
3
  export interface CarouselProps extends WithAsProps {
3
4
  /** Autoplay element */
@@ -8,6 +9,12 @@ export interface CarouselProps extends WithAsProps {
8
9
  placement?: 'top' | 'bottom' | 'left' | 'right';
9
10
  /** Button shape */
10
11
  shape?: 'dot' | 'bar';
12
+ /** Callback fired when the active item changes */
13
+ onSelect: (index: number, event: React.ChangeEvent<HTMLInputElement>) => void;
14
+ /** Callback fired when a slide transition starts */
15
+ onSlideStart?: (index: number, event: React.ChangeEvent<HTMLInputElement>) => void;
16
+ /** Callback fired when a slide transition ends */
17
+ onSlideEnd?: (index: number, event: React.TransitionEvent<HTMLDivElement>) => void;
11
18
  }
12
19
  declare const Carousel: RsRefForwardingComponent<'div', CarouselProps>;
13
20
  export default Carousel;
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- import React, { useState, useMemo } from 'react';
3
+ import React, { useState, useMemo, useCallback } from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import classNames from 'classnames';
6
6
  import { useClassNames, useCustom, guid, ReactChildren, useTimeout } from '../utils';
@@ -22,7 +22,10 @@ var Carousel = /*#__PURE__*/React.forwardRef(function (props, ref) {
22
22
  shape = props.shape,
23
23
  autoplay = props.autoplay,
24
24
  autoplayInterval = props.autoplayInterval,
25
- rest = _objectWithoutPropertiesLoose(props, ["as", "children", "classPrefix", "className", "placement", "shape", "autoplay", "autoplayInterval"]);
25
+ onSelect = props.onSelect,
26
+ onSlideStart = props.onSlideStart,
27
+ onSlideEnd = props.onSlideEnd,
28
+ rest = _objectWithoutPropertiesLoose(props, ["as", "children", "classPrefix", "className", "placement", "shape", "autoplay", "autoplayInterval", "onSelect", "onSlideStart", "onSlideEnd"]);
26
29
 
27
30
  var _useCustom = useCustom('Carousel'),
28
31
  rtl = _useCustom.rtl;
@@ -45,23 +48,29 @@ var Carousel = /*#__PURE__*/React.forwardRef(function (props, ref) {
45
48
  lastIndex = _useState2[0],
46
49
  setLastIndex = _useState2[1];
47
50
 
48
- var handleAutoplay = function handleAutoplay(nextActiveIndex) {
51
+ var handleSlide = function handleSlide(nextActiveIndex, event) {
49
52
  clear();
50
- var nextIndex = nextActiveIndex !== null && nextActiveIndex !== void 0 ? nextActiveIndex : activeIndex + 1; // When index is greater than count, start from 1 again.
53
+ var index = nextActiveIndex !== null && nextActiveIndex !== void 0 ? nextActiveIndex : activeIndex + 1; // When index is greater than count, start from 1 again.
51
54
 
52
- setActiveIndex(nextIndex % count);
53
- setLastIndex(nextActiveIndex == null ? activeIndex : nextIndex % count);
55
+ var nextIndex = index % count;
56
+ setActiveIndex(nextIndex);
57
+ onSlideStart === null || onSlideStart === void 0 ? void 0 : onSlideStart(nextIndex, event);
58
+ setLastIndex(nextActiveIndex == null ? activeIndex : nextIndex);
54
59
  reset();
55
60
  };
56
61
 
57
62
  var handleChange = function handleChange(event) {
58
63
  var activeIndex = +event.target.value;
59
- handleAutoplay(activeIndex);
60
- }; // Set a timer for automatic playback.
61
- // `autoplay` needs to be cast to boolean type to avoid undefined parameters.
64
+ handleSlide(activeIndex);
65
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect(activeIndex, event);
66
+ };
62
67
 
68
+ var handleTransitionEnd = useCallback(function (event) {
69
+ onSlideEnd === null || onSlideEnd === void 0 ? void 0 : onSlideEnd(activeIndex, event);
70
+ }, [activeIndex, onSlideEnd]); // Set a timer for automatic playback.
71
+ // `autoplay` needs to be cast to boolean type to avoid undefined parameters.
63
72
 
64
- var _useTimeout = useTimeout(handleAutoplay, autoplayInterval, !!autoplay && count > 1),
73
+ var _useTimeout = useTimeout(handleSlide, autoplayInterval, !!autoplay && count > 1),
65
74
  clear = _useTimeout.clear,
66
75
  reset = _useTimeout.reset;
67
76
 
@@ -110,7 +119,8 @@ var Carousel = /*#__PURE__*/React.forwardRef(function (props, ref) {
110
119
  className: prefix('content')
111
120
  }, /*#__PURE__*/React.createElement("div", {
112
121
  className: prefix('slider'),
113
- style: sliderStyles
122
+ style: sliderStyles,
123
+ onTransitionEnd: handleTransitionEnd
114
124
  }, items), showMask && /*#__PURE__*/React.createElement("div", {
115
125
  className: prefix('slider-after', {
116
126
  'slider-after-vertical': vertical
@@ -136,6 +146,9 @@ Carousel.propTypes = {
136
146
  autoplay: PropTypes.bool,
137
147
  autoplayInterval: PropTypes.number,
138
148
  placement: PropTypes.oneOf(['top', 'bottom', 'left', 'right']),
139
- shape: PropTypes.oneOf(['dot', 'bar'])
149
+ shape: PropTypes.oneOf(['dot', 'bar']),
150
+ onSelect: PropTypes.func,
151
+ onSlideStart: PropTypes.func,
152
+ onSlideEnd: PropTypes.func
140
153
  };
141
154
  export default Carousel;
@@ -1,11 +1,17 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
- import React from 'react';
2
+ import React, { useRef } from 'react';
3
3
  import CheckTreePicker from '../CheckTreePicker';
4
+ import TreeContext from '../Tree/TreeContext';
4
5
  var CheckTree = /*#__PURE__*/React.forwardRef(function (props, ref) {
5
- return /*#__PURE__*/React.createElement(CheckTreePicker, _extends({
6
- ref: ref,
7
- inline: true
8
- }, props));
6
+ var dragNodeRef = useRef();
7
+ return /*#__PURE__*/React.createElement(TreeContext.Provider, {
8
+ value: {
9
+ inline: true,
10
+ dragNodeRef: dragNodeRef
11
+ }
12
+ }, /*#__PURE__*/React.createElement(CheckTreePicker, _extends({
13
+ ref: ref
14
+ }, props)));
9
15
  });
10
16
  CheckTree.displayName = 'CheckTree';
11
17
  export default CheckTree;
@@ -6,11 +6,12 @@ import _omit from "lodash/omit";
6
6
  import _isFunction from "lodash/isFunction";
7
7
  import _pick from "lodash/pick";
8
8
  import _isNil from "lodash/isNil";
9
- import React, { useState, useRef, useEffect, useCallback } from 'react';
9
+ import React, { useState, useRef, useEffect, useCallback, useContext } from 'react';
10
10
  import PropTypes from 'prop-types';
11
11
  import classNames from 'classnames';
12
12
  import { List, AutoSizer } from '../Picker/VirtualizedList';
13
13
  import CheckTreeNode from './CheckTreeNode';
14
+ import TreeContext from '../Tree/TreeContext';
14
15
  import { createChainedFunction, useCustom, useClassNames, useControlled, KEY_VALUES, mergeRefs, shallowEqual } from '../utils';
15
16
  import { PickerToggle, onMenuKeyDown as _onMenuKeyDown, PickerOverlay, SearchBar, SelectedElement, PickerToggleTrigger, createConcatChildrenFunction, usePickerClassName, usePublicMethods, pickTriggerPropKeys, omitTriggerPropKeys, listPickerPropTypes, listPickerDefaultProps, useToggleKeyDownEvent } from '../Picker';
16
17
  import { isEveryChildChecked, isSomeNodeHasChildren, isAllSiblingNodeUncheckable, isEveryFirstLevelNodeUncheckable, getFormattedTree, getDisabledState, getCheckTreePickerDefaultValue, getSelectedItems, isNodeUncheckable } from './utils';
@@ -41,7 +42,6 @@ var CheckTreePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
41
42
  toggleAs = props.toggleAs,
42
43
  searchKeyword = props.searchKeyword,
43
44
  overrideLocale = props.locale,
44
- inline = props.inline,
45
45
  cascade = props.cascade,
46
46
  disabled = props.disabled,
47
47
  valueKey = props.valueKey,
@@ -81,7 +81,10 @@ var CheckTreePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
81
81
  renderValue = props.renderValue,
82
82
  renderTreeIcon = props.renderTreeIcon,
83
83
  renderTreeNode = props.renderTreeNode,
84
- rest = _objectWithoutPropertiesLoose(props, ["as", "data", "style", "cleanable", "countable", "searchBy", "toggleAs", "searchKeyword", "locale", "inline", "cascade", "disabled", "valueKey", "labelKey", "placement", "childrenKey", "placeholder", "value", "defaultValue", "defaultExpandAll", "disabledItemValues", "expandItemValues", "defaultExpandItemValues", "height", "menuStyle", "searchable", "virtualized", "className", "classPrefix", "menuClassName", "menuAutoWidth", "uncheckableItemValues", "id", "renderMenu", "getChildren", "renderExtraFooter", "onEntered", "onChange", "onClean", "onClose", "onExited", "onSearch", "onSelect", "onOpen", "onScroll", "onExpand", "renderValue", "renderTreeIcon", "renderTreeNode"]);
84
+ rest = _objectWithoutPropertiesLoose(props, ["as", "data", "style", "cleanable", "countable", "searchBy", "toggleAs", "searchKeyword", "locale", "cascade", "disabled", "valueKey", "labelKey", "placement", "childrenKey", "placeholder", "value", "defaultValue", "defaultExpandAll", "disabledItemValues", "expandItemValues", "defaultExpandItemValues", "height", "menuStyle", "searchable", "virtualized", "className", "classPrefix", "menuClassName", "menuAutoWidth", "uncheckableItemValues", "id", "renderMenu", "getChildren", "renderExtraFooter", "onEntered", "onChange", "onClean", "onClose", "onExited", "onSearch", "onSelect", "onOpen", "onScroll", "onExpand", "renderValue", "renderTreeIcon", "renderTreeNode"]);
85
+
86
+ var _useContext = useContext(TreeContext),
87
+ inline = _useContext.inline;
85
88
 
86
89
  var triggerRef = useRef();
87
90
  var targetRef = useRef();
@@ -401,7 +404,7 @@ var CheckTreePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
401
404
  triggerRef: triggerRef,
402
405
  overlayRef: overlayRef,
403
406
  targetRef: targetRef
404
- });
407
+ }, inline);
405
408
  var handleClean = useCallback(function (event) {
406
409
  var target = event.target; // exclude searchBar
407
410
 
@@ -622,7 +625,7 @@ var CheckTreePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
622
625
  }, style) : {};
623
626
  return /*#__PURE__*/React.createElement("div", {
624
627
  id: id ? id + "-listbox" : undefined,
625
- ref: treeViewRef,
628
+ ref: inline ? mergeRefs(treeViewRef, ref) : treeViewRef,
626
629
  role: "tree",
627
630
  "aria-multiselectable": true,
628
631
  className: classes,
@@ -753,7 +756,6 @@ CheckTreePicker.defaultProps = defaultProps;
753
756
  CheckTreePicker.propTypes = _extends({}, listPickerPropTypes, {
754
757
  height: PropTypes.number,
755
758
  appearance: PropTypes.oneOf(['default', 'subtle']),
756
- inline: PropTypes.bool,
757
759
  locale: PropTypes.any,
758
760
  cascade: PropTypes.bool,
759
761
  countable: PropTypes.bool,
@@ -10,7 +10,11 @@ export interface DatePickerProps extends PickerBaseProps<DatePickerLocale>, Form
10
10
  calendarDefaultDate?: Date;
11
11
  /** Format date */
12
12
  format?: string;
13
- /** Display date panel when component initial */
13
+ /**
14
+ * Display date panel when component initial
15
+ *
16
+ * @deprecated use <Calendar> instead
17
+ **/
14
18
  inline?: boolean;
15
19
  /** ISO 8601 standard, each calendar week begins on Monday and Sunday on the seventh day */
16
20
  isoWeek?: boolean;
@@ -31,7 +31,6 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
31
31
  defaultValue = props.defaultValue,
32
32
  disabled = props.disabled,
33
33
  formatStr = props.format,
34
- inline = props.inline,
35
34
  isoWeek = props.isoWeek,
36
35
  limitEndYear = props.limitEndYear,
37
36
  overrideLocale = props.locale,
@@ -60,7 +59,7 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
60
59
  onSelect = props.onSelect,
61
60
  onToggleMonthDropdown = props.onToggleMonthDropdown,
62
61
  onToggleTimeDropdown = props.onToggleTimeDropdown,
63
- rest = _objectWithoutPropertiesLoose(props, ["as", "className", "classPrefix", "calendarDefaultDate", "cleanable", "defaultValue", "disabled", "format", "inline", "isoWeek", "limitEndYear", "locale", "menuClassName", "placement", "oneTap", "placeholder", "ranges", "value", "showMeridian", "showWeekNumbers", "style", "toggleAs", "disabledDate", "renderValue", "onChange", "onChangeCalendarDate", "onClean", "onClose", "onEntered", "onExited", "onNextMonth", "onOk", "onOpen", "onPrevMonth", "onSelect", "onToggleMonthDropdown", "onToggleTimeDropdown"]);
62
+ rest = _objectWithoutPropertiesLoose(props, ["as", "className", "classPrefix", "calendarDefaultDate", "cleanable", "defaultValue", "disabled", "format", "isoWeek", "limitEndYear", "locale", "menuClassName", "placement", "oneTap", "placeholder", "ranges", "value", "showMeridian", "showWeekNumbers", "style", "toggleAs", "disabledDate", "renderValue", "onChange", "onChangeCalendarDate", "onClean", "onClose", "onEntered", "onExited", "onNextMonth", "onOk", "onOpen", "onPrevMonth", "onSelect", "onToggleMonthDropdown", "onToggleTimeDropdown"]);
64
63
 
65
64
  var _useCustom = useCustom('DatePicker', overrideLocale),
66
65
  locale = _useCustom.locale,
@@ -69,8 +68,7 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
69
68
 
70
69
  var _useClassNames = useClassNames(classPrefix),
71
70
  merge = _useClassNames.merge,
72
- prefix = _useClassNames.prefix,
73
- withClassPrefix = _useClassNames.withClassPrefix;
71
+ prefix = _useClassNames.prefix;
74
72
 
75
73
  var _useControlled = useControlled(valueProp, defaultValue),
76
74
  value = _useControlled[0],
@@ -405,14 +403,6 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
405
403
  var caretComponent = useMemo(function () {
406
404
  return DateUtils.shouldOnlyTime(formatStr) ? IconClockO : IconCalendar;
407
405
  }, [formatStr]);
408
-
409
- if (inline) {
410
- return /*#__PURE__*/React.createElement(Component, {
411
- ref: rootRef,
412
- className: merge(className, withClassPrefix('date-inline'))
413
- }, calendar);
414
- }
415
-
416
406
  return /*#__PURE__*/React.createElement(PickerToggleTrigger, {
417
407
  trigger: "active",
418
408
  pickerProps: pick(props, pickTriggerPropKeys),
@@ -460,7 +450,6 @@ DatePicker.propTypes = _extends({}, pickerPropTypes, {
460
450
  hideHours: PropTypes.func,
461
451
  hideMinutes: PropTypes.func,
462
452
  hideSeconds: PropTypes.func,
463
- inline: PropTypes.bool,
464
453
  isoWeek: PropTypes.bool,
465
454
  limitEndYear: PropTypes.number,
466
455
  onChange: PropTypes.func,
@@ -13,7 +13,8 @@ export interface CalendarProps extends WithAsProps, Omit<CalendarCoreProps, Omit
13
13
  isoWeek?: boolean;
14
14
  limitEndYear?: number;
15
15
  locale?: DatePickerLocale;
16
- onChangeCalendarDate?: (index: number, nextPageDate: Date) => void;
16
+ onChangeCalendarDate?: (index: number, date: Date) => void;
17
+ onChangeCalendarTime?: (index: number, date: Date) => void;
17
18
  onMouseMove?: (date: Date) => void;
18
19
  onSelect?: (date: Date, event?: React.SyntheticEvent<any>) => void;
19
20
  showOneCalendar?: boolean;
@@ -19,9 +19,10 @@ var Calendar = /*#__PURE__*/React.forwardRef(function (props, ref) {
19
19
  index = props.index,
20
20
  limitEndYear = props.limitEndYear,
21
21
  onChangeCalendarDate = props.onChangeCalendarDate,
22
+ onChangeCalendarTime = props.onChangeCalendarTime,
22
23
  showOneCalendar = props.showOneCalendar,
23
24
  value = props.value,
24
- rest = _objectWithoutPropertiesLoose(props, ["as", "calendarDate", "disabledDate", "index", "limitEndYear", "onChangeCalendarDate", "showOneCalendar", "value"]);
25
+ rest = _objectWithoutPropertiesLoose(props, ["as", "calendarDate", "disabledDate", "index", "limitEndYear", "onChangeCalendarDate", "onChangeCalendarTime", "showOneCalendar", "value"]);
25
26
 
26
27
  var _useState = useState(),
27
28
  calendarState = _useState[0],
@@ -38,8 +39,8 @@ var Calendar = /*#__PURE__*/React.forwardRef(function (props, ref) {
38
39
  setCalendarState(undefined);
39
40
  }, [index, onChangeCalendarDate]);
40
41
  var handleChangePageTime = useCallback(function (nextPageDate) {
41
- onChangeCalendarDate(index, nextPageDate);
42
- }, [index, onChangeCalendarDate]);
42
+ onChangeCalendarTime(index, nextPageDate);
43
+ }, [index, onChangeCalendarTime]);
43
44
  var toggleMonthDropdown = useCallback(function () {
44
45
  setCalendarState(calendarState === CalendarState.DROP_MONTH ? undefined : CalendarState.DROP_MONTH);
45
46
  }, [calendarState]);
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { PickerComponent } from '../Picker';
3
2
  import { FormControlBaseProps, PickerBaseProps } from '../@types/common';
3
+ import { PickerComponent } from '../Picker';
4
4
  import { DisabledDateFunction, RangeType, ValueType } from './types';
5
5
  export interface DateRangePickerProps extends PickerBaseProps, FormControlBaseProps<ValueType> {
6
6
  /** Configure shortcut options */