amis 1.9.1-beta.3 → 1.9.1-beta.4

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 (48) hide show
  1. package/lib/SchemaRenderer.js +6 -9
  2. package/lib/SchemaRenderer.js.map +2 -2
  3. package/lib/actions/CmptAction.js +4 -4
  4. package/lib/actions/CmptAction.js.map +2 -2
  5. package/lib/components/WithRemoteConfig.d.ts +2 -2
  6. package/lib/components/WithRemoteConfig.js +6 -3
  7. package/lib/components/WithRemoteConfig.js.map +2 -2
  8. package/lib/components/table/ItemActionsWrapper.d.ts +10 -0
  9. package/lib/components/table/ItemActionsWrapper.js +25 -0
  10. package/lib/components/table/ItemActionsWrapper.js.map +13 -0
  11. package/lib/components/table/index.d.ts +48 -41
  12. package/lib/components/table/index.js +46 -18
  13. package/lib/components/table/index.js.map +2 -2
  14. package/lib/index.js +1 -1
  15. package/lib/renderers/Form/JSONSchema.js +3 -3
  16. package/lib/renderers/Form/JSONSchema.js.map +2 -2
  17. package/lib/renderers/Form/Options.js +11 -5
  18. package/lib/renderers/Form/Options.js.map +2 -2
  19. package/lib/renderers/Form/wrapControl.js.map +2 -2
  20. package/lib/renderers/Table-v2/index.d.ts +14 -2
  21. package/lib/renderers/Table-v2/index.js +33 -3
  22. package/lib/renderers/Table-v2/index.js.map +2 -2
  23. package/package.json +1 -1
  24. package/schema.json +13 -2
  25. package/sdk/barcode.js +51 -51
  26. package/sdk/charts.js +14 -14
  27. package/sdk/codemirror.js +7 -7
  28. package/sdk/color-picker.js +65 -65
  29. package/sdk/cropperjs.js +2 -2
  30. package/sdk/exceljs.js +1 -1
  31. package/sdk/markdown.js +69 -69
  32. package/sdk/papaparse.js +1 -1
  33. package/sdk/renderers/Form/CityDB.js +1 -1
  34. package/sdk/rest.js +16 -16
  35. package/sdk/rich-text.js +62 -62
  36. package/sdk/sdk.js +1299 -1297
  37. package/sdk/thirds/hls.js/hls.js +1 -1
  38. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  39. package/sdk/tinymce.js +57 -57
  40. package/src/SchemaRenderer.tsx +1 -4
  41. package/src/actions/CmptAction.ts +4 -4
  42. package/src/components/WithRemoteConfig.tsx +20 -11
  43. package/src/components/table/ItemActionsWrapper.tsx +32 -0
  44. package/src/components/table/index.tsx +115 -58
  45. package/src/renderers/Form/JSONSchema.tsx +3 -3
  46. package/src/renderers/Form/Options.tsx +17 -7
  47. package/src/renderers/Form/wrapControl.tsx +0 -1
  48. package/src/renderers/Table-v2/index.tsx +65 -2
@@ -24,6 +24,7 @@ var Spinner_1 = (0, tslib_1.__importDefault)(require("../Spinner"));
24
24
  var HeadCellSort_1 = (0, tslib_1.__importDefault)(require("./HeadCellSort"));
25
25
  var HeadCellFilter_1 = (0, tslib_1.__importDefault)(require("./HeadCellFilter"));
26
26
  var HeadCellSelect_1 = (0, tslib_1.__importDefault)(require("./HeadCellSelect"));
27
+ var ItemActionsWrapper_1 = (0, tslib_1.__importDefault)(require("./ItemActionsWrapper"));
27
28
  var Cell_1 = (0, tslib_1.__importDefault)(require("./Cell"));
28
29
  function getMaxLevelThRowSpan(columns) {
29
30
  var maxLevel = 0;
@@ -152,7 +153,8 @@ var Table = /** @class */ (function (_super) {
152
153
  expandedRowKeys: (0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([], (props.expandable ? props.expandable.expandedRowKeys || [] : []), true), (props.expandable
153
154
  ? props.expandable.defaultExpandedRowKeys || []
154
155
  : []), true),
155
- colWidths: []
156
+ colWidths: [],
157
+ hoverRow: null
156
158
  };
157
159
  _this.onTableContentScroll = _this.onTableContentScroll.bind(_this);
158
160
  _this.getPopOverContainer = _this.getPopOverContainer.bind(_this);
@@ -716,7 +718,7 @@ var Table = /** @class */ (function (_super) {
716
718
  sort,
717
719
  filter,
718
720
  resizable ? (react_1.default.createElement("i", { className: cx('Table-thead-resizable'), onMouseDown: function (e) { return _this.onResizeMouseDown(e, item.key); } })) : null));
719
- return (react_1.default.createElement(Cell_1.default, { wrapperComponent: "th", rowSpan: item.rowSpan, colSpan: item.colSpan, key: 'cell' + (item.key || i), fixed: item.fixed === true ? 'left' : item.fixed, className: cx({
721
+ return (react_1.default.createElement(Cell_1.default, { wrapperComponent: "th", rowSpan: item.rowSpan, colSpan: item.colSpan, key: "cell-".concat(i), fixed: item.fixed === true ? 'left' : item.fixed, className: cx({
720
722
  'Table-cell-last': i === maxCount - 1 && i === data.length - 1
721
723
  }), groupId: item.groupId, depth: item.depth }, typeof item.title === 'function'
722
724
  ? item.title(children)
@@ -747,8 +749,16 @@ var Table = /** @class */ (function (_super) {
747
749
  td.classList.add(cx('Table-cell-row-hover')); // 保证有列fixed的时候样式一致
748
750
  }
749
751
  }
750
- if (record && onRow) {
751
- onRow.onRowMouseEnter && onRow.onRowMouseEnter(event, record, rowIndex);
752
+ if (record) {
753
+ var target = event.target;
754
+ if (target.tagName !== 'TR') {
755
+ target = target.closest('tr');
756
+ }
757
+ this.setState({ hoverRow: { target: target, rowIndex: rowIndex, record: record } }, function () {
758
+ if (onRow) {
759
+ onRow.onRowMouseEnter && onRow.onRowMouseEnter(event, record, rowIndex);
760
+ }
761
+ });
752
762
  }
753
763
  };
754
764
  Table.prototype.onRowMouseLeave = function (event, record, rowIndex) {
@@ -763,10 +773,15 @@ var Table = /** @class */ (function (_super) {
763
773
  td.classList.remove(cx('Table-cell-row-hover'));
764
774
  }
765
775
  }
766
- if (record && onRow) {
767
- onRow.onRowMouseLeave && onRow.onRowMouseLeave(event, record, rowIndex);
776
+ if (record) {
777
+ if (onRow) {
778
+ onRow.onRowMouseLeave && onRow.onRowMouseLeave(event, record, rowIndex);
779
+ }
768
780
  }
769
781
  };
782
+ Table.prototype.onMouseLeave = function (event) {
783
+ this.setState({ hoverRow: null });
784
+ };
770
785
  Table.prototype.onExpandRow = function (data) {
771
786
  var expandedRowKeys = this.state.expandedRowKeys;
772
787
  var expandable = this.props.expandable;
@@ -897,9 +912,10 @@ var Table = /** @class */ (function (_super) {
897
912
  var hasChildrenRow = this.hasChildrenRow(data);
898
913
  var isExpanded = !!(0, find_1.default)(this.state.expandedRowKeys, function (key) { return key == data[_this.getExpandableKeyField()]; }); // == 匹配 否则'3'、3匹配不上
899
914
  // 设置缩进效果
900
- var indentDom = levels.length > 0 ? (react_1.default.createElement("span", { className: cx('Table-row-indent', "indent-level-".concat(levels.length)), style: { paddingLeft: indentSize * levels.length + 'px' } })) : null;
915
+ var indentDom = levels.length > 0 ? (react_1.default.createElement("span", { className: cx('Table-row-indent', "indent-level-".concat(levels.length)), style: levels.length > 0
916
+ ? { paddingLeft: (indentSize * levels.length) + 'px' } : {} })) : null;
901
917
  var cells = tdColumns.map(function (item, i) {
902
- var _a;
918
+ var _a, _b;
903
919
  var render = item.render && typeof item.render === 'function'
904
920
  ? item.render(data[item.key], data, rowIndex, i)
905
921
  : null;
@@ -913,12 +929,16 @@ var Table = /** @class */ (function (_super) {
913
929
  props.rowSpan === 1;
914
930
  }
915
931
  }
916
- return props.rowSpan === 0 || props.colSpan === 0 ? null : (react_1.default.createElement(Cell_1.default, (0, tslib_1.__assign)({ key: i }, props, { fixed: item.fixed === true ? 'left' : item.fixed, column: item, groupId: item.groupId }),
917
- react_1.default.createElement("div", { className: cx('Table-cell-wrapper', (_a = {},
918
- _a[cx('Table-cell-wrapper-prefix')] = i === 0 &&
919
- (!!indentDom || (levels.length === 0 && hasChildrenRow)),
920
- _a[cx("Table-cell-height-".concat(lineHeight))] = !!lineHeight,
921
- _a)) },
932
+ var className = typeof item.className === 'function'
933
+ ? item.className(data, rowIndex) : '';
934
+ return props.rowSpan === 0 || props.colSpan === 0 ? null : (react_1.default.createElement(Cell_1.default, (0, tslib_1.__assign)({ key: i }, props, { fixed: item.fixed === true ? 'left' : item.fixed, column: item, groupId: item.groupId, className: cx((_a = {},
935
+ _a["".concat(className)] = !!className,
936
+ _a)) }),
937
+ react_1.default.createElement("div", { className: cx('Table-cell-wrapper', (_b = {},
938
+ _b[cx('Table-cell-wrapper-prefix')] = i === 0 &&
939
+ (!!indentDom || levels.length === 0 && hasChildrenRow),
940
+ _b[cx("Table-cell-height-".concat(lineHeight))] = !!lineHeight,
941
+ _b)) },
922
942
  i === 0 && levels.length > 0 ? indentDom : null,
923
943
  i === 0 && hasChildrenRow
924
944
  ? _this.getExpandedIcons(isExpanded, data)
@@ -1096,10 +1116,14 @@ var Table = /** @class */ (function (_super) {
1096
1116
  return (react_1.default.createElement("div", { className: cx('Table-loading') }, typeof loading === 'boolean' ? react_1.default.createElement(Spinner_1.default, null) : loading));
1097
1117
  };
1098
1118
  Table.prototype.renderTable = function () {
1099
- var _a = this.props, scroll = _a.scroll, footSummary = _a.footSummary, loading = _a.loading, showHeader = _a.showHeader, cx = _a.classnames;
1119
+ var _a = this.props, scroll = _a.scroll, footSummary = _a.footSummary, loading = _a.loading, showHeader = _a.showHeader, itemActions = _a.itemActions, cx = _a.classnames;
1100
1120
  // 设置了横向滚动轴 则table的table-layout为fixed
1101
1121
  var hasScrollX = scroll && scroll.x;
1102
- return (react_1.default.createElement("div", { ref: this.contentDom, className: cx('Table-content'), style: hasScrollX ? { overflow: 'auto hidden' } : {} },
1122
+ var hoverRow = this.state.hoverRow;
1123
+ return (react_1.default.createElement("div", { ref: this.contentDom, className: cx('Table-content'), style: hasScrollX ? { overflow: 'auto hidden' } : {}, onMouseLeave: this.onMouseLeave.bind(this) },
1124
+ itemActions && hoverRow
1125
+ ? react_1.default.createElement(ItemActionsWrapper_1.default, { dom: hoverRow.target, classnames: cx }, typeof itemActions === 'function'
1126
+ ? itemActions(hoverRow.record, hoverRow.rowIndex) : null) : null,
1103
1127
  react_1.default.createElement("table", { style: hasScrollX
1104
1128
  ? { width: scroll.x + 'px', tableLayout: 'fixed' }
1105
1129
  : { tableLayout: 'auto' }, className: cx('Table-table') },
@@ -1132,7 +1156,7 @@ var Table = /** @class */ (function (_super) {
1132
1156
  headSummary ? (react_1.default.createElement("tbody", null, this.renderSummaryRow(headSummary))) : null)));
1133
1157
  };
1134
1158
  Table.prototype.renderScrollTableBody = function () {
1135
- var _a = this.props, scroll = _a.scroll, cx = _a.classnames;
1159
+ var _a = this.props, scroll = _a.scroll, itemActions = _a.itemActions, cx = _a.classnames;
1136
1160
  var style = {};
1137
1161
  var tableStyle = {};
1138
1162
  if (scroll && (scroll.y || scroll.x)) {
@@ -1145,7 +1169,11 @@ var Table = /** @class */ (function (_super) {
1145
1169
  tableLayout: 'fixed'
1146
1170
  });
1147
1171
  }
1148
- return (react_1.default.createElement("div", { ref: this.bodyDom, className: cx('Table-body'), style: style },
1172
+ var hoverRow = this.state.hoverRow;
1173
+ return (react_1.default.createElement("div", { ref: this.bodyDom, className: cx('Table-body'), style: style, onMouseLeave: this.onMouseLeave.bind(this) },
1174
+ itemActions && hoverRow
1175
+ ? react_1.default.createElement(ItemActionsWrapper_1.default, { dom: hoverRow.target, classnames: cx }, typeof itemActions === 'function'
1176
+ ? itemActions(hoverRow.record, hoverRow.rowIndex) : null) : null,
1149
1177
  react_1.default.createElement("table", { className: cx('Table-table'), style: tableStyle },
1150
1178
  this.renderColGroup(),
1151
1179
  this.renderTBody())));