nsc-react-component 4.3.6 → 4.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/base/form/Form.js +2 -2
- package/lib/base/form/Form.js.map +1 -1
- package/lib/base/importData/index.js +8 -6
- package/lib/base/importData/index.js.map +1 -1
- package/lib/base/table/index.js +4 -2
- package/lib/base/table/index.js.map +1 -1
- package/lib/page/BasePage/index.js +19 -4
- package/lib/page/BasePage/index.js.map +1 -1
- package/lib/page/FormPage/index.js +9 -2
- package/lib/page/FormPage/index.js.map +1 -1
- package/lib/page/SettingForm/index.d.ts +0 -5
- package/lib/page/SettingForm/index.js +1 -1
- package/lib/page/SettingForm/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PureComponent","Form","getNode","message","Col","Row","isEmptyObj","getLocalStore","dayjs","lodash","Button","Upload","cls","NscRequest","convertStringToObj","FormPage","constructor","arguments","_defineProperty","createRef","loading","label","props","editType","editorFlag","value","dictNames","fileList","width","editId","ev","data","JSON","parse","_this","eventType","payload","close","setState","componentDidMount","window","addEventListener","listenMessage","formType","requestObject","detailUrl","get","params","id","state","xssFilter","autoPrefix","then","res","code","_this$formRef$current","formRef","current","setFieldsValue","_objectSpread","defaultValue","_this$formRef$current2","convertDefaultValue","componentWillUnmount","removeEventListener","Utils","funcs","pageRef","refs","refList","show","orgValue","editorflag","length","undefined","callBack","_this$formRef$current3","convertValue","showForm","afterRender","_this$formRef$current4","hide","_this$formRef$current5","onHideForm","hideForm","_this$formRef$current6","setLoading","setEditType","type","setEditId","getFormValue","_this$formRef$current7","formValue","getFieldsValue","cloneDeep","fileFormat","newFileList","map","item","getFileList","submitFlag","error","dateValueFormat","key","olddata","Array","isArray","format","rangerDate","dateFormat","e","newData","stringify","values","forEach","fileKey","value1","value2","setFormValue","_this$formRef$current8","newValue","doSubmit","formdata","_this$formRef$current9","submitUrl","submitParams","requestConfig","addUrl","editorUrl","addParams","editorParams","url","func","Function","converParams","console","otherParams","_objectWithoutProperties","_excluded","onSubmit","noUndefined","msg","success","setTimeout","obj","fileId","fileName","status","push","_this$formRef$current10","valid","validateFields","returnData","catch","errorInfo","valueChange","_ref","valueOption","dictName","newNames","onChange","eventOption","valueStr","selfFunc","renderForm","forms","newValid","createElement","gutter","index","_item$props","itemProps","valueFormat","name","split","allowChars","placeholder","concat","bind","dataType","disabled","rules","required","itemRef","_item$props2","span","style","display","Item","componentName","noStyle","formRender","ref","_item$props3","_item$props4","_item$props5","_extends","onListChange","list","showUploadList","showDownloadIcon","showRemoveIcon","children","render","footer","title","modalProps","defaultModalProps","drawerProps","defaultDrawerProps","selfButtons","selfPanes","child","_child$props","pageType","onOk","onCancel","okButtonProps","centered","footerButton","onClose","newFormsObj","formGroups","otherGrups","showForms","groupName","indexOf","groupForms","form","PaneWithoutPageType","Pane","cleanProps","_excluded2","showModel","onValuesChange","changedValues","allValues","onFormChange","changeValid","className","Object","keys","footerClassName","cancelButtonProps","onClick"],"sources":["../../../src/components/page/FormPage/index.tsx"],"sourcesContent":["import React, { PureComponent, ReactNode } from \"react\";\r\nimport Form from \"../../base/form\";\r\nimport { getLess, getNode } from \"../../utils\";\r\nimport message from \"../../base/message\";\r\nimport Col from \"../../base/grid/Col\";\r\nimport Row from \"../../base/grid/Row\";\r\nimport { isEmptyObj, getLocalStore } from \"@bj-nsc/functions\";\r\nimport dayjs from \"dayjs\";\r\nimport \"./index.module.less\";\r\nimport lodash from \"lodash\";\r\nimport Button from \"../../base/button\";\r\nimport Upload from \"../../base/upload\";\r\nimport cls from \"classnames\";\r\nimport { IFormProps } from \"src/components/base/form/Form\";\r\nimport NscRequest from \"nsc-request\";\r\nimport omit from \"omit.js\";\r\nimport CompoundedSpace from \"antd/es/space\";\r\nimport { convertStringToObj } from \"../SettingUtil/utils\";\r\nexport interface FormPageProps {\r\n forms?: Array<any>; //是否显示操作列\r\n submitUrl?: string;\r\n onSubmit?: (value?: any, label?: any) => void;\r\n footerClassName?: any;\r\n okButtonProps?: any;\r\n cancelButtonProps?: any;\r\n footer?: ReactNode | boolean;\r\n children?: React.ReactNode;\r\n onFormChange?: (value?: any, allValue?: any) => void;\r\n submitParams?: any; //添加参数,默认mothod:post, 参数通过data传递\r\n funcs?: any;\r\n props?: IFormProps;\r\n requestObject?: {\r\n addUrl?: string;\r\n editorUrl?: string;\r\n addParams?: any;\r\n editorParams?: any;\r\n detailUrl?: string;\r\n };\r\n requestConfig?: any;\r\n footerWidth?: boolean;\r\n editType?: \"新增\" | \"编辑\" | \"查看\";\r\n title?: string;\r\n editId?: string;\r\n modalProps?: any;\r\n drawerProps?: any;\r\n [propsName: string]: any;\r\n}\r\nclass FormPage extends PureComponent<FormPageProps, any> {\r\n formRef = React.createRef<any>();\r\n state = {\r\n loading: false,\r\n label: this.props.editType || \"\",\r\n editorFlag: true,\r\n value: {} as any,\r\n dictNames: {} as any,\r\n fileList: {} as any,\r\n width: getLocalStore(\"nsc-home-menuCollsape\") || false,\r\n editId: this.props.editId || \"\",\r\n };\r\n valid: any = [];\r\n dateValueFormat = {} as any;\r\n dateFormat = {} as any;\r\n fileFormat = [] as any;\r\n rangerDate = {} as any;\r\n refList = {} as any;\r\n submitFlag = true;\r\n componentDidMount(): void {\r\n window.addEventListener(\"message\", this.listenMessage);\r\n const {\r\n formType = \"page\",\r\n requestObject = {},\r\n editType = \"新增\",\r\n } = this.props;\r\n if (formType == \"page\") {\r\n if (requestObject.detailUrl && editType !== \"新增\") {\r\n NscRequest.get(requestObject.detailUrl, {\r\n params: { id: this.state.editId },\r\n xssFilter: false,\r\n autoPrefix: true,\r\n }).then((res) => {\r\n if (res.code == 200) {\r\n this.formRef.current?.setFieldsValue({ ...res.data });\r\n }\r\n });\r\n } else if (editType == \"新增\") {\r\n if (this.props.defaultValue) {\r\n let defaultValue = this.convertDefaultValue();\r\n this.formRef.current?.setFieldsValue(defaultValue || {});\r\n }\r\n }\r\n }\r\n }\r\n componentWillUnmount() {\r\n window.removeEventListener(\"message\", this.listenMessage);\r\n }\r\n listenMessage = (ev) => {\r\n const data = typeof ev.data === \"string\" ? JSON.parse(ev.data) : ev.data;\r\n let _this = this;\r\n if (data.eventType == \"menuCollsape\") {\r\n const { payload } = data;\r\n if (payload.close === true || payload.close === false) {\r\n _this.setState({ width: payload.close });\r\n }\r\n }\r\n };\r\n convertDefaultValue() {\r\n const { defaultValue } = this.props;\r\n return convertStringToObj(defaultValue, this.props.Utils || {}, {\r\n funcs: this.props.funcs,\r\n pageRef: this.props.pageRef,\r\n formRef: this.formRef,\r\n refs: this.refList,\r\n });\r\n }\r\n //表单显示\r\n show(orgValue?: any, editorflag = \"add\", callBack?: any) {\r\n let label = \"新增\";\r\n if (orgValue && editorflag == \"editor\") {\r\n label = \"编辑\";\r\n } else if (orgValue && (editorflag == \"detail\" || editorflag == \"search\")) {\r\n label = \"查看\";\r\n }\r\n if (orgValue) {\r\n this.setState(\r\n {\r\n label: label,\r\n value: orgValue,\r\n editId: orgValue.id,\r\n },\r\n () => {\r\n let value = this.convertValue(orgValue, label);\r\n //处理文件数据\r\n this.formRef.current?.showForm(value, {\r\n afterRender: () => {\r\n callBack && callBack();\r\n },\r\n });\r\n }\r\n );\r\n } else {\r\n this.setState(\r\n {\r\n label: label,\r\n },\r\n () => {\r\n let defaultValue = this.props.defaultValue\r\n ? this.convertDefaultValue()\r\n : {};\r\n this.formRef.current?.showForm(defaultValue || {}, {\r\n afterRender: () => {\r\n callBack && callBack();\r\n },\r\n });\r\n }\r\n );\r\n }\r\n }\r\n hide(hide = true) {\r\n const { onHideForm } = this.props;\r\n if (onHideForm) {\r\n onHideForm && onHideForm();\r\n return;\r\n }\r\n this.setState({ loading: false, fileList: {} });\r\n hide && this.formRef.current?.hideForm();\r\n }\r\n hideForm() {\r\n this.setState({ loading: false, fileList: {} });\r\n this.formRef.current?.hideForm();\r\n }\r\n showForm(orgValue?: any, editorflag = \"add\", callBack?: any) {\r\n this.show(orgValue, editorflag, callBack);\r\n }\r\n setLoading(loading: boolean) {\r\n this.setState({ loading: loading });\r\n }\r\n setEditType(type) {\r\n this.setState({\r\n label: type,\r\n });\r\n }\r\n setEditId(id) {\r\n this.setState({\r\n editId: id,\r\n });\r\n }\r\n getFormValue() {\r\n const { label, value, dictNames, fileList } = this.state;\r\n const formValue = this.formRef.current?.getFieldsValue();\r\n let data = lodash.cloneDeep({ ...formValue, ...dictNames });\r\n if (this.fileFormat.length > 0) {\r\n let newFileList = {} as any;\r\n this.fileFormat.map((item) => {\r\n if (fileList[item].length == 0) {\r\n newFileList[item] = null;\r\n } else {\r\n newFileList[item] = this.getFileList(fileList[item] || []);\r\n }\r\n });\r\n data = { ...data, ...newFileList };\r\n }\r\n if (!this.submitFlag) {\r\n message.error(\"请等待所有文件上传完成!\");\r\n return;\r\n }\r\n if (!isEmptyObj(this.dateValueFormat)) {\r\n for (let key in this.dateValueFormat) {\r\n let olddata = data[key];\r\n if (olddata) {\r\n if (Array.isArray(olddata)) {\r\n data[key] = [\r\n dayjs(olddata[0]).format(this.dateValueFormat[key]),\r\n dayjs(olddata[1]).format(this.dateValueFormat[key]),\r\n ];\r\n if (this.rangerDate[key]) {\r\n try {\r\n data[this.rangerDate[key][0]] = dayjs(olddata[0]).format(\r\n this.dateFormat[key]\r\n );\r\n data[this.rangerDate[key][1]] = dayjs(olddata[1]).format(\r\n this.dateFormat[key]\r\n );\r\n delete data[key];\r\n } catch (e) {}\r\n }\r\n } else {\r\n data[key] = dayjs(olddata).format(this.dateValueFormat[key]);\r\n }\r\n }\r\n }\r\n }\r\n if (label == \"编辑\") {\r\n data = { ...data, id: value?.id || this.state.editId };\r\n }\r\n let newData = JSON.parse(JSON.stringify(data));\r\n return newData;\r\n }\r\n convertValue(value, type) {\r\n let values = lodash.cloneDeep(value);\r\n if (this.fileFormat.length > 0) {\r\n let fileList = {} as any;\r\n this.fileFormat.forEach((fileKey) => {\r\n let olddata = values[fileKey];\r\n if (olddata && Array.isArray(olddata)) {\r\n fileList[fileKey] = this.getFileList(olddata || [], type);\r\n } else {\r\n fileList[fileKey] = [];\r\n }\r\n });\r\n this.setState({ fileList: fileList });\r\n }\r\n //处理日期格式数据\r\n if (!isEmptyObj(this.dateFormat)) {\r\n for (let key in this.dateFormat) {\r\n let olddata = values[key];\r\n if (olddata) {\r\n if (Array.isArray(olddata)) {\r\n values[key] = [\r\n dayjs(olddata[0], this.dateFormat[key]),\r\n dayjs(olddata[1], this.dateFormat[key]),\r\n ];\r\n } else {\r\n values[key] = dayjs(olddata, this.dateFormat[key]);\r\n }\r\n } else {\r\n if (this.rangerDate[key]) {\r\n let value1 = values[this.rangerDate[key][0]];\r\n let value2 = values[this.rangerDate[key][1]];\r\n if (value1 && value2) {\r\n values[key] = [\r\n dayjs(value1, this.dateFormat[key]),\r\n dayjs(value2, this.dateFormat[key]),\r\n ];\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return values;\r\n }\r\n setFormValue(value, type = \"查看\") {\r\n const newValue = this.convertValue(value, type);\r\n this.formRef.current?.setFieldsValue(newValue);\r\n }\r\n doSubmit(formdata, label) {\r\n const {\r\n submitUrl,\r\n submitParams = {},\r\n callBack,\r\n requestObject = {},\r\n requestConfig = {},\r\n } = this.props;\r\n const { addUrl, editorUrl, addParams, editorParams } = requestObject;\r\n let url = submitUrl;\r\n let params: any = {};\r\n if (!label || label == \"新增\") {\r\n url = addUrl ? addUrl : submitUrl;\r\n if (addParams && typeof addParams == \"string\") {\r\n const Utils = this.props.Utils || {};\r\n let func = new Function(\"Utils\", addParams);\r\n let converParams = func(Utils);\r\n params = converParams;\r\n } else {\r\n params = addParams ? addParams : submitParams;\r\n }\r\n } else if (label == \"编辑\") {\r\n url = editorUrl ? editorUrl : submitUrl;\r\n if (editorParams && typeof editorParams == \"string\") {\r\n const Utils = this.props.Utils || {};\r\n let func = new Function(\"Utils\", editorParams);\r\n let converParams = func(Utils);\r\n params = converParams;\r\n } else {\r\n params = editorParams ? editorParams : submitParams;\r\n }\r\n }\r\n if (!url) {\r\n console.error(\"配置Url不能为空!\");\r\n return;\r\n }\r\n const { data = {}, ...otherParams } = params;\r\n this.formRef.current?.onSubmit(\r\n url,\r\n {\r\n data: { ...formdata, ...data },\r\n noUndefined: label == \"编辑\",\r\n ...requestConfig,\r\n ...otherParams,\r\n },\r\n (res: any) => {\r\n const { code, msg } = res;\r\n this.setState({ loading: false });\r\n if (code === 200) {\r\n message.success(label + \"成功\");\r\n setTimeout(() => {\r\n this.hide(true);\r\n callBack && callBack();\r\n }, 500);\r\n\r\n return;\r\n }\r\n }\r\n );\r\n }\r\n getFileList(data, label = \"新增\") {\r\n this.submitFlag = true;\r\n let fileList = [] as any;\r\n if (data && data.length > 0) {\r\n data.map((item) => {\r\n let obj = {\r\n fileId: item.fileId,\r\n fileName: item.fileName,\r\n } as any;\r\n if (label == \"查看\") {\r\n obj.status = \"done\";\r\n }\r\n if (label !== \"查看\" && item.status !== \"done\") {\r\n this.submitFlag = false;\r\n }\r\n fileList.push(obj);\r\n });\r\n }\r\n return fileList;\r\n }\r\n\r\n onSubmit() {\r\n const { onSubmit } = this.props;\r\n const { label, value, dictNames, fileList } = this.state;\r\n let valid = this.valid;\r\n this.formRef.current\r\n ?.validateFields()\r\n .then(() => {\r\n let data = this.getFormValue();\r\n this.setState({ loading: true });\r\n if (onSubmit) {\r\n let returnData = lodash.cloneDeep(data);\r\n onSubmit && onSubmit(returnData, label);\r\n return;\r\n }\r\n this.doSubmit(data, label);\r\n })\r\n .catch((errorInfo: any) => {});\r\n }\r\n valueChange({ type, dictName }, props, value, valueOption, data) {\r\n if (valueOption) {\r\n if (dictName) {\r\n const { dictNames } = this.state;\r\n const newNames = { ...dictNames } as any;\r\n newNames[dictName] = valueOption.label;\r\n this.setState({\r\n dictNames: newNames,\r\n });\r\n }\r\n }\r\n if (props.onChange) {\r\n if (typeof props.onChange == \"function\") {\r\n props.onChange(value, valueOption, data);\r\n } else if (typeof props.onChange == \"string\") {\r\n const eventOption = {\r\n value,\r\n data,\r\n formRef: this.formRef,\r\n funcs: this.props.funcs || {},\r\n refs: this.refList,\r\n pageRef: this.props.pageRef,\r\n } as any;\r\n const Utils = this.props.Utils || {};\r\n if (type == \"Select\") {\r\n eventOption.valueOption = valueOption;\r\n eventOption.data = data;\r\n } else if (type == \"DatePicker\" || type == \"RangePicker\") {\r\n eventOption.valueStr = valueOption;\r\n }\r\n const selfFunc = new Function(\"eventOption\", \"Utils\", props.onChange);\r\n selfFunc(eventOption, Utils);\r\n }\r\n }\r\n }\r\n\r\n renderForm(forms, label) {\r\n const newValid: any[] = [];\r\n return (\r\n <Row gutter={24}>\r\n {forms.map((item: any, index: number) => {\r\n const itemProps = item.props || {};\r\n if (itemProps.format || itemProps.valueFormat) {\r\n this.dateValueFormat[item.name] =\r\n itemProps.format || itemProps.valueFormat;\r\n }\r\n if (itemProps.format) {\r\n this.dateFormat[item.name] = itemProps.format;\r\n }\r\n if (item.type == \"RangePicker\" && item.name.split(\",\").length > 1) {\r\n this.rangerDate[item.name] = item.name.split(\",\");\r\n }\r\n let allowChars = item.props?.allowChars || false;\r\n let props = {\r\n placeholder: `请输入${item.label}`,\r\n ...item.props,\r\n onChange: this.valueChange.bind(\r\n this,\r\n {\r\n type: item.type,\r\n dictName: item.dictName,\r\n },\r\n { ...item.props }\r\n ),\r\n };\r\n if (!item.type || item.type == \"Input\") {\r\n props.allowChars = true; //form.item 使用input组件allowChars必须默认true,不然输入特殊字符拿到的值不对\r\n }\r\n delete props.valueFormat;\r\n delete props.format;\r\n delete props.dataType;\r\n if (label == \"查看\") {\r\n props.disabled = true;\r\n props.placeholder = \"\";\r\n }\r\n if ((item.rules && item.rules.length > 0) || item.required === true) {\r\n newValid.push(item.name);\r\n }\r\n if (index + 1 === forms.length) {\r\n this.valid = newValid;\r\n }\r\n const itemRef: any = React.createRef<any>();\r\n this.refList[item.name] = itemRef;\r\n if (item.type !== \"Upload\") {\r\n return (\r\n <Col\r\n span={item.span || 12}\r\n key={index}\r\n style={{ display: item.hide ? \"none\" : \"block\" }}\r\n >\r\n <Form.Item\r\n label={item.label}\r\n name={item.name}\r\n rules={item.rules}\r\n allowChars={allowChars}\r\n componentName={item.type ? item.type : \"Input\"}\r\n required={item.required}\r\n type={item.props?.type}\r\n noStyle={item.noStyle || false}\r\n >\r\n {item.formRender\r\n ? item.formRender(props)\r\n : getNode(item.type, {\r\n ref: itemRef,\r\n ...props,\r\n })}\r\n </Form.Item>\r\n </Col>\r\n );\r\n } else {\r\n this.fileFormat.push(item.name);\r\n return (\r\n <Col\r\n span={item.span || 12}\r\n key={index}\r\n style={{ display: item.hide ? \"none\" : \"block\" }}\r\n >\r\n <Form.Item\r\n label={item.label}\r\n name={item.name}\r\n rules={item.rules}\r\n allowChars={allowChars}\r\n type={item.props?.type}\r\n required={item.required}\r\n >\r\n <Upload\r\n fileList={this.state.fileList[item.name] || []}\r\n onListChange={(list) => {\r\n const { fileList } = this.state;\r\n this.setState({\r\n fileList: { ...fileList, [item.name]: list },\r\n });\r\n }}\r\n showUploadList={{\r\n showDownloadIcon: true,\r\n showRemoveIcon: label !== \"查看\",\r\n }}\r\n ref={itemRef}\r\n {...props}\r\n >\r\n {item.props?.children\r\n ? item.props?.children\r\n : label !== \"查看\" && <Button>上传文件</Button>}\r\n </Upload>\r\n </Form.Item>\r\n </Col>\r\n );\r\n }\r\n })}\r\n </Row>\r\n );\r\n }\r\n render() {\r\n const {\r\n forms = [],\r\n props = {},\r\n footer = true,\r\n children,\r\n formType = \"page\",\r\n title = \"\",\r\n modalProps: defaultModalProps = {},\r\n drawerProps: defaultDrawerProps,\r\n } = this.props;\r\n const { loading, label } = this.state;\r\n let selfButtons = [] as any;\r\n let selfPanes = [] as any;\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n if (child?.props?.pageType == \"formPane\") {\r\n typeof item == \"object\" && selfPanes.push(child);\r\n }\r\n });\r\n } else {\r\n typeof item == \"object\" && selfButtons.push(item);\r\n }\r\n });\r\n } else if (children) {\r\n const { props }: any = children;\r\n if (props?.pageType == \"formPane\") {\r\n typeof children == \"object\" && selfPanes.push(children);\r\n } else {\r\n typeof children == \"object\" && selfButtons.push(children);\r\n }\r\n }\r\n let modalProps = {\r\n title: label + title,\r\n onOk: this.onSubmit.bind(this),\r\n onCancel: this.hide.bind(this),\r\n okButtonProps: { loading: loading },\r\n centered: true,\r\n width: \"50vw\",\r\n footerButton: selfButtons,\r\n ...defaultModalProps,\r\n } as any;\r\n\r\n let drawerProps = {\r\n onOk: this.onSubmit.bind(this),\r\n onClose: this.hide.bind(this),\r\n width: \"50vw\",\r\n footerButton: selfButtons,\r\n ...defaultDrawerProps,\r\n } as any;\r\n if (label == \"查看\") {\r\n modalProps.footer = null;\r\n drawerProps.footer = null;\r\n }\r\n this.dateValueFormat = {};\r\n this.dateFormat = {};\r\n this.fileFormat = [];\r\n let newFormsObj = {} as any;\r\n let formGroups = [] as any;\r\n let otherGrups = [] as any;\r\n let showForms = [] as any;\r\n //处理表单数据\r\n forms.map((item: any) => {\r\n if (item.show !== false) {\r\n showForms.push(item);\r\n if (item.groupName && formGroups.indexOf(item.groupName) < 0) {\r\n formGroups.push(item.groupName);\r\n } else if (!item.groupName) {\r\n otherGrups.push(item);\r\n }\r\n }\r\n });\r\n if (formGroups.length > 0) {\r\n formGroups.map((item: any) => {\r\n let groupForms = [] as any;\r\n showForms.map((form: any) => {\r\n if (form.groupName == item) {\r\n groupForms.push(form);\r\n }\r\n });\r\n newFormsObj[item] = groupForms;\r\n });\r\n if (otherGrups.length > 0) {\r\n newFormsObj[\"noGroupName\"] = otherGrups;\r\n }\r\n }\r\n const PaneWithoutPageType = (Pane, props) => {\r\n const { pageType, ...cleanProps } = props;\r\n return React.createElement(Pane.type, cleanProps);\r\n };\r\n //自定义按钮\r\n return (\r\n <Form\r\n ref={this.formRef}\r\n showModel={this.props.formType == \"page\" ? null : this.props.formType}\r\n modalProps={{ ...modalProps }}\r\n drawerProps={{ ...drawerProps }}\r\n // labelCol={{ flex: \"100px\" }}\r\n // wrapperCol={{ flex: \"15vw\" }}\r\n onValuesChange={(changedValues, allValues) => {\r\n const { onFormChange } = this.props;\r\n onFormChange && onFormChange(changedValues, allValues);\r\n }}\r\n changeValid={this.props.changeValid}\r\n {...props}\r\n >\r\n <div className=\"nsc-form-page\">\r\n {formGroups.length == 0 ? (\r\n this.props.formType !== \"page\" ? (\r\n this.renderForm(showForms, label)\r\n ) : (\r\n <div className=\"nsc-form-pane\">\r\n {this.renderForm(showForms, label)}\r\n </div>\r\n )\r\n ) : (\r\n Object.keys(newFormsObj).map((key) => {\r\n return (\r\n <div key={key} className=\"nsc-form-pane\">\r\n {key != \"noGroupName\" && (\r\n <div className=\"nsc-form-title\">{key}</div>\r\n )}\r\n <div className=\"nsc-form-content\">\r\n {this.renderForm(newFormsObj[key], label)}\r\n </div>\r\n </div>\r\n );\r\n })\r\n )}\r\n\r\n {selfPanes.length > 0 &&\r\n selfPanes.map((Pane, index) => {\r\n return (\r\n <div className=\"nsc-form-pane\" key={index}>\r\n {PaneWithoutPageType(Pane, { ...Pane.props })}\r\n </div>\r\n );\r\n })}\r\n {formType === \"page\" && footer == true && (\r\n <div\r\n className={cls(\r\n this.props.footerClassName,\r\n \"nsc-form-page-footer\",\r\n [this.state.width ? \"nsc-form-page-footer-width\" : \"\"]\r\n )}\r\n >\r\n <Button\r\n {...this.props.cancelButtonProps}\r\n onClick={() => {\r\n if (this.props.onCancel) {\r\n this.props.onCancel();\r\n return;\r\n }\r\n this.setState({ loading: false });\r\n }}\r\n >\r\n 取消\r\n </Button>\r\n <Button\r\n type=\"primary\"\r\n {...this.props.okButtonProps}\r\n onClick={() => {\r\n this.onSubmit();\r\n }}\r\n loading={this.state.loading}\r\n className={\"nsc-form-page-footer-btn\"}\r\n >\r\n 保存\r\n </Button>\r\n {selfButtons.map((item: any, index: any) => {\r\n return (\r\n <div className={\"nsc-form-page-footer-btn\"} key={index}>\r\n {item}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n )}\r\n {formType === \"page\" && footer !== true && this.props.footer}\r\n </div>\r\n </Form>\r\n );\r\n }\r\n}\r\n\r\nexport default FormPage;\r\n"],"mappings":";;;;;;;;;;AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAmB,OAAO;AACvD,OAAOC,IAAI,MAAM,iBAAiB;AAClC,SAAkBC,OAAO,QAAQ,aAAa;AAC9C,OAAOC,OAAO,MAAM,oBAAoB;AACxC,OAAOC,GAAG,MAAM,qBAAqB;AACrC,OAAOC,GAAG,MAAM,qBAAqB;AACrC,SAASC,UAAU,EAAEC,aAAa,QAAQ,mBAAmB;AAC7D,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAO,qBAAqB;AAC5B,OAAOC,MAAM,MAAM,QAAQ;AAC3B,OAAOC,MAAM,MAAM,mBAAmB;AACtC,OAAOC,MAAM,MAAM,mBAAmB;AACtC,OAAOC,GAAG,MAAM,YAAY;AAE5B,OAAOC,UAAU,MAAM,aAAa;AAGpC,SAASC,kBAAkB,QAAQ,sBAAsB;AA8BzD,MAAMC,QAAQ,SAASf,aAAa,CAAqB;EAAAgB,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,+BAC7CnB,KAAK,CAACoB,SAAS,CAAM,CAAC;IAAAD,eAAA,gBACxB;MACNE,OAAO,EAAE,KAAK;MACdC,KAAK,EAAE,IAAI,CAACC,KAAK,CAACC,QAAQ,IAAI,EAAE;MAChCC,UAAU,EAAE,IAAI;MAChBC,KAAK,EAAE,CAAC,CAAQ;MAChBC,SAAS,EAAE,CAAC,CAAQ;MACpBC,QAAQ,EAAE,CAAC,CAAQ;MACnBC,KAAK,EAAErB,aAAa,CAAC,uBAAuB,CAAC,IAAI,KAAK;MACtDsB,MAAM,EAAE,IAAI,CAACP,KAAK,CAACO,MAAM,IAAI;IAC/B,CAAC;IAAAX,eAAA,gBACY,EAAE;IAAAA,eAAA,0BACG,CAAC,CAAC;IAAAA,eAAA,qBACP,CAAC,CAAC;IAAAA,eAAA,qBACF,EAAE;IAAAA,eAAA,qBACF,CAAC,CAAC;IAAAA,eAAA,kBACL,CAAC,CAAC;IAAAA,eAAA,qBACC,IAAI;IAAAA,eAAA,wBA8BAY,EAAE,IAAK;MACtB,MAAMC,IAAI,GAAG,OAAOD,EAAE,CAACC,IAAI,KAAK,QAAQ,GAAGC,IAAI,CAACC,KAAK,CAACH,EAAE,CAACC,IAAI,CAAC,GAAGD,EAAE,CAACC,IAAI;MACxE,IAAIG,KAAK,GAAG,IAAI;MAChB,IAAIH,IAAI,CAACI,SAAS,IAAI,cAAc,EAAE;QACpC,MAAM;UAAEC;QAAQ,CAAC,GAAGL,IAAI;QACxB,IAAIK,OAAO,CAACC,KAAK,KAAK,IAAI,IAAID,OAAO,CAACC,KAAK,KAAK,KAAK,EAAE;UACrDH,KAAK,CAACI,QAAQ,CAAC;YAAEV,KAAK,EAAEQ,OAAO,CAACC;UAAM,CAAC,CAAC;QAC1C;MACF;IACF,CAAC;EAAA;EAtCDE,iBAAiBA,CAAA,EAAS;IACxBC,MAAM,CAACC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAACC,aAAa,CAAC;IACtD,MAAM;MACJC,QAAQ,GAAG,MAAM;MACjBC,aAAa,GAAG,CAAC,CAAC;MAClBrB,QAAQ,GAAG;IACb,CAAC,GAAG,IAAI,CAACD,KAAK;IACd,IAAIqB,QAAQ,IAAI,MAAM,EAAE;MACtB,IAAIC,aAAa,CAACC,SAAS,IAAItB,QAAQ,KAAK,IAAI,EAAE;QAChDV,UAAU,CAACiC,GAAG,CAACF,aAAa,CAACC,SAAS,EAAE;UACtCE,MAAM,EAAE;YAAEC,EAAE,EAAE,IAAI,CAACC,KAAK,CAACpB;UAAO,CAAC;UACjCqB,SAAS,EAAE,KAAK;UAChBC,UAAU,EAAE;QACd,CAAC,CAAC,CAACC,IAAI,CAAEC,GAAG,IAAK;UACf,IAAIA,GAAG,CAACC,IAAI,IAAI,GAAG,EAAE;YAAA,IAAAC,qBAAA;YACnB,CAAAA,qBAAA,OAAI,CAACC,OAAO,CAACC,OAAO,cAAAF,qBAAA,eAApBA,qBAAA,CAAsBG,cAAc,CAAAC,aAAA,KAAMN,GAAG,CAACtB,IAAI,CAAE,CAAC;UACvD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM,IAAIR,QAAQ,IAAI,IAAI,EAAE;QAC3B,IAAI,IAAI,CAACD,KAAK,CAACsC,YAAY,EAAE;UAAA,IAAAC,sBAAA;UAC3B,IAAID,YAAY,GAAG,IAAI,CAACE,mBAAmB,CAAC,CAAC;UAC7C,CAAAD,sBAAA,OAAI,CAACL,OAAO,CAACC,OAAO,cAAAI,sBAAA,eAApBA,sBAAA,CAAsBH,cAAc,CAACE,YAAY,IAAI,CAAC,CAAC,CAAC;QAC1D;MACF;IACF;EACF;EACAG,oBAAoBA,CAAA,EAAG;IACrBvB,MAAM,CAACwB,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAACtB,aAAa,CAAC;EAC3D;EAWAoB,mBAAmBA,CAAA,EAAG;IACpB,MAAM;MAAEF;IAAa,CAAC,GAAG,IAAI,CAACtC,KAAK;IACnC,OAAOR,kBAAkB,CAAC8C,YAAY,EAAE,IAAI,CAACtC,KAAK,CAAC2C,KAAK,IAAI,CAAC,CAAC,EAAE;MAC9DC,KAAK,EAAE,IAAI,CAAC5C,KAAK,CAAC4C,KAAK;MACvBC,OAAO,EAAE,IAAI,CAAC7C,KAAK,CAAC6C,OAAO;MAC3BX,OAAO,EAAE,IAAI,CAACA,OAAO;MACrBY,IAAI,EAAE,IAAI,CAACC;IACb,CAAC,CAAC;EACJ;EACA;EACAC,IAAIA,CAACC,QAAc,EAAsC;IAAA,IAApCC,UAAU,GAAAvD,SAAA,CAAAwD,MAAA,QAAAxD,SAAA,QAAAyD,SAAA,GAAAzD,SAAA,MAAG,KAAK;IAAA,IAAE0D,QAAc,GAAA1D,SAAA,CAAAwD,MAAA,OAAAxD,SAAA,MAAAyD,SAAA;IACrD,IAAIrD,KAAK,GAAG,IAAI;IAChB,IAAIkD,QAAQ,IAAIC,UAAU,IAAI,QAAQ,EAAE;MACtCnD,KAAK,GAAG,IAAI;IACd,CAAC,MAAM,IAAIkD,QAAQ,KAAKC,UAAU,IAAI,QAAQ,IAAIA,UAAU,IAAI,QAAQ,CAAC,EAAE;MACzEnD,KAAK,GAAG,IAAI;IACd;IACA,IAAIkD,QAAQ,EAAE;MACZ,IAAI,CAACjC,QAAQ,CACX;QACEjB,KAAK,EAAEA,KAAK;QACZI,KAAK,EAAE8C,QAAQ;QACf1C,MAAM,EAAE0C,QAAQ,CAACvB;MACnB,CAAC,EACD,MAAM;QAAA,IAAA4B,sBAAA;QACJ,IAAInD,KAAK,GAAG,IAAI,CAACoD,YAAY,CAACN,QAAQ,EAAElD,KAAK,CAAC;QAC9C;QACA,CAAAuD,sBAAA,OAAI,CAACpB,OAAO,CAACC,OAAO,cAAAmB,sBAAA,eAApBA,sBAAA,CAAsBE,QAAQ,CAACrD,KAAK,EAAE;UACpCsD,WAAW,EAAEA,CAAA,KAAM;YACjBJ,QAAQ,IAAIA,QAAQ,CAAC,CAAC;UACxB;QACF,CAAC,CAAC;MACJ,CACF,CAAC;IACH,CAAC,MAAM;MACL,IAAI,CAACrC,QAAQ,CACX;QACEjB,KAAK,EAAEA;MACT,CAAC,EACD,MAAM;QAAA,IAAA2D,sBAAA;QACJ,IAAIpB,YAAY,GAAG,IAAI,CAACtC,KAAK,CAACsC,YAAY,GACtC,IAAI,CAACE,mBAAmB,CAAC,CAAC,GAC1B,CAAC,CAAC;QACN,CAAAkB,sBAAA,OAAI,CAACxB,OAAO,CAACC,OAAO,cAAAuB,sBAAA,eAApBA,sBAAA,CAAsBF,QAAQ,CAAClB,YAAY,IAAI,CAAC,CAAC,EAAE;UACjDmB,WAAW,EAAEA,CAAA,KAAM;YACjBJ,QAAQ,IAAIA,QAAQ,CAAC,CAAC;UACxB;QACF,CAAC,CAAC;MACJ,CACF,CAAC;IACH;EACF;EACAM,IAAIA,CAAA,EAAc;IAAA,IAAAC,sBAAA;IAAA,IAAbD,IAAI,GAAAhE,SAAA,CAAAwD,MAAA,QAAAxD,SAAA,QAAAyD,SAAA,GAAAzD,SAAA,MAAG,IAAI;IACd,MAAM;MAAEkE;IAAW,CAAC,GAAG,IAAI,CAAC7D,KAAK;IACjC,IAAI6D,UAAU,EAAE;MACdA,UAAU,IAAIA,UAAU,CAAC,CAAC;MAC1B;IACF;IACA,IAAI,CAAC7C,QAAQ,CAAC;MAAElB,OAAO,EAAE,KAAK;MAAEO,QAAQ,EAAE,CAAC;IAAE,CAAC,CAAC;IAC/CsD,IAAI,MAAAC,sBAAA,GAAI,IAAI,CAAC1B,OAAO,CAACC,OAAO,cAAAyB,sBAAA,uBAApBA,sBAAA,CAAsBE,QAAQ,CAAC,CAAC;EAC1C;EACAA,QAAQA,CAAA,EAAG;IAAA,IAAAC,sBAAA;IACT,IAAI,CAAC/C,QAAQ,CAAC;MAAElB,OAAO,EAAE,KAAK;MAAEO,QAAQ,EAAE,CAAC;IAAE,CAAC,CAAC;IAC/C,CAAA0D,sBAAA,OAAI,CAAC7B,OAAO,CAACC,OAAO,cAAA4B,sBAAA,eAApBA,sBAAA,CAAsBD,QAAQ,CAAC,CAAC;EAClC;EACAN,QAAQA,CAACP,QAAc,EAAsC;IAAA,IAApCC,UAAU,GAAAvD,SAAA,CAAAwD,MAAA,QAAAxD,SAAA,QAAAyD,SAAA,GAAAzD,SAAA,MAAG,KAAK;IAAA,IAAE0D,QAAc,GAAA1D,SAAA,CAAAwD,MAAA,OAAAxD,SAAA,MAAAyD,SAAA;IACzD,IAAI,CAACJ,IAAI,CAACC,QAAQ,EAAEC,UAAU,EAAEG,QAAQ,CAAC;EAC3C;EACAW,UAAUA,CAAClE,OAAgB,EAAE;IAC3B,IAAI,CAACkB,QAAQ,CAAC;MAAElB,OAAO,EAAEA;IAAQ,CAAC,CAAC;EACrC;EACAmE,WAAWA,CAACC,IAAI,EAAE;IAChB,IAAI,CAAClD,QAAQ,CAAC;MACZjB,KAAK,EAAEmE;IACT,CAAC,CAAC;EACJ;EACAC,SAASA,CAACzC,EAAE,EAAE;IACZ,IAAI,CAACV,QAAQ,CAAC;MACZT,MAAM,EAAEmB;IACV,CAAC,CAAC;EACJ;EACA0C,YAAYA,CAAA,EAAG;IAAA,IAAAC,sBAAA;IACb,MAAM;MAAEtE,KAAK;MAAEI,KAAK;MAAEC,SAAS;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACsB,KAAK;IACxD,MAAM2C,SAAS,IAAAD,sBAAA,GAAG,IAAI,CAACnC,OAAO,CAACC,OAAO,cAAAkC,sBAAA,uBAApBA,sBAAA,CAAsBE,cAAc,CAAC,CAAC;IACxD,IAAI9D,IAAI,GAAGtB,MAAM,CAACqF,SAAS,CAAAnC,aAAA,CAAAA,aAAA,KAAMiC,SAAS,GAAKlE,SAAS,CAAE,CAAC;IAC3D,IAAI,IAAI,CAACqE,UAAU,CAACtB,MAAM,GAAG,CAAC,EAAE;MAC9B,IAAIuB,WAAW,GAAG,CAAC,CAAQ;MAC3B,IAAI,CAACD,UAAU,CAACE,GAAG,CAAEC,IAAI,IAAK;QAC5B,IAAIvE,QAAQ,CAACuE,IAAI,CAAC,CAACzB,MAAM,IAAI,CAAC,EAAE;UAC9BuB,WAAW,CAACE,IAAI,CAAC,GAAG,IAAI;QAC1B,CAAC,MAAM;UACLF,WAAW,CAACE,IAAI,CAAC,GAAG,IAAI,CAACC,WAAW,CAACxE,QAAQ,CAACuE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5D;MACF,CAAC,CAAC;MACFnE,IAAI,GAAA4B,aAAA,CAAAA,aAAA,KAAQ5B,IAAI,GAAKiE,WAAW,CAAE;IACpC;IACA,IAAI,CAAC,IAAI,CAACI,UAAU,EAAE;MACpBjG,OAAO,CAACkG,KAAK,CAAC,cAAc,CAAC;MAC7B;IACF;IACA,IAAI,CAAC/F,UAAU,CAAC,IAAI,CAACgG,eAAe,CAAC,EAAE;MACrC,KAAK,IAAIC,GAAG,IAAI,IAAI,CAACD,eAAe,EAAE;QACpC,IAAIE,OAAO,GAAGzE,IAAI,CAACwE,GAAG,CAAC;QACvB,IAAIC,OAAO,EAAE;UACX,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;YAC1BzE,IAAI,CAACwE,GAAG,CAAC,GAAG,CACV/F,KAAK,CAACgG,OAAO,CAAC,CAAC,CAAC,CAAC,CAACG,MAAM,CAAC,IAAI,CAACL,eAAe,CAACC,GAAG,CAAC,CAAC,EACnD/F,KAAK,CAACgG,OAAO,CAAC,CAAC,CAAC,CAAC,CAACG,MAAM,CAAC,IAAI,CAACL,eAAe,CAACC,GAAG,CAAC,CAAC,CACpD;YACD,IAAI,IAAI,CAACK,UAAU,CAACL,GAAG,CAAC,EAAE;cACxB,IAAI;gBACFxE,IAAI,CAAC,IAAI,CAAC6E,UAAU,CAACL,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG/F,KAAK,CAACgG,OAAO,CAAC,CAAC,CAAC,CAAC,CAACG,MAAM,CACtD,IAAI,CAACE,UAAU,CAACN,GAAG,CACrB,CAAC;gBACDxE,IAAI,CAAC,IAAI,CAAC6E,UAAU,CAACL,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG/F,KAAK,CAACgG,OAAO,CAAC,CAAC,CAAC,CAAC,CAACG,MAAM,CACtD,IAAI,CAACE,UAAU,CAACN,GAAG,CACrB,CAAC;gBACD,OAAOxE,IAAI,CAACwE,GAAG,CAAC;cAClB,CAAC,CAAC,OAAOO,CAAC,EAAE,CAAC;YACf;UACF,CAAC,MAAM;YACL/E,IAAI,CAACwE,GAAG,CAAC,GAAG/F,KAAK,CAACgG,OAAO,CAAC,CAACG,MAAM,CAAC,IAAI,CAACL,eAAe,CAACC,GAAG,CAAC,CAAC;UAC9D;QACF;MACF;IACF;IACA,IAAIlF,KAAK,IAAI,IAAI,EAAE;MACjBU,IAAI,GAAA4B,aAAA,CAAAA,aAAA,KAAQ5B,IAAI;QAAEiB,EAAE,EAAE,CAAAvB,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEuB,EAAE,KAAI,IAAI,CAACC,KAAK,CAACpB;MAAM,EAAE;IACxD;IACA,IAAIkF,OAAO,GAAG/E,IAAI,CAACC,KAAK,CAACD,IAAI,CAACgF,SAAS,CAACjF,IAAI,CAAC,CAAC;IAC9C,OAAOgF,OAAO;EAChB;EACAlC,YAAYA,CAACpD,KAAK,EAAE+D,IAAI,EAAE;IACxB,IAAIyB,MAAM,GAAGxG,MAAM,CAACqF,SAAS,CAACrE,KAAK,CAAC;IACpC,IAAI,IAAI,CAACsE,UAAU,CAACtB,MAAM,GAAG,CAAC,EAAE;MAC9B,IAAI9C,QAAQ,GAAG,CAAC,CAAQ;MACxB,IAAI,CAACoE,UAAU,CAACmB,OAAO,CAAEC,OAAO,IAAK;QACnC,IAAIX,OAAO,GAAGS,MAAM,CAACE,OAAO,CAAC;QAC7B,IAAIX,OAAO,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;UACrC7E,QAAQ,CAACwF,OAAO,CAAC,GAAG,IAAI,CAAChB,WAAW,CAACK,OAAO,IAAI,EAAE,EAAEhB,IAAI,CAAC;QAC3D,CAAC,MAAM;UACL7D,QAAQ,CAACwF,OAAO,CAAC,GAAG,EAAE;QACxB;MACF,CAAC,CAAC;MACF,IAAI,CAAC7E,QAAQ,CAAC;QAAEX,QAAQ,EAAEA;MAAS,CAAC,CAAC;IACvC;IACA;IACA,IAAI,CAACrB,UAAU,CAAC,IAAI,CAACuG,UAAU,CAAC,EAAE;MAChC,KAAK,IAAIN,GAAG,IAAI,IAAI,CAACM,UAAU,EAAE;QAC/B,IAAIL,OAAO,GAAGS,MAAM,CAACV,GAAG,CAAC;QACzB,IAAIC,OAAO,EAAE;UACX,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;YAC1BS,MAAM,CAACV,GAAG,CAAC,GAAG,CACZ/F,KAAK,CAACgG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAACK,UAAU,CAACN,GAAG,CAAC,CAAC,EACvC/F,KAAK,CAACgG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAACK,UAAU,CAACN,GAAG,CAAC,CAAC,CACxC;UACH,CAAC,MAAM;YACLU,MAAM,CAACV,GAAG,CAAC,GAAG/F,KAAK,CAACgG,OAAO,EAAE,IAAI,CAACK,UAAU,CAACN,GAAG,CAAC,CAAC;UACpD;QACF,CAAC,MAAM;UACL,IAAI,IAAI,CAACK,UAAU,CAACL,GAAG,CAAC,EAAE;YACxB,IAAIa,MAAM,GAAGH,MAAM,CAAC,IAAI,CAACL,UAAU,CAACL,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAIc,MAAM,GAAGJ,MAAM,CAAC,IAAI,CAACL,UAAU,CAACL,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAIa,MAAM,IAAIC,MAAM,EAAE;cACpBJ,MAAM,CAACV,GAAG,CAAC,GAAG,CACZ/F,KAAK,CAAC4G,MAAM,EAAE,IAAI,CAACP,UAAU,CAACN,GAAG,CAAC,CAAC,EACnC/F,KAAK,CAAC6G,MAAM,EAAE,IAAI,CAACR,UAAU,CAACN,GAAG,CAAC,CAAC,CACpC;YACH;UACF;QACF;MACF;IACF;IACA,OAAOU,MAAM;EACf;EACAK,YAAYA,CAAC7F,KAAK,EAAe;IAAA,IAAA8F,sBAAA;IAAA,IAAb/B,IAAI,GAAAvE,SAAA,CAAAwD,MAAA,QAAAxD,SAAA,QAAAyD,SAAA,GAAAzD,SAAA,MAAG,IAAI;IAC7B,MAAMuG,QAAQ,GAAG,IAAI,CAAC3C,YAAY,CAACpD,KAAK,EAAE+D,IAAI,CAAC;IAC/C,CAAA+B,sBAAA,OAAI,CAAC/D,OAAO,CAACC,OAAO,cAAA8D,sBAAA,eAApBA,sBAAA,CAAsB7D,cAAc,CAAC8D,QAAQ,CAAC;EAChD;EACAC,QAAQA,CAACC,QAAQ,EAAErG,KAAK,EAAE;IAAA,IAAAsG,sBAAA;IACxB,MAAM;MACJC,SAAS;MACTC,YAAY,GAAG,CAAC,CAAC;MACjBlD,QAAQ;MACR/B,aAAa,GAAG,CAAC,CAAC;MAClBkF,aAAa,GAAG,CAAC;IACnB,CAAC,GAAG,IAAI,CAACxG,KAAK;IACd,MAAM;MAAEyG,MAAM;MAAEC,SAAS;MAAEC,SAAS;MAAEC;IAAa,CAAC,GAAGtF,aAAa;IACpE,IAAIuF,GAAG,GAAGP,SAAS;IACnB,IAAI7E,MAAW,GAAG,CAAC,CAAC;IACpB,IAAI,CAAC1B,KAAK,IAAIA,KAAK,IAAI,IAAI,EAAE;MAC3B8G,GAAG,GAAGJ,MAAM,GAAGA,MAAM,GAAGH,SAAS;MACjC,IAAIK,SAAS,IAAI,OAAOA,SAAS,IAAI,QAAQ,EAAE;QAC7C,MAAMhE,KAAK,GAAG,IAAI,CAAC3C,KAAK,CAAC2C,KAAK,IAAI,CAAC,CAAC;QACpC,IAAImE,IAAI,GAAG,IAAIC,QAAQ,CAAC,OAAO,EAAEJ,SAAS,CAAC;QAC3C,IAAIK,YAAY,GAAGF,IAAI,CAACnE,KAAK,CAAC;QAC9BlB,MAAM,GAAGuF,YAAY;MACvB,CAAC,MAAM;QACLvF,MAAM,GAAGkF,SAAS,GAAGA,SAAS,GAAGJ,YAAY;MAC/C;IACF,CAAC,MAAM,IAAIxG,KAAK,IAAI,IAAI,EAAE;MACxB8G,GAAG,GAAGH,SAAS,GAAGA,SAAS,GAAGJ,SAAS;MACvC,IAAIM,YAAY,IAAI,OAAOA,YAAY,IAAI,QAAQ,EAAE;QACnD,MAAMjE,KAAK,GAAG,IAAI,CAAC3C,KAAK,CAAC2C,KAAK,IAAI,CAAC,CAAC;QACpC,IAAImE,IAAI,GAAG,IAAIC,QAAQ,CAAC,OAAO,EAAEH,YAAY,CAAC;QAC9C,IAAII,YAAY,GAAGF,IAAI,CAACnE,KAAK,CAAC;QAC9BlB,MAAM,GAAGuF,YAAY;MACvB,CAAC,MAAM;QACLvF,MAAM,GAAGmF,YAAY,GAAGA,YAAY,GAAGL,YAAY;MACrD;IACF;IACA,IAAI,CAACM,GAAG,EAAE;MACRI,OAAO,CAAClC,KAAK,CAAC,YAAY,CAAC;MAC3B;IACF;IACA,MAAM;QAAEtE,IAAI,GAAG,CAAC;MAAkB,CAAC,GAAGgB,MAAM;MAAtByF,WAAW,GAAAC,wBAAA,CAAK1F,MAAM,EAAA2F,SAAA;IAC5C,CAAAf,sBAAA,OAAI,CAACnE,OAAO,CAACC,OAAO,cAAAkE,sBAAA,eAApBA,sBAAA,CAAsBgB,QAAQ,CAC5BR,GAAG,EAAAxE,aAAA,CAAAA,aAAA;MAED5B,IAAI,EAAA4B,aAAA,CAAAA,aAAA,KAAO+D,QAAQ,GAAK3F,IAAI,CAAE;MAC9B6G,WAAW,EAAEvH,KAAK,IAAI;IAAI,GACvByG,aAAa,GACbU,WAAW,GAEfnF,GAAQ,IAAK;MACZ,MAAM;QAAEC,IAAI;QAAEuF;MAAI,CAAC,GAAGxF,GAAG;MACzB,IAAI,CAACf,QAAQ,CAAC;QAAElB,OAAO,EAAE;MAAM,CAAC,CAAC;MACjC,IAAIkC,IAAI,KAAK,GAAG,EAAE;QAChBnD,OAAO,CAAC2I,OAAO,CAACzH,KAAK,GAAG,IAAI,CAAC;QAC7B0H,UAAU,CAAC,MAAM;UACf,IAAI,CAAC9D,IAAI,CAAC,IAAI,CAAC;UACfN,QAAQ,IAAIA,QAAQ,CAAC,CAAC;QACxB,CAAC,EAAE,GAAG,CAAC;QAEP;MACF;IACF,CACF,CAAC;EACH;EACAwB,WAAWA,CAACpE,IAAI,EAAgB;IAAA,IAAdV,KAAK,GAAAJ,SAAA,CAAAwD,MAAA,QAAAxD,SAAA,QAAAyD,SAAA,GAAAzD,SAAA,MAAG,IAAI;IAC5B,IAAI,CAACmF,UAAU,GAAG,IAAI;IACtB,IAAIzE,QAAQ,GAAG,EAAS;IACxB,IAAII,IAAI,IAAIA,IAAI,CAAC0C,MAAM,GAAG,CAAC,EAAE;MAC3B1C,IAAI,CAACkE,GAAG,CAAEC,IAAI,IAAK;QACjB,IAAI8C,GAAG,GAAG;UACRC,MAAM,EAAE/C,IAAI,CAAC+C,MAAM;UACnBC,QAAQ,EAAEhD,IAAI,CAACgD;QACjB,CAAQ;QACR,IAAI7H,KAAK,IAAI,IAAI,EAAE;UACjB2H,GAAG,CAACG,MAAM,GAAG,MAAM;QACrB;QACA,IAAI9H,KAAK,KAAK,IAAI,IAAI6E,IAAI,CAACiD,MAAM,KAAK,MAAM,EAAE;UAC5C,IAAI,CAAC/C,UAAU,GAAG,KAAK;QACzB;QACAzE,QAAQ,CAACyH,IAAI,CAACJ,GAAG,CAAC;MACpB,CAAC,CAAC;IACJ;IACA,OAAOrH,QAAQ;EACjB;EAEAgH,QAAQA,CAAA,EAAG;IAAA,IAAAU,uBAAA;IACT,MAAM;MAAEV;IAAS,CAAC,GAAG,IAAI,CAACrH,KAAK;IAC/B,MAAM;MAAED,KAAK;MAAEI,KAAK;MAAEC,SAAS;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACsB,KAAK;IACxD,IAAIqG,KAAK,GAAG,IAAI,CAACA,KAAK;IACtB,CAAAD,uBAAA,OAAI,CAAC7F,OAAO,CAACC,OAAO,cAAA4F,uBAAA,eAApBA,uBAAA,CACIE,cAAc,CAAC,CAAC,CACjBnG,IAAI,CAAC,MAAM;MACV,IAAIrB,IAAI,GAAG,IAAI,CAAC2D,YAAY,CAAC,CAAC;MAC9B,IAAI,CAACpD,QAAQ,CAAC;QAAElB,OAAO,EAAE;MAAK,CAAC,CAAC;MAChC,IAAIuH,QAAQ,EAAE;QACZ,IAAIa,UAAU,GAAG/I,MAAM,CAACqF,SAAS,CAAC/D,IAAI,CAAC;QACvC4G,QAAQ,IAAIA,QAAQ,CAACa,UAAU,EAAEnI,KAAK,CAAC;QACvC;MACF;MACA,IAAI,CAACoG,QAAQ,CAAC1F,IAAI,EAAEV,KAAK,CAAC;IAC5B,CAAC,CAAC,CACDoI,KAAK,CAAEC,SAAc,IAAK,CAAC,CAAC,CAAC;EAClC;EACAC,WAAWA,CAAAC,IAAA,EAAqBtI,KAAK,EAAEG,KAAK,EAAEoI,WAAW,EAAE9H,IAAI,EAAE;IAAA,IAArD;MAAEyD,IAAI;MAAEsE;IAAS,CAAC,GAAAF,IAAA;IAC5B,IAAIC,WAAW,EAAE;MACf,IAAIC,QAAQ,EAAE;QACZ,MAAM;UAAEpI;QAAU,CAAC,GAAG,IAAI,CAACuB,KAAK;QAChC,MAAM8G,QAAQ,GAAApG,aAAA,KAAQjC,SAAS,CAAS;QACxCqI,QAAQ,CAACD,QAAQ,CAAC,GAAGD,WAAW,CAACxI,KAAK;QACtC,IAAI,CAACiB,QAAQ,CAAC;UACZZ,SAAS,EAAEqI;QACb,CAAC,CAAC;MACJ;IACF;IACA,IAAIzI,KAAK,CAAC0I,QAAQ,EAAE;MAClB,IAAI,OAAO1I,KAAK,CAAC0I,QAAQ,IAAI,UAAU,EAAE;QACvC1I,KAAK,CAAC0I,QAAQ,CAACvI,KAAK,EAAEoI,WAAW,EAAE9H,IAAI,CAAC;MAC1C,CAAC,MAAM,IAAI,OAAOT,KAAK,CAAC0I,QAAQ,IAAI,QAAQ,EAAE;QAC5C,MAAMC,WAAW,GAAG;UAClBxI,KAAK;UACLM,IAAI;UACJyB,OAAO,EAAE,IAAI,CAACA,OAAO;UACrBU,KAAK,EAAE,IAAI,CAAC5C,KAAK,CAAC4C,KAAK,IAAI,CAAC,CAAC;UAC7BE,IAAI,EAAE,IAAI,CAACC,OAAO;UAClBF,OAAO,EAAE,IAAI,CAAC7C,KAAK,CAAC6C;QACtB,CAAQ;QACR,MAAMF,KAAK,GAAG,IAAI,CAAC3C,KAAK,CAAC2C,KAAK,IAAI,CAAC,CAAC;QACpC,IAAIuB,IAAI,IAAI,QAAQ,EAAE;UACpByE,WAAW,CAACJ,WAAW,GAAGA,WAAW;UACrCI,WAAW,CAAClI,IAAI,GAAGA,IAAI;QACzB,CAAC,MAAM,IAAIyD,IAAI,IAAI,YAAY,IAAIA,IAAI,IAAI,aAAa,EAAE;UACxDyE,WAAW,CAACC,QAAQ,GAAGL,WAAW;QACpC;QACA,MAAMM,QAAQ,GAAG,IAAI9B,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE/G,KAAK,CAAC0I,QAAQ,CAAC;QACrEG,QAAQ,CAACF,WAAW,EAAEhG,KAAK,CAAC;MAC9B;IACF;EACF;EAEAmG,UAAUA,CAACC,KAAK,EAAEhJ,KAAK,EAAE;IACvB,MAAMiJ,QAAe,GAAG,EAAE;IAC1B,oBACEvK,KAAA,CAAAwK,aAAA,CAAClK,GAAG;MAACmK,MAAM,EAAE;IAAG,GACbH,KAAK,CAACpE,GAAG,CAAC,CAACC,IAAS,EAAEuE,KAAa,KAAK;MAAA,IAAAC,WAAA;MACvC,MAAMC,SAAS,GAAGzE,IAAI,CAAC5E,KAAK,IAAI,CAAC,CAAC;MAClC,IAAIqJ,SAAS,CAAChE,MAAM,IAAIgE,SAAS,CAACC,WAAW,EAAE;QAC7C,IAAI,CAACtE,eAAe,CAACJ,IAAI,CAAC2E,IAAI,CAAC,GAC7BF,SAAS,CAAChE,MAAM,IAAIgE,SAAS,CAACC,WAAW;MAC7C;MACA,IAAID,SAAS,CAAChE,MAAM,EAAE;QACpB,IAAI,CAACE,UAAU,CAACX,IAAI,CAAC2E,IAAI,CAAC,GAAGF,SAAS,CAAChE,MAAM;MAC/C;MACA,IAAIT,IAAI,CAACV,IAAI,IAAI,aAAa,IAAIU,IAAI,CAAC2E,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC,CAACrG,MAAM,GAAG,CAAC,EAAE;QACjE,IAAI,CAACmC,UAAU,CAACV,IAAI,CAAC2E,IAAI,CAAC,GAAG3E,IAAI,CAAC2E,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC;MACnD;MACA,IAAIC,UAAU,GAAG,EAAAL,WAAA,GAAAxE,IAAI,CAAC5E,KAAK,cAAAoJ,WAAA,uBAAVA,WAAA,CAAYK,UAAU,KAAI,KAAK;MAChD,IAAIzJ,KAAK,GAAAqC,aAAA,CAAAA,aAAA;QACPqH,WAAW,uBAAAC,MAAA,CAAQ/E,IAAI,CAAC7E,KAAK;MAAE,GAC5B6E,IAAI,CAAC5E,KAAK;QACb0I,QAAQ,EAAE,IAAI,CAACL,WAAW,CAACuB,IAAI,CAC7B,IAAI,EACJ;UACE1F,IAAI,EAAEU,IAAI,CAACV,IAAI;UACfsE,QAAQ,EAAE5D,IAAI,CAAC4D;QACjB,CAAC,EAAAnG,aAAA,KACIuC,IAAI,CAAC5E,KAAK,CACjB;MAAC,EACF;MACD,IAAI,CAAC4E,IAAI,CAACV,IAAI,IAAIU,IAAI,CAACV,IAAI,IAAI,OAAO,EAAE;QACtClE,KAAK,CAACyJ,UAAU,GAAG,IAAI,CAAC,CAAC;MAC3B;MACA,OAAOzJ,KAAK,CAACsJ,WAAW;MACxB,OAAOtJ,KAAK,CAACqF,MAAM;MACnB,OAAOrF,KAAK,CAAC6J,QAAQ;MACrB,IAAI9J,KAAK,IAAI,IAAI,EAAE;QACjBC,KAAK,CAAC8J,QAAQ,GAAG,IAAI;QACrB9J,KAAK,CAAC0J,WAAW,GAAG,EAAE;MACxB;MACA,IAAK9E,IAAI,CAACmF,KAAK,IAAInF,IAAI,CAACmF,KAAK,CAAC5G,MAAM,GAAG,CAAC,IAAKyB,IAAI,CAACoF,QAAQ,KAAK,IAAI,EAAE;QACnEhB,QAAQ,CAAClB,IAAI,CAAClD,IAAI,CAAC2E,IAAI,CAAC;MAC1B;MACA,IAAIJ,KAAK,GAAG,CAAC,KAAKJ,KAAK,CAAC5F,MAAM,EAAE;QAC9B,IAAI,CAAC6E,KAAK,GAAGgB,QAAQ;MACvB;MACA,MAAMiB,OAAY,gBAAGxL,KAAK,CAACoB,SAAS,CAAM,CAAC;MAC3C,IAAI,CAACkD,OAAO,CAAC6B,IAAI,CAAC2E,IAAI,CAAC,GAAGU,OAAO;MACjC,IAAIrF,IAAI,CAACV,IAAI,KAAK,QAAQ,EAAE;QAAA,IAAAgG,YAAA;QAC1B,oBACEzL,KAAA,CAAAwK,aAAA,CAACnK,GAAG;UACFqL,IAAI,EAAEvF,IAAI,CAACuF,IAAI,IAAI,EAAG;UACtBlF,GAAG,EAAEkE,KAAM;UACXiB,KAAK,EAAE;YAAEC,OAAO,EAAEzF,IAAI,CAACjB,IAAI,GAAG,MAAM,GAAG;UAAQ;QAAE,gBAEjDlF,KAAA,CAAAwK,aAAA,CAACtK,IAAI,CAAC2L,IAAI;UACRvK,KAAK,EAAE6E,IAAI,CAAC7E,KAAM;UAClBwJ,IAAI,EAAE3E,IAAI,CAAC2E,IAAK;UAChBQ,KAAK,EAAEnF,IAAI,CAACmF,KAAM;UAClBN,UAAU,EAAEA,UAAW;UACvBc,aAAa,EAAE3F,IAAI,CAACV,IAAI,GAAGU,IAAI,CAACV,IAAI,GAAG,OAAQ;UAC/C8F,QAAQ,EAAEpF,IAAI,CAACoF,QAAS;UACxB9F,IAAI,GAAAgG,YAAA,GAAEtF,IAAI,CAAC5E,KAAK,cAAAkK,YAAA,uBAAVA,YAAA,CAAYhG,IAAK;UACvBsG,OAAO,EAAE5F,IAAI,CAAC4F,OAAO,IAAI;QAAM,GAE9B5F,IAAI,CAAC6F,UAAU,GACZ7F,IAAI,CAAC6F,UAAU,CAACzK,KAAK,CAAC,GACtBpB,OAAO,CAACgG,IAAI,CAACV,IAAI,EAAA7B,aAAA;UACfqI,GAAG,EAAET;QAAO,GACTjK,KAAK,CACT,CACI,CACR,CAAC;MAEV,CAAC,MAAM;QAAA,IAAA2K,YAAA,EAAAC,YAAA,EAAAC,YAAA;QACL,IAAI,CAACpG,UAAU,CAACqD,IAAI,CAAClD,IAAI,CAAC2E,IAAI,CAAC;QAC/B,oBACE9K,KAAA,CAAAwK,aAAA,CAACnK,GAAG;UACFqL,IAAI,EAAEvF,IAAI,CAACuF,IAAI,IAAI,EAAG;UACtBlF,GAAG,EAAEkE,KAAM;UACXiB,KAAK,EAAE;YAAEC,OAAO,EAAEzF,IAAI,CAACjB,IAAI,GAAG,MAAM,GAAG;UAAQ;QAAE,gBAEjDlF,KAAA,CAAAwK,aAAA,CAACtK,IAAI,CAAC2L,IAAI;UACRvK,KAAK,EAAE6E,IAAI,CAAC7E,KAAM;UAClBwJ,IAAI,EAAE3E,IAAI,CAAC2E,IAAK;UAChBQ,KAAK,EAAEnF,IAAI,CAACmF,KAAM;UAClBN,UAAU,EAAEA,UAAW;UACvBvF,IAAI,GAAAyG,YAAA,GAAE/F,IAAI,CAAC5E,KAAK,cAAA2K,YAAA,uBAAVA,YAAA,CAAYzG,IAAK;UACvB8F,QAAQ,EAAEpF,IAAI,CAACoF;QAAS,gBAExBvL,KAAA,CAAAwK,aAAA,CAAC5J,MAAM,EAAAyL,QAAA;UACLzK,QAAQ,EAAE,IAAI,CAACsB,KAAK,CAACtB,QAAQ,CAACuE,IAAI,CAAC2E,IAAI,CAAC,IAAI,EAAG;UAC/CwB,YAAY,EAAGC,IAAI,IAAK;YACtB,MAAM;cAAE3K;YAAS,CAAC,GAAG,IAAI,CAACsB,KAAK;YAC/B,IAAI,CAACX,QAAQ,CAAC;cACZX,QAAQ,EAAAgC,aAAA,CAAAA,aAAA,KAAOhC,QAAQ;gBAAE,CAACuE,IAAI,CAAC2E,IAAI,GAAGyB;cAAI;YAC5C,CAAC,CAAC;UACJ,CAAE;UACFC,cAAc,EAAE;YACdC,gBAAgB,EAAE,IAAI;YACtBC,cAAc,EAAEpL,KAAK,KAAK;UAC5B,CAAE;UACF2K,GAAG,EAAET;QAAQ,GACTjK,KAAK,GAER,CAAA4K,YAAA,GAAAhG,IAAI,CAAC5E,KAAK,cAAA4K,YAAA,eAAVA,YAAA,CAAYQ,QAAQ,IAAAP,YAAA,GACjBjG,IAAI,CAAC5E,KAAK,cAAA6K,YAAA,uBAAVA,YAAA,CAAYO,QAAQ,GACpBrL,KAAK,KAAK,IAAI,iBAAItB,KAAA,CAAAwK,aAAA,CAAC7J,MAAM,QAAC,0BAAY,CACpC,CACC,CACR,CAAC;MAEV;IACF,CAAC,CACE,CAAC;EAEV;EACAiM,MAAMA,CAAA,EAAG;IACP,MAAM;MACJtC,KAAK,GAAG,EAAE;MACV/I,KAAK,GAAG,CAAC,CAAC;MACVsL,MAAM,GAAG,IAAI;MACbF,QAAQ;MACR/J,QAAQ,GAAG,MAAM;MACjBkK,KAAK,GAAG,EAAE;MACVC,UAAU,EAAEC,iBAAiB,GAAG,CAAC,CAAC;MAClCC,WAAW,EAAEC;IACf,CAAC,GAAG,IAAI,CAAC3L,KAAK;IACd,MAAM;MAAEF,OAAO;MAAEC;IAAM,CAAC,GAAG,IAAI,CAAC4B,KAAK;IACrC,IAAIiK,WAAW,GAAG,EAAS;IAC3B,IAAIC,SAAS,GAAG,EAAS;IACzB,IAAI1G,KAAK,CAACC,OAAO,CAACgG,QAAQ,CAAC,EAAE;MAC3BA,QAAQ,CAACzG,GAAG,CAAEC,IAAS,IAAK;QAC1B,IAAIO,KAAK,CAACC,OAAO,CAACR,IAAI,CAAC,EAAE;UACvBA,IAAI,CAACD,GAAG,CAAEmH,KAAK,IAAK;YAAA,IAAAC,YAAA;YAClB,IAAI,CAAAD,KAAK,aAALA,KAAK,gBAAAC,YAAA,GAALD,KAAK,CAAE9L,KAAK,cAAA+L,YAAA,uBAAZA,YAAA,CAAcC,QAAQ,KAAI,UAAU,EAAE;cACxC,OAAOpH,IAAI,IAAI,QAAQ,IAAIiH,SAAS,CAAC/D,IAAI,CAACgE,KAAK,CAAC;YAClD;UACF,CAAC,CAAC;QACJ,CAAC,MAAM;UACL,OAAOlH,IAAI,IAAI,QAAQ,IAAIgH,WAAW,CAAC9D,IAAI,CAAClD,IAAI,CAAC;QACnD;MACF,CAAC,CAAC;IACJ,CAAC,MAAM,IAAIwG,QAAQ,EAAE;MACnB,MAAM;QAAEpL;MAAW,CAAC,GAAGoL,QAAQ;MAC/B,IAAI,CAAApL,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEgM,QAAQ,KAAI,UAAU,EAAE;QACjC,OAAOZ,QAAQ,IAAI,QAAQ,IAAIS,SAAS,CAAC/D,IAAI,CAACsD,QAAQ,CAAC;MACzD,CAAC,MAAM;QACL,OAAOA,QAAQ,IAAI,QAAQ,IAAIQ,WAAW,CAAC9D,IAAI,CAACsD,QAAQ,CAAC;MAC3D;IACF;IACA,IAAII,UAAU,GAAAnJ,aAAA;MACZkJ,KAAK,EAAExL,KAAK,GAAGwL,KAAK;MACpBU,IAAI,EAAE,IAAI,CAAC5E,QAAQ,CAACuC,IAAI,CAAC,IAAI,CAAC;MAC9BsC,QAAQ,EAAE,IAAI,CAACvI,IAAI,CAACiG,IAAI,CAAC,IAAI,CAAC;MAC9BuC,aAAa,EAAE;QAAErM,OAAO,EAAEA;MAAQ,CAAC;MACnCsM,QAAQ,EAAE,IAAI;MACd9L,KAAK,EAAE,MAAM;MACb+L,YAAY,EAAET;IAAW,GACtBH,iBAAiB,CACd;IAER,IAAIC,WAAW,GAAArJ,aAAA;MACb4J,IAAI,EAAE,IAAI,CAAC5E,QAAQ,CAACuC,IAAI,CAAC,IAAI,CAAC;MAC9B0C,OAAO,EAAE,IAAI,CAAC3I,IAAI,CAACiG,IAAI,CAAC,IAAI,CAAC;MAC7BtJ,KAAK,EAAE,MAAM;MACb+L,YAAY,EAAET;IAAW,GACtBD,kBAAkB,CACf;IACR,IAAI5L,KAAK,IAAI,IAAI,EAAE;MACjByL,UAAU,CAACF,MAAM,GAAG,IAAI;MACxBI,WAAW,CAACJ,MAAM,GAAG,IAAI;IAC3B;IACA,IAAI,CAACtG,eAAe,GAAG,CAAC,CAAC;IACzB,IAAI,CAACO,UAAU,GAAG,CAAC,CAAC;IACpB,IAAI,CAACd,UAAU,GAAG,EAAE;IACpB,IAAI8H,WAAW,GAAG,CAAC,CAAQ;IAC3B,IAAIC,UAAU,GAAG,EAAS;IAC1B,IAAIC,UAAU,GAAG,EAAS;IAC1B,IAAIC,SAAS,GAAG,EAAS;IACzB;IACA3D,KAAK,CAACpE,GAAG,CAAEC,IAAS,IAAK;MACvB,IAAIA,IAAI,CAAC5B,IAAI,KAAK,KAAK,EAAE;QACvB0J,SAAS,CAAC5E,IAAI,CAAClD,IAAI,CAAC;QACpB,IAAIA,IAAI,CAAC+H,SAAS,IAAIH,UAAU,CAACI,OAAO,CAAChI,IAAI,CAAC+H,SAAS,CAAC,GAAG,CAAC,EAAE;UAC5DH,UAAU,CAAC1E,IAAI,CAAClD,IAAI,CAAC+H,SAAS,CAAC;QACjC,CAAC,MAAM,IAAI,CAAC/H,IAAI,CAAC+H,SAAS,EAAE;UAC1BF,UAAU,CAAC3E,IAAI,CAAClD,IAAI,CAAC;QACvB;MACF;IACF,CAAC,CAAC;IACF,IAAI4H,UAAU,CAACrJ,MAAM,GAAG,CAAC,EAAE;MACzBqJ,UAAU,CAAC7H,GAAG,CAAEC,IAAS,IAAK;QAC5B,IAAIiI,UAAU,GAAG,EAAS;QAC1BH,SAAS,CAAC/H,GAAG,CAAEmI,IAAS,IAAK;UAC3B,IAAIA,IAAI,CAACH,SAAS,IAAI/H,IAAI,EAAE;YAC1BiI,UAAU,CAAC/E,IAAI,CAACgF,IAAI,CAAC;UACvB;QACF,CAAC,CAAC;QACFP,WAAW,CAAC3H,IAAI,CAAC,GAAGiI,UAAU;MAChC,CAAC,CAAC;MACF,IAAIJ,UAAU,CAACtJ,MAAM,GAAG,CAAC,EAAE;QACzBoJ,WAAW,CAAC,aAAa,CAAC,GAAGE,UAAU;MACzC;IACF;IACA,MAAMM,mBAAmB,GAAGA,CAACC,IAAI,EAAEhN,KAAK,KAAK;MAC3C,MAAM;UAAEgM;QAAwB,CAAC,GAAGhM,KAAK;QAApBiN,UAAU,GAAA9F,wBAAA,CAAKnH,KAAK,EAAAkN,UAAA;MACzC,oBAAOzO,KAAK,CAACwK,aAAa,CAAC+D,IAAI,CAAC9I,IAAI,EAAE+I,UAAU,CAAC;IACnD,CAAC;IACD;IACA,oBACExO,KAAA,CAAAwK,aAAA,CAACtK,IAAI,EAAAmM,QAAA;MACHJ,GAAG,EAAE,IAAI,CAACxI,OAAQ;MAClBiL,SAAS,EAAE,IAAI,CAACnN,KAAK,CAACqB,QAAQ,IAAI,MAAM,GAAG,IAAI,GAAG,IAAI,CAACrB,KAAK,CAACqB,QAAS;MACtEmK,UAAU,EAAAnJ,aAAA,KAAOmJ,UAAU,CAAG;MAC9BE,WAAW,EAAArJ,aAAA,KAAOqJ,WAAW;MAC7B;MACA;MAAA;MACA0B,cAAc,EAAEA,CAACC,aAAa,EAAEC,SAAS,KAAK;QAC5C,MAAM;UAAEC;QAAa,CAAC,GAAG,IAAI,CAACvN,KAAK;QACnCuN,YAAY,IAAIA,YAAY,CAACF,aAAa,EAAEC,SAAS,CAAC;MACxD,CAAE;MACFE,WAAW,EAAE,IAAI,CAACxN,KAAK,CAACwN;IAAY,GAChCxN,KAAK,gBAETvB,KAAA,CAAAwK,aAAA;MAAKwE,SAAS,EAAC;IAAe,GAC3BjB,UAAU,CAACrJ,MAAM,IAAI,CAAC,GACrB,IAAI,CAACnD,KAAK,CAACqB,QAAQ,KAAK,MAAM,GAC5B,IAAI,CAACyH,UAAU,CAAC4D,SAAS,EAAE3M,KAAK,CAAC,gBAEjCtB,KAAA,CAAAwK,aAAA;MAAKwE,SAAS,EAAC;IAAe,GAC3B,IAAI,CAAC3E,UAAU,CAAC4D,SAAS,EAAE3M,KAAK,CAC9B,CACN,GAED2N,MAAM,CAACC,IAAI,CAACpB,WAAW,CAAC,CAAC5H,GAAG,CAAEM,GAAG,IAAK;MACpC,oBACExG,KAAA,CAAAwK,aAAA;QAAKhE,GAAG,EAAEA,GAAI;QAACwI,SAAS,EAAC;MAAe,GACrCxI,GAAG,IAAI,aAAa,iBACnBxG,KAAA,CAAAwK,aAAA;QAAKwE,SAAS,EAAC;MAAgB,GAAExI,GAAS,CAC3C,eACDxG,KAAA,CAAAwK,aAAA;QAAKwE,SAAS,EAAC;MAAkB,GAC9B,IAAI,CAAC3E,UAAU,CAACyD,WAAW,CAACtH,GAAG,CAAC,EAAElF,KAAK,CACrC,CACF,CAAC;IAEV,CAAC,CACF,EAEA8L,SAAS,CAAC1I,MAAM,GAAG,CAAC,IACnB0I,SAAS,CAAClH,GAAG,CAAC,CAACqI,IAAI,EAAE7D,KAAK,KAAK;MAC7B,oBACE1K,KAAA,CAAAwK,aAAA;QAAKwE,SAAS,EAAC,eAAe;QAACxI,GAAG,EAAEkE;MAAM,GACvC4D,mBAAmB,CAACC,IAAI,EAAA3K,aAAA,KAAO2K,IAAI,CAAChN,KAAK,CAAE,CACzC,CAAC;IAEV,CAAC,CAAC,EACHqB,QAAQ,KAAK,MAAM,IAAIiK,MAAM,IAAI,IAAI,iBACpC7M,KAAA,CAAAwK,aAAA;MACEwE,SAAS,EAAEnO,GAAG,CACZ,IAAI,CAACU,KAAK,CAAC4N,eAAe,EAC1B,sBAAsB,EACtB,CAAC,IAAI,CAACjM,KAAK,CAACrB,KAAK,GAAG,4BAA4B,GAAG,EAAE,CACvD;IAAE,gBAEF7B,KAAA,CAAAwK,aAAA,CAAC7J,MAAM,EAAA0L,QAAA,KACD,IAAI,CAAC9K,KAAK,CAAC6N,iBAAiB;MAChCC,OAAO,EAAEA,CAAA,KAAM;QACb,IAAI,IAAI,CAAC9N,KAAK,CAACkM,QAAQ,EAAE;UACvB,IAAI,CAAClM,KAAK,CAACkM,QAAQ,CAAC,CAAC;UACrB;QACF;QACA,IAAI,CAAClL,QAAQ,CAAC;UAAElB,OAAO,EAAE;QAAM,CAAC,CAAC;MACnC;IAAE,IACH,cAEO,CAAC,eACTrB,KAAA,CAAAwK,aAAA,CAAC7J,MAAM,EAAA0L,QAAA;MACL5G,IAAI,EAAC;IAAS,GACV,IAAI,CAAClE,KAAK,CAACmM,aAAa;MAC5B2B,OAAO,EAAEA,CAAA,KAAM;QACb,IAAI,CAACzG,QAAQ,CAAC,CAAC;MACjB,CAAE;MACFvH,OAAO,EAAE,IAAI,CAAC6B,KAAK,CAAC7B,OAAQ;MAC5B2N,SAAS,EAAE;IAA2B,IACvC,cAEO,CAAC,EACR7B,WAAW,CAACjH,GAAG,CAAC,CAACC,IAAS,EAAEuE,KAAU,KAAK;MAC1C,oBACE1K,KAAA,CAAAwK,aAAA;QAAKwE,SAAS,EAAE,0BAA2B;QAACxI,GAAG,EAAEkE;MAAM,GACpDvE,IACE,CAAC;IAEV,CAAC,CACE,CACN,EACAvD,QAAQ,KAAK,MAAM,IAAIiK,MAAM,KAAK,IAAI,IAAI,IAAI,CAACtL,KAAK,CAACsL,MACnD,CACD,CAAC;EAEX;AACF;AAEA,eAAe7L,QAAQ"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PureComponent","Form","getNode","message","Col","Row","isEmptyObj","getLocalStore","dayjs","lodash","Button","Upload","cls","NscRequest","convertStringToObj","FormPage","constructor","arguments","_defineProperty","createRef","loading","label","props","editType","editorFlag","value","dictNames","fileList","width","editId","ev","data","JSON","parse","_this","eventType","payload","close","setState","componentDidMount","window","addEventListener","listenMessage","formType","requestObject","detailUrl","get","params","id","state","xssFilter","autoPrefix","then","res","code","_this$formRef$current","formRef","current","setFieldsValue","_objectSpread","defaultValue","_this$formRef$current2","convertDefaultValue","componentWillUnmount","removeEventListener","Utils","funcs","pageRef","refs","refList","show","orgValue","editorflag","length","undefined","callBack","_this$formRef$current3","convertValue","showForm","afterRender","_this$formRef$current4","hide","_this$formRef$current5","onHideForm","hideForm","_this$formRef$current6","setLoading","setEditType","type","setEditId","getFormValue","_this$formRef$current7","formValue","getFieldsValue","cloneDeep","fileFormat","newFileList","map","item","getFileList","submitFlag","error","dateValueFormat","key","olddata","Array","isArray","format","rangerDate","dateFormat","e","newData","stringify","values","forEach","fileKey","value1","value2","setFormValue","_this$formRef$current8","newValue","doSubmit","formdata","_this$formRef$current9","submitUrl","submitParams","requestConfig","addUrl","editorUrl","addParams","editorParams","url","func","Function","converParams","console","otherParams","_objectWithoutProperties","_excluded","onSubmit","noUndefined","msg","success","setTimeout","obj","fileId","fileName","status","push","_this$formRef$current10","valid","validateFields","returnData","catch","errorInfo","valueChange","_ref","valueOption","dictName","newNames","onChange","eventOption","valueStr","selfFunc","renderForm","forms","newValid","createElement","gutter","index","_item$props","itemProps","valueFormat","name","split","allowChars","placeholder","concat","bind","dataType","disabled","rules","required","itemRef","_item$props2","span","style","display","Item","componentName","noStyle","formRender","ref","_item$props3","_item$props4","_item$props5","_extends","onListChange","list","showUploadList","showDownloadIcon","showRemoveIcon","children","render","footer","title","modalProps","defaultModalProps","drawerProps","defaultDrawerProps","selfButtons","selfPanes","child","_child$props","pageType","_item$props6","onOk","onCancel","okButtonProps","centered","footerButton","onClose","newFormsObj","formGroups","otherGrups","showForms","groupName","indexOf","groupForms","form","PaneWithoutPageType","Pane","cleanProps","_excluded2","showModel","onValuesChange","changedValues","allValues","onFormChange","changeValid","className","Object","keys","footerClassName","cancelButtonProps","onClick"],"sources":["../../../src/components/page/FormPage/index.tsx"],"sourcesContent":["import React, { PureComponent, ReactNode } from \"react\";\r\nimport Form from \"../../base/form\";\r\nimport { getLess, getNode } from \"../../utils\";\r\nimport message from \"../../base/message\";\r\nimport Col from \"../../base/grid/Col\";\r\nimport Row from \"../../base/grid/Row\";\r\nimport { isEmptyObj, getLocalStore } from \"@bj-nsc/functions\";\r\nimport dayjs from \"dayjs\";\r\nimport \"./index.module.less\";\r\nimport lodash from \"lodash\";\r\nimport Button from \"../../base/button\";\r\nimport Upload from \"../../base/upload\";\r\nimport cls from \"classnames\";\r\nimport { IFormProps } from \"src/components/base/form/Form\";\r\nimport NscRequest from \"nsc-request\";\r\nimport omit from \"omit.js\";\r\nimport CompoundedSpace from \"antd/es/space\";\r\nimport { convertStringToObj } from \"../SettingUtil/utils\";\r\nexport interface FormPageProps {\r\n forms?: Array<any>; //是否显示操作列\r\n submitUrl?: string;\r\n onSubmit?: (value?: any, label?: any) => void;\r\n footerClassName?: any;\r\n okButtonProps?: any;\r\n cancelButtonProps?: any;\r\n footer?: ReactNode | boolean;\r\n children?: React.ReactNode;\r\n onFormChange?: (value?: any, allValue?: any) => void;\r\n submitParams?: any; //添加参数,默认mothod:post, 参数通过data传递\r\n funcs?: any;\r\n props?: IFormProps;\r\n requestObject?: {\r\n addUrl?: string;\r\n editorUrl?: string;\r\n addParams?: any;\r\n editorParams?: any;\r\n detailUrl?: string;\r\n };\r\n requestConfig?: any;\r\n footerWidth?: boolean;\r\n editType?: \"新增\" | \"编辑\" | \"查看\";\r\n title?: string;\r\n editId?: string;\r\n modalProps?: any;\r\n drawerProps?: any;\r\n [propsName: string]: any;\r\n}\r\nclass FormPage extends PureComponent<FormPageProps, any> {\r\n formRef = React.createRef<any>();\r\n state = {\r\n loading: false,\r\n label: this.props.editType || \"\",\r\n editorFlag: true,\r\n value: {} as any,\r\n dictNames: {} as any,\r\n fileList: {} as any,\r\n width: getLocalStore(\"nsc-home-menuCollsape\") || false,\r\n editId: this.props.editId || \"\",\r\n };\r\n valid: any = [];\r\n dateValueFormat = {} as any;\r\n dateFormat = {} as any;\r\n fileFormat = [] as any;\r\n rangerDate = {} as any;\r\n refList = {} as any;\r\n submitFlag = true;\r\n componentDidMount(): void {\r\n window.addEventListener(\"message\", this.listenMessage);\r\n const {\r\n formType = \"page\",\r\n requestObject = {},\r\n editType = \"新增\",\r\n } = this.props;\r\n if (formType == \"page\") {\r\n if (requestObject.detailUrl && editType !== \"新增\") {\r\n NscRequest.get(requestObject.detailUrl, {\r\n params: { id: this.state.editId },\r\n xssFilter: false,\r\n autoPrefix: true,\r\n }).then((res) => {\r\n if (res.code == 200) {\r\n this.formRef.current?.setFieldsValue({ ...res.data });\r\n }\r\n });\r\n } else if (editType == \"新增\") {\r\n if (this.props.defaultValue) {\r\n let defaultValue = this.convertDefaultValue();\r\n this.formRef.current?.setFieldsValue(defaultValue || {});\r\n }\r\n }\r\n }\r\n }\r\n componentWillUnmount() {\r\n window.removeEventListener(\"message\", this.listenMessage);\r\n }\r\n listenMessage = (ev) => {\r\n const data = typeof ev.data === \"string\" ? JSON.parse(ev.data) : ev.data;\r\n let _this = this;\r\n if (data.eventType == \"menuCollsape\") {\r\n const { payload } = data;\r\n if (payload.close === true || payload.close === false) {\r\n _this.setState({ width: payload.close });\r\n }\r\n }\r\n };\r\n convertDefaultValue() {\r\n const { defaultValue } = this.props;\r\n return convertStringToObj(defaultValue, this.props.Utils || {}, {\r\n funcs: this.props.funcs,\r\n pageRef: this.props.pageRef,\r\n formRef: this.formRef,\r\n refs: this.refList,\r\n });\r\n }\r\n //表单显示\r\n show(orgValue?: any, editorflag = \"add\", callBack?: any) {\r\n let label = \"新增\";\r\n if (orgValue && editorflag == \"editor\") {\r\n label = \"编辑\";\r\n } else if (orgValue && (editorflag == \"detail\" || editorflag == \"search\")) {\r\n label = \"查看\";\r\n }\r\n if (orgValue) {\r\n this.setState(\r\n {\r\n label: label,\r\n value: orgValue,\r\n editId: orgValue.id,\r\n },\r\n () => {\r\n let value = this.convertValue(orgValue, label);\r\n //处理文件数据\r\n this.formRef.current?.showForm(value, {\r\n afterRender: () => {\r\n callBack && callBack();\r\n },\r\n });\r\n }\r\n );\r\n } else {\r\n this.setState(\r\n {\r\n label: label,\r\n },\r\n () => {\r\n let defaultValue = this.props.defaultValue\r\n ? this.convertDefaultValue()\r\n : {};\r\n this.formRef.current?.showForm(defaultValue || {}, {\r\n afterRender: () => {\r\n callBack && callBack();\r\n },\r\n });\r\n }\r\n );\r\n }\r\n }\r\n hide(hide = true) {\r\n const { onHideForm } = this.props;\r\n if (onHideForm) {\r\n onHideForm && onHideForm();\r\n return;\r\n }\r\n this.setState({ loading: false, fileList: {} });\r\n hide && this.formRef.current?.hideForm();\r\n }\r\n hideForm() {\r\n this.setState({ loading: false, fileList: {} });\r\n this.formRef.current?.hideForm();\r\n }\r\n showForm(orgValue?: any, editorflag = \"add\", callBack?: any) {\r\n this.show(orgValue, editorflag, callBack);\r\n }\r\n setLoading(loading: boolean) {\r\n this.setState({ loading: loading });\r\n }\r\n setEditType(type) {\r\n this.setState({\r\n label: type,\r\n });\r\n }\r\n setEditId(id) {\r\n this.setState({\r\n editId: id,\r\n });\r\n }\r\n getFormValue() {\r\n const { label, value, dictNames, fileList } = this.state;\r\n const formValue = this.formRef.current?.getFieldsValue();\r\n let data = lodash.cloneDeep({ ...formValue, ...dictNames });\r\n if (this.fileFormat.length > 0) {\r\n let newFileList = {} as any;\r\n this.fileFormat.map((item) => {\r\n if (fileList[item].length == 0) {\r\n newFileList[item] = null;\r\n } else {\r\n newFileList[item] = this.getFileList(fileList[item] || []);\r\n }\r\n });\r\n data = { ...data, ...newFileList };\r\n }\r\n if (!this.submitFlag) {\r\n message.error(\"请等待所有文件上传完成!\");\r\n return;\r\n }\r\n if (!isEmptyObj(this.dateValueFormat)) {\r\n for (let key in this.dateValueFormat) {\r\n let olddata = data[key];\r\n if (olddata) {\r\n if (Array.isArray(olddata)) {\r\n data[key] = [\r\n dayjs(olddata[0]).format(this.dateValueFormat[key]),\r\n dayjs(olddata[1]).format(this.dateValueFormat[key]),\r\n ];\r\n if (this.rangerDate[key]) {\r\n try {\r\n data[this.rangerDate[key][0]] = dayjs(olddata[0]).format(\r\n this.dateFormat[key]\r\n );\r\n data[this.rangerDate[key][1]] = dayjs(olddata[1]).format(\r\n this.dateFormat[key]\r\n );\r\n delete data[key];\r\n } catch (e) {}\r\n }\r\n } else {\r\n data[key] = dayjs(olddata).format(this.dateValueFormat[key]);\r\n }\r\n }\r\n }\r\n }\r\n if (label == \"编辑\") {\r\n data = { ...data, id: value?.id || this.state.editId };\r\n }\r\n let newData = JSON.parse(JSON.stringify(data));\r\n return newData;\r\n }\r\n convertValue(value, type) {\r\n let values = lodash.cloneDeep(value);\r\n if (this.fileFormat.length > 0) {\r\n let fileList = {} as any;\r\n this.fileFormat.forEach((fileKey) => {\r\n let olddata = values[fileKey];\r\n if (olddata && Array.isArray(olddata)) {\r\n fileList[fileKey] = this.getFileList(olddata || [], type);\r\n } else {\r\n fileList[fileKey] = [];\r\n }\r\n });\r\n this.setState({ fileList: fileList });\r\n }\r\n //处理日期格式数据\r\n if (!isEmptyObj(this.dateFormat)) {\r\n for (let key in this.dateFormat) {\r\n let olddata = values[key];\r\n if (olddata) {\r\n if (Array.isArray(olddata)) {\r\n values[key] = [\r\n dayjs(olddata[0], this.dateFormat[key]),\r\n dayjs(olddata[1], this.dateFormat[key]),\r\n ];\r\n } else {\r\n values[key] = dayjs(olddata, this.dateFormat[key]);\r\n }\r\n } else {\r\n if (this.rangerDate[key]) {\r\n let value1 = values[this.rangerDate[key][0]];\r\n let value2 = values[this.rangerDate[key][1]];\r\n if (value1 && value2) {\r\n values[key] = [\r\n dayjs(value1, this.dateFormat[key]),\r\n dayjs(value2, this.dateFormat[key]),\r\n ];\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return values;\r\n }\r\n setFormValue(value, type = \"查看\") {\r\n const newValue = this.convertValue(value, type);\r\n this.formRef.current?.setFieldsValue(newValue);\r\n }\r\n doSubmit(formdata, label) {\r\n const {\r\n submitUrl,\r\n submitParams = {},\r\n callBack,\r\n requestObject = {},\r\n requestConfig = {},\r\n } = this.props;\r\n const { addUrl, editorUrl, addParams, editorParams } = requestObject;\r\n let url = submitUrl;\r\n let params: any = {};\r\n if (!label || label == \"新增\") {\r\n url = addUrl ? addUrl : submitUrl;\r\n if (addParams && typeof addParams == \"string\") {\r\n const Utils = this.props.Utils || {};\r\n let func = new Function(\"Utils\", addParams);\r\n let converParams = func(Utils);\r\n params = converParams;\r\n } else {\r\n params = addParams ? addParams : submitParams;\r\n }\r\n } else if (label == \"编辑\") {\r\n url = editorUrl ? editorUrl : submitUrl;\r\n if (editorParams && typeof editorParams == \"string\") {\r\n const Utils = this.props.Utils || {};\r\n let func = new Function(\"Utils\", editorParams);\r\n let converParams = func(Utils);\r\n params = converParams;\r\n } else {\r\n params = editorParams ? editorParams : submitParams;\r\n }\r\n }\r\n if (!url) {\r\n console.error(\"配置Url不能为空!\");\r\n return;\r\n }\r\n const { data = {}, ...otherParams } = params;\r\n this.formRef.current?.onSubmit(\r\n url,\r\n {\r\n data: { ...formdata, ...data },\r\n noUndefined: label == \"编辑\",\r\n ...requestConfig,\r\n ...otherParams,\r\n },\r\n (res: any) => {\r\n const { code, msg } = res;\r\n this.setState({ loading: false });\r\n if (code === 200) {\r\n message.success(label + \"成功\");\r\n setTimeout(() => {\r\n this.hide(true);\r\n callBack && callBack();\r\n }, 500);\r\n\r\n return;\r\n }\r\n }\r\n );\r\n }\r\n getFileList(data, label = \"新增\") {\r\n this.submitFlag = true;\r\n let fileList = [] as any;\r\n if (data && data.length > 0) {\r\n data.map((item) => {\r\n let obj = {\r\n fileId: item.fileId,\r\n fileName: item.fileName,\r\n } as any;\r\n if (label == \"查看\") {\r\n obj.status = \"done\";\r\n }\r\n if (label !== \"查看\" && item.status !== \"done\") {\r\n this.submitFlag = false;\r\n }\r\n fileList.push(obj);\r\n });\r\n }\r\n return fileList;\r\n }\r\n\r\n onSubmit() {\r\n const { onSubmit } = this.props;\r\n const { label, value, dictNames, fileList } = this.state;\r\n let valid = this.valid;\r\n this.formRef.current\r\n ?.validateFields()\r\n .then(() => {\r\n let data = this.getFormValue();\r\n this.setState({ loading: true });\r\n if (onSubmit) {\r\n let returnData = lodash.cloneDeep(data);\r\n onSubmit && onSubmit(returnData, label);\r\n return;\r\n }\r\n this.doSubmit(data, label);\r\n })\r\n .catch((errorInfo: any) => {});\r\n }\r\n valueChange({ type, dictName }, props, value, valueOption, data) {\r\n if (valueOption) {\r\n if (dictName) {\r\n const { dictNames } = this.state;\r\n const newNames = { ...dictNames } as any;\r\n newNames[dictName] = valueOption.label;\r\n this.setState({\r\n dictNames: newNames,\r\n });\r\n }\r\n }\r\n if (props.onChange) {\r\n if (typeof props.onChange == \"function\") {\r\n props.onChange(value, valueOption, data);\r\n } else if (typeof props.onChange == \"string\") {\r\n const eventOption = {\r\n value,\r\n data,\r\n formRef: this.formRef,\r\n funcs: this.props.funcs || {},\r\n refs: this.refList,\r\n pageRef: this.props.pageRef,\r\n } as any;\r\n const Utils = this.props.Utils || {};\r\n if (type == \"Select\") {\r\n eventOption.valueOption = valueOption;\r\n eventOption.data = data;\r\n } else if (type == \"DatePicker\" || type == \"RangePicker\") {\r\n eventOption.valueStr = valueOption;\r\n }\r\n const selfFunc = new Function(\"eventOption\", \"Utils\", props.onChange);\r\n selfFunc(eventOption, Utils);\r\n }\r\n }\r\n }\r\n\r\n renderForm(forms, label) {\r\n const newValid: any[] = [];\r\n return (\r\n <Row gutter={24}>\r\n {forms.map((item: any, index: number) => {\r\n const itemProps = item.props || {};\r\n if (itemProps.format || itemProps.valueFormat) {\r\n this.dateValueFormat[item.name] =\r\n itemProps.format || itemProps.valueFormat;\r\n }\r\n if (itemProps.format) {\r\n this.dateFormat[item.name] = itemProps.format;\r\n }\r\n if (item.type == \"RangePicker\" && item.name.split(\",\").length > 1) {\r\n this.rangerDate[item.name] = item.name.split(\",\");\r\n }\r\n let allowChars = item.props?.allowChars || false;\r\n let props = {\r\n placeholder: `请输入${item.label}`,\r\n ...item.props,\r\n onChange: this.valueChange.bind(\r\n this,\r\n {\r\n type: item.type,\r\n dictName: item.dictName,\r\n },\r\n { ...item.props }\r\n ),\r\n };\r\n if (!item.type || item.type == \"Input\") {\r\n props.allowChars = true; //form.item 使用input组件allowChars必须默认true,不然输入特殊字符拿到的值不对\r\n }\r\n delete props.valueFormat;\r\n delete props.format;\r\n delete props.dataType;\r\n if (label == \"查看\") {\r\n props.disabled = true;\r\n props.placeholder = \"\";\r\n }\r\n if ((item.rules && item.rules.length > 0) || item.required === true) {\r\n newValid.push(item.name);\r\n }\r\n if (index + 1 === forms.length) {\r\n this.valid = newValid;\r\n }\r\n const itemRef: any = React.createRef<any>();\r\n this.refList[item.name] = itemRef;\r\n if (item.type !== \"Upload\") {\r\n return (\r\n <Col\r\n span={item.span || 12}\r\n key={index}\r\n style={{ display: item.hide ? \"none\" : \"block\" }}\r\n >\r\n <Form.Item\r\n label={item.label}\r\n name={item.name}\r\n rules={item.rules}\r\n allowChars={allowChars}\r\n componentName={item.type ? item.type : \"Input\"}\r\n required={item.required}\r\n type={item.props?.type}\r\n noStyle={item.noStyle || false}\r\n >\r\n {item.formRender\r\n ? item.formRender(props)\r\n : getNode(item.type, {\r\n ref: itemRef,\r\n ...props,\r\n })}\r\n </Form.Item>\r\n </Col>\r\n );\r\n } else {\r\n this.fileFormat.push(item.name);\r\n return (\r\n <Col\r\n span={item.span || 12}\r\n key={index}\r\n style={{ display: item.hide ? \"none\" : \"block\" }}\r\n >\r\n <Form.Item\r\n label={item.label}\r\n name={item.name}\r\n rules={item.rules}\r\n allowChars={allowChars}\r\n type={item.props?.type}\r\n required={item.required}\r\n >\r\n <Upload\r\n fileList={this.state.fileList[item.name] || []}\r\n onListChange={(list) => {\r\n const { fileList } = this.state;\r\n this.setState({\r\n fileList: { ...fileList, [item.name]: list },\r\n });\r\n }}\r\n showUploadList={{\r\n showDownloadIcon: true,\r\n showRemoveIcon: label !== \"查看\",\r\n }}\r\n ref={itemRef}\r\n {...props}\r\n >\r\n {item.props?.children\r\n ? item.props?.children\r\n : label !== \"查看\" && <Button>上传文件</Button>}\r\n </Upload>\r\n </Form.Item>\r\n </Col>\r\n );\r\n }\r\n })}\r\n </Row>\r\n );\r\n }\r\n render() {\r\n const {\r\n forms = [],\r\n props = {},\r\n footer = true,\r\n children,\r\n formType = \"page\",\r\n title = \"\",\r\n modalProps: defaultModalProps = {},\r\n drawerProps: defaultDrawerProps,\r\n } = this.props;\r\n const { loading, label } = this.state;\r\n let selfButtons = [] as any;\r\n let selfPanes = [] as any;\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n if (child?.props?.pageType == \"formPane\") {\r\n typeof item == \"object\" && selfPanes.push(child);\r\n } else {\r\n typeof item == \"object\" && selfButtons.push(child);\r\n }\r\n });\r\n } else {\r\n if (item?.props?.pageType == \"formPane\") {\r\n typeof item == \"object\" && selfPanes.push(item);\r\n } else {\r\n typeof item == \"object\" && selfButtons.push(item);\r\n }\r\n }\r\n });\r\n } else if (children) {\r\n const { props }: any = children;\r\n if (props?.pageType == \"formPane\") {\r\n typeof children == \"object\" && selfPanes.push(children);\r\n } else {\r\n typeof children == \"object\" && selfButtons.push(children);\r\n }\r\n }\r\n let modalProps = {\r\n title: label + title,\r\n onOk: this.onSubmit.bind(this),\r\n onCancel: this.hide.bind(this),\r\n okButtonProps: { loading: loading },\r\n centered: true,\r\n width: \"50vw\",\r\n footerButton: selfButtons,\r\n ...defaultModalProps,\r\n } as any;\r\n\r\n let drawerProps = {\r\n onOk: this.onSubmit.bind(this),\r\n onClose: this.hide.bind(this),\r\n width: \"50vw\",\r\n footerButton: selfButtons,\r\n ...defaultDrawerProps,\r\n } as any;\r\n if (label == \"查看\") {\r\n modalProps.footer = null;\r\n drawerProps.footer = null;\r\n }\r\n this.dateValueFormat = {};\r\n this.dateFormat = {};\r\n this.fileFormat = [];\r\n let newFormsObj = {} as any;\r\n let formGroups = [] as any;\r\n let otherGrups = [] as any;\r\n let showForms = [] as any;\r\n //处理表单数据\r\n forms.map((item: any) => {\r\n if (item.show !== false) {\r\n showForms.push(item);\r\n if (item.groupName && formGroups.indexOf(item.groupName) < 0) {\r\n formGroups.push(item.groupName);\r\n } else if (!item.groupName) {\r\n otherGrups.push(item);\r\n }\r\n }\r\n });\r\n if (formGroups.length > 0) {\r\n formGroups.map((item: any) => {\r\n let groupForms = [] as any;\r\n showForms.map((form: any) => {\r\n if (form.groupName == item) {\r\n groupForms.push(form);\r\n }\r\n });\r\n newFormsObj[item] = groupForms;\r\n });\r\n if (otherGrups.length > 0) {\r\n newFormsObj[\"noGroupName\"] = otherGrups;\r\n }\r\n }\r\n const PaneWithoutPageType = (Pane, props) => {\r\n const { pageType, ...cleanProps } = props;\r\n return React.createElement(Pane.type, cleanProps);\r\n };\r\n //自定义按钮\r\n return (\r\n <Form\r\n ref={this.formRef}\r\n showModel={this.props.formType == \"page\" ? null : this.props.formType}\r\n modalProps={{ ...modalProps }}\r\n drawerProps={{ ...drawerProps }}\r\n // labelCol={{ flex: \"100px\" }}\r\n // wrapperCol={{ flex: \"15vw\" }}\r\n onValuesChange={(changedValues, allValues) => {\r\n const { onFormChange } = this.props;\r\n onFormChange && onFormChange(changedValues, allValues);\r\n }}\r\n changeValid={this.props.changeValid}\r\n {...props}\r\n >\r\n <div className=\"nsc-form-page\">\r\n {formGroups.length == 0 ? (\r\n this.props.formType !== \"page\" ? (\r\n this.renderForm(showForms, label)\r\n ) : (\r\n <div className=\"nsc-form-pane\">\r\n {this.renderForm(showForms, label)}\r\n </div>\r\n )\r\n ) : (\r\n Object.keys(newFormsObj).map((key) => {\r\n return (\r\n <div key={key} className=\"nsc-form-pane\">\r\n {key != \"noGroupName\" && (\r\n <div className=\"nsc-form-title\">{key}</div>\r\n )}\r\n <div className=\"nsc-form-content\">\r\n {this.renderForm(newFormsObj[key], label)}\r\n </div>\r\n </div>\r\n );\r\n })\r\n )}\r\n\r\n {selfPanes.length > 0 &&\r\n selfPanes.map((Pane, index) => {\r\n return (\r\n <div className=\"nsc-form-pane\" key={index}>\r\n {PaneWithoutPageType(Pane, { ...Pane.props })}\r\n </div>\r\n );\r\n })}\r\n {formType === \"page\" && footer == true && (\r\n <div\r\n className={cls(\r\n this.props.footerClassName,\r\n \"nsc-form-page-footer\",\r\n [this.state.width ? \"nsc-form-page-footer-width\" : \"\"]\r\n )}\r\n >\r\n <Button\r\n {...this.props.cancelButtonProps}\r\n onClick={() => {\r\n if (this.props.onCancel) {\r\n this.props.onCancel();\r\n return;\r\n }\r\n this.setState({ loading: false });\r\n }}\r\n >\r\n 取消\r\n </Button>\r\n <Button\r\n type=\"primary\"\r\n {...this.props.okButtonProps}\r\n onClick={() => {\r\n this.onSubmit();\r\n }}\r\n loading={this.state.loading}\r\n className={\"nsc-form-page-footer-btn\"}\r\n >\r\n 保存\r\n </Button>\r\n {selfButtons.map((item: any, index: any) => {\r\n return (\r\n <div className={\"nsc-form-page-footer-btn\"} key={index}>\r\n {item}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n )}\r\n {formType === \"page\" && footer !== true && this.props.footer}\r\n </div>\r\n </Form>\r\n );\r\n }\r\n}\r\n\r\nexport default FormPage;\r\n"],"mappings":"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"}
|
|
@@ -9,13 +9,8 @@ interface IProps {
|
|
|
9
9
|
published?: boolean;
|
|
10
10
|
instanceRef?: any;
|
|
11
11
|
onCallBacks?: {
|
|
12
|
-
treeSelectCallBack?: any;
|
|
13
|
-
onQueryCallBack?: any;
|
|
14
12
|
onSumbitCallBack?: any;
|
|
15
|
-
onDeleteCallBack?: any;
|
|
16
|
-
onEditorCallBack?: any;
|
|
17
13
|
onAddCallBack?: any;
|
|
18
|
-
onSearchCallBack?: any;
|
|
19
14
|
};
|
|
20
15
|
formProps?: any;
|
|
21
16
|
children?: any;
|
|
@@ -276,4 +276,4 @@ export default class SettingForm extends React.Component {
|
|
|
276
276
|
}
|
|
277
277
|
}
|
|
278
278
|
}
|
|
279
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTcGluIiwiUmVhY3QiLCJOc2NSZXF1ZXN0IiwiY2xzIiwiRm9ybVBhZ2UiLCJkZWZhdWx0Q29tRnVuY3MiLCJkZWZhdWx0VXRpbCIsInJlbmRlclNlbGZUb29sQnV0dG9uIiwiZ2V0UGFnZURhdGEiLCJwYXJhbXMiLCJzZXR0aW5nU291cmNlIiwidXJsIiwiZ2V0IiwieHNzRmlsdGVyIiwiYXV0b1ByZWZpeCIsInNldEZpZWxkRGlzYWJsZWQiLCJkYXRhIiwia2V5IiwiZGlzYWJsZWQiLCJmb21zIiwibmV3Rm9ybXMiLCJtYXAiLCJpdGVtIiwib2JqIiwiX29iamVjdFNwcmVhZCIsIm5hbWUiLCJpbmRleE9mIiwicHJvcHMiLCJwdXNoIiwic2V0RmllbGRWaXNpYmxlIiwidmlzaWJsZSIsInNob3ciLCJzZXRGaWVsZFByb3BzRGF0YSIsInByb3BzRGF0YSIsImZvcm1zIiwiZGF0YUluZGV4IiwiZGVmYXVsdFN0YXRlVmFsdWUiLCJmb3JtVHlwZSIsInBhZ2VMb2FkaW5nIiwic2VsZkJ1dHRvbiIsIm90aGVyUHJvcHMiLCJidXR0b25Mb2FkaW5nIiwiZ2V0Rm9ybVNldHRpbmciLCJKU09OIiwicGFyc2UiLCJzZWxmRm9ybUJ1dHRvbiIsImZvcm1TZXR0aW5nIiwiU2V0dGluZ0Zvcm0iLCJDb21wb25lbnQiLCJjb25zdHJ1Y3RvciIsImFyZ3VtZW50cyIsIl9kZWZpbmVQcm9wZXJ0eSIsImNyZWF0ZVJlZiIsInJlcyIsImNvbXBvbmVudERpZE1vdW50IiwiZ2V0RGF0YSIsImNvbXBvbmVudERpZFVwZGF0ZSIsInByZXZQcm9wcyIsInByZXZTdGF0ZSIsInNuYXBzaG90IiwiZm9ybUNvZGUiLCJzZXRTdGF0ZSIsInB1Ymxpc2hlZCIsIm1lbnVDb2RlIiwiY29kZSIsImlzUHVibGlzaGVkIiwidGhlbiIsImZvcm1Qcm9wcyIsIl9tZXNzYWdlIiwiZXJyb3IiLCJzaG93Rm9ybSIsInZhbHVlIiwiZWRpdG9yZmxhZyIsImNhbGxCYWNrIiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50IiwicGFnZVJlZiIsImN1cnJlbnQiLCJoaWRlRm9ybSIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDIiLCJyZW5kZXIiLCJfdGhpcyRwcm9wcyIsImNsYXNzTmFtZSIsImZ1bmNzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwic3RhdGUiLCJyZXF1ZXN0T2JqZWN0IiwiX3RoaXMiLCJkZWF1bHRGdW5jcyIsIm5ld0RhdGEiLCJzZXRCdXR0b25Mb2FkaW5nIiwibG9hZGluZyIsImNoaWxkcmVuIiwiY29kZUZvcm1CdXR0b25zIiwiQXJyYXkiLCJpc0FycmF5IiwiY2hpbGQiLCJyZW5kZXJGb3JtIiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzIiwiVXRpbHMiLCJyZWYiLCJlZGl0VHlwZSIsInR5cGUiLCJzdHlsZSIsIndpZHRoIiwiaGVpZ2h0Iiwic3Bpbm5pbmciXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9wYWdlL1NldHRpbmdGb3JtL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3J3YXJkUmVmLCB1c2VFZmZlY3QsIHVzZUltcGVyYXRpdmVIYW5kbGUsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBCYXNlUGFnZSwgeyBOU0NCYXNlQmFnZVByb3BzIH0gZnJvbSBcIi4uL0Jhc2VQYWdlXCI7XHJcbmltcG9ydCBTcGluIGZyb20gXCIuLi8uLi9iYXNlL3NwaW5cIjtcclxuaW1wb3J0IFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IE5zY1JlcXVlc3QgZnJvbSBcIm5zYy1yZXF1ZXN0XCI7XHJcbmltcG9ydCBjbHMgZnJvbSBcImNsYXNzbmFtZXNcIjtcclxuaW1wb3J0IHsgbWVzc2FnZSB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBGb3JtUGFnZSBmcm9tIFwiLi4vRm9ybVBhZ2VcIjtcclxuaW1wb3J0IHtcclxuICBkZWZhdWx0Q29tRnVuY3MsXHJcbiAgZGVmYXVsdFV0aWwsXHJcbiAgcmVuZGVyU2VsZlRvb2xCdXR0b24sXHJcbn0gZnJvbSBcIi4uL1NldHRpbmdVdGlsL3V0aWxzXCI7XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0UGFnZURhdGEgPSAocGFyYW1zOiBhbnksIHNldHRpbmdTb3VyY2UpID0+IHtcclxuICBsZXQgdXJsID1cclxuICAgIHNldHRpbmdTb3VyY2UgPT0gXCJ0YWJsZVwiXHJcbiAgICAgID8gXCIvanF1aWNrLXNldHRpbmcvc2V0dGluZy90YWJsZS9pbmZvL1wiXHJcbiAgICAgIDogXCIvanF1aWNrLXNldHRpbmcvc2V0dGluZy9mb3JtL2luZm9cIjtcclxuICByZXR1cm4gTnNjUmVxdWVzdC5nZXQodXJsLCB7XHJcbiAgICBwYXJhbXMsXHJcbiAgICB4c3NGaWx0ZXI6IGZhbHNlLFxyXG4gICAgYXV0b1ByZWZpeDogdHJ1ZSxcclxuICB9KTtcclxufTtcclxuXHJcbi8v6K6+572u6KGo5Y2V5a2X5q615Y+q6K+7XHJcbmNvbnN0IHNldEZpZWxkRGlzYWJsZWQgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCBkaXNhYmxlZCkgPT4ge1xyXG4gIGNvbnN0IGZvbXMgPSBbLi4uZGF0YV07XHJcbiAgbGV0IG5ld0Zvcm1zID0gW10gYXMgYW55O1xyXG4gIGZvbXMubWFwKChpdGVtKSA9PiB7XHJcbiAgICBsZXQgb2JqID0geyAuLi5pdGVtIH07XHJcbiAgICBpZiAoaXRlbS5uYW1lID09IGtleSB8fCBrZXkuaW5kZXhPZihpdGVtLm5hbWUpID4gLTEpIHtcclxuICAgICAgbGV0IHByb3BzID0gb2JqLnByb3BzID8geyAuLi5vYmoucHJvcHMgfSA6IHt9O1xyXG4gICAgICBwcm9wcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xyXG4gICAgICBvYmoucHJvcHMgPSBwcm9wcztcclxuICAgIH1cclxuICAgIG5ld0Zvcm1zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Rm9ybXM7XHJcbn07XHJcbi8v6K6+572u6KGo5Y2V5a2X5q616ZqQ6JePXHJcbmNvbnN0IHNldEZpZWxkVmlzaWJsZSA9IChkYXRhOiBBcnJheTxhbnk+LCBrZXksIHZpc2libGUpID0+IHtcclxuICBjb25zdCBmb21zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdGb3JtcyA9IFtdIGFzIGFueTtcclxuICBmb21zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgbGV0IG9iaiA9IHsgLi4uaXRlbSB9O1xyXG4gICAgaWYgKGl0ZW0ubmFtZSA9PSBrZXkgfHwga2V5LmluZGV4T2YoaXRlbS5uYW1lKSA+IC0xKSB7XHJcbiAgICAgIG9iai5zaG93ID0gdmlzaWJsZTtcclxuICAgIH1cclxuICAgIG5ld0Zvcm1zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Rm9ybXM7XHJcbn07XHJcblxyXG5jb25zdCBzZXRGaWVsZFByb3BzRGF0YSA9IChkYXRhOiBBcnJheTxhbnk+LCBrZXksIHByb3BzRGF0YSkgPT4ge1xyXG4gIGNvbnN0IGZvcm1zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdGb3JtcyA9IFtdIGFzIGFueTtcclxuICBmb3Jtcy5tYXAoKGl0ZW0pID0+IHtcclxuICAgIGxldCBvYmogPSB7IC4uLml0ZW0gfTtcclxuICAgIGlmIChpdGVtLmRhdGFJbmRleCA9PSBrZXkpIHtcclxuICAgICAgbGV0IHByb3BzID0gb2JqLnByb3BzID8geyAuLi5vYmoucHJvcHMgfSA6IHt9O1xyXG4gICAgICBwcm9wcy5kYXRhID0gcHJvcHNEYXRhO1xyXG4gICAgICBvYmoucHJvcHMgPSBwcm9wcztcclxuICAgIH1cclxuICAgIG5ld0Zvcm1zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Rm9ybXM7XHJcbn07XHJcbmludGVyZmFjZSBJUHJvcHMge1xyXG4gIGZvcm1Db2RlOiBzdHJpbmc7XHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG4gIG1lbnVDb2RlPzogc3RyaW5nO1xyXG4gIGZ1bmNzPzogYW55O1xyXG4gIHB1Ymxpc2hlZD86IGJvb2xlYW47XHJcbiAgaW5zdGFuY2VSZWY/OiBhbnk7XHJcbiAgb25DYWxsQmFja3M/OiB7XHJcbiAgICB0cmVlU2VsZWN0Q2FsbEJhY2s/OiBhbnk7IC8v5qCR54K55Ye75p+l6K+i5ZCO5Zue6LCDXHJcbiAgICBvblF1ZXJ5Q2FsbEJhY2s/OiBhbnk7IC8v5p+l6K+i5Zue6LCD77yM5p+l6K+i5pWw5o2u5ZCO5Zue6LCDXHJcbiAgICBvblN1bWJpdENhbGxCYWNrPzogYW55OyAvL+S/neWtmOWbnuiwg++8jOS/neWtmOaVsOaNruaIkOWKn+WQjuWbnuiwg1xyXG4gICAgb25EZWxldGVDYWxsQmFjaz86IGFueTsgLy/liKDpmaTmjInpkq7lm57osIPvvIzliKDpmaTmlbDmja7lkI7miafooYxcclxuICAgIG9uRWRpdG9yQ2FsbEJhY2s/OiBhbnk7IC8v57yW6L6R5oyJ6ZKu5Zue6LCD77yM5omT5byA5by55qGG5ZCO5omn6KGMXHJcbiAgICBvbkFkZENhbGxCYWNrPzogYW55OyAvL+a3u+WKoOaMiemSruWbnuiwg++8jOaJk+W8gOW8ueahhuWQjuaJp+ihjFxyXG4gICAgb25TZWFyY2hDYWxsQmFjaz86IGFueTsgLy/liJfooajmn6Xor6LmjInpkq7lm57osIPvvIzmiZPlvIDlvLnmoYblkI7miafooYxcclxuICB9O1xyXG4gIGZvcm1Qcm9wcz86IGFueTtcclxuICBjaGlsZHJlbj86IGFueTtcclxuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5jb25zdCBkZWZhdWx0U3RhdGVWYWx1ZSA9IHtcclxuICBmb3JtVHlwZTogXCJtb2RhbFwiLFxyXG4gIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICBzZWxmQnV0dG9uOiBbXSBhcyBhbnksXHJcbiAgcHJvcHM6IHt9IGFzIGFueSxcclxuICBvdGhlclByb3BzOiB7fSBhcyBhbnksXHJcbiAgZm9ybXM6IFtdIGFzIGFueSxcclxuICBidXR0b25Mb2FkaW5nOiB7fSBhcyBhbnksXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0Rm9ybVNldHRpbmcgPSAoZGF0YSkgPT4ge1xyXG4gIGxldCBmb3JtcyA9IEpTT04ucGFyc2UoZGF0YS5mb3JtcyB8fCBcIltdXCIpIHx8IFtdO1xyXG4gIGxldCBzZWxmRm9ybUJ1dHRvbiA9IEpTT04ucGFyc2UoZGF0YS5zZWxmQnV0dG9uIHx8IFwiW11cIikgfHwgW107XHJcbiAgbGV0IG90aGVyUHJvcHMgPSBKU09OLnBhcnNlKGRhdGEub3RoZXJQcm9wcyB8fCBcInt9XCIpIHx8IHt9O1xyXG4gIGxldCBmb3JtVHlwZSA9IGRhdGEuZm9ybVR5cGU7XHJcbiAgbGV0IHByb3BzID0gSlNPTi5wYXJzZShkYXRhLnByb3BzIHx8IFwie31cIikgfHwge307XHJcbiAgbGV0IGZvcm1TZXR0aW5nID0ge1xyXG4gICAgZm9ybVR5cGU6IGZvcm1UeXBlLFxyXG4gICAgc2VsZkJ1dHRvbjogc2VsZkZvcm1CdXR0b24sXHJcbiAgICBwcm9wczogcHJvcHMsXHJcbiAgICBvdGhlclByb3BzOiBvdGhlclByb3BzLFxyXG4gICAgZm9ybXM6IGZvcm1zLFxyXG4gIH07XHJcbiAgcmV0dXJuIGZvcm1TZXR0aW5nO1xyXG59O1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTZXR0aW5nRm9ybSBleHRlbmRzIFJlYWN0LkNvbXBvbmVudDxJUHJvcHMsIGFueT4ge1xyXG4gIHN0YXRlID0ge1xyXG4gICAgLi4uZGVmYXVsdFN0YXRlVmFsdWUsXHJcbiAgfTtcclxuICBwYWdlUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuXHJcbiAgY29tcG9uZW50RGlkTW91bnQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdldERhdGEoKTtcclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShcclxuICAgIHByZXZQcm9wczogUmVhZG9ubHk8SVByb3BzPixcclxuICAgIHByZXZTdGF0ZTogUmVhZG9ubHk8YW55PixcclxuICAgIHNuYXBzaG90PzogYW55XHJcbiAgKTogdm9pZCB7XHJcbiAgICBpZiAocHJldlByb3BzLmZvcm1Db2RlICE9IHRoaXMucHJvcHMuZm9ybUNvZGUpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAgICB7XHJcbiAgICAgICAgICAuLi5kZWZhdWx0U3RhdGVWYWx1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGluaXREYXRhID0gKHJlczogYW55KSA9PiB7fTtcclxuICAvLyDojrflj5bmlbDmja5cclxuICBnZXREYXRhKCkge1xyXG4gICAgLy8g5LuOcHJvcHPkuK3ojrflj5Z0YWJsZUNvZGXjgIFwdWJsaXNoZWTjgIFtZW51Q29kZVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHBhZ2VMb2FkaW5nOiB0cnVlLFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGZvcm1Db2RlLFxyXG4gICAgICBwdWJsaXNoZWQgPSB0cnVlLFxyXG4gICAgICBtZW51Q29kZSxcclxuICAgICAgc2V0dGluZ1NvdXJjZSA9IFwiZm9ybVwiLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICAvLyDlpoLmnpx0YWJsZUNvZGXlrZjlnKhcclxuICAgIGlmIChmb3JtQ29kZSkge1xyXG4gICAgICAvLyDlrprkuYnlj4LmlbBcclxuICAgICAgbGV0IHBhcmFtcyA9IHsgY29kZTogZm9ybUNvZGUgfSBhcyBhbnk7XHJcbiAgICAgIC8vIOWmguaenHB1Ymxpc2hlZOS4unRydWVcclxuICAgICAgaWYgKHB1Ymxpc2hlZCkge1xyXG4gICAgICAgIC8vIOiuvue9ruWPguaVsGlzUHVibGlzaGVk5Li6MVxyXG4gICAgICAgIHBhcmFtcy5pc1B1Ymxpc2hlZCA9IDE7XHJcbiAgICAgIH1cclxuICAgICAgLy8g6LCD55SoZ2V0UGFnZURhdGHmlrnms5Xojrflj5bmlbDmja5cclxuICAgICAgZ2V0UGFnZURhdGEoeyAuLi5wYXJhbXMgfSwgc2V0dGluZ1NvdXJjZSkudGhlbigocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzLmNvZGUgPT0gMjAwICYmIHJlcy5kYXRhKSB7XHJcbiAgICAgICAgICBpZiAoc2V0dGluZ1NvdXJjZSA9PSBcInRhYmxlXCIpIHtcclxuICAgICAgICAgICAgbGV0IGZvcm1Qcm9wcyA9IEpTT04ucGFyc2UocmVzLmRhdGEuZm9ybVByb3BzIHx8IFwie31cIikgfHwge307XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgLi4uZm9ybVByb3BzLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm1TZXR0aW5nOiBhbnkgPSBnZXRGb3JtU2V0dGluZyhyZXMuZGF0YSkgfHwge307XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgLi4uZm9ybVNldHRpbmcsXHJcbiAgICAgICAgICAgICAgICBmb3JtVHlwZTogdGhpcy5wcm9wcy5mb3JtVHlwZSB8fCBmb3JtU2V0dGluZy5mb3JtVHlwZSxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChyZXMuY29kZSA9PSAyMDAgJiYgcmVzLmRhdGEgPT0gbnVsbCkge1xyXG4gICAgICAgICAgbWVzc2FnZS5lcnJvcihcIuacquaJvuWIsOmFjee9ruS/oeaBr++8gVwiKTtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBvblNlYXJjaCgpIHt9XHJcblxyXG4gIHNob3dGb3JtKHZhbHVlOiBhbnksIGVkaXRvcmZsYWcsIGNhbGxCYWNrKSB7XHJcbiAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uc2hvd0Zvcm0odmFsdWUsIGVkaXRvcmZsYWcsIGNhbGxCYWNrKTtcclxuICB9XHJcbiAgaGlkZUZvcm0oKSB7XHJcbiAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgY2xhc3NOYW1lLCBmdW5jcyA9IHt9LCAuLi5wYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHBhZ2VMb2FkaW5nLFxyXG4gICAgICBmb3JtVHlwZSxcclxuICAgICAgc2VsZkJ1dHRvbixcclxuICAgICAgcHJvcHMgPSB7fSxcclxuICAgICAgb3RoZXJQcm9wcyA9IHt9LFxyXG4gICAgICBmb3JtcyxcclxuICAgICAgYnV0dG9uTG9hZGluZyxcclxuICAgIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3QgeyByZXF1ZXN0T2JqZWN0ID0ge30gfSA9IG90aGVyUHJvcHM7XHJcbiAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgY29uc3QgZGVhdWx0RnVuY3MgPSB7XHJcbiAgICAgIHNldEZpZWxkRGlzYWJsZWQ6IChrZXksIGRpc2FibGVkKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0YSA9IHNldEZpZWxkRGlzYWJsZWQoZm9ybXMsIGtleSwgZGlzYWJsZWQpO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZm9ybXM6IG5ld0RhdGEsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIHNldEZpZWxkVmlzaWJsZTogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRWaXNpYmxlKGZvcm1zLCBrZXksIGRpc2FibGVkKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGZvcm1zOiBuZXdEYXRhLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICBzZXRGaWVsZFByb3BzRGF0YTogKGtleSwgZGF0YSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG5ld0RhdGEgPSBzZXRGaWVsZFByb3BzRGF0YShmb3Jtcywga2V5LCBkYXRhKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGZvcm1zOiBuZXdEYXRhLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICBzZXRCdXR0b25Mb2FkaW5nKGNvZGUsIGxvYWRpbmcpIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBidXR0b25Mb2FkaW5nOiB7IC4uLmJ1dHRvbkxvYWRpbmcsIFtjb2RlXTogbG9hZGluZyB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICAuLi5kZWZhdWx0Q29tRnVuY3MsXHJcbiAgICB9O1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuXHJcbiAgICBsZXQgY29kZUZvcm1CdXR0b25zID0gW107XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHtcclxuICAgICAgY2hpbGRyZW4ubWFwKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtKSkge1xyXG4gICAgICAgICAgaXRlbS5tYXAoKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgICAgIGNvZGVGb3JtQnV0dG9ucy5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb2RlRm9ybUJ1dHRvbnMucHVzaChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbikge1xyXG4gICAgICBjb2RlRm9ybUJ1dHRvbnMucHVzaChjaGlsZHJlbik7XHJcbiAgICB9XHJcbiAgICBjb25zdCByZW5kZXJGb3JtID0gKCkgPT4ge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxGb3JtUGFnZVxyXG4gICAgICAgICAgZm9ybVR5cGU9e2Zvcm1UeXBlfVxyXG4gICAgICAgICAgZm9ybXM9e2Zvcm1zfVxyXG4gICAgICAgICAgcmVxdWVzdE9iamVjdD17cmVxdWVzdE9iamVjdH1cclxuICAgICAgICAgIFV0aWxzPXtkZWZhdWx0VXRpbH1cclxuICAgICAgICAgIGZ1bmNzPXt7IC4uLmRlYXVsdEZ1bmNzLCAuLi5mdW5jcyB9fVxyXG4gICAgICAgICAgcmVmPXt0aGlzLnBhZ2VSZWZ9XHJcbiAgICAgICAgICBwYWdlUmVmPXt0aGlzLnBhZ2VSZWZ9XHJcbiAgICAgICAgICBwcm9wcz17cHJvcHN9XHJcbiAgICAgICAgICBlZGl0VHlwZT17dGhpcy5wcm9wcy5lZGl0VHlwZX1cclxuICAgICAgICAgIHsuLi5vdGhlclByb3BzfVxyXG4gICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICA+XHJcbiAgICAgICAgICB7cmVuZGVyU2VsZlRvb2xCdXR0b24oe1xyXG4gICAgICAgICAgICBzZWxmQnV0dG9uLFxyXG4gICAgICAgICAgICBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYsXHJcbiAgICAgICAgICAgIGZ1bmNzLFxyXG4gICAgICAgICAgICBsb2FkaW5nOiB0aGlzLnN0YXRlLmJ1dHRvbkxvYWRpbmcsXHJcbiAgICAgICAgICAgIHR5cGU6IFwiZm9ybUJ1dHRvblwiLFxyXG4gICAgICAgICAgfSl9XHJcbiAgICAgICAgPC9Gb3JtUGFnZT5cclxuICAgICAgKTtcclxuICAgIH07XHJcbiAgICBpZiAodGhpcy5wcm9wcy5mb3JtVHlwZSA9PSBcInBhZ2VcIikge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbHMoXCJuc2Mtc2V0dGluZy1mb3JtcGFnZVwiLCBjbGFzc05hbWUpfT5cclxuICAgICAgICAgIHtwYWdlTG9hZGluZyA/IChcclxuICAgICAgICAgICAgPGRpdiBzdHlsZT17eyB3aWR0aDogXCIxMDAlXCIsIGhlaWdodDogXCIxMDAlXCIgfX0+XHJcbiAgICAgICAgICAgICAgPFNwaW4gc3Bpbm5pbmc9e3BhZ2VMb2FkaW5nfT48L1NwaW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgcmVuZGVyRm9ybSgpXHJcbiAgICAgICAgICApfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHJlbmRlckZvcm0oKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBRUEsT0FBT0EsSUFBSSxNQUFNLGlCQUFpQjtBQUNsQyxPQUFPLGNBQWM7QUFDckIsT0FBT0MsS0FBSyxN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
|
|
279
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTcGluIiwiUmVhY3QiLCJOc2NSZXF1ZXN0IiwiY2xzIiwiRm9ybVBhZ2UiLCJkZWZhdWx0Q29tRnVuY3MiLCJkZWZhdWx0VXRpbCIsInJlbmRlclNlbGZUb29sQnV0dG9uIiwiZ2V0UGFnZURhdGEiLCJwYXJhbXMiLCJzZXR0aW5nU291cmNlIiwidXJsIiwiZ2V0IiwieHNzRmlsdGVyIiwiYXV0b1ByZWZpeCIsInNldEZpZWxkRGlzYWJsZWQiLCJkYXRhIiwia2V5IiwiZGlzYWJsZWQiLCJmb21zIiwibmV3Rm9ybXMiLCJtYXAiLCJpdGVtIiwib2JqIiwiX29iamVjdFNwcmVhZCIsIm5hbWUiLCJpbmRleE9mIiwicHJvcHMiLCJwdXNoIiwic2V0RmllbGRWaXNpYmxlIiwidmlzaWJsZSIsInNob3ciLCJzZXRGaWVsZFByb3BzRGF0YSIsInByb3BzRGF0YSIsImZvcm1zIiwiZGF0YUluZGV4IiwiZGVmYXVsdFN0YXRlVmFsdWUiLCJmb3JtVHlwZSIsInBhZ2VMb2FkaW5nIiwic2VsZkJ1dHRvbiIsIm90aGVyUHJvcHMiLCJidXR0b25Mb2FkaW5nIiwiZ2V0Rm9ybVNldHRpbmciLCJKU09OIiwicGFyc2UiLCJzZWxmRm9ybUJ1dHRvbiIsImZvcm1TZXR0aW5nIiwiU2V0dGluZ0Zvcm0iLCJDb21wb25lbnQiLCJjb25zdHJ1Y3RvciIsImFyZ3VtZW50cyIsIl9kZWZpbmVQcm9wZXJ0eSIsImNyZWF0ZVJlZiIsInJlcyIsImNvbXBvbmVudERpZE1vdW50IiwiZ2V0RGF0YSIsImNvbXBvbmVudERpZFVwZGF0ZSIsInByZXZQcm9wcyIsInByZXZTdGF0ZSIsInNuYXBzaG90IiwiZm9ybUNvZGUiLCJzZXRTdGF0ZSIsInB1Ymxpc2hlZCIsIm1lbnVDb2RlIiwiY29kZSIsImlzUHVibGlzaGVkIiwidGhlbiIsImZvcm1Qcm9wcyIsIl9tZXNzYWdlIiwiZXJyb3IiLCJzaG93Rm9ybSIsInZhbHVlIiwiZWRpdG9yZmxhZyIsImNhbGxCYWNrIiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50IiwicGFnZVJlZiIsImN1cnJlbnQiLCJoaWRlRm9ybSIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDIiLCJyZW5kZXIiLCJfdGhpcyRwcm9wcyIsImNsYXNzTmFtZSIsImZ1bmNzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwic3RhdGUiLCJyZXF1ZXN0T2JqZWN0IiwiX3RoaXMiLCJkZWF1bHRGdW5jcyIsIm5ld0RhdGEiLCJzZXRCdXR0b25Mb2FkaW5nIiwibG9hZGluZyIsImNoaWxkcmVuIiwiY29kZUZvcm1CdXR0b25zIiwiQXJyYXkiLCJpc0FycmF5IiwiY2hpbGQiLCJyZW5kZXJGb3JtIiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzIiwiVXRpbHMiLCJyZWYiLCJlZGl0VHlwZSIsInR5cGUiLCJzdHlsZSIsIndpZHRoIiwiaGVpZ2h0Iiwic3Bpbm5pbmciXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9wYWdlL1NldHRpbmdGb3JtL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3J3YXJkUmVmLCB1c2VFZmZlY3QsIHVzZUltcGVyYXRpdmVIYW5kbGUsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBCYXNlUGFnZSwgeyBOU0NCYXNlQmFnZVByb3BzIH0gZnJvbSBcIi4uL0Jhc2VQYWdlXCI7XHJcbmltcG9ydCBTcGluIGZyb20gXCIuLi8uLi9iYXNlL3NwaW5cIjtcclxuaW1wb3J0IFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IE5zY1JlcXVlc3QgZnJvbSBcIm5zYy1yZXF1ZXN0XCI7XHJcbmltcG9ydCBjbHMgZnJvbSBcImNsYXNzbmFtZXNcIjtcclxuaW1wb3J0IHsgbWVzc2FnZSB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBGb3JtUGFnZSBmcm9tIFwiLi4vRm9ybVBhZ2VcIjtcclxuaW1wb3J0IHtcclxuICBkZWZhdWx0Q29tRnVuY3MsXHJcbiAgZGVmYXVsdFV0aWwsXHJcbiAgcmVuZGVyU2VsZlRvb2xCdXR0b24sXHJcbn0gZnJvbSBcIi4uL1NldHRpbmdVdGlsL3V0aWxzXCI7XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0UGFnZURhdGEgPSAocGFyYW1zOiBhbnksIHNldHRpbmdTb3VyY2UpID0+IHtcclxuICBsZXQgdXJsID1cclxuICAgIHNldHRpbmdTb3VyY2UgPT0gXCJ0YWJsZVwiXHJcbiAgICAgID8gXCIvanF1aWNrLXNldHRpbmcvc2V0dGluZy90YWJsZS9pbmZvL1wiXHJcbiAgICAgIDogXCIvanF1aWNrLXNldHRpbmcvc2V0dGluZy9mb3JtL2luZm9cIjtcclxuICByZXR1cm4gTnNjUmVxdWVzdC5nZXQodXJsLCB7XHJcbiAgICBwYXJhbXMsXHJcbiAgICB4c3NGaWx0ZXI6IGZhbHNlLFxyXG4gICAgYXV0b1ByZWZpeDogdHJ1ZSxcclxuICB9KTtcclxufTtcclxuXHJcbi8v6K6+572u6KGo5Y2V5a2X5q615Y+q6K+7XHJcbmNvbnN0IHNldEZpZWxkRGlzYWJsZWQgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCBkaXNhYmxlZCkgPT4ge1xyXG4gIGNvbnN0IGZvbXMgPSBbLi4uZGF0YV07XHJcbiAgbGV0IG5ld0Zvcm1zID0gW10gYXMgYW55O1xyXG4gIGZvbXMubWFwKChpdGVtKSA9PiB7XHJcbiAgICBsZXQgb2JqID0geyAuLi5pdGVtIH07XHJcbiAgICBpZiAoaXRlbS5uYW1lID09IGtleSB8fCBrZXkuaW5kZXhPZihpdGVtLm5hbWUpID4gLTEpIHtcclxuICAgICAgbGV0IHByb3BzID0gb2JqLnByb3BzID8geyAuLi5vYmoucHJvcHMgfSA6IHt9O1xyXG4gICAgICBwcm9wcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xyXG4gICAgICBvYmoucHJvcHMgPSBwcm9wcztcclxuICAgIH1cclxuICAgIG5ld0Zvcm1zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Rm9ybXM7XHJcbn07XHJcbi8v6K6+572u6KGo5Y2V5a2X5q616ZqQ6JePXHJcbmNvbnN0IHNldEZpZWxkVmlzaWJsZSA9IChkYXRhOiBBcnJheTxhbnk+LCBrZXksIHZpc2libGUpID0+IHtcclxuICBjb25zdCBmb21zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdGb3JtcyA9IFtdIGFzIGFueTtcclxuICBmb21zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgbGV0IG9iaiA9IHsgLi4uaXRlbSB9O1xyXG4gICAgaWYgKGl0ZW0ubmFtZSA9PSBrZXkgfHwga2V5LmluZGV4T2YoaXRlbS5uYW1lKSA+IC0xKSB7XHJcbiAgICAgIG9iai5zaG93ID0gdmlzaWJsZTtcclxuICAgIH1cclxuICAgIG5ld0Zvcm1zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Rm9ybXM7XHJcbn07XHJcblxyXG5jb25zdCBzZXRGaWVsZFByb3BzRGF0YSA9IChkYXRhOiBBcnJheTxhbnk+LCBrZXksIHByb3BzRGF0YSkgPT4ge1xyXG4gIGNvbnN0IGZvcm1zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdGb3JtcyA9IFtdIGFzIGFueTtcclxuICBmb3Jtcy5tYXAoKGl0ZW0pID0+IHtcclxuICAgIGxldCBvYmogPSB7IC4uLml0ZW0gfTtcclxuICAgIGlmIChpdGVtLmRhdGFJbmRleCA9PSBrZXkpIHtcclxuICAgICAgbGV0IHByb3BzID0gb2JqLnByb3BzID8geyAuLi5vYmoucHJvcHMgfSA6IHt9O1xyXG4gICAgICBwcm9wcy5kYXRhID0gcHJvcHNEYXRhO1xyXG4gICAgICBvYmoucHJvcHMgPSBwcm9wcztcclxuICAgIH1cclxuICAgIG5ld0Zvcm1zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Rm9ybXM7XHJcbn07XHJcbmludGVyZmFjZSBJUHJvcHMge1xyXG4gIGZvcm1Db2RlOiBzdHJpbmc7XHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG4gIG1lbnVDb2RlPzogc3RyaW5nO1xyXG4gIGZ1bmNzPzogYW55O1xyXG4gIHB1Ymxpc2hlZD86IGJvb2xlYW47XHJcbiAgaW5zdGFuY2VSZWY/OiBhbnk7XHJcbiAgb25DYWxsQmFja3M/OiB7XHJcbiAgICBvblN1bWJpdENhbGxCYWNrPzogYW55OyAvL+S/neWtmOWbnuiwg++8jOS/neWtmOaVsOaNruaIkOWKn+WQjuWbnuiwg1xyXG4gICAgb25BZGRDYWxsQmFjaz86IGFueTsgLy/mt7vliqDmjInpkq7lm57osIPvvIzmiZPlvIDlvLnmoYblkI7miafooYxcclxuICB9O1xyXG4gIGZvcm1Qcm9wcz86IGFueTtcclxuICBjaGlsZHJlbj86IGFueTtcclxuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5jb25zdCBkZWZhdWx0U3RhdGVWYWx1ZSA9IHtcclxuICBmb3JtVHlwZTogXCJtb2RhbFwiLFxyXG4gIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICBzZWxmQnV0dG9uOiBbXSBhcyBhbnksXHJcbiAgcHJvcHM6IHt9IGFzIGFueSxcclxuICBvdGhlclByb3BzOiB7fSBhcyBhbnksXHJcbiAgZm9ybXM6IFtdIGFzIGFueSxcclxuICBidXR0b25Mb2FkaW5nOiB7fSBhcyBhbnksXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0Rm9ybVNldHRpbmcgPSAoZGF0YSkgPT4ge1xyXG4gIGxldCBmb3JtcyA9IEpTT04ucGFyc2UoZGF0YS5mb3JtcyB8fCBcIltdXCIpIHx8IFtdO1xyXG4gIGxldCBzZWxmRm9ybUJ1dHRvbiA9IEpTT04ucGFyc2UoZGF0YS5zZWxmQnV0dG9uIHx8IFwiW11cIikgfHwgW107XHJcbiAgbGV0IG90aGVyUHJvcHMgPSBKU09OLnBhcnNlKGRhdGEub3RoZXJQcm9wcyB8fCBcInt9XCIpIHx8IHt9O1xyXG4gIGxldCBmb3JtVHlwZSA9IGRhdGEuZm9ybVR5cGU7XHJcbiAgbGV0IHByb3BzID0gSlNPTi5wYXJzZShkYXRhLnByb3BzIHx8IFwie31cIikgfHwge307XHJcbiAgbGV0IGZvcm1TZXR0aW5nID0ge1xyXG4gICAgZm9ybVR5cGU6IGZvcm1UeXBlLFxyXG4gICAgc2VsZkJ1dHRvbjogc2VsZkZvcm1CdXR0b24sXHJcbiAgICBwcm9wczogcHJvcHMsXHJcbiAgICBvdGhlclByb3BzOiBvdGhlclByb3BzLFxyXG4gICAgZm9ybXM6IGZvcm1zLFxyXG4gIH07XHJcbiAgcmV0dXJuIGZvcm1TZXR0aW5nO1xyXG59O1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTZXR0aW5nRm9ybSBleHRlbmRzIFJlYWN0LkNvbXBvbmVudDxJUHJvcHMsIGFueT4ge1xyXG4gIHN0YXRlID0ge1xyXG4gICAgLi4uZGVmYXVsdFN0YXRlVmFsdWUsXHJcbiAgfTtcclxuICBwYWdlUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuXHJcbiAgY29tcG9uZW50RGlkTW91bnQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdldERhdGEoKTtcclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShcclxuICAgIHByZXZQcm9wczogUmVhZG9ubHk8SVByb3BzPixcclxuICAgIHByZXZTdGF0ZTogUmVhZG9ubHk8YW55PixcclxuICAgIHNuYXBzaG90PzogYW55XHJcbiAgKTogdm9pZCB7XHJcbiAgICBpZiAocHJldlByb3BzLmZvcm1Db2RlICE9IHRoaXMucHJvcHMuZm9ybUNvZGUpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAgICB7XHJcbiAgICAgICAgICAuLi5kZWZhdWx0U3RhdGVWYWx1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGluaXREYXRhID0gKHJlczogYW55KSA9PiB7fTtcclxuICAvLyDojrflj5bmlbDmja5cclxuICBnZXREYXRhKCkge1xyXG4gICAgLy8g5LuOcHJvcHPkuK3ojrflj5Z0YWJsZUNvZGXjgIFwdWJsaXNoZWTjgIFtZW51Q29kZVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHBhZ2VMb2FkaW5nOiB0cnVlLFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGZvcm1Db2RlLFxyXG4gICAgICBwdWJsaXNoZWQgPSB0cnVlLFxyXG4gICAgICBtZW51Q29kZSxcclxuICAgICAgc2V0dGluZ1NvdXJjZSA9IFwiZm9ybVwiLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICAvLyDlpoLmnpx0YWJsZUNvZGXlrZjlnKhcclxuICAgIGlmIChmb3JtQ29kZSkge1xyXG4gICAgICAvLyDlrprkuYnlj4LmlbBcclxuICAgICAgbGV0IHBhcmFtcyA9IHsgY29kZTogZm9ybUNvZGUgfSBhcyBhbnk7XHJcbiAgICAgIC8vIOWmguaenHB1Ymxpc2hlZOS4unRydWVcclxuICAgICAgaWYgKHB1Ymxpc2hlZCkge1xyXG4gICAgICAgIC8vIOiuvue9ruWPguaVsGlzUHVibGlzaGVk5Li6MVxyXG4gICAgICAgIHBhcmFtcy5pc1B1Ymxpc2hlZCA9IDE7XHJcbiAgICAgIH1cclxuICAgICAgLy8g6LCD55SoZ2V0UGFnZURhdGHmlrnms5Xojrflj5bmlbDmja5cclxuICAgICAgZ2V0UGFnZURhdGEoeyAuLi5wYXJhbXMgfSwgc2V0dGluZ1NvdXJjZSkudGhlbigocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzLmNvZGUgPT0gMjAwICYmIHJlcy5kYXRhKSB7XHJcbiAgICAgICAgICBpZiAoc2V0dGluZ1NvdXJjZSA9PSBcInRhYmxlXCIpIHtcclxuICAgICAgICAgICAgbGV0IGZvcm1Qcm9wcyA9IEpTT04ucGFyc2UocmVzLmRhdGEuZm9ybVByb3BzIHx8IFwie31cIikgfHwge307XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgLi4uZm9ybVByb3BzLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm1TZXR0aW5nOiBhbnkgPSBnZXRGb3JtU2V0dGluZyhyZXMuZGF0YSkgfHwge307XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgLi4uZm9ybVNldHRpbmcsXHJcbiAgICAgICAgICAgICAgICBmb3JtVHlwZTogdGhpcy5wcm9wcy5mb3JtVHlwZSB8fCBmb3JtU2V0dGluZy5mb3JtVHlwZSxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChyZXMuY29kZSA9PSAyMDAgJiYgcmVzLmRhdGEgPT0gbnVsbCkge1xyXG4gICAgICAgICAgbWVzc2FnZS5lcnJvcihcIuacquaJvuWIsOmFjee9ruS/oeaBr++8gVwiKTtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBvblNlYXJjaCgpIHt9XHJcblxyXG4gIHNob3dGb3JtKHZhbHVlOiBhbnksIGVkaXRvcmZsYWcsIGNhbGxCYWNrKSB7XHJcbiAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uc2hvd0Zvcm0odmFsdWUsIGVkaXRvcmZsYWcsIGNhbGxCYWNrKTtcclxuICB9XHJcbiAgaGlkZUZvcm0oKSB7XHJcbiAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgY2xhc3NOYW1lLCBmdW5jcyA9IHt9LCAuLi5wYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHBhZ2VMb2FkaW5nLFxyXG4gICAgICBmb3JtVHlwZSxcclxuICAgICAgc2VsZkJ1dHRvbixcclxuICAgICAgcHJvcHMgPSB7fSxcclxuICAgICAgb3RoZXJQcm9wcyA9IHt9LFxyXG4gICAgICBmb3JtcyxcclxuICAgICAgYnV0dG9uTG9hZGluZyxcclxuICAgIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3QgeyByZXF1ZXN0T2JqZWN0ID0ge30gfSA9IG90aGVyUHJvcHM7XHJcbiAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgY29uc3QgZGVhdWx0RnVuY3MgPSB7XHJcbiAgICAgIHNldEZpZWxkRGlzYWJsZWQ6IChrZXksIGRpc2FibGVkKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0YSA9IHNldEZpZWxkRGlzYWJsZWQoZm9ybXMsIGtleSwgZGlzYWJsZWQpO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZm9ybXM6IG5ld0RhdGEsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIHNldEZpZWxkVmlzaWJsZTogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRWaXNpYmxlKGZvcm1zLCBrZXksIGRpc2FibGVkKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGZvcm1zOiBuZXdEYXRhLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICBzZXRGaWVsZFByb3BzRGF0YTogKGtleSwgZGF0YSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG5ld0RhdGEgPSBzZXRGaWVsZFByb3BzRGF0YShmb3Jtcywga2V5LCBkYXRhKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGZvcm1zOiBuZXdEYXRhLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICBzZXRCdXR0b25Mb2FkaW5nKGNvZGUsIGxvYWRpbmcpIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBidXR0b25Mb2FkaW5nOiB7IC4uLmJ1dHRvbkxvYWRpbmcsIFtjb2RlXTogbG9hZGluZyB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICAuLi5kZWZhdWx0Q29tRnVuY3MsXHJcbiAgICB9O1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuXHJcbiAgICBsZXQgY29kZUZvcm1CdXR0b25zID0gW107XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHtcclxuICAgICAgY2hpbGRyZW4ubWFwKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtKSkge1xyXG4gICAgICAgICAgaXRlbS5tYXAoKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgICAgIGNvZGVGb3JtQnV0dG9ucy5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb2RlRm9ybUJ1dHRvbnMucHVzaChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbikge1xyXG4gICAgICBjb2RlRm9ybUJ1dHRvbnMucHVzaChjaGlsZHJlbik7XHJcbiAgICB9XHJcbiAgICBjb25zdCByZW5kZXJGb3JtID0gKCkgPT4ge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxGb3JtUGFnZVxyXG4gICAgICAgICAgZm9ybVR5cGU9e2Zvcm1UeXBlfVxyXG4gICAgICAgICAgZm9ybXM9e2Zvcm1zfVxyXG4gICAgICAgICAgcmVxdWVzdE9iamVjdD17cmVxdWVzdE9iamVjdH1cclxuICAgICAgICAgIFV0aWxzPXtkZWZhdWx0VXRpbH1cclxuICAgICAgICAgIGZ1bmNzPXt7IC4uLmRlYXVsdEZ1bmNzLCAuLi5mdW5jcyB9fVxyXG4gICAgICAgICAgcmVmPXt0aGlzLnBhZ2VSZWZ9XHJcbiAgICAgICAgICBwYWdlUmVmPXt0aGlzLnBhZ2VSZWZ9XHJcbiAgICAgICAgICBwcm9wcz17cHJvcHN9XHJcbiAgICAgICAgICBlZGl0VHlwZT17dGhpcy5wcm9wcy5lZGl0VHlwZX1cclxuICAgICAgICAgIHsuLi5vdGhlclByb3BzfVxyXG4gICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICA+XHJcbiAgICAgICAgICB7cmVuZGVyU2VsZlRvb2xCdXR0b24oe1xyXG4gICAgICAgICAgICBzZWxmQnV0dG9uLFxyXG4gICAgICAgICAgICBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYsXHJcbiAgICAgICAgICAgIGZ1bmNzLFxyXG4gICAgICAgICAgICBsb2FkaW5nOiB0aGlzLnN0YXRlLmJ1dHRvbkxvYWRpbmcsXHJcbiAgICAgICAgICAgIHR5cGU6IFwiZm9ybUJ1dHRvblwiLFxyXG4gICAgICAgICAgfSl9XHJcbiAgICAgICAgPC9Gb3JtUGFnZT5cclxuICAgICAgKTtcclxuICAgIH07XHJcbiAgICBpZiAodGhpcy5wcm9wcy5mb3JtVHlwZSA9PSBcInBhZ2VcIikge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbHMoXCJuc2Mtc2V0dGluZy1mb3JtcGFnZVwiLCBjbGFzc05hbWUpfT5cclxuICAgICAgICAgIHtwYWdlTG9hZGluZyA/IChcclxuICAgICAgICAgICAgPGRpdiBzdHlsZT17eyB3aWR0aDogXCIxMDAlXCIsIGhlaWdodDogXCIxMDAlXCIgfX0+XHJcbiAgICAgICAgICAgICAgPFNwaW4gc3Bpbm5pbmc9e3BhZ2VMb2FkaW5nfT48L1NwaW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgcmVuZGVyRm9ybSgpXHJcbiAgICAgICAgICApfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHJlbmRlckZvcm0oKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBRUEsT0FBT0EsSUFBSSxNQUFNLGlCQUFpQjtBQUNsQyxPQUFPLGNBQWM7QUFDckIsT0FBT0MsS0FBSyxNQUFNLE9BQU87QUFDekIsT0FBT0MsVUFBVSxNQUFNLGFBQWE7QUFDcEMsT0FBT0MsR0FBRyxNQUFNLFlBQVk7QUFFNUIsT0FBT0MsUUFBUSxNQUFNLGFBQWE7QUFDbEMsU0FDRUMsZUFBZSxFQUNmQyxXQUFXLEVBQ1hDLG9CQUFvQixRQUNmLHNCQUFzQjtBQUU3QixPQUFPLE1BQU1DLFdBQVcsR0FBR0EsQ0FBQ0MsTUFBVyxFQUFFQyxhQUFhLEtBQUs7RUFDekQsSUFBSUMsR0FBRyxHQUNMRCxhQUFhLElBQUksT0FBTyxHQUNwQixxQ0FBcUMsR0FDckMsbUNBQW1DO0VBQ3pDLE9BQU9SLFVBQVUsQ0FBQ1UsR0FBRyxDQUFDRCxHQUFHLEVBQUU7SUFDekJGLE1BQU07SUFDTkksU0FBUyxFQUFFLEtBQUs7SUFDaEJDLFVBQVUsRUFBRTtFQUNkLENB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Spin","React","NscRequest","cls","FormPage","defaultComFuncs","defaultUtil","renderSelfToolButton","getPageData","params","settingSource","url","get","xssFilter","autoPrefix","setFieldDisabled","data","key","disabled","foms","newForms","map","item","obj","_objectSpread","name","indexOf","props","push","setFieldVisible","visible","show","setFieldPropsData","propsData","forms","dataIndex","defaultStateValue","formType","pageLoading","selfButton","otherProps","buttonLoading","getFormSetting","JSON","parse","selfFormButton","formSetting","SettingForm","Component","constructor","arguments","_defineProperty","createRef","res","componentDidMount","getData","componentDidUpdate","prevProps","prevState","snapshot","formCode","setState","published","menuCode","code","isPublished","then","formProps","_message","error","showForm","value","editorflag","callBack","_this$pageRef$current","pageRef","current","hideForm","_this$pageRef$current2","render","_this$props","className","funcs","_objectWithoutProperties","_excluded","state","requestObject","_this","deaultFuncs","newData","setButtonLoading","loading","children","codeFormButtons","Array","isArray","child","renderForm","createElement","_extends","Utils","ref","editType","type","style","width","height","spinning"],"sources":["../../../src/components/page/SettingForm/index.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useState } from \"react\";\r\nimport BasePage, { NSCBaseBageProps } from \"../BasePage\";\r\nimport Spin from \"../../base/spin\";\r\nimport \"./index.less\";\r\nimport React from \"react\";\r\nimport NscRequest from \"nsc-request\";\r\nimport cls from \"classnames\";\r\nimport { message } from \"antd\";\r\nimport FormPage from \"../FormPage\";\r\nimport {\r\n defaultComFuncs,\r\n defaultUtil,\r\n renderSelfToolButton,\r\n} from \"../SettingUtil/utils\";\r\n\r\nexport const getPageData = (params: any, settingSource) => {\r\n let url =\r\n settingSource == \"table\"\r\n ? \"/jquick-setting/setting/table/info/\"\r\n : \"/jquick-setting/setting/form/info\";\r\n return NscRequest.get(url, {\r\n params,\r\n xssFilter: false,\r\n autoPrefix: true,\r\n });\r\n};\r\n\r\n//设置表单字段只读\r\nconst setFieldDisabled = (data: Array<any>, key, disabled) => {\r\n const foms = [...data];\r\n let newForms = [] as any;\r\n foms.map((item) => {\r\n let obj = { ...item };\r\n if (item.name == key || key.indexOf(item.name) > -1) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.disabled = disabled;\r\n obj.props = props;\r\n }\r\n newForms.push(obj);\r\n });\r\n return newForms;\r\n};\r\n//设置表单字段隐藏\r\nconst setFieldVisible = (data: Array<any>, key, visible) => {\r\n const foms = [...data];\r\n let newForms = [] as any;\r\n foms.map((item) => {\r\n let obj = { ...item };\r\n if (item.name == key || key.indexOf(item.name) > -1) {\r\n obj.show = visible;\r\n }\r\n newForms.push(obj);\r\n });\r\n return newForms;\r\n};\r\n\r\nconst setFieldPropsData = (data: Array<any>, key, propsData) => {\r\n const forms = [...data];\r\n let newForms = [] as any;\r\n forms.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.data = propsData;\r\n obj.props = props;\r\n }\r\n newForms.push(obj);\r\n });\r\n return newForms;\r\n};\r\ninterface IProps {\r\n formCode: string;\r\n className?: any;\r\n menuCode?: string;\r\n funcs?: any;\r\n published?: boolean;\r\n instanceRef?: any;\r\n onCallBacks?: {\r\n treeSelectCallBack?: any; //树点击查询后回调\r\n onQueryCallBack?: any; //查询回调,查询数据后回调\r\n onSumbitCallBack?: any; //保存回调,保存数据成功后回调\r\n onDeleteCallBack?: any; //删除按钮回调,删除数据后执行\r\n onEditorCallBack?: any; //编辑按钮回调,打开弹框后执行\r\n onAddCallBack?: any; //添加按钮回调,打开弹框后执行\r\n onSearchCallBack?: any; //列表查询按钮回调,打开弹框后执行\r\n };\r\n formProps?: any;\r\n children?: any;\r\n [propName: string]: any;\r\n}\r\nconst defaultStateValue = {\r\n formType: \"modal\",\r\n pageLoading: false,\r\n selfButton: [] as any,\r\n props: {} as any,\r\n otherProps: {} as any,\r\n forms: [] as any,\r\n buttonLoading: {} as any,\r\n};\r\n\r\nexport const getFormSetting = (data) => {\r\n let forms = JSON.parse(data.forms || \"[]\") || [];\r\n let selfFormButton = JSON.parse(data.selfButton || \"[]\") || [];\r\n let otherProps = JSON.parse(data.otherProps || \"{}\") || {};\r\n let formType = data.formType;\r\n let props = JSON.parse(data.props || \"{}\") || {};\r\n let formSetting = {\r\n formType: formType,\r\n selfButton: selfFormButton,\r\n props: props,\r\n otherProps: otherProps,\r\n forms: forms,\r\n };\r\n return formSetting;\r\n};\r\nexport default class SettingForm extends React.Component<IProps, any> {\r\n state = {\r\n ...defaultStateValue,\r\n };\r\n pageRef = React.createRef<any>();\r\n\r\n componentDidMount(): void {\r\n this.getData();\r\n }\r\n\r\n componentDidUpdate(\r\n prevProps: Readonly<IProps>,\r\n prevState: Readonly<any>,\r\n snapshot?: any\r\n ): void {\r\n if (prevProps.formCode != this.props.formCode) {\r\n this.setState(\r\n {\r\n ...defaultStateValue,\r\n },\r\n () => {\r\n this.getData();\r\n }\r\n );\r\n }\r\n }\r\n\r\n initData = (res: any) => {};\r\n // 获取数据\r\n getData() {\r\n // 从props中获取tableCode、published、menuCode\r\n this.setState({\r\n pageLoading: true,\r\n });\r\n const {\r\n formCode,\r\n published = true,\r\n menuCode,\r\n settingSource = \"form\",\r\n } = this.props;\r\n // 如果tableCode存在\r\n if (formCode) {\r\n // 定义参数\r\n let params = { code: formCode } as any;\r\n // 如果published为true\r\n if (published) {\r\n // 设置参数isPublished为1\r\n params.isPublished = 1;\r\n }\r\n // 调用getPageData方法获取数据\r\n getPageData({ ...params }, settingSource).then((res: any) => {\r\n if (res.code == 200 && res.data) {\r\n if (settingSource == \"table\") {\r\n let formProps = JSON.parse(res.data.formProps || \"{}\") || {};\r\n this.setState(\r\n {\r\n ...formProps,\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n } else {\r\n const formSetting: any = getFormSetting(res.data) || {};\r\n this.setState(\r\n {\r\n ...formSetting,\r\n formType: this.props.formType || formSetting.formType,\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n }\r\n } else if (res.code == 200 && res.data == null) {\r\n message.error(\"未找到配置信息!\");\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n }\r\n // onSearch() {}\r\n\r\n showForm(value: any, editorflag, callBack) {\r\n this.pageRef.current?.showForm(value, editorflag, callBack);\r\n }\r\n hideForm() {\r\n this.pageRef.current?.hideForm();\r\n }\r\n\r\n render() {\r\n const { className, funcs = {}, ...params } = this.props;\r\n const {\r\n pageLoading,\r\n formType,\r\n selfButton,\r\n props = {},\r\n otherProps = {},\r\n forms,\r\n buttonLoading,\r\n } = this.state;\r\n const { requestObject = {} } = otherProps;\r\n let _this = this;\r\n const deaultFuncs = {\r\n setFieldDisabled: (key, disabled) => {\r\n const newData = setFieldDisabled(forms, key, disabled);\r\n this.setState({\r\n forms: newData,\r\n });\r\n },\r\n setFieldVisible: (key, disabled) => {\r\n const newData = setFieldVisible(forms, key, disabled);\r\n this.setState({\r\n forms: newData,\r\n });\r\n },\r\n setFieldPropsData: (key, data) => {\r\n const newData = setFieldPropsData(forms, key, data);\r\n this.setState({\r\n forms: newData,\r\n });\r\n },\r\n setButtonLoading(code, loading) {\r\n _this.setState({\r\n buttonLoading: { ...buttonLoading, [code]: loading },\r\n });\r\n },\r\n ...defaultComFuncs,\r\n };\r\n const { children } = this.props;\r\n\r\n let codeFormButtons = [];\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n codeFormButtons.push(child);\r\n });\r\n } else {\r\n codeFormButtons.push(item);\r\n }\r\n });\r\n } else if (children) {\r\n codeFormButtons.push(children);\r\n }\r\n const renderForm = () => {\r\n return (\r\n <FormPage\r\n formType={formType}\r\n forms={forms}\r\n requestObject={requestObject}\r\n Utils={defaultUtil}\r\n funcs={{ ...deaultFuncs, ...funcs }}\r\n ref={this.pageRef}\r\n pageRef={this.pageRef}\r\n props={props}\r\n editType={this.props.editType}\r\n {...otherProps}\r\n {...params}\r\n >\r\n {renderSelfToolButton({\r\n selfButton,\r\n pageRef: this.pageRef,\r\n funcs,\r\n loading: this.state.buttonLoading,\r\n type: \"formButton\",\r\n })}\r\n </FormPage>\r\n );\r\n };\r\n if (this.props.formType == \"page\") {\r\n return (\r\n <div className={cls(\"nsc-setting-formpage\", className)}>\r\n {pageLoading ? (\r\n <div style={{ width: \"100%\", height: \"100%\" }}>\r\n <Spin spinning={pageLoading}></Spin>\r\n </div>\r\n ) : (\r\n renderForm()\r\n )}\r\n </div>\r\n );\r\n } else {\r\n return renderForm();\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["Spin","React","NscRequest","cls","FormPage","defaultComFuncs","defaultUtil","renderSelfToolButton","getPageData","params","settingSource","url","get","xssFilter","autoPrefix","setFieldDisabled","data","key","disabled","foms","newForms","map","item","obj","_objectSpread","name","indexOf","props","push","setFieldVisible","visible","show","setFieldPropsData","propsData","forms","dataIndex","defaultStateValue","formType","pageLoading","selfButton","otherProps","buttonLoading","getFormSetting","JSON","parse","selfFormButton","formSetting","SettingForm","Component","constructor","arguments","_defineProperty","createRef","res","componentDidMount","getData","componentDidUpdate","prevProps","prevState","snapshot","formCode","setState","published","menuCode","code","isPublished","then","formProps","_message","error","showForm","value","editorflag","callBack","_this$pageRef$current","pageRef","current","hideForm","_this$pageRef$current2","render","_this$props","className","funcs","_objectWithoutProperties","_excluded","state","requestObject","_this","deaultFuncs","newData","setButtonLoading","loading","children","codeFormButtons","Array","isArray","child","renderForm","createElement","_extends","Utils","ref","editType","type","style","width","height","spinning"],"sources":["../../../src/components/page/SettingForm/index.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useState } from \"react\";\r\nimport BasePage, { NSCBaseBageProps } from \"../BasePage\";\r\nimport Spin from \"../../base/spin\";\r\nimport \"./index.less\";\r\nimport React from \"react\";\r\nimport NscRequest from \"nsc-request\";\r\nimport cls from \"classnames\";\r\nimport { message } from \"antd\";\r\nimport FormPage from \"../FormPage\";\r\nimport {\r\n defaultComFuncs,\r\n defaultUtil,\r\n renderSelfToolButton,\r\n} from \"../SettingUtil/utils\";\r\n\r\nexport const getPageData = (params: any, settingSource) => {\r\n let url =\r\n settingSource == \"table\"\r\n ? \"/jquick-setting/setting/table/info/\"\r\n : \"/jquick-setting/setting/form/info\";\r\n return NscRequest.get(url, {\r\n params,\r\n xssFilter: false,\r\n autoPrefix: true,\r\n });\r\n};\r\n\r\n//设置表单字段只读\r\nconst setFieldDisabled = (data: Array<any>, key, disabled) => {\r\n const foms = [...data];\r\n let newForms = [] as any;\r\n foms.map((item) => {\r\n let obj = { ...item };\r\n if (item.name == key || key.indexOf(item.name) > -1) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.disabled = disabled;\r\n obj.props = props;\r\n }\r\n newForms.push(obj);\r\n });\r\n return newForms;\r\n};\r\n//设置表单字段隐藏\r\nconst setFieldVisible = (data: Array<any>, key, visible) => {\r\n const foms = [...data];\r\n let newForms = [] as any;\r\n foms.map((item) => {\r\n let obj = { ...item };\r\n if (item.name == key || key.indexOf(item.name) > -1) {\r\n obj.show = visible;\r\n }\r\n newForms.push(obj);\r\n });\r\n return newForms;\r\n};\r\n\r\nconst setFieldPropsData = (data: Array<any>, key, propsData) => {\r\n const forms = [...data];\r\n let newForms = [] as any;\r\n forms.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.data = propsData;\r\n obj.props = props;\r\n }\r\n newForms.push(obj);\r\n });\r\n return newForms;\r\n};\r\ninterface IProps {\r\n formCode: string;\r\n className?: any;\r\n menuCode?: string;\r\n funcs?: any;\r\n published?: boolean;\r\n instanceRef?: any;\r\n onCallBacks?: {\r\n onSumbitCallBack?: any; //保存回调,保存数据成功后回调\r\n onAddCallBack?: any; //添加按钮回调,打开弹框后执行\r\n };\r\n formProps?: any;\r\n children?: any;\r\n [propName: string]: any;\r\n}\r\nconst defaultStateValue = {\r\n formType: \"modal\",\r\n pageLoading: false,\r\n selfButton: [] as any,\r\n props: {} as any,\r\n otherProps: {} as any,\r\n forms: [] as any,\r\n buttonLoading: {} as any,\r\n};\r\n\r\nexport const getFormSetting = (data) => {\r\n let forms = JSON.parse(data.forms || \"[]\") || [];\r\n let selfFormButton = JSON.parse(data.selfButton || \"[]\") || [];\r\n let otherProps = JSON.parse(data.otherProps || \"{}\") || {};\r\n let formType = data.formType;\r\n let props = JSON.parse(data.props || \"{}\") || {};\r\n let formSetting = {\r\n formType: formType,\r\n selfButton: selfFormButton,\r\n props: props,\r\n otherProps: otherProps,\r\n forms: forms,\r\n };\r\n return formSetting;\r\n};\r\nexport default class SettingForm extends React.Component<IProps, any> {\r\n state = {\r\n ...defaultStateValue,\r\n };\r\n pageRef = React.createRef<any>();\r\n\r\n componentDidMount(): void {\r\n this.getData();\r\n }\r\n\r\n componentDidUpdate(\r\n prevProps: Readonly<IProps>,\r\n prevState: Readonly<any>,\r\n snapshot?: any\r\n ): void {\r\n if (prevProps.formCode != this.props.formCode) {\r\n this.setState(\r\n {\r\n ...defaultStateValue,\r\n },\r\n () => {\r\n this.getData();\r\n }\r\n );\r\n }\r\n }\r\n\r\n initData = (res: any) => {};\r\n // 获取数据\r\n getData() {\r\n // 从props中获取tableCode、published、menuCode\r\n this.setState({\r\n pageLoading: true,\r\n });\r\n const {\r\n formCode,\r\n published = true,\r\n menuCode,\r\n settingSource = \"form\",\r\n } = this.props;\r\n // 如果tableCode存在\r\n if (formCode) {\r\n // 定义参数\r\n let params = { code: formCode } as any;\r\n // 如果published为true\r\n if (published) {\r\n // 设置参数isPublished为1\r\n params.isPublished = 1;\r\n }\r\n // 调用getPageData方法获取数据\r\n getPageData({ ...params }, settingSource).then((res: any) => {\r\n if (res.code == 200 && res.data) {\r\n if (settingSource == \"table\") {\r\n let formProps = JSON.parse(res.data.formProps || \"{}\") || {};\r\n this.setState(\r\n {\r\n ...formProps,\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n } else {\r\n const formSetting: any = getFormSetting(res.data) || {};\r\n this.setState(\r\n {\r\n ...formSetting,\r\n formType: this.props.formType || formSetting.formType,\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n }\r\n } else if (res.code == 200 && res.data == null) {\r\n message.error(\"未找到配置信息!\");\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n }\r\n // onSearch() {}\r\n\r\n showForm(value: any, editorflag, callBack) {\r\n this.pageRef.current?.showForm(value, editorflag, callBack);\r\n }\r\n hideForm() {\r\n this.pageRef.current?.hideForm();\r\n }\r\n\r\n render() {\r\n const { className, funcs = {}, ...params } = this.props;\r\n const {\r\n pageLoading,\r\n formType,\r\n selfButton,\r\n props = {},\r\n otherProps = {},\r\n forms,\r\n buttonLoading,\r\n } = this.state;\r\n const { requestObject = {} } = otherProps;\r\n let _this = this;\r\n const deaultFuncs = {\r\n setFieldDisabled: (key, disabled) => {\r\n const newData = setFieldDisabled(forms, key, disabled);\r\n this.setState({\r\n forms: newData,\r\n });\r\n },\r\n setFieldVisible: (key, disabled) => {\r\n const newData = setFieldVisible(forms, key, disabled);\r\n this.setState({\r\n forms: newData,\r\n });\r\n },\r\n setFieldPropsData: (key, data) => {\r\n const newData = setFieldPropsData(forms, key, data);\r\n this.setState({\r\n forms: newData,\r\n });\r\n },\r\n setButtonLoading(code, loading) {\r\n _this.setState({\r\n buttonLoading: { ...buttonLoading, [code]: loading },\r\n });\r\n },\r\n ...defaultComFuncs,\r\n };\r\n const { children } = this.props;\r\n\r\n let codeFormButtons = [];\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n codeFormButtons.push(child);\r\n });\r\n } else {\r\n codeFormButtons.push(item);\r\n }\r\n });\r\n } else if (children) {\r\n codeFormButtons.push(children);\r\n }\r\n const renderForm = () => {\r\n return (\r\n <FormPage\r\n formType={formType}\r\n forms={forms}\r\n requestObject={requestObject}\r\n Utils={defaultUtil}\r\n funcs={{ ...deaultFuncs, ...funcs }}\r\n ref={this.pageRef}\r\n pageRef={this.pageRef}\r\n props={props}\r\n editType={this.props.editType}\r\n {...otherProps}\r\n {...params}\r\n >\r\n {renderSelfToolButton({\r\n selfButton,\r\n pageRef: this.pageRef,\r\n funcs,\r\n loading: this.state.buttonLoading,\r\n type: \"formButton\",\r\n })}\r\n </FormPage>\r\n );\r\n };\r\n if (this.props.formType == \"page\") {\r\n return (\r\n <div className={cls(\"nsc-setting-formpage\", className)}>\r\n {pageLoading ? (\r\n <div style={{ width: \"100%\", height: \"100%\" }}>\r\n <Spin spinning={pageLoading}></Spin>\r\n </div>\r\n ) : (\r\n renderForm()\r\n )}\r\n </div>\r\n );\r\n } else {\r\n return renderForm();\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|