vxe-table 4.1.17-beta.0 → 4.1.18-beta.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.
- package/es/edit/src/hook.js +20 -10
- package/es/grid/src/grid.js +1 -1
- package/es/input/src/input.js +46 -32
- package/es/table/src/emits.js +3 -1
- package/es/table/src/table.js +25 -4
- package/lib/edit/src/hook.js +30 -12
- package/lib/edit/src/hook.min.js +1 -1
- package/lib/grid/src/grid.js +1 -1
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +132 -53
- package/lib/index.umd.min.js +1 -1
- package/lib/input/src/input.js +62 -35
- package/lib/input/src/input.min.js +1 -1
- package/lib/table/src/emits.js +1 -1
- package/lib/table/src/emits.min.js +1 -1
- package/lib/table/src/table.js +37 -4
- package/lib/table/src/table.min.js +1 -1
- package/package.json +3 -3
- package/packages/edit/src/hook.ts +19 -10
- package/packages/grid/src/grid.ts +1 -1
- package/packages/input/src/input.ts +49 -30
- package/packages/table/src/emits.ts +3 -1
- package/packages/table/src/table.ts +24 -4
- package/types/input.d.ts +2 -2
- package/types/plugins/pro.d.ts +143 -0
- package/types/table.d.ts +5 -1
package/es/edit/src/hook.js
CHANGED
|
@@ -69,18 +69,19 @@ var editHook = {
|
|
|
69
69
|
function insertTreeRow(newRecords, isAppend) {
|
|
70
70
|
var tableFullTreeData = internalData.tableFullTreeData, afterFullData = internalData.afterFullData, fullDataRowIdData = internalData.fullDataRowIdData, fullAllDataRowIdData = internalData.fullAllDataRowIdData;
|
|
71
71
|
var treeOpts = computeTreeOpts.value;
|
|
72
|
+
var rowField = treeOpts.rowField, parentField = treeOpts.parentField, children = treeOpts.children, mapChildren = treeOpts.mapChildren;
|
|
72
73
|
var funcName = isAppend ? 'push' : 'unshift';
|
|
73
74
|
newRecords.forEach(function (item) {
|
|
74
|
-
var parentRowId = item[
|
|
75
|
+
var parentRowId = item[parentField];
|
|
75
76
|
var rowid = getRowid($xetable, item);
|
|
76
|
-
var matchObj = parentRowId ? XEUtils.findTree(tableFullTreeData, function (item) { return parentRowId === item[
|
|
77
|
+
var matchObj = parentRowId ? XEUtils.findTree(tableFullTreeData, function (item) { return parentRowId === item[rowField]; }, { children: mapChildren }) : null;
|
|
77
78
|
if (matchObj) {
|
|
78
79
|
var parentRow = matchObj.item;
|
|
79
80
|
var parentRest = fullAllDataRowIdData[getRowid($xetable, parentRow)];
|
|
80
81
|
var parentLevel = parentRest ? parentRest.level : 0;
|
|
81
|
-
var parentChilds = parentRow[
|
|
82
|
+
var parentChilds = parentRow[children];
|
|
82
83
|
if (!XEUtils.isArray(parentChilds)) {
|
|
83
|
-
parentChilds = parentRow[
|
|
84
|
+
parentChilds = parentRow[children] = [];
|
|
84
85
|
}
|
|
85
86
|
parentChilds[funcName](item);
|
|
86
87
|
var rest = { row: item, rowid: rowid, seq: -1, index: -1, _index: -1, $index: -1, items: parentChilds, parent: parent, level: parentLevel + 1 };
|
|
@@ -124,7 +125,7 @@ var editHook = {
|
|
|
124
125
|
var mergeList = reactData.mergeList, editStore = reactData.editStore;
|
|
125
126
|
var tableFullTreeData = internalData.tableFullTreeData, afterFullData = internalData.afterFullData, tableFullData = internalData.tableFullData, fullDataRowIdData = internalData.fullDataRowIdData, fullAllDataRowIdData = internalData.fullAllDataRowIdData;
|
|
126
127
|
var treeOpts = computeTreeOpts.value;
|
|
127
|
-
var transform = treeOpts.transform;
|
|
128
|
+
var transform = treeOpts.transform, rowField = treeOpts.rowField, mapChildren = treeOpts.mapChildren;
|
|
128
129
|
if (!XEUtils.isArray(records)) {
|
|
129
130
|
records = [records];
|
|
130
131
|
}
|
|
@@ -167,7 +168,7 @@ var editHook = {
|
|
|
167
168
|
else {
|
|
168
169
|
// 如果为虚拟树
|
|
169
170
|
if (treeConfig && transform) {
|
|
170
|
-
var matchObj_1 = XEUtils.findTree(tableFullTreeData, function (item) { return row[
|
|
171
|
+
var matchObj_1 = XEUtils.findTree(tableFullTreeData, function (item) { return row[rowField] === item[rowField]; }, { children: mapChildren });
|
|
171
172
|
if (matchObj_1) {
|
|
172
173
|
var parentRow_1 = matchObj_1.parent;
|
|
173
174
|
var parentChilds_1 = matchObj_1.items;
|
|
@@ -177,13 +178,13 @@ var editHook = {
|
|
|
177
178
|
var rowid = getRowid($xetable, item);
|
|
178
179
|
if (process.env.NODE_ENV === 'development') {
|
|
179
180
|
if (item[treeOpts.parentField]) {
|
|
180
|
-
if (parentRow_1 && item[treeOpts.parentField] !== parentRow_1[
|
|
181
|
-
errLog('vxe.error.errProp', [treeOpts.parentField + "=" + item[treeOpts.parentField], treeOpts.parentField + "=" + parentRow_1[
|
|
181
|
+
if (parentRow_1 && item[treeOpts.parentField] !== parentRow_1[rowField]) {
|
|
182
|
+
errLog('vxe.error.errProp', [treeOpts.parentField + "=" + item[treeOpts.parentField], treeOpts.parentField + "=" + parentRow_1[rowField]]);
|
|
182
183
|
}
|
|
183
184
|
}
|
|
184
185
|
}
|
|
185
186
|
if (parentRow_1) {
|
|
186
|
-
item[treeOpts.parentField] = parentRow_1[
|
|
187
|
+
item[treeOpts.parentField] = parentRow_1[rowField];
|
|
187
188
|
}
|
|
188
189
|
parentChilds_1.splice(matchObj_1.index + i, 0, item);
|
|
189
190
|
var rest = { row: item, rowid: rowid, seq: -1, index: -1, _index: -1, $index: -1, items: parentChilds_1, parent: parentRow_1, level: parentLevel_1 + 1 };
|
|
@@ -202,7 +203,16 @@ var editHook = {
|
|
|
202
203
|
if (treeConfig) {
|
|
203
204
|
throw new Error(getLog('vxe.error.noTree', ['insert']));
|
|
204
205
|
}
|
|
205
|
-
var afIndex_1 =
|
|
206
|
+
var afIndex_1 = -1;
|
|
207
|
+
// 如果是可视索引
|
|
208
|
+
if (XEUtils.isNumber(row)) {
|
|
209
|
+
if (row < afterFullData.length) {
|
|
210
|
+
afIndex_1 = row;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
afIndex_1 = $xetable.findRowIndexOf(afterFullData, row);
|
|
215
|
+
}
|
|
206
216
|
if (afIndex_1 === -1) {
|
|
207
217
|
throw new Error(errLog('vxe.error.unableInsert'));
|
|
208
218
|
}
|
package/es/grid/src/grid.js
CHANGED
|
@@ -1059,7 +1059,7 @@ export default defineComponent({
|
|
|
1059
1059
|
var proxyOpts = computeProxyOpts.value;
|
|
1060
1060
|
var formOpts = computeFormOpts.value;
|
|
1061
1061
|
if (proxyConfig && (data || (proxyOpts.form && formOpts.data))) {
|
|
1062
|
-
errLog('errConflicts', ['grid.data', 'grid.proxy-config']);
|
|
1062
|
+
errLog('vxe.error.errConflicts', ['grid.data', 'grid.proxy-config']);
|
|
1063
1063
|
}
|
|
1064
1064
|
if (columns && columns.length) {
|
|
1065
1065
|
$xegrid.loadColumn(columns);
|
package/es/input/src/input.js
CHANGED
|
@@ -137,6 +137,13 @@ export default defineComponent({
|
|
|
137
137
|
getRefMaps: function () { return refMaps; }
|
|
138
138
|
};
|
|
139
139
|
var inputMethods = {};
|
|
140
|
+
var parseDate = function (value, format) {
|
|
141
|
+
var type = props.type;
|
|
142
|
+
if (type === 'time') {
|
|
143
|
+
return toStringTimeDate(value);
|
|
144
|
+
}
|
|
145
|
+
return XEUtils.toStringDate(value, format);
|
|
146
|
+
};
|
|
140
147
|
var computeIsDateTimeType = computed(function () {
|
|
141
148
|
var type = props.type;
|
|
142
149
|
return type === 'time' || type === 'datetime';
|
|
@@ -187,18 +194,12 @@ export default defineComponent({
|
|
|
187
194
|
return type === 'time' ? 'HH:mm:ss' : (props.valueFormat || (type === 'datetime' ? 'yyyy-MM-dd HH:mm:ss' : 'yyyy-MM-dd'));
|
|
188
195
|
});
|
|
189
196
|
var computeDateValue = computed(function () {
|
|
190
|
-
var modelValue = props.modelValue
|
|
197
|
+
var modelValue = props.modelValue;
|
|
191
198
|
var isDatePickerType = computeIsDatePickerType.value;
|
|
192
199
|
var dateValueFormat = computeDateValueFormat.value;
|
|
193
200
|
var val = null;
|
|
194
201
|
if (modelValue && isDatePickerType) {
|
|
195
|
-
var date =
|
|
196
|
-
if (type === 'time') {
|
|
197
|
-
date = toStringTimeDate(modelValue);
|
|
198
|
-
}
|
|
199
|
-
else {
|
|
200
|
-
date = XEUtils.toStringDate(modelValue, dateValueFormat);
|
|
201
|
-
}
|
|
202
|
+
var date = parseDate(modelValue, dateValueFormat);
|
|
202
203
|
if (XEUtils.isValidDate(date)) {
|
|
203
204
|
val = date;
|
|
204
205
|
}
|
|
@@ -283,12 +284,15 @@ export default defineComponent({
|
|
|
283
284
|
}
|
|
284
285
|
return '';
|
|
285
286
|
});
|
|
287
|
+
var computeFirstDayOfWeek = computed(function () {
|
|
288
|
+
var startDay = props.startDay, startWeek = props.startWeek;
|
|
289
|
+
return XEUtils.toNumber(XEUtils.isNumber(startDay) || XEUtils.isString(startDay) ? startDay : startWeek);
|
|
290
|
+
});
|
|
286
291
|
var computeWeekDatas = computed(function () {
|
|
287
292
|
var weeks = [];
|
|
288
293
|
var isDatePickerType = computeIsDatePickerType.value;
|
|
289
294
|
if (isDatePickerType) {
|
|
290
|
-
var
|
|
291
|
-
var sWeek = XEUtils.toNumber(XEUtils.isNumber(startDay) || XEUtils.isString(startDay) ? startDay : startWeek);
|
|
295
|
+
var sWeek = computeFirstDayOfWeek.value;
|
|
292
296
|
weeks.push(sWeek);
|
|
293
297
|
for (var index = 0; index < 6; index++) {
|
|
294
298
|
if (sWeek >= 6) {
|
|
@@ -435,6 +439,7 @@ export default defineComponent({
|
|
|
435
439
|
});
|
|
436
440
|
var computeWeekDates = computed(function () {
|
|
437
441
|
var dayDatas = computeDayDatas.value;
|
|
442
|
+
var firstDayOfWeek = computeFirstDayOfWeek.value;
|
|
438
443
|
return dayDatas.map(function (list) {
|
|
439
444
|
var firstItem = list[0];
|
|
440
445
|
var item = {
|
|
@@ -444,7 +449,7 @@ export default defineComponent({
|
|
|
444
449
|
isCurrent: false,
|
|
445
450
|
isNow: false,
|
|
446
451
|
isNext: false,
|
|
447
|
-
label: XEUtils.getYearWeek(firstItem.date)
|
|
452
|
+
label: XEUtils.getYearWeek(firstItem.date, firstDayOfWeek)
|
|
448
453
|
};
|
|
449
454
|
return [item].concat(list);
|
|
450
455
|
});
|
|
@@ -610,18 +615,27 @@ export default defineComponent({
|
|
|
610
615
|
var type = props.type;
|
|
611
616
|
var valueFormat = props.valueFormat;
|
|
612
617
|
var dateLabelFormat = computeDateLabelFormat.value;
|
|
618
|
+
var firstDayOfWeek = computeFirstDayOfWeek.value;
|
|
613
619
|
var dValue = null;
|
|
614
620
|
var dLabel = '';
|
|
615
621
|
if (value) {
|
|
616
|
-
|
|
617
|
-
dValue = toStringTimeDate(value);
|
|
618
|
-
}
|
|
619
|
-
else {
|
|
620
|
-
dValue = XEUtils.toStringDate(value, valueFormat);
|
|
621
|
-
}
|
|
622
|
+
dValue = parseDate(value, valueFormat);
|
|
622
623
|
}
|
|
623
624
|
if (XEUtils.isValidDate(dValue)) {
|
|
624
|
-
dLabel = XEUtils.toDateString(dValue, dateLabelFormat);
|
|
625
|
+
dLabel = XEUtils.toDateString(dValue, dateLabelFormat, { firstDay: firstDayOfWeek });
|
|
626
|
+
// 由于年份和第几周是冲突的行为,所以需要特殊处理,判断是否跨年
|
|
627
|
+
if (dateLabelFormat && type === 'week') {
|
|
628
|
+
var firstWeekDate = XEUtils.getWhatWeek(dValue, 0, firstDayOfWeek, firstDayOfWeek);
|
|
629
|
+
if (firstWeekDate.getFullYear() < dValue.getFullYear()) {
|
|
630
|
+
var yyIndex = dateLabelFormat.indexOf('yyyy');
|
|
631
|
+
if (yyIndex > -1) {
|
|
632
|
+
var yyNum = Number(dLabel.substring(yyIndex, yyIndex + 4));
|
|
633
|
+
if (yyNum && !isNaN(yyNum)) {
|
|
634
|
+
dLabel = dLabel.replace("" + yyNum, "" + (yyNum - 1));
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
}
|
|
625
639
|
}
|
|
626
640
|
else {
|
|
627
641
|
dValue = null;
|
|
@@ -680,16 +694,17 @@ export default defineComponent({
|
|
|
680
694
|
var datetimePanelValue = reactData.datetimePanelValue;
|
|
681
695
|
var isDateTimeType = computeIsDateTimeType.value;
|
|
682
696
|
var dateValueFormat = computeDateValueFormat.value;
|
|
697
|
+
var firstDayOfWeek = computeFirstDayOfWeek.value;
|
|
683
698
|
if (props.type === 'week') {
|
|
684
699
|
var sWeek = XEUtils.toNumber(props.selectDay);
|
|
685
|
-
date = XEUtils.getWhatWeek(date, 0, sWeek);
|
|
700
|
+
date = XEUtils.getWhatWeek(date, 0, sWeek, firstDayOfWeek);
|
|
686
701
|
}
|
|
687
702
|
else if (isDateTimeType) {
|
|
688
703
|
date.setHours(datetimePanelValue.getHours());
|
|
689
704
|
date.setMinutes(datetimePanelValue.getMinutes());
|
|
690
705
|
date.setSeconds(datetimePanelValue.getSeconds());
|
|
691
706
|
}
|
|
692
|
-
var inpVal = XEUtils.toDateString(date, dateValueFormat);
|
|
707
|
+
var inpVal = XEUtils.toDateString(date, dateValueFormat, { firstDay: firstDayOfWeek });
|
|
693
708
|
dateCheckMonth(date);
|
|
694
709
|
if (!XEUtils.isEqual(modelValue, inpVal)) {
|
|
695
710
|
emitModel(inpVal, { type: 'update' });
|
|
@@ -723,13 +738,7 @@ export default defineComponent({
|
|
|
723
738
|
}
|
|
724
739
|
else if (isDatePickerType) {
|
|
725
740
|
if (inputValue) {
|
|
726
|
-
var inpDateVal =
|
|
727
|
-
if (type === 'time') {
|
|
728
|
-
inpDateVal = toStringTimeDate(inputValue);
|
|
729
|
-
}
|
|
730
|
-
else {
|
|
731
|
-
inpDateVal = XEUtils.toStringDate(inputValue, dateLabelFormat);
|
|
732
|
-
}
|
|
741
|
+
var inpDateVal = parseDate(inputValue, dateLabelFormat);
|
|
733
742
|
if (XEUtils.isValidDate(inpDateVal)) {
|
|
734
743
|
if (type === 'time') {
|
|
735
744
|
inpDateVal = XEUtils.toDateString(inpDateVal, dateLabelFormat);
|
|
@@ -740,6 +749,7 @@ export default defineComponent({
|
|
|
740
749
|
}
|
|
741
750
|
else {
|
|
742
751
|
var isChange = false;
|
|
752
|
+
var firstDayOfWeek = computeFirstDayOfWeek.value;
|
|
743
753
|
if (type === 'datetime') {
|
|
744
754
|
var dateValue = computeDateValue.value;
|
|
745
755
|
if (inputValue !== XEUtils.toDateString(dateValue, dateLabelFormat) || inputValue !== XEUtils.toDateString(inpDateVal, dateLabelFormat)) {
|
|
@@ -752,7 +762,7 @@ export default defineComponent({
|
|
|
752
762
|
else {
|
|
753
763
|
isChange = true;
|
|
754
764
|
}
|
|
755
|
-
reactData.inputValue = XEUtils.toDateString(inpDateVal, dateLabelFormat);
|
|
765
|
+
reactData.inputValue = XEUtils.toDateString(inpDateVal, dateLabelFormat, { firstDay: firstDayOfWeek });
|
|
756
766
|
if (isChange) {
|
|
757
767
|
dateChange(inpDateVal);
|
|
758
768
|
}
|
|
@@ -1192,17 +1202,18 @@ export default defineComponent({
|
|
|
1192
1202
|
}
|
|
1193
1203
|
else {
|
|
1194
1204
|
var offsetDay = datePanelValue || XEUtils.getWhatDay(Date.now(), 0, 'first');
|
|
1205
|
+
var firstDayOfWeek = computeFirstDayOfWeek.value;
|
|
1195
1206
|
if (isLeftArrow) {
|
|
1196
1207
|
offsetDay = XEUtils.getWhatDay(offsetDay, -1);
|
|
1197
1208
|
}
|
|
1198
1209
|
else if (isUpArrow) {
|
|
1199
|
-
offsetDay = XEUtils.getWhatWeek(offsetDay, -1);
|
|
1210
|
+
offsetDay = XEUtils.getWhatWeek(offsetDay, -1, firstDayOfWeek);
|
|
1200
1211
|
}
|
|
1201
1212
|
else if (isRightArrow) {
|
|
1202
1213
|
offsetDay = XEUtils.getWhatDay(offsetDay, 1);
|
|
1203
1214
|
}
|
|
1204
1215
|
else if (isDwArrow) {
|
|
1205
|
-
offsetDay = XEUtils.getWhatWeek(offsetDay, 1);
|
|
1216
|
+
offsetDay = XEUtils.getWhatWeek(offsetDay, 1, firstDayOfWeek);
|
|
1206
1217
|
}
|
|
1207
1218
|
dateMoveDay(offsetDay);
|
|
1208
1219
|
}
|
|
@@ -2037,8 +2048,11 @@ export default defineComponent({
|
|
|
2037
2048
|
initValue();
|
|
2038
2049
|
});
|
|
2039
2050
|
watch(computeDateLabelFormat, function () {
|
|
2040
|
-
|
|
2041
|
-
|
|
2051
|
+
var isDatePickerType = computeIsDatePickerType.value;
|
|
2052
|
+
if (isDatePickerType) {
|
|
2053
|
+
dateParseValue(reactData.datePanelValue);
|
|
2054
|
+
reactData.inputValue = reactData.datePanelLabel;
|
|
2055
|
+
}
|
|
2042
2056
|
});
|
|
2043
2057
|
nextTick(function () {
|
|
2044
2058
|
GlobalEvent.on($xeinput, 'mousewheel', handleGlobalMousewheelEvent);
|
package/es/table/src/emits.js
CHANGED
package/es/table/src/table.js
CHANGED
|
@@ -2741,15 +2741,16 @@ export default defineComponent({
|
|
|
2741
2741
|
*/
|
|
2742
2742
|
getCheckboxRecords: function (isFull) {
|
|
2743
2743
|
var treeConfig = props.treeConfig;
|
|
2744
|
-
var tableFullData = internalData.tableFullData, afterFullData = internalData.afterFullData;
|
|
2744
|
+
var tableFullData = internalData.tableFullData, afterFullData = internalData.afterFullData, afterTreeFullData = internalData.afterTreeFullData, tableFullTreeData = internalData.tableFullTreeData;
|
|
2745
2745
|
var treeOpts = computeTreeOpts.value;
|
|
2746
2746
|
var checkboxOpts = computeCheckboxOpts.value;
|
|
2747
|
+
var transform = treeOpts.transform, children = treeOpts.children, mapChildren = treeOpts.mapChildren;
|
|
2747
2748
|
var property = checkboxOpts.checkField;
|
|
2748
2749
|
var rowList = [];
|
|
2749
|
-
var currTableData = isFull ? tableFullData : afterFullData;
|
|
2750
|
+
var currTableData = isFull ? (transform ? tableFullTreeData : tableFullData) : (transform ? afterTreeFullData : afterFullData);
|
|
2750
2751
|
if (property) {
|
|
2751
2752
|
if (treeConfig) {
|
|
2752
|
-
rowList = XEUtils.filterTree(currTableData, function (row) { return XEUtils.get(row, property); },
|
|
2753
|
+
rowList = XEUtils.filterTree(currTableData, function (row) { return XEUtils.get(row, property); }, { children: transform ? mapChildren : children });
|
|
2753
2754
|
}
|
|
2754
2755
|
else {
|
|
2755
2756
|
rowList = currTableData.filter(function (row) { return XEUtils.get(row, property); });
|
|
@@ -2758,7 +2759,7 @@ export default defineComponent({
|
|
|
2758
2759
|
else {
|
|
2759
2760
|
var selection_1 = reactData.selection;
|
|
2760
2761
|
if (treeConfig) {
|
|
2761
|
-
rowList = XEUtils.filterTree(currTableData, function (row) { return $xetable.findRowIndexOf(selection_1, row) > -1; },
|
|
2762
|
+
rowList = XEUtils.filterTree(currTableData, function (row) { return $xetable.findRowIndexOf(selection_1, row) > -1; }, { children: transform ? mapChildren : children });
|
|
2762
2763
|
}
|
|
2763
2764
|
else {
|
|
2764
2765
|
rowList = currTableData.filter(function (row) { return $xetable.findRowIndexOf(selection_1, row) > -1; });
|
|
@@ -2766,6 +2767,26 @@ export default defineComponent({
|
|
|
2766
2767
|
}
|
|
2767
2768
|
return rowList;
|
|
2768
2769
|
},
|
|
2770
|
+
/**
|
|
2771
|
+
* 只对 tree-config 有效,获取行的父级
|
|
2772
|
+
*/
|
|
2773
|
+
getParentRow: function (rowOrRowid) {
|
|
2774
|
+
var treeConfig = props.treeConfig;
|
|
2775
|
+
var fullDataRowIdData = internalData.fullDataRowIdData;
|
|
2776
|
+
if (rowOrRowid && treeConfig) {
|
|
2777
|
+
var rowid = void 0;
|
|
2778
|
+
if (XEUtils.isString(rowOrRowid)) {
|
|
2779
|
+
rowid = rowOrRowid;
|
|
2780
|
+
}
|
|
2781
|
+
else {
|
|
2782
|
+
rowid = getRowid($xetable, rowOrRowid);
|
|
2783
|
+
}
|
|
2784
|
+
if (rowid) {
|
|
2785
|
+
return fullDataRowIdData[rowid] ? fullDataRowIdData[rowid].parent : null;
|
|
2786
|
+
}
|
|
2787
|
+
}
|
|
2788
|
+
return null;
|
|
2789
|
+
},
|
|
2769
2790
|
/**
|
|
2770
2791
|
* 根据行的唯一主键获取行
|
|
2771
2792
|
* @param {String/Number} rowid 行主键
|
package/lib/edit/src/hook.js
CHANGED
|
@@ -118,22 +118,28 @@ var editHook = {
|
|
|
118
118
|
fullDataRowIdData = internalData.fullDataRowIdData,
|
|
119
119
|
fullAllDataRowIdData = internalData.fullAllDataRowIdData;
|
|
120
120
|
var treeOpts = computeTreeOpts.value;
|
|
121
|
+
var rowField = treeOpts.rowField,
|
|
122
|
+
parentField = treeOpts.parentField,
|
|
123
|
+
children = treeOpts.children,
|
|
124
|
+
mapChildren = treeOpts.mapChildren;
|
|
121
125
|
var funcName = isAppend ? 'push' : 'unshift';
|
|
122
126
|
newRecords.forEach(function (item) {
|
|
123
|
-
var parentRowId = item[
|
|
127
|
+
var parentRowId = item[parentField];
|
|
124
128
|
var rowid = (0, _util.getRowid)($xetable, item);
|
|
125
129
|
var matchObj = parentRowId ? _xeUtils.default.findTree(tableFullTreeData, function (item) {
|
|
126
|
-
return parentRowId === item[
|
|
127
|
-
},
|
|
130
|
+
return parentRowId === item[rowField];
|
|
131
|
+
}, {
|
|
132
|
+
children: mapChildren
|
|
133
|
+
}) : null;
|
|
128
134
|
|
|
129
135
|
if (matchObj) {
|
|
130
136
|
var parentRow = matchObj.item;
|
|
131
137
|
var parentRest = fullAllDataRowIdData[(0, _util.getRowid)($xetable, parentRow)];
|
|
132
138
|
var parentLevel = parentRest ? parentRest.level : 0;
|
|
133
|
-
var parentChilds = parentRow[
|
|
139
|
+
var parentChilds = parentRow[children];
|
|
134
140
|
|
|
135
141
|
if (!_xeUtils.default.isArray(parentChilds)) {
|
|
136
|
-
parentChilds = parentRow[
|
|
142
|
+
parentChilds = parentRow[children] = [];
|
|
137
143
|
}
|
|
138
144
|
|
|
139
145
|
parentChilds[funcName](item);
|
|
@@ -206,7 +212,9 @@ var editHook = {
|
|
|
206
212
|
fullDataRowIdData = internalData.fullDataRowIdData,
|
|
207
213
|
fullAllDataRowIdData = internalData.fullAllDataRowIdData;
|
|
208
214
|
var treeOpts = computeTreeOpts.value;
|
|
209
|
-
var transform = treeOpts.transform
|
|
215
|
+
var transform = treeOpts.transform,
|
|
216
|
+
rowField = treeOpts.rowField,
|
|
217
|
+
mapChildren = treeOpts.mapChildren;
|
|
210
218
|
|
|
211
219
|
if (!_xeUtils.default.isArray(records)) {
|
|
212
220
|
records = [records];
|
|
@@ -254,8 +262,10 @@ var editHook = {
|
|
|
254
262
|
// 如果为虚拟树
|
|
255
263
|
if (treeConfig && transform) {
|
|
256
264
|
var matchObj_1 = _xeUtils.default.findTree(tableFullTreeData, function (item) {
|
|
257
|
-
return row[
|
|
258
|
-
},
|
|
265
|
+
return row[rowField] === item[rowField];
|
|
266
|
+
}, {
|
|
267
|
+
children: mapChildren
|
|
268
|
+
});
|
|
259
269
|
|
|
260
270
|
if (matchObj_1) {
|
|
261
271
|
var parentRow_1 = matchObj_1.parent;
|
|
@@ -267,14 +277,14 @@ var editHook = {
|
|
|
267
277
|
|
|
268
278
|
if (process.env.NODE_ENV === 'development') {
|
|
269
279
|
if (item[treeOpts.parentField]) {
|
|
270
|
-
if (parentRow_1 && item[treeOpts.parentField] !== parentRow_1[
|
|
271
|
-
(0, _utils.errLog)('vxe.error.errProp', [treeOpts.parentField + "=" + item[treeOpts.parentField], treeOpts.parentField + "=" + parentRow_1[
|
|
280
|
+
if (parentRow_1 && item[treeOpts.parentField] !== parentRow_1[rowField]) {
|
|
281
|
+
(0, _utils.errLog)('vxe.error.errProp', [treeOpts.parentField + "=" + item[treeOpts.parentField], treeOpts.parentField + "=" + parentRow_1[rowField]]);
|
|
272
282
|
}
|
|
273
283
|
}
|
|
274
284
|
}
|
|
275
285
|
|
|
276
286
|
if (parentRow_1) {
|
|
277
|
-
item[treeOpts.parentField] = parentRow_1[
|
|
287
|
+
item[treeOpts.parentField] = parentRow_1[rowField];
|
|
278
288
|
}
|
|
279
289
|
|
|
280
290
|
parentChilds_1.splice(matchObj_1.index + i, 0, item);
|
|
@@ -304,7 +314,15 @@ var editHook = {
|
|
|
304
314
|
throw new Error((0, _utils.getLog)('vxe.error.noTree', ['insert']));
|
|
305
315
|
}
|
|
306
316
|
|
|
307
|
-
var afIndex_1 =
|
|
317
|
+
var afIndex_1 = -1; // 如果是可视索引
|
|
318
|
+
|
|
319
|
+
if (_xeUtils.default.isNumber(row)) {
|
|
320
|
+
if (row < afterFullData.length) {
|
|
321
|
+
afIndex_1 = row;
|
|
322
|
+
}
|
|
323
|
+
} else {
|
|
324
|
+
afIndex_1 = $xetable.findRowIndexOf(afterFullData, row);
|
|
325
|
+
}
|
|
308
326
|
|
|
309
327
|
if (afIndex_1 === -1) {
|
|
310
328
|
throw new Error((0, _utils.errLog)('vxe.error.unableInsert'));
|
package/lib/edit/src/hook.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_util=require("../../table/src/util"),_dom=require("../../tools/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,r=1,l=arguments.length;r<l;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},__spreadArray=function(e,t){for(var r=0,l=t.length,n=e.length;r<l;r++,n++)e[n]=t[r];return e},tableEditMethodKeys=["insert","insertAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getActiveRecord","getSelectedCell","clearActived","clearSelected","isActiveByRow","setActiveRow","setActiveCell","setSelectCell"],editHook={setupTable:function(x){function v(e,t){var r=t.model;t.editRender&&(r.value=(0,_util.getCellValue)(e,t),r.update=!1)}function n(e,t){var r=t.model;t.editRender&&r.update&&((0,_util.setCellValue)(e,t,r.value),r.update=!1,r.value=null)}function r(){var e=o.value;!e||(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}var h=x.props,R=x.reactData,_=x.internalData,o=x.getRefMaps().refElem,e=x.getComputeMaps(),s=e.computeMouseOpts,p=e.computeEditOpts,w=e.computeCheckboxOpts,C=e.computeTreeOpts,g={},m={};function a(){var e=R.editStore,t=R.tableColumn,r=p.value,e=e.actived,l=e.row,e=e.column;(l||e)&&("row"===r.mode?t.forEach(function(e){return n(l,e)}):n(l,e))}function b(e,t){var a=_.tableFullTreeData,i=_.afterFullData,u=_.fullDataRowIdData,c=_.fullAllDataRowIdData,d=C.value,s=t?"push":"unshift";e.forEach(function(e){var t,r,l=e[d.parentField],n=(0,_util.getRowid)(x,e),o=l?_xeUtils.default.findTree(a,function(e){return l===e[d.rowField]},d):null;e=o?(t=o.item,o=(r=c[(0,_util.getRowid)(x,t)])?r.level:0,r=t[d.children],(r=!_xeUtils.default.isArray(r)?t[d.children]=[]:r)[s](e),{row:e,rowid:n,seq:-1,index:-1,_index:-1,$index:-1,items:r,parent:parent,level:o+1}):("development"===process.env.NODE_ENV&&l&&(0,_utils.warnLog)("vxe.error.unableInsert"),i[s](e),a[s](e),{row:e,rowid:n,seq:-1,index:-1,_index:-1,$index:-1,items:a,parent:null,level:0}),u[n]=e,c[n]=e})}return g={insert:function(e){return g.insertAt(e,null)},insertAt:function(e,t){var r=h.treeConfig,l=R.mergeList,n=R.editStore,o=_.tableFullTreeData,a=_.afterFullData,i=_.tableFullData,u=_.fullDataRowIdData,c=_.fullAllDataRowIdData,d=C.value,s=d.transform,f=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return x.defineField(Object.assign({},e))});if(t)if(-1===t)r&&s?b(f,!0):(a.push.apply(a,f),i.push.apply(i,f),l.forEach(function(e){var t=e.row,r=e.rowspan;t+r>a.length&&(e.rowspan=r+f.length)}));else if(r&&s){var v,p,w,g=_xeUtils.default.findTree(o,function(e){return t[d.rowField]===e[d.rowField]},d);g?(v=g.parent,p=g.items,o=c[(0,_util.getRowid)(x,v)],w=o?o.level:0,f.forEach(function(e,t){var r=(0,_util.getRowid)(x,e);"development"===process.env.NODE_ENV&&e[d.parentField]&&v&&e[d.parentField]!==v[d.rowField]&&(0,_utils.errLog)("vxe.error.errProp",[d.parentField+"="+e[d.parentField],d.parentField+"="+v[d.rowField]]),v&&(e[d.parentField]=v[d.rowField]),p.splice(g.index+t,0,e);e={row:e,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:p,parent:v,level:w+1};u[r]=e,c[r]=e})):("development"===process.env.NODE_ENV&&(0,_utils.warnLog)("vxe.error.unableInsert"),b(f,!0))}else{if(r)throw new Error((0,_utils.getLog)("vxe.error.noTree",["insert"]));var m=x.findRowIndexOf(a,t);if(-1===m)throw new Error((0,_utils.errLog)("vxe.error.unableInsert"));a.splice.apply(a,__spreadArray([m,0],f)),i.splice.apply(i,__spreadArray([x.findRowIndexOf(i,t),0],f)),l.forEach(function(e){var t=e.row,r=e.rowspan;m<t?e.row=t+f.length:m<t+r&&(e.rowspan=r+f.length)})}else r&&s?b(f,!1):(a.unshift.apply(a,f),i.unshift.apply(i,f),l.forEach(function(e){var t=e.row;0<t&&(e.row=t+f.length)}));return(n=n.insertList).unshift.apply(n,f),x.updateFooter(),x.cacheRowMap(),x.handleTableData(r&&s),r&&s||x.updateAfterDataIndex(),x.checkSelectionStatus(),R.scrollYLoad&&x.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return x.updateCellAreas(),x.recalculate()}).then(function(){return{row:f.length?f[f.length-1]:null,rows:f}})},remove:function(e){var t=h.treeConfig,r=R.mergeList,l=R.editStore,n=R.selection,o=_.tableFullTreeData,a=_.afterFullData,i=_.tableFullData,u=w.value,c=C.value,d=c.transform,s=l.actived,f=l.removeList,v=l.insertList,u=u.checkField,p=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=i,e.forEach(function(e){x.isInsertByRow(e)||f.push(e)}),u||e.forEach(function(e){e=x.findRowIndexOf(n,e);-1<e&&n.splice(e,1)}),i===e?(e=p=i.slice(0),_.tableFullData=[],_.afterFullData=[],x.clearMergeCells()):t&&d?e.forEach(function(e){var t=(0,_util.getRowid)(x,e),r=_xeUtils.default.findTree(o,function(e){return t===(0,_util.getRowid)(x,e)},c);r&&(r=r.items.splice(r.index,1),p.push(r[0]));e=x.findRowIndexOf(a,e);-1<e&&a.splice(e,1)}):e.forEach(function(e){var t=x.findRowIndexOf(i,e);-1<t&&(t=i.splice(t,1),p.push(t[0]));var l=x.findRowIndexOf(a,e);-1<l&&(r.forEach(function(e){var t=e.row,r=e.rowspan;l<t?e.row=t-1:l<t+r&&(e.rowspan=r-1)}),a.splice(l,1))}),s.row&&-1<x.findRowIndexOf(e,s.row)&&g.clearActived(),e.forEach(function(e){e=x.findRowIndexOf(v,e);-1<e&&v.splice(e,1)}),x.updateFooter(),x.cacheRowMap(),x.handleTableData(t&&d),t&&d||x.updateAfterDataIndex(),x.checkSelectionStatus(),R.scrollYLoad&&x.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return x.updateCellAreas(),x.recalculate()}).then(function(){return{row:p.length?p[p.length-1]:null,rows:p}})},removeCheckboxRow:function(){return g.remove(x.getCheckboxRecords()).then(function(e){return x.clearCheckboxRow(),e})},removeRadioRow:function(){var e=x.getRadioRecord();return g.remove(e||[]).then(function(e){return x.clearRadioRow(),e})},removeCurrentRow:function(){var e=x.getCurrentRecord();return g.remove(e||[]).then(function(e){return x.clearCurrentRow(),e})},getRecordset:function(){return{insertRecords:g.getInsertRecords(),removeRecords:g.getRemoveRecords(),updateRecords:g.getUpdateRecords()}},getInsertRecords:function(){var e=h.treeConfig,t=R.editStore,r=_.tableFullTreeData,l=_.tableFullData,n=C.value,t=t.insertList,o=[];return t.length&&(e&&n.transform?t.forEach(function(e){var t=(0,_util.getRowid)(x,e);_xeUtils.default.findTree(r,function(e){return t===(0,_util.getRowid)(x,e)},n)&&o.push(e)}):t.forEach(function(e){-1<x.findRowIndexOf(l,e)&&o.push(e)})),o},getRemoveRecords:function(){return R.editStore.removeList},getUpdateRecords:function(){var e=h.keepSource,t=h.treeConfig,r=_.tableFullData,l=C.value;return e?(a(),t?_xeUtils.default.filterTree(r,function(e){return x.isUpdateByRow(e)},l):r.filter(function(e){return x.isUpdateByRow(e)})):[]},getActiveRecord:function(){var e=R.editStore,t=_.afterFullData,r=o.value,l=e.actived,e=l.args,l=l.row;return e&&-1<x.findRowIndexOf(t,l)&&r.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},e):null},getSelectedCell:function(){var e=R.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},clearActived:function(e){var t=R.editStore.actived,r=t.row,l=t.column;return(r||l)&&(a(),t.args=null,t.row=null,t.column=null,x.updateFooter(),x.dispatchEvent("edit-closed",{row:r,rowIndex:x.getRowIndex(r),$rowIndex:x.getVMRowIndex(r),column:l,columnIndex:x.getColumnIndex(l),$columnIndex:x.getVMColumnIndex(l)},e||null)),(x.clearValidate?x.clearValidate():(0,_vue.nextTick)()).then(function(){return x.recalculate()})},clearSelected:function(){var e=R.editStore.selected;return e.row=null,e.column=null,r(),(0,_vue.nextTick)()},isActiveByRow:function(e){return R.editStore.actived.row===e},setActiveRow:function(e){var t=_.visibleColumn;return x.setActiveCell(e,_xeUtils.default.find(t,function(e){return(0,_utils.isEnableConf)(e.editRender)}))},setActiveCell:function(t,e){var r=h.editConfig,l=_xeUtils.default.isString(e)?x.getColumnByField(e):e;return t&&l&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(l.editRender)?x.scrollToRow(t,l).then(function(){var e=x.getCell(t,l);return e&&(m.handleActived({row:t,rowIndex:x.getRowIndex(t),column:l,columnIndex:x.getColumnIndex(l),cell:e,$table:x}),_._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell:function(e,t){var r=R.tableData,l=_.visibleColumn,n=p.value,t=_xeUtils.default.isString(t)?x.getColumnByField(t):t;return e&&t&&"manual"!==n.trigger&&(-1<(n=x.findRowIndexOf(r,e))&&t&&(r=x.getCell(e,t),r={row:e,rowIndex:n,column:t,columnIndex:l.indexOf(t),cell:r},x.handleSelected(r,{}))),(0,_vue.nextTick)()}},m={handleActived:function(e,t){var r,l=h.editConfig,n=h.mouseConfig,o=R.editStore,a=R.tableColumn,i=p.value,u=i.mode,c=i.activeMethod,d=o.actived,s=e.row,f=e.column,i=f.editRender,o=e.cell=e.cell||x.getCell(s,f);return(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(i)&&o&&(d.row!==s||"cell"===u&&d.column!==f?(r="edit-disabled",c&&!c(e)||(n&&(g.clearSelected(),x.clearCellAreas&&(x.clearCellAreas(),x.clearCopyCellArea())),x.closeTooltip(),g.clearActived(t),r="edit-actived",f.renderHeight=o.offsetHeight,d.args=e,d.row=s,d.column=f,"row"===u?a.forEach(function(e){return v(s,e)}):v(s,f),(0,_vue.nextTick)(function(){m.handleFocus(e,t)})),x.dispatchEvent(r,{row:s,rowIndex:x.getRowIndex(s),$rowIndex:x.getVMRowIndex(s),column:f,columnIndex:x.getColumnIndex(f),$columnIndex:x.getVMColumnIndex(f)},t)):(r=d.column,n&&(g.clearSelected(),x.clearCellAreas&&(x.clearCellAreas(),x.clearCopyCellArea())),r!==f&&((n=r.model).update&&(0,_util.setCellValue)(s,r,n.value),x.clearValidate&&x.clearValidate()),f.renderHeight=o.offsetHeight,d.args=e,d.column=f,setTimeout(function(){m.handleFocus(e,t)})),x.focus()),(0,_vue.nextTick)()},handleFocus:function(e){var t,r,l=e.row,n=e.column,o=e.cell,a=n.editRender;(0,_utils.isEnableConf)(a)&&(t=_vXETable.renderer.get(a.name),r=a.autofocus,e=a.autoselect,a=void 0,(a=!(a=r?o.querySelector(r):a)&&t&&t.autofocus?o.querySelector(t.autofocus):a)?(a.focus(),e?a.select():_dom.browse.msie&&((a=a.createTextRange()).collapse(!1),a.select())):x.scrollToRow(l,n))},handleSelected:function(e,t){var r=h.mouseConfig,l=R.editStore,n=s.value,o=p.value,a=l.actived,i=l.selected,u=e.row,c=e.column,d=r&&n.selected;return!d||i.row===u&&i.column===c||(a.row!==u||"cell"===o.mode&&a.column!==c)&&(g.clearActived(t),g.clearSelected(),x.clearCellAreas&&(x.clearCellAreas(),x.clearCopyCellArea()),i.args=e,i.row=u,i.column=c,d&&m.addCellSelectedClass(),x.focus()),(0,_vue.nextTick)()},addCellSelectedClass:function(){var e=R.editStore.selected,t=e.row,e=e.column;r(),t&&e&&((e=x.getCell(t,e))&&(0,_dom.addClass)(e,"col--selected"))}},__assign(__assign({},g),m)},setupGrid:function(e){return e.extendTableMethods(tableEditMethodKeys)}},_default=editHook;exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_util=require("../../table/src/util"),_dom=require("../../tools/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,r=1,l=arguments.length;r<l;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},__spreadArray=function(e,t){for(var r=0,l=t.length,n=e.length;r<l;r++,n++)e[n]=t[r];return e},tableEditMethodKeys=["insert","insertAt","remove","removeCheckboxRow","removeRadioRow","removeCurrentRow","getRecordset","getInsertRecords","getRemoveRecords","getUpdateRecords","getActiveRecord","getSelectedCell","clearActived","clearSelected","isActiveByRow","setActiveRow","setActiveCell","setSelectCell"],editHook={setupTable:function(R){function v(e,t){var r=t.model;t.editRender&&(r.value=(0,_util.getCellValue)(e,t),r.update=!1)}function n(e,t){var r=t.model;t.editRender&&r.update&&((0,_util.setCellValue)(e,t,r.value),r.update=!1,r.value=null)}function r(){var e=o.value;!e||(e=e.querySelector(".col--selected"))&&(0,_dom.removeClass)(e,"col--selected")}var _=R.props,C=R.reactData,b=R.internalData,o=R.getRefMaps().refElem,e=R.getComputeMaps(),s=e.computeMouseOpts,p=e.computeEditOpts,w=e.computeCheckboxOpts,I=e.computeTreeOpts,g={},m={};function a(){var e=C.editStore,t=C.tableColumn,r=p.value,e=e.actived,l=e.row,e=e.column;(l||e)&&("row"===r.mode?t.forEach(function(e){return n(l,e)}):n(l,e))}function A(e,t){var a=b.tableFullTreeData,i=b.afterFullData,u=b.fullDataRowIdData,c=b.fullAllDataRowIdData,r=I.value,d=r.rowField,s=r.parentField,f=r.children,v=r.mapChildren,p=t?"push":"unshift";e.forEach(function(e){var t,r,l=e[s],n=(0,_util.getRowid)(R,e),o=l?_xeUtils.default.findTree(a,function(e){return l===e[d]},{children:v}):null;e=o?(t=o.item,o=(r=c[(0,_util.getRowid)(R,t)])?r.level:0,r=t[f],(r=!_xeUtils.default.isArray(r)?t[f]=[]:r)[p](e),{row:e,rowid:n,seq:-1,index:-1,_index:-1,$index:-1,items:r,parent:parent,level:o+1}):("development"===process.env.NODE_ENV&&l&&(0,_utils.warnLog)("vxe.error.unableInsert"),i[p](e),a[p](e),{row:e,rowid:n,seq:-1,index:-1,_index:-1,$index:-1,items:a,parent:null,level:0}),u[n]=e,c[n]=e})}return g={insert:function(e){return g.insertAt(e,null)},insertAt:function(e,t){var r=_.treeConfig,l=C.mergeList,n=C.editStore,o=b.tableFullTreeData,a=b.afterFullData,i=b.tableFullData,u=b.fullDataRowIdData,c=b.fullAllDataRowIdData,d=I.value,s=d.transform,f=d.rowField,v=d.mapChildren,p=(e=!_xeUtils.default.isArray(e)?[e]:e).map(function(e){return R.defineField(Object.assign({},e))});if(t)if(-1===t)r&&s?A(p,!0):(a.push.apply(a,p),i.push.apply(i,p),l.forEach(function(e){var t=e.row,r=e.rowspan;t+r>a.length&&(e.rowspan=r+p.length)}));else if(r&&s){var w,g,m,h=_xeUtils.default.findTree(o,function(e){return t[f]===e[f]},{children:v});h?(w=h.parent,g=h.items,v=c[(0,_util.getRowid)(R,w)],m=v?v.level:0,p.forEach(function(e,t){var r=(0,_util.getRowid)(R,e);"development"===process.env.NODE_ENV&&e[d.parentField]&&w&&e[d.parentField]!==w[f]&&(0,_utils.errLog)("vxe.error.errProp",[d.parentField+"="+e[d.parentField],d.parentField+"="+w[f]]),w&&(e[d.parentField]=w[f]),g.splice(h.index+t,0,e);e={row:e,rowid:r,seq:-1,index:-1,_index:-1,$index:-1,items:g,parent:w,level:m+1};u[r]=e,c[r]=e})):("development"===process.env.NODE_ENV&&(0,_utils.warnLog)("vxe.error.unableInsert"),A(p,!0))}else{if(r)throw new Error((0,_utils.getLog)("vxe.error.noTree",["insert"]));var x=-1;if(_xeUtils.default.isNumber(t)?t<a.length&&(x=t):x=R.findRowIndexOf(a,t),-1===x)throw new Error((0,_utils.errLog)("vxe.error.unableInsert"));a.splice.apply(a,__spreadArray([x,0],p)),i.splice.apply(i,__spreadArray([R.findRowIndexOf(i,t),0],p)),l.forEach(function(e){var t=e.row,r=e.rowspan;x<t?e.row=t+p.length:x<t+r&&(e.rowspan=r+p.length)})}else r&&s?A(p,!1):(a.unshift.apply(a,p),i.unshift.apply(i,p),l.forEach(function(e){var t=e.row;0<t&&(e.row=t+p.length)}));return(n=n.insertList).unshift.apply(n,p),R.updateFooter(),R.cacheRowMap(),R.handleTableData(r&&s),r&&s||R.updateAfterDataIndex(),R.checkSelectionStatus(),C.scrollYLoad&&R.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return R.updateCellAreas(),R.recalculate()}).then(function(){return{row:p.length?p[p.length-1]:null,rows:p}})},remove:function(e){var t=_.treeConfig,r=C.mergeList,l=C.editStore,n=C.selection,o=b.tableFullTreeData,a=b.afterFullData,i=b.tableFullData,u=w.value,c=I.value,d=c.transform,s=l.actived,f=l.removeList,v=l.insertList,u=u.checkField,p=[];return e?_xeUtils.default.isArray(e)||(e=[e]):e=i,e.forEach(function(e){R.isInsertByRow(e)||f.push(e)}),u||e.forEach(function(e){e=R.findRowIndexOf(n,e);-1<e&&n.splice(e,1)}),i===e?(e=p=i.slice(0),b.tableFullData=[],b.afterFullData=[],R.clearMergeCells()):t&&d?e.forEach(function(e){var t=(0,_util.getRowid)(R,e),r=_xeUtils.default.findTree(o,function(e){return t===(0,_util.getRowid)(R,e)},c);r&&(r=r.items.splice(r.index,1),p.push(r[0]));e=R.findRowIndexOf(a,e);-1<e&&a.splice(e,1)}):e.forEach(function(e){var t=R.findRowIndexOf(i,e);-1<t&&(t=i.splice(t,1),p.push(t[0]));var l=R.findRowIndexOf(a,e);-1<l&&(r.forEach(function(e){var t=e.row,r=e.rowspan;l<t?e.row=t-1:l<t+r&&(e.rowspan=r-1)}),a.splice(l,1))}),s.row&&-1<R.findRowIndexOf(e,s.row)&&g.clearActived(),e.forEach(function(e){e=R.findRowIndexOf(v,e);-1<e&&v.splice(e,1)}),R.updateFooter(),R.cacheRowMap(),R.handleTableData(t&&d),t&&d||R.updateAfterDataIndex(),R.checkSelectionStatus(),C.scrollYLoad&&R.updateScrollYSpace(),(0,_vue.nextTick)().then(function(){return R.updateCellAreas(),R.recalculate()}).then(function(){return{row:p.length?p[p.length-1]:null,rows:p}})},removeCheckboxRow:function(){return g.remove(R.getCheckboxRecords()).then(function(e){return R.clearCheckboxRow(),e})},removeRadioRow:function(){var e=R.getRadioRecord();return g.remove(e||[]).then(function(e){return R.clearRadioRow(),e})},removeCurrentRow:function(){var e=R.getCurrentRecord();return g.remove(e||[]).then(function(e){return R.clearCurrentRow(),e})},getRecordset:function(){return{insertRecords:g.getInsertRecords(),removeRecords:g.getRemoveRecords(),updateRecords:g.getUpdateRecords()}},getInsertRecords:function(){var e=_.treeConfig,t=C.editStore,r=b.tableFullTreeData,l=b.tableFullData,n=I.value,t=t.insertList,o=[];return t.length&&(e&&n.transform?t.forEach(function(e){var t=(0,_util.getRowid)(R,e);_xeUtils.default.findTree(r,function(e){return t===(0,_util.getRowid)(R,e)},n)&&o.push(e)}):t.forEach(function(e){-1<R.findRowIndexOf(l,e)&&o.push(e)})),o},getRemoveRecords:function(){return C.editStore.removeList},getUpdateRecords:function(){var e=_.keepSource,t=_.treeConfig,r=b.tableFullData,l=I.value;return e?(a(),t?_xeUtils.default.filterTree(r,function(e){return R.isUpdateByRow(e)},l):r.filter(function(e){return R.isUpdateByRow(e)})):[]},getActiveRecord:function(){var e=C.editStore,t=b.afterFullData,r=o.value,l=e.actived,e=l.args,l=l.row;return e&&-1<R.findRowIndexOf(t,l)&&r.querySelectorAll(".vxe-body--column.col--actived").length?Object.assign({},e):null},getSelectedCell:function(){var e=C.editStore.selected,t=e.args,e=e.column;return t&&e?Object.assign({},t):null},clearActived:function(e){var t=C.editStore.actived,r=t.row,l=t.column;return(r||l)&&(a(),t.args=null,t.row=null,t.column=null,R.updateFooter(),R.dispatchEvent("edit-closed",{row:r,rowIndex:R.getRowIndex(r),$rowIndex:R.getVMRowIndex(r),column:l,columnIndex:R.getColumnIndex(l),$columnIndex:R.getVMColumnIndex(l)},e||null)),(R.clearValidate?R.clearValidate():(0,_vue.nextTick)()).then(function(){return R.recalculate()})},clearSelected:function(){var e=C.editStore.selected;return e.row=null,e.column=null,r(),(0,_vue.nextTick)()},isActiveByRow:function(e){return C.editStore.actived.row===e},setActiveRow:function(e){var t=b.visibleColumn;return R.setActiveCell(e,_xeUtils.default.find(t,function(e){return(0,_utils.isEnableConf)(e.editRender)}))},setActiveCell:function(t,e){var r=_.editConfig,l=_xeUtils.default.isString(e)?R.getColumnByField(e):e;return t&&l&&(0,_utils.isEnableConf)(r)&&(0,_utils.isEnableConf)(l.editRender)?R.scrollToRow(t,l).then(function(){var e=R.getCell(t,l);return e&&(m.handleActived({row:t,rowIndex:R.getRowIndex(t),column:l,columnIndex:R.getColumnIndex(l),cell:e,$table:R}),b._lastCallTime=Date.now()),(0,_vue.nextTick)()}):(0,_vue.nextTick)()},setSelectCell:function(e,t){var r=C.tableData,l=b.visibleColumn,n=p.value,t=_xeUtils.default.isString(t)?R.getColumnByField(t):t;return e&&t&&"manual"!==n.trigger&&(-1<(n=R.findRowIndexOf(r,e))&&t&&(r=R.getCell(e,t),r={row:e,rowIndex:n,column:t,columnIndex:l.indexOf(t),cell:r},R.handleSelected(r,{}))),(0,_vue.nextTick)()}},m={handleActived:function(e,t){var r,l=_.editConfig,n=_.mouseConfig,o=C.editStore,a=C.tableColumn,i=p.value,u=i.mode,c=i.activeMethod,d=o.actived,s=e.row,f=e.column,i=f.editRender,o=e.cell=e.cell||R.getCell(s,f);return(0,_utils.isEnableConf)(l)&&(0,_utils.isEnableConf)(i)&&o&&(d.row!==s||"cell"===u&&d.column!==f?(r="edit-disabled",c&&!c(e)||(n&&(g.clearSelected(),R.clearCellAreas&&(R.clearCellAreas(),R.clearCopyCellArea())),R.closeTooltip(),g.clearActived(t),r="edit-actived",f.renderHeight=o.offsetHeight,d.args=e,d.row=s,d.column=f,"row"===u?a.forEach(function(e){return v(s,e)}):v(s,f),(0,_vue.nextTick)(function(){m.handleFocus(e,t)})),R.dispatchEvent(r,{row:s,rowIndex:R.getRowIndex(s),$rowIndex:R.getVMRowIndex(s),column:f,columnIndex:R.getColumnIndex(f),$columnIndex:R.getVMColumnIndex(f)},t)):(r=d.column,n&&(g.clearSelected(),R.clearCellAreas&&(R.clearCellAreas(),R.clearCopyCellArea())),r!==f&&((n=r.model).update&&(0,_util.setCellValue)(s,r,n.value),R.clearValidate&&R.clearValidate()),f.renderHeight=o.offsetHeight,d.args=e,d.column=f,setTimeout(function(){m.handleFocus(e,t)})),R.focus()),(0,_vue.nextTick)()},handleFocus:function(e){var t,r,l=e.row,n=e.column,o=e.cell,a=n.editRender;(0,_utils.isEnableConf)(a)&&(t=_vXETable.renderer.get(a.name),r=a.autofocus,e=a.autoselect,a=void 0,(a=!(a=r?o.querySelector(r):a)&&t&&t.autofocus?o.querySelector(t.autofocus):a)?(a.focus(),e?a.select():_dom.browse.msie&&((a=a.createTextRange()).collapse(!1),a.select())):R.scrollToRow(l,n))},handleSelected:function(e,t){var r=_.mouseConfig,l=C.editStore,n=s.value,o=p.value,a=l.actived,i=l.selected,u=e.row,c=e.column,d=r&&n.selected;return!d||i.row===u&&i.column===c||(a.row!==u||"cell"===o.mode&&a.column!==c)&&(g.clearActived(t),g.clearSelected(),R.clearCellAreas&&(R.clearCellAreas(),R.clearCopyCellArea()),i.args=e,i.row=u,i.column=c,d&&m.addCellSelectedClass(),R.focus()),(0,_vue.nextTick)()},addCellSelectedClass:function(){var e=C.editStore.selected,t=e.row,e=e.column;r(),t&&e&&((e=R.getCell(t,e))&&(0,_dom.addClass)(e,"col--selected"))}},__assign(__assign({},g),m)},setupGrid:function(e){return e.extendTableMethods(tableEditMethodKeys)}},_default=editHook;exports.default=_default;
|
package/lib/grid/src/grid.js
CHANGED
|
@@ -1426,7 +1426,7 @@ var _default2 = (0, _vue.defineComponent)({
|
|
|
1426
1426
|
var formOpts = computeFormOpts.value;
|
|
1427
1427
|
|
|
1428
1428
|
if (proxyConfig && (data || proxyOpts.form && formOpts.data)) {
|
|
1429
|
-
(0, _utils.errLog)('errConflicts', ['grid.data', 'grid.proxy-config']);
|
|
1429
|
+
(0, _utils.errLog)('vxe.error.errConflicts', ['grid.data', 'grid.proxy-config']);
|
|
1430
1430
|
}
|
|
1431
1431
|
|
|
1432
1432
|
if (columns && columns.length) {
|
package/lib/grid/src/grid.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_props=_interopRequireDefault(require("../../table/src/props")),_emits=_interopRequireDefault(require("../../table/src/emits")),_size=require("../../hooks/size"),_event=require("../../tools/event");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,o=1,r=arguments.length;o<r;o++)for(var n in t=arguments[o])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},__spreadArray=function(e,t){for(var o=0,r=t.length,n=e.length;o<r;o++,n++)e[n]=t[o];return e},tableComponentPropKeys=Object.keys(_props.default),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","createData","createRow","revertData","clearData","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getData","getCheckboxRecords","getRowById","getRowid","getTableData","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","isCheckedByCheckboxRow","isIndeterminateByCheckboxRow","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","setRadioRow","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","sort","clearSort","isSort","getSortColumns","closeFilter","isFilter","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","clearRowExpand","clearRowExpandReserve","getRowExpandRecords","getTreeExpandRecords","isTreeExpandLoaded","clearTreeExpandLoaded","reloadTreeExpand","reloadTreeChilds","toggleTreeExpand","setAllTreeExpand","setTreeExpand","isTreeExpandByRow","clearTreeExpand","clearTreeExpandReserve","getScroll","scrollTo","scrollToRow","scrollToColumn","clearScroll","updateFooter","updateStatus","setMergeCells","removeMergeCells","getMergeCells","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","focus","blur","connect"],gridComponentEmits=__spreadArray(__spreadArray([],_emits.default),["page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","toolbar-button-click","toolbar-tool-click","zoom"]),_default2=(0,_vue.defineComponent)({name:"VxeGrid",props:__assign(__assign({},_props.default),{columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:function(){return _conf.default.grid.size||_conf.default.size}}}),emits:gridComponentEmits,setup:function(H,e){function t(e){var t={};return e.forEach(function(r){t[r]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=G.value;return o&&o[r].apply(o,e)}}),t}var g=e.slots,r=e.emit,o=_xeUtils.default.uniqueId(),n=(0,_vue.getCurrentInstance)(),v=(0,_size.useSize)(H),K=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],pendingRecords:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:10,currentPage:1}}),p=(0,_vue.ref)(),G=(0,_vue.ref)(),m=(0,_vue.ref)(),_=(0,_vue.ref)(),x=(0,_vue.ref)(),b=(0,_vue.ref)(),h=(0,_vue.ref)(),C=(0,_vue.ref)(),E=(0,_vue.ref)(),R=(0,_vue.ref)(),Q=t(tableComponentMethodKeys);tableComponentMethodKeys.forEach(function(r){Q[r]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=G.value;return o&&o[r].apply(o,e)}});function f(t){var e=K.pendingRecords,o=H.rowClassName,r=[];return e.some(function(e){return e===t.row})&&r.push("row--pending"),r.push(o?_xeUtils.default.isFunction(o)?o(t):o:""),r}function y(e){var t=H.editConfig,o=K.pendingRecords,r=G.value,t=t?t.activeMethod:null;return-1===r.findRowIndexOf(o,e.row)&&(!t||t(e))}function a(){(0,_vue.nextTick)(function(){var e=G.value,t=_.value;e&&t&&e.connect(t)})}function i(){var e=H.pagerConfig,t=K.tablePage,o=(r=T.value).currentPage,r=r.pageSize;e&&(o&&(t.currentPage=o),r&&(t.pageSize=r))}function Y(e,t){var o,r=void 0===(r=W.value.props)?{}:r;return(o=e&&r.message?_xeUtils.default.get(e,r.message):o)||_conf.default.i18n(t)}function J(e,t,o){var r=ee.value,n=Q.getCheckboxRecords();if(r){if(n.length)return _vXETable.VXETable.modal.confirm({id:"cfm_"+e,content:_conf.default.i18n(t),escClosable:!0}).then(function(e){"confirm"===e&&o()});"development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:"msg_"+e,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"})}else n.length&&o();return Promise.resolve()}function l(e){var t=K.isZMax;return(e?!t:t)&&(K.isZMax=!t,K.tZindex<(0,_utils.getLastZIndex)()&&(K.tZindex=(0,_utils.nextZIndex)())),(0,_vue.nextTick)().then(function(){return Q.recalculate(!0)}).then(function(){return K.isZMax})}var W=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.proxyConfig,H.proxyConfig)}),ee=(0,_vue.computed)(function(){return!1!==W.value.message}),T=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.pagerConfig,H.pagerConfig)}),w=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.formConfig,H.formConfig)}),te=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.toolbarConfig,H.toolbarConfig)}),s=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.zoomConfig,H.zoomConfig)}),O=(0,_vue.computed)(function(){return K.isZMax?{zIndex:K.tZindex}:null}),M=(0,_vue.computed)(function(){var t={},o=H;return tableComponentPropKeys.forEach(function(e){t[e]=o[e]}),t}),u={refElem:p,refTable:G,refForm:m,refToolbar:_,refPager:x},c={computeProxyOpts:W,computePagerOpts:T,computeFormOpts:w,computeToolbarOpts:te,computeZoomOpts:s},oe={xID:o,props:H,context:e,instance:n,reactData:K,getRefMaps:function(){return u},getComputeMaps:function(){return c}},re={},D=(0,_vue.computed)(function(){var e=H.seqConfig,t=H.pagerConfig,o=H.loading,r=H.editConfig,n=H.proxyConfig,a=K.isZMax,i=K.tableLoading,l=K.tablePage,s=K.tableData,u=M.value,c=W.value,d=Object.assign({},u);return a&&(u.maxHeight?d.maxHeight="auto":d.height="auto"),n&&(d.loading=o||i,d.data=s,d.rowClassName=f,c.seq&&(0,_utils.isEnableConf)(t)&&(d.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize}))),r&&(d.editConfig=Object.assign({},r,{activeMethod:y})),d}),k=function(e){var t=H.proxyConfig,o=K.tablePage,r=e.currentPage,n=e.pageSize;o.currentPage=r,o.pageSize=n,re.dispatchEvent("page-change",e),t&&re.commitProxy("query")},P=function(e){var t=G.value,o=H.proxyConfig;t.getComputeMaps().computeSortOpts.value.remote&&(K.sortData=e.sortList,o&&(K.tablePage.currentPage=1,re.commitProxy("query"))),re.dispatchEvent("sort-change",e)},V=function(e){var t=G.value,o=H.proxyConfig;t.getComputeMaps().computeFilterOpts.value.remote&&(K.filterData=e.filterList,o&&(K.tablePage.currentPage=1,re.commitProxy("query"))),re.dispatchEvent("filter-change",e)},S=function(e){H.proxyConfig&&re.commitProxy("reload"),re.dispatchEvent("form-submit",e)},X=function(e){H.proxyConfig&&re.commitProxy("reload"),re.dispatchEvent("form-reset",e)},I=function(e){re.dispatchEvent("form-submit-invalid",e)},N=function(e){(0,_vue.nextTick)(function(){return Q.recalculate(!0)}),re.dispatchEvent("form-toggle-collapse",e),re.dispatchEvent("form-collapse",e)},q=function(e,t){t=e[t];if(t){if(!_xeUtils.default.isString(t))return t;if(g[t])return g[t];"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notSlot",[t])}return null},L={};_emits.default.forEach(function(o){var e=_xeUtils.default.camelCase("on-"+o);L[e]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.apply(void 0,__spreadArray([o],e))}});function d(){var n,e=H.proxyConfig,t=H.formConfig,o=K.proxyInited,r=W.value,a=w.value;e&&((0,_utils.isEnableConf)(t)&&r.form&&a.items&&(n={},a.items.forEach(function(e){var t,o=e.field,r=e.itemRender;o&&(t=null,r&&(r=r.defaultValue,_xeUtils.default.isFunction(r)?t=r({item:e}):_xeUtils.default.isUndefined(r)||(t=r)),n[o]=t)}),K.formData=n),o||!1===r.autoLoad||(K.proxyInited=!0,(0,_vue.nextTick)(function(){return re.commitProxy("_init")})))}re={dispatchEvent:function(e,t,o){r(e,Object.assign({$grid:oe,$event:o},t))},commitProxy:function(t){for(var e=[],o=1;o<arguments.length;o++)e[o-1]=arguments[o];var r=H.toolbarConfig,n=H.pagerConfig,a=H.editRules,i=K.tablePage,l=K.formData,s=ee.value,u=W.value,c=te.value,d=u.beforeQuery,f=u.afterQuery,g=u.beforeDelete,v=u.afterDelete,p=u.beforeSave,m=u.afterSave,_=u.ajax,x=void 0===_?{}:_,u=u.props,b=void 0===u?{}:u,h=G.value,C=null,E=null;E=_xeUtils.default.isString(t)?(c=c.buttons,C=(c=r&&c?_xeUtils.default.findTree(c,function(e){return e.code===t},{children:"dropdowns"}):null)?c.item:null,t):(C=t).code;var R,y,T,w,O=C?C.params:null;switch(E){case"insert":h.insert({});break;case"insert_actived":h.insert({}).then(function(e){e=e.row;return h.setActiveRow(e)});break;case"mark_cancel":S=E,T=K.pendingRecords,V=ee.value,w=G.value,(P=w.getCheckboxRecords()).length?(R=[],y=[],P.forEach(function(t){(T.some(function(e){return t===e})?y:R).push(t)}),y.length?K.pendingRecords=T.filter(function(e){return-1===w.findRowIndexOf(y,e)}).concat(R):R.length&&(K.pendingRecords=T.concat(R)),Q.clearCheckboxRow()):V&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:S,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"}));break;case"remove":return J(E,"vxe.grid.removeSelectRecord",function(){return h.removeCheckboxRow()});case"import":h.importData(O);break;case"open_import":h.openImport(O);break;case"export":h.exportData(O);break;case"open_export":h.openExport(O);break;case"reset_custom":h.resetColumn(!0);break;case"_init":case"reload":case"query":var M=x.query;if(M){var D="_init"===E,k="reload"===E,P=[],V=[],S={};n&&((D||k)&&(i.currentPage=1),(0,_utils.isEnableConf)(n)&&(S=__assign({},i))),D?((D=h.getComputeMaps().computeSortOpts.value.defaultSort)&&(P=(D=!_xeUtils.default.isArray(D)?[D]:D).map(function(e){return{property:e.field,order:e.order}})),V=h.getCheckedFilters()):k?(K.pendingRecords=[],h.clearAll()):(P=h.getSortColumns(),V=h.getCheckedFilters());S={code:E,button:C,$grid:oe,page:S,sort:P.length?P[0]:{},sorts:P,filters:V,form:l,options:M};K.sortData=P,K.filterData=V,K.tableLoading=!0;var X=[S].concat(e);return Promise.resolve((d||M).apply(void 0,X)).catch(function(e){return e}).then(function(e){var t;K.tableLoading=!1,e?(0,_utils.isEnableConf)(n)?(t=_xeUtils.default.get(e,b.total||"page.total")||0,i.total=t,K.tableData=_xeUtils.default.get(e,b.result||"result")||[],t=Math.max(Math.ceil(t/i.pageSize),1),i.currentPage>t&&(i.currentPage=t)):K.tableData=(b.list?_xeUtils.default.get(e,b.list):e)||[]:K.tableData=[],f&&f.apply(void 0,X)})}"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break;case"delete":var I=x.delete;if(I){var N=Q.getCheckboxRecords(),q=N.filter(function(e){return!h.isInsertByRow(e)}),L=[{$grid:oe,code:E,button:C,body:{removeRecords:q},options:I}].concat(e);if(N.length)return J(E,"vxe.grid.deleteSelectRecord",function(){return q.length?(K.tableLoading=!0,Promise.resolve((g||I).apply(void 0,L)).then(function(e){K.tableLoading=!1,K.pendingRecords=K.pendingRecords.filter(function(e){return-1===h.findRowIndexOf(q,e)}),s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:Y(e,"vxe.grid.delSuccess"),status:"success"})),v?v.apply(void 0,L):re.commitProxy("query")}).catch(function(e){K.tableLoading=!1,s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal.message||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:Y(e,"vxe.grid.operError"),status:"error"}))})):h.remove(N)});s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"}))}else"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break;case"save":var U=x.save;if(U){var z=Object.assign({pendingRecords:K.pendingRecords},h.getRecordset()),j=z.insertRecords,F=z.removeRecords,Z=z.updateRecords,A=z.pendingRecords,$=[{$grid:oe,code:E,button:C,body:z,options:U}].concat(e);j.length&&(z.pendingRecords=A.filter(function(e){return-1===h.findRowIndexOf(j,e)})),A.length&&(z.insertRecords=j.filter(function(e){return-1===h.findRowIndexOf(A,e)}));var B=Promise.resolve();return(B=a?h.validate(z.insertRecords.concat(Z)):B).then(function(e){if(!e)return z.insertRecords.length||F.length||Z.length||z.pendingRecords.length?(K.tableLoading=!0,Promise.resolve((p||U).apply(void 0,$)).then(function(e){K.tableLoading=!1,K.pendingRecords=[],s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:Y(e,"vxe.grid.saveSuccess"),status:"success"})),m?m.apply(void 0,$):re.commitProxy("query")}).catch(function(e){K.tableLoading=!1,s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:Y(e,"vxe.grid.operError"),status:"error"}))})):void(s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:_conf.default.i18n("vxe.grid.dataUnchanged"),status:"info"})))})}"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break;default:B=_vXETable.VXETable.commands.get(E);B&&B.apply(void 0,__spreadArray([{code:E,button:C,$grid:oe,$table:h}],e))}return(0,_vue.nextTick)()},zoom:function(){return K.isZMax?re.revert():re.maximize()},isMaximized:function(){return K.isZMax},maximize:function(){return l(!0)},revert:function(){return l()},getFormItems:function(e){var t=w.value,o=H.formConfig,t=t.items,r=[];return _xeUtils.default.eachTree((0,_utils.isEnableConf)(o)&&t?t:[],function(e){r.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?r:r[e]},getPendingRecords:function(){return K.pendingRecords},getProxyInfo:function(){if(H.proxyConfig){var e=K.sortData;return{data:K.tableData,filter:K.filterData,form:K.formData,sort:e.length?e[0]:{},sorts:e,pager:K.tablePage,pendingRecords:K.pendingRecords}}return null}};"development"===process.env.NODE_ENV&&(re.loadColumn=function(e){var t=G.value;return _xeUtils.default.eachTree(e,function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||g[e]||(0,_utils.errLog)("vxe.error.notSlot",[e])})}),t.loadColumn(e)},re.reloadColumn=function(e){return Q.clearAll(),re.loadColumn(e)});var U={extendTableMethods:t,callSlot:function(e,t){return e&&(_xeUtils.default.isString(e)&&(e=g[e]||null),_xeUtils.default.isFunction(e))?e(t):[]},getExcludeHeight:function(){var e=H.height,t=K.isZMax,o=p.value,r=b.value,n=h.value,a=C.value,i=E.value,l=R.value;return(t||"auto"!==e?0:(0,_dom.getPaddingTopBottomSize)(o.parentNode))+(0,_dom.getPaddingTopBottomSize)(o)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(n)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(l)},getParentHeight:function(){var e=p.value;return e?(K.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-U.getExcludeHeight():0},triggerToolbarBtnEvent:function(e,t){re.commitProxy(e,t),re.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent:function(e,t){re.commitProxy(e,t),re.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e,$event:t})},triggerZoomEvent:function(e){re.zoom(),re.dispatchEvent("zoom",{type:K.isZMax?"max":"revert"},e)}};Object.assign(oe,Q,re,U),(0,_vue.watch)(function(){return H.columns},function(e){(0,_vue.nextTick)(function(){return oe.loadColumn(e||[])})}),(0,_vue.watch)(function(){return H.toolbarConfig},function(e){e&&a()}),(0,_vue.watch)(function(){return H.proxyConfig},function(){d()}),(0,_vue.watch)(function(){return H.pagerConfig},function(){i()});function z(e){var t=s.value;(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ESCAPE)&&K.isZMax&&!1!==t.escRestore&&U.triggerZoomEvent(e)}_vXETable.VXETable.hooks.forEach(function(e){e=e.setupGrid;!e||(e=e(oe))&&_xeUtils.default.isObject(e)&&Object.assign(oe,e)}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=H.data,t=H.columns,o=H.proxyConfig,r=W.value,n=w.value;o&&(e||r.form&&n.data)&&(0,_utils.errLog)("errConflicts",["grid.data","grid.proxy-config"]),t&&t.length&&oe.loadColumn(t),a(),i(),d()}),_event.GlobalEvent.on(oe,"keydown",z)}),(0,_vue.onUnmounted)(function(){_event.GlobalEvent.off(oe,"keydown")});return oe.renderVN=function(){var e,t,o,r,n,a,i,l,s,u,c,d=v.value,f=O.value;return(0,_vue.h)("div",{ref:p,class:["vxe-grid",((c={})["size--"+d]=d,c["is--animat"]=!!H.animat,c["is--round"]=H.round,c["is--maximize"]=K.isZMax,c["is--loading"]=H.loading||K.tableLoading,c)],style:f},(l=H.formConfig,s=H.proxyConfig,u=K.formData,d=W.value,c=w.value,f=[],((0,_utils.isEnableConf)(l)||g.form)&&(l=[],g.form?l=g.form({$grid:oe}):c.items&&(a={},c.inited||(c.inited=!0,i=d.beforeItem,d&&i&&c.items.forEach(function(e){i({$grid:oe,item:e})})),c.items.forEach(function(e){_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||g[e]&&(a[e]=g[e])})}),l.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-form"),__assign(__assign({ref:m},Object.assign({},c,{data:s&&d.form?u:c.data})),{onSubmit:S,onReset:X,onSubmitInvalid:I,onCollapse:N}),a))),f.push((0,_vue.h)("div",{ref:b,class:"vxe-grid--form-wrapper"},l))),f.concat((c=H.toolbarConfig,l=te.value,f=[],((0,_utils.isEnableConf)(c)||g.toolbar)&&(t=[],g.toolbar?t=g.toolbar({$grid:oe}):(r=o=void 0,n={},(c=l.slots)&&(o=q(c,"buttons"),r=q(c,"tools"),o&&(n.buttons=o),r&&(n.tools=r)),t.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-toolbar"),__assign({ref:_},l),n))),f.push((0,_vue.h)("div",{ref:h,class:"vxe-grid--toolbar-wrapper"},t))),f),g.top?[(0,_vue.h)("div",{ref:C,class:"vxe-grid--top-wrapper"},g.top({$grid:oe}))]:[],(c=H.proxyConfig,o=D.value,r=W.value,l=Object.assign({},L),e=g.empty,c&&(r.sort&&(l.onSortChange=P),r.filter&&(l.onFilterChange=V)),[(0,_vue.h)((0,_vue.resolveComponent)("vxe-table"),__assign(__assign({ref:G},o),l),e?{empty:function(){return e({})}}:{})]),g.bottom?[(0,_vue.h)("div",{ref:E,class:"vxe-grid--bottom-wrapper"},g.bottom({$grid:oe}))]:[],(n=H.pagerConfig,t=T.value,f=[],((0,_utils.isEnableConf)(n)||g.pager)&&(c=[],g.pager?c=g.pager({$grid:oe}):(r={},l=o=void 0,(n=t.slots)&&(o=q(n,"left"),l=q(n,"right"),o&&(r.buttons=o),l&&(r.tools=l)),c.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-pager"),__assign(__assign(__assign({ref:x},t),H.proxyConfig?K.tablePage:{}),{onPageChange:k}),r))),f.push((0,_vue.h)("div",{ref:R,class:"vxe-grid--pager-wrapper"},c))),f))))},(0,_vue.provide)("$xegrid",oe),oe},render:function(){return this.renderVN()}});exports.default=_default2;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_props=_interopRequireDefault(require("../../table/src/props")),_emits=_interopRequireDefault(require("../../table/src/emits")),_size=require("../../hooks/size"),_event=require("../../tools/event");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,o=1,r=arguments.length;o<r;o++)for(var n in t=arguments[o])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},__spreadArray=function(e,t){for(var o=0,r=t.length,n=e.length;o<r;o++,n++)e[n]=t[o];return e},tableComponentPropKeys=Object.keys(_props.default),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","createData","createRow","revertData","clearData","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getData","getCheckboxRecords","getRowById","getRowid","getTableData","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","isCheckedByCheckboxRow","isIndeterminateByCheckboxRow","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","setRadioRow","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","sort","clearSort","isSort","getSortColumns","closeFilter","isFilter","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","clearRowExpand","clearRowExpandReserve","getRowExpandRecords","getTreeExpandRecords","isTreeExpandLoaded","clearTreeExpandLoaded","reloadTreeExpand","reloadTreeChilds","toggleTreeExpand","setAllTreeExpand","setTreeExpand","isTreeExpandByRow","clearTreeExpand","clearTreeExpandReserve","getScroll","scrollTo","scrollToRow","scrollToColumn","clearScroll","updateFooter","updateStatus","setMergeCells","removeMergeCells","getMergeCells","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","focus","blur","connect"],gridComponentEmits=__spreadArray(__spreadArray([],_emits.default),["page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","toolbar-button-click","toolbar-tool-click","zoom"]),_default2=(0,_vue.defineComponent)({name:"VxeGrid",props:__assign(__assign({},_props.default),{columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:function(){return _conf.default.grid.size||_conf.default.size}}}),emits:gridComponentEmits,setup:function(H,e){function t(e){var t={};return e.forEach(function(r){t[r]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=G.value;return o&&o[r].apply(o,e)}}),t}var g=e.slots,r=e.emit,o=_xeUtils.default.uniqueId(),n=(0,_vue.getCurrentInstance)(),v=(0,_size.useSize)(H),K=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],pendingRecords:[],filterData:[],formData:{},sortData:[],tZindex:0,tablePage:{total:0,pageSize:10,currentPage:1}}),p=(0,_vue.ref)(),G=(0,_vue.ref)(),m=(0,_vue.ref)(),_=(0,_vue.ref)(),x=(0,_vue.ref)(),b=(0,_vue.ref)(),h=(0,_vue.ref)(),C=(0,_vue.ref)(),E=(0,_vue.ref)(),R=(0,_vue.ref)(),Q=t(tableComponentMethodKeys);tableComponentMethodKeys.forEach(function(r){Q[r]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=G.value;return o&&o[r].apply(o,e)}});function f(t){var e=K.pendingRecords,o=H.rowClassName,r=[];return e.some(function(e){return e===t.row})&&r.push("row--pending"),r.push(o?_xeUtils.default.isFunction(o)?o(t):o:""),r}function y(e){var t=H.editConfig,o=K.pendingRecords,r=G.value,t=t?t.activeMethod:null;return-1===r.findRowIndexOf(o,e.row)&&(!t||t(e))}function a(){(0,_vue.nextTick)(function(){var e=G.value,t=_.value;e&&t&&e.connect(t)})}function i(){var e=H.pagerConfig,t=K.tablePage,o=(r=T.value).currentPage,r=r.pageSize;e&&(o&&(t.currentPage=o),r&&(t.pageSize=r))}function Y(e,t){var o,r=void 0===(r=W.value.props)?{}:r;return(o=e&&r.message?_xeUtils.default.get(e,r.message):o)||_conf.default.i18n(t)}function J(e,t,o){var r=ee.value,n=Q.getCheckboxRecords();if(r){if(n.length)return _vXETable.VXETable.modal.confirm({id:"cfm_"+e,content:_conf.default.i18n(t),escClosable:!0}).then(function(e){"confirm"===e&&o()});"development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:"msg_"+e,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"})}else n.length&&o();return Promise.resolve()}function l(e){var t=K.isZMax;return(e?!t:t)&&(K.isZMax=!t,K.tZindex<(0,_utils.getLastZIndex)()&&(K.tZindex=(0,_utils.nextZIndex)())),(0,_vue.nextTick)().then(function(){return Q.recalculate(!0)}).then(function(){return K.isZMax})}var W=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.proxyConfig,H.proxyConfig)}),ee=(0,_vue.computed)(function(){return!1!==W.value.message}),T=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.pagerConfig,H.pagerConfig)}),w=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.formConfig,H.formConfig)}),te=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.toolbarConfig,H.toolbarConfig)}),s=(0,_vue.computed)(function(){return Object.assign({},_conf.default.grid.zoomConfig,H.zoomConfig)}),O=(0,_vue.computed)(function(){return K.isZMax?{zIndex:K.tZindex}:null}),M=(0,_vue.computed)(function(){var t={},o=H;return tableComponentPropKeys.forEach(function(e){t[e]=o[e]}),t}),u={refElem:p,refTable:G,refForm:m,refToolbar:_,refPager:x},c={computeProxyOpts:W,computePagerOpts:T,computeFormOpts:w,computeToolbarOpts:te,computeZoomOpts:s},oe={xID:o,props:H,context:e,instance:n,reactData:K,getRefMaps:function(){return u},getComputeMaps:function(){return c}},re={},D=(0,_vue.computed)(function(){var e=H.seqConfig,t=H.pagerConfig,o=H.loading,r=H.editConfig,n=H.proxyConfig,a=K.isZMax,i=K.tableLoading,l=K.tablePage,s=K.tableData,u=M.value,c=W.value,d=Object.assign({},u);return a&&(u.maxHeight?d.maxHeight="auto":d.height="auto"),n&&(d.loading=o||i,d.data=s,d.rowClassName=f,c.seq&&(0,_utils.isEnableConf)(t)&&(d.seqConfig=Object.assign({},e,{startIndex:(l.currentPage-1)*l.pageSize}))),r&&(d.editConfig=Object.assign({},r,{activeMethod:y})),d}),k=function(e){var t=H.proxyConfig,o=K.tablePage,r=e.currentPage,n=e.pageSize;o.currentPage=r,o.pageSize=n,re.dispatchEvent("page-change",e),t&&re.commitProxy("query")},P=function(e){var t=G.value,o=H.proxyConfig;t.getComputeMaps().computeSortOpts.value.remote&&(K.sortData=e.sortList,o&&(K.tablePage.currentPage=1,re.commitProxy("query"))),re.dispatchEvent("sort-change",e)},V=function(e){var t=G.value,o=H.proxyConfig;t.getComputeMaps().computeFilterOpts.value.remote&&(K.filterData=e.filterList,o&&(K.tablePage.currentPage=1,re.commitProxy("query"))),re.dispatchEvent("filter-change",e)},S=function(e){H.proxyConfig&&re.commitProxy("reload"),re.dispatchEvent("form-submit",e)},X=function(e){H.proxyConfig&&re.commitProxy("reload"),re.dispatchEvent("form-reset",e)},I=function(e){re.dispatchEvent("form-submit-invalid",e)},N=function(e){(0,_vue.nextTick)(function(){return Q.recalculate(!0)}),re.dispatchEvent("form-toggle-collapse",e),re.dispatchEvent("form-collapse",e)},q=function(e,t){t=e[t];if(t){if(!_xeUtils.default.isString(t))return t;if(g[t])return g[t];"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notSlot",[t])}return null},L={};_emits.default.forEach(function(o){var e=_xeUtils.default.camelCase("on-"+o);L[e]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.apply(void 0,__spreadArray([o],e))}});function d(){var n,e=H.proxyConfig,t=H.formConfig,o=K.proxyInited,r=W.value,a=w.value;e&&((0,_utils.isEnableConf)(t)&&r.form&&a.items&&(n={},a.items.forEach(function(e){var t,o=e.field,r=e.itemRender;o&&(t=null,r&&(r=r.defaultValue,_xeUtils.default.isFunction(r)?t=r({item:e}):_xeUtils.default.isUndefined(r)||(t=r)),n[o]=t)}),K.formData=n),o||!1===r.autoLoad||(K.proxyInited=!0,(0,_vue.nextTick)(function(){return re.commitProxy("_init")})))}re={dispatchEvent:function(e,t,o){r(e,Object.assign({$grid:oe,$event:o},t))},commitProxy:function(t){for(var e=[],o=1;o<arguments.length;o++)e[o-1]=arguments[o];var r=H.toolbarConfig,n=H.pagerConfig,a=H.editRules,i=K.tablePage,l=K.formData,s=ee.value,u=W.value,c=te.value,d=u.beforeQuery,f=u.afterQuery,g=u.beforeDelete,v=u.afterDelete,p=u.beforeSave,m=u.afterSave,_=u.ajax,x=void 0===_?{}:_,u=u.props,b=void 0===u?{}:u,h=G.value,C=null,E=null;E=_xeUtils.default.isString(t)?(c=c.buttons,C=(c=r&&c?_xeUtils.default.findTree(c,function(e){return e.code===t},{children:"dropdowns"}):null)?c.item:null,t):(C=t).code;var R,y,T,w,O=C?C.params:null;switch(E){case"insert":h.insert({});break;case"insert_actived":h.insert({}).then(function(e){e=e.row;return h.setActiveRow(e)});break;case"mark_cancel":S=E,T=K.pendingRecords,V=ee.value,w=G.value,(P=w.getCheckboxRecords()).length?(R=[],y=[],P.forEach(function(t){(T.some(function(e){return t===e})?y:R).push(t)}),y.length?K.pendingRecords=T.filter(function(e){return-1===w.findRowIndexOf(y,e)}).concat(R):R.length&&(K.pendingRecords=T.concat(R)),Q.clearCheckboxRow()):V&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:S,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"}));break;case"remove":return J(E,"vxe.grid.removeSelectRecord",function(){return h.removeCheckboxRow()});case"import":h.importData(O);break;case"open_import":h.openImport(O);break;case"export":h.exportData(O);break;case"open_export":h.openExport(O);break;case"reset_custom":h.resetColumn(!0);break;case"_init":case"reload":case"query":var M=x.query;if(M){var D="_init"===E,k="reload"===E,P=[],V=[],S={};n&&((D||k)&&(i.currentPage=1),(0,_utils.isEnableConf)(n)&&(S=__assign({},i))),D?((D=h.getComputeMaps().computeSortOpts.value.defaultSort)&&(P=(D=!_xeUtils.default.isArray(D)?[D]:D).map(function(e){return{property:e.field,order:e.order}})),V=h.getCheckedFilters()):k?(K.pendingRecords=[],h.clearAll()):(P=h.getSortColumns(),V=h.getCheckedFilters());S={code:E,button:C,$grid:oe,page:S,sort:P.length?P[0]:{},sorts:P,filters:V,form:l,options:M};K.sortData=P,K.filterData=V,K.tableLoading=!0;var X=[S].concat(e);return Promise.resolve((d||M).apply(void 0,X)).catch(function(e){return e}).then(function(e){var t;K.tableLoading=!1,e?(0,_utils.isEnableConf)(n)?(t=_xeUtils.default.get(e,b.total||"page.total")||0,i.total=t,K.tableData=_xeUtils.default.get(e,b.result||"result")||[],t=Math.max(Math.ceil(t/i.pageSize),1),i.currentPage>t&&(i.currentPage=t)):K.tableData=(b.list?_xeUtils.default.get(e,b.list):e)||[]:K.tableData=[],f&&f.apply(void 0,X)})}"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notFunc",["proxy-config.ajax.query"]);break;case"delete":var I=x.delete;if(I){var N=Q.getCheckboxRecords(),q=N.filter(function(e){return!h.isInsertByRow(e)}),L=[{$grid:oe,code:E,button:C,body:{removeRecords:q},options:I}].concat(e);if(N.length)return J(E,"vxe.grid.deleteSelectRecord",function(){return q.length?(K.tableLoading=!0,Promise.resolve((g||I).apply(void 0,L)).then(function(e){K.tableLoading=!1,K.pendingRecords=K.pendingRecords.filter(function(e){return-1===h.findRowIndexOf(q,e)}),s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:Y(e,"vxe.grid.delSuccess"),status:"success"})),v?v.apply(void 0,L):re.commitProxy("query")}).catch(function(e){K.tableLoading=!1,s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal.message||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:Y(e,"vxe.grid.operError"),status:"error"}))})):h.remove(N)});s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:_conf.default.i18n("vxe.grid.selectOneRecord"),status:"warning"}))}else"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notFunc",["proxy-config.ajax.delete"]);break;case"save":var U=x.save;if(U){var z=Object.assign({pendingRecords:K.pendingRecords},h.getRecordset()),j=z.insertRecords,F=z.removeRecords,Z=z.updateRecords,A=z.pendingRecords,$=[{$grid:oe,code:E,button:C,body:z,options:U}].concat(e);j.length&&(z.pendingRecords=A.filter(function(e){return-1===h.findRowIndexOf(j,e)})),A.length&&(z.insertRecords=j.filter(function(e){return-1===h.findRowIndexOf(A,e)}));var B=Promise.resolve();return(B=a?h.validate(z.insertRecords.concat(Z)):B).then(function(e){if(!e)return z.insertRecords.length||F.length||Z.length||z.pendingRecords.length?(K.tableLoading=!0,Promise.resolve((p||U).apply(void 0,$)).then(function(e){K.tableLoading=!1,K.pendingRecords=[],s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({content:Y(e,"vxe.grid.saveSuccess"),status:"success"})),m?m.apply(void 0,$):re.commitProxy("query")}).catch(function(e){K.tableLoading=!1,s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:Y(e,"vxe.grid.operError"),status:"error"}))})):void(s&&("development"===process.env.NODE_ENV&&(_vXETable.VXETable.modal||(0,_utils.errLog)("vxe.error.reqModule",["Modal"])),_vXETable.VXETable.modal.message({id:E,content:_conf.default.i18n("vxe.grid.dataUnchanged"),status:"info"})))})}"development"===process.env.NODE_ENV&&(0,_utils.errLog)("vxe.error.notFunc",["proxy-config.ajax.save"]);break;default:B=_vXETable.VXETable.commands.get(E);B&&B.apply(void 0,__spreadArray([{code:E,button:C,$grid:oe,$table:h}],e))}return(0,_vue.nextTick)()},zoom:function(){return K.isZMax?re.revert():re.maximize()},isMaximized:function(){return K.isZMax},maximize:function(){return l(!0)},revert:function(){return l()},getFormItems:function(e){var t=w.value,o=H.formConfig,t=t.items,r=[];return _xeUtils.default.eachTree((0,_utils.isEnableConf)(o)&&t?t:[],function(e){r.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?r:r[e]},getPendingRecords:function(){return K.pendingRecords},getProxyInfo:function(){if(H.proxyConfig){var e=K.sortData;return{data:K.tableData,filter:K.filterData,form:K.formData,sort:e.length?e[0]:{},sorts:e,pager:K.tablePage,pendingRecords:K.pendingRecords}}return null}};"development"===process.env.NODE_ENV&&(re.loadColumn=function(e){var t=G.value;return _xeUtils.default.eachTree(e,function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||g[e]||(0,_utils.errLog)("vxe.error.notSlot",[e])})}),t.loadColumn(e)},re.reloadColumn=function(e){return Q.clearAll(),re.loadColumn(e)});var U={extendTableMethods:t,callSlot:function(e,t){return e&&(_xeUtils.default.isString(e)&&(e=g[e]||null),_xeUtils.default.isFunction(e))?e(t):[]},getExcludeHeight:function(){var e=H.height,t=K.isZMax,o=p.value,r=b.value,n=h.value,a=C.value,i=E.value,l=R.value;return(t||"auto"!==e?0:(0,_dom.getPaddingTopBottomSize)(o.parentNode))+(0,_dom.getPaddingTopBottomSize)(o)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(n)+(0,_dom.getOffsetHeight)(a)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(l)},getParentHeight:function(){var e=p.value;return e?(K.isZMax?(0,_dom.getDomNode)().visibleHeight:_xeUtils.default.toNumber(getComputedStyle(e.parentNode).height))-U.getExcludeHeight():0},triggerToolbarBtnEvent:function(e,t){re.commitProxy(e,t),re.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent:function(e,t){re.commitProxy(e,t),re.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e,$event:t})},triggerZoomEvent:function(e){re.zoom(),re.dispatchEvent("zoom",{type:K.isZMax?"max":"revert"},e)}};Object.assign(oe,Q,re,U),(0,_vue.watch)(function(){return H.columns},function(e){(0,_vue.nextTick)(function(){return oe.loadColumn(e||[])})}),(0,_vue.watch)(function(){return H.toolbarConfig},function(e){e&&a()}),(0,_vue.watch)(function(){return H.proxyConfig},function(){d()}),(0,_vue.watch)(function(){return H.pagerConfig},function(){i()});function z(e){var t=s.value;(0,_event.hasEventKey)(e,_event.EVENT_KEYS.ESCAPE)&&K.isZMax&&!1!==t.escRestore&&U.triggerZoomEvent(e)}_vXETable.VXETable.hooks.forEach(function(e){e=e.setupGrid;!e||(e=e(oe))&&_xeUtils.default.isObject(e)&&Object.assign(oe,e)}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=H.data,t=H.columns,o=H.proxyConfig,r=W.value,n=w.value;o&&(e||r.form&&n.data)&&(0,_utils.errLog)("vxe.error.errConflicts",["grid.data","grid.proxy-config"]),t&&t.length&&oe.loadColumn(t),a(),i(),d()}),_event.GlobalEvent.on(oe,"keydown",z)}),(0,_vue.onUnmounted)(function(){_event.GlobalEvent.off(oe,"keydown")});return oe.renderVN=function(){var e,t,o,r,n,a,i,l,s,u,c,d=v.value,f=O.value;return(0,_vue.h)("div",{ref:p,class:["vxe-grid",((c={})["size--"+d]=d,c["is--animat"]=!!H.animat,c["is--round"]=H.round,c["is--maximize"]=K.isZMax,c["is--loading"]=H.loading||K.tableLoading,c)],style:f},(l=H.formConfig,s=H.proxyConfig,u=K.formData,d=W.value,c=w.value,f=[],((0,_utils.isEnableConf)(l)||g.form)&&(l=[],g.form?l=g.form({$grid:oe}):c.items&&(a={},c.inited||(c.inited=!0,i=d.beforeItem,d&&i&&c.items.forEach(function(e){i({$grid:oe,item:e})})),c.items.forEach(function(e){_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||g[e]&&(a[e]=g[e])})}),l.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-form"),__assign(__assign({ref:m},Object.assign({},c,{data:s&&d.form?u:c.data})),{onSubmit:S,onReset:X,onSubmitInvalid:I,onCollapse:N}),a))),f.push((0,_vue.h)("div",{ref:b,class:"vxe-grid--form-wrapper"},l))),f.concat((c=H.toolbarConfig,l=te.value,f=[],((0,_utils.isEnableConf)(c)||g.toolbar)&&(t=[],g.toolbar?t=g.toolbar({$grid:oe}):(r=o=void 0,n={},(c=l.slots)&&(o=q(c,"buttons"),r=q(c,"tools"),o&&(n.buttons=o),r&&(n.tools=r)),t.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-toolbar"),__assign({ref:_},l),n))),f.push((0,_vue.h)("div",{ref:h,class:"vxe-grid--toolbar-wrapper"},t))),f),g.top?[(0,_vue.h)("div",{ref:C,class:"vxe-grid--top-wrapper"},g.top({$grid:oe}))]:[],(c=H.proxyConfig,o=D.value,r=W.value,l=Object.assign({},L),e=g.empty,c&&(r.sort&&(l.onSortChange=P),r.filter&&(l.onFilterChange=V)),[(0,_vue.h)((0,_vue.resolveComponent)("vxe-table"),__assign(__assign({ref:G},o),l),e?{empty:function(){return e({})}}:{})]),g.bottom?[(0,_vue.h)("div",{ref:E,class:"vxe-grid--bottom-wrapper"},g.bottom({$grid:oe}))]:[],(n=H.pagerConfig,t=T.value,f=[],((0,_utils.isEnableConf)(n)||g.pager)&&(c=[],g.pager?c=g.pager({$grid:oe}):(r={},l=o=void 0,(n=t.slots)&&(o=q(n,"left"),l=q(n,"right"),o&&(r.buttons=o),l&&(r.tools=l)),c.push((0,_vue.h)((0,_vue.resolveComponent)("vxe-pager"),__assign(__assign(__assign({ref:x},t),H.proxyConfig?K.tablePage:{}),{onPageChange:k}),r))),f.push((0,_vue.h)("div",{ref:R,class:"vxe-grid--pager-wrapper"},c))),f))))},(0,_vue.provide)("$xegrid",oe),oe},render:function(){return this.renderVN()}});exports.default=_default2;
|