@next-libs/cmdb-instances 7.17.2 → 7.17.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.AddStructModal = AddStructModal;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
10
11
  var _antd = require("antd");
11
12
  var _interfaces = require("./interfaces");
12
13
  var _ModelAttributeFormControl = require("../model-attribute-form-control/ModelAttributeFormControl");
@@ -246,6 +247,11 @@ function AddStructModal(props) {
246
247
  handleCancelFunction();
247
248
  form.resetFields();
248
249
  };
250
+ (0, _react.useEffect)(() => {
251
+ if (visible) {
252
+ form.setFieldsValue(structValue);
253
+ }
254
+ }, [visible]);
249
255
  return /*#__PURE__*/_react.default.createElement(_antd.Modal, {
250
256
  visible: visible,
251
257
  onOk: handleStore,
@@ -1 +1 @@
1
- {"version":3,"file":"AddStructModal.js","names":["AddStructModal","props","attribute","visible","structData","handleStoreFunction","handleCancelFunction","structDefine","value","struct_define","structDefineMap","keyBy","form","Form","useForm","structValue","reduce","pre","key","calcValue","type","StructDefineType","DATE","DATETIME","moment","JSON","isString","stringify","hasRegex","regex","isNil","hasValue","handleJsonValidate","err","define","errors","some","v","push","i18n","t","NS_LIBS_CMDB_INSTANCES","K","NOT_MEET_JSON","NOT_MEET_REGEX","setFields","name","id","getFormType","INTEGER","width","MATCHING_REGULAR","regexp","FLOAT","BOOLEAN","boolOptions","map","item","text","ARR","ENUM","length","ENUMS","IP","jsonSchema","parse","STRING","getFormRules","rules","pattern","message","NOT_MEET_REGEX_DETAIL","RegExp","validator","rule","cb","every","test","handleStore","hasErrors","getFieldsError","values","validateFields","newValues","realValue","format","resetFields","handleCloseModal","CONFIRM","CANCEL"],"sources":["../../../src/struct-components/AddStructModal.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n DatePicker,\n Input,\n InputNumber,\n Modal,\n Radio,\n Select,\n Form,\n} from \"antd\";\nimport { Attribute, Structkey, StructDefineType } from \"./interfaces\";\nimport { boolOptions } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport moment from \"moment\";\nimport { keyBy, reduce, isString, isNil } from \"lodash\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\n\nexport interface AddStructModalProps {\n structData?: any;\n attribute: Attribute;\n handleStoreFunction: any;\n handleCancelFunction: () => void;\n visible: boolean;\n}\n\nexport function AddStructModal(props: AddStructModalProps): React.ReactElement {\n const {\n attribute,\n visible,\n structData,\n handleStoreFunction,\n handleCancelFunction,\n } = props;\n const structDefine = attribute.value.struct_define;\n const structDefineMap = keyBy(structDefine, \"id\");\n const [form] = Form.useForm();\n\n const structValue = reduce(\n structData,\n (pre: any, value, key) => {\n let calcValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE:\n case StructDefineType.DATETIME:\n calcValue = value && moment(value);\n break;\n case StructDefineType.JSON:\n calcValue =\n isString(value) || !value\n ? value || \"\"\n : JSON.stringify(value, null, 2);\n break;\n default:\n calcValue = value;\n }\n pre[key] = calcValue;\n return pre;\n },\n {}\n );\n\n const hasRegex = (regex: any): boolean => !isNil(regex) && regex !== \"\";\n const hasValue = (value: any): boolean => !isNil(value) && value !== \"\";\n\n const handleJsonValidate = (err: any, define: Structkey) => {\n const errors: string[] = [];\n err.some((v: any) => v.type === \"error\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_JSON}`));\n err.some((v: any) => v.type === \"warning\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n form.setFields([\n {\n name: define.id,\n errors,\n },\n ]);\n };\n\n const getFormType = (define: Structkey) => {\n switch (define.type) {\n case StructDefineType.INTEGER: {\n return (\n <InputNumber\n style={{ width: \"100%\" }}\n precision={0}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.FLOAT: {\n return <InputNumber style={{ width: \"100%\" }} />;\n }\n case StructDefineType.BOOLEAN: {\n return (\n <Radio.Group>\n {boolOptions.map((item) => (\n <Radio value={item.id} key={item.text}>\n {item.text}\n </Radio>\n ))}\n </Radio.Group>\n );\n }\n case StructDefineType.ARR: {\n return (\n <Select\n mode=\"tags\"\n style={{ width: \"100%\" }}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.ENUM: {\n const { regex } = define;\n if (regex.length < 6) {\n return (\n <Radio.Group>\n {regex.map((item: string) => (\n <Radio value={item} key={item}>\n {item}\n </Radio>\n ))}\n </Radio.Group>\n );\n } else {\n return (\n <Select style={{ width: \"100%\" }}>\n {regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n }\n case StructDefineType.ENUMS: {\n return (\n <Select mode=\"multiple\" style={{ width: \"100%\" }}>\n {define.regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n case StructDefineType.DATE:\n case StructDefineType.DATETIME: {\n return <DatePicker showTime={define.type === \"datetime\"} />;\n }\n case StructDefineType.IP: {\n return <Input />;\n }\n case StructDefineType.JSON: {\n let jsonSchema: any;\n if (hasRegex(define.regex)) {\n jsonSchema = JSON.parse(define.regex);\n }\n return (\n <CodeEditor\n mode={\"json\"}\n maxLines={\"Infinity\"}\n highlightActiveLine={true}\n minLines={3}\n showLineNumbers={true}\n showPrintMargin={false}\n validateJsonSchemaMode={\"error\"}\n onValidate={(err: any) => handleJsonValidate(err, define)}\n {...(jsonSchema ? { jsonSchema } : {})}\n theme=\"tomorrow\"\n />\n );\n }\n case StructDefineType.STRING:\n default: {\n return (\n <Input\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n }\n };\n\n const getFormRules = (define: Structkey) => {\n const rules = [];\n switch (define.type) {\n case StructDefineType.STRING:\n case StructDefineType.IP: {\n hasRegex(define.regex) &&\n rules.push({\n pattern: define.regex,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${\n define.type === \"ip\"\n ? K.NOT_MEET_REGEX\n : K.NOT_MEET_REGEX_DETAIL\n }`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.ARR: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n (value ?? []).every((item: any) => regex.test(item))\n ? cb()\n : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.INTEGER: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n !hasValue(value) || regex.test(value) ? cb() : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n }\n return rules;\n };\n\n const handleStore = async () => {\n // 校验JSON类型\n const hasErrors = !form.getFieldsError().every((v) => !v.errors.length);\n if (hasErrors) return;\n const values = await form.validateFields();\n const newValues = reduce(\n values,\n (pre: any, value, key) => {\n let realValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE: {\n realValue = value?.format(\"YYYY-MM-DD\");\n break;\n }\n case StructDefineType.DATETIME: {\n realValue = value?.format(\"YYYY-MM-DD HH:mm:ss\");\n break;\n }\n default:\n realValue = value;\n }\n pre[key] = realValue;\n return pre;\n },\n {}\n );\n handleStoreFunction(newValues);\n form.resetFields();\n };\n\n const handleCloseModal = () => {\n handleCancelFunction();\n form.resetFields();\n };\n\n return (\n <Modal\n visible={visible}\n onOk={handleStore}\n onCancel={handleCloseModal}\n okButtonProps={{ id: \"okBtn\" }}\n okText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`)}\n cancelText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n cancelButtonProps={{ id: \"cancelBtn\" }}\n destroyOnClose={true}\n >\n <Form form={form} layout={\"vertical\"} initialValues={structValue}>\n {structDefine.map((define) => {\n return (\n <Form.Item\n key={define.id}\n name={define.id}\n label={define.name + \":\"}\n rules={getFormRules(define)}\n >\n {getFormType(define)}\n </Form.Item>\n );\n })}\n </Form>\n </Modal>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"AddStructModal.js","names":["AddStructModal","props","attribute","visible","structData","handleStoreFunction","handleCancelFunction","structDefine","value","struct_define","structDefineMap","keyBy","form","Form","useForm","structValue","reduce","pre","key","calcValue","type","StructDefineType","DATE","DATETIME","moment","JSON","isString","stringify","hasRegex","regex","isNil","hasValue","handleJsonValidate","err","define","errors","some","v","push","i18n","t","NS_LIBS_CMDB_INSTANCES","K","NOT_MEET_JSON","NOT_MEET_REGEX","setFields","name","id","getFormType","INTEGER","width","MATCHING_REGULAR","regexp","FLOAT","BOOLEAN","boolOptions","map","item","text","ARR","ENUM","length","ENUMS","IP","jsonSchema","parse","STRING","getFormRules","rules","pattern","message","NOT_MEET_REGEX_DETAIL","RegExp","validator","rule","cb","every","test","handleStore","hasErrors","getFieldsError","values","validateFields","newValues","realValue","format","resetFields","handleCloseModal","useEffect","setFieldsValue","CONFIRM","CANCEL"],"sources":["../../../src/struct-components/AddStructModal.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport {\n DatePicker,\n Input,\n InputNumber,\n Modal,\n Radio,\n Select,\n Form,\n} from \"antd\";\nimport { Attribute, Structkey, StructDefineType } from \"./interfaces\";\nimport { boolOptions } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport moment from \"moment\";\nimport { keyBy, reduce, isString, isNil } from \"lodash\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\n\nexport interface AddStructModalProps {\n structData?: any;\n attribute: Attribute;\n handleStoreFunction: any;\n handleCancelFunction: () => void;\n visible: boolean;\n}\n\nexport function AddStructModal(props: AddStructModalProps): React.ReactElement {\n const {\n attribute,\n visible,\n structData,\n handleStoreFunction,\n handleCancelFunction,\n } = props;\n const structDefine = attribute.value.struct_define;\n const structDefineMap = keyBy(structDefine, \"id\");\n const [form] = Form.useForm();\n\n const structValue = reduce(\n structData,\n (pre: any, value, key) => {\n let calcValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE:\n case StructDefineType.DATETIME:\n calcValue = value && moment(value);\n break;\n case StructDefineType.JSON:\n calcValue =\n isString(value) || !value\n ? value || \"\"\n : JSON.stringify(value, null, 2);\n break;\n default:\n calcValue = value;\n }\n pre[key] = calcValue;\n return pre;\n },\n {}\n );\n\n const hasRegex = (regex: any): boolean => !isNil(regex) && regex !== \"\";\n const hasValue = (value: any): boolean => !isNil(value) && value !== \"\";\n\n const handleJsonValidate = (err: any, define: Structkey) => {\n const errors: string[] = [];\n err.some((v: any) => v.type === \"error\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_JSON}`));\n err.some((v: any) => v.type === \"warning\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n form.setFields([\n {\n name: define.id,\n errors,\n },\n ]);\n };\n\n const getFormType = (define: Structkey) => {\n switch (define.type) {\n case StructDefineType.INTEGER: {\n return (\n <InputNumber\n style={{ width: \"100%\" }}\n precision={0}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.FLOAT: {\n return <InputNumber style={{ width: \"100%\" }} />;\n }\n case StructDefineType.BOOLEAN: {\n return (\n <Radio.Group>\n {boolOptions.map((item) => (\n <Radio value={item.id} key={item.text}>\n {item.text}\n </Radio>\n ))}\n </Radio.Group>\n );\n }\n case StructDefineType.ARR: {\n return (\n <Select\n mode=\"tags\"\n style={{ width: \"100%\" }}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.ENUM: {\n const { regex } = define;\n if (regex.length < 6) {\n return (\n <Radio.Group>\n {regex.map((item: string) => (\n <Radio value={item} key={item}>\n {item}\n </Radio>\n ))}\n </Radio.Group>\n );\n } else {\n return (\n <Select style={{ width: \"100%\" }}>\n {regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n }\n case StructDefineType.ENUMS: {\n return (\n <Select mode=\"multiple\" style={{ width: \"100%\" }}>\n {define.regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n case StructDefineType.DATE:\n case StructDefineType.DATETIME: {\n return <DatePicker showTime={define.type === \"datetime\"} />;\n }\n case StructDefineType.IP: {\n return <Input />;\n }\n case StructDefineType.JSON: {\n let jsonSchema: any;\n if (hasRegex(define.regex)) {\n jsonSchema = JSON.parse(define.regex);\n }\n return (\n <CodeEditor\n mode={\"json\"}\n maxLines={\"Infinity\"}\n highlightActiveLine={true}\n minLines={3}\n showLineNumbers={true}\n showPrintMargin={false}\n validateJsonSchemaMode={\"error\"}\n onValidate={(err: any) => handleJsonValidate(err, define)}\n {...(jsonSchema ? { jsonSchema } : {})}\n theme=\"tomorrow\"\n />\n );\n }\n case StructDefineType.STRING:\n default: {\n return (\n <Input\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n }\n };\n\n const getFormRules = (define: Structkey) => {\n const rules = [];\n switch (define.type) {\n case StructDefineType.STRING:\n case StructDefineType.IP: {\n hasRegex(define.regex) &&\n rules.push({\n pattern: define.regex,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${\n define.type === \"ip\"\n ? K.NOT_MEET_REGEX\n : K.NOT_MEET_REGEX_DETAIL\n }`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.ARR: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n (value ?? []).every((item: any) => regex.test(item))\n ? cb()\n : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.INTEGER: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n !hasValue(value) || regex.test(value) ? cb() : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n }\n return rules;\n };\n\n const handleStore = async () => {\n // 校验JSON类型\n const hasErrors = !form.getFieldsError().every((v) => !v.errors.length);\n if (hasErrors) return;\n const values = await form.validateFields();\n const newValues = reduce(\n values,\n (pre: any, value, key) => {\n let realValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE: {\n realValue = value?.format(\"YYYY-MM-DD\");\n break;\n }\n case StructDefineType.DATETIME: {\n realValue = value?.format(\"YYYY-MM-DD HH:mm:ss\");\n break;\n }\n default:\n realValue = value;\n }\n pre[key] = realValue;\n return pre;\n },\n {}\n );\n handleStoreFunction(newValues);\n form.resetFields();\n };\n\n const handleCloseModal = () => {\n handleCancelFunction();\n form.resetFields();\n };\n\n useEffect(() => {\n if (visible) {\n form.setFieldsValue(structValue);\n }\n }, [visible]);\n\n return (\n <Modal\n visible={visible}\n onOk={handleStore}\n onCancel={handleCloseModal}\n okButtonProps={{ id: \"okBtn\" }}\n okText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`)}\n cancelText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n cancelButtonProps={{ id: \"cancelBtn\" }}\n destroyOnClose={true}\n >\n <Form form={form} layout={\"vertical\"} initialValues={structValue}>\n {structDefine.map((define) => {\n return (\n <Form.Item\n key={define.id}\n name={define.id}\n label={define.name + \":\"}\n rules={getFormRules(define)}\n >\n {getFormType(define)}\n </Form.Item>\n );\n })}\n </Form>\n </Modal>\n );\n}\n"],"mappings":";;;;;;;;;AAAA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AAUO,SAASA,cAAc,CAACC,KAA0B,EAAsB;EAC7E,MAAM;IACJC,SAAS;IACTC,OAAO;IACPC,UAAU;IACVC,mBAAmB;IACnBC;EACF,CAAC,GAAGL,KAAK;EACT,MAAMM,YAAY,GAAGL,SAAS,CAACM,KAAK,CAACC,aAAa;EAClD,MAAMC,eAAe,GAAG,IAAAC,aAAK,EAACJ,YAAY,EAAE,IAAI,CAAC;EACjD,MAAM,CAACK,IAAI,CAAC,GAAGC,UAAI,CAACC,OAAO,EAAE;EAE7B,MAAMC,WAAW,GAAG,IAAAC,cAAM,EACxBZ,UAAU,EACV,CAACa,GAAQ,EAAET,KAAK,EAAEU,GAAG,KAAK;IAAA;IACxB,IAAIC,SAAS;IACb,gCAAQT,eAAe,CAACQ,GAAG,CAAC,yDAApB,qBAAsBE,IAAI;MAChC,KAAKC,4BAAgB,CAACC,IAAI;MAC1B,KAAKD,4BAAgB,CAACE,QAAQ;QAC5BJ,SAAS,GAAGX,KAAK,IAAI,IAAAgB,eAAM,EAAChB,KAAK,CAAC;QAClC;MACF,KAAKa,4BAAgB,CAACI,IAAI;QACxBN,SAAS,GACP,IAAAO,gBAAQ,EAAClB,KAAK,CAAC,IAAI,CAACA,KAAK,GACrBA,KAAK,IAAI,EAAE,GACXiB,IAAI,CAACE,SAAS,CAACnB,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC;MACF;QACEW,SAAS,GAAGX,KAAK;IAAC;IAEtBS,GAAG,CAACC,GAAG,CAAC,GAAGC,SAAS;IACpB,OAAOF,GAAG;EACZ,CAAC,EACD,CAAC,CAAC,CACH;EAED,MAAMW,QAAQ,GAAIC,KAAU,IAAc,CAAC,IAAAC,aAAK,EAACD,KAAK,CAAC,IAAIA,KAAK,KAAK,EAAE;EACvE,MAAME,QAAQ,GAAIvB,KAAU,IAAc,CAAC,IAAAsB,aAAK,EAACtB,KAAK,CAAC,IAAIA,KAAK,KAAK,EAAE;EAEvE,MAAMwB,kBAAkB,GAAG,CAACC,GAAQ,EAAEC,MAAiB,KAAK;IAC1D,MAAMC,MAAgB,GAAG,EAAE;IAC3BF,GAAG,CAACG,IAAI,CAAEC,CAAM,IAAKA,CAAC,CAACjB,IAAI,KAAK,OAAO,CAAC,IACtCe,MAAM,CAACG,IAAI,CAACC,gBAAI,CAACC,CAAC,CAAE,GAAEC,iCAAuB,IAAGC,YAAC,CAACC,aAAc,EAAC,CAAC,CAAC;IACrEV,GAAG,CAACG,IAAI,CAAEC,CAAM,IAAKA,CAAC,CAACjB,IAAI,KAAK,SAAS,CAAC,IACxCe,MAAM,CAACG,IAAI,CAACC,gBAAI,CAACC,CAAC,CAAE,GAAEC,iCAAuB,IAAGC,YAAC,CAACE,cAAe,EAAC,CAAC,CAAC;IACtEhC,IAAI,CAACiC,SAAS,CAAC,CACb;MACEC,IAAI,EAAEZ,MAAM,CAACa,EAAE;MACfZ;IACF,CAAC,CACF,CAAC;EACJ,CAAC;EAED,MAAMa,WAAW,GAAId,MAAiB,IAAK;IACzC,QAAQA,MAAM,CAACd,IAAI;MACjB,KAAKC,4BAAgB,CAAC4B,OAAO;QAAE;UAC7B,oBACE,6BAAC,iBAAW;YACV,KAAK,EAAE;cAAEC,KAAK,EAAE;YAAO,CAAE;YACzB,SAAS,EAAE,CAAE;YACb,WAAW,EACTtB,QAAQ,CAACM,MAAM,CAACL,KAAK,CAAC,GAClBU,gBAAI,CAACC,CAAC,CAAE,GAAEC,iCAAuB,IAAGC,YAAC,CAACS,gBAAiB,EAAC,EAAE;cACxDC,MAAM,EAAElB,MAAM,CAACL;YACjB,CAAC,CAAC,GACF;UACL,EACD;QAEN;MACA,KAAKR,4BAAgB,CAACgC,KAAK;QAAE;UAC3B,oBAAO,6BAAC,iBAAW;YAAC,KAAK,EAAE;cAAEH,KAAK,EAAE;YAAO;UAAE,EAAG;QAClD;MACA,KAAK7B,4BAAgB,CAACiC,OAAO;QAAE;UAC7B,oBACE,6BAAC,WAAK,CAAC,KAAK,QACTC,sCAAW,CAACC,GAAG,CAAEC,IAAI,iBACpB,6BAAC,WAAK;YAAC,KAAK,EAAEA,IAAI,CAACV,EAAG;YAAC,GAAG,EAAEU,IAAI,CAACC;UAAK,GACnCD,IAAI,CAACC,IAAI,CAEb,CAAC,CACU;QAElB;MACA,KAAKrC,4BAAgB,CAACsC,GAAG;QAAE;UACzB,oBACE,6BAAC,YAAM;YACL,IAAI,EAAC,MAAM;YACX,KAAK,EAAE;cAAET,KAAK,EAAE;YAAO,CAAE;YACzB,WAAW,EACTtB,QAAQ,CAACM,MAAM,CAACL,KAAK,CAAC,GAClBU,gBAAI,CAACC,CAAC,CAAE,GAAEC,iCAAuB,IAAGC,YAAC,CAACS,gBAAiB,EAAC,EAAE;cACxDC,MAAM,EAAElB,MAAM,CAACL;YACjB,CAAC,CAAC,GACF;UACL,EACD;QAEN;MACA,KAAKR,4BAAgB,CAACuC,IAAI;QAAE;UAC1B,MAAM;YAAE/B;UAAM,CAAC,GAAGK,MAAM;UACxB,IAAIL,KAAK,CAACgC,MAAM,GAAG,CAAC,EAAE;YACpB,oBACE,6BAAC,WAAK,CAAC,KAAK,QACThC,KAAK,CAAC2B,GAAG,CAAEC,IAAY,iBACtB,6BAAC,WAAK;cAAC,KAAK,EAAEA,IAAK;cAAC,GAAG,EAAEA;YAAK,GAC3BA,IAAI,CAER,CAAC,CACU;UAElB,CAAC,MAAM;YACL,oBACE,6BAAC,YAAM;cAAC,KAAK,EAAE;gBAAEP,KAAK,EAAE;cAAO;YAAE,GAC9BrB,KAAK,CAAC2B,GAAG,CAAEC,IAAY,iBACtB,6BAAC,YAAM,CAAC,MAAM;cAAC,KAAK,EAAEA,IAAK;cAAC,GAAG,EAAEA;YAAK,GACnCA,IAAI,CAER,CAAC,CACK;UAEb;QACF;MACA,KAAKpC,4BAAgB,CAACyC,KAAK;QAAE;UAC3B,oBACE,6BAAC,YAAM;YAAC,IAAI,EAAC,UAAU;YAAC,KAAK,EAAE;cAAEZ,KAAK,EAAE;YAAO;UAAE,GAC9ChB,MAAM,CAACL,KAAK,CAAC2B,GAAG,CAAEC,IAAY,iBAC7B,6BAAC,YAAM,CAAC,MAAM;YAAC,KAAK,EAAEA,IAAK;YAAC,GAAG,EAAEA;UAAK,GACnCA,IAAI,CAER,CAAC,CACK;QAEb;MACA,KAAKpC,4BAAgB,CAACC,IAAI;MAC1B,KAAKD,4BAAgB,CAACE,QAAQ;QAAE;UAC9B,oBAAO,6BAAC,gBAAU;YAAC,QAAQ,EAAEW,MAAM,CAACd,IAAI,KAAK;UAAW,EAAG;QAC7D;MACA,KAAKC,4BAAgB,CAAC0C,EAAE;QAAE;UACxB,oBAAO,6BAAC,WAAK,OAAG;QAClB;MACA,KAAK1C,4BAAgB,CAACI,IAAI;QAAE;UAC1B,IAAIuC,UAAe;UACnB,IAAIpC,QAAQ,CAACM,MAAM,CAACL,KAAK,CAAC,EAAE;YAC1BmC,UAAU,GAAGvC,IAAI,CAACwC,KAAK,CAAC/B,MAAM,CAACL,KAAK,CAAC;UACvC;UACA,oBACE,6BAAC,gCAAU;YACT,IAAI,EAAE,MAAO;YACb,QAAQ,EAAE,UAAW;YACrB,mBAAmB,EAAE,IAAK;YAC1B,QAAQ,EAAE,CAAE;YACZ,eAAe,EAAE,IAAK;YACtB,eAAe,EAAE,KAAM;YACvB,sBAAsB,EAAE,OAAQ;YAChC,UAAU,EAAGI,GAAQ,IAAKD,kBAAkB,CAACC,GAAG,EAAEC,MAAM;UAAE,GACrD8B,UAAU,GAAG;YAAEA;UAAW,CAAC,GAAG,CAAC,CAAC;YACrC,KAAK,EAAC;UAAU,GAChB;QAEN;MACA,KAAK3C,4BAAgB,CAAC6C,MAAM;MAC5B;QAAS;UACP,oBACE,6BAAC,WAAK;YACJ,WAAW,EACTtC,QAAQ,CAACM,MAAM,CAACL,KAAK,CAAC,GAClBU,gBAAI,CAACC,CAAC,CAAE,GAAEC,iCAAuB,IAAGC,YAAC,CAACS,gBAAiB,EAAC,EAAE;cACxDC,MAAM,EAAElB,MAAM,CAACL;YACjB,CAAC,CAAC,GACF;UACL,EACD;QAEN;IAAC;EAEL,CAAC;EAED,MAAMsC,YAAY,GAAIjC,MAAiB,IAAK;IAC1C,MAAMkC,KAAK,GAAG,EAAE;IAChB,QAAQlC,MAAM,CAACd,IAAI;MACjB,KAAKC,4BAAgB,CAAC6C,MAAM;MAC5B,KAAK7C,4BAAgB,CAAC0C,EAAE;QAAE;UACxBnC,QAAQ,CAACM,MAAM,CAACL,KAAK,CAAC,IACpBuC,KAAK,CAAC9B,IAAI,CAAC;YACT+B,OAAO,EAAEnC,MAAM,CAACL,KAAK;YACrByC,OAAO,EAAE/B,gBAAI,CAACC,CAAC,CACZ,GAAEC,iCAAuB,IACxBP,MAAM,CAACd,IAAI,KAAK,IAAI,GAChBsB,YAAC,CAACE,cAAc,GAChBF,YAAC,CAAC6B,qBACP,EAAC,EACF;cACE1C,KAAK,EAAEK,MAAM,CAACL;YAChB,CAAC;UAEL,CAAC,CAAC;UACJ;QACF;MACA,KAAKR,4BAAgB,CAACsC,GAAG;QAAE;UACzB,MAAM9B,KAAK,GAAG,IAAI2C,MAAM,CAACtC,MAAM,CAACL,KAAK,CAAC;UACtCD,QAAQ,CAACM,MAAM,CAACL,KAAK,CAAC,IACpBuC,KAAK,CAAC9B,IAAI,CAAC;YACTmC,SAAS,EAAE,CAACC,IAAS,EAAElE,KAAU,EAAEmE,EAAO,KAAK;cAC7C,CAACnE,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,EAAE,EAAEoE,KAAK,CAAEnB,IAAS,IAAK5B,KAAK,CAACgD,IAAI,CAACpB,IAAI,CAAC,CAAC,GAChDkB,EAAE,EAAE,GACJA,EAAE,CAACD,IAAI,CAACJ,OAAO,CAAC;YACtB,CAAC;YACDA,OAAO,EAAE/B,gBAAI,CAACC,CAAC,CACZ,GAAEC,iCAAuB,IAAGC,YAAC,CAAC6B,qBAAsB,EAAC,EACtD;cACE1C,KAAK,EAAEK,MAAM,CAACL;YAChB,CAAC;UAEL,CAAC,CAAC;UACJ;QACF;MACA,KAAKR,4BAAgB,CAAC4B,OAAO;QAAE;UAC7B,MAAMpB,KAAK,GAAG,IAAI2C,MAAM,CAACtC,MAAM,CAACL,KAAK,CAAC;UACtCD,QAAQ,CAACM,MAAM,CAACL,KAAK,CAAC,IACpBuC,KAAK,CAAC9B,IAAI,CAAC;YACTmC,SAAS,EAAE,CAACC,IAAS,EAAElE,KAAU,EAAEmE,EAAO,KAAK;cAC7C,CAAC5C,QAAQ,CAACvB,KAAK,CAAC,IAAIqB,KAAK,CAACgD,IAAI,CAACrE,KAAK,CAAC,GAAGmE,EAAE,EAAE,GAAGA,EAAE,CAACD,IAAI,CAACJ,OAAO,CAAC;YACjE,CAAC;YACDA,OAAO,EAAE/B,gBAAI,CAACC,CAAC,CACZ,GAAEC,iCAAuB,IAAGC,YAAC,CAAC6B,qBAAsB,EAAC,EACtD;cACE1C,KAAK,EAAEK,MAAM,CAACL;YAChB,CAAC;UAEL,CAAC,CAAC;UACJ;QACF;IAAC;IAEH,OAAOuC,KAAK;EACd,CAAC;EAED,MAAMU,WAAW,GAAG,YAAY;IAC9B;IACA,MAAMC,SAAS,GAAG,CAACnE,IAAI,CAACoE,cAAc,EAAE,CAACJ,KAAK,CAAEvC,CAAC,IAAK,CAACA,CAAC,CAACF,MAAM,CAAC0B,MAAM,CAAC;IACvE,IAAIkB,SAAS,EAAE;IACf,MAAME,MAAM,GAAG,MAAMrE,IAAI,CAACsE,cAAc,EAAE;IAC1C,MAAMC,SAAS,GAAG,IAAAnE,cAAM,EACtBiE,MAAM,EACN,CAAChE,GAAQ,EAAET,KAAK,EAAEU,GAAG,KAAK;MAAA;MACxB,IAAIkE,SAAS;MACb,iCAAQ1E,eAAe,CAACQ,GAAG,CAAC,0DAApB,sBAAsBE,IAAI;QAChC,KAAKC,4BAAgB,CAACC,IAAI;UAAE;YAC1B8D,SAAS,GAAG5E,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAE6E,MAAM,CAAC,YAAY,CAAC;YACvC;UACF;QACA,KAAKhE,4BAAgB,CAACE,QAAQ;UAAE;YAC9B6D,SAAS,GAAG5E,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAE6E,MAAM,CAAC,qBAAqB,CAAC;YAChD;UACF;QACA;UACED,SAAS,GAAG5E,KAAK;MAAC;MAEtBS,GAAG,CAACC,GAAG,CAAC,GAAGkE,SAAS;MACpB,OAAOnE,GAAG;IACZ,CAAC,EACD,CAAC,CAAC,CACH;IACDZ,mBAAmB,CAAC8E,SAAS,CAAC;IAC9BvE,IAAI,CAAC0E,WAAW,EAAE;EACpB,CAAC;EAED,MAAMC,gBAAgB,GAAG,MAAM;IAC7BjF,oBAAoB,EAAE;IACtBM,IAAI,CAAC0E,WAAW,EAAE;EACpB,CAAC;EAED,IAAAE,gBAAS,EAAC,MAAM;IACd,IAAIrF,OAAO,EAAE;MACXS,IAAI,CAAC6E,cAAc,CAAC1E,WAAW,CAAC;IAClC;EACF,CAAC,EAAE,CAACZ,OAAO,CAAC,CAAC;EAEb,oBACE,6BAAC,WAAK;IACJ,OAAO,EAAEA,OAAQ;IACjB,IAAI,EAAE2E,WAAY;IAClB,QAAQ,EAAES,gBAAiB;IAC3B,aAAa,EAAE;MAAExC,EAAE,EAAE;IAAQ,CAAE;IAC/B,MAAM,EAAER,gBAAI,CAACC,CAAC,CAAE,GAAEC,iCAAuB,IAAGC,YAAC,CAACgD,OAAQ,EAAC,CAAE;IACzD,UAAU,EAAEnD,gBAAI,CAACC,CAAC,CAAE,GAAEC,iCAAuB,IAAGC,YAAC,CAACiD,MAAO,EAAC,CAAE;IAC5D,iBAAiB,EAAE;MAAE5C,EAAE,EAAE;IAAY,CAAE;IACvC,cAAc,EAAE;EAAK,gBAErB,6BAAC,UAAI;IAAC,IAAI,EAAEnC,IAAK;IAAC,MAAM,EAAE,UAAW;IAAC,aAAa,EAAEG;EAAY,GAC9DR,YAAY,CAACiD,GAAG,CAAEtB,MAAM,IAAK;IAC5B,oBACE,6BAAC,UAAI,CAAC,IAAI;MACR,GAAG,EAAEA,MAAM,CAACa,EAAG;MACf,IAAI,EAAEb,MAAM,CAACa,EAAG;MAChB,KAAK,EAAEb,MAAM,CAACY,IAAI,GAAG,GAAI;MACzB,KAAK,EAAEqB,YAAY,CAACjC,MAAM;IAAE,GAE3Bc,WAAW,CAACd,MAAM,CAAC,CACV;EAEhB,CAAC,CAAC,CACG,CACD;AAEZ"}
@@ -1,6 +1,6 @@
1
1
  import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
- import React from "react";
3
+ import React, { useEffect } from "react";
4
4
  import { DatePicker, Input, InputNumber, Modal, Radio, Select, Form } from "antd";
5
5
  import { StructDefineType } from "./interfaces";
6
6
  import { boolOptions } from "../model-attribute-form-control/ModelAttributeFormControl";
@@ -245,6 +245,11 @@ export function AddStructModal(props) {
245
245
  handleCancelFunction();
246
246
  form.resetFields();
247
247
  };
248
+ useEffect(() => {
249
+ if (visible) {
250
+ form.setFieldsValue(structValue);
251
+ }
252
+ }, [visible]);
248
253
  return /*#__PURE__*/React.createElement(Modal, {
249
254
  visible: visible,
250
255
  onOk: handleStore,
@@ -1 +1 @@
1
- {"version":3,"file":"AddStructModal.js","names":["React","DatePicker","Input","InputNumber","Modal","Radio","Select","Form","StructDefineType","boolOptions","i18n","K","NS_LIBS_CMDB_INSTANCES","moment","keyBy","reduce","isString","isNil","CodeEditor","AddStructModal","props","attribute","visible","structData","handleStoreFunction","handleCancelFunction","structDefine","value","struct_define","structDefineMap","form","useForm","structValue","pre","key","calcValue","type","DATE","DATETIME","JSON","stringify","hasRegex","regex","hasValue","handleJsonValidate","err","define","errors","some","v","push","t","NOT_MEET_JSON","NOT_MEET_REGEX","setFields","name","id","getFormType","INTEGER","width","MATCHING_REGULAR","regexp","FLOAT","BOOLEAN","map","item","text","ARR","ENUM","length","ENUMS","IP","jsonSchema","parse","STRING","getFormRules","rules","pattern","message","NOT_MEET_REGEX_DETAIL","RegExp","validator","rule","cb","every","test","handleStore","hasErrors","getFieldsError","values","validateFields","newValues","realValue","format","resetFields","handleCloseModal","CONFIRM","CANCEL"],"sources":["../../../src/struct-components/AddStructModal.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n DatePicker,\n Input,\n InputNumber,\n Modal,\n Radio,\n Select,\n Form,\n} from \"antd\";\nimport { Attribute, Structkey, StructDefineType } from \"./interfaces\";\nimport { boolOptions } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport moment from \"moment\";\nimport { keyBy, reduce, isString, isNil } from \"lodash\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\n\nexport interface AddStructModalProps {\n structData?: any;\n attribute: Attribute;\n handleStoreFunction: any;\n handleCancelFunction: () => void;\n visible: boolean;\n}\n\nexport function AddStructModal(props: AddStructModalProps): React.ReactElement {\n const {\n attribute,\n visible,\n structData,\n handleStoreFunction,\n handleCancelFunction,\n } = props;\n const structDefine = attribute.value.struct_define;\n const structDefineMap = keyBy(structDefine, \"id\");\n const [form] = Form.useForm();\n\n const structValue = reduce(\n structData,\n (pre: any, value, key) => {\n let calcValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE:\n case StructDefineType.DATETIME:\n calcValue = value && moment(value);\n break;\n case StructDefineType.JSON:\n calcValue =\n isString(value) || !value\n ? value || \"\"\n : JSON.stringify(value, null, 2);\n break;\n default:\n calcValue = value;\n }\n pre[key] = calcValue;\n return pre;\n },\n {}\n );\n\n const hasRegex = (regex: any): boolean => !isNil(regex) && regex !== \"\";\n const hasValue = (value: any): boolean => !isNil(value) && value !== \"\";\n\n const handleJsonValidate = (err: any, define: Structkey) => {\n const errors: string[] = [];\n err.some((v: any) => v.type === \"error\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_JSON}`));\n err.some((v: any) => v.type === \"warning\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n form.setFields([\n {\n name: define.id,\n errors,\n },\n ]);\n };\n\n const getFormType = (define: Structkey) => {\n switch (define.type) {\n case StructDefineType.INTEGER: {\n return (\n <InputNumber\n style={{ width: \"100%\" }}\n precision={0}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.FLOAT: {\n return <InputNumber style={{ width: \"100%\" }} />;\n }\n case StructDefineType.BOOLEAN: {\n return (\n <Radio.Group>\n {boolOptions.map((item) => (\n <Radio value={item.id} key={item.text}>\n {item.text}\n </Radio>\n ))}\n </Radio.Group>\n );\n }\n case StructDefineType.ARR: {\n return (\n <Select\n mode=\"tags\"\n style={{ width: \"100%\" }}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.ENUM: {\n const { regex } = define;\n if (regex.length < 6) {\n return (\n <Radio.Group>\n {regex.map((item: string) => (\n <Radio value={item} key={item}>\n {item}\n </Radio>\n ))}\n </Radio.Group>\n );\n } else {\n return (\n <Select style={{ width: \"100%\" }}>\n {regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n }\n case StructDefineType.ENUMS: {\n return (\n <Select mode=\"multiple\" style={{ width: \"100%\" }}>\n {define.regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n case StructDefineType.DATE:\n case StructDefineType.DATETIME: {\n return <DatePicker showTime={define.type === \"datetime\"} />;\n }\n case StructDefineType.IP: {\n return <Input />;\n }\n case StructDefineType.JSON: {\n let jsonSchema: any;\n if (hasRegex(define.regex)) {\n jsonSchema = JSON.parse(define.regex);\n }\n return (\n <CodeEditor\n mode={\"json\"}\n maxLines={\"Infinity\"}\n highlightActiveLine={true}\n minLines={3}\n showLineNumbers={true}\n showPrintMargin={false}\n validateJsonSchemaMode={\"error\"}\n onValidate={(err: any) => handleJsonValidate(err, define)}\n {...(jsonSchema ? { jsonSchema } : {})}\n theme=\"tomorrow\"\n />\n );\n }\n case StructDefineType.STRING:\n default: {\n return (\n <Input\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n }\n };\n\n const getFormRules = (define: Structkey) => {\n const rules = [];\n switch (define.type) {\n case StructDefineType.STRING:\n case StructDefineType.IP: {\n hasRegex(define.regex) &&\n rules.push({\n pattern: define.regex,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${\n define.type === \"ip\"\n ? K.NOT_MEET_REGEX\n : K.NOT_MEET_REGEX_DETAIL\n }`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.ARR: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n (value ?? []).every((item: any) => regex.test(item))\n ? cb()\n : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.INTEGER: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n !hasValue(value) || regex.test(value) ? cb() : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n }\n return rules;\n };\n\n const handleStore = async () => {\n // 校验JSON类型\n const hasErrors = !form.getFieldsError().every((v) => !v.errors.length);\n if (hasErrors) return;\n const values = await form.validateFields();\n const newValues = reduce(\n values,\n (pre: any, value, key) => {\n let realValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE: {\n realValue = value?.format(\"YYYY-MM-DD\");\n break;\n }\n case StructDefineType.DATETIME: {\n realValue = value?.format(\"YYYY-MM-DD HH:mm:ss\");\n break;\n }\n default:\n realValue = value;\n }\n pre[key] = realValue;\n return pre;\n },\n {}\n );\n handleStoreFunction(newValues);\n form.resetFields();\n };\n\n const handleCloseModal = () => {\n handleCancelFunction();\n form.resetFields();\n };\n\n return (\n <Modal\n visible={visible}\n onOk={handleStore}\n onCancel={handleCloseModal}\n okButtonProps={{ id: \"okBtn\" }}\n okText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`)}\n cancelText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n cancelButtonProps={{ id: \"cancelBtn\" }}\n destroyOnClose={true}\n >\n <Form form={form} layout={\"vertical\"} initialValues={structValue}>\n {structDefine.map((define) => {\n return (\n <Form.Item\n key={define.id}\n name={define.id}\n label={define.name + \":\"}\n rules={getFormRules(define)}\n >\n {getFormType(define)}\n </Form.Item>\n );\n })}\n </Form>\n </Modal>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"AddStructModal.js","names":["React","useEffect","DatePicker","Input","InputNumber","Modal","Radio","Select","Form","StructDefineType","boolOptions","i18n","K","NS_LIBS_CMDB_INSTANCES","moment","keyBy","reduce","isString","isNil","CodeEditor","AddStructModal","props","attribute","visible","structData","handleStoreFunction","handleCancelFunction","structDefine","value","struct_define","structDefineMap","form","useForm","structValue","pre","key","calcValue","type","DATE","DATETIME","JSON","stringify","hasRegex","regex","hasValue","handleJsonValidate","err","define","errors","some","v","push","t","NOT_MEET_JSON","NOT_MEET_REGEX","setFields","name","id","getFormType","INTEGER","width","MATCHING_REGULAR","regexp","FLOAT","BOOLEAN","map","item","text","ARR","ENUM","length","ENUMS","IP","jsonSchema","parse","STRING","getFormRules","rules","pattern","message","NOT_MEET_REGEX_DETAIL","RegExp","validator","rule","cb","every","test","handleStore","hasErrors","getFieldsError","values","validateFields","newValues","realValue","format","resetFields","handleCloseModal","setFieldsValue","CONFIRM","CANCEL"],"sources":["../../../src/struct-components/AddStructModal.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport {\n DatePicker,\n Input,\n InputNumber,\n Modal,\n Radio,\n Select,\n Form,\n} from \"antd\";\nimport { Attribute, Structkey, StructDefineType } from \"./interfaces\";\nimport { boolOptions } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport moment from \"moment\";\nimport { keyBy, reduce, isString, isNil } from \"lodash\";\nimport { CodeEditor } from \"@next-libs/code-editor-components\";\n\nexport interface AddStructModalProps {\n structData?: any;\n attribute: Attribute;\n handleStoreFunction: any;\n handleCancelFunction: () => void;\n visible: boolean;\n}\n\nexport function AddStructModal(props: AddStructModalProps): React.ReactElement {\n const {\n attribute,\n visible,\n structData,\n handleStoreFunction,\n handleCancelFunction,\n } = props;\n const structDefine = attribute.value.struct_define;\n const structDefineMap = keyBy(structDefine, \"id\");\n const [form] = Form.useForm();\n\n const structValue = reduce(\n structData,\n (pre: any, value, key) => {\n let calcValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE:\n case StructDefineType.DATETIME:\n calcValue = value && moment(value);\n break;\n case StructDefineType.JSON:\n calcValue =\n isString(value) || !value\n ? value || \"\"\n : JSON.stringify(value, null, 2);\n break;\n default:\n calcValue = value;\n }\n pre[key] = calcValue;\n return pre;\n },\n {}\n );\n\n const hasRegex = (regex: any): boolean => !isNil(regex) && regex !== \"\";\n const hasValue = (value: any): boolean => !isNil(value) && value !== \"\";\n\n const handleJsonValidate = (err: any, define: Structkey) => {\n const errors: string[] = [];\n err.some((v: any) => v.type === \"error\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_JSON}`));\n err.some((v: any) => v.type === \"warning\") &&\n errors.push(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX}`));\n form.setFields([\n {\n name: define.id,\n errors,\n },\n ]);\n };\n\n const getFormType = (define: Structkey) => {\n switch (define.type) {\n case StructDefineType.INTEGER: {\n return (\n <InputNumber\n style={{ width: \"100%\" }}\n precision={0}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.FLOAT: {\n return <InputNumber style={{ width: \"100%\" }} />;\n }\n case StructDefineType.BOOLEAN: {\n return (\n <Radio.Group>\n {boolOptions.map((item) => (\n <Radio value={item.id} key={item.text}>\n {item.text}\n </Radio>\n ))}\n </Radio.Group>\n );\n }\n case StructDefineType.ARR: {\n return (\n <Select\n mode=\"tags\"\n style={{ width: \"100%\" }}\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n case StructDefineType.ENUM: {\n const { regex } = define;\n if (regex.length < 6) {\n return (\n <Radio.Group>\n {regex.map((item: string) => (\n <Radio value={item} key={item}>\n {item}\n </Radio>\n ))}\n </Radio.Group>\n );\n } else {\n return (\n <Select style={{ width: \"100%\" }}>\n {regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n }\n case StructDefineType.ENUMS: {\n return (\n <Select mode=\"multiple\" style={{ width: \"100%\" }}>\n {define.regex.map((item: string) => (\n <Select.Option value={item} key={item}>\n {item}\n </Select.Option>\n ))}\n </Select>\n );\n }\n case StructDefineType.DATE:\n case StructDefineType.DATETIME: {\n return <DatePicker showTime={define.type === \"datetime\"} />;\n }\n case StructDefineType.IP: {\n return <Input />;\n }\n case StructDefineType.JSON: {\n let jsonSchema: any;\n if (hasRegex(define.regex)) {\n jsonSchema = JSON.parse(define.regex);\n }\n return (\n <CodeEditor\n mode={\"json\"}\n maxLines={\"Infinity\"}\n highlightActiveLine={true}\n minLines={3}\n showLineNumbers={true}\n showPrintMargin={false}\n validateJsonSchemaMode={\"error\"}\n onValidate={(err: any) => handleJsonValidate(err, define)}\n {...(jsonSchema ? { jsonSchema } : {})}\n theme=\"tomorrow\"\n />\n );\n }\n case StructDefineType.STRING:\n default: {\n return (\n <Input\n placeholder={\n hasRegex(define.regex)\n ? i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.MATCHING_REGULAR}`, {\n regexp: define.regex,\n })\n : \"\"\n }\n />\n );\n }\n }\n };\n\n const getFormRules = (define: Structkey) => {\n const rules = [];\n switch (define.type) {\n case StructDefineType.STRING:\n case StructDefineType.IP: {\n hasRegex(define.regex) &&\n rules.push({\n pattern: define.regex,\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${\n define.type === \"ip\"\n ? K.NOT_MEET_REGEX\n : K.NOT_MEET_REGEX_DETAIL\n }`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.ARR: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n (value ?? []).every((item: any) => regex.test(item))\n ? cb()\n : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n case StructDefineType.INTEGER: {\n const regex = new RegExp(define.regex);\n hasRegex(define.regex) &&\n rules.push({\n validator: (rule: any, value: any, cb: any) => {\n !hasValue(value) || regex.test(value) ? cb() : cb(rule.message);\n },\n message: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.NOT_MEET_REGEX_DETAIL}`,\n {\n regex: define.regex,\n }\n ),\n });\n break;\n }\n }\n return rules;\n };\n\n const handleStore = async () => {\n // 校验JSON类型\n const hasErrors = !form.getFieldsError().every((v) => !v.errors.length);\n if (hasErrors) return;\n const values = await form.validateFields();\n const newValues = reduce(\n values,\n (pre: any, value, key) => {\n let realValue;\n switch (structDefineMap[key]?.type) {\n case StructDefineType.DATE: {\n realValue = value?.format(\"YYYY-MM-DD\");\n break;\n }\n case StructDefineType.DATETIME: {\n realValue = value?.format(\"YYYY-MM-DD HH:mm:ss\");\n break;\n }\n default:\n realValue = value;\n }\n pre[key] = realValue;\n return pre;\n },\n {}\n );\n handleStoreFunction(newValues);\n form.resetFields();\n };\n\n const handleCloseModal = () => {\n handleCancelFunction();\n form.resetFields();\n };\n\n useEffect(() => {\n if (visible) {\n form.setFieldsValue(structValue);\n }\n }, [visible]);\n\n return (\n <Modal\n visible={visible}\n onOk={handleStore}\n onCancel={handleCloseModal}\n okButtonProps={{ id: \"okBtn\" }}\n okText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`)}\n cancelText={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n cancelButtonProps={{ id: \"cancelBtn\" }}\n destroyOnClose={true}\n >\n <Form form={form} layout={\"vertical\"} initialValues={structValue}>\n {structDefine.map((define) => {\n return (\n <Form.Item\n key={define.id}\n name={define.id}\n label={define.name + \":\"}\n rules={getFormRules(define)}\n >\n {getFormType(define)}\n </Form.Item>\n );\n })}\n </Form>\n </Modal>\n );\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-libs/cmdb-instances",
3
- "version": "7.17.2",
3
+ "version": "7.17.3",
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",
@@ -51,5 +51,5 @@
51
51
  "immutability-helper": "^3.1.1",
52
52
  "marked": "^2.1.3"
53
53
  },
54
- "gitHead": "f15dc2551876367b1586cb96c6096bc12dc03fe2"
54
+ "gitHead": "b02feb58e4e3d485c6369208b8ea0ccecbd1d5cd"
55
55
  }