amis 1.8.0-beta.1 → 1.8.0-beta.13

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 (426) hide show
  1. package/lib/Schema.d.ts +9 -2
  2. package/lib/Schema.js.map +1 -1
  3. package/lib/SchemaRenderer.js +19 -3
  4. package/lib/SchemaRenderer.js.map +2 -2
  5. package/lib/WithRootStore.d.ts +18 -0
  6. package/lib/WithStore.js +2 -1
  7. package/lib/WithStore.js.map +2 -2
  8. package/lib/actions/CmptAction.js +26 -4
  9. package/lib/actions/CmptAction.js.map +2 -2
  10. package/lib/actions/PageAction.d.ts +32 -0
  11. package/lib/actions/PageAction.js +72 -0
  12. package/lib/actions/PageAction.js.map +13 -0
  13. package/lib/actions/index.d.ts +1 -0
  14. package/lib/actions/index.js +1 -0
  15. package/lib/actions/index.js.map +2 -2
  16. package/lib/components/AssociatedSelection.js +9 -2
  17. package/lib/components/AssociatedSelection.js.map +2 -2
  18. package/lib/components/BarCode.js +1 -1
  19. package/lib/components/BarCode.js.map +2 -2
  20. package/lib/components/CalendarMobile.d.ts +84 -84
  21. package/lib/components/Cascader.d.ts +2 -0
  22. package/lib/components/Cascader.js +28 -12
  23. package/lib/components/Cascader.js.map +2 -2
  24. package/lib/components/Checkbox.d.ts +24 -23
  25. package/lib/components/Checkbox.js +5 -1
  26. package/lib/components/Checkbox.js.map +2 -2
  27. package/lib/components/Collapse.d.ts +20 -20
  28. package/lib/components/DatePicker.d.ts +84 -84
  29. package/lib/components/DatePicker.js +8 -5
  30. package/lib/components/DatePicker.js.map +2 -2
  31. package/lib/components/DateRangePicker.d.ts +285 -171
  32. package/lib/components/DateRangePicker.js +471 -66
  33. package/lib/components/DateRangePicker.js.map +2 -2
  34. package/lib/components/Drawer.js +1 -1
  35. package/lib/components/Drawer.js.map +2 -2
  36. package/lib/components/ListGroup.d.ts +21 -21
  37. package/lib/components/Modal.js +1 -1
  38. package/lib/components/Modal.js.map +2 -2
  39. package/lib/components/MonthRangePicker.d.ts +84 -84
  40. package/lib/components/Overlay.d.ts +1 -0
  41. package/lib/components/Overlay.js +4 -3
  42. package/lib/components/Overlay.js.map +2 -2
  43. package/lib/components/Progress.d.ts +29 -24
  44. package/lib/components/Progress.js +44 -16
  45. package/lib/components/Progress.js.map +2 -2
  46. package/lib/components/PullRefresh.d.ts +86 -0
  47. package/lib/components/PullRefresh.js +135 -0
  48. package/lib/components/PullRefresh.js.map +13 -0
  49. package/lib/components/Radios.d.ts +22 -22
  50. package/lib/components/Radios.js +3 -5
  51. package/lib/components/Radios.js.map +2 -2
  52. package/lib/components/Range.d.ts +2 -2
  53. package/lib/components/Range.js +24 -11
  54. package/lib/components/Range.js.map +2 -2
  55. package/lib/components/Spinner.d.ts +200 -107
  56. package/lib/components/Spinner.js +30 -26
  57. package/lib/components/Spinner.js.map +2 -2
  58. package/lib/components/Steps.d.ts +6 -0
  59. package/lib/components/Steps.js +13 -9
  60. package/lib/components/Steps.js.map +2 -2
  61. package/lib/components/Tooltip.d.ts +4 -0
  62. package/lib/components/Tooltip.js +6 -4
  63. package/lib/components/Tooltip.js.map +2 -2
  64. package/lib/components/TooltipWrapper.d.ts +66 -4
  65. package/lib/components/TooltipWrapper.js +40 -8
  66. package/lib/components/TooltipWrapper.js.map +2 -2
  67. package/lib/components/Transfer.d.ts +84 -84
  68. package/lib/components/TransferDropDown.d.ts +84 -84
  69. package/lib/components/Tree.d.ts +87 -85
  70. package/lib/components/Tree.js +13 -5
  71. package/lib/components/Tree.js.map +2 -2
  72. package/lib/components/TreeSelection.d.ts +84 -84
  73. package/lib/components/calendar/Calendar.js +0 -13
  74. package/lib/components/calendar/Calendar.js.map +2 -2
  75. package/lib/components/calendar/TimeView.d.ts +1 -0
  76. package/lib/components/calendar/TimeView.js +7 -0
  77. package/lib/components/calendar/TimeView.js.map +2 -2
  78. package/lib/components/calendar/YearsView.js +3 -3
  79. package/lib/components/calendar/YearsView.js.map +2 -2
  80. package/lib/components/condition-builder/Expression.d.ts +1 -0
  81. package/lib/components/condition-builder/Expression.js +4 -4
  82. package/lib/components/condition-builder/Expression.js.map +2 -2
  83. package/lib/components/condition-builder/Field.d.ts +1 -0
  84. package/lib/components/condition-builder/Field.js +3 -2
  85. package/lib/components/condition-builder/Field.js.map +2 -2
  86. package/lib/components/condition-builder/Group.d.ts +1 -0
  87. package/lib/components/condition-builder/Group.js +2 -2
  88. package/lib/components/condition-builder/Group.js.map +2 -2
  89. package/lib/components/condition-builder/GroupOrItem.d.ts +1 -0
  90. package/lib/components/condition-builder/GroupOrItem.js +2 -2
  91. package/lib/components/condition-builder/GroupOrItem.js.map +2 -2
  92. package/lib/components/condition-builder/InputSwitch.d.ts +2 -1
  93. package/lib/components/condition-builder/InputSwitch.js +2 -2
  94. package/lib/components/condition-builder/InputSwitch.js.map +2 -2
  95. package/lib/components/condition-builder/Item.d.ts +1 -0
  96. package/lib/components/condition-builder/Item.js +9 -8
  97. package/lib/components/condition-builder/Item.js.map +2 -2
  98. package/lib/components/condition-builder/Value.d.ts +1 -0
  99. package/lib/components/condition-builder/Value.js +5 -5
  100. package/lib/components/condition-builder/Value.js.map +2 -2
  101. package/lib/components/condition-builder/index.d.ts +1 -0
  102. package/lib/components/condition-builder/index.js +2 -2
  103. package/lib/components/condition-builder/index.js.map +2 -2
  104. package/lib/components/formula/Editor.d.ts +87 -85
  105. package/lib/components/formula/Editor.js +10 -6
  106. package/lib/components/formula/Editor.js.map +2 -2
  107. package/lib/components/formula/Picker.js +3 -1
  108. package/lib/components/formula/Picker.js.map +2 -2
  109. package/lib/factory.d.ts +5 -0
  110. package/lib/factory.js +22 -1
  111. package/lib/factory.js.map +2 -2
  112. package/lib/index.js +1 -1
  113. package/lib/locale/de-DE.js +18 -1
  114. package/lib/locale/de-DE.js.map +2 -2
  115. package/lib/locale/en-US.js +18 -1
  116. package/lib/locale/en-US.js.map +2 -2
  117. package/lib/locale/zh-CN.js +18 -1
  118. package/lib/locale/zh-CN.js.map +2 -2
  119. package/lib/renderers/Action.d.ts +2 -0
  120. package/lib/renderers/Action.js +23 -5
  121. package/lib/renderers/Action.js.map +2 -2
  122. package/lib/renderers/App.d.ts +1 -0
  123. package/lib/renderers/App.js +3 -0
  124. package/lib/renderers/App.js.map +2 -2
  125. package/lib/renderers/CRUD.d.ts +8 -0
  126. package/lib/renderers/CRUD.js +12 -5
  127. package/lib/renderers/CRUD.js.map +2 -2
  128. package/lib/renderers/Carousel.d.ts +1 -0
  129. package/lib/renderers/Carousel.js +13 -1
  130. package/lib/renderers/Carousel.js.map +2 -2
  131. package/lib/renderers/Chart.d.ts +1 -0
  132. package/lib/renderers/Chart.js +3 -0
  133. package/lib/renderers/Chart.js.map +2 -2
  134. package/lib/renderers/Dialog.d.ts +1 -0
  135. package/lib/renderers/Dialog.js +3 -0
  136. package/lib/renderers/Dialog.js.map +2 -2
  137. package/lib/renderers/Drawer.d.ts +1 -0
  138. package/lib/renderers/Drawer.js +6 -1
  139. package/lib/renderers/Drawer.js.map +2 -2
  140. package/lib/renderers/Form/Checkbox.d.ts +5 -2
  141. package/lib/renderers/Form/Checkbox.js +2 -2
  142. package/lib/renderers/Form/Checkbox.js.map +2 -2
  143. package/lib/renderers/Form/Checkboxes.d.ts +7 -2
  144. package/lib/renderers/Form/Checkboxes.js +101 -12
  145. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  146. package/lib/renderers/Form/Combo.d.ts +2 -1
  147. package/lib/renderers/Form/Combo.js +54 -16
  148. package/lib/renderers/Form/Combo.js.map +2 -2
  149. package/lib/renderers/Form/DiffEditor.d.ts +3 -2
  150. package/lib/renderers/Form/Editor.d.ts +2 -2
  151. package/lib/renderers/Form/InputCity.d.ts +87 -84
  152. package/lib/renderers/Form/InputCity.js +44 -2
  153. package/lib/renderers/Form/InputCity.js.map +2 -2
  154. package/lib/renderers/Form/InputDate.js +10 -3
  155. package/lib/renderers/Form/InputDate.js.map +2 -2
  156. package/lib/renderers/Form/InputDateRange.d.ts +5 -0
  157. package/lib/renderers/Form/InputDateRange.js +12 -3
  158. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  159. package/lib/renderers/Form/InputFile.js +19 -8
  160. package/lib/renderers/Form/InputFile.js.map +2 -2
  161. package/lib/renderers/Form/InputImage.js +18 -7
  162. package/lib/renderers/Form/InputImage.js.map +2 -2
  163. package/lib/renderers/Form/InputMonthRange.js +5 -1
  164. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  165. package/lib/renderers/Form/InputRange.js +13 -14
  166. package/lib/renderers/Form/InputRange.js.map +2 -2
  167. package/lib/renderers/Form/InputText.d.ts +1 -1
  168. package/lib/renderers/Form/InputText.js +8 -10
  169. package/lib/renderers/Form/InputText.js.map +2 -2
  170. package/lib/renderers/Form/InputTree.d.ts +5 -0
  171. package/lib/renderers/Form/InputTree.js +51 -2
  172. package/lib/renderers/Form/InputTree.js.map +2 -2
  173. package/lib/renderers/Form/Item.d.ts +79 -76
  174. package/lib/renderers/Form/Item.js +3 -1
  175. package/lib/renderers/Form/Item.js.map +2 -2
  176. package/lib/renderers/Form/NestedSelect.d.ts +4 -0
  177. package/lib/renderers/Form/NestedSelect.js +14 -5
  178. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  179. package/lib/renderers/Form/Options.js +61 -27
  180. package/lib/renderers/Form/Options.js.map +2 -2
  181. package/lib/renderers/Form/Select.js +4 -2
  182. package/lib/renderers/Form/Select.js.map +2 -2
  183. package/lib/renderers/Form/Textarea.js +2 -1
  184. package/lib/renderers/Form/Textarea.js.map +2 -2
  185. package/lib/renderers/Form/TreeSelect.d.ts +11 -2
  186. package/lib/renderers/Form/TreeSelect.js +56 -10
  187. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  188. package/lib/renderers/Form/index.d.ts +3 -0
  189. package/lib/renderers/Form/index.js +53 -16
  190. package/lib/renderers/Form/index.js.map +2 -2
  191. package/lib/renderers/Form/wrapControl.d.ts +10 -0
  192. package/lib/renderers/Form/wrapControl.js +41 -19
  193. package/lib/renderers/Form/wrapControl.js.map +2 -2
  194. package/lib/renderers/Nav.d.ts +82 -67
  195. package/lib/renderers/Nav.js +49 -13
  196. package/lib/renderers/Nav.js.map +2 -2
  197. package/lib/renderers/Page.d.ts +21 -0
  198. package/lib/renderers/Page.js +54 -14
  199. package/lib/renderers/Page.js.map +2 -2
  200. package/lib/renderers/Progress.d.ts +3 -6
  201. package/lib/renderers/Progress.js +2 -2
  202. package/lib/renderers/Progress.js.map +2 -2
  203. package/lib/renderers/Service.d.ts +3 -0
  204. package/lib/renderers/Service.js +55 -20
  205. package/lib/renderers/Service.js.map +2 -2
  206. package/lib/renderers/Spinner.d.ts +58 -2
  207. package/lib/renderers/Spinner.js +8 -1
  208. package/lib/renderers/Spinner.js.map +2 -2
  209. package/lib/renderers/Steps.d.ts +8 -0
  210. package/lib/renderers/Steps.js +2 -2
  211. package/lib/renderers/Steps.js.map +2 -2
  212. package/lib/renderers/Table/ColumnToggler.d.ts +4 -0
  213. package/lib/renderers/Table/ColumnToggler.js +11 -6
  214. package/lib/renderers/Table/ColumnToggler.js.map +2 -2
  215. package/lib/renderers/Table/TableCell.js +27 -1
  216. package/lib/renderers/Table/TableCell.js.map +2 -2
  217. package/lib/renderers/Table/index.d.ts +2 -0
  218. package/lib/renderers/Table/index.js +23 -10
  219. package/lib/renderers/Table/index.js.map +2 -2
  220. package/lib/renderers/Tabs.d.ts +4 -0
  221. package/lib/renderers/Tabs.js +22 -6
  222. package/lib/renderers/Tabs.js.map +2 -2
  223. package/lib/renderers/TooltipWrapper.d.ts +35 -6
  224. package/lib/renderers/TooltipWrapper.js +19 -8
  225. package/lib/renderers/TooltipWrapper.js.map +2 -2
  226. package/lib/renderers/Wizard.d.ts +7 -3
  227. package/lib/renderers/Wizard.js +269 -152
  228. package/lib/renderers/Wizard.js.map +2 -2
  229. package/lib/store/combo.d.ts +2 -2
  230. package/lib/store/crud.d.ts +1 -0
  231. package/lib/store/crud.js +55 -19
  232. package/lib/store/crud.js.map +2 -2
  233. package/lib/store/form.d.ts +1 -1
  234. package/lib/store/form.js +5 -1
  235. package/lib/store/form.js.map +2 -2
  236. package/lib/store/formItem.js +1 -1
  237. package/lib/store/formItem.js.map +2 -2
  238. package/lib/store/index.d.ts +5 -0
  239. package/lib/store/index.js +14 -0
  240. package/lib/store/index.js.map +2 -2
  241. package/lib/store/table.d.ts +2 -2
  242. package/lib/store/table.js +2 -2
  243. package/lib/store/table.js.map +2 -2
  244. package/lib/themes/ang-ie11.css +768 -199
  245. package/lib/themes/ang.css +723 -142
  246. package/lib/themes/ang.css.map +1 -1
  247. package/lib/themes/antd-ie11.css +851 -282
  248. package/lib/themes/antd.css +724 -143
  249. package/lib/themes/antd.css.map +1 -1
  250. package/lib/themes/cxd-ie11.css +879 -310
  251. package/lib/themes/cxd.css +727 -146
  252. package/lib/themes/cxd.css.map +1 -1
  253. package/lib/themes/dark-ie11.css +769 -200
  254. package/lib/themes/dark.css +723 -142
  255. package/lib/themes/dark.css.map +1 -1
  256. package/lib/themes/default-ie11.css +879 -310
  257. package/lib/themes/default.css +727 -146
  258. package/lib/themes/default.css.map +1 -1
  259. package/lib/types.d.ts +3 -1
  260. package/lib/types.js.map +1 -1
  261. package/lib/utils/ColorScale.d.ts +19 -0
  262. package/lib/utils/ColorScale.js +104 -0
  263. package/lib/utils/ColorScale.js.map +13 -0
  264. package/lib/utils/api.js +20 -4
  265. package/lib/utils/api.js.map +2 -2
  266. package/lib/utils/columnsSplit.d.ts +1 -0
  267. package/lib/utils/columnsSplit.js +40 -0
  268. package/lib/utils/columnsSplit.js.map +13 -0
  269. package/lib/utils/debug.d.ts +1 -1
  270. package/lib/utils/debug.js +16 -22
  271. package/lib/utils/debug.js.map +2 -2
  272. package/lib/utils/dom.d.ts +1 -1
  273. package/lib/utils/dom.js +7 -5
  274. package/lib/utils/dom.js.map +2 -2
  275. package/lib/utils/position.js +0 -1
  276. package/lib/utils/position.js.map +2 -2
  277. package/lib/utils/scrollPosition.d.ts +6 -0
  278. package/lib/utils/scrollPosition.js +31 -0
  279. package/lib/utils/scrollPosition.js.map +13 -0
  280. package/package.json +3 -2
  281. package/schema.json +29681 -28936
  282. package/scss/_properties.scss +44 -13
  283. package/scss/components/_barcode.scss +1 -1
  284. package/scss/components/_carousel.scss +1 -0
  285. package/scss/components/_column-toggler.scss +21 -11
  286. package/scss/components/_debug.scss +3 -3
  287. package/scss/components/_formula.scss +1 -1
  288. package/scss/components/_nav.scss +51 -6
  289. package/scss/components/_progress.scss +4 -6
  290. package/scss/components/_pull-refresh.scss +25 -0
  291. package/scss/components/_spinner.scss +134 -56
  292. package/scss/components/_steps.scss +199 -8
  293. package/scss/components/_tooltip.scss +4 -9
  294. package/scss/components/form/_checks.scss +125 -2
  295. package/scss/components/form/_combo.scss +13 -1
  296. package/scss/components/form/_date-range.scss +27 -2
  297. package/scss/components/form/_date.scss +13 -1
  298. package/scss/components/form/_editor.scss +2 -1
  299. package/scss/components/form/_file.scss +4 -0
  300. package/scss/components/form/_form.scss +31 -8
  301. package/scss/components/form/_number.scss +3 -2
  302. package/scss/components/form/_select.scss +0 -1
  303. package/scss/components/form/_textarea.scss +1 -23
  304. package/scss/components/form/_transfer.scss +3 -2
  305. package/scss/themes/_antd-variables.scss +1 -1
  306. package/scss/themes/_common.scss +1 -0
  307. package/scss/themes/_cxd-variables.scss +4 -4
  308. package/sdk/ang-ie11.css +816 -182
  309. package/sdk/ang.css +775 -129
  310. package/sdk/antd-ie11.css +896 -262
  311. package/sdk/antd.css +776 -130
  312. package/sdk/barcode.js +51 -51
  313. package/sdk/charts.js +14 -14
  314. package/sdk/codemirror.js +7 -7
  315. package/sdk/color-picker.js +65 -65
  316. package/sdk/cropperjs.js +2 -2
  317. package/sdk/cxd-ie11.css +907 -273
  318. package/sdk/cxd.css +779 -133
  319. package/sdk/dark-ie11.css +817 -183
  320. package/sdk/dark.css +775 -129
  321. package/sdk/exceljs.js +1 -1
  322. package/sdk/locale/de-DE.js +18 -1
  323. package/sdk/markdown.js +69 -69
  324. package/sdk/papaparse.js +1 -1
  325. package/sdk/renderers/Form/CityDB.js +1 -1
  326. package/sdk/rest.js +17 -17
  327. package/sdk/rich-text.js +62 -62
  328. package/sdk/sdk-ie11.css +907 -273
  329. package/sdk/sdk.css +779 -133
  330. package/sdk/sdk.js +1317 -1273
  331. package/sdk/thirds/hls.js/hls.js +1 -1
  332. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  333. package/sdk/tinymce.js +57 -57
  334. package/src/Schema.ts +10 -0
  335. package/src/SchemaRenderer.tsx +32 -14
  336. package/src/WithStore.tsx +3 -1
  337. package/src/actions/CmptAction.ts +28 -0
  338. package/src/actions/PageAction.ts +62 -0
  339. package/src/actions/index.ts +1 -0
  340. package/src/components/AssociatedSelection.tsx +9 -3
  341. package/src/components/BarCode.tsx +2 -2
  342. package/src/components/Cascader.tsx +37 -11
  343. package/src/components/Checkbox.tsx +11 -5
  344. package/src/components/DatePicker.tsx +12 -4
  345. package/src/components/DateRangePicker.tsx +551 -88
  346. package/src/components/Drawer.tsx +1 -0
  347. package/src/components/Modal.tsx +1 -0
  348. package/src/components/Overlay.tsx +6 -3
  349. package/src/components/Progress.tsx +57 -22
  350. package/src/components/PullRefresh.tsx +197 -0
  351. package/src/components/Radios.tsx +6 -17
  352. package/src/components/Range.tsx +26 -12
  353. package/src/components/Spinner.tsx +77 -42
  354. package/src/components/Steps.tsx +28 -27
  355. package/src/components/Tooltip.tsx +12 -3
  356. package/src/components/TooltipWrapper.tsx +137 -33
  357. package/src/components/Tree.tsx +19 -5
  358. package/src/components/calendar/Calendar.tsx +0 -14
  359. package/src/components/calendar/TimeView.tsx +12 -0
  360. package/src/components/calendar/YearsView.tsx +3 -4
  361. package/src/components/condition-builder/Expression.tsx +6 -1
  362. package/src/components/condition-builder/Field.tsx +5 -1
  363. package/src/components/condition-builder/Group.tsx +4 -1
  364. package/src/components/condition-builder/GroupOrItem.tsx +4 -1
  365. package/src/components/condition-builder/InputSwitch.tsx +4 -1
  366. package/src/components/condition-builder/Item.tsx +28 -4
  367. package/src/components/condition-builder/Value.tsx +7 -1
  368. package/src/components/condition-builder/index.tsx +4 -2
  369. package/src/components/formula/Editor.tsx +20 -15
  370. package/src/components/formula/Picker.tsx +9 -5
  371. package/src/factory.tsx +29 -1
  372. package/src/locale/de-DE.ts +18 -1
  373. package/src/locale/en-US.ts +18 -1
  374. package/src/locale/zh-CN.ts +18 -1
  375. package/src/renderers/Action.tsx +22 -1
  376. package/src/renderers/App.tsx +4 -0
  377. package/src/renderers/CRUD.tsx +23 -5
  378. package/src/renderers/Carousel.tsx +8 -0
  379. package/src/renderers/Chart.tsx +4 -0
  380. package/src/renderers/Dialog.tsx +4 -0
  381. package/src/renderers/Drawer.tsx +14 -2
  382. package/src/renderers/Form/Checkbox.tsx +11 -2
  383. package/src/renderers/Form/Checkboxes.tsx +106 -23
  384. package/src/renderers/Form/Combo.tsx +104 -49
  385. package/src/renderers/Form/InputCity.tsx +33 -4
  386. package/src/renderers/Form/InputDate.tsx +18 -4
  387. package/src/renderers/Form/InputDateRange.tsx +27 -3
  388. package/src/renderers/Form/InputFile.tsx +23 -7
  389. package/src/renderers/Form/InputImage.tsx +22 -6
  390. package/src/renderers/Form/InputMonthRange.tsx +7 -1
  391. package/src/renderers/Form/InputRange.tsx +18 -16
  392. package/src/renderers/Form/InputText.tsx +14 -4
  393. package/src/renderers/Form/InputTree.tsx +40 -2
  394. package/src/renderers/Form/Item.tsx +7 -0
  395. package/src/renderers/Form/NestedSelect.tsx +23 -4
  396. package/src/renderers/Form/Options.tsx +26 -7
  397. package/src/renderers/Form/Select.tsx +5 -3
  398. package/src/renderers/Form/Textarea.tsx +3 -1
  399. package/src/renderers/Form/TreeSelect.tsx +47 -9
  400. package/src/renderers/Form/index.tsx +56 -25
  401. package/src/renderers/Form/wrapControl.tsx +23 -12
  402. package/src/renderers/Nav.tsx +231 -33
  403. package/src/renderers/Page.tsx +96 -33
  404. package/src/renderers/Progress.tsx +7 -9
  405. package/src/renderers/Service.tsx +66 -27
  406. package/src/renderers/Spinner.tsx +85 -3
  407. package/src/renderers/Steps.tsx +14 -0
  408. package/src/renderers/Table/ColumnToggler.tsx +36 -11
  409. package/src/renderers/Table/TableCell.tsx +39 -1
  410. package/src/renderers/Table/index.tsx +43 -19
  411. package/src/renderers/Tabs.tsx +75 -28
  412. package/src/renderers/TooltipWrapper.tsx +71 -28
  413. package/src/renderers/Wizard.tsx +169 -93
  414. package/src/store/crud.ts +50 -5
  415. package/src/store/form.ts +8 -3
  416. package/src/store/formItem.ts +1 -2
  417. package/src/store/index.ts +20 -0
  418. package/src/store/table.ts +2 -2
  419. package/src/types.ts +8 -1
  420. package/src/utils/ColorScale.ts +138 -0
  421. package/src/utils/api.ts +26 -4
  422. package/src/utils/columnsSplit.tsx +57 -0
  423. package/src/utils/debug.tsx +17 -24
  424. package/src/utils/dom.tsx +7 -6
  425. package/src/utils/position.ts +0 -1
  426. package/src/utils/scrollPosition.ts +29 -0
@@ -13,46 +13,50 @@ var react_1 = (0, tslib_1.__importDefault)(require("react"));
13
13
  var theme_1 = require("../theme");
14
14
  var Transition_1 = tslib_1.__importStar(require("react-transition-group/Transition"));
15
15
  var icons_1 = require("./icons");
16
+ var icon_1 = require("../utils/icon");
16
17
  var fadeStyles = (_a = {},
17
- _a[Transition_1.ENTERING] = 'in',
18
18
  _a[Transition_1.ENTERED] = 'in',
19
19
  _a);
20
20
  var Spinner = /** @class */ (function (_super) {
21
21
  (0, tslib_1.__extends)(Spinner, _super);
22
22
  function Spinner() {
23
- var _this = _super !== null && _super.apply(this, arguments) || this;
24
- _this.div = react_1.default.createRef();
25
- _this.overlay = react_1.default.createRef();
26
- return _this;
23
+ return _super !== null && _super.apply(this, arguments) || this;
27
24
  }
28
25
  Spinner.prototype.render = function () {
29
- var _this = this;
30
- var _a = this.props, show = _a.show, cx = _a.classnames, spinnerClassName = _a.spinnerClassName, mode = _a.mode, size = _a.size, overlay = _a.overlay, icon = _a.icon;
31
- return (react_1.default.createElement(Transition_1.default, { mountOnEnter: true, unmountOnExit: true, in: show, timeout: 350 }, function (status) {
32
- var _a;
33
- if (status === Transition_1.ENTERING) {
34
- // force reflow
35
- // 由于从 mount 进来到加上 in 这个 class 估计是时间太短,上次的样式还没应用进去,所以这里强制reflow一把。
36
- // 否则看不到动画。
37
- // this.div.current!.offsetWidth;
38
- _this.overlay.current && _this.overlay.current.offsetWidth;
39
- }
26
+ var _a = this.props, cx = _a.classnames, show = _a.show, className = _a.className, spinnerClassName = _a.spinnerClassName, _b = _a.size, size = _b === void 0 ? '' : _b, overlay = _a.overlay, delay = _a.delay, icon = _a.icon, tip = _a.tip, _c = _a.tipPlacement, tipPlacement = _c === void 0 ? '' : _c;
27
+ var isCustomIcon = icon && react_1.default.isValidElement(icon);
28
+ var timeout = { enter: delay, exit: 0 };
29
+ return (react_1.default.createElement(Transition_1.default, { mountOnEnter: true, unmountOnExit: true, in: show, timeout: timeout }, function (status) {
30
+ var _a, _b, _c;
40
31
  return (react_1.default.createElement(react_1.default.Fragment, null,
41
- overlay ? (react_1.default.createElement("div", { ref: _this.overlay, className: cx("Spinner-overlay", fadeStyles[status]) })) : null,
42
- react_1.default.createElement("div", { ref: _this.div, className: cx("Spinner", spinnerClassName, fadeStyles[status], (_a = {},
43
- _a["Spinner--".concat(mode)] = mode,
44
- _a["Spinner--overlay"] = overlay,
45
- _a["Spinner--".concat(size)] = size,
46
- _a["Spinner--icon"] = icon,
47
- _a)) }, icon ? react_1.default.createElement(icons_1.Icon, { icon: icon, className: "icon" }) : null)));
32
+ overlay ? (react_1.default.createElement("div", { className: cx("Spinner-overlay", fadeStyles[status]) })) : null,
33
+ react_1.default.createElement("div", { className: cx("Spinner", tip && (_a = {},
34
+ _a["Spinner-tip--".concat(tipPlacement)] = [
35
+ 'top',
36
+ 'right',
37
+ 'bottom',
38
+ 'left'
39
+ ].includes(tipPlacement),
40
+ _a), (_b = {}, _b["Spinner--overlay"] = overlay, _b), fadeStyles[status], className) },
41
+ react_1.default.createElement("div", { className: cx("Spinner-icon", (_c = {},
42
+ _c["Spinner-icon--".concat(size)] = ['lg', 'sm'].includes(size),
43
+ _c["Spinner-icon--default"] = !icon,
44
+ _c["Spinner-icon--simple"] = !isCustomIcon && icon,
45
+ _c["Spinner-icon--custom"] = isCustomIcon,
46
+ _c), spinnerClassName) }, icon ? (isCustomIcon ? (icon) : (0, icons_1.hasIcon)(icon) ? (react_1.default.createElement(icons_1.Icon, { icon: icon, className: "icon" })) : ((0, icon_1.generateIcon)(cx, icon, 'icon'))) : null),
47
+ tip ? react_1.default.createElement("span", { className: cx("Spinner-tip") }, tip) : '')));
48
48
  }));
49
49
  };
50
50
  Spinner.defaultProps = {
51
- overlay: false,
51
+ show: true,
52
+ className: '',
52
53
  spinnerClassName: '',
53
- mode: '',
54
54
  size: '',
55
- show: true
55
+ icon: '',
56
+ tip: '',
57
+ tipPlacement: 'bottom',
58
+ delay: 0,
59
+ overlay: false
56
60
  };
57
61
  return Spinner;
58
62
  }(react_1.default.Component));
@@ -6,8 +6,8 @@
6
6
  "/src/components/Spinner.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";AAAA;;;;;GAKG;;;;;AAEH,6DAA0B;AAC1B,kCAA+C;AAC/C,2FAAgF;AAChF,iCAA6B;AAE7B,IAAM,UAAU;IAGd,GAAC,qBAAQ,IAAG,IAAI;IAChB,GAAC,oBAAO,IAAG,IAAI;OAChB,CAAC;AAWF;IAA6B,wCAAqC;IAAlE;QAAA,qEA2DC;QAlDC,SAAG,GAAoC,eAAK,CAAC,SAAS,EAAE,CAAC;QACzD,aAAO,GAAoC,eAAK,CAAC,SAAS,EAAE,CAAC;;IAiD/D,CAAC;IA/CC,wBAAM,GAAN;QAAA,iBA8CC;QA7CO,IAAA,KAQF,IAAI,CAAC,KAAK,EAPZ,IAAI,UAAA,EACQ,EAAE,gBAAA,EACd,gBAAgB,sBAAA,EAChB,IAAI,UAAA,EACJ,IAAI,UAAA,EACJ,OAAO,aAAA,EACP,IAAI,UACQ,CAAC;QACf,OAAO,CACL,8BAAC,oBAAU,IAAC,YAAY,QAAC,aAAa,QAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAC1D,UAAC,MAAc;;YACd,IAAI,MAAM,KAAK,qBAAQ,EAAE;gBACvB,eAAe;gBACf,kEAAkE;gBAClE,WAAW;gBACX,iCAAiC;gBACjC,KAAI,CAAC,OAAO,CAAC,OAAO,IAAI,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;aAC1D;YAED,OAAO,CACL;gBACG,OAAO,CAAC,CAAC,CAAC,CACT,uCACE,GAAG,EAAE,KAAI,CAAC,OAAO,EACjB,SAAS,EAAE,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,GACpD,CACH,CAAC,CAAC,CAAC,IAAI;gBAER,uCACE,GAAG,EAAE,KAAI,CAAC,GAAG,EACb,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,gBAAgB,EAAE,UAAU,CAAC,MAAM,CAAC;wBAC3D,GAAC,mBAAY,IAAI,CAAE,IAAG,IAAI;wBAC1B,GAAC,kBAAkB,IAAG,OAAO;wBAC7B,GAAC,mBAAY,IAAI,CAAE,IAAG,IAAI;wBAC1B,GAAC,eAAe,IAAG,IAAI;4BACvB,IAED,IAAI,CAAC,CAAC,CAAC,8BAAC,YAAI,IAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAChD,CACL,CACJ,CAAC;QACJ,CAAC,CACU,CACd,CAAC;IACJ,CAAC;IAzDM,oBAAY,GAAG;QACpB,OAAO,EAAE,KAAK;QACd,gBAAgB,EAAE,EAAE;QACpB,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAQ;QACd,IAAI,EAAE,IAAI;KACX,CAAC;IAoDJ,cAAC;CAAA,AA3DD,CAA6B,eAAK,CAAC,SAAS,GA2D3C;AA3DY,0BAAO;AA6DpB,kBAAe,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "/**\n * @file Spinner\n * @description\n * @author fex\n * @date 2017-11-07\n */\n\nimport React from 'react';\nimport {themeable, ThemeProps} from '../theme';\nimport Transition, {ENTERED, ENTERING} from 'react-transition-group/Transition';\nimport {Icon} from './icons';\n\nconst fadeStyles: {\n [propName: string]: string;\n} = {\n [ENTERING]: 'in',\n [ENTERED]: 'in'\n};\n\ninterface SpinnerProps extends ThemeProps {\n overlay: boolean;\n spinnerClassName: string;\n mode: string;\n size: 'sm' | 'lg' | '';\n show: boolean;\n icon?: string;\n}\n\nexport class Spinner extends React.Component<SpinnerProps, object> {\n static defaultProps = {\n overlay: false,\n spinnerClassName: '',\n mode: '',\n size: '' as '',\n show: true\n };\n\n div: React.RefObject<HTMLDivElement> = React.createRef();\n overlay: React.RefObject<HTMLDivElement> = React.createRef();\n\n render() {\n const {\n show,\n classnames: cx,\n spinnerClassName,\n mode,\n size,\n overlay,\n icon\n } = this.props;\n return (\n <Transition mountOnEnter unmountOnExit in={show} timeout={350}>\n {(status: string) => {\n if (status === ENTERING) {\n // force reflow\n // 由于从 mount 进来到加上 in 这个 class 估计是时间太短,上次的样式还没应用进去,所以这里强制reflow一把。\n // 否则看不到动画。\n // this.div.current!.offsetWidth;\n this.overlay.current && this.overlay.current.offsetWidth;\n }\n\n return (\n <>\n {overlay ? (\n <div\n ref={this.overlay}\n className={cx(`Spinner-overlay`, fadeStyles[status])}\n />\n ) : null}\n\n <div\n ref={this.div}\n className={cx(`Spinner`, spinnerClassName, fadeStyles[status], {\n [`Spinner--${mode}`]: mode,\n [`Spinner--overlay`]: overlay,\n [`Spinner--${size}`]: size,\n [`Spinner--icon`]: icon\n })}\n >\n {icon ? <Icon icon={icon} className=\"icon\" /> : null}\n </div>\n </>\n );\n }}\n </Transition>\n );\n }\n}\n\nexport default themeable(Spinner);\n"
11
+ "/**\n * @file Spinner\n * @description\n * @author fex\n * @date 2017-11-07\n */\n\nimport React from 'react';\nimport {themeable, ThemeProps} from '../theme';\nimport Transition, {ENTERED} from 'react-transition-group/Transition';\nimport {Icon, hasIcon} from './icons';\nimport {generateIcon} from '../utils/icon';\n\nconst fadeStyles: {\n [propName: string]: string;\n} = {\n [ENTERED]: 'in'\n};\n\n// Spinner Props\nexport interface SpinnerProps extends ThemeProps {\n show: boolean; // 控制Spinner显示与隐藏\n className?: string; // 自定义最外层元素class\n spinnerClassName?: string; // spin图标位置包裹元素的自定义class\n /**\n * @deprecated 已废弃,没有作用\n */\n mode?: string;\n size?: 'sm' | 'lg' | ''; // spinner Icon 大小\n icon?: string | React.ReactNode; // 自定义icon\n tip?: string; // spinner文案\n tipPlacement?: 'top' | 'right' | 'bottom' | 'left'; // spinner文案位置\n delay?: number; // 延迟显示\n overlay?: boolean; // 是否显示遮罩层,有children属性才生效\n}\n\nexport class Spinner extends React.Component<SpinnerProps> {\n static defaultProps = {\n show: true,\n className: '',\n spinnerClassName: '',\n size: '' as '',\n icon: '',\n tip: '',\n tipPlacement: 'bottom' as 'bottom',\n delay: 0,\n overlay: false\n };\n\n render() {\n const {\n classnames: cx,\n show,\n className,\n spinnerClassName,\n size = '',\n overlay,\n delay,\n icon,\n tip,\n tipPlacement = ''\n } = this.props;\n const isCustomIcon = icon && React.isValidElement(icon);\n const timeout = {enter: delay, exit: 0};\n\n return (\n <Transition mountOnEnter unmountOnExit in={show} timeout={timeout}>\n {(status: string) => {\n return (\n <>\n {/* 遮罩层 */}\n {overlay ? (\n <div className={cx(`Spinner-overlay`, fadeStyles[status])} />\n ) : null}\n\n {/* spinner图标和文案 */}\n <div\n className={cx(\n `Spinner`,\n tip && {\n [`Spinner-tip--${tipPlacement}`]: [\n 'top',\n 'right',\n 'bottom',\n 'left'\n ].includes(tipPlacement)\n },\n {[`Spinner--overlay`]: overlay},\n fadeStyles[status],\n className\n )}\n >\n <div\n className={cx(\n `Spinner-icon`,\n {\n [`Spinner-icon--${size}`]: ['lg', 'sm'].includes(size),\n [`Spinner-icon--default`]: !icon,\n [`Spinner-icon--simple`]: !isCustomIcon && icon,\n [`Spinner-icon--custom`]: isCustomIcon\n },\n spinnerClassName\n )}\n >\n {icon ? (\n isCustomIcon ? (\n icon\n ) : hasIcon(icon as string) ? (\n <Icon icon={icon} className=\"icon\" />\n ) : (\n generateIcon(cx, icon as string, 'icon')\n )\n ) : null}\n </div>\n {tip ? <span className={cx(`Spinner-tip`)}>{tip}</span> : ''}\n </div>\n </>\n );\n }}\n </Transition>\n );\n }\n}\n\nexport default themeable(Spinner);\n"
12
12
  ]
13
13
  }
@@ -54,6 +54,10 @@ export interface StepsSchema extends BaseSchema {
54
54
  * 展示模式
55
55
  */
56
56
  mode?: 'horizontal' | 'vertical';
57
+ /**
58
+ * 标签放置位置
59
+ */
60
+ labelPlacement?: 'horizontal' | 'vertical';
57
61
  }
58
62
  export interface StepsProps extends ThemeProps {
59
63
  steps: StepSchema[];
@@ -63,6 +67,8 @@ export interface StepsProps extends ThemeProps {
63
67
  [propName: string]: StepStatus;
64
68
  };
65
69
  mode?: 'horizontal' | 'vertical';
70
+ labelPlacement?: 'horizontal' | 'vertical';
71
+ progressDot?: boolean;
66
72
  useMobileUI?: boolean;
67
73
  }
68
74
  export declare function Steps(props: StepsProps): JSX.Element;
@@ -14,7 +14,7 @@ var StepStatus;
14
14
  StepStatus["error"] = "error";
15
15
  })(StepStatus = exports.StepStatus || (exports.StepStatus = {}));
16
16
  function Steps(props) {
17
- var stepsRow = props.steps, cx = props.classnames, className = props.className, current = props.current, status = props.status, _a = props.mode, mode = _a === void 0 ? 'horizontal' : _a, useMobileUI = props.useMobileUI;
17
+ var stepsRow = props.steps, cx = props.classnames, className = props.className, current = props.current, status = props.status, _a = props.mode, mode = _a === void 0 ? 'horizontal' : _a, _b = props.labelPlacement, labelPlacement = _b === void 0 ? 'horizontal' : _b, _c = props.progressDot, progressDot = _c === void 0 ? false : _c, useMobileUI = props.useMobileUI;
18
18
  var FINISH_ICON = 'check';
19
19
  var ERROR_ICON = 'close';
20
20
  function getStepStatus(step, i) {
@@ -43,18 +43,22 @@ function Steps(props) {
43
43
  };
44
44
  }
45
45
  var mobileUI = useMobileUI && (0, helper_1.isMobile)();
46
- return (react_1.default.createElement("ul", { className: cx('Steps', "Steps--".concat(mode), mobileUI ? 'Steps-mobile' : '', className) }, stepsRow.map(function (step, i) {
46
+ return (react_1.default.createElement("ul", { className: cx(// 纵向步骤条暂时不支持labelPlacement属性
47
+ 'Steps', "Steps--Placement-".concat((progressDot || (labelPlacement === 'vertical' && mode != 'vertical')) ? 'vertical' : ''), "Steps--".concat(progressDot ? 'ProgressDot' : ''), "Steps--".concat(mode), mobileUI ? 'Steps-mobile' : '', className) }, stepsRow.map(function (step, i) {
47
48
  var _a = getStepStatus(step, i), stepStatus = _a.stepStatus, icon = _a.icon;
48
- return (react_1.default.createElement("li", { key: i, className: cx('StepsItem', "is-".concat(stepStatus), step.className) },
49
+ return (react_1.default.createElement("li", { key: i, className: cx('StepsItem', "is-".concat(stepStatus), step.className, "StepsItem-".concat(progressDot ? 'ProgressDot' : '')) },
49
50
  react_1.default.createElement("div", { className: cx('StepsItem-container') },
50
- react_1.default.createElement("div", { className: cx('StepsItem-containerIcon', i < current && 'is-success') },
51
- react_1.default.createElement("span", { className: cx('StepsItem-icon') }, icon ? react_1.default.createElement(icons_1.Icon, { icon: icon, className: "icon" }) : i + 1)),
51
+ react_1.default.createElement("div", { className: cx('StepsItem-containerTail') }),
52
+ progressDot ? react_1.default.createElement("div", { className: cx('StepsItem-containerProgressDot') })
53
+ : react_1.default.createElement("div", { className: cx('StepsItem-containerIcon', i < current && 'is-success') },
54
+ react_1.default.createElement("span", { className: cx('StepsItem-icon') }, icon ? react_1.default.createElement(icons_1.Icon, { icon: icon, className: "icon" }) : i + 1)),
52
55
  react_1.default.createElement("div", { className: cx('StepsItem-containerWrapper') },
53
56
  react_1.default.createElement("div", { className: cx('StepsItem-body') },
54
- react_1.default.createElement("div", { className: cx('StepsItem-title', i < current && 'is-success') },
55
- react_1.default.createElement("span", null, step.title),
56
- react_1.default.createElement("span", { className: cx('StepsItem-subTitle') }, step.subTitle)),
57
- react_1.default.createElement("div", { className: cx('StepsItem-description') }, step.description))))));
57
+ react_1.default.createElement("div", { className: cx('StepsItem-title', "StepsItem-".concat(progressDot ? 'vertical-ProgressDot' : ''), i < current && 'is-success') },
58
+ react_1.default.createElement("span", { className: cx('StepsItem-ellText'), title: String(step.title) }, step.title),
59
+ react_1.default.createElement("span", { className: cx('StepsItem-subTitle', 'StepsItem-ellText'), title: String(step.subTitle) }, step.subTitle)),
60
+ react_1.default.createElement("div", { className: cx('StepsItem-description', 'StepsItem-ellText'), title: String(step.description) },
61
+ react_1.default.createElement("span", null, step.description)))))));
58
62
  })));
59
63
  }
60
64
  exports.Steps = Steps;
@@ -6,8 +6,8 @@
6
6
  "/src/components/Steps.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {themeable, ThemeProps} from '../theme';\nimport {Icon} from './icons';\nimport {BaseSchema} from '../Schema';\nimport {isMobile} from '../utils/helper';\n\nexport enum StepStatus {\n wait = 'wait',\n process = 'process',\n finish = 'finish',\n error = 'error'\n}\n\nexport type StepSchema = {\n /**\n * 标题\n */\n title?: string | JSX.Element;\n\n /**\n * 子标题\n */\n subTitle?: string | JSX.Element;\n\n /**\n * 图标\n */\n icon?: string;\n\n value?: string | number;\n\n /**\n * 描述\n */\n description?: string | JSX.Element;\n\n status?: StepStatus;\n} & Omit<BaseSchema, 'type'>;\n\nexport interface StepsSchema extends BaseSchema {\n /**\n * 指定为 Steps 步骤条渲染器\n */\n type: 'steps';\n\n /**\n * 步骤\n */\n steps?: Array<StepSchema>;\n\n /**\n * API 或 数据映射\n */\n source?: string;\n\n /**\n * 指定当前步骤\n */\n value?: number | string;\n\n /**\n * 变量映射\n */\n name?: string;\n\n status: StepStatus;\n\n /**\n * 展示模式\n */\n mode?: 'horizontal' | 'vertical';\n}\n\nexport interface StepsProps extends ThemeProps {\n steps: StepSchema[];\n className: string;\n current: number;\n status?:\n | StepStatus\n | {\n [propName: string]: StepStatus;\n };\n mode?: 'horizontal' | 'vertical';\n useMobileUI?: boolean;\n}\n\nexport function Steps(props: StepsProps) {\n const {\n steps: stepsRow,\n classnames: cx,\n className,\n current,\n status,\n mode = 'horizontal',\n useMobileUI\n } = props;\n const FINISH_ICON = 'check';\n const ERROR_ICON = 'close';\n\n function getStepStatus(\n step: StepSchema,\n i: number\n ): {stepStatus: StepStatus; icon?: string} {\n let stepStatus: StepStatus = StepStatus.wait;\n let icon = step.icon;\n\n if (i < current) {\n stepStatus = StepStatus.finish;\n !icon && (icon = FINISH_ICON);\n } else if (i === current) {\n stepStatus = StepStatus.process;\n }\n\n if (typeof status === 'string') {\n if (i === current) {\n stepStatus = step.status || status || StepStatus.process;\n stepStatus === StepStatus.error && !icon && (icon = ERROR_ICON);\n }\n } else if (typeof status === 'object') {\n const key = step.value;\n key && status[key] && (stepStatus = status[key]);\n }\n\n return {\n stepStatus,\n icon\n };\n }\n\n const mobileUI = useMobileUI && isMobile();\n return (\n <ul\n className={cx(\n 'Steps',\n `Steps--${mode}`,\n mobileUI ? 'Steps-mobile' : '',\n className\n )}\n >\n {stepsRow.map((step, i) => {\n const {stepStatus, icon} = getStepStatus(step, i);\n\n return (\n <li\n key={i}\n className={cx('StepsItem', `is-${stepStatus}`, step.className)}\n >\n <div className={cx('StepsItem-container')}>\n <div\n className={cx(\n 'StepsItem-containerIcon',\n i < current && 'is-success'\n )}\n >\n <span className={cx('StepsItem-icon')}>\n {icon ? <Icon icon={icon} className=\"icon\" /> : i + 1}\n </span>\n </div>\n <div className={cx('StepsItem-containerWrapper')}>\n <div className={cx('StepsItem-body')}>\n <div\n className={cx(\n 'StepsItem-title',\n i < current && 'is-success'\n )}\n >\n <span>{step.title}</span>\n <span className={cx('StepsItem-subTitle')}>\n {step.subTitle}\n </span>\n </div>\n <div className={cx('StepsItem-description')}>\n {step.description}\n </div>\n </div>\n </div>\n </div>\n </li>\n );\n })}\n </ul>\n );\n}\n\nexport default themeable(Steps);\n"
11
+ "import React from 'react';\nimport {themeable, ThemeProps} from '../theme';\nimport {Icon} from './icons';\nimport {BaseSchema} from '../Schema';\nimport {isMobile} from '../utils/helper';\n\nexport enum StepStatus {\n wait = 'wait',\n process = 'process',\n finish = 'finish',\n error = 'error'\n}\n\nexport type StepSchema = {\n /**\n * 标题\n */\n title?: string | JSX.Element;\n\n /**\n * 子标题\n */\n subTitle?: string | JSX.Element;\n\n /**\n * 图标\n */\n icon?: string;\n\n value?: string | number;\n\n /**\n * 描述\n */\n description?: string | JSX.Element;\n\n status?: StepStatus;\n} & Omit<BaseSchema, 'type'>;\n\nexport interface StepsSchema extends BaseSchema {\n /**\n * 指定为 Steps 步骤条渲染器\n */\n type: 'steps';\n\n /**\n * 步骤\n */\n steps?: Array<StepSchema>;\n\n /**\n * API 或 数据映射\n */\n source?: string;\n\n /**\n * 指定当前步骤\n */\n value?: number | string;\n\n /**\n * 变量映射\n */\n name?: string;\n\n status: StepStatus;\n\n /**\n * 展示模式\n */\n mode?: 'horizontal' | 'vertical';\n\n /**\n * 标签放置位置\n */\n labelPlacement?: 'horizontal' | 'vertical';\n}\nexport interface StepsProps extends ThemeProps {\n steps: StepSchema[];\n className: string;\n current: number;\n status?:\n | StepStatus\n | {\n [propName: string]: StepStatus;\n };\n mode?: 'horizontal' | 'vertical';\n labelPlacement?: 'horizontal' | 'vertical';\n progressDot?: boolean;\n useMobileUI?: boolean;\n}\n\nexport function Steps(props: StepsProps) {\n const {\n steps: stepsRow,\n classnames: cx,\n className,\n current,\n status,\n mode = 'horizontal',\n labelPlacement = 'horizontal',\n progressDot = false,\n useMobileUI\n } = props;\n const FINISH_ICON = 'check';\n const ERROR_ICON = 'close';\n\n function getStepStatus(\n step: StepSchema,\n i: number\n ): {stepStatus: StepStatus; icon?: string} {\n let stepStatus: StepStatus = StepStatus.wait;\n let icon = step.icon;\n\n if (i < current) {\n stepStatus = StepStatus.finish;\n !icon && (icon = FINISH_ICON);\n } else if (i === current) {\n stepStatus = StepStatus.process;\n }\n\n if (typeof status === 'string') {\n if (i === current) {\n stepStatus = step.status || status || StepStatus.process;\n stepStatus === StepStatus.error && !icon && (icon = ERROR_ICON);\n }\n } else if (typeof status === 'object') {\n const key = step.value;\n key && status[key] && (stepStatus = status[key]);\n }\n\n return {\n stepStatus,\n icon\n };\n }\n\n const mobileUI = useMobileUI && isMobile();\n return (\n <ul className={cx( // 纵向步骤条暂时不支持labelPlacement属性\n 'Steps',\n `Steps--Placement-${(progressDot || (labelPlacement === 'vertical' && mode != 'vertical')) ? 'vertical' : ''}`,\n `Steps--${progressDot ? 'ProgressDot' : ''}`, \n `Steps--${mode}`,\n mobileUI ? 'Steps-mobile' : '', className)}>\n {stepsRow.map((step, i) => {\n const {stepStatus, icon} = getStepStatus(step, i);\n return (\n <li\n key={i}\n className={cx('StepsItem', `is-${stepStatus}`, step.className, `StepsItem-${progressDot ? 'ProgressDot' : ''}`)}\n >\n <div className={cx('StepsItem-container')}>\n <div className={cx('StepsItem-containerTail')}></div>\n {progressDot ? <div className={cx('StepsItem-containerProgressDot')}></div>\n : <div className={cx('StepsItem-containerIcon', i < current && 'is-success')}>\n <span className={cx('StepsItem-icon')}>\n {icon ? <Icon icon={icon} className=\"icon\" /> : i + 1}\n </span>\n </div>}\n <div className={cx('StepsItem-containerWrapper')}>\n <div className={cx('StepsItem-body')}>\n <div\n className={cx(\n 'StepsItem-title',\n `StepsItem-${progressDot ? 'vertical-ProgressDot' : ''}`,\n i < current && 'is-success'\n )}\n >\n <span className={cx('StepsItem-ellText')} title={String(step.title)}>{step.title}</span>\n <span className={cx('StepsItem-subTitle', 'StepsItem-ellText')} title={String(step.subTitle)}>{step.subTitle}</span>\n </div>\n <div className={cx('StepsItem-description', 'StepsItem-ellText')} title={String(step.description)}>\n <span>{step.description}</span>\n </div>\n </div>\n </div>\n </div>\n </li>\n );\n })}\n </ul>\n );\n}\n\nexport default themeable(Steps);\n"
12
12
  ]
13
13
  }
@@ -15,11 +15,15 @@ interface TooltipProps extends React.HTMLProps<HTMLDivElement> {
15
15
  style?: any;
16
16
  arrowProps?: any;
17
17
  placement?: string;
18
+ showArrow?: boolean;
19
+ tooltipTheme?: string;
18
20
  [propName: string]: any;
19
21
  }
20
22
  export declare class Tooltip extends React.Component<TooltipProps> {
21
23
  static defaultProps: {
22
24
  className: string;
25
+ tooltipTheme: string;
26
+ showArrow: boolean;
23
27
  };
24
28
  render(): JSX.Element;
25
29
  }
@@ -15,14 +15,16 @@ var Tooltip = /** @class */ (function (_super) {
15
15
  return _super !== null && _super.apply(this, arguments) || this;
16
16
  }
17
17
  Tooltip.prototype.render = function () {
18
- var _a = this.props, ns = _a.classPrefix, className = _a.className, title = _a.title, children = _a.children, arrowProps = _a.arrowProps, style = _a.style, placement = _a.placement, arrowOffsetLeft = _a.arrowOffsetLeft, arrowOffsetTop = _a.arrowOffsetTop, positionLeft = _a.positionLeft, positionTop = _a.positionTop, cx = _a.classnames, activePlacement = _a.activePlacement, onMouseEnter = _a.onMouseEnter, onMouseLeave = _a.onMouseLeave, rest = (0, tslib_1.__rest)(_a, ["classPrefix", "className", "title", "children", "arrowProps", "style", "placement", "arrowOffsetLeft", "arrowOffsetTop", "positionLeft", "positionTop", "classnames", "activePlacement", "onMouseEnter", "onMouseLeave"]);
19
- return (react_1.default.createElement("div", (0, tslib_1.__assign)({}, rest, { className: cx("Tooltip", activePlacement ? "Tooltip--".concat(activePlacement) : '', className), style: style, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, role: "tooltip" }),
20
- react_1.default.createElement("div", (0, tslib_1.__assign)({ className: cx("Tooltip-arrow") }, arrowProps)),
18
+ var _a = this.props, ns = _a.classPrefix, className = _a.className, tooltipTheme = _a.tooltipTheme, title = _a.title, children = _a.children, arrowProps = _a.arrowProps, style = _a.style, placement = _a.placement, arrowOffsetLeft = _a.arrowOffsetLeft, arrowOffsetTop = _a.arrowOffsetTop, positionLeft = _a.positionLeft, positionTop = _a.positionTop, cx = _a.classnames, activePlacement = _a.activePlacement, showArrow = _a.showArrow, onMouseEnter = _a.onMouseEnter, onMouseLeave = _a.onMouseLeave, rest = (0, tslib_1.__rest)(_a, ["classPrefix", "className", "tooltipTheme", "title", "children", "arrowProps", "style", "placement", "arrowOffsetLeft", "arrowOffsetTop", "positionLeft", "positionTop", "classnames", "activePlacement", "showArrow", "onMouseEnter", "onMouseLeave"]);
19
+ return (react_1.default.createElement("div", (0, tslib_1.__assign)({}, rest, { className: cx("Tooltip", activePlacement ? "Tooltip--".concat(activePlacement) : '', className, "Tooltip--".concat(tooltipTheme === 'dark' ? 'dark' : 'light')), style: style, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, role: "tooltip" }),
20
+ showArrow ? (react_1.default.createElement("div", (0, tslib_1.__assign)({ className: cx("Tooltip-arrow") }, arrowProps))) : null,
21
21
  title ? react_1.default.createElement("div", { className: cx('Tooltip-title') }, title) : null,
22
22
  react_1.default.createElement("div", { className: cx('Tooltip-body') }, children)));
23
23
  };
24
24
  Tooltip.defaultProps = {
25
- className: ''
25
+ className: '',
26
+ tooltipTheme: 'light',
27
+ showArrow: true
26
28
  };
27
29
  return Tooltip;
28
30
  }(react_1.default.Component));
@@ -6,8 +6,8 @@
6
6
  "/src/components/Tooltip.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";AAAA;;;;GAIG;;;;AAEH,6DAA0B;AAG1B,kCAAiD;AAcjD;IAA6B,wCAA6B;IAA1D;;IA4CA,CAAC;IAvCC,wBAAM,GAAN;QACE,IAAM,KAiBF,IAAI,CAAC,KAAK,EAhBC,EAAE,iBAAA,EACf,SAAS,eAAA,EACT,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,UAAU,gBAAA,EACV,KAAK,WAAA,EACL,SAAS,eAAA,EACT,eAAe,qBAAA,EACf,cAAc,oBAAA,EACd,YAAY,kBAAA,EACZ,WAAW,iBAAA,EACC,EAAE,gBAAA,EACd,eAAe,qBAAA,EACf,YAAY,kBAAA,EACZ,YAAY,kBAAA,EACT,IAAI,2BAhBH,0NAiBL,CAAa,CAAC;QAEf,OAAO,CACL,+DACM,IAAI,IACR,SAAS,EAAE,EAAE,CACX,SAAS,EACT,eAAe,CAAC,CAAC,CAAC,mBAAY,eAAe,CAAE,CAAC,CAAC,CAAC,EAAE,EACpD,SAAS,CACV,EACD,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAC,SAAS;YAEd,6DAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,IAAM,UAAU,EAAI;YACtD,KAAK,CAAC,CAAC,CAAC,uCAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,IAAG,KAAK,CAAO,CAAC,CAAC,CAAC,IAAI;YAClE,uCAAK,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,IAAG,QAAQ,CAAO,CAChD,CACP,CAAC;IACJ,CAAC;IA1CM,oBAAY,GAAG;QACpB,SAAS,EAAE,EAAE;KACd,CAAC;IAyCJ,cAAC;CAAA,AA5CD,CAA6B,eAAK,CAAC,SAAS,GA4C3C;AA5CY,0BAAO;AA8CpB,kBAAe,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC",
9
+ "mappings": ";AAAA;;;;GAIG;;;;AAEH,6DAA0B;AAG1B,kCAAiD;AAgBjD;IAA6B,wCAA6B;IAA1D;;IAmDA,CAAC;IA5CC,wBAAM,GAAN;QACE,IAAM,KAmBF,IAAI,CAAC,KAAK,EAlBC,EAAE,iBAAA,EACf,SAAS,eAAA,EACT,YAAY,kBAAA,EACZ,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,UAAU,gBAAA,EACV,KAAK,WAAA,EACL,SAAS,eAAA,EACT,eAAe,qBAAA,EACf,cAAc,oBAAA,EACd,YAAY,kBAAA,EACZ,WAAW,iBAAA,EACC,EAAE,gBAAA,EACd,eAAe,qBAAA,EACf,SAAS,eAAA,EACT,YAAY,kBAAA,EACZ,YAAY,kBAAA,EACT,IAAI,2BAlBH,uPAmBL,CAAa,CAAC;QAEf,OAAO,CACL,+DACM,IAAI,IACR,SAAS,EAAE,EAAE,CACX,SAAS,EACT,eAAe,CAAC,CAAC,CAAC,mBAAY,eAAe,CAAE,CAAC,CAAC,CAAC,EAAE,EACpD,SAAS,EACT,mBAAY,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAE,CACzD,EACD,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAC,SAAS;YAEb,SAAS,CAAC,CAAC,CAAC,CACX,6DAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,IAAM,UAAU,EAAI,CACxD,CAAC,CAAC,CAAC,IAAI;YACP,KAAK,CAAC,CAAC,CAAC,uCAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,IAAG,KAAK,CAAO,CAAC,CAAC,CAAC,IAAI;YAClE,uCAAK,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,IAAG,QAAQ,CAAO,CAChD,CACP,CAAC;IACJ,CAAC;IAjDM,oBAAY,GAAG;QACpB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,OAAO;QACrB,SAAS,EAAE,IAAI;KAChB,CAAC;IA8CJ,cAAC;CAAA,AAnDD,CAA6B,eAAK,CAAC,SAAS,GAmD3C;AAnDY,0BAAO;AAqDpB,kBAAe,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "/**\n * @file Tooltip\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport cx from 'classnames';\nimport {classPrefix, classnames} from '../themes/default';\nimport {ClassNamesFn, themeable} from '../theme';\n\ninterface TooltipProps extends React.HTMLProps<HTMLDivElement> {\n title?: string;\n classPrefix: string;\n classnames: ClassNamesFn;\n theme?: string;\n className?: string;\n style?: any;\n arrowProps?: any;\n placement?: string;\n [propName: string]: any;\n}\n\nexport class Tooltip extends React.Component<TooltipProps> {\n static defaultProps = {\n className: ''\n };\n\n render() {\n const {\n classPrefix: ns,\n className,\n title,\n children,\n arrowProps,\n style,\n placement,\n arrowOffsetLeft,\n arrowOffsetTop,\n positionLeft,\n positionTop,\n classnames: cx,\n activePlacement,\n onMouseEnter,\n onMouseLeave,\n ...rest\n } = this.props;\n\n return (\n <div\n {...rest}\n className={cx(\n `Tooltip`,\n activePlacement ? `Tooltip--${activePlacement}` : '',\n className\n )}\n style={style}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n role=\"tooltip\"\n >\n <div className={cx(`Tooltip-arrow`)} {...arrowProps} />\n {title ? <div className={cx('Tooltip-title')}>{title}</div> : null}\n <div className={cx('Tooltip-body')}>{children}</div>\n </div>\n );\n }\n}\n\nexport default themeable(Tooltip);\n"
11
+ "/**\n * @file Tooltip\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport cx from 'classnames';\nimport {classPrefix, classnames} from '../themes/default';\nimport {ClassNamesFn, themeable} from '../theme';\n\ninterface TooltipProps extends React.HTMLProps<HTMLDivElement> {\n title?: string;\n classPrefix: string;\n classnames: ClassNamesFn;\n theme?: string;\n className?: string;\n style?: any;\n arrowProps?: any;\n placement?: string;\n showArrow?: boolean;\n tooltipTheme?: string;\n [propName: string]: any;\n}\n\nexport class Tooltip extends React.Component<TooltipProps> {\n static defaultProps = {\n className: '',\n tooltipTheme: 'light',\n showArrow: true\n };\n\n render() {\n const {\n classPrefix: ns,\n className,\n tooltipTheme,\n title,\n children,\n arrowProps,\n style,\n placement,\n arrowOffsetLeft,\n arrowOffsetTop,\n positionLeft,\n positionTop,\n classnames: cx,\n activePlacement,\n showArrow,\n onMouseEnter,\n onMouseLeave,\n ...rest\n } = this.props;\n\n return (\n <div\n {...rest}\n className={cx(\n `Tooltip`,\n activePlacement ? `Tooltip--${activePlacement}` : '',\n className,\n `Tooltip--${tooltipTheme === 'dark' ? 'dark' : 'light'}`\n )}\n style={style}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n role=\"tooltip\"\n >\n {showArrow ? (\n <div className={cx(`Tooltip-arrow`)} {...arrowProps} />\n ) : null}\n {title ? <div className={cx('Tooltip-title')}>{title}</div> : null}\n <div className={cx('Tooltip-body')}>{children}</div>\n </div>\n );\n }\n}\n\nexport default themeable(Tooltip);\n"
12
12
  ]
13
13
  }
@@ -6,18 +6,78 @@
6
6
  /// <reference types="hoist-non-react-statics" />
7
7
  import React from 'react';
8
8
  import { ClassNamesFn } from '../theme';
9
+ export declare type Trigger = 'hover' | 'click' | 'focus';
9
10
  export interface TooltipObject {
11
+ /**
12
+ * 文字提示标题
13
+ */
10
14
  title?: string;
15
+ /**
16
+ * 文字提示内容
17
+ */
11
18
  content?: string;
12
- render?: () => JSX.Element;
13
- dom?: JSX.Element;
19
+ /**
20
+ * 浮层出现位置
21
+ */
22
+ placement?: 'top' | 'right' | 'bottom' | 'left';
23
+ /**
24
+ * 主题样式
25
+ */
26
+ tooltipTheme?: 'light' | 'dark';
27
+ /**
28
+ * 浮层位置相对偏移量
29
+ */
30
+ offset?: [number, number];
31
+ /**
32
+ * 内容区自定义样式
33
+ */
34
+ style?: React.CSSProperties;
35
+ /**
36
+ * 是否可以移入浮层中, 默认true
37
+ */
38
+ enterable?: boolean;
39
+ /**
40
+ * 是否展示浮层指向箭头
41
+ */
42
+ showArrow?: boolean;
43
+ /**
44
+ * 是否禁用提示
45
+ */
46
+ disabled?: boolean;
47
+ /**
48
+ * 浮层延迟显示时间, 单位 ms
49
+ */
50
+ mouseEnterDelay?: number;
51
+ /**
52
+ * 浮层延迟隐藏时间, 单位 ms
53
+ */
54
+ mouseLeaveDelay?: number;
55
+ /**
56
+ * 浮层内容可通过JSX渲染
57
+ */
58
+ children?: () => JSX.Element | JSX.Element;
59
+ /**
60
+ * 挂载容器元素
61
+ */
62
+ container?: React.ReactNode;
63
+ /**
64
+ * 浮层触发方式
65
+ */
66
+ trigger?: Trigger | Array<Trigger>;
67
+ /**
68
+ * 是否点击非内容区域关闭提示,默认为true
69
+ */
70
+ rootClose?: boolean;
71
+ /**
72
+ * 文字提示浮层CSS类名
73
+ */
74
+ tooltipClassName?: string;
14
75
  }
15
- export declare type Trigger = 'hover' | 'click' | 'focus';
16
76
  export interface TooltipWrapperProps {
77
+ tooltip?: string | TooltipObject;
17
78
  classPrefix: string;
18
79
  classnames: ClassNamesFn;
19
80
  placement: 'top' | 'right' | 'bottom' | 'left';
20
- tooltip?: string | TooltipObject;
21
81
  container?: React.ReactNode;
22
82
  trigger: Trigger | Array<Trigger>;
23
83
  rootClose: boolean;
@@ -41,6 +101,8 @@ export declare class TooltipWrapper extends React.Component<TooltipWrapperProps,
41
101
  show(): void;
42
102
  hide(): void;
43
103
  getChildProps(): any;
104
+ tooltipMouseEnter: (e: MouseEvent) => void;
105
+ tooltipMouseLeave: (e: MouseEvent) => void;
44
106
  handleShow(): void;
45
107
  handleHide(): void;
46
108
  handleFocus(e: any): void;
@@ -14,12 +14,26 @@ var react_dom_1 = require("react-dom");
14
14
  var Tooltip_1 = (0, tslib_1.__importDefault)(require("./Tooltip"));
15
15
  var theme_1 = require("../theme");
16
16
  var Overlay_1 = (0, tslib_1.__importDefault)(require("./Overlay"));
17
+ var helper_1 = require("../utils/helper");
17
18
  var waitToHide = null;
18
19
  var TooltipWrapper = /** @class */ (function (_super) {
19
20
  (0, tslib_1.__extends)(TooltipWrapper, _super);
20
21
  function TooltipWrapper(props) {
21
22
  var _this = _super.call(this, props) || this;
22
23
  _this.moutned = true;
24
+ _this.tooltipMouseEnter = function (e) {
25
+ var _a, _b;
26
+ var tooltip = _this.props.tooltip;
27
+ var enterable = (_b = (_a = tooltip) === null || _a === void 0 ? void 0 : _a.enterable) !== null && _b !== void 0 ? _b : true;
28
+ enterable && clearTimeout(_this.timer);
29
+ };
30
+ _this.tooltipMouseLeave = function (e) {
31
+ var _a, _b;
32
+ var tooltip = _this.props.tooltip;
33
+ var enterable = (_b = (_a = tooltip) === null || _a === void 0 ? void 0 : _a.enterable) !== null && _b !== void 0 ? _b : true;
34
+ enterable && clearTimeout(_this.timer);
35
+ _this.hide();
36
+ };
23
37
  _this.getTarget = _this.getTarget.bind(_this);
24
38
  _this.show = _this.show.bind(_this);
25
39
  _this.hide = _this.hide.bind(_this);
@@ -61,13 +75,26 @@ var TooltipWrapper = /** @class */ (function (_super) {
61
75
  TooltipWrapper.prototype.handleShow = function () {
62
76
  this.timer && clearTimeout(this.timer);
63
77
  waitToHide && waitToHide();
64
- this.show();
78
+ var tooltip = this.props.tooltip;
79
+ if ((0, helper_1.isObject)(tooltip)) {
80
+ var _a = tooltip.mouseEnterDelay, mouseEnterDelay = _a === void 0 ? 0 : _a;
81
+ this.timer = setTimeout(this.show, mouseEnterDelay);
82
+ }
83
+ else {
84
+ this.timer = setTimeout(this.show, 0);
85
+ }
65
86
  };
66
87
  TooltipWrapper.prototype.handleHide = function () {
67
88
  clearTimeout(this.timer);
68
- var delay = this.props.delay;
89
+ var _a = this.props, delay = _a.delay, tooltip = _a.tooltip;
69
90
  waitToHide = this.hide.bind(this);
70
- this.timer = setTimeout(this.hide, delay);
91
+ if ((0, helper_1.isObject)(tooltip)) {
92
+ var _b = tooltip.mouseLeaveDelay, mouseLeaveDelay = _b === void 0 ? 300 : _b;
93
+ this.timer = setTimeout(this.hide, mouseLeaveDelay);
94
+ }
95
+ else {
96
+ this.timer = setTimeout(this.hide, delay);
97
+ }
71
98
  };
72
99
  TooltipWrapper.prototype.handleFocus = function (e) {
73
100
  var onFocus = this.getChildProps().onFocus;
@@ -98,11 +125,16 @@ var TooltipWrapper = /** @class */ (function (_super) {
98
125
  onClick && onClick(e);
99
126
  };
100
127
  TooltipWrapper.prototype.render = function () {
101
- var _a = this.props, tooltip = _a.tooltip, children = _a.children, placement = _a.placement, container = _a.container, trigger = _a.trigger, rootClose = _a.rootClose, tooltipClassName = _a.tooltipClassName, style = _a.style;
102
- var child = react_1.default.Children.only(children);
103
- if (!tooltip) {
128
+ var props = this.props;
129
+ var child = react_1.default.Children.only(props.children);
130
+ if (!props.tooltip) {
104
131
  return child;
105
132
  }
133
+ // tooltip 对象内属性优先级更高
134
+ var tooltipObj = (0, tslib_1.__assign)({ placement: props.placement, container: props.container, trigger: props.trigger, rootClose: props.rootClose, tooltipClassName: props.tooltipClassName, style: props.style, mouseLeaveDelay: props.delay }, (typeof props.tooltip === 'string'
135
+ ? { content: props.tooltip }
136
+ : props.tooltip));
137
+ var title = tooltipObj.title, content = tooltipObj.content, placement = tooltipObj.placement, container = tooltipObj.container, trigger = tooltipObj.trigger, rootClose = tooltipObj.rootClose, tooltipClassName = tooltipObj.tooltipClassName, style = tooltipObj.style, _a = tooltipObj.disabled, disabled = _a === void 0 ? false : _a, offset = tooltipObj.offset, _b = tooltipObj.tooltipTheme, tooltipTheme = _b === void 0 ? 'light' : _b, _c = tooltipObj.showArrow, showArrow = _c === void 0 ? true : _c, children = tooltipObj.children;
106
138
  var childProps = {
107
139
  key: 'target'
108
140
  };
@@ -120,8 +152,8 @@ var TooltipWrapper = /** @class */ (function (_super) {
120
152
  }
121
153
  return [
122
154
  child ? react_1.default.cloneElement(child, childProps) : null,
123
- react_1.default.createElement(Overlay_1.default, { key: "overlay", target: this.getTarget, show: this.state.show, onHide: this.handleHide, rootClose: rootClose, placement: placement, container: container },
124
- react_1.default.createElement(Tooltip_1.default, { title: typeof tooltip !== 'string' ? tooltip.title : undefined, style: style, className: tooltipClassName, onMouseEnter: ~triggers.indexOf('hover') && this.handleMouseOver, onMouseLeave: ~triggers.indexOf('hover') && this.handleMouseOut }, tooltip && tooltip.render ? (this.state.show ? (tooltip.render()) : null) : tooltip && tooltip.dom ? (tooltip.dom) : (react_1.default.createElement(Html_1.default, { html: typeof tooltip === 'string' ? tooltip : tooltip.content || '' }))))
155
+ react_1.default.createElement(Overlay_1.default, { key: "overlay", target: this.getTarget, show: this.state.show && !disabled, onHide: this.handleHide, rootClose: rootClose, placement: placement, container: container, offset: Array.isArray(offset) ? offset : [0, 0] },
156
+ react_1.default.createElement(Tooltip_1.default, { title: typeof title === 'string' ? title : undefined, style: style, className: tooltipClassName, tooltipTheme: tooltipTheme, showArrow: showArrow, onMouseEnter: ~triggers.indexOf('hover') ? this.tooltipMouseEnter : function () { }, onMouseLeave: ~triggers.indexOf('hover') ? this.tooltipMouseLeave : function () { } }, children ? (react_1.default.createElement(react_1.default.Fragment, null, typeof children === 'function' ? children() : children)) : (react_1.default.createElement(Html_1.default, { html: typeof content === 'string' ? content : '' }))))
125
157
  ];
126
158
  };
127
159
  TooltipWrapper.defaultProps = {
@@ -6,8 +6,8 @@
6
6
  "/src/components/TooltipWrapper.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "/**\n * @file TooltipWrapper\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport Html from './Html';\nimport {uncontrollable} from 'uncontrollable';\nimport {findDOMNode} from 'react-dom';\nimport Tooltip from './Tooltip';\nimport {ClassNamesFn, themeable} from '../theme';\nimport Overlay from './Overlay';\n\nexport interface TooltipObject {\n title?: string;\n content?: string;\n render?: () => JSX.Element;\n dom?: JSX.Element;\n}\n\nexport type Trigger = 'hover' | 'click' | 'focus';\n\nexport interface TooltipWrapperProps {\n classPrefix: string;\n classnames: ClassNamesFn;\n placement: 'top' | 'right' | 'bottom' | 'left';\n tooltip?: string | TooltipObject;\n container?: React.ReactNode;\n trigger: Trigger | Array<Trigger>;\n rootClose: boolean;\n overlay?: any;\n delay: number;\n theme?: string;\n tooltipClassName?: string;\n style?: React.CSSProperties;\n}\n\ninterface TooltipWrapperState {\n show?: boolean;\n}\n\nlet waitToHide: Function | null = null;\n\nexport class TooltipWrapper extends React.Component<\n TooltipWrapperProps,\n TooltipWrapperState\n> {\n static defaultProps: Pick<\n TooltipWrapperProps,\n 'placement' | 'trigger' | 'rootClose' | 'delay'\n > = {\n placement: 'top',\n trigger: ['hover', 'focus'],\n rootClose: false,\n delay: 300\n };\n\n target: HTMLElement;\n timer: ReturnType<typeof setTimeout>;\n moutned = true;\n constructor(props: TooltipWrapperProps) {\n super(props);\n\n this.getTarget = this.getTarget.bind(this);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this);\n this.handleShow = this.handleShow.bind(this);\n this.handleHide = this.handleHide.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.handleMouseOver = this.handleMouseOver.bind(this);\n this.handleMouseOut = this.handleMouseOut.bind(this);\n\n this.state = {\n show: false\n };\n }\n\n componentWillUnmount() {\n clearTimeout(this.timer);\n this.moutned = false;\n }\n\n getTarget() {\n return findDOMNode(this);\n }\n\n show() {\n this.setState({\n show: true\n });\n }\n\n hide() {\n waitToHide = null;\n this.moutned &&\n this.setState({\n show: false\n });\n }\n\n getChildProps() {\n const child = React.Children.only(this.props.children);\n return child && (child as any).props;\n }\n\n handleShow() {\n this.timer && clearTimeout(this.timer);\n waitToHide && waitToHide();\n this.show();\n }\n\n handleHide() {\n clearTimeout(this.timer);\n const {delay} = this.props;\n\n waitToHide = this.hide.bind(this);\n this.timer = setTimeout(this.hide, delay);\n }\n\n handleFocus(e: any) {\n const {onFocus} = this.getChildProps();\n this.handleShow();\n onFocus && onFocus(e);\n }\n\n handleBlur(e: any) {\n const {onBlur} = this.getChildProps();\n this.handleHide();\n onBlur && onBlur(e);\n }\n\n handleMouseOver(e: any) {\n this.handleMouseOverOut(this.handleShow, e, 'fromElement');\n }\n\n handleMouseOut(e: any) {\n this.handleMouseOverOut(this.handleHide, e, 'toElement');\n }\n\n handleMouseOverOut(\n handler: Function,\n e: React.MouseEvent<HTMLElement>,\n relatedNative: string\n ) {\n const target = e.currentTarget;\n const related: any =\n e.relatedTarget || (e as any).nativeEvent[relatedNative];\n\n if ((!related || related !== target) && !target.contains(related)) {\n handler(e);\n }\n }\n\n handleClick(e: any) {\n const {onClick} = this.getChildProps();\n this.state.show ? this.hide() : this.show();\n onClick && onClick(e);\n }\n\n render() {\n const {\n tooltip,\n children,\n placement,\n container,\n trigger,\n rootClose,\n tooltipClassName,\n style\n } = this.props;\n\n const child = React.Children.only(children);\n\n if (!tooltip) {\n return child;\n }\n\n const childProps: any = {\n key: 'target'\n };\n\n const triggers = Array.isArray(trigger) ? trigger.concat() : [trigger];\n\n if (~triggers.indexOf('click')) {\n childProps.onClick = this.handleClick;\n }\n\n if (~triggers.indexOf('focus')) {\n childProps.onFocus = this.handleShow;\n childProps.onBlur = this.handleHide;\n }\n\n if (~triggers.indexOf('hover')) {\n childProps.onMouseOver = this.handleMouseOver;\n childProps.onMouseOut = this.handleMouseOut;\n }\n\n return [\n child ? React.cloneElement(child as any, childProps) : null,\n\n <Overlay\n key=\"overlay\"\n target={this.getTarget}\n show={this.state.show}\n onHide={this.handleHide}\n rootClose={rootClose}\n placement={placement}\n container={container}\n >\n <Tooltip\n title={typeof tooltip !== 'string' ? tooltip.title : undefined}\n style={style}\n className={tooltipClassName}\n onMouseEnter={~triggers.indexOf('hover') && this.handleMouseOver}\n onMouseLeave={~triggers.indexOf('hover') && this.handleMouseOut}\n >\n {tooltip && (tooltip as TooltipObject).render ? (\n this.state.show ? (\n (tooltip as TooltipObject).render!()\n ) : null\n ) : tooltip && (tooltip as TooltipObject).dom ? (\n (tooltip as TooltipObject).dom!\n ) : (\n <Html\n html={\n typeof tooltip === 'string' ? tooltip : tooltip.content || ''\n }\n />\n )}\n </Tooltip>\n </Overlay>\n ];\n }\n}\n\nexport default themeable(\n uncontrollable(TooltipWrapper, {\n show: 'onVisibleChange'\n })\n);\n"
11
+ "/**\n * @file TooltipWrapper\n * @description\n * @author fex\n */\n\nimport React from 'react';\nimport Html from './Html';\nimport {uncontrollable} from 'uncontrollable';\nimport {findDOMNode} from 'react-dom';\nimport Tooltip from './Tooltip';\nimport {ClassNamesFn, themeable} from '../theme';\nimport Overlay from './Overlay';\nimport {isObject} from '../utils/helper';\n\nexport type Trigger = 'hover' | 'click' | 'focus';\n\nexport interface TooltipObject {\n /**\n * 文字提示标题\n */\n title?: string;\n /**\n * 文字提示内容\n */\n content?: string;\n /**\n * 浮层出现位置\n */\n placement?: 'top' | 'right' | 'bottom' | 'left';\n /**\n * 主题样式\n */\n tooltipTheme?: 'light' | 'dark';\n /**\n * 浮层位置相对偏移量\n */\n offset?: [number, number];\n /**\n * 内容区自定义样式\n */\n style?: React.CSSProperties;\n /**\n * 是否可以移入浮层中, 默认true\n */\n enterable?: boolean;\n /**\n * 是否展示浮层指向箭头\n */\n showArrow?: boolean;\n /**\n * 是否禁用提示\n */\n disabled?: boolean;\n /**\n * 浮层延迟显示时间, 单位 ms\n */\n mouseEnterDelay?: number;\n /**\n * 浮层延迟隐藏时间, 单位 ms\n */\n mouseLeaveDelay?: number;\n /**\n * 浮层内容可通过JSX渲染\n */\n children?: () => JSX.Element | JSX.Element;\n /**\n * 挂载容器元素\n */\n container?: React.ReactNode;\n /**\n * 浮层触发方式\n */\n trigger?: Trigger | Array<Trigger>;\n /**\n * 是否点击非内容区域关闭提示,默认为true\n */\n rootClose?: boolean;\n /**\n * 文字提示浮层CSS类名\n */\n tooltipClassName?: string;\n}\n\nexport interface TooltipWrapperProps {\n tooltip?: string | TooltipObject;\n classPrefix: string;\n classnames: ClassNamesFn;\n placement: 'top' | 'right' | 'bottom' | 'left';\n container?: React.ReactNode;\n trigger: Trigger | Array<Trigger>;\n rootClose: boolean;\n overlay?: any;\n delay: number;\n theme?: string;\n tooltipClassName?: string;\n style?: React.CSSProperties;\n}\n\ninterface TooltipWrapperState {\n show?: boolean;\n}\n\nlet waitToHide: Function | null = null;\n\nexport class TooltipWrapper extends React.Component<\n TooltipWrapperProps,\n TooltipWrapperState\n> {\n static defaultProps: Pick<\n TooltipWrapperProps,\n 'placement' | 'trigger' | 'rootClose' | 'delay'\n > = {\n placement: 'top',\n trigger: ['hover', 'focus'],\n rootClose: false,\n delay: 300\n };\n\n target: HTMLElement;\n timer: ReturnType<typeof setTimeout>;\n moutned = true;\n constructor(props: TooltipWrapperProps) {\n super(props);\n\n this.getTarget = this.getTarget.bind(this);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this);\n this.handleShow = this.handleShow.bind(this);\n this.handleHide = this.handleHide.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.handleMouseOver = this.handleMouseOver.bind(this);\n this.handleMouseOut = this.handleMouseOut.bind(this);\n\n this.state = {\n show: false\n };\n }\n\n componentWillUnmount() {\n clearTimeout(this.timer);\n this.moutned = false;\n }\n\n getTarget() {\n return findDOMNode(this);\n }\n\n show() {\n this.setState({\n show: true\n });\n }\n\n hide() {\n waitToHide = null;\n this.moutned &&\n this.setState({\n show: false\n });\n }\n\n getChildProps() {\n const child = React.Children.only(this.props.children);\n return child && (child as any).props;\n }\n\n tooltipMouseEnter = (e: MouseEvent) => {\n const tooltip = this.props.tooltip;\n const enterable = (tooltip as any)?.enterable ?? true;\n enterable && clearTimeout(this.timer);\n };\n\n tooltipMouseLeave = (e: MouseEvent) => {\n const tooltip = this.props.tooltip;\n const enterable = (tooltip as any)?.enterable ?? true;\n enterable && clearTimeout(this.timer);\n this.hide();\n };\n\n handleShow() {\n this.timer && clearTimeout(this.timer);\n waitToHide && waitToHide();\n const tooltip = this.props.tooltip;\n if (isObject(tooltip)) {\n const {mouseEnterDelay = 0} = tooltip as TooltipObject;\n this.timer = setTimeout(this.show, mouseEnterDelay);\n } else {\n this.timer = setTimeout(this.show, 0);\n }\n }\n\n handleHide() {\n clearTimeout(this.timer);\n const {delay, tooltip} = this.props;\n\n waitToHide = this.hide.bind(this);\n if (isObject(tooltip)) {\n const {mouseLeaveDelay = 300} = tooltip as TooltipObject;\n this.timer = setTimeout(this.hide, mouseLeaveDelay);\n } else {\n this.timer = setTimeout(this.hide, delay);\n }\n }\n\n handleFocus(e: any) {\n const {onFocus} = this.getChildProps();\n this.handleShow();\n onFocus && onFocus(e);\n }\n\n handleBlur(e: any) {\n const {onBlur} = this.getChildProps();\n this.handleHide();\n onBlur && onBlur(e);\n }\n\n handleMouseOver(e: any) {\n this.handleMouseOverOut(this.handleShow, e, 'fromElement');\n }\n\n handleMouseOut(e: any) {\n this.handleMouseOverOut(this.handleHide, e, 'toElement');\n }\n\n handleMouseOverOut(\n handler: Function,\n e: React.MouseEvent<HTMLElement>,\n relatedNative: string\n ) {\n const target = e.currentTarget;\n const related: any =\n e.relatedTarget || (e as any).nativeEvent[relatedNative];\n\n if ((!related || related !== target) && !target.contains(related)) {\n handler(e);\n }\n }\n\n handleClick(e: any) {\n const {onClick} = this.getChildProps();\n this.state.show ? this.hide() : this.show();\n onClick && onClick(e);\n }\n\n render() {\n const props = this.props;\n\n const child = React.Children.only(props.children);\n if (!props.tooltip) {\n return child;\n }\n\n // tooltip 对象内属性优先级更高\n const tooltipObj: TooltipObject = {\n placement: props.placement,\n container: props.container,\n trigger: props.trigger,\n rootClose: props.rootClose,\n tooltipClassName: props.tooltipClassName,\n style: props.style,\n mouseLeaveDelay: props.delay,\n ...(typeof props.tooltip === 'string'\n ? {content: props.tooltip}\n : props.tooltip)\n };\n\n const {\n title,\n content,\n placement,\n container,\n trigger,\n rootClose,\n tooltipClassName,\n style,\n disabled = false,\n offset,\n tooltipTheme = 'light',\n showArrow = true,\n children\n } = tooltipObj;\n\n const childProps: any = {\n key: 'target'\n };\n\n const triggers = Array.isArray(trigger) ? trigger.concat() : [trigger];\n\n if (~triggers.indexOf('click')) {\n childProps.onClick = this.handleClick;\n }\n\n if (~triggers.indexOf('focus')) {\n childProps.onFocus = this.handleShow;\n childProps.onBlur = this.handleHide;\n }\n\n if (~triggers.indexOf('hover')) {\n childProps.onMouseOver = this.handleMouseOver;\n childProps.onMouseOut = this.handleMouseOut;\n }\n\n return [\n child ? React.cloneElement(child as any, childProps) : null,\n\n <Overlay\n key=\"overlay\"\n target={this.getTarget}\n show={this.state.show && !disabled}\n onHide={this.handleHide}\n rootClose={rootClose}\n placement={placement}\n container={container}\n offset={Array.isArray(offset) ? offset : [0, 0]}\n >\n <Tooltip\n title={typeof title === 'string' ? title : undefined}\n style={style}\n className={tooltipClassName}\n tooltipTheme={tooltipTheme}\n showArrow={showArrow}\n onMouseEnter={\n ~triggers.indexOf('hover') ? this.tooltipMouseEnter : () => {}\n }\n onMouseLeave={\n ~triggers.indexOf('hover') ? this.tooltipMouseLeave : () => {}\n }\n >\n {children ? (\n <>{typeof children === 'function' ? children() : children}</>\n ) : (\n <Html html={typeof content === 'string' ? content : ''} />\n )}\n </Tooltip>\n </Overlay>\n ];\n }\n}\n\nexport default themeable(\n uncontrollable(TooltipWrapper, {\n show: 'onVisibleChange'\n })\n);\n"
12
12
  ]
13
13
  }