@zhenliang/sheet 0.1.35 → 0.1.37
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.
|
@@ -10,7 +10,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
|
|
|
10
10
|
import { formatPrecision } from "../../../standardUtils";
|
|
11
11
|
import { InputNumber as AntInputNumber } from 'antd';
|
|
12
12
|
import 'antd/es/input-number/style/index.css';
|
|
13
|
-
import { isNil } from 'lodash';
|
|
13
|
+
import { isNil, isNumber } from 'lodash';
|
|
14
14
|
import { useCallback, useEffect, useRef } from 'react';
|
|
15
15
|
import "./index.less";
|
|
16
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -43,13 +43,18 @@ export var getNumberEditor = function getNumberEditor(extraProps, getExtraProps)
|
|
|
43
43
|
var value = props.value,
|
|
44
44
|
onChange = props.onChange;
|
|
45
45
|
var inputNumberRef = useRef(null);
|
|
46
|
+
var _ref = getExtraProps ? getExtraProps(props) : extraProps !== null && extraProps !== void 0 ? extraProps : {},
|
|
47
|
+
precision = _ref.precision,
|
|
48
|
+
inputArgs = _objectWithoutProperties(_ref, _excluded);
|
|
49
|
+
var max = inputArgs.max,
|
|
50
|
+
min = inputArgs.min;
|
|
51
|
+
var handleChange = useCallback(function (value) {
|
|
52
|
+
onChange(!isNil(value) ? value : null);
|
|
53
|
+
}, [onChange]);
|
|
46
54
|
useEffect(function () {
|
|
47
55
|
var _inputNumberRef$curre2;
|
|
48
56
|
inputNumberRef === null || inputNumberRef === void 0 || (_inputNumberRef$curre2 = inputNumberRef.current) === null || _inputNumberRef$curre2 === void 0 || _inputNumberRef$curre2.focus();
|
|
49
57
|
}, []);
|
|
50
|
-
var _ref = getExtraProps ? getExtraProps(props) : extraProps !== null && extraProps !== void 0 ? extraProps : {},
|
|
51
|
-
precision = _ref.precision,
|
|
52
|
-
inputArgs = _objectWithoutProperties(_ref, _excluded);
|
|
53
58
|
var baseFormatter = useCallback(function (value) {
|
|
54
59
|
if (!value) {
|
|
55
60
|
return '';
|
|
@@ -72,9 +77,6 @@ export var getNumberEditor = function getNumberEditor(extraProps, getExtraProps)
|
|
|
72
77
|
* 重新声明,后面有需求可以改一下
|
|
73
78
|
*/
|
|
74
79
|
var valueParser = baseFormatter;
|
|
75
|
-
var handleChange = useCallback(function (value) {
|
|
76
|
-
onChange && onChange(!isNil(value) ? value : null);
|
|
77
|
-
}, [onChange]);
|
|
78
80
|
return /*#__PURE__*/_jsx(AntInputNumber, _objectSpread(_objectSpread({
|
|
79
81
|
ref: inputNumberRef
|
|
80
82
|
}, inputArgs), {}, {
|
|
@@ -86,7 +88,18 @@ export var getNumberEditor = function getNumberEditor(extraProps, getExtraProps)
|
|
|
86
88
|
return e.stopPropagation();
|
|
87
89
|
},
|
|
88
90
|
value: value,
|
|
89
|
-
onChange: handleChange
|
|
91
|
+
onChange: handleChange,
|
|
92
|
+
onInput: function onInput(value) {
|
|
93
|
+
// 将截断最大最小放到 input 事件中
|
|
94
|
+
if (!isNumber(+value)) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
if (max && +value > max) {
|
|
98
|
+
handleChange(max);
|
|
99
|
+
} else if (min && +value < min) {
|
|
100
|
+
handleChange(min);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
90
103
|
}));
|
|
91
104
|
};
|
|
92
105
|
NumberEditor.formatter = function (value) {
|
package/dist/core/sheet/index.js
CHANGED
|
@@ -57,7 +57,9 @@ var Sheet = function Sheet(props) {
|
|
|
57
57
|
showBackEdit = props.showBackEdit,
|
|
58
58
|
backEditStyle = props.backEditStyle,
|
|
59
59
|
_props$boldScroll = props.boldScroll,
|
|
60
|
-
boldScroll = _props$boldScroll === void 0 ? true : _props$boldScroll
|
|
60
|
+
boldScroll = _props$boldScroll === void 0 ? true : _props$boldScroll,
|
|
61
|
+
_props$hideColBar = props.hideColBar,
|
|
62
|
+
hideColBar = _props$hideColBar === void 0 ? true : _props$hideColBar;
|
|
61
63
|
var sheetWrapperRef = useRef(null);
|
|
62
64
|
var contextMenuRef = useRef(null);
|
|
63
65
|
var eventBus = useEventBus();
|
|
@@ -238,7 +240,8 @@ var Sheet = function Sheet(props) {
|
|
|
238
240
|
ref: sheetWrapperRef,
|
|
239
241
|
tabIndex: 0,
|
|
240
242
|
className: classNames('harvest harvest-sheet-container', className, cls({
|
|
241
|
-
tableWarpScroll: hasHorizontalScrollbar && boldScroll
|
|
243
|
+
tableWarpScroll: hasHorizontalScrollbar && boldScroll,
|
|
244
|
+
hideColBar: hideColBar
|
|
242
245
|
})),
|
|
243
246
|
style: {
|
|
244
247
|
maxHeight: (_scroll$y = scroll === null || scroll === void 0 ? void 0 : scroll.y) !== null && _scroll$y !== void 0 ? _scroll$y : memoHeight,
|
package/dist/core/util.js
CHANGED
|
@@ -97,7 +97,7 @@ export function stringToClipboardData(str, count) {
|
|
|
97
97
|
});
|
|
98
98
|
}
|
|
99
99
|
export var defaultParsePaste = function defaultParsePaste(str) {
|
|
100
|
-
return str.
|
|
100
|
+
return str.trimEnd().split(/\r\n|\n|\r/).map(function (row) {
|
|
101
101
|
return row.split('\t');
|
|
102
102
|
});
|
|
103
103
|
};
|
package/dist/example/group.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
2
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
4
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
1
5
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
6
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
7
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
@@ -43,10 +47,12 @@ var data = [{
|
|
|
43
47
|
address: 'New York No. 1 Lake Park',
|
|
44
48
|
children: [{
|
|
45
49
|
id: 11,
|
|
46
|
-
key: '1-1'
|
|
50
|
+
key: '1-1',
|
|
51
|
+
parentId: 1
|
|
47
52
|
}, {
|
|
48
53
|
id: 12,
|
|
49
|
-
key: '1-2'
|
|
54
|
+
key: '1-2',
|
|
55
|
+
parentId: 1
|
|
50
56
|
}]
|
|
51
57
|
}, {
|
|
52
58
|
key: 2,
|
|
@@ -56,10 +62,12 @@ var data = [{
|
|
|
56
62
|
address: 'London No. 1 Lake Park',
|
|
57
63
|
children: [{
|
|
58
64
|
id: 21,
|
|
59
|
-
key: '2-1'
|
|
65
|
+
key: '2-1',
|
|
66
|
+
parentId: 2
|
|
60
67
|
}, {
|
|
61
68
|
id: 22,
|
|
62
|
-
key: '2-2'
|
|
69
|
+
key: '2-2',
|
|
70
|
+
parentId: 2
|
|
63
71
|
}]
|
|
64
72
|
}, {
|
|
65
73
|
key: 3,
|
|
@@ -75,10 +83,12 @@ var data = [{
|
|
|
75
83
|
address: 'Sidney No. 1 Lake Park',
|
|
76
84
|
children: [{
|
|
77
85
|
id: 41,
|
|
78
|
-
key: '4-1'
|
|
86
|
+
key: '4-1',
|
|
87
|
+
parentId: 4
|
|
79
88
|
}, {
|
|
80
89
|
id: 42,
|
|
81
|
-
key: '4-2'
|
|
90
|
+
key: '4-2',
|
|
91
|
+
parentId: 4
|
|
82
92
|
}]
|
|
83
93
|
}];
|
|
84
94
|
var App = function App() {
|
|
@@ -86,14 +96,27 @@ var App = function App() {
|
|
|
86
96
|
_useState2 = _slicedToArray(_useState, 2),
|
|
87
97
|
state = _useState2[0],
|
|
88
98
|
setState = _useState2[1];
|
|
89
|
-
var handleChange = useCallback(function (changes
|
|
99
|
+
var handleChange = useCallback(function (changes) {
|
|
90
100
|
// console.log(extChange);
|
|
91
101
|
var newState = cloneDeep(state);
|
|
102
|
+
var flatNewState = newState.reduce(function (left, right) {
|
|
103
|
+
return [].concat(_toConsumableArray(left), [right], _toConsumableArray(right.children || []));
|
|
104
|
+
}, []);
|
|
92
105
|
changes.forEach(function (change) {
|
|
93
|
-
var
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
106
|
+
var key = change.key,
|
|
107
|
+
value = change.value,
|
|
108
|
+
id = change.id;
|
|
109
|
+
var changedItem = flatNewState.find(function (item) {
|
|
110
|
+
return item.id === id;
|
|
111
|
+
});
|
|
112
|
+
var parentIndex = newState.findIndex(function (item) {
|
|
113
|
+
return item.id === changedItem.parentId;
|
|
114
|
+
});
|
|
115
|
+
var childIndex = newState[parentIndex].children.findIndex(function (item) {
|
|
116
|
+
return item.id === id;
|
|
117
|
+
});
|
|
118
|
+
newState[parentIndex].children[childIndex][key] = value;
|
|
119
|
+
// newState[row][key] = value;
|
|
97
120
|
});
|
|
98
121
|
setState(newState);
|
|
99
122
|
}, [state]);
|
|
@@ -116,7 +139,7 @@ var App = function App() {
|
|
|
116
139
|
// rowExpandable: (record) => record.name !== 'Not Expandable',
|
|
117
140
|
// }}
|
|
118
141
|
,
|
|
119
|
-
dataSource:
|
|
142
|
+
dataSource: state,
|
|
120
143
|
onChange: handleChange
|
|
121
144
|
});
|
|
122
145
|
};
|
package/dist/type/sheet.d.ts
CHANGED
|
@@ -115,6 +115,7 @@ export type SheetProps = {
|
|
|
115
115
|
rowClassName?: string | ((record: Record<string, unknown>, index: number) => string);
|
|
116
116
|
children?: any[];
|
|
117
117
|
boldScroll?: boolean;
|
|
118
|
+
hideColBar?: boolean;
|
|
118
119
|
};
|
|
119
120
|
export type WidthConfigContext = {
|
|
120
121
|
onChange?: (value: Record<number | string, number>) => void;
|