@next-libs/cmdb-instances 6.42.3 → 6.42.4
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/CHANGELOG.md +8 -0
- package/dist/cjs/attribute-form-control-url/AttributeFormControlUrl.js.map +1 -1
- 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/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.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.map +1 -1
- package/dist/cjs/i18n/index.js.map +1 -1
- package/dist/cjs/i18n/locales/en.js.map +1 -1
- 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.map +1 -1
- package/dist/cjs/instance-detail/InstanceDetail.js.map +1 -1
- package/dist/cjs/instance-detail/components/instance-relation-field-display/constants.js.map +1 -1
- package/dist/cjs/instance-detail/components/instance-relation-field-display/instance-relation-field-display.js.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/constants/index.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.map +1 -1
- package/dist/cjs/instance-list-modal/InstanceListModal.js.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/cjs/model-attribute-form/ModelAttributeForm.js.map +1 -1
- package/dist/cjs/model-attribute-form/constants.js.map +1 -1
- package/dist/cjs/model-attribute-form-control/ModelAttributeFormControl.js.map +1 -1
- package/dist/cjs/model-relation-form/ModelRelationForm.js.map +1 -1
- package/dist/cjs/processors.js.map +1 -1
- 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.map +1 -1
- package/dist/cjs/struct-components/index.js.map +1 -1
- package/dist/cjs/struct-components/interfaces.js.map +1 -1
- package/dist/cjs/struct-components/mockData.js.map +1 -1
- package/dist/esm/attribute-form-control-url/AttributeFormControlUrl.js.map +1 -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/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/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/constants/index.js.map +1 -1
- package/dist/esm/instance-list/IconButton.js.map +1 -1
- 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.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/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.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.map +1 -1
- package/dist/esm/struct-components/AddStructModal.js.map +1 -1
- 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/types/instance-detail/InstanceDetail.d.ts +1 -1
- package/dist/types/instance-list-table/InstanceListTable.d.ts +1 -1
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [6.42.4](https://github.com/easyops-cn/next-libs/compare/@next-libs/cmdb-instances@6.42.3...@next-libs/cmdb-instances@6.42.4) (2022-09-07)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @next-libs/cmdb-instances
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [6.42.3](https://github.com/easyops-cn/next-libs/compare/@next-libs/cmdb-instances@6.42.2...@next-libs/cmdb-instances@6.42.3) (2022-08-31)
|
|
7
15
|
|
|
8
16
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
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":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cmdb-instances-input-form/CmdbInstancesInputFormItem.tsx"],"names":["separator","LegacyCmdbInstancesInputFormItem","props","ref","t","NS_LIBS_CMDB_INSTANCES","presetQuery","permission","objectId","checkAgentStatus","_agentStatus","checkPermission","push","fields","forEach","field","objectData","objectMap","fieldData","__fieldList","find","__id","fieldId","visible","setVisible","selectedInstances","setSelectedInstances","valid","invalid","inputValue","setInputValue","inputFocused","setInputFocused","previewVisible","setPreviewVisible","selectedInstancesQuery","previewEnabled","length","instanceId","$in","map","instance","query","undefined","checkSelectedInstances","instances","list","instanceIdSet","Set","selectedInstancesMap","selectedInstance","has","true","false","invalidSelectedInstance","updateSelected","instanceIds","page","page_size","instanceData","join","checkDisabled","value","handleChange","onChange","onChangeV2","checkInputValue","fieldValues","match","split","$and","validSelectedInstances","filter","includes","validFieldValues","invalidFieldValues","fieldValue","openSelectInstancesModal","closeSelectInstancesModal","handleInstancesSelected","selectedKeys","handleInputChanged","event","target","handleInputBlur","closeInvalidFieldValuesModal","text","selectFromText","K","SELECT_FROM_CMDB","TIP","DELETE","INVALID_OR_FORBIDDEN_IPS","INVALID","name","fieldIds","singleSelect","defaultQuery","pageSize","pageSizeOptions","showSizeChanger","style","cmdbInstancesInputFormWrapper","fieldInput","allowClear","inputDisabled","modalButton","addButtonDisabled","VIEW_SPECIFIC_INSTANCES","CmdbInstancesInputFormItem"],"mappings":"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","sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\n\nimport React, { forwardRef, useState, useEffect, useMemo } from \"react\";\nimport { Input, Button, Modal } from \"antd\";\nimport { groupBy } 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\";\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}\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 const fields: Record<string, boolean> = {};\n\n props.fields?.forEach((field) => {\n fields[field] = true;\n });\n\n return fields;\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 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 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 }\n } else {\n setSelectedInstances({ valid: [], invalid: [] });\n }\n return instances;\n };\n\n useEffect(() => {\n if (props.value) {\n updateSelected(props.value);\n }\n // todo(ice): how formItem to change its value??????\n }, []);\n\n const handleChange = (instances: any[]): void => {\n props.onChange?.(instances.map((instance) => instance.instanceId));\n props.onChangeV2?.(instances);\n };\n\n const checkInputValue = async (inputValue: string): 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 if (fieldValues) {\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n ...presetQuery,\n },\n ...(props.query ? props.query : []),\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 handleChange(validSelectedInstances);\n }\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 handleChange(instances);\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 inputValue = event.target.value;\n if (inputValue) {\n if (!props.checkDisabled) {\n await checkInputValue(inputValue);\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 query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n },\n ...(props.query ? props.query : []),\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 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 data-testid=\"select-modal\"\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 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"],"file":"CmdbInstancesInputFormItem.js"}
|
|
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","forEach","field","objectData","modifyModelData","objectMap","fieldData","__fieldList","find","__id","fieldId","visible","setVisible","useState","selectedInstances","setSelectedInstances","valid","invalid","inputValue","setInputValue","inputFocused","setInputFocused","previewVisible","setPreviewVisible","selectedInstancesQuery","previewEnabled","length","instanceId","$in","map","instance","query","undefined","checkSelectedInstances","instances","InstanceApi_postSearch","list","instanceIdSet","Set","selectedInstancesMap","groupBy","selectedInstance","has","true","false","invalidSelectedInstance","updateSelected","instanceIds","page","page_size","instanceData","join","checkDisabled","useEffect","value","handleChange","onChange","onChangeV2","checkInputValue","fieldValues","match","split","$and","validSelectedInstances","filter","includes","validFieldValues","invalidFieldValues","fieldValue","openSelectInstancesModal","closeSelectInstancesModal","handleInstancesSelected","selectedKeys","handleInputChanged","event","target","handleInputBlur","closeInvalidFieldValuesModal","text","selectFromText","K","SELECT_FROM_CMDB","TIP","DELETE","INVALID_OR_FORBIDDEN_IPS","INVALID","name","fieldIds","singleSelect","defaultQuery","pageSize","pageSizeOptions","showSizeChanger","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 } from \"react\";\nimport { Input, Button, Modal } from \"antd\";\nimport { groupBy } 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\";\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}\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 const fields: Record<string, boolean> = {};\n\n props.fields?.forEach((field) => {\n fields[field] = true;\n });\n\n return fields;\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 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 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 }\n } else {\n setSelectedInstances({ valid: [], invalid: [] });\n }\n return instances;\n };\n\n useEffect(() => {\n if (props.value) {\n updateSelected(props.value);\n }\n // todo(ice): how formItem to change its value??????\n }, []);\n\n const handleChange = (instances: any[]): void => {\n props.onChange?.(instances.map((instance) => instance.instanceId));\n props.onChangeV2?.(instances);\n };\n\n const checkInputValue = async (inputValue: string): 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 if (fieldValues) {\n const instances = (\n await InstanceApi_postSearch(props.objectId, {\n query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n ...presetQuery,\n },\n ...(props.query ? props.query : []),\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 handleChange(validSelectedInstances);\n }\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 handleChange(instances);\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 inputValue = event.target.value;\n if (inputValue) {\n if (!props.checkDisabled) {\n await checkInputValue(inputValue);\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 query: {\n $and: [\n {\n [props.fieldId]: {\n $in: fieldValues,\n },\n },\n ...(props.query ? props.query : []),\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 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 data-testid=\"select-modal\"\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 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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/cmdb-instances-select-panel/CmdbInstancesSelectPanel.tsx"],"names":["isCmdbInstancesSelectPanelPropsWithObjectMap","props","objectMap","CmdbInstancesSelectPanel","ref","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","partialSelectedInstances","setPartialSelectedInstances","addInstancesModal","setAddInstancesModal","visible","allSelectedInstancesModal","setAllSelectedInstancesModal","modelMap","setModelMap","fetchInstances","instanceIdList","instances","length","query","instanceId","$in","page","page_size","fields","list","toLoadInstanceIds","value","map","i","getModelMap","data","ref_object","initInstances","isOperate","slice","onFetchedInstances","sort","join","openAddInstancesModal","closeAddInstancesModal","openAllSelectedInstancesModal","closeAllSelectedInstancesModal","handleInstancesSelected","selectedKeys","onChange","fieldIds","attr","showPreview","cs","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","addInstancesModalPageSize","searchDisabled","advancedSearchDisabled","ipCopy","showCloseBtn","showSizeChanger","pageSizeOptions","VIEW_ALL_SELECTED_INSTANCES","textAlign","marginBottom","addButton","addTitle","CHOOSE_INSTANCE","showDetailUrl","detailUrlTemplates","pagination","v","showAllSelectedInstancesButton","VIEW_ALL_DATA","count"],"mappings":"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","sourcesContent":["import React, { useState, useEffect } 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} 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\";\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 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}\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}\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}\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 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 [addInstancesModal, setAddInstancesModal] = useState({\n visible: false,\n });\n const [allSelectedInstancesModal, setAllSelectedInstancesModal] = useState({\n visible: false,\n });\n const [modelMap, setModelMap] = useState({});\n\n const fetchInstances = async (instanceIdList: string[]): Promise<any[]> => {\n let instances: any[] = [];\n if (instanceIdList?.length) {\n instances = (\n await InstanceApi_postSearch(props.objectId, {\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: { \"*\": true },\n })\n ).list;\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\n if (isCmdbInstancesSelectPanelPropsWithObjectMap(props)) {\n modelMap = props.objectMap;\n } else {\n const { data } = await CmdbObjectApi_getObjectRef({\n ref_object: props.objectId,\n });\n modelMap = keyBy(data, \"objectId\");\n }\n setModelMap(modelMap);\n };\n getModelMap();\n }, [props.objectId]);\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\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\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 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 />\n <InstanceListModal\n objectMap={modelMap}\n objectId={props.objectId}\n visible={allSelectedInstancesModal.visible}\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 }}\n selectDisabled={!props.ipCopy}\n ipCopy={props.ipCopy}\n showCloseBtn={props.showCloseBtn}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n onCancel={closeAllSelectedInstancesModal}\n />\n <Spin\n style={{ textAlign: \"left\", marginBottom: \"12px\" }}\n spinning={isEqual(modelMap, {})}\n >\n <a\n className={style.addButton}\n style={{\n marginBottom: \"12px\",\n }}\n onClick={openAddInstancesModal}\n >\n {props.addTitle ??\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={{\n list: partialSelectedInstances,\n }}\n fieldIds={props.fields || fieldIds}\n selectDisabled={true}\n sortDisabled={true}\n configProps={{\n pagination: false,\n }}\n isOperate={props.isOperate}\n handleDeleteFunction={(v) => {\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"],"file":"CmdbInstancesSelectPanel.js"}
|
|
1
|
+
{"version":3,"file":"CmdbInstancesSelectPanel.js","names":["isCmdbInstancesSelectPanelPropsWithObjectMap","props","isNil","objectMap","CmdbInstancesSelectPanel","ref","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","fetchInstances","instanceIdList","instances","length","InstanceApi_postSearch","query","instanceId","$in","page","page_size","fields","list","toLoadInstanceIds","value","map","i","isObject","useEffect","getModelMap","data","CmdbObjectApi_getObjectRef","ref_object","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","addInstancesModalPageSize","searchDisabled","advancedSearchDisabled","ipCopy","showCloseBtn","showSizeChanger","pageSizeOptions","VIEW_ALL_SELECTED_INSTANCES","textAlign","marginBottom","isEqual","addButton","addTitle","CHOOSE_INSTANCE","showDetailUrl","detailUrlTemplates","pagination","v","showAllSelectedInstancesButton","VIEW_ALL_DATA","count"],"sources":["../../../src/cmdb-instances-select-panel/CmdbInstancesSelectPanel.tsx"],"sourcesContent":["import React, { useState, useEffect } 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} 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\";\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 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}\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}\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}\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 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 [addInstancesModal, setAddInstancesModal] = useState({\n visible: false,\n });\n const [allSelectedInstancesModal, setAllSelectedInstancesModal] = useState({\n visible: false,\n });\n const [modelMap, setModelMap] = useState({});\n\n const fetchInstances = async (instanceIdList: string[]): Promise<any[]> => {\n let instances: any[] = [];\n if (instanceIdList?.length) {\n instances = (\n await InstanceApi_postSearch(props.objectId, {\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: { \"*\": true },\n })\n ).list;\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\n if (isCmdbInstancesSelectPanelPropsWithObjectMap(props)) {\n modelMap = props.objectMap;\n } else {\n const { data } = await CmdbObjectApi_getObjectRef({\n ref_object: props.objectId,\n });\n modelMap = keyBy(data, \"objectId\");\n }\n setModelMap(modelMap);\n };\n getModelMap();\n }, [props.objectId]);\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\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\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 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 />\n <InstanceListModal\n objectMap={modelMap}\n objectId={props.objectId}\n visible={allSelectedInstancesModal.visible}\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 }}\n selectDisabled={!props.ipCopy}\n ipCopy={props.ipCopy}\n showCloseBtn={props.showCloseBtn}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n onCancel={closeAllSelectedInstancesModal}\n />\n <Spin\n style={{ textAlign: \"left\", marginBottom: \"12px\" }}\n spinning={isEqual(modelMap, {})}\n >\n <a\n className={style.addButton}\n style={{\n marginBottom: \"12px\",\n }}\n onClick={openAddInstancesModal}\n >\n {props.addTitle ??\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={{\n list: partialSelectedInstances,\n }}\n fieldIds={props.fields || fieldIds}\n selectDisabled={true}\n sortDisabled={true}\n configProps={{\n pagination: false,\n }}\n isOperate={props.isOperate}\n handleDeleteFunction={(v) => {\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 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
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,MAAMA,QAAQ,GAAIC,MAAD,IAAoB;EAC1C,MAAMC,aAAa,GAAG,oBAAtB;EACA,MAAMC,aAAa,GAAG,KAAtB;;EACA,IAAIF,MAAJ,EAAY;IACV,OAAOC,aAAa,CAACE,IAAd,CAAmBH,MAAnB,KAA8BE,aAAa,CAACC,IAAd,CAAmBH,MAAnB,CAA9B,GACHA,MADG,GAEH,YAAYA,MAFhB;EAGD;;EACD,OAAO,EAAP;AACD,CATM;;;;AAUA,MAAMI,eAAe,GAAIC,OAAD,IAAqB;EAClD,MAAMC,KAAK,GAAG,oBAAd;EACA,MAAMC,GAAG,GAAGF,OAAO,CAACG,KAAR,CAAcF,KAAd,CAAZ;;EAEA,IAAI,IAAAG,eAAA,EAAQF,GAAR,KAAgBA,GAAG,CAACG,MAAJ,GAAa,CAAjC,EAAoC;IAClC,OAAO;MACLC,GAAG,EAAEZ,QAAQ,CAACQ,GAAG,CAAC,CAAD,CAAJ,CADR;MAELK,KAAK,EAAEL,GAAG,CAAC,CAAD,CAAH,IAAUA,GAAG,CAAC,CAAD;IAFf,CAAP;EAID,CALD,MAKO;IACL,MAAMM,IAAI,GAAGd,QAAQ,CAACM,OAAD,CAArB;IACA,OAAO;MACLM,GAAG,EAAEE,IADA;MAELD,KAAK,EAAEC;IAFF,CAAP;EAID;AACF,CAhBM;;;;AAiBA,SAASC,WAAT,CAAqBC,KAArB,EAAkE;EACvE,MAAMC,UAAU,GAAGD,KAAK,CAACV,OAAN,IAAiBD,eAAe,CAACW,KAAK,CAACV,OAAP,CAAnD;EACA,OAAOU,KAAK,CAACV,OAAN,IAAiB,IAAAY,gBAAA,EAASF,KAAK,CAACV,OAAf,CAAjB,gBACL,wDACE;IAAG,IAAI,EAAEW,UAAU,CAACL,GAApB;IAAyB,MAAM,EAAC,QAAhC;IAAyC,GAAG,EAAC;EAA7C,GACGK,UAAU,CAACJ,KADd,CADF,CADK,GAMH,IANJ;AAOD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
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\";\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
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,MAAMA,cAAN,SAA6BC,cAAA,CAAMC,SAAnC,CAAkE;EACvEC,MAAM,GAAoB;IAAA;;IACxB,IAAIC,SAAS,gBACX;MAAM,SAAS,EAAC;IAAhB,GACG,IAAAC,0BAAA,EACC,KAAKC,KAAL,CAAWC,QADZ,EAEC,KAAKD,KAAL,CAAWE,SAFZ,EAGC,KAAKF,KAAL,CAAWG,QAHZ,CADH,CADF;;IASA,IAAIC,IAAJ;;IACA,IAAI,+BAAKJ,KAAL,CAAWE,SAAX,0GAAsBG,KAAtB,kFAA6BC,IAA7B,MAAsC,MAA1C,EAAkD;MAChDF,IAAI,GAAGG,eAAA,CAAEC,QAAF,CAAW,KAAKR,KAAL,CAAWC,QAAtB,IACH,KAAKD,KAAL,CAAWC,QADR,GAEHQ,IAAI,CAACC,SAAL,CAAe,KAAKV,KAAL,CAAWC,QAA1B,EAAoC,IAApC,EAA0C,CAA1C,CAFJ;;MAGA,IAAIG,IAAJ,EAAU;QACRN,SAAS,gBACP,6BAAC,gBAAD,CAAY,SAAZ;UACE,QAAQ,EAAE;YACRa,QAAQ,EAAE,CACRC,gBAAA,CAAKC,CAAL,CAAQ,GAAEC,iCAAuB,IAAGC,YAAA,CAAEC,IAAK,EAA3C,CADQ,EAERJ,gBAAA,CAAKC,CAAL,CAAQ,GAAEC,iCAAuB,IAAGC,YAAA,CAAEE,YAAa,EAAnD,CAFQ,CADF;YAKRb;UALQ;QADZ,GASGN,SATH,CADF;MAaD;IACF;;IACD,oBAAO,4DAAGA,SAAH,CAAP;EACD;;AAjCsE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/user-or-user-group-select/UserOrUserGroupSelect.tsx"],"names":["LegacyUserSelectFormItem","props","ref","selectRef","selectedValue","setSelectedValue","staticValue","userShowKey","objectMap","userGroupShowKey","t","NS_LIBS_CMDB_INSTANCES","getLabel","objectId","instanceData","showKey","Array","isArray","showName","map","key","index","join","getStaticLabel","label","color","isDifferent","userOfValues","value","selectedUser","userGroupOfValues","selectedUserGroup","userOfSelectedValue","item","startsWith","userGroupOfSelectedValue","sort","initializeStaticList","staticList","v","fetching","setFetching","searchValue","setSearchValue","userList","setUserList","userGroupList","setUserGroupList","modalVisible","setModalVisible","modalObjectId","setModalObjectId","optionsMode","triggerChange","changedValue","onChange","initializeSelectedValue","staticKeys","user","concat","userGroup","includes","staticValueToSet","length","query","name","$in","page","page_size","fields","list","instanceId","slice","labelValue","labelText","result","push","current","fetchInstanceList","keyword","showKeyQuery","$or","$like","hideInvalidUser","state","userQuery","userGroupQuery","searchUser","searchUserGroup","searchUserOrUserGroupInstances","Promise","all","handleSelectChange","originValue","unshift","resultValue","handleFocus","openModal","closeModal","handleInstancesSelected","resultSelectedValue","handleModalSelected","selectedKeys","instances","toggleObjectId","title","K","FILTER_FROM_CMDB_TYPE","type","USERS","USER_GROUPS","SWITCH","addMeQuickly","myUserName","username","myUser","$eq","getRight","btnWidth","hideAddMeQuickly","lineWidth","hideSelectByCMDB","iconWidth","styles","UserOrUserGroupSelectContainer","customSelect","placeholder","width","USERS_RESULT_LABEL","d","NO_DATA","USER_GROUPS_RESULT_LABEL","extra","right","fontSize","lib","icon","presetConfigs","UserSelectFormItem","UserOrUserGroupSelect","mergeUseAndUserGroup"],"mappings":"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","sourcesContent":["import React, {\n useState,\n forwardRef,\n ReactNode,\n useEffect,\n useRef,\n} from \"react\";\nimport { SearchOutlined } from \"@ant-design/icons\";\nimport { Select, Button, Divider } from \"antd\";\nimport styles from \"./UserOrUserGroupSelect.module.css\";\nimport { InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport {\n zipObject,\n map,\n debounce,\n startsWith,\n filter,\n reject,\n isNil,\n uniqBy,\n uniq,\n find,\n isEmpty,\n isEqual,\n groupBy,\n compact,\n some,\n} from \"lodash\";\nimport { FormItemWrapperProps, FormItemWrapper } from \"@next-libs/forms\";\nimport { getInstanceNameKeys } from \"@next-libs/cmdb-utils\";\nimport { InstanceListModal } from \"../../instance-list-modal/InstanceListModal\";\nimport { getAuth } from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\n\nexport type UserOrUserGroupSelectValue = {\n selectedUser?: string[];\n selectedUserGroup?: string[];\n};\n\nexport interface UserSelectFormItemProps {\n children?: ReactNode;\n objectMap?: Record<string, any>;\n onChange?: (value: any) => void;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\ninterface UserOrUserGroupSelectProps extends FormItemWrapperProps {\n objectMap: Record<string, any>;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n onChange?: (value: any) => void;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\nexport function LegacyUserSelectFormItem(\n props: UserSelectFormItemProps,\n ref: React.Ref<HTMLDivElement>\n): React.ReactElement {\n const selectRef = useRef();\n const [selectedValue, setSelectedValue] = useState([]);\n const staticValue = useRef([]);\n const userShowKey: string[] = getInstanceNameKeys(props.objectMap[\"USER\"]);\n const userGroupShowKey: string[] = getInstanceNameKeys(\n props.objectMap[\"USER_GROUP\"]\n );\n\n const { t } = useTranslation(NS_LIBS_CMDB_INSTANCES);\n\n const getLabel = (\n objectId: \"USER\" | \"USER_GROUP\",\n instanceData: any\n ): string => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n if (Array.isArray(showKey)) {\n const showName = showKey\n .map((key, index) => {\n if (index === 0) {\n return instanceData[key];\n } else {\n return instanceData[key] ? \"(\" + instanceData[key] + \")\" : \"\";\n }\n })\n .join(\"\");\n return showName;\n } else {\n return instanceData[showKey];\n }\n };\n\n const getStaticLabel = (label: string) => (\n <div style={{ color: \"var(--bg-color-button-link)\" }}>{label}</div>\n );\n\n const isDifferent = () => {\n const userOfValues = props.value?.selectedUser || [];\n const userGroupOfValues = props.value?.selectedUserGroup || [];\n const userOfSelectedValue = map(\n filter(selectedValue, (item) => !item.key.startsWith(\":\")),\n \"key\"\n );\n\n const userGroupOfSelectedValue = map(\n filter(selectedValue, (item) => item.key.startsWith(\":\")),\n \"key\"\n );\n\n return (\n !isEqual([...userOfValues].sort(), [...userOfSelectedValue].sort()) ||\n !isEqual(\n [...userGroupOfValues].sort(),\n [...userGroupOfSelectedValue].sort()\n )\n );\n };\n\n const initializeStaticList = () => {\n return groupBy(props.staticList, (v) =>\n startsWith(v, \":\") ? \"userGroup\" : \"user\"\n );\n };\n\n // 后台搜索中\n const [fetching, setFetching] = useState(false);\n\n const [searchValue, setSearchValue] = useState();\n const [userList, setUserList] = useState([]);\n const [userGroupList, setUserGroupList] = useState([]);\n\n const [modalVisible, setModalVisible] = useState(false);\n const [modalObjectId, setModalObjectId] = useState(\n props.optionsMode === \"group\" ? \"USER_GROUP\" : \"USER\"\n );\n\n const triggerChange = (changedValue: any) => {\n props.onChange?.(\n isEmpty(changedValue.selectedUser) &&\n isEmpty(changedValue.selectedUserGroup)\n ? null\n : changedValue\n );\n };\n // istanbul ignore next (Migrated from next-basic)\n useEffect(() => {\n const initializeSelectedValue = async () => {\n if (props.value) {\n let selectedUser: any[] = [];\n let selectedUserGroup: any[] = [];\n const staticKeys = initializeStaticList();\n const user = compact(\n uniq([].concat(staticKeys.user).concat(props.value.selectedUser))\n );\n\n const userGroup = compact(\n uniq(\n []\n .concat(staticKeys.userGroup)\n .concat(props.value.selectedUserGroup)\n )\n );\n\n if (\n (staticKeys.user &&\n some(\n staticKeys.user,\n (v) => !props.value?.selectedUser?.includes(v)\n )) ||\n (staticKeys.userGroup &&\n some(\n staticKeys.userGroup,\n (v) => !props.value?.selectedUserGroup?.includes(v)\n ))\n ) {\n triggerChange({\n selectedUser: user,\n selectedUserGroup: userGroup,\n });\n }\n const staticValueToSet: any[] = [];\n if (user.length && props.optionsMode !== \"group\") {\n selectedUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $in: user,\n },\n },\n\n page: 1,\n page_size: user.length,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n if (userGroup.length && props.optionsMode !== \"user\") {\n selectedUserGroup = (\n await InstanceApi_postSearch(\"USER_GROUP\", {\n query: {\n instanceId: {\n // 默认带为\":\"+instanceId,这里查询的时候去掉前面的冒号\n $in: map(userGroup, (v) => v.slice(1)),\n },\n },\n\n page: 1,\n page_size: userGroup.length,\n fields: {\n ...zipObject(\n userGroupShowKey,\n map(userGroupShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n let labelValue = [\n ...map(selectedUser, (v) => {\n const labelText = getLabel(\"USER\", v);\n const result = {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(v.name)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ...map(selectedUserGroup, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n const result = {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(\":\" + v.instanceId)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ];\n\n labelValue = [\n ...staticValueToSet,\n ...filter(labelValue, (v) => !props.staticList?.includes(v.key)),\n ];\n\n setSelectedValue(labelValue);\n staticValue.current = staticValueToSet;\n }\n };\n if (isDifferent()) {\n initializeSelectedValue();\n }\n }, [props.value]);\n\n const fetchInstanceList = async (\n objectId: \"USER\" | \"USER_GROUP\",\n keyword: string\n ) => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n const showKeyQuery = {\n $or: map(uniq([...showKey, \"name\"]), (v) => ({\n [v]: { $like: `%${keyword}%` },\n })),\n ...(props.hideInvalidUser\n ? {\n state: \"valid\",\n }\n : {}),\n };\n return (\n await InstanceApi_postSearch(objectId, {\n page: 1,\n page_size: 20,\n fields: {\n ...zipObject(\n showKey,\n map(showKey, (v) => true)\n ),\n\n name: true,\n },\n query:\n props.userQuery && objectId === \"USER\"\n ? {\n ...props.userQuery,\n ...showKeyQuery,\n }\n : props.userGroupQuery && objectId === \"USER_GROUP\"\n ? {\n ...props.userGroupQuery,\n ...showKeyQuery,\n }\n : props.query || showKeyQuery\n ? {\n ...props.query,\n ...showKeyQuery,\n }\n : showKeyQuery,\n })\n ).list;\n };\n\n const searchUser = async (value: string) => {\n setUserList(await fetchInstanceList(\"USER\", value));\n };\n\n // 用户组在instanceId前面加上:\n const searchUserGroup = async (value: string) => {\n const result = await fetchInstanceList(\"USER_GROUP\", value);\n setUserGroupList(\n result.map((v) => {\n v.instanceId = \":\" + v.instanceId;\n return v;\n })\n );\n };\n\n const searchUserOrUserGroupInstances = async (value: any) => {\n setSearchValue(value);\n setFetching(true);\n await Promise.all([\n ...(props.optionsMode !== \"group\" ? [searchUser(value)] : []),\n ...(props.optionsMode !== \"user\" ? [searchUserGroup(value)] : []),\n ]);\n\n setFetching(false);\n };\n\n const handleSelectChange = (originValue: any) => {\n const value = filter(originValue, (item) => {\n return !find(props.staticList, (v) => v === item.key);\n });\n value.unshift(...staticValue.current);\n setSelectedValue(value);\n const resultValue = {\n selectedUser: map(\n reject(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n if (searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleFocus = () => {\n if (isNil(searchValue) || searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const openModal = () => {\n setModalVisible(true);\n };\n // istanbul ignore next (Migrated from next-basic)\n const closeModal = () => {\n setModalVisible(false);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleInstancesSelected = (\n value: Record<string, any>[],\n objectId: string\n ): void => {\n let labelValue: any[] = [];\n if (objectId === \"USER\") {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER\", v);\n return {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n } else {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n return {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n }\n const resultSelectedValue = uniqBy(\n [...selectedValue, ...labelValue],\n \"key\"\n );\n\n setSelectedValue(resultSelectedValue);\n const resultValue = {\n selectedUser: map(\n reject(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleModalSelected = async (selectedKeys: string[]) => {\n if (selectedKeys?.length) {\n const instances = (\n await InstanceApi_postSearch(modalObjectId, {\n query: { instanceId: { $in: selectedKeys } },\n fields: { \"*\": true },\n page_size: selectedKeys.length,\n })\n ).list;\n handleInstancesSelected(instances, modalObjectId);\n }\n setModalVisible(false);\n };\n\n const toggleObjectId = () => {\n setModalObjectId(modalObjectId === \"USER\" ? \"USER_GROUP\" : \"USER\");\n };\n\n const title = (\n <div>\n {t(K.FILTER_FROM_CMDB_TYPE, {\n type: modalObjectId === \"USER\" ? t(K.USERS) : t(K.USER_GROUPS),\n })}{\" \"}\n {props.optionsMode === \"all\" && (\n <Button type=\"link\" onClick={toggleObjectId}>\n {t(K.SWITCH, {\n type: modalObjectId === \"USER\" ? t(K.USER_GROUPS) : t(K.USERS),\n })}{\" \"}\n </Button>\n )}\n </div>\n );\n\n // 快速选择我\n // istanbul ignore next (Migrated from next-basic)\n const addMeQuickly = async () => {\n const myUserName = getAuth().username;\n if (find(selectedValue, (v) => v.key === myUserName)) {\n // 如果已选择项中包含我,则不重新发起请求\n return;\n }\n const myUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $eq: myUserName,\n },\n },\n\n page: 1,\n page_size: 1,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n handleInstancesSelected(myUser, \"USER\");\n };\n\n const getRight = () => {\n const btnWidth =\n !props.hideAddMeQuickly && props.optionsMode !== \"group\" ? -34 : 0;\n const lineWidth =\n !props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB\n ? -1\n : 0;\n const iconWidth = props.hideSelectByCMDB ? 0 : -32;\n return btnWidth + lineWidth + iconWidth;\n };\n\n return (\n <div\n ref={ref}\n data-testid=\"wrapper\"\n className={styles.UserOrUserGroupSelectContainer}\n >\n <Select\n className={styles.customSelect}\n ref={selectRef}\n allowClear={true}\n mode=\"multiple\"\n labelInValue\n placeholder={props.placeholder}\n filterOption={false}\n value={selectedValue}\n onChange={handleSelectChange}\n onSearch={debounce((value) => {\n searchUserOrUserGroupInstances(value as string);\n }, 500)}\n onFocus={handleFocus}\n style={{ width: \"100%\" }}\n loading={fetching}\n >\n {props.optionsMode !== \"group\" && (\n <Select.OptGroup label={t(K.USERS_RESULT_LABEL)}>\n {userList.length > 0 ? (\n userList.map((d) => (\n <Select.Option value={d.name} key={d.name}>\n {props.staticList?.includes(d.name)\n ? getStaticLabel(getLabel(\"USER\", d))\n : getLabel(\"USER\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option value=\"empty-user\" key=\"empty-user\" disabled>\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n\n {props.optionsMode !== \"user\" && (\n <Select.OptGroup label={t(K.USER_GROUPS_RESULT_LABEL)}>\n {userGroupList.length > 0 ? (\n userGroupList.map((d) => (\n <Select.Option value={d.instanceId} key={d.instanceId}>\n {props.staticList?.includes(d.instanceId)\n ? getStaticLabel(getLabel(\"USER_GROUP\", d))\n : getLabel(\"USER_GROUP\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option\n value=\"empty-user-group\"\n key=\"empty-user-group\"\n disabled\n >\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n </Select>\n <div className={styles.extra} style={{ right: getRight() }}>\n {!props.hideAddMeQuickly && props.optionsMode !== \"group\" && (\n <Button\n type=\"link\"\n onClick={addMeQuickly}\n style={{ fontSize: \"16px\" }}\n >\n <GeneralIcon icon={{ lib: \"easyops\", icon: \"quick-add-me\" }} />\n </Button>\n )}\n\n {!props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB && <Divider type=\"vertical\" />}\n {!props.hideSelectByCMDB && (\n <Button\n type=\"link\"\n icon={<SearchOutlined />}\n onClick={openModal}\n ></Button>\n )}\n </div>\n <InstanceListModal\n objectMap={props.objectMap}\n objectId={modalObjectId}\n visible={modalVisible}\n title={title}\n onSelected={handleModalSelected}\n onCancel={closeModal}\n showSizeChanger={true}\n {...(modalObjectId === \"USER\" && props.hideInvalidUser\n ? {\n presetConfigs: {\n query: {\n state: \"valid\",\n },\n },\n }\n : {})}\n />\n </div>\n );\n}\n\nexport const UserSelectFormItem = forwardRef<HTMLDivElement>(\n LegacyUserSelectFormItem\n) as any;\n\nexport function UserOrUserGroupSelect(\n props: UserOrUserGroupSelectProps\n): React.ReactElement {\n return (\n <FormItemWrapper {...props}>\n <UserSelectFormItem\n objectMap={props.objectMap}\n placeholder={props.placeholder}\n value={props.value}\n hideAddMeQuickly={props.hideAddMeQuickly}\n hideSelectByCMDB={props.hideSelectByCMDB}\n onChange={props.onChange}\n optionsMode={props.optionsMode}\n staticList={props.staticList}\n mergeUseAndUserGroup={props.mergeUseAndUserGroup}\n query={props.query}\n hideInvalidUser={props.hideInvalidUser}\n userQuery={props.userQuery}\n userGroupQuery={props.userGroupQuery}\n />\n </FormItemWrapper>\n );\n}\n"],"file":"UserOrUserGroupSelect.js"}
|
|
1
|
+
{"version":3,"file":"UserOrUserGroupSelect.js","names":["LegacyUserSelectFormItem","props","ref","selectRef","useRef","selectedValue","setSelectedValue","useState","staticValue","userShowKey","getInstanceNameKeys","objectMap","userGroupShowKey","t","useTranslation","NS_LIBS_CMDB_INSTANCES","getLabel","objectId","instanceData","showKey","Array","isArray","showName","map","key","index","join","getStaticLabel","label","color","isDifferent","userOfValues","value","selectedUser","userGroupOfValues","selectedUserGroup","userOfSelectedValue","filter","item","startsWith","userGroupOfSelectedValue","isEqual","sort","initializeStaticList","groupBy","staticList","v","fetching","setFetching","searchValue","setSearchValue","userList","setUserList","userGroupList","setUserGroupList","modalVisible","setModalVisible","modalObjectId","setModalObjectId","optionsMode","triggerChange","changedValue","onChange","isEmpty","useEffect","initializeSelectedValue","staticKeys","user","compact","uniq","concat","userGroup","some","includes","staticValueToSet","length","InstanceApi_postSearch","query","name","$in","page","page_size","fields","zipObject","list","instanceId","slice","labelValue","labelText","result","push","current","fetchInstanceList","keyword","showKeyQuery","$or","$like","hideInvalidUser","state","userQuery","userGroupQuery","searchUser","searchUserGroup","searchUserOrUserGroupInstances","Promise","all","handleSelectChange","originValue","find","unshift","resultValue","reject","handleFocus","isNil","openModal","closeModal","handleInstancesSelected","resultSelectedValue","uniqBy","handleModalSelected","selectedKeys","instances","toggleObjectId","title","K","FILTER_FROM_CMDB_TYPE","type","USERS","USER_GROUPS","SWITCH","addMeQuickly","myUserName","getAuth","username","myUser","$eq","getRight","btnWidth","hideAddMeQuickly","lineWidth","hideSelectByCMDB","iconWidth","styles","UserOrUserGroupSelectContainer","customSelect","placeholder","debounce","width","USERS_RESULT_LABEL","d","NO_DATA","USER_GROUPS_RESULT_LABEL","extra","right","fontSize","lib","icon","presetConfigs","UserSelectFormItem","forwardRef","UserOrUserGroupSelect","mergeUseAndUserGroup"],"sources":["../../../../src/components/user-or-user-group-select/UserOrUserGroupSelect.tsx"],"sourcesContent":["import React, {\n useState,\n forwardRef,\n ReactNode,\n useEffect,\n useRef,\n} from \"react\";\nimport { SearchOutlined } from \"@ant-design/icons\";\nimport { Select, Button, Divider } from \"antd\";\nimport styles from \"./UserOrUserGroupSelect.module.css\";\nimport { InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport {\n zipObject,\n map,\n debounce,\n startsWith,\n filter,\n reject,\n isNil,\n uniqBy,\n uniq,\n find,\n isEmpty,\n isEqual,\n groupBy,\n compact,\n some,\n} from \"lodash\";\nimport { FormItemWrapperProps, FormItemWrapper } from \"@next-libs/forms\";\nimport { getInstanceNameKeys } from \"@next-libs/cmdb-utils\";\nimport { InstanceListModal } from \"../../instance-list-modal/InstanceListModal\";\nimport { getAuth } from \"@next-core/brick-kit\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../i18n/constants\";\n\nexport type UserOrUserGroupSelectValue = {\n selectedUser?: string[];\n selectedUserGroup?: string[];\n};\n\nexport interface UserSelectFormItemProps {\n children?: ReactNode;\n objectMap?: Record<string, any>;\n onChange?: (value: any) => void;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\ninterface UserOrUserGroupSelectProps extends FormItemWrapperProps {\n objectMap: Record<string, any>;\n placeholder?: string;\n value?: UserOrUserGroupSelectValue;\n hideAddMeQuickly?: boolean;\n hideSelectByCMDB?: boolean;\n onChange?: (value: any) => void;\n optionsMode?: \"user\" | \"group\" | \"all\";\n staticList?: string[];\n mergeUseAndUserGroup?: boolean;\n query?: Record<string, any>;\n hideInvalidUser?: boolean;\n userGroupQuery?: Record<string, any>;\n userQuery?: Record<string, any>;\n}\n\nexport function LegacyUserSelectFormItem(\n props: UserSelectFormItemProps,\n ref: React.Ref<HTMLDivElement>\n): React.ReactElement {\n const selectRef = useRef();\n const [selectedValue, setSelectedValue] = useState([]);\n const staticValue = useRef([]);\n const userShowKey: string[] = getInstanceNameKeys(props.objectMap[\"USER\"]);\n const userGroupShowKey: string[] = getInstanceNameKeys(\n props.objectMap[\"USER_GROUP\"]\n );\n\n const { t } = useTranslation(NS_LIBS_CMDB_INSTANCES);\n\n const getLabel = (\n objectId: \"USER\" | \"USER_GROUP\",\n instanceData: any\n ): string => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n if (Array.isArray(showKey)) {\n const showName = showKey\n .map((key, index) => {\n if (index === 0) {\n return instanceData[key];\n } else {\n return instanceData[key] ? \"(\" + instanceData[key] + \")\" : \"\";\n }\n })\n .join(\"\");\n return showName;\n } else {\n return instanceData[showKey];\n }\n };\n\n const getStaticLabel = (label: string) => (\n <div style={{ color: \"var(--bg-color-button-link)\" }}>{label}</div>\n );\n\n const isDifferent = () => {\n const userOfValues = props.value?.selectedUser || [];\n const userGroupOfValues = props.value?.selectedUserGroup || [];\n const userOfSelectedValue = map(\n filter(selectedValue, (item) => !item.key.startsWith(\":\")),\n \"key\"\n );\n\n const userGroupOfSelectedValue = map(\n filter(selectedValue, (item) => item.key.startsWith(\":\")),\n \"key\"\n );\n\n return (\n !isEqual([...userOfValues].sort(), [...userOfSelectedValue].sort()) ||\n !isEqual(\n [...userGroupOfValues].sort(),\n [...userGroupOfSelectedValue].sort()\n )\n );\n };\n\n const initializeStaticList = () => {\n return groupBy(props.staticList, (v) =>\n startsWith(v, \":\") ? \"userGroup\" : \"user\"\n );\n };\n\n // 后台搜索中\n const [fetching, setFetching] = useState(false);\n\n const [searchValue, setSearchValue] = useState();\n const [userList, setUserList] = useState([]);\n const [userGroupList, setUserGroupList] = useState([]);\n\n const [modalVisible, setModalVisible] = useState(false);\n const [modalObjectId, setModalObjectId] = useState(\n props.optionsMode === \"group\" ? \"USER_GROUP\" : \"USER\"\n );\n\n const triggerChange = (changedValue: any) => {\n props.onChange?.(\n isEmpty(changedValue.selectedUser) &&\n isEmpty(changedValue.selectedUserGroup)\n ? null\n : changedValue\n );\n };\n // istanbul ignore next (Migrated from next-basic)\n useEffect(() => {\n const initializeSelectedValue = async () => {\n if (props.value) {\n let selectedUser: any[] = [];\n let selectedUserGroup: any[] = [];\n const staticKeys = initializeStaticList();\n const user = compact(\n uniq([].concat(staticKeys.user).concat(props.value.selectedUser))\n );\n\n const userGroup = compact(\n uniq(\n []\n .concat(staticKeys.userGroup)\n .concat(props.value.selectedUserGroup)\n )\n );\n\n if (\n (staticKeys.user &&\n some(\n staticKeys.user,\n (v) => !props.value?.selectedUser?.includes(v)\n )) ||\n (staticKeys.userGroup &&\n some(\n staticKeys.userGroup,\n (v) => !props.value?.selectedUserGroup?.includes(v)\n ))\n ) {\n triggerChange({\n selectedUser: user,\n selectedUserGroup: userGroup,\n });\n }\n const staticValueToSet: any[] = [];\n if (user.length && props.optionsMode !== \"group\") {\n selectedUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $in: user,\n },\n },\n\n page: 1,\n page_size: user.length,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n if (userGroup.length && props.optionsMode !== \"user\") {\n selectedUserGroup = (\n await InstanceApi_postSearch(\"USER_GROUP\", {\n query: {\n instanceId: {\n // 默认带为\":\"+instanceId,这里查询的时候去掉前面的冒号\n $in: map(userGroup, (v) => v.slice(1)),\n },\n },\n\n page: 1,\n page_size: userGroup.length,\n fields: {\n ...zipObject(\n userGroupShowKey,\n map(userGroupShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n }\n let labelValue = [\n ...map(selectedUser, (v) => {\n const labelText = getLabel(\"USER\", v);\n const result = {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(v.name)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ...map(selectedUserGroup, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n const result = {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n\n if (props.staticList?.includes(\":\" + v.instanceId)) {\n staticValueToSet.push(result);\n }\n return result;\n }),\n ];\n\n labelValue = [\n ...staticValueToSet,\n ...filter(labelValue, (v) => !props.staticList?.includes(v.key)),\n ];\n\n setSelectedValue(labelValue);\n staticValue.current = staticValueToSet;\n }\n };\n if (isDifferent()) {\n initializeSelectedValue();\n }\n }, [props.value]);\n\n const fetchInstanceList = async (\n objectId: \"USER\" | \"USER_GROUP\",\n keyword: string\n ) => {\n const showKey = objectId === \"USER\" ? userShowKey : userGroupShowKey;\n const showKeyQuery = {\n $or: map(uniq([...showKey, \"name\"]), (v) => ({\n [v]: { $like: `%${keyword}%` },\n })),\n ...(props.hideInvalidUser\n ? {\n state: \"valid\",\n }\n : {}),\n };\n return (\n await InstanceApi_postSearch(objectId, {\n page: 1,\n page_size: 20,\n fields: {\n ...zipObject(\n showKey,\n map(showKey, (v) => true)\n ),\n\n name: true,\n },\n query:\n props.userQuery && objectId === \"USER\"\n ? {\n ...props.userQuery,\n ...showKeyQuery,\n }\n : props.userGroupQuery && objectId === \"USER_GROUP\"\n ? {\n ...props.userGroupQuery,\n ...showKeyQuery,\n }\n : props.query || showKeyQuery\n ? {\n ...props.query,\n ...showKeyQuery,\n }\n : showKeyQuery,\n })\n ).list;\n };\n\n const searchUser = async (value: string) => {\n setUserList(await fetchInstanceList(\"USER\", value));\n };\n\n // 用户组在instanceId前面加上:\n const searchUserGroup = async (value: string) => {\n const result = await fetchInstanceList(\"USER_GROUP\", value);\n setUserGroupList(\n result.map((v) => {\n v.instanceId = \":\" + v.instanceId;\n return v;\n })\n );\n };\n\n const searchUserOrUserGroupInstances = async (value: any) => {\n setSearchValue(value);\n setFetching(true);\n await Promise.all([\n ...(props.optionsMode !== \"group\" ? [searchUser(value)] : []),\n ...(props.optionsMode !== \"user\" ? [searchUserGroup(value)] : []),\n ]);\n\n setFetching(false);\n };\n\n const handleSelectChange = (originValue: any) => {\n const value = filter(originValue, (item) => {\n return !find(props.staticList, (v) => v === item.key);\n });\n value.unshift(...staticValue.current);\n setSelectedValue(value);\n const resultValue = {\n selectedUser: map(\n reject(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(value, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n if (searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleFocus = () => {\n if (isNil(searchValue) || searchValue !== \"\") {\n searchUserOrUserGroupInstances(\"\");\n }\n };\n // istanbul ignore next (Migrated from next-basic)\n const openModal = () => {\n setModalVisible(true);\n };\n // istanbul ignore next (Migrated from next-basic)\n const closeModal = () => {\n setModalVisible(false);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleInstancesSelected = (\n value: Record<string, any>[],\n objectId: string\n ): void => {\n let labelValue: any[] = [];\n if (objectId === \"USER\") {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER\", v);\n return {\n key: v.name,\n label: props.staticList?.includes(v.name)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n } else {\n labelValue = [\n ...map(value, (v) => {\n const labelText = getLabel(\"USER_GROUP\", v);\n return {\n key: \":\" + v.instanceId,\n label: props.staticList?.includes(\":\" + v.instanceId)\n ? getStaticLabel(labelText)\n : labelText,\n };\n }),\n ];\n }\n const resultSelectedValue = uniqBy(\n [...selectedValue, ...labelValue],\n \"key\"\n );\n\n setSelectedValue(resultSelectedValue);\n const resultValue = {\n selectedUser: map(\n reject(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n\n selectedUserGroup: map(\n filter(resultSelectedValue, (v) => {\n return startsWith(v.key, \":\");\n }),\n \"key\"\n ),\n };\n\n triggerChange(resultValue);\n };\n // istanbul ignore next (Migrated from next-basic)\n const handleModalSelected = async (selectedKeys: string[]) => {\n if (selectedKeys?.length) {\n const instances = (\n await InstanceApi_postSearch(modalObjectId, {\n query: { instanceId: { $in: selectedKeys } },\n fields: { \"*\": true },\n page_size: selectedKeys.length,\n })\n ).list;\n handleInstancesSelected(instances, modalObjectId);\n }\n setModalVisible(false);\n };\n\n const toggleObjectId = () => {\n setModalObjectId(modalObjectId === \"USER\" ? \"USER_GROUP\" : \"USER\");\n };\n\n const title = (\n <div>\n {t(K.FILTER_FROM_CMDB_TYPE, {\n type: modalObjectId === \"USER\" ? t(K.USERS) : t(K.USER_GROUPS),\n })}{\" \"}\n {props.optionsMode === \"all\" && (\n <Button type=\"link\" onClick={toggleObjectId}>\n {t(K.SWITCH, {\n type: modalObjectId === \"USER\" ? t(K.USER_GROUPS) : t(K.USERS),\n })}{\" \"}\n </Button>\n )}\n </div>\n );\n\n // 快速选择我\n // istanbul ignore next (Migrated from next-basic)\n const addMeQuickly = async () => {\n const myUserName = getAuth().username;\n if (find(selectedValue, (v) => v.key === myUserName)) {\n // 如果已选择项中包含我,则不重新发起请求\n return;\n }\n const myUser = (\n await InstanceApi_postSearch(\"USER\", {\n query: {\n name: {\n $eq: myUserName,\n },\n },\n\n page: 1,\n page_size: 1,\n fields: {\n ...zipObject(\n userShowKey,\n map(userShowKey, (v) => true)\n ),\n\n name: true,\n },\n })\n ).list;\n handleInstancesSelected(myUser, \"USER\");\n };\n\n const getRight = () => {\n const btnWidth =\n !props.hideAddMeQuickly && props.optionsMode !== \"group\" ? -34 : 0;\n const lineWidth =\n !props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB\n ? -1\n : 0;\n const iconWidth = props.hideSelectByCMDB ? 0 : -32;\n return btnWidth + lineWidth + iconWidth;\n };\n\n return (\n <div\n ref={ref}\n data-testid=\"wrapper\"\n className={styles.UserOrUserGroupSelectContainer}\n >\n <Select\n className={styles.customSelect}\n ref={selectRef}\n allowClear={true}\n mode=\"multiple\"\n labelInValue\n placeholder={props.placeholder}\n filterOption={false}\n value={selectedValue}\n onChange={handleSelectChange}\n onSearch={debounce((value) => {\n searchUserOrUserGroupInstances(value as string);\n }, 500)}\n onFocus={handleFocus}\n style={{ width: \"100%\" }}\n loading={fetching}\n >\n {props.optionsMode !== \"group\" && (\n <Select.OptGroup label={t(K.USERS_RESULT_LABEL)}>\n {userList.length > 0 ? (\n userList.map((d) => (\n <Select.Option value={d.name} key={d.name}>\n {props.staticList?.includes(d.name)\n ? getStaticLabel(getLabel(\"USER\", d))\n : getLabel(\"USER\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option value=\"empty-user\" key=\"empty-user\" disabled>\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n\n {props.optionsMode !== \"user\" && (\n <Select.OptGroup label={t(K.USER_GROUPS_RESULT_LABEL)}>\n {userGroupList.length > 0 ? (\n userGroupList.map((d) => (\n <Select.Option value={d.instanceId} key={d.instanceId}>\n {props.staticList?.includes(d.instanceId)\n ? getStaticLabel(getLabel(\"USER_GROUP\", d))\n : getLabel(\"USER_GROUP\", d)}\n </Select.Option>\n ))\n ) : (\n <Select.Option\n value=\"empty-user-group\"\n key=\"empty-user-group\"\n disabled\n >\n {t(K.NO_DATA)}\n </Select.Option>\n )}\n </Select.OptGroup>\n )}\n </Select>\n <div className={styles.extra} style={{ right: getRight() }}>\n {!props.hideAddMeQuickly && props.optionsMode !== \"group\" && (\n <Button\n type=\"link\"\n onClick={addMeQuickly}\n style={{ fontSize: \"16px\" }}\n >\n <GeneralIcon icon={{ lib: \"easyops\", icon: \"quick-add-me\" }} />\n </Button>\n )}\n\n {!props.hideAddMeQuickly &&\n props.optionsMode !== \"group\" &&\n !props.hideSelectByCMDB && <Divider type=\"vertical\" />}\n {!props.hideSelectByCMDB && (\n <Button\n type=\"link\"\n icon={<SearchOutlined />}\n onClick={openModal}\n ></Button>\n )}\n </div>\n <InstanceListModal\n objectMap={props.objectMap}\n objectId={modalObjectId}\n visible={modalVisible}\n title={title}\n onSelected={handleModalSelected}\n onCancel={closeModal}\n showSizeChanger={true}\n {...(modalObjectId === \"USER\" && props.hideInvalidUser\n ? {\n presetConfigs: {\n query: {\n state: \"valid\",\n },\n },\n }\n : {})}\n />\n </div>\n );\n}\n\nexport const UserSelectFormItem = forwardRef<HTMLDivElement>(\n LegacyUserSelectFormItem\n) as any;\n\nexport function UserOrUserGroupSelect(\n props: UserOrUserGroupSelectProps\n): React.ReactElement {\n return (\n <FormItemWrapper {...props}>\n <UserSelectFormItem\n objectMap={props.objectMap}\n placeholder={props.placeholder}\n value={props.value}\n hideAddMeQuickly={props.hideAddMeQuickly}\n hideSelectByCMDB={props.hideSelectByCMDB}\n onChange={props.onChange}\n optionsMode={props.optionsMode}\n staticList={props.staticList}\n mergeUseAndUserGroup={props.mergeUseAndUserGroup}\n query={props.query}\n hideInvalidUser={props.hideInvalidUser}\n userQuery={props.userQuery}\n userGroupQuery={props.userGroupQuery}\n />\n </FormItemWrapper>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"fetchCmdbInstanceDetail.js","names":["fetchCmdbInstanceDetail","objectId","instanceId","InstanceApi_getDetail","fetchCmdbInstanceDetailByFields","fields","relation_limit"],"sources":["../../../src/data-providers/fetchCmdbInstanceDetail.ts"],"sourcesContent":["import {\n InstanceApi_GetDetailResponseBody,\n InstanceApi_getDetail,\n InstanceApi_GetDetailRequestParams,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceDetail(\n objectId: string,\n instanceId: string\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {});\n}\n\nexport function fetchCmdbInstanceDetailByFields(\n objectId: string,\n instanceId: string,\n fields: string,\n relation_limit?: number\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {\n fields,\n relation_limit,\n } as InstanceApi_GetDetailRequestParams);\n}\n"],"mappings":";;;;;;;;AAAA;;AAMO,SAASA,uBAAT,CACLC,QADK,EAELC,UAFK,EAGgD;EACrD,OAAO,IAAAC,8BAAA,EAAsBF,QAAtB,EAAgCC,UAAhC,EAA4C,EAA5C,CAAP;AACD;;AAEM,SAASE,+BAAT,CACLH,QADK,EAELC,UAFK,EAGLG,MAHK,EAILC,cAJK,EAKgD;EACrD,OAAO,IAAAH,8BAAA,EAAsBF,QAAtB,EAAgCC,UAAhC,EAA4C;IACjDG,MADiD;IAEjDC;EAFiD,CAA5C,CAAP;AAID"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"fetchCmdbInstanceSearch.js","names":["fetchCmdbInstanceSearch","objectId","params","InstanceApi_postSearchV3"],"sources":["../../../src/data-providers/fetchCmdbInstanceSearch.ts"],"sourcesContent":["import {\n InstanceApi_PostSearchV3RequestBody,\n InstanceApi_PostSearchV3ResponseBody,\n InstanceApi_postSearchV3,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceSearch(\n objectId: string,\n params: InstanceApi_PostSearchV3RequestBody\n): Promise<Partial<InstanceApi_PostSearchV3ResponseBody>> {\n return InstanceApi_postSearchV3(objectId, params);\n}\n"],"mappings":";;;;;;;AAAA;;AAMO,SAASA,uBAAT,CACLC,QADK,EAELC,MAFK,EAGmD;EACxD,OAAO,IAAAC,iCAAA,EAAyBF,QAAzB,EAAmCC,MAAnC,CAAP;AACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"fetchCmdbObjectDetail.js","names":["fetchCmdbObjectDetail","objectId","CmdbObjectApi_getDetail"],"sources":["../../../src/data-providers/fetchCmdbObjectDetail.ts"],"sourcesContent":["import { CmdbModels, CmdbObjectApi_getDetail } from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbObjectDetail(\n objectId: string\n): Promise<Partial<CmdbModels.ModelCmdbObject>> {\n return CmdbObjectApi_getDetail(objectId, {});\n}\n"],"mappings":";;;;;;;AAAA;;AAEO,SAASA,qBAAT,CACLC,QADK,EAEyC;EAC9C,OAAO,IAAAC,gCAAA,EAAwBD,QAAxB,EAAkC,EAAlC,CAAP;AACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"fetchCmdbObjectList.js","names":["fetchCmdbObjectList","CmdbObjectApi_getObjectAll"],"sources":["../../../src/data-providers/fetchCmdbObjectList.ts"],"sourcesContent":["import {\n CmdbObjectApi_GetObjectAllResponseBody,\n CmdbObjectApi_getObjectAll,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbObjectList(): Promise<CmdbObjectApi_GetObjectAllResponseBody> {\n return CmdbObjectApi_getObjectAll({});\n}\n"],"mappings":";;;;;;;AAAA;;AAKO,SAASA,mBAAT,GAAgF;EACrF,OAAO,IAAAC,mCAAA,EAA2B,EAA3B,CAAP;AACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"fetchCmdbObjectRef.js","names":["fetchCmdbObjectRef","objectId","CmdbObjectApi_getObjectRef","ref_object"],"sources":["../../../src/data-providers/fetchCmdbObjectRef.ts"],"sourcesContent":["import {\n CmdbObjectApi_GetObjectRefResponseBody,\n CmdbObjectApi_getObjectRef,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbObjectRef(\n objectId: string\n): Promise<CmdbObjectApi_GetObjectRefResponseBody> {\n return CmdbObjectApi_getObjectRef({ ref_object: objectId });\n}\n"],"mappings":";;;;;;;AAAA;;AAKO,SAASA,kBAAT,CACLC,QADK,EAE4C;EACjD,OAAO,IAAAC,mCAAA,EAA2B;IAAEC,UAAU,EAAEF;EAAd,CAA3B,CAAP;AACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/data-providers/index.ts"],"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/data-providers/index.ts"],"sourcesContent":["export * from \"./fetchCmdbObjectDetail\";\nexport * from \"./fetchCmdbInstanceDetail\";\nexport * from \"./fetchCmdbObjectList\";\nexport * from \"./fetchCmdbObjectRef\";\nexport * from \"./fetchCmdbInstanceSearch\";\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"FloatDisplayBrick.js","names":["floatMaxLengthMatch","value","pattern","match","FloatDisplayBrick","props","floatValue","regex","test","cursor"],"sources":["../../../src/float-display-brick/FloatDisplayBrick.tsx"],"sourcesContent":["import React from \"react\";\nimport { Tooltip } from \"antd\";\n\ninterface FloatDisplayBrickProps {\n floatValue: number;\n}\nexport const floatMaxLengthMatch = (value: string): string => {\n const pattern = /[0-9]+(.[0-9]{1,4})?/;\n return value.match(pattern)?.[0];\n};\nexport function FloatDisplayBrick(\n props: FloatDisplayBrickProps\n): React.ReactElement {\n const { floatValue } = props;\n const value = floatValue + \"\";\n const regex = /^[0-9]+(.[0-9]{1,4})?$/gi;\n return value && !regex.test(value) ? (\n <Tooltip title={floatValue}>\n <span style={{ cursor: \"pointer\" }} key={floatValue}>\n {floatMaxLengthMatch(value)}\n </span>\n </Tooltip>\n ) : (\n <span>{floatValue}</span>\n );\n}\n"],"mappings":";;;;;;;;;;AAAA;;AACA;;AAKO,MAAMA,mBAAmB,GAAIC,KAAD,IAA2B;EAAA;;EAC5D,MAAMC,OAAO,GAAG,sBAAhB;EACA,uBAAOD,KAAK,CAACE,KAAN,CAAYD,OAAZ,CAAP,iDAAO,aAAuB,CAAvB,CAAP;AACD,CAHM;;;;AAIA,SAASE,iBAAT,CACLC,KADK,EAEe;EACpB,MAAM;IAAEC;EAAF,IAAiBD,KAAvB;EACA,MAAMJ,KAAK,GAAGK,UAAU,GAAG,EAA3B;EACA,MAAMC,KAAK,GAAG,0BAAd;EACA,OAAON,KAAK,IAAI,CAACM,KAAK,CAACC,IAAN,CAAWP,KAAX,CAAV,gBACL,6BAAC,aAAD;IAAS,KAAK,EAAEK;EAAhB,gBACE;IAAM,KAAK,EAAE;MAAEG,MAAM,EAAE;IAAV,CAAb;IAAoC,GAAG,EAAEH;EAAzC,GACGN,mBAAmB,CAACC,KAAD,CADtB,CADF,CADK,gBAOL,2CAAOK,UAAP,CAPF;AASD"}
|