shineout 1.7.1 → 1.8.0-beta.2

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 (381) hide show
  1. package/css/DatePicker/utils.js +1 -1
  2. package/css/Form/Field.js +8 -4
  3. package/css/Form/Form.js +3 -0
  4. package/css/Form/Item.js +1 -1
  5. package/css/Form/index.d.ts +1 -0
  6. package/css/Form/inputable.js +1 -1
  7. package/css/Pagination/Jumper.js +3 -0
  8. package/css/index.d.ts +1 -1
  9. package/css/index.js +1 -1
  10. package/dist/shineout.js +24 -14
  11. package/dist/shineout.js.map +1 -1
  12. package/dist/shineout.min.js +1 -1
  13. package/es/Alert/index.js +127 -107
  14. package/es/Alert/styles/index.js +3 -4
  15. package/es/AnimationList/AbsoluteList.js +257 -193
  16. package/es/AnimationList/LazyList.js +120 -92
  17. package/es/AnimationList/List.js +43 -23
  18. package/es/AnimationList/index.js +19 -14
  19. package/es/AnimationList/styles/index.js +3 -4
  20. package/es/Breadcrumb/index.js +77 -69
  21. package/es/Breadcrumb/styles/index.js +3 -4
  22. package/es/Button/Button.js +91 -74
  23. package/es/Button/Group.js +42 -28
  24. package/es/Button/Once.js +39 -23
  25. package/es/Button/index.js +7 -10
  26. package/es/Button/styles/index.js +3 -4
  27. package/es/Card/Accordion.js +58 -45
  28. package/es/Card/Body.js +55 -42
  29. package/es/Card/Card.js +85 -79
  30. package/es/Card/Footer.js +38 -15
  31. package/es/Card/Header.js +52 -34
  32. package/es/Card/Submit.js +51 -33
  33. package/es/Card/context.js +22 -16
  34. package/es/Card/index.js +16 -19
  35. package/es/Card/styles/index.js +3 -4
  36. package/es/CardGroup/CardGroup.js +93 -69
  37. package/es/CardGroup/Item.js +61 -43
  38. package/es/CardGroup/context.js +12 -10
  39. package/es/CardGroup/index.js +7 -10
  40. package/es/CardGroup/styles/index.js +3 -4
  41. package/es/Carousel/Item.js +31 -17
  42. package/es/Carousel/index.js +156 -123
  43. package/es/Carousel/styles/index.js +3 -4
  44. package/es/Cascader/Cascader.js +397 -346
  45. package/es/Cascader/FilterList.js +185 -142
  46. package/es/Cascader/Input.js +102 -79
  47. package/es/Cascader/List.js +66 -41
  48. package/es/Cascader/Node.js +153 -110
  49. package/es/Cascader/Result.js +289 -232
  50. package/es/Cascader/filter.js +92 -61
  51. package/es/Cascader/index.js +13 -18
  52. package/es/Cascader/styles/index.js +3 -4
  53. package/es/Checkbox/CheckItem.js +168 -154
  54. package/es/Checkbox/Checkbox.js +2 -3
  55. package/es/Checkbox/Group.js +106 -85
  56. package/es/Checkbox/context.js +12 -10
  57. package/es/Checkbox/index.js +14 -21
  58. package/es/Checkbox/styles/index.js +3 -4
  59. package/es/DataList/BaseItem.js +39 -21
  60. package/es/DataList/Extra.js +33 -17
  61. package/es/DataList/List.js +166 -140
  62. package/es/DataList/Meta.js +109 -74
  63. package/es/DataList/Pagination.js +9 -10
  64. package/es/DataList/index.js +13 -19
  65. package/es/DataList/styles/index.js +3 -4
  66. package/es/DatePicker/Container.js +468 -449
  67. package/es/DatePicker/Day.js +265 -258
  68. package/es/DatePicker/Icon.js +34 -20
  69. package/es/DatePicker/Month.js +101 -79
  70. package/es/DatePicker/Picker.js +110 -83
  71. package/es/DatePicker/Quick.js +52 -39
  72. package/es/DatePicker/Range.js +241 -192
  73. package/es/DatePicker/Text.js +103 -91
  74. package/es/DatePicker/Time.js +165 -147
  75. package/es/DatePicker/TimeScroll.js +148 -116
  76. package/es/DatePicker/Year.js +74 -53
  77. package/es/DatePicker/index.js +16 -18
  78. package/es/DatePicker/paramUtils.js +92 -58
  79. package/es/DatePicker/styles/index.js +3 -4
  80. package/es/DatePicker/utils.js +189 -198
  81. package/es/DatePicker/value.js +139 -98
  82. package/es/Datum/Form.js +333 -282
  83. package/es/Datum/List.js +319 -201
  84. package/es/Datum/Tree.js +298 -239
  85. package/es/Datum/hoc.js +104 -69
  86. package/es/Datum/index.js +7 -8
  87. package/es/Datum/types.js +20 -25
  88. package/es/Divider/index.js +50 -32
  89. package/es/Divider/styles/index.js +3 -4
  90. package/es/Drawer/index.js +14 -9
  91. package/es/Dropdown/Item.js +56 -43
  92. package/es/Dropdown/index.js +273 -259
  93. package/es/Dropdown/styles/index.js +3 -4
  94. package/es/EditableArea/EditableArea.js +157 -136
  95. package/es/EditableArea/index.js +8 -15
  96. package/es/EditableArea/styles/index.js +3 -4
  97. package/es/Form/Block.js +83 -57
  98. package/es/Form/BlockField.js +32 -17
  99. package/es/Form/Field.js +59 -35
  100. package/es/Form/FieldError.js +27 -21
  101. package/es/Form/FieldSet.js +214 -156
  102. package/es/Form/Flow.js +51 -32
  103. package/es/Form/Form.js +181 -144
  104. package/es/Form/Item.js +181 -166
  105. package/es/Form/Loop.js +202 -146
  106. package/es/Form/formButton.js +58 -42
  107. package/es/Form/formContext.js +104 -95
  108. package/es/Form/index.d.ts +1 -0
  109. package/es/Form/index.js +40 -45
  110. package/es/Form/inputable.js +368 -292
  111. package/es/Form/mode.js +15 -9
  112. package/es/Form/styles/index.js +4 -5
  113. package/es/Gap/index.js +71 -47
  114. package/es/Gap/styles/index.js +3 -4
  115. package/es/Gap/support.js +11 -14
  116. package/es/Grid/index.js +88 -58
  117. package/es/Grid/utils.js +57 -58
  118. package/es/Icon/Icon.js +43 -42
  119. package/es/Icon/index.js +39 -22
  120. package/es/Icon/styles/index.js +3 -4
  121. package/es/Image/Gallery.js +128 -113
  122. package/es/Image/Group.js +60 -36
  123. package/es/Image/Image.js +227 -153
  124. package/es/Image/Magnify.js +123 -94
  125. package/es/Image/events.js +29 -26
  126. package/es/Image/index.js +6 -9
  127. package/es/Image/styles/index.js +3 -4
  128. package/es/Input/Group.js +17 -11
  129. package/es/Input/Input.js +158 -134
  130. package/es/Input/Number.js +199 -175
  131. package/es/Input/Password.js +54 -31
  132. package/es/Input/clear.js +41 -25
  133. package/es/Input/index.js +23 -35
  134. package/es/Input/styles/index.js +3 -4
  135. package/es/Lazyload/index.js +63 -42
  136. package/es/Lazyload/styles/index.js +3 -4
  137. package/es/Menu/Item.js +275 -236
  138. package/es/Menu/List.js +75 -67
  139. package/es/Menu/Root.js +372 -334
  140. package/es/Menu/context.js +18 -12
  141. package/es/Menu/index.js +3 -5
  142. package/es/Menu/styles/index.js +3 -4
  143. package/es/Message/Container.js +155 -119
  144. package/es/Message/index.js +42 -30
  145. package/es/Message/messager.js +29 -33
  146. package/es/Message/styles/index.js +3 -4
  147. package/es/Modal/Modal.js +80 -60
  148. package/es/Modal/Panel.js +258 -234
  149. package/es/Modal/context.js +15 -15
  150. package/es/Modal/events.js +213 -182
  151. package/es/Modal/index.js +12 -14
  152. package/es/Modal/styles/index.js +3 -4
  153. package/es/Pagination/Item.js +46 -32
  154. package/es/Pagination/Jumper.js +79 -66
  155. package/es/Pagination/Links.js +110 -82
  156. package/es/Pagination/Next.js +52 -31
  157. package/es/Pagination/PageSizeList.js +57 -40
  158. package/es/Pagination/Pagination.js +78 -54
  159. package/es/Pagination/Prev.js +49 -30
  160. package/es/Pagination/Simple.js +32 -18
  161. package/es/Pagination/index.js +68 -41
  162. package/es/Pagination/styles/index.js +3 -4
  163. package/es/Popover/Confirm.js +107 -64
  164. package/es/Popover/Panel.js +284 -231
  165. package/es/Popover/context.js +15 -12
  166. package/es/Popover/events.js +80 -86
  167. package/es/Popover/index.js +12 -14
  168. package/es/Popover/styles/index.js +3 -4
  169. package/es/Progress/Circle.js +70 -59
  170. package/es/Progress/Line.js +51 -39
  171. package/es/Progress/Popup.js +42 -24
  172. package/es/Progress/analyzeColor.js +18 -9
  173. package/es/Progress/index.js +13 -15
  174. package/es/Progress/styles/index.js +3 -4
  175. package/es/Radio/Group.js +105 -94
  176. package/es/Radio/Radio.js +2 -3
  177. package/es/Radio/index.js +15 -17
  178. package/es/Radio/styles/index.js +1 -1
  179. package/es/Rate/Rate.js +216 -167
  180. package/es/Rate/index.js +17 -10
  181. package/es/Rate/styles/index.js +3 -4
  182. package/es/Rule/convert.js +48 -57
  183. package/es/Rule/index.js +63 -40
  184. package/es/Rule/length.js +53 -38
  185. package/es/Rule/regExp.js +23 -14
  186. package/es/Rule/required.js +26 -18
  187. package/es/Rule/styles/index.js +1 -1
  188. package/es/Rule/type.js +26 -18
  189. package/es/Scroll/Bar.js +145 -117
  190. package/es/Scroll/Scroll.js +277 -217
  191. package/es/Scroll/context.js +20 -13
  192. package/es/Scroll/fixedLength.js +33 -24
  193. package/es/Scroll/index.js +89 -55
  194. package/es/Scroll/styles/index.js +3 -4
  195. package/es/Select/BoxList.js +218 -189
  196. package/es/Select/BoxOption.js +64 -38
  197. package/es/Select/FlexBox.js +107 -75
  198. package/es/Select/FlexResult.js +65 -49
  199. package/es/Select/Input.js +137 -113
  200. package/es/Select/More.js +124 -121
  201. package/es/Select/Option.js +73 -52
  202. package/es/Select/OptionList.js +236 -200
  203. package/es/Select/OptionTree.js +111 -96
  204. package/es/Select/Result.js +297 -271
  205. package/es/Select/Select.js +517 -491
  206. package/es/Select/filter.js +221 -148
  207. package/es/Select/group.js +74 -45
  208. package/es/Select/index.js +32 -31
  209. package/es/Select/styles/index.js +3 -4
  210. package/es/Slider/Container.js +145 -132
  211. package/es/Slider/Indicator.js +28 -13
  212. package/es/Slider/Slider.js +132 -103
  213. package/es/Slider/index.js +5 -8
  214. package/es/Slider/styles/index.js +3 -4
  215. package/es/Slider/utils.js +26 -30
  216. package/es/Spin/Multiple.js +153 -109
  217. package/es/Spin/Simple.js +33 -22
  218. package/es/Spin/Spin.js +29 -29
  219. package/es/Spin/index.js +66 -84
  220. package/es/Spin/styles/index.js +27 -30
  221. package/es/Sticky/context.js +12 -10
  222. package/es/Sticky/index.js +255 -194
  223. package/es/Sticky/styles/index.js +1 -1
  224. package/es/Switch/Switch.js +2 -3
  225. package/es/Switch/index.js +8 -14
  226. package/es/Table/Checkbox.js +68 -39
  227. package/es/Table/CheckboxAll.js +121 -64
  228. package/es/Table/Colgroup.js +72 -47
  229. package/es/Table/Expand.js +63 -43
  230. package/es/Table/SeperateTable.js +594 -444
  231. package/es/Table/SimpleTable.js +215 -136
  232. package/es/Table/Sorter.js +83 -62
  233. package/es/Table/Table.js +157 -157
  234. package/es/Table/Tbody.js +240 -176
  235. package/es/Table/Td.js +169 -130
  236. package/es/Table/Thead.js +206 -177
  237. package/es/Table/Tr.js +249 -205
  238. package/es/Table/TreeExpand.js +151 -116
  239. package/es/Table/context.js +15 -15
  240. package/es/Table/fixedAuto.js +82 -59
  241. package/es/Table/index.js +309 -228
  242. package/es/Table/resizable.js +89 -56
  243. package/es/Table/select.js +238 -215
  244. package/es/Table/styles/index.js +3 -4
  245. package/es/Tabs/Header.js +203 -160
  246. package/es/Tabs/Link.js +46 -28
  247. package/es/Tabs/Panel.js +49 -33
  248. package/es/Tabs/Tab.js +97 -79
  249. package/es/Tabs/Tabs.js +211 -177
  250. package/es/Tabs/Wrapper.js +37 -17
  251. package/es/Tabs/index.js +7 -10
  252. package/es/Tabs/styles/index.js +3 -4
  253. package/es/Tag/Input.js +70 -54
  254. package/es/Tag/Tag.js +198 -156
  255. package/es/Tag/index.js +5 -8
  256. package/es/Tag/styles/index.js +3 -4
  257. package/es/Textarea/Textarea.js +139 -118
  258. package/es/Textarea/index.js +10 -19
  259. package/es/Tooltip/Container.js +140 -127
  260. package/es/Tooltip/events.js +49 -55
  261. package/es/Tooltip/index.js +5 -8
  262. package/es/Tooltip/styles/index.js +3 -4
  263. package/es/Transfer/Card.js +212 -177
  264. package/es/Transfer/Transfer.js +160 -153
  265. package/es/Transfer/btns.js +97 -80
  266. package/es/Transfer/context.js +2 -3
  267. package/es/Transfer/filter.js +65 -35
  268. package/es/Transfer/index.js +9 -13
  269. package/es/Transfer/item.js +66 -41
  270. package/es/Transfer/select.js +15 -16
  271. package/es/Transfer/styles/index.js +3 -4
  272. package/es/Tree/Checkbox.js +72 -50
  273. package/es/Tree/Content.js +136 -95
  274. package/es/Tree/List.js +82 -53
  275. package/es/Tree/Node.js +237 -202
  276. package/es/Tree/Root.js +23 -19
  277. package/es/Tree/Tree.js +262 -197
  278. package/es/Tree/index.js +6 -9
  279. package/es/Tree/styles/index.js +3 -4
  280. package/es/Tree/toggle.js +89 -51
  281. package/es/TreeSelect/Input.js +73 -60
  282. package/es/TreeSelect/Result.js +213 -181
  283. package/es/TreeSelect/TreeSelect.js +327 -312
  284. package/es/TreeSelect/datum.js +56 -44
  285. package/es/TreeSelect/filter.js +134 -96
  286. package/es/TreeSelect/index.js +15 -23
  287. package/es/TreeSelect/styles/index.js +3 -4
  288. package/es/TreeSelect/tiled.js +143 -106
  289. package/es/Upload/Dragger.js +63 -39
  290. package/es/Upload/Drop.js +79 -57
  291. package/es/Upload/File.js +61 -48
  292. package/es/Upload/FileInput.js +53 -40
  293. package/es/Upload/Image.js +158 -115
  294. package/es/Upload/ImageFile.js +63 -43
  295. package/es/Upload/ImageResult.js +139 -114
  296. package/es/Upload/Progress.js +117 -105
  297. package/es/Upload/RemoveConfirm.js +58 -42
  298. package/es/Upload/Result.js +73 -58
  299. package/es/Upload/Upload.js +649 -490
  300. package/es/Upload/accept.js +33 -13
  301. package/es/Upload/context.js +12 -10
  302. package/es/Upload/index.js +16 -20
  303. package/es/Upload/request.js +48 -46
  304. package/es/Upload/styles/index.js +3 -4
  305. package/es/component.js +45 -24
  306. package/es/config.js +27 -19
  307. package/es/context/implementation.js +132 -94
  308. package/es/context/index.js +3 -4
  309. package/es/hoc/coin.js +118 -81
  310. package/es/hoc/config.js +31 -17
  311. package/es/hoc/delay.js +99 -55
  312. package/es/hoc/draggable.js +90 -80
  313. package/es/hoc/fetch.js +56 -33
  314. package/es/hoc/hidable.js +119 -98
  315. package/es/hoc/inputBorder.js +158 -158
  316. package/es/hoc/moveable.js +124 -96
  317. package/es/hoc/pagable.js +74 -55
  318. package/es/hoc/resizable.js +132 -100
  319. package/es/hoc/styles/index.js +7 -8
  320. package/es/hoc/trim.js +54 -32
  321. package/es/icons/Caret.js +14 -15
  322. package/es/icons/index.js +31 -85
  323. package/es/index.d.ts +1 -1
  324. package/es/index.js +58 -57
  325. package/es/locale/en_US.js +9 -30
  326. package/es/locale/index.js +13 -14
  327. package/es/locale/zh-CN.js +9 -17
  328. package/es/styles/expose.js +3 -4
  329. package/es/styles/index.js +1 -1
  330. package/es/utils/accept.js +15 -12
  331. package/es/utils/classname.js +23 -12
  332. package/es/utils/cleanProps.js +9 -21
  333. package/es/utils/clone.js +34 -27
  334. package/es/utils/color.js +310 -276
  335. package/es/utils/css-accessors.js +94 -45
  336. package/es/utils/dom/detect.js +29 -29
  337. package/es/utils/dom/document.js +23 -19
  338. package/es/utils/dom/element.js +139 -105
  339. package/es/utils/dom/getDataset.js +9 -9
  340. package/es/utils/dom/isDOMElement.js +3 -5
  341. package/es/utils/dom/normalizeWheel.js +32 -28
  342. package/es/utils/dom/popContainer.js +12 -13
  343. package/es/utils/dom/popover.js +79 -59
  344. package/es/utils/dom/ready.js +5 -6
  345. package/es/utils/dom/translate.js +10 -12
  346. package/es/utils/errors.js +47 -28
  347. package/es/utils/expose.js +97 -58
  348. package/es/utils/flat.js +122 -107
  349. package/es/utils/func.js +38 -20
  350. package/es/utils/hash.js +24 -20
  351. package/es/utils/index.js +24 -49
  352. package/es/utils/is.js +91 -70
  353. package/es/utils/lazyload.js +104 -86
  354. package/es/utils/notification.js +34 -20
  355. package/es/utils/numbers.js +61 -51
  356. package/es/utils/objects.js +221 -140
  357. package/es/utils/proptypes.js +21 -34
  358. package/es/utils/shallowEqual.js +46 -42
  359. package/es/utils/strings.js +50 -32
  360. package/es/utils/transform.js +24 -9
  361. package/es/utils/tree.js +78 -63
  362. package/es/utils/uid.js +14 -17
  363. package/es/utils/validate/index.js +71 -50
  364. package/es/utils/validate/isJson.js +7 -10
  365. package/es/utils/validate/nullable.js +10 -9
  366. package/es/utils/validate/range.js +22 -19
  367. package/es/utils/validate/rangeLength.js +19 -16
  368. package/es/utils/validate/regExp.js +10 -10
  369. package/es/utils/validate/required.js +11 -8
  370. package/es/utils/validate/type.js +56 -59
  371. package/es/utils/vars-inject.js +3420 -4248
  372. package/lib/DatePicker/utils.js +1 -1
  373. package/lib/Form/Field.js +8 -4
  374. package/lib/Form/Form.js +3 -0
  375. package/lib/Form/Item.js +1 -1
  376. package/lib/Form/index.d.ts +1 -0
  377. package/lib/Form/inputable.js +1 -1
  378. package/lib/Pagination/Jumper.js +3 -0
  379. package/lib/index.d.ts +1 -1
  380. package/lib/index.js +1 -1
  381. package/package.json +3 -2
@@ -1,256 +1,324 @@
1
- import React, { Component } from 'react'
2
- import ReactDOM from 'react-dom'
3
- import PropTypes from 'prop-types'
4
- import classnames from 'classnames'
5
- import shallowEqual from '../utils/shallowEqual'
6
- import { compose } from '../utils/func'
7
- import { scrollConsumer } from '../Scroll/context'
8
- import { listClass } from '../DataList/styles'
9
- import { docScroll, docSize } from '../utils/dom/document'
10
- import { getRTLPosition } from '../utils/strings'
11
- import zIndexConsumer from '../Modal/context'
12
- import { isRTL } from '../config'
13
-
14
- const PICKER_V_MARGIN = 4
15
- let root
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
3
+ import _inheritsLoose from "@babel/runtime/helpers/inheritsLoose";
4
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
5
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
6
+ import React, { Component } from 'react';
7
+ import ReactDOM from 'react-dom';
8
+ import PropTypes from 'prop-types';
9
+ import classnames from 'classnames';
10
+ import shallowEqual from '../utils/shallowEqual';
11
+ import { compose } from '../utils/func';
12
+ import { scrollConsumer } from '../Scroll/context';
13
+ import { listClass } from '../DataList/styles';
14
+ import { docScroll, docSize } from '../utils/dom/document';
15
+ import { getRTLPosition } from '../utils/strings';
16
+ import zIndexConsumer from '../Modal/context';
17
+ import { isRTL } from '../config';
18
+ var PICKER_V_MARGIN = 4;
19
+ var root;
20
+
16
21
  function initRoot() {
17
- root = document.createElement('div')
18
- root.className = listClass('root')
19
- document.body.appendChild(root)
22
+ root = document.createElement('div');
23
+ root.className = listClass('root');
24
+ document.body.appendChild(root);
20
25
  }
21
26
 
22
- const listPosition = ['drop-down', 'drop-up']
23
- const pickerPosition = ['left-bottom', 'left-top', 'right-bottom', 'right-top']
24
- const dropdownPosition = ['bottom-left', 'bottom-right', 'top-left', 'top-right']
27
+ var listPosition = ['drop-down', 'drop-up'];
28
+ var pickerPosition = ['left-bottom', 'left-top', 'right-bottom', 'right-top'];
29
+ var dropdownPosition = ['bottom-left', 'bottom-right', 'top-left', 'top-right'];
30
+ export default function (List) {
31
+ var AbsoluteList =
32
+ /*#__PURE__*/
33
+ function (_Component) {
34
+ _inheritsLoose(AbsoluteList, _Component);
25
35
 
26
- export default function(List) {
27
- class AbsoluteList extends Component {
28
- state = {
29
- overdoc: false,
30
- }
36
+ function AbsoluteList(props) {
37
+ var _this;
38
+
39
+ _this = _Component.call(this, props) || this;
31
40
 
32
- constructor(props) {
33
- super(props)
34
- this.handleRef = this.handleRef.bind(this)
35
- if (!props.absolute) return
36
- this.lastStyle = {}
41
+ _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "state", {
42
+ overdoc: false
43
+ });
44
+
45
+ _this.handleRef = _this.handleRef.bind(_assertThisInitialized(_assertThisInitialized(_this)));
46
+ if (!props.absolute) return _assertThisInitialized(_this);
47
+ _this.lastStyle = {};
48
+ if (!root) initRoot();
49
+ _this.container = typeof _this.props.absolute === 'function' ? _this.props.absolute() : root;
50
+ _this.element = document.createElement('div');
51
+ if (_this.container) _this.container.appendChild(_this.element);
37
52
 
38
- if (!root) initRoot()
39
- this.container = typeof this.props.absolute === 'function' ? this.props.absolute() : root
40
- this.element = document.createElement('div')
41
- if (this.container) this.container.appendChild(this.element)
42
53
  if (props.getResetPosition) {
43
- props.getResetPosition(this.resetPosition.bind(this))
54
+ props.getResetPosition(_this.resetPosition.bind(_assertThisInitialized(_assertThisInitialized(_this))));
44
55
  }
56
+
57
+ return _this;
45
58
  }
46
59
 
47
- componentDidMount() {
60
+ var _proto = AbsoluteList.prototype;
61
+
62
+ _proto.componentDidMount = function componentDidMount() {
48
63
  if (this.props.absolute && !this.container) {
49
- this.container = typeof this.props.absolute === 'function' ? this.props.absolute() : root
50
- this.container.appendChild(this.element)
64
+ this.container = typeof this.props.absolute === 'function' ? this.props.absolute() : root;
65
+ this.container.appendChild(this.element);
66
+
51
67
  if (this.props.focus) {
52
- this.forceUpdate()
68
+ this.forceUpdate();
53
69
  }
54
70
  }
55
- }
71
+ };
56
72
 
57
- componentDidUpdate(prevProps) {
58
- if (shallowEqual(prevProps.value, this.props.value)) return
59
- if (!this.props.focus) this.ajustdoc = false
60
- setTimeout(() => {
61
- this.forceUpdate()
62
- })
63
- }
73
+ _proto.componentDidUpdate = function componentDidUpdate(prevProps) {
74
+ var _this2 = this;
75
+
76
+ if (shallowEqual(prevProps.value, this.props.value)) return;
77
+ if (!this.props.focus) this.ajustdoc = false;
78
+ setTimeout(function () {
79
+ _this2.forceUpdate();
80
+ });
81
+ };
82
+
83
+ _proto.componentWillUnmount = function componentWillUnmount() {
84
+ var absolute = this.props.absolute;
85
+ if (!absolute) return;
64
86
 
65
- componentWillUnmount() {
66
- const { absolute } = this.props
67
- if (!absolute) return
68
87
  if (this.container) {
69
- this.container.removeChild(this.element)
88
+ this.container.removeChild(this.element);
70
89
  }
71
- }
90
+ };
72
91
 
73
- getPosition(rect) {
74
- const { fixed, absolute } = this.props
75
- let { position } = this.props
92
+ _proto.getPosition = function getPosition(rect) {
93
+ var _this$props = this.props,
94
+ fixed = _this$props.fixed,
95
+ absolute = _this$props.absolute;
96
+ var position = this.props.position;
97
+ var rtl = isRTL();
98
+ var style = {
99
+ position: 'absolute'
100
+ };
76
101
 
77
- const rtl = isRTL()
78
- const style = {
79
- position: 'absolute',
80
- }
81
102
  if (fixed) {
82
- const widthKey = fixed === 'min' ? 'minWidth' : 'width'
83
- style[widthKey] = rect.width
103
+ var widthKey = fixed === 'min' ? 'minWidth' : 'width';
104
+ style[widthKey] = rect.width;
84
105
  }
106
+
85
107
  if (dropdownPosition.includes(position)) {
86
- position = position
87
- .split('-')
88
- .reverse()
89
- .join('-')
108
+ position = position.split('-').reverse().join('-');
90
109
  }
91
110
 
92
111
  if (rtl) {
93
- position = getRTLPosition(position)
112
+ position = getRTLPosition(position);
94
113
  }
95
114
 
96
- let containerScroll = docScroll
97
- let containerRect = { left: 0, top: 0, right: 0, bottom: 0 }
98
- const { container } = this
115
+ var containerScroll = docScroll;
116
+ var containerRect = {
117
+ left: 0,
118
+ top: 0,
119
+ right: 0,
120
+ bottom: 0
121
+ };
122
+ var container = this.container;
123
+
99
124
  if (typeof absolute === 'function' && container) {
100
- containerRect = container.getBoundingClientRect()
125
+ containerRect = container.getBoundingClientRect();
101
126
  containerScroll = {
102
127
  left: container.scrollLeft,
103
- top: container.scrollTop,
104
- }
128
+ top: container.scrollTop
129
+ };
105
130
  }
106
- this.containerRect = containerRect
131
+
132
+ this.containerRect = containerRect;
107
133
 
108
134
  if (listPosition.includes(position)) {
109
- style.left = rect.left - containerRect.left + containerScroll.left
135
+ style.left = rect.left - containerRect.left + containerScroll.left;
136
+
110
137
  if (rtl) {
111
- style.left += rect.width
138
+ style.left += rect.width;
112
139
  }
140
+
113
141
  if (position === 'drop-down') {
114
- style.top = rect.top - containerRect.top + rect.height + containerScroll.top
142
+ style.top = rect.top - containerRect.top + rect.height + containerScroll.top;
115
143
  } else {
116
- style.bottom = -(rect.top - containerRect.top + containerScroll.top)
144
+ style.bottom = -(rect.top - containerRect.top + containerScroll.top);
117
145
  }
118
146
  } else if (pickerPosition.includes(position)) {
119
- const [h, v] = position.split('-')
147
+ var _position$split = position.split('-'),
148
+ h = _position$split[0],
149
+ v = _position$split[1];
150
+
120
151
  if (h === 'left') {
121
- style.left = rect.left - containerRect.left + containerScroll.left
152
+ style.left = rect.left - containerRect.left + containerScroll.left;
122
153
  } else {
123
- style.left = rect.right - containerRect.right + containerScroll.left
124
- style.transform = 'translateX(-100%)'
154
+ style.left = rect.right - containerRect.right + containerScroll.left;
155
+ style.transform = 'translateX(-100%)';
125
156
  }
157
+
126
158
  if (v === 'bottom') {
127
- style.top = rect.bottom - containerRect.bottom + containerScroll.top + PICKER_V_MARGIN
159
+ style.top = rect.bottom - containerRect.bottom + containerScroll.top + PICKER_V_MARGIN;
128
160
  } else {
129
- style.top = rect.top - containerRect.top + containerScroll.top - PICKER_V_MARGIN
130
- style.transform = style.transform ? 'translate(-100%, -100%)' : 'translateY(-100%)'
161
+ style.top = rect.top - containerRect.top + containerScroll.top - PICKER_V_MARGIN;
162
+ style.transform = style.transform ? 'translate(-100%, -100%)' : 'translateY(-100%)';
131
163
  }
132
164
  }
133
- return style
134
- }
135
165
 
136
- getStyle() {
137
- const { parentElement, scrollElement, focus } = this.props
138
- const lazyResult = { focus, style: this.lastStyle }
139
- if (!focus) return lazyResult
140
- let style = {}
166
+ return style;
167
+ };
168
+
169
+ _proto.getStyle = function getStyle() {
170
+ var _this$props2 = this.props,
171
+ parentElement = _this$props2.parentElement,
172
+ scrollElement = _this$props2.scrollElement,
173
+ focus = _this$props2.focus;
174
+ var lazyResult = {
175
+ focus: focus,
176
+ style: this.lastStyle
177
+ };
178
+ if (!focus) return lazyResult;
179
+ var style = {};
180
+
141
181
  if (parentElement) {
142
- const rect = parentElement.getBoundingClientRect()
143
- const scrollRect = scrollElement ? scrollElement.getBoundingClientRect() : {}
144
-
145
- if (
146
- rect.bottom < scrollRect.top ||
147
- rect.top > scrollRect.bottom ||
148
- rect.right < scrollRect.left ||
149
- rect.left > scrollRect.right
150
- ) {
151
- return { focus: false, style: this.lastStyle }
182
+ var rect = parentElement.getBoundingClientRect();
183
+ var scrollRect = scrollElement ? scrollElement.getBoundingClientRect() : {};
184
+
185
+ if (rect.bottom < scrollRect.top || rect.top > scrollRect.bottom || rect.right < scrollRect.left || rect.left > scrollRect.right) {
186
+ return {
187
+ focus: false,
188
+ style: this.lastStyle
189
+ };
152
190
  }
153
- style = this.getPosition(rect)
191
+
192
+ style = this.getPosition(rect);
154
193
  }
155
194
 
156
- if (shallowEqual(style, this.lastStyle)) return lazyResult
195
+ if (shallowEqual(style, this.lastStyle)) return lazyResult;
196
+ this.lastStyle = style;
197
+ return {
198
+ focus: focus,
199
+ style: style
200
+ };
201
+ };
157
202
 
158
- this.lastStyle = style
159
- return { focus, style }
160
- }
203
+ _proto.resetPosition = function resetPosition(clean) {
204
+ var _this$props3 = this.props,
205
+ focus = _this$props3.focus,
206
+ parentElement = _this$props3.parentElement;
207
+ if (!this.el || !focus || this.ajustdoc && !clean) return;
208
+ var pos = this.el.getBoundingClientRect();
209
+ var left = pos.left;
161
210
 
162
- resetPosition(clean) {
163
- const { focus, parentElement } = this.props
164
- if (!this.el || !focus || (this.ajustdoc && !clean)) return
165
- const pos = this.el.getBoundingClientRect()
166
- let { left } = pos
167
211
  if (parentElement) {
168
212
  // because the position changes
169
213
  // eslint-disable-next-line prefer-destructuring
170
- left = parentElement.getBoundingClientRect().left
214
+ left = parentElement.getBoundingClientRect().left;
171
215
  }
172
- const containerRect = this.containerRect || { left: 0, width: 0 }
173
- const overdoc = left - containerRect.left + pos.width > (containerRect.width || docSize.width)
174
- if (this.state.overdoc === overdoc) return
175
- this.ajustdoc = true
216
+
217
+ var containerRect = this.containerRect || {
218
+ left: 0,
219
+ width: 0
220
+ };
221
+ var overdoc = left - containerRect.left + pos.width > (containerRect.width || docSize.width);
222
+ if (this.state.overdoc === overdoc) return;
223
+ this.ajustdoc = true;
176
224
  this.setState({
177
- overdoc,
178
- })
179
- }
225
+ overdoc: overdoc
226
+ });
227
+ };
180
228
 
181
- handleRef(ref) {
182
- this.el = ref
183
- }
229
+ _proto.handleRef = function handleRef(ref) {
230
+ this.el = ref;
231
+ };
184
232
 
185
- renderList() {
186
- const {
187
- parentElement,
188
- absolute,
189
- focus,
190
- rootClass,
191
- position,
192
- scrollLeft,
193
- scrollTop,
194
- scrollElement,
195
- style = {},
196
- zIndex,
197
- getResetPosition,
198
- autoAdapt: ignore,
199
- ...props
200
- } = this.props
201
- const parsed = parseInt(zIndex, 10)
202
- if (!Number.isNaN(parsed)) style.zIndex = parsed
203
- const mergeStyle = Object.assign({}, style, this.state.overdoc ? { right: 0, left: 'auto' } : undefined)
204
- return <List getRef={this.handleRef} {...props} focus={focus} style={mergeStyle} />
205
- }
233
+ _proto.renderList = function renderList() {
234
+ var _this$props4 = this.props,
235
+ parentElement = _this$props4.parentElement,
236
+ absolute = _this$props4.absolute,
237
+ focus = _this$props4.focus,
238
+ rootClass = _this$props4.rootClass,
239
+ position = _this$props4.position,
240
+ scrollLeft = _this$props4.scrollLeft,
241
+ scrollTop = _this$props4.scrollTop,
242
+ scrollElement = _this$props4.scrollElement,
243
+ _this$props4$style = _this$props4.style,
244
+ style = _this$props4$style === void 0 ? {} : _this$props4$style,
245
+ zIndex = _this$props4.zIndex,
246
+ getResetPosition = _this$props4.getResetPosition,
247
+ ignore = _this$props4.autoAdapt,
248
+ props = _objectWithoutPropertiesLoose(_this$props4, ["parentElement", "absolute", "focus", "rootClass", "position", "scrollLeft", "scrollTop", "scrollElement", "style", "zIndex", "getResetPosition", "autoAdapt"]);
249
+
250
+ var parsed = parseInt(zIndex, 10);
251
+ if (!Number.isNaN(parsed)) style.zIndex = parsed;
252
+ var mergeStyle = Object.assign({}, style, this.state.overdoc ? {
253
+ right: 0,
254
+ left: 'auto'
255
+ } : undefined);
256
+ return React.createElement(List, _extends({
257
+ getRef: this.handleRef
258
+ }, props, {
259
+ focus: focus,
260
+ style: mergeStyle
261
+ }));
262
+ };
206
263
 
207
- render() {
208
- const { autoAdapt } = this.props
209
- setTimeout(() => {
210
- this.resetPosition(autoAdapt)
211
- })
264
+ _proto.render = function render() {
265
+ var _this3 = this;
266
+
267
+ var autoAdapt = this.props.autoAdapt;
268
+ setTimeout(function () {
269
+ _this3.resetPosition(autoAdapt);
270
+ });
212
271
 
213
272
  if (!this.props.absolute) {
214
- return this.renderList()
273
+ return this.renderList();
215
274
  }
216
- if (!this.container) return null
217
- const {
218
- parentElement,
219
- rootClass,
220
- absolute,
221
- position,
222
- scrollLeft,
223
- scrollTop,
224
- scrollElement,
225
- autoClass,
226
- zIndex,
227
- // do not need the getUpdate
228
- getResetPosition,
229
- // do not need the value
230
- value,
231
- autoAdapt: ignore,
232
- ...props
233
- } = this.props
234
- const mergeClass = classnames(listClass('absolute-wrapper'), rootClass, autoClass)
235
- const { focus, style } = props.focus ? this.getStyle() : { style: this.lastStyle }
236
- this.element.className = mergeClass
237
- const mergeStyle = Object.assign(
238
- {},
239
- style,
240
- props.style,
241
- this.state.overdoc ? { right: 0, left: 'auto' } : undefined
242
- )
243
- if (zIndex || typeof zIndex === 'number') mergeStyle.zIndex = parseInt(zIndex, 10)
244
- return ReactDOM.createPortal(
245
- <List getRef={this.handleRef} {...props} focus={focus} style={mergeStyle} />,
246
- this.element
247
- )
248
- }
249
- }
275
+
276
+ if (!this.container) return null;
277
+
278
+ var _this$props5 = this.props,
279
+ parentElement = _this$props5.parentElement,
280
+ rootClass = _this$props5.rootClass,
281
+ absolute = _this$props5.absolute,
282
+ position = _this$props5.position,
283
+ scrollLeft = _this$props5.scrollLeft,
284
+ scrollTop = _this$props5.scrollTop,
285
+ scrollElement = _this$props5.scrollElement,
286
+ autoClass = _this$props5.autoClass,
287
+ zIndex = _this$props5.zIndex,
288
+ getResetPosition = _this$props5.getResetPosition,
289
+ value = _this$props5.value,
290
+ ignore = _this$props5.autoAdapt,
291
+ props = _objectWithoutPropertiesLoose(_this$props5, ["parentElement", "rootClass", "absolute", "position", "scrollLeft", "scrollTop", "scrollElement", "autoClass", "zIndex", "getResetPosition", "value", "autoAdapt"]);
292
+
293
+ var mergeClass = classnames(listClass('absolute-wrapper'), rootClass, autoClass);
294
+
295
+ var _ref = props.focus ? this.getStyle() : {
296
+ style: this.lastStyle
297
+ },
298
+ focus = _ref.focus,
299
+ style = _ref.style;
300
+
301
+ this.element.className = mergeClass;
302
+ var mergeStyle = Object.assign({}, style, props.style, this.state.overdoc ? {
303
+ right: 0,
304
+ left: 'auto'
305
+ } : undefined);
306
+ if (zIndex || typeof zIndex === 'number') mergeStyle.zIndex = parseInt(zIndex, 10);
307
+ return ReactDOM.createPortal(React.createElement(List, _extends({
308
+ getRef: this.handleRef
309
+ }, props, {
310
+ focus: focus,
311
+ style: mergeStyle
312
+ })), this.element);
313
+ };
314
+
315
+ return AbsoluteList;
316
+ }(Component);
250
317
 
251
318
  AbsoluteList.propTypes = {
252
319
  focus: PropTypes.bool,
253
- fixed: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]), // same width with parentElement
320
+ fixed: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
321
+ // same width with parentElement
254
322
  parentElement: PropTypes.object,
255
323
  position: PropTypes.string,
256
324
  absolute: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),
@@ -263,11 +331,7 @@ export default function(List) {
263
331
  autoClass: PropTypes.string,
264
332
  value: PropTypes.any,
265
333
  getResetPosition: PropTypes.func,
266
- autoAdapt: PropTypes.bool,
267
- }
268
-
269
- return compose(
270
- scrollConsumer,
271
- zIndexConsumer
272
- )(AbsoluteList)
273
- }
334
+ autoAdapt: PropTypes.bool
335
+ };
336
+ return compose(scrollConsumer, zIndexConsumer)(AbsoluteList);
337
+ }