@nutui/nutui-react 2.3.12-beta.0 → 2.3.12

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 (184) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/esm/ActionSheet.js +30 -76
  3. package/dist/esm/Address.js +80 -171
  4. package/dist/esm/Animate.js +21 -49
  5. package/dist/esm/AnimatingNumbers.js +47 -120
  6. package/dist/esm/Audio.js +88 -159
  7. package/dist/esm/Avatar.js +44 -91
  8. package/dist/esm/AvatarCropper.js +149 -268
  9. package/dist/esm/AvatarGroup.js +13 -44
  10. package/dist/esm/BackTop.js +34 -75
  11. package/dist/esm/Barrage.js +49 -83
  12. package/dist/esm/Calendar.js +27 -119
  13. package/dist/esm/CalendarCard.js +180 -291
  14. package/dist/esm/CalendarItem.js +253 -314
  15. package/dist/esm/Card.js +38 -72
  16. package/dist/esm/Cell.js +27 -62
  17. package/dist/esm/CellGroup.js +16 -45
  18. package/dist/esm/CheckboxGroup.js +49 -85
  19. package/dist/esm/CircleProgress.js +42 -93
  20. package/dist/esm/Col.js +17 -48
  21. package/dist/esm/Collapse.js +18 -49
  22. package/dist/esm/ConfigProvider.js +3 -2
  23. package/dist/esm/CountDown.js +62 -101
  24. package/dist/esm/DatePicker.js +87 -127
  25. package/dist/esm/Dialog.js +116 -196
  26. package/dist/esm/Divider.js +16 -36
  27. package/dist/esm/Drag.js +32 -76
  28. package/dist/esm/Elevator.js +93 -133
  29. package/dist/esm/Ellipsis.js +71 -92
  30. package/dist/esm/Empty.js +31 -70
  31. package/dist/esm/FixedNav.js +32 -81
  32. package/dist/esm/Form.js +28 -61
  33. package/dist/esm/Grid.js +27 -51
  34. package/dist/esm/Image.js +47 -102
  35. package/dist/esm/ImagePreview.js +82 -135
  36. package/dist/esm/InfiniteLoading.js +77 -159
  37. package/dist/esm/Input.js +57 -125
  38. package/dist/esm/InputNumber.js +66 -96
  39. package/dist/esm/Layout.js +4 -28
  40. package/dist/esm/Loading.js +13 -40
  41. package/dist/esm/Menu.js +51 -105
  42. package/dist/esm/NavBar.js +46 -85
  43. package/dist/esm/NoticeBar.js +153 -226
  44. package/dist/esm/Notify.js +87 -178
  45. package/dist/esm/NumberKeyboard.js +84 -150
  46. package/dist/esm/Pagination.js +58 -97
  47. package/dist/esm/Picker.js +215 -276
  48. package/dist/esm/Popover.js +111 -159
  49. package/dist/esm/Price.js +23 -60
  50. package/dist/esm/Progress.js +47 -77
  51. package/dist/esm/PullToRefresh.js +94 -201
  52. package/dist/esm/RadioGroup.js +23 -53
  53. package/dist/esm/Range.js +113 -177
  54. package/dist/esm/Rate.js +48 -95
  55. package/dist/esm/Row.js +19 -43
  56. package/dist/esm/SearchBar.js +52 -119
  57. package/dist/esm/ShortPassword.js +58 -106
  58. package/dist/esm/SideNavBar.js +34 -59
  59. package/dist/esm/SideNavBarItem.js +7 -36
  60. package/dist/esm/Signature.js +49 -84
  61. package/dist/esm/Skeleton.js +31 -68
  62. package/dist/esm/Space.js +7 -34
  63. package/dist/esm/Step.js +35 -64
  64. package/dist/esm/Steps.js +16 -40
  65. package/dist/esm/Sticky.js +64 -108
  66. package/dist/esm/SubSideNavBar.js +42 -71
  67. package/dist/esm/Swipe.js +79 -143
  68. package/dist/esm/Swiper.js +136 -183
  69. package/dist/esm/SwiperItem.js +13 -38
  70. package/dist/esm/Switch.js +20 -53
  71. package/dist/esm/TabPane.js +6 -30
  72. package/dist/esm/Tabbar.js +29 -59
  73. package/dist/esm/Table.js +92 -141
  74. package/dist/esm/Tag.js +30 -74
  75. package/dist/esm/TextArea.js +37 -82
  76. package/dist/esm/TimeDetail.js +20 -58
  77. package/dist/esm/TimeSelect.js +57 -95
  78. package/dist/esm/Toast.js +110 -197
  79. package/dist/esm/Tour.js +88 -132
  80. package/dist/esm/TrendArrow.js +32 -74
  81. package/dist/esm/Uploader.js +226 -346
  82. package/dist/esm/UserContext.js +1 -1
  83. package/dist/esm/Video.js +34 -67
  84. package/dist/esm/VirtualList.js +127 -160
  85. package/dist/esm/WaterMark.js +24 -68
  86. package/dist/esm/badge2.js +23 -53
  87. package/dist/esm/button2.js +30 -63
  88. package/dist/esm/can-use-dom.js +1 -1
  89. package/dist/esm/cascader2.js +307 -536
  90. package/dist/esm/checkbox2.js +59 -96
  91. package/dist/esm/collapseitem2.js +48 -86
  92. package/dist/esm/configprovider2.js +43 -1003
  93. package/dist/esm/context.js +1 -1
  94. package/dist/esm/context2.js +1 -1
  95. package/dist/esm/context3.js +1 -1
  96. package/dist/esm/context4.js +1 -1
  97. package/dist/esm/context5.js +8 -8
  98. package/dist/esm/date.js +88 -66
  99. package/dist/esm/formitem2.js +236 -1510
  100. package/dist/esm/get-scroll-parent.js +8 -10
  101. package/dist/esm/griditem2.js +34 -52
  102. package/dist/esm/index.js +5 -12
  103. package/dist/esm/indicator2.js +13 -42
  104. package/dist/esm/menuitem2.js +81 -124
  105. package/dist/esm/overlay2.js +39 -78
  106. package/dist/esm/pad-zero.js +3 -4
  107. package/dist/esm/popup2.js +79 -124
  108. package/dist/esm/px-check.js +2 -2
  109. package/dist/esm/radio2.js +48 -79
  110. package/dist/esm/raf.js +5 -3
  111. package/dist/esm/render.js +17 -54
  112. package/dist/esm/safearea2.js +3 -5
  113. package/dist/esm/supports-passive.js +3 -3
  114. package/dist/esm/tabbaritem2.js +42 -58
  115. package/dist/esm/tabs2.js +82 -120
  116. package/dist/esm/tslib.es6.js +47 -0
  117. package/dist/esm/types/src/packages/button/demos/h5/demo1.d.ts +3 -0
  118. package/dist/esm/types/src/packages/button/demos/h5/demo2.d.ts +3 -0
  119. package/dist/esm/types/src/packages/button/demos/h5/demo3.d.ts +3 -0
  120. package/dist/esm/types/src/packages/button/demos/h5/demo4.d.ts +3 -0
  121. package/dist/esm/types/src/packages/button/demos/h5/demo5.d.ts +3 -0
  122. package/dist/esm/types/src/packages/button/demos/h5/demo6.d.ts +3 -0
  123. package/dist/esm/types/src/packages/button/demos/h5/demo7.d.ts +3 -0
  124. package/dist/esm/types/src/packages/button/demos/h5/demo8.d.ts +3 -0
  125. package/dist/esm/types/src/packages/button/demos/h5/demo9.d.ts +3 -0
  126. package/dist/esm/types/src/packages/button/demos/taro/demo1.d.ts +3 -0
  127. package/dist/esm/types/src/packages/button/demos/taro/demo10.d.ts +3 -0
  128. package/dist/esm/types/src/packages/button/demos/taro/demo2.d.ts +3 -0
  129. package/dist/esm/types/src/packages/button/demos/taro/demo3.d.ts +3 -0
  130. package/dist/esm/types/src/packages/button/demos/taro/demo4.d.ts +3 -0
  131. package/dist/esm/types/src/packages/button/demos/taro/demo5.d.ts +3 -0
  132. package/dist/esm/types/src/packages/button/demos/taro/demo6.d.ts +3 -0
  133. package/dist/esm/types/src/packages/button/demos/taro/demo7.d.ts +3 -0
  134. package/dist/esm/types/src/packages/button/demos/taro/demo8.d.ts +3 -0
  135. package/dist/esm/types/src/packages/button/demos/taro/demo9.d.ts +3 -0
  136. package/dist/esm/types/src/packages/configprovider/configprovider.d.ts +1 -0
  137. package/dist/esm/types/src/packages/configprovider/configprovider.taro.d.ts +1 -0
  138. package/dist/esm/types/src/packages/configprovider/index.d.ts +2 -2
  139. package/dist/esm/types/src/packages/configprovider/index.taro.d.ts +2 -2
  140. package/dist/esm/types/src/packages/inputnumber/inputnumber.taro.d.ts +2 -0
  141. package/dist/esm/typings.js +1 -1
  142. package/dist/esm/use-click-away.js +9 -13
  143. package/dist/esm/use-client-rect.js +4 -4
  144. package/dist/esm/use-props-value.js +10 -15
  145. package/dist/esm/use-refs.js +5 -7
  146. package/dist/esm/use-touch.js +16 -20
  147. package/dist/locales/base.js +1 -1
  148. package/dist/locales/en-US.js +1 -1
  149. package/dist/locales/id-ID.js +1 -1
  150. package/dist/locales/tr-TR.js +1 -1
  151. package/dist/locales/zh-CN.js +1 -1
  152. package/dist/locales/zh-TW.js +1 -1
  153. package/dist/locales/zh-UG.js +1 -1
  154. package/dist/nutui.react.es.js +242 -284
  155. package/dist/nutui.react.umd.js +239 -281
  156. package/dist/style.mjs +1 -1
  157. package/dist/styles/variables-jmapp.scss +4 -0
  158. package/dist/types/packages/button/demos/h5/demo1.d.ts +3 -0
  159. package/dist/types/packages/button/demos/h5/demo2.d.ts +3 -0
  160. package/dist/types/packages/button/demos/h5/demo3.d.ts +3 -0
  161. package/dist/types/packages/button/demos/h5/demo4.d.ts +3 -0
  162. package/dist/types/packages/button/demos/h5/demo5.d.ts +3 -0
  163. package/dist/types/packages/button/demos/h5/demo6.d.ts +3 -0
  164. package/dist/types/packages/button/demos/h5/demo7.d.ts +3 -0
  165. package/dist/types/packages/button/demos/h5/demo8.d.ts +3 -0
  166. package/dist/types/packages/button/demos/h5/demo9.d.ts +3 -0
  167. package/dist/types/packages/button/demos/taro/demo1.d.ts +3 -0
  168. package/dist/types/packages/button/demos/taro/demo10.d.ts +3 -0
  169. package/dist/types/packages/button/demos/taro/demo2.d.ts +3 -0
  170. package/dist/types/packages/button/demos/taro/demo3.d.ts +3 -0
  171. package/dist/types/packages/button/demos/taro/demo4.d.ts +3 -0
  172. package/dist/types/packages/button/demos/taro/demo5.d.ts +3 -0
  173. package/dist/types/packages/button/demos/taro/demo6.d.ts +3 -0
  174. package/dist/types/packages/button/demos/taro/demo7.d.ts +3 -0
  175. package/dist/types/packages/button/demos/taro/demo8.d.ts +3 -0
  176. package/dist/types/packages/button/demos/taro/demo9.d.ts +3 -0
  177. package/dist/types/packages/configprovider/configprovider.d.ts +1 -0
  178. package/dist/types/packages/configprovider/configprovider.taro.d.ts +1 -0
  179. package/dist/types/packages/configprovider/index.d.ts +2 -2
  180. package/dist/types/packages/configprovider/index.taro.d.ts +2 -2
  181. package/dist/types/packages/empty/empty.d.ts +15 -3
  182. package/dist/types/packages/inputnumber/inputnumber.taro.d.ts +2 -0
  183. package/dist/types/packages/rate/rate.d.ts +1 -1
  184. package/package.json +5 -1
@@ -1,67 +1,34 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
- var _excluded = ["checked", "defaultChecked", "disabled", "activeText", "inactiveText", "className", "style", "onChange"];
5
- function ownKeys(e, r) {
6
- var t = Object.keys(e);
7
- if (Object.getOwnPropertySymbols) {
8
- var o = Object.getOwnPropertySymbols(e);
9
- r && (o = o.filter(function(r2) {
10
- return Object.getOwnPropertyDescriptor(e, r2).enumerable;
11
- })), t.push.apply(t, o);
12
- }
13
- return t;
14
- }
15
- function _objectSpread(e) {
16
- for (var r = 1; r < arguments.length; r++) {
17
- var t = null != arguments[r] ? arguments[r] : {};
18
- r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
19
- _defineProperty(e, r2, t[r2]);
20
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
21
- Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
22
- });
23
- }
24
- return e;
25
- }
1
+ import { _ as __rest } from "./tslib.es6.js";
26
2
  import React__default from "react";
27
3
  import { C as ComponentDefaults } from "./typings.js";
28
4
  import { u as usePropsValue } from "./use-props-value.js";
29
- var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
30
- disabled: false,
31
- activeText: "",
32
- inactiveText: ""
33
- });
34
- var Switch = function Switch2(props) {
35
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props), checked = _defaultProps$props.checked, defaultChecked = _defaultProps$props.defaultChecked, disabled = _defaultProps$props.disabled, activeText = _defaultProps$props.activeText, inactiveText = _defaultProps$props.inactiveText, className = _defaultProps$props.className, style = _defaultProps$props.style, onChange = _defaultProps$props.onChange, rest = _objectWithoutProperties(_defaultProps$props, _excluded);
36
- var classPrefix = "nut-switch";
37
- var _usePropsValue = usePropsValue({
5
+ const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { disabled: false, activeText: "", inactiveText: "" });
6
+ const Switch = (props) => {
7
+ const _a = Object.assign(Object.assign({}, defaultProps), props), { checked, defaultChecked, disabled, activeText, inactiveText, className, style, onChange } = _a, rest = __rest(_a, ["checked", "defaultChecked", "disabled", "activeText", "inactiveText", "className", "style", "onChange"]);
8
+ const classPrefix = "nut-switch";
9
+ const [value, setValue] = usePropsValue({
38
10
  value: checked,
39
11
  defaultValue: defaultChecked
40
- }), _usePropsValue2 = _slicedToArray(_usePropsValue, 2), value = _usePropsValue2[0], setValue = _usePropsValue2[1];
41
- var classes = function classes2() {
42
- return "".concat(classPrefix, " ").concat(value ? "nut-switch-open" : "nut-switch-close", " ").concat(disabled ? "".concat(classPrefix, "-disabled") : "", " ", "".concat(classPrefix, "-base"), " ").concat(className);
12
+ });
13
+ const classes = () => {
14
+ return `${classPrefix} ${value ? "nut-switch-open" : "nut-switch-close"} ${disabled ? `${classPrefix}-disabled` : ""} ${`${classPrefix}-base`} ${className}`;
43
15
  };
44
- var _onClick = function onClick(event) {
16
+ const onClick = (event) => {
45
17
  if (disabled)
46
18
  return;
47
19
  onChange && onChange(!value, event);
48
20
  setValue(!value);
49
21
  };
50
- return React__default.createElement("div", _objectSpread({
51
- className: classes(),
52
- onClick: function onClick(e) {
53
- return _onClick(e);
54
- },
55
- style
56
- }, rest), React__default.createElement("div", {
57
- className: "".concat(classPrefix, "-button")
58
- }, !value && React__default.createElement("div", {
59
- className: "".concat(classPrefix, "-close-line")
60
- }), activeText && React__default.createElement(React__default.Fragment, null, value ? React__default.createElement("div", {
61
- className: "".concat(classPrefix, "-label open")
62
- }, activeText) : React__default.createElement("div", {
63
- className: "".concat(classPrefix, "-label close")
64
- }, inactiveText))));
22
+ return React__default.createElement(
23
+ "div",
24
+ Object.assign({ className: classes(), onClick: (e) => onClick(e), style }, rest),
25
+ React__default.createElement(
26
+ "div",
27
+ { className: `${classPrefix}-button` },
28
+ !value && React__default.createElement("div", { className: `${classPrefix}-close-line` }),
29
+ activeText && React__default.createElement(React__default.Fragment, null, value ? React__default.createElement("div", { className: `${classPrefix}-label open` }, activeText) : React__default.createElement("div", { className: `${classPrefix}-label close` }, inactiveText))
30
+ )
31
+ );
65
32
  };
66
33
  Switch.defaultProps = defaultProps;
67
34
  Switch.displayName = "NutSwitch";
@@ -1,41 +1,17 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) {
3
- var t = Object.keys(e);
4
- if (Object.getOwnPropertySymbols) {
5
- var o = Object.getOwnPropertySymbols(e);
6
- r && (o = o.filter(function(r2) {
7
- return Object.getOwnPropertyDescriptor(e, r2).enumerable;
8
- })), t.push.apply(t, o);
9
- }
10
- return t;
11
- }
12
- function _objectSpread(e) {
13
- for (var r = 1; r < arguments.length; r++) {
14
- var t = null != arguments[r] ? arguments[r] : {};
15
- r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
16
- _defineProperty(e, r2, t[r2]);
17
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
18
- Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
19
- });
20
- }
21
- return e;
22
- }
23
1
  import React__default from "react";
24
2
  import classNames from "classnames";
25
- var defaultProps = {
3
+ const defaultProps = {
26
4
  title: "",
27
5
  value: "",
28
6
  disabled: false
29
7
  };
30
- var TabPane = function TabPane2(props) {
31
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props), children = _defaultProps$props.children, autoHeightClassName = _defaultProps$props.autoHeightClassName, className = _defaultProps$props.className, disabled = _defaultProps$props.disabled;
32
- var classPrefix = "nut-tabpane";
33
- var classes = classNames(classPrefix, {
8
+ const TabPane = (props) => {
9
+ const { children, autoHeightClassName, className, disabled } = Object.assign(Object.assign({}, defaultProps), props);
10
+ const classPrefix = "nut-tabpane";
11
+ const classes = classNames(classPrefix, {
34
12
  active: !disabled && props.active
35
13
  }, autoHeightClassName, className);
36
- return children ? React__default.createElement("div", {
37
- className: classes
38
- }, !disabled && children) : null;
14
+ return children ? React__default.createElement("div", { className: classes }, !disabled && children) : null;
39
15
  };
40
16
  export {
41
17
  TabPane as default
@@ -1,70 +1,40 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- function ownKeys(e, r) {
4
- var t = Object.keys(e);
5
- if (Object.getOwnPropertySymbols) {
6
- var o = Object.getOwnPropertySymbols(e);
7
- r && (o = o.filter(function(r2) {
8
- return Object.getOwnPropertyDescriptor(e, r2).enumerable;
9
- })), t.push.apply(t, o);
10
- }
11
- return t;
12
- }
13
- function _objectSpread(e) {
14
- for (var r = 1; r < arguments.length; r++) {
15
- var t = null != arguments[r] ? arguments[r] : {};
16
- r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
17
- _defineProperty(e, r2, t[r2]);
18
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
19
- Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
20
- });
21
- }
22
- return e;
23
- }
24
1
  import React__default from "react";
25
2
  import classNames from "classnames";
26
3
  import { C as ComponentDefaults } from "./typings.js";
27
4
  import { u as usePropsValue } from "./use-props-value.js";
28
5
  import { a as TabbarContext, T as TabbarItem } from "./tabbaritem2.js";
29
- var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
30
- defaultValue: 0,
31
- fixed: false,
32
- inactiveColor: "",
33
- activeColor: "",
34
- safeArea: false,
35
- onSwitch: function onSwitch(value) {
36
- }
37
- });
38
- var Tabbar = function Tabbar2(props) {
39
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props), children = _defaultProps$props.children, defaultValue = _defaultProps$props.defaultValue, value = _defaultProps$props.value, fixed = _defaultProps$props.fixed, activeColor = _defaultProps$props.activeColor, inactiveColor = _defaultProps$props.inactiveColor, safeArea = _defaultProps$props.safeArea, className = _defaultProps$props.className, style = _defaultProps$props.style, onSwitch2 = _defaultProps$props.onSwitch;
40
- var classPrefix = "nut-tabbar";
41
- var _usePropsValue = usePropsValue({
6
+ const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { defaultValue: 0, fixed: false, inactiveColor: "", activeColor: "", safeArea: false, onSwitch: (value) => {
7
+ } });
8
+ const Tabbar = (props) => {
9
+ const { children, defaultValue, value, fixed, activeColor, inactiveColor, safeArea, className, style, onSwitch } = Object.assign(Object.assign({}, defaultProps), props);
10
+ const classPrefix = "nut-tabbar";
11
+ const [selectIndex, setSelectIndex] = usePropsValue({
42
12
  value,
43
13
  defaultValue,
44
14
  finalValue: 0,
45
- onChange: onSwitch2
46
- }), _usePropsValue2 = _slicedToArray(_usePropsValue, 2), selectIndex = _usePropsValue2[0], setSelectIndex = _usePropsValue2[1];
47
- return React__default.createElement("div", {
48
- className: classNames(classPrefix, _defineProperty({}, "".concat(classPrefix, "-fixed"), fixed), className),
49
- style
50
- }, React__default.createElement("div", {
51
- className: "".concat(classPrefix, "-wrap")
52
- }, React__default.createElement(TabbarContext.Provider, {
53
- value: {
54
- selectIndex,
55
- activeColor,
56
- inactiveColor,
57
- handleClick: setSelectIndex
58
- }
59
- }, React__default.Children.map(children, function(child, index) {
60
- if (!React__default.isValidElement(child))
61
- return null;
62
- return React__default.cloneElement(child, _objectSpread(_objectSpread({}, child.props), {}, {
63
- index
64
- }));
65
- }))), (fixed || safeArea) && React__default.createElement("div", {
66
- className: "".concat(classPrefix, "-safe-area")
67
- }));
15
+ onChange: onSwitch
16
+ });
17
+ return React__default.createElement(
18
+ "div",
19
+ { className: classNames(classPrefix, {
20
+ [`${classPrefix}-fixed`]: fixed
21
+ }, className), style },
22
+ React__default.createElement(
23
+ "div",
24
+ { className: `${classPrefix}-wrap` },
25
+ React__default.createElement(TabbarContext.Provider, { value: {
26
+ selectIndex,
27
+ activeColor,
28
+ inactiveColor,
29
+ handleClick: setSelectIndex
30
+ } }, React__default.Children.map(children, (child, index) => {
31
+ if (!React__default.isValidElement(child))
32
+ return null;
33
+ return React__default.cloneElement(child, Object.assign(Object.assign({}, child.props), { index }));
34
+ }))
35
+ ),
36
+ (fixed || safeArea) && React__default.createElement("div", { className: `${classPrefix}-safe-area` })
37
+ );
68
38
  };
69
39
  Tabbar.defaultProps = defaultProps;
70
40
  Tabbar.displayName = "NutTabbar";
package/dist/esm/Table.js CHANGED
@@ -1,29 +1,4 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
- var _excluded = ["children", "className", "style", "columns", "data", "bordered", "summary", "striped", "noData", "sorterIcon", "showHeader", "onSort"];
6
- function ownKeys(e, r) {
7
- var t = Object.keys(e);
8
- if (Object.getOwnPropertySymbols) {
9
- var o = Object.getOwnPropertySymbols(e);
10
- r && (o = o.filter(function(r2) {
11
- return Object.getOwnPropertyDescriptor(e, r2).enumerable;
12
- })), t.push.apply(t, o);
13
- }
14
- return t;
15
- }
16
- function _objectSpread(e) {
17
- for (var r = 1; r < arguments.length; r++) {
18
- var t = null != arguments[r] ? arguments[r] : {};
19
- r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
20
- _defineProperty(e, r2, t[r2]);
21
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
22
- Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
23
- });
24
- }
25
- return e;
26
- }
1
+ import { _ as __rest } from "./tslib.es6.js";
27
2
  import React__default, { useState, useEffect, useCallback, useRef } from "react";
28
3
  import classNames from "classnames";
29
4
  import { ArrowDown } from "@nutui/icons-react";
@@ -31,44 +6,38 @@ import { useConfig } from "./ConfigProvider.js";
31
6
  import { C as ComponentDefaults } from "./typings.js";
32
7
  import { u as usePropsValue } from "./use-props-value.js";
33
8
  function useTableSticky(columns) {
34
- var _useState = useState(false), _useState2 = _slicedToArray(_useState, 2), isSticky = _useState2[0], setIsSticky = _useState2[1];
35
- var _useState3 = useState({}), _useState4 = _slicedToArray(_useState3, 2), stickyColumnStyleMap = _useState4[0], setStickyColumnStyleMap = _useState4[1];
36
- var _useState5 = useState({}), _useState6 = _slicedToArray(_useState5, 2), stickyColumnClassMap = _useState6[0], setStickyColumnClassMap = _useState6[1];
37
- var _useState7 = useState(0), _useState8 = _slicedToArray(_useState7, 2), stickyLeftWidth = _useState8[0], setStickyLeftWidth = _useState8[1];
38
- var _useState9 = useState(0), _useState10 = _slicedToArray(_useState9, 2), stickyRightWidth = _useState10[0], setStickyRightWidth = _useState10[1];
39
- useEffect(function() {
40
- var leftColumns = columns.filter(function(item) {
41
- return item.fixed === "left";
42
- }) || [];
43
- var rightColumns = columns.filter(function(item) {
44
- return item.fixed === "right";
45
- }) || [];
46
- var middleColumns = columns.filter(function(item) {
47
- return !item.fixed;
48
- }) || [];
49
- var _columnStyleMap = {};
50
- var _columnClassMap = {};
51
- var _stickyLeftWidth = 0;
52
- var _stickyRightWidth = 0;
53
- leftColumns.forEach(function(curr2, index) {
9
+ const [isSticky, setIsSticky] = useState(false);
10
+ const [stickyColumnStyleMap, setStickyColumnStyleMap] = useState({});
11
+ const [stickyColumnClassMap, setStickyColumnClassMap] = useState({});
12
+ const [stickyLeftWidth, setStickyLeftWidth] = useState(0);
13
+ const [stickyRightWidth, setStickyRightWidth] = useState(0);
14
+ useEffect(() => {
15
+ const leftColumns = columns.filter((item) => item.fixed === "left") || [];
16
+ const rightColumns = columns.filter((item) => item.fixed === "right") || [];
17
+ const middleColumns = columns.filter((item) => !item.fixed) || [];
18
+ const _columnStyleMap = {};
19
+ const _columnClassMap = {};
20
+ let _stickyLeftWidth = 0;
21
+ let _stickyRightWidth = 0;
22
+ leftColumns.forEach((curr, index) => {
54
23
  leftColumns[index - 1] || {};
55
- _columnStyleMap[curr2.key] = {
24
+ _columnStyleMap[curr.key] = {
56
25
  left: _stickyLeftWidth || 0,
57
- width: curr2.width || "auto"
26
+ width: curr.width || "auto"
58
27
  };
59
- _columnClassMap[curr2.key] = {
28
+ _columnClassMap[curr.key] = {
60
29
  "nut-table-fixed-left": true,
61
30
  "nut-table-fixed-left-last": index === leftColumns.length - 1
62
31
  };
63
- _stickyLeftWidth += curr2.width || 0;
32
+ _stickyLeftWidth += curr.width || 0;
64
33
  });
65
- middleColumns.forEach(function(curr2) {
66
- _columnStyleMap[curr2.key] = {
67
- width: curr2.width || "auto"
34
+ middleColumns.forEach((curr) => {
35
+ _columnStyleMap[curr.key] = {
36
+ width: curr.width || "auto"
68
37
  };
69
38
  });
70
- for (var i = rightColumns.length - 1; i >= 0; i--) {
71
- var curr = rightColumns[i];
39
+ for (let i = rightColumns.length - 1; i >= 0; i--) {
40
+ const curr = rightColumns[i];
72
41
  rightColumns[i + 1] || {};
73
42
  _columnStyleMap[curr.key] = {
74
43
  right: _stickyRightWidth || 0,
@@ -86,10 +55,10 @@ function useTableSticky(columns) {
86
55
  setStickyLeftWidth(_stickyLeftWidth);
87
56
  setStickyRightWidth(_stickyRightWidth);
88
57
  }, [columns]);
89
- var getStickyStyle = useCallback(function(key) {
58
+ const getStickyStyle = useCallback((key) => {
90
59
  return stickyColumnStyleMap[key];
91
60
  }, [stickyColumnStyleMap]);
92
- var getStickyClass = useCallback(function(key) {
61
+ const getStickyClass = useCallback((key) => {
93
62
  return stickyColumnClassMap[key];
94
63
  }, [stickyColumnClassMap]);
95
64
  return {
@@ -100,35 +69,27 @@ function useTableSticky(columns) {
100
69
  getStickyStyle
101
70
  };
102
71
  }
103
- var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
104
- columns: [],
105
- data: [],
106
- bordered: true,
107
- striped: false,
108
- noData: "",
109
- sorterIcon: null,
110
- showHeader: true
111
- });
112
- var Table = function Table2(props) {
113
- var _useConfig = useConfig(), locale = _useConfig.locale;
72
+ const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { columns: [], data: [], bordered: true, striped: false, noData: "", sorterIcon: null, showHeader: true });
73
+ const Table = (props) => {
74
+ const { locale } = useConfig();
114
75
  defaultProps.noData = locale.noData;
115
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props), children = _defaultProps$props.children, className = _defaultProps$props.className, style = _defaultProps$props.style, columns = _defaultProps$props.columns, data = _defaultProps$props.data, bordered = _defaultProps$props.bordered, summary = _defaultProps$props.summary, striped = _defaultProps$props.striped, noData = _defaultProps$props.noData, sorterIcon = _defaultProps$props.sorterIcon, showHeader = _defaultProps$props.showHeader, onSort = _defaultProps$props.onSort, rest = _objectWithoutProperties(_defaultProps$props, _excluded);
116
- var sortedMapping = useRef({});
117
- var _usePropsValue = usePropsValue({
76
+ const _a = Object.assign(Object.assign({}, defaultProps), props), { children, className, style, columns, data, bordered, summary, striped, noData, sorterIcon, showHeader, onSort } = _a, rest = __rest(_a, ["children", "className", "style", "columns", "data", "bordered", "summary", "striped", "noData", "sorterIcon", "showHeader", "onSort"]);
77
+ const sortedMapping = useRef({});
78
+ const [innerValue, setValue] = usePropsValue({
118
79
  defaultValue: data,
119
80
  finalValue: []
120
- }), _usePropsValue2 = _slicedToArray(_usePropsValue, 2), innerValue = _usePropsValue2[0], setValue = _usePropsValue2[1];
121
- var _useTableSticky = useTableSticky(columns), isSticky = _useTableSticky.isSticky, stickyLeftWidth = _useTableSticky.stickyLeftWidth, stickyRightWidth = _useTableSticky.stickyRightWidth, getStickyClass = _useTableSticky.getStickyClass, getStickyStyle = _useTableSticky.getStickyStyle;
122
- useEffect(function() {
81
+ });
82
+ const { isSticky, stickyLeftWidth, stickyRightWidth, getStickyClass, getStickyStyle } = useTableSticky(columns);
83
+ useEffect(() => {
123
84
  setValue(data);
124
85
  }, [data]);
125
- var classPrefix = "nut-table";
126
- var headerClassPrefix = "".concat(classPrefix, "-main-head-tr");
127
- var bodyClassPrefix = "".concat(classPrefix, "-main-body-tr");
128
- var cls = classNames(classPrefix, className);
129
- var handleSorterClick = function handleSorterClick2(item) {
86
+ const classPrefix = "nut-table";
87
+ const headerClassPrefix = `${classPrefix}-main-head-tr`;
88
+ const bodyClassPrefix = `${classPrefix}-main-body-tr`;
89
+ const cls = classNames(classPrefix, className);
90
+ const handleSorterClick = (item) => {
130
91
  if (item.sorter && !sortedMapping.current[item.key]) {
131
- var copied = _toConsumableArray(innerValue);
92
+ const copied = [...innerValue];
132
93
  if (typeof item.sorter === "function") {
133
94
  copied.sort(item.sorter);
134
95
  } else if (item.sorter === "default") {
@@ -142,78 +103,68 @@ var Table = function Table2(props) {
142
103
  setValue(data);
143
104
  }
144
105
  };
145
- var cellClasses = function cellClasses2(item) {
146
- return _defineProperty(_defineProperty({}, "".concat(headerClassPrefix, "-border"), props.bordered), "".concat(headerClassPrefix, "-align").concat(item.align ? item.align : ""), true);
106
+ const cellClasses = (item) => {
107
+ return {
108
+ [`${headerClassPrefix}-border`]: props.bordered,
109
+ [`${headerClassPrefix}-align${item.align ? item.align : ""}`]: true
110
+ };
147
111
  };
148
- var getColumnItem = function getColumnItem2(value) {
149
- return columns.filter(function(item) {
150
- return item.key === value;
151
- })[0];
112
+ const getColumnItem = (value) => {
113
+ return columns.filter((item) => item.key === value)[0];
152
114
  };
153
- var renderHeadCells = function renderHeadCells2() {
154
- return columns.map(function(item, index) {
155
- return React__default.createElement("div", {
156
- className: classNames("".concat(headerClassPrefix, "-th"), cellClasses(item), getStickyClass(item.key)),
157
- key: item.key,
158
- onClick: function onClick() {
159
- return handleSorterClick(item);
160
- },
161
- style: getStickyStyle(item.key)
162
- }, item.title, " ", item.sorter && (sorterIcon || React__default.createElement(ArrowDown, {
163
- width: "12px",
164
- height: "12px"
165
- })));
115
+ const renderHeadCells = () => {
116
+ return columns.map((item, index) => {
117
+ return React__default.createElement(
118
+ "div",
119
+ { className: classNames(`${headerClassPrefix}-th`, cellClasses(item), getStickyClass(item.key)), key: item.key, onClick: () => handleSorterClick(item), style: getStickyStyle(item.key) },
120
+ item.title,
121
+ " ",
122
+ item.sorter && (sorterIcon || React__default.createElement(ArrowDown, { width: "12px", height: "12px" }))
123
+ );
166
124
  });
167
125
  };
168
- var sortDataItem = function sortDataItem2() {
169
- return columns.map(function(columns2) {
126
+ const sortDataItem = () => {
127
+ return columns.map((columns2) => {
170
128
  return [columns2.key, columns2.render];
171
129
  });
172
130
  };
173
- var renderBodyTds = function renderBodyTds2(item, rowIndex) {
174
- return sortDataItem().map(function(_ref2) {
175
- var _ref3 = _slicedToArray(_ref2, 2), value = _ref3[0], render = _ref3[1];
176
- return React__default.createElement("div", {
177
- className: classNames("".concat(bodyClassPrefix, "-td"), cellClasses(getColumnItem(value)), getStickyClass(value)),
178
- key: value,
179
- style: getStickyStyle(value)
180
- }, typeof item[value] === "function" || typeof render === "function" ? React__default.createElement("div", null, render ? render(item, rowIndex) : item[value](item)) : item[value]);
131
+ const renderBodyTds = (item, rowIndex) => {
132
+ return sortDataItem().map(([value, render]) => {
133
+ return React__default.createElement("div", { className: classNames(`${bodyClassPrefix}-td`, cellClasses(getColumnItem(value)), getStickyClass(value)), key: value, style: getStickyStyle(value) }, typeof item[value] === "function" || typeof render === "function" ? React__default.createElement("div", null, render ? render(item, rowIndex) : item[value](item)) : item[value]);
181
134
  });
182
135
  };
183
- var renderBodyTrs = function renderBodyTrs2() {
184
- return innerValue.map(function(item, index) {
185
- return React__default.createElement("div", {
186
- className: bodyClassPrefix,
187
- key: index
188
- }, renderBodyTds(item, index));
136
+ const renderBodyTrs = () => {
137
+ return innerValue.map((item, index) => {
138
+ return React__default.createElement("div", { className: bodyClassPrefix, key: index }, renderBodyTds(item, index));
189
139
  });
190
140
  };
191
- return React__default.createElement("div", _objectSpread({
192
- className: cls
193
- }, rest), React__default.createElement("div", {
194
- className: classNames("".concat(classPrefix, "-wrapper ").concat(isSticky ? "".concat(classPrefix, "-wrapper-sticky") : "")),
195
- style
196
- }, React__default.createElement("div", {
197
- className: classNames("".concat(classPrefix, "-main"), _defineProperty({}, "".concat(classPrefix, "-main-striped"), striped))
198
- }, showHeader && React__default.createElement("div", {
199
- className: "".concat(classPrefix, "-main-head")
200
- }, React__default.createElement("div", {
201
- className: headerClassPrefix
202
- }, renderHeadCells())), React__default.createElement("div", {
203
- className: "".concat(classPrefix, "-main-body")
204
- }, renderBodyTrs()))), isSticky ? React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
205
- className: "".concat(classPrefix, "-sticky-left"),
206
- style: {
207
- width: stickyLeftWidth
208
- }
209
- }), React__default.createElement("div", {
210
- className: "".concat(classPrefix, "-sticky-right"),
211
- style: {
212
- width: stickyRightWidth
213
- }
214
- })) : null, (summary || innerValue.length === 0) && React__default.createElement("div", {
215
- className: "".concat(classPrefix, "-summary")
216
- }, summary || noData));
141
+ return React__default.createElement(
142
+ "div",
143
+ Object.assign({ className: cls }, rest),
144
+ React__default.createElement(
145
+ "div",
146
+ { className: classNames(`${classPrefix}-wrapper ${isSticky ? `${classPrefix}-wrapper-sticky` : ""}`), style },
147
+ React__default.createElement(
148
+ "div",
149
+ { className: classNames(`${classPrefix}-main`, {
150
+ [`${classPrefix}-main-striped`]: striped
151
+ }) },
152
+ showHeader && React__default.createElement(
153
+ "div",
154
+ { className: `${classPrefix}-main-head` },
155
+ React__default.createElement("div", { className: headerClassPrefix }, renderHeadCells())
156
+ ),
157
+ React__default.createElement("div", { className: `${classPrefix}-main-body` }, renderBodyTrs())
158
+ )
159
+ ),
160
+ isSticky ? React__default.createElement(
161
+ React__default.Fragment,
162
+ null,
163
+ React__default.createElement("div", { className: `${classPrefix}-sticky-left`, style: { width: stickyLeftWidth } }),
164
+ React__default.createElement("div", { className: `${classPrefix}-sticky-right`, style: { width: stickyRightWidth } })
165
+ ) : null,
166
+ (summary || innerValue.length === 0) && React__default.createElement("div", { className: `${classPrefix}-summary` }, summary || noData)
167
+ );
217
168
  };
218
169
  Table.defaultProps = defaultProps;
219
170
  Table.displayName = "NutTable";