@hi-ui/hiui 2.15.11 → 2.15.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 (344) hide show
  1. package/es/_util/SwitchVersion.js +40 -0
  2. package/es/_util/depreactedPropsCompat.js +58 -0
  3. package/es/_util/index.js +31 -0
  4. package/es/_util/warning.js +2 -2
  5. package/es/alert/Alert.js +126 -0
  6. package/es/alert/__tests__/index.test.js +84 -0
  7. package/es/alert/index.js +6 -147
  8. package/es/alert/style/index.css +1 -1
  9. package/es/badge/Badge.js +82 -0
  10. package/es/badge/__tests__/index.test.js +82 -0
  11. package/es/badge/index.js +9 -87
  12. package/es/badge/style/index.css +1 -1
  13. package/es/badge/style/index.js +0 -0
  14. package/es/breadcrumb/__tests__/index.test.js +61 -0
  15. package/es/breadcrumb/index.js +85 -0
  16. package/es/breadcrumb/style/index.css +1 -0
  17. package/es/button/Button.js +62 -60
  18. package/es/button/ButtonGroup.js +24 -40
  19. package/es/button/IconLoading.js +6 -6
  20. package/es/button/__tests__/index.test.js +221 -0
  21. package/es/button/index.js +3 -2
  22. package/es/button/style/index.css +1 -1
  23. package/es/card/__tests__/index.test.js +179 -0
  24. package/es/card/index.js +61 -57
  25. package/es/card/style/index.css +1 -1
  26. package/es/carousel/__tests__/index.test.js +104 -0
  27. package/es/carousel/index.js +219 -0
  28. package/es/carousel/style/index.css +1 -0
  29. package/es/carousel/style/index.js +3 -0
  30. package/es/cascader/Cascader.js +190 -133
  31. package/es/cascader/Menu.js +168 -0
  32. package/es/cascader/__tests__/index.test.js +392 -0
  33. package/es/cascader/index.js +5 -2
  34. package/es/cascader/style/cascader.css +1 -1
  35. package/es/cascader/style/menu.css +1 -1
  36. package/es/checkbox/Checkbox.js +136 -0
  37. package/es/checkbox/Group.js +194 -0
  38. package/es/checkbox/__tests__/index.test.js +226 -0
  39. package/es/checkbox/checkbox-legacy/Base.js +212 -0
  40. package/es/checkbox/checkbox-legacy/CheckBox.js +157 -0
  41. package/es/checkbox/checkbox-legacy/index.js +15 -0
  42. package/es/checkbox/checkbox-legacy/style/index.css +1 -0
  43. package/es/checkbox/checkbox-legacy/style/index.js +3 -0
  44. package/es/checkbox/index.js +13 -4
  45. package/es/checkbox/style/index.css +1 -1
  46. package/es/collapse/__tests__/index.test.js +111 -0
  47. package/es/collapse/index.js +88 -110
  48. package/es/collapse/style/index.css +1 -1
  49. package/es/confirm/index.js +39 -60
  50. package/es/context/index.js +45 -51
  51. package/es/counter/Counter.js +339 -0
  52. package/es/counter/__tests__/index.test.js +134 -0
  53. package/es/counter/counter-legacy/index.js +267 -0
  54. package/es/counter/index.js +6 -270
  55. package/es/counter/style/index.css +1 -1
  56. package/es/date-picker/BasePicker.js +380 -302
  57. package/es/date-picker/Calender.js +326 -98
  58. package/es/date-picker/DatePanel.js +194 -213
  59. package/es/date-picker/DatePicker.js +143 -47
  60. package/es/date-picker/DateRangePanel.js +272 -208
  61. package/es/date-picker/Modal.js +18 -32
  62. package/es/date-picker/Time.js +231 -345
  63. package/es/date-picker/TimeList.js +246 -0
  64. package/es/date-picker/TimePanel.js +28 -41
  65. package/es/date-picker/TimePeriodPanel.js +27 -46
  66. package/es/date-picker/TimePicker.js +44 -46
  67. package/es/date-picker/TimeRangePanel.js +33 -51
  68. package/es/date-picker/Type.js +5 -1
  69. package/es/date-picker/WeekRangePanel.js +254 -175
  70. package/es/date-picker/YMRangePanel.js +364 -0
  71. package/es/date-picker/__tests__/index.test.js +956 -0
  72. package/es/date-picker/constants.js +14 -28
  73. package/es/date-picker/dateUtil.js +221 -52
  74. package/es/date-picker/datepicker-legacy/BasePicker.js +511 -0
  75. package/es/date-picker/datepicker-legacy/Calender.js +422 -0
  76. package/es/date-picker/datepicker-legacy/DatePanel.js +455 -0
  77. package/es/date-picker/datepicker-legacy/DatePicker.js +103 -0
  78. package/es/date-picker/datepicker-legacy/DateRangePanel.js +488 -0
  79. package/es/date-picker/datepicker-legacy/Modal.js +67 -0
  80. package/es/date-picker/datepicker-legacy/Time.js +405 -0
  81. package/es/date-picker/datepicker-legacy/TimePanel.js +85 -0
  82. package/es/date-picker/datepicker-legacy/TimePeriodPanel.js +118 -0
  83. package/es/date-picker/datepicker-legacy/TimePicker.js +78 -0
  84. package/es/date-picker/datepicker-legacy/TimeRangePanel.js +90 -0
  85. package/es/date-picker/datepicker-legacy/Type.js +31 -0
  86. package/es/date-picker/datepicker-legacy/WeekRangePanel.js +337 -0
  87. package/es/date-picker/datepicker-legacy/constants.js +79 -0
  88. package/es/date-picker/datepicker-legacy/dateUtil.js +258 -0
  89. package/es/date-picker/datepicker-legacy/index.js +15 -0
  90. package/es/date-picker/datepicker-legacy/local.js +11 -0
  91. package/es/date-picker/datepicker-legacy/style/index.css +1 -0
  92. package/es/date-picker/datepicker-legacy/style/index.js +3 -0
  93. package/es/date-picker/datepicker-legacy/style/timepicker.css +1 -0
  94. package/es/date-picker/datepicker-legacy/util.js +60 -0
  95. package/es/date-picker/index.js +5 -2
  96. package/es/date-picker/style/index.css +1 -1
  97. package/es/date-picker/toLunar.js +172 -0
  98. package/es/date-picker/util.js +101 -8
  99. package/es/dropdown/Dropdown.js +191 -203
  100. package/es/dropdown/DropdownButton.js +102 -0
  101. package/es/dropdown/DropdownMenu.js +107 -0
  102. package/es/dropdown/DropdownMenuItem.js +172 -0
  103. package/es/dropdown/__tests__/index.test.js +313 -0
  104. package/es/dropdown/index.js +69 -4
  105. package/es/dropdown/style/index.css +1 -1
  106. package/es/dropdown/style/index.js +0 -2
  107. package/es/dropdown/{__test__ → tests}/index.test.js +7 -7
  108. package/es/dropdown/utils.js +35 -0
  109. package/es/ficon/index.js +16 -30
  110. package/es/form/Form.js +176 -0
  111. package/es/form/{item.js → Item.js} +52 -60
  112. package/es/form/__tests__/index.test.js +571 -0
  113. package/es/form/index.js +6 -171
  114. package/es/form/style/index.css +1 -1
  115. package/es/grid/__tests__/index.test.js +100 -0
  116. package/es/grid/index.js +36 -56
  117. package/es/icon/index.js +23 -38
  118. package/es/index.js +61 -9
  119. package/es/input/Input.js +400 -0
  120. package/es/input/__tests__/index.test.js +376 -0
  121. package/es/input/index.js +26 -347
  122. package/es/input/input-legacy/index.js +341 -0
  123. package/es/input/input-legacy/util.js +176 -0
  124. package/es/input/style/index.css +1 -1
  125. package/es/input/util.js +26 -18
  126. package/es/lib/withDragDropContext.js +2 -2
  127. package/es/loading/Loading.js +173 -0
  128. package/es/loading/__tests__/index.test.js +110 -0
  129. package/es/loading/index.js +5 -129
  130. package/es/loading/style/index.css +0 -0
  131. package/es/loading/style/index.js +0 -0
  132. package/es/locales/en-US.js +45 -9
  133. package/es/locales/index.js +16 -2
  134. package/es/locales/zh-CN.js +46 -10
  135. package/es/locales/zh-Hant-HK.js +123 -0
  136. package/es/locales/zh-Hant-TW.js +125 -0
  137. package/es/menu/Item.js +34 -51
  138. package/es/menu/Menu.js +414 -0
  139. package/es/menu/SubMenu.js +63 -90
  140. package/es/menu/Title.js +37 -51
  141. package/es/menu/__tests__/index.test.js +274 -0
  142. package/es/menu/index.js +12 -419
  143. package/es/menu/style/index.css +1 -1
  144. package/es/message/__tests__/index.test.js +71 -0
  145. package/es/message/index.js +58 -0
  146. package/es/message/style/index.css +1 -0
  147. package/es/message/style/index.js +5 -0
  148. package/es/modal/__tests__/index.test.js +178 -0
  149. package/es/modal/index.js +85 -77
  150. package/es/modal/style/index.css +1 -1
  151. package/es/nav-menu/NavMenu.js +44 -61
  152. package/es/nav-menu/__test__/index.test.js +8 -8
  153. package/es/nav-menu/__tests__/index.test.js +23 -0
  154. package/es/nav-menu/index.js +2 -2
  155. package/es/notice/Notice.js +136 -0
  156. package/es/notice/NoticeContainer.js +107 -0
  157. package/es/notice/__tests__/index.test.js +174 -0
  158. package/es/notice/index.js +66 -0
  159. package/es/notice/style/index.css +1 -0
  160. package/es/notice/style/index.js +5 -0
  161. package/es/notification/HandleNotification/index.js +216 -0
  162. package/es/notification/HandleNotification/style/index.css +1 -0
  163. package/es/notification/HandleNotification/style/index.js +5 -0
  164. package/es/notification/__tests__/index.test.js +114 -0
  165. package/es/notification/index.js +68 -231
  166. package/es/notification/style/index.css +1 -1
  167. package/es/notification/style/index.js +0 -0
  168. package/es/pagination/Pager.js +7 -9
  169. package/es/pagination/Pagination.js +134 -133
  170. package/es/pagination/__tests__/index.test.js +244 -0
  171. package/es/pagination/index.js +9 -8
  172. package/es/pagination/style/index.css +1 -1
  173. package/es/panel/index.js +28 -46
  174. package/es/popover/__test__/index.test.js +10 -10
  175. package/es/popover/__tests__/index.test.js +152 -0
  176. package/es/popover/index.js +77 -83
  177. package/es/popper/index.js +68 -64
  178. package/es/popper/style/index.css +1 -1
  179. package/es/preview/index.js +529 -0
  180. package/es/preview/style/index.css +1 -0
  181. package/es/preview/style/index.js +3 -0
  182. package/es/progress/BarProgress.js +107 -43
  183. package/es/progress/CircleProgress.js +13 -14
  184. package/es/progress/DashboardProgress.js +11 -13
  185. package/es/progress/Progress.js +102 -0
  186. package/es/progress/__tests__/index.test.js +131 -0
  187. package/es/progress/index.js +8 -100
  188. package/es/progress/style/index.css +1 -1
  189. package/es/radio/Group.js +199 -0
  190. package/es/radio/Radio.js +147 -0
  191. package/es/radio/__tests__/index.test.js +127 -0
  192. package/es/radio/index.js +10 -216
  193. package/es/radio/{__test__ → radio-legacy/__test__}/index.test.js +13 -13
  194. package/es/radio/radio-legacy/index.js +214 -0
  195. package/es/radio/radio-legacy/style/index.css +1 -0
  196. package/es/radio/radio-legacy/style/index.js +3 -0
  197. package/es/radio/style/index.css +1 -1
  198. package/es/rate/Icons.js +70 -70
  199. package/es/rate/Rate.js +75 -108
  200. package/es/rate/__tests__/index.test.js +124 -0
  201. package/es/rate/index.js +5 -2
  202. package/es/rate/style/index.css +1 -1
  203. package/es/select/Select.js +330 -265
  204. package/es/select/SelectDropdown.js +223 -79
  205. package/es/select/SelectInput.js +120 -91
  206. package/es/select/__tests__/index.test.js +505 -0
  207. package/es/select/index.js +6 -4
  208. package/es/select/select-legacy/Option.js +78 -0
  209. package/es/select/select-legacy/Select.js +702 -0
  210. package/es/select/select-legacy/SelectDropdown.js +157 -0
  211. package/es/select/select-legacy/SelectInput.js +308 -0
  212. package/es/select/select-legacy/common.js +19 -0
  213. package/es/select/select-legacy/index.js +16 -0
  214. package/es/select/style/select-dropdown.css +1 -1
  215. package/es/select/style/select-input.css +1 -1
  216. package/es/stepper/Stepper.js +147 -0
  217. package/es/stepper/__tests__/index.test.js +161 -0
  218. package/es/stepper/index.js +21 -127
  219. package/es/stepper/style/index.css +1 -1
  220. package/es/style/icon/diyIcon.css +1 -1
  221. package/es/style/icon/index.css +1 -1
  222. package/es/switch/__tests__/index.test.js +68 -0
  223. package/es/switch/index.js +26 -46
  224. package/es/switch/style/index.css +1 -1
  225. package/es/table/Body.js +294 -0
  226. package/es/table/ClickOuterside.js +95 -0
  227. package/es/table/Footer.js +171 -0
  228. package/es/table/Header.js +320 -0
  229. package/es/table/TableContent.js +101 -0
  230. package/es/table/__tests__/index.test.js +129 -0
  231. package/es/table/checkbox/index.js +36 -47
  232. package/es/table/checkbox/style/index.css +1 -0
  233. package/es/table/checkbox/style/index.js +3 -0
  234. package/es/table/index.js +269 -314
  235. package/es/table/menu/index.js +34 -44
  236. package/es/table/prefix.js +2 -2
  237. package/es/table/style/Table.css +1 -1
  238. package/es/table/style/index.css +1 -1
  239. package/es/tabs/ItemDropdown.js +45 -65
  240. package/es/tabs/TabPane.js +26 -44
  241. package/es/tabs/Tabs.js +110 -111
  242. package/es/tabs/__tests__/index.test.js +329 -0
  243. package/es/tabs/index.js +9 -3
  244. package/es/tabs/style/index.css +1 -1
  245. package/es/tabs/tabs-legacy/ItemDropdown.js +162 -0
  246. package/es/tabs/tabs-legacy/TabPane.js +70 -0
  247. package/es/tabs/tabs-legacy/Tabs.js +291 -0
  248. package/es/tabs/tabs-legacy/index.js +18 -0
  249. package/es/tabs/tabs-legacy/style/index.css +1 -0
  250. package/es/tabs/tabs-legacy/style/index.js +3 -0
  251. package/es/tag/__tests__/index.test.js +46 -0
  252. package/es/tag/index.js +86 -0
  253. package/es/tag/style/index.css +1 -0
  254. package/es/tag/style/index.js +3 -0
  255. package/es/timeline/__tests__/index.test.js +198 -0
  256. package/es/timeline/index.js +206 -136
  257. package/es/timeline/style/index.css +1 -1
  258. package/es/tooltip/__tests__/index.test.js +166 -0
  259. package/es/tooltip/index.js +93 -52
  260. package/es/tooltip/style/index.css +1 -1
  261. package/es/transfer/Item.js +73 -71
  262. package/es/transfer/Transfer.js +558 -0
  263. package/es/transfer/__tests__/index.test.js +210 -0
  264. package/es/transfer/index.js +4 -443
  265. package/es/transfer/style/index.css +1 -1
  266. package/es/tree/IconLoading.js +38 -0
  267. package/es/tree/Tree.js +94 -111
  268. package/es/tree/TreeDivider.js +6 -6
  269. package/es/tree/TreeItem.js +217 -123
  270. package/es/tree/TreeNode.js +472 -333
  271. package/es/tree/__tests__/index.test.js +599 -0
  272. package/es/tree/index.js +9 -2
  273. package/es/tree/style/index.css +1 -1
  274. package/es/tree/tree-legacy/Tree.js +330 -0
  275. package/es/tree/tree-legacy/TreeDivider.js +25 -0
  276. package/es/tree/tree-legacy/TreeItem.js +326 -0
  277. package/es/tree/tree-legacy/TreeNode.js +711 -0
  278. package/es/tree/tree-legacy/index.js +13 -0
  279. package/es/tree/tree-legacy/style/index.css +1 -0
  280. package/es/tree/tree-legacy/style/index.js +3 -0
  281. package/es/tree/tree-legacy/util.js +434 -0
  282. package/es/tree/util.js +8 -256
  283. package/es/upload/Upload.js +292 -200
  284. package/es/upload/UploadAvatar.js +61 -79
  285. package/es/upload/UploadClick.js +62 -60
  286. package/es/upload/UploadDrag.js +63 -66
  287. package/es/upload/UploadPhoto.js +86 -75
  288. package/es/upload/UploadPictureCard.js +53 -60
  289. package/es/upload/__tests__/index.test.js +760 -0
  290. package/es/upload/index.js +8 -71
  291. package/es/upload/main.js +83 -0
  292. package/es/upload/style/index.css +1 -1
  293. package/es/upload/tool.js +0 -1
  294. package/es/upload/{Preview.js → upload-legacy/Preview.js} +48 -62
  295. package/es/upload/upload-legacy/Upload.js +431 -0
  296. package/es/upload/upload-legacy/UploadAvatar.js +318 -0
  297. package/es/upload/upload-legacy/UploadClick.js +121 -0
  298. package/es/upload/upload-legacy/UploadDrag.js +176 -0
  299. package/es/upload/upload-legacy/UploadPhoto.js +179 -0
  300. package/es/upload/upload-legacy/UploadPictureCard.js +122 -0
  301. package/es/upload/upload-legacy/index.js +67 -0
  302. package/es/upload/upload-legacy/style/index.css +1 -0
  303. package/es/upload/upload-legacy/style/index.js +5 -0
  304. package/es/upload/upload-legacy/tool.js +84 -0
  305. package/es/watermark/index.js +97 -0
  306. package/es/watermark/watermark.js +263 -0
  307. package/package.json +1 -1
  308. package/es/alert/__test__/index.test.js +0 -67
  309. package/es/button/__test__/index.test.js +0 -29
  310. package/es/cascader/__test__/index.test.js +0 -283
  311. package/es/cascader/menu.js +0 -155
  312. package/es/checkbox/Base.js +0 -205
  313. package/es/checkbox/CheckBox.js +0 -185
  314. package/es/collapse/__test__/index.test.js +0 -58
  315. package/es/counter/__test__/index.test.js +0 -52
  316. package/es/menu/ItemGroup.js +0 -81
  317. package/es/modal/__test__/index.test.js +0 -123
  318. package/es/notification/__test__/index.test.js +0 -56
  319. package/es/pagination/__test__/index.test.js +0 -140
  320. package/es/rate/__test__/index.test.js +0 -54
  321. package/es/select/Option.js +0 -93
  322. package/es/select/__test__/index.test.js +0 -429
  323. package/es/style/color/colors.css +0 -0
  324. package/es/style/index.css +0 -0
  325. package/es/style/mixins/colors.css +0 -0
  326. package/es/style/mixins/index.css +0 -0
  327. package/es/style/theme/dark.css +0 -0
  328. package/es/style/theme/default.css +0 -0
  329. package/es/switch/__test__/index.test.js +0 -39
  330. package/es/table/__test__/index.test.js +0 -73
  331. package/es/table/body.js +0 -318
  332. package/es/table/clickOuterside.js +0 -115
  333. package/es/table/footer.js +0 -196
  334. package/es/table/header.js +0 -337
  335. package/es/table/pover.js +0 -154
  336. package/es/table/tableContent.js +0 -120
  337. package/es/timeline/__test__/index.test.js +0 -49
  338. package/es/timeline/foldingItem.js +0 -82
  339. package/es/tooltip/__test__/index.test.js +0 -67
  340. package/es/transfer/__test__/index.test.js +0 -11
  341. /package/es/{style → breadcrumb/style}/index.js +0 -0
  342. /package/es/checkbox/{common.js → checkbox-legacy/common.js} +0 -0
  343. /package/es/upload/{style → upload-legacy/style}/preview.css +0 -0
  344. /package/es/upload/{style → upload-legacy/style}/preview.js +0 -0
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ function SwitchVersion() {
19
+ var component = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
20
+ var componentLegacy = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
21
+
22
+ var WrapperComponent = function WrapperComponent(_ref) {
23
+ var legacy = _ref.legacy,
24
+ innerRef = _ref.innerRef,
25
+ props = (0, _objectWithoutProperties2["default"])(_ref, ["legacy", "innerRef"]);
26
+ var innerComponent = legacy === true ? componentLegacy : component;
27
+ return _react["default"].createElement(innerComponent, Object.assign({}, props, {
28
+ ref: innerRef
29
+ }));
30
+ };
31
+
32
+ return (0, _react.forwardRef)(function (props, ref) {
33
+ return _react["default"].createElement(WrapperComponent, (0, _extends2["default"])({}, props, {
34
+ ref: ref
35
+ }));
36
+ });
37
+ }
38
+
39
+ var _default = SwitchVersion;
40
+ exports["default"] = _default;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.depreactedPropsCompat = void 0;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
+
20
+ var isDevelopment = /development/gi.test(process.env.NODE_ENV);
21
+ /**
22
+ * compat old api
23
+ * 参数为一个二维数组,里面的一维数组的第一个参数为新 prop,第二个参数为旧 prop,第三个参数为转换函数,
24
+ * 回调值为旧 prop 传入的值。使用示例参考 Stepper 组件
25
+ * @export
26
+ * @param {[[string, string, Function], [string, string, Function]]} compatPair
27
+ * @returns
28
+ */
29
+
30
+ var depreactedPropsCompat = function depreactedPropsCompat(compatPair) {
31
+ return function (WrappedComponent) {
32
+ var WrapperComponent = function WrapperComponent(props) {
33
+ var compatProps = _objectSpread({}, props);
34
+
35
+ var componentName = WrappedComponent.displayName || WrappedComponent.name || 'unknown component';
36
+ compatPair.forEach(function (_ref) {
37
+ var _ref2 = (0, _slicedToArray2["default"])(_ref, 3),
38
+ newProp = _ref2[0],
39
+ oldProp = _ref2[1],
40
+ convert = _ref2[2];
41
+
42
+ if (props[oldProp] !== undefined && props[newProp] === undefined) {
43
+ isDevelopment && console.warn("".concat(componentName, "'s prop \"").concat(oldProp, "\" will be depreacted in next version! use ").concat(newProp, " instead."));
44
+ compatProps[newProp] = convert ? convert(props[oldProp]) : props[oldProp];
45
+ }
46
+ });
47
+ return _react["default"].createElement(WrappedComponent, compatProps);
48
+ };
49
+
50
+ for (var staticProp in WrappedComponent) {
51
+ WrapperComponent[staticProp] = WrappedComponent[staticProp];
52
+ }
53
+
54
+ return WrapperComponent;
55
+ };
56
+ };
57
+
58
+ exports.depreactedPropsCompat = depreactedPropsCompat;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ var _exportNames = {
9
+ SwitchVersion: true
10
+ };
11
+ Object.defineProperty(exports, "SwitchVersion", {
12
+ enumerable: true,
13
+ get: function get() {
14
+ return _SwitchVersion["default"];
15
+ }
16
+ });
17
+
18
+ var _depreactedPropsCompat = require("./depreactedPropsCompat");
19
+
20
+ Object.keys(_depreactedPropsCompat).forEach(function (key) {
21
+ if (key === "default" || key === "__esModule") return;
22
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
23
+ Object.defineProperty(exports, key, {
24
+ enumerable: true,
25
+ get: function get() {
26
+ return _depreactedPropsCompat[key];
27
+ }
28
+ });
29
+ });
30
+
31
+ var _SwitchVersion = _interopRequireDefault(require("./SwitchVersion"));
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -7,8 +9,6 @@ exports.warningOnce = warningOnce;
7
9
 
8
10
  var _warning = _interopRequireDefault(require("warning"));
9
11
 
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
-
12
12
  var warned = {};
13
13
 
14
14
  function warningOnce(condition, format, args) {
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
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 _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
22
+ var _react = _interopRequireWildcard(require("react"));
23
+
24
+ var _propTypes = _interopRequireDefault(require("prop-types"));
25
+
26
+ var _classnames = _interopRequireDefault(require("classnames"));
27
+
28
+ require("./style/index");
29
+
30
+ var Alert =
31
+ /*#__PURE__*/
32
+ function (_Component) {
33
+ (0, _inherits2["default"])(Alert, _Component);
34
+
35
+ function Alert(props) {
36
+ var _this;
37
+
38
+ (0, _classCallCheck2["default"])(this, Alert);
39
+ _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(Alert).call(this, props));
40
+ _this.state = {
41
+ visible: true
42
+ };
43
+ return _this;
44
+ }
45
+
46
+ (0, _createClass2["default"])(Alert, [{
47
+ key: "componentDidMount",
48
+ value: function componentDidMount() {
49
+ var _this2 = this;
50
+
51
+ if (this.props.duration !== null) {
52
+ window.setTimeout(function () {
53
+ _this2.handleClose();
54
+ }, this.props.duration);
55
+ }
56
+ }
57
+ }, {
58
+ key: "handleClose",
59
+ value: function handleClose() {
60
+ this.setState({
61
+ visible: false
62
+ });
63
+ this.props.onClose && this.props.onClose();
64
+ }
65
+ }, {
66
+ key: "render",
67
+ value: function render() {
68
+ var classnames = (0, _classnames["default"])(this.props.prefixCls, this.state.visible, this.props.type, "theme__".concat(this.props.theme), {
69
+ noTitle: !this.props.title
70
+ });
71
+ var type = this.props.type;
72
+
73
+ switch (type) {
74
+ case 'warning':
75
+ type = 'jinggao';
76
+ break;
77
+
78
+ case 'error':
79
+ type = 'shibai';
80
+ break;
81
+
82
+ case 'success':
83
+ type = 'chenggong';
84
+ break;
85
+
86
+ default:
87
+ type = 'tishi';
88
+ }
89
+
90
+ return this.state.visible && _react["default"].createElement("div", {
91
+ className: classnames
92
+ }, _react["default"].createElement("div", {
93
+ className: "hi-icon__title"
94
+ }, _react["default"].createElement("i", {
95
+ className: "hi-icon icon-".concat(type)
96
+ }), this.props.title && _react["default"].createElement("div", {
97
+ className: "text-title"
98
+ }, this.props.title)), this.props.content && _react["default"].createElement("div", {
99
+ className: "text-message"
100
+ }, this.props.content), this.props.closeable && _react["default"].createElement("div", {
101
+ className: "close-btn icon-img-delete",
102
+ onClick: this.handleClose.bind(this)
103
+ }, _react["default"].createElement("i", {
104
+ className: "hi-icon icon-close"
105
+ })));
106
+ }
107
+ }]);
108
+ return Alert;
109
+ }(_react.Component);
110
+
111
+ Alert.propTypes = {
112
+ type: _propTypes["default"].oneOf(['info', 'error', 'success', 'warning']),
113
+ onClose: _propTypes["default"].func,
114
+ content: _propTypes["default"].string,
115
+ title: _propTypes["default"].string,
116
+ closeable: _propTypes["default"].bool,
117
+ duration: _propTypes["default"].number
118
+ };
119
+ Alert.defaultProps = {
120
+ prefixCls: 'hi-alert',
121
+ type: 'info',
122
+ closeable: true,
123
+ duration: null
124
+ };
125
+ var _default = Alert;
126
+ exports["default"] = _default;
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ var _react = _interopRequireDefault(require("react"));
8
+
9
+ var _enzyme = require("enzyme");
10
+
11
+ var _sinon = _interopRequireWildcard(require("sinon"));
12
+
13
+ var _alert = _interopRequireDefault(require("../alert"));
14
+
15
+ /* eslint-env jest */
16
+ describe('Alert', function () {
17
+ var clock;
18
+ beforeEach(function () {
19
+ clock = _sinon["default"].useFakeTimers();
20
+ });
21
+ afterEach(function () {
22
+ clock.restore();
23
+ });
24
+ describe('Lifecycle', function () {
25
+ it('componentDidMount', function () {
26
+ var componentDidMountSpy = (0, _sinon.spy)(_alert["default"].prototype, 'componentDidMount');
27
+ var wrapper = (0, _enzyme.mount)(_react["default"].createElement(_alert["default"], null));
28
+ expect(wrapper.instance()).toBeInstanceOf(_alert["default"]);
29
+ expect(componentDidMountSpy.callCount).toEqual(1);
30
+ componentDidMountSpy.restore();
31
+ expect(wrapper.find('.icon-info-circle-o')).toHaveLength(0);
32
+ expect(wrapper.find('.close-btn')).toHaveLength(1);
33
+ });
34
+ });
35
+ describe('PropTypes', function () {
36
+ it('type', function () {
37
+ var wrapper = (0, _enzyme.mount)(_react["default"].createElement("div", null, _react["default"].createElement(_alert["default"], {
38
+ type: "info"
39
+ }), _react["default"].createElement(_alert["default"], {
40
+ type: "error"
41
+ }), _react["default"].createElement(_alert["default"], {
42
+ type: "success"
43
+ }), _react["default"].createElement(_alert["default"], {
44
+ type: "warning"
45
+ }))); // NOTE 缺少 type 对应唯一标识
46
+
47
+ expect(wrapper.find('.info')).toHaveLength(1);
48
+ expect(wrapper.find('.icon-close-circle-o')).toHaveLength(0);
49
+ expect(wrapper.find('.icon-check-circle-o')).toHaveLength(0);
50
+ });
51
+ it('onClose', function () {
52
+ var callback = (0, _sinon.fake)();
53
+ var wrapper = (0, _enzyme.shallow)(_react["default"].createElement(_alert["default"], {
54
+ onClose: callback
55
+ }));
56
+ wrapper.find('.close-btn').first().simulate('click');
57
+ expect(callback.callCount).toEqual(1);
58
+ });
59
+ it('content', function () {
60
+ var content = 'text-content';
61
+ var wrapper = (0, _enzyme.shallow)(_react["default"].createElement(_alert["default"], {
62
+ content: content
63
+ }));
64
+ expect(wrapper.text()).toEqual(expect.stringMatching(content));
65
+ });
66
+ it('title', function () {
67
+ var title = 'text-title';
68
+ var wrapper = (0, _enzyme.shallow)(_react["default"].createElement(_alert["default"], {
69
+ title: title
70
+ }));
71
+ expect(wrapper.text()).toEqual(expect.stringMatching(title));
72
+ });
73
+ it('duration', function () {
74
+ var duration = 100;
75
+ var wrapper = (0, _enzyme.shallow)(_react["default"].createElement(_alert["default"], {
76
+ duration: duration
77
+ }));
78
+ var handleCloseSpy = (0, _sinon.spy)(_alert["default"].prototype, 'handleClose');
79
+ expect(handleCloseSpy.callCount).toEqual(0);
80
+ clock.tick(110);
81
+ expect(handleCloseSpy.callCount).toEqual(1);
82
+ });
83
+ });
84
+ });
package/es/alert/index.js CHANGED
@@ -1,161 +1,20 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports["default"] = void 0;
7
9
 
8
- var _react = _interopRequireWildcard(require("react"));
9
-
10
- var _propTypes = _interopRequireDefault(require("prop-types"));
11
-
12
- var _classnames = _interopRequireDefault(require("classnames"));
10
+ var _Alert = _interopRequireDefault(require("./Alert"));
13
11
 
14
12
  require("./style/index");
15
13
 
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
-
18
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
19
-
20
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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; }
21
-
22
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
23
-
24
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
25
-
26
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
27
-
28
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
29
-
30
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
31
-
32
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
33
-
34
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
35
-
36
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
37
-
38
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
39
-
40
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
41
-
42
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
43
-
44
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
14
+ var _util = require("../_util");
45
15
 
46
- var Alert = /*#__PURE__*/function (_Component) {
47
- _inherits(Alert, _Component);
16
+ var _context = _interopRequireDefault(require("../context"));
48
17
 
49
- var _super = _createSuper(Alert);
50
-
51
- _createClass(Alert, [{
52
- key: "componentDidMount",
53
- value: function componentDidMount() {
54
- var _this2 = this;
55
-
56
- if (!this.props.closeable && this.props.autoClose) {
57
- window.setTimeout(function () {
58
- _this2.handleClose();
59
- }, this.props.autoCloseTime);
60
- }
61
- }
62
- }]);
63
-
64
- function Alert(props) {
65
- var _this;
66
-
67
- _classCallCheck(this, Alert);
68
-
69
- _this = _super.call(this, props);
70
- _this.state = {
71
- show: true
72
- };
73
- return _this;
74
- }
75
-
76
- _createClass(Alert, [{
77
- key: "handleClose",
78
- value: function handleClose() {
79
- this.setState({
80
- show: false
81
- });
82
- this.props.onClose && this.props.onClose();
83
- this.props.onCancel && this.props.onCancel();
84
- }
85
- }, {
86
- key: "render",
87
- value: function render() {
88
- var classnames = (0, _classnames["default"])(this.props.prefixCls, this.state.show, this.props.type, this.props.size, {
89
- noTitle: !this.props.title
90
- });
91
- var type = this.props.type;
92
-
93
- switch (type) {
94
- case 'warning':
95
- type = 'info-circle-o';
96
- break;
97
-
98
- case 'error':
99
- type = 'close-circle-o';
100
- break;
101
-
102
- case 'success':
103
- type = 'check-circle-o';
104
- break;
105
-
106
- default:
107
- type = 'info-circle-o';
108
- }
109
-
110
- return this.state.show ? /*#__PURE__*/_react["default"].createElement("div", {
111
- className: classnames
112
- }, /*#__PURE__*/_react["default"].createElement("div", {
113
- className: "icon-contain"
114
- }, /*#__PURE__*/_react["default"].createElement("i", {
115
- className: "hi-icon icon-".concat(type)
116
- })), /*#__PURE__*/_react["default"].createElement("div", {
117
- className: "text-contain"
118
- }, this.props.title && /*#__PURE__*/_react["default"].createElement("div", {
119
- className: "text-title"
120
- }, this.props.title), /*#__PURE__*/_react["default"].createElement("div", {
121
- className: "text-message"
122
- }, this.props.message || this.props.content, _react["default"].Children.map(this.props.children, function (item) {
123
- return item;
124
- }))), this.props.closeable ? /*#__PURE__*/_react["default"].createElement("div", {
125
- className: "close-btn icon-img-delete",
126
- onClick: this.handleClose.bind(this)
127
- }, /*#__PURE__*/_react["default"].createElement("i", {
128
- className: "hi-icon icon-close"
129
- })) : null) : null;
130
- }
131
- }]);
132
-
133
- return Alert;
134
- }(_react.Component);
135
-
136
- _defineProperty(Alert, "propTypes", {
137
- type: _propTypes["default"].oneOf(['info', 'error', 'success', 'warning']),
138
- onCancel: _propTypes["default"].func,
139
- // 废气,用 onClose 代替
140
- onClose: _propTypes["default"].func,
141
- size: _propTypes["default"].oneOf(['small', 'middle', 'large']),
142
- content: _propTypes["default"].string,
143
- // 废弃,用 message 代替
144
- message: _propTypes["default"].string,
145
- title: _propTypes["default"].string,
146
- closeable: _propTypes["default"].bool,
147
- autoClose: _propTypes["default"].bool,
148
- autoCloseTime: _propTypes["default"].number
149
- });
150
-
151
- _defineProperty(Alert, "defaultProps", {
152
- prefixCls: 'hi-alert',
153
- type: 'info',
154
- size: 'middle',
155
- closeable: true,
156
- autoClose: false,
157
- autoCloseTime: 3000
158
- });
18
+ var _default = (0, _util.depreactedPropsCompat)([['content', 'message'], ['duration', 'autoCloseTime']])((0, _context["default"])(_Alert["default"]));
159
19
 
160
- var _default = Alert;
161
20
  exports["default"] = _default;
@@ -1 +1 @@
1
- .hi-alert{position:relative;padding:12px;background:#ebf2fd;border:1px solid #b3cdfb;border-radius:2px;color:#4284f5;font-size:14px;overflow:hidden;min-width:280px;display:block}.hi-alert .icon-contain{position:absolute;top:50%;left:16px;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:0;color:#4284f5}.hi-alert .icon-contain .hi-icon{font-size:20px}.hi-alert .text-contain{margin:0 32px;font-weight:400}.hi-alert .text-contain .text-title{font-size:14px;margin-bottom:4px}.hi-alert .text-contain .text-message{font-size:12px}.hi-alert .close-btn{position:absolute;top:50%;right:16px;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:0;cursor:pointer}.hi-alert .close-btn .hi-icon{font-size:14px;color:#999}.hi-alert.error{background:#fceded;border:1px solid #f7b9b9;color:#eb5252}.hi-alert.error .icon-contain{color:#eb5252}.hi-alert.success{background:#e8f6ee;border:1px solid #a4dbba;color:#1da653}.hi-alert.success .icon-contain{color:#1da653}.hi-alert.warning{background:#fbf5e6;border:1px solid #f3d79d;color:#e19d0c}.hi-alert.warning .icon-contain{color:#e19d0c}.hi-alert.noTitle .text-contain .text-message{font-size:14px}
1
+ .hi-alert{position:relative;padding:9px 11px;background:#ebf2fd;border:1px solid #b3cdfb;border-radius:2px;color:#4284f5;font-size:14px;min-width:280px;display:block;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.hi-alert .hi-icon__title{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:14px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:22px}.hi-alert .hi-icon__title .hi-icon{font-size:16px;margin-right:8px}.hi-alert .text-message{margin:2px 24px 0 24px;font-weight:400;font-size:12px;line-height:20px;color:#666}.hi-alert .close-btn{position:absolute;top:12px;right:12px;cursor:pointer;height:16px;line-height:16px}.hi-alert .close-btn .hi-icon{font-size:16px;color:#999}.hi-alert.error{background:#fceded;border:1px solid #f7b9b9;color:#eb5252}.hi-alert.error .icon-contain{color:#eb5252}.hi-alert.success{background:#e8f6ee;border:1px solid #a4dbba;color:#1da653}.hi-alert.success .icon-contain{color:#1da653}.hi-alert.warning{background:#fbf5e6;border:1px solid #f3d79d;color:#e19d0c}.hi-alert.warning .icon-contain{color:#e19d0c}.hi-alert.noTitle .text-contain .text-message{font-size:14px}.hi-alert.theme__hiui-blue.info{color:#4285f4;background-color:rgba(66,133,244,0.1);border:1px solid #8eb6f8}.hi-alert.theme__orange.info{color:#f63;background-color:rgba(255,102,51,0.1);border:1px solid #ffa385}.hi-alert.theme__cyan.info{color:#46bc99;background-color:rgba(70,188,153,0.1);border:1px solid #90d7c2}.hi-alert.theme__magenta.info{color:#ff5975;background-color:rgba(255,89,117,0.1);border:1px solid #ff9bac}.hi-alert.theme__lavender.info{color:#b450de;background-color:rgba(180,80,222,0.1);border:1px solid #d296eb}.hi-alert.theme__blue.info{color:#3da8f5;background-color:rgba(61,168,245,0.1);border:1px solid #8bcbf9}.hi-alert.theme__purple.info{color:#8a8acb;background-color:rgba(138,138,203,0.1);border:1px solid #b9b9e0}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
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 _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _react = _interopRequireWildcard(require("react"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _classnames = _interopRequireDefault(require("classnames"));
29
+
30
+ require("./style/index");
31
+
32
+ var Badge =
33
+ /*#__PURE__*/
34
+ function (_Component) {
35
+ (0, _inherits2["default"])(Badge, _Component);
36
+
37
+ function Badge() {
38
+ (0, _classCallCheck2["default"])(this, Badge);
39
+ return (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(Badge).apply(this, arguments));
40
+ }
41
+
42
+ (0, _createClass2["default"])(Badge, [{
43
+ key: "render",
44
+ value: function render() {
45
+ var _this$props = this.props,
46
+ content = _this$props.content,
47
+ prefixCls = _this$props.prefixCls,
48
+ max = _this$props.max,
49
+ type = _this$props.type,
50
+ visible = _this$props.visible,
51
+ style = _this$props.style;
52
+ var eleClass = (0, _classnames["default"])("".concat(prefixCls, "-base"));
53
+ return _react["default"].createElement("div", {
54
+ className: eleClass,
55
+ style: style
56
+ }, this.props.children, type === 'dot' ? _react["default"].createElement("span", {
57
+ className: "".concat(prefixCls, "-dot").concat(!visible ? ' hi-hide' : '')
58
+ }) : _react["default"].createElement("span", {
59
+ className: "".concat(prefixCls, "-value").concat(!visible ? ' hi-hide' : '')
60
+ }, typeof content === 'number' ? content > max ? max + '+' : content : content));
61
+ }
62
+ }]);
63
+ return Badge;
64
+ }(_react.Component);
65
+
66
+ (0, _defineProperty2["default"])(Badge, "propTypes", {
67
+ content: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
68
+ type: _propTypes["default"].oneOf(['bubble', 'dot']),
69
+ max: _propTypes["default"].number,
70
+ visible: _propTypes["default"].bool,
71
+ style: _propTypes["default"].object
72
+ });
73
+ (0, _defineProperty2["default"])(Badge, "defaultProps", {
74
+ prefixCls: 'hi-badge',
75
+ style: {},
76
+ content: '',
77
+ type: 'bubble',
78
+ max: 99,
79
+ visible: true
80
+ });
81
+ var _default = Badge;
82
+ exports["default"] = _default;