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
@@ -75,10 +75,6 @@ export class CustomYearsView extends React.Component<CustomYearsViewProps> {
75
75
  .clone()
76
76
  .set({year: year, month: irrelevantMonth, date: irrelevantDate});
77
77
 
78
- // Not sure what 'rdtOld' is for, commenting out for now as it's not working properly
79
- // if ( i === -1 | i === 10 )
80
- // classes += ' rdtOld';
81
-
82
78
  noOfDaysInYear = parseInt(currentYear.endOf('year').format('DDD'), 10);
83
79
  daysInYear = Array.from({length: noOfDaysInYear}, function (e, i) {
84
80
  return i + 1;
@@ -95,6 +91,9 @@ export class CustomYearsView extends React.Component<CustomYearsViewProps> {
95
91
 
96
92
  if (selectedDate && selectedDate.year() === year) classes += ' rdtActive';
97
93
 
94
+ // 第一个和最后一个置灰
95
+ if (i === -1 || i === 10) classes += ' text-muted';
96
+
98
97
  props = {
99
98
  'key': year,
100
99
  'data-value': year,
@@ -45,6 +45,7 @@ export interface ExpressionProps extends ThemeProps {
45
45
  searchable?: boolean;
46
46
  fieldClassName?: string;
47
47
  formula?: FormulaPickerProps;
48
+ popOverContainer?: any;
48
49
  }
49
50
 
50
51
  const fieldMap = {
@@ -135,7 +136,8 @@ export class Expression extends React.Component<ExpressionProps> {
135
136
  data,
136
137
  disabled,
137
138
  searchable,
138
- formula
139
+ formula,
140
+ popOverContainer
139
141
  } = this.props;
140
142
  const inputType =
141
143
  ((value as any)?.type === 'field'
@@ -166,6 +168,7 @@ export class Expression extends React.Component<ExpressionProps> {
166
168
  data={data}
167
169
  disabled={disabled}
168
170
  formula={formula}
171
+ popOverContainer={popOverContainer}
169
172
  />
170
173
  ) : null}
171
174
 
@@ -176,6 +179,7 @@ export class Expression extends React.Component<ExpressionProps> {
176
179
  fieldClassName={fieldClassName}
177
180
  disabled={disabled}
178
181
  searchable={searchable}
182
+ popOverContainer={popOverContainer}
179
183
  options={
180
184
  valueField
181
185
  ? filterTree(
@@ -214,6 +218,7 @@ export class Expression extends React.Component<ExpressionProps> {
214
218
  <InputSwitch
215
219
  disabled={disabled}
216
220
  value={inputType}
221
+ popOverContainer={popOverContainer}
217
222
  onChange={this.handleInputTypeChange}
218
223
  options={types.map(item => ({
219
224
  label: fieldMap[item],
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import {findDOMNode} from 'react-dom';
2
3
  import PopOverContainer from '../PopOverContainer';
3
4
  import ListSelection from '../GroupedSelection';
4
5
  import ResultBox from '../ResultBox';
@@ -15,6 +16,7 @@ export interface ConditionFieldProps extends ThemeProps, LocaleProps {
15
16
  disabled?: boolean;
16
17
  fieldClassName?: string;
17
18
  searchable?: boolean;
19
+ popOverContainer?: any;
18
20
  }
19
21
 
20
22
  export interface ConditionFieldState {
@@ -86,11 +88,13 @@ export class ConditionField extends React.Component<
86
88
  fieldClassName,
87
89
  disabled,
88
90
  translate: __,
89
- searchable
91
+ searchable,
92
+ popOverContainer
90
93
  } = this.props;
91
94
 
92
95
  return (
93
96
  <PopOverContainer
97
+ popOverContainer={popOverContainer || (() => findDOMNode(this))}
94
98
  popOverRender={({onClose}) => (
95
99
  <>
96
100
  {searchable ? (
@@ -26,6 +26,7 @@ export interface ConditionGroupProps extends ThemeProps, LocaleProps {
26
26
  onDragStart?: (e: React.MouseEvent) => void;
27
27
  fieldClassName?: string;
28
28
  formula?: FormulaPickerProps;
29
+ popOverContainer?: any;
29
30
  }
30
31
 
31
32
  export class ConditionGroup extends React.Component<ConditionGroupProps> {
@@ -134,7 +135,8 @@ export class ConditionGroup extends React.Component<ConditionGroupProps> {
134
135
  disabled,
135
136
  searchable,
136
137
  translate: __,
137
- formula
138
+ formula,
139
+ popOverContainer
138
140
  } = this.props;
139
141
  return (
140
142
  <div className={cx('CBGroup')} data-group-id={value?.id}>
@@ -222,6 +224,7 @@ export class ConditionGroup extends React.Component<ConditionGroupProps> {
222
224
  searchable={searchable}
223
225
  builderMode={builderMode}
224
226
  formula={formula}
227
+ popOverContainer={popOverContainer}
225
228
  />
226
229
  ))
227
230
  ) : (
@@ -25,6 +25,7 @@ export interface CBGroupOrItemProps extends ThemeProps {
25
25
  onRemove?: (index: number) => void;
26
26
  fieldClassName?: string;
27
27
  formula?: FormulaPickerProps;
28
+ popOverContainer?: any;
28
29
  }
29
30
 
30
31
  export class CBGroupOrItem extends React.Component<CBGroupOrItemProps> {
@@ -52,7 +53,8 @@ export class CBGroupOrItem extends React.Component<CBGroupOrItemProps> {
52
53
  disabled,
53
54
  searchable,
54
55
  onDragStart,
55
- formula
56
+ formula,
57
+ popOverContainer
56
58
  } = this.props;
57
59
 
58
60
  return (
@@ -101,6 +103,7 @@ export class CBGroupOrItem extends React.Component<CBGroupOrItemProps> {
101
103
  funcs={funcs}
102
104
  data={data}
103
105
  formula={formula}
106
+ popOverContainer={popOverContainer}
104
107
  />
105
108
  <a className={cx('CBDelete')} onClick={this.handleItemRemove}>
106
109
  <Icon icon="close" className="icon" />
@@ -7,6 +7,7 @@ import {ClassNamesFn, themeable, ThemeProps} from '../../theme';
7
7
  export interface InputSwitchProps extends ThemeProps {
8
8
  options: Array<any>;
9
9
  disabled?: boolean;
10
+ popOverContainer?: any;
10
11
  value: any;
11
12
  onChange: (value: any) => void;
12
13
  }
@@ -18,10 +19,12 @@ export function InputSwitch({
18
19
  value,
19
20
  onChange,
20
21
  classnames: cx,
21
- disabled
22
+ disabled,
23
+ popOverContainer
22
24
  }: InputSwitchProps) {
23
25
  return (
24
26
  <PopOverContainer
27
+ popOverContainer={popOverContainer}
25
28
  popOverRender={({onClose}) => (
26
29
  <GroupedSelection
27
30
  onClick={onClose}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import {findDOMNode} from 'react-dom';
2
3
  import {
3
4
  Fields,
4
5
  ConditionRule,
@@ -37,6 +38,7 @@ export interface ConditionItemProps extends ThemeProps, LocaleProps {
37
38
  onChange: (value: ConditionRule, index?: number) => void;
38
39
  fieldClassName?: string;
39
40
  formula?: FormulaPickerProps;
41
+ popOverContainer?: any;
40
42
  }
41
43
 
42
44
  export class ConditionItem extends React.Component<ConditionItemProps> {
@@ -102,8 +104,16 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
102
104
  }
103
105
 
104
106
  renderLeft() {
105
- const {value, fields, funcs, config, disabled, fieldClassName, searchable} =
106
- this.props;
107
+ const {
108
+ value,
109
+ fields,
110
+ funcs,
111
+ config,
112
+ disabled,
113
+ fieldClassName,
114
+ searchable,
115
+ popOverContainer
116
+ } = this.props;
107
117
  return (
108
118
  <Expression
109
119
  config={config}
@@ -114,6 +124,7 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
114
124
  fields={fields}
115
125
  disabled={disabled}
116
126
  searchable={searchable}
127
+ popOverContainer={popOverContainer}
117
128
  allowedTypes={
118
129
  ['field', 'func'].filter(
119
130
  type => type === 'field' || type === 'func'
@@ -124,7 +135,15 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
124
135
  }
125
136
 
126
137
  renderOperator() {
127
- const {funcs, config, fields, value, classnames: cx, disabled} = this.props;
138
+ const {
139
+ funcs,
140
+ config,
141
+ fields,
142
+ value,
143
+ classnames: cx,
144
+ disabled,
145
+ popOverContainer
146
+ } = this.props;
128
147
  const left = value?.left;
129
148
  let operators: Array<string> = [];
130
149
 
@@ -152,6 +171,7 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
152
171
  const __ = this.props.translate;
153
172
  return (
154
173
  <PopOverContainer
174
+ popOverContainer={popOverContainer || (() => findDOMNode(this))}
155
175
  popOverRender={({onClose}) => (
156
176
  <GroupedSelection
157
177
  onClick={onClose}
@@ -242,7 +262,8 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
242
262
  config,
243
263
  classnames: cx,
244
264
  disabled,
245
- formula
265
+ formula,
266
+ popOverContainer
246
267
  } = this.props;
247
268
  let field = {
248
269
  ...config.types[type],
@@ -282,6 +303,7 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
282
303
  }
283
304
  disabled={disabled}
284
305
  formula={formula}
306
+ popOverContainer={popOverContainer}
285
307
  />
286
308
 
287
309
  <span className={cx('CBSeprator')}>~</span>
@@ -300,6 +322,7 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
300
322
  }
301
323
  disabled={disabled}
302
324
  formula={formula}
325
+ popOverContainer={popOverContainer}
303
326
  />
304
327
  </>
305
328
  );
@@ -321,6 +344,7 @@ export class ConditionItem extends React.Component<ConditionItemProps> {
321
344
  }
322
345
  disabled={disabled}
323
346
  formula={formula}
347
+ popOverContainer={popOverContainer}
324
348
  />
325
349
  );
326
350
  }
@@ -17,6 +17,7 @@ export interface ValueProps extends ThemeProps, LocaleProps {
17
17
  op?: OperatorType;
18
18
  disabled?: boolean;
19
19
  formula?: FormulaPickerProps;
20
+ popOverContainer?: any;
20
21
  }
21
22
 
22
23
  export class Value extends React.Component<ValueProps> {
@@ -30,7 +31,8 @@ export class Value extends React.Component<ValueProps> {
30
31
  translate: __,
31
32
  data,
32
33
  disabled,
33
- formula
34
+ formula,
35
+ popOverContainer
34
36
  } = this.props;
35
37
  let input: JSX.Element | undefined = undefined;
36
38
  if (formula) {
@@ -76,6 +78,7 @@ export class Value extends React.Component<ValueProps> {
76
78
  onChange={onChange}
77
79
  timeFormat=""
78
80
  disabled={disabled}
81
+ popOverContainer={popOverContainer}
79
82
  />
80
83
  );
81
84
  } else if (field.type === 'time') {
@@ -90,6 +93,7 @@ export class Value extends React.Component<ValueProps> {
90
93
  dateFormat=""
91
94
  timeFormat={field.format || 'HH:mm'}
92
95
  disabled={disabled}
96
+ popOverContainer={popOverContainer}
93
97
  />
94
98
  );
95
99
  } else if (field.type === 'datetime') {
@@ -102,6 +106,7 @@ export class Value extends React.Component<ValueProps> {
102
106
  onChange={onChange}
103
107
  timeFormat={field.timeFormat || 'HH:mm'}
104
108
  disabled={disabled}
109
+ popOverContainer={popOverContainer}
105
110
  />
106
111
  );
107
112
  } else if (field.type === 'select') {
@@ -119,6 +124,7 @@ export class Value extends React.Component<ValueProps> {
119
124
  onChange={onChange}
120
125
  multiple={op === 'select_any_in' || op === 'select_not_any_in'}
121
126
  disabled={disabled}
127
+ popOverContainer={popOverContainer}
122
128
  />
123
129
  );
124
130
  } else if (field.type === 'boolean') {
@@ -13,7 +13,6 @@ import {
13
13
  mapTree,
14
14
  guid
15
15
  } from '../../utils/helper';
16
- import {findDOMNode} from 'react-dom';
17
16
  import animtion from '../../utils/Animation';
18
17
  import {FormulaPickerProps} from '../formula/Picker';
19
18
 
@@ -31,6 +30,7 @@ export interface ConditionBuilderProps extends ThemeProps, LocaleProps {
31
30
  searchable?: boolean;
32
31
  fieldClassName?: string;
33
32
  formula?: FormulaPickerProps;
33
+ popOverContainer?: any;
34
34
  }
35
35
 
36
36
  export class QueryBuilder extends React.Component<ConditionBuilderProps> {
@@ -210,7 +210,8 @@ export class QueryBuilder extends React.Component<ConditionBuilderProps> {
210
210
  disabled,
211
211
  searchable,
212
212
  builderMode,
213
- formula
213
+ formula,
214
+ popOverContainer
214
215
  } = this.props;
215
216
 
216
217
  const normalizedValue = Array.isArray(value?.children)
@@ -247,6 +248,7 @@ export class QueryBuilder extends React.Component<ConditionBuilderProps> {
247
248
  disabled={disabled}
248
249
  searchable={searchable}
249
250
  formula={formula}
251
+ popOverContainer={popOverContainer}
250
252
  />
251
253
  );
252
254
  }
@@ -29,7 +29,9 @@ export interface FuncGroup {
29
29
  }
30
30
 
31
31
  export interface FuncItem {
32
- name: string;
32
+ name: string; // 函数名
33
+ example?: string; // 示例
34
+ description?: string; // 描述
33
35
  [propName: string]: any;
34
36
  }
35
37
 
@@ -119,11 +121,7 @@ export class FormulaEditor extends React.Component<
119
121
  return funcs;
120
122
  }
121
123
 
122
- static defaultProps: Pick<
123
- FormulaEditorProps,
124
- 'functions' | 'variables' | 'evalMode'
125
- > = {
126
- functions: FormulaEditor.buildDefaultFunctions(doc),
124
+ static defaultProps: Pick<FormulaEditorProps, 'variables' | 'evalMode'> = {
127
125
  variables: [],
128
126
  evalMode: true
129
127
  };
@@ -145,11 +143,15 @@ export class FormulaEditor extends React.Component<
145
143
  variables,
146
144
  item => item.value && (varMap[item.value] = item.label)
147
145
  );
148
- const vars = Object.keys(varMap).sort((a, b) => b.length - a.length);
149
- let content = value || '';
146
+ const vars = Object.keys(varMap)
147
+ .filter(item => item)
148
+ .sort((a, b) => b.length - a.length);
149
+
150
+ const content = value || '';
151
+ let html = '';
150
152
 
151
153
  // 标记方法调用
152
- content = content.replace(/([A-Z]+)\s*\(/g, (_, func, pos) => {
154
+ html = content.replace(/([A-Z]+)\s*\(/g, (_, func, pos) => {
153
155
  return _?.replace(func, `<span class="c-func">${func}</span>`);
154
156
  });
155
157
 
@@ -157,15 +159,12 @@ export class FormulaEditor extends React.Component<
157
159
  let from = 0;
158
160
  let idx = -1;
159
161
  while (~(idx = content.indexOf(v, from))) {
160
- content = content.replace(
161
- v,
162
- `<span class="c-field">${varMap[v]}</span>`
163
- );
162
+ html = content.replace(v, `<span class="c-field">${varMap[v]}</span>`);
164
163
  from = idx + v.length;
165
164
  }
166
165
  });
167
166
 
168
- return {html: content};
167
+ return {html};
169
168
  }
170
169
 
171
170
  componentWillUnmount() {
@@ -254,6 +253,12 @@ export class FormulaEditor extends React.Component<
254
253
  classPrefix
255
254
  } = this.props;
256
255
  const {focused} = this.state;
256
+ const customFunctions = Array.isArray(functions) ? functions : [];
257
+ const functionList = [
258
+ ...FormulaEditor.buildDefaultFunctions(doc),
259
+ ...customFunctions
260
+ ];
261
+
257
262
  return (
258
263
  <div
259
264
  className={cx(`FormulaEditor`, {
@@ -299,7 +304,7 @@ export class FormulaEditor extends React.Component<
299
304
  <FuncList
300
305
  className={functionClassName}
301
306
  title={__('FormulaEditor.function')}
302
- data={functions}
307
+ data={functionList}
303
308
  onSelect={this.handleFunctionSelect}
304
309
  />
305
310
  </section>
@@ -210,11 +210,15 @@ export class FormulaPicker extends React.Component<FormulaPickerProps> {
210
210
  allowInput={allowInput}
211
211
  clearable={clearable}
212
212
  value={value}
213
- result={FormulaEditor.highlightValue(
214
- value,
215
- variables,
216
- functions
217
- )}
213
+ result={
214
+ allowInput
215
+ ? void 0
216
+ : FormulaEditor.highlightValue(
217
+ value,
218
+ variables,
219
+ functions
220
+ )
221
+ }
218
222
  itemRender={this.renderFormulaValue}
219
223
  onResultChange={noop}
220
224
  onChange={this.handleConfirm}
package/src/factory.tsx CHANGED
@@ -42,6 +42,7 @@ import {
42
42
  RendererEvent
43
43
  } from './utils/renderer-event';
44
44
  import {runActions} from './actions/Action';
45
+ import {enableDebug} from './utils/debug';
45
46
 
46
47
  export interface TestFunc {
47
48
  (
@@ -102,6 +103,7 @@ export interface RenderSchemaFilter {
102
103
 
103
104
  export interface wsObject {
104
105
  url: string;
106
+ responseKey?: string;
105
107
  body?: any;
106
108
  }
107
109
 
@@ -152,6 +154,10 @@ export interface RenderOptions {
152
154
  * 过滤 html 标签,可用来添加 xss 保护逻辑
153
155
  */
154
156
  filterHtml?: (input: string) => string;
157
+ /**
158
+ * 是否开启 amis 调试
159
+ */
160
+ enableAMISDebug?: boolean;
155
161
  [propName: string]: any;
156
162
  }
157
163
 
@@ -271,6 +277,10 @@ const defaultOptions: RenderOptions = {
271
277
  affixOffsetBottom: 0,
272
278
  richTextToken: '',
273
279
  useMobileUI: true, // 是否启用移动端原生 UI
280
+ enableAMISDebug:
281
+ (window as any).enableAMISDebug ??
282
+ location.search.indexOf('amisDebug=1') !== -1 ??
283
+ false,
274
284
  loadRenderer,
275
285
  rendererEventListeners: [],
276
286
  fetcher() {
@@ -287,7 +297,18 @@ const defaultOptions: RenderOptions = {
287
297
  };
288
298
  socket.onmessage = event => {
289
299
  if (event.data) {
290
- onMessage(JSON.parse(event.data));
300
+ let data;
301
+ try {
302
+ data = JSON.parse(event.data);
303
+ } catch (error) {}
304
+ if (typeof data !== 'object') {
305
+ let key = ws.responseKey || 'data';
306
+ data = {
307
+ [key]: event.data
308
+ };
309
+ }
310
+
311
+ onMessage(data);
291
312
  }
292
313
  };
293
314
  socket.onerror = onError;
@@ -492,6 +513,13 @@ export function render(
492
513
  translate
493
514
  } as any;
494
515
 
516
+ if (options.enableAMISDebug) {
517
+ // 因为里面还有 render
518
+ setTimeout(() => {
519
+ enableDebug();
520
+ }, 10);
521
+ }
522
+
495
523
  store = RendererStore.create({}, options);
496
524
  stores[options.session || 'global'] = store;
497
525
  }
@@ -75,6 +75,19 @@ register('de-DE', {
75
75
  'Date.weekslater': '{{weeks}} Wochen später',
76
76
  'Date.yesterday': 'Gestern',
77
77
  'dateformat.year': 'YYYY',
78
+ 'DateRange.daysago': 'letzten {{days}} Tage',
79
+ 'DateRange.dayslater': 'innerhalb von {{days}} Tagen',
80
+ 'DateRange.weeksago': 'letzten {{weeks}} Wochen',
81
+ 'DateRange.weekslater': 'innerhalb von {{weeks}} Wochen',
82
+ 'DateRange.monthsago': 'letzten {{months}} Monate',
83
+ 'DateRange.monthslater': 'innerhalb von {{months}} Monaten',
84
+ 'DateRange.quartersago': 'letzten {{quarters}} Quartale',
85
+ 'DateRange.quarterslater': 'innerhalb von {{quarters}} Quartalen',
86
+ 'DateRange.yearsago': 'letzten {{years}} Jahre',
87
+ 'DateRange.yearslater': '{{years}} Jahren',
88
+ 'DateRange.hoursago': 'letzten {{hours}} Stunden',
89
+ 'DateRange.hourslater': 'innerhalb von {{hours}} Stunden',
90
+ 'DateRange.1dayago': 'Vor 1 Tag',
78
91
  'DateRange.1daysago': 'Vor 1 Tag',
79
92
  'DateRange.7daysago': 'Vor 7 Tagen',
80
93
  'DateRange.30daysago': 'Vor 30 Tagen',
@@ -276,5 +289,9 @@ register('de-DE', {
276
289
  'FormulaEditor.btnLabel': 'Formel Bearbeiten',
277
290
  'FormulaEditor.title': 'Formel Editor',
278
291
  'FormulaEditor.variable': 'Variable',
279
- 'FormulaEditor.function': 'Funktion'
292
+ 'FormulaEditor.function': 'Funktion',
293
+ 'pullRefresh.pullingText': 'Zum Aktualisieren nach unten ziehen...',
294
+ 'pullRefresh.loosingText': 'Zum Aktualisieren freigeben...',
295
+ 'pullRefresh.loadingText': 'Laden...',
296
+ 'pullRefresh.successText': 'Laden erfolgreich'
280
297
  });
@@ -72,6 +72,19 @@ register('en-US', {
72
72
  'Date.weekslater': '{{weeks}} week(s) later',
73
73
  'Date.yesterday': 'Yesterday',
74
74
  'dateformat.year': 'YYYY',
75
+ 'DateRange.daysago': 'Last {{days}} day(s)',
76
+ 'DateRange.dayslater': 'Within {{days}} day(s)',
77
+ 'DateRange.weeksago': 'Last {{weeks}} week(s)',
78
+ 'DateRange.weekslater': 'Within {{weeks}} week(s)',
79
+ 'DateRange.monthsago': 'Last {{months}} month(s)',
80
+ 'DateRange.monthslater': 'Within {{months}} month(s)',
81
+ 'DateRange.quartersago': 'Last {{quarters}} quarter(s)',
82
+ 'DateRange.quarterslater': 'Within {{quarters}} quarter(s)',
83
+ 'DateRange.yearsago': 'Last {{years}} year(s)',
84
+ 'DateRange.yearslater': 'Within {{years}} year(s)',
85
+ 'DateRange.hoursago': 'Last {{hours}} hour(s)',
86
+ 'DateRange.hourslater': 'Within {{hours}} hour(s)',
87
+ 'DateRange.1dayago': '1 day ago',
75
88
  'DateRange.1daysago': '1 day ago',
76
89
  'DateRange.7daysago': '7 days ago',
77
90
  'DateRange.30daysago': '30 days ago',
@@ -278,5 +291,9 @@ register('en-US', {
278
291
  'FormulaEditor.btnLabel': 'Formula Edit',
279
292
  'FormulaEditor.title': 'Formula Editor',
280
293
  'FormulaEditor.variable': 'Variable',
281
- 'FormulaEditor.function': 'Function'
294
+ 'FormulaEditor.function': 'Function',
295
+ 'pullRefresh.pullingText': 'Pull down to refresh...',
296
+ 'pullRefresh.loosingText': 'Release to refresh...',
297
+ 'pullRefresh.loadingText': 'Loading...',
298
+ 'pullRefresh.successText': 'Loading success'
282
299
  });
@@ -75,7 +75,20 @@ register('zh-CN', {
75
75
  'Date.weekslater': '{{weeks}}周后',
76
76
  'Date.yesterday': '昨天',
77
77
  'dateformat.year': 'YYYY年',
78
+ 'DateRange.daysago': '最近{{days}}天',
79
+ 'DateRange.dayslater': '{{days}}天以内',
80
+ 'DateRange.weeksago': '最近{{weeks}}周',
81
+ 'DateRange.weekslater': '{{weeks}}周以内',
82
+ 'DateRange.monthsago': '最近{{months}}月',
83
+ 'DateRange.monthslater': '{{months}}月以内',
84
+ 'DateRange.quartersago': '最近{{quarters}}季度',
85
+ 'DateRange.quarterslater': '{{quarters}}季度以内',
86
+ 'DateRange.yearsago': '最近{{years}}年',
87
+ 'DateRange.yearslater': '{{years}}年以内',
88
+ 'DateRange.hoursago': '最近{{hours}}小时',
89
+ 'DateRange.hourslater': '{{hours}}小时以内',
78
90
  'DateRange.1daysago': '最近1天',
91
+ 'DateRange.1dayago': '最近1天',
79
92
  'DateRange.7daysago': '最近7天',
80
93
  'DateRange.30daysago': '最近30天',
81
94
  'DateRange.90daysago': '最近90天',
@@ -285,5 +298,9 @@ register('zh-CN', {
285
298
  'FormulaEditor.btnLabel': '公式编辑',
286
299
  'FormulaEditor.title': '公式编辑器',
287
300
  'FormulaEditor.variable': '变量',
288
- 'FormulaEditor.function': '函数'
301
+ 'FormulaEditor.function': '函数',
302
+ 'pullRefresh.pullingText': '下拉即可刷新...',
303
+ 'pullRefresh.loosingText': '释放即可刷新...',
304
+ 'pullRefresh.loadingText': '加载中...',
305
+ 'pullRefresh.successText': '加载成功'
289
306
  });
@@ -753,6 +753,8 @@ export class Action extends React.Component<ActionProps, ActionState> {
753
753
  loading,
754
754
  body,
755
755
  render,
756
+ onMouseEnter,
757
+ onMouseLeave,
756
758
  classnames: cx,
757
759
  classPrefix: ns
758
760
  } = this.props;
@@ -768,7 +770,12 @@ export class Action extends React.Component<ActionProps, ActionState> {
768
770
  trigger={tooltipTrigger}
769
771
  rootClose={tooltipRootClose}
770
772
  >
771
- <div className={cx('Action', className)} onClick={this.handleAction}>
773
+ <div
774
+ className={cx('Action', className)}
775
+ onClick={this.handleAction}
776
+ onMouseEnter={onMouseEnter}
777
+ onMouseLeave={onMouseLeave}
778
+ >
772
779
  {render('body', body) as JSX.Element}
773
780
  </div>
774
781
  </TooltipWrapper>
@@ -814,6 +821,8 @@ export class Action extends React.Component<ActionProps, ActionState> {
814
821
  loadingClassName={loadingClassName}
815
822
  loading={loading}
816
823
  onClick={this.handleAction}
824
+ onMouseEnter={onMouseEnter}
825
+ onMouseLeave={onMouseLeave}
817
826
  type={type && ~allowedType.indexOf(type) ? type : 'button'}
818
827
  disabled={disabled}
819
828
  componentClass={isMenuItem ? 'a' : componentClass}
@@ -877,6 +886,16 @@ export class ActionRenderer extends React.Component<
877
886
  }
878
887
  }
879
888
 
889
+ @autobind
890
+ handleMouseEnter(e: React.MouseEvent<any>) {
891
+ this.props.dispatchEvent(e, this.props.data);
892
+ }
893
+
894
+ @autobind
895
+ handleMouseLeave(e: React.MouseEvent<any>) {
896
+ this.props.dispatchEvent(e, this.props.data);
897
+ }
898
+
880
899
  @autobind
881
900
  isCurrentAction(link: string) {
882
901
  const {env, data} = this.props;
@@ -892,6 +911,8 @@ export class ActionRenderer extends React.Component<
892
911
  env={env}
893
912
  disabled={disabled || btnDisabled}
894
913
  onAction={this.handleAction}
914
+ onMouseEnter={this.handleMouseEnter}
915
+ onMouseLeave={this.handleMouseLeave}
895
916
  loading={loading}
896
917
  isCurrentUrl={this.isCurrentAction}
897
918
  tooltipContainer={
@@ -417,4 +417,8 @@ export class AppRenderer extends App {
417
417
  scoped.unRegisterComponent(this);
418
418
  super.componentWillUnmount();
419
419
  }
420
+
421
+ setData(values: object) {
422
+ return this.props.store.updateData(values);
423
+ }
420
424
  }