@next-libs/cmdb-instances 6.47.12 → 6.49.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/attribute-form-control-url/AttributeFormControlUrl.js +8 -23
- package/dist/cjs/attribute-form-control-url/AttributeFormControlUrl.js.map +1 -1
- package/dist/cjs/cmdb-instances-input-form/CmdbInstancesInputFormItem.js +3 -43
- package/dist/cjs/cmdb-instances-input-form/CmdbInstancesInputFormItem.js.map +1 -1
- package/dist/cjs/cmdb-instances-select-panel/CmdbInstancesSelectPanel.js +6 -45
- package/dist/cjs/cmdb-instances-select-panel/CmdbInstancesSelectPanel.js.map +1 -1
- package/dist/cjs/cmdb-url-link/CmdbUrlLink.js +0 -11
- package/dist/cjs/cmdb-url-link/CmdbUrlLink.js.map +1 -1
- package/dist/cjs/components/index.js +0 -4
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/instance-format/index.js +0 -15
- package/dist/cjs/components/instance-format/index.js.map +1 -1
- package/dist/cjs/components/user-or-user-group-select/UserOrUserGroupSelect.js +33 -92
- package/dist/cjs/components/user-or-user-group-select/UserOrUserGroupSelect.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbInstanceDetail.js +0 -3
- package/dist/cjs/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbInstanceSearch.js +0 -2
- package/dist/cjs/data-providers/fetchCmdbInstanceSearch.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbObjectDetail.js +0 -2
- package/dist/cjs/data-providers/fetchCmdbObjectDetail.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbObjectList.js +0 -2
- package/dist/cjs/data-providers/fetchCmdbObjectList.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbObjectRef.js +0 -2
- package/dist/cjs/data-providers/fetchCmdbObjectRef.js.map +1 -1
- package/dist/cjs/data-providers/index.js +0 -10
- package/dist/cjs/data-providers/index.js.map +1 -1
- package/dist/cjs/float-display-brick/FloatDisplayBrick.js +0 -7
- package/dist/cjs/float-display-brick/FloatDisplayBrick.js.map +1 -1
- package/dist/cjs/i18n/constants.js +0 -1
- package/dist/cjs/i18n/constants.js.map +1 -1
- package/dist/cjs/i18n/index.js +0 -7
- package/dist/cjs/i18n/index.js.map +1 -1
- package/dist/cjs/i18n/locales/en.js +0 -2
- package/dist/cjs/i18n/locales/en.js.map +1 -1
- package/dist/cjs/i18n/locales/zh.js +0 -2
- package/dist/cjs/i18n/locales/zh.js.map +1 -1
- package/dist/cjs/index.js +0 -29
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/instance-attribute-form/InstanceAttributeForm.js +4 -25
- package/dist/cjs/instance-attribute-form/InstanceAttributeForm.js.map +1 -1
- package/dist/cjs/instance-detail/InstanceDetail.js +42 -124
- package/dist/cjs/instance-detail/InstanceDetail.js.map +1 -1
- package/dist/cjs/instance-detail/components/instance-relation-field-display/constants.js.map +1 -1
- package/dist/cjs/instance-detail/components/instance-relation-field-display/instance-relation-field-display.js +4 -19
- package/dist/cjs/instance-detail/components/instance-relation-field-display/instance-relation-field-display.js.map +1 -1
- package/dist/cjs/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js +4 -11
- package/dist/cjs/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js.map +1 -1
- package/dist/cjs/instance-detail/constants/index.js.map +1 -1
- package/dist/cjs/instance-list/IconButton.js +0 -18
- package/dist/cjs/instance-list/IconButton.js.map +1 -1
- package/dist/cjs/instance-list/InstanceList.js +60 -210
- package/dist/cjs/instance-list/InstanceList.js.map +1 -1
- package/dist/cjs/instance-list/constants.js +0 -7
- package/dist/cjs/instance-list/constants.js.map +1 -1
- package/dist/cjs/instance-list-modal/InstanceListModal.js +8 -32
- package/dist/cjs/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/cjs/instance-list-table/AdvancedSearch.js +12 -133
- package/dist/cjs/instance-list-table/AdvancedSearch.js.map +1 -1
- package/dist/cjs/instance-list-table/AdvancedSearchCondition.js +3 -45
- package/dist/cjs/instance-list-table/AdvancedSearchCondition.js.map +1 -1
- package/dist/cjs/instance-list-table/DisplaySettings.js +0 -24
- package/dist/cjs/instance-list-table/DisplaySettings.js.map +1 -1
- package/dist/cjs/instance-list-table/DisplaySettingsModal.js +0 -10
- package/dist/cjs/instance-list-table/DisplaySettingsModal.js.map +1 -1
- package/dist/cjs/instance-list-table/DynamicSearch.js +4 -44
- package/dist/cjs/instance-list-table/DynamicSearch.js.map +1 -1
- package/dist/cjs/instance-list-table/InstanceListTable.js +30 -151
- package/dist/cjs/instance-list-table/InstanceListTable.js.map +1 -1
- package/dist/cjs/instance-list-table/MoreButtonsContainer.js +0 -15
- package/dist/cjs/instance-list-table/MoreButtonsContainer.js.map +1 -1
- package/dist/cjs/instance-list-table/constants.js +0 -2
- package/dist/cjs/instance-list-table/constants.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceAggregateCount.js +0 -2
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceAggregateCount.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceCount.js +0 -2
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceCount.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceDetail.js +0 -2
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbObjectDetail.js +0 -2
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbObjectDetail.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchPermRoleList.js +0 -2
- package/dist/cjs/instance-list-table/data-providers/fetchPermRoleList.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchPermissionList.js +0 -2
- package/dist/cjs/instance-list-table/data-providers/fetchPermissionList.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/getDefaultValueTemplate.js +1 -2
- package/dist/cjs/instance-list-table/data-providers/getDefaultValueTemplate.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/index.js +0 -16
- package/dist/cjs/instance-list-table/data-providers/index.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/searchCmdbInstances.js +0 -2
- package/dist/cjs/instance-list-table/data-providers/searchCmdbInstances.js.map +1 -1
- package/dist/cjs/instance-list-table/index.js +0 -12
- package/dist/cjs/instance-list-table/index.js.map +1 -1
- package/dist/cjs/instance-list-table/utils.js +0 -24
- package/dist/cjs/instance-list-table/utils.js.map +1 -1
- package/dist/cjs/model-attribute-form/ModelAttributeForm.js +27 -99
- package/dist/cjs/model-attribute-form/ModelAttributeForm.js.map +1 -1
- package/dist/cjs/model-attribute-form/constants.js.map +1 -1
- package/dist/cjs/model-attribute-form-control/ModelAttributeFormControl.js +13 -94
- package/dist/cjs/model-attribute-form-control/ModelAttributeFormControl.js.map +1 -1
- package/dist/cjs/model-relation-form/ModelRelationForm.js +0 -18
- package/dist/cjs/model-relation-form/ModelRelationForm.js.map +1 -1
- package/dist/cjs/processors.js +2 -21
- package/dist/cjs/processors.js.map +1 -1
- package/dist/cjs/struct-components/AddStruct.js +4 -15
- package/dist/cjs/struct-components/AddStruct.js.map +1 -1
- package/dist/cjs/struct-components/AddStructModal.js +0 -48
- package/dist/cjs/struct-components/AddStructModal.js.map +1 -1
- package/dist/cjs/struct-components/StructTable.js +2 -32
- package/dist/cjs/struct-components/StructTable.js.map +1 -1
- package/dist/cjs/struct-components/index.js +0 -8
- package/dist/cjs/struct-components/index.js.map +1 -1
- package/dist/cjs/struct-components/interfaces.js +0 -1
- package/dist/cjs/struct-components/interfaces.js.map +1 -1
- package/dist/cjs/struct-components/mockData.js.map +1 -1
- package/dist/esm/attribute-form-control-url/AttributeFormControlUrl.js +8 -18
- package/dist/esm/attribute-form-control-url/AttributeFormControlUrl.js.map +1 -1
- package/dist/esm/cmdb-instances-input-form/CmdbInstancesInputFormItem.js +3 -35
- package/dist/esm/cmdb-instances-input-form/CmdbInstancesInputFormItem.js.map +1 -1
- package/dist/esm/cmdb-instances-select-panel/CmdbInstancesSelectPanel.js +4 -32
- package/dist/esm/cmdb-instances-select-panel/CmdbInstancesSelectPanel.js.map +1 -1
- package/dist/esm/cmdb-url-link/CmdbUrlLink.js +0 -3
- package/dist/esm/cmdb-url-link/CmdbUrlLink.js.map +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/instance-format/index.js +0 -5
- package/dist/esm/components/instance-format/index.js.map +1 -1
- package/dist/esm/components/user-or-user-group-select/UserOrUserGroupSelect.js +19 -74
- package/dist/esm/components/user-or-user-group-select/UserOrUserGroupSelect.js.map +1 -1
- package/dist/esm/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
- package/dist/esm/data-providers/fetchCmdbInstanceSearch.js.map +1 -1
- package/dist/esm/data-providers/fetchCmdbObjectDetail.js.map +1 -1
- package/dist/esm/data-providers/fetchCmdbObjectList.js.map +1 -1
- package/dist/esm/data-providers/fetchCmdbObjectRef.js.map +1 -1
- package/dist/esm/data-providers/index.js.map +1 -1
- package/dist/esm/float-display-brick/FloatDisplayBrick.js +0 -1
- package/dist/esm/float-display-brick/FloatDisplayBrick.js.map +1 -1
- package/dist/esm/i18n/constants.js +0 -1
- package/dist/esm/i18n/constants.js.map +1 -1
- package/dist/esm/i18n/index.js +2 -1
- package/dist/esm/i18n/index.js.map +1 -1
- package/dist/esm/i18n/locales/en.js.map +1 -1
- package/dist/esm/i18n/locales/zh.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/instance-attribute-form/InstanceAttributeForm.js +4 -10
- package/dist/esm/instance-attribute-form/InstanceAttributeForm.js.map +1 -1
- package/dist/esm/instance-detail/InstanceDetail.js +36 -111
- package/dist/esm/instance-detail/InstanceDetail.js.map +1 -1
- package/dist/esm/instance-detail/components/instance-relation-field-display/constants.js.map +1 -1
- package/dist/esm/instance-detail/components/instance-relation-field-display/instance-relation-field-display.js +4 -10
- package/dist/esm/instance-detail/components/instance-relation-field-display/instance-relation-field-display.js.map +1 -1
- package/dist/esm/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js +2 -2
- package/dist/esm/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js.map +1 -1
- package/dist/esm/instance-detail/constants/index.js.map +1 -1
- package/dist/esm/instance-list/IconButton.js +0 -8
- package/dist/esm/instance-list/IconButton.js.map +1 -1
- package/dist/esm/instance-list/InstanceList.js +54 -180
- package/dist/esm/instance-list/InstanceList.js.map +1 -1
- package/dist/esm/instance-list/constants.js +0 -2
- package/dist/esm/instance-list/constants.js.map +1 -1
- package/dist/esm/instance-list-modal/InstanceListModal.js +8 -20
- package/dist/esm/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/esm/instance-list-table/AdvancedSearch.js +10 -119
- package/dist/esm/instance-list-table/AdvancedSearch.js.map +1 -1
- package/dist/esm/instance-list-table/AdvancedSearchCondition.js +1 -31
- package/dist/esm/instance-list-table/AdvancedSearchCondition.js.map +1 -1
- package/dist/esm/instance-list-table/DisplaySettings.js +0 -16
- package/dist/esm/instance-list-table/DisplaySettings.js.map +1 -1
- package/dist/esm/instance-list-table/DisplaySettingsModal.js +0 -3
- package/dist/esm/instance-list-table/DisplaySettingsModal.js.map +1 -1
- package/dist/esm/instance-list-table/DynamicSearch.js +0 -34
- package/dist/esm/instance-list-table/DynamicSearch.js.map +1 -1
- package/dist/esm/instance-list-table/InstanceListTable.js +23 -138
- package/dist/esm/instance-list-table/InstanceListTable.js.map +1 -1
- package/dist/esm/instance-list-table/MoreButtonsContainer.js +0 -7
- package/dist/esm/instance-list-table/MoreButtonsContainer.js.map +1 -1
- package/dist/esm/instance-list-table/constants.js +0 -2
- package/dist/esm/instance-list-table/constants.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/fetchCmdbInstanceAggregateCount.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/fetchCmdbInstanceCount.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/fetchCmdbObjectDetail.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/fetchPermRoleList.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/fetchPermissionList.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/getDefaultValueTemplate.js +1 -1
- package/dist/esm/instance-list-table/data-providers/getDefaultValueTemplate.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/index.js.map +1 -1
- package/dist/esm/instance-list-table/data-providers/searchCmdbInstances.js.map +1 -1
- package/dist/esm/instance-list-table/index.js.map +1 -1
- package/dist/esm/instance-list-table/utils.js +0 -15
- package/dist/esm/instance-list-table/utils.js.map +1 -1
- package/dist/esm/model-attribute-form/ModelAttributeForm.js +19 -92
- package/dist/esm/model-attribute-form/ModelAttributeForm.js.map +1 -1
- package/dist/esm/model-attribute-form/constants.js.map +1 -1
- package/dist/esm/model-attribute-form-control/ModelAttributeFormControl.js +27 -102
- package/dist/esm/model-attribute-form-control/ModelAttributeFormControl.js.map +1 -1
- package/dist/esm/model-relation-form/ModelRelationForm.js +0 -10
- package/dist/esm/model-relation-form/ModelRelationForm.js.map +1 -1
- package/dist/esm/processors.js +2 -7
- package/dist/esm/processors.js.map +1 -1
- package/dist/esm/struct-components/AddStruct.js +4 -9
- package/dist/esm/struct-components/AddStruct.js.map +1 -1
- package/dist/esm/struct-components/AddStructModal.js +0 -36
- package/dist/esm/struct-components/AddStructModal.js.map +1 -1
- package/dist/esm/struct-components/StructTable.js +2 -26
- package/dist/esm/struct-components/StructTable.js.map +1 -1
- package/dist/esm/struct-components/index.js.map +1 -1
- package/dist/esm/struct-components/interfaces.js +0 -1
- package/dist/esm/struct-components/interfaces.js.map +1 -1
- package/dist/esm/struct-components/mockData.js.map +1 -1
- package/dist/types/instance-list/InstanceList.d.ts +10 -0
- package/package.json +9 -9
- package/CHANGELOG.md +0 -3676
|
@@ -1,44 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
-
|
|
5
4
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.LegacyUserSelectFormItem = LegacyUserSelectFormItem;
|
|
11
9
|
exports.UserOrUserGroupSelect = UserOrUserGroupSelect;
|
|
12
10
|
exports.UserSelectFormItem = void 0;
|
|
13
|
-
|
|
14
11
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
15
|
-
|
|
16
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
|
-
|
|
18
13
|
var _icons = require("@ant-design/icons");
|
|
19
|
-
|
|
20
14
|
var _antd = require("antd");
|
|
21
|
-
|
|
22
15
|
var _UserOrUserGroupSelectModule = _interopRequireDefault(require("./UserOrUserGroupSelect.module.css"));
|
|
23
|
-
|
|
24
16
|
var _cmdbSdk = require("@next-sdk/cmdb-sdk");
|
|
25
|
-
|
|
26
17
|
var _lodash = require("lodash");
|
|
27
|
-
|
|
28
18
|
var _forms = require("@next-libs/forms");
|
|
29
|
-
|
|
30
19
|
var _cmdbUtils = require("@next-libs/cmdb-utils");
|
|
31
|
-
|
|
32
20
|
var _InstanceListModal = require("../../instance-list-modal/InstanceListModal");
|
|
33
|
-
|
|
34
21
|
var _brickKit = require("@next-core/brick-kit");
|
|
35
|
-
|
|
36
22
|
var _basicComponents = require("@next-libs/basic-components");
|
|
37
|
-
|
|
38
23
|
var _reactI18next = require("react-i18next");
|
|
39
|
-
|
|
40
24
|
var _constants = require("../../i18n/constants");
|
|
41
|
-
|
|
42
25
|
function LegacyUserSelectFormItem(props, ref) {
|
|
43
26
|
const selectRef = (0, _react.useRef)();
|
|
44
27
|
const [selectedValue, setSelectedValue] = (0, _react.useState)([]);
|
|
@@ -48,10 +31,8 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
48
31
|
const {
|
|
49
32
|
t
|
|
50
33
|
} = (0, _reactI18next.useTranslation)(_constants.NS_LIBS_CMDB_INSTANCES);
|
|
51
|
-
|
|
52
34
|
const getLabel = (objectId, instanceData) => {
|
|
53
35
|
const showKey = objectId === "USER" ? userShowKey : userGroupShowKey;
|
|
54
|
-
|
|
55
36
|
if (Array.isArray(showKey)) {
|
|
56
37
|
const showName = showKey.map((key, index) => {
|
|
57
38
|
if (index === 0) {
|
|
@@ -65,42 +46,35 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
65
46
|
return instanceData[showKey];
|
|
66
47
|
}
|
|
67
48
|
};
|
|
68
|
-
|
|
69
49
|
const getStaticLabel = label => /*#__PURE__*/_react.default.createElement("div", {
|
|
70
50
|
style: {
|
|
71
51
|
color: "var(--bg-color-button-link)"
|
|
72
52
|
}
|
|
73
53
|
}, label);
|
|
74
|
-
|
|
75
54
|
const isDifferent = () => {
|
|
76
55
|
var _props$value, _props$value2;
|
|
77
|
-
|
|
78
56
|
const userOfValues = ((_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.selectedUser) || [];
|
|
79
57
|
const userGroupOfValues = ((_props$value2 = props.value) === null || _props$value2 === void 0 ? void 0 : _props$value2.selectedUserGroup) || [];
|
|
80
58
|
const userOfSelectedValue = (0, _lodash.map)((0, _lodash.filter)(selectedValue, item => !item.key.startsWith(":")), "key");
|
|
81
59
|
const userGroupOfSelectedValue = (0, _lodash.map)((0, _lodash.filter)(selectedValue, item => item.key.startsWith(":")), "key");
|
|
82
60
|
return !(0, _lodash.isEqual)([...userOfValues].sort(), [...userOfSelectedValue].sort()) || !(0, _lodash.isEqual)([...userGroupOfValues].sort(), [...userGroupOfSelectedValue].sort());
|
|
83
61
|
};
|
|
84
|
-
|
|
85
62
|
const initializeStaticList = () => {
|
|
86
63
|
return (0, _lodash.groupBy)(props.staticList, v => (0, _lodash.startsWith)(v, ":") ? "userGroup" : "user");
|
|
87
|
-
};
|
|
88
|
-
|
|
64
|
+
};
|
|
89
65
|
|
|
66
|
+
// 后台搜索中
|
|
90
67
|
const [fetching, setFetching] = (0, _react.useState)(false);
|
|
91
68
|
const [searchValue, setSearchValue] = (0, _react.useState)();
|
|
92
69
|
const [userList, setUserList] = (0, _react.useState)([]);
|
|
93
70
|
const [userGroupList, setUserGroupList] = (0, _react.useState)([]);
|
|
94
71
|
const [modalVisible, setModalVisible] = (0, _react.useState)(false);
|
|
95
72
|
const [modalObjectId, setModalObjectId] = (0, _react.useState)(props.optionsMode === "group" ? "USER_GROUP" : "USER");
|
|
96
|
-
|
|
97
73
|
const triggerChange = changedValue => {
|
|
98
74
|
var _props$onChange;
|
|
99
|
-
|
|
100
75
|
(_props$onChange = props.onChange) === null || _props$onChange === void 0 ? void 0 : _props$onChange.call(props, (0, _lodash.isEmpty)(changedValue.selectedUser) && (0, _lodash.isEmpty)(changedValue.selectedUserGroup) ? null : changedValue);
|
|
101
|
-
};
|
|
102
|
-
|
|
103
|
-
|
|
76
|
+
};
|
|
77
|
+
// istanbul ignore next (Migrated from next-basic)
|
|
104
78
|
(0, _react.useEffect)(() => {
|
|
105
79
|
const initializeSelectedValue = async () => {
|
|
106
80
|
if (props.value) {
|
|
@@ -109,14 +83,11 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
109
83
|
const staticKeys = initializeStaticList();
|
|
110
84
|
const user = (0, _lodash.compact)((0, _lodash.uniq)([].concat(staticKeys.user).concat(props.value.selectedUser)));
|
|
111
85
|
const userGroup = (0, _lodash.compact)((0, _lodash.uniq)([].concat(staticKeys.userGroup).concat(props.value.selectedUserGroup)));
|
|
112
|
-
|
|
113
86
|
if (staticKeys.user && (0, _lodash.some)(staticKeys.user, v => {
|
|
114
87
|
var _props$value3, _props$value3$selecte;
|
|
115
|
-
|
|
116
88
|
return !((_props$value3 = props.value) !== null && _props$value3 !== void 0 && (_props$value3$selecte = _props$value3.selectedUser) !== null && _props$value3$selecte !== void 0 && _props$value3$selecte.includes(v));
|
|
117
89
|
}) || staticKeys.userGroup && (0, _lodash.some)(staticKeys.userGroup, v => {
|
|
118
90
|
var _props$value4, _props$value4$selecte;
|
|
119
|
-
|
|
120
91
|
return !((_props$value4 = props.value) !== null && _props$value4 !== void 0 && (_props$value4$selecte = _props$value4.selectedUserGroup) !== null && _props$value4$selecte !== void 0 && _props$value4$selecte.includes(v));
|
|
121
92
|
})) {
|
|
122
93
|
triggerChange({
|
|
@@ -124,9 +95,7 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
124
95
|
selectedUserGroup: userGroup
|
|
125
96
|
});
|
|
126
97
|
}
|
|
127
|
-
|
|
128
98
|
const staticValueToSet = [];
|
|
129
|
-
|
|
130
99
|
if (user.length && props.optionsMode !== "group") {
|
|
131
100
|
selectedUser = (await (0, _cmdbSdk.InstanceApi_postSearch)("USER", {
|
|
132
101
|
query: {
|
|
@@ -136,12 +105,12 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
136
105
|
},
|
|
137
106
|
page: 1,
|
|
138
107
|
page_size: user.length,
|
|
139
|
-
fields: {
|
|
108
|
+
fields: {
|
|
109
|
+
...(0, _lodash.zipObject)(userShowKey, (0, _lodash.map)(userShowKey, v => true)),
|
|
140
110
|
name: true
|
|
141
111
|
}
|
|
142
112
|
})).list;
|
|
143
113
|
}
|
|
144
|
-
|
|
145
114
|
if (userGroup.length && props.optionsMode !== "user") {
|
|
146
115
|
selectedUserGroup = (await (0, _cmdbSdk.InstanceApi_postSearch)("USER_GROUP", {
|
|
147
116
|
query: {
|
|
@@ -152,56 +121,47 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
152
121
|
},
|
|
153
122
|
page: 1,
|
|
154
123
|
page_size: userGroup.length,
|
|
155
|
-
fields: {
|
|
124
|
+
fields: {
|
|
125
|
+
...(0, _lodash.zipObject)(userGroupShowKey, (0, _lodash.map)(userGroupShowKey, v => true)),
|
|
156
126
|
name: true
|
|
157
127
|
}
|
|
158
128
|
})).list;
|
|
159
129
|
}
|
|
160
|
-
|
|
161
130
|
let labelValue = [...(0, _lodash.map)(selectedUser, v => {
|
|
162
131
|
var _props$staticList, _props$staticList2;
|
|
163
|
-
|
|
164
132
|
const labelText = getLabel("USER", v);
|
|
165
133
|
const result = {
|
|
166
134
|
key: v.name,
|
|
167
135
|
label: (_props$staticList = props.staticList) !== null && _props$staticList !== void 0 && _props$staticList.includes(v.name) ? getStaticLabel(labelText) : labelText
|
|
168
136
|
};
|
|
169
|
-
|
|
170
137
|
if ((_props$staticList2 = props.staticList) !== null && _props$staticList2 !== void 0 && _props$staticList2.includes(v.name)) {
|
|
171
138
|
staticValueToSet.push(result);
|
|
172
139
|
}
|
|
173
|
-
|
|
174
140
|
return result;
|
|
175
141
|
}), ...(0, _lodash.map)(selectedUserGroup, v => {
|
|
176
142
|
var _props$staticList3, _props$staticList4;
|
|
177
|
-
|
|
178
143
|
const labelText = getLabel("USER_GROUP", v);
|
|
179
144
|
const result = {
|
|
180
145
|
key: ":" + v.instanceId,
|
|
181
146
|
label: (_props$staticList3 = props.staticList) !== null && _props$staticList3 !== void 0 && _props$staticList3.includes(":" + v.instanceId) ? getStaticLabel(labelText) : labelText
|
|
182
147
|
};
|
|
183
|
-
|
|
184
148
|
if ((_props$staticList4 = props.staticList) !== null && _props$staticList4 !== void 0 && _props$staticList4.includes(":" + v.instanceId)) {
|
|
185
149
|
staticValueToSet.push(result);
|
|
186
150
|
}
|
|
187
|
-
|
|
188
151
|
return result;
|
|
189
152
|
})];
|
|
190
153
|
labelValue = [...staticValueToSet, ...(0, _lodash.filter)(labelValue, v => {
|
|
191
154
|
var _props$staticList5;
|
|
192
|
-
|
|
193
155
|
return !((_props$staticList5 = props.staticList) !== null && _props$staticList5 !== void 0 && _props$staticList5.includes(v.key));
|
|
194
156
|
})];
|
|
195
157
|
setSelectedValue(labelValue);
|
|
196
158
|
staticValue.current = staticValueToSet;
|
|
197
159
|
}
|
|
198
160
|
};
|
|
199
|
-
|
|
200
161
|
if (isDifferent()) {
|
|
201
162
|
initializeSelectedValue();
|
|
202
163
|
}
|
|
203
164
|
}, [props.value]);
|
|
204
|
-
|
|
205
165
|
const fetchInstanceList = async (objectId, keyword) => {
|
|
206
166
|
const showKey = objectId === "USER" ? userShowKey : userGroupShowKey;
|
|
207
167
|
const showKeyQuery = {
|
|
@@ -217,24 +177,27 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
217
177
|
return (await (0, _cmdbSdk.InstanceApi_postSearch)(objectId, {
|
|
218
178
|
page: 1,
|
|
219
179
|
page_size: 20,
|
|
220
|
-
fields: {
|
|
180
|
+
fields: {
|
|
181
|
+
...(0, _lodash.zipObject)(showKey, (0, _lodash.map)(showKey, v => true)),
|
|
221
182
|
name: true
|
|
222
183
|
},
|
|
223
|
-
query: props.userQuery && objectId === "USER" ? {
|
|
184
|
+
query: props.userQuery && objectId === "USER" ? {
|
|
185
|
+
...props.userQuery,
|
|
224
186
|
...showKeyQuery
|
|
225
|
-
} : props.userGroupQuery && objectId === "USER_GROUP" ? {
|
|
187
|
+
} : props.userGroupQuery && objectId === "USER_GROUP" ? {
|
|
188
|
+
...props.userGroupQuery,
|
|
226
189
|
...showKeyQuery
|
|
227
|
-
} : props.query || showKeyQuery ? {
|
|
190
|
+
} : props.query || showKeyQuery ? {
|
|
191
|
+
...props.query,
|
|
228
192
|
...showKeyQuery
|
|
229
193
|
} : showKeyQuery
|
|
230
194
|
})).list;
|
|
231
195
|
};
|
|
232
|
-
|
|
233
196
|
const searchUser = async value => {
|
|
234
197
|
setUserList(await fetchInstanceList("USER", value));
|
|
235
|
-
};
|
|
236
|
-
|
|
198
|
+
};
|
|
237
199
|
|
|
200
|
+
// 用户组在instanceId前面加上:
|
|
238
201
|
const searchUserGroup = async value => {
|
|
239
202
|
const result = await fetchInstanceList("USER_GROUP", value);
|
|
240
203
|
setUserGroupList(result.map(v => {
|
|
@@ -242,14 +205,12 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
242
205
|
return v;
|
|
243
206
|
}));
|
|
244
207
|
};
|
|
245
|
-
|
|
246
208
|
const searchUserOrUserGroupInstances = async value => {
|
|
247
209
|
setSearchValue(value);
|
|
248
210
|
setFetching(true);
|
|
249
211
|
await Promise.all([...(props.optionsMode !== "group" ? [searchUser(value)] : []), ...(props.optionsMode !== "user" ? [searchUserGroup(value)] : [])]);
|
|
250
212
|
setFetching(false);
|
|
251
213
|
};
|
|
252
|
-
|
|
253
214
|
const handleSelectChange = originValue => {
|
|
254
215
|
const value = (0, _lodash.filter)(originValue, item => {
|
|
255
216
|
return !(0, _lodash.find)(props.staticList, v => v === item.key);
|
|
@@ -265,37 +226,30 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
265
226
|
}), "key")
|
|
266
227
|
};
|
|
267
228
|
triggerChange(resultValue);
|
|
268
|
-
|
|
269
229
|
if (searchValue !== "") {
|
|
270
230
|
searchUserOrUserGroupInstances("");
|
|
271
231
|
}
|
|
272
|
-
};
|
|
273
|
-
|
|
274
|
-
|
|
232
|
+
};
|
|
233
|
+
// istanbul ignore next (Migrated from next-basic)
|
|
275
234
|
const handleFocus = () => {
|
|
276
235
|
if ((0, _lodash.isNil)(searchValue) || searchValue !== "") {
|
|
277
236
|
searchUserOrUserGroupInstances("");
|
|
278
237
|
}
|
|
279
|
-
};
|
|
280
|
-
|
|
281
|
-
|
|
238
|
+
};
|
|
239
|
+
// istanbul ignore next (Migrated from next-basic)
|
|
282
240
|
const openModal = () => {
|
|
283
241
|
setModalVisible(true);
|
|
284
|
-
};
|
|
285
|
-
|
|
286
|
-
|
|
242
|
+
};
|
|
243
|
+
// istanbul ignore next (Migrated from next-basic)
|
|
287
244
|
const closeModal = () => {
|
|
288
245
|
setModalVisible(false);
|
|
289
|
-
};
|
|
290
|
-
|
|
291
|
-
|
|
246
|
+
};
|
|
247
|
+
// istanbul ignore next (Migrated from next-basic)
|
|
292
248
|
const handleInstancesSelected = (value, objectId) => {
|
|
293
249
|
let labelValue = [];
|
|
294
|
-
|
|
295
250
|
if (objectId === "USER") {
|
|
296
251
|
labelValue = [...(0, _lodash.map)(value, v => {
|
|
297
252
|
var _props$staticList6;
|
|
298
|
-
|
|
299
253
|
const labelText = getLabel("USER", v);
|
|
300
254
|
return {
|
|
301
255
|
key: v.name,
|
|
@@ -305,7 +259,6 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
305
259
|
} else {
|
|
306
260
|
labelValue = [...(0, _lodash.map)(value, v => {
|
|
307
261
|
var _props$staticList7;
|
|
308
|
-
|
|
309
262
|
const labelText = getLabel("USER_GROUP", v);
|
|
310
263
|
return {
|
|
311
264
|
key: ":" + v.instanceId,
|
|
@@ -313,7 +266,6 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
313
266
|
};
|
|
314
267
|
})];
|
|
315
268
|
}
|
|
316
|
-
|
|
317
269
|
const resultSelectedValue = (0, _lodash.uniqBy)([...selectedValue, ...labelValue], "key");
|
|
318
270
|
setSelectedValue(resultSelectedValue);
|
|
319
271
|
const resultValue = {
|
|
@@ -325,9 +277,8 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
325
277
|
}), "key")
|
|
326
278
|
};
|
|
327
279
|
triggerChange(resultValue);
|
|
328
|
-
};
|
|
329
|
-
|
|
330
|
-
|
|
280
|
+
};
|
|
281
|
+
// istanbul ignore next (Migrated from next-basic)
|
|
331
282
|
const handleModalSelected = async selectedKeys => {
|
|
332
283
|
if (selectedKeys !== null && selectedKeys !== void 0 && selectedKeys.length) {
|
|
333
284
|
const instances = (await (0, _cmdbSdk.InstanceApi_postSearch)(modalObjectId, {
|
|
@@ -343,14 +294,11 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
343
294
|
})).list;
|
|
344
295
|
handleInstancesSelected(instances, modalObjectId);
|
|
345
296
|
}
|
|
346
|
-
|
|
347
297
|
setModalVisible(false);
|
|
348
298
|
};
|
|
349
|
-
|
|
350
299
|
const toggleObjectId = () => {
|
|
351
300
|
setModalObjectId(modalObjectId === "USER" ? "USER_GROUP" : "USER");
|
|
352
301
|
};
|
|
353
|
-
|
|
354
302
|
const title = /*#__PURE__*/_react.default.createElement("div", null, t(_constants.K.FILTER_FROM_CMDB_TYPE, {
|
|
355
303
|
type: modalObjectId === "USER" ? t(_constants.K.USERS) : t(_constants.K.USER_GROUPS)
|
|
356
304
|
}), " ", props.optionsMode === "all" && /*#__PURE__*/_react.default.createElement(_antd.Button, {
|
|
@@ -358,18 +306,16 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
358
306
|
onClick: toggleObjectId
|
|
359
307
|
}, t(_constants.K.SWITCH, {
|
|
360
308
|
type: modalObjectId === "USER" ? t(_constants.K.USER_GROUPS) : t(_constants.K.USERS)
|
|
361
|
-
}), " "));
|
|
362
|
-
// istanbul ignore next (Migrated from next-basic)
|
|
363
|
-
|
|
309
|
+
}), " "));
|
|
364
310
|
|
|
311
|
+
// 快速选择我
|
|
312
|
+
// istanbul ignore next (Migrated from next-basic)
|
|
365
313
|
const addMeQuickly = async () => {
|
|
366
314
|
const myUserName = (0, _brickKit.getAuth)().username;
|
|
367
|
-
|
|
368
315
|
if ((0, _lodash.find)(selectedValue, v => v.key === myUserName)) {
|
|
369
316
|
// 如果已选择项中包含我,则不重新发起请求
|
|
370
317
|
return;
|
|
371
318
|
}
|
|
372
|
-
|
|
373
319
|
const myUser = (await (0, _cmdbSdk.InstanceApi_postSearch)("USER", {
|
|
374
320
|
query: {
|
|
375
321
|
name: {
|
|
@@ -378,20 +324,19 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
378
324
|
},
|
|
379
325
|
page: 1,
|
|
380
326
|
page_size: 1,
|
|
381
|
-
fields: {
|
|
327
|
+
fields: {
|
|
328
|
+
...(0, _lodash.zipObject)(userShowKey, (0, _lodash.map)(userShowKey, v => true)),
|
|
382
329
|
name: true
|
|
383
330
|
}
|
|
384
331
|
})).list;
|
|
385
332
|
handleInstancesSelected(myUser, "USER");
|
|
386
333
|
};
|
|
387
|
-
|
|
388
334
|
const getRight = () => {
|
|
389
335
|
const btnWidth = !props.hideAddMeQuickly && props.optionsMode !== "group" ? -34 : 0;
|
|
390
336
|
const lineWidth = !props.hideAddMeQuickly && props.optionsMode !== "group" && !props.hideSelectByCMDB ? -1 : 0;
|
|
391
337
|
const iconWidth = props.hideSelectByCMDB ? 0 : -32;
|
|
392
338
|
return btnWidth + lineWidth + iconWidth;
|
|
393
339
|
};
|
|
394
|
-
|
|
395
340
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
396
341
|
ref: ref,
|
|
397
342
|
"data-testid": "wrapper",
|
|
@@ -418,7 +363,6 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
418
363
|
label: t(_constants.K.USERS_RESULT_LABEL)
|
|
419
364
|
}, userList.length > 0 ? userList.map(d => {
|
|
420
365
|
var _props$staticList8;
|
|
421
|
-
|
|
422
366
|
return /*#__PURE__*/_react.default.createElement(_antd.Select.Option, {
|
|
423
367
|
value: d.name,
|
|
424
368
|
key: d.name
|
|
@@ -431,7 +375,6 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
431
375
|
label: t(_constants.K.USER_GROUPS_RESULT_LABEL)
|
|
432
376
|
}, userGroupList.length > 0 ? userGroupList.map(d => {
|
|
433
377
|
var _props$staticList9;
|
|
434
|
-
|
|
435
378
|
return /*#__PURE__*/_react.default.createElement(_antd.Select.Option, {
|
|
436
379
|
value: d.instanceId,
|
|
437
380
|
key: d.instanceId
|
|
@@ -478,10 +421,8 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
478
421
|
}
|
|
479
422
|
} : {})));
|
|
480
423
|
}
|
|
481
|
-
|
|
482
424
|
const UserSelectFormItem = /*#__PURE__*/(0, _react.forwardRef)(LegacyUserSelectFormItem);
|
|
483
425
|
exports.UserSelectFormItem = UserSelectFormItem;
|
|
484
|
-
|
|
485
426
|
function UserOrUserGroupSelect(props) {
|
|
486
427
|
return /*#__PURE__*/_react.default.createElement(_forms.FormItemWrapper, props, /*#__PURE__*/_react.default.createElement(UserSelectFormItem, {
|
|
487
428
|
objectMap: props.objectMap,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserOrUserGroupSelect.js","names":["LegacyUserSelectFormItem","props","ref","selectRef","useRef","selectedValue","setSelectedValue","useState","staticValue","userShowKey","getInstanceNameKeys","objectMap","userGroupShowKey","t","useTranslation","NS_LIBS_CMDB_INSTANCES","getLabel","objectId","instanceData","showKey","Array","isArray","showName","map","key","index","join","getStaticLabel","label","color","isDifferent","userOfValues","value","selectedUser","userGroupOfValues","selectedUserGroup","userOfSelectedValue","filter","item","startsWith","userGroupOfSelectedValue","isEqual","sort","initializeStaticList","groupBy","staticList","v","fetching","setFetching","searchValue","setSearchValue","userList","setUserList","userGroupList","setUserGroupList","modalVisible","setModalVisible","modalObjectId","setModalObjectId","optionsMode","triggerChange","changedValue","onChange","isEmpty","useEffect","initializeSelectedValue","staticKeys","user","compact","uniq","concat","userGroup","some","includes","staticValueToSet","length","InstanceApi_postSearch","query","name","$in","page","page_size","fields","zipObject","list","instanceId","slice","labelValue","labelText","result","push","current","fetchInstanceList","keyword","showKeyQuery","$or","$like","hideInvalidUser","state","userQuery","userGroupQuery","searchUser","searchUserGroup","searchUserOrUserGroupInstances","Promise","all","handleSelectChange","originValue","find","unshift","resultValue","reject","handleFocus","isNil","openModal","closeModal","handleInstancesSelected","resultSelectedValue","uniqBy","handleModalSelected","selectedKeys","instances","toggleObjectId","title","K","FILTER_FROM_CMDB_TYPE","type","USERS","USER_GROUPS","SWITCH","addMeQuickly","myUserName","getAuth","username","myUser","$eq","getRight","btnWidth","hideAddMeQuickly","lineWidth","hideSelectByCMDB","iconWidth","styles","UserOrUserGroupSelectContainer","customSelect","placeholder","debounce","width","USERS_RESULT_LABEL","d","NO_DATA","USER_GROUPS_RESULT_LABEL","extra","right","fontSize","lib","icon","presetConfigs","UserSelectFormItem","forwardRef","UserOrUserGroupSelect","mergeUseAndUserGroup"],"sources":["../../../../src/components/user-or-user-group-select/UserOrUserGroupSelect.tsx"],"sourcesContent":["import React, {\n useState,\n forwardRef,\n ReactNode,\n useEffect,\n useRef,\n} from \"react\";\nimport { SearchOutlined } from \"@ant-design/icons\";\nimport { Select, Button, Divider } from \"antd\";\nimport styles from \"./UserOrUserGroupSelect.module.css\";\nimport { InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport {\n zipObject,\n map,\n debounce,\n startsWith,\n filter,\n reject,\n isNil,\n uniqBy,\n uniq,\n find,\n isEmpty,\n isEqual,\n groupBy,\n compact,\n some,\n} from \"lodash\";\nimport { FormItemWrapperProps, FormItemWrapper } from \"@next-libs/forms\";\nimport { getInstanceNameKeys } from \"@next-libs/cmdb-utils\";\nimport { InstanceListModal } from \"../../instance-list-modal/InstanceListModal\";\nimport { getAuth } from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\n\nexport type UserOrUserGroupSelectValue = {\n selectedUser?: string[];\n selectedUserGroup?: string[];\n};\n\nexport interface UserSelectFormItemProps {\n children?: ReactNode;\n objectMap?: Record<string, any>;\n onChange?: (value: any) => void;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\ninterface UserOrUserGroupSelectProps extends FormItemWrapperProps {\n objectMap: Record<string, any>;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n onChange?: (value: any) => void;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\nexport function LegacyUserSelectFormItem(\n props: UserSelectFormItemProps,\n ref: React.Ref<HTMLDivElement>\n): React.ReactElement {\n const selectRef = useRef();\n const [selectedValue, setSelectedValue] = useState([]);\n const staticValue = useRef([]);\n const userShowKey: string[] = getInstanceNameKeys(props.objectMap[\"USER\"]);\n const userGroupShowKey: string[] = getInstanceNameKeys(\n props.objectMap[\"USER_GROUP\"]\n );\n\n const { t } = useTranslation(NS_LIBS_CMDB_INSTANCES);\n\n const getLabel = (\n objectId: \"USER\" | \"USER_GROUP\",\n instanceData: any\n ): string => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n if (Array.isArray(showKey)) {\n const showName = showKey\n .map((key, index) => {\n if (index === 0) {\n return instanceData[key];\n } else {\n return instanceData[key] ? \"(\" + instanceData[key] + \")\" : \"\";\n }\n })\n .join(\"\");\n return showName;\n } else {\n return instanceData[showKey];\n }\n };\n\n const getStaticLabel = (label: string) => (\n <div style={{ color: \"var(--bg-color-button-link)\" }}>{label}</div>\n );\n\n const isDifferent = () => {\n const userOfValues = props.value?.selectedUser || [];\n const userGroupOfValues = props.value?.selectedUserGroup || [];\n const userOfSelectedValue = map(\n filter(selectedValue, (item) => !item.key.startsWith(\":\")),\n \"key\"\n );\n\n const userGroupOfSelectedValue = map(\n filter(selectedValue, (item) => item.key.startsWith(\":\")),\n \"key\"\n );\n\n return (\n !isEqual([...userOfValues].sort(), [...userOfSelectedValue].sort()) ||\n !isEqual(\n [...userGroupOfValues].sort(),\n [...userGroupOfSelectedValue].sort()\n )\n );\n };\n\n const initializeStaticList = () => {\n return groupBy(props.staticList, (v) =>\n startsWith(v, \":\") ? \"userGroup\" : \"user\"\n );\n };\n\n // 后台搜索中\n const [fetching, setFetching] = useState(false);\n\n const [searchValue, setSearchValue] = useState();\n const [userList, setUserList] = useState([]);\n const [userGroupList, setUserGroupList] = useState([]);\n\n const [modalVisible, setModalVisible] = useState(false);\n const [modalObjectId, setModalObjectId] = useState(\n props.optionsMode === \"group\" ? \"USER_GROUP\" : \"USER\"\n );\n\n const triggerChange = (changedValue: any) => {\n props.onChange?.(\n isEmpty(changedValue.selectedUser) &&\n isEmpty(changedValue.selectedUserGroup)\n ? null\n : changedValue\n );\n };\n // istanbul ignore next (Migrated from next-basic)\n useEffect(() => {\n const initializeSelectedValue = async () => {\n if (props.value) {\n let selectedUser: any[] = [];\n let selectedUserGroup: any[] = [];\n const staticKeys = initializeStaticList();\n const user = compact(\n uniq([].concat(staticKeys.user).concat(props.value.selectedUser))\n );\n\n const userGroup = compact(\n uniq(\n []\n .concat(staticKeys.userGroup)\n .concat(props.value.selectedUserGroup)\n )\n );\n\n if (\n (staticKeys.user &&\n some(\n staticKeys.user,\n (v) => !props.value?.selectedUser?.includes(v)\n )) ||\n (staticKeys.userGroup &&\n some(\n staticKeys.userGroup,\n (v) => !props.value?.selectedUserGroup?.includes(v)\n ))\n ) {\n triggerChange({\n selectedUser: user,\n selectedUserGroup: userGroup,\n });\n }\n const staticValueToSet: any[] = [];\n if (user.length && props.optionsMode !== \"group\") {\n selectedUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $in: user,\n },\n },\n\n page: 1,\n page_size: user.length,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n if (userGroup.length && props.optionsMode !== \"user\") {\n selectedUserGroup = (\n await InstanceApi_postSearch(\"USER_GROUP\", {\n query: {\n instanceId: {\n // 默认带为\":\"+instanceId,这里查询的时候去掉前面的冒号\n $in: map(userGroup, (v) => v.slice(1)),\n },\n },\n\n page: 1,\n page_size: userGroup.length,\n fields: {\n ...zipObject(\n userGroupShowKey,\n map(userGroupShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n let labelValue = [\n ...map(selectedUser, (v) => {\n const labelText = getLabel(\"USER\", v);\n const result = {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(v.name)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ...map(selectedUserGroup, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n const result = {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(\":\" + v.instanceId)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ];\n\n labelValue = [\n ...staticValueToSet,\n ...filter(labelValue, (v) => !props.staticList?.includes(v.key)),\n ];\n\n setSelectedValue(labelValue);\n staticValue.current = staticValueToSet;\n }\n };\n if (isDifferent()) {\n initializeSelectedValue();\n }\n }, [props.value]);\n\n const fetchInstanceList = async (\n objectId: \"USER\" | \"USER_GROUP\",\n keyword: string\n ) => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n const showKeyQuery = {\n $or: map(uniq([...showKey, \"name\"]), (v) => ({\n [v]: { $like: `%${keyword}%` },\n })),\n ...(props.hideInvalidUser\n ? {\n state: \"valid\",\n }\n : {}),\n };\n return (\n await InstanceApi_postSearch(objectId, {\n page: 1,\n page_size: 20,\n fields: {\n ...zipObject(\n showKey,\n map(showKey, (v) => true)\n ),\n\n name: true,\n },\n query:\n props.userQuery && objectId === \"USER\"\n ? {\n ...props.userQuery,\n ...showKeyQuery,\n }\n : props.userGroupQuery && objectId === \"USER_GROUP\"\n ? {\n ...props.userGroupQuery,\n ...showKeyQuery,\n }\n : props.query || showKeyQuery\n ? {\n ...props.query,\n ...showKeyQuery,\n }\n : showKeyQuery,\n })\n ).list;\n };\n\n const searchUser = async (value: string) => {\n setUserList(await fetchInstanceList(\"USER\", value));\n };\n\n // 用户组在instanceId前面加上:\n const searchUserGroup = async (value: string) => {\n const result = await fetchInstanceList(\"USER_GROUP\", value);\n setUserGroupList(\n result.map((v) => {\n v.instanceId = \":\" + v.instanceId;\n return v;\n })\n );\n };\n\n const searchUserOrUserGroupInstances = async (value: any) => {\n setSearchValue(value);\n setFetching(true);\n await Promise.all([\n ...(props.optionsMode !== \"group\" ? [searchUser(value)] : []),\n ...(props.optionsMode !== \"user\" ? [searchUserGroup(value)] : []),\n ]);\n\n setFetching(false);\n };\n\n const handleSelectChange = (originValue: any) => {\n const value = filter(originValue, (item) => {\n return !find(props.staticList, (v) => v === item.key);\n });\n value.unshift(...staticValue.current);\n setSelectedValue(value);\n const resultValue = {\n selectedUser: map(\n reject(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n if (searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleFocus = () => {\n if (isNil(searchValue) || searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const openModal = () => {\n setModalVisible(true);\n };\n // istanbul ignore next (Migrated from next-basic)\n const closeModal = () => {\n setModalVisible(false);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleInstancesSelected = (\n value: Record<string, any>[],\n objectId: string\n ): void => {\n let labelValue: any[] = [];\n if (objectId === \"USER\") {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER\", v);\n return {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n } else {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n return {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n }\n const resultSelectedValue = uniqBy(\n [...selectedValue, ...labelValue],\n \"key\"\n );\n\n setSelectedValue(resultSelectedValue);\n const resultValue = {\n selectedUser: map(\n reject(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleModalSelected = async (selectedKeys: string[]) => {\n if (selectedKeys?.length) {\n const instances = (\n await InstanceApi_postSearch(modalObjectId, {\n query: { instanceId: { $in: selectedKeys } },\n fields: { \"*\": true },\n page_size: selectedKeys.length,\n })\n ).list;\n handleInstancesSelected(instances, modalObjectId);\n }\n setModalVisible(false);\n };\n\n const toggleObjectId = () => {\n setModalObjectId(modalObjectId === \"USER\" ? \"USER_GROUP\" : \"USER\");\n };\n\n const title = (\n <div>\n {t(K.FILTER_FROM_CMDB_TYPE, {\n type: modalObjectId === \"USER\" ? t(K.USERS) : t(K.USER_GROUPS),\n })}{\" \"}\n {props.optionsMode === \"all\" && (\n <Button type=\"link\" onClick={toggleObjectId}>\n {t(K.SWITCH, {\n type: modalObjectId === \"USER\" ? t(K.USER_GROUPS) : t(K.USERS),\n })}{\" \"}\n </Button>\n )}\n </div>\n );\n\n // 快速选择我\n // istanbul ignore next (Migrated from next-basic)\n const addMeQuickly = async () => {\n const myUserName = getAuth().username;\n if (find(selectedValue, (v) => v.key === myUserName)) {\n // 如果已选择项中包含我,则不重新发起请求\n return;\n }\n const myUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $eq: myUserName,\n },\n },\n\n page: 1,\n page_size: 1,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n handleInstancesSelected(myUser, \"USER\");\n };\n\n const getRight = () => {\n const btnWidth =\n !props.hideAddMeQuickly && props.optionsMode !== \"group\" ? -34 : 0;\n const lineWidth =\n !props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB\n ? -1\n : 0;\n const iconWidth = props.hideSelectByCMDB ? 0 : -32;\n return btnWidth + lineWidth + iconWidth;\n };\n\n return (\n <div\n ref={ref}\n data-testid=\"wrapper\"\n className={styles.UserOrUserGroupSelectContainer}\n >\n <Select\n className={styles.customSelect}\n ref={selectRef}\n allowClear={true}\n mode=\"multiple\"\n labelInValue\n placeholder={props.placeholder}\n filterOption={false}\n value={selectedValue}\n onChange={handleSelectChange}\n onSearch={debounce((value) => {\n searchUserOrUserGroupInstances(value as string);\n }, 500)}\n onFocus={handleFocus}\n style={{ width: \"100%\" }}\n loading={fetching}\n >\n {props.optionsMode !== \"group\" && (\n <Select.OptGroup label={t(K.USERS_RESULT_LABEL)}>\n {userList.length > 0 ? (\n userList.map((d) => (\n <Select.Option value={d.name} key={d.name}>\n {props.staticList?.includes(d.name)\n ? getStaticLabel(getLabel(\"USER\", d))\n : getLabel(\"USER\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option value=\"empty-user\" key=\"empty-user\" disabled>\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n\n {props.optionsMode !== \"user\" && (\n <Select.OptGroup label={t(K.USER_GROUPS_RESULT_LABEL)}>\n {userGroupList.length > 0 ? (\n userGroupList.map((d) => (\n <Select.Option value={d.instanceId} key={d.instanceId}>\n {props.staticList?.includes(d.instanceId)\n ? getStaticLabel(getLabel(\"USER_GROUP\", d))\n : getLabel(\"USER_GROUP\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option\n value=\"empty-user-group\"\n key=\"empty-user-group\"\n disabled\n >\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n </Select>\n <div className={styles.extra} style={{ right: getRight() }}>\n {!props.hideAddMeQuickly && props.optionsMode !== \"group\" && (\n <Button\n type=\"link\"\n onClick={addMeQuickly}\n style={{ fontSize: \"16px\" }}\n >\n <GeneralIcon icon={{ lib: \"easyops\", icon: \"quick-add-me\" }} />\n </Button>\n )}\n\n {!props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB && <Divider type=\"vertical\" />}\n {!props.hideSelectByCMDB && (\n <Button\n type=\"link\"\n icon={<SearchOutlined />}\n onClick={openModal}\n ></Button>\n )}\n </div>\n <InstanceListModal\n objectMap={props.objectMap}\n objectId={modalObjectId}\n visible={modalVisible}\n title={title}\n onSelected={handleModalSelected}\n onCancel={closeModal}\n showSizeChanger={true}\n {...(modalObjectId === \"USER\" && props.hideInvalidUser\n ? {\n presetConfigs: {\n query: {\n state: \"valid\",\n },\n },\n }\n : {})}\n />\n </div>\n );\n}\n\nexport const UserSelectFormItem = forwardRef<HTMLDivElement>(\n LegacyUserSelectFormItem\n) as any;\n\nexport function UserOrUserGroupSelect(\n props: UserOrUserGroupSelectProps\n): React.ReactElement {\n return (\n <FormItemWrapper {...props}>\n <UserSelectFormItem\n objectMap={props.objectMap}\n placeholder={props.placeholder}\n value={props.value}\n hideAddMeQuickly={props.hideAddMeQuickly}\n hideSelectByCMDB={props.hideSelectByCMDB}\n onChange={props.onChange}\n optionsMode={props.optionsMode}\n staticList={props.staticList}\n mergeUseAndUserGroup={props.mergeUseAndUserGroup}\n query={props.query}\n hideInvalidUser={props.hideInvalidUser}\n userQuery={props.userQuery}\n userGroupQuery={props.userGroupQuery}\n />\n </FormItemWrapper>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"UserOrUserGroupSelect.js","names":["LegacyUserSelectFormItem","props","ref","selectRef","useRef","selectedValue","setSelectedValue","useState","staticValue","userShowKey","getInstanceNameKeys","objectMap","userGroupShowKey","t","useTranslation","NS_LIBS_CMDB_INSTANCES","getLabel","objectId","instanceData","showKey","Array","isArray","showName","map","key","index","join","getStaticLabel","label","color","isDifferent","userOfValues","value","selectedUser","userGroupOfValues","selectedUserGroup","userOfSelectedValue","filter","item","startsWith","userGroupOfSelectedValue","isEqual","sort","initializeStaticList","groupBy","staticList","v","fetching","setFetching","searchValue","setSearchValue","userList","setUserList","userGroupList","setUserGroupList","modalVisible","setModalVisible","modalObjectId","setModalObjectId","optionsMode","triggerChange","changedValue","onChange","isEmpty","useEffect","initializeSelectedValue","staticKeys","user","compact","uniq","concat","userGroup","some","includes","staticValueToSet","length","InstanceApi_postSearch","query","name","$in","page","page_size","fields","zipObject","list","instanceId","slice","labelValue","labelText","result","push","current","fetchInstanceList","keyword","showKeyQuery","$or","$like","hideInvalidUser","state","userQuery","userGroupQuery","searchUser","searchUserGroup","searchUserOrUserGroupInstances","Promise","all","handleSelectChange","originValue","find","unshift","resultValue","reject","handleFocus","isNil","openModal","closeModal","handleInstancesSelected","resultSelectedValue","uniqBy","handleModalSelected","selectedKeys","instances","toggleObjectId","title","K","FILTER_FROM_CMDB_TYPE","type","USERS","USER_GROUPS","SWITCH","addMeQuickly","myUserName","getAuth","username","myUser","$eq","getRight","btnWidth","hideAddMeQuickly","lineWidth","hideSelectByCMDB","iconWidth","styles","UserOrUserGroupSelectContainer","customSelect","placeholder","debounce","width","USERS_RESULT_LABEL","d","NO_DATA","USER_GROUPS_RESULT_LABEL","extra","right","fontSize","lib","icon","presetConfigs","UserSelectFormItem","forwardRef","UserOrUserGroupSelect","mergeUseAndUserGroup"],"sources":["../../../../src/components/user-or-user-group-select/UserOrUserGroupSelect.tsx"],"sourcesContent":["import React, {\n useState,\n forwardRef,\n ReactNode,\n useEffect,\n useRef,\n} from \"react\";\nimport { SearchOutlined } from \"@ant-design/icons\";\nimport { Select, Button, Divider } from \"antd\";\nimport styles from \"./UserOrUserGroupSelect.module.css\";\nimport { InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport {\n zipObject,\n map,\n debounce,\n startsWith,\n filter,\n reject,\n isNil,\n uniqBy,\n uniq,\n find,\n isEmpty,\n isEqual,\n groupBy,\n compact,\n some,\n} from \"lodash\";\nimport { FormItemWrapperProps, FormItemWrapper } from \"@next-libs/forms\";\nimport { getInstanceNameKeys } from \"@next-libs/cmdb-utils\";\nimport { InstanceListModal } from \"../../instance-list-modal/InstanceListModal\";\nimport { getAuth } from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\n\nexport type UserOrUserGroupSelectValue = {\n selectedUser?: string[];\n selectedUserGroup?: string[];\n};\n\nexport interface UserSelectFormItemProps {\n children?: ReactNode;\n objectMap?: Record<string, any>;\n onChange?: (value: any) => void;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\ninterface UserOrUserGroupSelectProps extends FormItemWrapperProps {\n objectMap: Record<string, any>;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n onChange?: (value: any) => void;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\nexport function LegacyUserSelectFormItem(\n props: UserSelectFormItemProps,\n ref: React.Ref<HTMLDivElement>\n): React.ReactElement {\n const selectRef = useRef();\n const [selectedValue, setSelectedValue] = useState([]);\n const staticValue = useRef([]);\n const userShowKey: string[] = getInstanceNameKeys(props.objectMap[\"USER\"]);\n const userGroupShowKey: string[] = getInstanceNameKeys(\n props.objectMap[\"USER_GROUP\"]\n );\n\n const { t } = useTranslation(NS_LIBS_CMDB_INSTANCES);\n\n const getLabel = (\n objectId: \"USER\" | \"USER_GROUP\",\n instanceData: any\n ): string => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n if (Array.isArray(showKey)) {\n const showName = showKey\n .map((key, index) => {\n if (index === 0) {\n return instanceData[key];\n } else {\n return instanceData[key] ? \"(\" + instanceData[key] + \")\" : \"\";\n }\n })\n .join(\"\");\n return showName;\n } else {\n return instanceData[showKey];\n }\n };\n\n const getStaticLabel = (label: string) => (\n <div style={{ color: \"var(--bg-color-button-link)\" }}>{label}</div>\n );\n\n const isDifferent = () => {\n const userOfValues = props.value?.selectedUser || [];\n const userGroupOfValues = props.value?.selectedUserGroup || [];\n const userOfSelectedValue = map(\n filter(selectedValue, (item) => !item.key.startsWith(\":\")),\n \"key\"\n );\n\n const userGroupOfSelectedValue = map(\n filter(selectedValue, (item) => item.key.startsWith(\":\")),\n \"key\"\n );\n\n return (\n !isEqual([...userOfValues].sort(), [...userOfSelectedValue].sort()) ||\n !isEqual(\n [...userGroupOfValues].sort(),\n [...userGroupOfSelectedValue].sort()\n )\n );\n };\n\n const initializeStaticList = () => {\n return groupBy(props.staticList, (v) =>\n startsWith(v, \":\") ? \"userGroup\" : \"user\"\n );\n };\n\n // 后台搜索中\n const [fetching, setFetching] = useState(false);\n\n const [searchValue, setSearchValue] = useState();\n const [userList, setUserList] = useState([]);\n const [userGroupList, setUserGroupList] = useState([]);\n\n const [modalVisible, setModalVisible] = useState(false);\n const [modalObjectId, setModalObjectId] = useState(\n props.optionsMode === \"group\" ? \"USER_GROUP\" : \"USER\"\n );\n\n const triggerChange = (changedValue: any) => {\n props.onChange?.(\n isEmpty(changedValue.selectedUser) &&\n isEmpty(changedValue.selectedUserGroup)\n ? null\n : changedValue\n );\n };\n // istanbul ignore next (Migrated from next-basic)\n useEffect(() => {\n const initializeSelectedValue = async () => {\n if (props.value) {\n let selectedUser: any[] = [];\n let selectedUserGroup: any[] = [];\n const staticKeys = initializeStaticList();\n const user = compact(\n uniq([].concat(staticKeys.user).concat(props.value.selectedUser))\n );\n\n const userGroup = compact(\n uniq(\n []\n .concat(staticKeys.userGroup)\n .concat(props.value.selectedUserGroup)\n )\n );\n\n if (\n (staticKeys.user &&\n some(\n staticKeys.user,\n (v) => !props.value?.selectedUser?.includes(v)\n )) ||\n (staticKeys.userGroup &&\n some(\n staticKeys.userGroup,\n (v) => !props.value?.selectedUserGroup?.includes(v)\n ))\n ) {\n triggerChange({\n selectedUser: user,\n selectedUserGroup: userGroup,\n });\n }\n const staticValueToSet: any[] = [];\n if (user.length && props.optionsMode !== \"group\") {\n selectedUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $in: user,\n },\n },\n\n page: 1,\n page_size: user.length,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n if (userGroup.length && props.optionsMode !== \"user\") {\n selectedUserGroup = (\n await InstanceApi_postSearch(\"USER_GROUP\", {\n query: {\n instanceId: {\n // 默认带为\":\"+instanceId,这里查询的时候去掉前面的冒号\n $in: map(userGroup, (v) => v.slice(1)),\n },\n },\n\n page: 1,\n page_size: userGroup.length,\n fields: {\n ...zipObject(\n userGroupShowKey,\n map(userGroupShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n let labelValue = [\n ...map(selectedUser, (v) => {\n const labelText = getLabel(\"USER\", v);\n const result = {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(v.name)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ...map(selectedUserGroup, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n const result = {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(\":\" + v.instanceId)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ];\n\n labelValue = [\n ...staticValueToSet,\n ...filter(labelValue, (v) => !props.staticList?.includes(v.key)),\n ];\n\n setSelectedValue(labelValue);\n staticValue.current = staticValueToSet;\n }\n };\n if (isDifferent()) {\n initializeSelectedValue();\n }\n }, [props.value]);\n\n const fetchInstanceList = async (\n objectId: \"USER\" | \"USER_GROUP\",\n keyword: string\n ) => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n const showKeyQuery = {\n $or: map(uniq([...showKey, \"name\"]), (v) => ({\n [v]: { $like: `%${keyword}%` },\n })),\n ...(props.hideInvalidUser\n ? {\n state: \"valid\",\n }\n : {}),\n };\n return (\n await InstanceApi_postSearch(objectId, {\n page: 1,\n page_size: 20,\n fields: {\n ...zipObject(\n showKey,\n map(showKey, (v) => true)\n ),\n\n name: true,\n },\n query:\n props.userQuery && objectId === \"USER\"\n ? {\n ...props.userQuery,\n ...showKeyQuery,\n }\n : props.userGroupQuery && objectId === \"USER_GROUP\"\n ? {\n ...props.userGroupQuery,\n ...showKeyQuery,\n }\n : props.query || showKeyQuery\n ? {\n ...props.query,\n ...showKeyQuery,\n }\n : showKeyQuery,\n })\n ).list;\n };\n\n const searchUser = async (value: string) => {\n setUserList(await fetchInstanceList(\"USER\", value));\n };\n\n // 用户组在instanceId前面加上:\n const searchUserGroup = async (value: string) => {\n const result = await fetchInstanceList(\"USER_GROUP\", value);\n setUserGroupList(\n result.map((v) => {\n v.instanceId = \":\" + v.instanceId;\n return v;\n })\n );\n };\n\n const searchUserOrUserGroupInstances = async (value: any) => {\n setSearchValue(value);\n setFetching(true);\n await Promise.all([\n ...(props.optionsMode !== \"group\" ? [searchUser(value)] : []),\n ...(props.optionsMode !== \"user\" ? [searchUserGroup(value)] : []),\n ]);\n\n setFetching(false);\n };\n\n const handleSelectChange = (originValue: any) => {\n const value = filter(originValue, (item) => {\n return !find(props.staticList, (v) => v === item.key);\n });\n value.unshift(...staticValue.current);\n setSelectedValue(value);\n const resultValue = {\n selectedUser: map(\n reject(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n if (searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleFocus = () => {\n if (isNil(searchValue) || searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const openModal = () => {\n setModalVisible(true);\n };\n // istanbul ignore next (Migrated from next-basic)\n const closeModal = () => {\n setModalVisible(false);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleInstancesSelected = (\n value: Record<string, any>[],\n objectId: string\n ): void => {\n let labelValue: any[] = [];\n if (objectId === \"USER\") {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER\", v);\n return {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n } else {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n return {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n }\n const resultSelectedValue = uniqBy(\n [...selectedValue, ...labelValue],\n \"key\"\n );\n\n setSelectedValue(resultSelectedValue);\n const resultValue = {\n selectedUser: map(\n reject(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleModalSelected = async (selectedKeys: string[]) => {\n if (selectedKeys?.length) {\n const instances = (\n await InstanceApi_postSearch(modalObjectId, {\n query: { instanceId: { $in: selectedKeys } },\n fields: { \"*\": true },\n page_size: selectedKeys.length,\n })\n ).list;\n handleInstancesSelected(instances, modalObjectId);\n }\n setModalVisible(false);\n };\n\n const toggleObjectId = () => {\n setModalObjectId(modalObjectId === \"USER\" ? \"USER_GROUP\" : \"USER\");\n };\n\n const title = (\n <div>\n {t(K.FILTER_FROM_CMDB_TYPE, {\n type: modalObjectId === \"USER\" ? t(K.USERS) : t(K.USER_GROUPS),\n })}{\" \"}\n {props.optionsMode === \"all\" && (\n <Button type=\"link\" onClick={toggleObjectId}>\n {t(K.SWITCH, {\n type: modalObjectId === \"USER\" ? t(K.USER_GROUPS) : t(K.USERS),\n })}{\" \"}\n </Button>\n )}\n </div>\n );\n\n // 快速选择我\n // istanbul ignore next (Migrated from next-basic)\n const addMeQuickly = async () => {\n const myUserName = getAuth().username;\n if (find(selectedValue, (v) => v.key === myUserName)) {\n // 如果已选择项中包含我,则不重新发起请求\n return;\n }\n const myUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $eq: myUserName,\n },\n },\n\n page: 1,\n page_size: 1,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n handleInstancesSelected(myUser, \"USER\");\n };\n\n const getRight = () => {\n const btnWidth =\n !props.hideAddMeQuickly && props.optionsMode !== \"group\" ? -34 : 0;\n const lineWidth =\n !props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB\n ? -1\n : 0;\n const iconWidth = props.hideSelectByCMDB ? 0 : -32;\n return btnWidth + lineWidth + iconWidth;\n };\n\n return (\n <div\n ref={ref}\n data-testid=\"wrapper\"\n className={styles.UserOrUserGroupSelectContainer}\n >\n <Select\n className={styles.customSelect}\n ref={selectRef}\n allowClear={true}\n mode=\"multiple\"\n labelInValue\n placeholder={props.placeholder}\n filterOption={false}\n value={selectedValue}\n onChange={handleSelectChange}\n onSearch={debounce((value) => {\n searchUserOrUserGroupInstances(value as string);\n }, 500)}\n onFocus={handleFocus}\n style={{ width: \"100%\" }}\n loading={fetching}\n >\n {props.optionsMode !== \"group\" && (\n <Select.OptGroup label={t(K.USERS_RESULT_LABEL)}>\n {userList.length > 0 ? (\n userList.map((d) => (\n <Select.Option value={d.name} key={d.name}>\n {props.staticList?.includes(d.name)\n ? getStaticLabel(getLabel(\"USER\", d))\n : getLabel(\"USER\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option value=\"empty-user\" key=\"empty-user\" disabled>\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n\n {props.optionsMode !== \"user\" && (\n <Select.OptGroup label={t(K.USER_GROUPS_RESULT_LABEL)}>\n {userGroupList.length > 0 ? (\n userGroupList.map((d) => (\n <Select.Option value={d.instanceId} key={d.instanceId}>\n {props.staticList?.includes(d.instanceId)\n ? getStaticLabel(getLabel(\"USER_GROUP\", d))\n : getLabel(\"USER_GROUP\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option\n value=\"empty-user-group\"\n key=\"empty-user-group\"\n disabled\n >\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n </Select>\n <div className={styles.extra} style={{ right: getRight() }}>\n {!props.hideAddMeQuickly && props.optionsMode !== \"group\" && (\n <Button\n type=\"link\"\n onClick={addMeQuickly}\n style={{ fontSize: \"16px\" }}\n >\n <GeneralIcon icon={{ lib: \"easyops\", icon: \"quick-add-me\" }} />\n </Button>\n )}\n\n {!props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB && <Divider type=\"vertical\" />}\n {!props.hideSelectByCMDB && (\n <Button\n type=\"link\"\n icon={<SearchOutlined />}\n onClick={openModal}\n ></Button>\n )}\n </div>\n <InstanceListModal\n objectMap={props.objectMap}\n objectId={modalObjectId}\n visible={modalVisible}\n title={title}\n onSelected={handleModalSelected}\n onCancel={closeModal}\n showSizeChanger={true}\n {...(modalObjectId === \"USER\" && props.hideInvalidUser\n ? {\n presetConfigs: {\n query: {\n state: \"valid\",\n },\n },\n }\n : {})}\n />\n </div>\n );\n}\n\nexport const UserSelectFormItem = forwardRef<HTMLDivElement>(\n LegacyUserSelectFormItem\n) as any;\n\nexport function UserOrUserGroupSelect(\n props: UserOrUserGroupSelectProps\n): React.ReactElement {\n return (\n <FormItemWrapper {...props}>\n <UserSelectFormItem\n objectMap={props.objectMap}\n placeholder={props.placeholder}\n value={props.value}\n hideAddMeQuickly={props.hideAddMeQuickly}\n hideSelectByCMDB={props.hideSelectByCMDB}\n onChange={props.onChange}\n optionsMode={props.optionsMode}\n staticList={props.staticList}\n mergeUseAndUserGroup={props.mergeUseAndUserGroup}\n query={props.query}\n hideInvalidUser={props.hideInvalidUser}\n userQuery={props.userQuery}\n userGroupQuery={props.userGroupQuery}\n />\n </FormItemWrapper>\n );\n}\n"],"mappings":"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"}
|
|
@@ -5,13 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.fetchCmdbInstanceDetail = fetchCmdbInstanceDetail;
|
|
7
7
|
exports.fetchCmdbInstanceDetailByFields = fetchCmdbInstanceDetailByFields;
|
|
8
|
-
|
|
9
8
|
var _cmdbSdk = require("@next-sdk/cmdb-sdk");
|
|
10
|
-
|
|
11
9
|
function fetchCmdbInstanceDetail(objectId, instanceId) {
|
|
12
10
|
return (0, _cmdbSdk.InstanceApi_getDetail)(objectId, instanceId, {});
|
|
13
11
|
}
|
|
14
|
-
|
|
15
12
|
function fetchCmdbInstanceDetailByFields(objectId, instanceId, fields, relation_limit) {
|
|
16
13
|
return (0, _cmdbSdk.InstanceApi_getDetail)(objectId, instanceId, {
|
|
17
14
|
fields,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchCmdbInstanceDetail.js","names":["fetchCmdbInstanceDetail","objectId","instanceId","InstanceApi_getDetail","fetchCmdbInstanceDetailByFields","fields","relation_limit"],"sources":["../../../src/data-providers/fetchCmdbInstanceDetail.ts"],"sourcesContent":["import {\n InstanceApi_GetDetailResponseBody,\n InstanceApi_getDetail,\n InstanceApi_GetDetailRequestParams,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceDetail(\n objectId: string,\n instanceId: string\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {});\n}\n\nexport function fetchCmdbInstanceDetailByFields(\n objectId: string,\n instanceId: string,\n fields: string,\n relation_limit?: number\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {\n fields,\n relation_limit,\n } as InstanceApi_GetDetailRequestParams);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetchCmdbInstanceDetail.js","names":["fetchCmdbInstanceDetail","objectId","instanceId","InstanceApi_getDetail","fetchCmdbInstanceDetailByFields","fields","relation_limit"],"sources":["../../../src/data-providers/fetchCmdbInstanceDetail.ts"],"sourcesContent":["import {\n InstanceApi_GetDetailResponseBody,\n InstanceApi_getDetail,\n InstanceApi_GetDetailRequestParams,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceDetail(\n objectId: string,\n instanceId: string\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {});\n}\n\nexport function fetchCmdbInstanceDetailByFields(\n objectId: string,\n instanceId: string,\n fields: string,\n relation_limit?: number\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {\n fields,\n relation_limit,\n } as InstanceApi_GetDetailRequestParams);\n}\n"],"mappings":";;;;;;;AAAA;AAMO,SAASA,uBAAuB,CACrCC,QAAgB,EAChBC,UAAkB,EACmC;EACrD,OAAO,IAAAC,8BAAqB,EAACF,QAAQ,EAAEC,UAAU,EAAE,CAAC,CAAC,CAAC;AACxD;AAEO,SAASE,+BAA+B,CAC7CH,QAAgB,EAChBC,UAAkB,EAClBG,MAAc,EACdC,cAAuB,EAC8B;EACrD,OAAO,IAAAH,8BAAqB,EAACF,QAAQ,EAAEC,UAAU,EAAE;IACjDG,MAAM;IACNC;EACF,CAAC,CAAuC;AAC1C"}
|
|
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.fetchCmdbInstanceSearch = fetchCmdbInstanceSearch;
|
|
7
|
-
|
|
8
7
|
var _cmdbSdk = require("@next-sdk/cmdb-sdk");
|
|
9
|
-
|
|
10
8
|
function fetchCmdbInstanceSearch(objectId, params) {
|
|
11
9
|
return (0, _cmdbSdk.InstanceApi_postSearchV3)(objectId, params);
|
|
12
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchCmdbInstanceSearch.js","names":["fetchCmdbInstanceSearch","objectId","params","InstanceApi_postSearchV3"],"sources":["../../../src/data-providers/fetchCmdbInstanceSearch.ts"],"sourcesContent":["import {\n InstanceApi_PostSearchV3RequestBody,\n InstanceApi_PostSearchV3ResponseBody,\n InstanceApi_postSearchV3,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceSearch(\n objectId: string,\n params: InstanceApi_PostSearchV3RequestBody\n): Promise<Partial<InstanceApi_PostSearchV3ResponseBody>> {\n return InstanceApi_postSearchV3(objectId, params);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetchCmdbInstanceSearch.js","names":["fetchCmdbInstanceSearch","objectId","params","InstanceApi_postSearchV3"],"sources":["../../../src/data-providers/fetchCmdbInstanceSearch.ts"],"sourcesContent":["import {\n InstanceApi_PostSearchV3RequestBody,\n InstanceApi_PostSearchV3ResponseBody,\n InstanceApi_postSearchV3,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceSearch(\n objectId: string,\n params: InstanceApi_PostSearchV3RequestBody\n): Promise<Partial<InstanceApi_PostSearchV3ResponseBody>> {\n return InstanceApi_postSearchV3(objectId, params);\n}\n"],"mappings":";;;;;;AAAA;AAMO,SAASA,uBAAuB,CACrCC,QAAgB,EAChBC,MAA2C,EACa;EACxD,OAAO,IAAAC,iCAAwB,EAACF,QAAQ,EAAEC,MAAM,CAAC;AACnD"}
|