amis 1.4.1 → 1.4.2-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 (516) hide show
  1. package/README.md +1 -1
  2. package/lib/Schema.d.ts +26 -2
  3. package/lib/Schema.js.map +1 -1
  4. package/lib/components/Alert.js +3 -1
  5. package/lib/components/Alert.js.map +2 -2
  6. package/lib/components/AnchorNav.d.ts +22 -21
  7. package/lib/components/AnchorNav.js +7 -3
  8. package/lib/components/AnchorNav.js.map +2 -2
  9. package/lib/components/ArrayInput.d.ts +84 -84
  10. package/lib/components/AssociatedSelection.d.ts +930 -0
  11. package/lib/components/AssociatedSelection.js +89 -0
  12. package/lib/components/AssociatedSelection.js.map +13 -0
  13. package/lib/components/Badge.d.ts +2 -2
  14. package/lib/components/Badge.js +13 -7
  15. package/lib/components/Badge.js.map +2 -2
  16. package/lib/components/{ChainedCheckboxes.d.ts → ChainedSelection.d.ts} +267 -98
  17. package/lib/components/{ChainedCheckboxes.js → ChainedSelection.js} +30 -24
  18. package/lib/components/ChainedSelection.js.map +13 -0
  19. package/lib/components/Collapse.js +1 -1
  20. package/lib/components/Collapse.js.map +2 -2
  21. package/lib/components/ColorPicker.d.ts +84 -84
  22. package/lib/components/DatePicker.d.ts +84 -84
  23. package/lib/components/DatePicker.js +1 -1
  24. package/lib/components/DatePicker.js.map +2 -2
  25. package/lib/components/DateRangePicker.d.ts +84 -84
  26. package/lib/components/DateRangePicker.js +1 -1
  27. package/lib/components/DateRangePicker.js.map +2 -2
  28. package/lib/components/Editor.d.ts +84 -84
  29. package/lib/components/GroupedSelection.d.ts +907 -0
  30. package/lib/components/GroupedSelection.js +48 -0
  31. package/lib/components/GroupedSelection.js.map +13 -0
  32. package/lib/components/InputBox.d.ts +22 -21
  33. package/lib/components/InputBox.js +11 -3
  34. package/lib/components/InputBox.js.map +2 -2
  35. package/lib/components/Link.d.ts +84 -0
  36. package/lib/components/Link.js +43 -0
  37. package/lib/components/Link.js.map +13 -0
  38. package/lib/components/ListGroup.d.ts +21 -21
  39. package/lib/components/ModalManager.js +1 -1
  40. package/lib/components/ModalManager.js.map +2 -2
  41. package/lib/components/MonthRangePicker.d.ts +84 -84
  42. package/lib/components/MonthRangePicker.js +1 -1
  43. package/lib/components/MonthRangePicker.js.map +2 -2
  44. package/lib/components/NumberInput.d.ts +20 -20
  45. package/lib/components/PickerColumn.d.ts +514 -0
  46. package/lib/components/PickerColumn.js +279 -0
  47. package/lib/components/PickerColumn.js.map +13 -0
  48. package/lib/components/PickerContainer.d.ts +513 -0
  49. package/lib/components/PickerContainer.js +96 -0
  50. package/lib/components/PickerContainer.js.map +13 -0
  51. package/lib/components/Radios.d.ts +22 -21
  52. package/lib/components/Radios.js +1 -0
  53. package/lib/components/Radios.js.map +2 -2
  54. package/lib/components/Rating.d.ts +21 -21
  55. package/lib/components/ResultBox.d.ts +84 -84
  56. package/lib/components/ResultBox.js +10 -2
  57. package/lib/components/ResultBox.js.map +2 -2
  58. package/lib/components/RichText.js +17 -53
  59. package/lib/components/RichText.js.map +2 -2
  60. package/lib/components/SearchBox.d.ts +84 -84
  61. package/lib/components/SearchBox.js +4 -4
  62. package/lib/components/SearchBox.js.map +2 -2
  63. package/lib/components/Select.d.ts +245 -237
  64. package/lib/components/Select.js +28 -4
  65. package/lib/components/Select.js.map +2 -2
  66. package/lib/components/{Checkboxes.d.ts → Selection.d.ts} +273 -98
  67. package/lib/components/Selection.js +134 -0
  68. package/lib/components/Selection.js.map +13 -0
  69. package/lib/components/SparkLine.d.ts +85 -84
  70. package/lib/components/SparkLine.js +2 -2
  71. package/lib/components/SparkLine.js.map +2 -2
  72. package/lib/components/{TableCheckboxes.d.ts → TableSelection.d.ts} +266 -96
  73. package/lib/components/{TableCheckboxes.js → TableSelection.js} +30 -30
  74. package/lib/components/TableSelection.js.map +13 -0
  75. package/lib/components/Tabs.d.ts +20 -20
  76. package/lib/components/TabsTransfer.d.ts +84 -84
  77. package/lib/components/TabsTransfer.js +9 -9
  78. package/lib/components/TabsTransfer.js.map +2 -2
  79. package/lib/components/TabsTransferPicker.d.ts +489 -0
  80. package/lib/components/TabsTransferPicker.js +60 -0
  81. package/lib/components/TabsTransferPicker.js.map +13 -0
  82. package/lib/components/Toast.js +2 -2
  83. package/lib/components/Toast.js.map +2 -2
  84. package/lib/components/Transfer.d.ts +908 -274
  85. package/lib/components/Transfer.js +31 -24
  86. package/lib/components/Transfer.js.map +2 -2
  87. package/lib/components/TransferDropDown.d.ts +488 -0
  88. package/lib/components/TransferDropDown.js +59 -0
  89. package/lib/components/TransferDropDown.js.map +13 -0
  90. package/lib/components/TransferPicker.d.ts +493 -0
  91. package/lib/components/TransferPicker.js +60 -0
  92. package/lib/components/TransferPicker.js.map +13 -0
  93. package/lib/components/Tree.d.ts +84 -84
  94. package/lib/components/Tree.js +5 -3
  95. package/lib/components/Tree.js.map +2 -2
  96. package/lib/components/{TreeCheckboxes.d.ts → TreeSelection.d.ts} +269 -99
  97. package/lib/components/{TreeCheckboxes.js → TreeSelection.js} +36 -32
  98. package/lib/components/TreeSelection.js.map +13 -0
  99. package/lib/components/WithRemoteConfig.js +1 -1
  100. package/lib/components/WithRemoteConfig.js.map +2 -2
  101. package/lib/components/condition-builder/Field.js +5 -2
  102. package/lib/components/condition-builder/Field.js.map +2 -2
  103. package/lib/components/condition-builder/Func.js +2 -2
  104. package/lib/components/condition-builder/Func.js.map +2 -2
  105. package/lib/components/condition-builder/InputSwitch.js +2 -2
  106. package/lib/components/condition-builder/InputSwitch.js.map +2 -2
  107. package/lib/components/condition-builder/Item.js +3 -3
  108. package/lib/components/condition-builder/Item.js.map +2 -2
  109. package/lib/components/icons.js +14 -0
  110. package/lib/components/icons.js.map +2 -2
  111. package/lib/components/index.d.ts +8 -8
  112. package/lib/components/index.js +16 -16
  113. package/lib/components/index.js.map +2 -2
  114. package/lib/envOverwrite.js.map +2 -2
  115. package/lib/factory.d.ts +4 -0
  116. package/lib/factory.js +4 -2
  117. package/lib/factory.js.map +2 -2
  118. package/lib/helper.css.map +1 -1
  119. package/lib/hooks/index.d.ts +5 -0
  120. package/lib/hooks/index.js +14 -0
  121. package/lib/hooks/index.js.map +13 -0
  122. package/lib/hooks/use-set-state.d.ts +2 -0
  123. package/lib/hooks/use-set-state.js +15 -0
  124. package/lib/hooks/use-set-state.js.map +13 -0
  125. package/lib/hooks/use-touch.d.ts +16 -0
  126. package/lib/hooks/use-touch.js +73 -0
  127. package/lib/hooks/use-touch.js.map +13 -0
  128. package/lib/hooks/use-update-effect.d.ts +3 -0
  129. package/lib/hooks/use-update-effect.js +17 -0
  130. package/lib/hooks/use-update-effect.js.map +13 -0
  131. package/lib/icons/clock.js +10 -0
  132. package/lib/icons/download.js +7 -0
  133. package/lib/icons/status-close.js +11 -0
  134. package/lib/icons/status-fail.js +11 -0
  135. package/lib/icons/status-info.js +10 -0
  136. package/lib/icons/status-success.js +11 -0
  137. package/lib/icons/status-warning.js +10 -0
  138. package/lib/index.d.ts +3 -0
  139. package/lib/index.js +4 -1
  140. package/lib/index.js.map +2 -2
  141. package/lib/locale/de-DE.js +4 -0
  142. package/lib/locale/de-DE.js.map +2 -2
  143. package/lib/locale/en-US.js +5 -0
  144. package/lib/locale/en-US.js.map +2 -2
  145. package/lib/locale/zh-CN.js +8 -3
  146. package/lib/locale/zh-CN.js.map +2 -2
  147. package/lib/renderers/Action.d.ts +8 -0
  148. package/lib/renderers/Action.js +17 -4
  149. package/lib/renderers/Action.js.map +2 -2
  150. package/lib/renderers/AnchorNav.d.ts +1 -0
  151. package/lib/renderers/AnchorNav.js +2 -2
  152. package/lib/renderers/AnchorNav.js.map +2 -2
  153. package/lib/renderers/Avatar.js +3 -3
  154. package/lib/renderers/Avatar.js.map +2 -2
  155. package/lib/renderers/Breadcrumb.js +1 -1
  156. package/lib/renderers/Breadcrumb.js.map +2 -2
  157. package/lib/renderers/CRUD.d.ts +9 -0
  158. package/lib/renderers/CRUD.js +43 -8
  159. package/lib/renderers/CRUD.js.map +2 -2
  160. package/lib/renderers/Card.d.ts +4 -0
  161. package/lib/renderers/Card.js +29 -23
  162. package/lib/renderers/Card.js.map +2 -2
  163. package/lib/renderers/Chart.js +1 -1
  164. package/lib/renderers/Chart.js.map +2 -2
  165. package/lib/renderers/Collapse.js +3 -2
  166. package/lib/renderers/Collapse.js.map +2 -2
  167. package/lib/renderers/Dialog.js +0 -3
  168. package/lib/renderers/Dialog.js.map +2 -2
  169. package/lib/renderers/Drawer.js +0 -3
  170. package/lib/renderers/Drawer.js.map +2 -2
  171. package/lib/renderers/DropDownButton.d.ts +5 -1
  172. package/lib/renderers/DropDownButton.js +8 -6
  173. package/lib/renderers/DropDownButton.js.map +2 -2
  174. package/lib/renderers/Form/Checkbox.d.ts +5 -0
  175. package/lib/renderers/Form/Checkbox.js +4 -0
  176. package/lib/renderers/Form/Checkbox.js.map +2 -2
  177. package/lib/renderers/Form/Combo.js +2 -2
  178. package/lib/renderers/Form/Combo.js.map +2 -2
  179. package/lib/renderers/Form/DiffEditor.d.ts +4 -3
  180. package/lib/renderers/Form/Editor.d.ts +3 -2
  181. package/lib/renderers/Form/InputCity.d.ts +84 -84
  182. package/lib/renderers/Form/InputCity.js +7 -6
  183. package/lib/renderers/Form/InputCity.js.map +2 -2
  184. package/lib/renderers/Form/InputColor.d.ts +84 -84
  185. package/lib/renderers/Form/InputFile.d.ts +6 -0
  186. package/lib/renderers/Form/InputFile.js +30 -10
  187. package/lib/renderers/Form/InputFile.js.map +2 -2
  188. package/lib/renderers/Form/InputImage.js +16 -7
  189. package/lib/renderers/Form/InputImage.js.map +2 -2
  190. package/lib/renderers/Form/Item.d.ts +1 -1
  191. package/lib/renderers/Form/Item.js.map +1 -1
  192. package/lib/renderers/Form/Options.js +19 -6
  193. package/lib/renderers/Form/Options.js.map +2 -2
  194. package/lib/renderers/Form/Picker.js +2 -2
  195. package/lib/renderers/Form/Picker.js.map +2 -2
  196. package/lib/renderers/Form/Select.d.ts +42 -4
  197. package/lib/renderers/Form/Select.js +37 -3
  198. package/lib/renderers/Form/Select.js.map +2 -2
  199. package/lib/renderers/Form/TabsTransferPicker.d.ts +48 -0
  200. package/lib/renderers/Form/TabsTransferPicker.js +29 -0
  201. package/lib/renderers/Form/TabsTransferPicker.js.map +13 -0
  202. package/lib/renderers/Form/Transfer.js +18 -3
  203. package/lib/renderers/Form/Transfer.js.map +2 -2
  204. package/lib/renderers/Form/TransferPicker.d.ts +52 -0
  205. package/lib/renderers/Form/TransferPicker.js +43 -0
  206. package/lib/renderers/Form/TransferPicker.js.map +13 -0
  207. package/lib/renderers/Form/TreeSelect.js +2 -2
  208. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  209. package/lib/renderers/Form/index.d.ts +5 -0
  210. package/lib/renderers/Form/index.js +5 -3
  211. package/lib/renderers/Form/index.js.map +2 -2
  212. package/lib/renderers/Form/wrapControl.js +15 -3
  213. package/lib/renderers/Form/wrapControl.js.map +2 -2
  214. package/lib/renderers/IFrame.js +3 -5
  215. package/lib/renderers/IFrame.js.map +2 -2
  216. package/lib/renderers/Image.d.ts +1 -0
  217. package/lib/renderers/Image.js +15 -1
  218. package/lib/renderers/Image.js.map +2 -2
  219. package/lib/renderers/Json.d.ts +4 -0
  220. package/lib/renderers/Json.js +4 -13
  221. package/lib/renderers/Json.js.map +2 -2
  222. package/lib/renderers/Link.d.ts +18 -3
  223. package/lib/renderers/Link.js +27 -15
  224. package/lib/renderers/Link.js.map +2 -2
  225. package/lib/renderers/List.js +1 -1
  226. package/lib/renderers/List.js.map +2 -2
  227. package/lib/renderers/Log.d.ts +2 -2
  228. package/lib/renderers/Log.js +7 -1
  229. package/lib/renderers/Log.js.map +2 -2
  230. package/lib/renderers/Mapping.d.ts +9 -2
  231. package/lib/renderers/Mapping.js +18 -6
  232. package/lib/renderers/Mapping.js.map +2 -2
  233. package/lib/renderers/Nav.d.ts +62 -36
  234. package/lib/renderers/Nav.js +272 -96
  235. package/lib/renderers/Nav.js.map +2 -2
  236. package/lib/renderers/Portlet.d.ts +125 -0
  237. package/lib/renderers/Portlet.js +156 -0
  238. package/lib/renderers/Portlet.js.map +13 -0
  239. package/lib/renderers/Property.js +2 -1
  240. package/lib/renderers/Property.js.map +2 -2
  241. package/lib/renderers/SearchBox.d.ts +6 -1
  242. package/lib/renderers/SearchBox.js +19 -5
  243. package/lib/renderers/SearchBox.js.map +2 -2
  244. package/lib/renderers/SparkLine.d.ts +4 -0
  245. package/lib/renderers/SparkLine.js.map +2 -2
  246. package/lib/renderers/Table/ColumnToggler.d.ts +113 -0
  247. package/lib/renderers/Table/ColumnToggler.js +216 -0
  248. package/lib/renderers/Table/ColumnToggler.js.map +13 -0
  249. package/lib/renderers/Table/ItemActionsWrapper.d.ts +11 -0
  250. package/lib/renderers/Table/ItemActionsWrapper.js +31 -0
  251. package/lib/renderers/Table/ItemActionsWrapper.js.map +13 -0
  252. package/lib/renderers/Table/TableBody.d.ts +4 -0
  253. package/lib/renderers/Table/TableCell.js +3 -1
  254. package/lib/renderers/Table/TableCell.js.map +2 -2
  255. package/lib/renderers/Table/TableContent.d.ts +4 -1
  256. package/lib/renderers/Table/TableContent.js +21 -1
  257. package/lib/renderers/Table/TableContent.js.map +2 -2
  258. package/lib/renderers/Table/index.d.ts +19 -2
  259. package/lib/renderers/Table/index.js +172 -57
  260. package/lib/renderers/Table/index.js.map +2 -2
  261. package/lib/renderers/Tabs.js +9 -1
  262. package/lib/renderers/Tabs.js.map +2 -2
  263. package/lib/renderers/WebComponent.js +1 -1
  264. package/lib/renderers/WebComponent.js.map +2 -2
  265. package/lib/store/combo.d.ts +2 -16
  266. package/lib/store/crud.js +3 -7
  267. package/lib/store/crud.js.map +2 -2
  268. package/lib/store/form.d.ts +1 -1
  269. package/lib/store/form.js +5 -6
  270. package/lib/store/form.js.map +2 -2
  271. package/lib/store/service.js +5 -4
  272. package/lib/store/service.js.map +2 -2
  273. package/lib/store/table.d.ts +260 -3
  274. package/lib/store/table.js +69 -11
  275. package/lib/store/table.js.map +2 -2
  276. package/lib/themes/ang-ie11.css +888 -238
  277. package/lib/themes/ang.css +888 -238
  278. package/lib/themes/ang.css.map +1 -1
  279. package/lib/themes/antd-ie11.css +888 -238
  280. package/lib/themes/antd.css +888 -238
  281. package/lib/themes/antd.css.map +1 -1
  282. package/lib/themes/cxd-ie11.css +1446 -457
  283. package/lib/themes/cxd.css +1446 -457
  284. package/lib/themes/cxd.css.map +1 -1
  285. package/lib/themes/dark-ie11.css +888 -238
  286. package/lib/themes/dark.css +888 -238
  287. package/lib/themes/dark.css.map +1 -1
  288. package/lib/themes/default.css +1446 -457
  289. package/lib/themes/default.css.map +1 -1
  290. package/lib/types.d.ts +37 -0
  291. package/lib/types.js +0 -5
  292. package/lib/types.js.map +2 -2
  293. package/lib/utils/api.d.ts +3 -2
  294. package/lib/utils/api.js +31 -15
  295. package/lib/utils/api.js.map +2 -2
  296. package/lib/utils/dom.d.ts +4 -0
  297. package/lib/utils/dom.js +11 -1
  298. package/lib/utils/dom.js.map +2 -2
  299. package/lib/utils/handleAction.d.ts +7 -0
  300. package/lib/utils/handleAction.js +30 -0
  301. package/lib/utils/handleAction.js.map +13 -0
  302. package/lib/utils/helper.d.ts +3 -1
  303. package/lib/utils/helper.js +14 -5
  304. package/lib/utils/helper.js.map +2 -2
  305. package/lib/utils/icon.js +3 -0
  306. package/lib/utils/icon.js.map +2 -2
  307. package/lib/utils/tpl-builtin.d.ts +1 -1
  308. package/lib/utils/tpl-builtin.js +25 -15
  309. package/lib/utils/tpl-builtin.js.map +2 -2
  310. package/package.json +1 -1
  311. package/schema.json +3341 -998
  312. package/scss/_mixins.scss +1 -3
  313. package/scss/_properties.scss +63 -4
  314. package/scss/_utilities.scss +4 -0
  315. package/scss/base/_common.scss +3 -0
  316. package/scss/base/_normalize.scss +2 -0
  317. package/scss/components/_anchor-nav.scss +88 -29
  318. package/scss/components/_button.scss +4 -5
  319. package/scss/components/_card.scss +8 -14
  320. package/scss/components/_collapse.scss +41 -8
  321. package/scss/components/_column-toggler.scss +234 -0
  322. package/scss/components/_dropdown.scss +2 -1
  323. package/scss/components/_images.scss +2 -1
  324. package/scss/components/_input-box.scss +1 -0
  325. package/scss/components/_link.scss +6 -0
  326. package/scss/components/_mapping.scss +6 -0
  327. package/scss/components/_nav.scss +231 -223
  328. package/scss/components/_page.scss +5 -4
  329. package/scss/components/_picker-columns.scss +124 -0
  330. package/scss/components/_popover.scss +13 -0
  331. package/scss/components/_portlet.scss +51 -0
  332. package/scss/components/_progress.scss +2 -0
  333. package/scss/components/_result-box.scss +1 -0
  334. package/scss/components/_status.scss +1 -1
  335. package/scss/components/_steps.scss +1 -1
  336. package/scss/components/_table.scss +51 -1
  337. package/scss/components/form/_checks.scss +0 -351
  338. package/scss/components/form/_color.scss +1 -0
  339. package/scss/components/form/_date-range.scss +2 -0
  340. package/scss/components/form/_date.scss +2 -0
  341. package/scss/components/form/_fieldset.scss +6 -3
  342. package/scss/components/form/_file.scss +16 -4
  343. package/scss/components/form/_form.scss +48 -0
  344. package/scss/components/form/_image.scss +7 -2
  345. package/scss/components/form/_list.scss +1 -0
  346. package/scss/components/form/_location.scss +1 -1
  347. package/scss/components/form/_selection.scss +354 -0
  348. package/scss/components/form/_text.scss +13 -0
  349. package/scss/components/form/_textarea.scss +10 -0
  350. package/scss/components/form/_transfer.scss +77 -18
  351. package/scss/themes/_common.scss +7 -0
  352. package/scss/themes/_cxd-colors.scss +56 -0
  353. package/scss/themes/_cxd-variables.scss +217 -89
  354. package/scss/themes/cxd.scss +370 -0
  355. package/sdk/ang-ie11.css +1117 -392
  356. package/sdk/ang.css +1110 -342
  357. package/sdk/antd-ie11.css +1105 -380
  358. package/sdk/antd.css +1110 -342
  359. package/sdk/charts.js +13 -13
  360. package/sdk/color-picker.js +65 -69
  361. package/sdk/cropperjs.js +2 -2
  362. package/sdk/cxd-ie11.css +2086 -1062
  363. package/sdk/cxd.css +1643 -495
  364. package/sdk/dark-ie11.css +1117 -392
  365. package/sdk/dark.css +1110 -342
  366. package/sdk/exceljs.js +1 -1
  367. package/sdk/helper.css.map +1 -1
  368. package/sdk/iconfont.svg +2513 -0
  369. package/sdk/iconfont.ttf +0 -0
  370. package/sdk/iconfont.woff +0 -0
  371. package/sdk/ie11-patch.css +1 -0
  372. package/sdk/locale/de-DE.js +4 -0
  373. package/sdk/markdown.js +69 -69
  374. package/sdk/papaparse.js +1 -1
  375. package/sdk/renderers/Form/CityDB.js +1 -1
  376. package/sdk/rest.js +20 -28
  377. package/sdk/rich-text.js +62 -62
  378. package/sdk/sdk-ie11.css +2086 -1062
  379. package/sdk/sdk.css +1643 -495
  380. package/sdk/sdk.js +1219 -1165
  381. package/sdk/thirds/hls.js/hls.js +1 -1
  382. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  383. package/sdk/tinymce.js +57 -57
  384. package/src/Schema.ts +32 -0
  385. package/src/components/Alert.tsx +3 -1
  386. package/src/components/AnchorNav.tsx +15 -4
  387. package/src/components/{AssociatedCheckboxes.tsx → AssociatedSelection.tsx} +41 -37
  388. package/src/components/Badge.tsx +38 -26
  389. package/src/components/{ChainedCheckboxes.tsx → ChainedSelection.tsx} +57 -40
  390. package/src/components/Collapse.tsx +14 -9
  391. package/src/components/DatePicker.tsx +1 -1
  392. package/src/components/DateRangePicker.tsx +23 -11
  393. package/src/components/{ListCheckboxes.tsx → GroupedSelection.tsx} +26 -21
  394. package/src/components/InputBox.tsx +11 -10
  395. package/src/components/Link.tsx +85 -0
  396. package/src/components/ModalManager.ts +1 -1
  397. package/src/components/MonthRangePicker.tsx +10 -2
  398. package/src/components/PickerColumn.tsx +429 -0
  399. package/src/components/PickerContainer.tsx +128 -0
  400. package/src/components/Radios.tsx +3 -8
  401. package/src/components/ResultBox.tsx +9 -9
  402. package/src/components/RichText.tsx +17 -57
  403. package/src/components/SearchBox.tsx +4 -5
  404. package/src/components/Select.tsx +60 -5
  405. package/src/components/{Checkboxes.tsx → Selection.tsx} +75 -21
  406. package/src/components/SparkLine.tsx +4 -1
  407. package/src/components/{TableCheckboxes.tsx → TableSelection.tsx} +46 -25
  408. package/src/components/TabsTransfer.tsx +13 -7
  409. package/src/components/TabsTransferPicker.tsx +85 -0
  410. package/src/components/Toast.tsx +5 -5
  411. package/src/components/Transfer.tsx +71 -50
  412. package/src/components/TransferDropDown.tsx +120 -0
  413. package/src/components/TransferPicker.tsx +91 -0
  414. package/src/components/Tree.tsx +6 -8
  415. package/src/components/{TreeCheckboxes.tsx → TreeSelection.tsx} +33 -26
  416. package/src/components/WithRemoteConfig.tsx +7 -2
  417. package/src/components/condition-builder/Field.tsx +5 -5
  418. package/src/components/condition-builder/Func.tsx +3 -3
  419. package/src/components/condition-builder/InputSwitch.tsx +3 -3
  420. package/src/components/condition-builder/Item.tsx +5 -12
  421. package/src/components/icons.tsx +15 -0
  422. package/src/components/index.tsx +13 -13
  423. package/src/envOverwrite.ts +0 -1
  424. package/src/factory.tsx +18 -3
  425. package/src/hooks/index.ts +5 -0
  426. package/src/hooks/use-set-state.ts +19 -0
  427. package/src/hooks/use-touch.ts +100 -0
  428. package/src/hooks/use-update-effect.ts +16 -0
  429. package/src/icons/clock.svg +1 -0
  430. package/src/icons/download.svg +4 -0
  431. package/src/icons/status-close.svg +10 -0
  432. package/src/icons/status-fail.svg +10 -0
  433. package/src/icons/status-info.svg +8 -0
  434. package/src/icons/status-success.svg +10 -0
  435. package/src/icons/status-warning.svg +8 -0
  436. package/src/index.tsx +3 -0
  437. package/src/locale/de-DE.ts +4 -0
  438. package/src/locale/en-US.ts +5 -0
  439. package/src/locale/zh-CN.ts +8 -3
  440. package/src/renderers/Action.tsx +33 -2
  441. package/src/renderers/AnchorNav.tsx +4 -0
  442. package/src/renderers/Avatar.tsx +8 -4
  443. package/src/renderers/Breadcrumb.tsx +5 -1
  444. package/src/renderers/CRUD.tsx +63 -28
  445. package/src/renderers/Card.tsx +63 -34
  446. package/src/renderers/Chart.tsx +6 -2
  447. package/src/renderers/Collapse.tsx +4 -2
  448. package/src/renderers/Dialog.tsx +0 -4
  449. package/src/renderers/Drawer.tsx +0 -4
  450. package/src/renderers/DropDownButton.tsx +18 -13
  451. package/src/renderers/Form/Checkbox.tsx +8 -0
  452. package/src/renderers/Form/Combo.tsx +2 -3
  453. package/src/renderers/Form/InputCity.tsx +4 -8
  454. package/src/renderers/Form/InputFile.tsx +66 -24
  455. package/src/renderers/Form/InputImage.tsx +16 -5
  456. package/src/renderers/Form/Item.tsx +3 -2
  457. package/src/renderers/Form/Options.tsx +32 -7
  458. package/src/renderers/Form/Picker.tsx +3 -2
  459. package/src/renderers/Form/Select.tsx +162 -21
  460. package/src/renderers/Form/TabsTransferPicker.tsx +123 -0
  461. package/src/renderers/Form/Transfer.tsx +19 -4
  462. package/src/renderers/Form/TransferPicker.tsx +145 -0
  463. package/src/renderers/Form/TreeSelect.tsx +25 -0
  464. package/src/renderers/Form/index.tsx +15 -2
  465. package/src/renderers/Form/wrapControl.tsx +28 -3
  466. package/src/renderers/IFrame.tsx +4 -5
  467. package/src/renderers/Image.tsx +10 -0
  468. package/src/renderers/Json.tsx +9 -9
  469. package/src/renderers/Link.tsx +53 -14
  470. package/src/renderers/List.tsx +1 -1
  471. package/src/renderers/Log.tsx +16 -3
  472. package/src/renderers/Mapping.tsx +27 -11
  473. package/src/renderers/Nav.tsx +325 -122
  474. package/src/renderers/Portlet.tsx +423 -0
  475. package/src/renderers/Property.tsx +3 -2
  476. package/src/renderers/SearchBox.tsx +23 -4
  477. package/src/renderers/SparkLine.tsx +5 -0
  478. package/src/renderers/Table/ColumnToggler.tsx +544 -0
  479. package/src/renderers/Table/ItemActionsWrapper.tsx +44 -0
  480. package/src/renderers/Table/TableCell.tsx +16 -1
  481. package/src/renderers/Table/TableContent.tsx +40 -2
  482. package/src/renderers/Table/index.tsx +257 -80
  483. package/src/renderers/Tabs.tsx +9 -1
  484. package/src/renderers/WebComponent.tsx +2 -2
  485. package/src/store/crud.ts +3 -8
  486. package/src/store/form.ts +5 -10
  487. package/src/store/service.ts +5 -4
  488. package/src/store/table.ts +103 -11
  489. package/src/types.ts +57 -0
  490. package/src/utils/api.ts +52 -23
  491. package/src/utils/dom.tsx +12 -0
  492. package/src/utils/handleAction.ts +41 -0
  493. package/src/utils/helper.ts +12 -4
  494. package/src/utils/icon.tsx +4 -0
  495. package/src/utils/tpl-builtin.ts +48 -17
  496. package/dump.rdb +0 -0
  497. package/lib/components/AssociatedCheckboxes.d.ts +0 -762
  498. package/lib/components/AssociatedCheckboxes.js +0 -90
  499. package/lib/components/AssociatedCheckboxes.js.map +0 -13
  500. package/lib/components/ChainedCheckboxes.js.map +0 -13
  501. package/lib/components/Checkboxes.js +0 -101
  502. package/lib/components/Checkboxes.js.map +0 -13
  503. package/lib/components/ListCheckboxes.d.ts +0 -739
  504. package/lib/components/ListCheckboxes.js +0 -48
  505. package/lib/components/ListCheckboxes.js.map +0 -13
  506. package/lib/components/ListRadios.d.ts +0 -763
  507. package/lib/components/ListRadios.js +0 -86
  508. package/lib/components/ListRadios.js.map +0 -13
  509. package/lib/components/TableCheckboxes.js.map +0 -13
  510. package/lib/components/TreeCheckboxes.js.map +0 -13
  511. package/lib/components/TreeRadios.d.ts +0 -838
  512. package/lib/components/TreeRadios.js +0 -116
  513. package/lib/components/TreeRadios.js.map +0 -13
  514. package/sdk.zip +0 -0
  515. package/src/components/ListRadios.tsx +0 -159
  516. package/src/components/TreeRadios.tsx +0 -202
@@ -1,43 +1,28 @@
1
1
  import React from 'react';
2
2
 
3
- import PropTypes from 'prop-types';
4
3
  import {Renderer, RendererProps} from '../factory';
5
- import {
6
- SchemaNode,
7
- Schema,
8
- Action,
9
- Api,
10
- ApiObject,
11
- PlainObject
12
- } from '../types';
4
+ import {SchemaNode, Schema, Action, PlainObject} from '../types';
13
5
  import {CRUDStore, ICRUDStore} from '../store/crud';
14
6
  import {
15
7
  createObject,
16
8
  extendObject,
17
9
  anyChanged,
18
10
  isObjectShallowModified,
19
- noop,
20
11
  isVisible,
21
12
  getPropValue,
22
13
  getVariable,
23
14
  qsstringify,
24
- qsparse
15
+ qsparse,
16
+ isArrayChildrenModified
25
17
  } from '../utils/helper';
26
- import {observer} from 'mobx-react';
27
- import partition from 'lodash/partition';
28
- import Scoped, {ScopedContext, IScopedContext} from '../Scoped';
18
+ import {ScopedContext, IScopedContext} from '../Scoped';
29
19
  import Button from '../components/Button';
30
20
  import Select from '../components/Select';
31
21
  import getExprProperties from '../utils/filter-schema';
32
22
  import pick from 'lodash/pick';
33
23
  import {findDOMNode} from 'react-dom';
34
24
  import {evalExpression, filter} from '../utils/tpl';
35
- import {
36
- isValidApi,
37
- buildApi,
38
- isEffectiveApi,
39
- isApiOutdated
40
- } from '../utils/api';
25
+ import {isEffectiveApi, isApiOutdated, str2function} from '../utils/api';
41
26
  import omit from 'lodash/omit';
42
27
  import find from 'lodash/find';
43
28
  import findIndex from 'lodash/findIndex';
@@ -48,7 +33,6 @@ import {
48
33
  BaseSchema,
49
34
  SchemaApi,
50
35
  SchemaClassName,
51
- SchemaCollection,
52
36
  SchemaExpression,
53
37
  SchemaMessage,
54
38
  SchemaName,
@@ -298,6 +282,16 @@ export interface CRUDCommonSchema extends BaseSchema {
298
282
  * 默认只有当分页数大于 1 是才显示,如果总是想显示请配置。
299
283
  */
300
284
  alwaysShowPagination?: boolean;
285
+
286
+ /**
287
+ * 开启查询区域,会根据列元素的searchable属性值,自动生成查询条件表单
288
+ */
289
+ autoGenerateFilter?: boolean;
290
+
291
+ /**
292
+ * 内容区域占满屏幕剩余空间
293
+ */
294
+ autoFillHeight?: boolean;
301
295
  }
302
296
 
303
297
  export type CRUDCardsSchema = CRUDCommonSchema & {
@@ -362,6 +356,7 @@ export default class CRUD extends React.Component<CRUDProps, any> {
362
356
  'footerToolbar',
363
357
  'filterTogglable',
364
358
  'filterDefaultVisible',
359
+ 'autoGenerateFilter',
365
360
  'syncResponse2Query',
366
361
  'keepItemSelectionOnPageChange',
367
362
  'labelTpl',
@@ -376,7 +371,8 @@ export default class CRUD extends React.Component<CRUDProps, any> {
376
371
  'onInit',
377
372
  'onSaved',
378
373
  'onQuery',
379
- 'formStore'
374
+ 'formStore',
375
+ 'autoFillHeight'
380
376
  ];
381
377
  static defaultProps = {
382
378
  toolbarInline: true,
@@ -392,7 +388,8 @@ export default class CRUD extends React.Component<CRUDProps, any> {
392
388
  filterTogglable: false,
393
389
  filterDefaultVisible: true,
394
390
  loadDataOnce: false,
395
- loadDataOnceFetchOnFilter: true
391
+ loadDataOnceFetchOnFilter: true,
392
+ autoFillHeight: false
396
393
  };
397
394
 
398
395
  control: any;
@@ -478,8 +475,8 @@ export default class CRUD extends React.Component<CRUDProps, any> {
478
475
  this.handleFilterInit({});
479
476
  }
480
477
 
481
- const val = getPropValue(this.props);
482
- if (this.props.pickerMode && val) {
478
+ let val: any;
479
+ if (this.props.pickerMode && (val = getPropValue(this.props))) {
483
480
  store.setSelectedItems(val);
484
481
  }
485
482
  }
@@ -500,8 +497,14 @@ export default class CRUD extends React.Component<CRUDProps, any> {
500
497
  this.renderFooterToolbar = this.renderFooterToolbar.bind(this);
501
498
  }
502
499
 
503
- const val = getPropValue(this.props);
504
- if (this.props.pickerMode && val !== getPropValue(prevProps)) {
500
+ let val: any;
501
+ if (
502
+ this.props.pickerMode &&
503
+ isArrayChildrenModified(
504
+ (val = getPropValue(this.props)),
505
+ getPropValue(prevProps)
506
+ )
507
+ ) {
505
508
  store.setSelectedItems(val);
506
509
  }
507
510
 
@@ -654,6 +657,13 @@ export default class CRUD extends React.Component<CRUDProps, any> {
654
657
  return Promise.resolve({
655
658
  items: store.selectedItems.concat()
656
659
  });
660
+ } else if (action.onClick) {
661
+ store.setCurrentAction(action);
662
+ let onClick = action.onClick;
663
+ if (typeof onClick === 'string') {
664
+ onClick = str2function(onClick, 'event', 'props', 'data');
665
+ }
666
+ onClick && onClick(e, this.props, ctx);
657
667
  } else {
658
668
  onAction(e, action, ctx, throwErrors, delegate || this.context);
659
669
  }
@@ -1792,6 +1802,7 @@ export default class CRUD extends React.Component<CRUDProps, any> {
1792
1802
  return null;
1793
1803
  }
1794
1804
 
1805
+ const {render, store, translate: __} = this.props;
1795
1806
  const type = (toolbar as Schema).type || toolbar;
1796
1807
 
1797
1808
  if (type === 'bulkActions' || type === 'bulk-actions') {
@@ -1808,8 +1819,25 @@ export default class CRUD extends React.Component<CRUDProps, any> {
1808
1819
  return this.renderFilterToggler();
1809
1820
  } else if (type === 'export-csv') {
1810
1821
  return this.renderExportCSV(toolbar as Schema);
1822
+ } else if (type === 'reload') {
1823
+ let reloadButton = {
1824
+ label: '',
1825
+ icon: 'fa fa-sync',
1826
+ tooltip: __('reload'),
1827
+ tooltipPlacement: 'top',
1828
+ type: 'button'
1829
+ };
1830
+ if (typeof toolbar === 'object') {
1831
+ reloadButton = {...reloadButton, ...omit(toolbar, ['type', 'align'])};
1832
+ }
1833
+ return render(`toolbar/${index}`, reloadButton, {
1834
+ onAction: () => {
1835
+ this.reload();
1836
+ }
1837
+ });
1811
1838
  } else if (Array.isArray(toolbar)) {
1812
1839
  const children: Array<any> = toolbar
1840
+ .filter((toolbar: any) => isVisible(toolbar, store.filterData))
1813
1841
  .map((toolbar, index) => ({
1814
1842
  dom: this.renderToolbar(toolbar, index, childProps, toolbarRenderer),
1815
1843
  toolbar
@@ -1851,7 +1879,6 @@ export default class CRUD extends React.Component<CRUDProps, any> {
1851
1879
  return result;
1852
1880
  }
1853
1881
 
1854
- const {render, store} = this.props;
1855
1882
  const $$editable = childProps.$$editable;
1856
1883
 
1857
1884
  return render(`toolbar/${index}`, toolbar, {
@@ -1994,6 +2021,9 @@ export default class CRUD extends React.Component<CRUDProps, any> {
1994
2021
  popOverContainer,
1995
2022
  translate: __,
1996
2023
  onQuery,
2024
+ autoGenerateFilter,
2025
+ onSelect,
2026
+ autoFillHeight,
1997
2027
  ...rest
1998
2028
  } = this.props;
1999
2029
 
@@ -2044,6 +2074,8 @@ export default class CRUD extends React.Component<CRUDProps, any> {
2044
2074
  key: 'body',
2045
2075
  className: cx('Crud-body', bodyClassName),
2046
2076
  ref: this.controlRef,
2077
+ autoGenerateFilter: !filter && autoGenerateFilter,
2078
+ autoFillHeight: autoFillHeight,
2047
2079
  selectable: !!(
2048
2080
  (this.hasBulkActionsToolbar() && this.hasBulkActions()) ||
2049
2081
  pickerMode
@@ -2076,6 +2108,9 @@ export default class CRUD extends React.Component<CRUDProps, any> {
2076
2108
  onSelect: this.handleSelect,
2077
2109
  onPopOverOpened: this.handleChildPopOverOpen,
2078
2110
  onPopOverClosed: this.handleChildPopOverClose,
2111
+ onSearchableFromReset: this.handleFilterReset,
2112
+ onSearchableFromSubmit: this.handleFilterSubmit,
2113
+ onSearchableFromInit: this.handleFilterInit,
2079
2114
  headerToolbarRender: this.renderHeaderToolbar,
2080
2115
  footerToolbarRender: this.renderFooterToolbar,
2081
2116
  data: store.mergedData
@@ -166,6 +166,11 @@ export interface CardSchema extends BaseSchema {
166
166
  * 底部按钮集合。
167
167
  */
168
168
  actions?: Array<ActionSchema>;
169
+
170
+ /**
171
+ * 工具栏按钮
172
+ */
173
+ toolbar?: Array<ActionSchema>;
169
174
  }
170
175
 
171
176
  export interface CardProps
@@ -273,30 +278,47 @@ export class Card extends React.Component<CardProps> {
273
278
  multiple,
274
279
  hideCheckToggler,
275
280
  classnames: cx,
276
- classPrefix: ns
281
+ classPrefix: ns,
282
+ toolbar,
283
+ render
277
284
  } = this.props;
278
-
279
- if (dragging) {
280
- return (
281
- <div className={cx('Card-dragBtn')}>
282
- <Icon icon="drag-bar" className="icon" />
283
- </div>
285
+ const toolbars: Array<JSX.Element> = [];
286
+
287
+ if (selectable && !hideCheckToggler) {
288
+ toolbars.push(
289
+ <Checkbox
290
+ key="check"
291
+ className={cx('Card-checkbox')}
292
+ type={multiple ? 'checkbox' : 'radio'}
293
+ disabled={!checkable}
294
+ checked={selected}
295
+ onChange={checkOnItemClick ? noop : this.handleCheck}
296
+ />
284
297
  );
285
- } else if (selectable && !hideCheckToggler) {
286
- return (
287
- <div className={cx('Card-checkBtn')}>
288
- <Checkbox
289
- classPrefix={ns}
290
- type={multiple ? 'checkbox' : 'radio'}
291
- disabled={!checkable}
292
- checked={selected}
293
- onChange={checkOnItemClick ? noop : this.handleCheck}
294
- />
295
- </div>
298
+ }
299
+
300
+ if (Array.isArray(toolbar)) {
301
+ toolbar.forEach((action, index) =>
302
+ toolbars.push(
303
+ render(
304
+ `toolbar/${index}`,
305
+ {
306
+ type: 'button',
307
+ level: 'link',
308
+ size: 'sm',
309
+ ...(action as any)
310
+ },
311
+ {
312
+ key: index
313
+ }
314
+ )
315
+ )
296
316
  );
297
317
  }
298
318
 
299
- return null;
319
+ return toolbars.length ? (
320
+ <div className={cx('Card-toolbar')}>{toolbars}</div>
321
+ ) : null;
300
322
  }
301
323
 
302
324
  renderActions() {
@@ -451,12 +473,14 @@ export class Card extends React.Component<CardProps> {
451
473
  imageClassName,
452
474
  avatarTextClassName,
453
475
  href,
454
- itemAction
476
+ itemAction,
477
+ dragging
455
478
  } = this.props;
456
479
 
480
+ const toolbar = this.renderToolbar();
457
481
  let heading = null;
458
482
 
459
- if (header) {
483
+ if (header || toolbar) {
460
484
  const {
461
485
  highlight: highlightTpl,
462
486
  avatar: avatarTpl,
@@ -465,31 +489,31 @@ export class Card extends React.Component<CardProps> {
465
489
  subTitle: subTitleTpl,
466
490
  subTitlePlaceholder,
467
491
  desc: descTpl
468
- } = header;
492
+ } = header || {};
469
493
 
470
494
  const descPlaceholder =
471
- header.descriptionPlaceholder || header.descPlaceholder;
495
+ header?.descriptionPlaceholder || header?.descPlaceholder;
472
496
 
473
497
  const highlight = !!evalExpression(highlightTpl!, data as object);
474
498
  const avatar = filter(avatarTpl, data, '| raw');
475
499
  const avatarText = filter(avatarTextTpl, data);
476
500
  const title = filter(titleTpl, data);
477
501
  const subTitle = filter(subTitleTpl, data);
478
- const desc = filter(header.description || descTpl, data);
502
+ const desc = filter(header?.description || descTpl, data);
479
503
 
480
504
  heading = (
481
- <div className={cx('Card-heading', header.className)}>
505
+ <div className={cx('Card-heading', header?.className)}>
482
506
  {avatar ? (
483
507
  <span
484
508
  className={cx(
485
509
  'Card-avtar',
486
- header.avatarClassName || avatarClassName
510
+ header?.avatarClassName || avatarClassName
487
511
  )}
488
512
  >
489
513
  <img
490
514
  className={cx(
491
515
  'Card-img',
492
- header.imageClassName || imageClassName
516
+ header?.imageClassName || imageClassName
493
517
  )}
494
518
  src={avatar}
495
519
  />
@@ -498,7 +522,7 @@ export class Card extends React.Component<CardProps> {
498
522
  <span
499
523
  className={cx(
500
524
  'Card-avtarText',
501
- header.avatarTextClassName || avatarTextClassName
525
+ header?.avatarTextClassName || avatarTextClassName
502
526
  )}
503
527
  >
504
528
  {avatarText}
@@ -509,7 +533,7 @@ export class Card extends React.Component<CardProps> {
509
533
  <i
510
534
  className={cx(
511
535
  'Card-highlight',
512
- header.highlightClassName || highlightClassName
536
+ header?.highlightClassName || highlightClassName
513
537
  )}
514
538
  />
515
539
  ) : null}
@@ -518,7 +542,7 @@ export class Card extends React.Component<CardProps> {
518
542
  <div
519
543
  className={cx(
520
544
  'Card-title',
521
- header.titleClassName || titleClassName
545
+ header?.titleClassName || titleClassName
522
546
  )}
523
547
  >
524
548
  {render('title', title)}
@@ -529,7 +553,7 @@ export class Card extends React.Component<CardProps> {
529
553
  <div
530
554
  className={cx(
531
555
  'Card-subTitle',
532
- header.subTitleClassName || subTitleClassName
556
+ header?.subTitleClassName || subTitleClassName
533
557
  )}
534
558
  >
535
559
  {render('sub-title', subTitle || subTitlePlaceholder!, {
@@ -542,8 +566,8 @@ export class Card extends React.Component<CardProps> {
542
566
  <div
543
567
  className={cx(
544
568
  'Card-desc',
545
- header.descriptionClassName ||
546
- header.descClassName ||
569
+ header?.descriptionClassName ||
570
+ header?.descClassName ||
547
571
  descClassName
548
572
  )}
549
573
  >
@@ -553,6 +577,7 @@ export class Card extends React.Component<CardProps> {
553
577
  </div>
554
578
  ) : null}
555
579
  </div>
580
+ {toolbar}
556
581
  </div>
557
582
  );
558
583
  }
@@ -570,7 +595,11 @@ export class Card extends React.Component<CardProps> {
570
595
  'Card--link': href || itemAction
571
596
  })}
572
597
  >
573
- {this.renderToolbar()}
598
+ {dragging ? (
599
+ <div className={cx('Card-dragBtn')}>
600
+ <Icon icon="drag-bar" className="icon" />
601
+ </div>
602
+ ) : null}
574
603
  {heading}
575
604
  {body ? (
576
605
  <div className={cx('Card-body', bodyClassName)}>{body}</div>
@@ -12,7 +12,11 @@ import {
12
12
  isPureVariable,
13
13
  dataMapping
14
14
  } from '../utils/tpl-builtin';
15
- import {isApiOutdated, isEffectiveApi} from '../utils/api';
15
+ import {
16
+ isApiOutdated,
17
+ isEffectiveApi,
18
+ normalizeApiResponseData
19
+ } from '../utils/api';
16
20
  import {ScopedContext, IScopedContext} from '../Scoped';
17
21
  import {createObject, findObjectsWithKey} from '../utils/helper';
18
22
  import Spinner from '../components/Spinner';
@@ -342,7 +346,7 @@ export class Chart extends React.Component<ChartProps> {
342
346
  }
343
347
  delete this.reloadCancel;
344
348
 
345
- const data = result.data || {};
349
+ const data = normalizeApiResponseData(result.data);
346
350
  // 说明返回的是数据接口。
347
351
  if (!data.series && this.props.config) {
348
352
  const ctx = createObject(this.props.data, data);
@@ -176,8 +176,10 @@ export default class Collapse extends React.Component<
176
176
  onClick={this.toggleCollapsed}
177
177
  className={cx(`Collapse-header`, headingClassName)}
178
178
  >
179
- {render('heading', finalTitle)}
180
- {collapsable && <span className={cx('Collapse-arrow')} />}
179
+ <div className={cx('Collapse-header-wrapper')}>
180
+ {render('heading', finalTitle, {className: 'Collapse-header-tpl'})}
181
+ {collapsable && <span className={cx('Collapse-arrow')} />}
182
+ </div>
181
183
  </HeadingComponent>
182
184
  ) : null,
183
185
 
@@ -629,10 +629,6 @@ export class DialogRenderer extends Dialog {
629
629
  tryChildrenToHandle(action: Action, ctx: object, rawAction?: Action) {
630
630
  const scoped = this.context as IScopedContext;
631
631
 
632
- if (action.fromDialog) {
633
- return false;
634
- }
635
-
636
632
  const targets: Array<any> = [];
637
633
  const {onConfirm, store} = this.props;
638
634
 
@@ -687,10 +687,6 @@ export class DrawerRenderer extends Drawer {
687
687
  tryChildrenToHandle(action: Action, ctx: object, rawAction?: Action) {
688
688
  const scoped = this.context as IScopedContext;
689
689
 
690
- if (action.fromDialog) {
691
- return false;
692
- }
693
-
694
690
  const targets: Array<any> = [];
695
691
  const {onConfirm, store} = this.props;
696
692
 
@@ -7,10 +7,11 @@ import type {TooltipObject, Trigger} from '../components/TooltipWrapper';
7
7
  import {isDisabled, isVisible, noop} from '../utils/helper';
8
8
  import {filter} from '../utils/tpl';
9
9
  import {Icon} from '../components/icons';
10
- import {BaseSchema, SchemaClassName} from '../Schema';
10
+ import {BaseSchema, SchemaClassName, SchemaIcon} from '../Schema';
11
11
  import {ActionSchema} from './Action';
12
12
  import {DividerSchema} from './Divider';
13
13
  import {RootClose} from '../utils/RootClose';
14
+ import {generateIcon} from '../utils/icon';
14
15
 
15
16
  /**
16
17
  * 下拉按钮渲染器。
@@ -77,10 +78,16 @@ export interface DropdownButtonSchema extends BaseSchema {
77
78
  */
78
79
  iconOnly?: boolean;
79
80
 
81
+ /**
82
+ * 右侧图标
83
+ */
84
+ rightIcon?: SchemaIcon;
85
+
80
86
  /**
81
87
  * 触发条件,默认是 click
82
88
  */
83
89
  trigger?: 'click' | 'hover';
90
+
84
91
  /**
85
92
  * 是否显示下拉按钮
86
93
  */
@@ -274,12 +281,17 @@ export default class DropDownButton extends React.Component<
274
281
  align,
275
282
  iconOnly,
276
283
  icon,
284
+ rightIcon,
277
285
  isActived,
278
286
  trigger,
279
287
  data,
280
288
  hideCaret
281
289
  } = this.props;
282
290
 
291
+ const iconElement = generateIcon(cx, icon, 'm-r-xs');
292
+
293
+ const rightIconElement = generateIcon(cx, rightIcon, 'm-l-xs');
294
+
283
295
  return (
284
296
  <div
285
297
  className={cx(
@@ -322,21 +334,14 @@ export default class DropDownButton extends React.Component<
322
334
  size ? `Button--${size}` : ''
323
335
  )}
324
336
  >
325
- {icon ? (
326
- typeof icon === 'string' ? (
327
- <i className={cx(icon, 'm-r-xs')} />
328
- ) : (
329
- icon
330
- )
331
- ) : null}
337
+ {iconElement}
332
338
  {typeof label === 'string' ? filter(label, data) : label}
333
- {
334
- !hideCaret
335
- ? <span className={cx('DropDown-caret')} >
339
+ {rightIconElement}
340
+ {!hideCaret ? (
341
+ <span className={cx('DropDown-caret')}>
336
342
  <Icon icon="caret" className="icon" />
337
343
  </span>
338
- : null
339
- }
344
+ ) : null}
340
345
  </button>
341
346
  </TooltipWrapper>
342
347
  {this.state.isOpened ? this.renderOuter() : null}
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import {FormItem, FormControlProps, FormBaseControl} from './Item';
3
3
  import cx from 'classnames';
4
4
  import Checkbox from '../../components/Checkbox';
5
+ import {withBadge, BadgeSchema} from '../../components/Badge';
5
6
 
6
7
  /**
7
8
  * Checkbox 勾选框。
@@ -27,6 +28,11 @@ export interface CheckboxControlSchema extends FormBaseControl {
27
28
  * 选项说明
28
29
  */
29
30
  option?: string;
31
+
32
+ /**
33
+ * 角标
34
+ */
35
+ badge?: BadgeSchema;
30
36
  }
31
37
 
32
38
  export interface CheckboxProps
@@ -78,4 +84,6 @@ export default class CheckboxControl extends React.Component<
78
84
  type: 'checkbox',
79
85
  sizeMutable: false
80
86
  })
87
+ // @ts-ignore
88
+ @withBadge
81
89
  export class CheckboxControlRenderer extends CheckboxControl {}
@@ -251,7 +251,6 @@ export interface ComboControlSchema extends FormBaseControl {
251
251
  /**
252
252
  * 最大值验证错误提示
253
253
  */
254
-
255
254
  maxLengthValidateFailed?: string;
256
255
  };
257
256
  }
@@ -1010,7 +1009,7 @@ export default class ComboControl extends React.Component<ComboProps> {
1010
1009
  {deleteIcon ? (
1011
1010
  <i className={deleteIcon} />
1012
1011
  ) : (
1013
- <Icon icon="close" className="icon" />
1012
+ <Icon icon="status-close" className="icon" />
1014
1013
  )}
1015
1014
  </div>
1016
1015
  );
@@ -1189,7 +1188,7 @@ export default class ComboControl extends React.Component<ComboProps> {
1189
1188
  {deleteIcon ? (
1190
1189
  <i className={deleteIcon} />
1191
1190
  ) : (
1192
- <Icon icon="close" className="icon" />
1191
+ <Icon icon="status-close" className="icon" />
1193
1192
  )}
1194
1193
  </a>
1195
1194
  );
@@ -1,7 +1,8 @@
1
1
  import React from 'react';
2
2
  import {FormItem, FormControlProps, FormBaseControl} from './Item';
3
3
  import {ClassNamesFn, themeable, ThemeProps} from '../../theme';
4
- import {Select, Spinner} from '../../components';
4
+ import Spinner from '../../components/Spinner';
5
+ import Select from '../../components/Select';
5
6
  import {autobind} from '../../utils/helper';
6
7
  import {Option} from './Options';
7
8
  import {localeable, LocaleProps} from '../../locale';
@@ -293,13 +294,8 @@ export class CityPicker extends React.Component<
293
294
 
294
295
  @autobind
295
296
  syncOut() {
296
- const {
297
- onChange,
298
- allowStreet,
299
- joinValues,
300
- extractValue,
301
- delimiter
302
- } = this.props;
297
+ const {onChange, allowStreet, joinValues, extractValue, delimiter} =
298
+ this.props;
303
299
 
304
300
  const {code, province, city, district, street} = this.state;
305
301