shineout 1.7.0 → 1.7.1-beta.3

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 (497) hide show
  1. package/css/Alert/index.d.ts +63 -0
  2. package/css/AnimationList/AbsoluteList.js +89 -48
  3. package/css/Breadcrumb/index.d.ts +68 -0
  4. package/css/Button/index.d.ts +160 -0
  5. package/css/Card/index.d.ts +161 -0
  6. package/css/CardGroup/CardGroup.js +1 -1
  7. package/css/CardGroup/index.d.ts +119 -0
  8. package/css/Carousel/index.d.ts +59 -0
  9. package/css/Cascader/index.d.ts +185 -0
  10. package/css/Checkbox/index.d.ts +120 -0
  11. package/css/DataList/index.d.ts +197 -0
  12. package/css/DatePicker/Container.js +1 -1
  13. package/css/DatePicker/index.d.ts +262 -0
  14. package/css/DatePicker/utils.js +1 -1
  15. package/css/Datum/List.js +54 -17
  16. package/css/Divider/index.d.ts +40 -0
  17. package/css/Drawer/index.d.ts +165 -0
  18. package/css/Dropdown/index.d.ts +122 -0
  19. package/css/EditableArea/index.d.ts +99 -0
  20. package/css/Form/Item.js +6 -3
  21. package/css/Form/formContext.js +6 -3
  22. package/css/Form/index.d.ts +466 -0
  23. package/css/Form/index.js +1 -1
  24. package/css/Form/inputable.js +63 -52
  25. package/css/Form/styles/form.css +12 -0
  26. package/css/Gap/index.d.ts +28 -0
  27. package/css/Grid/index.d.ts +38 -0
  28. package/css/Icon/index.d.ts +69 -0
  29. package/css/Image/index.d.ts +194 -0
  30. package/css/Input/Number.js +3 -1
  31. package/css/Input/index.d.ts +258 -0
  32. package/css/Menu/index.d.ts +147 -0
  33. package/css/Message/index.d.ts +72 -0
  34. package/css/Modal/events.js +71 -13
  35. package/css/Modal/index.d.ts +330 -0
  36. package/css/Pagination/index.d.ts +129 -0
  37. package/css/Popover/index.d.ts +241 -0
  38. package/css/Popover/styles/popover.css +1 -1
  39. package/css/Progress/index.d.ts +108 -0
  40. package/css/Radio/index.d.ts +61 -0
  41. package/css/Rate/index.d.ts +65 -0
  42. package/css/Rule/index.d.ts +90 -0
  43. package/css/Select/BoxList.js +5 -3
  44. package/css/Select/OptionList.js +5 -3
  45. package/css/Select/OptionTree.js +5 -3
  46. package/css/Select/Select.js +28 -8
  47. package/css/Select/index.d.ts +366 -0
  48. package/css/Slider/index.d.ts +102 -0
  49. package/css/Spin/index.d.ts +74 -0
  50. package/css/Sticky/index.d.ts +56 -0
  51. package/css/Switch/index.d.ts +47 -0
  52. package/css/Table/SeperateTable.js +26 -18
  53. package/css/Table/Table.js +1 -2
  54. package/css/Table/index.d.ts +541 -0
  55. package/css/Tabs/index.d.ts +225 -0
  56. package/css/Tag/Tag.js +8 -2
  57. package/css/Tag/index.d.ts +79 -0
  58. package/css/Textarea/index.d.ts +104 -0
  59. package/css/Tooltip/index.d.ts +69 -0
  60. package/css/Transfer/Transfer.js +13 -8
  61. package/css/Transfer/btns.js +25 -14
  62. package/css/Transfer/index.d.ts +157 -0
  63. package/css/Tree/index.d.ts +225 -0
  64. package/css/Tree/styles/tree.css +1 -1
  65. package/css/TreeSelect/TreeSelect.js +1 -1
  66. package/css/TreeSelect/index.d.ts +297 -0
  67. package/css/TreeSelect/styles/treeSelect.css +2 -4
  68. package/css/Upload/ImageResult.js +14 -3
  69. package/css/Upload/index.d.ts +529 -0
  70. package/css/index.d.ts +58 -0
  71. package/css/index.js +1 -1
  72. package/css/styles/expose.css +4 -1
  73. package/css/utils/numbers.js +59 -0
  74. package/css/utils/vars-inject.js +13 -0
  75. package/dist/shineout.js +4110 -3763
  76. package/dist/shineout.js.map +1 -1
  77. package/dist/shineout.min.js +1 -1
  78. package/dist/theme.antd.css +1 -1
  79. package/dist/theme.antd2.css +1 -1
  80. package/dist/theme.default.css +1 -1
  81. package/dist/theme.shineout.css +1 -1
  82. package/es/@types/common.d.ts +1 -1
  83. package/es/Alert/index.js +127 -107
  84. package/es/Alert/styles/index.js +3 -4
  85. package/es/AnimationList/AbsoluteList.js +267 -178
  86. package/es/AnimationList/LazyList.js +120 -92
  87. package/es/AnimationList/List.js +43 -23
  88. package/es/AnimationList/index.js +19 -14
  89. package/es/AnimationList/styles/index.js +3 -4
  90. package/es/Breadcrumb/index.js +77 -69
  91. package/es/Breadcrumb/styles/index.js +3 -4
  92. package/es/Button/Button.js +91 -74
  93. package/es/Button/Group.js +42 -28
  94. package/es/Button/Once.js +39 -23
  95. package/es/Button/index.js +7 -10
  96. package/es/Button/styles/index.js +3 -4
  97. package/es/Card/Accordion.js +58 -45
  98. package/es/Card/Body.js +55 -42
  99. package/es/Card/Card.js +85 -79
  100. package/es/Card/Footer.js +38 -15
  101. package/es/Card/Header.js +52 -34
  102. package/es/Card/Submit.js +51 -33
  103. package/es/Card/context.js +22 -16
  104. package/es/Card/index.js +16 -19
  105. package/es/Card/styles/index.js +3 -4
  106. package/es/CardGroup/CardGroup.js +94 -70
  107. package/es/CardGroup/Item.js +61 -43
  108. package/es/CardGroup/context.js +12 -10
  109. package/es/CardGroup/index.js +7 -10
  110. package/es/CardGroup/styles/index.js +3 -4
  111. package/es/Carousel/Item.js +31 -17
  112. package/es/Carousel/index.js +156 -123
  113. package/es/Carousel/styles/index.js +3 -4
  114. package/es/Cascader/Cascader.js +397 -346
  115. package/es/Cascader/FilterList.js +185 -142
  116. package/es/Cascader/Input.js +102 -79
  117. package/es/Cascader/List.js +66 -41
  118. package/es/Cascader/Node.js +153 -110
  119. package/es/Cascader/Result.js +286 -230
  120. package/es/Cascader/filter.js +92 -61
  121. package/es/Cascader/index.js +13 -18
  122. package/es/Cascader/styles/index.js +3 -4
  123. package/es/Checkbox/CheckItem.js +168 -154
  124. package/es/Checkbox/Checkbox.js +2 -3
  125. package/es/Checkbox/Group.js +106 -85
  126. package/es/Checkbox/context.js +12 -10
  127. package/es/Checkbox/index.js +14 -21
  128. package/es/Checkbox/styles/index.js +3 -4
  129. package/es/DataList/BaseItem.js +39 -21
  130. package/es/DataList/Extra.js +33 -17
  131. package/es/DataList/List.js +166 -140
  132. package/es/DataList/Meta.js +109 -74
  133. package/es/DataList/Pagination.js +9 -10
  134. package/es/DataList/index.js +13 -19
  135. package/es/DataList/styles/index.js +3 -4
  136. package/es/DatePicker/Container.js +469 -450
  137. package/es/DatePicker/Day.js +265 -258
  138. package/es/DatePicker/Icon.js +34 -20
  139. package/es/DatePicker/Month.js +101 -79
  140. package/es/DatePicker/Picker.js +110 -83
  141. package/es/DatePicker/Quick.js +52 -39
  142. package/es/DatePicker/Range.js +241 -192
  143. package/es/DatePicker/Text.js +103 -91
  144. package/es/DatePicker/Time.js +165 -147
  145. package/es/DatePicker/TimeScroll.js +148 -116
  146. package/es/DatePicker/Year.js +74 -53
  147. package/es/DatePicker/index.d.ts +5 -13
  148. package/es/DatePicker/index.js +16 -18
  149. package/es/DatePicker/paramUtils.js +92 -58
  150. package/es/DatePicker/styles/index.js +3 -4
  151. package/es/DatePicker/utils.js +189 -198
  152. package/es/DatePicker/value.js +139 -98
  153. package/es/Datum/Form.js +333 -282
  154. package/es/Datum/List.js +329 -181
  155. package/es/Datum/Tree.js +298 -239
  156. package/es/Datum/hoc.js +104 -69
  157. package/es/Datum/index.js +7 -8
  158. package/es/Datum/types.js +20 -25
  159. package/es/Divider/index.js +50 -32
  160. package/es/Divider/styles/index.js +3 -4
  161. package/es/Drawer/index.d.ts +165 -0
  162. package/es/Drawer/index.js +14 -9
  163. package/es/Dropdown/Item.js +56 -43
  164. package/es/Dropdown/index.js +273 -259
  165. package/es/Dropdown/styles/index.js +3 -4
  166. package/es/EditableArea/EditableArea.js +157 -136
  167. package/es/EditableArea/index.js +8 -15
  168. package/es/EditableArea/styles/index.js +3 -4
  169. package/es/Form/Block.js +83 -57
  170. package/es/Form/BlockField.js +32 -17
  171. package/es/Form/Field.js +56 -36
  172. package/es/Form/FieldError.js +27 -21
  173. package/es/Form/FieldSet.js +214 -156
  174. package/es/Form/Flow.js +51 -32
  175. package/es/Form/Form.js +178 -144
  176. package/es/Form/Item.js +182 -154
  177. package/es/Form/Loop.js +202 -146
  178. package/es/Form/formButton.js +58 -42
  179. package/es/Form/formContext.js +104 -83
  180. package/es/Form/index.d.ts +40 -24
  181. package/es/Form/index.js +40 -45
  182. package/es/Form/inputable.js +369 -285
  183. package/es/Form/mode.js +15 -9
  184. package/es/Form/styles/form.less +12 -0
  185. package/es/Form/styles/index.js +4 -5
  186. package/es/Gap/index.js +71 -47
  187. package/es/Gap/styles/index.js +3 -4
  188. package/es/Gap/support.js +11 -14
  189. package/es/Grid/index.js +88 -58
  190. package/es/Grid/utils.js +57 -58
  191. package/es/Icon/Icon.js +43 -42
  192. package/es/Icon/index.d.ts +2 -3
  193. package/es/Icon/index.js +39 -22
  194. package/es/Icon/styles/index.js +3 -4
  195. package/es/Image/Gallery.js +128 -113
  196. package/es/Image/Group.js +60 -36
  197. package/es/Image/Image.js +227 -153
  198. package/es/Image/Magnify.js +123 -94
  199. package/es/Image/events.js +29 -26
  200. package/es/Image/index.js +6 -9
  201. package/es/Image/styles/index.js +3 -4
  202. package/es/Input/Group.js +17 -11
  203. package/es/Input/Input.js +158 -134
  204. package/es/Input/Number.js +199 -174
  205. package/es/Input/Password.js +54 -31
  206. package/es/Input/clear.js +41 -25
  207. package/es/Input/index.js +23 -35
  208. package/es/Input/styles/index.js +3 -4
  209. package/es/Lazyload/index.js +63 -42
  210. package/es/Lazyload/styles/index.js +3 -4
  211. package/es/Menu/Item.js +275 -236
  212. package/es/Menu/List.js +75 -67
  213. package/es/Menu/Root.js +372 -334
  214. package/es/Menu/context.js +18 -12
  215. package/es/Menu/index.js +3 -5
  216. package/es/Menu/styles/index.js +3 -4
  217. package/es/Message/Container.js +155 -119
  218. package/es/Message/index.js +42 -30
  219. package/es/Message/messager.js +29 -33
  220. package/es/Message/styles/index.js +3 -4
  221. package/es/Modal/Modal.js +80 -60
  222. package/es/Modal/Panel.js +258 -234
  223. package/es/Modal/context.js +15 -15
  224. package/es/Modal/events.js +220 -155
  225. package/es/Modal/index.js +12 -14
  226. package/es/Modal/styles/index.js +3 -4
  227. package/es/Pagination/Item.js +46 -32
  228. package/es/Pagination/Jumper.js +77 -67
  229. package/es/Pagination/Links.js +110 -82
  230. package/es/Pagination/Next.js +52 -31
  231. package/es/Pagination/PageSizeList.js +57 -40
  232. package/es/Pagination/Pagination.js +78 -54
  233. package/es/Pagination/Prev.js +49 -30
  234. package/es/Pagination/Simple.js +32 -18
  235. package/es/Pagination/index.js +68 -41
  236. package/es/Pagination/styles/index.js +3 -4
  237. package/es/Popover/Confirm.js +107 -64
  238. package/es/Popover/Panel.js +284 -231
  239. package/es/Popover/context.js +15 -12
  240. package/es/Popover/events.js +80 -86
  241. package/es/Popover/index.js +12 -14
  242. package/es/Popover/styles/index.js +3 -4
  243. package/es/Popover/styles/popover.less +3 -3
  244. package/es/Progress/Circle.js +70 -59
  245. package/es/Progress/Line.js +51 -39
  246. package/es/Progress/Popup.js +42 -24
  247. package/es/Progress/analyzeColor.js +18 -9
  248. package/es/Progress/index.js +13 -15
  249. package/es/Progress/styles/index.js +3 -4
  250. package/es/Radio/Group.js +105 -94
  251. package/es/Radio/Radio.js +2 -3
  252. package/es/Radio/index.js +15 -17
  253. package/es/Radio/styles/index.js +1 -1
  254. package/es/Rate/Rate.js +216 -167
  255. package/es/Rate/index.js +17 -10
  256. package/es/Rate/styles/index.js +3 -4
  257. package/es/Rule/convert.js +48 -57
  258. package/es/Rule/index.js +63 -40
  259. package/es/Rule/length.js +53 -38
  260. package/es/Rule/regExp.js +23 -14
  261. package/es/Rule/required.js +26 -18
  262. package/es/Rule/styles/index.js +1 -1
  263. package/es/Rule/type.js +26 -18
  264. package/es/Scroll/Bar.js +145 -117
  265. package/es/Scroll/Scroll.js +277 -217
  266. package/es/Scroll/context.js +20 -13
  267. package/es/Scroll/fixedLength.js +33 -24
  268. package/es/Scroll/index.js +89 -55
  269. package/es/Scroll/styles/index.js +3 -4
  270. package/es/Select/BoxList.js +218 -188
  271. package/es/Select/BoxOption.js +64 -38
  272. package/es/Select/FlexBox.js +107 -75
  273. package/es/Select/FlexResult.js +65 -49
  274. package/es/Select/Input.js +137 -113
  275. package/es/Select/More.js +119 -118
  276. package/es/Select/Option.js +73 -52
  277. package/es/Select/OptionList.js +236 -198
  278. package/es/Select/OptionTree.js +111 -94
  279. package/es/Select/Result.js +294 -269
  280. package/es/Select/Select.js +523 -480
  281. package/es/Select/filter.js +221 -148
  282. package/es/Select/group.js +74 -45
  283. package/es/Select/index.d.ts +28 -19
  284. package/es/Select/index.js +32 -31
  285. package/es/Select/styles/index.js +3 -4
  286. package/es/Select/styles/select.less +1 -1
  287. package/es/Slider/Container.js +145 -132
  288. package/es/Slider/Indicator.js +28 -13
  289. package/es/Slider/Slider.js +132 -103
  290. package/es/Slider/index.js +5 -8
  291. package/es/Slider/styles/index.js +3 -4
  292. package/es/Slider/utils.js +26 -30
  293. package/es/Spin/Multiple.js +153 -109
  294. package/es/Spin/Simple.js +33 -22
  295. package/es/Spin/Spin.js +29 -29
  296. package/es/Spin/index.js +66 -84
  297. package/es/Spin/styles/index.js +27 -30
  298. package/es/Sticky/context.js +12 -10
  299. package/es/Sticky/index.js +255 -194
  300. package/es/Sticky/styles/index.js +1 -1
  301. package/es/Switch/Switch.js +2 -3
  302. package/es/Switch/index.js +8 -14
  303. package/es/Table/Checkbox.js +68 -39
  304. package/es/Table/CheckboxAll.js +121 -64
  305. package/es/Table/Colgroup.js +72 -47
  306. package/es/Table/Expand.js +63 -43
  307. package/es/Table/SeperateTable.js +596 -436
  308. package/es/Table/SimpleTable.js +215 -136
  309. package/es/Table/Sorter.js +83 -62
  310. package/es/Table/Table.js +157 -157
  311. package/es/Table/Tbody.js +240 -176
  312. package/es/Table/Td.js +169 -130
  313. package/es/Table/Thead.js +206 -177
  314. package/es/Table/Tr.js +249 -205
  315. package/es/Table/TreeExpand.js +151 -116
  316. package/es/Table/context.js +15 -15
  317. package/es/Table/fixedAuto.js +82 -59
  318. package/es/Table/index.d.ts +1 -1
  319. package/es/Table/index.js +309 -228
  320. package/es/Table/resizable.js +89 -56
  321. package/es/Table/select.js +238 -215
  322. package/es/Table/styles/index.js +3 -4
  323. package/es/Tabs/Header.js +203 -160
  324. package/es/Tabs/Link.js +46 -28
  325. package/es/Tabs/Panel.js +49 -33
  326. package/es/Tabs/Tab.js +97 -79
  327. package/es/Tabs/Tabs.js +211 -177
  328. package/es/Tabs/Wrapper.js +37 -17
  329. package/es/Tabs/index.js +7 -10
  330. package/es/Tabs/styles/index.js +3 -4
  331. package/es/Tag/Input.js +70 -54
  332. package/es/Tag/Tag.js +198 -152
  333. package/es/Tag/index.js +5 -8
  334. package/es/Tag/styles/index.js +3 -4
  335. package/es/Textarea/Textarea.js +139 -118
  336. package/es/Textarea/index.js +10 -19
  337. package/es/Tooltip/Container.js +140 -127
  338. package/es/Tooltip/events.js +49 -55
  339. package/es/Tooltip/index.js +5 -8
  340. package/es/Tooltip/styles/index.js +3 -4
  341. package/es/Transfer/Card.js +212 -177
  342. package/es/Transfer/Transfer.js +165 -153
  343. package/es/Transfer/btns.js +100 -71
  344. package/es/Transfer/context.js +2 -3
  345. package/es/Transfer/filter.js +65 -35
  346. package/es/Transfer/index.js +9 -13
  347. package/es/Transfer/item.js +66 -41
  348. package/es/Transfer/select.js +15 -16
  349. package/es/Transfer/styles/index.js +3 -4
  350. package/es/Tree/Checkbox.js +72 -50
  351. package/es/Tree/Content.js +136 -95
  352. package/es/Tree/List.js +82 -53
  353. package/es/Tree/Node.js +237 -202
  354. package/es/Tree/Root.js +23 -19
  355. package/es/Tree/Tree.js +262 -197
  356. package/es/Tree/index.js +6 -9
  357. package/es/Tree/styles/index.js +3 -4
  358. package/es/Tree/styles/tree.less +1 -1
  359. package/es/Tree/toggle.js +89 -51
  360. package/es/TreeSelect/Input.js +73 -60
  361. package/es/TreeSelect/Result.js +210 -169
  362. package/es/TreeSelect/TreeSelect.js +328 -313
  363. package/es/TreeSelect/datum.js +56 -44
  364. package/es/TreeSelect/filter.js +134 -96
  365. package/es/TreeSelect/index.d.ts +5 -3
  366. package/es/TreeSelect/index.js +15 -23
  367. package/es/TreeSelect/styles/index.js +3 -4
  368. package/es/TreeSelect/styles/treeSelect.less +4 -5
  369. package/es/TreeSelect/tiled.js +143 -106
  370. package/es/Upload/Dragger.js +63 -39
  371. package/es/Upload/Drop.js +79 -57
  372. package/es/Upload/File.js +61 -48
  373. package/es/Upload/FileInput.js +53 -40
  374. package/es/Upload/Image.js +158 -115
  375. package/es/Upload/ImageFile.js +63 -43
  376. package/es/Upload/ImageResult.js +141 -109
  377. package/es/Upload/Progress.js +117 -105
  378. package/es/Upload/RemoveConfirm.js +58 -42
  379. package/es/Upload/Result.js +73 -58
  380. package/es/Upload/Upload.js +649 -490
  381. package/es/Upload/accept.js +33 -13
  382. package/es/Upload/context.js +12 -10
  383. package/es/Upload/index.d.ts +5 -5
  384. package/es/Upload/index.js +16 -20
  385. package/es/Upload/request.js +48 -46
  386. package/es/Upload/styles/index.js +3 -4
  387. package/es/component.js +45 -24
  388. package/es/config.js +27 -19
  389. package/es/context/implementation.js +132 -94
  390. package/es/context/index.js +3 -4
  391. package/es/hoc/coin.js +118 -81
  392. package/es/hoc/config.js +31 -17
  393. package/es/hoc/delay.js +99 -55
  394. package/es/hoc/draggable.js +90 -80
  395. package/es/hoc/fetch.js +56 -33
  396. package/es/hoc/hidable.js +119 -98
  397. package/es/hoc/inputBorder.js +158 -158
  398. package/es/hoc/moveable.js +124 -96
  399. package/es/hoc/pagable.js +74 -55
  400. package/es/hoc/resizable.js +132 -100
  401. package/es/hoc/styles/index.js +7 -8
  402. package/es/hoc/trim.js +54 -32
  403. package/es/icons/Caret.js +14 -15
  404. package/es/icons/index.js +31 -85
  405. package/es/index.d.ts +58 -0
  406. package/es/index.js +58 -57
  407. package/es/locale/en_US.js +9 -30
  408. package/es/locale/index.js +13 -14
  409. package/es/locale/zh-CN.js +9 -17
  410. package/es/styles/expose.js +3 -4
  411. package/es/styles/expose.less +3 -0
  412. package/es/styles/index.js +1 -1
  413. package/es/styles/themes/cssvar.less +4 -1
  414. package/es/utils/accept.js +15 -12
  415. package/es/utils/classname.js +23 -12
  416. package/es/utils/cleanProps.js +9 -21
  417. package/es/utils/clone.js +34 -27
  418. package/es/utils/color.js +310 -276
  419. package/es/utils/css-accessors.js +94 -45
  420. package/es/utils/dom/detect.js +29 -29
  421. package/es/utils/dom/document.js +23 -19
  422. package/es/utils/dom/element.js +139 -105
  423. package/es/utils/dom/getDataset.js +9 -9
  424. package/es/utils/dom/isDOMElement.js +3 -5
  425. package/es/utils/dom/normalizeWheel.js +32 -28
  426. package/es/utils/dom/popContainer.js +12 -13
  427. package/es/utils/dom/popover.js +79 -59
  428. package/es/utils/dom/ready.js +5 -6
  429. package/es/utils/dom/translate.js +10 -12
  430. package/es/utils/errors.js +47 -28
  431. package/es/utils/expose.js +97 -58
  432. package/es/utils/flat.js +122 -107
  433. package/es/utils/func.js +38 -20
  434. package/es/utils/hash.js +24 -20
  435. package/es/utils/index.js +24 -49
  436. package/es/utils/is.js +91 -70
  437. package/es/utils/lazyload.js +104 -86
  438. package/es/utils/notification.js +34 -20
  439. package/es/utils/numbers.js +86 -22
  440. package/es/utils/objects.js +221 -140
  441. package/es/utils/proptypes.js +21 -34
  442. package/es/utils/shallowEqual.js +46 -42
  443. package/es/utils/strings.js +50 -32
  444. package/es/utils/transform.js +24 -9
  445. package/es/utils/tree.js +78 -63
  446. package/es/utils/uid.js +14 -17
  447. package/es/utils/validate/index.js +71 -50
  448. package/es/utils/validate/isJson.js +7 -10
  449. package/es/utils/validate/nullable.js +10 -9
  450. package/es/utils/validate/range.js +22 -19
  451. package/es/utils/validate/rangeLength.js +19 -16
  452. package/es/utils/validate/regExp.js +10 -10
  453. package/es/utils/validate/required.js +11 -8
  454. package/es/utils/validate/type.js +56 -59
  455. package/es/utils/vars-inject.js +3421 -4233
  456. package/lib/@types/common.d.ts +1 -1
  457. package/lib/AnimationList/AbsoluteList.js +89 -48
  458. package/lib/CardGroup/CardGroup.js +1 -1
  459. package/lib/DatePicker/Container.js +1 -1
  460. package/lib/DatePicker/index.d.ts +5 -13
  461. package/lib/DatePicker/utils.js +1 -1
  462. package/lib/Datum/List.js +54 -17
  463. package/lib/Form/Item.js +6 -3
  464. package/lib/Form/formContext.js +6 -3
  465. package/lib/Form/index.d.ts +40 -24
  466. package/lib/Form/index.js +1 -1
  467. package/lib/Form/inputable.js +63 -52
  468. package/lib/Form/styles/form.less +12 -0
  469. package/lib/Icon/index.d.ts +2 -3
  470. package/lib/Input/Number.js +3 -1
  471. package/lib/Modal/events.js +71 -13
  472. package/lib/Popover/styles/popover.less +3 -3
  473. package/lib/Select/BoxList.js +5 -3
  474. package/lib/Select/OptionList.js +5 -3
  475. package/lib/Select/OptionTree.js +5 -3
  476. package/lib/Select/Select.js +28 -8
  477. package/lib/Select/index.d.ts +28 -19
  478. package/lib/Select/styles/select.less +1 -1
  479. package/lib/Table/SeperateTable.js +26 -18
  480. package/lib/Table/Table.js +1 -2
  481. package/lib/Table/index.d.ts +1 -1
  482. package/lib/Tag/Tag.js +8 -2
  483. package/lib/Transfer/Transfer.js +13 -8
  484. package/lib/Transfer/btns.js +25 -14
  485. package/lib/Tree/styles/tree.less +1 -1
  486. package/lib/TreeSelect/TreeSelect.js +1 -1
  487. package/lib/TreeSelect/index.d.ts +5 -3
  488. package/lib/TreeSelect/styles/treeSelect.less +4 -5
  489. package/lib/Upload/ImageResult.js +14 -3
  490. package/lib/Upload/index.d.ts +5 -5
  491. package/lib/index.d.ts +1 -1
  492. package/lib/index.js +1 -1
  493. package/lib/styles/expose.less +3 -0
  494. package/lib/styles/themes/cssvar.less +4 -1
  495. package/lib/utils/numbers.js +59 -0
  496. package/lib/utils/vars-inject.js +13 -0
  497. package/package.json +3 -2
@@ -0,0 +1,466 @@
1
+ import * as React from 'react'
2
+ import { StandardProps } from '../@types/common'
3
+ import { ButtonProps } from '../Button'
4
+ import { RuleParamsType } from '../Rule'
5
+
6
+ type ReactNode = React.ReactNode;
7
+
8
+ export interface Base {
9
+ [formItemName: string]: any;
10
+ }
11
+
12
+ export interface RuleParams<Value = {}> {
13
+ [propName: string]: RuleParamsType<Value>
14
+ }
15
+
16
+ export interface FieldSetChildrenFunc<Value = any> {
17
+ list: any;
18
+ value: Value;
19
+ onChange: (value: Value) => void;
20
+ onRemove: () => void;
21
+ index: number;
22
+ onInsert: (value: Value) => void;
23
+ onAppend: (value: Value) => void;
24
+ }
25
+
26
+
27
+ export interface FieldChildrenFunc<Value = any> {
28
+ value: Value;
29
+ error: Error;
30
+ onChange: (value: Value) => void;
31
+ }
32
+
33
+ export interface FormProps<Value> extends StandardProps {
34
+ /**
35
+ * Form value
36
+ *
37
+ * Form值
38
+ *
39
+ * default:
40
+ */
41
+ value?: Value,
42
+
43
+ /**
44
+ * Form defaultValue
45
+ *
46
+ * Form默认值,仅当没有传value的时候生效
47
+ *
48
+ * default:
49
+ */
50
+ defaultValue?: Value,
51
+
52
+ /**
53
+ * The formdata helper class, which is created automatically inside a Form without setting it, usually does not need to be set.
54
+ *
55
+ * formdata 辅助类,不设置Form内部会自动创建,通常情况下不需要设置。
56
+ *
57
+ * default:
58
+ */
59
+ datum?: object;
60
+
61
+ /**
62
+ * When disabled is true, all the elements in the form are disabled.
63
+ *
64
+ * 是否禁用,为 true 时,表单内所有元素 disabled 都为 true
65
+ *
66
+ * default: false
67
+ */
68
+ disabled?: boolean;
69
+
70
+ /**
71
+ * When inline is true, the form is horizontal layout
72
+ *
73
+ * 是否水平布局
74
+ *
75
+ * default: false
76
+ */
77
+ inline?: boolean;
78
+
79
+ /**
80
+ * The default is empty, follow the theme style.
81
+ *
82
+ * 默认为空,跟随主题样式。
83
+ *
84
+ * default:
85
+ */
86
+ labelAlign?: 'top' | 'right' | 'left';
87
+
88
+ /**
89
+ * the default value is top.
90
+ *
91
+ * 默认顶部对齐
92
+ *
93
+ * default: 'top'
94
+ */
95
+ labelVerticalAlign?: 'top' | 'middle' | 'bottom';
96
+
97
+ /**
98
+ * The width of label. It is invalid when labelAlign is 'top'.
99
+ *
100
+ * 标签宽度,labelAlign 为 'top' 时无效。
101
+ *
102
+ * default: 140px
103
+ */
104
+ labelWidth?: string | number;
105
+
106
+ /**
107
+ * Single-line error prompt will not stretch the page height
108
+ *
109
+ * 单行错误提示不撑开页面高度
110
+ *
111
+ * default: false
112
+ */
113
+ keepErrorHeight?: boolean;
114
+
115
+ /**
116
+ * mode, with useMode
117
+ *
118
+ * 模式,和 useMode 配合使用
119
+ *
120
+ * default:
121
+ */
122
+ mode?: string;
123
+
124
+ /**
125
+ * callback function, executed when the value is changing
126
+ *
127
+ * 表单内组件值变化函数
128
+ *
129
+ * default:
130
+ */
131
+ onChange?: (data: Value) => void;
132
+
133
+ /**
134
+ * callback when the error happens
135
+ *
136
+ * 异常回调处理
137
+ *
138
+ * default:
139
+ */
140
+ onError?: (err: Error) => void;
141
+
142
+ /**
143
+ * the function for Form Submission. When the internal validation fails, it will not be triggered.
144
+ *
145
+ * 表单提交函数。表单内部校验失败时不会触发。
146
+ *
147
+ * default:
148
+ */
149
+ onSubmit?: (data: Value) => void;
150
+
151
+ /**
152
+ * When removeUndefined is true, remove undefined value on submit.
153
+ *
154
+ * 是否删除值为 undefined 的字段,默认值为删除
155
+ *
156
+ * default: true
157
+ */
158
+ removeUndefined?: boolean;
159
+
160
+ /**
161
+ * validation rules, see details in the Rules
162
+ *
163
+ * 校验规则,详见 Rules
164
+ *
165
+ * default:
166
+ */
167
+ rules?: Base;
168
+
169
+ /**
170
+ * When the verification fails, whether to scroll to the first verification failure component, when the value is a number, it means the offset relative to the top
171
+ *
172
+ * 校验失败时是否滚动到第一个校验失败组件,该值为数字时,表示相对于顶部的偏移量
173
+ *
174
+ * default: false
175
+ */
176
+ scrollToError?: boolean | number;
177
+
178
+ /**
179
+ * ms, the interval between two submissions(Prevent repeat submission)
180
+ *
181
+ * ms, 两次提交间隔时长(防止重复提交)
182
+ *
183
+ * default: 1000
184
+ */
185
+ throttle?: number;
186
+
187
+ /**
188
+ * validate after set value
189
+ *
190
+ * 设置 value 后是否自动校验
191
+ *
192
+ * default: false
193
+ */
194
+ initValidate?: boolean;
195
+
196
+ /**
197
+ * bind form ref, Can call some form methods
198
+ *
199
+ * 绑定 form 的引用, 可以调用某些 form 的方法
200
+ *
201
+ * default: -
202
+ */
203
+ formRef?: (form: any) => void;
204
+
205
+ }
206
+
207
+ export interface FormItemProps extends StandardProps {
208
+
209
+ /**
210
+ * When it is undefined, the tag does not be rendered or occupy space. If there is no content, but it needs to be occupied, you can use an empty string ''.
211
+ *
212
+ * 未定义时,标签不会render,也不会占位。如果无内容需要占位,使用空字符串 ''。
213
+ *
214
+ * default: undefined
215
+ */
216
+ label?: string | ReactNode;
217
+
218
+ /**
219
+ * The default is empty, follow the theme style.
220
+ *
221
+ * 默认为空,跟随主题样式。
222
+ *
223
+ * default:
224
+ */
225
+ labelAlign?: 'top' | 'right' | 'left';
226
+
227
+ /**
228
+ * The width of label. It is invalid when labelAlign is 'top'.
229
+ *
230
+ * 标签宽度,labelAlign 为 'top' 时无效。
231
+ *
232
+ * default: 140px
233
+ */
234
+ labelWidth?: string | number;
235
+
236
+ /**
237
+ * Required tags for pure display. Do not trigger validation
238
+ *
239
+ * 必填标记,纯展示用,不会触发校验
240
+ *
241
+ * default: false
242
+ */
243
+ required?: boolean;
244
+
245
+ /**
246
+ * Prompting information
247
+ *
248
+ * 提示文案
249
+ *
250
+ * default:
251
+ */
252
+ tip?: string;
253
+
254
+ /**
255
+ * Single-line error prompt will not stretch the page height
256
+ *
257
+ * 单行错误提示不撑开页面高度
258
+ *
259
+ * default: false
260
+ */
261
+ keepErrorHeight?: boolean;
262
+
263
+ }
264
+
265
+ export interface FormFieldProps<Value> {
266
+ /**
267
+ * The name of a Form that accesses data
268
+ *
269
+ * Form 存取数据的名称
270
+ *
271
+ * default: none
272
+ */
273
+ name: string;
274
+
275
+ /**
276
+ * bind name, render while the name change
277
+ *
278
+ * 绑定校验字段名。当值变化后,触发绑定的字段校验。
279
+ *
280
+ * default:
281
+ */
282
+ bind?: string[];
283
+
284
+ /**
285
+ * React components that support value and onChange or function. The function object attribute is as follows: value: The value obtained from the parent Form or Form.Block by name. error: the error information of data validation. type is Error. onChange: The callback when the value is changing.
286
+ *
287
+ * 支持 value 和 onChange 的 React 组件,或者函数,函数object属性如下。value: 根据 name 从上级 Form 或 Form.Block 获取的值。error:数据校验错误信息,类型为 Error。onChange: 值改变回调函数
288
+ *
289
+ * default: required
290
+ */
291
+ children?: ((opts: FieldChildrenFunc<Value>) => ReactNode) | ReactNode;
292
+
293
+ /**
294
+ * default value
295
+ *
296
+ * 默认值
297
+ *
298
+ * default:
299
+ */
300
+ defaultValue?: string | number;
301
+
302
+ /**
303
+ * Validation rules
304
+ *
305
+ * 校验规则
306
+ *
307
+ * default: none
308
+ */
309
+ rules?: RuleParamsType<Value>;
310
+
311
+ }
312
+
313
+ export interface FormFieldSetProps<Value> {
314
+ /**
315
+ * The name that accesses data from from
316
+ *
317
+ * 从 Form 中存取数据的名称
318
+ *
319
+ * default: required
320
+ */
321
+ name: string;
322
+
323
+ /**
324
+ * When children type is not function, handle a set data type of object
325
+ *
326
+ * When children type is function, handle a group of data type of array. options property:
327
+ *
328
+ * list: all data of name.
329
+ *
330
+ * value: a single piece of data for the value obtained by name.
331
+ *
332
+ * onChange: a callback when the value is changing.
333
+ *
334
+ * onRemove: a callback when a child component is removed.
335
+ *
336
+ * index: the current index.
337
+ *
338
+ * onInsert: Insert a piece of data before the current item.
339
+ *
340
+ * onAppend: Insert a piece of data after the current item.
341
+ *
342
+ * children 不为 function,用来处理 object 类型数据,children 内的 name 会拼接 FieldSet name,如 FieldSet name 为 'a', children 元素name 为 b,children 实际处理的数据为 a.b;
343
+ *
344
+ * children 为 function 时,用来处理数组数据。options 属性为
345
+ *
346
+ * list: name 下的全部数据。
347
+ *
348
+ * value: 根据name获取的值的单条数据。
349
+ *
350
+ * onChange: 子组件数据改变回调。
351
+ *
352
+ * onRemove: 子组件删除回调。
353
+ *
354
+ * index: 当前项索引。
355
+ *
356
+ * onInsert: 在当前项之前插入一条数据。
357
+ *
358
+ * onAppend: 在当前项之后附加一条数据。
359
+ *
360
+ * default: required
361
+ */
362
+ children?: ((opts: FieldSetChildrenFunc<Value>) => ReactNode) | ReactNode;
363
+
364
+ /**
365
+ * Default value
366
+ *
367
+ * 默认值
368
+ *
369
+ * default:
370
+ */
371
+ defaultValue?: string | number;
372
+
373
+ /**
374
+ * content with empty
375
+ *
376
+ * 数据为空时展示内容。(仅在children为function时有效)
377
+ *
378
+ * default:
379
+ */
380
+ empty?: (onInsert: Value) => ReactNode;
381
+
382
+ /**
383
+ * Validation rules
384
+ *
385
+ * 校验规则
386
+ *
387
+ * default: none
388
+ */
389
+ rules?: RuleParamsType<Value>;
390
+
391
+ }
392
+
393
+ export interface FormFlowProps {
394
+
395
+ /**
396
+ * datum is the object of Datum.Form.
397
+ *
398
+ * datum 为 Datum.Form 对象
399
+ *
400
+ * default: required
401
+ */
402
+ children?: (datum: any) => ReactNode;
403
+
404
+ /**
405
+ * Specifying which fields to change trigger the Flow update.
406
+ *
407
+ * names 为空时,Form 内任意值变化会触发 Flow 更新;不为空时,只监听指定字段变化
408
+ *
409
+ * default: none
410
+ */
411
+ names?: string[];
412
+
413
+ }
414
+
415
+ export interface FormSubmitProps extends ButtonProps { }
416
+
417
+ export interface FormResetProps extends ButtonProps { }
418
+
419
+ declare class FormFlow extends React.Component<FormFlowProps, {}> {
420
+ render(): JSX.Element;
421
+ }
422
+
423
+ declare class FormFieldSet<Value> extends React.Component<FormFieldSetProps<Value>, {}> {
424
+ render(): JSX.Element;
425
+ }
426
+
427
+ declare class FormField<Value> extends React.Component<FormFieldProps<Value>, {}> {
428
+ render(): JSX.Element;
429
+ }
430
+
431
+ declare class FormItem extends React.Component<FormItemProps, {}> {
432
+ render(): JSX.Element;
433
+ }
434
+
435
+ declare class FormButton extends React.Component<ButtonProps, {}> {
436
+ render(): JSX.Element;
437
+ }
438
+
439
+ declare class FormSubmit extends React.Component<FormSubmitProps, {}> {
440
+ render(): JSX.Element;
441
+ }
442
+
443
+ declare class FormReset extends React.Component<FormResetProps, {}> {
444
+ render(): JSX.Element;
445
+ }
446
+
447
+
448
+ declare class Form<Value> extends React.Component<FormProps<Value>, {}> {
449
+ static Item: typeof FormItem;
450
+
451
+ static Field: typeof FormField;
452
+
453
+ static FieldSet: typeof FormFieldSet;
454
+
455
+ static Flow: typeof FormFlow;
456
+
457
+ static Button: typeof FormButton;
458
+
459
+ static Submit: typeof FormSubmit;
460
+
461
+ static Reset: typeof FormReset;
462
+
463
+ render(): JSX.Element;
464
+ }
465
+
466
+ export default Form
package/css/Form/index.js CHANGED
@@ -39,7 +39,7 @@ var exportForm = (0, _func.compose)(_Datum.default.hoc({
39
39
  type: 'form',
40
40
  bindProps: ['removeUndefined', 'error']
41
41
  }), _formContext.formProvider)((0, _context.consumer)(_Form.default, ['setFormStatus']));
42
- exportForm.Item = (0, _formContext.formConsumer)(['formDatum', 'labelWidth', 'labelAlign', 'labelVerticalAlign'])(_Item.default);
42
+ exportForm.Item = (0, _formContext.formConsumer)(['formDatum', 'labelWidth', 'labelAlign', 'labelVerticalAlign', 'keepErrorHeight'])(_Item.default);
43
43
  exportForm.Field = (0, _inputable.default)(_Field.default);
44
44
  exportForm.Block = (0, _formContext.formConsumer)(['formDatum', 'combineRules'])(_Block.default);
45
45
  exportForm.BlockField = (0, _inputable.default)(_BlockField.default);
@@ -100,12 +100,21 @@ var _default = (0, _func.curry)(function (Origin) {
100
100
  _Component.prototype.componentDidMount.call(this);
101
101
 
102
102
  var _this$props = this.props,
103
- formDatum = _this$props.formDatum,
104
- loopContext = _this$props.loopContext,
105
- name = _this$props.name,
106
- defaultValue = _this$props.defaultValue,
107
- bindInputToItem = _this$props.bindInputToItem,
108
- popover = _this$props.popover;
103
+ onChange = _this$props.onChange,
104
+ readOnly = _this$props.readOnly,
105
+ disabled = _this$props.disabled;
106
+
107
+ if ('value' in this.props && !onChange && disabled !== true && readOnly !== true) {
108
+ console.error('You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`');
109
+ }
110
+
111
+ var _this$props2 = this.props,
112
+ formDatum = _this$props2.formDatum,
113
+ loopContext = _this$props2.loopContext,
114
+ name = _this$props2.name,
115
+ defaultValue = _this$props2.defaultValue,
116
+ bindInputToItem = _this$props2.bindInputToItem,
117
+ popover = _this$props2.popover;
109
118
 
110
119
  if (formDatum && name) {
111
120
  if (Array.isArray(name)) {
@@ -144,11 +153,11 @@ var _default = (0, _func.curry)(function (Origin) {
144
153
  _proto.componentWillUnmount = function componentWillUnmount() {
145
154
  _Component.prototype.componentWillUnmount.call(this);
146
155
 
147
- var _this$props2 = this.props,
148
- formDatum = _this$props2.formDatum,
149
- name = _this$props2.name,
150
- loopContext = _this$props2.loopContext,
151
- unbindInputFromItem = _this$props2.unbindInputFromItem;
156
+ var _this$props3 = this.props,
157
+ formDatum = _this$props3.formDatum,
158
+ name = _this$props3.name,
159
+ loopContext = _this$props3.loopContext,
160
+ unbindInputFromItem = _this$props3.unbindInputFromItem;
152
161
  clearTimeout(this.updateTimer);
153
162
 
154
163
  if (formDatum && name) {
@@ -165,11 +174,11 @@ var _default = (0, _func.curry)(function (Origin) {
165
174
  };
166
175
 
167
176
  _proto.getValue = function getValue() {
168
- var _this$props3 = this.props,
169
- formDatum = _this$props3.formDatum,
170
- name = _this$props3.name,
171
- value = _this$props3.value,
172
- defaultValue = _this$props3.defaultValue;
177
+ var _this$props4 = this.props,
178
+ formDatum = _this$props4.formDatum,
179
+ name = _this$props4.name,
180
+ value = _this$props4.value,
181
+ defaultValue = _this$props4.defaultValue;
173
182
 
174
183
  if (formDatum && name) {
175
184
  if (Array.isArray(name)) {
@@ -187,10 +196,10 @@ var _default = (0, _func.curry)(function (Origin) {
187
196
  };
188
197
 
189
198
  _proto.getError = function getError() {
190
- var _this$props4 = this.props,
191
- formDatum = _this$props4.formDatum,
192
- name = _this$props4.name,
193
- error = _this$props4.error;
199
+ var _this$props5 = this.props,
200
+ formDatum = _this$props5.formDatum,
201
+ name = _this$props5.name,
202
+ error = _this$props5.error;
194
203
 
195
204
  if ('error' in this.props) {
196
205
  return error;
@@ -208,11 +217,11 @@ var _default = (0, _func.curry)(function (Origin) {
208
217
  };
209
218
 
210
219
  _proto.handleError = function handleError(error) {
211
- var _this$props5 = this.props,
212
- formDatum = _this$props5.formDatum,
213
- name = _this$props5.name,
214
- onItemError = _this$props5.onItemError,
215
- onError = _this$props5.onError;
220
+ var _this$props6 = this.props,
221
+ formDatum = _this$props6.formDatum,
222
+ name = _this$props6.name,
223
+ onItemError = _this$props6.onItemError,
224
+ onError = _this$props6.onError;
216
225
 
217
226
  if (formDatum && name) {
218
227
  if (!(0, _errors.isSameError)(error, formDatum.getError(this.errorName, true))) {
@@ -238,11 +247,11 @@ var _default = (0, _func.curry)(function (Origin) {
238
247
  _proto.validate = function validate(value, data, type) {
239
248
  var _this3 = this;
240
249
 
241
- var _this$props6 = this.props,
242
- name = _this$props6.name,
243
- formDatum = _this$props6.formDatum,
244
- combineRules = _this$props6.combineRules,
245
- bind = _this$props6.bind;
250
+ var _this$props7 = this.props,
251
+ name = _this$props7.name,
252
+ formDatum = _this$props7.formDatum,
253
+ combineRules = _this$props7.combineRules,
254
+ bind = _this$props7.bind;
246
255
  var names = Array.isArray(name) ? name : [name];
247
256
  var validates = [];
248
257
  var validateProps = (0, _objects.filterProps)(this.props, function (v) {
@@ -294,11 +303,11 @@ var _default = (0, _func.curry)(function (Origin) {
294
303
  _proto.handleChange = function handleChange(value) {
295
304
  var _this4 = this;
296
305
 
297
- var _this$props7 = this.props,
298
- formDatum = _this$props7.formDatum,
299
- name = _this$props7.name,
300
- fieldSetValidate = _this$props7.fieldSetValidate,
301
- onChange = _this$props7.onChange;
306
+ var _this$props8 = this.props,
307
+ formDatum = _this$props8.formDatum,
308
+ name = _this$props8.name,
309
+ fieldSetValidate = _this$props8.fieldSetValidate,
310
+ onChange = _this$props8.onChange;
302
311
  var currentValue = this.getValue();
303
312
 
304
313
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
@@ -338,10 +347,10 @@ var _default = (0, _func.curry)(function (Origin) {
338
347
  return;
339
348
  }
340
349
 
341
- var _this$props8 = this.props,
342
- name = _this$props8.name,
343
- onChange = _this$props8.onChange,
344
- forceChangeOnValueSet = _this$props8.forceChangeOnValueSet;
350
+ var _this$props9 = this.props,
351
+ name = _this$props9.name,
352
+ onChange = _this$props9.onChange,
353
+ forceChangeOnValueSet = _this$props9.forceChangeOnValueSet;
345
354
  var newValue = !Array.isArray(name) ? value : (0, _immer.default)(this.getValue(), function (draft) {
346
355
  name.forEach(function (n, i) {
347
356
  if (n === sn) draft[i] = value;
@@ -372,18 +381,18 @@ var _default = (0, _func.curry)(function (Origin) {
372
381
  };
373
382
 
374
383
  _proto.render = function render() {
375
- var _this$props9 = this.props,
376
- formDatum = _this$props9.formDatum,
377
- value = _this$props9.value,
378
- required = _this$props9.required,
379
- loopContext = _this$props9.loopContext,
380
- bind = _this$props9.bind,
381
- onItemError = _this$props9.onItemError,
382
- bindInputToItem = _this$props9.bindInputToItem,
383
- unbindInputFromItem = _this$props9.unbindInputFromItem,
384
- scuSkip = _this$props9.scuSkip,
385
- defaultValue = _this$props9.defaultValue,
386
- other = (0, _objectWithoutPropertiesLoose2.default)(_this$props9, ["formDatum", "value", "required", "loopContext", "bind", "onItemError", "bindInputToItem", "unbindInputFromItem", "scuSkip", "defaultValue"]);
384
+ var _this$props10 = this.props,
385
+ formDatum = _this$props10.formDatum,
386
+ value = _this$props10.value,
387
+ required = _this$props10.required,
388
+ loopContext = _this$props10.loopContext,
389
+ bind = _this$props10.bind,
390
+ onItemError = _this$props10.onItemError,
391
+ bindInputToItem = _this$props10.bindInputToItem,
392
+ unbindInputFromItem = _this$props10.unbindInputFromItem,
393
+ scuSkip = _this$props10.scuSkip,
394
+ defaultValue = _this$props10.defaultValue,
395
+ other = (0, _objectWithoutPropertiesLoose2.default)(_this$props10, ["formDatum", "value", "required", "loopContext", "bind", "onItemError", "bindInputToItem", "unbindInputFromItem", "scuSkip", "defaultValue"]);
387
396
  return _react.default.createElement(Origin, (0, _extends2.default)({}, other, {
388
397
  formDatum: formDatum,
389
398
  error: this.getError(),
@@ -424,7 +433,9 @@ var _default = (0, _func.curry)(function (Origin) {
424
433
  unbindInputFromItem: _propTypes.default.func,
425
434
  value: _propTypes.default.any,
426
435
  scuSkip: _propTypes.default.array,
427
- error: _propTypes.default.object
436
+ error: _propTypes.default.object,
437
+ readOnly: _propTypes.default.bool,
438
+ disabled: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.func])
428
439
  }), (0, _defineProperty2.default)(_class, "defaultProps", {
429
440
  rules: [],
430
441
  scuSkip: ['onChange', 'rules']
@@ -10,6 +10,18 @@
10
10
  align-items: flex-start;
11
11
  margin-bottom: var(--form-item-margin-bottom, 20px);
12
12
  }
13
+ .so-form-item.so-form-item-keep-height {
14
+ margin-bottom: var(--form-Item-min-keep-height, 24px);
15
+ }
16
+ .so-form-item.so-form-item-keep-height .so-form-error {
17
+ margin: 0;
18
+ height: auto;
19
+ min-height: var(--form-Item-min-keep-height, 24px);
20
+ line-height: 1.5715;
21
+ }
22
+ .so-form-item.so-form-item-keep-height.so-form-invalid {
23
+ margin-bottom: 0;
24
+ }
13
25
  .so-form-item.so-form-label-vertical-align-middle {
14
26
  -webkit-box-align: center;
15
27
  -ms-flex-align: center;
@@ -0,0 +1,28 @@
1
+ import * as React from 'react'
2
+ import { StandardProps } from '../@types/common'
3
+
4
+ export interface GapProps extends StandardProps{
5
+
6
+ /**
7
+ * column spacing in the horizontal direction
8
+ *
9
+ * 水平方向的列间距
10
+ *
11
+ * default: 8
12
+ */
13
+ column?: number | string;
14
+
15
+ /**
16
+ * vertical line spacing
17
+ *
18
+ * 垂直方向的行间距
19
+ *
20
+ * default: 8
21
+ */
22
+ row?: number | string;
23
+
24
+ }
25
+
26
+ declare class Gap extends React.Component<GapProps, any> {}
27
+
28
+ export default Gap