@nocobase/client 0.7.2-alpha.6 → 0.7.4-alpha.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 (149) hide show
  1. package/es/application/Application.d.ts +1 -0
  2. package/es/application/Application.js +7 -1
  3. package/es/block-provider/FormBlockProvider.js +8 -3
  4. package/es/block-provider/TableFieldProvider.d.ts +1 -0
  5. package/es/block-provider/TableFieldProvider.js +5 -2
  6. package/es/block-provider/TableSelectorProvider.js +41 -13
  7. package/es/block-provider/hooks/index.d.ts +6 -0
  8. package/es/block-provider/hooks/index.js +159 -65
  9. package/es/collection-manager/CollectionField.js +4 -2
  10. package/es/collection-manager/Configuration/index.js +5 -1
  11. package/es/collection-manager/Configuration/schemas/collections.js +2 -1
  12. package/es/collection-manager/interfaces/input.js +103 -0
  13. package/es/collection-manager/interfaces/integer.js +63 -0
  14. package/es/collection-manager/interfaces/m2m.js +2 -0
  15. package/es/collection-manager/interfaces/m2o.js +1 -0
  16. package/es/collection-manager/interfaces/markdown.js +34 -0
  17. package/es/collection-manager/interfaces/number.js +55 -0
  18. package/es/collection-manager/interfaces/o2m.js +1 -0
  19. package/es/collection-manager/interfaces/o2o.js +3 -0
  20. package/es/collection-manager/interfaces/password.js +36 -1
  21. package/es/collection-manager/interfaces/percent.js +97 -0
  22. package/es/collection-manager/interfaces/properties/index.d.ts +1 -0
  23. package/es/collection-manager/interfaces/properties/index.js +1 -0
  24. package/es/collection-manager/interfaces/properties/operators.js +4 -4
  25. package/es/collection-manager/interfaces/richText.js +34 -0
  26. package/es/collection-manager/interfaces/textarea.js +34 -0
  27. package/es/file-manager/FileStorageShortcut.js +2 -2
  28. package/es/locale/en_US.d.ts +8 -2
  29. package/es/locale/en_US.js +9 -3
  30. package/es/locale/zh_CN.d.ts +26 -2
  31. package/es/locale/zh_CN.js +27 -3
  32. package/es/plugin-manager/PluginManager.d.ts +1 -0
  33. package/es/plugin-manager/PluginManager.js +20 -6
  34. package/es/schema-component/antd/action/Action.Modal.js +1 -1
  35. package/es/schema-component/antd/calendar/Calendar.Designer.js +16 -10
  36. package/es/schema-component/antd/date-picker/DatePicker.d.ts +1 -1
  37. package/es/schema-component/antd/date-picker/DatePicker.js +1 -1
  38. package/es/schema-component/antd/date-picker/ReadPretty.js +1 -1
  39. package/es/schema-component/antd/date-picker/util.d.ts +0 -10
  40. package/es/schema-component/antd/date-picker/util.js +1 -79
  41. package/es/schema-component/antd/form-item/FormItem.js +161 -10
  42. package/es/schema-component/antd/grid/Grid.js +72 -6
  43. package/es/schema-component/antd/input-number/InputNumber.d.ts +1 -5
  44. package/es/schema-component/antd/input-number/InputNumber.js +25 -1
  45. package/es/schema-component/antd/input-number/ReadPretty.js +2 -4
  46. package/es/schema-component/antd/kanban/Kanban.Card.Designer.js +20 -14
  47. package/es/schema-component/antd/menu/Menu.js +6 -3
  48. package/es/schema-component/antd/percent/Percent.js +2 -2
  49. package/es/schema-component/antd/record-picker/InputRecordPicker.js +27 -13
  50. package/es/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +5 -3
  51. package/es/schema-component/antd/table/Table.Array.js +2 -2
  52. package/es/schema-component/antd/table/Table.Void.js +11 -1
  53. package/es/schema-component/antd/table-v2/Table.Column.Designer.js +3 -1
  54. package/es/schema-component/antd/table-v2/Table.d.ts +0 -11
  55. package/es/schema-component/antd/table-v2/Table.js +163 -92
  56. package/es/schema-component/antd/table-v2/TableField.js +3 -0
  57. package/es/schema-component/antd/tabs/Tabs.Designer.js +23 -12
  58. package/es/schema-component/antd/tabs/Tabs.js +7 -1
  59. package/es/schema-component/antd/time-picker/ReadPretty.js +11 -5
  60. package/es/schema-component/core/DesignableSwitch.js +7 -1
  61. package/es/schema-component/hooks/useDesignable.js +21 -21
  62. package/es/schema-component/hooks/useProps.js +1 -1
  63. package/es/schema-initializer/buttons/FormItemInitializers.js +14 -3
  64. package/es/schema-initializer/buttons/ReadPrettyFormActionInitializers.js +8 -0
  65. package/es/schema-initializer/buttons/ReadPrettyFormItemInitializers.js +14 -3
  66. package/es/schema-initializer/buttons/RecordBlockInitializers.js +32 -3
  67. package/es/schema-initializer/buttons/TabPaneInitializers.js +11 -3
  68. package/es/schema-initializer/buttons/TableActionInitializers.js +11 -0
  69. package/es/schema-initializer/components/assigned-field/AssignedField.d.ts +4 -0
  70. package/es/schema-initializer/components/assigned-field/AssignedField.js +255 -69
  71. package/es/schema-initializer/items/index.d.ts +2 -0
  72. package/es/schema-initializer/items/index.js +48 -2
  73. package/es/schema-initializer/utils.js +22 -2
  74. package/es/system-settings/SystemSettingsShortcut.js +35 -12
  75. package/lib/application/Application.d.ts +1 -0
  76. package/lib/application/Application.js +11 -2
  77. package/lib/block-provider/FormBlockProvider.js +7 -2
  78. package/lib/block-provider/TableFieldProvider.d.ts +1 -0
  79. package/lib/block-provider/TableFieldProvider.js +4 -1
  80. package/lib/block-provider/TableSelectorProvider.js +41 -13
  81. package/lib/block-provider/hooks/index.d.ts +6 -0
  82. package/lib/block-provider/hooks/index.js +168 -67
  83. package/lib/collection-manager/CollectionField.js +5 -2
  84. package/lib/collection-manager/Configuration/index.js +5 -0
  85. package/lib/collection-manager/Configuration/schemas/collections.js +2 -1
  86. package/lib/collection-manager/interfaces/input.js +104 -0
  87. package/lib/collection-manager/interfaces/integer.js +65 -0
  88. package/lib/collection-manager/interfaces/m2m.js +2 -0
  89. package/lib/collection-manager/interfaces/m2o.js +1 -0
  90. package/lib/collection-manager/interfaces/markdown.js +35 -0
  91. package/lib/collection-manager/interfaces/number.js +56 -0
  92. package/lib/collection-manager/interfaces/o2m.js +1 -0
  93. package/lib/collection-manager/interfaces/o2o.js +3 -0
  94. package/lib/collection-manager/interfaces/password.js +37 -1
  95. package/lib/collection-manager/interfaces/percent.js +99 -0
  96. package/lib/collection-manager/interfaces/properties/index.d.ts +1 -0
  97. package/lib/collection-manager/interfaces/properties/index.js +1 -0
  98. package/lib/collection-manager/interfaces/properties/operators.js +4 -4
  99. package/lib/collection-manager/interfaces/richText.js +35 -0
  100. package/lib/collection-manager/interfaces/textarea.js +35 -0
  101. package/lib/file-manager/FileStorageShortcut.js +1 -1
  102. package/lib/locale/en_US.d.ts +8 -2
  103. package/lib/locale/en_US.js +9 -3
  104. package/lib/locale/zh_CN.d.ts +26 -2
  105. package/lib/locale/zh_CN.js +27 -3
  106. package/lib/plugin-manager/PluginManager.d.ts +1 -0
  107. package/lib/plugin-manager/PluginManager.js +23 -5
  108. package/lib/schema-component/antd/action/Action.Modal.js +1 -1
  109. package/lib/schema-component/antd/calendar/Calendar.Designer.js +16 -10
  110. package/lib/schema-component/antd/date-picker/DatePicker.d.ts +1 -1
  111. package/lib/schema-component/antd/date-picker/DatePicker.js +2 -2
  112. package/lib/schema-component/antd/date-picker/ReadPretty.js +6 -6
  113. package/lib/schema-component/antd/date-picker/util.d.ts +0 -10
  114. package/lib/schema-component/antd/date-picker/util.js +6 -89
  115. package/lib/schema-component/antd/form-item/FormItem.js +164 -12
  116. package/lib/schema-component/antd/grid/Grid.js +69 -3
  117. package/lib/schema-component/antd/input-number/InputNumber.d.ts +1 -5
  118. package/lib/schema-component/antd/input-number/InputNumber.js +28 -1
  119. package/lib/schema-component/antd/input-number/ReadPretty.js +2 -5
  120. package/lib/schema-component/antd/kanban/Kanban.Card.Designer.js +20 -14
  121. package/lib/schema-component/antd/menu/Menu.js +6 -3
  122. package/lib/schema-component/antd/percent/Percent.js +2 -2
  123. package/lib/schema-component/antd/record-picker/InputRecordPicker.js +27 -12
  124. package/lib/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +4 -2
  125. package/lib/schema-component/antd/table/Table.Array.js +2 -2
  126. package/lib/schema-component/antd/table/Table.Void.js +11 -1
  127. package/lib/schema-component/antd/table-v2/Table.Column.Designer.js +3 -1
  128. package/lib/schema-component/antd/table-v2/Table.d.ts +0 -11
  129. package/lib/schema-component/antd/table-v2/Table.js +172 -94
  130. package/lib/schema-component/antd/table-v2/TableField.js +3 -0
  131. package/lib/schema-component/antd/tabs/Tabs.Designer.js +23 -12
  132. package/lib/schema-component/antd/tabs/Tabs.js +8 -1
  133. package/lib/schema-component/antd/time-picker/ReadPretty.js +10 -3
  134. package/lib/schema-component/core/DesignableSwitch.js +8 -1
  135. package/lib/schema-component/hooks/useDesignable.js +21 -21
  136. package/lib/schema-component/hooks/useProps.js +1 -1
  137. package/lib/schema-initializer/buttons/FormItemInitializers.js +14 -2
  138. package/lib/schema-initializer/buttons/ReadPrettyFormActionInitializers.js +8 -0
  139. package/lib/schema-initializer/buttons/ReadPrettyFormItemInitializers.js +14 -2
  140. package/lib/schema-initializer/buttons/RecordBlockInitializers.js +34 -4
  141. package/lib/schema-initializer/buttons/TabPaneInitializers.js +11 -3
  142. package/lib/schema-initializer/buttons/TableActionInitializers.js +11 -0
  143. package/lib/schema-initializer/components/assigned-field/AssignedField.d.ts +4 -0
  144. package/lib/schema-initializer/components/assigned-field/AssignedField.js +257 -66
  145. package/lib/schema-initializer/items/index.d.ts +2 -0
  146. package/lib/schema-initializer/items/index.js +54 -2
  147. package/lib/schema-initializer/utils.js +22 -2
  148. package/lib/system-settings/SystemSettingsShortcut.js +37 -13
  149. package/package.json +7 -4
@@ -34,7 +34,7 @@ var _excluded = ["onSelect", "mode", "selectedUid", "defaultSelectedUid", "sideM
34
34
  _excluded3 = ["icon"],
35
35
  _excluded4 = ["icon"];
36
36
 
37
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
37
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
38
38
 
39
39
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
40
40
 
@@ -299,6 +299,7 @@ Menu.Item = (0, _react.observer)(function (props) {
299
299
  var field = (0, _react.useField)();
300
300
  var Designer = (0, _react2.useContext)(MenuItemDesignerContext);
301
301
  return /*#__PURE__*/_react2.default.createElement(_antd.Menu.Item, _objectSpread(_objectSpread({}, others), {}, {
302
+ className: (0, _css.css)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n :active {\n background: inherit;\n }\n "]))),
302
303
  key: schema.name,
303
304
  eventKey: schema.name,
304
305
  schema: schema
@@ -307,7 +308,7 @@ Menu.Item = (0, _react.observer)(function (props) {
307
308
  }, /*#__PURE__*/_react2.default.createElement(_2.Icon, {
308
309
  type: icon
309
310
  }), /*#__PURE__*/_react2.default.createElement("span", {
310
- className: (0, _css.css)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: inline-block;\n width: 100%;\n vertical-align: middle;\n "])))
311
+ className: (0, _css.css)(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: inline-block;\n width: 100%;\n vertical-align: middle;\n "])))
311
312
  }, field.title), /*#__PURE__*/_react2.default.createElement(Designer, null)));
312
313
  });
313
314
  Menu.URL = (0, _react.observer)(function (props) {
@@ -318,6 +319,7 @@ Menu.URL = (0, _react.observer)(function (props) {
318
319
  var field = (0, _react.useField)();
319
320
  var Designer = (0, _react2.useContext)(MenuItemDesignerContext);
320
321
  return /*#__PURE__*/_react2.default.createElement(_antd.Menu.Item, _objectSpread(_objectSpread({}, others), {}, {
322
+ className: (0, _css.css)(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n :active {\n background: inherit;\n }\n "]))),
321
323
  key: schema.name,
322
324
  eventKey: schema.name,
323
325
  schema: schema,
@@ -329,7 +331,7 @@ Menu.URL = (0, _react.observer)(function (props) {
329
331
  }, /*#__PURE__*/_react2.default.createElement(_2.Icon, {
330
332
  type: icon
331
333
  }), /*#__PURE__*/_react2.default.createElement("span", {
332
- className: (0, _css.css)(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: inline-block;\n width: 100%;\n vertical-align: middle;\n "])))
334
+ className: (0, _css.css)(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: inline-block;\n width: 100%;\n vertical-align: middle;\n "])))
333
335
  }, field.title), /*#__PURE__*/_react2.default.createElement(Designer, null)));
334
336
  });
335
337
  Menu.SubMenu = (0, _react.observer)(function (props) {
@@ -346,6 +348,7 @@ Menu.SubMenu = (0, _react.observer)(function (props) {
346
348
  }
347
349
 
348
350
  return /*#__PURE__*/_react2.default.createElement(_antd.Menu.SubMenu, _objectSpread(_objectSpread({}, others), {}, {
351
+ className: (0, _css.css)(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n :active {\n background: inherit;\n }\n "]))),
349
352
  key: schema.name,
350
353
  eventKey: schema.name,
351
354
  title: /*#__PURE__*/_react2.default.createElement(_.SortableItem, {
@@ -34,10 +34,10 @@ var Percent = (0, _react.connect)(function (props) {
34
34
  _onChange = props.onChange;
35
35
  return /*#__PURE__*/_react2.default.createElement(_antd.InputNumber, _objectSpread(_objectSpread({}, props), {}, {
36
36
  addonAfter: "%",
37
- value: math.round(value * 100, 9),
37
+ value: value ? math.round(value * 100, 9) : null,
38
38
  onChange: function onChange(v) {
39
39
  if (_onChange) {
40
- _onChange(math.round(v / 100, 9));
40
+ _onChange(v ? math.round(v / 100, 9) : null);
41
41
  }
42
42
  }
43
43
  }));
@@ -11,6 +11,8 @@ var _react = require("@formily/react");
11
11
 
12
12
  var _antd = require("antd");
13
13
 
14
+ var _lodash = require("lodash");
15
+
14
16
  var _react2 = _interopRequireWildcard(require("react"));
15
17
 
16
18
  var _TableSelectorProvider = require("../../../block-provider/TableSelectorProvider");
@@ -57,31 +59,44 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
57
59
  var RecordPickerContext = /*#__PURE__*/(0, _react2.createContext)(null);
58
60
 
59
61
  var useTableSelectorProps = function useTableSelectorProps() {
62
+ var field = (0, _react.useField)();
63
+
60
64
  var _useContext = (0, _react2.useContext)(RecordPickerContext),
61
65
  multiple = _useContext.multiple,
62
66
  value = _useContext.value,
63
67
  setSelectedRows = _useContext.setSelectedRows,
64
- selectedRows = _useContext.selectedRows;
68
+ rcSelectRows = _useContext.selectedRows;
65
69
 
66
70
  var _useTsp = (0, _TableSelectorProvider.useTableSelectorProps)(),
67
71
  _onRowSelectionChange = _useTsp.onRowSelectionChange,
68
72
  rowKey = _useTsp.rowKey,
69
- others = _objectWithoutProperties(_useTsp, _excluded);
73
+ others = _objectWithoutProperties(_useTsp, _excluded); // console.log('useTableSelectorProps', field.value, value);
74
+
70
75
 
71
76
  return _objectSpread(_objectSpread({}, others), {}, {
72
77
  rowKey: rowKey,
73
78
  rowSelection: {
74
79
  type: multiple ? 'checkbox' : 'radio',
75
- defaultSelectedRowKeys: selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.map(function (item) {
76
- return item[rowKey || 'id'];
77
- }),
78
- selectedRowKeys: selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.map(function (item) {
80
+ // defaultSelectedRowKeys: rcSelectRows?.map((item) => item[rowKey||'id']),
81
+ selectedRowKeys: rcSelectRows === null || rcSelectRows === void 0 ? void 0 : rcSelectRows.map(function (item) {
79
82
  return item[rowKey || 'id'];
80
83
  })
81
84
  },
82
85
  onRowSelectionChange: function onRowSelectionChange(selectedRowKeys, selectedRows) {
83
- _onRowSelectionChange === null || _onRowSelectionChange === void 0 ? void 0 : _onRowSelectionChange(selectedRowKeys, selectedRows);
84
- setSelectedRows === null || setSelectedRows === void 0 ? void 0 : setSelectedRows(selectedRows);
86
+ if (multiple) {
87
+ var scopeRows = field.value || [];
88
+ var allSelectedRows = rcSelectRows || [];
89
+ var otherRows = (0, _lodash.differenceBy)(allSelectedRows, scopeRows, rowKey || 'id');
90
+ var unionSelectedRows = (0, _lodash.unionBy)(otherRows, selectedRows, rowKey || 'id');
91
+ var unionSelectedRowKeys = unionSelectedRows.map(function (item) {
92
+ return item[rowKey || 'id'];
93
+ });
94
+ setSelectedRows === null || setSelectedRows === void 0 ? void 0 : setSelectedRows(unionSelectedRows);
95
+ _onRowSelectionChange === null || _onRowSelectionChange === void 0 ? void 0 : _onRowSelectionChange(unionSelectedRowKeys, unionSelectedRows);
96
+ } else {
97
+ setSelectedRows === null || setSelectedRows === void 0 ? void 0 : setSelectedRows(selectedRows);
98
+ _onRowSelectionChange === null || _onRowSelectionChange === void 0 ? void 0 : _onRowSelectionChange(selectedRowKeys, selectedRows);
99
+ }
85
100
  }
86
101
  });
87
102
  };
@@ -159,13 +174,13 @@ var InputRecordPicker = function InputRecordPicker(props) {
159
174
  setSelectedRows(opts);
160
175
  }
161
176
  }, [value]);
162
- (0, _react2.useEffect)(function () {});
163
177
 
164
178
  var getValue = function getValue() {
165
- if (multiple == null) return null;
166
- return multiple ? Array.isArray(value) ? value === null || value === void 0 ? void 0 : value.map(function (v) {
179
+ if (multiple == null) return null; // console.log('getValue', multiple, value, Array.isArray(value));
180
+
181
+ return Array.isArray(value) ? value === null || value === void 0 ? void 0 : value.map(function (v) {
167
182
  return v[fieldNames.value];
168
- }) : [] : value === null || value === void 0 ? void 0 : value[fieldNames.value];
183
+ }) : value === null || value === void 0 ? void 0 : value[fieldNames.value];
169
184
  };
170
185
 
171
186
  return /*#__PURE__*/_react2.default.createElement("div", null, /*#__PURE__*/_react2.default.createElement(_antd.Select, _objectSpread(_objectSpread({}, others), {}, {
@@ -81,7 +81,9 @@ var ReadPrettyRecordPicker = (0, _react.observer)(function (props) {
81
81
 
82
82
  var renderRecords = function renderRecords() {
83
83
  return (0, _shared.toArr)(field.value).map(function (record, index, arr) {
84
- return /*#__PURE__*/_react2.default.createElement(_react2.default.Fragment, null, /*#__PURE__*/_react2.default.createElement("span", null, /*#__PURE__*/_react2.default.createElement("a", {
84
+ return /*#__PURE__*/_react2.default.createElement(_react2.Fragment, {
85
+ key: "".concat(record.id, "_").concat(index)
86
+ }, /*#__PURE__*/_react2.default.createElement("span", null, /*#__PURE__*/_react2.default.createElement("a", {
85
87
  onClick: function onClick(e) {
86
88
  var _ellipsisWithTooltipR;
87
89
 
@@ -91,7 +93,7 @@ var ReadPrettyRecordPicker = (0, _react.observer)(function (props) {
91
93
  setRecord(record);
92
94
  ellipsisWithTooltipRef === null || ellipsisWithTooltipRef === void 0 ? void 0 : (_ellipsisWithTooltipR = ellipsisWithTooltipRef.current) === null || _ellipsisWithTooltipR === void 0 ? void 0 : _ellipsisWithTooltipR.setPopoverVisible(false);
93
95
  }
94
- }, compile(record === null || record === void 0 ? void 0 : record[(fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label) || 'label']))), index < arr.length - 1 ? /*#__PURE__*/_react2.default.createElement("span", {
96
+ }, compile(record === null || record === void 0 ? void 0 : record[(fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label) || 'label']) || (record === null || record === void 0 ? void 0 : record[(fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || 'value']) || (record === null || record === void 0 ? void 0 : record.id))), index < arr.length - 1 ? /*#__PURE__*/_react2.default.createElement("span", {
95
97
  style: {
96
98
  marginRight: 4,
97
99
  color: '#aaa'
@@ -94,8 +94,8 @@ var useTableColumns = function useTableColumns() {
94
94
  render: function render(v, record) {
95
95
  var _field$value;
96
96
 
97
- var index = (_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value.indexOf(record);
98
- console.log((Date.now() - start) / 1000);
97
+ var index = (_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value.indexOf(record); // console.log((Date.now() - start) / 1000);
98
+
99
99
  return /*#__PURE__*/_react2.default.createElement(_2.RecordIndexProvider, {
100
100
  index: index
101
101
  }, /*#__PURE__*/_react2.default.createElement(_2.RecordProvider, {
@@ -32,7 +32,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
32
32
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
33
33
 
34
34
  var usePaginationProps = function usePaginationProps(props, service) {
35
- var _props$request, _props$request$params;
35
+ var _props$request, _props$request$params, _service$data;
36
36
 
37
37
  if (props.pagination === false) {
38
38
  return false;
@@ -46,6 +46,16 @@ var usePaginationProps = function usePaginationProps(props, service) {
46
46
  pagination.defaultPageSize = props === null || props === void 0 ? void 0 : (_props$request2 = props.request) === null || _props$request2 === void 0 ? void 0 : (_props$request2$param = _props$request2.params) === null || _props$request2$param === void 0 ? void 0 : _props$request2$param.pageSize;
47
47
  }
48
48
 
49
+ if (!pagination.total && (service === null || service === void 0 ? void 0 : (_service$data = service.data) === null || _service$data === void 0 ? void 0 : _service$data.meta)) {
50
+ var _service$data$meta = service.data.meta,
51
+ count = _service$data$meta.count,
52
+ page = _service$data$meta.page,
53
+ pageSize = _service$data$meta.pageSize;
54
+ pagination.total = count;
55
+ pagination.current = page;
56
+ pagination.pageSize = pageSize;
57
+ }
58
+
49
59
  return _objectSpread(_objectSpread({
50
60
  showSizeChanger: true
51
61
  }, pagination), {}, {
@@ -128,7 +128,9 @@ var TableColumnDesigner = function TableColumnDesigner(props) {
128
128
  options: options,
129
129
  value: fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames['label'],
130
130
  onChange: function onChange(label) {
131
- var fieldNames = _objectSpread(_objectSpread({}, fieldSchema['x-component-props']['fieldNames']), {}, {
131
+ var _collectionField$uiSc2, _fieldSchema$xCompon2;
132
+
133
+ var fieldNames = _objectSpread(_objectSpread(_objectSpread({}, collectionField === null || collectionField === void 0 ? void 0 : (_collectionField$uiSc2 = collectionField.uiSchema) === null || _collectionField$uiSc2 === void 0 ? void 0 : _collectionField$uiSc2['x-component-props']['fieldNames']), fieldSchema === null || fieldSchema === void 0 ? void 0 : (_fieldSchema$xCompon2 = fieldSchema['x-component-props']) === null || _fieldSchema$xCompon2 === void 0 ? void 0 : _fieldSchema$xCompon2['fieldNames']), {}, {
132
134
  label: label
133
135
  });
134
136
 
@@ -1,12 +1 @@
1
- export declare const components: {
2
- header: {
3
- wrapper: (props: any) => JSX.Element;
4
- cell: (props: any) => JSX.Element;
5
- };
6
- body: {
7
- wrapper: (props: any) => JSX.Element;
8
- row: (props: any) => JSX.Element;
9
- cell: (props: any) => JSX.Element;
10
- };
11
- };
12
1
  export declare const Table: any;
@@ -1,23 +1,29 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
- exports.components = exports.Table = void 0;
8
+ exports.Table = void 0;
7
9
 
8
10
  var _icons = require("@ant-design/icons");
9
11
 
12
+ var _sortable = require("@dnd-kit/sortable");
13
+
10
14
  var _css = require("@emotion/css");
11
15
 
12
16
  var _react = require("@formily/react");
13
17
 
18
+ var _reactive = require("@formily/reactive");
19
+
20
+ var _ahooks = require("ahooks");
21
+
14
22
  var _antd = require("antd");
15
23
 
16
24
  var _classnames = _interopRequireDefault(require("classnames"));
17
25
 
18
- var _react2 = _interopRequireDefault(require("react"));
19
-
20
- var _reactDragListview = _interopRequireDefault(require("react-drag-listview"));
26
+ var _react2 = _interopRequireWildcard(require("react"));
21
27
 
22
28
  var _reactI18next = require("react-i18next");
23
29
 
@@ -27,28 +33,28 @@ var _2 = require("../../../");
27
33
 
28
34
  var _excluded = ["pagination", "useProps", "onChange"],
29
35
  _excluded2 = ["pagination"],
30
- _excluded3 = ["dragSort", "showIndex", "onRowDragEnd", "onRowSelectionChange", "onChange", "rowSelection"];
36
+ _excluded3 = ["dragSort", "showIndex", "onRowSelectionChange", "onChange", "rowSelection", "rowKey", "required"];
31
37
 
32
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
38
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
33
39
 
34
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
40
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
41
 
36
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
42
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
43
 
38
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
44
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
39
45
 
40
46
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
41
47
 
42
48
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
43
49
 
44
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
45
-
46
50
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
47
51
 
48
52
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
49
53
 
50
54
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
51
55
 
56
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
57
+
52
58
  var isColumnComponent = function isColumnComponent(schema) {
53
59
  var _schema$xComponent;
54
60
 
@@ -66,8 +72,7 @@ var useTableColumns = function useTableColumns() {
66
72
 
67
73
  var _useSchemaInitializer = (0, _2.useSchemaInitializer)(schema['x-initializer']),
68
74
  exists = _useSchemaInitializer.exists,
69
- render = _useSchemaInitializer.render; // console.log('useTableColumns', exists);
70
-
75
+ render = _useSchemaInitializer.render;
71
76
 
72
77
  var columns = schema.reduceProperties(function (buf, s) {
73
78
  if (isColumnComponent(s)) {
@@ -82,7 +87,6 @@ var useTableColumns = function useTableColumns() {
82
87
  }
83
88
  }, []);
84
89
  var dataIndex = (collectionFields === null || collectionFields === void 0 ? void 0 : collectionFields.length) > 0 ? collectionFields[0].name : s.name;
85
- console.log('useTableColumns', s.name, s, field.value);
86
90
  return {
87
91
  title: /*#__PURE__*/_react2.default.createElement(_react.RecursionField, {
88
92
  name: s.name,
@@ -98,7 +102,6 @@ var useTableColumns = function useTableColumns() {
98
102
 
99
103
  var index = (_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value.indexOf(record); // console.log((Date.now() - start) / 1000);
100
104
 
101
- console.log('useTableColumns.index', index, record);
102
105
  return /*#__PURE__*/_react2.default.createElement(_2.RecordIndexProvider, {
103
106
  index: index
104
107
  }, /*#__PURE__*/_react2.default.createElement(_2.RecordProvider, {
@@ -123,40 +126,41 @@ var useTableColumns = function useTableColumns() {
123
126
  });
124
127
  };
125
128
 
126
- var components = {
127
- header: {
128
- wrapper: function wrapper(props) {
129
- return /*#__PURE__*/_react2.default.createElement(_.DndContext, null, /*#__PURE__*/_react2.default.createElement("thead", _objectSpread({}, props)));
130
- },
131
- cell: function cell(props) {
132
- return /*#__PURE__*/_react2.default.createElement("th", _objectSpread(_objectSpread({}, props), {}, {
133
- className: (0, _classnames.default)(props.className, (0, _css.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n max-width: 300px;\n white-space: nowrap;\n &:hover .general-schema-designer {\n display: block;\n }\n "]))))
134
- }));
135
- }
136
- },
137
- body: {
138
- wrapper: function wrapper(props) {
139
- return /*#__PURE__*/_react2.default.createElement(_.DndContext, null, /*#__PURE__*/_react2.default.createElement("tbody", _objectSpread({}, props)));
140
- },
141
- row: function row(props) {
142
- return /*#__PURE__*/_react2.default.createElement("tr", _objectSpread({}, props));
143
- },
144
- cell: function cell(props) {
145
- return /*#__PURE__*/_react2.default.createElement("td", _objectSpread(_objectSpread({}, props), {}, {
146
- className: (0, _classnames.default)(props.className, (0, _css.css)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n max-width: 300px;\n white-space: nowrap;\n .nb-read-pretty-input-number {\n text-align: right;\n }\n "]))))
147
- }));
148
- }
149
- }
129
+ var topActiveClass = (0, _css.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n & > td {\n border-top: 2px solid rgba(241, 139, 98, 0.6) !important;\n }\n"])));
130
+ var bottomActiveClass = (0, _css.css)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n & > td {\n border-bottom: 2px solid rgba(241, 139, 98, 0.6) !important;\n }\n"])));
131
+
132
+ var SortableRow = function SortableRow(props) {
133
+ var _props$dataRowKey, _active$data$current$, _active$data$current, _over$data$current$so, _over$data$current;
134
+
135
+ var id = (_props$dataRowKey = props['data-row-key']) === null || _props$dataRowKey === void 0 ? void 0 : _props$dataRowKey.toString();
136
+
137
+ var _useSortable = (0, _sortable.useSortable)({
138
+ id: id
139
+ }),
140
+ setNodeRef = _useSortable.setNodeRef,
141
+ isOver = _useSortable.isOver,
142
+ active = _useSortable.active,
143
+ over = _useSortable.over;
144
+
145
+ var className = ((_active$data$current$ = active === null || active === void 0 ? void 0 : (_active$data$current = active.data.current) === null || _active$data$current === void 0 ? void 0 : _active$data$current.sortable.index) !== null && _active$data$current$ !== void 0 ? _active$data$current$ : -1) > ((_over$data$current$so = over === null || over === void 0 ? void 0 : (_over$data$current = over.data.current) === null || _over$data$current === void 0 ? void 0 : _over$data$current.sortable.index) !== null && _over$data$current$so !== void 0 ? _over$data$current$so : -1) ? topActiveClass : bottomActiveClass;
146
+ return /*#__PURE__*/_react2.default.createElement("tr", _objectSpread(_objectSpread({
147
+ ref: (active === null || active === void 0 ? void 0 : active.id) !== id ? setNodeRef : null
148
+ }, props), {}, {
149
+ className: (0, _classnames.default)(_defineProperty({}, className, active && isOver))
150
+ }));
150
151
  };
151
- exports.components = components;
152
152
 
153
- var SortHandle = function SortHandle() {
154
- return /*#__PURE__*/_react2.default.createElement(_icons.MenuOutlined, {
155
- className: 'drag-handle',
153
+ var SortHandle = function SortHandle(props) {
154
+ var _useSortable2 = (0, _sortable.useSortable)({
155
+ id: props.id
156
+ }),
157
+ listeners = _useSortable2.listeners;
158
+
159
+ return /*#__PURE__*/_react2.default.createElement(_icons.MenuOutlined, _objectSpread(_objectSpread({}, listeners), {}, {
156
160
  style: {
157
161
  cursor: 'grab'
158
162
  }
159
- });
163
+ }));
160
164
  };
161
165
 
162
166
  var TableIndex = function TableIndex(props) {
@@ -191,6 +195,25 @@ var usePaginationProps = function usePaginationProps(pagination1, pagination2) {
191
195
  }, pagination1), pagination2);
192
196
  };
193
197
 
198
+ var useValidator = function useValidator(validator) {
199
+ var field = (0, _react.useField)();
200
+ (0, _react2.useEffect)(function () {
201
+ var dispose = (0, _reactive.reaction)(function () {
202
+ return field.value;
203
+ }, function (value) {
204
+ var message = validator(value);
205
+ field.setFeedback({
206
+ type: 'error',
207
+ code: 'ValidateError',
208
+ messages: message ? [message] : []
209
+ });
210
+ });
211
+ return function () {
212
+ dispose();
213
+ };
214
+ }, []);
215
+ };
216
+
194
217
  var Table = (0, _react.observer)(function (props) {
195
218
  var _field$data, _field$value3, _field$value3$slice;
196
219
 
@@ -211,13 +234,92 @@ var Table = (0, _react.observer)(function (props) {
211
234
  dragSort = _others1$others$dragS === void 0 ? false : _others1$others$dragS,
212
235
  _others1$others$showI = _others1$others.showIndex,
213
236
  showIndex = _others1$others$showI === void 0 ? true : _others1$others$showI,
214
- onRowDragEnd = _others1$others.onRowDragEnd,
215
237
  onRowSelectionChange = _others1$others.onRowSelectionChange,
216
238
  onTableChange = _others1$others.onChange,
217
239
  rowSelection = _others1$others.rowSelection,
240
+ rowKey = _others1$others.rowKey,
241
+ required = _others1$others.required,
218
242
  others = _objectWithoutProperties(_others1$others, _excluded3);
219
243
 
244
+ var onRowDragEnd = (0, _ahooks.useMemoizedFn)(others.onRowDragEnd || function () {});
220
245
  var paginationProps = usePaginationProps(pagination1, pagination2);
246
+ var requiredValidator = field.required || required;
247
+ (0, _react2.useEffect)(function () {
248
+ field.setValidator(function (value) {
249
+ if (requiredValidator) {
250
+ return Array.isArray(value) && value.length > 0 ? null : 'The field value is required';
251
+ }
252
+
253
+ return;
254
+ });
255
+ }, [requiredValidator]);
256
+ var components = (0, _react2.useMemo)(function () {
257
+ return {
258
+ header: {
259
+ wrapper: function wrapper(props) {
260
+ return /*#__PURE__*/_react2.default.createElement(_.DndContext, null, /*#__PURE__*/_react2.default.createElement("thead", _objectSpread({}, props)));
261
+ },
262
+ cell: function cell(props) {
263
+ return /*#__PURE__*/_react2.default.createElement("th", _objectSpread(_objectSpread({}, props), {}, {
264
+ className: (0, _classnames.default)(props.className, (0, _css.css)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n max-width: 300px;\n white-space: nowrap;\n &:hover .general-schema-designer {\n display: block;\n }\n "]))))
265
+ }));
266
+ }
267
+ },
268
+ body: {
269
+ wrapper: function wrapper(props) {
270
+ return /*#__PURE__*/_react2.default.createElement(_.DndContext, {
271
+ onDragEnd: function onDragEnd(e) {
272
+ var _e$active, _e$active$data$curren, _e$active$data$curren2, _e$over, _e$over$data$current, _e$over$data$current$;
273
+
274
+ if (!e.active || !e.over) {
275
+ console.warn('move cancel');
276
+ return;
277
+ }
278
+
279
+ var fromIndex = (_e$active = e.active) === null || _e$active === void 0 ? void 0 : (_e$active$data$curren = _e$active.data.current) === null || _e$active$data$curren === void 0 ? void 0 : (_e$active$data$curren2 = _e$active$data$curren.sortable) === null || _e$active$data$curren2 === void 0 ? void 0 : _e$active$data$curren2.index;
280
+ var toIndex = (_e$over = e.over) === null || _e$over === void 0 ? void 0 : (_e$over$data$current = _e$over.data.current) === null || _e$over$data$current === void 0 ? void 0 : (_e$over$data$current$ = _e$over$data$current.sortable) === null || _e$over$data$current$ === void 0 ? void 0 : _e$over$data$current$.index;
281
+ var from = field.value[fromIndex];
282
+ var to = field.value[toIndex];
283
+ field.move(fromIndex, toIndex);
284
+ onRowDragEnd({
285
+ fromIndex: fromIndex,
286
+ toIndex: toIndex,
287
+ from: from,
288
+ to: to
289
+ });
290
+ }
291
+ }, /*#__PURE__*/_react2.default.createElement("tbody", _objectSpread({}, props)));
292
+ },
293
+ row: function row(props) {
294
+ return /*#__PURE__*/_react2.default.createElement(SortableRow, _objectSpread({}, props));
295
+ },
296
+ cell: function cell(props) {
297
+ return /*#__PURE__*/_react2.default.createElement("td", _objectSpread(_objectSpread({}, props), {}, {
298
+ className: (0, _classnames.default)(props.className, (0, _css.css)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n max-width: 300px;\n white-space: nowrap;\n .nb-read-pretty-input-number {\n text-align: right;\n }\n "]))))
299
+ }));
300
+ }
301
+ }
302
+ };
303
+ }, [field, onRowDragEnd, dragSort]);
304
+
305
+ var defaultRowKey = function defaultRowKey(record) {
306
+ var _field$value2, _field$value2$indexOf;
307
+
308
+ return (_field$value2 = field.value) === null || _field$value2 === void 0 ? void 0 : (_field$value2$indexOf = _field$value2.indexOf) === null || _field$value2$indexOf === void 0 ? void 0 : _field$value2$indexOf.call(_field$value2, record);
309
+ };
310
+
311
+ var getRowKey = function getRowKey(record) {
312
+ if (typeof rowKey === 'string') {
313
+ var _record$rowKey;
314
+
315
+ return (_record$rowKey = record[rowKey]) === null || _record$rowKey === void 0 ? void 0 : _record$rowKey.toString();
316
+ } else {
317
+ var _ref2;
318
+
319
+ return (_ref2 = (rowKey !== null && rowKey !== void 0 ? rowKey : defaultRowKey)(record)) === null || _ref2 === void 0 ? void 0 : _ref2.toString();
320
+ }
321
+ };
322
+
221
323
  var restProps = {
222
324
  rowSelection: rowSelection ? _objectSpread({
223
325
  type: 'checkbox',
@@ -242,62 +344,32 @@ var Table = (0, _react.observer)(function (props) {
242
344
  }
243
345
 
244
346
  return /*#__PURE__*/_react2.default.createElement("div", {
245
- className: (0, _classnames.default)(checked ? 'checked' : null, (0, _css.css)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-evenly;\n padding-right: 8px;\n .nb-table-index {\n opacity: 0;\n }\n &:not(.checked) {\n .nb-table-index {\n opacity: 1;\n }\n }\n &:hover {\n .nb-table-index {\n opacity: 0;\n }\n .nb-origin-node {\n display: block;\n }\n }\n "]))))
347
+ className: (0, _classnames.default)(checked ? 'checked' : null, (0, _css.css)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-evenly;\n padding-right: 8px;\n .nb-table-index {\n opacity: 0;\n }\n &:not(.checked) {\n .nb-table-index {\n opacity: 1;\n }\n }\n &:hover {\n .nb-table-index {\n opacity: 0;\n }\n .nb-origin-node {\n display: block;\n }\n }\n "]))))
246
348
  }, /*#__PURE__*/_react2.default.createElement("div", {
247
- className: (0, _classnames.default)(checked ? 'checked' : null, (0, _css.css)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-evenly;\n "]))))
248
- }, dragSort && /*#__PURE__*/_react2.default.createElement(SortHandle, null), showIndex && /*#__PURE__*/_react2.default.createElement(TableIndex, {
349
+ className: (0, _classnames.default)(checked ? 'checked' : null, (0, _css.css)(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n position: relative;\n display: flex;\n align-items: center;\n justify-content: space-evenly;\n "]))))
350
+ }, dragSort && /*#__PURE__*/_react2.default.createElement(SortHandle, {
351
+ id: getRowKey(record)
352
+ }), showIndex && /*#__PURE__*/_react2.default.createElement(TableIndex, {
249
353
  index: index
250
354
  })), /*#__PURE__*/_react2.default.createElement("div", {
251
- className: (0, _classnames.default)('nb-origin-node', checked ? 'checked' : null, (0, _css.css)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n position: absolute;\n right: 50%;\n transform: translateX(50%);\n &:not(.checked) {\n display: none;\n }\n "]))))
355
+ className: (0, _classnames.default)('nb-origin-node', checked ? 'checked' : null, (0, _css.css)(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n position: absolute;\n right: 50%;\n transform: translateX(50%);\n &:not(.checked) {\n display: none;\n }\n "]))))
252
356
  }, originNode));
253
357
  }
254
358
  }, rowSelection) : undefined
255
359
  };
256
-
257
- var defaultRowKey = function defaultRowKey(record) {
258
- var _field$value2, _field$value2$indexOf;
259
-
260
- return (_field$value2 = field.value) === null || _field$value2 === void 0 ? void 0 : (_field$value2$indexOf = _field$value2.indexOf) === null || _field$value2$indexOf === void 0 ? void 0 : _field$value2$indexOf.call(_field$value2, record);
261
- };
262
-
360
+ var SortableWrapper = (0, _react2.useCallback)(function (_ref3) {
361
+ var children = _ref3.children;
362
+ return dragSort ? /*#__PURE__*/_react2.default.createElement(_sortable.SortableContext, {
363
+ items: field.value.map(getRowKey),
364
+ children: children
365
+ }) : /*#__PURE__*/_react2.default.createElement(_react2.default.Fragment, {
366
+ children: children
367
+ });
368
+ }, [field, dragSort]);
263
369
  return /*#__PURE__*/_react2.default.createElement("div", {
264
- className: (0, _css.css)(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n .ant-table {\n overflow-x: auto;\n overflow-y: hidden;\n }\n "])))
265
- }, /*#__PURE__*/_react2.default.createElement(_reactDragListview.default, {
266
- handleSelector: '.drag-handle',
267
- onDragEnd: function () {
268
- var _onDragEnd = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(fromIndex, toIndex) {
269
- var from, to;
270
- return regeneratorRuntime.wrap(function _callee$(_context) {
271
- while (1) {
272
- switch (_context.prev = _context.next) {
273
- case 0:
274
- from = field.value[fromIndex];
275
- to = field.value[toIndex];
276
- field.move(fromIndex, toIndex);
277
- onRowDragEnd({
278
- fromIndex: fromIndex,
279
- toIndex: toIndex,
280
- from: from,
281
- to: to
282
- });
283
-
284
- case 4:
285
- case "end":
286
- return _context.stop();
287
- }
288
- }
289
- }, _callee);
290
- }));
291
-
292
- function onDragEnd(_x, _x2) {
293
- return _onDragEnd.apply(this, arguments);
294
- }
295
-
296
- return onDragEnd;
297
- }(),
298
- lineClassName: (0, _css.css)(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n border-bottom: 2px solid rgba(241, 139, 98, 0.6) !important;\n "])))
299
- }, /*#__PURE__*/_react2.default.createElement(_antd.Table, _objectSpread(_objectSpread(_objectSpread({
300
- rowKey: defaultRowKey
370
+ className: (0, _css.css)(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n .ant-table {\n overflow-x: auto;\n overflow-y: hidden;\n }\n "])))
371
+ }, /*#__PURE__*/_react2.default.createElement(SortableWrapper, null, /*#__PURE__*/_react2.default.createElement(_antd.Table, _objectSpread(_objectSpread(_objectSpread({
372
+ rowKey: rowKey !== null && rowKey !== void 0 ? rowKey : defaultRowKey
301
373
  }, others), restProps), {}, {
302
374
  pagination: paginationProps,
303
375
  components: components,
@@ -308,6 +380,12 @@ var Table = (0, _react.observer)(function (props) {
308
380
  // scroll={{ x: 12 * 300 + 80 }}
309
381
  columns: columns,
310
382
  dataSource: field === null || field === void 0 ? void 0 : (_field$value3 = field.value) === null || _field$value3 === void 0 ? void 0 : (_field$value3$slice = _field$value3.slice) === null || _field$value3$slice === void 0 ? void 0 : _field$value3$slice.call(_field$value3)
311
- }))));
383
+ }))), field.errors.length > 0 && /*#__PURE__*/_react2.default.createElement("div", {
384
+ className: "ant-formily-item-error-help ant-formily-item-help ant-formily-item-help-enter ant-formily-item-help-enter-active"
385
+ }, field.errors.map(function (error) {
386
+ return error.messages.map(function (message) {
387
+ return /*#__PURE__*/_react2.default.createElement("div", null, message);
388
+ });
389
+ })));
312
390
  });
313
391
  exports.Table = Table;
@@ -51,6 +51,9 @@ var TableField = (0, _react.observer)(function (props) {
51
51
  ctx.field.added.add(fieldSchema.name);
52
52
  }
53
53
  }, []);
54
+ (0, _react2.useEffect)(function () {
55
+ field.decoratorProps.asterisk = fieldSchema.required;
56
+ }, [fieldSchema.required]);
54
57
  return /*#__PURE__*/_react2.default.createElement("div", null, props.children);
55
58
  });
56
59
  exports.TableField = TableField;