amis 1.3.5-beta.6 → 1.4.2-beta.1

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 (352) hide show
  1. package/README.md +1 -1
  2. package/lib/Schema.d.ts +17 -0
  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/Badge.d.ts +16 -3
  7. package/lib/components/Badge.js +53 -4
  8. package/lib/components/Badge.js.map +2 -2
  9. package/lib/components/Button.d.ts +24 -22
  10. package/lib/components/Button.js +13 -7
  11. package/lib/components/Button.js.map +2 -2
  12. package/lib/components/Checkbox.d.ts +1 -1
  13. package/lib/components/Checkbox.js +1 -1
  14. package/lib/components/Checkbox.js.map +2 -2
  15. package/lib/components/Collapse.js +1 -1
  16. package/lib/components/Collapse.js.map +2 -2
  17. package/lib/components/DatePicker.js +1 -1
  18. package/lib/components/DatePicker.js.map +2 -2
  19. package/lib/components/DateRangePicker.js +1 -1
  20. package/lib/components/DateRangePicker.js.map +2 -2
  21. package/lib/components/Drawer.js +1 -1
  22. package/lib/components/Drawer.js.map +2 -2
  23. package/lib/components/InputBox.js +1 -1
  24. package/lib/components/InputBox.js.map +2 -2
  25. package/lib/components/Link.d.ts +91 -0
  26. package/lib/components/Link.js +44 -0
  27. package/lib/components/Link.js.map +13 -0
  28. package/lib/components/Modal.js +1 -1
  29. package/lib/components/Modal.js.map +2 -2
  30. package/lib/components/MonthRangePicker.js +1 -1
  31. package/lib/components/MonthRangePicker.js.map +2 -2
  32. package/lib/components/RichText.d.ts +6 -1
  33. package/lib/components/RichText.js +207 -8
  34. package/lib/components/RichText.js.map +2 -2
  35. package/lib/components/Select.d.ts +7 -0
  36. package/lib/components/Select.js +3 -0
  37. package/lib/components/Select.js.map +2 -2
  38. package/lib/components/SparkLine.d.ts +85 -84
  39. package/lib/components/SparkLine.js +2 -2
  40. package/lib/components/SparkLine.js.map +2 -2
  41. package/lib/components/Steps.d.ts +3 -3
  42. package/lib/components/Steps.js.map +1 -1
  43. package/lib/components/Toast.js +2 -2
  44. package/lib/components/Toast.js.map +2 -2
  45. package/lib/components/Tree.js +5 -3
  46. package/lib/components/Tree.js.map +2 -2
  47. package/lib/components/WithRemoteConfig.d.ts +8 -0
  48. package/lib/components/WithRemoteConfig.js +28 -2
  49. package/lib/components/WithRemoteConfig.js.map +2 -2
  50. package/lib/components/calendar/DaysView.js +2 -2
  51. package/lib/components/calendar/DaysView.js.map +2 -2
  52. package/lib/components/condition-builder/Field.js +0 -1
  53. package/lib/components/condition-builder/Field.js.map +2 -2
  54. package/lib/components/condition-builder/Value.js +2 -1
  55. package/lib/components/condition-builder/Value.js.map +2 -2
  56. package/lib/components/condition-builder/types.d.ts +5 -0
  57. package/lib/components/condition-builder/types.js.map +1 -1
  58. package/lib/components/icons.js +14 -0
  59. package/lib/components/icons.js.map +2 -2
  60. package/lib/factory.d.ts +5 -1
  61. package/lib/factory.js +9 -4
  62. package/lib/factory.js.map +2 -2
  63. package/lib/helper.css.map +1 -1
  64. package/lib/icons/clock.js +10 -0
  65. package/lib/icons/loading-outline.js +7 -0
  66. package/lib/icons/status-close.js +11 -0
  67. package/lib/icons/status-fail.js +11 -0
  68. package/lib/icons/status-info.js +10 -0
  69. package/lib/icons/status-success.js +11 -0
  70. package/lib/icons/status-warning.js +10 -0
  71. package/lib/index.js +1 -1
  72. package/lib/locale/de-DE.js +3 -0
  73. package/lib/locale/de-DE.js.map +2 -2
  74. package/lib/locale/en-US.js +4 -1
  75. package/lib/locale/en-US.js.map +2 -2
  76. package/lib/locale/zh-CN.js +5 -2
  77. package/lib/locale/zh-CN.js.map +2 -2
  78. package/lib/renderers/Action.d.ts +16 -1
  79. package/lib/renderers/Action.js +5 -5
  80. package/lib/renderers/Action.js.map +2 -2
  81. package/lib/renderers/CRUD.d.ts +2 -2
  82. package/lib/renderers/CRUD.js +32 -26
  83. package/lib/renderers/CRUD.js.map +2 -2
  84. package/lib/renderers/Collapse.d.ts +1 -1
  85. package/lib/renderers/Collapse.js +7 -3
  86. package/lib/renderers/Collapse.js.map +2 -2
  87. package/lib/renderers/Dialog.d.ts +0 -252
  88. package/lib/renderers/Dialog.js +1 -4
  89. package/lib/renderers/Dialog.js.map +2 -2
  90. package/lib/renderers/Drawer.js +0 -3
  91. package/lib/renderers/Drawer.js.map +2 -2
  92. package/lib/renderers/DropDownButton.d.ts +13 -1
  93. package/lib/renderers/DropDownButton.js +9 -5
  94. package/lib/renderers/DropDownButton.js.map +2 -2
  95. package/lib/renderers/Form/ButtonGroupSelect.js +3 -0
  96. package/lib/renderers/Form/ButtonGroupSelect.js.map +2 -2
  97. package/lib/renderers/Form/Checkbox.d.ts +5 -0
  98. package/lib/renderers/Form/Checkbox.js +4 -0
  99. package/lib/renderers/Form/Checkbox.js.map +2 -2
  100. package/lib/renderers/Form/Combo.js +2 -2
  101. package/lib/renderers/Form/Combo.js.map +2 -2
  102. package/lib/renderers/Form/DiffEditor.d.ts +0 -2
  103. package/lib/renderers/Form/Editor.d.ts +0 -2
  104. package/lib/renderers/Form/Editor.js +1 -1
  105. package/lib/renderers/Form/Editor.js.map +2 -2
  106. package/lib/renderers/Form/InputExcel.d.ts +5 -0
  107. package/lib/renderers/Form/InputExcel.js +24 -3
  108. package/lib/renderers/Form/InputExcel.js.map +2 -2
  109. package/lib/renderers/Form/InputFile.js +2 -2
  110. package/lib/renderers/Form/InputFile.js.map +2 -2
  111. package/lib/renderers/Form/InputImage.d.ts +8 -0
  112. package/lib/renderers/Form/InputImage.js +7 -4
  113. package/lib/renderers/Form/InputImage.js.map +2 -2
  114. package/lib/renderers/Form/InputTable.d.ts +23 -5
  115. package/lib/renderers/Form/InputTable.js +32 -3
  116. package/lib/renderers/Form/InputTable.js.map +2 -2
  117. package/lib/renderers/Form/Options.js +6 -3
  118. package/lib/renderers/Form/Options.js.map +2 -2
  119. package/lib/renderers/Form/Picker.js +2 -2
  120. package/lib/renderers/Form/Picker.js.map +2 -2
  121. package/lib/renderers/Form/wrapControl.js +2 -2
  122. package/lib/renderers/Form/wrapControl.js.map +2 -2
  123. package/lib/renderers/IFrame.js +2 -2
  124. package/lib/renderers/IFrame.js.map +2 -2
  125. package/lib/renderers/Image.d.ts +1 -0
  126. package/lib/renderers/Image.js +15 -1
  127. package/lib/renderers/Image.js.map +2 -2
  128. package/lib/renderers/Json.js +5 -1
  129. package/lib/renderers/Json.js.map +2 -2
  130. package/lib/renderers/Link.d.ts +16 -3
  131. package/lib/renderers/Link.js +16 -13
  132. package/lib/renderers/Link.js.map +2 -2
  133. package/lib/renderers/Log.d.ts +2 -2
  134. package/lib/renderers/Log.js +7 -1
  135. package/lib/renderers/Log.js.map +2 -2
  136. package/lib/renderers/Nav.d.ts +81 -25
  137. package/lib/renderers/Nav.js +272 -29
  138. package/lib/renderers/Nav.js.map +2 -2
  139. package/lib/renderers/Page.js +4 -1
  140. package/lib/renderers/Page.js.map +2 -2
  141. package/lib/renderers/Service.d.ts +10 -1
  142. package/lib/renderers/Service.js +85 -3
  143. package/lib/renderers/Service.js.map +2 -2
  144. package/lib/renderers/SparkLine.d.ts +4 -0
  145. package/lib/renderers/SparkLine.js.map +2 -2
  146. package/lib/renderers/Steps.d.ts +4 -4
  147. package/lib/renderers/Steps.js +5 -2
  148. package/lib/renderers/Steps.js.map +2 -2
  149. package/lib/renderers/Table/ColumnToggler.d.ts +113 -0
  150. package/lib/renderers/Table/ColumnToggler.js +216 -0
  151. package/lib/renderers/Table/ColumnToggler.js.map +13 -0
  152. package/lib/renderers/Table/ItemActionsWrapper.d.ts +11 -0
  153. package/lib/renderers/Table/ItemActionsWrapper.js +31 -0
  154. package/lib/renderers/Table/ItemActionsWrapper.js.map +13 -0
  155. package/lib/renderers/Table/TableBody.d.ts +5 -1
  156. package/lib/renderers/Table/TableBody.js +5 -1
  157. package/lib/renderers/Table/TableBody.js.map +2 -2
  158. package/lib/renderers/Table/TableCell.js +3 -1
  159. package/lib/renderers/Table/TableCell.js.map +2 -2
  160. package/lib/renderers/Table/TableContent.d.ts +1 -1
  161. package/lib/renderers/Table/TableContent.js +4 -0
  162. package/lib/renderers/Table/TableContent.js.map +2 -2
  163. package/lib/renderers/Table/index.d.ts +22 -4
  164. package/lib/renderers/Table/index.js +196 -81
  165. package/lib/renderers/Table/index.js.map +2 -2
  166. package/lib/store/app.d.ts +0 -1
  167. package/lib/store/combo.d.ts +0 -2
  168. package/lib/store/crud.d.ts +3 -3
  169. package/lib/store/crud.js +41 -36
  170. package/lib/store/crud.js.map +2 -2
  171. package/lib/store/form.d.ts +0 -1
  172. package/lib/store/modal.d.ts +1 -1
  173. package/lib/store/modal.js +4 -0
  174. package/lib/store/modal.js.map +2 -2
  175. package/lib/store/root.d.ts +0 -1
  176. package/lib/store/service.d.ts +0 -1
  177. package/lib/store/service.js +0 -13
  178. package/lib/store/service.js.map +2 -2
  179. package/lib/store/table.d.ts +258 -3
  180. package/lib/store/table.js +83 -7
  181. package/lib/store/table.js.map +2 -2
  182. package/lib/themes/ang-ie11.css +941 -98
  183. package/lib/themes/ang.css +941 -98
  184. package/lib/themes/ang.css.map +1 -1
  185. package/lib/themes/antd-ie11.css +941 -98
  186. package/lib/themes/antd.css +941 -98
  187. package/lib/themes/antd.css.map +1 -1
  188. package/lib/themes/cxd-ie11.css +1580 -411
  189. package/lib/themes/cxd.css +1580 -411
  190. package/lib/themes/cxd.css.map +1 -1
  191. package/lib/themes/dark-ie11.css +941 -98
  192. package/lib/themes/dark.css +941 -98
  193. package/lib/themes/dark.css.map +1 -1
  194. package/lib/themes/default.css +1580 -411
  195. package/lib/themes/default.css.map +1 -1
  196. package/lib/utils/api.js +16 -4
  197. package/lib/utils/api.js.map +2 -2
  198. package/lib/utils/attachmentAdpator.d.ts +7 -0
  199. package/lib/utils/attachmentAdpator.js +82 -0
  200. package/lib/utils/attachmentAdpator.js.map +13 -0
  201. package/lib/utils/handleAction.d.ts +7 -0
  202. package/lib/utils/handleAction.js +30 -0
  203. package/lib/utils/handleAction.js.map +13 -0
  204. package/lib/utils/helper.d.ts +1 -1
  205. package/lib/utils/helper.js +3 -3
  206. package/lib/utils/helper.js.map +2 -2
  207. package/lib/utils/tpl-builtin.d.ts +1 -1
  208. package/lib/utils/tpl-builtin.js +25 -15
  209. package/lib/utils/tpl-builtin.js.map +2 -2
  210. package/lib/utils/validations.js +62 -5
  211. package/lib/utils/validations.js.map +2 -2
  212. package/package.json +1 -2
  213. package/schema.json +633 -273
  214. package/scss/_mixins.scss +29 -0
  215. package/scss/_properties.scss +64 -13
  216. package/scss/_utilities.scss +4 -0
  217. package/scss/components/_badge.scss +67 -2
  218. package/scss/components/_button.scss +34 -3
  219. package/scss/components/_collapse.scss +26 -8
  220. package/scss/components/_column-toggler.scss +234 -0
  221. package/scss/components/_dropdown.scss +2 -1
  222. package/scss/components/_image-gallery.scss +1 -1
  223. package/scss/components/_images.scss +2 -1
  224. package/scss/components/_link.scss +6 -0
  225. package/scss/components/_markdown.scss +266 -0
  226. package/scss/components/_nav.scss +236 -154
  227. package/scss/components/_page.scss +5 -4
  228. package/scss/components/_progress.scss +2 -0
  229. package/scss/components/_spinner.scss +6 -2
  230. package/scss/components/_steps.scss +1 -1
  231. package/scss/components/_table.scss +25 -1
  232. package/scss/components/form/_color.scss +1 -0
  233. package/scss/components/form/_date-range.scss +2 -0
  234. package/scss/components/form/_date.scss +2 -0
  235. package/scss/components/form/_fieldset.scss +1 -2
  236. package/scss/components/form/_file.scss +5 -4
  237. package/scss/components/form/_group.scss +4 -0
  238. package/scss/components/form/_image.scss +7 -2
  239. package/scss/components/form/_list.scss +1 -0
  240. package/scss/components/form/_location.scss +1 -1
  241. package/scss/components/form/_text.scss +13 -0
  242. package/scss/components/form/_textarea.scss +10 -0
  243. package/scss/components/form/_transfer.scss +2 -0
  244. package/scss/themes/_common.scss +3 -0
  245. package/scss/themes/_cxd-colors.scss +56 -0
  246. package/scss/themes/_cxd-variables.scss +217 -92
  247. package/scss/themes/cxd.scss +366 -0
  248. package/sdk/ang-ie11.css +1192 -176
  249. package/sdk/ang.css +1175 -118
  250. package/sdk/antd-ie11.css +1177 -163
  251. package/sdk/antd.css +1175 -118
  252. package/sdk/charts.js +13 -13
  253. package/sdk/color-picker.js +67 -67
  254. package/sdk/cropperjs.js +2 -2
  255. package/sdk/cxd-ie11.css +2538 -1222
  256. package/sdk/cxd.css +1825 -401
  257. package/sdk/dark-ie11.css +1192 -176
  258. package/sdk/dark.css +1175 -118
  259. package/sdk/exceljs.js +1 -1
  260. package/sdk/helper.css.map +1 -1
  261. package/sdk/ie11-patch.css +1 -0
  262. package/sdk/locale/de-DE.js +3 -0
  263. package/sdk/markdown.js +69 -69
  264. package/sdk/papaparse.js +1 -1
  265. package/sdk/renderers/Form/CityDB.js +1 -1
  266. package/sdk/rest.js +22 -24
  267. package/sdk/rich-text.js +62 -64
  268. package/sdk/sdk-ie11.css +2538 -1222
  269. package/sdk/sdk.css +1825 -401
  270. package/sdk/sdk.js +1139 -1113
  271. package/sdk/thirds/hls.js/hls.js +1 -1
  272. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  273. package/sdk/tinymce.js +57 -57
  274. package/src/Schema.ts +18 -0
  275. package/src/components/Alert.tsx +3 -1
  276. package/src/components/Badge.tsx +124 -21
  277. package/src/components/Button.tsx +23 -7
  278. package/src/components/Checkbox.tsx +5 -2
  279. package/src/components/Collapse.tsx +14 -9
  280. package/src/components/DatePicker.tsx +1 -1
  281. package/src/components/DateRangePicker.tsx +23 -11
  282. package/src/components/Drawer.tsx +3 -2
  283. package/src/components/InputBox.tsx +1 -1
  284. package/src/components/Link.tsx +94 -0
  285. package/src/components/Modal.tsx +3 -2
  286. package/src/components/MonthRangePicker.tsx +10 -2
  287. package/src/components/RichText.tsx +244 -3
  288. package/src/components/Select.tsx +4 -0
  289. package/src/components/SparkLine.tsx +4 -1
  290. package/src/components/Steps.tsx +3 -3
  291. package/src/components/Toast.tsx +5 -5
  292. package/src/components/Tree.tsx +6 -8
  293. package/src/components/WithRemoteConfig.tsx +37 -2
  294. package/src/components/calendar/DaysView.tsx +2 -2
  295. package/src/components/condition-builder/Field.tsx +1 -2
  296. package/src/components/condition-builder/Value.tsx +3 -0
  297. package/src/components/condition-builder/types.ts +6 -0
  298. package/src/components/icons.tsx +15 -0
  299. package/src/factory.tsx +13 -3
  300. package/src/icons/clock.svg +1 -0
  301. package/src/icons/loading-outline.svg +4 -0
  302. package/src/icons/status-close.svg +10 -0
  303. package/src/icons/status-fail.svg +10 -0
  304. package/src/icons/status-info.svg +8 -0
  305. package/src/icons/status-success.svg +10 -0
  306. package/src/icons/status-warning.svg +8 -0
  307. package/src/locale/de-DE.ts +3 -0
  308. package/src/locale/en-US.ts +4 -1
  309. package/src/locale/zh-CN.ts +5 -2
  310. package/src/renderers/Action.tsx +71 -13
  311. package/src/renderers/CRUD.tsx +44 -59
  312. package/src/renderers/Collapse.tsx +6 -2
  313. package/src/renderers/Dialog.tsx +1 -5
  314. package/src/renderers/Drawer.tsx +0 -4
  315. package/src/renderers/DropDownButton.tsx +34 -12
  316. package/src/renderers/Form/ButtonGroupSelect.tsx +3 -0
  317. package/src/renderers/Form/Checkbox.tsx +8 -0
  318. package/src/renderers/Form/Combo.tsx +2 -3
  319. package/src/renderers/Form/Editor.tsx +19 -20
  320. package/src/renderers/Form/InputExcel.tsx +28 -3
  321. package/src/renderers/Form/InputFile.tsx +2 -1
  322. package/src/renderers/Form/InputImage.tsx +28 -10
  323. package/src/renderers/Form/InputTable.tsx +88 -9
  324. package/src/renderers/Form/Options.tsx +16 -5
  325. package/src/renderers/Form/Picker.tsx +3 -2
  326. package/src/renderers/Form/wrapControl.tsx +2 -2
  327. package/src/renderers/IFrame.tsx +2 -1
  328. package/src/renderers/Image.tsx +10 -0
  329. package/src/renderers/Json.tsx +10 -1
  330. package/src/renderers/Link.tsx +36 -11
  331. package/src/renderers/Log.tsx +16 -3
  332. package/src/renderers/Nav.tsx +340 -56
  333. package/src/renderers/Page.tsx +3 -1
  334. package/src/renderers/Service.tsx +101 -3
  335. package/src/renderers/SparkLine.tsx +5 -0
  336. package/src/renderers/Steps.tsx +12 -9
  337. package/src/renderers/Table/ColumnToggler.tsx +544 -0
  338. package/src/renderers/Table/ItemActionsWrapper.tsx +44 -0
  339. package/src/renderers/Table/TableBody.tsx +3 -2
  340. package/src/renderers/Table/TableCell.tsx +16 -1
  341. package/src/renderers/Table/TableContent.tsx +3 -1
  342. package/src/renderers/Table/index.tsx +240 -60
  343. package/src/store/crud.ts +34 -38
  344. package/src/store/modal.ts +4 -0
  345. package/src/store/service.ts +0 -19
  346. package/src/store/table.ts +103 -4
  347. package/src/utils/api.ts +24 -4
  348. package/src/utils/attachmentAdpator.ts +90 -0
  349. package/src/utils/handleAction.ts +41 -0
  350. package/src/utils/helper.ts +4 -3
  351. package/src/utils/tpl-builtin.ts +48 -17
  352. package/src/utils/validations.ts +80 -12
@@ -7,7 +7,7 @@ var react_dom_1 = require("react-dom");
7
7
  var factory_1 = require("../../factory");
8
8
  var forEach_1 = (0, tslib_1.__importDefault)(require("lodash/forEach"));
9
9
  var tpl_1 = require("../../utils/tpl");
10
- var DropDownButton_1 = (0, tslib_1.__importDefault)(require("../DropDownButton"));
10
+ require("./ColumnToggler");
11
11
  var Checkbox_1 = (0, tslib_1.__importDefault)(require("../../components/Checkbox"));
12
12
  var Button_1 = (0, tslib_1.__importDefault)(require("../../components/Button"));
13
13
  var table_1 = require("../../store/table");
@@ -26,6 +26,8 @@ var TableContent_1 = require("./TableContent");
26
26
  var image_1 = require("../../utils/image");
27
27
  var TableBody_1 = require("./TableBody");
28
28
  var mobx_state_tree_1 = require("mobx-state-tree");
29
+ var ItemActionsWrapper_1 = (0, tslib_1.__importDefault)(require("./ItemActionsWrapper"));
30
+ var ColumnToggler_1 = (0, tslib_1.__importDefault)(require("./ColumnToggler"));
29
31
  /**
30
32
  * 将 url 转成绝对地址
31
33
  */
@@ -75,6 +77,8 @@ var Table = /** @class */ (function (_super) {
75
77
  _this.handleMouseMove = _this.handleMouseMove.bind(_this);
76
78
  _this.handleMouseLeave = _this.handleMouseLeave.bind(_this);
77
79
  _this.subFormRef = _this.subFormRef.bind(_this);
80
+ _this.handleColumnToggle = _this.handleColumnToggle.bind(_this);
81
+ _this.renderAutoFilterForm = _this.renderAutoFilterForm.bind(_this);
78
82
  var store = props.store, columns = props.columns, selectable = props.selectable, columnsTogglable = props.columnsTogglable, draggable = props.draggable, orderBy = props.orderBy, orderDir = props.orderDir, multiple = props.multiple, footable = props.footable, primaryField = props.primaryField, itemCheckableOn = props.itemCheckableOn, itemDraggableOn = props.itemDraggableOn, hideCheckToggler = props.hideCheckToggler, combineFromIndex = props.combineFromIndex, expandConfig = props.expandConfig, formItem = props.formItem, keepItemSelectionOnPageChange = props.keepItemSelectionOnPageChange, maxKeepItemSelectionLength = props.maxKeepItemSelectionLength;
79
83
  var combineNum = props.combineNum;
80
84
  if (typeof combineNum === 'string') {
@@ -199,8 +203,12 @@ var Table = /** @class */ (function (_super) {
199
203
  Table.syncRows(store, props, prevProps) && this.syncSelected();
200
204
  }
201
205
  else if ((0, helper_1.isArrayChildrenModified)(prevProps.selected, props.selected)) {
206
+ var prevSelectedRows = store.selectedRows
207
+ .map(function (item) { return item.id; })
208
+ .join(',');
202
209
  store.updateSelected(props.selected || [], props.valueField);
203
- this.syncSelected();
210
+ var selectedRows = store.selectedRows.map(function (item) { return item.id; }).join(',');
211
+ prevSelectedRows !== selectedRows && this.syncSelected();
204
212
  }
205
213
  this.updateTableInfoLazy();
206
214
  };
@@ -224,8 +232,14 @@ var Table = /** @class */ (function (_super) {
224
232
  // todo
225
233
  onAction(e, action, ctx);
226
234
  };
227
- Table.prototype.handleCheck = function (item) {
228
- item.toggle();
235
+ Table.prototype.handleCheck = function (item, value, shift) {
236
+ var store = this.props.store;
237
+ if (shift) {
238
+ store.toggleShift(item);
239
+ }
240
+ else {
241
+ item.toggle();
242
+ }
229
243
  this.syncSelected();
230
244
  };
231
245
  Table.prototype.handleCheckAll = function () {
@@ -509,7 +523,7 @@ var Table = /** @class */ (function (_super) {
509
523
  return (0, react_dom_1.findDOMNode)(this);
510
524
  };
511
525
  Table.prototype.handleMouseMove = function (e) {
512
- var tr = e.target.closest('tr[data-index]');
526
+ var tr = e.target.closest('tr[data-id]');
513
527
  if (!tr) {
514
528
  return;
515
529
  }
@@ -520,17 +534,17 @@ var Table = /** @class */ (function (_super) {
520
534
  (!itemActions || !itemActions.filter(function (item) { return !item.hiddenOnHover; }).length)) {
521
535
  return;
522
536
  }
523
- var index = parseInt(tr.getAttribute('data-index'), 10);
524
- if (store.hoverIndex === index) {
537
+ var id = tr.getAttribute('data-id');
538
+ var row = store.hoverRow;
539
+ if ((row === null || row === void 0 ? void 0 : row.id) === id) {
525
540
  return;
526
541
  }
527
- store.rows.forEach(function (item, key) { return item.setIsHover(index === key); });
542
+ (0, helper_1.eachTree)(store.rows, function (item) { return item.setIsHover(item.id === id); });
528
543
  };
529
544
  Table.prototype.handleMouseLeave = function () {
530
545
  var store = this.props.store;
531
- if (~store.hoverIndex) {
532
- store.rows[store.hoverIndex].setIsHover(false);
533
- }
546
+ var row = store.hoverRow;
547
+ row === null || row === void 0 ? void 0 : row.setIsHover(false);
534
548
  };
535
549
  Table.prototype.handleDragStart = function (e) {
536
550
  var store = this.props.store;
@@ -668,6 +682,87 @@ var Table = /** @class */ (function (_super) {
668
682
  document.removeEventListener('mousemove', this.handleColResizeMouseMove);
669
683
  document.removeEventListener('mouseup', this.handleColResizeMouseUp);
670
684
  };
685
+ Table.prototype.handleColumnToggle = function (columns) {
686
+ var store = this.props.store;
687
+ store.update({ columns: columns });
688
+ };
689
+ Table.prototype.renderAutoFilterForm = function () {
690
+ var _a = this.props, render = _a.render, store = _a.store, onSearchableFromReset = _a.onSearchableFromReset, onSearchableFromSubmit = _a.onSearchableFromSubmit, onSearchableFromInit = _a.onSearchableFromInit, cx = _a.classnames, __ = _a.translate;
691
+ var searchableColumns = store.searchableColumns;
692
+ var activedSearchableColumns = store.activedSearchableColumns;
693
+ if (!searchableColumns.length) {
694
+ return null;
695
+ }
696
+ var groupedSearchableColumns = [
697
+ { body: [], md: 4 },
698
+ { body: [], md: 4 },
699
+ { body: [], md: 4 }
700
+ ];
701
+ activedSearchableColumns.forEach(function (column, index) {
702
+ var _a, _b, _c, _d;
703
+ groupedSearchableColumns[index % 3].body.push((0, tslib_1.__assign)((0, tslib_1.__assign)({}, column.searchable), { name: (_b = (_a = column.searchable) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : column.name, label: (_d = (_c = column.searchable) === null || _c === void 0 ? void 0 : _c.label) !== null && _d !== void 0 ? _d : column.label, mode: 'horizontal' }));
704
+ });
705
+ return render('searchable-form', {
706
+ type: 'form',
707
+ api: null,
708
+ title: '',
709
+ mode: 'normal',
710
+ submitText: __('search'),
711
+ body: [
712
+ {
713
+ type: 'grid',
714
+ columns: groupedSearchableColumns
715
+ }
716
+ ],
717
+ actions: [
718
+ {
719
+ type: 'dropdown-button',
720
+ label: __('Table.searchFields'),
721
+ className: cx('Table-searchableForm-dropdown', 'mr-2'),
722
+ level: 'link',
723
+ trigger: 'click',
724
+ size: 'sm',
725
+ align: 'right',
726
+ buttons: searchableColumns.map(function (column) {
727
+ var _a, _b, _c, _d;
728
+ return {
729
+ type: 'checkbox',
730
+ className: cx('Table-searchableForm-checkbox'),
731
+ name: "__search_" + ((_b = (_a = column.searchable) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : column.name),
732
+ option: (_d = (_c = column.searchable) === null || _c === void 0 ? void 0 : _c.label) !== null && _d !== void 0 ? _d : column.label,
733
+ value: column.enableSearch,
734
+ badge: {
735
+ offset: [-10, 5],
736
+ visibleOn: "" + (column.toggable && !column.toggled && column.enableSearch)
737
+ },
738
+ onChange: function (value) {
739
+ column.setEnableSearch(value);
740
+ }
741
+ };
742
+ })
743
+ },
744
+ {
745
+ type: 'submit',
746
+ label: __('search'),
747
+ level: 'primary',
748
+ className: 'w-18'
749
+ },
750
+ {
751
+ type: 'reset',
752
+ label: __('reset'),
753
+ className: 'w-18'
754
+ }
755
+ ]
756
+ }, {
757
+ key: 'searchable-form',
758
+ panelClassName: cx('Table-searchableForm'),
759
+ actionsClassName: cx('Table-searchableForm-footer'),
760
+ onReset: onSearchableFromReset,
761
+ onSubmit: onSearchableFromSubmit,
762
+ onInit: onSearchableFromInit,
763
+ formStore: undefined
764
+ });
765
+ };
671
766
  Table.prototype.renderHeading = function () {
672
767
  var _a = this.props, title = _a.title, store = _a.store, hideQuickSaveBtn = _a.hideQuickSaveBtn, data = _a.data, cx = _a.classnames, saveImmediately = _a.saveImmediately, headingClassName = _a.headingClassName, quickSaveApi = _a.quickSaveApi, __ = _a.translate;
673
768
  if (title ||
@@ -699,7 +794,7 @@ var Table = /** @class */ (function (_super) {
699
794
  return null;
700
795
  };
701
796
  Table.prototype.renderHeadCell = function (column, props) {
702
- var _a = this.props, store = _a.store, query = _a.query, onQuery = _a.onQuery, multiple = _a.multiple, env = _a.env, render = _a.render, ns = _a.classPrefix, resizable = _a.resizable, cx = _a.classnames;
797
+ var _a = this.props, store = _a.store, query = _a.query, onQuery = _a.onQuery, multiple = _a.multiple, env = _a.env, render = _a.render, ns = _a.classPrefix, resizable = _a.resizable, cx = _a.classnames, autoGenerateFilter = _a.autoGenerateFilter;
703
798
  if (column.type === '__checkme') {
704
799
  return (react_1.default.createElement("th", (0, tslib_1.__assign)({}, props, { className: cx(column.pristine.className) }), store.rows.length && multiple ? (react_1.default.createElement(Checkbox_1.default, { classPrefix: ns, partial: !store.allChecked, checked: store.someChecked, disabled: store.disabledHeadCheckbox, onChange: this.handleCheckAll })) : ('\u00A0')));
705
800
  }
@@ -718,7 +813,7 @@ var Table = /** @class */ (function (_super) {
718
813
  react_1.default.createElement(icons_1.Icon, { icon: "right-arrow-bold", className: "icon" })))));
719
814
  }
720
815
  var affix = null;
721
- if (column.searchable && column.name) {
816
+ if (column.searchable && column.name && !autoGenerateFilter) {
722
817
  affix = (react_1.default.createElement(HeadCellSearchDropdown_1.HeadCellSearchDropDown, (0, tslib_1.__assign)({}, this.props, { onQuery: onQuery, name: column.name, searchable: column.searchable, sortable: column.sortable, type: column.type, data: query, orderBy: store.orderBy, orderDir: store.orderDir, popOverContainer: this.getPopOverContainer })));
723
818
  }
724
819
  else if (column.sortable && column.name) {
@@ -787,7 +882,7 @@ var Table = /** @class */ (function (_super) {
787
882
  };
788
883
  Table.prototype.renderCell = function (region, column, item, props, ignoreDrag) {
789
884
  if (ignoreDrag === void 0) { ignoreDrag = false; }
790
- var _a = this.props, render = _a.render, store = _a.store, multiple = _a.multiple, ns = _a.classPrefix, cx = _a.classnames, checkOnItemClick = _a.checkOnItemClick, popOverContainer = _a.popOverContainer, canAccessSuperData = _a.canAccessSuperData;
885
+ var _a = this.props, render = _a.render, store = _a.store, multiple = _a.multiple, ns = _a.classPrefix, cx = _a.classnames, checkOnItemClick = _a.checkOnItemClick, popOverContainer = _a.popOverContainer, canAccessSuperData = _a.canAccessSuperData, itemBadge = _a.itemBadge;
791
886
  if (column.name && item.rowSpans[column.name] === 0) {
792
887
  return null;
793
888
  }
@@ -820,7 +915,9 @@ var Table = /** @class */ (function (_super) {
820
915
  }
821
916
  var subProps = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, props), { btnDisabled: store.dragging, data: item.locals, value: column.name
822
917
  ? (0, tpl_builtin_1.resolveVariable)(column.name, canAccessSuperData ? item.locals : item.data)
823
- : column.value, popOverContainer: popOverContainer || this.getPopOverContainer, rowSpan: item.rowSpans[column.name], quickEditFormRef: this.subFormRef, prefix: prefix, onImageEnlarge: this.handleImageEnlarge, canAccessSuperData: canAccessSuperData });
918
+ : column.value, popOverContainer: popOverContainer || this.getPopOverContainer, rowSpan: item.rowSpans[column.name], quickEditFormRef: this.subFormRef, prefix: prefix, onImageEnlarge: this.handleImageEnlarge, canAccessSuperData: canAccessSuperData, row: item, itemBadge: itemBadge, showBadge: !props.isHead &&
919
+ itemBadge &&
920
+ store.firstToggledColumnIndex === props.colIndex });
824
921
  delete subProps.label;
825
922
  return render(region, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, column.pristine), { column: column.pristine, type: 'cell' }), subProps);
826
923
  };
@@ -901,14 +998,15 @@ var Table = /** @class */ (function (_super) {
901
998
  return void 0;
902
999
  };
903
1000
  Table.prototype.renderColumnsToggler = function (config) {
904
- var _a = this.props, className = _a.className, store = _a.store, ns = _a.classPrefix, cx = _a.classnames, rest = (0, tslib_1.__rest)(_a, ["className", "store", "classPrefix", "classnames"]);
1001
+ var _a;
1002
+ var _b = this.props, className = _b.className, store = _b.store, ns = _b.classPrefix, cx = _b.classnames, rest = (0, tslib_1.__rest)(_b, ["className", "store", "classPrefix", "classnames"]);
905
1003
  var __ = rest.translate;
906
1004
  var env = rest.env;
907
1005
  var render = this.props.render;
908
1006
  if (!store.columnsTogglable) {
909
1007
  return null;
910
1008
  }
911
- return (react_1.default.createElement(DropDownButton_1.default, (0, tslib_1.__assign)({}, rest, { tooltip: __('Table.columnsVisibility'), tooltipContainer: env && env.getModalContainer ? env.getModalContainer : undefined, align: config ? config.align : 'left', isActived: store.hasColumnHidden(), classnames: cx, classPrefix: ns, key: "columns-toggable", size: "sm", label: react_1.default.createElement(icons_1.Icon, { icon: "columns", className: "icon m-r-none" }) }), store.toggableColumns.map(function (column) { return (react_1.default.createElement("li", { className: cx('DropDown-menuItem'), key: column.index, onClick: column.toggleToggle },
1009
+ return (react_1.default.createElement(ColumnToggler_1.default, (0, tslib_1.__assign)({}, rest, ((0, helper_1.isObject)(config) ? config : {}), { tooltip: (config === null || config === void 0 ? void 0 : config.tooltip) || __('Table.columnsVisibility'), tooltipContainer: env && env.getModalContainer ? env.getModalContainer : undefined, align: (_a = config === null || config === void 0 ? void 0 : config.align) !== null && _a !== void 0 ? _a : 'left', isActived: store.hasColumnHidden(), classnames: cx, classPrefix: ns, key: "columns-toggable", size: (config === null || config === void 0 ? void 0 : config.size) || 'sm', label: (config === null || config === void 0 ? void 0 : config.label) || react_1.default.createElement(icons_1.Icon, { icon: "columns", className: "icon m-r-none" }), draggable: config === null || config === void 0 ? void 0 : config.draggable, columns: store.columnsData, onColumnToggle: this.handleColumnToggle }), store.toggableColumns.map(function (column) { return (react_1.default.createElement("li", { className: cx('ColumnToggler-menuItem'), key: column.index, onClick: column.toggleToggle },
912
1010
  react_1.default.createElement(Checkbox_1.default, { size: "sm", classPrefix: ns, checked: column.toggled }, column.label ? render('tpl', column.label) : null))); })));
913
1011
  };
914
1012
  Table.prototype.renderDragToggler = function () {
@@ -931,7 +1029,7 @@ var Table = /** @class */ (function (_super) {
931
1029
  }
932
1030
  return (react_1.default.createElement(Button_1.default, { classPrefix: ns, onClick: function () {
933
1031
  Promise.resolve().then(function () { return new Promise(function(resolve){require(['exceljs'], function(ret) {resolve(tslib_1.__importStar(ret));})}); }).then(function (ExcelJS) { return (0, tslib_1.__awaiter)(_this, void 0, void 0, function () {
934
- var rows, tmpStore, filename, res, workbook, worksheet, firstRowLabels, firstRow, rowIndex, _i, rows_1, row, sheetRow, columIndex, cols, _a, cols_1, column, name, value, type, imageData, imageDimensions, imageWidth, imageHeight, imageMaxSize, imageMatch, imageExt, imageId, linkURL, e_1, linkURL, map, viewValue, buffer, blob;
1032
+ var rows, tmpStore, filename, res, workbook, worksheet, filteredColumns, firstRowLabels, firstRow, remoteMappingCache, rowIndex, _i, rows_1, row, sheetRow, columIndex, _a, filteredColumns_1, column, name, value, type, imageData, imageDimensions, imageWidth, imageHeight, imageMaxSize, imageMatch, imageExt, imageId, linkURL, e_1, linkURL, map, source, sourceValue, mapKey, res, viewValue, buffer, blob;
935
1033
  var _b, _c;
936
1034
  return (0, tslib_1.__generator)(this, function (_d) {
937
1035
  switch (_d.label) {
@@ -973,7 +1071,16 @@ var Table = /** @class */ (function (_super) {
973
1071
  properties: { defaultColWidth: 15 }
974
1072
  });
975
1073
  worksheet.views = [{ state: 'frozen', xSplit: 0, ySplit: 1 }];
976
- firstRowLabels = columns.map(function (column) {
1074
+ filteredColumns = toolbar.columns
1075
+ ? columns.filter(function (column) {
1076
+ var filterColumnsNames = toolbar.columns;
1077
+ if (filterColumnsNames.indexOf(column.name) !== -1) {
1078
+ return true;
1079
+ }
1080
+ return false;
1081
+ })
1082
+ : columns;
1083
+ firstRowLabels = filteredColumns.map(function (column) {
977
1084
  return column.label;
978
1085
  });
979
1086
  firstRow = worksheet.getRow(1);
@@ -988,32 +1095,32 @@ var Table = /** @class */ (function (_super) {
988
1095
  column: firstRowLabels.length
989
1096
  }
990
1097
  };
1098
+ remoteMappingCache = {};
991
1099
  rowIndex = 1;
992
1100
  _i = 0, rows_1 = rows;
993
1101
  _d.label = 4;
994
1102
  case 4:
995
- if (!(_i < rows_1.length)) return [3 /*break*/, 14];
1103
+ if (!(_i < rows_1.length)) return [3 /*break*/, 19];
996
1104
  row = rows_1[_i];
997
1105
  rowIndex += 1;
998
1106
  sheetRow = worksheet.getRow(rowIndex);
999
1107
  columIndex = 0;
1000
- cols = columns;
1001
- _a = 0, cols_1 = cols;
1108
+ _a = 0, filteredColumns_1 = filteredColumns;
1002
1109
  _d.label = 5;
1003
1110
  case 5:
1004
- if (!(_a < cols_1.length)) return [3 /*break*/, 13];
1005
- column = cols_1[_a];
1111
+ if (!(_a < filteredColumns_1.length)) return [3 /*break*/, 18];
1112
+ column = filteredColumns_1[_a];
1006
1113
  columIndex += 1;
1007
1114
  name = column.name;
1008
1115
  value = (0, helper_1.getVariable)(row.data, name);
1009
1116
  if (typeof value === 'undefined' &&
1010
1117
  !column.tpl) {
1011
- return [3 /*break*/, 12];
1118
+ return [3 /*break*/, 17];
1012
1119
  }
1013
1120
  // 处理合并单元格
1014
1121
  if (name in row.rowSpans) {
1015
1122
  if (row.rowSpans[name] === 0) {
1016
- return [3 /*break*/, 12];
1123
+ return [3 /*break*/, 17];
1017
1124
  }
1018
1125
  else {
1019
1126
  // start row, start column, end row, end column
@@ -1056,7 +1163,7 @@ var Table = /** @class */ (function (_super) {
1056
1163
  imageExt != 'jpeg' &&
1057
1164
  imageExt != 'gif') {
1058
1165
  sheetRow.getCell(columIndex).value = value;
1059
- return [3 /*break*/, 12];
1166
+ return [3 /*break*/, 17];
1060
1167
  }
1061
1168
  imageId = workbook.addImage({
1062
1169
  base64: imageData,
@@ -1079,48 +1186,68 @@ var Table = /** @class */ (function (_super) {
1079
1186
  e_1 = _d.sent();
1080
1187
  console.warn(e_1.stack);
1081
1188
  return [3 /*break*/, 10];
1082
- case 10: return [3 /*break*/, 12];
1189
+ case 10: return [3 /*break*/, 17];
1083
1190
  case 11:
1084
- if (type == 'link') {
1085
- linkURL = getAbsoluteUrl(value);
1086
- sheetRow.getCell(columIndex).value = {
1087
- text: value,
1088
- hyperlink: linkURL
1089
- };
1191
+ if (!(type == 'link')) return [3 /*break*/, 12];
1192
+ linkURL = getAbsoluteUrl(value);
1193
+ sheetRow.getCell(columIndex).value = {
1194
+ text: value,
1195
+ hyperlink: linkURL
1196
+ };
1197
+ return [3 /*break*/, 17];
1198
+ case 12:
1199
+ if (!(type === 'mapping')) return [3 /*break*/, 16];
1200
+ map = column.map;
1201
+ source = column.source;
1202
+ if (!source) return [3 /*break*/, 15];
1203
+ sourceValue = source;
1204
+ if ((0, tpl_builtin_1.isPureVariable)(source)) {
1205
+ sourceValue = (0, tpl_builtin_1.resolveVariableAndFilter)(source, data, '| raw');
1090
1206
  }
1091
- else if (type === 'mapping') {
1092
- map = column.map;
1093
- if (typeof value !== 'undefined' &&
1094
- map &&
1095
- ((_b = map[value]) !== null && _b !== void 0 ? _b : map['*'])) {
1096
- viewValue = (_c = map[value]) !== null && _c !== void 0 ? _c : (value === true && map['1']
1097
- ? map['1']
1098
- : value === false && map['0']
1099
- ? map['0']
1100
- : map['*']);
1101
- sheetRow.getCell(columIndex).value = viewValue;
1102
- }
1103
- else {
1104
- sheetRow.getCell(columIndex).value = value;
1105
- }
1207
+ mapKey = JSON.stringify(source);
1208
+ if (!(mapKey in remoteMappingCache)) return [3 /*break*/, 13];
1209
+ map = remoteMappingCache[mapKey];
1210
+ return [3 /*break*/, 15];
1211
+ case 13: return [4 /*yield*/, env.fetcher(sourceValue, data)];
1212
+ case 14:
1213
+ res = _d.sent();
1214
+ if (res.data) {
1215
+ remoteMappingCache[mapKey] = res.data;
1216
+ map = res.data;
1217
+ }
1218
+ _d.label = 15;
1219
+ case 15:
1220
+ if (typeof value !== 'undefined' &&
1221
+ map &&
1222
+ ((_b = map[value]) !== null && _b !== void 0 ? _b : map['*'])) {
1223
+ viewValue = (_c = map[value]) !== null && _c !== void 0 ? _c : (value === true && map['1']
1224
+ ? map['1']
1225
+ : value === false && map['0']
1226
+ ? map['0']
1227
+ : map['*']);
1228
+ sheetRow.getCell(columIndex).value =
1229
+ (0, helper_1.removeHTMLTag)(viewValue);
1106
1230
  }
1107
1231
  else {
1108
- if (column.tpl) {
1109
- sheetRow.getCell(columIndex).value = (0, helper_1.removeHTMLTag)((0, tpl_1.filter)(column.tpl, row.data));
1110
- }
1111
- else {
1112
- sheetRow.getCell(columIndex).value = value;
1113
- }
1232
+ sheetRow.getCell(columIndex).value = (0, helper_1.removeHTMLTag)(value);
1114
1233
  }
1115
- _d.label = 12;
1116
- case 12:
1234
+ return [3 /*break*/, 17];
1235
+ case 16:
1236
+ if (column.tpl) {
1237
+ sheetRow.getCell(columIndex).value = (0, helper_1.removeHTMLTag)((0, tpl_1.filter)(column.tpl, row.data));
1238
+ }
1239
+ else {
1240
+ sheetRow.getCell(columIndex).value = value;
1241
+ }
1242
+ _d.label = 17;
1243
+ case 17:
1117
1244
  _a++;
1118
1245
  return [3 /*break*/, 5];
1119
- case 13:
1246
+ case 18:
1120
1247
  _i++;
1121
1248
  return [3 /*break*/, 4];
1122
- case 14: return [4 /*yield*/, workbook.xlsx.writeBuffer()];
1123
- case 15:
1249
+ case 19: return [4 /*yield*/, workbook.xlsx.writeBuffer()];
1250
+ case 20:
1124
1251
  buffer = _d.sent();
1125
1252
  if (buffer) {
1126
1253
  blob = new Blob([buffer], {
@@ -1212,27 +1339,13 @@ var Table = /** @class */ (function (_super) {
1212
1339
  if (!finalActions.length) {
1213
1340
  return null;
1214
1341
  }
1215
- var rowIndex = store.hoverIndex;
1216
- var heights = this.heights;
1217
- var height = 40;
1218
- var top = 0;
1219
- if (heights && heights[rowIndex]) {
1220
- height = heights[rowIndex];
1221
- top += heights.header;
1222
- for (var i = rowIndex - 1; i >= 0; i--) {
1223
- top += heights[i];
1224
- }
1225
- }
1226
- return (react_1.default.createElement("div", { className: cx('Table-itemActions-wrap'), style: {
1227
- top: top,
1228
- height: height
1229
- } },
1342
+ return (react_1.default.createElement(ItemActionsWrapper_1.default, { store: store, classnames: cx },
1230
1343
  react_1.default.createElement("div", { className: cx('Table-itemActions') }, finalActions.map(function (action, index) {
1231
1344
  return render("itemAction/" + index, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, action), { isMenuItem: true }), {
1232
1345
  key: index,
1233
- item: store.rows[rowIndex],
1234
- data: store.rows[rowIndex].locals,
1235
- rowIndex: rowIndex
1346
+ item: store.hoverRow,
1347
+ data: store.hoverRow.locals,
1348
+ rowIndex: store.hoverRow.index
1236
1349
  });
1237
1350
  }))));
1238
1351
  };
@@ -1244,7 +1357,7 @@ var Table = /** @class */ (function (_super) {
1244
1357
  return (react_1.default.createElement(TableContent_1.TableContent, { tableClassName: cx(store.combineNum > 0 ? 'Table-table--withCombine' : '', tableClassName), itemAction: itemAction, classnames: cx, columns: store.filteredColumns, columnsGroup: store.columnGroup, rows: store.rows, placeholder: placeholder, render: render, onMouseMove: this.handleMouseMove, onScroll: this.handleOutterScroll, tableRef: this.tableRef, renderHeadCell: this.renderHeadCell, renderCell: this.renderCell, onCheck: this.handleCheck, onQuickChange: store.dragging ? undefined : this.handleQuickChange, footable: store.footable, footableColumns: store.footableColumns, checkOnItemClick: checkOnItemClick, buildItemProps: buildItemProps, onAction: this.handleAction, rowClassNameExpr: rowClassNameExpr, rowClassName: rowClassName, data: store.data, prefixRow: prefixRow, affixRow: affixRow, locale: locale, translate: translate }));
1245
1358
  };
1246
1359
  Table.prototype.render = function () {
1247
- var _a = this.props, className = _a.className, store = _a.store, cx = _a.classnames, affixColumns = _a.affixColumns;
1360
+ var _a = this.props, className = _a.className, store = _a.store, cx = _a.classnames, affixColumns = _a.affixColumns, autoGenerateFilter = _a.autoGenerateFilter;
1248
1361
  this.renderedToolbars = []; // 用来记录哪些 toolbar 已经渲染了,已经渲染了就不重复渲染了。
1249
1362
  var heading = this.renderHeading();
1250
1363
  var header = this.renderHeader();
@@ -1253,6 +1366,7 @@ var Table = /** @class */ (function (_super) {
1253
1366
  return (react_1.default.createElement("div", { className: cx('Table', className, {
1254
1367
  'Table--unsaved': !!store.modified || !!store.moved
1255
1368
  }) },
1369
+ autoGenerateFilter ? this.renderAutoFilterForm() : null,
1256
1370
  header,
1257
1371
  heading,
1258
1372
  react_1.default.createElement("div", { className: cx('Table-contentWrap'), onMouseLeave: this.handleMouseLeave },
@@ -1263,7 +1377,7 @@ var Table = /** @class */ (function (_super) {
1263
1377
  ? this.renderFixedColumns(store.rows, store.rightFixedColumns, false, tableClassName)
1264
1378
  : null),
1265
1379
  this.renderTableContent(),
1266
- ~store.hoverIndex ? this.renderItemActions() : null),
1380
+ store.hoverRow ? this.renderItemActions() : null),
1267
1381
  this.renderAffixHeader(tableClassName),
1268
1382
  footer));
1269
1383
  };
@@ -1306,7 +1420,8 @@ var Table = /** @class */ (function (_super) {
1306
1420
  'popOverContainer',
1307
1421
  'headerToolbarClassName',
1308
1422
  'toolbarClassName',
1309
- 'footerToolbarClassName'
1423
+ 'footerToolbarClassName',
1424
+ 'itemBadge'
1310
1425
  ];
1311
1426
  Table.defaultProps = {
1312
1427
  className: '',