nsc-react-component 4.0.18 → 4.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PureComponent","Form","getNode","message","Col","Row","isEmptyObj","dayjs","lodash","Button","Upload","cls","FormPage","constructor","arguments","_defineProperty","createRef","loading","label","editorFlag","value","dictNames","fileList","show","orgValue","editorflag","length","undefined","callBack","setState","_this$formRef$current","convertValue","formRef","current","showForm","afterRender","_this$formRef$current2","props","defaultValue","hide","_this$formRef$current3","onHideForm","hideForm","_this$formRef$current4","setLoading","getFormValue","_this$formRef$current5","state","formValue","getFieldsValue","data","_objectSpread","fileFormat","newFileList","map","item","getFileList","submitFlag","error","dateValueFormat","key","olddata","Array","isArray","format","id","type","values","cloneDeep","dateFormat","setFormValue","_this$formRef$current6","newValue","setFieldsValue","doSubmit","formdata","_this$formRef$current7","submitUrl","submitParams","requestObject","requestConfig","addUrl","editorUrl","addParams","editorParams","url","params","Utils","func","Function","converParams","console","otherParams","_objectWithoutProperties","_excluded","onSubmit","noUndefined","res","code","success","obj","fileId","fileName","status","push","_this$formRef$current8","_this$formRef$current9","valid","validateFields","then","catch","errorInfo","valueChange","_ref","valueOption","dictName","newNames","onChange","eventOption","funcs","refs","refList","valueStr","selfFunc","renderForm","forms","newValid","createElement","gutter","index","_item$props","itemProps","valueFormat","name","allowChars","placeholder","concat","bind","dataType","disabled","rules","required","itemRef","_item$props2","span","style","display","Item","componentName","noStyle","formRender","ref","_item$props3","_extends","onListChange","list","showUploadList","showDownloadIcon","showRemoveIcon","children","render","footer","modalProps","title","onOk","onCancel","okButtonProps","centered","width","drawerProps","onClose","newFormsObj","formGroups","otherGrups","groupName","indexOf","groupForms","form","selfButtons","showModel","formType","labelCol","flex","wrapperCol","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 } 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\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 }\r\n requestConfig?: 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: \"\",\r\n editorFlag: true,\r\n value: {} as any,\r\n dictNames: {} as any,\r\n fileList: {} as any\r\n };\r\n valid: any = [];\r\n dateValueFormat = {} as any;\r\n dateFormat = {} as any;\r\n fileFormat = [] as any;\r\n refList = {} as any;\r\n submitFlag = true\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 },\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 this.formRef.current?.showForm(this.props.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 getFormValue() {\r\n const { label, value, dictNames, fileList } = this.state;\r\n const formValue = this.formRef.current?.getFieldsValue();\r\n let data = { ...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 if (!formValue[item]) {\r\n newFileList[item] = this.getFileList(fileList[item] || []);\r\n }\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 } 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 };\r\n }\r\n return data;\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.map((item) => {\r\n let olddata = values[item];\r\n if (olddata && Array.isArray(olddata)) {\r\n fileList[item] = this.getFileList(olddata || [], type);\r\n } else {\r\n fileList[item] = []\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 }\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 { submitUrl, submitParams = {}, callBack, requestObject = {}, requestConfig = {} } = this.props;\r\n const { addUrl, editorUrl, addParams, editorParams } = requestObject\r\n let url = '';\r\n let params: any = {};\r\n if (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 } = res;\r\n this.setState({ loading: false });\r\n if (code === 200) {\r\n message.success(label + \"成功\");\r\n this.hide(true);\r\n callBack && callBack();\r\n return;\r\n }\r\n this.hide(false);\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 const formValue = this.formRef.current?.getFieldsValue();\r\n let valid = this.valid;\r\n this.formRef.current\r\n ?.validateFields(valid)\r\n .then(() => {\r\n let data = this.getFormValue()\r\n if (!this.submitFlag) {\r\n message.error('请等待所有文件上传完成!')\r\n return;\r\n }\r\n this.setState({ loading: true });\r\n if (onSubmit) {\r\n onSubmit && onSubmit(data, 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 = { value, data, formRef: this.formRef, funcs: this.props.funcs || {}, refs: this.refList } 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 <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 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 span={item.span || 12} key={index} style={{ display: item.hide ? 'none' : 'block' }}>\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 ? item.formRender(props) : 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 span={item.span || 12} key={index} style={{ display: item.hide ? 'none' : 'block' }}>\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={{ showDownloadIcon: true, showRemoveIcon: label !== '查看' }}\r\n ref={itemRef}\r\n {...props}>\r\n {item.props.children ? item.props.children : (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 render() {\r\n const { forms = [], props = {}, footer = true, children } = this.props;\r\n const { loading, label } = this.state;\r\n let modalProps = {\r\n title: label,\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 } as any;\r\n\r\n\r\n let drawerProps = {\r\n title: label,\r\n onOk: this.onSubmit.bind(this),\r\n onClose: this.hide.bind(this),\r\n width: \"50vw\",\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 //处理表单数据\r\n forms.map((item: any) => {\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 if (formGroups.length > 0) {\r\n formGroups.map((item: any) => {\r\n let groupForms = [] as any\r\n forms.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 newFormsObj['noGroupName'] = otherGrups\r\n }\r\n //自定义按钮\r\n let selfButtons = [] as any;\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n typeof item == 'object' && selfButtons.push(item);\r\n });\r\n } else if (children) {\r\n typeof children == 'object' && selfButtons.push(children);\r\n }\r\n return (\r\n <Form\r\n ref={this.formRef}\r\n showModel={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 ? this.renderForm(forms, label) : Object.keys(newFormsObj).map((key) => {\r\n return (\r\n <div key={key} className=\"nsc-form-pane\">\r\n {key != \"noGroupName\" && <div className=\"nsc-form-title\">{key}</div>}\r\n <div className=\"nsc-form-content\">{this.renderForm(newFormsObj[key], label)}</div>\r\n </div>\r\n )\r\n })}\r\n {!this.props.formType && footer == true &&\r\n <div className={cls('nsc-form-page-footer', this.props.footerClassName)}>\r\n <Button {...this.props.cancelButtonProps} 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 }}>取消</Button>\r\n <Button type=\"primary\" {...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 <div className={'nsc-form-page-footer-btn'} key={index}>{item}</div>\r\n })\r\n }\r\n </div>\r\n }\r\n {!this.props.formType && 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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"}
1
+ {"version":3,"file":"index.js","names":["React","PureComponent","Form","getNode","message","Col","Row","isEmptyObj","dayjs","lodash","Button","Upload","cls","FormPage","constructor","arguments","_defineProperty","createRef","loading","label","editorFlag","value","dictNames","fileList","show","orgValue","editorflag","length","undefined","callBack","setState","_this$formRef$current","convertValue","formRef","current","showForm","afterRender","_this$formRef$current2","props","defaultValue","hide","_this$formRef$current3","onHideForm","hideForm","_this$formRef$current4","setLoading","getFormValue","_this$formRef$current5","state","formValue","getFieldsValue","data","_objectSpread","fileFormat","newFileList","map","item","getFileList","submitFlag","error","dateValueFormat","key","olddata","Array","isArray","format","id","type","values","cloneDeep","dateFormat","setFormValue","_this$formRef$current6","newValue","setFieldsValue","doSubmit","formdata","_this$formRef$current7","submitUrl","submitParams","requestObject","requestConfig","addUrl","editorUrl","addParams","editorParams","url","params","Utils","func","Function","converParams","console","otherParams","_objectWithoutProperties","_excluded","onSubmit","noUndefined","res","code","success","obj","fileId","fileName","status","push","_this$formRef$current8","_this$formRef$current9","valid","validateFields","then","catch","errorInfo","valueChange","_ref","valueOption","dictName","newNames","onChange","eventOption","funcs","refs","refList","valueStr","selfFunc","renderForm","forms","newValid","createElement","gutter","index","_item$props","itemProps","valueFormat","name","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","modalProps","title","onOk","onCancel","okButtonProps","centered","width","drawerProps","onClose","newFormsObj","formGroups","otherGrups","groupName","indexOf","groupForms","form","selfButtons","showModel","formType","labelCol","flex","wrapperCol","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 } 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\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 }\r\n requestConfig?: 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: \"\",\r\n editorFlag: true,\r\n value: {} as any,\r\n dictNames: {} as any,\r\n fileList: {} as any\r\n };\r\n valid: any = [];\r\n dateValueFormat = {} as any;\r\n dateFormat = {} as any;\r\n fileFormat = [] as any;\r\n refList = {} as any;\r\n submitFlag = true\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 },\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 this.formRef.current?.showForm(this.props.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 getFormValue() {\r\n const { label, value, dictNames, fileList } = this.state;\r\n const formValue = this.formRef.current?.getFieldsValue();\r\n let data = { ...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 if (!formValue[item]) {\r\n newFileList[item] = this.getFileList(fileList[item] || []);\r\n }\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 } 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 };\r\n }\r\n return data;\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.map((item) => {\r\n let olddata = values[item];\r\n if (olddata && Array.isArray(olddata)) {\r\n fileList[item] = this.getFileList(olddata || [], type);\r\n } else {\r\n fileList[item] = []\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 }\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 { submitUrl, submitParams = {}, callBack, requestObject = {}, requestConfig = {} } = this.props;\r\n const { addUrl, editorUrl, addParams, editorParams } = requestObject\r\n let url = '';\r\n let params: any = {};\r\n if (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 } = res;\r\n this.setState({ loading: false });\r\n if (code === 200) {\r\n message.success(label + \"成功\");\r\n this.hide(true);\r\n callBack && callBack();\r\n return;\r\n }\r\n this.hide(false);\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 const formValue = this.formRef.current?.getFieldsValue();\r\n let valid = this.valid;\r\n this.formRef.current\r\n ?.validateFields(valid)\r\n .then(() => {\r\n let data = this.getFormValue()\r\n if (!this.submitFlag) {\r\n message.error('请等待所有文件上传完成!')\r\n return;\r\n }\r\n this.setState({ loading: true });\r\n if (onSubmit) {\r\n onSubmit && onSubmit(data, 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 = { value, data, formRef: this.formRef, funcs: this.props.funcs || {}, refs: this.refList } 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 <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 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 span={item.span || 12} key={index} style={{ display: item.hide ? 'none' : 'block' }}>\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 ? item.formRender(props) : 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 span={item.span || 12} key={index} style={{ display: item.hide ? 'none' : 'block' }}>\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={{ showDownloadIcon: true, showRemoveIcon: label !== '查看' }}\r\n ref={itemRef}\r\n {...props}>\r\n {item.props?.children ? item.props?.children : (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 render() {\r\n const { forms = [], props = {}, footer = true, children } = this.props;\r\n const { loading, label } = this.state;\r\n let modalProps = {\r\n title: label,\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 } as any;\r\n\r\n\r\n let drawerProps = {\r\n title: label,\r\n onOk: this.onSubmit.bind(this),\r\n onClose: this.hide.bind(this),\r\n width: \"50vw\",\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 //处理表单数据\r\n forms.map((item: any) => {\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 if (formGroups.length > 0) {\r\n formGroups.map((item: any) => {\r\n let groupForms = [] as any\r\n forms.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 newFormsObj['noGroupName'] = otherGrups\r\n }\r\n //自定义按钮\r\n let selfButtons = [] as any;\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n typeof item == 'object' && selfButtons.push(item);\r\n });\r\n } else if (children) {\r\n typeof children == 'object' && selfButtons.push(children);\r\n }\r\n return (\r\n <Form\r\n ref={this.formRef}\r\n showModel={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 ? this.props.formType ? this.renderForm(forms, label) : <div className=\"nsc-form-pane\">{this.renderForm(forms, label)}</div> : Object.keys(newFormsObj).map((key) => {\r\n return (\r\n <div key={key} className=\"nsc-form-pane\">\r\n {key != \"noGroupName\" && <div className=\"nsc-form-title\">{key}</div>}\r\n <div className=\"nsc-form-content\">{this.renderForm(newFormsObj[key], label)}</div>\r\n </div>\r\n )\r\n })}\r\n {!this.props.formType && footer == true &&\r\n <div className={cls('nsc-form-page-footer', this.props.footerClassName)}>\r\n <Button {...this.props.cancelButtonProps} 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 }}>取消</Button>\r\n <Button type=\"primary\" {...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 <div className={'nsc-form-page-footer-btn'} key={index}>{item}</div>\r\n })\r\n }\r\n </div>\r\n }\r\n {!this.props.formType && 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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"}
@@ -28,6 +28,7 @@ class HeaderSearch extends PureComponent {
28
28
  setSearchParams(params, callBack) {
29
29
  var _this$searchRef$curre;
30
30
  let newParams = _objectSpread({}, params);
31
+ console.log('this.dateFormatthis.dateFormat', this.dateFormat);
31
32
  if (!isEmptyObj(this.dateFormat)) {
32
33
  for (let key in this.dateFormat) {
33
34
  let value = newParams[key];
@@ -103,6 +104,7 @@ class HeaderSearch extends PureComponent {
103
104
  } else if (headerRout == 2) {
104
105
  colSpan = 6;
105
106
  }
107
+ console.log('searchForms', searchForms);
106
108
  return /*#__PURE__*/React.createElement(Row, {
107
109
  gutter: 24,
108
110
  wrap: true
@@ -242,4 +244,4 @@ class HeaderSearch extends PureComponent {
242
244
  }
243
245
  }
244
246
  export default HeaderSearch;
245
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJGb3JtIiwiQnV0dG9uIiwiY2xzIiwiQ29sIiwiUm93IiwiaXNFbXB0eU9iaiIsIkRvd25PdXRsaW5lZCIsIlVwT3V0bGluZWQiLCJSZWxvYWRPdXRsaW5lZCIsIlNlYXJjaE91dGxpbmVkIiwiZ2V0TGVzcyIsImdldE5vZGUiLCJkYXlqcyIsInN0eWxlcyIsIkhlYWRlclNlYXJjaCIsImNvbnN0cnVjdG9yIiwiYXJndW1lbnRzIiwiX2RlZmluZVByb3BlcnR5IiwiY3JlYXRlUmVmIiwiZXhwYW5kIiwic2V0U2VhcmNoUGFyYW1zIiwicGFyYW1zIiwiY2FsbEJhY2siLCJfdGhpcyRzZWFyY2hSZWYkY3VycmUiLCJuZXdQYXJhbXMiLCJfb2JqZWN0U3ByZWFkIiwiZGF0ZUZvcm1hdCIsImtleSIsInZhbHVlIiwiQXJyYXkiLCJpc0FycmF5Iiwic2VhcmNoUmVmIiwiY3VycmVudCIsInNldEZpZWxkc1ZhbHVlIiwiZ2V0U2VhcmNoVmFsdWVzIiwiZnJvbVZhbHVlIiwiZm9ybWF0VmFsdWUiLCJfdGhpcyRzZWFyY2hSZWYkY3VycmUyIiwiZ2V0RmllbGRzVmFsdWUiLCJvbGRkYXRhIiwibGVuZ3RoIiwiZm9ybWF0Iiwib25TZWFyY2giLCJwcm9wcyIsInJlc2V0RmllbGRzIiwiX3RoaXMkc2VhcmNoUmVmJGN1cnJlMyIsInJlc2V0U2VhcmNoIiwiX3RoaXMkc2VhcmNoUmVmJGN1cnJlNCIsIm9uUmVzZXQiLCJyZW5kZXIiLCJzZWFyY2hGb3JtcyIsInRvb2xCdXR0b25Qb3NpdGlvbiIsInNlYXJjaEZvcm1Qcm9wcyIsImNvbFNwYW4iLCJoZWFkZXJDb3VudCIsImhlYWRlclJvdXQiLCJjcmVhdGVFbGVtZW50IiwiZ3V0dGVyIiwid3JhcCIsImNsYXNzTmFtZSIsIl9leHRlbmRzIiwicmVmIiwibGFiZWxDb2wiLCJ3cmFwcGVyQ29sIiwic3R5bGUiLCJ3aWR0aCIsImRpc3BsYXkiLCJmbGV4V3JhcCIsIm9uRmluaXNoIiwiYmluZCIsIm1hcCIsIml0ZW0iLCJpbmRleCIsIl9pdGVtJHByb3BzIiwiaXRlbVByb3BzIiwidmFsdWVGb3JtYXQiLCJuYW1lIiwic3RhdGUiLCJhbGxvd0NoYXJzIiwic2VhcmNoRGlzYWJsZWQiLCJ0eXBlIiwiZGVmYXVsdEl0ZW0iLCJsYWJlbCIsInJ1bGVzIiwiY29tcG9uZW50TmFtZSIsInBsYWNlaG9sZGVyIiwiY29uY2F0IiwibWQiLCJzcGFuIiwic20iLCJsZyIsInBhZGRpbmdSaWdodCIsIkl0ZW0iLCJkaXNhYmxlZCIsIm9mZnNldCIsIm1hcmdpblRvcCIsImJ1dHRvblJldmVycyIsImljb24iLCJtYXJnaW5MZWZ0IiwiaHRtbFR5cGUiLCJvbkNsaWNrIiwic2V0U3RhdGUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9wYWdlL0hlYWRlclNlYXJjaC9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQsIFJlYWN0Tm9kZSB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgRm9ybSBmcm9tIFwiLi4vLi4vYmFzZS9mb3JtXCI7XHJcbmltcG9ydCBCdXR0b24gZnJvbSBcIi4uLy4uL2Jhc2UvYnV0dG9uXCI7XHJcbmltcG9ydCBjbHMgZnJvbSBcImNsYXNzbmFtZXNcIjtcclxuaW1wb3J0IFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCBDb2wgZnJvbSBcIi4uLy4uL2Jhc2UvZ3JpZC9Db2xcIjtcclxuaW1wb3J0IFJvdyBmcm9tIFwiLi4vLi4vYmFzZS9ncmlkL1Jvd1wiO1xyXG5pbXBvcnQgeyBpc0VtcHR5T2JqIH0gZnJvbSBcIkBiai1uc2MvZnVuY3Rpb25zXCI7XHJcbmltcG9ydCB7XHJcbiAgRG93bk91dGxpbmVkLFxyXG4gIFVwT3V0bGluZWQsXHJcbiAgUmVsb2FkT3V0bGluZWQsXHJcbiAgU2VhcmNoT3V0bGluZWQsXHJcbn0gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCB7IGdldExlc3MsIGdldE5vZGUgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IGRheWpzIGZyb20gXCJkYXlqc1wiO1xyXG5jb25zdCBzdHlsZXMgPSBudWxsO1xyXG5pbnRlcmZhY2UgU2VhcmNoSXRlbVByb3BzIHtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBsYWJlbENvbD86IGFueTtcclxuICB0eXBlPzogc3RyaW5nO1xyXG4gIHdyYXBwZXJDb2w/OiBhbnk7XHJcbiAgcHJvcHM/OiBhbnk7XHJcbn1cclxuaW50ZXJmYWNlIFNlYXJjaFByb3BzIHtcclxuICBzZWFyY2hGb3JtczogQXJyYXk8U2VhcmNoSXRlbVByb3BzPjsgLy/mmK/lkKbmmL7npLrmk43kvZzliJdcclxuICB0b29sQnV0dG9uUG9zaXRpb24/OiBzdHJpbmc7XHJcbiAgb25TZWFyY2g/OiBhbnk7XHJcbiAgb25SZXNldD86IGFueTtcclxuICBzZWFyY2hGb3JtUHJvcHM/OiBvYmplY3Q7XHJcbiAgYnV0dG9uUmV2ZXJzPzogYm9vbGVhbjtcclxuICBjbGFzc05hbWU/OiBhbnk7XHJcbn1cclxuXHJcbmNsYXNzIEhlYWRlclNlYXJjaCBleHRlbmRzIFB1cmVDb21wb25lbnQ8U2VhcmNoUHJvcHMsIGFueT4ge1xyXG4gIHNlYXJjaFJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcbiAgZGF0ZUZvcm1hdCA9IHt9IGFzIGFueTtcclxuICBzdGF0ZSA9IHsgZXhwYW5kOiBmYWxzZSB9O1xyXG4gIHNldFNlYXJjaFBhcmFtcyhwYXJhbXMsIGNhbGxCYWNrKSB7XHJcbiAgICBsZXQgbmV3UGFyYW1zID0geyAuLi5wYXJhbXMgfTtcclxuICAgIGlmICghaXNFbXB0eU9iaih0aGlzLmRhdGVGb3JtYXQpKSB7XHJcbiAgICAgIGZvciAobGV0IGtleSBpbiB0aGlzLmRhdGVGb3JtYXQpIHtcclxuICAgICAgICBsZXQgdmFsdWUgPSBuZXdQYXJhbXNba2V5XTtcclxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgbmV3UGFyYW1zW2tleV0gPSBkYXlqcyh2YWx1ZSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWVbMF0gPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgIG5ld1BhcmFtc1trZXldID0gW1xyXG4gICAgICAgICAgICAgIGRheWpzKHZhbHVlWzBdLCB0aGlzLmRhdGVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgZGF5anModmFsdWVbMV0sIHRoaXMuZGF0ZUZvcm1hdFtrZXldKSxcclxuICAgICAgICAgICAgXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LnNldEZpZWxkc1ZhbHVlKG5ld1BhcmFtcyk7XHJcbiAgfVxyXG4gIGdldFNlYXJjaFZhbHVlcygpIHtcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuZm9ybWF0VmFsdWUoKTtcclxuICAgIHJldHVybiBmcm9tVmFsdWU7XHJcbiAgfVxyXG4gIGZvcm1hdFZhbHVlKCkge1xyXG4gICAgY29uc3QgZnJvbVZhbHVlID0gdGhpcy5zZWFyY2hSZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGlmICghaXNFbXB0eU9iaih0aGlzLmRhdGVGb3JtYXQpKSB7XHJcbiAgICAgIGZvciAobGV0IGtleSBpbiB0aGlzLmRhdGVGb3JtYXQpIHtcclxuICAgICAgICBsZXQgb2xkZGF0YSA9IGZyb21WYWx1ZVtrZXldO1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9sZGRhdGEpKSB7XHJcbiAgICAgICAgICBpZiAob2xkZGF0YS5sZW5ndGggPiAwICYmIG9sZGRhdGFbMF0gJiYgb2xkZGF0YVsxXSkge1xyXG4gICAgICAgICAgICBmcm9tVmFsdWVba2V5XSA9IFtcclxuICAgICAgICAgICAgICBkYXlqcyhvbGRkYXRhWzBdKS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgIGRheWpzKG9sZGRhdGFbMV0pLmZvcm1hdCh0aGlzLmRhdGVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgIF07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChvbGRkYXRhKSB7XHJcbiAgICAgICAgICBmcm9tVmFsdWVba2V5XSA9IGRheWpzKG9sZGRhdGEpLmZvcm1hdCh0aGlzLmRhdGVGb3JtYXRba2V5XSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZnJvbVZhbHVlO1xyXG4gIH1cclxuICBvblNlYXJjaCgpIHtcclxuICAgIGNvbnN0IHsgb25TZWFyY2ggfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBmcm9tVmFsdWUgPSB0aGlzLmZvcm1hdFZhbHVlKCk7XHJcbiAgICBpZiAob25TZWFyY2gpIHtcclxuICAgICAgb25TZWFyY2goZnJvbVZhbHVlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXNldEZpZWxkcygpIHtcclxuICAgIHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LnJlc2V0RmllbGRzKCk7XHJcbiAgfVxyXG4gIHJlc2V0U2VhcmNoKCkge1xyXG4gICAgaWYgKHRoaXMucHJvcHMub25SZXNldCkge1xyXG4gICAgICB0aGlzLnByb3BzLm9uUmVzZXQoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWFyY2hSZWYuY3VycmVudD8ucmVzZXRGaWVsZHMoKTtcclxuICB9XHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBzZWFyY2hGb3JtcyA9IFtdLFxyXG4gICAgICB0b29sQnV0dG9uUG9zaXRpb24sXHJcbiAgICAgIG9uU2VhcmNoLFxyXG4gICAgICBvblJlc2V0LFxyXG4gICAgICBzZWFyY2hGb3JtUHJvcHMgPSB7fSxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgbGV0IGNvbFNwYW4gPSAwO1xyXG4gICAgY29uc3QgaGVhZGVyQ291bnQgPSB0b29sQnV0dG9uUG9zaXRpb24gPT0gXCJyaWdodFwiID8gMSA6IDI7XHJcbiAgICBjb25zdCBoZWFkZXJSb3V0ID0gc2VhcmNoRm9ybXMubGVuZ3RoICUgNDtcclxuICAgIGlmIChoZWFkZXJSb3V0ID09IDApIHtcclxuICAgICAgY29sU3BhbiA9IDE4O1xyXG4gICAgfSBlbHNlIGlmIChoZWFkZXJSb3V0ID09IDEpIHtcclxuICAgICAgY29sU3BhbiA9IDEyO1xyXG4gICAgfSBlbHNlIGlmIChoZWFkZXJSb3V0ID09IDIpIHtcclxuICAgICAgY29sU3BhbiA9IDY7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8Um93IGd1dHRlcj17MjR9IHdyYXA+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3NOYW1lPXtjbHMoXHJcbiAgICAgICAgICAgIGdldExlc3Moc3R5bGVzLCBcIm5zYy1oZWFkZXJzZWFyY2gtaGVhZGVyXCIpLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgW2dldExlc3Moc3R5bGVzLCBcIm5zYy1oZWFkZXJzZWFyY2gtaGVhZGVyLXBhZGRpbmdcIildOlxyXG4gICAgICAgICAgICAgICAgc2VhcmNoRm9ybXMubGVuZ3RoID4gMyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgdGhpcy5wcm9wcy5jbGFzc05hbWVcclxuICAgICAgICAgICl9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhnZXRMZXNzKHN0eWxlcywgXCJuc2MtaGVhZGVyc2VhcmNoLWZvcm1cIikpfT5cclxuICAgICAgICAgICAgPEZvcm1cclxuICAgICAgICAgICAgICByZWY9e3RoaXMuc2VhcmNoUmVmfVxyXG4gICAgICAgICAgICAgIGxhYmVsQ29sPXt7fX1cclxuICAgICAgICAgICAgICB3cmFwcGVyQ29sPXt7fX1cclxuICAgICAgICAgICAgICBzdHlsZT17eyB3aWR0aDogXCIxMDAlXCIsIGRpc3BsYXk6IFwiZmxleFwiLCBmbGV4V3JhcDogXCJ3cmFwXCIgfX1cclxuICAgICAgICAgICAgICBvbkZpbmlzaD17dGhpcy5vblNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgIC8vIGxhYmVsQWxpZ249eydsZWZ0J31cclxuICAgICAgICAgICAgICB7Li4uc2VhcmNoRm9ybVByb3BzfVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge3NlYXJjaEZvcm1zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtUHJvcHMgPSBpdGVtLnByb3BzIHx8IHt9O1xyXG4gICAgICAgICAgICAgICAgbGV0IGRpc3BsYXkgPSBcImJsb2NrXCI7XHJcbiAgICAgICAgICAgICAgICBpZiAoaXRlbVByb3BzLmZvcm1hdCB8fCBpdGVtUHJvcHMudmFsdWVGb3JtYXQpIHtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0W2l0ZW0ubmFtZV0gPSBpdGVtUHJvcHMuZm9ybWF0IHx8IGl0ZW1Qcm9wcy52YWx1ZUZvcm1hdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmIChpbmRleCA+IGhlYWRlckNvdW50ICYmICF0aGlzLnN0YXRlLmV4cGFuZCkge1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5ID0gXCJub25lXCI7XHJcbiAgICAgICAgICAgICAgICAgIC8vcmV0dXJuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsZXQgYWxsb3dDaGFycyA9IGl0ZW0/LnByb3BzPy5hbGxvd0NoYXJzIHx8IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHByb3BzID0geyAuLi5pdGVtUHJvcHMgfTtcclxuICAgICAgICAgICAgICAgIGxldCBzZWFyY2hEaXNhYmxlZCA9XHJcbiAgICAgICAgICAgICAgICAgIHByb3BzLnNlYXJjaERpc2FibGVkID09PSB0cnVlID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgZGVsZXRlIHByb3BzLnNlYXJjaERpc2FibGVkO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFpdGVtLnR5cGUgfHwgaXRlbS50eXBlID09IFwiSW5wdXRcIikge1xyXG4gICAgICAgICAgICAgICAgICBwcm9wcy5hbGxvd0NoYXJzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgIGRlbGV0ZSBwcm9wcy5hbGxvd0NoYXJzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgbGV0IGRlZmF1bHRJdGVtID0ge1xyXG4gICAgICAgICAgICAgICAgICBsYWJlbDogaXRlbS5sYWJlbCxcclxuICAgICAgICAgICAgICAgICAgbmFtZTogaXRlbS5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICBhbGxvd0NoYXJzOiBhbGxvd0NoYXJzLFxyXG4gICAgICAgICAgICAgICAgICBydWxlczogaXRlbS5ydWxlcyxcclxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50TmFtZTogaXRlbS50eXBlID8gaXRlbS50eXBlIDogXCJJbnB1dFwiLFxyXG4gICAgICAgICAgICAgICAgfSBhcyBhbnk7XHJcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS5sYWJlbENvbCkge1xyXG4gICAgICAgICAgICAgICAgICBkZWZhdWx0SXRlbSA9IHsgLi4uZGVmYXVsdEl0ZW0sIGxhYmVsQ29sOiBpdGVtLmxhYmVsQ29sIH07XHJcbiAgICAgICAgICAgICAgICAgIGRlbGV0ZSBpdGVtLmxhYmVsQ29sO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0ud3JhcHBlckNvbCkge1xyXG4gICAgICAgICAgICAgICAgICBkZWZhdWx0SXRlbSA9IHsgLi4uZGVmYXVsdEl0ZW0sIHdyYXBwZXJDb2w6IGl0ZW0ud3JhcHBlckNvbCB9O1xyXG4gICAgICAgICAgICAgICAgICBkZWxldGUgaXRlbS53cmFwcGVyQ29sO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgbGV0IHBsYWNlaG9sZGVyOiBhbnkgPVxyXG4gICAgICAgICAgICAgICAgICBpdGVtLnR5cGUgPT0gXCJTZWxlY3RcIlxyXG4gICAgICAgICAgICAgICAgICAgID8gYOivt+mAieaLqSR7aXRlbS5sYWJlbH1gXHJcbiAgICAgICAgICAgICAgICAgICAgOiBg6K+36L6T5YWlJHtpdGVtLmxhYmVsfWA7XHJcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS50eXBlID09IFwiUmFuZ2VQaWNrZXJcIikge1xyXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlciA9IFtcIuW8gOWni+aXtumXtFwiLCBcIue7k+adn+aXtumXtFwiXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICAgIDxDb2xcclxuICAgICAgICAgICAgICAgICAgICBtZD17eyBzcGFuOiAxMiB9fVxyXG4gICAgICAgICAgICAgICAgICAgIHNtPXt7IHNwYW46IDI0IH19XHJcbiAgICAgICAgICAgICAgICAgICAgbGc9e3sgc3BhbjogNiB9fVxyXG4gICAgICAgICAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3sgcGFkZGluZ1JpZ2h0OiAwLCBkaXNwbGF5OiBkaXNwbGF5IH19XHJcbiAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIHsuLi5kZWZhdWx0SXRlbX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICB7Z2V0Tm9kZShpdGVtLnR5cGUsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogeyB3aWR0aDogXCIxMDAlXCIgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJvcHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBzZWFyY2hEaXNhYmxlZCxcclxuICAgICAgICAgICAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxyXG4gICAgICAgICAgICAgICAgICA8L0NvbD5cclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgPENvbFxyXG4gICAgICAgICAgICAgICAgbWQ9e3sgc3BhbjogMTIgfX1cclxuICAgICAgICAgICAgICAgIHNtPXt7IHNwYW46IDI0IH19XHJcbiAgICAgICAgICAgICAgICBsZz17eyBzcGFuOiB0b29sQnV0dG9uUG9zaXRpb24gPT0gXCJyaWdodFwiID8gMTIgOiA2IH19XHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyBwYWRkaW5nUmlnaHQ6IDAgfX1cclxuICAgICAgICAgICAgICAgIG9mZnNldD17XHJcbiAgICAgICAgICAgICAgICAgICh0aGlzLnN0YXRlLmV4cGFuZCB8fCBzZWFyY2hGb3Jtcy5sZW5ndGggPCA0KSAmJlxyXG4gICAgICAgICAgICAgICAgICAgIHNlYXJjaEZvcm1zLmxlbmd0aCA+IDFcclxuICAgICAgICAgICAgICAgICAgICA/IGNvbFNwYW5cclxuICAgICAgICAgICAgICAgICAgICA6IDBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzKFxyXG4gICAgICAgICAgICAgICAgICAgIGdldExlc3Moc3R5bGVzLCBcIm5zYy1oZWFkZXJzZWFyY2gtc2VhcmNoLWJ1dHRvbnNcIiksXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgW2dldExlc3Moc3R5bGVzLCBcIm5zYy1oZWFkZXJzZWFyY2gtc2VhcmNoLWJ1dHRvbnMtZmxleFwiKV06XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlYXJjaEZvcm1zLmxlbmd0aCA+IDEsXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgICAgICBzdHlsZT17eyBtYXJnaW5Ub3A6IDAgfX1cclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzKHtcclxuICAgICAgICAgICAgICAgICAgICAgIFtnZXRMZXNzKHN0eWxlcywgXCJuc2MtaGVhZGVyc2VhcmNoLWJ1dHRvbi1yZXZlcnNlXCIpXTpcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9wcy5idXR0b25SZXZlcnMgPT0gdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9e1wicHJpbWFyeVwifVxyXG4gICAgICAgICAgICAgICAgICAgICAgLy8gb25DbGljaz17dGhpcy5vblNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgICAgICAgICAgaWNvbj17PFNlYXJjaE91dGxpbmVkIC8+fVxyXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3sgbWFyZ2luTGVmdDogMCB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgaHRtbFR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgIOafpeivolxyXG4gICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIHtzZWFyY2hGb3Jtcy5sZW5ndGggPiAxICYmIChcclxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdHlwZT17XCJwcmltYXJ5XCJ9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMucmVzZXRTZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj17PFJlbG9hZE91dGxpbmVkIC8+fVxyXG4gICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICDph43nva5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICB7c2VhcmNoRm9ybXMubGVuZ3RoID4gMyAmJiAoXHJcbiAgICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcIm5zYy1oZWFkZXJzZWFyY2gtZXhwYW5kLXN0eWxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZXhwYW5kIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBleHBhbmQ6ICFleHBhbmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICB7dGhpcy5zdGF0ZS5leHBhbmQgPyBcIuaUtui1t1wiIDogXCLlsZXlvIBcIn1cclxuICAgICAgICAgICAgICAgICAgICAgIHt0aGlzLnN0YXRlLmV4cGFuZCA/IDxVcE91dGxpbmVkIC8+IDogPERvd25PdXRsaW5lZCAvPn1cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L0NvbD5cclxuICAgICAgICAgICAgPC9Gb3JtPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvUm93PlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgSGVhZGVyU2VhcmNoO1xyXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE9BQU9BLEtBQUssSUFBSUMsYUFBYSxRQUFtQixPQUFPO0FBQ3ZELE9BQU9DLElBQUksTUFBTSxpQkFBaUI7QUFDbEMsT0FBT0MsTUFBTSxNQUFNLG1CQUFtQjtBQUN0QyxPQUFPQyxHQUFHLE1BQU0sWUFBWTtBQUM1QixPQUFPLGNBQWM7QUFDckIsT0FBT0MsR0FBRyxNQUFNLHFCQUFxQjtBQUNyQyxPQUFPQyxHQUFHLE1BQU0scUJBQXFCO0FBQ3JDLFNBQVNDLFVBQVUsUUFBUSxtQkFBbUI7QUFDOUMsU0FDRUMsWUFBWSxFQUNaQyxVQUFVLEVBQ1ZDLGNBQWMsRUFDZEMsY0FBYyxRQUNULG1CQUFtQjtBQUMxQixTQUFTQyxPQUFPLEVBQUVDLE9BQU8sUUFBUSxhQUFhO0FBQzlDLE9BQU9DLEtBQUssTUFBTSxPQUFPO0FBQ3pCLE1BQU1DLE1BQU0sR0FBRyxJQUFJO0FBbUJuQixNQUFNQyxZQUFZLFNBQVNmLGFBQWEsQ0FBbUI7RUFBQWdCLFlBQUE7SUFBQSxT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
247
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJGb3JtIiwiQnV0dG9uIiwiY2xzIiwiQ29sIiwiUm93IiwiaXNFbXB0eU9iaiIsIkRvd25PdXRsaW5lZCIsIlVwT3V0bGluZWQiLCJSZWxvYWRPdXRsaW5lZCIsIlNlYXJjaE91dGxpbmVkIiwiZ2V0TGVzcyIsImdldE5vZGUiLCJkYXlqcyIsInN0eWxlcyIsIkhlYWRlclNlYXJjaCIsImNvbnN0cnVjdG9yIiwiYXJndW1lbnRzIiwiX2RlZmluZVByb3BlcnR5IiwiY3JlYXRlUmVmIiwiZXhwYW5kIiwic2V0U2VhcmNoUGFyYW1zIiwicGFyYW1zIiwiY2FsbEJhY2siLCJfdGhpcyRzZWFyY2hSZWYkY3VycmUiLCJuZXdQYXJhbXMiLCJfb2JqZWN0U3ByZWFkIiwiY29uc29sZSIsImxvZyIsImRhdGVGb3JtYXQiLCJrZXkiLCJ2YWx1ZSIsIkFycmF5IiwiaXNBcnJheSIsInNlYXJjaFJlZiIsImN1cnJlbnQiLCJzZXRGaWVsZHNWYWx1ZSIsImdldFNlYXJjaFZhbHVlcyIsImZyb21WYWx1ZSIsImZvcm1hdFZhbHVlIiwiX3RoaXMkc2VhcmNoUmVmJGN1cnJlMiIsImdldEZpZWxkc1ZhbHVlIiwib2xkZGF0YSIsImxlbmd0aCIsImZvcm1hdCIsIm9uU2VhcmNoIiwicHJvcHMiLCJyZXNldEZpZWxkcyIsIl90aGlzJHNlYXJjaFJlZiRjdXJyZTMiLCJyZXNldFNlYXJjaCIsIl90aGlzJHNlYXJjaFJlZiRjdXJyZTQiLCJvblJlc2V0IiwicmVuZGVyIiwic2VhcmNoRm9ybXMiLCJ0b29sQnV0dG9uUG9zaXRpb24iLCJzZWFyY2hGb3JtUHJvcHMiLCJjb2xTcGFuIiwiaGVhZGVyQ291bnQiLCJoZWFkZXJSb3V0IiwiY3JlYXRlRWxlbWVudCIsImd1dHRlciIsIndyYXAiLCJjbGFzc05hbWUiLCJfZXh0ZW5kcyIsInJlZiIsImxhYmVsQ29sIiwid3JhcHBlckNvbCIsInN0eWxlIiwid2lkdGgiLCJkaXNwbGF5IiwiZmxleFdyYXAiLCJvbkZpbmlzaCIsImJpbmQiLCJtYXAiLCJpdGVtIiwiaW5kZXgiLCJfaXRlbSRwcm9wcyIsIml0ZW1Qcm9wcyIsInZhbHVlRm9ybWF0IiwibmFtZSIsInN0YXRlIiwiYWxsb3dDaGFycyIsInNlYXJjaERpc2FibGVkIiwidHlwZSIsImRlZmF1bHRJdGVtIiwibGFiZWwiLCJydWxlcyIsImNvbXBvbmVudE5hbWUiLCJwbGFjZWhvbGRlciIsImNvbmNhdCIsIm1kIiwic3BhbiIsInNtIiwibGciLCJwYWRkaW5nUmlnaHQiLCJJdGVtIiwiZGlzYWJsZWQiLCJvZmZzZXQiLCJtYXJnaW5Ub3AiLCJidXR0b25SZXZlcnMiLCJpY29uIiwibWFyZ2luTGVmdCIsImh0bWxUeXBlIiwib25DbGljayIsInNldFN0YXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFnZS9IZWFkZXJTZWFyY2gvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50LCBSZWFjdE5vZGUgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgQ29sIGZyb20gXCIuLi8uLi9iYXNlL2dyaWQvQ29sXCI7XHJcbmltcG9ydCBSb3cgZnJvbSBcIi4uLy4uL2Jhc2UvZ3JpZC9Sb3dcIjtcclxuaW1wb3J0IHsgaXNFbXB0eU9iaiB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQge1xyXG4gIERvd25PdXRsaW5lZCxcclxuICBVcE91dGxpbmVkLFxyXG4gIFJlbG9hZE91dGxpbmVkLFxyXG4gIFNlYXJjaE91dGxpbmVkLFxyXG59IGZyb20gXCJAYW50LWRlc2lnbi9pY29uc1wiO1xyXG5pbXBvcnQgeyBnZXRMZXNzLCBnZXROb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCBkYXlqcyBmcm9tIFwiZGF5anNcIjtcclxuY29uc3Qgc3R5bGVzID0gbnVsbDtcclxuaW50ZXJmYWNlIFNlYXJjaEl0ZW1Qcm9wcyB7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgbGFiZWxDb2w/OiBhbnk7XHJcbiAgdHlwZT86IHN0cmluZztcclxuICB3cmFwcGVyQ29sPzogYW55O1xyXG4gIHByb3BzPzogYW55O1xyXG59XHJcbmludGVyZmFjZSBTZWFyY2hQcm9wcyB7XHJcbiAgc2VhcmNoRm9ybXM6IEFycmF5PFNlYXJjaEl0ZW1Qcm9wcz47IC8v5piv5ZCm5pi+56S65pON5L2c5YiXXHJcbiAgdG9vbEJ1dHRvblBvc2l0aW9uPzogc3RyaW5nO1xyXG4gIG9uU2VhcmNoPzogYW55O1xyXG4gIG9uUmVzZXQ/OiBhbnk7XHJcbiAgc2VhcmNoRm9ybVByb3BzPzogb2JqZWN0O1xyXG4gIGJ1dHRvblJldmVycz86IGJvb2xlYW47XHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG59XHJcblxyXG5jbGFzcyBIZWFkZXJTZWFyY2ggZXh0ZW5kcyBQdXJlQ29tcG9uZW50PFNlYXJjaFByb3BzLCBhbnk+IHtcclxuICBzZWFyY2hSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIGRhdGVGb3JtYXQgPSB7fSBhcyBhbnk7XHJcbiAgc3RhdGUgPSB7IGV4cGFuZDogZmFsc2UgfTtcclxuICBzZXRTZWFyY2hQYXJhbXMocGFyYW1zLCBjYWxsQmFjaykge1xyXG4gICAgbGV0IG5ld1BhcmFtcyA9IHsgLi4ucGFyYW1zIH07XHJcbiAgICBjb25zb2xlLmxvZygndGhpcy5kYXRlRm9ybWF0dGhpcy5kYXRlRm9ybWF0Jyx0aGlzLmRhdGVGb3JtYXQpXHJcbiAgICBpZiAoIWlzRW1wdHlPYmoodGhpcy5kYXRlRm9ybWF0KSkge1xyXG4gICAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5kYXRlRm9ybWF0KSB7XHJcbiAgICAgICAgbGV0IHZhbHVlID0gbmV3UGFyYW1zW2tleV07XHJcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgIG5ld1BhcmFtc1trZXldID0gZGF5anModmFsdWUsIHRoaXMuZGF0ZUZvcm1hdFtrZXldKTtcclxuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlWzBdID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICBuZXdQYXJhbXNba2V5XSA9IFtcclxuICAgICAgICAgICAgICBkYXlqcyh2YWx1ZVswXSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgIGRheWpzKHZhbHVlWzFdLCB0aGlzLmRhdGVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgIF07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLnNlYXJjaFJlZi5jdXJyZW50Py5zZXRGaWVsZHNWYWx1ZShuZXdQYXJhbXMpO1xyXG4gIH1cclxuICBnZXRTZWFyY2hWYWx1ZXMoKSB7XHJcbiAgICBjb25zdCBmcm9tVmFsdWUgPSB0aGlzLmZvcm1hdFZhbHVlKCk7XHJcbiAgICByZXR1cm4gZnJvbVZhbHVlO1xyXG4gIH1cclxuICBmb3JtYXRWYWx1ZSgpIHtcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBpZiAoIWlzRW1wdHlPYmoodGhpcy5kYXRlRm9ybWF0KSkge1xyXG4gICAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5kYXRlRm9ybWF0KSB7XHJcbiAgICAgICAgbGV0IG9sZGRhdGEgPSBmcm9tVmFsdWVba2V5XTtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvbGRkYXRhKSkge1xyXG4gICAgICAgICAgaWYgKG9sZGRhdGEubGVuZ3RoID4gMCAmJiBvbGRkYXRhWzBdICYmIG9sZGRhdGFbMV0pIHtcclxuICAgICAgICAgICAgZnJvbVZhbHVlW2tleV0gPSBbXHJcbiAgICAgICAgICAgICAgZGF5anMob2xkZGF0YVswXSkuZm9ybWF0KHRoaXMuZGF0ZUZvcm1hdFtrZXldKSxcclxuICAgICAgICAgICAgICBkYXlqcyhvbGRkYXRhWzFdKS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICBdO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSBpZiAob2xkZGF0YSkge1xyXG4gICAgICAgICAgZnJvbVZhbHVlW2tleV0gPSBkYXlqcyhvbGRkYXRhKS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0W2tleV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZyb21WYWx1ZTtcclxuICB9XHJcbiAgb25TZWFyY2goKSB7XHJcbiAgICBjb25zdCB7IG9uU2VhcmNoIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgZnJvbVZhbHVlID0gdGhpcy5mb3JtYXRWYWx1ZSgpO1xyXG4gICAgaWYgKG9uU2VhcmNoKSB7XHJcbiAgICAgIG9uU2VhcmNoKGZyb21WYWx1ZSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICB9XHJcbiAgcmVzZXRGaWVsZHMoKSB7XHJcbiAgICB0aGlzLnNlYXJjaFJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gIH1cclxuICByZXNldFNlYXJjaCgpIHtcclxuICAgIGlmICh0aGlzLnByb3BzLm9uUmVzZXQpIHtcclxuICAgICAgdGhpcy5wcm9wcy5vblJlc2V0KCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LnJlc2V0RmllbGRzKCk7XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgc2VhcmNoRm9ybXMgPSBbXSxcclxuICAgICAgdG9vbEJ1dHRvblBvc2l0aW9uLFxyXG4gICAgICBvblNlYXJjaCxcclxuICAgICAgb25SZXNldCxcclxuICAgICAgc2VhcmNoRm9ybVByb3BzID0ge30sXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGxldCBjb2xTcGFuID0gMDtcclxuICAgIGNvbnN0IGhlYWRlckNvdW50ID0gdG9vbEJ1dHRvblBvc2l0aW9uID09IFwicmlnaHRcIiA/IDEgOiAyO1xyXG4gICAgY29uc3QgaGVhZGVyUm91dCA9IHNlYXJjaEZvcm1zLmxlbmd0aCAlIDQ7XHJcbiAgICBpZiAoaGVhZGVyUm91dCA9PSAwKSB7XHJcbiAgICAgIGNvbFNwYW4gPSAxODtcclxuICAgIH0gZWxzZSBpZiAoaGVhZGVyUm91dCA9PSAxKSB7XHJcbiAgICAgIGNvbFNwYW4gPSAxMjtcclxuICAgIH0gZWxzZSBpZiAoaGVhZGVyUm91dCA9PSAyKSB7XHJcbiAgICAgIGNvbFNwYW4gPSA2O1xyXG4gICAgfVxyXG4gICAgY29uc29sZS5sb2coJ3NlYXJjaEZvcm1zJyxzZWFyY2hGb3JtcylcclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxSb3cgZ3V0dGVyPXsyNH0gd3JhcD5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICBjbGFzc05hbWU9e2NscyhcclxuICAgICAgICAgICAgZ2V0TGVzcyhzdHlsZXMsIFwibnNjLWhlYWRlcnNlYXJjaC1oZWFkZXJcIiksXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBbZ2V0TGVzcyhzdHlsZXMsIFwibnNjLWhlYWRlcnNlYXJjaC1oZWFkZXItcGFkZGluZ1wiKV06XHJcbiAgICAgICAgICAgICAgICBzZWFyY2hGb3Jtcy5sZW5ndGggPiAzLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB0aGlzLnByb3BzLmNsYXNzTmFtZVxyXG4gICAgICAgICAgKX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xzKGdldExlc3Moc3R5bGVzLCBcIm5zYy1oZWFkZXJzZWFyY2gtZm9ybVwiKSl9PlxyXG4gICAgICAgICAgICA8Rm9ybVxyXG4gICAgICAgICAgICAgIHJlZj17dGhpcy5zZWFyY2hSZWZ9XHJcbiAgICAgICAgICAgICAgbGFiZWxDb2w9e3t9fVxyXG4gICAgICAgICAgICAgIHdyYXBwZXJDb2w9e3t9fVxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7IHdpZHRoOiBcIjEwMCVcIiwgZGlzcGxheTogXCJmbGV4XCIsIGZsZXhXcmFwOiBcIndyYXBcIiB9fVxyXG4gICAgICAgICAgICAgIG9uRmluaXNoPXt0aGlzLm9uU2VhcmNoLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgLy8gbGFiZWxBbGlnbj17J2xlZnQnfVxyXG4gICAgICAgICAgICAgIHsuLi5zZWFyY2hGb3JtUHJvcHN9XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICB7c2VhcmNoRm9ybXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1Qcm9wcyA9IGl0ZW0ucHJvcHMgfHwge307XHJcbiAgICAgICAgICAgICAgICBsZXQgZGlzcGxheSA9IFwiYmxvY2tcIjtcclxuICAgICAgICAgICAgICAgIGlmIChpdGVtUHJvcHMuZm9ybWF0IHx8IGl0ZW1Qcm9wcy52YWx1ZUZvcm1hdCkge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRhdGVGb3JtYXRbaXRlbS5uYW1lXSA9IGl0ZW1Qcm9wcy5mb3JtYXQgfHwgaXRlbVByb3BzLnZhbHVlRm9ybWF0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKGluZGV4ID4gaGVhZGVyQ291bnQgJiYgIXRoaXMuc3RhdGUuZXhwYW5kKSB7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgICAgICAgICAgLy9yZXR1cm5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxldCBhbGxvd0NoYXJzID0gaXRlbT8ucHJvcHM/LmFsbG93Q2hhcnMgfHwgZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBsZXQgcHJvcHMgPSB7IC4uLml0ZW1Qcm9wcyB9O1xyXG4gICAgICAgICAgICAgICAgbGV0IHNlYXJjaERpc2FibGVkID1cclxuICAgICAgICAgICAgICAgICAgcHJvcHMuc2VhcmNoRGlzYWJsZWQgPT09IHRydWUgPyB0cnVlIDogZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBkZWxldGUgcHJvcHMuc2VhcmNoRGlzYWJsZWQ7XHJcbiAgICAgICAgICAgICAgICBpZiAoIWl0ZW0udHlwZSB8fCBpdGVtLnR5cGUgPT0gXCJJbnB1dFwiKSB7XHJcbiAgICAgICAgICAgICAgICAgIHByb3BzLmFsbG93Q2hhcnMgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgZGVsZXRlIHByb3BzLmFsbG93Q2hhcnM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsZXQgZGVmYXVsdEl0ZW0gPSB7XHJcbiAgICAgICAgICAgICAgICAgIGxhYmVsOiBpdGVtLmxhYmVsLFxyXG4gICAgICAgICAgICAgICAgICBuYW1lOiBpdGVtLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgIGFsbG93Q2hhcnM6IGFsbG93Q2hhcnMsXHJcbiAgICAgICAgICAgICAgICAgIHJ1bGVzOiBpdGVtLnJ1bGVzLFxyXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnROYW1lOiBpdGVtLnR5cGUgPyBpdGVtLnR5cGUgOiBcIklucHV0XCIsXHJcbiAgICAgICAgICAgICAgICB9IGFzIGFueTtcclxuICAgICAgICAgICAgICAgIGlmIChpdGVtLmxhYmVsQ29sKSB7XHJcbiAgICAgICAgICAgICAgICAgIGRlZmF1bHRJdGVtID0geyAuLi5kZWZhdWx0SXRlbSwgbGFiZWxDb2w6IGl0ZW0ubGFiZWxDb2wgfTtcclxuICAgICAgICAgICAgICAgICAgZGVsZXRlIGl0ZW0ubGFiZWxDb2w7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS53cmFwcGVyQ29sKSB7XHJcbiAgICAgICAgICAgICAgICAgIGRlZmF1bHRJdGVtID0geyAuLi5kZWZhdWx0SXRlbSwgd3JhcHBlckNvbDogaXRlbS53cmFwcGVyQ29sIH07XHJcbiAgICAgICAgICAgICAgICAgIGRlbGV0ZSBpdGVtLndyYXBwZXJDb2w7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsZXQgcGxhY2Vob2xkZXI6IGFueSA9XHJcbiAgICAgICAgICAgICAgICAgIGl0ZW0udHlwZSA9PSBcIlNlbGVjdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPyBg6K+36YCJ5oupJHtpdGVtLmxhYmVsfWBcclxuICAgICAgICAgICAgICAgICAgICA6IGDor7fovpPlhaUke2l0ZW0ubGFiZWx9YDtcclxuICAgICAgICAgICAgICAgIGlmIChpdGVtLnR5cGUgPT0gXCJSYW5nZVBpY2tlclwiKSB7XHJcbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyID0gW1wi5byA5aeL5pe26Ze0XCIsIFwi57uT5p2f5pe26Ze0XCJdO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgPENvbFxyXG4gICAgICAgICAgICAgICAgICAgIG1kPXt7IHNwYW46IDEyIH19XHJcbiAgICAgICAgICAgICAgICAgICAgc209e3sgc3BhbjogMjQgfX1cclxuICAgICAgICAgICAgICAgICAgICBsZz17eyBzcGFuOiA2IH19XHJcbiAgICAgICAgICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgICAgICAgICBzdHlsZT17eyBwYWRkaW5nUmlnaHQ6IDAsIGRpc3BsYXk6IGRpc3BsYXkgfX1cclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gey4uLmRlZmF1bHRJdGVtfT5cclxuICAgICAgICAgICAgICAgICAgICAgIHtnZXROb2RlKGl0ZW0udHlwZSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogcGxhY2Vob2xkZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7IHdpZHRoOiBcIjEwMCVcIiB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5wcm9wcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IHNlYXJjaERpc2FibGVkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgIDwvQ29sPlxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAgICA8Q29sXHJcbiAgICAgICAgICAgICAgICBtZD17eyBzcGFuOiAxMiB9fVxyXG4gICAgICAgICAgICAgICAgc209e3sgc3BhbjogMjQgfX1cclxuICAgICAgICAgICAgICAgIGxnPXt7IHNwYW46IHRvb2xCdXR0b25Qb3NpdGlvbiA9PSBcInJpZ2h0XCIgPyAxMiA6IDYgfX1cclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7IHBhZGRpbmdSaWdodDogMCB9fVxyXG4gICAgICAgICAgICAgICAgb2Zmc2V0PXtcclxuICAgICAgICAgICAgICAgICAgKHRoaXMuc3RhdGUuZXhwYW5kIHx8IHNlYXJjaEZvcm1zLmxlbmd0aCA8IDQpICYmXHJcbiAgICAgICAgICAgICAgICAgICAgc2VhcmNoRm9ybXMubGVuZ3RoID4gMVxyXG4gICAgICAgICAgICAgICAgICAgID8gY29sU3BhblxyXG4gICAgICAgICAgICAgICAgICAgIDogMFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbHMoXHJcbiAgICAgICAgICAgICAgICAgICAgZ2V0TGVzcyhzdHlsZXMsIFwibnNjLWhlYWRlcnNlYXJjaC1zZWFyY2gtYnV0dG9uc1wiKSxcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBbZ2V0TGVzcyhzdHlsZXMsIFwibnNjLWhlYWRlcnNlYXJjaC1zZWFyY2gtYnV0dG9ucy1mbGV4XCIpXTpcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoRm9ybXMubGVuZ3RoID4gMSxcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgIHN0eWxlPXt7IG1hcmdpblRvcDogMCB9fVxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbHMoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgW2dldExlc3Moc3R5bGVzLCBcIm5zYy1oZWFkZXJzZWFyY2gtYnV0dG9uLXJldmVyc2VcIildOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnByb3BzLmJ1dHRvblJldmVycyA9PSB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT17XCJwcmltYXJ5XCJ9XHJcbiAgICAgICAgICAgICAgICAgICAgICAvLyBvbkNsaWNrPXt0aGlzLm9uU2VhcmNoLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgICAgICAgICBpY29uPXs8U2VhcmNoT3V0bGluZWQgLz59XHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17eyBtYXJnaW5MZWZ0OiAwIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICBodG1sVHlwZT1cInN1Ym1pdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAg5p+l6K+iXHJcbiAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAge3NlYXJjaEZvcm1zLmxlbmd0aCA+IDEgJiYgKFxyXG4gICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0eXBlPXtcInByaW1hcnlcIn1cclxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5yZXNldFNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uPXs8UmVsb2FkT3V0bGluZWQgLz59XHJcbiAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIOmHjee9rlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIHtzZWFyY2hGb3Jtcy5sZW5ndGggPiAzICYmIChcclxuICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZXMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwibnNjLWhlYWRlcnNlYXJjaC1leHBhbmQtc3R5bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBleHBhbmQgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGFuZDogIWV4cGFuZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgIHt0aGlzLnN0YXRlLmV4cGFuZCA/IFwi5pS26LW3XCIgOiBcIuWxleW8gFwifVxyXG4gICAgICAgICAgICAgICAgICAgICAge3RoaXMuc3RhdGUuZXhwYW5kID8gPFVwT3V0bGluZWQgLz4gOiA8RG93bk91dGxpbmVkIC8+fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvQ29sPlxyXG4gICAgICAgICAgICA8L0Zvcm0+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9Sb3c+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5leHBvcnQgZGVmYXVsdCBIZWFkZXJTZWFyY2g7XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBT0EsS0FBSyxJQUFJQyxhQUFhLFFBQW1CLE9BQU87QUFDdkQsT0FBT0MsSUFBSSxNQUFNLGlCQUFpQjtBQUNsQyxPQUFPQyxNQUFNLE1BQU0sbUJBQW1CO0FBQ3RDLE9BQU9DLEdBQUcsTUFBTSxZQUFZO0FBQzVCLE9BQU8sY0FBYztBQUNyQixPQUFPQyxHQUFHLE1BQU0scUJBQXFCO0FBQ3JDLE9BQU9DLEdBQUcsTUFBTSxxQkFBcUI7QUFDckMsU0FBU0MsVUFBVSxRQUFRLG1CQUFtQjtBQUM5QyxTQUNFQyxZQUFZLEVBQ1pDLFVBQVUsRUFDVkMsY0FBYyxFQUNkQyxjQUFjLFFBQ1QsbUJBQW1CO0FBQzFCLFNBQVNDLE9B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
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PureComponent","Form","Button","cls","Col","Row","isEmptyObj","DownOutlined","UpOutlined","ReloadOutlined","SearchOutlined","getLess","getNode","dayjs","styles","HeaderSearch","constructor","arguments","_defineProperty","createRef","expand","setSearchParams","params","callBack","_this$searchRef$curre","newParams","_objectSpread","dateFormat","key","value","Array","isArray","searchRef","current","setFieldsValue","getSearchValues","fromValue","formatValue","_this$searchRef$curre2","getFieldsValue","olddata","length","format","onSearch","props","resetFields","_this$searchRef$curre3","resetSearch","_this$searchRef$curre4","onReset","render","searchForms","toolButtonPosition","searchFormProps","colSpan","headerCount","headerRout","createElement","gutter","wrap","className","_extends","ref","labelCol","wrapperCol","style","width","display","flexWrap","onFinish","bind","map","item","index","_item$props","itemProps","valueFormat","name","state","allowChars","searchDisabled","type","defaultItem","label","rules","componentName","placeholder","concat","md","span","sm","lg","paddingRight","Item","disabled","offset","marginTop","buttonRevers","icon","marginLeft","htmlType","onClick","setState"],"sources":["../../../src/components/page/HeaderSearch/index.tsx"],"sourcesContent":["import React, { PureComponent, ReactNode } from \"react\";\r\nimport Form from \"../../base/form\";\r\nimport Button from \"../../base/button\";\r\nimport cls from \"classnames\";\r\nimport \"./index.less\";\r\nimport Col from \"../../base/grid/Col\";\r\nimport Row from \"../../base/grid/Row\";\r\nimport { isEmptyObj } from \"@bj-nsc/functions\";\r\nimport {\r\n DownOutlined,\r\n UpOutlined,\r\n ReloadOutlined,\r\n SearchOutlined,\r\n} from \"@ant-design/icons\";\r\nimport { getLess, getNode } from \"../../utils\";\r\nimport dayjs from \"dayjs\";\r\nconst styles = null;\r\ninterface SearchItemProps {\r\n label: string;\r\n name: string;\r\n labelCol?: any;\r\n type?: string;\r\n wrapperCol?: any;\r\n props?: any;\r\n}\r\ninterface SearchProps {\r\n searchForms: Array<SearchItemProps>; //是否显示操作列\r\n toolButtonPosition?: string;\r\n onSearch?: any;\r\n onReset?: any;\r\n searchFormProps?: object;\r\n buttonRevers?: boolean;\r\n className?: any;\r\n}\r\n\r\nclass HeaderSearch extends PureComponent<SearchProps, any> {\r\n searchRef = React.createRef<any>();\r\n dateFormat = {} as any;\r\n state = { expand: false };\r\n setSearchParams(params, callBack) {\r\n let newParams = { ...params };\r\n if (!isEmptyObj(this.dateFormat)) {\r\n for (let key in this.dateFormat) {\r\n let value = newParams[key];\r\n if (typeof value === 'string') {\r\n newParams[key] = dayjs(value, this.dateFormat[key]);\r\n } else if (Array.isArray(value)) {\r\n if (typeof value[0] === 'string') {\r\n newParams[key] = [\r\n dayjs(value[0], this.dateFormat[key]),\r\n dayjs(value[1], this.dateFormat[key]),\r\n ];\r\n }\r\n }\r\n }\r\n }\r\n this.searchRef.current?.setFieldsValue(newParams);\r\n }\r\n getSearchValues() {\r\n const fromValue = this.formatValue();\r\n return fromValue;\r\n }\r\n formatValue() {\r\n const fromValue = this.searchRef.current?.getFieldsValue();\r\n if (!isEmptyObj(this.dateFormat)) {\r\n for (let key in this.dateFormat) {\r\n let olddata = fromValue[key];\r\n if (Array.isArray(olddata)) {\r\n if (olddata.length > 0 && olddata[0] && olddata[1]) {\r\n fromValue[key] = [\r\n dayjs(olddata[0]).format(this.dateFormat[key]),\r\n dayjs(olddata[1]).format(this.dateFormat[key]),\r\n ];\r\n }\r\n } else if (olddata) {\r\n fromValue[key] = dayjs(olddata).format(this.dateFormat[key]);\r\n }\r\n }\r\n }\r\n return fromValue;\r\n }\r\n onSearch() {\r\n const { onSearch } = this.props;\r\n const fromValue = this.formatValue();\r\n if (onSearch) {\r\n onSearch(fromValue);\r\n return;\r\n }\r\n }\r\n resetFields() {\r\n this.searchRef.current?.resetFields();\r\n }\r\n resetSearch() {\r\n if (this.props.onReset) {\r\n this.props.onReset();\r\n return;\r\n }\r\n this.searchRef.current?.resetFields();\r\n }\r\n render() {\r\n const {\r\n searchForms = [],\r\n toolButtonPosition,\r\n onSearch,\r\n onReset,\r\n searchFormProps = {},\r\n } = this.props;\r\n let colSpan = 0;\r\n const headerCount = toolButtonPosition == \"right\" ? 1 : 2;\r\n const headerRout = searchForms.length % 4;\r\n if (headerRout == 0) {\r\n colSpan = 18;\r\n } else if (headerRout == 1) {\r\n colSpan = 12;\r\n } else if (headerRout == 2) {\r\n colSpan = 6;\r\n }\r\n return (\r\n <Row gutter={24} wrap>\r\n <div\r\n className={cls(\r\n getLess(styles, \"nsc-headersearch-header\"),\r\n {\r\n [getLess(styles, \"nsc-headersearch-header-padding\")]:\r\n searchForms.length > 3,\r\n },\r\n this.props.className\r\n )}\r\n >\r\n <div className={cls(getLess(styles, \"nsc-headersearch-form\"))}>\r\n <Form\r\n ref={this.searchRef}\r\n labelCol={{}}\r\n wrapperCol={{}}\r\n style={{ width: \"100%\", display: \"flex\", flexWrap: \"wrap\" }}\r\n onFinish={this.onSearch.bind(this)}\r\n // labelAlign={'left'}\r\n {...searchFormProps}\r\n >\r\n {searchForms.map((item: any, index: any) => {\r\n const itemProps = item.props || {};\r\n let display = \"block\";\r\n if (itemProps.format || itemProps.valueFormat) {\r\n this.dateFormat[item.name] = itemProps.format || itemProps.valueFormat;\r\n }\r\n if (index > headerCount && !this.state.expand) {\r\n display = \"none\";\r\n //return\r\n }\r\n let allowChars = item?.props?.allowChars || false;\r\n let props = { ...itemProps };\r\n let searchDisabled =\r\n props.searchDisabled === true ? true : false;\r\n delete props.searchDisabled;\r\n if (!item.type || item.type == \"Input\") {\r\n props.allowChars = true;\r\n } else {\r\n delete props.allowChars;\r\n }\r\n let defaultItem = {\r\n label: item.label,\r\n name: item.name,\r\n allowChars: allowChars,\r\n rules: item.rules,\r\n componentName: item.type ? item.type : \"Input\",\r\n } as any;\r\n if (item.labelCol) {\r\n defaultItem = { ...defaultItem, labelCol: item.labelCol };\r\n delete item.labelCol;\r\n }\r\n if (item.wrapperCol) {\r\n defaultItem = { ...defaultItem, wrapperCol: item.wrapperCol };\r\n delete item.wrapperCol;\r\n }\r\n let placeholder: any =\r\n item.type == \"Select\"\r\n ? `请选择${item.label}`\r\n : `请输入${item.label}`;\r\n if (item.type == \"RangePicker\") {\r\n placeholder = [\"开始时间\", \"结束时间\"];\r\n }\r\n return (\r\n <Col\r\n md={{ span: 12 }}\r\n sm={{ span: 24 }}\r\n lg={{ span: 6 }}\r\n key={index}\r\n style={{ paddingRight: 0, display: display }}\r\n >\r\n <Form.Item {...defaultItem}>\r\n {getNode(item.type, {\r\n placeholder: placeholder,\r\n style: { width: \"100%\" },\r\n ...props,\r\n disabled: searchDisabled,\r\n })}\r\n </Form.Item>\r\n </Col>\r\n );\r\n })}\r\n <Col\r\n md={{ span: 12 }}\r\n sm={{ span: 24 }}\r\n lg={{ span: toolButtonPosition == \"right\" ? 12 : 6 }}\r\n style={{ paddingRight: 0 }}\r\n offset={\r\n (this.state.expand || searchForms.length < 4) &&\r\n searchForms.length > 1\r\n ? colSpan\r\n : 0\r\n }\r\n >\r\n <div\r\n className={cls(\r\n getLess(styles, \"nsc-headersearch-search-buttons\"),\r\n {\r\n [getLess(styles, \"nsc-headersearch-search-buttons-flex\")]:\r\n searchForms.length > 1,\r\n }\r\n )}\r\n style={{ marginTop: 0 }}\r\n >\r\n <div\r\n className={cls({\r\n [getLess(styles, \"nsc-headersearch-button-reverse\")]:\r\n this.props.buttonRevers == true,\r\n })}\r\n >\r\n <Button\r\n type={\"primary\"}\r\n // onClick={this.onSearch.bind(this)}\r\n icon={<SearchOutlined />}\r\n style={{ marginLeft: 0 }}\r\n htmlType=\"submit\"\r\n >\r\n 查询\r\n </Button>\r\n {searchForms.length > 1 && (\r\n <Button\r\n // type={\"primary\"}\r\n onClick={this.resetSearch.bind(this)}\r\n icon={<ReloadOutlined />}\r\n >\r\n 重置\r\n </Button>\r\n )}\r\n </div>\r\n {searchForms.length > 3 && (\r\n <a\r\n className={getLess(\r\n styles,\r\n \"nsc-headersearch-expand-style\"\r\n )}\r\n onClick={() => {\r\n const { expand } = this.state;\r\n this.setState({\r\n expand: !expand,\r\n });\r\n }}\r\n >\r\n {this.state.expand ? \"收起\" : \"展开\"}\r\n {this.state.expand ? <UpOutlined /> : <DownOutlined />}\r\n </a>\r\n )}\r\n </div>\r\n </Col>\r\n </Form>\r\n </div>\r\n </div>\r\n </Row>\r\n );\r\n }\r\n}\r\nexport default HeaderSearch;\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","PureComponent","Form","Button","cls","Col","Row","isEmptyObj","DownOutlined","UpOutlined","ReloadOutlined","SearchOutlined","getLess","getNode","dayjs","styles","HeaderSearch","constructor","arguments","_defineProperty","createRef","expand","setSearchParams","params","callBack","_this$searchRef$curre","newParams","_objectSpread","console","log","dateFormat","key","value","Array","isArray","searchRef","current","setFieldsValue","getSearchValues","fromValue","formatValue","_this$searchRef$curre2","getFieldsValue","olddata","length","format","onSearch","props","resetFields","_this$searchRef$curre3","resetSearch","_this$searchRef$curre4","onReset","render","searchForms","toolButtonPosition","searchFormProps","colSpan","headerCount","headerRout","createElement","gutter","wrap","className","_extends","ref","labelCol","wrapperCol","style","width","display","flexWrap","onFinish","bind","map","item","index","_item$props","itemProps","valueFormat","name","state","allowChars","searchDisabled","type","defaultItem","label","rules","componentName","placeholder","concat","md","span","sm","lg","paddingRight","Item","disabled","offset","marginTop","buttonRevers","icon","marginLeft","htmlType","onClick","setState"],"sources":["../../../src/components/page/HeaderSearch/index.tsx"],"sourcesContent":["import React, { PureComponent, ReactNode } from \"react\";\r\nimport Form from \"../../base/form\";\r\nimport Button from \"../../base/button\";\r\nimport cls from \"classnames\";\r\nimport \"./index.less\";\r\nimport Col from \"../../base/grid/Col\";\r\nimport Row from \"../../base/grid/Row\";\r\nimport { isEmptyObj } from \"@bj-nsc/functions\";\r\nimport {\r\n DownOutlined,\r\n UpOutlined,\r\n ReloadOutlined,\r\n SearchOutlined,\r\n} from \"@ant-design/icons\";\r\nimport { getLess, getNode } from \"../../utils\";\r\nimport dayjs from \"dayjs\";\r\nconst styles = null;\r\ninterface SearchItemProps {\r\n label: string;\r\n name: string;\r\n labelCol?: any;\r\n type?: string;\r\n wrapperCol?: any;\r\n props?: any;\r\n}\r\ninterface SearchProps {\r\n searchForms: Array<SearchItemProps>; //是否显示操作列\r\n toolButtonPosition?: string;\r\n onSearch?: any;\r\n onReset?: any;\r\n searchFormProps?: object;\r\n buttonRevers?: boolean;\r\n className?: any;\r\n}\r\n\r\nclass HeaderSearch extends PureComponent<SearchProps, any> {\r\n searchRef = React.createRef<any>();\r\n dateFormat = {} as any;\r\n state = { expand: false };\r\n setSearchParams(params, callBack) {\r\n let newParams = { ...params };\r\n console.log('this.dateFormatthis.dateFormat',this.dateFormat)\r\n if (!isEmptyObj(this.dateFormat)) {\r\n for (let key in this.dateFormat) {\r\n let value = newParams[key];\r\n if (typeof value === 'string') {\r\n newParams[key] = dayjs(value, this.dateFormat[key]);\r\n } else if (Array.isArray(value)) {\r\n if (typeof value[0] === 'string') {\r\n newParams[key] = [\r\n dayjs(value[0], this.dateFormat[key]),\r\n dayjs(value[1], this.dateFormat[key]),\r\n ];\r\n }\r\n }\r\n }\r\n }\r\n this.searchRef.current?.setFieldsValue(newParams);\r\n }\r\n getSearchValues() {\r\n const fromValue = this.formatValue();\r\n return fromValue;\r\n }\r\n formatValue() {\r\n const fromValue = this.searchRef.current?.getFieldsValue();\r\n if (!isEmptyObj(this.dateFormat)) {\r\n for (let key in this.dateFormat) {\r\n let olddata = fromValue[key];\r\n if (Array.isArray(olddata)) {\r\n if (olddata.length > 0 && olddata[0] && olddata[1]) {\r\n fromValue[key] = [\r\n dayjs(olddata[0]).format(this.dateFormat[key]),\r\n dayjs(olddata[1]).format(this.dateFormat[key]),\r\n ];\r\n }\r\n } else if (olddata) {\r\n fromValue[key] = dayjs(olddata).format(this.dateFormat[key]);\r\n }\r\n }\r\n }\r\n return fromValue;\r\n }\r\n onSearch() {\r\n const { onSearch } = this.props;\r\n const fromValue = this.formatValue();\r\n if (onSearch) {\r\n onSearch(fromValue);\r\n return;\r\n }\r\n }\r\n resetFields() {\r\n this.searchRef.current?.resetFields();\r\n }\r\n resetSearch() {\r\n if (this.props.onReset) {\r\n this.props.onReset();\r\n return;\r\n }\r\n this.searchRef.current?.resetFields();\r\n }\r\n render() {\r\n const {\r\n searchForms = [],\r\n toolButtonPosition,\r\n onSearch,\r\n onReset,\r\n searchFormProps = {},\r\n } = this.props;\r\n let colSpan = 0;\r\n const headerCount = toolButtonPosition == \"right\" ? 1 : 2;\r\n const headerRout = searchForms.length % 4;\r\n if (headerRout == 0) {\r\n colSpan = 18;\r\n } else if (headerRout == 1) {\r\n colSpan = 12;\r\n } else if (headerRout == 2) {\r\n colSpan = 6;\r\n }\r\n console.log('searchForms',searchForms)\r\n return (\r\n <Row gutter={24} wrap>\r\n <div\r\n className={cls(\r\n getLess(styles, \"nsc-headersearch-header\"),\r\n {\r\n [getLess(styles, \"nsc-headersearch-header-padding\")]:\r\n searchForms.length > 3,\r\n },\r\n this.props.className\r\n )}\r\n >\r\n <div className={cls(getLess(styles, \"nsc-headersearch-form\"))}>\r\n <Form\r\n ref={this.searchRef}\r\n labelCol={{}}\r\n wrapperCol={{}}\r\n style={{ width: \"100%\", display: \"flex\", flexWrap: \"wrap\" }}\r\n onFinish={this.onSearch.bind(this)}\r\n // labelAlign={'left'}\r\n {...searchFormProps}\r\n >\r\n {searchForms.map((item: any, index: any) => {\r\n const itemProps = item.props || {};\r\n let display = \"block\";\r\n if (itemProps.format || itemProps.valueFormat) {\r\n this.dateFormat[item.name] = itemProps.format || itemProps.valueFormat;\r\n }\r\n if (index > headerCount && !this.state.expand) {\r\n display = \"none\";\r\n //return\r\n }\r\n let allowChars = item?.props?.allowChars || false;\r\n let props = { ...itemProps };\r\n let searchDisabled =\r\n props.searchDisabled === true ? true : false;\r\n delete props.searchDisabled;\r\n if (!item.type || item.type == \"Input\") {\r\n props.allowChars = true;\r\n } else {\r\n delete props.allowChars;\r\n }\r\n let defaultItem = {\r\n label: item.label,\r\n name: item.name,\r\n allowChars: allowChars,\r\n rules: item.rules,\r\n componentName: item.type ? item.type : \"Input\",\r\n } as any;\r\n if (item.labelCol) {\r\n defaultItem = { ...defaultItem, labelCol: item.labelCol };\r\n delete item.labelCol;\r\n }\r\n if (item.wrapperCol) {\r\n defaultItem = { ...defaultItem, wrapperCol: item.wrapperCol };\r\n delete item.wrapperCol;\r\n }\r\n let placeholder: any =\r\n item.type == \"Select\"\r\n ? `请选择${item.label}`\r\n : `请输入${item.label}`;\r\n if (item.type == \"RangePicker\") {\r\n placeholder = [\"开始时间\", \"结束时间\"];\r\n }\r\n return (\r\n <Col\r\n md={{ span: 12 }}\r\n sm={{ span: 24 }}\r\n lg={{ span: 6 }}\r\n key={index}\r\n style={{ paddingRight: 0, display: display }}\r\n >\r\n <Form.Item {...defaultItem}>\r\n {getNode(item.type, {\r\n placeholder: placeholder,\r\n style: { width: \"100%\" },\r\n ...props,\r\n disabled: searchDisabled,\r\n })}\r\n </Form.Item>\r\n </Col>\r\n );\r\n })}\r\n <Col\r\n md={{ span: 12 }}\r\n sm={{ span: 24 }}\r\n lg={{ span: toolButtonPosition == \"right\" ? 12 : 6 }}\r\n style={{ paddingRight: 0 }}\r\n offset={\r\n (this.state.expand || searchForms.length < 4) &&\r\n searchForms.length > 1\r\n ? colSpan\r\n : 0\r\n }\r\n >\r\n <div\r\n className={cls(\r\n getLess(styles, \"nsc-headersearch-search-buttons\"),\r\n {\r\n [getLess(styles, \"nsc-headersearch-search-buttons-flex\")]:\r\n searchForms.length > 1,\r\n }\r\n )}\r\n style={{ marginTop: 0 }}\r\n >\r\n <div\r\n className={cls({\r\n [getLess(styles, \"nsc-headersearch-button-reverse\")]:\r\n this.props.buttonRevers == true,\r\n })}\r\n >\r\n <Button\r\n type={\"primary\"}\r\n // onClick={this.onSearch.bind(this)}\r\n icon={<SearchOutlined />}\r\n style={{ marginLeft: 0 }}\r\n htmlType=\"submit\"\r\n >\r\n 查询\r\n </Button>\r\n {searchForms.length > 1 && (\r\n <Button\r\n // type={\"primary\"}\r\n onClick={this.resetSearch.bind(this)}\r\n icon={<ReloadOutlined />}\r\n >\r\n 重置\r\n </Button>\r\n )}\r\n </div>\r\n {searchForms.length > 3 && (\r\n <a\r\n className={getLess(\r\n styles,\r\n \"nsc-headersearch-expand-style\"\r\n )}\r\n onClick={() => {\r\n const { expand } = this.state;\r\n this.setState({\r\n expand: !expand,\r\n });\r\n }}\r\n >\r\n {this.state.expand ? \"收起\" : \"展开\"}\r\n {this.state.expand ? <UpOutlined /> : <DownOutlined />}\r\n </a>\r\n )}\r\n </div>\r\n </Col>\r\n </Form>\r\n </div>\r\n </div>\r\n </Row>\r\n );\r\n }\r\n}\r\nexport default HeaderSearch;\r\n"],"mappings":"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"}
package/lib/utils.d.ts CHANGED
@@ -12,6 +12,8 @@ export declare function debounce(fn: any, ms: any): () => void;
12
12
  export declare function throttle(fn: any, ms: any): () => void;
13
13
  export declare const getLess: (styles: Object, name: string) => any;
14
14
  export declare const converFunction: (func: any, eventOption?: any, Utils?: any) => void;
15
+ export declare function simplifyObject(obj: any): {};
16
+ export declare function simplifyColumns(columns: any): any;
15
17
  declare const _default: {
16
18
  encryptValue: typeof encryptValue;
17
19
  checkModel: typeof checkModel;
package/lib/utils.js CHANGED
@@ -184,6 +184,23 @@ export const converFunction = (func, eventOption, Utils) => {
184
184
  func(eventOption, Utils);
185
185
  }
186
186
  };
187
+
188
+ // 保留原对象中所有“基础类型”的字段
189
+ export function simplifyObject(obj) {
190
+ const result = {};
191
+ for (const key in obj) {
192
+ const val = obj[key];
193
+ if (val === null || typeof val === 'string' || typeof val === 'number' || typeof val === 'boolean') {
194
+ result[key] = val;
195
+ }
196
+ }
197
+ return result;
198
+ }
199
+
200
+ // 简化整个 columns 数组
201
+ export function simplifyColumns(columns) {
202
+ return columns.map(col => simplifyObject(col));
203
+ }
187
204
  export default {
188
205
  encryptValue,
189
206
  checkModel,
@@ -192,4 +209,4 @@ export default {
192
209
  checkChars,
193
210
  px2vw
194
211
  };
195
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzbTJFbmNyeXB0VmFsdWUiLCJzbTRFbmNyeXB0IiwiYmFzZTY0RW5jcnlwdCIsIm1kNUVuY3J5cHQiLCJjaGVja1ZhbHVlIiwic20yRGVjcnlwdFZhbHVlIiwic200RGVjcnlwdCIsImJhc2U2NERlY3J5cHQiLCJpc0VtcHR5T2JqIiwiaXNFbXB0eSIsIkljb25Gb250IiwiUmVhY3QiLCJSYWRpbyIsIklucHV0IiwiU2VsZWN0IiwiQ2FzY2FkZXIiLCJDaGVja2JveCIsIkRhdGVQaWNrZXIiLCJSYW5nZVBpY2tlciIsIlN3aXRjaCIsIlVwbG9hZCIsIlBhc3N3b3JkIiwiVGV4dEFyZWEiLCJJbnB1dE51bWJlciIsImdldENvbmZpZyIsIkFudEljb24iLCJpY29ucyIsImVuY3J5cHRWYWx1ZSIsImVuY3J5cHQiLCJ2YWx1ZSIsInR5cGUiLCJrZXkiLCJkZWNyeXB0VmFsdWUiLCJkZWNyeXB0IiwiY2hlY2tNb2RlbCIsImNoZWNrdHlwZSIsImdldENhY2hlS2V5Iiwic290cmUiLCJ2aWV3bmFtZSIsInJlcXVlc3RDb25maWciLCJ1cmwiLCJKU09OIiwic3RyaW5naWZ5IiwiY2hlY2tDaGFycyIsInJlZyIsInRlc3QiLCJweDJ2dyIsInB4VmFsdWUiLCJiYXNlVmFsdWUiLCJiYXNlV2lkdGgiLCJ0b0ZpeGVkIiwiZ2V0SWNvbiIsImljb24iLCJkZWZhdWx0SWNvbiIsImljb25QcmVmaXgiLCJzaG93SWNvbiIsInN0YXJ0c1dpdGgiLCJjcmVhdGVFbGVtZW50IiwiY29tcG9uZW50IiwiZ2V0Tm9kZSIsInByb3BzIiwiRElWIiwiR3JvdXAiLCJkZWJvdW5jZSIsImZuIiwibXMiLCJ0aW1lcklkIiwiY2xlYXJUaW1lb3V0Iiwic2V0VGltZW91dCIsImFwcGx5IiwiYXJndW1lbnRzIiwidGhyb3R0bGUiLCJnZXRMZXNzIiwic3R5bGVzIiwibmFtZSIsImNvbnZlckZ1bmN0aW9uIiwiZnVuYyIsImV2ZW50T3B0aW9uIiwiVXRpbHMiLCJzZWxmRnVuYyIsIkZ1bmN0aW9uIl0sInNvdXJjZXMiOlsiLi4vc3JjL2NvbXBvbmVudHMvdXRpbHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0xMiAxNzozMjo1M1xyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjIgMTc6MTQ6MDRcclxuICovXHJcbmltcG9ydCB7XHJcbiAgc20yRW5jcnlwdFZhbHVlLFxyXG4gIHNtNEVuY3J5cHQsXHJcbiAgYmFzZTY0RW5jcnlwdCxcclxuICBtZDVFbmNyeXB0LFxyXG4gIGNoZWNrVmFsdWUsXHJcbiAgc20yRGVjcnlwdFZhbHVlLFxyXG4gIHNtNERlY3J5cHQsXHJcbiAgYmFzZTY0RGVjcnlwdCxcclxuICBpc0VtcHR5T2JqLFxyXG59IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBlbmNyeXB0IH0gZnJvbSBcIi4vSW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tIFwibG9kYXNoXCI7XHJcbmltcG9ydCBJY29uRm9udCBmcm9tIFwiLi9iYXNlL2NvbW1vbi9JY29uRm9udFwiO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7XHJcbiAgUmFkaW8sXHJcbiAgSW5wdXQsXHJcbiAgU2VsZWN0LFxyXG4gIENhc2NhZGVyLFxyXG4gIENoZWNrYm94LFxyXG4gIERhdGVQaWNrZXIsXHJcbiAgUmFuZ2VQaWNrZXIsXHJcbiAgU3dpdGNoLFxyXG4gIFVwbG9hZCxcclxufSBmcm9tIFwiLlwiO1xyXG5pbXBvcnQgUGFzc3dvcmQgZnJvbSBcIi4vYmFzZS9pbnB1dC9QYXNzd29yZFwiO1xyXG5pbXBvcnQgVGV4dEFyZWEgZnJvbSBcIi4vYmFzZS9pbnB1dC9UZXh0QXJlYVwiO1xyXG5pbXBvcnQgSW5wdXROdW1iZXIgZnJvbSBcIi4vYmFzZS9pbnB1dC9OdW1iZXJcIjtcclxuLy8gaW1wb3J0IHsgVXBsb2FkIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IGdldENvbmZpZyBmcm9tIFwiLi9jb25maWdcIjtcclxuaW1wb3J0IEFudEljb24gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCAqIGFzIGljb25zIGZyb20gXCJAYW50LWRlc2lnbi9pY29uc1wiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGVuY3J5cHRWYWx1ZShlbmNyeXB0OiBlbmNyeXB0IHwgYm9vbGVhbiwgdmFsdWUpIHtcclxuICBsZXQgZW5jcnlwdFZhbHVlID0gdmFsdWU7XHJcbiAgaWYgKGVuY3J5cHQgJiYgdHlwZW9mIGVuY3J5cHQgPT09IFwib2JqZWN0XCIpIHtcclxuICAgIGNvbnN0IHsgdHlwZSwga2V5IH0gPSBlbmNyeXB0O1xyXG4gICAgaWYgKHR5cGUgPT0gXCJzbTJcIikge1xyXG4gICAgICBlbmNyeXB0VmFsdWUgPSBrZXkgPyBzbTJFbmNyeXB0VmFsdWUodmFsdWUsIGtleSkgOiBzbTJFbmNyeXB0VmFsdWUodmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwic200XCIpIHtcclxuICAgICAgZW5jcnlwdFZhbHVlID0gc200RW5jcnlwdCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJiYXNlNjRcIikge1xyXG4gICAgICBlbmNyeXB0VmFsdWUgPSBiYXNlNjRFbmNyeXB0KHZhbHVlKTtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcIm1kNVwiKSB7XHJcbiAgICAgIGVuY3J5cHRWYWx1ZSA9IG1kNUVuY3J5cHQodmFsdWUpO1xyXG4gICAgfVxyXG4gIH0gZWxzZSBpZiAoZW5jcnlwdCAmJiB0eXBlb2YgZW5jcnlwdCA9PT0gXCJib29sZWFuXCIpIHtcclxuICAgIGVuY3J5cHRWYWx1ZSA9IHNtMkVuY3J5cHRWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG4gIHJldHVybiBlbmNyeXB0VmFsdWU7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGRlY3J5cHRWYWx1ZShkZWNyeXB0OiBlbmNyeXB0IHwgYm9vbGVhbiwgdmFsdWUpIHtcclxuICBsZXQgZGVjcnlwdFZhbHVlID0gdmFsdWU7XHJcbiAgaWYgKGRlY3J5cHQgJiYgdHlwZW9mIGRlY3J5cHQgPT09IFwib2JqZWN0XCIpIHtcclxuICAgIGNvbnN0IHsgdHlwZSwga2V5IH0gPSBkZWNyeXB0O1xyXG4gICAgaWYgKHR5cGUgPT0gXCJzbTJcIikge1xyXG4gICAgICBkZWNyeXB0VmFsdWUgPSBrZXkgPyBzbTJEZWNyeXB0VmFsdWUodmFsdWUsIGtleSkgOiBzbTJEZWNyeXB0VmFsdWUodmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwic200XCIpIHtcclxuICAgICAgZGVjcnlwdFZhbHVlID0gc200RGVjcnlwdCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJiYXNlNjRcIikge1xyXG4gICAgICBkZWNyeXB0VmFsdWUgPSBiYXNlNjREZWNyeXB0KHZhbHVlKTtcclxuICAgIH1cclxuICB9IGVsc2UgaWYgKGRlY3J5cHQgJiYgdHlwZW9mIGRlY3J5cHQgPT09IFwiYm9vbGVhblwiKSB7XHJcbiAgICBkZWNyeXB0VmFsdWUgPSBzbTJEZWNyeXB0VmFsdWUodmFsdWUpO1xyXG4gIH1cclxuICByZXR1cm4gZGVjcnlwdFZhbHVlO1xyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBjaGVja01vZGVsKGNoZWNrdHlwZSwgdmFsdWUpIHtcclxuICByZXR1cm4gY2hlY2tWYWx1ZSh2YWx1ZSwgY2hlY2t0eXBlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldENhY2hlS2V5KHNvdHJlKSB7XHJcbiAgY29uc3QgeyB2aWV3bmFtZSwgcmVxdWVzdENvbmZpZywgdXJsIH0gPSBzb3RyZTtcclxuICBsZXQga2V5O1xyXG4gIGlmICh2aWV3bmFtZSkge1xyXG4gICAga2V5ID0gdmlld25hbWU7XHJcbiAgfSBlbHNlIHtcclxuICAgIGtleSA9IHJlcXVlc3RDb25maWcgPyB1cmwgKyBKU09OLnN0cmluZ2lmeShyZXF1ZXN0Q29uZmlnKSA6IHVybDtcclxuICB9XHJcbiAgcmV0dXJuIGtleTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrQ2hhcnModmFsdWU6IHN0cmluZykge1xyXG4gIGNvbnN0IHJlZyA9IC9eWzAtOWEtekEtWlxcdTRFMDAtXFx1OUZBNVxcdUY5MDAtXFx1RkEyRF0qJC87XHJcbiAgcmV0dXJuIHJlZy50ZXN0KHZhbHVlKTtcclxufVxyXG5cclxuLy8g6L2s5o2icHjliLB2d1xyXG5leHBvcnQgZnVuY3Rpb24gcHgydncocHhWYWx1ZTogbnVtYmVyLCBiYXNlVmFsdWU/OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gIGNvbnN0IGJhc2VXaWR0aCA9IGJhc2VWYWx1ZSB8fCAxOTIwO1xyXG4gIHJldHVybiAoKHB4VmFsdWUgKiAxMDApIC8gYmFzZVdpZHRoKS50b0ZpeGVkKDQpICsgXCJ2d1wiO1xyXG59XHJcblxyXG4vL+iOt+WPlkljb25cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEljb24oaWNvbiwgZGVmYXVsdEljb24/OiBhbnkpIHtcclxuICBjb25zdCB7IGljb25QcmVmaXggfSA9IGdldENvbmZpZygpO1xyXG4gIGlmICghaXNFbXB0eShpY29uKSAmJiB0eXBlb2YgaWNvbiA9PT0gXCJzdHJpbmdcIikge1xyXG4gICAgY29uc3Qgc2hvd0ljb24gPSBpY29uLnN0YXJ0c1dpdGgoaWNvblByZWZpeCkgPyAoXHJcbiAgICAgIDxJY29uRm9udCB0eXBlPXtpY29ufSAvPlxyXG4gICAgKSA6IChcclxuICAgICAgPEFudEljb24gY29tcG9uZW50PXtpY29uc1tpY29uXX0gLz5cclxuICAgICk7XHJcbiAgICByZXR1cm4gc2hvd0ljb247XHJcbiAgfSBlbHNlIGlmIChkZWZhdWx0SWNvbikge1xyXG4gICAgcmV0dXJuIDxJY29uRm9udCB0eXBlPXtcImljb254aWFuZ211c2hlem9uZ2d1YW5saVwifSAvPjtcclxuICB9XHJcbiAgcmV0dXJuIGljb247XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE5vZGUodHlwZSwgcHJvcHMpIHtcclxuICBsZXQgRElWID0gPElucHV0IHsuLi5wcm9wc30gLz47XHJcbiAgaWYgKHR5cGUgPT0gXCJJbnB1dFwiKSB7XHJcbiAgICBESVYgPSA8SW5wdXQgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJTZWxlY3RcIikge1xyXG4gICAgRElWID0gPFNlbGVjdCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlJhZGlvXCIpIHtcclxuICAgIERJViA9IDxSYWRpby5Hcm91cCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIkNhc2NhZGVyXCIpIHtcclxuICAgIERJViA9IDxDYXNjYWRlciB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlBhc3N3b3JkXCIpIHtcclxuICAgIERJViA9IDxQYXNzd29yZCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlRleHRBcmVhXCIpIHtcclxuICAgIERJViA9IDxUZXh0QXJlYSB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIkNoZWNrYm94XCIpIHtcclxuICAgIERJViA9IDxDaGVja2JveC5Hcm91cCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIkRhdGVQaWNrZXJcIikge1xyXG4gICAgRElWID0gPERhdGVQaWNrZXIgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJOdW1iZXJcIikge1xyXG4gICAgRElWID0gPElucHV0TnVtYmVyIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiVXBsb2FkXCIpIHtcclxuICAgIERJViA9IDxVcGxvYWQgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJSYW5nZVBpY2tlclwiKSB7XHJcbiAgICBESVYgPSA8UmFuZ2VQaWNrZXIgey4uLnByb3BzfSAvPjtcclxuICB9XHJcbiAgaWYgKHR5cGUgPT0gXCJTd2l0Y2hcIikge1xyXG4gICAgRElWID0gPFN3aXRjaCB7Li4ucHJvcHN9IC8+O1xyXG4gIH1cclxuICByZXR1cm4gRElWO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVib3VuY2UoZm4sIG1zKSB7XHJcbiAgLy9mbjropoHpmLLmipbnmoTlh73mlbAgbXM65pe26Ze0XHJcbiAgbGV0IHRpbWVySWQ7IC8vIOWIm+W7uuS4gOS4quagh+iusOeUqOadpeWtmOaUvuWumuaXtuWZqOeahOi/lOWbnuWAvFxyXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICB0aW1lcklkICYmIGNsZWFyVGltZW91dCh0aW1lcklkKTsgLy8g5q+P5b2T55So5oi36L6T5YWl55qE5pe25YCZ5oqK5YmN5LiA5LiqIHNldFRpbWVvdXQgY2xlYXIg5o6JXHJcbiAgICAvLyDnhLblkI7lj4jliJvlu7rkuIDkuKrmlrDnmoQgc2V0VGltZW91dCwg6L+Z5qC35bCx6IO95L+d6K+B6L6T5YWl5a2X56ym5ZCO55qEIGludGVydmFsIOmXtOmalOWGheWmguaenOi/mOacieWtl+espui+k+WFpeeahOivne+8jOWwseS4jeS8muaJp+ihjCBmbiDlh73mlbBcclxuICAgIHRpbWVySWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcclxuICAgIH0sIG1zKTtcclxuICB9O1xyXG5cclxuICAvLyB2YXIgdGltZXIgPSBudWxsO1xyXG4gIC8vIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgLy8gICB2YXIgYXJncyA9IGFyZ3VtZW50czsgLy/lj4LmlbDpm4blkIhcclxuICAvLyAgIGNvbnNvbGUubG9nKCdhcmdzJyxhcmdzKVxyXG4gIC8vICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcclxuICAvLyAgIHRpbWVyID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XHJcbiAgLy8gICAgIGZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xyXG4gIC8vICAgfSwgbXMpO1xyXG4gIC8vIH07XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIHRocm90dGxlKGZuLCBtcykge1xyXG4gIGxldCB0aW1lcklkOyAvLyDliJvlu7rkuIDkuKrmoIforrDnlKjmnaXlrZjmlL7lrprml7blmajnmoRpZFxyXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICAvLyDmsqHmnInlrprml7blmajnrYnlvoXmiafooYzvvIzliJnooajnpLrlj6/ku6XliJvlu7rmlrDnmoTlrprml7blmajmnaXmiafooYzlh73mlbBcclxuICAgIGlmICghdGltZXJJZCkge1xyXG4gICAgICB0aW1lcklkID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgLy8g5a6a5pe25ZmoaWTmuIXnqbrvvIzooajnpLrlj6/ku6XmiafooYzkuIvkuIDmrKHosIPnlKjkuoZcclxuICAgICAgICB0aW1lcklkID0gbnVsbDtcclxuICAgICAgICBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xyXG4gICAgICB9LCBtcyk7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG5leHBvcnQgY29uc3QgZ2V0TGVzcyA9IChzdHlsZXM6IE9iamVjdCwgbmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgaWYgKGlzRW1wdHlPYmooc3R5bGVzKSkge1xyXG4gICAgcmV0dXJuIG5hbWU7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBzdHlsZXNbbmFtZV07XHJcbiAgfVxyXG59O1xyXG5leHBvcnQgY29uc3QgY29udmVyRnVuY3Rpb24gPSAoZnVuYywgZXZlbnRPcHRpb24/OiBhbnksIFV0aWxzPzogYW55KSA9PiB7XHJcbiAgaWYgKHR5cGVvZiBmdW5jID09IFwic3RyaW5nXCIpIHtcclxuICAgIGNvbnN0IHNlbGZGdW5jID0gbmV3IEZ1bmN0aW9uKFwiZXZlbnRPcHRpb25cIiwgXCJVdGlsc1wiLCBmdW5jKTtcclxuICAgIHNlbGZGdW5jKGV2ZW50T3B0aW9uLCBVdGlscyk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGZ1bmMoZXZlbnRPcHRpb24sIFV0aWxzKTtcclxuICB9XHJcbn07XHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBlbmNyeXB0VmFsdWUsXHJcbiAgY2hlY2tNb2RlbCxcclxuICBkZWNyeXB0VmFsdWUsXHJcbiAgZ2V0Q2FjaGVLZXksXHJcbiAgY2hlY2tDaGFycyxcclxuICBweDJ2dyxcclxufTtcclxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FDRUEsZUFBZSxFQUNmQyxVQUFVLEVBQ1ZDLGFBQWEsRUFDYkMsVUFBVSxFQUNWQyxVQUFVLEVBQ1ZDLGVBQWUsRUFDZkMsVUFBVSxFQUNWQyxhQUFhLEVBQ2JDLFVBQVUsUUFDTCxtQkFBbUI7QUFFMUIsU0FBU0MsT0FBTyxRQUFRLFFBQVE7QUFDaEMsT0FBT0MsUUFBUSxNQUFNLHdCQUF3QjtBQUM3QyxPQUFPQyxLQUFLLE1BQU0sT0FBTztBQUN6QixTQUNFQyxLQUFLLEVBQ0xDLEtBQUssRUFDTEMsTUFBTSxFQUNOQyxRQUFRLEVBQ1JDLFFBQVEsRUFDUkMsVUFBVSxFQUNWQyxXQUFXLEVBQ1hDLE1BQU0sRUFDTkMsTUFBTSxRQUNELEdBQUc7QUFDVixPQUFPQyxRQUFRLE1BQU0sdUJBQXVCO0FBQzVDLE9BQU9DLFFBQVEsTUFBTSx1QkFBdUI7QUFDNUMsT0FBT0MsV0FBVyxNQUFNLHFCQUFxQjtBQUM3QztBQUNBLE9BQU9DLFNBQVMsTUFBTSxVQUFVO0FBQ2hDLE9BQU9DLE9BQU8sTUFBTSxtQkFBbUI7QUFDdkMsT0FBTyxLQUFLQyxLQUFLLE1BQU0sbUJBQW1CO0FBRTFDLE9BQU8sU0FBU0MsWUFBWUEsQ0FBQ0MsT0FBMEIsRUFBRUMsS0FBSyxFQUFFO0VBQzlELElBQUlGLFlBQVksR0FBR0UsS0FBSztFQUN4QixJQUFJRCxPQUFPLElBQUksT0FBT0EsT0FBTyxL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
212
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzbTJFbmNyeXB0VmFsdWUiLCJzbTRFbmNyeXB0IiwiYmFzZTY0RW5jcnlwdCIsIm1kNUVuY3J5cHQiLCJjaGVja1ZhbHVlIiwic20yRGVjcnlwdFZhbHVlIiwic200RGVjcnlwdCIsImJhc2U2NERlY3J5cHQiLCJpc0VtcHR5T2JqIiwiaXNFbXB0eSIsIkljb25Gb250IiwiUmVhY3QiLCJSYWRpbyIsIklucHV0IiwiU2VsZWN0IiwiQ2FzY2FkZXIiLCJDaGVja2JveCIsIkRhdGVQaWNrZXIiLCJSYW5nZVBpY2tlciIsIlN3aXRjaCIsIlVwbG9hZCIsIlBhc3N3b3JkIiwiVGV4dEFyZWEiLCJJbnB1dE51bWJlciIsImdldENvbmZpZyIsIkFudEljb24iLCJpY29ucyIsImVuY3J5cHRWYWx1ZSIsImVuY3J5cHQiLCJ2YWx1ZSIsInR5cGUiLCJrZXkiLCJkZWNyeXB0VmFsdWUiLCJkZWNyeXB0IiwiY2hlY2tNb2RlbCIsImNoZWNrdHlwZSIsImdldENhY2hlS2V5Iiwic290cmUiLCJ2aWV3bmFtZSIsInJlcXVlc3RDb25maWciLCJ1cmwiLCJKU09OIiwic3RyaW5naWZ5IiwiY2hlY2tDaGFycyIsInJlZyIsInRlc3QiLCJweDJ2dyIsInB4VmFsdWUiLCJiYXNlVmFsdWUiLCJiYXNlV2lkdGgiLCJ0b0ZpeGVkIiwiZ2V0SWNvbiIsImljb24iLCJkZWZhdWx0SWNvbiIsImljb25QcmVmaXgiLCJzaG93SWNvbiIsInN0YXJ0c1dpdGgiLCJjcmVhdGVFbGVtZW50IiwiY29tcG9uZW50IiwiZ2V0Tm9kZSIsInByb3BzIiwiRElWIiwiR3JvdXAiLCJkZWJvdW5jZSIsImZuIiwibXMiLCJ0aW1lcklkIiwiY2xlYXJUaW1lb3V0Iiwic2V0VGltZW91dCIsImFwcGx5IiwiYXJndW1lbnRzIiwidGhyb3R0bGUiLCJnZXRMZXNzIiwic3R5bGVzIiwibmFtZSIsImNvbnZlckZ1bmN0aW9uIiwiZnVuYyIsImV2ZW50T3B0aW9uIiwiVXRpbHMiLCJzZWxmRnVuYyIsIkZ1bmN0aW9uIiwic2ltcGxpZnlPYmplY3QiLCJvYmoiLCJyZXN1bHQiLCJ2YWwiLCJzaW1wbGlmeUNvbHVtbnMiLCJjb2x1bW5zIiwibWFwIiwiY29sIl0sInNvdXJjZXMiOlsiLi4vc3JjL2NvbXBvbmVudHMvdXRpbHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0xMiAxNzozMjo1M1xyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjIgMTc6MTQ6MDRcclxuICovXHJcbmltcG9ydCB7XHJcbiAgc20yRW5jcnlwdFZhbHVlLFxyXG4gIHNtNEVuY3J5cHQsXHJcbiAgYmFzZTY0RW5jcnlwdCxcclxuICBtZDVFbmNyeXB0LFxyXG4gIGNoZWNrVmFsdWUsXHJcbiAgc20yRGVjcnlwdFZhbHVlLFxyXG4gIHNtNERlY3J5cHQsXHJcbiAgYmFzZTY0RGVjcnlwdCxcclxuICBpc0VtcHR5T2JqLFxyXG59IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBlbmNyeXB0IH0gZnJvbSBcIi4vSW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tIFwibG9kYXNoXCI7XHJcbmltcG9ydCBJY29uRm9udCBmcm9tIFwiLi9iYXNlL2NvbW1vbi9JY29uRm9udFwiO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7XHJcbiAgUmFkaW8sXHJcbiAgSW5wdXQsXHJcbiAgU2VsZWN0LFxyXG4gIENhc2NhZGVyLFxyXG4gIENoZWNrYm94LFxyXG4gIERhdGVQaWNrZXIsXHJcbiAgUmFuZ2VQaWNrZXIsXHJcbiAgU3dpdGNoLFxyXG4gIFVwbG9hZCxcclxufSBmcm9tIFwiLlwiO1xyXG5pbXBvcnQgUGFzc3dvcmQgZnJvbSBcIi4vYmFzZS9pbnB1dC9QYXNzd29yZFwiO1xyXG5pbXBvcnQgVGV4dEFyZWEgZnJvbSBcIi4vYmFzZS9pbnB1dC9UZXh0QXJlYVwiO1xyXG5pbXBvcnQgSW5wdXROdW1iZXIgZnJvbSBcIi4vYmFzZS9pbnB1dC9OdW1iZXJcIjtcclxuLy8gaW1wb3J0IHsgVXBsb2FkIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IGdldENvbmZpZyBmcm9tIFwiLi9jb25maWdcIjtcclxuaW1wb3J0IEFudEljb24gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCAqIGFzIGljb25zIGZyb20gXCJAYW50LWRlc2lnbi9pY29uc1wiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGVuY3J5cHRWYWx1ZShlbmNyeXB0OiBlbmNyeXB0IHwgYm9vbGVhbiwgdmFsdWUpIHtcclxuICBsZXQgZW5jcnlwdFZhbHVlID0gdmFsdWU7XHJcbiAgaWYgKGVuY3J5cHQgJiYgdHlwZW9mIGVuY3J5cHQgPT09IFwib2JqZWN0XCIpIHtcclxuICAgIGNvbnN0IHsgdHlwZSwga2V5IH0gPSBlbmNyeXB0O1xyXG4gICAgaWYgKHR5cGUgPT0gXCJzbTJcIikge1xyXG4gICAgICBlbmNyeXB0VmFsdWUgPSBrZXkgPyBzbTJFbmNyeXB0VmFsdWUodmFsdWUsIGtleSkgOiBzbTJFbmNyeXB0VmFsdWUodmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwic200XCIpIHtcclxuICAgICAgZW5jcnlwdFZhbHVlID0gc200RW5jcnlwdCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJiYXNlNjRcIikge1xyXG4gICAgICBlbmNyeXB0VmFsdWUgPSBiYXNlNjRFbmNyeXB0KHZhbHVlKTtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcIm1kNVwiKSB7XHJcbiAgICAgIGVuY3J5cHRWYWx1ZSA9IG1kNUVuY3J5cHQodmFsdWUpO1xyXG4gICAgfVxyXG4gIH0gZWxzZSBpZiAoZW5jcnlwdCAmJiB0eXBlb2YgZW5jcnlwdCA9PT0gXCJib29sZWFuXCIpIHtcclxuICAgIGVuY3J5cHRWYWx1ZSA9IHNtMkVuY3J5cHRWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG4gIHJldHVybiBlbmNyeXB0VmFsdWU7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGRlY3J5cHRWYWx1ZShkZWNyeXB0OiBlbmNyeXB0IHwgYm9vbGVhbiwgdmFsdWUpIHtcclxuICBsZXQgZGVjcnlwdFZhbHVlID0gdmFsdWU7XHJcbiAgaWYgKGRlY3J5cHQgJiYgdHlwZW9mIGRlY3J5cHQgPT09IFwib2JqZWN0XCIpIHtcclxuICAgIGNvbnN0IHsgdHlwZSwga2V5IH0gPSBkZWNyeXB0O1xyXG4gICAgaWYgKHR5cGUgPT0gXCJzbTJcIikge1xyXG4gICAgICBkZWNyeXB0VmFsdWUgPSBrZXkgPyBzbTJEZWNyeXB0VmFsdWUodmFsdWUsIGtleSkgOiBzbTJEZWNyeXB0VmFsdWUodmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwic200XCIpIHtcclxuICAgICAgZGVjcnlwdFZhbHVlID0gc200RGVjcnlwdCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJiYXNlNjRcIikge1xyXG4gICAgICBkZWNyeXB0VmFsdWUgPSBiYXNlNjREZWNyeXB0KHZhbHVlKTtcclxuICAgIH1cclxuICB9IGVsc2UgaWYgKGRlY3J5cHQgJiYgdHlwZW9mIGRlY3J5cHQgPT09IFwiYm9vbGVhblwiKSB7XHJcbiAgICBkZWNyeXB0VmFsdWUgPSBzbTJEZWNyeXB0VmFsdWUodmFsdWUpO1xyXG4gIH1cclxuICByZXR1cm4gZGVjcnlwdFZhbHVlO1xyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBjaGVja01vZGVsKGNoZWNrdHlwZSwgdmFsdWUpIHtcclxuICByZXR1cm4gY2hlY2tWYWx1ZSh2YWx1ZSwgY2hlY2t0eXBlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldENhY2hlS2V5KHNvdHJlKSB7XHJcbiAgY29uc3QgeyB2aWV3bmFtZSwgcmVxdWVzdENvbmZpZywgdXJsIH0gPSBzb3RyZTtcclxuICBsZXQga2V5O1xyXG4gIGlmICh2aWV3bmFtZSkge1xyXG4gICAga2V5ID0gdmlld25hbWU7XHJcbiAgfSBlbHNlIHtcclxuICAgIGtleSA9IHJlcXVlc3RDb25maWcgPyB1cmwgKyBKU09OLnN0cmluZ2lmeShyZXF1ZXN0Q29uZmlnKSA6IHVybDtcclxuICB9XHJcbiAgcmV0dXJuIGtleTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrQ2hhcnModmFsdWU6IHN0cmluZykge1xyXG4gIGNvbnN0IHJlZyA9IC9eWzAtOWEtekEtWlxcdTRFMDAtXFx1OUZBNVxcdUY5MDAtXFx1RkEyRF0qJC87XHJcbiAgcmV0dXJuIHJlZy50ZXN0KHZhbHVlKTtcclxufVxyXG5cclxuLy8g6L2s5o2icHjliLB2d1xyXG5leHBvcnQgZnVuY3Rpb24gcHgydncocHhWYWx1ZTogbnVtYmVyLCBiYXNlVmFsdWU/OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gIGNvbnN0IGJhc2VXaWR0aCA9IGJhc2VWYWx1ZSB8fCAxOTIwO1xyXG4gIHJldHVybiAoKHB4VmFsdWUgKiAxMDApIC8gYmFzZVdpZHRoKS50b0ZpeGVkKDQpICsgXCJ2d1wiO1xyXG59XHJcblxyXG4vL+iOt+WPlkljb25cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEljb24oaWNvbiwgZGVmYXVsdEljb24/OiBhbnkpIHtcclxuICBjb25zdCB7IGljb25QcmVmaXggfSA9IGdldENvbmZpZygpO1xyXG4gIGlmICghaXNFbXB0eShpY29uKSAmJiB0eXBlb2YgaWNvbiA9PT0gXCJzdHJpbmdcIikge1xyXG4gICAgY29uc3Qgc2hvd0ljb24gPSBpY29uLnN0YXJ0c1dpdGgoaWNvblByZWZpeCkgPyAoXHJcbiAgICAgIDxJY29uRm9udCB0eXBlPXtpY29ufSAvPlxyXG4gICAgKSA6IChcclxuICAgICAgPEFudEljb24gY29tcG9uZW50PXtpY29uc1tpY29uXX0gLz5cclxuICAgICk7XHJcbiAgICByZXR1cm4gc2hvd0ljb247XHJcbiAgfSBlbHNlIGlmIChkZWZhdWx0SWNvbikge1xyXG4gICAgcmV0dXJuIDxJY29uRm9udCB0eXBlPXtcImljb254aWFuZ211c2hlem9uZ2d1YW5saVwifSAvPjtcclxuICB9XHJcbiAgcmV0dXJuIGljb247XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE5vZGUodHlwZSwgcHJvcHMpIHtcclxuICBsZXQgRElWID0gPElucHV0IHsuLi5wcm9wc30gLz47XHJcbiAgaWYgKHR5cGUgPT0gXCJJbnB1dFwiKSB7XHJcbiAgICBESVYgPSA8SW5wdXQgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJTZWxlY3RcIikge1xyXG4gICAgRElWID0gPFNlbGVjdCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlJhZGlvXCIpIHtcclxuICAgIERJViA9IDxSYWRpby5Hcm91cCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIkNhc2NhZGVyXCIpIHtcclxuICAgIERJViA9IDxDYXNjYWRlciB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlBhc3N3b3JkXCIpIHtcclxuICAgIERJViA9IDxQYXNzd29yZCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlRleHRBcmVhXCIpIHtcclxuICAgIERJViA9IDxUZXh0QXJlYSB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIkNoZWNrYm94XCIpIHtcclxuICAgIERJViA9IDxDaGVja2JveC5Hcm91cCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIkRhdGVQaWNrZXJcIikge1xyXG4gICAgRElWID0gPERhdGVQaWNrZXIgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJOdW1iZXJcIikge1xyXG4gICAgRElWID0gPElucHV0TnVtYmVyIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiVXBsb2FkXCIpIHtcclxuICAgIERJViA9IDxVcGxvYWQgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJSYW5nZVBpY2tlclwiKSB7XHJcbiAgICBESVYgPSA8UmFuZ2VQaWNrZXIgey4uLnByb3BzfSAvPjtcclxuICB9XHJcbiAgaWYgKHR5cGUgPT0gXCJTd2l0Y2hcIikge1xyXG4gICAgRElWID0gPFN3aXRjaCB7Li4ucHJvcHN9IC8+O1xyXG4gIH1cclxuICByZXR1cm4gRElWO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVib3VuY2UoZm4sIG1zKSB7XHJcbiAgLy9mbjropoHpmLLmipbnmoTlh73mlbAgbXM65pe26Ze0XHJcbiAgbGV0IHRpbWVySWQ7IC8vIOWIm+W7uuS4gOS4quagh+iusOeUqOadpeWtmOaUvuWumuaXtuWZqOeahOi/lOWbnuWAvFxyXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICB0aW1lcklkICYmIGNsZWFyVGltZW91dCh0aW1lcklkKTsgLy8g5q+P5b2T55So5oi36L6T5YWl55qE5pe25YCZ5oqK5YmN5LiA5LiqIHNldFRpbWVvdXQgY2xlYXIg5o6JXHJcbiAgICAvLyDnhLblkI7lj4jliJvlu7rkuIDkuKrmlrDnmoQgc2V0VGltZW91dCwg6L+Z5qC35bCx6IO95L+d6K+B6L6T5YWl5a2X56ym5ZCO55qEIGludGVydmFsIOmXtOmalOWGheWmguaenOi/mOacieWtl+espui+k+WFpeeahOivne+8jOWwseS4jeS8muaJp+ihjCBmbiDlh73mlbBcclxuICAgIHRpbWVySWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcclxuICAgIH0sIG1zKTtcclxuICB9O1xyXG5cclxuICAvLyB2YXIgdGltZXIgPSBudWxsO1xyXG4gIC8vIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgLy8gICB2YXIgYXJncyA9IGFyZ3VtZW50czsgLy/lj4LmlbDpm4blkIhcclxuICAvLyAgIGNvbnNvbGUubG9nKCdhcmdzJyxhcmdzKVxyXG4gIC8vICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcclxuICAvLyAgIHRpbWVyID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XHJcbiAgLy8gICAgIGZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xyXG4gIC8vICAgfSwgbXMpO1xyXG4gIC8vIH07XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIHRocm90dGxlKGZuLCBtcykge1xyXG4gIGxldCB0aW1lcklkOyAvLyDliJvlu7rkuIDkuKrmoIforrDnlKjmnaXlrZjmlL7lrprml7blmajnmoRpZFxyXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICAvLyDmsqHmnInlrprml7blmajnrYnlvoXmiafooYzvvIzliJnooajnpLrlj6/ku6XliJvlu7rmlrDnmoTlrprml7blmajmnaXmiafooYzlh73mlbBcclxuICAgIGlmICghdGltZXJJZCkge1xyXG4gICAgICB0aW1lcklkID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgLy8g5a6a5pe25ZmoaWTmuIXnqbrvvIzooajnpLrlj6/ku6XmiafooYzkuIvkuIDmrKHosIPnlKjkuoZcclxuICAgICAgICB0aW1lcklkID0gbnVsbDtcclxuICAgICAgICBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xyXG4gICAgICB9LCBtcyk7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG5leHBvcnQgY29uc3QgZ2V0TGVzcyA9IChzdHlsZXM6IE9iamVjdCwgbmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgaWYgKGlzRW1wdHlPYmooc3R5bGVzKSkge1xyXG4gICAgcmV0dXJuIG5hbWU7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBzdHlsZXNbbmFtZV07XHJcbiAgfVxyXG59O1xyXG5leHBvcnQgY29uc3QgY29udmVyRnVuY3Rpb24gPSAoZnVuYywgZXZlbnRPcHRpb24/OiBhbnksIFV0aWxzPzogYW55KSA9PiB7XHJcbiAgaWYgKHR5cGVvZiBmdW5jID09IFwic3RyaW5nXCIpIHtcclxuICAgIGNvbnN0IHNlbGZGdW5jID0gbmV3IEZ1bmN0aW9uKFwiZXZlbnRPcHRpb25cIiwgXCJVdGlsc1wiLCBmdW5jKTtcclxuICAgIHNlbGZGdW5jKGV2ZW50T3B0aW9uLCBVdGlscyk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGZ1bmMoZXZlbnRPcHRpb24sIFV0aWxzKTtcclxuICB9XHJcbn07XHJcblxyXG4vLyDkv53nlZnljp/lr7nosaHkuK3miYDmnInigJzln7rnoYDnsbvlnovigJ3nmoTlrZfmrrVcclxuZXhwb3J0IGZ1bmN0aW9uIHNpbXBsaWZ5T2JqZWN0KG9iaikge1xyXG4gIGNvbnN0IHJlc3VsdCA9IHt9O1xyXG4gIGZvciAoY29uc3Qga2V5IGluIG9iaikge1xyXG4gICAgY29uc3QgdmFsID0gb2JqW2tleV07XHJcbiAgICBpZiAoXHJcbiAgICAgIHZhbCA9PT0gbnVsbCB8fFxyXG4gICAgICB0eXBlb2YgdmFsID09PSAnc3RyaW5nJyB8fFxyXG4gICAgICB0eXBlb2YgdmFsID09PSAnbnVtYmVyJyB8fFxyXG4gICAgICB0eXBlb2YgdmFsID09PSAnYm9vbGVhbidcclxuICAgICkge1xyXG4gICAgICByZXN1bHRba2V5XSA9IHZhbDtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuLy8g566A5YyW5pW05LiqIGNvbHVtbnMg5pWw57uEXHJcbmV4cG9ydCBmdW5jdGlvbiBzaW1wbGlmeUNvbHVtbnMoY29sdW1ucykge1xyXG4gIHJldHVybiBjb2x1bW5zLm1hcChjb2wgPT4gc2ltcGxpZnlPYmplY3QoY29sKSk7XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBlbmNyeXB0VmFsdWUsXHJcbiAgY2hlY2tNb2RlbCxcclxuICBkZWNyeXB0VmFsdWUsXHJcbiAgZ2V0Q2FjaGVLZXksXHJcbiAgY2hlY2tDaGFycyxcclxuICBweDJ2dyxcclxufTtcclxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7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