@next-libs/cmdb-instances 7.21.2 → 7.21.3
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.map +1 -1
- package/dist/cjs/cmdb-instances-input-form/CmdbInstancesInputFormItem.js +1 -3
- package/dist/cjs/cmdb-instances-input-form/CmdbInstancesInputFormItem.js.map +1 -1
- package/dist/cjs/cmdb-instances-select-panel/CmdbInstancesSelectPanel.js.map +1 -1
- package/dist/cjs/cmdb-url-link/CmdbUrlLink.js.map +1 -1
- package/dist/cjs/components/cmdb-upload/index.js.map +1 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/instance-format/index.js.map +1 -1
- package/dist/cjs/components/user-or-user-group-select/UserOrUserGroupSelect.js +1 -2
- package/dist/cjs/components/user-or-user-group-select/UserOrUserGroupSelect.js.map +1 -1
- package/dist/cjs/constants.js +2 -4
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbInstanceSearch.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbObjectDetail.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbObjectList.js.map +1 -1
- package/dist/cjs/data-providers/fetchCmdbObjectRef.js.map +1 -1
- package/dist/cjs/data-providers/index.js.map +1 -1
- package/dist/cjs/float-display-brick/FloatDisplayBrick.js.map +1 -1
- package/dist/cjs/i18n/constants.js +2 -4
- package/dist/cjs/i18n/constants.js.map +1 -1
- package/dist/cjs/i18n/index.js.map +1 -1
- package/dist/cjs/i18n/locales/en.js +1 -2
- package/dist/cjs/i18n/locales/en.js.map +1 -1
- package/dist/cjs/i18n/locales/zh.js +1 -2
- package/dist/cjs/i18n/locales/zh.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/instance-attribute-form/InstanceAttributeForm.js +1 -2
- package/dist/cjs/instance-attribute-form/InstanceAttributeForm.js.map +1 -1
- package/dist/cjs/instance-detail/InstanceDetail.js +1 -2
- package/dist/cjs/instance-detail/InstanceDetail.js.map +1 -1
- package/dist/cjs/instance-detail/components/instance-relation-field-display/constants.js +1 -2
- 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.map +1 -1
- package/dist/cjs/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js.map +1 -1
- package/dist/cjs/instance-detail/components/instances-attachment-display/instances-attachment-display.js.map +1 -1
- package/dist/cjs/instance-detail/constants/index.js +4 -8
- package/dist/cjs/instance-detail/constants/index.js.map +1 -1
- package/dist/cjs/instance-list/FilterInstanceSource.js +1 -2
- package/dist/cjs/instance-list/FilterInstanceSource.js.map +1 -1
- package/dist/cjs/instance-list/IconButton.js.map +1 -1
- package/dist/cjs/instance-list/InstanceList.js.map +1 -1
- package/dist/cjs/instance-list/constants.js +7 -14
- package/dist/cjs/instance-list/constants.js.map +1 -1
- package/dist/cjs/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/cjs/instance-list-table/AdvancedSearch.js +2 -4
- package/dist/cjs/instance-list-table/AdvancedSearch.js.map +1 -1
- package/dist/cjs/instance-list-table/AdvancedSearchCondition.js.map +1 -1
- package/dist/cjs/instance-list-table/DisplaySettings.js.map +1 -1
- package/dist/cjs/instance-list-table/DisplaySettingsModal.js.map +1 -1
- package/dist/cjs/instance-list-table/DynamicSearch.js +1 -2
- package/dist/cjs/instance-list-table/DynamicSearch.js.map +1 -1
- package/dist/cjs/instance-list-table/InstanceListTable.js +2 -2
- package/dist/cjs/instance-list-table/InstanceListTable.js.map +1 -1
- package/dist/cjs/instance-list-table/MoreButtonsContainer.js.map +1 -1
- package/dist/cjs/instance-list-table/constants.js +7 -14
- package/dist/cjs/instance-list-table/constants.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceAggregateCount.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceCount.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchCmdbObjectDetail.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchPermRoleList.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/fetchPermissionList.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/getDefaultValueTemplate.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/index.js.map +1 -1
- package/dist/cjs/instance-list-table/data-providers/searchCmdbInstances.js.map +1 -1
- package/dist/cjs/instance-list-table/index.js.map +1 -1
- package/dist/cjs/instance-list-table/interfaces.js.map +1 -1
- package/dist/cjs/instance-list-table/utils.js +1 -2
- package/dist/cjs/instance-list-table/utils.js.map +1 -1
- package/dist/cjs/json-display-brick/JsonDisplayBrick.js.map +1 -1
- package/dist/cjs/model-attribute-form/ModelAttributeForm.js +3 -2
- package/dist/cjs/model-attribute-form/ModelAttributeForm.js.map +1 -1
- package/dist/cjs/model-attribute-form/constants.js +1 -2
- package/dist/cjs/model-attribute-form/constants.js.map +1 -1
- package/dist/cjs/model-attribute-form-control/ModelAttributeFormControl.js +21 -27
- package/dist/cjs/model-attribute-form-control/ModelAttributeFormControl.js.map +1 -1
- package/dist/cjs/model-relation-form/ModelRelationForm.js.map +1 -1
- package/dist/cjs/processors.js +3 -4
- package/dist/cjs/processors.js.map +1 -1
- package/dist/cjs/struct-components/AddStruct.js +4 -3
- package/dist/cjs/struct-components/AddStruct.js.map +1 -1
- package/dist/cjs/struct-components/AddStructModal.js.map +1 -1
- package/dist/cjs/struct-components/StructTable.js +1 -0
- package/dist/cjs/struct-components/StructTable.js.map +1 -1
- package/dist/cjs/struct-components/index.js.map +1 -1
- package/dist/cjs/struct-components/interfaces.js +1 -2
- package/dist/cjs/struct-components/interfaces.js.map +1 -1
- package/dist/cjs/struct-components/mockData.js +5 -10
- package/dist/cjs/struct-components/mockData.js.map +1 -1
- package/dist/cjs/xml-display-brick/XmlDisplayBrick.js.map +1 -1
- package/dist/esm/attribute-form-control-url/AttributeFormControlUrl.js.map +1 -1
- package/dist/esm/cmdb-instances-input-form/CmdbInstancesInputFormItem.js +0 -1
- package/dist/esm/cmdb-instances-input-form/CmdbInstancesInputFormItem.js.map +1 -1
- package/dist/esm/cmdb-instances-select-panel/CmdbInstancesSelectPanel.js.map +1 -1
- package/dist/esm/cmdb-url-link/CmdbUrlLink.js.map +1 -1
- package/dist/esm/components/cmdb-upload/index.js.map +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/instance-format/index.js.map +1 -1
- package/dist/esm/components/user-or-user-group-select/UserOrUserGroupSelect.js.map +1 -1
- package/dist/esm/constants.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.map +1 -1
- package/dist/esm/i18n/constants.js.map +1 -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.map +1 -1
- package/dist/esm/instance-attribute-form/InstanceAttributeForm.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js.map +1 -1
- package/dist/esm/instance-detail/components/instances-attachment-display/instances-attachment-display.js +0 -1
- package/dist/esm/instance-detail/components/instances-attachment-display/instances-attachment-display.js.map +1 -1
- package/dist/esm/instance-detail/constants/index.js.map +1 -1
- package/dist/esm/instance-list/FilterInstanceSource.js.map +1 -1
- package/dist/esm/instance-list/IconButton.js.map +1 -1
- package/dist/esm/instance-list/InstanceList.js +10 -10
- package/dist/esm/instance-list/InstanceList.js.map +1 -1
- package/dist/esm/instance-list/constants.js.map +1 -1
- package/dist/esm/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/esm/instance-list-table/AdvancedSearch.js.map +1 -1
- package/dist/esm/instance-list-table/AdvancedSearchCondition.js.map +1 -1
- package/dist/esm/instance-list-table/DisplaySettings.js.map +1 -1
- package/dist/esm/instance-list-table/DisplaySettingsModal.js.map +1 -1
- package/dist/esm/instance-list-table/DynamicSearch.js.map +1 -1
- package/dist/esm/instance-list-table/InstanceListTable.js +4 -4
- package/dist/esm/instance-list-table/InstanceListTable.js.map +1 -1
- package/dist/esm/instance-list-table/MoreButtonsContainer.js.map +1 -1
- 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.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/interfaces.js.map +1 -1
- package/dist/esm/instance-list-table/utils.js.map +1 -1
- package/dist/esm/json-display-brick/JsonDisplayBrick.js.map +1 -1
- package/dist/esm/model-attribute-form/ModelAttributeForm.js +2 -0
- 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 +17 -19
- package/dist/esm/model-attribute-form-control/ModelAttributeFormControl.js.map +1 -1
- package/dist/esm/model-relation-form/ModelRelationForm.js.map +1 -1
- package/dist/esm/processors.js.map +1 -1
- package/dist/esm/struct-components/AddStruct.js +4 -3
- package/dist/esm/struct-components/AddStruct.js.map +1 -1
- package/dist/esm/struct-components/AddStructModal.js.map +1 -1
- package/dist/esm/struct-components/StructTable.js +1 -0
- 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.map +1 -1
- package/dist/esm/struct-components/mockData.js.map +1 -1
- package/dist/esm/xml-display-brick/XmlDisplayBrick.js.map +1 -1
- package/dist/types/instance-attribute-form/InstanceAttributeForm.d.ts +1 -1
- package/dist/types/instance-detail/InstanceDetail.d.ts +1 -1
- package/dist/types/instance-list/IconButton.d.ts +2 -2
- package/dist/types/instance-list-table/AdvancedSearch.d.ts +1 -1
- package/dist/types/instance-list-table/DisplaySettings.d.ts +2 -2
- package/dist/types/instance-list-table/DynamicSearch.d.ts +1 -1
- package/dist/types/instance-list-table/InstanceListTable.d.ts +6 -6
- package/dist/types/model-attribute-form/ModelAttributeForm.d.ts +1 -1
- package/dist/types/struct-components/AddStruct.d.ts +1 -1
- package/dist/types/struct-components/StructTable.d.ts +2 -2
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AttributeFormControlUrl.js","names":["AttributeFormControlUrl","Component","constructor","props","url","composeUrl","title","breakDownValue","value","pattern","arr","match","getFormattedUrl","reg","origin","window","location","test","onChange","render","readOnly","placeholder","i18n","t","NS_LIBS_CMDB_INSTANCES","K","LINK","e","handleUrlChange","target","LINK_PLACEHOLDER","TITLE","handleTitleChange","TITLE_PLACEHOLDER"],"sources":["../../../src/attribute-form-control-url/AttributeFormControlUrl.tsx"],"sourcesContent":["import { FormControl } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport { Input } from \"antd\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport React, { Component, ReactNode } from \"react\";\nimport \"./AttributeFormControlUrl.module.css\";\n\nexport interface AttributeFormControlUrlProps extends Partial<FormControl> {\n value: string;\n onChange: (value: string) => void;\n}\n\nexport class AttributeFormControlUrl extends Component<AttributeFormControlUrlProps> {\n private url: string;\n private title: string;\n\n constructor(props: AttributeFormControlUrlProps) {\n super(props);\n\n const { title, url } = AttributeFormControlUrl.breakDownValue(props.value);\n this.title = title;\n this.url = url;\n }\n\n static breakDownValue(value: string): { title: string; url: string } {\n const pattern = /^\\[(.*)\\]\\((.*)\\)$/;\n const arr = value && value.match(pattern);\n if (arr) {\n return {\n title: arr[1],\n url: AttributeFormControlUrl.getFormattedUrl(arr[2]),\n };\n }\n\n return {\n title: value,\n url: value,\n };\n }\n\n static getFormattedUrl(url: string): string {\n /* istanbul ignore if */\n if (url) {\n // const pattern = /^(http|https):\\/\\/.*$/;\n // // return pattern.test(url) ? url : \"http://\" + url;\n // const urlReg = /^((http|https):\\/\\/)?(([A-Za-z0-9]+-[A-Za-z0-9]+|[A-Za-z0-9]+)\\.)+([A-Za-z]+)[/\\?\\:]?.*|^((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)$/;\n // const reg = /^\\//\n // const origin = window.location.origin;\n // return pattern.test(url) ? url : urlReg.test(url) ? url : `${origin}${reg.test(url) ? url : '/' + url} `;\n const reg = /^\\//\n const origin = window.location.origin;\n return reg.test(url) ? `${origin}${url}` : url;\n }\n return \"\";\n }\n\n // preSetValidation = () => {\n // const url = AttributeFormControlUrl.getFormattedUrl(this.url);\n\n // if (this.url !== url) {\n // this.url = url;\n // this.composeUrl();\n // }\n // };\n\n /* istanbul ignore next */\n composeUrl(): void {\n const title = this.title ?? \"\";\n const url = AttributeFormControlUrl.getFormattedUrl(this.url);\n const value = url || title ? `[${title}](${url})` : \"\";\n this.props.onChange(value);\n }\n\n handleUrlChange = (url: string) => {\n this.url = url;\n this.composeUrl();\n };\n\n handleTitleChange = (title: string) => {\n this.title = title;\n this.composeUrl();\n };\n\n render(): ReactNode {\n const { readOnly, placeholder } = this.props;\n const { title, url } = this;\n\n return (\n <div>\n <div className=\"singleContainer\">\n <label className=\"presetTitle\">\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.LINK}`)}\n </label>\n <Input\n readOnly={readOnly}\n value={url}\n type=\"url\"\n onChange={(e) => this.handleUrlChange(e.target.value)}\n // onBlur={this.preSetValidation}\n placeholder={\n placeholder ||\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.LINK_PLACEHOLDER}`)\n }\n />\n </div>\n\n <div className=\"singleContainer\">\n <label className=\"presetTitle\">\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.TITLE}`)}\n </label>\n <Input\n defaultValue={title}\n type=\"text\"\n onChange={(e) => this.handleTitleChange(e.target.value)}\n // onBlur={this.preSetValidation}\n placeholder={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.TITLE_PLACEHOLDER}`\n )}\n />\n </div>\n </div>\n );\n }\n}\n"],"mappings":";;;;;;;;;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":"AttributeFormControlUrl.js","names":["_antd","require","_i18next","_interopRequireDefault","_constants","_react","_interopRequireWildcard","AttributeFormControlUrl","Component","constructor","props","_defineProperty2","default","url","composeUrl","title","breakDownValue","value","pattern","arr","match","getFormattedUrl","reg","origin","window","location","test","_this$title","onChange","render","readOnly","placeholder","createElement","className","i18n","t","NS_LIBS_CMDB_INSTANCES","K","LINK","Input","type","e","handleUrlChange","target","LINK_PLACEHOLDER","TITLE","defaultValue","handleTitleChange","TITLE_PLACEHOLDER","exports"],"sources":["../../../src/attribute-form-control-url/AttributeFormControlUrl.tsx"],"sourcesContent":["import { FormControl } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport { Input } from \"antd\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport React, { Component, ReactNode } from \"react\";\nimport \"./AttributeFormControlUrl.module.css\";\n\nexport interface AttributeFormControlUrlProps extends Partial<FormControl> {\n value: string;\n onChange: (value: string) => void;\n}\n\nexport class AttributeFormControlUrl extends Component<AttributeFormControlUrlProps> {\n private url: string;\n private title: string;\n\n constructor(props: AttributeFormControlUrlProps) {\n super(props);\n\n const { title, url } = AttributeFormControlUrl.breakDownValue(props.value);\n this.title = title;\n this.url = url;\n }\n\n static breakDownValue(value: string): { title: string; url: string } {\n const pattern = /^\\[(.*)\\]\\((.*)\\)$/;\n const arr = value && value.match(pattern);\n if (arr) {\n return {\n title: arr[1],\n url: AttributeFormControlUrl.getFormattedUrl(arr[2]),\n };\n }\n\n return {\n title: value,\n url: value,\n };\n }\n\n static getFormattedUrl(url: string): string {\n /* istanbul ignore if */\n if (url) {\n // const pattern = /^(http|https):\\/\\/.*$/;\n // // return pattern.test(url) ? url : \"http://\" + url;\n // const urlReg = /^((http|https):\\/\\/)?(([A-Za-z0-9]+-[A-Za-z0-9]+|[A-Za-z0-9]+)\\.)+([A-Za-z]+)[/\\?\\:]?.*|^((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)$/;\n // const reg = /^\\//\n // const origin = window.location.origin;\n // return pattern.test(url) ? url : urlReg.test(url) ? url : `${origin}${reg.test(url) ? url : '/' + url} `;\n const reg = /^\\//\n const origin = window.location.origin;\n return reg.test(url) ? `${origin}${url}` : url;\n }\n return \"\";\n }\n\n // preSetValidation = () => {\n // const url = AttributeFormControlUrl.getFormattedUrl(this.url);\n\n // if (this.url !== url) {\n // this.url = url;\n // this.composeUrl();\n // }\n // };\n\n /* istanbul ignore next */\n composeUrl(): void {\n const title = this.title ?? \"\";\n const url = AttributeFormControlUrl.getFormattedUrl(this.url);\n const value = url || title ? `[${title}](${url})` : \"\";\n this.props.onChange(value);\n }\n\n handleUrlChange = (url: string) => {\n this.url = url;\n this.composeUrl();\n };\n\n handleTitleChange = (title: string) => {\n this.title = title;\n this.composeUrl();\n };\n\n render(): ReactNode {\n const { readOnly, placeholder } = this.props;\n const { title, url } = this;\n\n return (\n <div>\n <div className=\"singleContainer\">\n <label className=\"presetTitle\">\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.LINK}`)}\n </label>\n <Input\n readOnly={readOnly}\n value={url}\n type=\"url\"\n onChange={(e) => this.handleUrlChange(e.target.value)}\n // onBlur={this.preSetValidation}\n placeholder={\n placeholder ||\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.LINK_PLACEHOLDER}`)\n }\n />\n </div>\n\n <div className=\"singleContainer\">\n <label className=\"presetTitle\">\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.TITLE}`)}\n </label>\n <Input\n defaultValue={title}\n type=\"text\"\n onChange={(e) => this.handleTitleChange(e.target.value)}\n // onBlur={this.preSetValidation}\n placeholder={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.TITLE_PLACEHOLDER}`\n )}\n />\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -159,7 +159,6 @@ const LegacyCmdbInstancesInputFormItem = (props, ref) => {
|
|
|
159
159
|
} : {} //处理重复ip的情况
|
|
160
160
|
]
|
|
161
161
|
},
|
|
162
|
-
|
|
163
162
|
permission,
|
|
164
163
|
fields: fields || {
|
|
165
164
|
instanceId: true,
|
|
@@ -334,6 +333,5 @@ const LegacyCmdbInstancesInputFormItem = (props, ref) => {
|
|
|
334
333
|
}, t(_constants.K.VIEW_SPECIFIC_INSTANCES))));
|
|
335
334
|
};
|
|
336
335
|
exports.LegacyCmdbInstancesInputFormItem = LegacyCmdbInstancesInputFormItem;
|
|
337
|
-
const CmdbInstancesInputFormItem = /*#__PURE__*/(0, _react.forwardRef)(LegacyCmdbInstancesInputFormItem);
|
|
338
|
-
exports.CmdbInstancesInputFormItem = CmdbInstancesInputFormItem;
|
|
336
|
+
const CmdbInstancesInputFormItem = exports.CmdbInstancesInputFormItem = /*#__PURE__*/(0, _react.forwardRef)(LegacyCmdbInstancesInputFormItem);
|
|
339
337
|
//# sourceMappingURL=CmdbInstancesInputFormItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CmdbInstancesInputFormItem.js","names":["separator","LegacyCmdbInstancesInputFormItem","props","ref","t","useTranslation","NS_LIBS_CMDB_INSTANCES","presetQuery","permission","useMemo","objectId","checkAgentStatus","_agentStatus","checkPermission","push","fields","length","forEach","field","objectData","modifyModelData","objectMap","fieldData","__fieldList","find","__id","fieldId","visible","setVisible","useState","selectedInstances","setSelectedInstances","valid","invalid","inputValue","setInputValue","inputFocused","setInputFocused","previewVisible","setPreviewVisible","valueRef","useRef","selectedInstancesQuery","previewEnabled","instanceId","$in","map","instance","query","undefined","checkSelectedInstances","instances","InstanceApi_postSearch","page_size","list","instanceIdSet","Set","selectedInstancesMap","groupBy","selectedInstance","has","true","false","invalidSelectedInstance","updateSelected","instanceIds","page","instanceData","join","checkDisabled","useEffect","isEqual","current","value","handleChange","onChange","onChangeV2","checkFieldValues","fieldValues","$and","validSelectedInstances","filter","includes","validFieldValues","invalidFieldValues","fieldValue","checkInputValue","match","split","openSelectInstancesModal","closeSelectInstancesModal","handleInstancesSelected","selectedKeys","handleInputChanged","event","target","handleInputBlur","closeInvalidFieldValuesModal","text","selectFromText","K","SELECT_FROM_CMDB","TIP","DELETE","INVALID_OR_FORBIDDEN_IPS","INVALID","name","extraFilterBricks","fieldIds","singleSelect","defaultQuery","pageSize","pageSizeOptions","showSizeChanger","hideSearchConditions","advancedSearchDisabled","saveFieldsBackend","style","cmdbInstancesInputFormWrapper","fieldInput","allowClear","inputDisabled","modalButton","addButtonDisabled","VIEW_SPECIFIC_INSTANCES","CmdbInstancesInputFormItem","forwardRef"],"sources":["../../../src/cmdb-instances-input-form/CmdbInstancesInputFormItem.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\n\nimport React, { forwardRef, useState, useEffect, useMemo, useRef } from \"react\";\nimport { Input, Button, Modal } from \"antd\";\nimport { groupBy, isEqual, map } from \"lodash\";\n\nimport { InstanceListModal } from \"../instance-list-modal/InstanceListModal\";\nimport { modifyModelData, Query } from \"@next-libs/cmdb-utils\";\nimport { CmdbModels, InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\n\nimport style from \"./cmdb-instances-input-form.module.css\";\nimport { UseBrickConf } from \"@next-core/brick-types\";\n\nconst separator = \" \";\n\nexport interface CmdbInstancesInputFormItemProps {\n selectFromText?: string;\n objectMap?: { [objectId: string]: Partial<CmdbModels.ModelCmdbObject> };\n objectId?: string;\n fieldId?: string;\n fields?: string[];\n singleSelect?: boolean;\n inputDisabled?: boolean;\n checkDisabled?: boolean;\n checkAgentStatus?: boolean;\n checkPermission?: boolean;\n selectedInstanceIds?: string[];\n value?: string[];\n children?: React.ReactNode;\n query?: { [fieldId: string]: any }[];\n onChange?: (value: string[]) => void;\n onChangeV2?: (value: any[]) => void;\n allowClear?: boolean;\n defaultQuery?: { [fieldId: string]: any }[];\n addButtonDisabled?: boolean;\n previewEnabled?: boolean;\n pageSize?: number;\n pageSizeOptions?: string[];\n showSizeChanger?: boolean;\n hideSearchConditions?: boolean;\n advancedSearchDisabled?: boolean;\n extraFilterBricks?: {\n useBrick: UseBrickConf;\n };\n saveFieldsBackend?: boolean;\n}\n\nexport const LegacyCmdbInstancesInputFormItem = (\n props: CmdbInstancesInputFormItemProps,\n ref: React.Ref<HTMLDivElement>\n): React.ReactElement => {\n const { t } = useTranslation(NS_LIBS_CMDB_INSTANCES);\n\n const { presetQuery, permission } = useMemo(() => {\n const presetQuery = {} as any;\n const permission: string[] = [];\n\n if (props.objectId === \"HOST\") {\n if (props.checkAgentStatus) {\n presetQuery._agentStatus = \"正常\";\n }\n if (props.checkPermission) {\n permission.push(\"operate\");\n }\n }\n\n return { presetQuery, permission };\n }, [props.objectId, props.checkAgentStatus, props.checkPermission]);\n const fields = useMemo(() => {\n if (props.fields?.length) {\n const fields: Record<string, boolean> = {};\n\n props.fields.forEach((field) => {\n fields[field] = true;\n });\n\n return fields;\n }\n }, [props.fields]);\n\n const objectData = modifyModelData(props.objectMap[props.objectId]);\n const fieldData = objectData.__fieldList.find(\n (field) => field.__id === props.fieldId\n );\n\n const [visible, setVisible] = useState(false);\n const [selectedInstances, setSelectedInstances] = useState({\n valid: [],\n invalid: [],\n });\n const [inputValue, setInputValue] = useState(\"\");\n const [inputFocused, setInputFocused] = useState(false);\n const [previewVisible, setPreviewVisible] = useState(false);\n const valueRef = useRef<string[]>([]);\n const selectedInstancesQuery = useMemo<Query[]>(\n () =>\n props.previewEnabled && selectedInstances.valid.length > 0\n ? [\n {\n instanceId: {\n $in: selectedInstances.valid.map(\n (instance) => instance.instanceId\n ),\n },\n ...presetQuery,\n },\n ...(props.query ? props.query : []),\n ]\n : undefined,\n [selectedInstances.valid, presetQuery, props.query]\n );\n\n const checkSelectedInstances = async (\n selectedInstances: any[]\n ): Promise<string[]> => {\n if (selectedInstances) {\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n page_size: selectedInstances.length,\n query: {\n instanceId: {\n $in: selectedInstances.map((instance) => instance.instanceId),\n },\n ...presetQuery,\n },\n permission,\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n const instanceIdSet = new Set(\n instances.map((instance) => instance.instanceId)\n );\n\n const selectedInstancesMap = groupBy(\n selectedInstances,\n (selectedInstance) => instanceIdSet.has(selectedInstance.instanceId)\n );\n\n setSelectedInstances({\n valid: selectedInstancesMap.true || [],\n invalid: (selectedInstancesMap.false || []).map(\n (invalidSelectedInstance) => invalidSelectedInstance[props.fieldId]\n ),\n });\n\n return selectedInstancesMap.true ? selectedInstancesMap.true : [];\n }\n };\n\n const updateSelected = async (instanceIds: string[]): Promise<any[]> => {\n let selectedInstances: any[] = [];\n if (instanceIds?.length) {\n selectedInstances = (\n await InstanceApi_postSearch(props.objectId, {\n page: 1,\n page_size: instanceIds.length,\n query: {\n instanceId: {\n $in: instanceIds,\n },\n },\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n }\n\n setInputValue(\n selectedInstances\n .map((instanceData) => instanceData[props.fieldId])\n .join(separator)\n );\n\n let instances = selectedInstances;\n if (selectedInstances.length) {\n if (!props.checkDisabled) {\n instances = await checkSelectedInstances(selectedInstances);\n } else {\n setSelectedInstances({ valid: selectedInstances, invalid: [] });\n }\n } else {\n setSelectedInstances({ valid: [], invalid: [] });\n }\n return instances;\n };\n\n useEffect(() => {\n if (!isEqual(valueRef.current, props.value)) {\n valueRef.current = props.value;\n updateSelected(props.value);\n }\n }, [props.value]);\n\n const handleChange = (instances: any[]): void => {\n const instanceIds = instances.map((instance) => instance.instanceId);\n valueRef.current = instanceIds;\n props.onChange?.(instanceIds);\n props.onChangeV2?.(instances);\n };\n\n const checkFieldValues = async (\n fieldValues: string[],\n instanceIds?: string[]\n ): Promise<void> => {\n if (fieldValues) {\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n page_size: fieldValues.length,\n query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n ...presetQuery,\n },\n ...(props.query ? props.query : []),\n instanceIds?.length\n ? {\n instanceId: {\n $in: instanceIds,\n },\n }\n : {}, //处理重复ip的情况\n ],\n },\n permission,\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n\n const validSelectedInstances = instances.filter((instance) =>\n fieldValues.includes(instance[props.fieldId])\n );\n\n const validFieldValues = validSelectedInstances.map(\n (instance) => instance[props.fieldId]\n );\n const invalidFieldValues = fieldValues.filter(\n (fieldValue) => !validFieldValues.includes(fieldValue)\n );\n\n setSelectedInstances({\n valid: validSelectedInstances || [],\n invalid: invalidFieldValues || [],\n });\n\n !invalidFieldValues.length && handleChange(validSelectedInstances);\n }\n };\n\n const checkInputValue = async (\n inputValue: string,\n instanceIds: string[]\n ): Promise<void> => {\n const fieldValues =\n props.fieldId === \"ip\"\n ? inputValue.match(\n /\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b(?:\\[[^[\\],;\\s]*\\])?/g\n )\n : inputValue.split(separator);\n\n checkFieldValues(fieldValues, instanceIds);\n };\n\n const openSelectInstancesModal = (): void => {\n setVisible(true);\n };\n\n const closeSelectInstancesModal = (): void => {\n setVisible(false);\n };\n\n const handleInstancesSelected = async (\n selectedKeys: string[]\n ): Promise<void> => {\n closeSelectInstancesModal();\n\n const instances = await updateSelected(selectedKeys);\n\n if (!props.checkDisabled) {\n await checkFieldValues(map(instances, props.fieldId), selectedKeys);\n } else {\n handleChange(instances);\n }\n };\n\n const handleInputChanged = (event: { target: { value: string } }): void => {\n setInputValue(event.target.value);\n };\n\n const handleInputBlur = async (event: {\n target: { value: string };\n }): Promise<void> => {\n const instanceIds = selectedInstances.valid.map(\n (instance) => instance.instanceId\n );\n const inputValue = event.target.value;\n if (inputValue) {\n if (!props.checkDisabled) {\n await checkInputValue(inputValue, instanceIds);\n } else {\n const fieldValues =\n props.fieldId === \"ip\"\n ? inputValue.match(\n /\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b(?:\\[[^[\\],;\\s]*\\])?/g\n )\n : inputValue.split(separator);\n\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n page_size: fieldValues.length,\n query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n },\n ...(props.query ? props.query : []),\n instanceIds.length\n ? {\n instanceId: {\n $in: instanceIds,\n },\n }\n : {},\n ],\n },\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n\n setSelectedInstances({\n valid: instances || [],\n invalid: [],\n });\n\n handleChange(instances);\n }\n } else {\n setSelectedInstances({\n valid: [],\n invalid: [],\n });\n\n handleChange([]);\n }\n\n setInputFocused(false);\n };\n\n const closeInvalidFieldValuesModal = (): void => {\n setSelectedInstances({\n valid: selectedInstances.valid,\n invalid: [],\n });\n setInputValue(\n selectedInstances.valid\n .map((instance) => instance[props.fieldId])\n .join(separator)\n );\n props.onChange?.(\n selectedInstances.valid.map((instance) => instance.instanceId)\n );\n };\n\n const text = props.selectFromText\n ? props.selectFromText\n : t(K.SELECT_FROM_CMDB);\n\n return (\n <div ref={ref}>\n <Modal\n title={t(K.TIP)}\n visible={selectedInstances.invalid.length !== 0}\n closable={false}\n maskClosable={false}\n footer={[\n <Button\n type=\"primary\"\n key=\"delete\"\n onClick={closeInvalidFieldValuesModal}\n >\n {t(K.DELETE)}\n </Button>,\n ]}\n onCancel={closeInvalidFieldValuesModal}\n >\n {props.objectId === \"HOST\" && props.fieldId === \"ip\"\n ? `${t(K.INVALID_OR_FORBIDDEN_IPS)}${selectedInstances.invalid.join(\n \", \"\n )}`\n : `${t(K.INVALID)}${fieldData.name}:${selectedInstances.invalid.join(\n \", \"\n )}`}\n </Modal>\n <InstanceListModal\n objectMap={props.objectMap}\n extraFilterBricks={props.extraFilterBricks}\n objectId={props.objectId}\n visible={visible}\n title={text}\n aq={props.query}\n presetConfigs={{ query: presetQuery, fieldIds: props.fields }}\n permission={permission}\n selectedRowKeys={selectedInstances.valid.map(\n (instance) => instance.instanceId\n )}\n onSelected={handleInstancesSelected}\n singleSelect={props.singleSelect}\n onCancel={closeSelectInstancesModal}\n defaultQuery={props.defaultQuery}\n pageSize={props.pageSize}\n pageSizeOptions={props.pageSizeOptions}\n showSizeChanger={props.showSizeChanger}\n hideSearchConditions={props.hideSearchConditions}\n advancedSearchDisabled={props.advancedSearchDisabled}\n data-testid=\"select-modal\"\n saveFieldsBackend={props.saveFieldsBackend}\n />\n <div className={style.cmdbInstancesInputFormWrapper}>\n <Input\n data-testid=\"field-value-input\"\n className={style.fieldInput}\n onChange={handleInputChanged}\n value={inputValue}\n onFocus={() => setInputFocused(true)}\n onBlur={handleInputBlur}\n allowClear={props.allowClear}\n disabled={props.inputDisabled}\n />\n <Button\n className={style.modalButton}\n onClick={openSelectInstancesModal}\n disabled={props.addButtonDisabled}\n >\n {text}\n </Button>\n </div>\n {props.previewEnabled && (\n <>\n <InstanceListModal\n objectMap={props.objectMap}\n extraFilterBricks={props.extraFilterBricks}\n objectId={props.objectId}\n visible={previewVisible}\n title={t(K.VIEW_SPECIFIC_INSTANCES)}\n aq={selectedInstancesQuery}\n presetConfigs={{ query: presetQuery, fieldIds: props.fields }}\n permission={permission}\n onCancel={() => setPreviewVisible(false)}\n defaultQuery={props.defaultQuery}\n searchDisabled\n advancedSearchDisabled\n aliveHostsDisabled\n relatedToMeDisabled\n moreButtonsDisabled\n selectDisabled\n pageSize={props.pageSize}\n pageSizeOptions={props.pageSizeOptions}\n showSizeChanger={props.showSizeChanger}\n data-testid=\"preview-modal\"\n />\n <Button\n type=\"link\"\n size=\"small\"\n disabled={!selectedInstancesQuery || inputFocused}\n onClick={() => setPreviewVisible(true)}\n data-testid=\"preview-button\"\n >\n {t(K.VIEW_SPECIFIC_INSTANCES)}\n </Button>\n </>\n )}\n </div>\n );\n};\n\nexport const CmdbInstancesInputFormItem = forwardRef<\n HTMLDivElement,\n CmdbInstancesInputFormItemProps\n>(LegacyCmdbInstancesInputFormItem);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CmdbInstancesInputFormItem.js","names":["_react","_interopRequireWildcard","require","_antd","_lodash","_InstanceListModal","_cmdbUtils","_cmdbSdk","_reactI18next","_constants","_cmdbInstancesInputFormModule","_interopRequireDefault","separator","LegacyCmdbInstancesInputFormItem","props","ref","t","useTranslation","NS_LIBS_CMDB_INSTANCES","presetQuery","permission","useMemo","objectId","checkAgentStatus","_agentStatus","checkPermission","push","fields","_props$fields","length","forEach","field","objectData","modifyModelData","objectMap","fieldData","__fieldList","find","__id","fieldId","visible","setVisible","useState","selectedInstances","setSelectedInstances","valid","invalid","inputValue","setInputValue","inputFocused","setInputFocused","previewVisible","setPreviewVisible","valueRef","useRef","selectedInstancesQuery","previewEnabled","instanceId","$in","map","instance","query","undefined","checkSelectedInstances","instances","InstanceApi_postSearch","page_size","list","instanceIdSet","Set","selectedInstancesMap","groupBy","selectedInstance","has","true","false","invalidSelectedInstance","updateSelected","instanceIds","page","instanceData","join","checkDisabled","useEffect","isEqual","current","value","handleChange","_props$onChange","_props$onChangeV","onChange","call","onChangeV2","checkFieldValues","fieldValues","$and","validSelectedInstances","filter","includes","validFieldValues","invalidFieldValues","fieldValue","checkInputValue","match","split","openSelectInstancesModal","closeSelectInstancesModal","handleInstancesSelected","selectedKeys","handleInputChanged","event","target","handleInputBlur","closeInvalidFieldValuesModal","_props$onChange2","text","selectFromText","K","SELECT_FROM_CMDB","default","createElement","Modal","title","TIP","closable","maskClosable","footer","Button","type","key","onClick","DELETE","onCancel","INVALID_OR_FORBIDDEN_IPS","INVALID","name","InstanceListModal","extraFilterBricks","aq","presetConfigs","fieldIds","selectedRowKeys","onSelected","singleSelect","defaultQuery","pageSize","pageSizeOptions","showSizeChanger","hideSearchConditions","advancedSearchDisabled","saveFieldsBackend","className","style","cmdbInstancesInputFormWrapper","Input","fieldInput","onFocus","onBlur","allowClear","disabled","inputDisabled","modalButton","addButtonDisabled","Fragment","VIEW_SPECIFIC_INSTANCES","searchDisabled","aliveHostsDisabled","relatedToMeDisabled","moreButtonsDisabled","selectDisabled","size","exports","CmdbInstancesInputFormItem","forwardRef"],"sources":["../../../src/cmdb-instances-input-form/CmdbInstancesInputFormItem.tsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\n\nimport React, { forwardRef, useState, useEffect, useMemo, useRef } from \"react\";\nimport { Input, Button, Modal } from \"antd\";\nimport { groupBy, isEqual, map } from \"lodash\";\n\nimport { InstanceListModal } from \"../instance-list-modal/InstanceListModal\";\nimport { modifyModelData, Query } from \"@next-libs/cmdb-utils\";\nimport { CmdbModels, InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\n\nimport style from \"./cmdb-instances-input-form.module.css\";\nimport { UseBrickConf } from \"@next-core/brick-types\";\n\nconst separator = \" \";\n\nexport interface CmdbInstancesInputFormItemProps {\n selectFromText?: string;\n objectMap?: { [objectId: string]: Partial<CmdbModels.ModelCmdbObject> };\n objectId?: string;\n fieldId?: string;\n fields?: string[];\n singleSelect?: boolean;\n inputDisabled?: boolean;\n checkDisabled?: boolean;\n checkAgentStatus?: boolean;\n checkPermission?: boolean;\n selectedInstanceIds?: string[];\n value?: string[];\n children?: React.ReactNode;\n query?: { [fieldId: string]: any }[];\n onChange?: (value: string[]) => void;\n onChangeV2?: (value: any[]) => void;\n allowClear?: boolean;\n defaultQuery?: { [fieldId: string]: any }[];\n addButtonDisabled?: boolean;\n previewEnabled?: boolean;\n pageSize?: number;\n pageSizeOptions?: string[];\n showSizeChanger?: boolean;\n hideSearchConditions?: boolean;\n advancedSearchDisabled?: boolean;\n extraFilterBricks?: {\n useBrick: UseBrickConf;\n };\n saveFieldsBackend?: boolean;\n}\n\nexport const LegacyCmdbInstancesInputFormItem = (\n props: CmdbInstancesInputFormItemProps,\n ref: React.Ref<HTMLDivElement>\n): React.ReactElement => {\n const { t } = useTranslation(NS_LIBS_CMDB_INSTANCES);\n\n const { presetQuery, permission } = useMemo(() => {\n const presetQuery = {} as any;\n const permission: string[] = [];\n\n if (props.objectId === \"HOST\") {\n if (props.checkAgentStatus) {\n presetQuery._agentStatus = \"正常\";\n }\n if (props.checkPermission) {\n permission.push(\"operate\");\n }\n }\n\n return { presetQuery, permission };\n }, [props.objectId, props.checkAgentStatus, props.checkPermission]);\n const fields = useMemo(() => {\n if (props.fields?.length) {\n const fields: Record<string, boolean> = {};\n\n props.fields.forEach((field) => {\n fields[field] = true;\n });\n\n return fields;\n }\n }, [props.fields]);\n\n const objectData = modifyModelData(props.objectMap[props.objectId]);\n const fieldData = objectData.__fieldList.find(\n (field) => field.__id === props.fieldId\n );\n\n const [visible, setVisible] = useState(false);\n const [selectedInstances, setSelectedInstances] = useState({\n valid: [],\n invalid: [],\n });\n const [inputValue, setInputValue] = useState(\"\");\n const [inputFocused, setInputFocused] = useState(false);\n const [previewVisible, setPreviewVisible] = useState(false);\n const valueRef = useRef<string[]>([]);\n const selectedInstancesQuery = useMemo<Query[]>(\n () =>\n props.previewEnabled && selectedInstances.valid.length > 0\n ? [\n {\n instanceId: {\n $in: selectedInstances.valid.map(\n (instance) => instance.instanceId\n ),\n },\n ...presetQuery,\n },\n ...(props.query ? props.query : []),\n ]\n : undefined,\n [selectedInstances.valid, presetQuery, props.query]\n );\n\n const checkSelectedInstances = async (\n selectedInstances: any[]\n ): Promise<string[]> => {\n if (selectedInstances) {\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n page_size: selectedInstances.length,\n query: {\n instanceId: {\n $in: selectedInstances.map((instance) => instance.instanceId),\n },\n ...presetQuery,\n },\n permission,\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n const instanceIdSet = new Set(\n instances.map((instance) => instance.instanceId)\n );\n\n const selectedInstancesMap = groupBy(\n selectedInstances,\n (selectedInstance) => instanceIdSet.has(selectedInstance.instanceId)\n );\n\n setSelectedInstances({\n valid: selectedInstancesMap.true || [],\n invalid: (selectedInstancesMap.false || []).map(\n (invalidSelectedInstance) => invalidSelectedInstance[props.fieldId]\n ),\n });\n\n return selectedInstancesMap.true ? selectedInstancesMap.true : [];\n }\n };\n\n const updateSelected = async (instanceIds: string[]): Promise<any[]> => {\n let selectedInstances: any[] = [];\n if (instanceIds?.length) {\n selectedInstances = (\n await InstanceApi_postSearch(props.objectId, {\n page: 1,\n page_size: instanceIds.length,\n query: {\n instanceId: {\n $in: instanceIds,\n },\n },\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n }\n\n setInputValue(\n selectedInstances\n .map((instanceData) => instanceData[props.fieldId])\n .join(separator)\n );\n\n let instances = selectedInstances;\n if (selectedInstances.length) {\n if (!props.checkDisabled) {\n instances = await checkSelectedInstances(selectedInstances);\n } else {\n setSelectedInstances({ valid: selectedInstances, invalid: [] });\n }\n } else {\n setSelectedInstances({ valid: [], invalid: [] });\n }\n return instances;\n };\n\n useEffect(() => {\n if (!isEqual(valueRef.current, props.value)) {\n valueRef.current = props.value;\n updateSelected(props.value);\n }\n }, [props.value]);\n\n const handleChange = (instances: any[]): void => {\n const instanceIds = instances.map((instance) => instance.instanceId);\n valueRef.current = instanceIds;\n props.onChange?.(instanceIds);\n props.onChangeV2?.(instances);\n };\n\n const checkFieldValues = async (\n fieldValues: string[],\n instanceIds?: string[]\n ): Promise<void> => {\n if (fieldValues) {\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n page_size: fieldValues.length,\n query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n ...presetQuery,\n },\n ...(props.query ? props.query : []),\n instanceIds?.length\n ? {\n instanceId: {\n $in: instanceIds,\n },\n }\n : {}, //处理重复ip的情况\n ],\n },\n permission,\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n\n const validSelectedInstances = instances.filter((instance) =>\n fieldValues.includes(instance[props.fieldId])\n );\n\n const validFieldValues = validSelectedInstances.map(\n (instance) => instance[props.fieldId]\n );\n const invalidFieldValues = fieldValues.filter(\n (fieldValue) => !validFieldValues.includes(fieldValue)\n );\n\n setSelectedInstances({\n valid: validSelectedInstances || [],\n invalid: invalidFieldValues || [],\n });\n\n !invalidFieldValues.length && handleChange(validSelectedInstances);\n }\n };\n\n const checkInputValue = async (\n inputValue: string,\n instanceIds: string[]\n ): Promise<void> => {\n const fieldValues =\n props.fieldId === \"ip\"\n ? inputValue.match(\n /\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b(?:\\[[^[\\],;\\s]*\\])?/g\n )\n : inputValue.split(separator);\n\n checkFieldValues(fieldValues, instanceIds);\n };\n\n const openSelectInstancesModal = (): void => {\n setVisible(true);\n };\n\n const closeSelectInstancesModal = (): void => {\n setVisible(false);\n };\n\n const handleInstancesSelected = async (\n selectedKeys: string[]\n ): Promise<void> => {\n closeSelectInstancesModal();\n\n const instances = await updateSelected(selectedKeys);\n\n if (!props.checkDisabled) {\n await checkFieldValues(map(instances, props.fieldId), selectedKeys);\n } else {\n handleChange(instances);\n }\n };\n\n const handleInputChanged = (event: { target: { value: string } }): void => {\n setInputValue(event.target.value);\n };\n\n const handleInputBlur = async (event: {\n target: { value: string };\n }): Promise<void> => {\n const instanceIds = selectedInstances.valid.map(\n (instance) => instance.instanceId\n );\n const inputValue = event.target.value;\n if (inputValue) {\n if (!props.checkDisabled) {\n await checkInputValue(inputValue, instanceIds);\n } else {\n const fieldValues =\n props.fieldId === \"ip\"\n ? inputValue.match(\n /\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b(?:\\[[^[\\],;\\s]*\\])?/g\n )\n : inputValue.split(separator);\n\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n page_size: fieldValues.length,\n query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n },\n ...(props.query ? props.query : []),\n instanceIds.length\n ? {\n instanceId: {\n $in: instanceIds,\n },\n }\n : {},\n ],\n },\n fields: fields || {\n instanceId: true,\n [props.fieldId]: true,\n },\n })\n ).list;\n\n setSelectedInstances({\n valid: instances || [],\n invalid: [],\n });\n\n handleChange(instances);\n }\n } else {\n setSelectedInstances({\n valid: [],\n invalid: [],\n });\n\n handleChange([]);\n }\n\n setInputFocused(false);\n };\n\n const closeInvalidFieldValuesModal = (): void => {\n setSelectedInstances({\n valid: selectedInstances.valid,\n invalid: [],\n });\n setInputValue(\n selectedInstances.valid\n .map((instance) => instance[props.fieldId])\n .join(separator)\n );\n props.onChange?.(\n selectedInstances.valid.map((instance) => instance.instanceId)\n );\n };\n\n const text = props.selectFromText\n ? props.selectFromText\n : t(K.SELECT_FROM_CMDB);\n\n return (\n <div ref={ref}>\n <Modal\n title={t(K.TIP)}\n visible={selectedInstances.invalid.length !== 0}\n closable={false}\n maskClosable={false}\n footer={[\n <Button\n type=\"primary\"\n key=\"delete\"\n onClick={closeInvalidFieldValuesModal}\n >\n {t(K.DELETE)}\n </Button>,\n ]}\n onCancel={closeInvalidFieldValuesModal}\n >\n {props.objectId === \"HOST\" && props.fieldId === \"ip\"\n ? `${t(K.INVALID_OR_FORBIDDEN_IPS)}${selectedInstances.invalid.join(\n \", \"\n )}`\n : `${t(K.INVALID)}${fieldData.name}:${selectedInstances.invalid.join(\n \", \"\n )}`}\n </Modal>\n <InstanceListModal\n objectMap={props.objectMap}\n extraFilterBricks={props.extraFilterBricks}\n objectId={props.objectId}\n visible={visible}\n title={text}\n aq={props.query}\n presetConfigs={{ query: presetQuery, fieldIds: props.fields }}\n permission={permission}\n selectedRowKeys={selectedInstances.valid.map(\n (instance) => instance.instanceId\n )}\n onSelected={handleInstancesSelected}\n singleSelect={props.singleSelect}\n onCancel={closeSelectInstancesModal}\n defaultQuery={props.defaultQuery}\n pageSize={props.pageSize}\n pageSizeOptions={props.pageSizeOptions}\n showSizeChanger={props.showSizeChanger}\n hideSearchConditions={props.hideSearchConditions}\n advancedSearchDisabled={props.advancedSearchDisabled}\n data-testid=\"select-modal\"\n saveFieldsBackend={props.saveFieldsBackend}\n />\n <div className={style.cmdbInstancesInputFormWrapper}>\n <Input\n data-testid=\"field-value-input\"\n className={style.fieldInput}\n onChange={handleInputChanged}\n value={inputValue}\n onFocus={() => setInputFocused(true)}\n onBlur={handleInputBlur}\n allowClear={props.allowClear}\n disabled={props.inputDisabled}\n />\n <Button\n className={style.modalButton}\n onClick={openSelectInstancesModal}\n disabled={props.addButtonDisabled}\n >\n {text}\n </Button>\n </div>\n {props.previewEnabled && (\n <>\n <InstanceListModal\n objectMap={props.objectMap}\n extraFilterBricks={props.extraFilterBricks}\n objectId={props.objectId}\n visible={previewVisible}\n title={t(K.VIEW_SPECIFIC_INSTANCES)}\n aq={selectedInstancesQuery}\n presetConfigs={{ query: presetQuery, fieldIds: props.fields }}\n permission={permission}\n onCancel={() => setPreviewVisible(false)}\n defaultQuery={props.defaultQuery}\n searchDisabled\n advancedSearchDisabled\n aliveHostsDisabled\n relatedToMeDisabled\n moreButtonsDisabled\n selectDisabled\n pageSize={props.pageSize}\n pageSizeOptions={props.pageSizeOptions}\n showSizeChanger={props.showSizeChanger}\n data-testid=\"preview-modal\"\n />\n <Button\n type=\"link\"\n size=\"small\"\n disabled={!selectedInstancesQuery || inputFocused}\n onClick={() => setPreviewVisible(true)}\n data-testid=\"preview-button\"\n >\n {t(K.VIEW_SPECIFIC_INSTANCES)}\n </Button>\n </>\n )}\n </div>\n );\n};\n\nexport const CmdbInstancesInputFormItem = forwardRef<\n HTMLDivElement,\n CmdbInstancesInputFormItemProps\n>(LegacyCmdbInstancesInputFormItem);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CmdbInstancesSelectPanel.js","names":["isCmdbInstancesSelectPanelPropsWithObjectMap","props","isNil","objectMap","CmdbInstancesSelectPanel","ref","externalPostSearchV3","useProvider","cache","externalGetObjectRef","modelData","objectId","isFilterView","hideModelData","view","hide_columns","attrList","filter","item","includes","id","relation_list","left_id","left_object_id","right_id","right_object_id","displayedSelectedInstancesMaxNumber","previewMaxNumber","selectedInstanceList","setSelectedInstanceList","useState","partialSelectedInstances","setPartialSelectedInstances","addInstancesModal","setAddInstancesModal","visible","allSelectedInstancesModal","setAllSelectedInstancesModal","modelMap","setModelMap","externalRequestParams","useMemo","sourceId","externalSourceId","ignore_missing_field_error","fields","length","fetchInstances","instanceIdList","instances","instancesParams","query","instanceId","$in","page","page_size","reduce","prev","next","useExternalCmdbApi","list","InstanceApi_postSearch","toLoadInstanceIds","value","map","i","isObject","useEffect","getModelMap","objectRef","ref_object","CmdbObjectApi_getObjectRef","data","keyBy","initInstances","isOperate","slice","onFetchedInstances","isEmpty","sort","join","openAddInstancesModal","closeAddInstancesModal","openAllSelectedInstancesModal","closeAllSelectedInstancesModal","handleInstancesSelected","selectedKeys","onChange","fieldIds","modifyModelData","attr","showPreview","cs","classnames","style","selectedInstancesTableWrapper","withPreview","relation","relationLimit","right_max","$size","$lt","instanceQuery","wrapper","modalTitle","i18n","t","NS_LIBS_CMDB_INSTANCES","K","FILTER_FROM_CMDB","name","instance","singleSelect","showBindButton","bindButtonDisabled","bindButtonText","bindEvent","addInstancesModalPageSize","searchDisabled","advancedSearchDisabled","ipCopy","showCloseBtn","showSizeChanger","pageSizeOptions","aq","saveFieldsBackend","VIEW_ALL_SELECTED_INSTANCES","textAlign","marginBottom","isEqual","addButton","addTitle","useModelName","CHOOSE_INSTANCE_NAME","CHOOSE_INSTANCE","showDetailUrl","detailUrlTemplates","showPagination","pagination","v","showAllSelectedInstancesButton","VIEW_ALL_DATA","count"],"sources":["../../../src/cmdb-instances-select-panel/CmdbInstancesSelectPanel.tsx"],"sourcesContent":["import React, { useState, useEffect, useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport {\n CmdbModels,\n InstanceApi_postSearch,\n CmdbObjectApi_getObjectRef,\n} from \"@next-sdk/cmdb-sdk\";\nimport { InstanceListTable } from \"../instance-list-table\";\nimport { InstanceListModal } from \"../instance-list-modal/InstanceListModal\";\nimport {\n modifyModelData,\n ModifiedModelObjectRelation,\n Query,\n} from \"@next-libs/cmdb-utils\";\nimport style from \"./style.module.css\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport { keyBy, isEqual, isNil, isObject, isEmpty } from \"lodash\";\nimport { Spin } from \"antd\";\nimport { useProvider } from \"@next-core/brick-kit\";\n\nexport interface BaseCmdbInstancesSelectPanelProps {\n objectId: string;\n value?: any[];\n onChange?: (instanceList: any[]) => void;\n instanceQuery?: any;\n fields?: string[];\n singleSelect?: boolean;\n showBindButton?: boolean;\n bindButtonDisabled?: boolean;\n bindButtonText?: string;\n bindEvent?: () => void;\n addTitle?: React.ReactNode | string;\n modalTitle?: React.ReactNode | string;\n previewMaxNumber?: number;\n addInstancesModalPageSize?: number;\n showSizeChanger?: boolean;\n pageSizeOptions?: string[];\n isOperate?: boolean; //cmdb实例列表支持删除实例\n showDetailUrl?: boolean;\n isFilterView?: boolean; //是否过滤视图属性\n onFetchedInstances?: (instanceList: any[]) => void; // objectId改变后触发\n relation?: Partial<ModifiedModelObjectRelation>;\n searchDisabled?: boolean;\n advancedSearchDisabled?: boolean;\n showPagination?: boolean;\n aq?: Query[];\n saveFieldsBackend?: boolean;\n useModelName?: boolean;\n useExternalCmdbApi?: boolean;\n externalSourceId?: string;\n}\n\nexport interface CmdbInstancesSelectPanelPropsWithObjectMap\n extends BaseCmdbInstancesSelectPanelProps {\n objectMap: Record<string, Partial<CmdbModels.ModelCmdbObject>>;\n ipCopy?: boolean;\n showSizeChanger?: boolean;\n showCloseBtn?: boolean;\n pageSizeOptions?: string[];\n saveFieldsBackend?: boolean;\n}\n\nexport interface CmdbInstancesSelectPanelPropsWithModelData\n extends BaseCmdbInstancesSelectPanelProps {\n modelData: Partial<CmdbModels.ModelCmdbObject>;\n ipCopy?: boolean;\n showSizeChanger?: boolean;\n showCloseBtn?: boolean;\n pageSizeOptions?: string[];\n saveFieldsBackend?: boolean;\n}\n\nexport type CmdbInstancesSelectPanelProps =\n | CmdbInstancesSelectPanelPropsWithObjectMap\n | CmdbInstancesSelectPanelPropsWithModelData;\n\nexport function isCmdbInstancesSelectPanelPropsWithObjectMap(\n props: CmdbInstancesSelectPanelProps\n): props is CmdbInstancesSelectPanelPropsWithObjectMap {\n return !isNil(\n (props as CmdbInstancesSelectPanelPropsWithObjectMap).objectMap\n );\n}\n\nexport function CmdbInstancesSelectPanel(\n props: CmdbInstancesSelectPanelProps,\n ref: any\n): React.ReactElement {\n // 当useExternalCmdbApi为true, 外部接口才调用\n const externalPostSearchV3 = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyPostSearchV3:1.0.1\",\n { cache: false }\n );\n const externalGetObjectRef = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyGetObjectRef:1.0.0\",\n { cache: false }\n );\n\n let modelData: Partial<CmdbModels.ModelCmdbObject>;\n if (isCmdbInstancesSelectPanelPropsWithObjectMap(props)) {\n modelData = props.objectMap[props.objectId];\n } else {\n modelData = props.modelData;\n }\n\n if (props.isFilterView) {\n //过滤掉视图不可见字段\n const hideModelData = modelData?.view?.hide_columns || [];\n modelData = {\n ...modelData,\n attrList: modelData.attrList.filter(\n (item: any) => !hideModelData.includes(item.id)\n ),\n relation_list: modelData.relation_list.filter(\n (item: any) =>\n !(\n (hideModelData.includes(item.left_id) &&\n item.left_object_id === props.objectId) ||\n (hideModelData.includes(item.right_id) &&\n item.right_object_id === props.objectId)\n )\n ),\n };\n }\n\n const displayedSelectedInstancesMaxNumber = props.previewMaxNumber ?? 5;\n\n const [selectedInstanceList, setSelectedInstanceList] = useState([]);\n const [partialSelectedInstances, setPartialSelectedInstances] = useState([]);\n // const [instanceTableData, setInstanceTableData] = useState({list: []})\n const [addInstancesModal, setAddInstancesModal] = useState({\n visible: false,\n });\n const [allSelectedInstancesModal, setAllSelectedInstancesModal] = useState({\n visible: false,\n });\n const [modelMap, setModelMap] = useState({});\n\n const externalRequestParams = useMemo(() => {\n return {\n objectId: props.objectId,\n sourceId: props.externalSourceId,\n ignore_missing_field_error: true,\n fields: props.fields?.length ? props.fields : [\"*\"],\n };\n }, [props.objectId, props.externalSourceId, props.fields]);\n\n const fetchInstances = async (instanceIdList: string[]): Promise<any[]> => {\n let instances: any[] = [];\n const instancesParams = {\n query: {\n instanceId: {\n $in: instanceIdList,\n },\n },\n page: 1,\n page_size: instanceIdList.length,\n // todo(ice): selected confirm with instances\n fields: props.fields?.length\n ? props.fields.reduce((prev, next) => ({ ...prev, [next]: true }), {})\n : { \"*\": true },\n ...(props.useExternalCmdbApi ? externalRequestParams : {}),\n };\n if (instanceIdList?.length) {\n // istanbul ignore if\n if (props.useExternalCmdbApi) {\n instances = (await externalPostSearchV3.query([instancesParams])).list;\n } else {\n instances = (\n await InstanceApi_postSearch(props.objectId, instancesParams)\n ).list;\n }\n }\n\n return instances;\n };\n const toLoadInstanceIds =\n props.value?.map((i) => (isObject(i) ? (i as any).instanceId : i)) || [];\n\n useEffect(() => {\n const getModelMap = async (): Promise<void> => {\n let modelMap: Record<string, Partial<CmdbModels.ModelCmdbObject>>;\n let objectRef;\n if (isCmdbInstancesSelectPanelPropsWithObjectMap(props)) {\n modelMap = props.objectMap;\n } else {\n if (props.useExternalCmdbApi) {\n objectRef = await externalGetObjectRef.query([\n {\n ref_object: props.objectId,\n ...externalRequestParams,\n },\n ]);\n } else {\n objectRef = (\n (await CmdbObjectApi_getObjectRef({\n ref_object: props.objectId,\n })) as any\n )?.data;\n }\n modelMap = keyBy(objectRef, \"objectId\");\n }\n setModelMap(modelMap);\n };\n getModelMap();\n }, [props.objectId, props.useExternalCmdbApi, props.externalSourceId]);\n\n useEffect(() => {\n let instances = [];\n\n const initInstances = async (): Promise<void> => {\n instances = await fetchInstances(toLoadInstanceIds);\n setSelectedInstanceList(instances);\n setPartialSelectedInstances(\n props?.isOperate\n ? instances\n : instances.slice(0, displayedSelectedInstancesMaxNumber)\n );\n props.onFetchedInstances?.(instances);\n };\n if (!isEmpty(toLoadInstanceIds)) {\n initInstances();\n } else {\n setSelectedInstanceList([]);\n setPartialSelectedInstances([]);\n }\n }, [toLoadInstanceIds.sort().join()]);\n const openAddInstancesModal = () => {\n setAddInstancesModal({ visible: true });\n };\n\n const closeAddInstancesModal = () => {\n setAddInstancesModal({ visible: false });\n };\n\n const openAllSelectedInstancesModal = () => {\n setAllSelectedInstancesModal({ visible: true });\n };\n\n const closeAllSelectedInstancesModal = () => {\n setAllSelectedInstancesModal({ visible: false });\n };\n\n const handleInstancesSelected = async (selectedKeys: string[]) => {\n closeAddInstancesModal();\n\n const instances = await fetchInstances(selectedKeys);\n setSelectedInstanceList(instances);\n setPartialSelectedInstances(\n props?.isOperate\n ? instances\n : instances.slice(0, displayedSelectedInstancesMaxNumber)\n );\n props.onChange?.(instances);\n };\n\n const fieldIds = modifyModelData(modelData).attrList.map(\n (attr: any) => attr.id\n );\n const showPreview =\n selectedInstanceList.length > displayedSelectedInstancesMaxNumber;\n const cs = classnames({\n [style.selectedInstancesTableWrapper]: true,\n [style.withPreview]: showPreview,\n });\n const { relation } = props;\n let relationLimit;\n if (relation?.right_max === 1) {\n relationLimit = { [relation.right_id]: { $size: { $lt: 1 } } };\n }\n const query = props.instanceQuery ?? relationLimit;\n return (\n <div className={style.wrapper} ref={ref}>\n <InstanceListModal\n objectMap={modelMap}\n objectId={props.objectId}\n visible={addInstancesModal.visible}\n title={\n props.modalTitle ??\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.FILTER_FROM_CMDB}`, {\n name: modelData.name,\n })\n }\n selectedRowKeys={selectedInstanceList.map(\n (instance) => instance.instanceId\n )}\n onSelected={handleInstancesSelected}\n onCancel={closeAddInstancesModal}\n singleSelect={props.singleSelect}\n presetConfigs={{\n query,\n fieldIds: props.fields,\n }}\n showBindButton={props.showBindButton}\n bindButtonDisabled={props.bindButtonDisabled}\n bindButtonText={props.bindButtonText}\n bindEvent={props.bindEvent}\n pageSize={props.addInstancesModalPageSize}\n searchDisabled={props.searchDisabled}\n advancedSearchDisabled={props.advancedSearchDisabled}\n ipCopy={props.ipCopy}\n showCloseBtn={props.showCloseBtn}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n aq={props.aq}\n saveFieldsBackend={props.saveFieldsBackend}\n useExternalCmdbApi={props.useExternalCmdbApi}\n externalSourceId={props.externalSourceId}\n />\n <InstanceListModal\n objectMap={modelMap}\n objectId={props.objectId}\n visible={allSelectedInstancesModal.visible}\n showBindButton={props.showBindButton}\n bindButtonDisabled={props.bindButtonDisabled}\n bindButtonText={props.bindButtonText}\n bindEvent={props.bindEvent}\n title={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.VIEW_ALL_SELECTED_INSTANCES}`\n )}\n presetConfigs={{\n query: {\n instanceId: {\n $in: selectedInstanceList.map((instance) => instance.instanceId),\n },\n },\n fieldIds: props.fields,\n }}\n selectDisabled={!props.ipCopy}\n ipCopy={props.ipCopy}\n showCloseBtn={props.ipCopy ? true : props.showCloseBtn}\n pageSize={props.addInstancesModalPageSize}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n onCancel={closeAllSelectedInstancesModal}\n saveFieldsBackend={props.saveFieldsBackend}\n useExternalCmdbApi={props.useExternalCmdbApi}\n externalSourceId={props.externalSourceId}\n />\n <Spin\n style={{ textAlign: \"left\", marginBottom: \"12px\" }}\n spinning={isEqual(modelMap, {})}\n >\n <a\n className={style.addButton}\n style={{\n marginBottom: \"20px\",\n }}\n onClick={openAddInstancesModal}\n >\n {props.addTitle ?? props.useModelName\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CHOOSE_INSTANCE_NAME}`, {\n name: modelData.name,\n })\n : i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CHOOSE_INSTANCE}`)}\n </a>\n </Spin>\n <div className={cs}>\n <InstanceListTable\n {...(props.showDetailUrl\n ? {\n detailUrlTemplates: {\n [props.objectId]:\n \"/next-cmdb-instance-management/next/#{objectId}/instance/#{instanceId}\",\n },\n }\n : {})}\n idObjectMap={modelMap}\n modelData={modelData}\n instanceListData={{ list: partialSelectedInstances }}\n fieldIds={props.fields || fieldIds}\n selectDisabled={true}\n sortDisabled={true}\n configProps={\n props.showPagination && partialSelectedInstances.length > 10\n ? { pagination: { showSizeChanger: true } }\n : { pagination: false }\n }\n //\n isOperate={props.isOperate}\n useExternalCmdbApi={props.useExternalCmdbApi}\n externalSourceId={props.externalSourceId}\n handleDeleteFunction={(v: any) => {\n setSelectedInstanceList(v);\n setPartialSelectedInstances(v);\n props.onChange?.(v);\n }}\n target={\"_blank\"}\n ></InstanceListTable>\n {!props?.isOperate && showPreview && (\n <div\n className={style.showAllSelectedInstancesButton}\n onClick={openAllSelectedInstancesModal}\n >\n <a>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.VIEW_ALL_DATA}`, {\n count: selectedInstanceList.length,\n })}\n </a>\n </div>\n )}\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CmdbInstancesSelectPanel.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_cmdbSdk","_instanceListTable","_InstanceListModal","_cmdbUtils","_styleModule","_i18next","_constants","_lodash","_antd","_brickKit","isCmdbInstancesSelectPanelPropsWithObjectMap","props","isNil","objectMap","CmdbInstancesSelectPanel","ref","_props$previewMaxNumb","_props$value","_props$instanceQuery","_props$modalTitle","_props$addTitle","externalPostSearchV3","useProvider","cache","externalGetObjectRef","modelData","objectId","isFilterView","_modelData","_modelData$view","hideModelData","view","hide_columns","attrList","filter","item","includes","id","relation_list","left_id","left_object_id","right_id","right_object_id","displayedSelectedInstancesMaxNumber","previewMaxNumber","selectedInstanceList","setSelectedInstanceList","useState","partialSelectedInstances","setPartialSelectedInstances","addInstancesModal","setAddInstancesModal","visible","allSelectedInstancesModal","setAllSelectedInstancesModal","modelMap","setModelMap","externalRequestParams","useMemo","_props$fields","sourceId","externalSourceId","ignore_missing_field_error","fields","length","fetchInstances","instanceIdList","_props$fields2","instances","instancesParams","query","instanceId","$in","page","page_size","reduce","prev","next","useExternalCmdbApi","list","InstanceApi_postSearch","toLoadInstanceIds","value","map","i","isObject","useEffect","getModelMap","objectRef","ref_object","_await$CmdbObjectApi_","CmdbObjectApi_getObjectRef","data","keyBy","initInstances","_props$onFetchedInsta","isOperate","slice","onFetchedInstances","call","isEmpty","sort","join","openAddInstancesModal","closeAddInstancesModal","openAllSelectedInstancesModal","closeAllSelectedInstancesModal","handleInstancesSelected","selectedKeys","_props$onChange","onChange","fieldIds","modifyModelData","attr","showPreview","cs","classnames","style","selectedInstancesTableWrapper","withPreview","relation","relationLimit","right_max","$size","$lt","instanceQuery","default","createElement","className","wrapper","InstanceListModal","title","modalTitle","i18n","t","NS_LIBS_CMDB_INSTANCES","K","FILTER_FROM_CMDB","name","selectedRowKeys","instance","onSelected","onCancel","singleSelect","presetConfigs","showBindButton","bindButtonDisabled","bindButtonText","bindEvent","pageSize","addInstancesModalPageSize","searchDisabled","advancedSearchDisabled","ipCopy","showCloseBtn","showSizeChanger","pageSizeOptions","aq","saveFieldsBackend","VIEW_ALL_SELECTED_INSTANCES","selectDisabled","Spin","textAlign","marginBottom","spinning","isEqual","addButton","onClick","addTitle","useModelName","CHOOSE_INSTANCE_NAME","CHOOSE_INSTANCE","InstanceListTable","_extends2","showDetailUrl","detailUrlTemplates","idObjectMap","instanceListData","sortDisabled","configProps","showPagination","pagination","handleDeleteFunction","v","_props$onChange2","target","showAllSelectedInstancesButton","VIEW_ALL_DATA","count"],"sources":["../../../src/cmdb-instances-select-panel/CmdbInstancesSelectPanel.tsx"],"sourcesContent":["import React, { useState, useEffect, useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport {\n CmdbModels,\n InstanceApi_postSearch,\n CmdbObjectApi_getObjectRef,\n} from \"@next-sdk/cmdb-sdk\";\nimport { InstanceListTable } from \"../instance-list-table\";\nimport { InstanceListModal } from \"../instance-list-modal/InstanceListModal\";\nimport {\n modifyModelData,\n ModifiedModelObjectRelation,\n Query,\n} from \"@next-libs/cmdb-utils\";\nimport style from \"./style.module.css\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport { keyBy, isEqual, isNil, isObject, isEmpty } from \"lodash\";\nimport { Spin } from \"antd\";\nimport { useProvider } from \"@next-core/brick-kit\";\n\nexport interface BaseCmdbInstancesSelectPanelProps {\n objectId: string;\n value?: any[];\n onChange?: (instanceList: any[]) => void;\n instanceQuery?: any;\n fields?: string[];\n singleSelect?: boolean;\n showBindButton?: boolean;\n bindButtonDisabled?: boolean;\n bindButtonText?: string;\n bindEvent?: () => void;\n addTitle?: React.ReactNode | string;\n modalTitle?: React.ReactNode | string;\n previewMaxNumber?: number;\n addInstancesModalPageSize?: number;\n showSizeChanger?: boolean;\n pageSizeOptions?: string[];\n isOperate?: boolean; //cmdb实例列表支持删除实例\n showDetailUrl?: boolean;\n isFilterView?: boolean; //是否过滤视图属性\n onFetchedInstances?: (instanceList: any[]) => void; // objectId改变后触发\n relation?: Partial<ModifiedModelObjectRelation>;\n searchDisabled?: boolean;\n advancedSearchDisabled?: boolean;\n showPagination?: boolean;\n aq?: Query[];\n saveFieldsBackend?: boolean;\n useModelName?: boolean;\n useExternalCmdbApi?: boolean;\n externalSourceId?: string;\n}\n\nexport interface CmdbInstancesSelectPanelPropsWithObjectMap\n extends BaseCmdbInstancesSelectPanelProps {\n objectMap: Record<string, Partial<CmdbModels.ModelCmdbObject>>;\n ipCopy?: boolean;\n showSizeChanger?: boolean;\n showCloseBtn?: boolean;\n pageSizeOptions?: string[];\n saveFieldsBackend?: boolean;\n}\n\nexport interface CmdbInstancesSelectPanelPropsWithModelData\n extends BaseCmdbInstancesSelectPanelProps {\n modelData: Partial<CmdbModels.ModelCmdbObject>;\n ipCopy?: boolean;\n showSizeChanger?: boolean;\n showCloseBtn?: boolean;\n pageSizeOptions?: string[];\n saveFieldsBackend?: boolean;\n}\n\nexport type CmdbInstancesSelectPanelProps =\n | CmdbInstancesSelectPanelPropsWithObjectMap\n | CmdbInstancesSelectPanelPropsWithModelData;\n\nexport function isCmdbInstancesSelectPanelPropsWithObjectMap(\n props: CmdbInstancesSelectPanelProps\n): props is CmdbInstancesSelectPanelPropsWithObjectMap {\n return !isNil(\n (props as CmdbInstancesSelectPanelPropsWithObjectMap).objectMap\n );\n}\n\nexport function CmdbInstancesSelectPanel(\n props: CmdbInstancesSelectPanelProps,\n ref: any\n): React.ReactElement {\n // 当useExternalCmdbApi为true, 外部接口才调用\n const externalPostSearchV3 = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyPostSearchV3:1.0.1\",\n { cache: false }\n );\n const externalGetObjectRef = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyGetObjectRef:1.0.0\",\n { cache: false }\n );\n\n let modelData: Partial<CmdbModels.ModelCmdbObject>;\n if (isCmdbInstancesSelectPanelPropsWithObjectMap(props)) {\n modelData = props.objectMap[props.objectId];\n } else {\n modelData = props.modelData;\n }\n\n if (props.isFilterView) {\n //过滤掉视图不可见字段\n const hideModelData = modelData?.view?.hide_columns || [];\n modelData = {\n ...modelData,\n attrList: modelData.attrList.filter(\n (item: any) => !hideModelData.includes(item.id)\n ),\n relation_list: modelData.relation_list.filter(\n (item: any) =>\n !(\n (hideModelData.includes(item.left_id) &&\n item.left_object_id === props.objectId) ||\n (hideModelData.includes(item.right_id) &&\n item.right_object_id === props.objectId)\n )\n ),\n };\n }\n\n const displayedSelectedInstancesMaxNumber = props.previewMaxNumber ?? 5;\n\n const [selectedInstanceList, setSelectedInstanceList] = useState([]);\n const [partialSelectedInstances, setPartialSelectedInstances] = useState([]);\n // const [instanceTableData, setInstanceTableData] = useState({list: []})\n const [addInstancesModal, setAddInstancesModal] = useState({\n visible: false,\n });\n const [allSelectedInstancesModal, setAllSelectedInstancesModal] = useState({\n visible: false,\n });\n const [modelMap, setModelMap] = useState({});\n\n const externalRequestParams = useMemo(() => {\n return {\n objectId: props.objectId,\n sourceId: props.externalSourceId,\n ignore_missing_field_error: true,\n fields: props.fields?.length ? props.fields : [\"*\"],\n };\n }, [props.objectId, props.externalSourceId, props.fields]);\n\n const fetchInstances = async (instanceIdList: string[]): Promise<any[]> => {\n let instances: any[] = [];\n const instancesParams = {\n query: {\n instanceId: {\n $in: instanceIdList,\n },\n },\n page: 1,\n page_size: instanceIdList.length,\n // todo(ice): selected confirm with instances\n fields: props.fields?.length\n ? props.fields.reduce((prev, next) => ({ ...prev, [next]: true }), {})\n : { \"*\": true },\n ...(props.useExternalCmdbApi ? externalRequestParams : {}),\n };\n if (instanceIdList?.length) {\n // istanbul ignore if\n if (props.useExternalCmdbApi) {\n instances = (await externalPostSearchV3.query([instancesParams])).list;\n } else {\n instances = (\n await InstanceApi_postSearch(props.objectId, instancesParams)\n ).list;\n }\n }\n\n return instances;\n };\n const toLoadInstanceIds =\n props.value?.map((i) => (isObject(i) ? (i as any).instanceId : i)) || [];\n\n useEffect(() => {\n const getModelMap = async (): Promise<void> => {\n let modelMap: Record<string, Partial<CmdbModels.ModelCmdbObject>>;\n let objectRef;\n if (isCmdbInstancesSelectPanelPropsWithObjectMap(props)) {\n modelMap = props.objectMap;\n } else {\n if (props.useExternalCmdbApi) {\n objectRef = await externalGetObjectRef.query([\n {\n ref_object: props.objectId,\n ...externalRequestParams,\n },\n ]);\n } else {\n objectRef = (\n (await CmdbObjectApi_getObjectRef({\n ref_object: props.objectId,\n })) as any\n )?.data;\n }\n modelMap = keyBy(objectRef, \"objectId\");\n }\n setModelMap(modelMap);\n };\n getModelMap();\n }, [props.objectId, props.useExternalCmdbApi, props.externalSourceId]);\n\n useEffect(() => {\n let instances = [];\n\n const initInstances = async (): Promise<void> => {\n instances = await fetchInstances(toLoadInstanceIds);\n setSelectedInstanceList(instances);\n setPartialSelectedInstances(\n props?.isOperate\n ? instances\n : instances.slice(0, displayedSelectedInstancesMaxNumber)\n );\n props.onFetchedInstances?.(instances);\n };\n if (!isEmpty(toLoadInstanceIds)) {\n initInstances();\n } else {\n setSelectedInstanceList([]);\n setPartialSelectedInstances([]);\n }\n }, [toLoadInstanceIds.sort().join()]);\n const openAddInstancesModal = () => {\n setAddInstancesModal({ visible: true });\n };\n\n const closeAddInstancesModal = () => {\n setAddInstancesModal({ visible: false });\n };\n\n const openAllSelectedInstancesModal = () => {\n setAllSelectedInstancesModal({ visible: true });\n };\n\n const closeAllSelectedInstancesModal = () => {\n setAllSelectedInstancesModal({ visible: false });\n };\n\n const handleInstancesSelected = async (selectedKeys: string[]) => {\n closeAddInstancesModal();\n\n const instances = await fetchInstances(selectedKeys);\n setSelectedInstanceList(instances);\n setPartialSelectedInstances(\n props?.isOperate\n ? instances\n : instances.slice(0, displayedSelectedInstancesMaxNumber)\n );\n props.onChange?.(instances);\n };\n\n const fieldIds = modifyModelData(modelData).attrList.map(\n (attr: any) => attr.id\n );\n const showPreview =\n selectedInstanceList.length > displayedSelectedInstancesMaxNumber;\n const cs = classnames({\n [style.selectedInstancesTableWrapper]: true,\n [style.withPreview]: showPreview,\n });\n const { relation } = props;\n let relationLimit;\n if (relation?.right_max === 1) {\n relationLimit = { [relation.right_id]: { $size: { $lt: 1 } } };\n }\n const query = props.instanceQuery ?? relationLimit;\n return (\n <div className={style.wrapper} ref={ref}>\n <InstanceListModal\n objectMap={modelMap}\n objectId={props.objectId}\n visible={addInstancesModal.visible}\n title={\n props.modalTitle ??\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.FILTER_FROM_CMDB}`, {\n name: modelData.name,\n })\n }\n selectedRowKeys={selectedInstanceList.map(\n (instance) => instance.instanceId\n )}\n onSelected={handleInstancesSelected}\n onCancel={closeAddInstancesModal}\n singleSelect={props.singleSelect}\n presetConfigs={{\n query,\n fieldIds: props.fields,\n }}\n showBindButton={props.showBindButton}\n bindButtonDisabled={props.bindButtonDisabled}\n bindButtonText={props.bindButtonText}\n bindEvent={props.bindEvent}\n pageSize={props.addInstancesModalPageSize}\n searchDisabled={props.searchDisabled}\n advancedSearchDisabled={props.advancedSearchDisabled}\n ipCopy={props.ipCopy}\n showCloseBtn={props.showCloseBtn}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n aq={props.aq}\n saveFieldsBackend={props.saveFieldsBackend}\n useExternalCmdbApi={props.useExternalCmdbApi}\n externalSourceId={props.externalSourceId}\n />\n <InstanceListModal\n objectMap={modelMap}\n objectId={props.objectId}\n visible={allSelectedInstancesModal.visible}\n showBindButton={props.showBindButton}\n bindButtonDisabled={props.bindButtonDisabled}\n bindButtonText={props.bindButtonText}\n bindEvent={props.bindEvent}\n title={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.VIEW_ALL_SELECTED_INSTANCES}`\n )}\n presetConfigs={{\n query: {\n instanceId: {\n $in: selectedInstanceList.map((instance) => instance.instanceId),\n },\n },\n fieldIds: props.fields,\n }}\n selectDisabled={!props.ipCopy}\n ipCopy={props.ipCopy}\n showCloseBtn={props.ipCopy ? true : props.showCloseBtn}\n pageSize={props.addInstancesModalPageSize}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n onCancel={closeAllSelectedInstancesModal}\n saveFieldsBackend={props.saveFieldsBackend}\n useExternalCmdbApi={props.useExternalCmdbApi}\n externalSourceId={props.externalSourceId}\n />\n <Spin\n style={{ textAlign: \"left\", marginBottom: \"12px\" }}\n spinning={isEqual(modelMap, {})}\n >\n <a\n className={style.addButton}\n style={{\n marginBottom: \"20px\",\n }}\n onClick={openAddInstancesModal}\n >\n {props.addTitle ?? props.useModelName\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CHOOSE_INSTANCE_NAME}`, {\n name: modelData.name,\n })\n : i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CHOOSE_INSTANCE}`)}\n </a>\n </Spin>\n <div className={cs}>\n <InstanceListTable\n {...(props.showDetailUrl\n ? {\n detailUrlTemplates: {\n [props.objectId]:\n \"/next-cmdb-instance-management/next/#{objectId}/instance/#{instanceId}\",\n },\n }\n : {})}\n idObjectMap={modelMap}\n modelData={modelData}\n instanceListData={{ list: partialSelectedInstances }}\n fieldIds={props.fields || fieldIds}\n selectDisabled={true}\n sortDisabled={true}\n configProps={\n props.showPagination && partialSelectedInstances.length > 10\n ? { pagination: { showSizeChanger: true } }\n : { pagination: false }\n }\n //\n isOperate={props.isOperate}\n useExternalCmdbApi={props.useExternalCmdbApi}\n externalSourceId={props.externalSourceId}\n handleDeleteFunction={(v: any) => {\n setSelectedInstanceList(v);\n setPartialSelectedInstances(v);\n props.onChange?.(v);\n }}\n target={\"_blank\"}\n ></InstanceListTable>\n {!props?.isOperate && showPreview && (\n <div\n className={style.showAllSelectedInstancesButton}\n onClick={openAllSelectedInstancesModal}\n >\n <a>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.VIEW_ALL_DATA}`, {\n count: selectedInstanceList.length,\n })}\n </a>\n </div>\n )}\n </div>\n </div>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CmdbUrlLink.js","names":["checkUrl","urlStr","patternSchema","preSlashPatty","test","generateUrlLink","linkStr","patty","arr","match","isArray","length","url","title","link","CmdbUrlLink","props","collection","isString"],"sources":["../../../src/cmdb-url-link/CmdbUrlLink.tsx"],"sourcesContent":["import { isArray, isString } from \"lodash\";\nimport React from \"react\";\n\ninterface CmdbUrlLinkProps {\n linkStr: string;\n}\n\nexport const checkUrl = (urlStr: string) => {\n const patternSchema = /^[a-zA-Z]+:\\/\\/.*$/;\n const preSlashPatty = /^\\//;\n if (urlStr) {\n return patternSchema.test(urlStr) || preSlashPatty.test(urlStr)\n ? urlStr\n : \"http://\" + urlStr;\n }\n return \"\";\n};\nexport const generateUrlLink = (linkStr: string) => {\n const patty = /^\\[(.*)\\]\\((.*)\\)$/;\n const arr = linkStr.match(patty);\n\n if (isArray(arr) && arr.length > 0) {\n return {\n url: checkUrl(arr[2]),\n title: arr[1] || arr[2],\n };\n } else {\n const link = checkUrl(linkStr);\n return {\n url: link,\n title: link,\n };\n }\n};\nexport function CmdbUrlLink(props: CmdbUrlLinkProps): React.ReactElement {\n const collection = props.linkStr && generateUrlLink(props.linkStr);\n return props.linkStr && isString(props.linkStr) ? (\n <span>\n <a href={collection.url} target=\"_blank\" rel=\"noopener noreferrer\">\n {collection.title}\n </a>\n </span>\n ) : null;\n}\n"],"mappings":";;;;;;;;AAAA;AACA;AAMO,
|
|
1
|
+
{"version":3,"file":"CmdbUrlLink.js","names":["_lodash","require","_react","_interopRequireDefault","checkUrl","urlStr","patternSchema","preSlashPatty","test","exports","generateUrlLink","linkStr","patty","arr","match","isArray","length","url","title","link","CmdbUrlLink","props","collection","isString","default","createElement","href","target","rel"],"sources":["../../../src/cmdb-url-link/CmdbUrlLink.tsx"],"sourcesContent":["import { isArray, isString } from \"lodash\";\nimport React from \"react\";\n\ninterface CmdbUrlLinkProps {\n linkStr: string;\n}\n\nexport const checkUrl = (urlStr: string) => {\n const patternSchema = /^[a-zA-Z]+:\\/\\/.*$/;\n const preSlashPatty = /^\\//;\n if (urlStr) {\n return patternSchema.test(urlStr) || preSlashPatty.test(urlStr)\n ? urlStr\n : \"http://\" + urlStr;\n }\n return \"\";\n};\nexport const generateUrlLink = (linkStr: string) => {\n const patty = /^\\[(.*)\\]\\((.*)\\)$/;\n const arr = linkStr.match(patty);\n\n if (isArray(arr) && arr.length > 0) {\n return {\n url: checkUrl(arr[2]),\n title: arr[1] || arr[2],\n };\n } else {\n const link = checkUrl(linkStr);\n return {\n url: link,\n title: link,\n };\n }\n};\nexport function CmdbUrlLink(props: CmdbUrlLinkProps): React.ReactElement {\n const collection = props.linkStr && generateUrlLink(props.linkStr);\n return props.linkStr && isString(props.linkStr) ? (\n <span>\n <a href={collection.url} target=\"_blank\" rel=\"noopener noreferrer\">\n {collection.title}\n </a>\n </span>\n ) : null;\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAMO,MAAMG,QAAQ,GAAIC,MAAc,IAAK;EAC1C,MAAMC,aAAa,GAAG,oBAAoB;EAC1C,MAAMC,aAAa,GAAG,KAAK;EAC3B,IAAIF,MAAM,EAAE;IACV,OAAOC,aAAa,CAACE,IAAI,CAACH,MAAM,CAAC,IAAIE,aAAa,CAACC,IAAI,CAACH,MAAM,CAAC,GAC3DA,MAAM,GACN,SAAS,GAAGA,MAAM;EACxB;EACA,OAAO,EAAE;AACX,CAAC;AAACI,OAAA,CAAAL,QAAA,GAAAA,QAAA;AACK,MAAMM,eAAe,GAAIC,OAAe,IAAK;EAClD,MAAMC,KAAK,GAAG,oBAAoB;EAClC,MAAMC,GAAG,GAAGF,OAAO,CAACG,KAAK,CAACF,KAAK,CAAC;EAEhC,IAAI,IAAAG,eAAO,EAACF,GAAG,CAAC,IAAIA,GAAG,CAACG,MAAM,GAAG,CAAC,EAAE;IAClC,OAAO;MACLC,GAAG,EAAEb,QAAQ,CAACS,GAAG,CAAC,CAAC,CAAC,CAAC;MACrBK,KAAK,EAAEL,GAAG,CAAC,CAAC,CAAC,IAAIA,GAAG,CAAC,CAAC;IACxB,CAAC;EACH,CAAC,MAAM;IACL,MAAMM,IAAI,GAAGf,QAAQ,CAACO,OAAO,CAAC;IAC9B,OAAO;MACLM,GAAG,EAAEE,IAAI;MACTD,KAAK,EAAEC;IACT,CAAC;EACH;AACF,CAAC;AAACV,OAAA,CAAAC,eAAA,GAAAA,eAAA;AACK,SAASU,WAAWA,CAACC,KAAuB,EAAsB;EACvE,MAAMC,UAAU,GAAGD,KAAK,CAACV,OAAO,IAAID,eAAe,CAACW,KAAK,CAACV,OAAO,CAAC;EAClE,OAAOU,KAAK,CAACV,OAAO,IAAI,IAAAY,gBAAQ,EAACF,KAAK,CAACV,OAAO,CAAC,gBAC7CT,MAAA,CAAAsB,OAAA,CAAAC,aAAA,4BACEvB,MAAA,CAAAsB,OAAA,CAAAC,aAAA;IAAGC,IAAI,EAAEJ,UAAU,CAACL,GAAI;IAACU,MAAM,EAAC,QAAQ;IAACC,GAAG,EAAC;EAAqB,GAC/DN,UAAU,CAACJ,KACX,CACC,CAAC,GACL,IAAI;AACV","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["addUid","value","fileList","map","file","uid","uniqueId","compareValues","value1","value2","result","isEqual","CmdbUpload","props","defaultUploadConfig","uploadButtonName","i18n","t","NS_LIBS_CMDB_INSTANCES","K","UPLOAD","url","UploadFileUrl","maxNumber","method","limitSize","uploadButtonProps","uploadConfig","otherUploadConfig","setValue","React","useState","setFileList","disabled","setDisabled","useEffect","isDifferent","handleValueChange","v","onChange","handleBeforeUpload","FileUtils","sizeCompare","sizeTipsText","UPLOAD_SIZE_LARGE_TEXT","size","onError","message","info","Promise","_resolve","reject","Error","autoUpload","resolve","handleFilesChange","newFile","newFileList","isDone","response","name","type","DownloadFileUrl","objectName","handleChange","data","_file","length","status","_fileList","some","index","findIndex","update","$splice","uploadNode","hideUploadButton","buttonType","buttonIcon","lib","icon","theme","buttonName","handleRemove","e","onRemove","uploadProps","className","uploadName","action","accept","multiple","listType","maxCount","beforeUpload","supportServerRender","progress","strokeColor","trailColor","strokeWidth","showInfo","showUploadList","removeIcon","category","iconRender","styles","uploadContainer"],"sources":["../../../../src/components/cmdb-upload/index.tsx"],"sourcesContent":["import React, { ReactNode, useState } from \"react\";\nimport { uniqueId, map, findIndex, some, isEqual } from \"lodash\";\nimport { LoadingOutlined } from \"@ant-design/icons\";\nimport { Upload, Button, message } from \"antd\";\nimport i18n from \"i18next\";\nimport update from \"immutability-helper\";\nimport { ButtonType } from \"antd/lib/button\";\nimport { FileUtils } from \"@next-libs/cmdb-utils\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { MenuIcon } from \"@next-core/brick-types\";\nimport { UploadFile, RcFile } from \"antd/lib/upload/interface\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\nimport styles from \"./index.module.css\";\nimport { UploadFileUrl, DownloadFileUrl } from \"../../constants\";\n\ninterface UploadFileValueItem {\n name?: string;\n url?: string;\n response?: any;\n file?: any;\n uid?: string;\n size?: number;\n type?: string;\n}\ninterface FileItem {\n url?: string;\n uid?: string;\n response?: any;\n file?: any;\n size?: number;\n type?: string;\n [propName: string]: any;\n}\ninterface UploadButtonProps {\n buttonName: string;\n buttonType: ButtonType;\n buttonIcon: MenuIcon;\n}\n\nexport interface UploadConfig {\n url?: string;\n method?: any;\n uploadName?: string;\n accept?: string;\n data?: { [key: string]: string };\n maxNumber?: number;\n limitSize?: number;\n hideUploadButton?: boolean;\n uploadButtonName?: string;\n}\n\nexport interface CmdbUploadProps {\n uploadButtonProps?: UploadButtonProps;\n uploadConfig: UploadConfig;\n onChange?: any;\n onError?: (file: any) => void;\n onRemove?: (file: any) => void;\n disabled?: boolean;\n value?: UploadFileValueItem[];\n style?: React.CSSProperties;\n className?: string;\n autoUpload: boolean;\n}\n\nexport function addUid(value: UploadFileValueItem[]): FileItem[] {\n let fileList: FileItem[] = [];\n fileList = map(value, (file) => {\n file.uid = file.uid ?? uniqueId(\"-file\");\n return file;\n });\n return fileList;\n}\n\nexport function compareValues(\n value: UploadFileValueItem[],\n fileList: FileItem[]\n): boolean {\n const value1 = map(value, \"uid\");\n const value2 = map(fileList, \"uid\");\n const result = isEqual(value1, value2);\n return !result;\n}\n\nexport function CmdbUpload(props: CmdbUploadProps): React.ReactElement {\n // 默认上传配置\n const defaultUploadConfig: UploadConfig = {\n uploadButtonName: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.UPLOAD}`),\n url: UploadFileUrl,\n maxNumber: 5,\n method: \"put\",\n limitSize: 100,\n };\n const { uploadButtonProps, uploadConfig: otherUploadConfig } = props;\n const uploadConfig = { ...defaultUploadConfig, ...(otherUploadConfig ?? {}) };\n const [value, setValue] = React.useState([]);\n const [fileList, setFileList] = useState([]);\n const [disabled, setDisabled] = useState(false);\n\n React.useEffect(() => {\n setValue(addUid(props.value));\n const isDifferent = compareValues(props.value, fileList);\n if (isDifferent) {\n setFileList(addUid(props.value));\n }\n }, [props.value]);\n\n const handleValueChange = (v: UploadFileValueItem[]): void => {\n setValue(v);\n props.onChange?.(v);\n };\n\n const handleBeforeUpload = (file: RcFile): Promise<RcFile> | boolean => {\n if (FileUtils.sizeCompare(file, uploadConfig.limitSize ?? 100)) {\n const sizeTipsText = i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.UPLOAD_SIZE_LARGE_TEXT}`,\n {\n size: `${uploadConfig.limitSize}M`,\n }\n );\n // 如果上传文件大小大于限定大小\n props.onError?.(sizeTipsText);\n message.info(sizeTipsText);\n return new Promise((_resolve, reject) => {\n // 返回reject阻止文件添加\n reject(new Error(sizeTipsText));\n });\n }\n if (props.autoUpload) {\n // 进行自动上传\n return new Promise((resolve) => resolve(file));\n } else {\n // 返回false阻止默认上传行为\n return false;\n }\n };\n\n const handleFilesChange = async (\n newFile: FileItem,\n newFileList: FileItem[],\n isDone: boolean\n ): Promise<void> => {\n if (isDone) {\n if (uploadConfig.maxNumber === 1) {\n setFileList([newFile]);\n handleValueChange([\n {\n response: newFile.response,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n url: `${DownloadFileUrl}/${newFile.response?.objectName}`,\n },\n ]);\n } else {\n setFileList(newFileList);\n handleValueChange([\n ...value,\n {\n response: newFile.response,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n url: `${DownloadFileUrl}/${newFile.response?.objectName}`,\n },\n ]);\n }\n } else {\n if (uploadConfig.maxNumber === 1) {\n setFileList([newFile]);\n if (!props.autoUpload) {\n handleValueChange([\n {\n file: newFile,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n },\n ]);\n }\n } else {\n setFileList(newFileList);\n if (!props.autoUpload) {\n handleValueChange([\n ...value,\n {\n file: newFile,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n },\n ]);\n }\n }\n }\n };\n const handleChange = (data: any) => {\n const _file = data.file;\n if (\n uploadConfig.maxNumber &&\n uploadConfig.maxNumber !== 1 &&\n value?.length >= uploadConfig.maxNumber &&\n _file.status !== \"removed\" &&\n _file.status !== \"error\"\n )\n return;\n const _fileList = data.fileList;\n if (some(_fileList, [\"status\", \"uploading\"])) {\n setDisabled(true);\n } else {\n setDisabled(false);\n }\n if (_file.status === \"removed\") {\n const index = findIndex(value, [\"uid\", _file.uid]);\n if (index !== -1) {\n handleValueChange(update(value, { $splice: [[index, 1]] }));\n }\n setFileList(_fileList);\n } else if (_file.status === \"error\") {\n setDisabled(false);\n const index = findIndex(fileList, [\"uid\", _file.uid]);\n if (index !== -1) {\n setFileList(update(fileList, { $splice: [[index, 1]] }));\n }\n props.onError?.(_file);\n } else {\n handleFilesChange(_file, _fileList, false);\n // if (_fileList.every((v: any) => v.status === \"done\" && v.response)) {\n // _fileList.forEach((file: any) => {\n // file.response = file.response.data;\n // handleFilesChange(file, _fileList, true);\n // });\n // }\n if (_file.response && _file.status === \"done\") {\n _file.response = _file.response.data;\n handleFilesChange(_file, _fileList, true);\n }\n }\n };\n\n const uploadNode = () => {\n if (uploadConfig.hideUploadButton) {\n return null;\n }\n return (\n <Button\n disabled={\n (uploadConfig.maxNumber && value?.length >= uploadConfig.maxNumber) ||\n props.disabled\n }\n type={uploadButtonProps?.buttonType}\n >\n <GeneralIcon\n icon={\n uploadButtonProps?.buttonIcon ?? {\n lib: \"antd\",\n icon: \"upload\",\n theme: \"outlined\",\n }\n }\n />\n {uploadButtonProps?.buttonName ??\n uploadConfig.uploadButtonName ??\n \"Upload\"}\n </Button>\n );\n };\n\n const handleRemove = (e: any) => {\n props.onRemove?.(e);\n };\n\n const uploadProps: any = {\n className: props.className,\n method: uploadConfig?.method || \"post\",\n disabled: props.disabled || disabled,\n data: uploadConfig?.data,\n name: uploadConfig?.uploadName,\n action: uploadConfig?.url || UploadFileUrl,\n accept: uploadConfig?.accept,\n multiple: false,\n listType: \"text\",\n fileList,\n maxCount: uploadConfig?.maxNumber ?? 5,\n beforeUpload: handleBeforeUpload,\n onChange: handleChange,\n onRemove: handleRemove,\n supportServerRender: true,\n progress: {\n strokeColor: \"var(--color-success)\",\n trailColor: \"var(--color-fill-bg-base-1)\",\n strokeWidth: \"1px\",\n showInfo: false,\n },\n showUploadList: {\n // eslint-disable-next-line react/display-name\n removeIcon: (file: UploadFile): ReactNode =>\n file.status === \"error\" ? (\n <GeneralIcon\n icon={{\n lib: \"antd\",\n theme: \"outlined\",\n icon: \"close\",\n }}\n />\n ) : (\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n category: \"default\",\n icon: \"delete\",\n }}\n />\n ),\n },\n // eslint-disable-next-line react/display-name\n iconRender: (file: UploadFile): ReactNode =>\n file.status === \"uploading\" ? (\n <LoadingOutlined />\n ) : (\n <GeneralIcon\n icon={{\n lib: \"antd\",\n icon: \"file-text\",\n theme: \"outlined\",\n }}\n />\n ),\n };\n return (\n <div className={styles.uploadContainer}>\n <Upload {...uploadProps}>{uploadNode()}</Upload>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_lodash","_icons","_antd","_i18next","_interopRequireDefault","_immutabilityHelper","_cmdbUtils","_basicComponents","_constants","_indexModule","_constants2","addUid","value","fileList","map","file","_file$uid","uid","uniqueId","compareValues","value1","value2","result","isEqual","CmdbUpload","props","_uploadConfig$maxNumb","defaultUploadConfig","uploadButtonName","i18n","t","NS_LIBS_CMDB_INSTANCES","K","UPLOAD","url","UploadFileUrl","maxNumber","method","limitSize","uploadButtonProps","uploadConfig","otherUploadConfig","setValue","React","useState","setFileList","disabled","setDisabled","useEffect","isDifferent","handleValueChange","v","_props$onChange","onChange","call","handleBeforeUpload","_uploadConfig$limitSi","FileUtils","sizeCompare","_props$onError","sizeTipsText","UPLOAD_SIZE_LARGE_TEXT","size","onError","message","info","Promise","_resolve","reject","Error","autoUpload","resolve","handleFilesChange","newFile","newFileList","isDone","_newFile$response","response","name","type","DownloadFileUrl","objectName","_newFile$response2","handleChange","data","_file","length","status","_fileList","some","index","findIndex","update","$splice","_props$onError2","uploadNode","_uploadButtonProps$bu","_ref","_uploadButtonProps$bu2","hideUploadButton","default","createElement","Button","buttonType","GeneralIcon","icon","buttonIcon","lib","theme","buttonName","handleRemove","e","_props$onRemove","onRemove","uploadProps","className","uploadName","action","accept","multiple","listType","maxCount","beforeUpload","supportServerRender","progress","strokeColor","trailColor","strokeWidth","showInfo","showUploadList","removeIcon","category","iconRender","LoadingOutlined","styles","uploadContainer","Upload"],"sources":["../../../../src/components/cmdb-upload/index.tsx"],"sourcesContent":["import React, { ReactNode, useState } from \"react\";\nimport { uniqueId, map, findIndex, some, isEqual } from \"lodash\";\nimport { LoadingOutlined } from \"@ant-design/icons\";\nimport { Upload, Button, message } from \"antd\";\nimport i18n from \"i18next\";\nimport update from \"immutability-helper\";\nimport { ButtonType } from \"antd/lib/button\";\nimport { FileUtils } from \"@next-libs/cmdb-utils\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { MenuIcon } from \"@next-core/brick-types\";\nimport { UploadFile, RcFile } from \"antd/lib/upload/interface\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\nimport styles from \"./index.module.css\";\nimport { UploadFileUrl, DownloadFileUrl } from \"../../constants\";\n\ninterface UploadFileValueItem {\n name?: string;\n url?: string;\n response?: any;\n file?: any;\n uid?: string;\n size?: number;\n type?: string;\n}\ninterface FileItem {\n url?: string;\n uid?: string;\n response?: any;\n file?: any;\n size?: number;\n type?: string;\n [propName: string]: any;\n}\ninterface UploadButtonProps {\n buttonName: string;\n buttonType: ButtonType;\n buttonIcon: MenuIcon;\n}\n\nexport interface UploadConfig {\n url?: string;\n method?: any;\n uploadName?: string;\n accept?: string;\n data?: { [key: string]: string };\n maxNumber?: number;\n limitSize?: number;\n hideUploadButton?: boolean;\n uploadButtonName?: string;\n}\n\nexport interface CmdbUploadProps {\n uploadButtonProps?: UploadButtonProps;\n uploadConfig: UploadConfig;\n onChange?: any;\n onError?: (file: any) => void;\n onRemove?: (file: any) => void;\n disabled?: boolean;\n value?: UploadFileValueItem[];\n style?: React.CSSProperties;\n className?: string;\n autoUpload: boolean;\n}\n\nexport function addUid(value: UploadFileValueItem[]): FileItem[] {\n let fileList: FileItem[] = [];\n fileList = map(value, (file) => {\n file.uid = file.uid ?? uniqueId(\"-file\");\n return file;\n });\n return fileList;\n}\n\nexport function compareValues(\n value: UploadFileValueItem[],\n fileList: FileItem[]\n): boolean {\n const value1 = map(value, \"uid\");\n const value2 = map(fileList, \"uid\");\n const result = isEqual(value1, value2);\n return !result;\n}\n\nexport function CmdbUpload(props: CmdbUploadProps): React.ReactElement {\n // 默认上传配置\n const defaultUploadConfig: UploadConfig = {\n uploadButtonName: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.UPLOAD}`),\n url: UploadFileUrl,\n maxNumber: 5,\n method: \"put\",\n limitSize: 100,\n };\n const { uploadButtonProps, uploadConfig: otherUploadConfig } = props;\n const uploadConfig = { ...defaultUploadConfig, ...(otherUploadConfig ?? {}) };\n const [value, setValue] = React.useState([]);\n const [fileList, setFileList] = useState([]);\n const [disabled, setDisabled] = useState(false);\n\n React.useEffect(() => {\n setValue(addUid(props.value));\n const isDifferent = compareValues(props.value, fileList);\n if (isDifferent) {\n setFileList(addUid(props.value));\n }\n }, [props.value]);\n\n const handleValueChange = (v: UploadFileValueItem[]): void => {\n setValue(v);\n props.onChange?.(v);\n };\n\n const handleBeforeUpload = (file: RcFile): Promise<RcFile> | boolean => {\n if (FileUtils.sizeCompare(file, uploadConfig.limitSize ?? 100)) {\n const sizeTipsText = i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.UPLOAD_SIZE_LARGE_TEXT}`,\n {\n size: `${uploadConfig.limitSize}M`,\n }\n );\n // 如果上传文件大小大于限定大小\n props.onError?.(sizeTipsText);\n message.info(sizeTipsText);\n return new Promise((_resolve, reject) => {\n // 返回reject阻止文件添加\n reject(new Error(sizeTipsText));\n });\n }\n if (props.autoUpload) {\n // 进行自动上传\n return new Promise((resolve) => resolve(file));\n } else {\n // 返回false阻止默认上传行为\n return false;\n }\n };\n\n const handleFilesChange = async (\n newFile: FileItem,\n newFileList: FileItem[],\n isDone: boolean\n ): Promise<void> => {\n if (isDone) {\n if (uploadConfig.maxNumber === 1) {\n setFileList([newFile]);\n handleValueChange([\n {\n response: newFile.response,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n url: `${DownloadFileUrl}/${newFile.response?.objectName}`,\n },\n ]);\n } else {\n setFileList(newFileList);\n handleValueChange([\n ...value,\n {\n response: newFile.response,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n url: `${DownloadFileUrl}/${newFile.response?.objectName}`,\n },\n ]);\n }\n } else {\n if (uploadConfig.maxNumber === 1) {\n setFileList([newFile]);\n if (!props.autoUpload) {\n handleValueChange([\n {\n file: newFile,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n },\n ]);\n }\n } else {\n setFileList(newFileList);\n if (!props.autoUpload) {\n handleValueChange([\n ...value,\n {\n file: newFile,\n name: newFile.name,\n uid: newFile.uid,\n size: newFile.size,\n type: newFile.type,\n },\n ]);\n }\n }\n }\n };\n const handleChange = (data: any) => {\n const _file = data.file;\n if (\n uploadConfig.maxNumber &&\n uploadConfig.maxNumber !== 1 &&\n value?.length >= uploadConfig.maxNumber &&\n _file.status !== \"removed\" &&\n _file.status !== \"error\"\n )\n return;\n const _fileList = data.fileList;\n if (some(_fileList, [\"status\", \"uploading\"])) {\n setDisabled(true);\n } else {\n setDisabled(false);\n }\n if (_file.status === \"removed\") {\n const index = findIndex(value, [\"uid\", _file.uid]);\n if (index !== -1) {\n handleValueChange(update(value, { $splice: [[index, 1]] }));\n }\n setFileList(_fileList);\n } else if (_file.status === \"error\") {\n setDisabled(false);\n const index = findIndex(fileList, [\"uid\", _file.uid]);\n if (index !== -1) {\n setFileList(update(fileList, { $splice: [[index, 1]] }));\n }\n props.onError?.(_file);\n } else {\n handleFilesChange(_file, _fileList, false);\n // if (_fileList.every((v: any) => v.status === \"done\" && v.response)) {\n // _fileList.forEach((file: any) => {\n // file.response = file.response.data;\n // handleFilesChange(file, _fileList, true);\n // });\n // }\n if (_file.response && _file.status === \"done\") {\n _file.response = _file.response.data;\n handleFilesChange(_file, _fileList, true);\n }\n }\n };\n\n const uploadNode = () => {\n if (uploadConfig.hideUploadButton) {\n return null;\n }\n return (\n <Button\n disabled={\n (uploadConfig.maxNumber && value?.length >= uploadConfig.maxNumber) ||\n props.disabled\n }\n type={uploadButtonProps?.buttonType}\n >\n <GeneralIcon\n icon={\n uploadButtonProps?.buttonIcon ?? {\n lib: \"antd\",\n icon: \"upload\",\n theme: \"outlined\",\n }\n }\n />\n {uploadButtonProps?.buttonName ??\n uploadConfig.uploadButtonName ??\n \"Upload\"}\n </Button>\n );\n };\n\n const handleRemove = (e: any) => {\n props.onRemove?.(e);\n };\n\n const uploadProps: any = {\n className: props.className,\n method: uploadConfig?.method || \"post\",\n disabled: props.disabled || disabled,\n data: uploadConfig?.data,\n name: uploadConfig?.uploadName,\n action: uploadConfig?.url || UploadFileUrl,\n accept: uploadConfig?.accept,\n multiple: false,\n listType: \"text\",\n fileList,\n maxCount: uploadConfig?.maxNumber ?? 5,\n beforeUpload: handleBeforeUpload,\n onChange: handleChange,\n onRemove: handleRemove,\n supportServerRender: true,\n progress: {\n strokeColor: \"var(--color-success)\",\n trailColor: \"var(--color-fill-bg-base-1)\",\n strokeWidth: \"1px\",\n showInfo: false,\n },\n showUploadList: {\n // eslint-disable-next-line react/display-name\n removeIcon: (file: UploadFile): ReactNode =>\n file.status === \"error\" ? (\n <GeneralIcon\n icon={{\n lib: \"antd\",\n theme: \"outlined\",\n icon: \"close\",\n }}\n />\n ) : (\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n category: \"default\",\n icon: \"delete\",\n }}\n />\n ),\n },\n // eslint-disable-next-line react/display-name\n iconRender: (file: UploadFile): ReactNode =>\n file.status === \"uploading\" ? (\n <LoadingOutlined />\n ) : (\n <GeneralIcon\n icon={{\n lib: \"antd\",\n icon: \"file-text\",\n theme: \"outlined\",\n }}\n />\n ),\n };\n return (\n <div className={styles.uploadContainer}>\n <Upload {...uploadProps}>{uploadNode()}</Upload>\n </div>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/index.tsx"],"sourcesContent":["export * from \"./instance-format\";\nexport * from \"./user-or-user-group-select/UserOrUserGroupSelect\";\nexport * from \"./cmdb-upload\";\n"],"mappings":";;;;;AAAA;
|
|
1
|
+
{"version":3,"file":"index.js","names":["_instanceFormat","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_UserOrUserGroupSelect","_cmdbUpload"],"sources":["../../../src/components/index.tsx"],"sourcesContent":["export * from \"./instance-format\";\nexport * from \"./user-or-user-group-select/UserOrUserGroupSelect\";\nexport * from \"./cmdb-upload\";\n"],"mappings":";;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,eAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,eAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,eAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,sBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,sBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,sBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,sBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,WAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,WAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,WAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,WAAA,CAAAN,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["InstanceFormat","React","Component","render","component","formatAttrValue","props","attrData","attrModel","objectId","text","value","type","_","isString","JSON","stringify","tooltips","i18n","t","NS_LIBS_CMDB_INSTANCES","K","COPY","COPY_SUCCESS"],"sources":["../../../../src/components/instance-format/index.tsx"],"sourcesContent":["import React from \"react\";\nimport _, { isNil, isArray } from \"lodash\";\nimport { formatAttrValue } from \"@next-libs/cmdb-utils\";\nimport { Typography } from \"antd\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\ninterface InstanceFormatProps {\n objectId?: string;\n attrModel?: any;\n attrData?: any;\n}\n\nexport class InstanceFormat extends React.Component<InstanceFormatProps> {\n render(): React.ReactNode {\n let component = (\n <span className=\"attr-field\">\n {formatAttrValue(\n this.props.attrData,\n this.props.attrModel,\n this.props.objectId\n )}\n </span>\n );\n let text: string;\n if (this.props.attrModel?.value?.type === \"json\") {\n text = _.isString(this.props.attrData)\n ? this.props.attrData\n : JSON.stringify(this.props.attrData, null, 2);\n if (text) {\n component = (\n <Typography.Paragraph\n copyable={{\n tooltips: [\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY}`),\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY_SUCCESS}`),\n ],\n text,\n }}\n >\n {component}\n </Typography.Paragraph>\n );\n }\n }\n return <>{component}</>;\n }\n}\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAOO,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_lodash","_cmdbUtils","_antd","_i18next","_constants","InstanceFormat","React","Component","render","_this$props$attrModel","_this$props$attrModel2","component","default","createElement","className","formatAttrValue","props","attrData","attrModel","objectId","text","value","type","_","isString","JSON","stringify","Typography","Paragraph","copyable","tooltips","i18n","t","NS_LIBS_CMDB_INSTANCES","K","COPY","COPY_SUCCESS","Fragment","exports"],"sources":["../../../../src/components/instance-format/index.tsx"],"sourcesContent":["import React from \"react\";\nimport _, { isNil, isArray } from \"lodash\";\nimport { formatAttrValue } from \"@next-libs/cmdb-utils\";\nimport { Typography } from \"antd\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\ninterface InstanceFormatProps {\n objectId?: string;\n attrModel?: any;\n attrData?: any;\n}\n\nexport class InstanceFormat extends React.Component<InstanceFormatProps> {\n render(): React.ReactNode {\n let component = (\n <span className=\"attr-field\">\n {formatAttrValue(\n this.props.attrData,\n this.props.attrModel,\n this.props.objectId\n )}\n </span>\n );\n let text: string;\n if (this.props.attrModel?.value?.type === \"json\") {\n text = _.isString(this.props.attrData)\n ? this.props.attrData\n : JSON.stringify(this.props.attrData, null, 2);\n if (text) {\n component = (\n <Typography.Paragraph\n copyable={{\n tooltips: [\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY}`),\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY_SUCCESS}`),\n ],\n text,\n }}\n >\n {component}\n </Typography.Paragraph>\n );\n }\n }\n return <>{component}</>;\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AAOO,MAAMM,cAAc,SAASC,cAAK,CAACC,SAAS,CAAsB;EACvEC,MAAMA,CAAA,EAAoB;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IACxB,IAAIC,SAAS,gBACXd,MAAA,CAAAe,OAAA,CAAAC,aAAA;MAAMC,SAAS,EAAC;IAAY,GACzB,IAAAC,0BAAe,EACd,IAAI,CAACC,KAAK,CAACC,QAAQ,EACnB,IAAI,CAACD,KAAK,CAACE,SAAS,EACpB,IAAI,CAACF,KAAK,CAACG,QACb,CACI,CACP;IACD,IAAIC,IAAY;IAChB,IAAI,EAAAX,qBAAA,OAAI,CAACO,KAAK,CAACE,SAAS,cAAAT,qBAAA,wBAAAC,sBAAA,GAApBD,qBAAA,CAAsBY,KAAK,cAAAX,sBAAA,uBAA3BA,sBAAA,CAA6BY,IAAI,MAAK,MAAM,EAAE;MAChDF,IAAI,GAAGG,eAAC,CAACC,QAAQ,CAAC,IAAI,CAACR,KAAK,CAACC,QAAQ,CAAC,GAClC,IAAI,CAACD,KAAK,CAACC,QAAQ,GACnBQ,IAAI,CAACC,SAAS,CAAC,IAAI,CAACV,KAAK,CAACC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;MAChD,IAAIG,IAAI,EAAE;QACRT,SAAS,gBACPd,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACX,KAAA,CAAAyB,UAAU,CAACC,SAAS;UACnBC,QAAQ,EAAE;YACRC,QAAQ,EAAE,CACRC,gBAAI,CAACC,CAAC,CAAC,GAAGC,iCAAsB,IAAIC,YAAC,CAACC,IAAI,EAAE,CAAC,EAC7CJ,gBAAI,CAACC,CAAC,CAAC,GAAGC,iCAAsB,IAAIC,YAAC,CAACE,YAAY,EAAE,CAAC,CACtD;YACDhB;UACF;QAAE,GAEDT,SACmB,CACvB;MACH;IACF;IACA,oBAAOd,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAAAhB,MAAA,CAAAe,OAAA,CAAAyB,QAAA,QAAG1B,SAAY,CAAC;EACzB;AACF;AAAC2B,OAAA,CAAAjC,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
@@ -423,8 +423,7 @@ function LegacyUserSelectFormItem(props, ref) {
|
|
|
423
423
|
saveFieldsBackend: props.saveFieldsBackend
|
|
424
424
|
})));
|
|
425
425
|
}
|
|
426
|
-
const UserSelectFormItem = /*#__PURE__*/(0, _react.forwardRef)(LegacyUserSelectFormItem);
|
|
427
|
-
exports.UserSelectFormItem = UserSelectFormItem;
|
|
426
|
+
const UserSelectFormItem = exports.UserSelectFormItem = /*#__PURE__*/(0, _react.forwardRef)(LegacyUserSelectFormItem);
|
|
428
427
|
function UserOrUserGroupSelect(props) {
|
|
429
428
|
return /*#__PURE__*/_react.default.createElement(_forms.FormItemWrapper, props, /*#__PURE__*/_react.default.createElement(UserSelectFormItem, {
|
|
430
429
|
objectMap: props.objectMap,
|