@nutui/nutui-react 1.5.1 → 2.0.0-alpha.1

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 (240) hide show
  1. package/CHANGELOG.md +24 -664
  2. package/dist/esm/ActionSheet.js +62 -54
  3. package/dist/esm/Address/style/index.js +0 -1
  4. package/dist/esm/Address.js +235 -330
  5. package/dist/esm/Animate.js +43 -32
  6. package/dist/esm/AnimatingNumbers.js +88 -49
  7. package/dist/esm/Audio/style/index.js +0 -1
  8. package/dist/esm/Audio.js +108 -121
  9. package/dist/esm/Avatar.js +65 -78
  10. package/dist/esm/AvatarContext.js +5 -0
  11. package/dist/esm/AvatarGroup.js +46 -27
  12. package/dist/esm/BackTop/style/index.js +1 -1
  13. package/dist/esm/BackTop.js +74 -76
  14. package/dist/esm/Badge.js +57 -54
  15. package/dist/esm/Barrage.js +45 -32
  16. package/dist/esm/Button/style/index.js +1 -1
  17. package/dist/esm/Button.js +66 -87
  18. package/dist/esm/Calendar.js +80 -79
  19. package/dist/esm/CalendarItem.js +199 -231
  20. package/dist/esm/Card.js +44 -37
  21. package/dist/esm/Cascader.js +431 -434
  22. package/dist/esm/Cell/style/index.js +1 -1
  23. package/dist/esm/Cell.js +57 -87
  24. package/dist/esm/CellGroup.js +7 -5
  25. package/dist/esm/Checkbox/style/index.js +0 -1
  26. package/dist/esm/Checkbox.js +11 -8
  27. package/dist/esm/CheckboxGroup.js +78 -71
  28. package/dist/esm/CircleProgress.js +50 -40
  29. package/dist/esm/Col.js +49 -43
  30. package/dist/esm/Collapse.js +44 -44
  31. package/dist/esm/CollapseItem/style/index.js +1 -1
  32. package/dist/esm/CollapseItem.js +64 -104
  33. package/dist/esm/ConfigProvider.js +400 -101
  34. package/dist/esm/CountDown.js +90 -95
  35. package/dist/esm/DatePicker.js +104 -123
  36. package/dist/esm/Dialog.js +98 -104
  37. package/dist/esm/Divider.js +36 -27
  38. package/dist/esm/Drag.js +55 -59
  39. package/dist/esm/Elevator.js +77 -88
  40. package/dist/esm/Ellipsis.js +80 -79
  41. package/dist/esm/Empty.js +50 -44
  42. package/dist/esm/FixedNav/style/index.js +0 -1
  43. package/dist/esm/FixedNav.js +57 -65
  44. package/dist/esm/Form.js +1154 -123
  45. package/dist/esm/FormItem.js +7 -5
  46. package/dist/esm/Grid/style/index.js +1 -1
  47. package/dist/esm/Grid.js +51 -55
  48. package/dist/esm/GridItem.js +7 -124
  49. package/dist/esm/Icon.js +83 -5
  50. package/dist/esm/Image.js +123 -122
  51. package/dist/esm/ImagePreview.js +76 -94
  52. package/dist/esm/Indicator.js +41 -36
  53. package/dist/esm/Infiniteloading/style/index.js +1 -1
  54. package/dist/esm/Infiniteloading.js +77 -93
  55. package/dist/esm/Input/style/index.js +1 -1
  56. package/dist/esm/Input.js +120 -172
  57. package/dist/esm/InputNumber/style/index.js +1 -1
  58. package/dist/esm/InputNumber.js +133 -167
  59. package/dist/esm/Layout.js +27 -6
  60. package/dist/esm/Menu.js +84 -86
  61. package/dist/esm/MenuItem/style/index.js +0 -1
  62. package/dist/esm/MenuItem.js +76 -86
  63. package/dist/esm/NavBar/style/index.js +1 -1
  64. package/dist/esm/NavBar.js +59 -63
  65. package/dist/esm/NoticeBar/style/index.js +1 -1
  66. package/dist/esm/NoticeBar.js +173 -290
  67. package/dist/esm/Notify.js +112 -78
  68. package/dist/esm/NumberKeyboard.js +110 -109
  69. package/dist/esm/Overlay.js +7 -6
  70. package/dist/esm/Pagination.js +94 -135
  71. package/dist/esm/Picker.js +149 -201
  72. package/dist/esm/Popover/style/index.js +0 -1
  73. package/dist/esm/Popover.js +121 -116
  74. package/dist/esm/Popup/style/index.js +0 -1
  75. package/dist/esm/Popup.js +114 -131
  76. package/dist/esm/Price.js +51 -39
  77. package/dist/esm/Progress/style/index.js +1 -1
  78. package/dist/esm/Progress.js +59 -64
  79. package/dist/esm/PullToRefresh.js +173 -149
  80. package/dist/esm/Radio/style/index.js +0 -1
  81. package/dist/esm/Radio.js +8 -6
  82. package/dist/esm/RadioGroup.js +64 -84
  83. package/dist/esm/Range.js +93 -122
  84. package/dist/esm/Rate/style/index.js +1 -1
  85. package/dist/esm/Rate.js +77 -95
  86. package/dist/esm/Row.js +49 -37
  87. package/dist/esm/SearchBar/style/index.js +1 -1
  88. package/dist/esm/SearchBar.js +110 -120
  89. package/dist/esm/ShortPassword/style/index.js +0 -1
  90. package/dist/esm/ShortPassword.js +120 -116
  91. package/dist/esm/SideNavBar.js +38 -28
  92. package/dist/esm/SideNavBarItem.js +31 -14
  93. package/dist/esm/Signature.js +65 -61
  94. package/dist/esm/Skeleton.js +48 -40
  95. package/dist/esm/Step/style/index.js +1 -1
  96. package/dist/esm/Step.js +49 -49
  97. package/dist/esm/Steps.js +37 -23
  98. package/dist/esm/Sticky.js +111 -120
  99. package/dist/esm/SubSideNavBar.js +50 -38
  100. package/dist/esm/Swipe.js +75 -63
  101. package/dist/esm/Swiper.js +171 -206
  102. package/dist/esm/SwiperItem.js +39 -22
  103. package/dist/esm/Switch.js +46 -37
  104. package/dist/esm/TabPane.js +8 -6
  105. package/dist/esm/Tabbar.js +47 -39
  106. package/dist/esm/TabbarItem/style/index.js +1 -1
  107. package/dist/esm/TabbarItem.js +50 -52
  108. package/dist/esm/Table/style/index.js +1 -1
  109. package/dist/esm/Table.js +70 -70
  110. package/dist/esm/Tabs/style/index.js +1 -2
  111. package/dist/esm/Tabs.js +11 -9
  112. package/dist/esm/Tag/style/index.js +1 -1
  113. package/dist/esm/Tag.js +69 -70
  114. package/dist/esm/TextArea.js +70 -64
  115. package/dist/esm/TimeDetail.js +47 -38
  116. package/dist/esm/TimePannel.js +35 -19
  117. package/dist/esm/TimeSelect.js +60 -68
  118. package/dist/esm/Toast/style/index.js +1 -1
  119. package/dist/esm/Toast.js +126 -98
  120. package/dist/esm/TrendArrow/style/index.js +1 -1
  121. package/dist/esm/TrendArrow.js +59 -55
  122. package/dist/esm/Uploader/style/index.js +0 -1
  123. package/dist/esm/Uploader.js +195 -246
  124. package/dist/esm/UserContext.js +5 -0
  125. package/dist/esm/UserContext2.js +5 -0
  126. package/dist/esm/UserContext3.js +5 -0
  127. package/dist/esm/Video.js +49 -39
  128. package/dist/esm/VirtualList.js +111 -146
  129. package/dist/esm/WaterMark.js +57 -60
  130. package/dist/esm/bem.js +10 -0
  131. package/dist/esm/cellgroup2.js +49 -0
  132. package/dist/esm/checkbox2.js +145 -0
  133. package/dist/esm/{date-c7aad4c0.js → date.js} +13 -11
  134. package/dist/esm/{formitem-8a73a5fb.js → formitem2.js} +83 -50
  135. package/dist/esm/get-scroll-parent.js +26 -0
  136. package/dist/esm/griditem2.js +96 -0
  137. package/dist/esm/index.js +14 -0
  138. package/dist/esm/nutui-react.es.js +188 -94
  139. package/dist/esm/offsetContext.js +19 -0
  140. package/dist/esm/overlay2.js +98 -0
  141. package/dist/esm/px-check.js +6 -0
  142. package/dist/esm/radio2.js +129 -0
  143. package/dist/esm/render.js +95 -0
  144. package/dist/esm/tabpane2.js +44 -0
  145. package/dist/esm/tabs2.js +175 -0
  146. package/dist/esm/typings.js +7 -0
  147. package/dist/esm/use-client-rect.js +32 -0
  148. package/dist/esm/use-props-value.js +18 -0
  149. package/dist/esm/use-touch.js +74 -0
  150. package/dist/locales/base.d.ts +2 -2
  151. package/dist/locales/base.js +1 -1
  152. package/dist/locales/en-US.js +3 -3
  153. package/dist/locales/id-ID.js +3 -3
  154. package/dist/locales/zh-CN.js +3 -3
  155. package/dist/locales/zh-TW.js +3 -3
  156. package/dist/locales/zh-UG.js +3 -3
  157. package/dist/nutui.react.mjs +8389 -4901
  158. package/dist/nutui.react.umd.js +8390 -4902
  159. package/dist/packages/actionsheet/actionsheet.scss +10 -2
  160. package/dist/packages/audio/audio.scss +2 -15
  161. package/dist/packages/backtop/backtop.scss +0 -8
  162. package/dist/packages/badge/badge.scss +3 -4
  163. package/dist/packages/button/button.scss +80 -93
  164. package/dist/packages/calendar/calendar.scss +0 -30
  165. package/dist/packages/cell/cell.scss +18 -90
  166. package/dist/packages/cellgroup/cellgroup.scss +26 -20
  167. package/dist/packages/collapseitem/collapseitem.scss +0 -1
  168. package/dist/packages/dialog/dialog.scss +1 -1
  169. package/dist/packages/divider/divider.scss +3 -17
  170. package/dist/packages/grid/grid.scss +1 -0
  171. package/dist/packages/griditem/griditem.scss +2 -17
  172. package/dist/packages/icon/icon.scss +0 -132
  173. package/dist/packages/image/image.scss +0 -12
  174. package/dist/packages/indicator/indicator.scss +21 -39
  175. package/dist/packages/infiniteloading/infiniteloading.scss +4 -12
  176. package/dist/packages/input/input.scss +4 -0
  177. package/dist/packages/inputnumber/inputnumber.scss +10 -26
  178. package/dist/packages/menuitem/menuitem.scss +2 -0
  179. package/dist/packages/navbar/navbar.scss +4 -5
  180. package/dist/packages/overlay/overlay.scss +0 -19
  181. package/dist/packages/picker/picker.scss +97 -103
  182. package/dist/packages/popup/popup.scss +0 -16
  183. package/dist/packages/progress/progress.scss +0 -1
  184. package/dist/packages/radio/radio.scss +8 -0
  185. package/dist/packages/rate/rate.scss +29 -6
  186. package/dist/packages/row/row.scss +13 -31
  187. package/dist/packages/searchbar/searchbar.scss +0 -1
  188. package/dist/packages/shortpassword/shortpassword.scss +4 -1
  189. package/dist/packages/sidenavbar/sidenavbar.scss +0 -19
  190. package/dist/packages/step/step.scss +0 -1
  191. package/dist/packages/sticky/sticky.scss +1 -1
  192. package/dist/packages/swiper/swiper.scss +8 -0
  193. package/dist/packages/tabbaritem/tabbaritem.scss +0 -1
  194. package/dist/packages/table/table.scss +0 -1
  195. package/dist/packages/tag/tag.scss +9 -2
  196. package/dist/packages/timedetail/timedetail.scss +9 -3
  197. package/dist/packages/timeselect/timeselect.scss +1 -1
  198. package/dist/packages/toast/toast.scss +0 -1
  199. package/dist/packages/uploader/uploader.scss +2 -28
  200. package/dist/style.css +1 -1
  201. package/dist/style.mjs +1 -1
  202. package/dist/styles/font-jmapp/config.json +175 -0
  203. package/dist/styles/font-jmapp/demo.css +539 -0
  204. package/dist/styles/font-jmapp/demo_index.html +1821 -0
  205. package/dist/styles/font-jmapp/iconfont.css +299 -0
  206. package/dist/styles/font-jmapp/iconfont.eot +0 -0
  207. package/dist/styles/font-jmapp/iconfont.js +68 -0
  208. package/dist/styles/font-jmapp/iconfont.json +506 -0
  209. package/dist/styles/font-jmapp/iconfont.svg +356 -0
  210. package/dist/styles/font-jmapp/iconfont.ttf +0 -0
  211. package/dist/styles/font-jmapp/iconfont.woff +0 -0
  212. package/dist/styles/font-jmapp/iconfont.woff2 +0 -0
  213. package/dist/styles/theme-default.scss +1 -0
  214. package/dist/styles/theme-jmapp.scss +41 -0
  215. package/dist/styles/themes/default.scss +0 -1
  216. package/dist/styles/variables-jmapp.scss +2601 -0
  217. package/dist/styles/variables.scss +49 -73
  218. package/dist/types/index.d.ts +169 -266
  219. package/package.json +23 -154
  220. package/dist/esm/AvatarContext-15733596.js +0 -3
  221. package/dist/esm/Icon/style/index.js +0 -4
  222. package/dist/esm/UserContext-101ad4a4.js +0 -3
  223. package/dist/esm/UserContext-2629d479.js +0 -3
  224. package/dist/esm/UserContext-b33bcf21.js +0 -3
  225. package/dist/esm/bem-3b438e61.js +0 -8
  226. package/dist/esm/cellgroup-fcc72767.js +0 -34
  227. package/dist/esm/checkbox-44e13cd0.js +0 -137
  228. package/dist/esm/get-scroll-parent-5f85dee8.js +0 -24
  229. package/dist/esm/grid.context-2ee27d95.js +0 -6
  230. package/dist/esm/icon-4ef1581c.js +0 -70
  231. package/dist/esm/index-030b7245.js +0 -11
  232. package/dist/esm/offsetContext-3ab00d40.js +0 -16
  233. package/dist/esm/overlay-de6c79d5.js +0 -83
  234. package/dist/esm/radio-9f141e6b.js +0 -118
  235. package/dist/esm/render-bbebb760.js +0 -79
  236. package/dist/esm/tabpane-01075e6c.js +0 -29
  237. package/dist/esm/tabs-e1b4e4b1.js +0 -181
  238. package/dist/esm/typings-f27b58f4.js +0 -8
  239. package/dist/esm/useClientRect-56bb675b.js +0 -39
  240. package/dist/esm/useTouch-cf73a407.js +0 -99
@@ -1,6 +1,7 @@
1
- import { O as Overlay } from './overlay-de6c79d5.js';
2
- import 'react';
3
- import 'classnames';
4
- import './bem-3b438e61.js';
5
- import '@bem-react/classname';
6
- export { Overlay as default };
1
+ import { O as Overlay } from "./overlay2.js";
2
+ import "react";
3
+ import "classnames";
4
+ import "./typings.js";
5
+ export {
6
+ Overlay as default
7
+ };
@@ -1,170 +1,129 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
- var _excluded = ["modelValue", "mode", "prevText", "nextText", "pageCount", "totalItems", "itemsPerPage", "showPageSize", "onChange", "updatecurrent", "forceEllipses", "pageNodeRender", "defaultValue", "className"];
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
- import React__default, { useState, useEffect } from 'react';
8
- import { useConfig } from './ConfigProvider.js';
9
- import { c as cn } from './bem-3b438e61.js';
10
- import '@bem-react/classname';
11
- var defaultProps = {
12
- defaultValue: 1,
13
- mode: 'multi',
14
- prevText: '',
15
- nextText: '',
16
- pageCount: '',
17
- totalItems: '0',
18
- itemsPerPage: '10',
19
- showPageSize: '5',
20
- forceEllipses: false,
21
- className: '',
22
- pageNodeRender: function pageNodeRender(item) {
23
- return item.text;
4
+ var _excluded = ["value", "mode", "prev", "next", "total", "pageSize", "itemSize", "onChange", "ellipse", "itemRender", "defaultValue", "className"];
5
+ function ownKeys(object, enumerableOnly) {
6
+ var keys = Object.keys(object);
7
+ if (Object.getOwnPropertySymbols) {
8
+ var symbols = Object.getOwnPropertySymbols(object);
9
+ enumerableOnly && (symbols = symbols.filter(function(sym) {
10
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
11
+ })), keys.push.apply(keys, symbols);
24
12
  }
25
- };
26
- var Pagination = function Pagination(props) {
27
- var _useConfig = useConfig(),
28
- locale = _useConfig.locale;
29
- _objectSpread(_objectSpread({}, defaultProps), props);
30
- var modelValue = props.modelValue,
31
- mode = props.mode,
32
- prevText = props.prevText,
33
- nextText = props.nextText,
34
- pageCount = props.pageCount,
35
- totalItems = props.totalItems,
36
- itemsPerPage = props.itemsPerPage,
37
- showPageSize = props.showPageSize,
38
- onChange = props.onChange,
39
- updatecurrent = props.updatecurrent,
40
- forceEllipses = props.forceEllipses,
41
- pageNodeRender = props.pageNodeRender,
42
- defaultValue = props.defaultValue,
43
- className = props.className,
44
- rest = _objectWithoutProperties(props, _excluded);
45
- var _useState = useState(1),
46
- _useState2 = _slicedToArray(_useState, 2),
47
- currentPage = _useState2[0],
48
- setCurrent = _useState2[1];
49
- var _useState3 = useState([]),
50
- _useState4 = _slicedToArray(_useState3, 2),
51
- pages = _useState4[0],
52
- setPages = _useState4[1];
53
- var _useState5 = useState(Number(pageCount)),
54
- _useState6 = _slicedToArray(_useState5, 2),
55
- countRef = _useState6[0],
56
- setCountRef = _useState6[1];
57
- var paginationBem = cn('pagination');
58
- // 计算页面的数量
59
- var computedCountRef = function computedCountRef() {
60
- var num = Number(pageCount) || Math.ceil(Number(totalItems) / Number(itemsPerPage));
13
+ return keys;
14
+ }
15
+ function _objectSpread(target) {
16
+ for (var i = 1; i < arguments.length; i++) {
17
+ var source = null != arguments[i] ? arguments[i] : {};
18
+ i % 2 ? ownKeys(Object(source), true).forEach(function(key) {
19
+ _defineProperty(target, key, source[key]);
20
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
21
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
22
+ });
23
+ }
24
+ return target;
25
+ }
26
+ import React__default, { useMemo } from "react";
27
+ import classNames from "classnames";
28
+ import { useConfig } from "./ConfigProvider.js";
29
+ import { u as usePropsValue } from "./use-props-value.js";
30
+ import { C as ComponentDefaults } from "./typings.js";
31
+ var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
32
+ defaultValue: 1,
33
+ mode: "multi",
34
+ prev: null,
35
+ next: null,
36
+ total: 50,
37
+ pageSize: 10,
38
+ itemSize: 5,
39
+ ellipse: false
40
+ });
41
+ var Pagination = function Pagination2(props) {
42
+ var _useConfig = useConfig(), locale = _useConfig.locale;
43
+ var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props), value = _defaultProps$props.value, mode = _defaultProps$props.mode, prev = _defaultProps$props.prev, next = _defaultProps$props.next, total = _defaultProps$props.total, pageSize = _defaultProps$props.pageSize, itemSize = _defaultProps$props.itemSize, onChange = _defaultProps$props.onChange, ellipse = _defaultProps$props.ellipse, itemRender = _defaultProps$props.itemRender, defaultValue = _defaultProps$props.defaultValue, className = _defaultProps$props.className, rest = _objectWithoutProperties(_defaultProps$props, _excluded);
44
+ var classPrefix = "nut-pagination";
45
+ var _usePropsValue = usePropsValue({
46
+ value,
47
+ defaultValue,
48
+ finalValue: 1,
49
+ onChange
50
+ }), _usePropsValue2 = _slicedToArray(_usePropsValue, 2), currentPage = _usePropsValue2[0], setCurrentPage = _usePropsValue2[1];
51
+ var pageCount = useMemo(function() {
52
+ var num = Math.ceil(total / pageSize);
61
53
  return Number.isNaN(num) ? 1 : Math.max(1, num);
62
- };
63
- // 生成pages数组,用来遍历
64
- var computedPages = function computedPages(_currentPage, _countRef) {
65
- if (mode === 'simple') return [];
54
+ }, [total, pageSize]);
55
+ var pages = useMemo(function() {
66
56
  var items = [];
67
- var pageCount = _countRef || countRef; // 总的页面数量
68
- var pageSize = Number(showPageSize); // 展示的页面个数
69
- var _current = _currentPage || Number(currentPage); // 当前页
70
57
  var startPage = 1;
71
58
  var endPage = pageCount;
72
- var partialShow = pageCount > pageSize;
59
+ var partialShow = pageCount > itemSize;
73
60
  if (partialShow) {
74
- // 选中的page在展示的page中间
75
- startPage = Math.max(_current - Math.floor(pageSize / 2), 1);
76
- endPage = startPage + pageSize - 1;
61
+ startPage = Math.max(currentPage - Math.floor(itemSize / 2), 1);
62
+ endPage = startPage + itemSize - 1;
77
63
  if (endPage > pageCount) {
78
64
  endPage = pageCount;
79
- startPage = endPage - pageSize + 1;
65
+ startPage = endPage - itemSize + 1;
80
66
  }
81
67
  }
82
- // 遍历生成数组
83
68
  for (var i = startPage; i <= endPage; i++) {
84
- var page = setPage(i, i, _current === i);
85
- items.push(page);
69
+ items.push({
70
+ number: i,
71
+ text: i
72
+ });
86
73
  }
87
- // 判断是否有折叠
88
- if (partialShow && pageSize > 0 && forceEllipses) {
74
+ if (partialShow && itemSize > 0 && ellipse) {
89
75
  if (startPage > 1) {
90
- var prevPage = setPage(startPage - 1, '...');
91
- items.unshift(prevPage);
76
+ items.unshift({
77
+ number: startPage - 1,
78
+ text: "..."
79
+ });
92
80
  }
93
81
  if (endPage < pageCount) {
94
- var nextPage = setPage(endPage + 1, '...');
95
- items.push(nextPage);
82
+ items.push({
83
+ number: endPage + 1,
84
+ text: "..."
85
+ });
96
86
  }
97
87
  }
98
88
  return items;
89
+ }, [currentPage, itemSize, pageCount]);
90
+ var handleSelectPage = function handleSelectPage2(curPage) {
91
+ if (curPage > pageCount || curPage < 1)
92
+ return;
93
+ setCurrentPage(curPage);
99
94
  };
100
- // 点击选择page
101
- var selectPage = function selectPage(curPage, isSelect) {
102
- if (curPage > countRef || curPage < 1) return;
103
- // 是否传入modelValue
104
- if (!('modelValue' in props)) {
105
- setCurrent(Number(curPage));
106
- if (curPage !== currentPage) {
107
- setPages(computedPages(curPage));
108
- }
109
- }
110
- if (curPage !== currentPage) {
111
- updatecurrent && updatecurrent(curPage);
112
- }
113
- if (isSelect) onChange && onChange(curPage);
114
- };
115
- // set page 对象
116
- var setPage = function setPage(number, text, active) {
117
- return {
118
- number: number,
119
- text: text,
120
- active: active
121
- };
122
- };
123
- useEffect(function () {
124
- // 初始化 判断是否传入值 计算 当前页,总页数,生成子节点
125
- var currentValue = props.defaultValue || 1;
126
- if ('modelValue' in props) {
127
- currentValue = Number(props.modelValue);
128
- }
129
- var pageCount = computedCountRef();
130
- setCountRef(pageCount);
131
- setPages(computedPages(currentValue, pageCount));
132
- }, []);
133
- if ('modelValue' in props) {
134
- var current = props.modelValue ? Number(props.modelValue) : 1;
135
- if (current !== currentPage) {
136
- setCurrent(current);
137
- setPages(computedPages(Number(current)));
138
- }
139
- }
140
95
  return React__default.createElement("div", _objectSpread({
141
- className: "".concat(paginationBem(''), " ").concat(className)
96
+ className: classNames(classPrefix, className)
142
97
  }, rest), React__default.createElement("div", {
143
- className: "".concat(paginationBem('prev'), " ").concat(mode === 'multi' ? '' : 'simple-border', " ").concat(currentPage === 1 ? 'disabled' : ''),
98
+ className: classNames("".concat(classPrefix, "__prev"), mode === "multi" ? "" : "simple-border", currentPage === 1 ? "disabled" : ""),
144
99
  onClick: function onClick(e) {
145
- return selectPage(Number(currentPage) - 1, true);
100
+ return handleSelectPage(currentPage - 1);
146
101
  }
147
- }, prevText || locale.pagination.prev), mode === 'multi' ? React__default.createElement("div", {
148
- className: "".concat(paginationBem('contain'))
149
- }, pages.map(function (item, index) {
102
+ }, prev || locale.pagination.prev), mode === "multi" && React__default.createElement("div", {
103
+ className: "".concat(classPrefix, "__contain")
104
+ }, pages.map(function(item, index) {
150
105
  return React__default.createElement("div", {
151
106
  key: "".concat(index, "pagination"),
152
- className: "".concat(paginationBem('item'), " ").concat(item.active ? 'active' : ''),
107
+ className: classNames("".concat(classPrefix, "__item"), {
108
+ active: item.number === currentPage
109
+ }),
153
110
  onClick: function onClick(e) {
154
- return !item.active ? selectPage(item.number, true) : '';
111
+ item.number !== currentPage && handleSelectPage(item.number);
155
112
  }
156
- }, pageNodeRender ? pageNodeRender(item) : item.text);
157
- })) : '', mode === 'simple' ? React__default.createElement("div", {
158
- className: "".concat(paginationBem('contain'))
113
+ }, itemRender ? itemRender(item) : item.text);
114
+ })), mode === "simple" && React__default.createElement("div", {
115
+ className: "".concat(classPrefix, "__contain")
159
116
  }, React__default.createElement("div", {
160
- className: "".concat(paginationBem('simple'))
161
- }, currentPage, "/", countRef)) : '', React__default.createElement("div", {
162
- className: "".concat(paginationBem('next'), " ").concat(Number(currentPage) >= countRef ? 'disabled' : ''),
117
+ className: "".concat(classPrefix, "__simple")
118
+ }, currentPage, "/", pageCount)), React__default.createElement("div", {
119
+ className: classNames("".concat(classPrefix, "__next"), currentPage >= pageCount ? "disabled" : ""),
163
120
  onClick: function onClick(e) {
164
- return selectPage(Number(currentPage) + 1, true);
121
+ return handleSelectPage(currentPage + 1);
165
122
  }
166
- }, nextText || locale.pagination.next));
123
+ }, next || locale.pagination.next));
167
124
  };
168
125
  Pagination.defaultProps = defaultProps;
169
- Pagination.displayName = 'NutPagination';
170
- export { Pagination as default };
126
+ Pagination.displayName = "NutPagination";
127
+ export {
128
+ Pagination as default
129
+ };