@next-libs/cmdb-instances 7.7.1 → 7.9.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/dist/cjs/instance-detail/InstanceDetail.js +8 -1
- package/dist/cjs/instance-detail/InstanceDetail.js.map +1 -1
- package/dist/cjs/instance-list/InstanceList.js +198 -35
- package/dist/cjs/instance-list/InstanceList.js.map +1 -1
- package/dist/cjs/instance-list-modal/InstanceListModal.js +3 -1
- package/dist/cjs/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/esm/instance-detail/InstanceDetail.js +8 -1
- package/dist/esm/instance-detail/InstanceDetail.js.map +1 -1
- package/dist/esm/instance-list/InstanceList.js +256 -75
- package/dist/esm/instance-list/InstanceList.js.map +1 -1
- package/dist/esm/instance-list-modal/InstanceListModal.js +3 -1
- package/dist/esm/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/types/instance-detail/InstanceDetail.d.ts +1 -0
- package/dist/types/instance-list/InstanceList.d.ts +11 -0
- package/dist/types/instance-list-modal/InstanceListModal.d.ts +2 -0
- package/package.json +2 -2
|
@@ -10,8 +10,10 @@ exports.LegacyInstanceList = LegacyInstanceList;
|
|
|
10
10
|
exports.getQuery = getQuery;
|
|
11
11
|
exports.isValueEqualFn = exports.isSpecialFn = exports.initAqToShow = void 0;
|
|
12
12
|
exports.joinRelationFieldAndShowkey = joinRelationFieldAndShowkey;
|
|
13
|
+
exports.mergeFields = mergeFields;
|
|
13
14
|
exports.specialQueryHandler = void 0;
|
|
14
15
|
exports.translateConditions = translateConditions;
|
|
16
|
+
exports.updateSortFields = updateSortFields;
|
|
15
17
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
16
18
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
19
|
var _lodash = require("lodash");
|
|
@@ -110,6 +112,31 @@ const isValueEqualFn = (query, attrId, valuesStr) => {
|
|
|
110
112
|
: false;
|
|
111
113
|
};
|
|
112
114
|
exports.isValueEqualFn = isValueEqualFn;
|
|
115
|
+
function mergeFields(oldFields, newFieldIds) {
|
|
116
|
+
return newFieldIds.map(field => {
|
|
117
|
+
const existField = oldFields.find(f => f.field === field);
|
|
118
|
+
const order = existField ? existField.order : 0;
|
|
119
|
+
return {
|
|
120
|
+
field,
|
|
121
|
+
order
|
|
122
|
+
};
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
function updateSortFields(oldFields, sortInfo, sortType) {
|
|
126
|
+
const {
|
|
127
|
+
asc,
|
|
128
|
+
sort
|
|
129
|
+
} = sortInfo;
|
|
130
|
+
const order = ["series-number", "auto-increment-id"].includes(sortType) ? asc ? 2 : -2 : asc ? 1 : -1;
|
|
131
|
+
return oldFields.map(item => {
|
|
132
|
+
if (item.field === sort) {
|
|
133
|
+
item.order = order;
|
|
134
|
+
} else {
|
|
135
|
+
item.order = 0;
|
|
136
|
+
}
|
|
137
|
+
return item;
|
|
138
|
+
});
|
|
139
|
+
}
|
|
113
140
|
function translateConditions(aq, idObjectMap, modelData, t) {
|
|
114
141
|
const conditions = [];
|
|
115
142
|
const relations = [];
|
|
@@ -293,6 +320,17 @@ function LegacyInstanceList(props) {
|
|
|
293
320
|
const instanceArchiveListProvider = (0, _brickKit.useProvider)("providers-of-cmdb.instance-archive-api-list-archive-instance", {
|
|
294
321
|
cache: false
|
|
295
322
|
});
|
|
323
|
+
const ignorePermissionProvider = (0, _brickKit.useProvider)("easyops.api.cmdb.instance@PostSearchV3WithAdmin:1.0.0", {
|
|
324
|
+
cache: false
|
|
325
|
+
});
|
|
326
|
+
// istanbul ignore next
|
|
327
|
+
|
|
328
|
+
const fieldsProvider = (0, _brickKit.useProvider)("easyops.api.cmdb.instance@GetListDisplayView:1.0.1", {
|
|
329
|
+
cache: false
|
|
330
|
+
});
|
|
331
|
+
const updateFieldsProvider = (0, _brickKit.useProvider)("easyops.api.cmdb.instance@UpdateListDisplayView:1.0.0", {
|
|
332
|
+
cache: false
|
|
333
|
+
});
|
|
296
334
|
const {
|
|
297
335
|
modelData,
|
|
298
336
|
idObjectMap
|
|
@@ -365,10 +403,60 @@ function LegacyInstanceList(props) {
|
|
|
365
403
|
});
|
|
366
404
|
return [...frontFields, ...restFields];
|
|
367
405
|
};
|
|
368
|
-
|
|
369
|
-
|
|
406
|
+
// istanbul ignore next
|
|
407
|
+
|
|
408
|
+
const getFieldsAsync = async () => {
|
|
409
|
+
var _props$presetConfigs3, _modelData$attrList, _modelData$attrList$f2, _modelData$attrList$f3, _props$extraFixedFiel;
|
|
410
|
+
let sort = props.sort;
|
|
370
411
|
let fieldIds = (_props$presetConfigs3 = props.presetConfigs) === null || _props$presetConfigs3 === void 0 ? void 0 : _props$presetConfigs3.fieldIds;
|
|
412
|
+
const sortType = modelData === null || modelData === void 0 ? void 0 : (_modelData$attrList = modelData.attrList) === null || _modelData$attrList === void 0 ? void 0 : (_modelData$attrList$f2 = _modelData$attrList.find(attr => attr.id === sort)) === null || _modelData$attrList$f2 === void 0 ? void 0 : (_modelData$attrList$f3 = _modelData$attrList$f2.value) === null || _modelData$attrList$f3 === void 0 ? void 0 : _modelData$attrList$f3.default_type;
|
|
413
|
+
let asc;
|
|
414
|
+
if (props.asc === true) {
|
|
415
|
+
asc = ["series-number", "auto-increment-id"].includes(sortType) ? 2 : 1;
|
|
416
|
+
} else {
|
|
417
|
+
asc = ["series-number", "auto-increment-id"].includes(sortType) ? -2 : -1;
|
|
418
|
+
}
|
|
419
|
+
let sortFields;
|
|
420
|
+
if (props.saveFieldsBackend) {
|
|
421
|
+
sortFields = (await fieldsProvider.query([props.objectId])).sortFields;
|
|
422
|
+
}
|
|
371
423
|
const extraFixedFieldIds = (_props$extraFixedFiel = props.extraFixedFields) !== null && _props$extraFixedFiel !== void 0 ? _props$extraFixedFiel : [];
|
|
424
|
+
if ((0, _lodash.isEmpty)(fieldIds)) {
|
|
425
|
+
if (props.saveFieldsBackend) {
|
|
426
|
+
fieldIds = sortFields.map(item => item.field);
|
|
427
|
+
if ((0, _lodash.isEmpty)(sort) || (0, _lodash.isEmpty)(asc)) {
|
|
428
|
+
const orderField = sortFields.find(item => item.order !== 0);
|
|
429
|
+
if (orderField) {
|
|
430
|
+
sort = orderField.field;
|
|
431
|
+
asc = orderField.order;
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
} else {
|
|
435
|
+
fieldIds = jsonLocalStorage.getItem(`${modelData.objectId}-selectAttrIds`);
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
if ((0, _lodash.isEmpty)(fieldIds)) {
|
|
439
|
+
fieldIds = computeDefaultFields().fieldIds;
|
|
440
|
+
}
|
|
441
|
+
if (!(0, _lodash.isEmpty)(extraFixedFieldIds)) {
|
|
442
|
+
fieldIds = (0, _lodash.uniq)([...fieldIds, ...extraFixedFieldIds]);
|
|
443
|
+
}
|
|
444
|
+
fieldIds = props.extraDisabledField ? (0, _lodash.uniq)([...fieldIds, props.extraDisabledField]) : fieldIds;
|
|
445
|
+
fieldIds = _sortFieldIds(fieldIds);
|
|
446
|
+
const hideModelData = modelData.view.hide_columns || [];
|
|
447
|
+
fieldIds = fieldIds.filter(field => !hideModelData.includes(field));
|
|
448
|
+
modelData.isAbstract && fieldIds.push("_object_id");
|
|
449
|
+
return {
|
|
450
|
+
fieldIds,
|
|
451
|
+
sort,
|
|
452
|
+
asc,
|
|
453
|
+
sortFields
|
|
454
|
+
};
|
|
455
|
+
};
|
|
456
|
+
const getFields = () => {
|
|
457
|
+
var _props$presetConfigs4, _props$extraFixedFiel2;
|
|
458
|
+
let fieldIds = (_props$presetConfigs4 = props.presetConfigs) === null || _props$presetConfigs4 === void 0 ? void 0 : _props$presetConfigs4.fieldIds;
|
|
459
|
+
const extraFixedFieldIds = (_props$extraFixedFiel2 = props.extraFixedFields) !== null && _props$extraFixedFiel2 !== void 0 ? _props$extraFixedFiel2 : [];
|
|
372
460
|
if ((0, _lodash.isEmpty)(fieldIds)) {
|
|
373
461
|
fieldIds = jsonLocalStorage.getItem(`${modelData.objectId}-selectAttrIds`);
|
|
374
462
|
}
|
|
@@ -387,11 +475,12 @@ function LegacyInstanceList(props) {
|
|
|
387
475
|
};
|
|
388
476
|
const [q, setQ] = (0, _react.useState)(props.q);
|
|
389
477
|
const [state, setState] = (0, _react.useReducer)(reducer, undefined, () => {
|
|
390
|
-
var _ref, _props$dataSource$pag, _props$dataSource, _ref2, _props$dataSource$pag2, _props$dataSource2, _props$
|
|
478
|
+
var _ref, _props$dataSource$pag, _props$dataSource, _ref2, _props$dataSource$pag2, _props$dataSource2, _props$presetConfigs5;
|
|
391
479
|
return {
|
|
392
480
|
objectId: props.objectId,
|
|
393
481
|
q: props.q,
|
|
394
482
|
aq: initAqToShow(props.aq, modelData, false),
|
|
483
|
+
sortFields: [],
|
|
395
484
|
aqToShow: props.aqToShow || initAqToShow(props.aq, modelData),
|
|
396
485
|
instanceSourceQuery: props.instanceSourceQuery,
|
|
397
486
|
asc: props.asc,
|
|
@@ -407,8 +496,8 @@ function LegacyInstanceList(props) {
|
|
|
407
496
|
loading: false,
|
|
408
497
|
failed: false,
|
|
409
498
|
isAdvancedSearchVisible: false,
|
|
410
|
-
fieldIds: getFields(),
|
|
411
|
-
presetConfigsQuery: (_props$
|
|
499
|
+
fieldIds: props.saveFieldsBackend ? [] : getFields(),
|
|
500
|
+
presetConfigsQuery: (_props$presetConfigs5 = props.presetConfigs) === null || _props$presetConfigs5 === void 0 ? void 0 : _props$presetConfigs5.query,
|
|
412
501
|
autoBreakLine: false,
|
|
413
502
|
appSearchInstanceId: "",
|
|
414
503
|
currentChangeSelect: "App",
|
|
@@ -426,7 +515,7 @@ function LegacyInstanceList(props) {
|
|
|
426
515
|
const cache = (0, _react.useRef)(new Map());
|
|
427
516
|
const isFirstRunRef = (0, _react.useRef)(true);
|
|
428
517
|
const getInstanceListData = async (sort, asc, page) => {
|
|
429
|
-
var _modelData$
|
|
518
|
+
var _modelData$attrList2, _modelData$attrList2$, _modelData$attrList2$2, _props$onSearchExecut;
|
|
430
519
|
const data = {};
|
|
431
520
|
const v3Data = {
|
|
432
521
|
fields: props !== null && props !== void 0 && props.extraFixedFields ? (0, _lodash.uniq)(["instanceId"].concat(props === null || props === void 0 ? void 0 : props.extraFixedFields)) : ["instanceId"]
|
|
@@ -438,7 +527,7 @@ function LegacyInstanceList(props) {
|
|
|
438
527
|
let query = {};
|
|
439
528
|
v3Data.page = data.page = archiveData.page = page;
|
|
440
529
|
v3Data["page_size"] = data["page_size"] = archiveData["page_size"] = state.pageSize;
|
|
441
|
-
const sortType = modelData === null || modelData === void 0 ? void 0 : (_modelData$
|
|
530
|
+
const sortType = modelData === null || modelData === void 0 ? void 0 : (_modelData$attrList2 = modelData.attrList) === null || _modelData$attrList2 === void 0 ? void 0 : (_modelData$attrList2$ = _modelData$attrList2.find(attr => attr.id === sort)) === null || _modelData$attrList2$ === void 0 ? void 0 : (_modelData$attrList2$2 = _modelData$attrList2$.value) === null || _modelData$attrList2$2 === void 0 ? void 0 : _modelData$attrList2$2.default_type;
|
|
442
531
|
const order = ["series-number", "auto-increment-id"].includes(sortType) ? asc ? 2 : -2 : asc ? 1 : -1;
|
|
443
532
|
if (sort) {
|
|
444
533
|
data.sort = {
|
|
@@ -509,8 +598,8 @@ function LegacyInstanceList(props) {
|
|
|
509
598
|
//按应用筛选
|
|
510
599
|
// istanbul ignore next (state is not updated)
|
|
511
600
|
if (state.searchByApp) {
|
|
512
|
-
var _props$
|
|
513
|
-
const hostRange = (_props$
|
|
601
|
+
var _props$presetConfigs6, _props$presetConfigs7, _props$presetConfigs8, _props$presetConfigs9, _props$presetConfigs10;
|
|
602
|
+
const hostRange = (_props$presetConfigs6 = props.presetConfigs) === null || _props$presetConfigs6 === void 0 ? void 0 : (_props$presetConfigs7 = _props$presetConfigs6.query) === null || _props$presetConfigs7 === void 0 ? void 0 : (_props$presetConfigs8 = _props$presetConfigs7["$and"]) === null || _props$presetConfigs8 === void 0 ? void 0 : (_props$presetConfigs9 = _props$presetConfigs8.find(i => i.instanceId)) === null || _props$presetConfigs9 === void 0 ? void 0 : (_props$presetConfigs10 = _props$presetConfigs9.instanceId) === null || _props$presetConfigs10 === void 0 ? void 0 : _props$presetConfigs10["$in"];
|
|
514
603
|
v3Data.query = {
|
|
515
604
|
[state.currentChangeSelect === "App" || state.currentChangeSelect === "Cluster" && state.clusterValue === "all" ? "_deviceList_CLUSTER.appId.instanceId" : "_deviceList_CLUSTER.instanceId"]: state.appSearchInstanceId,
|
|
516
605
|
...(!(0, _lodash.isEmpty)(hostRange) && props.limitInstanceRange ? {
|
|
@@ -528,7 +617,7 @@ function LegacyInstanceList(props) {
|
|
|
528
617
|
}
|
|
529
618
|
const promise = (_props$onSearchExecut = props.onSearchExecute) === null || _props$onSearchExecut === void 0 ? void 0 : _props$onSearchExecut.call(props, data, v3Data);
|
|
530
619
|
// useAutoDiscoveryProvider=true, 使用useProvider的接口
|
|
531
|
-
return promise ? promise : props.useAutoDiscoveryProvider ? listProvider.query([props.objectId, v3Data]) : (0, _cmdbSdk.InstanceApi_postSearchV3)(props.objectId, v3Data);
|
|
620
|
+
return promise ? promise : props.useAutoDiscoveryProvider ? listProvider.query([props.objectId, v3Data]) : props.ignorePermission ? ignorePermissionProvider.query([props.objectId, v3Data]) : (0, _cmdbSdk.InstanceApi_postSearchV3)(props.objectId, v3Data);
|
|
532
621
|
};
|
|
533
622
|
const refreshInstanceList = async (sort, asc, page) => {
|
|
534
623
|
setState({
|
|
@@ -567,17 +656,42 @@ function LegacyInstanceList(props) {
|
|
|
567
656
|
});
|
|
568
657
|
}
|
|
569
658
|
};
|
|
659
|
+
// const [fieldIds,setFieldIds] = useState([]);
|
|
660
|
+
// istanbul ignore next
|
|
570
661
|
(0, _react.useEffect)(() => {
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
662
|
+
if (props.saveFieldsBackend) {
|
|
663
|
+
const getFieldIds = async () => {
|
|
664
|
+
var _props$presetConfigs11, _props$presetConfigs12;
|
|
665
|
+
const fieldConfig = await getFieldsAsync();
|
|
666
|
+
const {
|
|
667
|
+
fieldIds,
|
|
668
|
+
sort,
|
|
669
|
+
asc,
|
|
670
|
+
sortFields
|
|
671
|
+
} = fieldConfig;
|
|
672
|
+
if (
|
|
673
|
+
// 当 props.objectId 改变时,总是更新 state.fieldIds
|
|
674
|
+
props.objectId !== state.objectId || !(0, _lodash.isEqual)(fieldIds, state.fieldIds) || !(0, _lodash.isEqual)((_props$presetConfigs11 = props.presetConfigs) === null || _props$presetConfigs11 === void 0 ? void 0 : _props$presetConfigs11.query, state.presetConfigsQuery)) setState({
|
|
675
|
+
fieldIds,
|
|
676
|
+
presetConfigsQuery: (_props$presetConfigs12 = props.presetConfigs) === null || _props$presetConfigs12 === void 0 ? void 0 : _props$presetConfigs12.query,
|
|
677
|
+
sort,
|
|
678
|
+
asc: [1, 2].includes(asc) ? true : false,
|
|
679
|
+
sortFields
|
|
680
|
+
});
|
|
681
|
+
};
|
|
682
|
+
getFieldIds();
|
|
683
|
+
} else {
|
|
684
|
+
var _props$presetConfigs13;
|
|
685
|
+
const fieldIds = getFields();
|
|
686
|
+
if (
|
|
687
|
+
// 当 props.objectId 改变时,总是更新 state.fieldIds
|
|
688
|
+
props.objectId !== state.objectId || !(0, _lodash.isEqual)(fieldIds, state.fieldIds) || !(0, _lodash.isEqual)((_props$presetConfigs13 = props.presetConfigs) === null || _props$presetConfigs13 === void 0 ? void 0 : _props$presetConfigs13.query, state.presetConfigsQuery)) {
|
|
689
|
+
var _props$presetConfigs14;
|
|
690
|
+
setState({
|
|
691
|
+
fieldIds,
|
|
692
|
+
presetConfigsQuery: (_props$presetConfigs14 = props.presetConfigs) === null || _props$presetConfigs14 === void 0 ? void 0 : _props$presetConfigs14.query
|
|
693
|
+
});
|
|
694
|
+
}
|
|
581
695
|
}
|
|
582
696
|
}, [props.objectId, props.presetConfigs]);
|
|
583
697
|
(0, _react.useEffect)(() => {
|
|
@@ -656,6 +770,8 @@ function LegacyInstanceList(props) {
|
|
|
656
770
|
// useAutoDiscoveryProvider=true, 使用useProvider的接口,虽然这里列表用不到选择功能,但还是加上保持统一
|
|
657
771
|
if (props.useAutoDiscoveryProvider) {
|
|
658
772
|
resp = await listProvider.query([props.objectId, Object.assign(params, props.extraParams)]);
|
|
773
|
+
} else if (props.ignorePermission) {
|
|
774
|
+
resp = await ignorePermissionProvider.query([props.objectId, Object.assign(params, props.extraParams)]);
|
|
659
775
|
} else {
|
|
660
776
|
resp = await (0, _cmdbSdk.InstanceApi_postSearchV3)(props.objectId, params);
|
|
661
777
|
}
|
|
@@ -685,7 +801,7 @@ function LegacyInstanceList(props) {
|
|
|
685
801
|
});
|
|
686
802
|
(_props$onAdvancedSear = props.onAdvancedSearch) === null || _props$onAdvancedSear === void 0 ? void 0 : _props$onAdvancedSear.call(props, queries);
|
|
687
803
|
};
|
|
688
|
-
const onSortingChange = (0, _react.useCallback)(info => {
|
|
804
|
+
const onSortingChange = (0, _react.useCallback)(async (info, sortFields) => {
|
|
689
805
|
var _props$onSortingChang;
|
|
690
806
|
let asc;
|
|
691
807
|
let sort;
|
|
@@ -705,6 +821,24 @@ function LegacyInstanceList(props) {
|
|
|
705
821
|
asc = info.asc;
|
|
706
822
|
sort = info.sort;
|
|
707
823
|
}
|
|
824
|
+
// istanbul ignore next
|
|
825
|
+
if (props.saveFieldsBackend) {
|
|
826
|
+
try {
|
|
827
|
+
var _modelData$attrList3, _modelData$attrList3$, _modelData$attrList3$2;
|
|
828
|
+
const oldsortFields = sortFields;
|
|
829
|
+
const sortType = modelData === null || modelData === void 0 ? void 0 : (_modelData$attrList3 = modelData.attrList) === null || _modelData$attrList3 === void 0 ? void 0 : (_modelData$attrList3$ = _modelData$attrList3.find(attr => attr.id === sort)) === null || _modelData$attrList3$ === void 0 ? void 0 : (_modelData$attrList3$2 = _modelData$attrList3$.value) === null || _modelData$attrList3$2 === void 0 ? void 0 : _modelData$attrList3$2.default_type;
|
|
830
|
+
const newSortFields = updateSortFields(oldsortFields, info, sortType);
|
|
831
|
+
setState({
|
|
832
|
+
sortFields: newSortFields
|
|
833
|
+
});
|
|
834
|
+
await updateFieldsProvider.query([props.objectId, {
|
|
835
|
+
sortFields: newSortFields
|
|
836
|
+
}]);
|
|
837
|
+
} catch (e) {
|
|
838
|
+
_brickKit.handleHttpError;
|
|
839
|
+
}
|
|
840
|
+
}
|
|
841
|
+
// istanbul ignore next
|
|
708
842
|
(_props$onSortingChang = props.onSortingChange) === null || _props$onSortingChang === void 0 ? void 0 : _props$onSortingChang.call(props, info);
|
|
709
843
|
}, [state.sort]);
|
|
710
844
|
const onPaginationChange = (0, _react.useCallback)(pagination => {
|
|
@@ -789,10 +923,10 @@ function LegacyInstanceList(props) {
|
|
|
789
923
|
});
|
|
790
924
|
};
|
|
791
925
|
const defaultFields = (0, _react.useMemo)(() => {
|
|
792
|
-
var _props$
|
|
926
|
+
var _props$presetConfigs15, _props$extraFixedFiel3;
|
|
793
927
|
let defaultFields;
|
|
794
|
-
const fieldIds = (_props$
|
|
795
|
-
extraFixedFieldIds = (_props$
|
|
928
|
+
const fieldIds = (_props$presetConfigs15 = props.presetConfigs) === null || _props$presetConfigs15 === void 0 ? void 0 : _props$presetConfigs15.fieldIds,
|
|
929
|
+
extraFixedFieldIds = (_props$extraFixedFiel3 = props.extraFixedFields) !== null && _props$extraFixedFiel3 !== void 0 ? _props$extraFixedFiel3 : [];
|
|
796
930
|
if (!(0, _lodash.isEmpty)(fieldIds)) {
|
|
797
931
|
defaultFields = props.presetConfigs.fieldIds;
|
|
798
932
|
} else {
|
|
@@ -805,23 +939,50 @@ function LegacyInstanceList(props) {
|
|
|
805
939
|
}, [props.presetConfigs, modelData]);
|
|
806
940
|
|
|
807
941
|
// istanbul ignore next
|
|
808
|
-
const handleConfirm = ({
|
|
942
|
+
const handleConfirm = async ({
|
|
809
943
|
fields,
|
|
810
944
|
isReset
|
|
811
945
|
}) => {
|
|
812
946
|
if (isReset) {
|
|
813
947
|
const fieldIds = defaultFields;
|
|
814
948
|
modelData.isAbstract && fieldIds.push("_object_id");
|
|
815
|
-
|
|
816
|
-
fieldIds
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
949
|
+
if (props.saveFieldsBackend) {
|
|
950
|
+
const sortFields = mergeFields(state.sortFields, fieldIds);
|
|
951
|
+
await updateFieldsProvider.query([props.objectId, {
|
|
952
|
+
sortFields
|
|
953
|
+
}]);
|
|
954
|
+
setState({
|
|
955
|
+
fieldIds,
|
|
956
|
+
sortFields
|
|
957
|
+
});
|
|
958
|
+
props.onFieldsModalConfirm(fieldIds);
|
|
959
|
+
} else {
|
|
960
|
+
jsonLocalStorage.removeItem(`${modelData.objectId}-selectAttrIds`);
|
|
961
|
+
setState({
|
|
962
|
+
fieldIds
|
|
963
|
+
});
|
|
964
|
+
props.onFieldsModalConfirm(fieldIds);
|
|
965
|
+
}
|
|
820
966
|
} else {
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
967
|
+
if (props.saveFieldsBackend) {
|
|
968
|
+
try {
|
|
969
|
+
const sortFields = mergeFields(state.sortFields, fields);
|
|
970
|
+
await updateFieldsProvider.query([props.objectId, {
|
|
971
|
+
sortFields
|
|
972
|
+
}]);
|
|
973
|
+
setState({
|
|
974
|
+
fieldIds: _sortFieldIds(fields),
|
|
975
|
+
sortFields
|
|
976
|
+
});
|
|
977
|
+
} catch (e) {
|
|
978
|
+
(0, _brickKit.handleHttpError)(e);
|
|
979
|
+
}
|
|
980
|
+
} else {
|
|
981
|
+
setState({
|
|
982
|
+
fieldIds: _sortFieldIds(fields)
|
|
983
|
+
});
|
|
984
|
+
jsonLocalStorage.setItem(`${modelData.objectId}-selectAttrIds`, fields);
|
|
985
|
+
}
|
|
825
986
|
props.onFieldsModalConfirm(fields);
|
|
826
987
|
}
|
|
827
988
|
};
|
|
@@ -1121,7 +1282,9 @@ function LegacyInstanceList(props) {
|
|
|
1121
1282
|
onClickItem: props.onClickItem,
|
|
1122
1283
|
onClickItemV2: props.onClickItemV2,
|
|
1123
1284
|
onPaginationChange: onPaginationChange,
|
|
1124
|
-
onSortingChange:
|
|
1285
|
+
onSortingChange: info => {
|
|
1286
|
+
onSortingChange(info, state.sortFields);
|
|
1287
|
+
},
|
|
1125
1288
|
onSelectionChange: onSelectionChange,
|
|
1126
1289
|
onInstanceSourceChange: onInstanceSourceChange,
|
|
1127
1290
|
instanceSourceQuery: state.instanceSourceQuery,
|