@next-libs/cmdb-instances 6.42.1 → 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 +30 -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 +1 -15
- 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 +3 -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 +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 +3 -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/index.d.ts +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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/model-attribute-form/ModelAttributeForm.tsx"],"names":["React","Component","Form","Button","Checkbox","Collapse","Tooltip","InfoCircleOutlined","FormControlTypeEnum","ModelAttributeFormControl","ModelAttributeValueType","AttributeFormControlUrl","_","get","isNil","keyBy","pickBy","CmdbInstancesSelectPanel","modifyModelData","getFixedStyle","styles","UserOrUserGroupSelect","permissionListMapOfApp","i18n","K","NS_LIBS_CMDB_INSTANCES","DEFAULT_ATTRIBUTE_TAG","RefCmdbInstancesSelectPanel","forwardRef","ModelAttributeForm","constructor","props","labelCol","span","wrapperCol","setState","fixedStyle","cardRect","getBoundingClientRect","key","includes","values","appPermissionAuthorizers","Object","forEach","r","selectedUser","concat","selectedUserGroup","deleteAuthorizers","readAuthorizers","updateAuthorizers","objectId","operateAuthorizers","err","type","continueCreating","state","sending","result","onSubmit","enabledWhiteList","permissionList","valuesProcess","form","resetFields","e","preventDefault","scrollToFirstError","validateFieldsAndScroll","scroll","offsetTop","offsetBottom","validateFieldsCallback","validateFields","target","checked","relation","InitialRelationValue","attributeFormControlInitialValueMap","left_id","initialValue","map","instanceData","instanceId","left_name","formItemProps","getFieldDecorator","rules","relationRules","isFilterView","modelMap","right_object_id","t","ADD","left_max","showDetailUrl","onCancel","objectList","modelData","hideModelData","view","hide_columns","AttrListGroupByTag","fieldsByTag","items","fields","filter","item","name","getFieldsByTag","basicInfoAttrList","basicInfoAttr","groupTag","tag","left_tags","attrs","find","blackList","id","push","attrListGroupByTag","showError","defaultValueTemplateIndex","componentDidMount","top","bottom","window","innerHeight","addEventListener","resizeUpdate","componentWillUnmount","removeEventListener","getDerivedStateFromProps","setFieldsValue","getFieldsValue","attributeList","Map","has","set","field","appendAttr","__fieldList","__field","__id","undefined","Array","from","sortAttributeList","tagList","store","prop","v","handleFormErrors","fieldsError","keys","some","disabled","tagsValidator","attribute","rule","value","callback","isArray","NOT_MEET_REGEX","isValidAll","every","computePattern","test","urlValidator","url","breakDownValue","left_required","leftRequired","getRules","required","requireRule","message","ATTRIBUTE_NAME_REQUIRED","attribute_name","right_description","requiredRule","IP","STRING","JSON","whitespace","computeFormControlType","regex","INTEGER","ENUMS","URL","validator","TAGS","pattern","error","render","Panel","brickList","allowContinueCreate","showCancelButton","cancelText","confirmText","cancelType","defaultUserOrUserGroup","defaultActiveKey","brick","collapse","collapseStyle","list","index","__isRelation","renderRelationFormControl","description","padding","color","isString","stringify","isCreate","header","label","element","options","PERMISSION_WHITELIST","remark","permissionAttrProcess","action","objectListOfUser","submitContainer","generalFormFooter","borderTop","paddingTop","paddingLeft","handleCheckContinueCreating","CREATE_ANOTHER","hasRelateId","isApprove","handleSubmit","submitAndContinueBtn","SAVE_AND_CONTINUE","SAVE","marginLeft","handleCancel","CANCEL","InstanceModelAttributeForm","create"],"mappings":"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","sourcesContent":["import React, { Component, FormEvent } from \"react\";\nimport { Form } from \"@ant-design/compatible\";\nimport { Button, Checkbox, Collapse, Tooltip } from \"antd\";\nimport { ButtonType } from \"antd/lib/button\";\nimport { InfoCircleOutlined } from \"@ant-design/icons\";\nimport {\n CmdbModels,\n InstanceApi_GetDefaultValueTemplateResponseBody,\n InstanceApi_GetDetailResponseBody,\n CmdbObjectApi_getObjectRef,\n} from \"@next-sdk/cmdb-sdk\";\nimport {\n FormComponentProps,\n FormItemProps,\n ValidationRule,\n} from \"@ant-design/compatible/lib/form\";\nimport {\n FormControlTypeEnum,\n ModelAttributeFormControl,\n ModelAttributeValueType,\n} from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport _, { get, isNil, keyBy, pickBy } from \"lodash\";\n\nimport { CmdbInstancesSelectPanel } from \"../cmdb-instances-select-panel/CmdbInstancesSelectPanel\";\nimport {\n ModifiedModelCmdbObject,\n ModifiedModelObjectAttr,\n ModifiedModelObjectField,\n ModifiedModelObjectRelation,\n modifyModelData,\n getFixedStyle,\n} from \"@next-libs/cmdb-utils\";\nimport styles from \"./ModelAttributeForm.module.css\";\nimport { UserOrUserGroupSelect } from \"../components\";\nimport { permissionListMapOfApp } from \"./constants\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nconst DEFAULT_ATTRIBUTE_TAG = \"基本信息\";\nexport interface ModelAttributeFormChildren {\n header: string;\n name: string;\n label: string;\n options?: { [key: string]: any };\n}\n\nexport interface FieldsByTag {\n name: string;\n fields: string[];\n}\n\ninterface ModelAttributeFormProps extends FormComponentProps {\n isCreate?: boolean;\n disabled?: boolean;\n objectId?: string;\n allowContinueCreate?: boolean;\n blackList?: string[]; // 黑名单\n brickList?: ModelAttributeFormChildren[];\n fieldsByTag?: FieldsByTag[];\n formItemProps?: FormItemProps;\n onSubmit(data: any): Promise<any>;\n basicInfoAttrList?: Partial<CmdbModels.ModelObjectAttr>[];\n objectList?: Partial<CmdbModels.ModelCmdbObject>[];\n modelData?: Partial<CmdbModels.ModelCmdbObject>;\n attributeFormControlInitialValueMap:\n | InstanceApi_GetDefaultValueTemplateResponseBody\n | Partial<InstanceApi_GetDetailResponseBody>;\n showCancelButton?: boolean;\n confirmText?: string;\n cancelText?: string;\n cancelType?: ButtonType;\n onCancel?(): void;\n showDetailUrl?: boolean;\n isFilterView?: boolean;\n objectListOfUser?: Partial<CmdbModels.ModelCmdbObject>[];\n permissionList?: Record<string, any>[];\n enabledWhiteList?: boolean;\n scrollToFirstError?: boolean;\n offsetTop?: number;\n offsetBottom?: number;\n cardRect?: any;\n isApprove?: boolean;\n hasRelateId?: boolean;\n defaultUserOrUserGroup?: {\n selectedUser?: string[];\n selectedUserGroup?: string[];\n };\n}\n\nexport type attributesFieldsByTag = [string, ModifiedModelObjectField[]];\n\nconst RefCmdbInstancesSelectPanel = React.forwardRef(CmdbInstancesSelectPanel);\n\ninterface ModelAttributeFormState {\n sending: boolean;\n attrListGroupByTag: attributesFieldsByTag[];\n continueCreating: boolean;\n showError?: Record<string, any>;\n fixedStyle?: Record<string, any>;\n defaultValueTemplateIndex?: number;\n}\n\nexport class ModelAttributeForm extends Component<\n ModelAttributeFormProps,\n ModelAttributeFormState\n> {\n private modelMap: Record<string, Partial<CmdbModels.ModelCmdbObject>> = {};\n private modelData: Partial<CmdbModels.ModelCmdbObject> = null;\n\n static defaultProps = {\n showCancelButton: true,\n cancelType: \"default\" as ButtonType,\n };\n\n formItemProps: FormItemProps = {\n labelCol: { span: 6 },\n wrapperCol: { span: 18 },\n };\n\n constructor(props: ModelAttributeFormProps) {\n super(props);\n if (this.props.objectList) {\n this.modelMap = keyBy(this.props.objectList, \"objectId\");\n }\n // istanbul ignore else\n if (this.props.modelData) {\n this.modelData = modifyModelData(this.props.modelData);\n } else {\n if (this.props.objectList) {\n this.modelData = modifyModelData(this.modelMap[this.props.objectId]);\n }\n }\n\n const hideModelData: string[] = this.modelData.view.hide_columns || [];\n let AttrListGroupByTag: attributesFieldsByTag[] = [];\n let fieldsByTag;\n if (props.formItemProps) {\n this.formItemProps = props.formItemProps;\n }\n if (props.fieldsByTag) {\n fieldsByTag = this.props.fieldsByTag.map((items) => {\n let fields;\n if (items.fields) {\n fields = items.fields.filter(\n (item) => item && !hideModelData.includes(item)\n );\n }\n return {\n name: items.name,\n fields,\n };\n });\n AttrListGroupByTag = ModelAttributeForm.getFieldsByTag(\n this.props.basicInfoAttrList,\n fieldsByTag,\n this.modelData\n );\n } else {\n props.basicInfoAttrList.forEach((basicInfoAttr) => {\n const groupTag =\n basicInfoAttr?.tag?.[0] ||\n (basicInfoAttr as any)?.left_tags?.[0] ||\n DEFAULT_ATTRIBUTE_TAG;\n\n const attrs = AttrListGroupByTag.find(([key]) => key === groupTag);\n // 判断是否为黑名单内的属性\n if (\n isNil(props.blackList) ||\n !props.blackList.includes(basicInfoAttr.id)\n ) {\n if (attrs) {\n attrs[1].push(basicInfoAttr);\n } else {\n AttrListGroupByTag.push([groupTag, [basicInfoAttr]]);\n }\n }\n });\n }\n this.state = {\n sending: false,\n attrListGroupByTag: AttrListGroupByTag,\n continueCreating: false,\n showError: {},\n fixedStyle: {},\n defaultValueTemplateIndex: 1,\n };\n }\n\n resizeUpdate = () =>\n this.setState({\n fixedStyle: getFixedStyle(this.props.cardRect?.getBoundingClientRect()),\n });\n\n componentDidMount(): void {\n const top =\n this.props.cardRect?.getBoundingClientRect()?.bottom - window.innerHeight;\n if (top > 0) {\n this.setState({\n fixedStyle: getFixedStyle(this.props.cardRect?.getBoundingClientRect()),\n });\n }\n this.props.cardRect && window.addEventListener(\"resize\", this.resizeUpdate);\n }\n\n componentWillUnmount() {\n // 离开页面时移除监听事件\n window.removeEventListener(\"resize\", this.resizeUpdate);\n }\n\n static getDerivedStateFromProps(props: any, state: any): any {\n if (props.defaultValueTemplateIndex !== state.defaultValueTemplateIndex) {\n props.form.setFieldsValue({\n ...props.form.getFieldsValue(),\n ...pickBy(props.attributeFormControlInitialValueMap),\n });\n return {\n defaultValueTemplateIndex: props.defaultValueTemplateIndex,\n };\n }\n return null;\n }\n\n static getFieldsByTag(\n attributeList: Partial<CmdbModels.ModelObjectAttr>[],\n fieldsByTag: FieldsByTag[],\n modelData?: Partial<ModifiedModelCmdbObject>\n ): attributesFieldsByTag[] {\n const map = new Map<string, Partial<CmdbModels.ModelObjectAttr>[]>([]);\n\n fieldsByTag.forEach(({ name, fields }) => {\n if (!map.has(name)) {\n map.set(name, []);\n fields.forEach((field) => {\n const appendAttr = modelData\n ? modelData.__fieldList.find((__field) => __field.__id === field)\n : attributeList.find(({ id }) => id === field);\n if (appendAttr !== undefined) {\n map.set(name, [...map.get(name), appendAttr]);\n }\n });\n }\n });\n\n return Array.from(map);\n }\n\n static sortAttributeList(\n attributeList: { [s: string]: Partial<CmdbModels.ModelObjectAttr>[] },\n tagList: { [s: string]: string[] }\n ): { [s: string]: Partial<CmdbModels.ModelObjectAttr>[] } {\n const store: { [s: string]: Partial<CmdbModels.ModelObjectAttr>[] } = {};\n /* istanbul ignore next */\n for (const tag in tagList) {\n if (!store[tag]) {\n store[tag] = [];\n }\n\n tagList[tag].forEach((prop) => {\n const result = attributeList[tag].find((v) => v.id === prop);\n store[tag].push(result);\n });\n }\n\n return store;\n }\n\n handleFormErrors(fieldsError: Record<string, string[] | undefined>) {\n return Object.keys(fieldsError).some((field) => fieldsError[field]);\n }\n permissionAttrProcess = (key: string) => {\n if (key.includes(\"instance_access\")) return \"readAuthorizers\";\n if (key.includes(\"instance_delete\")) return \"deleteAuthorizers\";\n if (key.includes(\"instance_update\")) return \"updateAuthorizers\";\n // HOST特有\n if (key.includes(\"instance_operate\")) return \"operateAuthorizers\";\n // APP特有\n return permissionListMapOfApp[key] || key;\n };\n\n valuesProcess = (values: Record<string, any>) => {\n const appPermissionAuthorizers: Record<string, any> = {};\n Object.values(permissionListMapOfApp).forEach((r) => {\n appPermissionAuthorizers[r] = values[r]\n ? values[r].selectedUser.concat(values[r].selectedUserGroup)\n : [];\n });\n return {\n ...values,\n deleteAuthorizers: values.deleteAuthorizers\n ? values.deleteAuthorizers.selectedUser.concat(\n values.deleteAuthorizers.selectedUserGroup\n )\n : [],\n readAuthorizers: values.readAuthorizers\n ? values.readAuthorizers.selectedUser.concat(\n values.readAuthorizers.selectedUserGroup\n )\n : [],\n updateAuthorizers: values.updateAuthorizers\n ? values.updateAuthorizers.selectedUser.concat(\n values.updateAuthorizers.selectedUserGroup\n )\n : [],\n ...(this.props.objectId === \"HOST\"\n ? {\n operateAuthorizers: values.operateAuthorizers\n ? values.operateAuthorizers.selectedUser.concat(\n values.operateAuthorizers.selectedUserGroup\n )\n : [],\n }\n : {}),\n ...(this.props.objectId === \"APP\" ? appPermissionAuthorizers : {}),\n };\n };\n /* istanbul ignore next */\n validateFieldsCallback = async (err: any, values: any, type?: string) => {\n if (!err) {\n const { continueCreating } = this.state;\n this.setState({ sending: true });\n const result = await this.props.onSubmit({\n continueCreating,\n values:\n this.props.enabledWhiteList && this.props.permissionList\n ? this.valuesProcess(values)\n : values,\n type,\n });\n if (result !== \"error\" && continueCreating) {\n this.props.form.resetFields();\n }\n this.setState({ sending: false });\n }\n };\n /* istanbul ignore next */\n handleSubmit = (e: FormEvent, type?: string) => {\n e.preventDefault();\n this.props.scrollToFirstError\n ? this.props.form.validateFieldsAndScroll(\n {\n scroll: {\n offsetTop: this.props.offsetTop || 60,\n offsetBottom: this.props.offsetBottom || 100,\n },\n },\n async (err, values) => {\n await this.validateFieldsCallback(err, values, type);\n }\n )\n : this.props.form.validateFields(async (err, values) => {\n await this.validateFieldsCallback(err, values, type);\n });\n };\n\n get disabled(): boolean {\n const { sending } = this.state;\n // const { getFieldsError } = this.props.form;\n return sending;\n }\n\n // get submitBtnText() {\n // return this.props.isCreate\n // ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SAVE}`)\n // : i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MODIFICATION}`);\n // }\n\n static tagsValidator(\n attribute: Partial<CmdbModels.ModelObjectAttr>\n ): (rule: any, value: string[], callback: (msg?: string) => void) => void {\n return (rule: any, value: string[], callback: (msg?: string) => void) => {\n if (!value) {\n return callback();\n }\n if (!Array.isArray(value)) {\n return callback(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`)\n );\n }\n\n const isValidAll = value.every((v) =>\n ModelAttributeFormControl.computePattern(attribute).test(v)\n );\n\n isValidAll\n ? callback()\n : callback(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n };\n }\n\n static urlValidator(\n attribute: Partial<CmdbModels.ModelObjectAttr>\n ): (rule: any, value: string, callback: (msg?: string) => void) => void {\n return (rule: any, value: string, callback: (msg?: string) => void) => {\n const { url } = AttributeFormControlUrl.breakDownValue(value);\n ModelAttributeFormControl.computePattern(attribute).test(url)\n ? callback()\n : callback(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n };\n }\n\n // 关联模型form的rules\n relationRules(\n attribute: Partial<ModifiedModelObjectRelation>\n ): ValidationRule[] {\n const { left_required: leftRequired } = attribute;\n // 获取validationRule规则\n const getRules = (required: boolean, name: string): ValidationRule[] => {\n const requireRule = {\n required,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ATTRIBUTE_NAME_REQUIRED}`,\n { attribute_name: name }\n ),\n };\n return [requireRule];\n };\n\n if (leftRequired) {\n return getRules(leftRequired, attribute.right_description);\n }\n\n return [];\n }\n\n rules(attribute: Partial<CmdbModels.ModelObjectAttr>): ValidationRule[] {\n // historical issues: 如果是INTEGER和URL类型暂时不用正则表达式验证\n const required = attribute.required !== \"false\";\n const requiredRule = [\n ModelAttributeValueType.IP,\n ModelAttributeValueType.STRING,\n ModelAttributeValueType.JSON,\n ].includes(attribute.value.type as ModelAttributeValueType)\n ? {\n required,\n whitespace: required,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ATTRIBUTE_NAME_REQUIRED}`,\n { attribute_name: attribute.name }\n ),\n }\n : {\n required,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ATTRIBUTE_NAME_REQUIRED}`,\n { attribute_name: attribute.name }\n ),\n };\n try {\n const type = ModelAttributeFormControl.computeFormControlType(attribute);\n if (\n attribute.value.regex === null ||\n attribute.value.type === ModelAttributeValueType.INTEGER ||\n attribute.value.type === ModelAttributeValueType.ENUMS\n ) {\n return [requiredRule];\n }\n\n if (type === FormControlTypeEnum.URL) {\n return [\n requiredRule,\n { validator: ModelAttributeForm.urlValidator(attribute) },\n ];\n }\n\n if (type === FormControlTypeEnum.TAGS) {\n return [\n requiredRule,\n { validator: ModelAttributeForm.tagsValidator(attribute) },\n ];\n }\n\n return [\n requiredRule,\n {\n pattern: ModelAttributeFormControl.computePattern(attribute),\n message: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`),\n },\n ];\n } catch (error) {\n // 例如无枚举值、结构体未添加字段等\n return [requiredRule];\n }\n }\n\n handleCheckContinueCreating = (e: any) => {\n this.setState({ continueCreating: e.target.checked });\n };\n\n renderRelationFormControl = (\n relation: Partial<ModifiedModelObjectRelation>\n ) => {\n const InitialRelationValue = get(\n this.props.attributeFormControlInitialValueMap,\n relation.left_id\n );\n const initialValue = InitialRelationValue\n ? InitialRelationValue.map((instanceData: any) => instanceData.instanceId)\n : [];\n\n return (\n <Form.Item\n label={relation.left_name}\n key={relation.left_id}\n {...this.formItemProps}\n >\n {this.props.form.getFieldDecorator(relation.left_id, {\n rules: this.relationRules(relation),\n initialValue,\n })(\n <RefCmdbInstancesSelectPanel\n isFilterView={this.props.isFilterView}\n modelData={this.modelMap[relation.right_object_id]}\n objectId={relation.right_object_id}\n addTitle={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.ADD}`)}\n singleSelect={relation.left_max === 1}\n isOperate={true}\n showDetailUrl={this.props.showDetailUrl}\n relation={relation}\n showSizeChanger={true}\n />\n )}\n </Form.Item>\n );\n };\n\n handleCancel = () => {\n this.props.onCancel?.();\n };\n\n render(): React.ReactNode {\n const Panel = Collapse.Panel;\n const {\n form,\n attributeFormControlInitialValueMap,\n brickList,\n allowContinueCreate,\n showCancelButton,\n cancelText,\n confirmText,\n cancelType,\n defaultUserOrUserGroup,\n } = this.props;\n const { getFieldDecorator } = form;\n\n let defaultActiveKey = this.state.attrListGroupByTag.map(([key]) => key);\n\n if (Array.isArray(brickList)) {\n defaultActiveKey = [\n ...defaultActiveKey,\n ...brickList.map((brick) => brick.name),\n ];\n }\n if (defaultUserOrUserGroup) {\n defaultActiveKey = [...defaultActiveKey, \"permission\"];\n }\n const collapse = this.state.attrListGroupByTag && (\n <Collapse\n bordered={false}\n defaultActiveKey={defaultActiveKey}\n className={styles.collapseStyle}\n >\n {this.state.attrListGroupByTag.map(([tag, list]) => (\n <Panel header={tag} key={tag} forceRender={true}>\n {list.map((attribute, index) => {\n if (attribute.__isRelation) {\n return this.renderRelationFormControl(attribute);\n } else if (attribute.__isRelation === false) {\n return (\n <Form.Item\n label={\n <span>\n <span>{attribute.name}</span>\n {attribute.description && attribute.description !== \"\" && (\n <Tooltip title={attribute.description}>\n <InfoCircleOutlined\n style={{\n padding: \"0 2px\",\n color: \"var(--theme-blue-color)\",\n }}\n />\n </Tooltip>\n )}\n </span>\n }\n key={attribute.name}\n {...this.formItemProps}\n >\n {getFieldDecorator(attribute.id, {\n rules: this.rules(attribute),\n //默认值为string,但是新建时接口转成了object,故编辑时后台返回的也是object\n initialValue:\n attribute.value.type === \"json\" &&\n !_.isString(\n attributeFormControlInitialValueMap[attribute.id]\n )\n ? JSON.stringify(\n attributeFormControlInitialValueMap[attribute.id],\n null,\n 2\n )\n : attributeFormControlInitialValueMap[attribute.id],\n })(\n <ModelAttributeFormControl\n isCreate={this.props.isCreate}\n attribute={attribute}\n multiSelect={\n attribute?.value?.type ===\n ModelAttributeValueType.ENUMS\n }\n objectId={this.props.objectId}\n jsonValidateCollection={(err: any) => {\n const showError = { ...this.state.showError };\n showError[tag + index] = err;\n this.setState({ showError });\n }}\n />\n )}\n </Form.Item>\n );\n }\n })}\n </Panel>\n ))}\n\n {brickList &&\n brickList.map((brick) => (\n <Panel header={brick.header} key={brick.name}>\n <Form.Item\n label={brick.label}\n key={brick.name}\n {...this.formItemProps}\n >\n <brick.name\n ref={(element: any) => {\n element &&\n ((element[\"value\"] = this.props.form.getFieldsValue()),\n (element[\"options\"] = brick.options));\n }}\n />\n </Form.Item>\n </Panel>\n ))}\n\n {this.props.enabledWhiteList && this.props.permissionList && (\n <Panel\n header={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.PERMISSION_WHITELIST}`\n )}\n key={\"permission\"}\n >\n {this.props.permissionList.map((r) => {\n return (\n <Form.Item label={r.remark} key={r.id} {...this.formItemProps}>\n {getFieldDecorator(\n this.permissionAttrProcess(r.action) as string,\n {\n initialValue: defaultUserOrUserGroup,\n }\n )(\n <UserOrUserGroupSelect\n objectMap={keyBy(this.props.objectListOfUser, \"objectId\")}\n optionsMode=\"all\"\n ></UserOrUserGroupSelect>\n )}\n </Form.Item>\n );\n })}\n </Panel>\n )}\n </Collapse>\n );\n const submitContainer = (\n <div\n className={styles.generalFormFooter}\n style={{\n ...this.state.fixedStyle,\n borderTop: \"none\",\n paddingTop: \"16px\",\n paddingLeft: \"20px\",\n }}\n >\n <div className=\"ant-collapse-content-box\">\n <Form.Item {...this.formItemProps} label=\" \" colon={false}>\n {allowContinueCreate && (\n <Checkbox onChange={this.handleCheckContinueCreating}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CREATE_ANOTHER}`)}\n </Checkbox>\n )}\n\n {this.props.isCreate &&\n !this.props.hasRelateId &&\n !this.props.isApprove && (\n <Button\n onClick={(e) => this.handleSubmit(e, \"continue\")}\n className={styles.submitAndContinueBtn}\n disabled={\n this.disabled ||\n Object.values(this.state.showError).includes(true)\n }\n data-testid=\"submit-and-continue-btn\"\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SAVE_AND_CONTINUE}`)}\n </Button>\n )}\n\n <Button\n type=\"primary\"\n onClick={(e) => this.handleSubmit(e)}\n disabled={\n this.disabled ||\n Object.values(this.state.showError).includes(true)\n }\n data-testid=\"submit-btn\"\n >\n {confirmText ?? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SAVE}`)}\n </Button>\n\n {showCancelButton && (\n <Button\n type={cancelType}\n style={{ marginLeft: 8 }}\n onClick={this.handleCancel}\n >\n {cancelText ?? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n </Button>\n )}\n </Form.Item>\n </div>\n </div>\n );\n\n return (\n <Form>\n {collapse}\n {submitContainer}\n </Form>\n );\n }\n}\n\nexport const InstanceModelAttributeForm =\n Form.create<ModelAttributeFormProps>()(ModelAttributeForm);\n"],"file":"ModelAttributeForm.js"}
|
|
1
|
+
{"version":3,"file":"ModelAttributeForm.js","names":["React","Component","Form","Button","Checkbox","Collapse","Tooltip","InfoCircleOutlined","FormControlTypeEnum","ModelAttributeFormControl","ModelAttributeValueType","AttributeFormControlUrl","_","get","isNil","keyBy","pickBy","CmdbInstancesSelectPanel","modifyModelData","getFixedStyle","styles","UserOrUserGroupSelect","permissionListMapOfApp","i18n","K","NS_LIBS_CMDB_INSTANCES","DEFAULT_ATTRIBUTE_TAG","RefCmdbInstancesSelectPanel","forwardRef","ModelAttributeForm","constructor","props","labelCol","span","wrapperCol","setState","fixedStyle","cardRect","getBoundingClientRect","key","includes","values","appPermissionAuthorizers","Object","forEach","r","selectedUser","concat","selectedUserGroup","deleteAuthorizers","readAuthorizers","updateAuthorizers","objectId","operateAuthorizers","err","type","continueCreating","state","sending","result","onSubmit","enabledWhiteList","permissionList","valuesProcess","form","resetFields","e","preventDefault","scrollToFirstError","validateFieldsAndScroll","scroll","offsetTop","offsetBottom","validateFieldsCallback","validateFields","target","checked","relation","InitialRelationValue","attributeFormControlInitialValueMap","left_id","initialValue","map","instanceData","instanceId","left_name","formItemProps","getFieldDecorator","rules","relationRules","isFilterView","modelMap","right_object_id","t","ADD","left_max","showDetailUrl","onCancel","objectList","modelData","hideModelData","view","hide_columns","AttrListGroupByTag","fieldsByTag","items","fields","filter","item","name","getFieldsByTag","basicInfoAttrList","basicInfoAttr","groupTag","tag","left_tags","attrs","find","blackList","id","push","attrListGroupByTag","showError","defaultValueTemplateIndex","componentDidMount","top","bottom","window","innerHeight","addEventListener","resizeUpdate","componentWillUnmount","removeEventListener","getDerivedStateFromProps","setFieldsValue","getFieldsValue","attributeList","Map","has","set","field","appendAttr","__fieldList","__field","__id","undefined","Array","from","sortAttributeList","tagList","store","prop","v","handleFormErrors","fieldsError","keys","some","disabled","tagsValidator","attribute","rule","value","callback","isArray","NOT_MEET_REGEX","isValidAll","every","computePattern","test","urlValidator","url","breakDownValue","left_required","leftRequired","getRules","required","requireRule","message","ATTRIBUTE_NAME_REQUIRED","attribute_name","right_description","requiredRule","IP","STRING","JSON","whitespace","computeFormControlType","regex","INTEGER","ENUMS","URL","validator","TAGS","pattern","error","render","Panel","brickList","allowContinueCreate","showCancelButton","cancelText","confirmText","cancelType","defaultUserOrUserGroup","defaultActiveKey","brick","collapse","collapseStyle","list","index","__isRelation","renderRelationFormControl","description","padding","color","isString","stringify","isCreate","header","label","element","options","PERMISSION_WHITELIST","remark","permissionAttrProcess","action","objectListOfUser","submitContainer","generalFormFooter","borderTop","paddingTop","paddingLeft","handleCheckContinueCreating","CREATE_ANOTHER","hasRelateId","isApprove","handleSubmit","submitAndContinueBtn","SAVE_AND_CONTINUE","SAVE","marginLeft","handleCancel","CANCEL","InstanceModelAttributeForm","create"],"sources":["../../../src/model-attribute-form/ModelAttributeForm.tsx"],"sourcesContent":["import React, { Component, FormEvent } from \"react\";\nimport { Form } from \"@ant-design/compatible\";\nimport { Button, Checkbox, Collapse, Tooltip } from \"antd\";\nimport { ButtonType } from \"antd/lib/button\";\nimport { InfoCircleOutlined } from \"@ant-design/icons\";\nimport {\n CmdbModels,\n InstanceApi_GetDefaultValueTemplateResponseBody,\n InstanceApi_GetDetailResponseBody,\n CmdbObjectApi_getObjectRef,\n} from \"@next-sdk/cmdb-sdk\";\nimport {\n FormComponentProps,\n FormItemProps,\n ValidationRule,\n} from \"@ant-design/compatible/lib/form\";\nimport {\n FormControlTypeEnum,\n ModelAttributeFormControl,\n ModelAttributeValueType,\n} from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport _, { get, isNil, keyBy, pickBy } from \"lodash\";\n\nimport { CmdbInstancesSelectPanel } from \"../cmdb-instances-select-panel/CmdbInstancesSelectPanel\";\nimport {\n ModifiedModelCmdbObject,\n ModifiedModelObjectAttr,\n ModifiedModelObjectField,\n ModifiedModelObjectRelation,\n modifyModelData,\n getFixedStyle,\n} from \"@next-libs/cmdb-utils\";\nimport styles from \"./ModelAttributeForm.module.css\";\nimport { UserOrUserGroupSelect } from \"../components\";\nimport { permissionListMapOfApp } from \"./constants\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nconst DEFAULT_ATTRIBUTE_TAG = \"基本信息\";\nexport interface ModelAttributeFormChildren {\n header: string;\n name: string;\n label: string;\n options?: { [key: string]: any };\n}\n\nexport interface FieldsByTag {\n name: string;\n fields: string[];\n}\n\ninterface ModelAttributeFormProps extends FormComponentProps {\n isCreate?: boolean;\n disabled?: boolean;\n objectId?: string;\n allowContinueCreate?: boolean;\n blackList?: string[]; // 黑名单\n brickList?: ModelAttributeFormChildren[];\n fieldsByTag?: FieldsByTag[];\n formItemProps?: FormItemProps;\n onSubmit(data: any): Promise<any>;\n basicInfoAttrList?: Partial<CmdbModels.ModelObjectAttr>[];\n objectList?: Partial<CmdbModels.ModelCmdbObject>[];\n modelData?: Partial<CmdbModels.ModelCmdbObject>;\n attributeFormControlInitialValueMap:\n | InstanceApi_GetDefaultValueTemplateResponseBody\n | Partial<InstanceApi_GetDetailResponseBody>;\n showCancelButton?: boolean;\n confirmText?: string;\n cancelText?: string;\n cancelType?: ButtonType;\n onCancel?(): void;\n showDetailUrl?: boolean;\n isFilterView?: boolean;\n objectListOfUser?: Partial<CmdbModels.ModelCmdbObject>[];\n permissionList?: Record<string, any>[];\n enabledWhiteList?: boolean;\n scrollToFirstError?: boolean;\n offsetTop?: number;\n offsetBottom?: number;\n cardRect?: any;\n isApprove?: boolean;\n hasRelateId?: boolean;\n defaultUserOrUserGroup?: {\n selectedUser?: string[];\n selectedUserGroup?: string[];\n };\n}\n\nexport type attributesFieldsByTag = [string, ModifiedModelObjectField[]];\n\nconst RefCmdbInstancesSelectPanel = React.forwardRef(CmdbInstancesSelectPanel);\n\ninterface ModelAttributeFormState {\n sending: boolean;\n attrListGroupByTag: attributesFieldsByTag[];\n continueCreating: boolean;\n showError?: Record<string, any>;\n fixedStyle?: Record<string, any>;\n defaultValueTemplateIndex?: number;\n}\n\nexport class ModelAttributeForm extends Component<\n ModelAttributeFormProps,\n ModelAttributeFormState\n> {\n private modelMap: Record<string, Partial<CmdbModels.ModelCmdbObject>> = {};\n private modelData: Partial<CmdbModels.ModelCmdbObject> = null;\n\n static defaultProps = {\n showCancelButton: true,\n cancelType: \"default\" as ButtonType,\n };\n\n formItemProps: FormItemProps = {\n labelCol: { span: 6 },\n wrapperCol: { span: 18 },\n };\n\n constructor(props: ModelAttributeFormProps) {\n super(props);\n if (this.props.objectList) {\n this.modelMap = keyBy(this.props.objectList, \"objectId\");\n }\n // istanbul ignore else\n if (this.props.modelData) {\n this.modelData = modifyModelData(this.props.modelData);\n } else {\n if (this.props.objectList) {\n this.modelData = modifyModelData(this.modelMap[this.props.objectId]);\n }\n }\n\n const hideModelData: string[] = this.modelData.view.hide_columns || [];\n let AttrListGroupByTag: attributesFieldsByTag[] = [];\n let fieldsByTag;\n if (props.formItemProps) {\n this.formItemProps = props.formItemProps;\n }\n if (props.fieldsByTag) {\n fieldsByTag = this.props.fieldsByTag.map((items) => {\n let fields;\n if (items.fields) {\n fields = items.fields.filter(\n (item) => item && !hideModelData.includes(item)\n );\n }\n return {\n name: items.name,\n fields,\n };\n });\n AttrListGroupByTag = ModelAttributeForm.getFieldsByTag(\n this.props.basicInfoAttrList,\n fieldsByTag,\n this.modelData\n );\n } else {\n props.basicInfoAttrList.forEach((basicInfoAttr) => {\n const groupTag =\n basicInfoAttr?.tag?.[0] ||\n (basicInfoAttr as any)?.left_tags?.[0] ||\n DEFAULT_ATTRIBUTE_TAG;\n\n const attrs = AttrListGroupByTag.find(([key]) => key === groupTag);\n // 判断是否为黑名单内的属性\n if (\n isNil(props.blackList) ||\n !props.blackList.includes(basicInfoAttr.id)\n ) {\n if (attrs) {\n attrs[1].push(basicInfoAttr);\n } else {\n AttrListGroupByTag.push([groupTag, [basicInfoAttr]]);\n }\n }\n });\n }\n this.state = {\n sending: false,\n attrListGroupByTag: AttrListGroupByTag,\n continueCreating: false,\n showError: {},\n fixedStyle: {},\n defaultValueTemplateIndex: 1,\n };\n }\n\n resizeUpdate = () =>\n this.setState({\n fixedStyle: getFixedStyle(this.props.cardRect?.getBoundingClientRect()),\n });\n\n componentDidMount(): void {\n const top =\n this.props.cardRect?.getBoundingClientRect()?.bottom - window.innerHeight;\n if (top > 0) {\n this.setState({\n fixedStyle: getFixedStyle(this.props.cardRect?.getBoundingClientRect()),\n });\n }\n this.props.cardRect && window.addEventListener(\"resize\", this.resizeUpdate);\n }\n\n componentWillUnmount() {\n // 离开页面时移除监听事件\n window.removeEventListener(\"resize\", this.resizeUpdate);\n }\n\n static getDerivedStateFromProps(props: any, state: any): any {\n if (props.defaultValueTemplateIndex !== state.defaultValueTemplateIndex) {\n props.form.setFieldsValue({\n ...props.form.getFieldsValue(),\n ...pickBy(props.attributeFormControlInitialValueMap),\n });\n return {\n defaultValueTemplateIndex: props.defaultValueTemplateIndex,\n };\n }\n return null;\n }\n\n static getFieldsByTag(\n attributeList: Partial<CmdbModels.ModelObjectAttr>[],\n fieldsByTag: FieldsByTag[],\n modelData?: Partial<ModifiedModelCmdbObject>\n ): attributesFieldsByTag[] {\n const map = new Map<string, Partial<CmdbModels.ModelObjectAttr>[]>([]);\n\n fieldsByTag.forEach(({ name, fields }) => {\n if (!map.has(name)) {\n map.set(name, []);\n fields.forEach((field) => {\n const appendAttr = modelData\n ? modelData.__fieldList.find((__field) => __field.__id === field)\n : attributeList.find(({ id }) => id === field);\n if (appendAttr !== undefined) {\n map.set(name, [...map.get(name), appendAttr]);\n }\n });\n }\n });\n\n return Array.from(map);\n }\n\n static sortAttributeList(\n attributeList: { [s: string]: Partial<CmdbModels.ModelObjectAttr>[] },\n tagList: { [s: string]: string[] }\n ): { [s: string]: Partial<CmdbModels.ModelObjectAttr>[] } {\n const store: { [s: string]: Partial<CmdbModels.ModelObjectAttr>[] } = {};\n /* istanbul ignore next */\n for (const tag in tagList) {\n if (!store[tag]) {\n store[tag] = [];\n }\n\n tagList[tag].forEach((prop) => {\n const result = attributeList[tag].find((v) => v.id === prop);\n store[tag].push(result);\n });\n }\n\n return store;\n }\n\n handleFormErrors(fieldsError: Record<string, string[] | undefined>) {\n return Object.keys(fieldsError).some((field) => fieldsError[field]);\n }\n permissionAttrProcess = (key: string) => {\n if (key.includes(\"instance_access\")) return \"readAuthorizers\";\n if (key.includes(\"instance_delete\")) return \"deleteAuthorizers\";\n if (key.includes(\"instance_update\")) return \"updateAuthorizers\";\n // HOST特有\n if (key.includes(\"instance_operate\")) return \"operateAuthorizers\";\n // APP特有\n return permissionListMapOfApp[key] || key;\n };\n\n valuesProcess = (values: Record<string, any>) => {\n const appPermissionAuthorizers: Record<string, any> = {};\n Object.values(permissionListMapOfApp).forEach((r) => {\n appPermissionAuthorizers[r] = values[r]\n ? values[r].selectedUser.concat(values[r].selectedUserGroup)\n : [];\n });\n return {\n ...values,\n deleteAuthorizers: values.deleteAuthorizers\n ? values.deleteAuthorizers.selectedUser.concat(\n values.deleteAuthorizers.selectedUserGroup\n )\n : [],\n readAuthorizers: values.readAuthorizers\n ? values.readAuthorizers.selectedUser.concat(\n values.readAuthorizers.selectedUserGroup\n )\n : [],\n updateAuthorizers: values.updateAuthorizers\n ? values.updateAuthorizers.selectedUser.concat(\n values.updateAuthorizers.selectedUserGroup\n )\n : [],\n ...(this.props.objectId === \"HOST\"\n ? {\n operateAuthorizers: values.operateAuthorizers\n ? values.operateAuthorizers.selectedUser.concat(\n values.operateAuthorizers.selectedUserGroup\n )\n : [],\n }\n : {}),\n ...(this.props.objectId === \"APP\" ? appPermissionAuthorizers : {}),\n };\n };\n /* istanbul ignore next */\n validateFieldsCallback = async (err: any, values: any, type?: string) => {\n if (!err) {\n const { continueCreating } = this.state;\n this.setState({ sending: true });\n const result = await this.props.onSubmit({\n continueCreating,\n values:\n this.props.enabledWhiteList && this.props.permissionList\n ? this.valuesProcess(values)\n : values,\n type,\n });\n if (result !== \"error\" && continueCreating) {\n this.props.form.resetFields();\n }\n this.setState({ sending: false });\n }\n };\n /* istanbul ignore next */\n handleSubmit = (e: FormEvent, type?: string) => {\n e.preventDefault();\n this.props.scrollToFirstError\n ? this.props.form.validateFieldsAndScroll(\n {\n scroll: {\n offsetTop: this.props.offsetTop || 60,\n offsetBottom: this.props.offsetBottom || 100,\n },\n },\n async (err, values) => {\n await this.validateFieldsCallback(err, values, type);\n }\n )\n : this.props.form.validateFields(async (err, values) => {\n await this.validateFieldsCallback(err, values, type);\n });\n };\n\n get disabled(): boolean {\n const { sending } = this.state;\n // const { getFieldsError } = this.props.form;\n return sending;\n }\n\n // get submitBtnText() {\n // return this.props.isCreate\n // ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SAVE}`)\n // : i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MODIFICATION}`);\n // }\n\n static tagsValidator(\n attribute: Partial<CmdbModels.ModelObjectAttr>\n ): (rule: any, value: string[], callback: (msg?: string) => void) => void {\n return (rule: any, value: string[], callback: (msg?: string) => void) => {\n if (!value) {\n return callback();\n }\n if (!Array.isArray(value)) {\n return callback(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`)\n );\n }\n\n const isValidAll = value.every((v) =>\n ModelAttributeFormControl.computePattern(attribute).test(v)\n );\n\n isValidAll\n ? callback()\n : callback(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n };\n }\n\n static urlValidator(\n attribute: Partial<CmdbModels.ModelObjectAttr>\n ): (rule: any, value: string, callback: (msg?: string) => void) => void {\n return (rule: any, value: string, callback: (msg?: string) => void) => {\n const { url } = AttributeFormControlUrl.breakDownValue(value);\n ModelAttributeFormControl.computePattern(attribute).test(url)\n ? callback()\n : callback(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n };\n }\n\n // 关联模型form的rules\n relationRules(\n attribute: Partial<ModifiedModelObjectRelation>\n ): ValidationRule[] {\n const { left_required: leftRequired } = attribute;\n // 获取validationRule规则\n const getRules = (required: boolean, name: string): ValidationRule[] => {\n const requireRule = {\n required,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ATTRIBUTE_NAME_REQUIRED}`,\n { attribute_name: name }\n ),\n };\n return [requireRule];\n };\n\n if (leftRequired) {\n return getRules(leftRequired, attribute.right_description);\n }\n\n return [];\n }\n\n rules(attribute: Partial<CmdbModels.ModelObjectAttr>): ValidationRule[] {\n // historical issues: 如果是INTEGER和URL类型暂时不用正则表达式验证\n const required = attribute.required !== \"false\";\n const requiredRule = [\n ModelAttributeValueType.IP,\n ModelAttributeValueType.STRING,\n ModelAttributeValueType.JSON,\n ].includes(attribute.value.type as ModelAttributeValueType)\n ? {\n required,\n whitespace: required,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ATTRIBUTE_NAME_REQUIRED}`,\n { attribute_name: attribute.name }\n ),\n }\n : {\n required,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ATTRIBUTE_NAME_REQUIRED}`,\n { attribute_name: attribute.name }\n ),\n };\n try {\n const type = ModelAttributeFormControl.computeFormControlType(attribute);\n if (\n attribute.value.regex === null ||\n attribute.value.type === ModelAttributeValueType.INTEGER ||\n attribute.value.type === ModelAttributeValueType.ENUMS\n ) {\n return [requiredRule];\n }\n\n if (type === FormControlTypeEnum.URL) {\n return [\n requiredRule,\n { validator: ModelAttributeForm.urlValidator(attribute) },\n ];\n }\n\n if (type === FormControlTypeEnum.TAGS) {\n return [\n requiredRule,\n { validator: ModelAttributeForm.tagsValidator(attribute) },\n ];\n }\n\n return [\n requiredRule,\n {\n pattern: ModelAttributeFormControl.computePattern(attribute),\n message: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`),\n },\n ];\n } catch (error) {\n // 例如无枚举值、结构体未添加字段等\n return [requiredRule];\n }\n }\n\n handleCheckContinueCreating = (e: any) => {\n this.setState({ continueCreating: e.target.checked });\n };\n\n renderRelationFormControl = (\n relation: Partial<ModifiedModelObjectRelation>\n ) => {\n const InitialRelationValue = get(\n this.props.attributeFormControlInitialValueMap,\n relation.left_id\n );\n const initialValue = InitialRelationValue\n ? InitialRelationValue.map((instanceData: any) => instanceData.instanceId)\n : [];\n\n return (\n <Form.Item\n label={relation.left_name}\n key={relation.left_id}\n {...this.formItemProps}\n >\n {this.props.form.getFieldDecorator(relation.left_id, {\n rules: this.relationRules(relation),\n initialValue,\n })(\n <RefCmdbInstancesSelectPanel\n isFilterView={this.props.isFilterView}\n modelData={this.modelMap[relation.right_object_id]}\n objectId={relation.right_object_id}\n addTitle={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.ADD}`)}\n singleSelect={relation.left_max === 1}\n isOperate={true}\n showDetailUrl={this.props.showDetailUrl}\n relation={relation}\n showSizeChanger={true}\n />\n )}\n </Form.Item>\n );\n };\n\n handleCancel = () => {\n this.props.onCancel?.();\n };\n\n render(): React.ReactNode {\n const Panel = Collapse.Panel;\n const {\n form,\n attributeFormControlInitialValueMap,\n brickList,\n allowContinueCreate,\n showCancelButton,\n cancelText,\n confirmText,\n cancelType,\n defaultUserOrUserGroup,\n } = this.props;\n const { getFieldDecorator } = form;\n\n let defaultActiveKey = this.state.attrListGroupByTag.map(([key]) => key);\n\n if (Array.isArray(brickList)) {\n defaultActiveKey = [\n ...defaultActiveKey,\n ...brickList.map((brick) => brick.name),\n ];\n }\n if (defaultUserOrUserGroup) {\n defaultActiveKey = [...defaultActiveKey, \"permission\"];\n }\n const collapse = this.state.attrListGroupByTag && (\n <Collapse\n bordered={false}\n defaultActiveKey={defaultActiveKey}\n className={styles.collapseStyle}\n >\n {this.state.attrListGroupByTag.map(([tag, list]) => (\n <Panel header={tag} key={tag} forceRender={true}>\n {list.map((attribute, index) => {\n if (attribute.__isRelation) {\n return this.renderRelationFormControl(attribute);\n } else if (attribute.__isRelation === false) {\n return (\n <Form.Item\n label={\n <span>\n <span>{attribute.name}</span>\n {attribute.description && attribute.description !== \"\" && (\n <Tooltip title={attribute.description}>\n <InfoCircleOutlined\n style={{\n padding: \"0 2px\",\n color: \"var(--theme-blue-color)\",\n }}\n />\n </Tooltip>\n )}\n </span>\n }\n key={attribute.name}\n {...this.formItemProps}\n >\n {getFieldDecorator(attribute.id, {\n rules: this.rules(attribute),\n //默认值为string,但是新建时接口转成了object,故编辑时后台返回的也是object\n initialValue:\n attribute.value.type === \"json\" &&\n !_.isString(\n attributeFormControlInitialValueMap[attribute.id]\n )\n ? JSON.stringify(\n attributeFormControlInitialValueMap[attribute.id],\n null,\n 2\n )\n : attributeFormControlInitialValueMap[attribute.id],\n })(\n <ModelAttributeFormControl\n isCreate={this.props.isCreate}\n attribute={attribute}\n multiSelect={\n attribute?.value?.type ===\n ModelAttributeValueType.ENUMS\n }\n objectId={this.props.objectId}\n jsonValidateCollection={(err: any) => {\n const showError = { ...this.state.showError };\n showError[tag + index] = err;\n this.setState({ showError });\n }}\n />\n )}\n </Form.Item>\n );\n }\n })}\n </Panel>\n ))}\n\n {brickList &&\n brickList.map((brick) => (\n <Panel header={brick.header} key={brick.name}>\n <Form.Item\n label={brick.label}\n key={brick.name}\n {...this.formItemProps}\n >\n <brick.name\n ref={(element: any) => {\n element &&\n ((element[\"value\"] = this.props.form.getFieldsValue()),\n (element[\"options\"] = brick.options));\n }}\n />\n </Form.Item>\n </Panel>\n ))}\n\n {this.props.enabledWhiteList && this.props.permissionList && (\n <Panel\n header={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.PERMISSION_WHITELIST}`\n )}\n key={\"permission\"}\n >\n {this.props.permissionList.map((r) => {\n return (\n <Form.Item label={r.remark} key={r.id} {...this.formItemProps}>\n {getFieldDecorator(\n this.permissionAttrProcess(r.action) as string,\n {\n initialValue: defaultUserOrUserGroup,\n }\n )(\n <UserOrUserGroupSelect\n objectMap={keyBy(this.props.objectListOfUser, \"objectId\")}\n optionsMode=\"all\"\n ></UserOrUserGroupSelect>\n )}\n </Form.Item>\n );\n })}\n </Panel>\n )}\n </Collapse>\n );\n const submitContainer = (\n <div\n className={styles.generalFormFooter}\n style={{\n ...this.state.fixedStyle,\n borderTop: \"none\",\n paddingTop: \"16px\",\n paddingLeft: \"20px\",\n }}\n >\n <div className=\"ant-collapse-content-box\">\n <Form.Item {...this.formItemProps} label=\" \" colon={false}>\n {allowContinueCreate && (\n <Checkbox onChange={this.handleCheckContinueCreating}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CREATE_ANOTHER}`)}\n </Checkbox>\n )}\n\n {this.props.isCreate &&\n !this.props.hasRelateId &&\n !this.props.isApprove && (\n <Button\n onClick={(e) => this.handleSubmit(e, \"continue\")}\n className={styles.submitAndContinueBtn}\n disabled={\n this.disabled ||\n Object.values(this.state.showError).includes(true)\n }\n data-testid=\"submit-and-continue-btn\"\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SAVE_AND_CONTINUE}`)}\n </Button>\n )}\n\n <Button\n type=\"primary\"\n onClick={(e) => this.handleSubmit(e)}\n disabled={\n this.disabled ||\n Object.values(this.state.showError).includes(true)\n }\n data-testid=\"submit-btn\"\n >\n {confirmText ?? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SAVE}`)}\n </Button>\n\n {showCancelButton && (\n <Button\n type={cancelType}\n style={{ marginLeft: 8 }}\n onClick={this.handleCancel}\n >\n {cancelText ?? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n </Button>\n )}\n </Form.Item>\n </div>\n </div>\n );\n\n return (\n <Form>\n {collapse}\n {submitContainer}\n </Form>\n );\n }\n}\n\nexport const InstanceModelAttributeForm =\n Form.create<ModelAttributeFormProps>()(ModelAttributeForm);\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"constants.js","names":["permissionListMapOfApp"],"sources":["../../../src/model-attribute-form/constants.ts"],"sourcesContent":["export const permissionListMapOfApp: Record<string, any> = {\n [\"deploy:develop:app_resource_add\"]: \"developAppResourceAdd\",\n [\"deploy:test:app_resource_add\"]: \"testAppResourceAdd\",\n [\"deploy:prerelease:app_resource_add\"]: \"prereleaseAppResourceAdd\",\n [\"deploy:production:app_resource_add\"]: \"productionAppResourceAdd\",\n [\"deploy:develop:app_resource_remove\"]: \"developAppResourceRemove\",\n [\"deploy:test:app_resource_remove\"]: \"testAppResourceRemove\",\n [\"deploy:prerelease:app_resource_remove\"]: \"prereleaseAppResourceRemove\",\n [\"deploy:production:app_resource_remove\"]: \"productionAppResourceRemove\",\n [\"deploy:develop:app_package_access\"]: \"developAppPackageAccess\",\n [\"deploy:test:app_package_access\"]: \"testAppPackageAccess\",\n [\"deploy:prerelease:app_package_access\"]: \"prereleaseAppPackageAccess\",\n [\"deploy:production:app_package_access\"]: \"productionAppPackageAccess\",\n [\"deploy:develop:app_package_operation\"]: \"developAppPackageOperation\",\n [\"deploy:test:app_package_operation\"]: \"testAppPackageOperation\",\n [\"deploy:prerelease:app_package_operation\"]: \"prereleaseAppPackageOperation\",\n [\"deploy:production:app_package_operation\"]: \"productionAppPackageOperation\",\n [\"deploy:develop:app_package_create\"]: \"developAppPackageCreate\",\n [\"deploy:test:app_package_create\"]: \"testAppPackageCreate\",\n [\"deploy:prerelease:app_package_create\"]: \"prereleaseAppPackageCreate\",\n [\"deploy:production:app_package_create\"]: \"productionAppPackageCreate\",\n [\"deploy:develop:pipeline_access\"]: \"developPipelineAccess\",\n [\"deploy:test:pipeline_access\"]: \"testPipelineAccess\",\n [\"deploy:production:pipeline_access\"]: \"productionPipelineAccess\",\n [\"deploy:develop:pipeline_create\"]: \"developPipelineCreate\",\n [\"deploy:test:pipeline_create\"]: \"testPipelineCreate\",\n [\"deploy:production:pipeline_create\"]: \"productionPipelineCreate\",\n [\"deploy:develop:pipeline_delete\"]: \"developPipelineDelete\",\n [\"deploy:test:pipeline_delete\"]: \"testPipelineDelete\",\n [\"deploy:production:pipeline_delete\"]: \"productionPipelineDelete\",\n [\"deploy:develop:pipeline_update\"]: \"developPipelineUpdate\",\n [\"deploy:test:pipeline_update\"]: \"testPipelineUpdate\",\n [\"deploy:production:pipeline_update\"]: \"productionPipelineUpdate\",\n [\"deploy:develop:pipeline_execute\"]: \"developPipelineExecute\",\n [\"deploy:test:pipeline_execute\"]: \"testPipelineExecute\",\n [\"deploy:production:pipeline_execute\"]: \"productionPipelineExecute\",\n [\"deploy:develop:deploy_strategy_access\"]: \"developDeployStrategyAccess\",\n [\"deploy:test:deploy_strategy_access\"]: \"testDeployStrategyAccess\",\n [\"deploy:prerelease:deploy_strategy_access\"]:\n \"prereleaseDeployStrategyAccess\",\n [\"deploy:production:deploy_strategy_access\"]:\n \"productionDeployStrategyAccess\",\n [\"deploy:develop:deploy_strategy_create\"]: \"developDeployStrategyCreate\",\n [\"deploy:test:deploy_strategy_create\"]: \"testDeployStrategyCreate\",\n [\"deploy:prerelease:deploy_strategy_create\"]:\n \"prereleaseDeployStrategyCreate\",\n [\"deploy:production:deploy_strategy_create\"]:\n \"productionDeployStrategyCreate\",\n [\"deploy:develop:deploy_strategy_delete\"]: \"developDeployStrategyDelete\",\n [\"deploy:test:deploy_strategy_delete\"]: \"testDeployStrategyDelete\",\n [\"deploy:prerelease:deploy_strategy_delete\"]:\n \"prereleaseDeployStrategyDelete\",\n [\"deploy:production:deploy_strategy_delete\"]:\n \"productionDeployStrategyDelete\",\n [\"deploy:develop:deploy_strategy_update\"]: \"developDeployStrategyUpdate\",\n [\"deploy:test:deploy_strategy_update\"]: \"testDeployStrategyUpdate\",\n [\"deploy:prerelease:deploy_strategy_update\"]:\n \"prereleaseDeployStrategyUpdate\",\n [\"deploy:production:deploy_strategy_update\"]:\n \"productionDeployStrategyUpdate\",\n [\"deploy:develop:deploy_strategy_execute\"]: \"developDeployStrategyExecute\",\n [\"deploy:test:deploy_strategy_execute\"]: \"testDeployStrategyExecute\",\n [\"deploy:prerelease:deploy_strategy_execute\"]:\n \"prereleaseDeployStrategyExecute\",\n [\"deploy:production:deploy_strategy_execute\"]:\n \"productionDeployStrategyExecute\",\n [\"deploy:develop:package_instance_basic_operation\"]:\n \"developPackageInstanceBasicOperation\",\n [\"deploy:test:package_instance_basic_operation\"]:\n \"testPackageInstanceBasicOperation\",\n [\"deploy:prerelease:package_instance_basic_operation\"]:\n \"prereleasePackageInstanceBasicOperation\",\n [\"deploy:production:package_instance_basic_operation\"]:\n \"productionPackageInstanceBasicOperation\",\n [\"deploy:develop:package_instance_advanced_operation\"]:\n \"developPackageInstanceAdvancedOperation\",\n [\"deploy:test:package_instance_advanced_operation\"]:\n \"testPackageInstanceAdvancedOperation\",\n [\"deploy:prerelease:package_instance_advanced_operation\"]:\n \"prereleasePackageInstanceAdvancedOperation\",\n [\"deploy:production:package_instance_advanced_operation\"]:\n \"productionPackageInstanceAdvancedOperation\",\n [\"deploy:develop:environment_config\"]: \"developEnvironmentConfig\",\n [\"deploy:test:environment_config\"]: \"testEnvironmentConfig\",\n [\"deploy:prerelease:environment_config\"]: \"prereleasepEnvironmentConfig\",\n [\"deploy:production:environment_config\"]: \"productionEnvironmentConfig\",\n [\"deploy:develop:manual_deploy\"]: \"developManualDeploy\",\n [\"deploy:test:manual_deploy\"]: \"testManualDeploy\",\n [\"deploy:prerelease:manual_deploy\"]: \"prereleaseManualDeploy\",\n [\"deploy:production:manual_deploy\"]: \"productionManualDeploy\",\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/model-attribute-form-control/ModelAttributeFormControl.tsx"],"names":["React","Component","i18n","NS_LIBS_CMDB_INSTANCES","K","DatePicker","Input","InputNumber","Radio","Select","AddStruct","AttributeFormControlUrl","computeDateFormat","clusterMap","CodeEditor","some","ModelAttributeValueType","ModelAttributeValueModeType","FormControlTypeEnum","boolOptions","id","text","ModelAttributeFormControl","componentDidUpdate","prevProps","prevState","snapshot","props","value","type","attribute","name","setState","formControl","computeFormControl","objectId","constructor","isClusterType","formControlType","computeFormControlType","isSupportMultiStringValue","items","computeFormControlItems","BOOLEAN","result","label","required","readOnly","isCreate","readonly","unique","pattern","computePattern","STRUCT","computePlaceholder","event","target","onChange","date","dateString","undefined","err","error","jsonValidateCollection","showError","state","errorMessage","restProps","jsonSchema","regex","JSON","parse","TEXT","placeholder","e","className","style","URL","NUMBER","CODE_EDITOR","validateJson","display","color","t","NOT_MEET_JSON","TEXTAREA","MARKDOWN","LEGACY_STRUCT","formData","RADIO","unselected","TEMPORARILY_NOT_CHOOSE","map","item","String","TAGS","width","DATE","DATETIME","dateConfig","showTime","formater","format","handleDateChange","SELECT","newValue","multiSelect","is","message","_PLAIN_TEXT","ENUM","ENUMS","RegExp","enumValue","STRING","mode","MULTIPLE_LINES","IP","length","Error","ENUM_ERROR_TIP","INTEGER","FLOAT","ARR","struct_define","STRUCT_ERROR_TIP","STRUCT_LIST","TYPE_NO_SUPPORT_EDIT","IP_PLACEHOLDER","placeholders","push","CLICK_TO_SELECT","ENTER_MULTIPLE_STRING_WITH_ENTER_KEY_AS_THE_SEPARATOR","NUMBER_INPUT_PLACEHOLDER","ADVANCE_SEARCH_SINGLE_INPUT_PLACEHOLDER","MATCHING_REGULAR","regexp","UNIQUE_NO_REPEAT","join","render","FormControlTypeMap"],"mappings":"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","sourcesContent":["import React, { Component, ReactNode } from \"react\";\nimport { CmdbModels } from \"@next-sdk/cmdb-sdk\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport { DatePicker, Input, InputNumber, Radio, Select } from \"antd\";\nimport { AddStruct } from \"../struct-components\";\nimport moment, { Moment } from \"moment\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport { computeDateFormat } from \"../processors\";\nimport { clusterMap } from \"../instance-list-table/constants\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\nimport { some } from \"lodash\";\nexport interface FormControlSelectItem {\n id: any;\n text: string;\n}\n\nexport enum ModelAttributeValueType {\n STRING = \"str\",\n INTEGER = \"int\",\n ENUM = \"enum\",\n ENUMS = \"enums\",\n ARR = \"arr\",\n DATE = \"date\",\n DATETIME = \"datetime\",\n STRUCT = \"struct\",\n STRUCT_LIST = \"structs\",\n FOREIGN_KEY = \"FK\",\n FOREIGN_KEYS = \"FKs\",\n IP = \"ip\",\n FLOAT = \"float\",\n BOOLEAN = \"bool\",\n JSON = \"json\",\n}\n\nexport enum ModelAttributeValueModeType {\n MULTIPLE_LINES = \"multiple-lines\",\n DEFAULT = \"default\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n}\n\nexport enum FormControlTypeEnum {\n TEXT = \"text\",\n NUMBER = \"number\",\n SELECT = \"select\",\n RADIO = \"radio\",\n TEXTAREA = \"textarea\",\n DATE = \"date\",\n DATETIME = \"datetime\",\n TAGS = \"tags\",\n STRUCT = \"struct\",\n /**\n * @deprecated supported for compatibility only\n * @type {string}\n */\n LEGACY_STRUCT = \"legacy-struct\",\n // fallback to show a plain text span\n _PLAIN_TEXT = \"_plain_text\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n CODE_EDITOR = \"code_editor\",\n}\n\nexport interface FormControl {\n id: string;\n type: FormControlTypeEnum;\n items?: FormControlSelectItem[];\n name: string;\n label?: string;\n required?: boolean;\n readOnly?: boolean;\n unique?: boolean;\n pattern?: RegExp;\n placeholder?: string;\n maxlength?: number; // 结构体数组的最大长度,如果是结构体,就是1,\n}\n\nexport interface ModelAttributeFormControlProps {\n // ant-design initialValue\n id?: string;\n value?: any;\n isCreate?: boolean;\n onChange?: (value: any) => void;\n attribute: Partial<CmdbModels.ModelObjectAttr>;\n type?: string;\n multiSelect?: boolean;\n className?: string;\n style?: React.CSSProperties;\n objectId?: string;\n jsonValidateCollection?: (err: boolean) => void;\n isSupportMultiStringValue?: boolean;\n}\n\nexport interface ModelAttributeFormControlState {\n value?: any;\n formControl: FormControl;\n errorMessage: string;\n showError?: boolean;\n}\n\nexport const boolOptions: FormControlSelectItem[] = [\n {\n id: true,\n text: \"true\",\n },\n {\n id: false,\n text: \"false\",\n },\n];\n\nexport class ModelAttributeFormControl extends Component<\n ModelAttributeFormControlProps,\n ModelAttributeFormControlState\n> {\n componentDidUpdate(\n prevProps: Readonly<ModelAttributeFormControlProps>,\n prevState: Readonly<ModelAttributeFormControlState>,\n snapshot?: any\n ): void {\n if (\n this.props.value !== prevProps.value ||\n this.props.type !== prevProps.type ||\n this.props.attribute.id !== prevProps.attribute.id ||\n this.props.attribute.name !== prevProps.attribute.name ||\n this.props.attribute.value.type !== prevProps.attribute.value.type\n ) {\n this.setState({\n value: this.props.value,\n formControl: this.computeFormControl(\n this.props.attribute,\n this.props.id,\n this.props.type,\n this.props.objectId === \"CLUSTER\" &&\n this.props.attribute.id === \"type\"\n ),\n });\n }\n }\n\n constructor(props: ModelAttributeFormControlProps) {\n super(props);\n const { attribute, id, value, type, objectId } = props;\n const is = objectId;\n try {\n this.state = {\n value,\n errorMessage: null,\n formControl: this.computeFormControl(\n attribute,\n id,\n type,\n this.props.objectId === \"CLUSTER\" &&\n this.props.attribute.id === \"type\"\n ),\n };\n } catch (error) {\n this.state = {\n errorMessage: error.message,\n formControl: {\n type: FormControlTypeEnum._PLAIN_TEXT,\n name: attribute.name,\n id: \"\",\n },\n };\n }\n }\n\n static computePattern(\n attribute: Partial<CmdbModels.ModelObjectAttr>\n ): RegExp | undefined {\n try {\n if (\n attribute.value.type !== ModelAttributeValueType.ENUM &&\n attribute.value.type !== ModelAttributeValueType.ENUMS &&\n attribute.value.regex !== undefined &&\n attribute.value.regex !== null\n ) {\n // todo(jhuang): use `u` flag for compliance until https://github.com/angular/angular/pull/20819 is resolved\n return new RegExp(attribute.value.regex as string, \"u\");\n }\n return undefined;\n } catch (error) {\n return undefined;\n }\n }\n\n computeFormControlItems(\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n isClusterType?: boolean\n ): FormControlSelectItem[] {\n if (\n attribute.value.type === ModelAttributeValueType.ENUM ||\n attribute.value.type === ModelAttributeValueType.ENUMS\n ) {\n // The backend guys are notorious to use `regex` as enum candidates. 😢\n return (attribute.value.regex as string[])?.map((enumValue) => ({\n id: enumValue,\n text: isClusterType ? clusterMap[enumValue] : enumValue,\n }));\n }\n }\n\n static computeFormControlType(\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n type?: string,\n isSupportMultiStringValue?: boolean\n ): FormControlTypeEnum {\n switch (attribute.value.type) {\n case ModelAttributeValueType.STRING: {\n if (\n attribute.value.mode === ModelAttributeValueModeType.MULTIPLE_LINES\n ) {\n return FormControlTypeEnum.TEXTAREA;\n }\n if (attribute.value.mode === ModelAttributeValueModeType.MARKDOWN) {\n return FormControlTypeEnum.MARKDOWN;\n }\n if (attribute.value.mode === ModelAttributeValueModeType.URL) {\n return FormControlTypeEnum.URL;\n }\n }\n /* falls through */\n case ModelAttributeValueType.IP:\n if (isSupportMultiStringValue) {\n return FormControlTypeEnum.TAGS;\n }\n return FormControlTypeEnum.TEXT;\n case ModelAttributeValueType.JSON:\n // return FormControlTypeEnum.TEXTAREA;\n return FormControlTypeEnum.CODE_EDITOR;\n case ModelAttributeValueType.ENUM:\n if (\n !attribute.value.regex ||\n (attribute.value.regex as string[]).length === 0\n ) {\n throw new Error(\n // \"请在资源模型管理中添加枚举值, 属性: \" + attribute.name\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.ENUM_ERROR_TIP}`, {\n attribute: attribute.name,\n })\n );\n }\n if (\n attribute.value.regex &&\n (attribute.value.regex as string[]).length <= 5 &&\n (!type || type === FormControlTypeEnum.RADIO)\n ) {\n return FormControlTypeEnum.RADIO;\n }\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.INTEGER:\n case ModelAttributeValueType.FLOAT:\n return FormControlTypeEnum.NUMBER;\n case ModelAttributeValueType.DATE:\n return FormControlTypeEnum.DATE;\n case ModelAttributeValueType.DATETIME:\n return FormControlTypeEnum.DATETIME;\n case ModelAttributeValueType.ARR:\n return FormControlTypeEnum.TAGS;\n case ModelAttributeValueType.STRUCT:\n if (attribute.value.struct_define.length === 0) {\n throw new Error(\n // \"请在资源模型中添加结构体属性, 属性: \" + attribute.name\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.STRUCT_ERROR_TIP}`, {\n attribute: attribute.name,\n })\n );\n }\n return FormControlTypeEnum.LEGACY_STRUCT;\n case ModelAttributeValueType.STRUCT_LIST:\n if (attribute.value.struct_define.length === 0) {\n throw new Error(\n // \"请在资源模型中添加结构体属性, 属性: \" + attribute.name\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.STRUCT_ERROR_TIP}`, {\n attribute: attribute.name,\n })\n );\n }\n return FormControlTypeEnum.STRUCT;\n case ModelAttributeValueType.BOOLEAN:\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.ENUMS:\n return FormControlTypeEnum.SELECT;\n default:\n throw new Error(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.TYPE_NO_SUPPORT_EDIT}`, {\n type: attribute.value.type,\n })\n );\n }\n }\n\n computeFormControl = (\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n id?: string,\n type?: string,\n isClusterType?: boolean\n ): FormControl => {\n const formControlType = ModelAttributeFormControl.computeFormControlType(\n attribute,\n type,\n this.props.isSupportMultiStringValue\n );\n let items = this.computeFormControlItems(attribute, isClusterType);\n\n if (attribute.value.type === ModelAttributeValueType.BOOLEAN) {\n items = boolOptions;\n }\n\n const result: FormControl = {\n type: formControlType,\n items,\n id: id || attribute.id,\n name: attribute.id,\n label: attribute.name,\n required: attribute.required === \"true\",\n readOnly: !this.props.isCreate && attribute.readonly === \"true\",\n unique: attribute.unique === \"true\",\n pattern: ModelAttributeFormControl.computePattern(attribute),\n };\n\n if (result.type === FormControlTypeEnum.STRUCT) {\n result[\"maxlength\"] = 1;\n }\n result[\"placeholder\"] =\n ModelAttributeFormControl.computePlaceholder(result);\n return result;\n };\n\n static computePlaceholder(formControl: FormControl): string {\n if (formControl.id === \"ip\" && formControl.name === \"ip\") {\n return i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.IP_PLACEHOLDER}`);\n }\n\n const placeholders = [];\n switch (formControl.type) {\n case FormControlTypeEnum.SELECT:\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CLICK_TO_SELECT}`)\n );\n break;\n case FormControlTypeEnum.DATETIME:\n case FormControlTypeEnum.DATE:\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CLICK_TO_SELECT}`)\n );\n break;\n case FormControlTypeEnum.TAGS:\n placeholders.push(\n i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ENTER_MULTIPLE_STRING_WITH_ENTER_KEY_AS_THE_SEPARATOR}`\n )\n );\n break;\n case FormControlTypeEnum.NUMBER:\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NUMBER_INPUT_PLACEHOLDER}`)\n );\n break;\n default:\n placeholders.push(\n i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ADVANCE_SEARCH_SINGLE_INPUT_PLACEHOLDER}`\n )\n );\n }\n\n if (formControl.pattern !== undefined) {\n // placeholders.push(`匹配正则 ${formControl.pattern}`);\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: formControl.pattern,\n })\n );\n }\n if (formControl.unique) {\n // placeholders.push(`${formControl.label}唯一不能重复`);\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.UNIQUE_NO_REPEAT}`, {\n label: formControl.label,\n })\n );\n }\n return placeholders.join(\",\");\n }\n\n /*computeFormControlAndCatchError = () => {\n const { attribute, objectId } = this.props;\n try {\n this.setState({\n formControl: this.computeFormControl(attribute, objectId)\n });\n } catch (error) {\n this.setState({\n errorMessage: error.message,\n formControl: {\n type: FormControlTypeEnum._PLAIN_TEXT,\n name: attribute.name,\n id: \"\"\n }\n });\n }\n };*/\n\n onChange = (event: any) => {\n let value;\n if (event && event.target) {\n value = event.target.value;\n } else {\n value = event;\n }\n\n const { onChange } = this.props;\n this.setState({ value });\n onChange && onChange(value);\n };\n\n handleDateChange = (date: Moment, dateString: string) => {\n this.onChange(dateString || undefined);\n };\n validateJson = (err: any) => {\n const error = some(err, [\"type\", \"error\"]);\n this.props.jsonValidateCollection?.(error);\n this.setState({ showError: error });\n };\n\n FormControlTypeMap = (): ReactNode => {\n const { attribute } = this.props;\n const {\n value,\n formControl: { type, ...restProps },\n errorMessage,\n } = this.state;\n // const unsupportText = `\"${type}\"类型暂时不支持编辑`;\n // const unsupportText = i18n.t(\n // `${NS_LIBS_CMDB_INSTANCES}:${K.TYPE_NO_SUPPORT_EDIT}`,\n // { type }\n // );\n let jsonSchema: any;\n if (attribute?.value?.type === \"json\" && attribute?.value?.regex) {\n jsonSchema = JSON.parse(attribute?.value?.regex);\n }\n\n switch (type) {\n case FormControlTypeEnum.TEXT: {\n const { pattern, placeholder, ...props } = restProps;\n return (\n <Input\n value={value}\n type=\"text\"\n {...props}\n placeholder={placeholder}\n onChange={(e) => this.onChange(e)}\n className={this.props.className}\n style={this.props.style}\n />\n );\n }\n\n case FormControlTypeEnum.URL: {\n const { readOnly, required, placeholder } = restProps;\n\n return (\n <AttributeFormControlUrl\n readOnly={readOnly}\n required={required}\n placeholder={placeholder}\n value={value}\n onChange={(e) => this.onChange(e)}\n />\n );\n }\n\n case FormControlTypeEnum.NUMBER: {\n const { pattern, ...props } = restProps;\n return (\n <InputNumber\n value={value}\n {...props}\n onChange={(e: any) => this.onChange(e)}\n className={this.props.className}\n style={this.props.style}\n />\n );\n }\n case FormControlTypeEnum.CODE_EDITOR:\n return (\n <>\n <CodeEditor\n value={value}\n mode={\"json\"}\n maxLines={\"Infinity\"}\n highlightActiveLine={true}\n onChange={(e: any) => this.onChange(e)}\n minLines={3}\n showLineNumbers={true}\n showPrintMargin={false}\n validateJsonSchemaMode={\"error\"}\n {...(jsonSchema ? { jsonSchema: jsonSchema } : {})}\n theme=\"tomorrow\"\n onValidate={(err: any) => this.validateJson(err)}\n />\n <label\n style={{\n display: this.state.showError ? \"block\" : \"none\",\n color: \"#fc5043\",\n }}\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_JSON}`)}\n </label>\n </>\n );\n case FormControlTypeEnum.TEXTAREA:\n case FormControlTypeEnum.MARKDOWN: {\n return (\n <Input.TextArea\n value={value}\n {...restProps}\n onChange={(e: any) => this.onChange(e)}\n className={this.props.className}\n style={this.props.style}\n rows={5}\n />\n );\n }\n\n case FormControlTypeEnum.STRUCT:\n case FormControlTypeEnum.LEGACY_STRUCT:\n return (\n <AddStruct\n isLegacy={type === FormControlTypeEnum.LEGACY_STRUCT}\n attribute={attribute}\n structData={value}\n handleStoreFunction={(formData: any) => this.onChange(formData)}\n className={this.props.className}\n style={this.props.style}\n isCreate={this.props.isCreate}\n />\n );\n\n case FormControlTypeEnum.RADIO: {\n let { items, required, readOnly } = restProps;\n\n // NODE: 对非必填单选为空的特殊处理 BY @robertman\n const unselected = {\n id: null as string,\n // text: \"暂不选择\",\n text: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.TEMPORARILY_NOT_CHOOSE}`),\n };\n\n if (!required) {\n items = [...items, unselected];\n }\n\n return (\n <Radio.Group\n onChange={(e: any) => this.onChange(e)}\n value={value !== undefined ? value : unselected.id}\n className={this.props.className}\n style={this.props.style}\n disabled={readOnly}\n >\n {items.map((item) => (\n <Radio value={item.id} key={String(item.id)}>\n {item.text}\n </Radio>\n ))}\n </Radio.Group>\n );\n }\n\n case FormControlTypeEnum.TAGS: {\n const { placeholder, readOnly } = restProps;\n return (\n <Select\n allowClear={true}\n mode=\"tags\"\n style={{ ...this.props.style, width: \"100%\" }}\n disabled={readOnly}\n placeholder={placeholder}\n value={value || []}\n onChange={(e: any) => this.onChange(e)}\n className={this.props.className}\n />\n );\n }\n\n case FormControlTypeEnum.DATE:\n case FormControlTypeEnum.DATETIME: {\n let dateConfig = {};\n if (type === FormControlTypeEnum.DATETIME) {\n dateConfig = {\n showTime: true,\n };\n }\n const { readOnly, placeholder } = restProps;\n const formater = computeDateFormat(type, value);\n return (\n <DatePicker\n value={formater.value}\n placeholder={placeholder}\n disabled={readOnly}\n format={formater.format}\n {...dateConfig}\n onChange={(date, dateString) =>\n this.handleDateChange(date, dateString)\n }\n className={this.props.className}\n style={this.props.style}\n />\n );\n }\n\n case FormControlTypeEnum.SELECT: {\n const { readOnly, placeholder } = restProps;\n const newValue =\n typeof value === \"boolean\" ? value : value ? value : [];\n return (\n <Select\n placeholder={placeholder}\n mode={this.props.multiSelect ? \"multiple\" : undefined}\n value={newValue}\n onChange={(e: any) => this.onChange(e)}\n disabled={readOnly}\n className={this.props.className}\n style={this.props.style}\n >\n {restProps.items &&\n restProps.items.map(({ id, text }) => (\n <Select.Option value={id} key={id}>\n {text}\n </Select.Option>\n ))}\n </Select>\n );\n }\n\n default:\n return (\n // <Input\n // value={errorMessage}\n // readOnly\n // disabled\n // className={this.props.className}\n // style={this.props.style}\n // />\n <div\n style={{\n color: \"var(--theme-red-color)\",\n ...this.props.style,\n }}\n >\n {errorMessage}\n </div>\n );\n }\n };\n\n render(): ReactNode {\n return <>{this.FormControlTypeMap()}</>;\n }\n}\n"],"file":"ModelAttributeFormControl.js"}
|
|
1
|
+
{"version":3,"file":"ModelAttributeFormControl.js","names":["React","Component","i18n","NS_LIBS_CMDB_INSTANCES","K","DatePicker","Input","InputNumber","Radio","Select","AddStruct","AttributeFormControlUrl","computeDateFormat","clusterMap","CodeEditor","some","ModelAttributeValueType","ModelAttributeValueModeType","FormControlTypeEnum","boolOptions","id","text","ModelAttributeFormControl","componentDidUpdate","prevProps","prevState","snapshot","props","value","type","attribute","name","setState","formControl","computeFormControl","objectId","constructor","isClusterType","formControlType","computeFormControlType","isSupportMultiStringValue","items","computeFormControlItems","BOOLEAN","result","label","required","readOnly","isCreate","readonly","unique","pattern","computePattern","STRUCT","computePlaceholder","event","target","onChange","date","dateString","undefined","err","error","jsonValidateCollection","showError","state","errorMessage","restProps","jsonSchema","regex","JSON","parse","TEXT","placeholder","e","className","style","URL","NUMBER","CODE_EDITOR","validateJson","display","color","t","NOT_MEET_JSON","TEXTAREA","MARKDOWN","LEGACY_STRUCT","formData","RADIO","unselected","TEMPORARILY_NOT_CHOOSE","map","item","String","TAGS","width","DATE","DATETIME","dateConfig","showTime","formater","format","handleDateChange","SELECT","newValue","multiSelect","is","message","_PLAIN_TEXT","ENUM","ENUMS","RegExp","enumValue","STRING","mode","MULTIPLE_LINES","IP","length","Error","ENUM_ERROR_TIP","INTEGER","FLOAT","ARR","struct_define","STRUCT_ERROR_TIP","STRUCT_LIST","TYPE_NO_SUPPORT_EDIT","IP_PLACEHOLDER","placeholders","push","CLICK_TO_SELECT","ENTER_MULTIPLE_STRING_WITH_ENTER_KEY_AS_THE_SEPARATOR","NUMBER_INPUT_PLACEHOLDER","ADVANCE_SEARCH_SINGLE_INPUT_PLACEHOLDER","MATCHING_REGULAR","regexp","UNIQUE_NO_REPEAT","join","render","FormControlTypeMap"],"sources":["../../../src/model-attribute-form-control/ModelAttributeFormControl.tsx"],"sourcesContent":["import React, { Component, ReactNode } from \"react\";\nimport { CmdbModels } from \"@next-sdk/cmdb-sdk\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport { DatePicker, Input, InputNumber, Radio, Select } from \"antd\";\nimport { AddStruct } from \"../struct-components\";\nimport moment, { Moment } from \"moment\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport { computeDateFormat } from \"../processors\";\nimport { clusterMap } from \"../instance-list-table/constants\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\nimport { some } from \"lodash\";\nexport interface FormControlSelectItem {\n id: any;\n text: string;\n}\n\nexport enum ModelAttributeValueType {\n STRING = \"str\",\n INTEGER = \"int\",\n ENUM = \"enum\",\n ENUMS = \"enums\",\n ARR = \"arr\",\n DATE = \"date\",\n DATETIME = \"datetime\",\n STRUCT = \"struct\",\n STRUCT_LIST = \"structs\",\n FOREIGN_KEY = \"FK\",\n FOREIGN_KEYS = \"FKs\",\n IP = \"ip\",\n FLOAT = \"float\",\n BOOLEAN = \"bool\",\n JSON = \"json\",\n}\n\nexport enum ModelAttributeValueModeType {\n MULTIPLE_LINES = \"multiple-lines\",\n DEFAULT = \"default\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n}\n\nexport enum FormControlTypeEnum {\n TEXT = \"text\",\n NUMBER = \"number\",\n SELECT = \"select\",\n RADIO = \"radio\",\n TEXTAREA = \"textarea\",\n DATE = \"date\",\n DATETIME = \"datetime\",\n TAGS = \"tags\",\n STRUCT = \"struct\",\n /**\n * @deprecated supported for compatibility only\n * @type {string}\n */\n LEGACY_STRUCT = \"legacy-struct\",\n // fallback to show a plain text span\n _PLAIN_TEXT = \"_plain_text\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n CODE_EDITOR = \"code_editor\",\n}\n\nexport interface FormControl {\n id: string;\n type: FormControlTypeEnum;\n items?: FormControlSelectItem[];\n name: string;\n label?: string;\n required?: boolean;\n readOnly?: boolean;\n unique?: boolean;\n pattern?: RegExp;\n placeholder?: string;\n maxlength?: number; // 结构体数组的最大长度,如果是结构体,就是1,\n}\n\nexport interface ModelAttributeFormControlProps {\n // ant-design initialValue\n id?: string;\n value?: any;\n isCreate?: boolean;\n onChange?: (value: any) => void;\n attribute: Partial<CmdbModels.ModelObjectAttr>;\n type?: string;\n multiSelect?: boolean;\n className?: string;\n style?: React.CSSProperties;\n objectId?: string;\n jsonValidateCollection?: (err: boolean) => void;\n isSupportMultiStringValue?: boolean;\n}\n\nexport interface ModelAttributeFormControlState {\n value?: any;\n formControl: FormControl;\n errorMessage: string;\n showError?: boolean;\n}\n\nexport const boolOptions: FormControlSelectItem[] = [\n {\n id: true,\n text: \"true\",\n },\n {\n id: false,\n text: \"false\",\n },\n];\n\nexport class ModelAttributeFormControl extends Component<\n ModelAttributeFormControlProps,\n ModelAttributeFormControlState\n> {\n componentDidUpdate(\n prevProps: Readonly<ModelAttributeFormControlProps>,\n prevState: Readonly<ModelAttributeFormControlState>,\n snapshot?: any\n ): void {\n if (\n this.props.value !== prevProps.value ||\n this.props.type !== prevProps.type ||\n this.props.attribute.id !== prevProps.attribute.id ||\n this.props.attribute.name !== prevProps.attribute.name ||\n this.props.attribute.value.type !== prevProps.attribute.value.type\n ) {\n this.setState({\n value: this.props.value,\n formControl: this.computeFormControl(\n this.props.attribute,\n this.props.id,\n this.props.type,\n this.props.objectId === \"CLUSTER\" &&\n this.props.attribute.id === \"type\"\n ),\n });\n }\n }\n\n constructor(props: ModelAttributeFormControlProps) {\n super(props);\n const { attribute, id, value, type, objectId } = props;\n const is = objectId;\n try {\n this.state = {\n value,\n errorMessage: null,\n formControl: this.computeFormControl(\n attribute,\n id,\n type,\n this.props.objectId === \"CLUSTER\" &&\n this.props.attribute.id === \"type\"\n ),\n };\n } catch (error) {\n this.state = {\n errorMessage: error.message,\n formControl: {\n type: FormControlTypeEnum._PLAIN_TEXT,\n name: attribute.name,\n id: \"\",\n },\n };\n }\n }\n\n static computePattern(\n attribute: Partial<CmdbModels.ModelObjectAttr>\n ): RegExp | undefined {\n try {\n if (\n attribute.value.type !== ModelAttributeValueType.ENUM &&\n attribute.value.type !== ModelAttributeValueType.ENUMS &&\n attribute.value.regex !== undefined &&\n attribute.value.regex !== null\n ) {\n // todo(jhuang): use `u` flag for compliance until https://github.com/angular/angular/pull/20819 is resolved\n return new RegExp(attribute.value.regex as string, \"u\");\n }\n return undefined;\n } catch (error) {\n return undefined;\n }\n }\n\n computeFormControlItems(\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n isClusterType?: boolean\n ): FormControlSelectItem[] {\n if (\n attribute.value.type === ModelAttributeValueType.ENUM ||\n attribute.value.type === ModelAttributeValueType.ENUMS\n ) {\n // The backend guys are notorious to use `regex` as enum candidates. 😢\n return (attribute.value.regex as string[])?.map((enumValue) => ({\n id: enumValue,\n text: isClusterType ? clusterMap[enumValue] : enumValue,\n }));\n }\n }\n\n static computeFormControlType(\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n type?: string,\n isSupportMultiStringValue?: boolean\n ): FormControlTypeEnum {\n switch (attribute.value.type) {\n case ModelAttributeValueType.STRING: {\n if (\n attribute.value.mode === ModelAttributeValueModeType.MULTIPLE_LINES\n ) {\n return FormControlTypeEnum.TEXTAREA;\n }\n if (attribute.value.mode === ModelAttributeValueModeType.MARKDOWN) {\n return FormControlTypeEnum.MARKDOWN;\n }\n if (attribute.value.mode === ModelAttributeValueModeType.URL) {\n return FormControlTypeEnum.URL;\n }\n }\n /* falls through */\n case ModelAttributeValueType.IP:\n if (isSupportMultiStringValue) {\n return FormControlTypeEnum.TAGS;\n }\n return FormControlTypeEnum.TEXT;\n case ModelAttributeValueType.JSON:\n // return FormControlTypeEnum.TEXTAREA;\n return FormControlTypeEnum.CODE_EDITOR;\n case ModelAttributeValueType.ENUM:\n if (\n !attribute.value.regex ||\n (attribute.value.regex as string[]).length === 0\n ) {\n throw new Error(\n // \"请在资源模型管理中添加枚举值, 属性: \" + attribute.name\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.ENUM_ERROR_TIP}`, {\n attribute: attribute.name,\n })\n );\n }\n if (\n attribute.value.regex &&\n (attribute.value.regex as string[]).length <= 5 &&\n (!type || type === FormControlTypeEnum.RADIO)\n ) {\n return FormControlTypeEnum.RADIO;\n }\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.INTEGER:\n case ModelAttributeValueType.FLOAT:\n return FormControlTypeEnum.NUMBER;\n case ModelAttributeValueType.DATE:\n return FormControlTypeEnum.DATE;\n case ModelAttributeValueType.DATETIME:\n return FormControlTypeEnum.DATETIME;\n case ModelAttributeValueType.ARR:\n return FormControlTypeEnum.TAGS;\n case ModelAttributeValueType.STRUCT:\n if (attribute.value.struct_define.length === 0) {\n throw new Error(\n // \"请在资源模型中添加结构体属性, 属性: \" + attribute.name\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.STRUCT_ERROR_TIP}`, {\n attribute: attribute.name,\n })\n );\n }\n return FormControlTypeEnum.LEGACY_STRUCT;\n case ModelAttributeValueType.STRUCT_LIST:\n if (attribute.value.struct_define.length === 0) {\n throw new Error(\n // \"请在资源模型中添加结构体属性, 属性: \" + attribute.name\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.STRUCT_ERROR_TIP}`, {\n attribute: attribute.name,\n })\n );\n }\n return FormControlTypeEnum.STRUCT;\n case ModelAttributeValueType.BOOLEAN:\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.ENUMS:\n return FormControlTypeEnum.SELECT;\n default:\n throw new Error(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.TYPE_NO_SUPPORT_EDIT}`, {\n type: attribute.value.type,\n })\n );\n }\n }\n\n computeFormControl = (\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n id?: string,\n type?: string,\n isClusterType?: boolean\n ): FormControl => {\n const formControlType = ModelAttributeFormControl.computeFormControlType(\n attribute,\n type,\n this.props.isSupportMultiStringValue\n );\n let items = this.computeFormControlItems(attribute, isClusterType);\n\n if (attribute.value.type === ModelAttributeValueType.BOOLEAN) {\n items = boolOptions;\n }\n\n const result: FormControl = {\n type: formControlType,\n items,\n id: id || attribute.id,\n name: attribute.id,\n label: attribute.name,\n required: attribute.required === \"true\",\n readOnly: !this.props.isCreate && attribute.readonly === \"true\",\n unique: attribute.unique === \"true\",\n pattern: ModelAttributeFormControl.computePattern(attribute),\n };\n\n if (result.type === FormControlTypeEnum.STRUCT) {\n result[\"maxlength\"] = 1;\n }\n result[\"placeholder\"] =\n ModelAttributeFormControl.computePlaceholder(result);\n return result;\n };\n\n static computePlaceholder(formControl: FormControl): string {\n if (formControl.id === \"ip\" && formControl.name === \"ip\") {\n return i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.IP_PLACEHOLDER}`);\n }\n\n const placeholders = [];\n switch (formControl.type) {\n case FormControlTypeEnum.SELECT:\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CLICK_TO_SELECT}`)\n );\n break;\n case FormControlTypeEnum.DATETIME:\n case FormControlTypeEnum.DATE:\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CLICK_TO_SELECT}`)\n );\n break;\n case FormControlTypeEnum.TAGS:\n placeholders.push(\n i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ENTER_MULTIPLE_STRING_WITH_ENTER_KEY_AS_THE_SEPARATOR}`\n )\n );\n break;\n case FormControlTypeEnum.NUMBER:\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NUMBER_INPUT_PLACEHOLDER}`)\n );\n break;\n default:\n placeholders.push(\n i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ADVANCE_SEARCH_SINGLE_INPUT_PLACEHOLDER}`\n )\n );\n }\n\n if (formControl.pattern !== undefined) {\n // placeholders.push(`匹配正则 ${formControl.pattern}`);\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: formControl.pattern,\n })\n );\n }\n if (formControl.unique) {\n // placeholders.push(`${formControl.label}唯一不能重复`);\n placeholders.push(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.UNIQUE_NO_REPEAT}`, {\n label: formControl.label,\n })\n );\n }\n return placeholders.join(\",\");\n }\n\n /*computeFormControlAndCatchError = () => {\n const { attribute, objectId } = this.props;\n try {\n this.setState({\n formControl: this.computeFormControl(attribute, objectId)\n });\n } catch (error) {\n this.setState({\n errorMessage: error.message,\n formControl: {\n type: FormControlTypeEnum._PLAIN_TEXT,\n name: attribute.name,\n id: \"\"\n }\n });\n }\n };*/\n\n onChange = (event: any) => {\n let value;\n if (event && event.target) {\n value = event.target.value;\n } else {\n value = event;\n }\n\n const { onChange } = this.props;\n this.setState({ value });\n onChange && onChange(value);\n };\n\n handleDateChange = (date: Moment, dateString: string) => {\n this.onChange(dateString || undefined);\n };\n validateJson = (err: any) => {\n const error = some(err, [\"type\", \"error\"]);\n this.props.jsonValidateCollection?.(error);\n this.setState({ showError: error });\n };\n\n FormControlTypeMap = (): ReactNode => {\n const { attribute } = this.props;\n const {\n value,\n formControl: { type, ...restProps },\n errorMessage,\n } = this.state;\n // const unsupportText = `\"${type}\"类型暂时不支持编辑`;\n // const unsupportText = i18n.t(\n // `${NS_LIBS_CMDB_INSTANCES}:${K.TYPE_NO_SUPPORT_EDIT}`,\n // { type }\n // );\n let jsonSchema: any;\n if (attribute?.value?.type === \"json\" && attribute?.value?.regex) {\n jsonSchema = JSON.parse(attribute?.value?.regex);\n }\n\n switch (type) {\n case FormControlTypeEnum.TEXT: {\n const { pattern, placeholder, ...props } = restProps;\n return (\n <Input\n value={value}\n type=\"text\"\n {...props}\n placeholder={placeholder}\n onChange={(e) => this.onChange(e)}\n className={this.props.className}\n style={this.props.style}\n />\n );\n }\n\n case FormControlTypeEnum.URL: {\n const { readOnly, required, placeholder } = restProps;\n\n return (\n <AttributeFormControlUrl\n readOnly={readOnly}\n required={required}\n placeholder={placeholder}\n value={value}\n onChange={(e) => this.onChange(e)}\n />\n );\n }\n\n case FormControlTypeEnum.NUMBER: {\n const { pattern, ...props } = restProps;\n return (\n <InputNumber\n value={value}\n {...props}\n onChange={(e: any) => this.onChange(e)}\n className={this.props.className}\n style={this.props.style}\n />\n );\n }\n case FormControlTypeEnum.CODE_EDITOR:\n return (\n <>\n <CodeEditor\n value={value}\n mode={\"json\"}\n maxLines={\"Infinity\"}\n highlightActiveLine={true}\n onChange={(e: any) => this.onChange(e)}\n minLines={3}\n showLineNumbers={true}\n showPrintMargin={false}\n validateJsonSchemaMode={\"error\"}\n {...(jsonSchema ? { jsonSchema: jsonSchema } : {})}\n theme=\"tomorrow\"\n onValidate={(err: any) => this.validateJson(err)}\n />\n <label\n style={{\n display: this.state.showError ? \"block\" : \"none\",\n color: \"#fc5043\",\n }}\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_JSON}`)}\n </label>\n </>\n );\n case FormControlTypeEnum.TEXTAREA:\n case FormControlTypeEnum.MARKDOWN: {\n return (\n <Input.TextArea\n value={value}\n {...restProps}\n onChange={(e: any) => this.onChange(e)}\n className={this.props.className}\n style={this.props.style}\n rows={5}\n />\n );\n }\n\n case FormControlTypeEnum.STRUCT:\n case FormControlTypeEnum.LEGACY_STRUCT:\n return (\n <AddStruct\n isLegacy={type === FormControlTypeEnum.LEGACY_STRUCT}\n attribute={attribute}\n structData={value}\n handleStoreFunction={(formData: any) => this.onChange(formData)}\n className={this.props.className}\n style={this.props.style}\n isCreate={this.props.isCreate}\n />\n );\n\n case FormControlTypeEnum.RADIO: {\n let { items, required, readOnly } = restProps;\n\n // NODE: 对非必填单选为空的特殊处理 BY @robertman\n const unselected = {\n id: null as string,\n // text: \"暂不选择\",\n text: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.TEMPORARILY_NOT_CHOOSE}`),\n };\n\n if (!required) {\n items = [...items, unselected];\n }\n\n return (\n <Radio.Group\n onChange={(e: any) => this.onChange(e)}\n value={value !== undefined ? value : unselected.id}\n className={this.props.className}\n style={this.props.style}\n disabled={readOnly}\n >\n {items.map((item) => (\n <Radio value={item.id} key={String(item.id)}>\n {item.text}\n </Radio>\n ))}\n </Radio.Group>\n );\n }\n\n case FormControlTypeEnum.TAGS: {\n const { placeholder, readOnly } = restProps;\n return (\n <Select\n allowClear={true}\n mode=\"tags\"\n style={{ ...this.props.style, width: \"100%\" }}\n disabled={readOnly}\n placeholder={placeholder}\n value={value || []}\n onChange={(e: any) => this.onChange(e)}\n className={this.props.className}\n />\n );\n }\n\n case FormControlTypeEnum.DATE:\n case FormControlTypeEnum.DATETIME: {\n let dateConfig = {};\n if (type === FormControlTypeEnum.DATETIME) {\n dateConfig = {\n showTime: true,\n };\n }\n const { readOnly, placeholder } = restProps;\n const formater = computeDateFormat(type, value);\n return (\n <DatePicker\n value={formater.value}\n placeholder={placeholder}\n disabled={readOnly}\n format={formater.format}\n {...dateConfig}\n onChange={(date, dateString) =>\n this.handleDateChange(date, dateString)\n }\n className={this.props.className}\n style={this.props.style}\n />\n );\n }\n\n case FormControlTypeEnum.SELECT: {\n const { readOnly, placeholder } = restProps;\n const newValue =\n typeof value === \"boolean\" ? value : value ? value : [];\n return (\n <Select\n placeholder={placeholder}\n mode={this.props.multiSelect ? \"multiple\" : undefined}\n value={newValue}\n onChange={(e: any) => this.onChange(e)}\n disabled={readOnly}\n className={this.props.className}\n style={this.props.style}\n >\n {restProps.items &&\n restProps.items.map(({ id, text }) => (\n <Select.Option value={id} key={id}>\n {text}\n </Select.Option>\n ))}\n </Select>\n );\n }\n\n default:\n return (\n // <Input\n // value={errorMessage}\n // readOnly\n // disabled\n // className={this.props.className}\n // style={this.props.style}\n // />\n <div\n style={{\n color: \"var(--theme-red-color)\",\n ...this.props.style,\n }}\n >\n {errorMessage}\n </div>\n );\n }\n };\n\n render(): ReactNode {\n return <>{this.FormControlTypeMap()}</>;\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"ModelRelationForm.js","names":["React","useState","Modal","Table","i18n","NS_LIBS_CMDB_INSTANCES","K","InstanceApi_postSearch","InstanceListTable","styles","ModelRelationForm","props","console","warn","oppositeModelData","modelMap","relation","right_object_id","visible","setVisible","modalInstanceListData","setModalInstanceListData","selectedInstanceListTemp","selectedInstanceList","setSelectedInstanceList","instanceListData","fieldIds","attrList","map","attr","id","computeFields","openSelectInstanceModel","objectId","page","page_size","fields","handleOk","onChange","instanceData","instanceId","handleCancel","handlePaginationChange","event","pageSize","handleSelectionChange","selectedItems","renderTable","columns","filter","includes","value","type","slice","title","name","key","dataIndex","x","modelRelationFormWrapper","t","ITEM_ADD_IN_BATCHES","right_description","ADD"],"sources":["../../../src/model-relation-form/ModelRelationForm.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { Modal, Table } from \"antd\";\nimport { ColumnProps } from \"antd/lib/table\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport {\n CmdbModels,\n InstanceApi_PostSearchResponseBody,\n InstanceApi_postSearch,\n} from \"@next-sdk/cmdb-sdk\";\nimport { InstanceListTable } from \"../instance-list-table/InstanceListTable\";\n\nimport styles from \"./model-relation-form.module.css\";\n\nimport { ModifiedModelObjectRelation } from \"@next-libs/cmdb-utils\";\n\nexport interface ModelRelationFormProps {\n modelMap: Record<string, Partial<CmdbModels.ModelCmdbObject>>;\n relation: Partial<ModifiedModelObjectRelation>;\n instanceListData: any[];\n value?: string[];\n onChange?: (event: any) => void;\n}\n\nexport function ModelRelationForm(\n props: ModelRelationFormProps\n): React.ReactElement {\n // eslint-disable-next-line no-console\n console.warn(\n \"deprecated component `ModelRelationForm`, please use `CmdbInstancesSelectPanel` instead\"\n );\n\n const oppositeModelData = props.modelMap[props.relation.right_object_id];\n\n const [visible, setVisible] = useState(false);\n const [\n modalInstanceListData,\n setModalInstanceListData,\n ] = useState<InstanceApi_PostSearchResponseBody>();\n\n let selectedInstanceListTemp: any[] = [];\n const [selectedInstanceList, setSelectedInstanceList] = useState(\n props.instanceListData || []\n );\n\n const fieldIds = oppositeModelData.attrList.map((attr) => attr.id);\n\n const computeFields = () => {\n // TODO(Cyril): compute custom fields\n return {\n \"*\": true,\n };\n };\n\n const openSelectInstanceModel = async () => {\n const instanceListData = await InstanceApi_postSearch(\n oppositeModelData.objectId,\n {\n page: 1,\n page_size: 10,\n fields: computeFields(),\n }\n );\n setModalInstanceListData(instanceListData);\n setVisible(true);\n };\n\n const handleOk = () => {\n setVisible(false);\n setSelectedInstanceList(selectedInstanceListTemp);\n props.onChange(\n selectedInstanceListTemp.map((instanceData) => instanceData.instanceId)\n );\n };\n\n const handleCancel = () => {\n setVisible(false);\n };\n\n const handlePaginationChange = async (event: {\n page: number;\n pageSize: number;\n }) => {\n const instanceListData = await InstanceApi_postSearch(\n oppositeModelData.objectId,\n {\n page: event.page,\n page_size: event.pageSize,\n fields: computeFields(),\n }\n );\n setModalInstanceListData(instanceListData);\n };\n\n const handleSelectionChange = (event: { selectedItems: any[] }) => {\n selectedInstanceListTemp = event.selectedItems;\n };\n\n const renderTable = (selectedInstanceList: any[]) => {\n const columns: ColumnProps<any>[] = oppositeModelData.attrList\n .filter((attr) => ![\"struct\", \"structs\"].includes(attr.value.type))\n .slice(0, 7)\n .map((attr) => ({\n title: attr.name,\n key: attr.id,\n dataIndex: attr.id,\n }));\n\n return (\n <Table\n dataSource={selectedInstanceList}\n columns={columns}\n pagination={false}\n scroll={{ x: \"max-content\" }}\n />\n );\n };\n\n return (\n <div className={styles.modelRelationFormWrapper}>\n <Modal\n title={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.ITEM_ADD_IN_BATCHES}`, {\n name: props.relation.right_description,\n })}\n visible={visible}\n width={900}\n onOk={handleOk}\n onCancel={handleCancel}\n destroyOnClose={true}\n >\n <InstanceListTable\n idObjectMap={props.modelMap}\n modelData={oppositeModelData}\n fieldIds={fieldIds}\n instanceListData={modalInstanceListData}\n onSelectionChange={handleSelectionChange}\n onPaginationChange={handlePaginationChange}\n ></InstanceListTable>\n </Modal>\n <a onClick={openSelectInstanceModel}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.ADD}`)}\n </a>\n {renderTable(selectedInstanceList)}\n </div>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"processors.js","names":["getRuntime","uniq","compact","moment","FormControlTypeEnum","clusterMap","featureFlags","process","env","NODE_ENV","getFeatureFlags","ENABLED_CMDB_ADVANCE_SEARCH_WITH_QUOTE","processAttrValueWithQuote","attrValue","resultArray","quoteIndex","indexOf","nextQuoteIndex","length","split","slice","push","computeDateFormat","type","value","dateFormat","dateTimeFormat","format","DATETIME","changeQueryWithCustomRules","objectId","attrId","q","modifiedQuery","operator","Object","keys","values"],"sources":["../../src/processors.ts"],"sourcesContent":["import { getRuntime } from \"@next-core/brick-kit\";\nimport { uniq, compact } from \"lodash\";\nimport moment, { Moment } from \"moment\";\nimport { Query } from \"@next-libs/cmdb-utils\";\n\nimport { FormControlTypeEnum } from \"./model-attribute-form-control/ModelAttributeFormControl\";\nimport { clusterMap } from \"./instance-list-table/constants\";\n\nconst featureFlags =\n process.env.NODE_ENV === \"test\"\n ? { \"cmdb-advance-search-with-quote\": true }\n : getRuntime().getFeatureFlags();\nexport const ENABLED_CMDB_ADVANCE_SEARCH_WITH_QUOTE = true;\n// featureFlags[\"cmdb-advance-search-with-quote\"];\n\nexport const processAttrValueWithQuote = (\n attrValue: string,\n resultArray: any\n): any => {\n const quoteIndex = attrValue.indexOf('\"');\n const nextQuoteIndex = attrValue.indexOf('\"', quoteIndex + 1);\n if (nextQuoteIndex == -1 || quoteIndex === -1) {\n if (attrValue.length) {\n resultArray = [...resultArray, ...attrValue.split(\" \")];\n }\n return uniq(compact(resultArray));\n } else if (nextQuoteIndex != -1) {\n if (quoteIndex !== 0) {\n resultArray = [\n ...resultArray,\n ...attrValue.slice(0, quoteIndex).split(\" \"),\n ];\n resultArray.push(attrValue.slice(quoteIndex + 1, nextQuoteIndex));\n return processAttrValueWithQuote(\n attrValue.slice(nextQuoteIndex + 1),\n resultArray\n );\n } else {\n resultArray.push(attrValue.slice(quoteIndex + 1, nextQuoteIndex));\n return processAttrValueWithQuote(\n attrValue.slice(nextQuoteIndex + 1),\n resultArray\n );\n }\n }\n};\n\nexport const computeDateFormat = (\n type: string,\n value: any\n): { format: string; value: Moment | null } => {\n const dateFormat = \"YYYY-MM-DD\";\n const dateTimeFormat = \"YYYY-MM-DD HH:mm:ss\";\n let format;\n if (type === FormControlTypeEnum.DATETIME) {\n format = dateTimeFormat;\n } else {\n format = dateFormat;\n }\n return {\n value: value ? moment(value, format) : null,\n format,\n };\n};\n\nexport const changeQueryWithCustomRules = (\n objectId: string,\n attrId: string,\n q: Query\n): Query => {\n let modifiedQuery = q;\n if (objectId === \"CLUSTER\" && attrId === \"type\") {\n const operator = Object.keys(modifiedQuery[\"type\"])[0];\n const value = Object.values(modifiedQuery[\"type\"])[0];\n modifiedQuery = {\n type: {\n [operator]: clusterMap[value],\n },\n };\n }\n return modifiedQuery;\n};\n"],"mappings":"AAAA,SAASA,UAAT,QAA2B,sBAA3B;AACA,SAASC,IAAT,EAAeC,OAAf,QAA8B,QAA9B;AACA,OAAOC,MAAP,MAA+B,QAA/B;AAGA,SAASC,mBAAT,QAAoC,0DAApC;AACA,SAASC,UAAT,QAA2B,iCAA3B;AAEA,IAAMC,YAAY,GAChBC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,MAAzB,GACI;EAAE,kCAAkC;AAApC,CADJ,GAEIT,UAAU,GAAGU,eAAb,EAHN;AAIA,OAAO,IAAMC,sCAAsC,GAAG,IAA/C,C,CACP;;AAEA,OAAO,IAAMC,yBAAyB,GAAG,CACvCC,SADuC,EAEvCC,WAFuC,KAG/B;EACR,IAAMC,UAAU,GAAGF,SAAS,CAACG,OAAV,CAAkB,GAAlB,CAAnB;EACA,IAAMC,cAAc,GAAGJ,SAAS,CAACG,OAAV,CAAkB,GAAlB,EAAuBD,UAAU,GAAG,CAApC,CAAvB;;EACA,IAAIE,cAAc,IAAI,CAAC,CAAnB,IAAwBF,UAAU,KAAK,CAAC,CAA5C,EAA+C;IAC7C,IAAIF,SAAS,CAACK,MAAd,EAAsB;MACpBJ,WAAW,GAAG,CAAC,GAAGA,WAAJ,EAAiB,GAAGD,SAAS,CAACM,KAAV,CAAgB,GAAhB,CAApB,CAAd;IACD;;IACD,OAAOlB,IAAI,CAACC,OAAO,CAACY,WAAD,CAAR,CAAX;EACD,CALD,MAKO,IAAIG,cAAc,IAAI,CAAC,CAAvB,EAA0B;IAC/B,IAAIF,UAAU,KAAK,CAAnB,EAAsB;MACpBD,WAAW,GAAG,CACZ,GAAGA,WADS,EAEZ,GAAGD,SAAS,CAACO,KAAV,CAAgB,CAAhB,EAAmBL,UAAnB,EAA+BI,KAA/B,CAAqC,GAArC,CAFS,CAAd;MAIAL,WAAW,CAACO,IAAZ,CAAiBR,SAAS,CAACO,KAAV,CAAgBL,UAAU,GAAG,CAA7B,EAAgCE,cAAhC,CAAjB;MACA,OAAOL,yBAAyB,CAC9BC,SAAS,CAACO,KAAV,CAAgBH,cAAc,GAAG,CAAjC,CAD8B,EAE9BH,WAF8B,CAAhC;IAID,CAVD,MAUO;MACLA,WAAW,CAACO,IAAZ,CAAiBR,SAAS,CAACO,KAAV,CAAgBL,UAAU,GAAG,CAA7B,EAAgCE,cAAhC,CAAjB;MACA,OAAOL,yBAAyB,CAC9BC,SAAS,CAACO,KAAV,CAAgBH,cAAc,GAAG,CAAjC,CAD8B,EAE9BH,WAF8B,CAAhC;IAID;EACF;AACF,CA9BM;AAgCP,OAAO,IAAMQ,iBAAiB,GAAG,CAC/BC,IAD+B,EAE/BC,KAF+B,KAGc;EAC7C,IAAMC,UAAU,GAAG,YAAnB;EACA,IAAMC,cAAc,GAAG,qBAAvB;EACA,IAAIC,MAAJ;;EACA,IAAIJ,IAAI,KAAKnB,mBAAmB,CAACwB,QAAjC,EAA2C;IACzCD,MAAM,GAAGD,cAAT;EACD,CAFD,MAEO;IACLC,MAAM,GAAGF,UAAT;EACD;;EACD,OAAO;IACLD,KAAK,EAAEA,KAAK,GAAGrB,MAAM,CAACqB,KAAD,EAAQG,MAAR,CAAT,GAA2B,IADlC;IAELA;EAFK,CAAP;AAID,CAhBM;AAkBP,OAAO,IAAME,0BAA0B,GAAG,CACxCC,QADwC,EAExCC,MAFwC,EAGxCC,CAHwC,KAI9B;EACV,IAAIC,aAAa,GAAGD,CAApB;;EACA,IAAIF,QAAQ,KAAK,SAAb,IAA0BC,MAAM,KAAK,MAAzC,EAAiD;IAC/C,IAAMG,QAAQ,GAAGC,MAAM,CAACC,IAAP,CAAYH,aAAa,CAAC,MAAD,CAAzB,EAAmC,CAAnC,CAAjB;IACA,IAAMT,KAAK,GAAGW,MAAM,CAACE,MAAP,CAAcJ,aAAa,CAAC,MAAD,CAA3B,EAAqC,CAArC,CAAd;IACAA,aAAa,GAAG;MACdV,IAAI,EAAE;QACJ,CAACW,QAAD,GAAY7B,UAAU,CAACmB,KAAD;MADlB;IADQ,CAAhB;EAKD;;EACD,OAAOS,aAAP;AACD,CAhBM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"AddStruct.js","names":["React","Button","i18n","NS_LIBS_CMDB_INSTANCES","K","StructTable","AddStructModal","isArray","isEmpty","AddStruct","Component","constructor","props","formData","isLegacy","output","Array","setState","showModal","handleStoreFunction","structData","handleCloseModal","state","render","attribute","className","readonly","isCreate","handleOpenAddModal","t","ADD","handleAddStruct","handleEditStruct"],"sources":["../../../src/struct-components/AddStruct.tsx"],"sourcesContent":["import React, { CSSProperties } from \"react\";\nimport { Button } from \"antd\";\nimport i18n from \"i18next\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport { StructTable } from \"./StructTable\";\nimport { AddStructModal } from \"./AddStructModal\";\nimport { isArray, isEmpty } from \"lodash\";\nimport { Attribute } from \"./interfaces\";\nimport { CmdbModels } from \"@next-sdk/cmdb-sdk\";\n\nexport interface AddStructProps {\n style?: CSSProperties;\n structData?: any;\n attribute: Partial<CmdbModels.ModelObjectAttr>;\n handleStoreFunction: (value: any) => void;\n isLegacy?: boolean;\n className?: string;\n isCreate?: boolean;\n}\nexport interface AddStructState {\n showModal: boolean;\n structData: any;\n isEdit?: boolean;\n}\nexport class AddStruct extends React.Component<AddStructProps, AddStructState> {\n constructor(props: AddStructProps) {\n super(props);\n this.state = {\n structData: props.structData,\n showModal: false,\n };\n }\n // 编辑结构体\n handleEditStruct = (formData: any) => {\n const { isLegacy } = this.props;\n const output = isLegacy\n ? Array.isArray(formData)\n ? formData[0]\n : formData\n : formData;\n this.setState({ showModal: false });\n this.props.handleStoreFunction(output);\n };\n // 新建结构体\n handleAddStruct = (formData: any) => {\n const { isLegacy, structData } = this.props;\n this.props.handleStoreFunction(\n isLegacy\n ? formData\n : isArray(structData)\n ? [...structData, formData]\n : [formData]\n );\n this.handleCloseModal();\n };\n handleCloseModal = () => {\n this.setState({\n showModal: false,\n });\n };\n handleOpenAddModal = () => {\n this.setState({ showModal: true });\n };\n render() {\n const { structData, attribute, isLegacy, className } = this.props;\n const { showModal } = this.state;\n return (\n <div className={className}>\n {/* 单结构体并且已经添加过的,添加按钮置灰 */}\n <Button\n type=\"link\"\n disabled={\n (isLegacy && !isEmpty(structData)) ||\n (attribute.readonly === \"true\" && !this.props.isCreate)\n }\n onClick={this.handleOpenAddModal}\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.ADD}`)}\n </Button>\n <AddStructModal\n // 新建的情况下不必给初值,初值为空对象时codeEditor才能正常回填\n structData={{}}\n attribute={attribute as Attribute}\n visible={showModal}\n handleStoreFunction={(formData: any) =>\n this.handleAddStruct(formData)\n }\n handleCancelFunction={this.handleCloseModal}\n />\n <StructTable\n structData={structData}\n attribute={attribute as Attribute}\n isEditable={\n this.props.attribute.readonly === \"false\" || this.props.isCreate\n }\n isLegacy={isLegacy}\n handleStoreFunction={this.handleEditStruct}\n />\n </div>\n );\n }\n}\n"],"mappings":";AAAA,OAAOA,KAAP,MAAqC,OAArC;AACA,SAASC,MAAT,QAAuB,MAAvB;AACA,OAAOC,IAAP,MAAiB,SAAjB;AACA,SAASC,sBAAT,EAAiCC,CAAjC,QAA0C,mBAA1C;AACA,SAASC,WAAT,QAA4B,eAA5B;AACA,SAASC,cAAT,QAA+B,kBAA/B;AACA,SAASC,OAAT,EAAkBC,OAAlB,QAAiC,QAAjC;AAkBA,OAAO,MAAMC,SAAN,SAAwBT,KAAK,CAACU,SAA9B,CAAwE;EAC7EC,WAAW,CAACC,KAAD,EAAwB;IACjC,MAAMA,KAAN;;IADiC,0CAQfC,QAAD,IAAmB;MACpC,IAAM;QAAEC;MAAF,IAAe,KAAKF,KAA1B;MACA,IAAMG,MAAM,GAAGD,QAAQ,GACnBE,KAAK,CAACT,OAAN,CAAcM,QAAd,IACEA,QAAQ,CAAC,CAAD,CADV,GAEEA,QAHiB,GAInBA,QAJJ;MAKA,KAAKI,QAAL,CAAc;QAAEC,SAAS,EAAE;MAAb,CAAd;MACA,KAAKN,KAAL,CAAWO,mBAAX,CAA+BJ,MAA/B;IACD,CAjBkC;;IAAA,yCAmBhBF,QAAD,IAAmB;MACnC,IAAM;QAAEC,QAAF;QAAYM;MAAZ,IAA2B,KAAKR,KAAtC;MACA,KAAKA,KAAL,CAAWO,mBAAX,CACEL,QAAQ,GACJD,QADI,GAEJN,OAAO,CAACa,UAAD,CAAP,GACA,CAAC,GAAGA,UAAJ,EAAgBP,QAAhB,CADA,GAEA,CAACA,QAAD,CALN;MAOA,KAAKQ,gBAAL;IACD,CA7BkC;;IAAA,0CA8BhB,MAAM;MACvB,KAAKJ,QAAL,CAAc;QACZC,SAAS,EAAE;MADC,CAAd;IAGD,CAlCkC;;IAAA,4CAmCd,MAAM;MACzB,KAAKD,QAAL,CAAc;QAAEC,SAAS,EAAE;MAAb,CAAd;IACD,CArCkC;;IAEjC,KAAKI,KAAL,GAAa;MACXF,UAAU,EAAER,KAAK,CAACQ,UADP;MAEXF,SAAS,EAAE;IAFA,CAAb;EAID,CAP4E,CAQ7E;;;EA+BAK,MAAM,GAAG;IACP,IAAM;MAAEH,UAAF;MAAcI,SAAd;MAAyBV,QAAzB;MAAmCW;IAAnC,IAAiD,KAAKb,KAA5D;IACA,IAAM;MAAEM;IAAF,IAAgB,KAAKI,KAA3B;IACA,oBACE;MAAK,SAAS,EAAEG;IAAhB,gBAEE,oBAAC,MAAD;MACE,IAAI,EAAC,MADP;MAEE,QAAQ,EACLX,QAAQ,IAAI,CAACN,OAAO,CAACY,UAAD,CAArB,IACCI,SAAS,CAACE,QAAV,KAAuB,MAAvB,IAAiC,CAAC,KAAKd,KAAL,CAAWe,QAJlD;MAME,OAAO,EAAE,KAAKC;IANhB,GAQG1B,IAAI,CAAC2B,CAAL,WAAU1B,sBAAV,cAAoCC,CAAC,CAAC0B,GAAtC,EARH,CAFF,eAYE,oBAAC,cAAD,CACE;IADF;MAEE,UAAU,EAAE,EAFd;MAGE,SAAS,EAAEN,SAHb;MAIE,OAAO,EAAEN,SAJX;MAKE,mBAAmB,EAAGL,QAAD,IACnB,KAAKkB,eAAL,CAAqBlB,QAArB,CANJ;MAQE,oBAAoB,EAAE,KAAKQ;IAR7B,EAZF,eAsBE,oBAAC,WAAD;MACE,UAAU,EAAED,UADd;MAEE,SAAS,EAAEI,SAFb;MAGE,UAAU,EACR,KAAKZ,KAAL,CAAWY,SAAX,CAAqBE,QAArB,KAAkC,OAAlC,IAA6C,KAAKd,KAAL,CAAWe,QAJ5D;MAME,QAAQ,EAAEb,QANZ;MAOE,mBAAmB,EAAE,KAAKkB;IAP5B,EAtBF,CADF;EAkCD;;AA5E4E"}
|