@nutui/nutui-react 1.3.5-beta.1 → 1.3.6

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 (108) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/esm/ActionSheet.js +15 -25
  3. package/dist/esm/Address.js +151 -221
  4. package/dist/esm/AnimatingNumbers.js +7 -31
  5. package/dist/esm/Audio.js +31 -66
  6. package/dist/esm/Avatar.js +25 -51
  7. package/dist/esm/AvatarGroup.js +2 -9
  8. package/dist/esm/BackTop.js +29 -55
  9. package/dist/esm/Badge.js +9 -20
  10. package/dist/esm/Barrage.js +8 -20
  11. package/dist/esm/Button.js +22 -37
  12. package/dist/esm/Calendar.js +23 -37
  13. package/dist/esm/CalendarItem.js +86 -186
  14. package/dist/esm/Card.js +14 -20
  15. package/dist/esm/Cascader.js +77 -197
  16. package/dist/esm/Cell.js +20 -30
  17. package/dist/esm/CellGroup.js +6 -12
  18. package/dist/esm/Checkbox.js +27 -48
  19. package/dist/esm/CheckboxGroup.js +12 -30
  20. package/dist/esm/CircleProgress.js +11 -28
  21. package/dist/esm/Col.js +11 -22
  22. package/dist/esm/Collapse.js +11 -27
  23. package/dist/esm/CollapseItem.js +33 -47
  24. package/dist/esm/ConfigProvider.js +4 -15
  25. package/dist/esm/CountDown.js +37 -74
  26. package/dist/esm/DatePicker.js +44 -106
  27. package/dist/esm/Dialog.js +31 -89
  28. package/dist/esm/Divider.js +8 -15
  29. package/dist/esm/Drag.js +30 -45
  30. package/dist/esm/Elevator.js +37 -74
  31. package/dist/esm/Empty.js +11 -24
  32. package/dist/esm/FixedNav.js +18 -29
  33. package/dist/esm/Grid.js +13 -28
  34. package/dist/esm/GridItem.js +18 -34
  35. package/dist/esm/ImagePreview.js +36 -71
  36. package/dist/esm/Indicator.js +9 -20
  37. package/dist/esm/Infiniteloading.js +26 -55
  38. package/dist/esm/Input.js +62 -106
  39. package/dist/esm/InputNumber.js +25 -52
  40. package/dist/esm/Layout.js +0 -6
  41. package/dist/esm/Menu.js +24 -46
  42. package/dist/esm/MenuItem.js +29 -52
  43. package/dist/esm/NavBar.js +18 -34
  44. package/dist/esm/NoticeBar.js +54 -102
  45. package/dist/esm/Notify.js +9 -38
  46. package/dist/esm/NumberKeyboard.js +21 -52
  47. package/dist/esm/Pagination.js +38 -71
  48. package/dist/esm/Picker.js +91 -178
  49. package/dist/esm/Popover.js +32 -72
  50. package/dist/esm/Popup.js +40 -72
  51. package/dist/esm/Price.js +7 -24
  52. package/dist/esm/Progress.js +35 -50
  53. package/dist/esm/PullToRefresh.js +28 -83
  54. package/dist/esm/Radio.js +24 -47
  55. package/dist/esm/RadioGroup.js +14 -24
  56. package/dist/esm/Range.js +44 -116
  57. package/dist/esm/Rate.js +21 -39
  58. package/dist/esm/Row.js +7 -16
  59. package/dist/esm/SearchBar.js +47 -68
  60. package/dist/esm/ShortPassword.js +29 -56
  61. package/dist/esm/SideNavBar.js +9 -16
  62. package/dist/esm/SideNavBarItem.js +4 -11
  63. package/dist/esm/Signature.js +13 -43
  64. package/dist/esm/Skeleton.js +13 -23
  65. package/dist/esm/Step.js +12 -28
  66. package/dist/esm/Steps.js +6 -14
  67. package/dist/esm/Sticky.js +24 -52
  68. package/dist/esm/SubSideNavBar.js +7 -22
  69. package/dist/esm/Swipe.js +15 -54
  70. package/dist/esm/Swiper.js +102 -186
  71. package/dist/esm/SwiperItem.js +2 -12
  72. package/dist/esm/Switch.js +13 -27
  73. package/dist/esm/Tabbar.js +13 -25
  74. package/dist/esm/TabbarItem.js +15 -23
  75. package/dist/esm/Table.js +19 -39
  76. package/dist/esm/Tag.js +19 -36
  77. package/dist/esm/TextArea.js +19 -43
  78. package/dist/esm/TimeDetail.js +15 -28
  79. package/dist/esm/TimePannel.js +5 -12
  80. package/dist/esm/TimeSelect.js +35 -59
  81. package/dist/esm/Toast.js +16 -49
  82. package/dist/esm/Uploader.js +57 -152
  83. package/dist/esm/Video.js +8 -19
  84. package/dist/esm/VirtualList.js +84 -118
  85. package/dist/esm/date-710f8c7c.js +9 -33
  86. package/dist/esm/get-scroll-parent-3dcd3f53.js +1 -9
  87. package/dist/esm/icon-8dc4de10.js +11 -21
  88. package/dist/esm/offsetContext-0e3d04b3.js +0 -3
  89. package/dist/esm/overlay-ed3eb37d.js +12 -23
  90. package/dist/esm/render-18227751.js +0 -11
  91. package/dist/esm/tabpane-c957ab14.js +4 -10
  92. package/dist/esm/tabs-0896a61b.js +28 -56
  93. package/dist/esm/types/src/packages/elevator/demo.d.ts +1 -0
  94. package/dist/esm/types/src/packages/searchbar/searchbar.d.ts +2 -0
  95. package/dist/esm/useClientRect-839d18c5.js +0 -5
  96. package/dist/esm/useTouch-a2ea68c6.js +27 -47
  97. package/dist/locales/base.js +1 -1
  98. package/dist/locales/en-US.js +1 -1
  99. package/dist/locales/id-ID.js +1 -1
  100. package/dist/locales/zh-CN.js +1 -1
  101. package/dist/locales/zh-TW.js +1 -1
  102. package/dist/nutui.react.es.js +424 -406
  103. package/dist/nutui.react.umd.js +416 -398
  104. package/dist/packages/searchbar/searchbar.scss +20 -3
  105. package/dist/style.css +1 -1
  106. package/dist/style.es.js +1 -1
  107. package/dist/types/index.d.ts +2 -0
  108. package/package.json +1 -1
@@ -3,11 +3,8 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
5
  var _excluded = ["minDate", "maxDate", "type", "isShowChinese", "minuteStep", "modelValue", "visible", "title", "formatter", "onCloseDatePicker", "onConfirmDatePicker", "filter", "threeDimensional", "className", "style"];
6
-
7
6
  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; }
8
-
9
7
  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; }
10
-
11
8
  import React__default, { useState, useRef, useEffect } from 'react';
12
9
  import Picker from './Picker.js';
13
10
  import { useConfig } from './ConfigProvider.js';
@@ -23,28 +20,27 @@ var defaultProps = {
23
20
  minDate: new Date(currentYear - 10, 0, 1),
24
21
  maxDate: new Date(currentYear + 10, 11, 31)
25
22
  };
26
-
27
23
  var DatePicker = function DatePicker(props) {
28
24
  var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
29
- minDate = _defaultProps$props.minDate,
30
- maxDate = _defaultProps$props.maxDate,
31
- type = _defaultProps$props.type,
32
- isShowChinese = _defaultProps$props.isShowChinese,
33
- minuteStep = _defaultProps$props.minuteStep,
34
- modelValue = _defaultProps$props.modelValue,
35
- visible = _defaultProps$props.visible,
36
- title = _defaultProps$props.title,
37
- formatter = _defaultProps$props.formatter,
38
- onCloseDatePicker = _defaultProps$props.onCloseDatePicker,
39
- onConfirmDatePicker = _defaultProps$props.onConfirmDatePicker,
40
- filter = _defaultProps$props.filter,
41
- threeDimensional = _defaultProps$props.threeDimensional,
42
- className = _defaultProps$props.className,
43
- style = _defaultProps$props.style,
44
- rest = _objectWithoutProperties(_defaultProps$props, _excluded);
45
-
25
+ minDate = _defaultProps$props.minDate,
26
+ maxDate = _defaultProps$props.maxDate,
27
+ type = _defaultProps$props.type,
28
+ isShowChinese = _defaultProps$props.isShowChinese,
29
+ minuteStep = _defaultProps$props.minuteStep,
30
+ modelValue = _defaultProps$props.modelValue,
31
+ visible = _defaultProps$props.visible,
32
+ title = _defaultProps$props.title,
33
+ formatter = _defaultProps$props.formatter,
34
+ onCloseDatePicker = _defaultProps$props.onCloseDatePicker,
35
+ onConfirmDatePicker = _defaultProps$props.onConfirmDatePicker,
36
+ filter = _defaultProps$props.filter,
37
+ threeDimensional = _defaultProps$props.threeDimensional,
38
+ className = _defaultProps$props.className,
39
+ style = _defaultProps$props.style,
40
+ rest = _objectWithoutProperties(_defaultProps$props, _excluded);
46
41
  var _useConfig = useConfig(),
47
- locale = _useConfig.locale; // const [translated] = useTranslate<T>({
42
+ locale = _useConfig.locale;
43
+ // const [translated] = useTranslate<T>({
48
44
  // 'zh-CN': {
49
45
  // year: '年',
50
46
  // month: '月',
@@ -70,34 +66,26 @@ var DatePicker = function DatePicker(props) {
70
66
  // seconds: 'Second',
71
67
  // },
72
68
  // })
73
-
74
-
75
69
  var _useState = useState(false),
76
- _useState2 = _slicedToArray(_useState, 2),
77
- show = _useState2[0],
78
- setShow = _useState2[1];
79
-
70
+ _useState2 = _slicedToArray(_useState, 2),
71
+ show = _useState2[0],
72
+ setShow = _useState2[1];
80
73
  var _useState3 = useState(modelValue),
81
- _useState4 = _slicedToArray(_useState3, 2),
82
- currentDate = _useState4[0],
83
- setCurrentDate = _useState4[1];
84
-
74
+ _useState4 = _slicedToArray(_useState3, 2),
75
+ currentDate = _useState4[0],
76
+ setCurrentDate = _useState4[1];
85
77
  var _useState5 = useState([]),
86
- _useState6 = _slicedToArray(_useState5, 2),
87
- defaultValue = _useState6[0],
88
- setDefaultValue = _useState6[1];
89
-
78
+ _useState6 = _slicedToArray(_useState5, 2),
79
+ defaultValue = _useState6[0],
80
+ setDefaultValue = _useState6[1];
90
81
  var _useState7 = useState([]),
91
- _useState8 = _slicedToArray(_useState7, 2),
92
- listData = _useState8[0],
93
- setListData = _useState8[1];
94
-
82
+ _useState8 = _slicedToArray(_useState7, 2),
83
+ listData = _useState8[0],
84
+ setListData = _useState8[1];
95
85
  var pickerRef = useRef(null);
96
-
97
86
  var isDate = function isDate(val) {
98
87
  return Object.prototype.toString.call(val) === '[object Date]' && !Number.isNaN(val.getTime());
99
88
  };
100
-
101
89
  var datepickerLang = locale.datepicker;
102
90
  var zhCNType = {
103
91
  day: datepickerLang.day,
@@ -107,82 +95,65 @@ var DatePicker = function DatePicker(props) {
107
95
  minute: datepickerLang.min,
108
96
  seconds: datepickerLang.seconds
109
97
  };
110
-
111
98
  var formatValue = function formatValue(value) {
112
99
  var cvalue = value;
113
-
114
100
  if (!cvalue || cvalue && !isDate(cvalue)) {
115
101
  cvalue = minDate;
116
102
  }
117
-
118
103
  var timestmp = Math.max(cvalue.getTime(), minDate.getTime());
119
104
  timestmp = Math.min(timestmp, maxDate.getTime());
120
105
  return new Date(timestmp);
121
106
  };
122
-
123
107
  function getMonthEndDay(year, month) {
124
108
  return new Date(year, month, 0).getDate();
125
109
  }
126
-
127
110
  var getBoundary = function getBoundary(type, value) {
128
111
  var _ref;
129
-
130
112
  var boundary = type === 'min' ? minDate : maxDate;
131
113
  var year = boundary.getFullYear();
132
114
  var month = 1;
133
115
  var date = 1;
134
116
  var hour = 0;
135
117
  var minute = 0;
136
-
137
118
  if (type === 'max') {
138
119
  month = 12;
139
120
  date = getMonthEndDay(value.getFullYear(), value.getMonth() + 1);
140
121
  hour = 23;
141
122
  minute = 59;
142
123
  }
143
-
144
124
  var seconds = minute;
145
-
146
125
  if (value.getFullYear() === year) {
147
126
  month = boundary.getMonth() + 1;
148
-
149
127
  if (value.getMonth() + 1 === month) {
150
128
  date = boundary.getDate();
151
-
152
129
  if (value.getDate() === date) {
153
130
  hour = boundary.getHours();
154
-
155
131
  if (value.getHours() === hour) {
156
132
  minute = boundary.getMinutes();
157
133
  }
158
134
  }
159
135
  }
160
136
  }
161
-
162
137
  return _ref = {}, _defineProperty(_ref, "".concat(type, "Year"), year), _defineProperty(_ref, "".concat(type, "Month"), month), _defineProperty(_ref, "".concat(type, "Date"), date), _defineProperty(_ref, "".concat(type, "Hour"), hour), _defineProperty(_ref, "".concat(type, "Minute"), minute), _defineProperty(_ref, "".concat(type, "Seconds"), seconds), _ref;
163
138
  };
164
-
165
139
  var ranges = function ranges(date) {
166
140
  var curDate = date || currentDate;
167
141
  console.log(11, currentDate);
168
142
  if (!curDate) return [];
169
-
170
143
  var _getBoundary = getBoundary('max', curDate),
171
- maxYear = _getBoundary.maxYear,
172
- maxDate = _getBoundary.maxDate,
173
- maxMonth = _getBoundary.maxMonth,
174
- maxHour = _getBoundary.maxHour,
175
- maxMinute = _getBoundary.maxMinute,
176
- maxSeconds = _getBoundary.maxSeconds;
177
-
144
+ maxYear = _getBoundary.maxYear,
145
+ maxDate = _getBoundary.maxDate,
146
+ maxMonth = _getBoundary.maxMonth,
147
+ maxHour = _getBoundary.maxHour,
148
+ maxMinute = _getBoundary.maxMinute,
149
+ maxSeconds = _getBoundary.maxSeconds;
178
150
  var _getBoundary2 = getBoundary('min', curDate),
179
- minYear = _getBoundary2.minYear,
180
- minDate = _getBoundary2.minDate,
181
- minMonth = _getBoundary2.minMonth,
182
- minHour = _getBoundary2.minHour,
183
- minMinute = _getBoundary2.minMinute,
184
- minSeconds = _getBoundary2.minSeconds;
185
-
151
+ minYear = _getBoundary2.minYear,
152
+ minDate = _getBoundary2.minDate,
153
+ minMonth = _getBoundary2.minMonth,
154
+ minHour = _getBoundary2.minHour,
155
+ minMinute = _getBoundary2.minMinute,
156
+ minSeconds = _getBoundary2.minSeconds;
186
157
  var result = [{
187
158
  type: 'year',
188
159
  range: [minYear, maxYear]
@@ -202,58 +173,45 @@ var DatePicker = function DatePicker(props) {
202
173
  type: 'seconds',
203
174
  range: [minSeconds, maxSeconds]
204
175
  }];
205
-
206
176
  switch (type.toLocaleLowerCase()) {
207
177
  case 'date':
208
178
  result = result.slice(0, 3);
209
179
  break;
210
-
211
180
  case 'datetime':
212
181
  result = result.slice(0, 5);
213
182
  break;
214
-
215
183
  case 'time':
216
184
  result = result.slice(3, 6);
217
185
  break;
218
-
219
186
  case 'year-month':
220
187
  result = result.slice(0, 2);
221
188
  break;
222
-
223
189
  case 'month-day':
224
190
  result = result.slice(1, 3);
225
191
  break;
226
-
227
192
  case 'datehour':
228
193
  result = result.slice(0, 4);
229
194
  break;
230
195
  }
231
-
232
196
  return result;
233
197
  };
234
-
235
198
  var updateChooseValueCustmer = function updateChooseValueCustmer(index, selectedValue, cacheValueData) {
236
199
  if (['date', 'datetime', 'datehour', 'month-day', 'year-month'].includes(type.toLocaleLowerCase())) {
237
200
  var _date;
238
-
239
201
  var formatDate = [];
240
202
  selectedValue.forEach(function (item) {
241
203
  formatDate.push(item);
242
204
  });
243
-
244
205
  if (type.toLocaleLowerCase() === 'month-day' && formatDate.length < 3) {
245
206
  formatDate.unshift(new Date(modelValue || minDate || maxDate).getFullYear());
246
207
  }
247
-
248
208
  if (type.toLocaleLowerCase() === 'year-month' && formatDate.length < 3) {
249
209
  formatDate.push(new Date(modelValue || minDate || maxDate).getDate());
250
210
  }
251
-
252
211
  var year = Number(formatDate[0]);
253
212
  var month = Number(formatDate[1]) - 1;
254
213
  var day = Math.min(Number(formatDate[2]), getMonthEndDay(Number(formatDate[0]), Number(formatDate[1])));
255
214
  var date = null;
256
-
257
215
  if (type.toLocaleLowerCase() === 'date' || type.toLocaleLowerCase() === 'month-day' || type.toLocaleLowerCase() === 'year-month') {
258
216
  date = new Date(year, month, day);
259
217
  } else if (type.toLocaleLowerCase() === 'datetime') {
@@ -261,28 +219,21 @@ var DatePicker = function DatePicker(props) {
261
219
  } else if (type.toLocaleLowerCase() === 'datehour') {
262
220
  date = new Date(year, month, day, Number(formatDate[3]));
263
221
  }
264
-
265
222
  var isEqual = (currentDate === null || currentDate === void 0 ? void 0 : currentDate.getTime()) === ((_date = date) === null || _date === void 0 ? void 0 : _date.getTime());
266
223
  date && isDate(date) && !isEqual && setCurrentDate(formatValue(date));
267
224
  }
268
-
269
225
  props.onChangeDatePicker && props.onChangeDatePicker(index, selectedValue, cacheValueData);
270
226
  };
271
-
272
227
  var padZero = function padZero(num) {
273
228
  var targetLength = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
274
229
  var str = "".concat(num);
275
-
276
230
  while (str.length < targetLength) {
277
231
  str = "0".concat(str);
278
232
  }
279
-
280
233
  return str;
281
234
  };
282
-
283
235
  var formatterOption = function formatterOption(type, value) {
284
236
  var fOption = null;
285
-
286
237
  if (formatter) {
287
238
  fOption = formatter(type, {
288
239
  text: padZero(value, 2),
@@ -296,43 +247,33 @@ var DatePicker = function DatePicker(props) {
296
247
  value: padMin
297
248
  };
298
249
  }
299
-
300
250
  return fOption;
301
251
  };
302
-
303
252
  var generateValue = function generateValue(min, max, val, type, columnIndex) {
304
253
  var cmin = min;
305
254
  var arr = [];
306
255
  var index = 0;
307
-
308
256
  while (cmin <= max) {
309
257
  arr.push(formatterOption(type, cmin));
310
-
311
258
  if (type === 'minute') {
312
259
  cmin += minuteStep;
313
260
  } else {
314
261
  cmin++;
315
262
  }
316
-
317
263
  if (cmin <= val) {
318
264
  index++;
319
265
  }
320
266
  }
321
-
322
267
  defaultValue[columnIndex] = arr[index].value;
323
268
  setDefaultValue(_toConsumableArray(defaultValue));
324
-
325
269
  if (props.filter && props.filter(type, arr)) {
326
270
  return props.filter(type, arr);
327
271
  }
328
-
329
272
  return arr;
330
273
  };
331
-
332
274
  var getDateIndex = function getDateIndex(type) {
333
275
  if (!currentDate) return 0;
334
276
  var d = 0;
335
-
336
277
  if (type === 'year') {
337
278
  d = currentDate.getFullYear();
338
279
  } else if (type === 'month') {
@@ -346,19 +287,17 @@ var DatePicker = function DatePicker(props) {
346
287
  } else if (type === 'seconds') {
347
288
  d = currentDate.getSeconds();
348
289
  }
349
-
350
290
  return d;
351
291
  };
352
-
353
292
  var columns = function columns(date) {
354
293
  var val = ranges(date).map(function (res, columnIndex) {
355
294
  return generateValue(res.range[0], res.range[1], getDateIndex(res.type), res.type, columnIndex);
356
295
  });
357
296
  return val || [];
358
297
  };
359
-
360
298
  useEffect(function () {
361
- setCurrentDate(formatValue(modelValue)); // initDefault()
299
+ setCurrentDate(formatValue(modelValue));
300
+ // initDefault()
362
301
  }, []);
363
302
  useEffect(function () {
364
303
  setCurrentDate(formatValue(modelValue));
@@ -389,7 +328,6 @@ var DatePicker = function DatePicker(props) {
389
328
  ref: pickerRef
390
329
  }));
391
330
  };
392
-
393
331
  DatePicker.defaultProps = defaultProps;
394
332
  DatePicker.displayName = 'NutDatePicker';
395
333
  export { DatePicker as default };
@@ -1,46 +1,37 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  var _excluded = ["visible", "footer", "noFooter", "noOkBtn", "noCancelBtn", "lockScroll", "okBtnDisabled", "cancelAutoClose", "okText", "cancelText", "onClosed", "onCancel", "onOk"];
4
-
5
4
  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
-
7
5
  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; }
8
-
9
6
  import * as React from 'react';
10
7
  import React__default, { forwardRef } from 'react';
11
8
  import classNames from 'classnames';
12
9
  import Button from './Button.js';
13
10
  import { CSSTransition } from 'react-transition-group';
14
11
  import ReactDOM__default from 'react-dom';
15
-
16
12
  var Content = function Content(props) {
17
13
  var visible = props.visible,
18
- title = props.title,
19
- footer = props.footer,
20
- textAlign = props.textAlign,
21
- footerDirection = props.footerDirection,
22
- onClickSelf = props.onClickSelf,
23
- children = props.children;
14
+ title = props.title,
15
+ footer = props.footer,
16
+ textAlign = props.textAlign,
17
+ footerDirection = props.footerDirection,
18
+ onClickSelf = props.onClickSelf,
19
+ children = props.children;
24
20
  var headerNode;
25
-
26
21
  if (title) {
27
22
  headerNode = React__default.createElement("div", {
28
23
  className: "nut-dialog__header"
29
24
  }, title);
30
25
  }
31
-
32
26
  var footerNode;
33
-
34
27
  if (footer) {
35
28
  footerNode = React__default.createElement("div", {
36
29
  className: classNames('nut-dialog__footer', _defineProperty({}, footerDirection, footerDirection))
37
30
  }, footer);
38
31
  }
39
-
40
32
  var handleClick = function handleClick() {
41
33
  onClickSelf && onClickSelf();
42
34
  };
43
-
44
35
  return React__default.createElement("div", {
45
36
  className: "nut-dialog__outer",
46
37
  onClick: handleClick
@@ -56,25 +47,21 @@ var Content = function Content(props) {
56
47
  }
57
48
  }, React__default.createElement("div", null, children)), footerNode));
58
49
  };
59
-
60
50
  Content.displayName = 'NutContent';
61
-
62
51
  function Mask(props) {
63
52
  return React.createElement("div", {
64
53
  className: "nut-dialog__mask"
65
54
  });
66
55
  }
67
-
68
56
  var DialogWrap = function DialogWrap(props) {
69
57
  var className = props.className,
70
- style = props.style,
71
- visible = props.visible,
72
- mask = props.mask,
73
- closeOnClickOverlay = props.closeOnClickOverlay,
74
- lockScroll = props.lockScroll,
75
- onClosed = props.onClosed,
76
- onCancel = props.onCancel;
77
-
58
+ style = props.style,
59
+ visible = props.visible,
60
+ mask = props.mask,
61
+ closeOnClickOverlay = props.closeOnClickOverlay,
62
+ lockScroll = props.lockScroll,
63
+ onClosed = props.onClosed,
64
+ onCancel = props.onCancel;
78
65
  var handleClick = function handleClick(e) {
79
66
  if (closeOnClickOverlay && visible && e.target === e.currentTarget) {
80
67
  onClosed === null || onClosed === void 0 ? void 0 : onClosed();
@@ -82,15 +69,12 @@ var DialogWrap = function DialogWrap(props) {
82
69
  lockScroll && document.body.classList.remove('nut-overflow-hidden');
83
70
  }
84
71
  };
85
-
86
72
  var wrapStyle = _objectSpread(_objectSpread({}, style), {}, {
87
73
  display: visible ? 'block' : 'none'
88
74
  });
89
-
90
75
  if (lockScroll && visible) {
91
76
  document.body.classList.add('nut-overflow-hidden');
92
77
  }
93
-
94
78
  return React__default.createElement(React__default.Fragment, null, mask ? React__default.createElement(CSSTransition, {
95
79
  "in": visible,
96
80
  timeout: 300,
@@ -105,35 +89,27 @@ var DialogWrap = function DialogWrap(props) {
105
89
  visible: visible
106
90
  }))));
107
91
  };
108
-
109
92
  DialogWrap.displayName = 'NutDialogWrap';
110
-
111
93
  var DialogWrapper = function DialogWrapper(props) {
112
94
  var visible = props.visible,
113
- lockScroll = props.lockScroll;
114
-
95
+ lockScroll = props.lockScroll;
115
96
  if (lockScroll && !visible && document.body.classList.value.includes('nut-overflow-hidden')) {
116
97
  document.body.classList.remove('nut-overflow-hidden');
117
98
  }
118
-
119
99
  return React__default.createElement("div", {
120
100
  style: {
121
101
  display: visible ? 'block' : 'none'
122
102
  }
123
103
  }, React__default.createElement(DialogWrap, _objectSpread({}, props)));
124
104
  };
125
-
126
105
  DialogWrapper.displayName = 'NutDialogWrapper';
127
-
128
106
  function ConfirmDialog(props) {
129
107
  return React__default.createElement(Dialog, _objectSpread({}, props), props.content);
130
- } // 如果是消息提示型弹出框,那么只有确认按钮
131
-
132
-
108
+ }
109
+ // 如果是消息提示型弹出框,那么只有确认按钮
133
110
  var normalizeConfig = function normalizeConfig(_config) {
134
111
  if (_config.isNotice) {
135
112
  var icon = _config.icon;
136
-
137
113
  if (!icon && icon !== null) {
138
114
  switch (_config.noticeType) {
139
115
  case 'alert':
@@ -141,38 +117,28 @@ var normalizeConfig = function normalizeConfig(_config) {
141
117
  break;
142
118
  }
143
119
  }
144
-
145
120
  _config.noCancelBtn = true;
146
121
  }
147
-
148
122
  return _config;
149
123
  };
150
-
151
124
  function confirm(config, renderFunc) {
152
125
  var div = document.createElement('div');
153
126
  document.body.appendChild(div);
154
-
155
127
  function render(props) {
156
128
  ReactDOM__default.render(React__default.createElement(ConfirmDialog, _objectSpread(_objectSpread({}, props), {}, {
157
129
  onCancel: onCancel
158
130
  })), div);
159
131
  }
160
-
161
132
  var renderFunction = renderFunc || render;
162
-
163
133
  var dialogConfig = _objectSpread(_objectSpread({}, config), {}, {
164
134
  visible: false
165
135
  });
166
-
167
136
  var onOk = function onOk() {
168
137
  var ret;
169
-
170
138
  var _onOk = config.onOk || config.onConfirm;
171
-
172
139
  if (_onOk) {
173
140
  ret = _onOk();
174
141
  }
175
-
176
142
  if (ret && ret.then) {
177
143
  renderFunction(dialogConfig);
178
144
  ret.then(function () {
@@ -182,38 +148,30 @@ function confirm(config, renderFunc) {
182
148
  renderFunction(dialogConfig);
183
149
  });
184
150
  }
185
-
186
151
  if (!ret) {
187
152
  onCancel(true);
188
153
  }
189
- }; // 如果是promise,那么处理loading和加载完成关闭
190
-
191
-
154
+ };
155
+ // 如果是promise,那么处理loading和加载完成关闭
192
156
  dialogConfig.onOk = onOk;
193
157
  dialogConfig = normalizeConfig(dialogConfig);
194
158
  dialogConfig.visible = true;
195
159
  renderFunction(dialogConfig);
196
-
197
160
  function destroy() {
198
161
  var unmountEle = ReactDOM__default.unmountComponentAtNode(div);
199
-
200
162
  if (unmountEle && div.parentNode) {
201
163
  div.parentNode.removeChild(div);
202
164
  }
203
165
  }
204
-
205
166
  function onCancel(isOnOk) {
206
167
  !isOnOk && config.onCancel && config.onCancel();
207
168
  dialogConfig.visible = false;
208
-
209
169
  dialogConfig.onClosed = function () {
210
170
  config.onClosed && config.onClosed();
211
171
  destroy();
212
172
  };
213
-
214
173
  renderFunction(dialogConfig);
215
174
  }
216
-
217
175
  function update(newConfig) {
218
176
  dialogConfig = _objectSpread(_objectSpread({}, dialogConfig), {}, {
219
177
  title: config.title
@@ -221,24 +179,19 @@ function confirm(config, renderFunc) {
221
179
  dialogConfig = normalizeConfig(dialogConfig);
222
180
  renderFunction(dialogConfig);
223
181
  }
224
-
225
182
  function close() {
226
183
  dialogConfig.visible = false;
227
-
228
184
  dialogConfig.onClosed = function () {
229
185
  config.onClosed && config.onClosed();
230
186
  destroy();
231
187
  };
232
-
233
188
  renderFunction(dialogConfig);
234
189
  }
235
-
236
190
  return {
237
191
  close: close,
238
192
  update: update
239
193
  };
240
194
  }
241
-
242
195
  var defaultProps = {
243
196
  okText: '确认',
244
197
  cancelText: '取消',
@@ -253,47 +206,40 @@ var defaultProps = {
253
206
  footerDirection: 'horizontal',
254
207
  lockScroll: false
255
208
  };
256
-
257
209
  var BaseDialog = function BaseDialog(props, ref) {
258
210
  var visible = props.visible,
259
- footer = props.footer,
260
- noFooter = props.noFooter,
261
- noOkBtn = props.noOkBtn,
262
- noCancelBtn = props.noCancelBtn,
263
- lockScroll = props.lockScroll,
264
- okBtnDisabled = props.okBtnDisabled,
265
- cancelAutoClose = props.cancelAutoClose,
266
- okText = props.okText,
267
- cancelText = props.cancelText,
268
- onClosed = props.onClosed,
269
- onCancel = props.onCancel,
270
- onOk = props.onOk,
271
- restProps = _objectWithoutProperties(props, _excluded);
272
-
211
+ footer = props.footer,
212
+ noFooter = props.noFooter,
213
+ noOkBtn = props.noOkBtn,
214
+ noCancelBtn = props.noCancelBtn,
215
+ lockScroll = props.lockScroll,
216
+ okBtnDisabled = props.okBtnDisabled,
217
+ cancelAutoClose = props.cancelAutoClose,
218
+ okText = props.okText,
219
+ cancelText = props.cancelText,
220
+ onClosed = props.onClosed,
221
+ onCancel = props.onCancel,
222
+ onOk = props.onOk,
223
+ restProps = _objectWithoutProperties(props, _excluded);
273
224
  var renderFooter = function renderFooter() {
274
225
  if (footer === null || noFooter) return '';
275
-
276
226
  var handleCancel = function handleCancel(e) {
277
227
  e.stopPropagation();
278
228
  if (!cancelAutoClose) return;
279
229
  onClosed === null || onClosed === void 0 ? void 0 : onClosed();
280
230
  onCancel === null || onCancel === void 0 ? void 0 : onCancel();
281
-
282
231
  if (lockScroll && visible) {
283
232
  document.body.classList.remove('nut-overflow-hidden');
284
233
  }
285
234
  };
286
-
287
235
  var handleOk = function handleOk(e) {
288
236
  e.stopPropagation();
289
237
  onClosed === null || onClosed === void 0 ? void 0 : onClosed();
290
238
  onOk === null || onOk === void 0 ? void 0 : onOk(e);
291
-
292
239
  if (lockScroll && visible) {
293
240
  document.body.classList.remove('nut-overflow-hidden');
294
241
  }
295
242
  };
296
-
297
243
  var footerContent = footer || React__default.createElement(React__default.Fragment, null, !noCancelBtn && React__default.createElement(Button, {
298
244
  size: "small",
299
245
  plain: true,
@@ -311,7 +257,6 @@ var BaseDialog = function BaseDialog(props, ref) {
311
257
  }, okText));
312
258
  return footerContent;
313
259
  };
314
-
315
260
  return React__default.createElement(DialogWrapper, _objectSpread(_objectSpread({}, restProps), {}, {
316
261
  visible: visible,
317
262
  lockScroll: lockScroll,
@@ -320,13 +265,10 @@ var BaseDialog = function BaseDialog(props, ref) {
320
265
  onCancel: onCancel
321
266
  }));
322
267
  };
323
-
324
268
  var Dialog = forwardRef(BaseDialog);
325
-
326
269
  Dialog.confirm = function (props) {
327
270
  return confirm(props);
328
271
  };
329
-
330
272
  ['alert'].forEach(function (type) {
331
273
  Dialog[type] = function (props) {
332
274
  return confirm(_objectSpread(_objectSpread({}, props), {}, {