amis 1.3.4 → 1.4.0

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 (270) hide show
  1. package/README.md +2 -1
  2. package/lib/RootRenderer.js +4 -1
  3. package/lib/RootRenderer.js.map +2 -2
  4. package/lib/components/Badge.d.ts +13 -1
  5. package/lib/components/Badge.js +16 -2
  6. package/lib/components/Badge.js.map +2 -2
  7. package/lib/components/Checkbox.d.ts +1 -1
  8. package/lib/components/Checkbox.js +1 -1
  9. package/lib/components/Checkbox.js.map +2 -2
  10. package/lib/components/Drawer.js +1 -1
  11. package/lib/components/Drawer.js.map +2 -2
  12. package/lib/components/Modal.js +1 -1
  13. package/lib/components/Modal.js.map +2 -2
  14. package/lib/components/RichText.d.ts +0 -3
  15. package/lib/components/RichText.js +1 -22
  16. package/lib/components/RichText.js.map +2 -2
  17. package/lib/components/Select.d.ts +7 -0
  18. package/lib/components/Select.js.map +2 -2
  19. package/lib/components/Steps.d.ts +3 -3
  20. package/lib/components/Steps.js.map +1 -1
  21. package/lib/components/WithRemoteConfig.d.ts +8 -0
  22. package/lib/components/WithRemoteConfig.js +28 -2
  23. package/lib/components/WithRemoteConfig.js.map +2 -2
  24. package/lib/components/condition-builder/Field.js +0 -1
  25. package/lib/components/condition-builder/Field.js.map +2 -2
  26. package/lib/components/condition-builder/Value.js +2 -1
  27. package/lib/components/condition-builder/Value.js.map +2 -2
  28. package/lib/components/condition-builder/types.d.ts +5 -0
  29. package/lib/components/condition-builder/types.js.map +1 -1
  30. package/lib/env.d.ts +1 -1
  31. package/lib/env.js.map +1 -1
  32. package/lib/factory.d.ts +6 -2
  33. package/lib/factory.js +9 -4
  34. package/lib/factory.js.map +2 -2
  35. package/lib/index.d.ts +1 -0
  36. package/lib/index.js +2 -1
  37. package/lib/index.js.map +2 -2
  38. package/lib/locale/de-DE.js +1 -0
  39. package/lib/locale/de-DE.js.map +2 -2
  40. package/lib/locale/en-US.js +2 -1
  41. package/lib/locale/en-US.js.map +2 -2
  42. package/lib/locale/zh-CN.js +2 -1
  43. package/lib/locale/zh-CN.js.map +2 -2
  44. package/lib/renderers/Action.d.ts +6 -0
  45. package/lib/renderers/Action.js +9 -1
  46. package/lib/renderers/Action.js.map +2 -2
  47. package/lib/renderers/CRUD.d.ts +2 -2
  48. package/lib/renderers/CRUD.js +13 -21
  49. package/lib/renderers/CRUD.js.map +2 -2
  50. package/lib/renderers/Card.js +11 -11
  51. package/lib/renderers/Card.js.map +2 -2
  52. package/lib/renderers/Collapse.d.ts +1 -1
  53. package/lib/renderers/Collapse.js +5 -1
  54. package/lib/renderers/Collapse.js.map +2 -2
  55. package/lib/renderers/Copyable.js +30 -28
  56. package/lib/renderers/Copyable.js.map +2 -2
  57. package/lib/renderers/Dialog.d.ts +0 -252
  58. package/lib/renderers/Dialog.js +3 -2
  59. package/lib/renderers/Dialog.js.map +2 -2
  60. package/lib/renderers/Drawer.js +2 -1
  61. package/lib/renderers/Drawer.js.map +2 -2
  62. package/lib/renderers/DropDownButton.d.ts +4 -0
  63. package/lib/renderers/DropDownButton.js +2 -2
  64. package/lib/renderers/DropDownButton.js.map +2 -2
  65. package/lib/renderers/Form/ButtonGroupSelect.js +3 -0
  66. package/lib/renderers/Form/ButtonGroupSelect.js.map +2 -2
  67. package/lib/renderers/Form/Combo.d.ts +2 -0
  68. package/lib/renderers/Form/Combo.js +16 -1
  69. package/lib/renderers/Form/Combo.js.map +2 -2
  70. package/lib/renderers/Form/DiffEditor.d.ts +0 -2
  71. package/lib/renderers/Form/Editor.d.ts +0 -2
  72. package/lib/renderers/Form/Editor.js +1 -1
  73. package/lib/renderers/Form/Editor.js.map +2 -2
  74. package/lib/renderers/Form/InputExcel.d.ts +5 -0
  75. package/lib/renderers/Form/InputExcel.js +24 -3
  76. package/lib/renderers/Form/InputExcel.js.map +2 -2
  77. package/lib/renderers/Form/InputImage.d.ts +8 -0
  78. package/lib/renderers/Form/InputImage.js +2 -1
  79. package/lib/renderers/Form/InputImage.js.map +2 -2
  80. package/lib/renderers/Form/InputNumber.d.ts +19 -5
  81. package/lib/renderers/Form/InputNumber.js +69 -7
  82. package/lib/renderers/Form/InputNumber.js.map +2 -2
  83. package/lib/renderers/Form/InputRange.js +7 -2
  84. package/lib/renderers/Form/InputRange.js.map +2 -2
  85. package/lib/renderers/Form/InputTable.d.ts +23 -5
  86. package/lib/renderers/Form/InputTable.js +32 -3
  87. package/lib/renderers/Form/InputTable.js.map +2 -2
  88. package/lib/renderers/Form/NestedSelect.js +2 -3
  89. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  90. package/lib/renderers/Form/Options.js +3 -1
  91. package/lib/renderers/Form/Options.js.map +2 -2
  92. package/lib/renderers/Form/index.js +0 -10
  93. package/lib/renderers/Form/index.js.map +2 -2
  94. package/lib/renderers/Form/wrapControl.js +3 -3
  95. package/lib/renderers/Form/wrapControl.js.map +2 -2
  96. package/lib/renderers/Json.js +5 -1
  97. package/lib/renderers/Json.js.map +2 -2
  98. package/lib/renderers/List.d.ts +5 -0
  99. package/lib/renderers/List.js +20 -14
  100. package/lib/renderers/List.js.map +2 -2
  101. package/lib/renderers/Page.d.ts +6 -0
  102. package/lib/renderers/Page.js +10 -2
  103. package/lib/renderers/Page.js.map +2 -2
  104. package/lib/renderers/Service.d.ts +10 -1
  105. package/lib/renderers/Service.js +85 -3
  106. package/lib/renderers/Service.js.map +2 -2
  107. package/lib/renderers/Steps.d.ts +4 -4
  108. package/lib/renderers/Steps.js +5 -2
  109. package/lib/renderers/Steps.js.map +2 -2
  110. package/lib/renderers/Table/TableBody.d.ts +5 -3
  111. package/lib/renderers/Table/TableBody.js +17 -11
  112. package/lib/renderers/Table/TableBody.js.map +2 -2
  113. package/lib/renderers/Table/TableCell.js +6 -2
  114. package/lib/renderers/Table/TableCell.js.map +2 -2
  115. package/lib/renderers/Table/TableContent.d.ts +3 -1
  116. package/lib/renderers/Table/TableContent.js +6 -2
  117. package/lib/renderers/Table/TableContent.js.map +2 -2
  118. package/lib/renderers/Table/TableRow.d.ts +1 -1
  119. package/lib/renderers/Table/TableRow.js +14 -13
  120. package/lib/renderers/Table/TableRow.js.map +2 -2
  121. package/lib/renderers/Table/index.d.ts +28 -3
  122. package/lib/renderers/Table/index.js +97 -54
  123. package/lib/renderers/Table/index.js.map +2 -2
  124. package/lib/schemaExtend.d.ts +1 -0
  125. package/lib/schemaExtend.js +59 -0
  126. package/lib/schemaExtend.js.map +13 -0
  127. package/lib/store/app.d.ts +0 -1
  128. package/lib/store/combo.d.ts +0 -2
  129. package/lib/store/crud.d.ts +3 -3
  130. package/lib/store/crud.js +41 -36
  131. package/lib/store/crud.js.map +2 -2
  132. package/lib/store/form.d.ts +0 -1
  133. package/lib/store/formItem.js +10 -6
  134. package/lib/store/formItem.js.map +2 -2
  135. package/lib/store/modal.d.ts +1 -1
  136. package/lib/store/modal.js +4 -0
  137. package/lib/store/modal.js.map +2 -2
  138. package/lib/store/root.d.ts +0 -1
  139. package/lib/store/service.d.ts +0 -1
  140. package/lib/store/service.js +0 -13
  141. package/lib/store/service.js.map +2 -2
  142. package/lib/store/table.d.ts +1 -2
  143. package/lib/store/table.js +44 -3
  144. package/lib/store/table.js.map +2 -2
  145. package/lib/themes/ang-ie11.css +278 -17
  146. package/lib/themes/ang.css +278 -17
  147. package/lib/themes/ang.css.map +1 -1
  148. package/lib/themes/antd-ie11.css +278 -17
  149. package/lib/themes/antd.css +278 -17
  150. package/lib/themes/antd.css.map +1 -1
  151. package/lib/themes/cxd-ie11.css +278 -17
  152. package/lib/themes/cxd.css +278 -17
  153. package/lib/themes/cxd.css.map +1 -1
  154. package/lib/themes/dark-ie11.css +278 -17
  155. package/lib/themes/dark.css +278 -17
  156. package/lib/themes/dark.css.map +1 -1
  157. package/lib/themes/default.css +278 -17
  158. package/lib/themes/default.css.map +1 -1
  159. package/lib/utils/api.js +12 -0
  160. package/lib/utils/api.js.map +2 -2
  161. package/lib/utils/attachmentAdpator.d.ts +7 -0
  162. package/lib/utils/attachmentAdpator.js +82 -0
  163. package/lib/utils/attachmentAdpator.js.map +13 -0
  164. package/lib/utils/helper.d.ts +2 -0
  165. package/lib/utils/helper.js +14 -1
  166. package/lib/utils/helper.js.map +2 -2
  167. package/lib/utils/resize-sensor.js +6 -0
  168. package/lib/utils/resize-sensor.js.map +2 -2
  169. package/lib/utils/tpl-builtin.d.ts +1 -0
  170. package/lib/utils/tpl-builtin.js +24 -8
  171. package/lib/utils/tpl-builtin.js.map +2 -2
  172. package/lib/utils/validations.js +62 -5
  173. package/lib/utils/validations.js.map +2 -2
  174. package/package.json +1 -1
  175. package/schema.json +369 -164
  176. package/scss/_properties.scss +6 -0
  177. package/scss/components/_badge.scss +15 -1
  178. package/scss/components/_list.scss +8 -0
  179. package/scss/components/_markdown.scss +266 -0
  180. package/scss/components/_spinner.scss +6 -2
  181. package/scss/components/_table.scss +4 -0
  182. package/scss/components/form/_form.scss +3 -17
  183. package/scss/components/form/_group.scss +4 -0
  184. package/scss/components/form/_nested-select.scss +4 -0
  185. package/scss/components/form/_number.scss +12 -1
  186. package/scss/themes/_common.scss +1 -0
  187. package/sdk/ang-ie11.css +324 -20
  188. package/sdk/ang.css +330 -20
  189. package/sdk/antd-ie11.css +324 -20
  190. package/sdk/antd.css +330 -20
  191. package/sdk/charts.js +15 -15
  192. package/sdk/color-picker.js +65 -69
  193. package/sdk/cropperjs.js +2 -2
  194. package/sdk/cxd-ie11.css +324 -20
  195. package/sdk/cxd.css +330 -20
  196. package/sdk/dark-ie11.css +324 -20
  197. package/sdk/dark.css +330 -20
  198. package/sdk/exceljs.js +1 -1
  199. package/sdk/locale/de-DE.js +1 -0
  200. package/sdk/markdown.js +69 -69
  201. package/sdk/papaparse.js +1 -1
  202. package/sdk/renderers/Form/CityDB.js +1 -1
  203. package/sdk/rest.js +27 -23
  204. package/sdk/rich-text.js +63 -63
  205. package/sdk/sdk-ie11.css +324 -20
  206. package/sdk/sdk.css +330 -20
  207. package/sdk/sdk.js +1146 -1138
  208. package/sdk/thirds/hls.js/hls.js +1 -1
  209. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  210. package/sdk/tinymce.js +57 -57
  211. package/src/RootRenderer.tsx +8 -3
  212. package/src/components/Badge.tsx +41 -6
  213. package/src/components/Checkbox.tsx +5 -2
  214. package/src/components/Drawer.tsx +3 -2
  215. package/src/components/Modal.tsx +3 -2
  216. package/src/components/RichText.tsx +2 -27
  217. package/src/components/Select.tsx +1 -0
  218. package/src/components/Steps.tsx +3 -3
  219. package/src/components/WithRemoteConfig.tsx +37 -2
  220. package/src/components/condition-builder/Field.tsx +1 -2
  221. package/src/components/condition-builder/Value.tsx +3 -0
  222. package/src/components/condition-builder/types.ts +6 -0
  223. package/src/env.tsx +1 -1
  224. package/src/factory.tsx +14 -4
  225. package/src/index.tsx +2 -0
  226. package/src/locale/de-DE.ts +1 -0
  227. package/src/locale/en-US.ts +2 -1
  228. package/src/locale/zh-CN.ts +2 -1
  229. package/src/renderers/Action.tsx +19 -1
  230. package/src/renderers/CRUD.tsx +15 -34
  231. package/src/renderers/Card.tsx +21 -15
  232. package/src/renderers/Collapse.tsx +5 -1
  233. package/src/renderers/Copyable.tsx +46 -44
  234. package/src/renderers/Dialog.tsx +3 -2
  235. package/src/renderers/Drawer.tsx +2 -1
  236. package/src/renderers/DropDownButton.tsx +8 -0
  237. package/src/renderers/Form/ButtonGroupSelect.tsx +3 -0
  238. package/src/renderers/Form/Combo.tsx +7 -0
  239. package/src/renderers/Form/Editor.tsx +19 -20
  240. package/src/renderers/Form/InputExcel.tsx +28 -3
  241. package/src/renderers/Form/InputImage.tsx +23 -8
  242. package/src/renderers/Form/InputNumber.tsx +113 -18
  243. package/src/renderers/Form/InputRange.tsx +5 -2
  244. package/src/renderers/Form/InputTable.tsx +88 -9
  245. package/src/renderers/Form/NestedSelect.tsx +1 -1
  246. package/src/renderers/Form/Options.tsx +3 -1
  247. package/src/renderers/Form/index.tsx +0 -15
  248. package/src/renderers/Form/wrapControl.tsx +2 -2
  249. package/src/renderers/Json.tsx +10 -1
  250. package/src/renderers/List.tsx +32 -19
  251. package/src/renderers/Page.tsx +19 -0
  252. package/src/renderers/Service.tsx +101 -3
  253. package/src/renderers/Steps.tsx +12 -9
  254. package/src/renderers/Table/TableBody.tsx +29 -10
  255. package/src/renderers/Table/TableCell.tsx +15 -1
  256. package/src/renderers/Table/TableContent.tsx +7 -1
  257. package/src/renderers/Table/TableRow.tsx +18 -17
  258. package/src/renderers/Table/index.tsx +117 -28
  259. package/src/schemaExtend.ts +66 -0
  260. package/src/store/crud.ts +34 -38
  261. package/src/store/formItem.ts +10 -6
  262. package/src/store/modal.ts +4 -0
  263. package/src/store/service.ts +0 -19
  264. package/src/store/table.ts +48 -0
  265. package/src/utils/api.ts +11 -0
  266. package/src/utils/attachmentAdpator.ts +90 -0
  267. package/src/utils/helper.ts +15 -0
  268. package/src/utils/resize-sensor.ts +7 -0
  269. package/src/utils/tpl-builtin.ts +36 -17
  270. package/src/utils/validations.ts +80 -12
@@ -5,6 +5,7 @@ var tslib_1 = require("tslib");
5
5
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
6
6
  var TableRow_1 = require("./TableRow");
7
7
  var tpl_1 = require("../../utils/tpl");
8
+ var mobx_react_1 = require("mobx-react");
8
9
  var helper_1 = require("../../utils/helper");
9
10
  var TableBody = /** @class */ (function (_super) {
10
11
  (0, tslib_1.__extends)(TableBody, _super);
@@ -15,11 +16,11 @@ var TableBody = /** @class */ (function (_super) {
15
16
  var _this = this;
16
17
  if (columns === void 0) { columns = this.props.columns; }
17
18
  if (rowProps === void 0) { rowProps = {}; }
18
- var _a = this.props, rowClassName = _a.rowClassName, rowClassNameExpr = _a.rowClassNameExpr, onAction = _a.onAction, buildItemProps = _a.buildItemProps, checkOnItemClick = _a.checkOnItemClick, cx = _a.classnames, render = _a.render, renderCell = _a.renderCell, onCheck = _a.onCheck, onQuickChange = _a.onQuickChange, footable = _a.footable, ignoreFootableContent = _a.ignoreFootableContent, footableColumns = _a.footableColumns;
19
+ var _a = this.props, rowClassName = _a.rowClassName, rowClassNameExpr = _a.rowClassNameExpr, onAction = _a.onAction, buildItemProps = _a.buildItemProps, checkOnItemClick = _a.checkOnItemClick, cx = _a.classnames, render = _a.render, renderCell = _a.renderCell, onCheck = _a.onCheck, onQuickChange = _a.onQuickChange, footable = _a.footable, ignoreFootableContent = _a.ignoreFootableContent, footableColumns = _a.footableColumns, itemAction = _a.itemAction;
19
20
  return rows.map(function (item, rowIndex) {
20
21
  var itemProps = buildItemProps ? buildItemProps(item, rowIndex) : null;
21
22
  var doms = [
22
- react_1.default.createElement(TableRow_1.TableRow, (0, tslib_1.__assign)({}, itemProps, { classnames: cx, checkOnItemClick: checkOnItemClick, key: item.id, itemIndex: rowIndex, item: item, itemClassName: cx(rowClassNameExpr
23
+ react_1.default.createElement(TableRow_1.TableRow, (0, tslib_1.__assign)({}, itemProps, { itemAction: itemAction, classnames: cx, checkOnItemClick: checkOnItemClick, key: item.id, itemIndex: rowIndex, item: item, itemClassName: cx(rowClassNameExpr
23
24
  ? (0, tpl_1.filter)(rowClassNameExpr, item.data)
24
25
  : rowClassName, {
25
26
  'is-last': item.depth > 1 && rowIndex === rows.length - 1
@@ -29,19 +30,19 @@ var TableBody = /** @class */ (function (_super) {
29
30
  ];
30
31
  if (footable && footableColumns.length) {
31
32
  if (item.depth === 1) {
32
- doms.push(react_1.default.createElement(TableRow_1.TableRow, (0, tslib_1.__assign)({}, itemProps, { classnames: cx, checkOnItemClick: checkOnItemClick, key: "foot-" + item.id, itemIndex: rowIndex, item: item, itemClassName: cx(rowClassNameExpr
33
+ doms.push(react_1.default.createElement(TableRow_1.TableRow, (0, tslib_1.__assign)({}, itemProps, { itemAction: itemAction, classnames: cx, checkOnItemClick: checkOnItemClick, key: "foot-" + item.id, itemIndex: rowIndex, item: item, itemClassName: cx(rowClassNameExpr
33
34
  ? (0, tpl_1.filter)(rowClassNameExpr, item.data)
34
35
  : rowClassName), columns: footableColumns, renderCell: renderCell, render: render, onAction: onAction, onCheck: onCheck, footableMode: true, footableColSpan: columns.length, onQuickChange: onQuickChange, ignoreFootableContent: ignoreFootableContent }, rowProps)));
35
36
  }
36
37
  }
37
- else if (item.children.length) {
38
+ else if (item.children.length && item.expanded) {
38
39
  // 嵌套表格
39
40
  doms.push.apply(doms, _this.renderRows(item.children, columns, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, rowProps), { parent: item })));
40
41
  }
41
42
  return doms;
42
43
  });
43
44
  };
44
- TableBody.prototype.renderSummaryRow = function (items) {
45
+ TableBody.prototype.renderSummaryRow = function (position, items, rowIndex) {
45
46
  var _a = this.props, columns = _a.columns, render = _a.render, data = _a.data, cx = _a.classnames, rows = _a.rows;
46
47
  if (!(Array.isArray(items) && items.length)) {
47
48
  return null;
@@ -69,28 +70,33 @@ var TableBody = /** @class */ (function (_super) {
69
70
  var ctx = (0, helper_1.createObject)(data, {
70
71
  items: rows.map(function (row) { return row.locals; })
71
72
  });
72
- return (react_1.default.createElement("tr", { className: cx('Table-tr', 'is-summary') }, result.map(function (item, index) {
73
+ return (react_1.default.createElement("tr", { className: cx('Table-tr', 'is-summary'), key: "summary-" + position + "-" + (rowIndex || 0) }, result.map(function (item, index) {
73
74
  var Com = item.isHead ? 'th' : 'td';
74
75
  return (react_1.default.createElement(Com, { key: index, colSpan: item.colSpan, className: item.cellClassName }, render("summary-row/" + index, item, {
75
76
  data: ctx
76
77
  })));
77
78
  })));
78
79
  };
79
- TableBody.prototype.renderSummary = function (items) {
80
+ TableBody.prototype.renderSummary = function (position, items) {
80
81
  var _this = this;
81
82
  return Array.isArray(items)
82
83
  ? items.some(function (i) { return Array.isArray(i); })
83
- ? items.map(function (i) { return _this.renderSummaryRow(Array.isArray(i) ? i : [i]); })
84
- : this.renderSummaryRow(items)
84
+ ? items.map(function (i, rowIndex) {
85
+ return _this.renderSummaryRow(position, Array.isArray(i) ? i : [i], rowIndex);
86
+ })
87
+ : this.renderSummaryRow(position, items)
85
88
  : null;
86
89
  };
87
90
  TableBody.prototype.render = function () {
88
91
  var _a = this.props, cx = _a.classnames, className = _a.className, render = _a.render, rows = _a.rows, columns = _a.columns, rowsProps = _a.rowsProps, prefixRow = _a.prefixRow, affixRow = _a.affixRow, __ = _a.translate;
89
92
  return (react_1.default.createElement("tbody", { className: className }, rows.length ? (react_1.default.createElement(react_1.default.Fragment, null,
90
- this.renderSummary(prefixRow),
93
+ this.renderSummary('prefix', prefixRow),
91
94
  this.renderRows(rows, columns, rowsProps),
92
- this.renderSummary(affixRow))) : null));
95
+ this.renderSummary('affix', affixRow))) : null));
93
96
  };
97
+ TableBody = (0, tslib_1.__decorate)([
98
+ mobx_react_1.observer
99
+ ], TableBody);
94
100
  return TableBody;
95
101
  }(react_1.default.Component));
96
102
  exports.TableBody = TableBody;
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Table/TableBody.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {ClassNamesFn} from '../../theme';\nimport {IColumn, IRow} from '../../store/table';\nimport {SchemaNode, Action} from '../../types';\nimport {TableRow} from './TableRow';\nimport {filter} from '../../utils/tpl';\nimport {observer} from 'mobx-react';\nimport {trace, reaction} from 'mobx';\nimport {createObject, flattenTree} from '../../utils/helper';\nimport {LocaleProps} from '../../locale';\n\nexport interface TableBodyProps extends LocaleProps {\n className?: string;\n rowsProps?: any;\n tableClassName?: string;\n classnames: ClassNamesFn;\n columns: Array<IColumn>;\n rows: Array<IRow>;\n render: (region: string, node: SchemaNode, props?: any) => JSX.Element;\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => React.ReactNode;\n onCheck: (item: IRow) => void;\n onQuickChange?: (\n item: IRow,\n values: object,\n saveImmediately?: boolean | any,\n savePristine?: boolean\n ) => void;\n footable?: boolean;\n ignoreFootableContent?: boolean;\n footableColumns: Array<IColumn>;\n checkOnItemClick?: boolean;\n buildItemProps?: (item: IRow, index: number) => any;\n onAction?: (e: React.UIEvent<any>, action: Action, ctx: object) => void;\n rowClassNameExpr?: string;\n rowClassName?: string;\n data?: any;\n prefixRow?: Array<any>;\n affixRow?: Array<any>;\n}\n\nexport class TableBody extends React.Component<TableBodyProps> {\n renderRows(\n rows: Array<any>,\n columns = this.props.columns,\n rowProps: any = {}\n ): any {\n const {\n rowClassName,\n rowClassNameExpr,\n onAction,\n buildItemProps,\n checkOnItemClick,\n classnames: cx,\n render,\n renderCell,\n onCheck,\n onQuickChange,\n footable,\n ignoreFootableContent,\n footableColumns\n } = this.props;\n\n return rows.map((item: IRow, rowIndex: number) => {\n const itemProps = buildItemProps ? buildItemProps(item, rowIndex) : null;\n\n const doms = [\n <TableRow\n {...itemProps}\n classnames={cx}\n checkOnItemClick={checkOnItemClick}\n key={item.id}\n itemIndex={rowIndex}\n item={item}\n itemClassName={cx(\n rowClassNameExpr\n ? filter(rowClassNameExpr, item.data)\n : rowClassName,\n {\n 'is-last': item.depth > 1 && rowIndex === rows.length - 1\n }\n )}\n columns={columns}\n renderCell={renderCell}\n render={render}\n onAction={onAction}\n onCheck={onCheck}\n // todo 先注释 quickEditEnabled={item.depth === 1}\n onQuickChange={onQuickChange}\n {...rowProps}\n />\n ];\n\n if (footable && footableColumns.length) {\n if (item.depth === 1) {\n doms.push(\n <TableRow\n {...itemProps}\n classnames={cx}\n checkOnItemClick={checkOnItemClick}\n key={`foot-${item.id}`}\n itemIndex={rowIndex}\n item={item}\n itemClassName={cx(\n rowClassNameExpr\n ? filter(rowClassNameExpr, item.data)\n : rowClassName\n )}\n columns={footableColumns}\n renderCell={renderCell}\n render={render}\n onAction={onAction}\n onCheck={onCheck}\n footableMode\n footableColSpan={columns.length}\n onQuickChange={onQuickChange}\n ignoreFootableContent={ignoreFootableContent}\n {...rowProps}\n />\n );\n }\n } else if (item.children.length) {\n // 嵌套表格\n doms.push(\n ...this.renderRows(item.children, columns, {\n ...rowProps,\n parent: item\n })\n );\n }\n return doms;\n });\n }\n\n renderSummaryRow(items?: Array<any>) {\n const {columns, render, data, classnames: cx, rows} = this.props;\n\n if (!(Array.isArray(items) && items.length)) {\n return null;\n }\n\n const filterColumns = columns.filter(item => item.toggable);\n const result: any[] = [];\n\n for (let index = 0; index < filterColumns.length; index++) {\n const item = items[filterColumns[index].rawIndex];\n item && result.push({...item});\n }\n\n // 如果是勾选栏,让它和下一列合并。\n if (columns[0].type === '__checkme' && result[0]) {\n result[0].colSpan = (result[0].colSpan || 1) + 1;\n }\n\n // 如果是展开栏,让它和下一列合并。\n if (columns[0].type === '__expandme' && result[0]) {\n result[0].colSpan = (result[0].colSpan || 1) + 1;\n }\n\n // 缺少的单元格补齐\n const appendLen =\n columns.length - result.reduce((p, c) => p + (c.colSpan || 1), 0);\n\n if (appendLen) {\n const item = result.pop();\n result.push({\n ...item,\n colSpan: (item.colSpan || 1) + appendLen\n });\n }\n const ctx = createObject(data, {\n items: rows.map(row => row.locals)\n });\n\n return (\n <tr className={cx('Table-tr', 'is-summary')}>\n {result.map((item, index) => {\n const Com = item.isHead ? 'th' : 'td';\n return (\n <Com\n key={index}\n colSpan={item.colSpan}\n className={item.cellClassName}\n >\n {render(`summary-row/${index}`, item, {\n data: ctx\n })}\n </Com>\n );\n })}\n </tr>\n );\n }\n\n renderSummary(items?: Array<any>) {\n return Array.isArray(items)\n ? items.some(i => Array.isArray(i))\n ? items.map(i => this.renderSummaryRow(Array.isArray(i) ? i : [i]))\n : this.renderSummaryRow(items)\n : null;\n }\n\n render() {\n const {\n classnames: cx,\n className,\n render,\n rows,\n columns,\n rowsProps,\n prefixRow,\n affixRow,\n translate: __\n } = this.props;\n\n return (\n <tbody className={className}>\n {rows.length ? (\n <>\n {this.renderSummary(prefixRow)}\n {this.renderRows(rows, columns, rowsProps)}\n {this.renderSummary(affixRow)}\n </>\n ) : null}\n </tbody>\n );\n }\n}\n"
11
+ "import React from 'react';\nimport {ClassNamesFn} from '../../theme';\nimport {IColumn, IRow} from '../../store/table';\nimport {SchemaNode, Action} from '../../types';\nimport {TableRow} from './TableRow';\nimport {filter} from '../../utils/tpl';\nimport {observer} from 'mobx-react';\nimport {trace, reaction} from 'mobx';\nimport {createObject, flattenTree} from '../../utils/helper';\nimport {LocaleProps} from '../../locale';\nimport {ActionSchema} from '../Action';\n\nexport interface TableBodyProps extends LocaleProps {\n className?: string;\n rowsProps?: any;\n tableClassName?: string;\n classnames: ClassNamesFn;\n columns: Array<IColumn>;\n rows: Array<IRow>;\n render: (region: string, node: SchemaNode, props?: any) => JSX.Element;\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => React.ReactNode;\n onCheck: (item: IRow, value: boolean, shift?: boolean) => void;\n onQuickChange?: (\n item: IRow,\n values: object,\n saveImmediately?: boolean | any,\n savePristine?: boolean\n ) => void;\n footable?: boolean;\n ignoreFootableContent?: boolean;\n footableColumns: Array<IColumn>;\n checkOnItemClick?: boolean;\n buildItemProps?: (item: IRow, index: number) => any;\n onAction?: (e: React.UIEvent<any>, action: Action, ctx: object) => void;\n rowClassNameExpr?: string;\n rowClassName?: string;\n data?: any;\n prefixRow?: Array<any>;\n affixRow?: Array<any>;\n itemAction?: ActionSchema;\n}\n\n@observer\nexport class TableBody extends React.Component<TableBodyProps> {\n renderRows(\n rows: Array<any>,\n columns = this.props.columns,\n rowProps: any = {}\n ): any {\n const {\n rowClassName,\n rowClassNameExpr,\n onAction,\n buildItemProps,\n checkOnItemClick,\n classnames: cx,\n render,\n renderCell,\n onCheck,\n onQuickChange,\n footable,\n ignoreFootableContent,\n footableColumns,\n itemAction\n } = this.props;\n\n return rows.map((item: IRow, rowIndex: number) => {\n const itemProps = buildItemProps ? buildItemProps(item, rowIndex) : null;\n\n const doms = [\n <TableRow\n {...itemProps}\n itemAction={itemAction}\n classnames={cx}\n checkOnItemClick={checkOnItemClick}\n key={item.id}\n itemIndex={rowIndex}\n item={item}\n itemClassName={cx(\n rowClassNameExpr\n ? filter(rowClassNameExpr, item.data)\n : rowClassName,\n {\n 'is-last': item.depth > 1 && rowIndex === rows.length - 1\n }\n )}\n columns={columns}\n renderCell={renderCell}\n render={render}\n onAction={onAction}\n onCheck={onCheck}\n // todo 先注释 quickEditEnabled={item.depth === 1}\n onQuickChange={onQuickChange}\n {...rowProps}\n />\n ];\n\n if (footable && footableColumns.length) {\n if (item.depth === 1) {\n doms.push(\n <TableRow\n {...itemProps}\n itemAction={itemAction}\n classnames={cx}\n checkOnItemClick={checkOnItemClick}\n key={`foot-${item.id}`}\n itemIndex={rowIndex}\n item={item}\n itemClassName={cx(\n rowClassNameExpr\n ? filter(rowClassNameExpr, item.data)\n : rowClassName\n )}\n columns={footableColumns}\n renderCell={renderCell}\n render={render}\n onAction={onAction}\n onCheck={onCheck}\n footableMode\n footableColSpan={columns.length}\n onQuickChange={onQuickChange}\n ignoreFootableContent={ignoreFootableContent}\n {...rowProps}\n />\n );\n }\n } else if (item.children.length && item.expanded) {\n // 嵌套表格\n doms.push(\n ...this.renderRows(item.children, columns, {\n ...rowProps,\n parent: item\n })\n );\n }\n return doms;\n });\n }\n\n renderSummaryRow(\n position: 'prefix' | 'affix',\n items?: Array<any>,\n rowIndex?: number\n ) {\n const {columns, render, data, classnames: cx, rows} = this.props;\n\n if (!(Array.isArray(items) && items.length)) {\n return null;\n }\n\n const filterColumns = columns.filter(item => item.toggable);\n const result: any[] = [];\n\n for (let index = 0; index < filterColumns.length; index++) {\n const item = items[filterColumns[index].rawIndex];\n item && result.push({...item});\n }\n\n // 如果是勾选栏,让它和下一列合并。\n if (columns[0].type === '__checkme' && result[0]) {\n result[0].colSpan = (result[0].colSpan || 1) + 1;\n }\n\n // 如果是展开栏,让它和下一列合并。\n if (columns[0].type === '__expandme' && result[0]) {\n result[0].colSpan = (result[0].colSpan || 1) + 1;\n }\n\n // 缺少的单元格补齐\n const appendLen =\n columns.length - result.reduce((p, c) => p + (c.colSpan || 1), 0);\n\n if (appendLen) {\n const item = result.pop();\n result.push({\n ...item,\n colSpan: (item.colSpan || 1) + appendLen\n });\n }\n const ctx = createObject(data, {\n items: rows.map(row => row.locals)\n });\n\n return (\n <tr\n className={cx('Table-tr', 'is-summary')}\n key={`summary-${position}-${rowIndex || 0}`}\n >\n {result.map((item, index) => {\n const Com = item.isHead ? 'th' : 'td';\n return (\n <Com\n key={index}\n colSpan={item.colSpan}\n className={item.cellClassName}\n >\n {render(`summary-row/${index}`, item, {\n data: ctx\n })}\n </Com>\n );\n })}\n </tr>\n );\n }\n\n renderSummary(position: 'prefix' | 'affix', items?: Array<any>) {\n return Array.isArray(items)\n ? items.some(i => Array.isArray(i))\n ? items.map((i, rowIndex) =>\n this.renderSummaryRow(\n position,\n Array.isArray(i) ? i : [i],\n rowIndex\n )\n )\n : this.renderSummaryRow(position, items)\n : null;\n }\n\n render() {\n const {\n classnames: cx,\n className,\n render,\n rows,\n columns,\n rowsProps,\n prefixRow,\n affixRow,\n translate: __\n } = this.props;\n\n return (\n <tbody className={className}>\n {rows.length ? (\n <>\n {this.renderSummary('prefix', prefixRow)}\n {this.renderRows(rows, columns, rowsProps)}\n {this.renderSummary('affix', affixRow)}\n </>\n ) : null}\n </tbody>\n );\n }\n}\n"
12
12
  ]
13
13
  }
@@ -9,13 +9,14 @@ var Copyable_1 = (0, tslib_1.__importDefault)(require("../Copyable"));
9
9
  var PopOver_1 = (0, tslib_1.__importDefault)(require("../PopOver"));
10
10
  var mobx_react_1 = require("mobx-react");
11
11
  var omit = require("lodash/omit");
12
+ var tpl_1 = require("../../utils/tpl");
12
13
  var TableCell = /** @class */ (function (_super) {
13
14
  (0, tslib_1.__extends)(TableCell, _super);
14
15
  function TableCell() {
15
16
  return _super !== null && _super.apply(this, arguments) || this;
16
17
  }
17
18
  TableCell.prototype.render = function () {
18
- var _a = this.props, className = _a.className, render = _a.render, style = _a.style, Component = _a.wrapperComponent, column = _a.column, value = _a.value, data = _a.data, children = _a.children, width = _a.width, innerClassName = _a.innerClassName, label = _a.label, tabIndex = _a.tabIndex, onKeyUp = _a.onKeyUp, rowSpan = _a.rowSpan, _body = _a.body, tpl = _a.tpl, remark = _a.remark, prefix = _a.prefix, affix = _a.affix, isHead = _a.isHead, rest = (0, tslib_1.__rest)(_a, ["className", "render", "style", "wrapperComponent", "column", "value", "data", "children", "width", "innerClassName", "label", "tabIndex", "onKeyUp", "rowSpan", "body", "tpl", "remark", "prefix", "affix", "isHead"]);
19
+ var _a = this.props, cx = _a.classnames, className = _a.className, classNameExpr = _a.classNameExpr, render = _a.render, style = _a.style, Component = _a.wrapperComponent, column = _a.column, value = _a.value, data = _a.data, children = _a.children, width = _a.width, align = _a.align, innerClassName = _a.innerClassName, label = _a.label, tabIndex = _a.tabIndex, onKeyUp = _a.onKeyUp, rowSpan = _a.rowSpan, _body = _a.body, tpl = _a.tpl, remark = _a.remark, prefix = _a.prefix, affix = _a.affix, isHead = _a.isHead, rest = (0, tslib_1.__rest)(_a, ["classnames", "className", "classNameExpr", "render", "style", "wrapperComponent", "column", "value", "data", "children", "width", "align", "innerClassName", "label", "tabIndex", "onKeyUp", "rowSpan", "body", "tpl", "remark", "prefix", "affix", "isHead"]);
19
20
  var schema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, column), { className: innerClassName, type: (column && column.type) || 'plain' });
20
21
  // 如果本来就是 type 为 button,不要删除,其他情况下都应该删除。
21
22
  if (schema.type !== 'button' && schema.type !== 'dropdown-button') {
@@ -36,13 +37,16 @@ var TableCell = /** @class */ (function (_super) {
36
37
  // delete style.width;
37
38
  }
38
39
  }
40
+ if (align) {
41
+ style = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, style), { textAlign: align });
42
+ }
39
43
  if (!Component) {
40
44
  return body;
41
45
  }
42
46
  if (isHead) {
43
47
  Component = 'th';
44
48
  }
45
- return (react_1.default.createElement(Component, { rowSpan: rowSpan > 1 ? rowSpan : undefined, style: style, className: className, tabIndex: tabIndex, onKeyUp: onKeyUp },
49
+ return (react_1.default.createElement(Component, { rowSpan: rowSpan > 1 ? rowSpan : undefined, style: style, className: cx(className, column.classNameExpr ? (0, tpl_1.filter)(column.classNameExpr, data) : null), tabIndex: tabIndex, onKeyUp: onKeyUp },
46
50
  prefix,
47
51
  body,
48
52
  affix));
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Table/TableCell.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {RendererProps, Renderer} from '../../factory';\nimport QuickEdit from '../QuickEdit';\nimport Copyable from '../Copyable';\nimport PopOverable from '../PopOver';\nimport {observer} from 'mobx-react';\nimport omit = require('lodash/omit');\n\nexport interface TableCellProps extends RendererProps {\n wrapperComponent?: React.ReactType;\n column: object;\n}\nexport class TableCell extends React.Component<RendererProps> {\n static defaultProps = {\n wrapperComponent: 'td'\n };\n\n static propsList: Array<string> = [\n 'type',\n 'label',\n 'column',\n 'body',\n 'tpl',\n 'rowSpan',\n 'remark'\n ];\n\n render() {\n let {\n className,\n render,\n style,\n wrapperComponent: Component,\n column,\n value,\n data,\n children,\n width,\n innerClassName,\n label,\n tabIndex,\n onKeyUp,\n rowSpan,\n body: _body,\n tpl,\n remark,\n prefix,\n affix,\n isHead,\n ...rest\n } = this.props;\n\n const schema = {\n ...column,\n className: innerClassName,\n type: (column && column.type) || 'plain'\n };\n\n // 如果本来就是 type 为 button,不要删除,其他情况下都应该删除。\n if (schema.type !== 'button' && schema.type !== 'dropdown-button') {\n delete schema.label;\n }\n\n let body = children\n ? children\n : render('field', schema, {\n ...omit(rest, Object.keys(schema)),\n inputOnly: true,\n value,\n data\n });\n\n if (width) {\n style = {\n ...style,\n width: (style && style.width) || width\n };\n\n if (!/%$/.test(String(style.width))) {\n body = (\n <div style={{width: style.width}}>\n {prefix}\n {body}\n {affix}\n </div>\n );\n prefix = null;\n affix = null;\n // delete style.width;\n }\n }\n\n if (!Component) {\n return body as JSX.Element;\n }\n\n if (isHead) {\n Component = 'th';\n }\n\n return (\n <Component\n rowSpan={rowSpan > 1 ? rowSpan : undefined}\n style={style}\n className={className}\n tabIndex={tabIndex}\n onKeyUp={onKeyUp}\n >\n {prefix}\n {body}\n {affix}\n </Component>\n );\n }\n}\n\n@Renderer({\n test: /(^|\\/)table\\/(?:.*\\/)?cell$/,\n name: 'table-cell'\n})\n@QuickEdit()\n@PopOverable({\n targetOutter: true\n})\n@Copyable()\n@observer\nexport class TableCellRenderer extends TableCell {\n static propsList = [\n 'quickEdit',\n 'quickEditEnabledOn',\n 'popOver',\n 'copyable',\n 'inline',\n ...TableCell.propsList\n ];\n}\n\n@Renderer({\n type: 'field',\n name: 'field'\n})\n@PopOverable()\n@Copyable()\nexport class FieldRenderer extends TableCell {\n static defaultProps = {\n ...TableCell.defaultProps,\n wrapperComponent: 'div'\n };\n}\n"
11
+ "import React from 'react';\nimport {RendererProps, Renderer} from '../../factory';\nimport QuickEdit from '../QuickEdit';\nimport Copyable from '../Copyable';\nimport PopOverable from '../PopOver';\nimport {observer} from 'mobx-react';\nimport omit = require('lodash/omit');\nimport {filter} from '../../utils/tpl';\n\nexport interface TableCellProps extends RendererProps {\n wrapperComponent?: React.ReactType;\n column: object;\n}\nexport class TableCell extends React.Component<RendererProps> {\n static defaultProps = {\n wrapperComponent: 'td'\n };\n\n static propsList: Array<string> = [\n 'type',\n 'label',\n 'column',\n 'body',\n 'tpl',\n 'rowSpan',\n 'remark'\n ];\n\n render() {\n let {\n classnames: cx,\n className,\n classNameExpr,\n render,\n style,\n wrapperComponent: Component,\n column,\n value,\n data,\n children,\n width,\n align,\n innerClassName,\n label,\n tabIndex,\n onKeyUp,\n rowSpan,\n body: _body,\n tpl,\n remark,\n prefix,\n affix,\n isHead,\n ...rest\n } = this.props;\n\n const schema = {\n ...column,\n className: innerClassName,\n type: (column && column.type) || 'plain'\n };\n\n // 如果本来就是 type 为 button,不要删除,其他情况下都应该删除。\n if (schema.type !== 'button' && schema.type !== 'dropdown-button') {\n delete schema.label;\n }\n\n let body = children\n ? children\n : render('field', schema, {\n ...omit(rest, Object.keys(schema)),\n inputOnly: true,\n value,\n data\n });\n\n if (width) {\n style = {\n ...style,\n width: (style && style.width) || width\n };\n\n if (!/%$/.test(String(style.width))) {\n body = (\n <div style={{width: style.width}}>\n {prefix}\n {body}\n {affix}\n </div>\n );\n prefix = null;\n affix = null;\n // delete style.width;\n }\n }\n\n if (align) {\n style = {\n ...style,\n textAlign: align\n };\n }\n\n if (!Component) {\n return body as JSX.Element;\n }\n\n if (isHead) {\n Component = 'th';\n }\n\n return (\n <Component\n rowSpan={rowSpan > 1 ? rowSpan : undefined}\n style={style}\n className={cx(\n className,\n column.classNameExpr ? filter(column.classNameExpr, data) : null\n )}\n tabIndex={tabIndex}\n onKeyUp={onKeyUp}\n >\n {prefix}\n {body}\n {affix}\n </Component>\n );\n }\n}\n\n@Renderer({\n test: /(^|\\/)table\\/(?:.*\\/)?cell$/,\n name: 'table-cell'\n})\n@QuickEdit()\n@PopOverable({\n targetOutter: true\n})\n@Copyable()\n@observer\nexport class TableCellRenderer extends TableCell {\n static propsList = [\n 'quickEdit',\n 'quickEditEnabledOn',\n 'popOver',\n 'copyable',\n 'inline',\n ...TableCell.propsList\n ];\n}\n\n@Renderer({\n type: 'field',\n name: 'field'\n})\n@PopOverable()\n@Copyable()\nexport class FieldRenderer extends TableCell {\n static defaultProps = {\n ...TableCell.defaultProps,\n wrapperComponent: 'div'\n };\n}\n"
12
12
  ]
13
13
  }
@@ -3,6 +3,7 @@ import { ClassNamesFn } from '../../theme';
3
3
  import { IColumn, IRow } from '../../store/table';
4
4
  import { SchemaNode, Action } from '../../types';
5
5
  import { LocaleProps } from '../../locale';
6
+ import { ActionSchema } from '../Action';
6
7
  export interface TableContentProps extends LocaleProps {
7
8
  className?: string;
8
9
  tableClassName?: string;
@@ -23,7 +24,7 @@ export interface TableContentProps extends LocaleProps {
23
24
  tableRef: (table?: HTMLTableElement | null) => void;
24
25
  renderHeadCell: (column: IColumn, props?: any) => JSX.Element;
25
26
  renderCell: (region: string, column: IColumn, item: IRow, props: any) => React.ReactNode;
26
- onCheck: (item: IRow) => void;
27
+ onCheck: (item: IRow, value: boolean, shift?: boolean) => void;
27
28
  onQuickChange?: (item: IRow, values: object, saveImmediately?: boolean | any, savePristine?: boolean) => void;
28
29
  footable?: boolean;
29
30
  footableColumns: Array<IColumn>;
@@ -35,6 +36,7 @@ export interface TableContentProps extends LocaleProps {
35
36
  data?: any;
36
37
  prefixRow?: Array<any>;
37
38
  affixRow?: Array<any>;
39
+ itemAction?: ActionSchema;
38
40
  }
39
41
  export declare class TableContent extends React.Component<TableContentProps> {
40
42
  render(): JSX.Element;
@@ -4,13 +4,14 @@ exports.TableContent = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
6
6
  var TableBody_1 = require("./TableBody");
7
+ var mobx_react_1 = require("mobx-react");
7
8
  var TableContent = /** @class */ (function (_super) {
8
9
  (0, tslib_1.__extends)(TableContent, _super);
9
10
  function TableContent() {
10
11
  return _super !== null && _super.apply(this, arguments) || this;
11
12
  }
12
13
  TableContent.prototype.render = function () {
13
- var _a = this.props, placeholder = _a.placeholder, cx = _a.classnames, render = _a.render, className = _a.className, columns = _a.columns, columnsGroup = _a.columnsGroup, onMouseMove = _a.onMouseMove, onScroll = _a.onScroll, tableRef = _a.tableRef, rows = _a.rows, renderHeadCell = _a.renderHeadCell, renderCell = _a.renderCell, onCheck = _a.onCheck, rowClassName = _a.rowClassName, onQuickChange = _a.onQuickChange, footable = _a.footable, footableColumns = _a.footableColumns, checkOnItemClick = _a.checkOnItemClick, buildItemProps = _a.buildItemProps, onAction = _a.onAction, rowClassNameExpr = _a.rowClassNameExpr, data = _a.data, prefixRow = _a.prefixRow, locale = _a.locale, translate = _a.translate, affixRow = _a.affixRow;
14
+ var _a = this.props, placeholder = _a.placeholder, cx = _a.classnames, render = _a.render, className = _a.className, columns = _a.columns, columnsGroup = _a.columnsGroup, onMouseMove = _a.onMouseMove, onScroll = _a.onScroll, tableRef = _a.tableRef, rows = _a.rows, renderHeadCell = _a.renderHeadCell, renderCell = _a.renderCell, onCheck = _a.onCheck, rowClassName = _a.rowClassName, onQuickChange = _a.onQuickChange, footable = _a.footable, footableColumns = _a.footableColumns, checkOnItemClick = _a.checkOnItemClick, buildItemProps = _a.buildItemProps, onAction = _a.onAction, rowClassNameExpr = _a.rowClassNameExpr, data = _a.data, prefixRow = _a.prefixRow, locale = _a.locale, translate = _a.translate, itemAction = _a.itemAction, affixRow = _a.affixRow;
14
15
  var tableClassName = cx('Table-table', this.props.tableClassName);
15
16
  var hideHeader = columns.every(function (column) { return !column.label; });
16
17
  return (react_1.default.createElement("div", { onMouseMove: onMouseMove, className: cx('Table-content', className), onScroll: onScroll },
@@ -28,8 +29,11 @@ var TableContent = /** @class */ (function (_super) {
28
29
  }))),
29
30
  !rows.length ? (react_1.default.createElement("tbody", null,
30
31
  react_1.default.createElement("tr", { className: cx('Table-placeholder') },
31
- react_1.default.createElement("td", { colSpan: columns.length }, render('placeholder', translate(placeholder || 'placeholder.noData')))))) : (react_1.default.createElement(TableBody_1.TableBody, { classnames: cx, render: render, renderCell: renderCell, onCheck: onCheck, onQuickChange: onQuickChange, footable: footable, footableColumns: footableColumns, checkOnItemClick: checkOnItemClick, buildItemProps: buildItemProps, onAction: onAction, rowClassNameExpr: rowClassNameExpr, rowClassName: rowClassName, rows: rows, columns: columns, locale: locale, translate: translate, prefixRow: prefixRow, affixRow: affixRow, data: data })))));
32
+ react_1.default.createElement("td", { colSpan: columns.length }, render('placeholder', translate(placeholder || 'placeholder.noData')))))) : (react_1.default.createElement(TableBody_1.TableBody, { itemAction: itemAction, classnames: cx, render: render, renderCell: renderCell, onCheck: onCheck, onQuickChange: onQuickChange, footable: footable, footableColumns: footableColumns, checkOnItemClick: checkOnItemClick, buildItemProps: buildItemProps, onAction: onAction, rowClassNameExpr: rowClassNameExpr, rowClassName: rowClassName, rows: rows, columns: columns, locale: locale, translate: translate, prefixRow: prefixRow, affixRow: affixRow, data: data })))));
32
33
  };
34
+ TableContent = (0, tslib_1.__decorate)([
35
+ mobx_react_1.observer
36
+ ], TableContent);
33
37
  return TableContent;
34
38
  }(react_1.default.Component));
35
39
  exports.TableContent = TableContent;
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Table/TableContent.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": ";;;;AAAA,6DAA0B;AAI1B,yCAAsC;AAEtC,yCAAoC;AAiDpC;IAAkC,6CAAkC;IAApE;;IA4GA,CAAC;IA3GC,6BAAM,GAAN;QACQ,IAAA,KA4BF,IAAI,CAAC,KAAK,EA3BZ,WAAW,iBAAA,EACC,EAAE,gBAAA,EACd,MAAM,YAAA,EACN,SAAS,eAAA,EACT,OAAO,aAAA,EACP,YAAY,kBAAA,EACZ,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,IAAI,UAAA,EACJ,cAAc,oBAAA,EACd,UAAU,gBAAA,EACV,OAAO,aAAA,EACP,YAAY,kBAAA,EACZ,aAAa,mBAAA,EACb,QAAQ,cAAA,EACR,eAAe,qBAAA,EACf,gBAAgB,sBAAA,EAChB,cAAc,oBAAA,EACd,QAAQ,cAAA,EACR,gBAAgB,sBAAA,EAChB,IAAI,UAAA,EACJ,SAAS,eAAA,EACT,MAAM,YAAA,EACN,SAAS,eAAA,EACT,UAAU,gBAAA,EACV,QAAQ,cACI,CAAC;QAEf,IAAM,cAAc,GAAG,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACpE,IAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAA,MAAM,IAAI,OAAA,CAAC,MAAM,CAAC,KAAK,EAAb,CAAa,CAAC,CAAC;QAE1D,OAAO,CACL,uCACE,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,EACzC,QAAQ,EAAE,QAAQ;YAElB,yCAAO,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc;gBAC7C;oBACG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CACrB,0CACG,YAAY,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK,IAAK,OAAA,CACjC,sCACE,GAAG,EAAE,KAAK,gBACE,IAAI,CAAC,KAAK,EACtB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,OAAO,IAEpB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAC3C,CACN,EATkC,CASlC,CAAC,CACC,CACN,CAAC,CAAC,CAAC,IAAI;oBACR,sCAAI,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IACzC,OAAO,CAAC,GAAG,CAAC,UAAA,MAAM;;wBACjB,OAAA,CAAA,MAAA,YAAY,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAA1B,CAA0B,CAAC,0CAClD,OAAO,MAAK,CAAC;4BACf,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE;gCACrB,YAAY,EAAE,MAAM,CAAC,KAAK;gCAC1B,KAAK,EAAE,MAAM,CAAC,KAAK;6BACpB,CAAC,CAAA;qBAAA,CACP,CACE,CACC;gBACP,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACd;oBACE,sCAAI,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC;wBACpC,sCAAI,OAAO,EAAE,OAAO,CAAC,MAAM,IACxB,MAAM,CACL,aAAa,EACb,SAAS,CAAC,WAAW,IAAI,oBAAoB,CAAC,CAC/C,CACE,CACF,CACC,CACT,CAAC,CAAC,CAAC,CACF,8BAAC,qBAAS,IACR,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,EAAE,EACd,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,GACC,CACd,CACK,CACJ,CACP,CAAC;IACJ,CAAC;IA3GU,YAAY;QADxB,qBAAQ;OACI,YAAY,CA4GxB;IAAD,mBAAC;CAAA,AA5GD,CAAkC,eAAK,CAAC,SAAS,GA4GhD;AA5GY,oCAAY",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {ClassNamesFn} from '../../theme';\nimport {IColumn, IRow} from '../../store/table';\nimport {SchemaNode, Action} from '../../types';\nimport {TableBody} from './TableBody';\nimport {LocaleProps} from '../../locale';\n\nexport interface TableContentProps extends LocaleProps {\n className?: string;\n tableClassName?: string;\n classnames: ClassNamesFn;\n columns: Array<IColumn>;\n columnsGroup: Array<{\n label: string;\n index: number;\n colSpan: number;\n rowSpan: number;\n has: Array<any>;\n }>;\n rows: Array<IRow>;\n placeholder?: string;\n render: (region: string, node: SchemaNode, props?: any) => JSX.Element;\n onMouseMove: (event: React.MouseEvent) => void;\n onScroll: (event: React.UIEvent) => void;\n tableRef: (table?: HTMLTableElement | null) => void;\n renderHeadCell: (column: IColumn, props?: any) => JSX.Element;\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => React.ReactNode;\n onCheck: (item: IRow) => void;\n onQuickChange?: (\n item: IRow,\n values: object,\n saveImmediately?: boolean | any,\n savePristine?: boolean\n ) => void;\n footable?: boolean;\n footableColumns: Array<IColumn>;\n checkOnItemClick?: boolean;\n buildItemProps?: (item: IRow, index: number) => any;\n onAction?: (e: React.UIEvent<any>, action: Action, ctx: object) => void;\n rowClassNameExpr?: string;\n rowClassName?: string;\n data?: any;\n prefixRow?: Array<any>;\n affixRow?: Array<any>;\n}\n\nexport class TableContent extends React.Component<TableContentProps> {\n render() {\n const {\n placeholder,\n classnames: cx,\n render,\n className,\n columns,\n columnsGroup,\n onMouseMove,\n onScroll,\n tableRef,\n rows,\n renderHeadCell,\n renderCell,\n onCheck,\n rowClassName,\n onQuickChange,\n footable,\n footableColumns,\n checkOnItemClick,\n buildItemProps,\n onAction,\n rowClassNameExpr,\n data,\n prefixRow,\n locale,\n translate,\n affixRow\n } = this.props;\n\n const tableClassName = cx('Table-table', this.props.tableClassName);\n const hideHeader = columns.every(column => !column.label);\n\n return (\n <div\n onMouseMove={onMouseMove}\n className={cx('Table-content', className)}\n onScroll={onScroll}\n >\n <table ref={tableRef} className={tableClassName}>\n <thead>\n {columnsGroup.length ? (\n <tr>\n {columnsGroup.map((item, index) => (\n <th\n key={index}\n data-index={item.index}\n colSpan={item.colSpan}\n rowSpan={item.rowSpan}\n >\n {item.label ? render('tpl', item.label) : null}\n </th>\n ))}\n </tr>\n ) : null}\n <tr className={hideHeader ? 'fake-hide' : ''}>\n {columns.map(column =>\n columnsGroup.find(group => ~group.has.indexOf(column))\n ?.rowSpan === 2\n ? null\n : renderHeadCell(column, {\n 'data-index': column.index,\n 'key': column.index\n })\n )}\n </tr>\n </thead>\n {!rows.length ? (\n <tbody>\n <tr className={cx('Table-placeholder')}>\n <td colSpan={columns.length}>\n {render(\n 'placeholder',\n translate(placeholder || 'placeholder.noData')\n )}\n </td>\n </tr>\n </tbody>\n ) : (\n <TableBody\n classnames={cx}\n render={render}\n renderCell={renderCell}\n onCheck={onCheck}\n onQuickChange={onQuickChange}\n footable={footable}\n footableColumns={footableColumns}\n checkOnItemClick={checkOnItemClick}\n buildItemProps={buildItemProps}\n onAction={onAction}\n rowClassNameExpr={rowClassNameExpr}\n rowClassName={rowClassName}\n rows={rows}\n columns={columns}\n locale={locale}\n translate={translate}\n prefixRow={prefixRow}\n affixRow={affixRow}\n data={data}\n ></TableBody>\n )}\n </table>\n </div>\n );\n }\n}\n"
11
+ "import React from 'react';\nimport {ClassNamesFn} from '../../theme';\nimport {IColumn, IRow} from '../../store/table';\nimport {SchemaNode, Action} from '../../types';\nimport {TableBody} from './TableBody';\nimport {LocaleProps} from '../../locale';\nimport {observer} from 'mobx-react';\nimport {ActionSchema} from '../Action';\n\nexport interface TableContentProps extends LocaleProps {\n className?: string;\n tableClassName?: string;\n classnames: ClassNamesFn;\n columns: Array<IColumn>;\n columnsGroup: Array<{\n label: string;\n index: number;\n colSpan: number;\n rowSpan: number;\n has: Array<any>;\n }>;\n rows: Array<IRow>;\n placeholder?: string;\n render: (region: string, node: SchemaNode, props?: any) => JSX.Element;\n onMouseMove: (event: React.MouseEvent) => void;\n onScroll: (event: React.UIEvent) => void;\n tableRef: (table?: HTMLTableElement | null) => void;\n renderHeadCell: (column: IColumn, props?: any) => JSX.Element;\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => React.ReactNode;\n onCheck: (item: IRow, value: boolean, shift?: boolean) => void;\n onQuickChange?: (\n item: IRow,\n values: object,\n saveImmediately?: boolean | any,\n savePristine?: boolean\n ) => void;\n footable?: boolean;\n footableColumns: Array<IColumn>;\n checkOnItemClick?: boolean;\n buildItemProps?: (item: IRow, index: number) => any;\n onAction?: (e: React.UIEvent<any>, action: Action, ctx: object) => void;\n rowClassNameExpr?: string;\n rowClassName?: string;\n data?: any;\n prefixRow?: Array<any>;\n affixRow?: Array<any>;\n itemAction?: ActionSchema;\n}\n\n@observer\nexport class TableContent extends React.Component<TableContentProps> {\n render() {\n const {\n placeholder,\n classnames: cx,\n render,\n className,\n columns,\n columnsGroup,\n onMouseMove,\n onScroll,\n tableRef,\n rows,\n renderHeadCell,\n renderCell,\n onCheck,\n rowClassName,\n onQuickChange,\n footable,\n footableColumns,\n checkOnItemClick,\n buildItemProps,\n onAction,\n rowClassNameExpr,\n data,\n prefixRow,\n locale,\n translate,\n itemAction,\n affixRow\n } = this.props;\n\n const tableClassName = cx('Table-table', this.props.tableClassName);\n const hideHeader = columns.every(column => !column.label);\n\n return (\n <div\n onMouseMove={onMouseMove}\n className={cx('Table-content', className)}\n onScroll={onScroll}\n >\n <table ref={tableRef} className={tableClassName}>\n <thead>\n {columnsGroup.length ? (\n <tr>\n {columnsGroup.map((item, index) => (\n <th\n key={index}\n data-index={item.index}\n colSpan={item.colSpan}\n rowSpan={item.rowSpan}\n >\n {item.label ? render('tpl', item.label) : null}\n </th>\n ))}\n </tr>\n ) : null}\n <tr className={hideHeader ? 'fake-hide' : ''}>\n {columns.map(column =>\n columnsGroup.find(group => ~group.has.indexOf(column))\n ?.rowSpan === 2\n ? null\n : renderHeadCell(column, {\n 'data-index': column.index,\n 'key': column.index\n })\n )}\n </tr>\n </thead>\n {!rows.length ? (\n <tbody>\n <tr className={cx('Table-placeholder')}>\n <td colSpan={columns.length}>\n {render(\n 'placeholder',\n translate(placeholder || 'placeholder.noData')\n )}\n </td>\n </tr>\n </tbody>\n ) : (\n <TableBody\n itemAction={itemAction}\n classnames={cx}\n render={render}\n renderCell={renderCell}\n onCheck={onCheck}\n onQuickChange={onQuickChange}\n footable={footable}\n footableColumns={footableColumns}\n checkOnItemClick={checkOnItemClick}\n buildItemProps={buildItemProps}\n onAction={onAction}\n rowClassNameExpr={rowClassNameExpr}\n rowClassName={rowClassName}\n rows={rows}\n columns={columns}\n locale={locale}\n translate={translate}\n prefixRow={prefixRow}\n affixRow={affixRow}\n data={data}\n ></TableBody>\n )}\n </table>\n </div>\n );\n }\n}\n"
12
12
  ]
13
13
  }
@@ -18,7 +18,7 @@ interface TableRowProps extends Pick<RendererProps, 'render'> {
18
18
  }
19
19
  export declare class TableRow extends React.Component<TableRowProps> {
20
20
  constructor(props: TableRowProps);
21
- handleClick(e: React.MouseEvent<HTMLTableRowElement>): void;
21
+ handleItemClick(e: React.MouseEvent<HTMLTableRowElement>): void;
22
22
  handleAction(e: React.UIEvent<any>, action: Action, ctx: any): void;
23
23
  handleQuickChange(values: object, saveImmediately?: boolean, savePristine?: boolean, resetOnFailed?: boolean): void;
24
24
  handleChange(value: any, name: string, submit?: boolean, changePristine?: boolean): void;
@@ -4,6 +4,7 @@ exports.TableRow = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var mobx_react_1 = require("mobx-react");
6
6
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
7
+ var helper_1 = require("../../utils/helper");
7
8
  var TableRow = /** @class */ (function (_super) {
8
9
  (0, tslib_1.__extends)(TableRow, _super);
9
10
  // reaction?: () => void;
@@ -12,19 +13,18 @@ var TableRow = /** @class */ (function (_super) {
12
13
  _this.handleAction = _this.handleAction.bind(_this);
13
14
  _this.handleQuickChange = _this.handleQuickChange.bind(_this);
14
15
  _this.handleChange = _this.handleChange.bind(_this);
15
- _this.handleClick = _this.handleClick.bind(_this);
16
+ _this.handleItemClick = _this.handleItemClick.bind(_this);
16
17
  return _this;
17
18
  }
18
- TableRow.prototype.handleClick = function (e) {
19
- var target = e.target;
20
- var ns = this.props.classPrefix;
21
- var formItem;
22
- if (!e.currentTarget.contains(target) ||
23
- ~['INPUT', 'TEXTAREA'].indexOf(target.tagName) ||
24
- ((formItem = target.closest("button, a, [data-role=\"form-item\"]")) &&
25
- e.currentTarget.contains(formItem))) {
19
+ // 定义点击一行的行为,通过 itemAction配置
20
+ TableRow.prototype.handleItemClick = function (e) {
21
+ if ((0, helper_1.isClickOnInput)(e)) {
26
22
  return;
27
23
  }
24
+ var _a = this.props, itemAction = _a.itemAction, onAction = _a.onAction, item = _a.item;
25
+ if (itemAction) {
26
+ onAction && onAction(e, itemAction, item === null || item === void 0 ? void 0 : item.data);
27
+ }
28
28
  this.props.onCheck(this.props.item);
29
29
  };
30
30
  TableRow.prototype.handleAction = function (e, action, ctx) {
@@ -49,18 +49,18 @@ var TableRow = /** @class */ (function (_super) {
49
49
  TableRow.prototype.render = function () {
50
50
  var _a, _b;
51
51
  var _this = this;
52
- var _c = this.props, itemClassName = _c.itemClassName, itemIndex = _c.itemIndex, item = _c.item, columns = _c.columns, renderCell = _c.renderCell, children = _c.children, footableMode = _c.footableMode, ignoreFootableContent = _c.ignoreFootableContent, footableColSpan = _c.footableColSpan, regionPrefix = _c.regionPrefix, checkOnItemClick = _c.checkOnItemClick, ns = _c.classPrefix, render = _c.render, cx = _c.classnames, parent = _c.parent, rest = (0, tslib_1.__rest)(_c, ["itemClassName", "itemIndex", "item", "columns", "renderCell", "children", "footableMode", "ignoreFootableContent", "footableColSpan", "regionPrefix", "checkOnItemClick", "classPrefix", "render", "classnames", "parent"]);
53
- // console.log('TableRow');
52
+ var _c = this.props, itemClassName = _c.itemClassName, itemIndex = _c.itemIndex, item = _c.item, columns = _c.columns, renderCell = _c.renderCell, children = _c.children, footableMode = _c.footableMode, ignoreFootableContent = _c.ignoreFootableContent, footableColSpan = _c.footableColSpan, regionPrefix = _c.regionPrefix, checkOnItemClick = _c.checkOnItemClick, ns = _c.classPrefix, render = _c.render, cx = _c.classnames, parent = _c.parent, itemAction = _c.itemAction, rest = (0, tslib_1.__rest)(_c, ["itemClassName", "itemIndex", "item", "columns", "renderCell", "children", "footableMode", "ignoreFootableContent", "footableColSpan", "regionPrefix", "checkOnItemClick", "classPrefix", "render", "classnames", "parent", "itemAction"]);
54
53
  if (footableMode) {
55
54
  if (!item.expanded) {
56
55
  return null;
57
56
  }
58
- return (react_1.default.createElement("tr", { "data-id": item.id, "data-index": item.newIndex, onClick: checkOnItemClick ? this.handleClick : undefined, className: cx(itemClassName, (_a = {
57
+ return (react_1.default.createElement("tr", { "data-id": item.id, "data-index": item.newIndex, onClick: checkOnItemClick || itemAction ? this.handleItemClick : undefined, className: cx(itemClassName, (_a = {
59
58
  'is-hovered': item.isHover,
60
59
  'is-checked': item.checked,
61
60
  'is-modified': item.modified,
62
61
  'is-moved': item.moved
63
62
  },
63
+ _a["Table-tr--hasItemAction"] = itemAction,
64
64
  _a["Table-tr--odd"] = itemIndex % 2 === 0,
65
65
  _a["Table-tr--even"] = itemIndex % 2 === 1,
66
66
  _a)) },
@@ -77,7 +77,7 @@ var TableRow = /** @class */ (function (_super) {
77
77
  if (parent && !parent.expanded) {
78
78
  return null;
79
79
  }
80
- return (react_1.default.createElement("tr", { onClick: checkOnItemClick ? this.handleClick : undefined, "data-index": item.depth === 1 ? item.newIndex : undefined, "data-id": item.id, className: cx(itemClassName, (_b = {
80
+ return (react_1.default.createElement("tr", { onClick: checkOnItemClick || itemAction ? this.handleItemClick : undefined, "data-index": item.depth === 1 ? item.newIndex : undefined, "data-id": item.id, className: cx(itemClassName, (_b = {
81
81
  'is-hovered': item.isHover,
82
82
  'is-checked': item.checked,
83
83
  'is-modified': item.modified,
@@ -85,6 +85,7 @@ var TableRow = /** @class */ (function (_super) {
85
85
  'is-expanded': item.expanded,
86
86
  'is-expandable': item.expandable
87
87
  },
88
+ _b["Table-tr--hasItemAction"] = itemAction,
88
89
  _b["Table-tr--odd"] = itemIndex % 2 === 0,
89
90
  _b["Table-tr--even"] = itemIndex % 2 === 1,
90
91
  _b), "Table-tr--" + item.depth + "th") }, columns.map(function (column) {
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Table/TableRow.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import {observer} from 'mobx-react';\nimport React from 'react';\nimport {IRow, IColumn} from '../../store/table';\nimport {RendererProps} from '../../factory';\nimport {Action} from '../Action';\nimport {reaction} from 'mobx';\n\ninterface TableRowProps extends Pick<RendererProps, 'render'> {\n onCheck: (item: IRow) => void;\n classPrefix: string;\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => React.ReactNode;\n columns: Array<IColumn>;\n item: IRow;\n parent?: IRow;\n itemClassName?: string;\n itemIndex: number;\n regionPrefix?: string;\n checkOnItemClick?: boolean;\n ignoreFootableContent?: boolean;\n [propName: string]: any;\n}\n\n@observer\nexport class TableRow extends React.Component<TableRowProps> {\n // reaction?: () => void;\n constructor(props: TableRowProps) {\n super(props);\n this.handleAction = this.handleAction.bind(this);\n this.handleQuickChange = this.handleQuickChange.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.handleClick = this.handleClick.bind(this);\n }\n\n handleClick(e: React.MouseEvent<HTMLTableRowElement>) {\n const target: HTMLElement = e.target as HTMLElement;\n const ns = this.props.classPrefix;\n let formItem;\n\n if (\n !e.currentTarget.contains(target) ||\n ~['INPUT', 'TEXTAREA'].indexOf(target.tagName) ||\n ((formItem = target.closest(`button, a, [data-role=\"form-item\"]`)) &&\n e.currentTarget.contains(formItem))\n ) {\n return;\n }\n\n this.props.onCheck(this.props.item);\n }\n\n handleAction(e: React.UIEvent<any>, action: Action, ctx: any) {\n const {onAction, item} = this.props;\n onAction && onAction(e, action, ctx || item.data);\n }\n\n handleQuickChange(\n values: object,\n saveImmediately?: boolean,\n savePristine?: boolean,\n resetOnFailed?: boolean\n ) {\n const {onQuickChange, item} = this.props;\n onQuickChange &&\n onQuickChange(item, values, saveImmediately, savePristine, resetOnFailed);\n }\n\n handleChange(\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) {\n if (!name || typeof name !== 'string') {\n return;\n }\n\n const {item, onQuickChange} = this.props;\n\n onQuickChange?.(\n item,\n {\n [name]: value\n },\n submit,\n changePristine\n );\n }\n\n render() {\n const {\n itemClassName,\n itemIndex,\n item,\n columns,\n renderCell,\n children,\n footableMode,\n ignoreFootableContent,\n footableColSpan,\n regionPrefix,\n checkOnItemClick,\n classPrefix: ns,\n render,\n classnames: cx,\n parent,\n ...rest\n } = this.props;\n\n // console.log('TableRow');\n\n if (footableMode) {\n if (!item.expanded) {\n return null;\n }\n\n return (\n <tr\n data-id={item.id}\n data-index={item.newIndex}\n onClick={checkOnItemClick ? this.handleClick : undefined}\n className={cx(itemClassName, {\n 'is-hovered': item.isHover,\n 'is-checked': item.checked,\n 'is-modified': item.modified,\n 'is-moved': item.moved,\n [`Table-tr--odd`]: itemIndex % 2 === 0,\n [`Table-tr--even`]: itemIndex % 2 === 1\n })}\n >\n <td className={cx(`Table-foot`)} colSpan={footableColSpan}>\n <table className={cx(`Table-footTable`)}>\n <tbody>\n {ignoreFootableContent\n ? columns.map(column => (\n <tr key={column.index}>\n {column.label !== false ? <th></th> : null}\n <td></td>\n </tr>\n ))\n : columns.map(column => (\n <tr key={column.index}>\n {column.label !== false ? (\n <th>\n {render(\n `${regionPrefix}${itemIndex}/${column.index}/tpl`,\n column.label\n )}\n </th>\n ) : null}\n\n {renderCell(\n `${regionPrefix}${itemIndex}/${column.index}`,\n column,\n item,\n {\n ...rest,\n width: null,\n rowIndex: itemIndex,\n colIndex: column.index,\n key: column.index,\n onAction: this.handleAction,\n onQuickChange: this.handleQuickChange,\n onChange: this.handleChange\n }\n )}\n </tr>\n ))}\n </tbody>\n </table>\n </td>\n </tr>\n );\n }\n\n if (parent && !parent.expanded) {\n return null;\n }\n\n return (\n <tr\n onClick={checkOnItemClick ? this.handleClick : undefined}\n data-index={item.depth === 1 ? item.newIndex : undefined}\n data-id={item.id}\n className={cx(\n itemClassName,\n {\n 'is-hovered': item.isHover,\n 'is-checked': item.checked,\n 'is-modified': item.modified,\n 'is-moved': item.moved,\n 'is-expanded': item.expanded,\n 'is-expandable': item.expandable,\n [`Table-tr--odd`]: itemIndex % 2 === 0,\n [`Table-tr--even`]: itemIndex % 2 === 1\n },\n `Table-tr--${item.depth}th`\n )}\n >\n {columns.map(column =>\n renderCell(`${itemIndex}/${column.index}`, column, item, {\n ...rest,\n rowIndex: itemIndex,\n colIndex: column.index,\n key: column.index,\n onAction: this.handleAction,\n onQuickChange: this.handleQuickChange,\n onChange: this.handleChange\n })\n )}\n </tr>\n );\n }\n}\n"
11
+ "import {observer} from 'mobx-react';\nimport React from 'react';\nimport {IRow, IColumn} from '../../store/table';\nimport {RendererProps} from '../../factory';\nimport {Action} from '../Action';\nimport {reaction} from 'mobx';\nimport {isClickOnInput} from '../../utils/helper';\n\ninterface TableRowProps extends Pick<RendererProps, 'render'> {\n onCheck: (item: IRow) => void;\n classPrefix: string;\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => React.ReactNode;\n columns: Array<IColumn>;\n item: IRow;\n parent?: IRow;\n itemClassName?: string;\n itemIndex: number;\n regionPrefix?: string;\n checkOnItemClick?: boolean;\n ignoreFootableContent?: boolean;\n [propName: string]: any;\n}\n\n@observer\nexport class TableRow extends React.Component<TableRowProps> {\n // reaction?: () => void;\n constructor(props: TableRowProps) {\n super(props);\n this.handleAction = this.handleAction.bind(this);\n this.handleQuickChange = this.handleQuickChange.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.handleItemClick = this.handleItemClick.bind(this);\n }\n\n // 定义点击一行的行为,通过 itemAction配置\n handleItemClick(e: React.MouseEvent<HTMLTableRowElement>) {\n if (isClickOnInput(e)) {\n return;\n }\n const {itemAction, onAction, item} = this.props;\n if (itemAction) {\n onAction && onAction(e, itemAction, item?.data);\n }\n this.props.onCheck(this.props.item);\n }\n\n handleAction(e: React.UIEvent<any>, action: Action, ctx: any) {\n const {onAction, item} = this.props;\n onAction && onAction(e, action, ctx || item.data);\n }\n\n handleQuickChange(\n values: object,\n saveImmediately?: boolean,\n savePristine?: boolean,\n resetOnFailed?: boolean\n ) {\n const {onQuickChange, item} = this.props;\n onQuickChange &&\n onQuickChange(item, values, saveImmediately, savePristine, resetOnFailed);\n }\n\n handleChange(\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) {\n if (!name || typeof name !== 'string') {\n return;\n }\n\n const {item, onQuickChange} = this.props;\n\n onQuickChange?.(\n item,\n {\n [name]: value\n },\n submit,\n changePristine\n );\n }\n\n render() {\n const {\n itemClassName,\n itemIndex,\n item,\n columns,\n renderCell,\n children,\n footableMode,\n ignoreFootableContent,\n footableColSpan,\n regionPrefix,\n checkOnItemClick,\n classPrefix: ns,\n render,\n classnames: cx,\n parent,\n itemAction,\n ...rest\n } = this.props;\n\n if (footableMode) {\n if (!item.expanded) {\n return null;\n }\n\n return (\n <tr\n data-id={item.id}\n data-index={item.newIndex}\n onClick={\n checkOnItemClick || itemAction ? this.handleItemClick : undefined\n }\n className={cx(itemClassName, {\n 'is-hovered': item.isHover,\n 'is-checked': item.checked,\n 'is-modified': item.modified,\n 'is-moved': item.moved,\n [`Table-tr--hasItemAction`]: itemAction, // 就是为了加鼠标效果\n [`Table-tr--odd`]: itemIndex % 2 === 0,\n [`Table-tr--even`]: itemIndex % 2 === 1\n })}\n >\n <td className={cx(`Table-foot`)} colSpan={footableColSpan}>\n <table className={cx(`Table-footTable`)}>\n <tbody>\n {ignoreFootableContent\n ? columns.map(column => (\n <tr key={column.index}>\n {column.label !== false ? <th></th> : null}\n <td></td>\n </tr>\n ))\n : columns.map(column => (\n <tr key={column.index}>\n {column.label !== false ? (\n <th>\n {render(\n `${regionPrefix}${itemIndex}/${column.index}/tpl`,\n column.label\n )}\n </th>\n ) : null}\n\n {renderCell(\n `${regionPrefix}${itemIndex}/${column.index}`,\n column,\n item,\n {\n ...rest,\n width: null,\n rowIndex: itemIndex,\n colIndex: column.index,\n key: column.index,\n onAction: this.handleAction,\n onQuickChange: this.handleQuickChange,\n onChange: this.handleChange\n }\n )}\n </tr>\n ))}\n </tbody>\n </table>\n </td>\n </tr>\n );\n }\n\n if (parent && !parent.expanded) {\n return null;\n }\n\n return (\n <tr\n onClick={\n checkOnItemClick || itemAction ? this.handleItemClick : undefined\n }\n data-index={item.depth === 1 ? item.newIndex : undefined}\n data-id={item.id}\n className={cx(\n itemClassName,\n {\n 'is-hovered': item.isHover,\n 'is-checked': item.checked,\n 'is-modified': item.modified,\n 'is-moved': item.moved,\n 'is-expanded': item.expanded,\n 'is-expandable': item.expandable,\n [`Table-tr--hasItemAction`]: itemAction,\n [`Table-tr--odd`]: itemIndex % 2 === 0,\n [`Table-tr--even`]: itemIndex % 2 === 1\n },\n `Table-tr--${item.depth}th`\n )}\n >\n {columns.map(column =>\n renderCell(`${itemIndex}/${column.index}`, column, item, {\n ...rest,\n rowIndex: itemIndex,\n colIndex: column.index,\n key: column.index,\n onAction: this.handleAction,\n onQuickChange: this.handleQuickChange,\n onChange: this.handleChange\n })\n )}\n </tr>\n );\n }\n}\n"
12
12
  ]
13
13
  }
@@ -4,7 +4,7 @@ import { SchemaNode, Action } from '../../types';
4
4
  import { ITableStore, IColumn, IRow } from '../../store/table';
5
5
  import Sortable from 'sortablejs';
6
6
  import { TableCell } from './TableCell';
7
- import { BaseSchema, SchemaClassName, SchemaObject, SchemaTokenizeableString } from '../../Schema';
7
+ import { BaseSchema, SchemaApi, SchemaClassName, SchemaObject, SchemaTokenizeableString } from '../../Schema';
8
8
  import { SchemaPopOver } from '../PopOver';
9
9
  import { SchemaQuickEdit } from '../QuickEdit';
10
10
  import { SchemaCopyable } from '../Copyable';
@@ -57,6 +57,22 @@ export declare type TableColumnObject = {
57
57
  * 列宽度
58
58
  */
59
59
  width?: number | string;
60
+ /**
61
+ * 列对齐方式
62
+ */
63
+ align?: 'left' | 'right' | 'center' | 'justify';
64
+ /**
65
+ * 列样式表
66
+ */
67
+ className?: string;
68
+ /**
69
+ * 单元格样式表达式
70
+ */
71
+ classNameExpr?: string;
72
+ /**
73
+ * 列头样式表
74
+ */
75
+ labelClassName?: string;
60
76
  /**
61
77
  * todo
62
78
  */
@@ -171,6 +187,10 @@ export interface TableSchema extends BaseSchema {
171
187
  * 是否可调整列宽
172
188
  */
173
189
  resizable?: boolean;
190
+ /**
191
+ * 行样式表表达式
192
+ */
193
+ rowClassNameExpr?: string;
174
194
  }
175
195
  export interface TableProps extends RendererProps {
176
196
  title?: string;
@@ -226,6 +246,11 @@ export interface TableProps extends RendererProps {
226
246
  canAccessSuperData?: boolean;
227
247
  reUseRow?: boolean;
228
248
  }
249
+ declare type ExportExcelToolbar = SchemaNode & {
250
+ api?: SchemaApi;
251
+ columns?: string[];
252
+ filename?: string;
253
+ };
229
254
  export default class Table extends React.Component<TableProps, object> {
230
255
  static propsList: Array<string>;
231
256
  static defaultProps: Partial<TableProps>;
@@ -259,7 +284,7 @@ export default class Table extends React.Component<TableProps, object> {
259
284
  componentWillUnmount(): void;
260
285
  subFormRef(form: any, x: number, y: number): void;
261
286
  handleAction(e: React.UIEvent<any>, action: Action, ctx: object): void;
262
- handleCheck(item: IRow): void;
287
+ handleCheck(item: IRow, value: boolean, shift?: boolean): void;
263
288
  handleCheckAll(): void;
264
289
  handleQuickChange(item: IRow, values: object, saveImmediately?: boolean | any, savePristine?: boolean, resetOnFailed?: boolean): void;
265
290
  handleSave(): Promise<void>;
@@ -306,7 +331,7 @@ export default class Table extends React.Component<TableProps, object> {
306
331
  renderToolbar(toolbar: SchemaNode): JSX.Element | null | undefined;
307
332
  renderColumnsToggler(config?: any): JSX.Element | null;
308
333
  renderDragToggler(): JSX.Element | null;
309
- renderExportExcel(toolbar: SchemaNode): JSX.Element | null;
334
+ renderExportExcel(toolbar: ExportExcelToolbar): JSX.Element | null;
310
335
  renderActions(region: string): JSX.Element | null;
311
336
  renderHeader(editable?: boolean): JSX.Element | JSX.Element[] | null;
312
337
  renderFooter(): JSX.Element | JSX.Element[] | null;