@next-libs/cmdb-instances 7.24.3 → 7.24.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.
@@ -406,6 +406,7 @@ class ModelAttributeFormControl extends _react.Component {
406
406
  return /*#__PURE__*/_react.default.createElement(_antd.TreeSelect, {
407
407
  value: newValue,
408
408
  allowClear: true,
409
+ showSearch: true,
409
410
  treeData: treeData,
410
411
  disabled: readOnly,
411
412
  placeholder: placeholder,
@@ -1 +1 @@
1
- {"version":3,"file":"ModelAttributeFormControl.js","names":["_react","_interopRequireWildcard","require","_i18next","_interopRequireDefault","_constants","_antd","_structComponents","_AttributeFormControlUrl","_processors","_constants2","_codeEditorComponents","_brickKit","_lodash","_cmdbUtils","_cmdbUpload","ModelAttributeValueType","exports","ModelAttributeValueModeType","FormControlTypeEnum","boolOptions","id","text","ModelAttributeFormControl","Component","componentDidUpdate","prevProps","prevState","snapshot","props","value","type","attribute","name","setState","formControl","computeFormControl","isClusterType","objectId","constructor","_defineProperty2","default","formControlType","computeFormControlType","isSupportMultiStringValue","items","computeFormControlItems","BOOLEAN","result","label","required","readOnly","isCreate","readonly","unique","pattern","computePattern","STRUCT","computePlaceholder","event","target","onChange","date","dateString","undefined","err","_this$props$jsonValid","_this$props","error","some","jsonValidateCollection","call","showError","_this$props$xmlValida","_this$props2","xmlValidateCollection","_attribute$value","_attribute$value2","restProps","errorMessage","state","jsonSchema","regex","_attribute$value3","JSON","parse","TEXT","placeholder","createElement","Input","_extends2","e","className","style","URL","AttributeFormControlUrl","NUMBER","InputNumber","CODE_EDITOR","Fragment","CodeEditor","mode","maxLines","highlightActiveLine","minLines","showLineNumbers","showPrintMargin","validateJsonSchemaMode","theme","onValidate","validateJson","display","color","i18n","t","NS_LIBS_CMDB_INSTANCES","K","NOT_MEET_JSON","XML_EDITOR","validateXML","NOT_MEET_XML","TEXTAREA","MARKDOWN","TextArea","rows","LEGACY_STRUCT","AddStruct","isLegacy","structData","handleStoreFunction","formData","RADIO","unselected","TEMPORARILY_NOT_CHOOSE","Radio","Group","disabled","map","item","key","String","TAGS","Select","allowClear","width","DATE","DATETIME","dateConfig","showTime","formater","computeDateFormat","DatePicker","format","handleDateChange","SELECT","newValue","multiSelect","showSearch","Option","TREESELECT","isMultiple","treeData","treeEnumFormat","TreeSelect","treeCheckable","ATTACHMENT","CmdbUpload","autoUpload","uploadConfig","is","message","_PLAIN_TEXT","ENUM","ENUMS","RegExp","_attribute$value$rege","enumValue","clusterMap","attrValueType","STRING","XML","MULTIPLE_LINES","IP","length","Error","ENUM_ERROR_TIP","getRuntime","getFeatureFlags","CASCADE","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 {\n DatePicker,\n Input,\n InputNumber,\n Radio,\n Select,\n TreeSelect,\n Upload,\n} from \"antd\";\nimport { AddStruct } from \"../struct-components\";\nimport { Moment } from \"moment\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport { computeDateFormat, isClusterType } from \"../processors\";\nimport { clusterMap } from \"../instance-list-table/constants\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\nimport { getRuntime } from \"@next-core/brick-kit\";\nimport { some } from \"lodash\";\nimport { treeEnumFormat } from \"@next-libs/cmdb-utils\";\nimport { CmdbUpload, UploadConfig } from \"../components/cmdb-upload\";\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 ATTACHMENT = \"attachment\",\n}\n\nexport enum ModelAttributeValueModeType {\n MULTIPLE_LINES = \"multiple-lines\",\n DEFAULT = \"default\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n XML = \"xml\",\n PASSWORD = \"password\",\n CASCADE = \"cascade\",\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 XML_EDITOR = \"xml_editor\",\n TREESELECT = \"tree_select\",\n ATTACHMENT = \"attachment\",\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 xmlValidateCollection?: (err: boolean) => void;\n isSupportMultiStringValue?: boolean;\n uploadConfig?: UploadConfig;\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 isClusterType(this.props.objectId, this.props.attribute.id)\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 isClusterType(objectId, attribute.id)\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 const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRING: {\n if ((attribute.value.mode as any) === ModelAttributeValueModeType.XML) {\n return FormControlTypeEnum.XML_EDITOR;\n }\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 if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\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 // 附件类型\n if ((attribute.value.mode as any) === \"attachment\") {\n return FormControlTypeEnum.ATTACHMENT;\n }\n return FormControlTypeEnum.STRUCT;\n case ModelAttributeValueType.BOOLEAN:\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.ENUMS:\n if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\n }\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 validateXML = (err: any) => {\n const error = some(err, [\"type\", \"error\"]);\n this.props.xmlValidateCollection?.(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.XML_EDITOR:\n return (\n <>\n <CodeEditor\n theme=\"monokai\"\n mode={\"xml\"}\n minLines={5}\n maxLines={20}\n showLineNumbers={true}\n showPrintMargin={false}\n highlightActiveLine={true}\n value={value ?? \"\"}\n onChange={(e: any) => this.onChange(e)}\n onValidate={(err: any) => this.validateXML(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_XML}`)}\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 showSearch\n allowClear={true}\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 case FormControlTypeEnum.TREESELECT: {\n // istanbul ignore next\n const { readOnly, placeholder } = restProps;\n const newValue =\n typeof value === \"boolean\" ? value : value ? value : [];\n const isMultiple =\n attribute.value.type === \"enums\" &&\n (attribute.value.mode as any) === \"cascade\";\n const treeData: any = treeEnumFormat(\n attribute.value.regex || [],\n isMultiple\n );\n return (\n <TreeSelect\n value={newValue}\n allowClear\n treeData={treeData}\n disabled={readOnly}\n placeholder={placeholder}\n className={this.props.className}\n style={this.props.style}\n treeCheckable={attribute.value.type === \"enums\"}\n onChange={(e: any) => this.onChange(e)}\n />\n );\n }\n\n case FormControlTypeEnum.ATTACHMENT: {\n const { readOnly } = restProps;\n return (\n <CmdbUpload\n disabled={readOnly}\n value={value}\n className={this.props.className}\n style={this.props.style}\n autoUpload\n uploadConfig={this.props.uploadConfig}\n onChange={(e: any) => this.onChange(e)}\n ></CmdbUpload>\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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","ignoreList":[]}
1
+ {"version":3,"file":"ModelAttributeFormControl.js","names":["_react","_interopRequireWildcard","require","_i18next","_interopRequireDefault","_constants","_antd","_structComponents","_AttributeFormControlUrl","_processors","_constants2","_codeEditorComponents","_brickKit","_lodash","_cmdbUtils","_cmdbUpload","ModelAttributeValueType","exports","ModelAttributeValueModeType","FormControlTypeEnum","boolOptions","id","text","ModelAttributeFormControl","Component","componentDidUpdate","prevProps","prevState","snapshot","props","value","type","attribute","name","setState","formControl","computeFormControl","isClusterType","objectId","constructor","_defineProperty2","default","formControlType","computeFormControlType","isSupportMultiStringValue","items","computeFormControlItems","BOOLEAN","result","label","required","readOnly","isCreate","readonly","unique","pattern","computePattern","STRUCT","computePlaceholder","event","target","onChange","date","dateString","undefined","err","_this$props$jsonValid","_this$props","error","some","jsonValidateCollection","call","showError","_this$props$xmlValida","_this$props2","xmlValidateCollection","_attribute$value","_attribute$value2","restProps","errorMessage","state","jsonSchema","regex","_attribute$value3","JSON","parse","TEXT","placeholder","createElement","Input","_extends2","e","className","style","URL","AttributeFormControlUrl","NUMBER","InputNumber","CODE_EDITOR","Fragment","CodeEditor","mode","maxLines","highlightActiveLine","minLines","showLineNumbers","showPrintMargin","validateJsonSchemaMode","theme","onValidate","validateJson","display","color","i18n","t","NS_LIBS_CMDB_INSTANCES","K","NOT_MEET_JSON","XML_EDITOR","validateXML","NOT_MEET_XML","TEXTAREA","MARKDOWN","TextArea","rows","LEGACY_STRUCT","AddStruct","isLegacy","structData","handleStoreFunction","formData","RADIO","unselected","TEMPORARILY_NOT_CHOOSE","Radio","Group","disabled","map","item","key","String","TAGS","Select","allowClear","width","DATE","DATETIME","dateConfig","showTime","formater","computeDateFormat","DatePicker","format","handleDateChange","SELECT","newValue","multiSelect","showSearch","Option","TREESELECT","isMultiple","treeData","treeEnumFormat","TreeSelect","treeCheckable","ATTACHMENT","CmdbUpload","autoUpload","uploadConfig","is","message","_PLAIN_TEXT","ENUM","ENUMS","RegExp","_attribute$value$rege","enumValue","clusterMap","attrValueType","STRING","XML","MULTIPLE_LINES","IP","length","Error","ENUM_ERROR_TIP","getRuntime","getFeatureFlags","CASCADE","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 {\n DatePicker,\n Input,\n InputNumber,\n Radio,\n Select,\n TreeSelect,\n Upload,\n} from \"antd\";\nimport { AddStruct } from \"../struct-components\";\nimport { Moment } from \"moment\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport { computeDateFormat, isClusterType } from \"../processors\";\nimport { clusterMap } from \"../instance-list-table/constants\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\nimport { getRuntime } from \"@next-core/brick-kit\";\nimport { some } from \"lodash\";\nimport { treeEnumFormat } from \"@next-libs/cmdb-utils\";\nimport { CmdbUpload, UploadConfig } from \"../components/cmdb-upload\";\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 ATTACHMENT = \"attachment\",\n}\n\nexport enum ModelAttributeValueModeType {\n MULTIPLE_LINES = \"multiple-lines\",\n DEFAULT = \"default\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n XML = \"xml\",\n PASSWORD = \"password\",\n CASCADE = \"cascade\",\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 XML_EDITOR = \"xml_editor\",\n TREESELECT = \"tree_select\",\n ATTACHMENT = \"attachment\",\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 xmlValidateCollection?: (err: boolean) => void;\n isSupportMultiStringValue?: boolean;\n uploadConfig?: UploadConfig;\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 isClusterType(this.props.objectId, this.props.attribute.id)\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 isClusterType(objectId, attribute.id)\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 const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRING: {\n if ((attribute.value.mode as any) === ModelAttributeValueModeType.XML) {\n return FormControlTypeEnum.XML_EDITOR;\n }\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 if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\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 // 附件类型\n if ((attribute.value.mode as any) === \"attachment\") {\n return FormControlTypeEnum.ATTACHMENT;\n }\n return FormControlTypeEnum.STRUCT;\n case ModelAttributeValueType.BOOLEAN:\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.ENUMS:\n if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\n }\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 validateXML = (err: any) => {\n const error = some(err, [\"type\", \"error\"]);\n this.props.xmlValidateCollection?.(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.XML_EDITOR:\n return (\n <>\n <CodeEditor\n theme=\"monokai\"\n mode={\"xml\"}\n minLines={5}\n maxLines={20}\n showLineNumbers={true}\n showPrintMargin={false}\n highlightActiveLine={true}\n value={value ?? \"\"}\n onChange={(e: any) => this.onChange(e)}\n onValidate={(err: any) => this.validateXML(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_XML}`)}\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 showSearch\n allowClear={true}\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 case FormControlTypeEnum.TREESELECT: {\n // istanbul ignore next\n const { readOnly, placeholder } = restProps;\n const newValue =\n typeof value === \"boolean\" ? value : value ? value : [];\n const isMultiple =\n attribute.value.type === \"enums\" &&\n (attribute.value.mode as any) === \"cascade\";\n const treeData: any = treeEnumFormat(\n attribute.value.regex || [],\n isMultiple\n );\n return (\n <TreeSelect\n value={newValue}\n allowClear\n showSearch\n treeData={treeData}\n disabled={readOnly}\n placeholder={placeholder}\n className={this.props.className}\n style={this.props.style}\n treeCheckable={attribute.value.type === \"enums\"}\n onChange={(e: any) => this.onChange(e)}\n />\n );\n }\n\n case FormControlTypeEnum.ATTACHMENT: {\n const { readOnly } = restProps;\n return (\n <CmdbUpload\n disabled={readOnly}\n value={value}\n className={this.props.className}\n style={this.props.style}\n autoUpload\n uploadConfig={this.props.uploadConfig}\n onChange={(e: any) => this.onChange(e)}\n ></CmdbUpload>\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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","ignoreList":[]}
@@ -406,6 +406,7 @@ export class ModelAttributeFormControl extends Component {
406
406
  return /*#__PURE__*/React.createElement(TreeSelect, {
407
407
  value: _newValue,
408
408
  allowClear: true,
409
+ showSearch: true,
409
410
  treeData: treeData,
410
411
  disabled: _readOnly5,
411
412
  placeholder: _placeholder5,
@@ -1 +1 @@
1
- {"version":3,"file":"ModelAttributeFormControl.js","names":["React","Component","i18n","NS_LIBS_CMDB_INSTANCES","K","DatePicker","Input","InputNumber","Radio","Select","TreeSelect","AddStruct","AttributeFormControlUrl","computeDateFormat","isClusterType","clusterMap","CodeEditor","getRuntime","some","treeEnumFormat","CmdbUpload","ModelAttributeValueType","ModelAttributeValueModeType","FormControlTypeEnum","boolOptions","id","text","ModelAttributeFormControl","componentDidUpdate","prevProps","prevState","snapshot","props","value","type","attribute","name","setState","formControl","computeFormControl","objectId","constructor","_defineProperty","formControlType","computeFormControlType","isSupportMultiStringValue","items","computeFormControlItems","BOOLEAN","result","label","required","readOnly","isCreate","readonly","unique","pattern","computePattern","STRUCT","computePlaceholder","event","target","onChange","date","dateString","undefined","err","_this$props$jsonValid","_this$props","error","jsonValidateCollection","call","showError","_this$props$xmlValida","_this$props2","xmlValidateCollection","_attribute$value","_attribute$value2","_this$state","state","errorMessage","restProps","_objectWithoutProperties","_excluded","jsonSchema","regex","_attribute$value3","JSON","parse","TEXT","placeholder","_excluded2","createElement","_extends","e","className","style","URL","NUMBER","_excluded3","CODE_EDITOR","Fragment","mode","maxLines","highlightActiveLine","minLines","showLineNumbers","showPrintMargin","validateJsonSchemaMode","theme","onValidate","validateJson","display","color","t","concat","NOT_MEET_JSON","XML_EDITOR","validateXML","NOT_MEET_XML","TEXTAREA","MARKDOWN","TextArea","rows","LEGACY_STRUCT","isLegacy","structData","handleStoreFunction","formData","RADIO","unselected","TEMPORARILY_NOT_CHOOSE","Group","disabled","map","item","key","String","TAGS","allowClear","_objectSpread","width","DATE","DATETIME","dateConfig","showTime","formater","format","handleDateChange","SELECT","newValue","multiSelect","showSearch","_ref","Option","TREESELECT","isMultiple","treeData","treeCheckable","ATTACHMENT","autoUpload","uploadConfig","is","message","_PLAIN_TEXT","ENUM","ENUMS","RegExp","_attribute$value$rege","enumValue","attrValueType","STRING","XML","MULTIPLE_LINES","IP","length","Error","ENUM_ERROR_TIP","getFeatureFlags","CASCADE","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 {\n DatePicker,\n Input,\n InputNumber,\n Radio,\n Select,\n TreeSelect,\n Upload,\n} from \"antd\";\nimport { AddStruct } from \"../struct-components\";\nimport { Moment } from \"moment\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport { computeDateFormat, isClusterType } from \"../processors\";\nimport { clusterMap } from \"../instance-list-table/constants\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\nimport { getRuntime } from \"@next-core/brick-kit\";\nimport { some } from \"lodash\";\nimport { treeEnumFormat } from \"@next-libs/cmdb-utils\";\nimport { CmdbUpload, UploadConfig } from \"../components/cmdb-upload\";\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 ATTACHMENT = \"attachment\",\n}\n\nexport enum ModelAttributeValueModeType {\n MULTIPLE_LINES = \"multiple-lines\",\n DEFAULT = \"default\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n XML = \"xml\",\n PASSWORD = \"password\",\n CASCADE = \"cascade\",\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 XML_EDITOR = \"xml_editor\",\n TREESELECT = \"tree_select\",\n ATTACHMENT = \"attachment\",\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 xmlValidateCollection?: (err: boolean) => void;\n isSupportMultiStringValue?: boolean;\n uploadConfig?: UploadConfig;\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 isClusterType(this.props.objectId, this.props.attribute.id)\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 isClusterType(objectId, attribute.id)\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 const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRING: {\n if ((attribute.value.mode as any) === ModelAttributeValueModeType.XML) {\n return FormControlTypeEnum.XML_EDITOR;\n }\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 if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\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 // 附件类型\n if ((attribute.value.mode as any) === \"attachment\") {\n return FormControlTypeEnum.ATTACHMENT;\n }\n return FormControlTypeEnum.STRUCT;\n case ModelAttributeValueType.BOOLEAN:\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.ENUMS:\n if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\n }\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 validateXML = (err: any) => {\n const error = some(err, [\"type\", \"error\"]);\n this.props.xmlValidateCollection?.(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.XML_EDITOR:\n return (\n <>\n <CodeEditor\n theme=\"monokai\"\n mode={\"xml\"}\n minLines={5}\n maxLines={20}\n showLineNumbers={true}\n showPrintMargin={false}\n highlightActiveLine={true}\n value={value ?? \"\"}\n onChange={(e: any) => this.onChange(e)}\n onValidate={(err: any) => this.validateXML(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_XML}`)}\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 showSearch\n allowClear={true}\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 case FormControlTypeEnum.TREESELECT: {\n // istanbul ignore next\n const { readOnly, placeholder } = restProps;\n const newValue =\n typeof value === \"boolean\" ? value : value ? value : [];\n const isMultiple =\n attribute.value.type === \"enums\" &&\n (attribute.value.mode as any) === \"cascade\";\n const treeData: any = treeEnumFormat(\n attribute.value.regex || [],\n isMultiple\n );\n return (\n <TreeSelect\n value={newValue}\n allowClear\n treeData={treeData}\n disabled={readOnly}\n placeholder={placeholder}\n className={this.props.className}\n style={this.props.style}\n treeCheckable={attribute.value.type === \"enums\"}\n onChange={(e: any) => this.onChange(e)}\n />\n );\n }\n\n case FormControlTypeEnum.ATTACHMENT: {\n const { readOnly } = restProps;\n return (\n <CmdbUpload\n disabled={readOnly}\n value={value}\n className={this.props.className}\n style={this.props.style}\n autoUpload\n uploadConfig={this.props.uploadConfig}\n onChange={(e: any) => this.onChange(e)}\n ></CmdbUpload>\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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","ignoreList":[]}
1
+ {"version":3,"file":"ModelAttributeFormControl.js","names":["React","Component","i18n","NS_LIBS_CMDB_INSTANCES","K","DatePicker","Input","InputNumber","Radio","Select","TreeSelect","AddStruct","AttributeFormControlUrl","computeDateFormat","isClusterType","clusterMap","CodeEditor","getRuntime","some","treeEnumFormat","CmdbUpload","ModelAttributeValueType","ModelAttributeValueModeType","FormControlTypeEnum","boolOptions","id","text","ModelAttributeFormControl","componentDidUpdate","prevProps","prevState","snapshot","props","value","type","attribute","name","setState","formControl","computeFormControl","objectId","constructor","_defineProperty","formControlType","computeFormControlType","isSupportMultiStringValue","items","computeFormControlItems","BOOLEAN","result","label","required","readOnly","isCreate","readonly","unique","pattern","computePattern","STRUCT","computePlaceholder","event","target","onChange","date","dateString","undefined","err","_this$props$jsonValid","_this$props","error","jsonValidateCollection","call","showError","_this$props$xmlValida","_this$props2","xmlValidateCollection","_attribute$value","_attribute$value2","_this$state","state","errorMessage","restProps","_objectWithoutProperties","_excluded","jsonSchema","regex","_attribute$value3","JSON","parse","TEXT","placeholder","_excluded2","createElement","_extends","e","className","style","URL","NUMBER","_excluded3","CODE_EDITOR","Fragment","mode","maxLines","highlightActiveLine","minLines","showLineNumbers","showPrintMargin","validateJsonSchemaMode","theme","onValidate","validateJson","display","color","t","concat","NOT_MEET_JSON","XML_EDITOR","validateXML","NOT_MEET_XML","TEXTAREA","MARKDOWN","TextArea","rows","LEGACY_STRUCT","isLegacy","structData","handleStoreFunction","formData","RADIO","unselected","TEMPORARILY_NOT_CHOOSE","Group","disabled","map","item","key","String","TAGS","allowClear","_objectSpread","width","DATE","DATETIME","dateConfig","showTime","formater","format","handleDateChange","SELECT","newValue","multiSelect","showSearch","_ref","Option","TREESELECT","isMultiple","treeData","treeCheckable","ATTACHMENT","autoUpload","uploadConfig","is","message","_PLAIN_TEXT","ENUM","ENUMS","RegExp","_attribute$value$rege","enumValue","attrValueType","STRING","XML","MULTIPLE_LINES","IP","length","Error","ENUM_ERROR_TIP","getFeatureFlags","CASCADE","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 {\n DatePicker,\n Input,\n InputNumber,\n Radio,\n Select,\n TreeSelect,\n Upload,\n} from \"antd\";\nimport { AddStruct } from \"../struct-components\";\nimport { Moment } from \"moment\";\nimport { AttributeFormControlUrl } from \"../attribute-form-control-url/AttributeFormControlUrl\";\nimport { computeDateFormat, isClusterType } from \"../processors\";\nimport { clusterMap } from \"../instance-list-table/constants\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\nimport { getRuntime } from \"@next-core/brick-kit\";\nimport { some } from \"lodash\";\nimport { treeEnumFormat } from \"@next-libs/cmdb-utils\";\nimport { CmdbUpload, UploadConfig } from \"../components/cmdb-upload\";\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 ATTACHMENT = \"attachment\",\n}\n\nexport enum ModelAttributeValueModeType {\n MULTIPLE_LINES = \"multiple-lines\",\n DEFAULT = \"default\",\n MARKDOWN = \"markdown\",\n URL = \"url\",\n XML = \"xml\",\n PASSWORD = \"password\",\n CASCADE = \"cascade\",\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 XML_EDITOR = \"xml_editor\",\n TREESELECT = \"tree_select\",\n ATTACHMENT = \"attachment\",\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 xmlValidateCollection?: (err: boolean) => void;\n isSupportMultiStringValue?: boolean;\n uploadConfig?: UploadConfig;\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 isClusterType(this.props.objectId, this.props.attribute.id)\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 isClusterType(objectId, attribute.id)\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 const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRING: {\n if ((attribute.value.mode as any) === ModelAttributeValueModeType.XML) {\n return FormControlTypeEnum.XML_EDITOR;\n }\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 if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\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 // 附件类型\n if ((attribute.value.mode as any) === \"attachment\") {\n return FormControlTypeEnum.ATTACHMENT;\n }\n return FormControlTypeEnum.STRUCT;\n case ModelAttributeValueType.BOOLEAN:\n return FormControlTypeEnum.SELECT;\n case ModelAttributeValueType.ENUMS:\n if (\n getRuntime().getFeatureFlags()[\"cmdb-use-tree-enum-attr\"] &&\n (attribute.value.mode as any) === ModelAttributeValueModeType.CASCADE\n ) {\n return FormControlTypeEnum.TREESELECT;\n }\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 validateXML = (err: any) => {\n const error = some(err, [\"type\", \"error\"]);\n this.props.xmlValidateCollection?.(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.XML_EDITOR:\n return (\n <>\n <CodeEditor\n theme=\"monokai\"\n mode={\"xml\"}\n minLines={5}\n maxLines={20}\n showLineNumbers={true}\n showPrintMargin={false}\n highlightActiveLine={true}\n value={value ?? \"\"}\n onChange={(e: any) => this.onChange(e)}\n onValidate={(err: any) => this.validateXML(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_XML}`)}\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 showSearch\n allowClear={true}\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 case FormControlTypeEnum.TREESELECT: {\n // istanbul ignore next\n const { readOnly, placeholder } = restProps;\n const newValue =\n typeof value === \"boolean\" ? value : value ? value : [];\n const isMultiple =\n attribute.value.type === \"enums\" &&\n (attribute.value.mode as any) === \"cascade\";\n const treeData: any = treeEnumFormat(\n attribute.value.regex || [],\n isMultiple\n );\n return (\n <TreeSelect\n value={newValue}\n allowClear\n showSearch\n treeData={treeData}\n disabled={readOnly}\n placeholder={placeholder}\n className={this.props.className}\n style={this.props.style}\n treeCheckable={attribute.value.type === \"enums\"}\n onChange={(e: any) => this.onChange(e)}\n />\n );\n }\n\n case FormControlTypeEnum.ATTACHMENT: {\n const { readOnly } = restProps;\n return (\n <CmdbUpload\n disabled={readOnly}\n value={value}\n className={this.props.className}\n style={this.props.style}\n autoUpload\n uploadConfig={this.props.uploadConfig}\n onChange={(e: any) => this.onChange(e)}\n ></CmdbUpload>\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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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-libs/cmdb-instances",
3
- "version": "7.24.3",
3
+ "version": "7.24.4",
4
4
  "description": "> TODO: description",
5
5
  "homepage": "https://github.com/easyops-cn/next-libs/tree/master/libs/cmdb-instances",
6
6
  "license": "GPL-3.0",
@@ -52,5 +52,5 @@
52
52
  "js-base64": "^3.7.7",
53
53
  "marked": "^2.1.3"
54
54
  },
55
- "gitHead": "d79ff0be12bb4e5cfefe9b0c295a6ff2d150e340"
55
+ "gitHead": "5ec349c8fe97ea8f8a9816e0069b947c16c26feb"
56
56
  }