@hi-ui/hiui 2.15.10 → 2.15.11

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 (340) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/es/_util/warning.js +2 -2
  3. package/es/alert/__test__/index.test.js +67 -0
  4. package/es/alert/index.js +147 -6
  5. package/es/alert/style/index.css +1 -1
  6. package/es/badge/index.js +87 -9
  7. package/es/badge/style/index.css +1 -1
  8. package/es/badge/style/index.js +0 -0
  9. package/es/button/Button.js +51 -59
  10. package/es/button/ButtonGroup.js +31 -23
  11. package/es/button/IconLoading.js +2 -2
  12. package/es/button/__test__/index.test.js +29 -0
  13. package/es/button/index.js +2 -3
  14. package/es/button/style/index.css +1 -1
  15. package/es/card/index.js +42 -54
  16. package/es/card/style/index.css +1 -1
  17. package/es/cascader/Cascader.js +116 -181
  18. package/es/cascader/__test__/index.test.js +283 -0
  19. package/es/cascader/index.js +2 -5
  20. package/es/cascader/menu.js +155 -0
  21. package/es/cascader/style/cascader.css +1 -1
  22. package/es/cascader/style/menu.css +1 -1
  23. package/es/checkbox/{checkbox-legacy/Base.js → Base.js} +31 -46
  24. package/es/checkbox/CheckBox.js +185 -0
  25. package/es/checkbox/index.js +4 -13
  26. package/es/checkbox/style/index.css +1 -1
  27. package/es/collapse/__test__/index.test.js +58 -0
  28. package/es/collapse/index.js +93 -79
  29. package/es/collapse/style/index.css +1 -1
  30. package/es/confirm/index.js +50 -37
  31. package/es/context/index.js +37 -39
  32. package/es/counter/__test__/index.test.js +52 -0
  33. package/es/counter/index.js +270 -6
  34. package/es/counter/style/index.css +1 -1
  35. package/es/date-picker/BasePicker.js +288 -374
  36. package/es/date-picker/Calender.js +90 -326
  37. package/es/date-picker/DatePanel.js +186 -175
  38. package/es/date-picker/DatePicker.js +51 -151
  39. package/es/date-picker/DateRangePanel.js +181 -253
  40. package/es/date-picker/Modal.js +25 -15
  41. package/es/date-picker/Time.js +336 -230
  42. package/es/date-picker/TimePanel.js +32 -27
  43. package/es/date-picker/TimePeriodPanel.js +32 -21
  44. package/es/date-picker/TimePicker.js +40 -42
  45. package/es/date-picker/TimeRangePanel.js +42 -32
  46. package/es/date-picker/Type.js +1 -5
  47. package/es/date-picker/WeekRangePanel.js +150 -237
  48. package/es/date-picker/constants.js +28 -14
  49. package/es/date-picker/dateUtil.js +52 -221
  50. package/es/date-picker/index.js +2 -5
  51. package/es/date-picker/style/index.css +1 -1
  52. package/es/date-picker/util.js +8 -101
  53. package/es/dropdown/Dropdown.js +199 -193
  54. package/es/dropdown/{tests → __test__}/index.test.js +2 -2
  55. package/es/dropdown/index.js +4 -73
  56. package/es/dropdown/style/index.css +1 -1
  57. package/es/dropdown/style/index.js +2 -0
  58. package/es/ficon/index.js +23 -13
  59. package/es/form/index.js +171 -6
  60. package/es/form/{Item.js → item.js} +53 -53
  61. package/es/form/style/index.css +1 -1
  62. package/es/grid/index.js +37 -25
  63. package/es/icon/index.js +32 -21
  64. package/es/index.js +9 -61
  65. package/es/input/index.js +345 -28
  66. package/es/input/style/index.css +1 -1
  67. package/es/input/util.js +18 -26
  68. package/es/lib/withDragDropContext.js +2 -2
  69. package/es/loading/index.js +129 -5
  70. package/es/loading/style/index.css +0 -0
  71. package/es/loading/style/index.js +0 -0
  72. package/es/locales/en-US.js +11 -45
  73. package/es/locales/index.js +2 -16
  74. package/es/locales/zh-CN.js +12 -46
  75. package/es/menu/Item.js +41 -32
  76. package/es/menu/ItemGroup.js +81 -0
  77. package/es/menu/SubMenu.js +74 -55
  78. package/es/menu/Title.js +42 -36
  79. package/es/menu/index.js +419 -12
  80. package/es/menu/style/index.css +1 -1
  81. package/es/modal/__test__/index.test.js +123 -0
  82. package/es/modal/index.js +61 -77
  83. package/es/modal/style/index.css +1 -1
  84. package/es/nav-menu/NavMenu.js +45 -31
  85. package/es/nav-menu/__test__/index.test.js +2 -2
  86. package/es/nav-menu/index.js +2 -2
  87. package/es/notification/__test__/index.test.js +56 -0
  88. package/es/notification/index.js +231 -68
  89. package/es/notification/style/index.css +1 -1
  90. package/es/notification/style/index.js +0 -0
  91. package/es/pagination/Pager.js +8 -6
  92. package/es/pagination/Pagination.js +115 -124
  93. package/es/pagination/__test__/index.test.js +140 -0
  94. package/es/pagination/index.js +8 -9
  95. package/es/pagination/style/index.css +1 -1
  96. package/es/panel/index.js +33 -23
  97. package/es/popover/__test__/index.test.js +2 -2
  98. package/es/popover/index.js +69 -71
  99. package/es/popper/index.js +54 -64
  100. package/es/popper/style/index.css +1 -1
  101. package/es/progress/BarProgress.js +43 -109
  102. package/es/progress/CircleProgress.js +10 -9
  103. package/es/progress/DashboardProgress.js +9 -7
  104. package/es/progress/index.js +100 -8
  105. package/es/progress/style/index.css +1 -1
  106. package/es/radio/{radio-legacy/__test__ → __test__}/index.test.js +10 -10
  107. package/es/radio/index.js +216 -10
  108. package/es/radio/style/index.css +1 -1
  109. package/es/rate/Icons.js +2 -2
  110. package/es/rate/Rate.js +90 -65
  111. package/es/rate/__test__/index.test.js +54 -0
  112. package/es/rate/index.js +2 -5
  113. package/es/rate/style/index.css +1 -1
  114. package/es/select/Option.js +93 -0
  115. package/es/select/Select.js +253 -325
  116. package/es/select/SelectDropdown.js +63 -215
  117. package/es/select/SelectInput.js +54 -88
  118. package/es/select/__test__/index.test.js +429 -0
  119. package/es/select/index.js +4 -6
  120. package/es/select/style/select-dropdown.css +1 -1
  121. package/es/select/style/select-input.css +1 -1
  122. package/es/stepper/index.js +127 -21
  123. package/es/stepper/style/index.css +1 -1
  124. package/es/style/color/colors.css +0 -0
  125. package/es/style/icon/diyIcon.css +1 -1
  126. package/es/style/icon/index.css +1 -1
  127. package/es/style/index.css +0 -0
  128. package/es/style/mixins/colors.css +0 -0
  129. package/es/style/mixins/index.css +0 -0
  130. package/es/style/theme/dark.css +0 -0
  131. package/es/style/theme/default.css +0 -0
  132. package/es/switch/{__tests__ → __test__}/index.test.js +2 -31
  133. package/es/switch/index.js +36 -24
  134. package/es/switch/style/index.css +1 -1
  135. package/es/table/__test__/index.test.js +73 -0
  136. package/es/table/{Body.js → body.js} +52 -36
  137. package/es/table/checkbox/index.js +36 -33
  138. package/es/table/clickOuterside.js +115 -0
  139. package/es/table/{Footer.js → footer.js} +41 -24
  140. package/es/table/{Header.js → header.js} +54 -41
  141. package/es/table/index.js +300 -262
  142. package/es/table/menu/index.js +34 -32
  143. package/es/table/pover.js +154 -0
  144. package/es/table/prefix.js +2 -2
  145. package/es/table/style/Table.css +1 -1
  146. package/es/table/style/index.css +1 -1
  147. package/es/table/tableContent.js +120 -0
  148. package/es/tabs/ItemDropdown.js +51 -39
  149. package/es/tabs/TabPane.js +35 -25
  150. package/es/tabs/Tabs.js +91 -98
  151. package/es/tabs/index.js +3 -9
  152. package/es/tabs/style/index.css +1 -1
  153. package/es/timeline/__test__/index.test.js +49 -0
  154. package/es/timeline/foldingItem.js +82 -0
  155. package/es/timeline/index.js +127 -203
  156. package/es/timeline/style/index.css +1 -1
  157. package/es/tooltip/__test__/index.test.js +67 -0
  158. package/es/tooltip/index.js +39 -86
  159. package/es/tooltip/style/index.css +1 -1
  160. package/es/transfer/Item.js +44 -53
  161. package/es/transfer/__test__/index.test.js +11 -0
  162. package/es/transfer/index.js +443 -4
  163. package/es/transfer/style/index.css +1 -1
  164. package/es/tree/Tree.js +86 -76
  165. package/es/tree/TreeDivider.js +3 -3
  166. package/es/tree/TreeItem.js +108 -204
  167. package/es/tree/TreeNode.js +318 -457
  168. package/es/tree/index.js +2 -9
  169. package/es/tree/style/index.css +1 -1
  170. package/es/tree/util.js +257 -9
  171. package/es/upload/{upload-legacy/Preview.js → Preview.js} +39 -33
  172. package/es/upload/Upload.js +193 -289
  173. package/es/upload/UploadAvatar.js +58 -44
  174. package/es/upload/UploadClick.js +45 -49
  175. package/es/upload/UploadDrag.js +43 -44
  176. package/es/upload/UploadPhoto.js +55 -70
  177. package/es/upload/UploadPictureCard.js +44 -39
  178. package/es/upload/index.js +71 -8
  179. package/es/upload/style/index.css +1 -1
  180. package/es/upload/tool.js +1 -0
  181. package/package.json +4 -1
  182. package/es/_util/SwitchVersion.js +0 -44
  183. package/es/_util/depreactedPropsCompat.js +0 -58
  184. package/es/_util/index.js +0 -32
  185. package/es/alert/Alert.js +0 -134
  186. package/es/alert/__tests__/index.test.js +0 -88
  187. package/es/badge/Badge.js +0 -90
  188. package/es/badge/__tests__/index.test.js +0 -82
  189. package/es/breadcrumb/__tests__/index.test.js +0 -61
  190. package/es/breadcrumb/index.js +0 -93
  191. package/es/breadcrumb/style/index.css +0 -1
  192. package/es/button/__tests__/index.test.js +0 -219
  193. package/es/card/__tests__/index.test.js +0 -169
  194. package/es/carousel/__tests__/index.test.js +0 -104
  195. package/es/carousel/index.js +0 -227
  196. package/es/carousel/style/index.css +0 -1
  197. package/es/carousel/style/index.js +0 -3
  198. package/es/cascader/Menu.js +0 -174
  199. package/es/cascader/__tests__/index.test.js +0 -389
  200. package/es/checkbox/Checkbox.js +0 -144
  201. package/es/checkbox/Group.js +0 -202
  202. package/es/checkbox/__tests__/index.test.js +0 -226
  203. package/es/checkbox/checkbox-legacy/CheckBox.js +0 -165
  204. package/es/checkbox/checkbox-legacy/index.js +0 -15
  205. package/es/checkbox/checkbox-legacy/style/index.css +0 -1
  206. package/es/checkbox/checkbox-legacy/style/index.js +0 -3
  207. package/es/collapse/__tests__/index.test.js +0 -111
  208. package/es/counter/Counter.js +0 -343
  209. package/es/counter/__tests__/index.test.js +0 -134
  210. package/es/counter/counter-legacy/index.js +0 -271
  211. package/es/date-picker/TimeList.js +0 -254
  212. package/es/date-picker/YMRangePanel.js +0 -372
  213. package/es/date-picker/__tests__/index.test.js +0 -961
  214. package/es/date-picker/datepicker-legacy/BasePicker.js +0 -519
  215. package/es/date-picker/datepicker-legacy/Calender.js +0 -430
  216. package/es/date-picker/datepicker-legacy/DatePanel.js +0 -463
  217. package/es/date-picker/datepicker-legacy/DatePicker.js +0 -107
  218. package/es/date-picker/datepicker-legacy/DateRangePanel.js +0 -496
  219. package/es/date-picker/datepicker-legacy/Modal.js +0 -71
  220. package/es/date-picker/datepicker-legacy/Time.js +0 -413
  221. package/es/date-picker/datepicker-legacy/TimePanel.js +0 -93
  222. package/es/date-picker/datepicker-legacy/TimePeriodPanel.js +0 -126
  223. package/es/date-picker/datepicker-legacy/TimePicker.js +0 -82
  224. package/es/date-picker/datepicker-legacy/TimeRangePanel.js +0 -98
  225. package/es/date-picker/datepicker-legacy/Type.js +0 -31
  226. package/es/date-picker/datepicker-legacy/WeekRangePanel.js +0 -345
  227. package/es/date-picker/datepicker-legacy/constants.js +0 -79
  228. package/es/date-picker/datepicker-legacy/dateUtil.js +0 -258
  229. package/es/date-picker/datepicker-legacy/index.js +0 -15
  230. package/es/date-picker/datepicker-legacy/local.js +0 -11
  231. package/es/date-picker/datepicker-legacy/style/index.css +0 -1
  232. package/es/date-picker/datepicker-legacy/style/index.js +0 -3
  233. package/es/date-picker/datepicker-legacy/style/timepicker.css +0 -1
  234. package/es/date-picker/datepicker-legacy/util.js +0 -60
  235. package/es/date-picker/toLunar.js +0 -172
  236. package/es/dropdown/DropdownButton.js +0 -106
  237. package/es/dropdown/DropdownMenu.js +0 -111
  238. package/es/dropdown/DropdownMenuItem.js +0 -178
  239. package/es/dropdown/__tests__/index.test.js +0 -317
  240. package/es/dropdown/utils.js +0 -35
  241. package/es/form/Form.js +0 -184
  242. package/es/form/__tests__/index.test.js +0 -575
  243. package/es/grid/__tests__/index.test.js +0 -104
  244. package/es/input/Input.js +0 -412
  245. package/es/input/__tests__/index.test.js +0 -381
  246. package/es/input/input-legacy/index.js +0 -353
  247. package/es/input/input-legacy/util.js +0 -176
  248. package/es/loading/Loading.js +0 -181
  249. package/es/loading/__tests__/index.test.js +0 -110
  250. package/es/locales/zh-Hant-HK.js +0 -121
  251. package/es/locales/zh-Hant-TW.js +0 -123
  252. package/es/menu/Menu.js +0 -422
  253. package/es/menu/__tests__/index.test.js +0 -279
  254. package/es/message/__tests__/index.test.js +0 -75
  255. package/es/message/index.js +0 -58
  256. package/es/message/style/index.css +0 -1
  257. package/es/message/style/index.js +0 -5
  258. package/es/modal/__tests__/index.test.js +0 -178
  259. package/es/nav-menu/__tests__/index.test.js +0 -27
  260. package/es/notice/Notice.js +0 -142
  261. package/es/notice/NoticeContainer.js +0 -113
  262. package/es/notice/__tests__/index.test.js +0 -174
  263. package/es/notice/index.js +0 -66
  264. package/es/notice/style/index.css +0 -1
  265. package/es/notice/style/index.js +0 -5
  266. package/es/notification/HandleNotification/index.js +0 -224
  267. package/es/notification/HandleNotification/style/index.css +0 -1
  268. package/es/notification/HandleNotification/style/index.js +0 -5
  269. package/es/notification/__tests__/index.test.js +0 -118
  270. package/es/pagination/__tests__/index.test.js +0 -248
  271. package/es/popover/__tests__/index.test.js +0 -152
  272. package/es/preview/index.js +0 -527
  273. package/es/preview/style/index.css +0 -1
  274. package/es/preview/style/index.js +0 -3
  275. package/es/progress/Progress.js +0 -110
  276. package/es/progress/__tests__/index.test.js +0 -131
  277. package/es/radio/Group.js +0 -203
  278. package/es/radio/Radio.js +0 -151
  279. package/es/radio/__tests__/index.test.js +0 -128
  280. package/es/radio/radio-legacy/index.js +0 -222
  281. package/es/radio/radio-legacy/style/index.css +0 -1
  282. package/es/radio/radio-legacy/style/index.js +0 -3
  283. package/es/rate/__tests__/index.test.js +0 -124
  284. package/es/select/__tests__/index.test.js +0 -505
  285. package/es/select/select-legacy/Option.js +0 -81
  286. package/es/select/select-legacy/Select.js +0 -710
  287. package/es/select/select-legacy/SelectDropdown.js +0 -164
  288. package/es/select/select-legacy/SelectInput.js +0 -312
  289. package/es/select/select-legacy/common.js +0 -19
  290. package/es/select/select-legacy/index.js +0 -16
  291. package/es/stepper/Stepper.js +0 -151
  292. package/es/stepper/__tests__/index.test.js +0 -161
  293. package/es/table/ClickOuterside.js +0 -103
  294. package/es/table/TableContent.js +0 -109
  295. package/es/table/__tests__/index.test.js +0 -133
  296. package/es/table/checkbox/style/index.css +0 -1
  297. package/es/table/checkbox/style/index.js +0 -3
  298. package/es/tabs/__tests__/index.test.js +0 -333
  299. package/es/tabs/tabs-legacy/ItemDropdown.js +0 -170
  300. package/es/tabs/tabs-legacy/TabPane.js +0 -78
  301. package/es/tabs/tabs-legacy/Tabs.js +0 -299
  302. package/es/tabs/tabs-legacy/index.js +0 -18
  303. package/es/tabs/tabs-legacy/style/index.css +0 -1
  304. package/es/tabs/tabs-legacy/style/index.js +0 -3
  305. package/es/tag/__tests__/index.test.js +0 -46
  306. package/es/tag/index.js +0 -94
  307. package/es/tag/style/index.css +0 -1
  308. package/es/tag/style/index.js +0 -3
  309. package/es/timeline/__tests__/index.test.js +0 -198
  310. package/es/tooltip/__tests__/index.test.js +0 -170
  311. package/es/transfer/Transfer.js +0 -566
  312. package/es/transfer/__tests__/index.test.js +0 -210
  313. package/es/tree/IconLoading.js +0 -38
  314. package/es/tree/__tests__/index.test.js +0 -603
  315. package/es/tree/tree-legacy/Tree.js +0 -337
  316. package/es/tree/tree-legacy/TreeDivider.js +0 -25
  317. package/es/tree/tree-legacy/TreeItem.js +0 -333
  318. package/es/tree/tree-legacy/TreeNode.js +0 -719
  319. package/es/tree/tree-legacy/index.js +0 -13
  320. package/es/tree/tree-legacy/style/index.css +0 -1
  321. package/es/tree/tree-legacy/style/index.js +0 -3
  322. package/es/tree/tree-legacy/util.js +0 -434
  323. package/es/upload/__tests__/index.test.js +0 -760
  324. package/es/upload/main.js +0 -91
  325. package/es/upload/upload-legacy/Upload.js +0 -435
  326. package/es/upload/upload-legacy/UploadAvatar.js +0 -322
  327. package/es/upload/upload-legacy/UploadClick.js +0 -125
  328. package/es/upload/upload-legacy/UploadDrag.js +0 -180
  329. package/es/upload/upload-legacy/UploadPhoto.js +0 -183
  330. package/es/upload/upload-legacy/UploadPictureCard.js +0 -126
  331. package/es/upload/upload-legacy/index.js +0 -75
  332. package/es/upload/upload-legacy/style/index.css +0 -1
  333. package/es/upload/upload-legacy/style/index.js +0 -5
  334. package/es/upload/upload-legacy/tool.js +0 -84
  335. package/es/watermark/index.js +0 -101
  336. package/es/watermark/watermark.js +0 -252
  337. /package/es/checkbox/{checkbox-legacy/common.js → common.js} +0 -0
  338. /package/es/{breadcrumb/style → style}/index.js +0 -0
  339. /package/es/upload/{upload-legacy/style → style}/preview.css +0 -0
  340. /package/es/upload/{upload-legacy/style → style}/preview.js +0 -0
@@ -1,519 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _react = _interopRequireWildcard(require("react"));
27
-
28
- var _Modal = _interopRequireDefault(require("./Modal"));
29
-
30
- var _classnames = _interopRequireDefault(require("classnames"));
31
-
32
- var _constants = require("./constants");
33
-
34
- var _propTypes = _interopRequireDefault(require("prop-types"));
35
-
36
- var _Type = _interopRequireDefault(require("./Type"));
37
-
38
- var _dateUtil = require("./dateUtil");
39
-
40
- var _dateFns = require("date-fns");
41
-
42
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
-
44
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
-
46
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
47
-
48
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
49
-
50
- var BasePicker = /*#__PURE__*/function (_Component) {
51
- (0, _inherits2["default"])(BasePicker, _Component);
52
-
53
- var _super = _createSuper(BasePicker);
54
-
55
- function BasePicker(props) {
56
- var _this;
57
-
58
- (0, _classCallCheck2["default"])(this, BasePicker);
59
- _this = _super.call(this, props);
60
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "inputRoot", null);
61
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "input", null);
62
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "rInput", null);
63
- _this.state = {
64
- showPanel: false,
65
- style: {},
66
- date: null,
67
- isFocus: false,
68
- // input 框内的显示的时间内容
69
- texts: ['', ''],
70
- placeholder: '',
71
- rText: '',
72
- leftPlaceholder: '',
73
- rightPlaceholder: '',
74
- format: ''
75
- };
76
- return _this;
77
- }
78
-
79
- (0, _createClass2["default"])(BasePicker, [{
80
- key: "setPlaceholder",
81
- value: function setPlaceholder() {
82
- var _this$props = this.props,
83
- placeholder = _this$props.placeholder,
84
- localeDatas = _this$props.localeDatas,
85
- type = _this$props.type;
86
- var tempPlaceholder = localeDatas.datePicker.placeholders[type] || localeDatas.datePicker.placeholder;
87
- var leftPlaceholder = tempPlaceholder;
88
- var rightPlaceholder = tempPlaceholder;
89
-
90
- if (placeholder instanceof Array) {
91
- leftPlaceholder = placeholder[0];
92
- rightPlaceholder = placeholder[1] || placeholder[0];
93
- } else if (typeof placeholder === 'string') {
94
- leftPlaceholder = placeholder;
95
- rightPlaceholder = placeholder;
96
- }
97
-
98
- this.setState({
99
- leftPlaceholder: leftPlaceholder,
100
- rightPlaceholder: rightPlaceholder
101
- });
102
- }
103
- }, {
104
- key: "_parseProps",
105
- value: function _parseProps(props, callback) {
106
- var _this2 = this;
107
-
108
- var value = props.value,
109
- showTime = props.showTime,
110
- type = props.type,
111
- format = props.format,
112
- localeDatas = props.localeDatas,
113
- weekOffset = props.weekOffset;
114
- format = format || _constants.FORMATS[type];
115
- var date = new Date(); // 当前时间
116
-
117
- var noText = false;
118
- /**
119
- * value 可能的格式:
120
- * '' | undefined | null | Date | String | Number | {start: xxx, end: xxx}
121
- */
122
-
123
- if (value === '' || !value) {
124
- // value 未传入情况
125
- date = new Date();
126
- noText = true;
127
- }
128
-
129
- if (typeof value === 'number' || typeof value === 'string' && value.trim().length > 4) {
130
- // value 为数字(times)
131
- date = (0, _dateUtil.toDate)(value);
132
- }
133
-
134
- if (value instanceof Date) {
135
- date = value;
136
- }
137
-
138
- if (type.includes('range') || type === 'timeperiod') {
139
- if (value instanceof Date || !value) {
140
- // 如果为时间段选择,则取默认的第一个范围
141
- date = {
142
- startDate: (0, _dateUtil.startOfDay)(date),
143
- endDate: type === 'timeperiod' ? (0, _dateFns.addHours)((0, _dateUtil.startOfDay)(date), 4) : (0, _dateUtil.endOfDay)(date)
144
- };
145
- }
146
-
147
- if (value && value.start && value.end) {
148
- date = {
149
- startDate: value.start,
150
- endDate: value.end
151
- };
152
- }
153
- }
154
-
155
- var leftText = noText ? '' : (0, _constants.formatterDate)(type, date.startDate || date, format, showTime, localeDatas, weekOffset);
156
- var rightText = noText ? '' : (0, _constants.formatterDate)(type, date.endDate || date, format, showTime, localeDatas, weekOffset);
157
- this.setState({
158
- texts: [leftText, rightText],
159
- date: date,
160
- format: format
161
- }, function () {
162
- callback && callback(_this2.state.date);
163
- });
164
- }
165
- }, {
166
- key: "componentDidMount",
167
- value: function componentDidMount() {
168
- var _this3 = this;
169
-
170
- this._parseProps(this.props, function (date) {
171
- if (date.startDate && date.endDate) {
172
- date = {
173
- start: new Date(date.startDate),
174
- end: new Date(date.endDate)
175
- };
176
- } else {
177
- date = new Date(date);
178
- }
179
-
180
- _this3.props.value && _this3.props.onChange && _this3.props.onChange(date);
181
- });
182
-
183
- this.setPlaceholder();
184
- var rect = this.inputRoot.getBoundingClientRect();
185
- this.calcPanelPos(rect);
186
- }
187
- }, {
188
- key: "calcPanelPos",
189
- value: function calcPanelPos(rect) {
190
- var _this$props2 = this.props,
191
- showTime = _this$props2.showTime,
192
- type = _this$props2.type;
193
-
194
- var _w = type.indexOf('range') !== -1 ? 578 : 288;
195
-
196
- var _h = 298;
197
-
198
- if (type === 'daterange' && showTime) {
199
- _h = 344;
200
- }
201
-
202
- var _cw = document.body.clientWidth || document.documentElement.clientWidth;
203
-
204
- var _ch = document.body.clientHeight || document.documentElement.clientHeight;
205
-
206
- var _st = document.body.scrollTop || document.documentElement.scrollTop;
207
-
208
- var left = rect.left,
209
- width = rect.width,
210
- top = rect.top,
211
- height = rect.height;
212
-
213
- var _top = rect.top + rect.height + _st;
214
-
215
- if (left + _w > _cw) {
216
- left = left + width - _w;
217
- }
218
-
219
- if (top + _h + height > _ch) {
220
- _top = top - _h + _st;
221
- }
222
-
223
- this.setState({
224
- style: {
225
- position: 'absolute',
226
- left: left,
227
- top: _top
228
- }
229
- });
230
- }
231
- }, {
232
- key: "componentWillReceiveProps",
233
- value: function componentWillReceiveProps(nextProps) {
234
- this._parseProps(nextProps);
235
- }
236
- }, {
237
- key: "onPick",
238
- value: function onPick(date, showPanel) {
239
- var _this4 = this;
240
-
241
- var _this$props3 = this.props,
242
- type = _this$props3.type,
243
- showTime = _this$props3.showTime,
244
- localeDatas = _this$props3.localeDatas,
245
- weekOffset = _this$props3.weekOffset;
246
- var format = this.state.format;
247
- this.setState({
248
- date: date,
249
- texts: [(0, _constants.formatterDate)(type, date.startDate || date, format, showTime, localeDatas, weekOffset), (0, _constants.formatterDate)(type, date.endDate, format, showTime, localeDatas, weekOffset)],
250
- showPanel: showPanel,
251
- isFocus: false
252
- }, function () {
253
- if (!showPanel) {
254
- _this4.callback();
255
- }
256
- });
257
- }
258
- }, {
259
- key: "callback",
260
- value: function callback() {
261
- var _this$props4 = this.props,
262
- type = _this$props4.type,
263
- onChange = _this$props4.onChange,
264
- weekOffset = _this$props4.weekOffset;
265
- var date = this.state.date;
266
-
267
- if (onChange) {
268
- var startDate = date.startDate,
269
- endDate = date.endDate;
270
- var _weekOffset = {
271
- weekStartsOn: weekOffset
272
- };
273
-
274
- if (type === 'week') {
275
- onChange({
276
- start: (0, _dateUtil.startOfWeek)(date, _weekOffset),
277
- end: (0, _dateUtil.endOfWeek)(date, _weekOffset)
278
- });
279
- return;
280
- }
281
-
282
- if (startDate && endDate) {
283
- if (type === 'weekrange') {
284
- onChange({
285
- start: (0, _dateUtil.startOfWeek)(startDate, _weekOffset),
286
- end: (0, _dateUtil.endOfWeek)(endDate, _weekOffset)
287
- });
288
- } else if (['timerange', 'timeperiod', 'daterange'].includes(type)) {
289
- onChange({
290
- start: startDate,
291
- end: endDate
292
- });
293
- } else {
294
- onChange({
295
- start: (0, _dateUtil.startOfDay)(startDate),
296
- end: (0, _dateUtil.endOfDay)(endDate)
297
- });
298
- }
299
- } else {
300
- onChange(date);
301
- }
302
- }
303
- }
304
- }, {
305
- key: "timeCancel",
306
- value: function timeCancel() {
307
- var _this$state = this.state,
308
- tempDate = _this$state.tempDate,
309
- format = _this$state.format;
310
- var _this$props5 = this.props,
311
- type = _this$props5.type,
312
- showTime = _this$props5.showTime,
313
- localeDatas = _this$props5.localeDatas,
314
- weekOffset = _this$props5.weekOffset;
315
-
316
- if (tempDate) {
317
- this.setState({
318
- date: new Date(tempDate),
319
- text: (0, _constants.formatterDate)(type, new Date(tempDate), format, showTime, localeDatas, weekOffset),
320
- showPanel: false
321
- });
322
- } else {
323
- this.setState({
324
- showPanel: false,
325
- isFocus: false
326
- });
327
- }
328
- }
329
- }, {
330
- key: "clickOutSide",
331
- value: function clickOutSide(e) {
332
- var tar = e.target;
333
-
334
- if (tar.className.indexOf('clear') !== -1) {
335
- this.setState({
336
- texts: ['', ''],
337
- showPanel: false
338
- });
339
- return false;
340
- }
341
-
342
- if (tar !== this.input && tar !== this.rInput) {
343
- this.timeCancel();
344
- }
345
-
346
- this.callback();
347
- }
348
- }, {
349
- key: "_input",
350
- value: function _input(text) {
351
- var _this5 = this;
352
-
353
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'input';
354
-
355
- var placeholder = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'Please Select...';
356
- var _this$props6 = this.props,
357
- disabled = _this$props6.disabled,
358
- type = _this$props6.type,
359
- _onChange = _this$props6.onChange;
360
- return /*#__PURE__*/_react["default"].createElement("input", {
361
- type: "text",
362
- ref: function ref(el) {
363
- _this5[_ref] = el;
364
- },
365
- placeholder: placeholder,
366
- className: disabled ? 'disabled' : '',
367
- disabled: disabled,
368
- onChange: function onChange(e) {
369
- (0, _constants.isVaildDate)(new Date(e.target.value)) && type === 'date' && _onChange(new Date(e.target.value));
370
-
371
- _this5.setState({
372
- text: e.target.value
373
- });
374
- },
375
- onFocus: function onFocus(e) {
376
- _this5.setState({
377
- showPanel: true,
378
- isFocus: true
379
- });
380
-
381
- _this5.calcPanelPos(_this5.inputRoot.getBoundingClientRect());
382
- },
383
- value: text
384
- });
385
- }
386
- }, {
387
- key: "_clear",
388
- value: function _clear() {
389
- var onChange = this.props.onChange;
390
-
391
- if (onChange) {
392
- onChange(null);
393
- }
394
-
395
- this.setState({
396
- texts: ['', ''],
397
- isFocus: false
398
- });
399
- }
400
- }, {
401
- key: "_icon",
402
- value: function _icon() {
403
- var _this6 = this;
404
-
405
- var isFocus = this.state.isFocus;
406
- var iconCls = (0, _classnames["default"])('hi-datepicker-legacy__input-icon', 'hi-icon', isFocus ? 'icon-close-circle clear' : 'icon-date');
407
- return isFocus ? /*#__PURE__*/_react["default"].createElement("span", {
408
- className: iconCls,
409
- onClick: this._clear.bind(this)
410
- }) : /*#__PURE__*/_react["default"].createElement("span", {
411
- className: iconCls,
412
- onClick: function onClick(e) {
413
- if (_this6.props.disabled) return;
414
-
415
- _this6.calcPanelPos(_this6.inputRoot.getBoundingClientRect());
416
-
417
- _this6.setState({
418
- showPanel: true,
419
- isFocus: true
420
- });
421
- }
422
- });
423
- }
424
- }, {
425
- key: "renderRangeInput",
426
- value: function renderRangeInput() {
427
- var _this$props7 = this.props,
428
- localeDatas = _this$props7.localeDatas,
429
- disabled = _this$props7.disabled,
430
- showTime = _this$props7.showTime;
431
-
432
- var _cls = (0, _classnames["default"])('hi-datepicker-legacy__input', 'hi-datepicker-legacy__input--range', showTime && 'hi-datepicker-legacy__input--range-time', disabled && 'hi-datepicker-legacy__input--disabled');
433
-
434
- return /*#__PURE__*/_react["default"].createElement("div", {
435
- className: _cls
436
- }, this._input(this.state.texts[0], 'input', this.state.leftPlaceholder), /*#__PURE__*/_react["default"].createElement("span", null, localeDatas.datePicker.to), this._input(this.state.texts[1], 'rInput', this.state.rightPlaceholder), this._icon());
437
- }
438
- }, {
439
- key: "renderNormalInput",
440
- value: function renderNormalInput() {
441
- var _this$props8 = this.props,
442
- disabled = _this$props8.disabled,
443
- showTime = _this$props8.showTime;
444
-
445
- var _cls = (0, _classnames["default"])('hi-datepicker-legacy__input', 'hi-datepicker-legacy__input--normal', disabled && 'hi-datepicker-legacy__input--disabled', showTime && 'hi-datepicker-legacy__input--middle');
446
-
447
- return /*#__PURE__*/_react["default"].createElement("div", {
448
- className: _cls
449
- }, this._input(this.state.texts[0], 'input', this.state.leftPlaceholder), this._icon());
450
- }
451
- }, {
452
- key: "render",
453
- value: function render() {
454
- var _this7 = this;
455
-
456
- var _this$props9 = this.props,
457
- type = _this$props9.type,
458
- showTime = _this$props9.showTime;
459
- return /*#__PURE__*/_react["default"].createElement("span", {
460
- ref: function ref(el) {
461
- _this7.inputRoot = el;
462
- },
463
- className: "hi-datepicker-legacy__input-root"
464
- }, type.indexOf('range') !== -1 || type === 'timeperiod' ? this.renderRangeInput() : this.renderNormalInput(), this.state.showPanel ? /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
465
- clickOutSide: this.clickOutSide.bind(this),
466
- showTime: showTime
467
- }, this.initPanel(this.state, this.props)) : null);
468
- }
469
- }]);
470
- return BasePicker;
471
- }(_react.Component);
472
-
473
- (0, _defineProperty2["default"])(BasePicker, "propTypes", {
474
- type: _propTypes["default"].oneOf(Object.values(_Type["default"])),
475
- value: function value(props, propName, componentName) {
476
- // Invalid Date
477
- var val = props[propName];
478
-
479
- if (val === undefined || val === null) {
480
- return null;
481
- }
482
-
483
- if (val.start && val.end) {
484
- var _start = (0, _dateUtil.dateFormat)(val.start);
485
-
486
- var _end = (0, _dateUtil.dateFormat)(val.end);
487
-
488
- if (_start === 'Invalid Date' || _end === 'Invalid Date') {
489
- return new Error("Invalid prop ".concat(propName, " supplied to ").concat(componentName, ". Validation failed. start or end is an invalid date."));
490
- }
491
- } else {
492
- if ((0, _dateUtil.dateFormat)(val) === 'Invalid Date') {
493
- return new Error("Invalid prop ".concat(propName, " supplied to ").concat(componentName, ". Validation failed. value is an invalid data."));
494
- }
495
- }
496
- },
497
- onChange: _propTypes["default"].func,
498
- format: _propTypes["default"].string,
499
- showTime: _propTypes["default"].bool,
500
- disabled: _propTypes["default"].bool,
501
- showWeekNumber: _propTypes["default"].bool,
502
- weekOffset: _propTypes["default"].oneOf([0, 1]),
503
- timeInterval: function timeInterval(props, propName, componentName) {
504
- var val = props[propName];
505
-
506
- if (val < 5 || val > 480 || val > 60 && val % 60 !== 0 || val < 60 && 60 % val !== 0) {
507
- return new Error("Invalid prop ".concat(propName, " supplied to ").concat(componentName, ". This value must be greater than 5 and less than 480 and is a multiple of 60."));
508
- }
509
- }
510
- });
511
- (0, _defineProperty2["default"])(BasePicker, "defaultProps", {
512
- type: 'date',
513
- disabled: false,
514
- showWeekNumber: true,
515
- weekOffset: 0,
516
- timeInterval: 240
517
- });
518
- var _default = BasePicker;
519
- exports["default"] = _default;