nsc-react-component 4.3.5 → 4.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/base/form/Form.js +2 -2
- package/lib/base/form/Form.js.map +1 -1
- package/lib/base/form/filed/FormItem.js +7 -3
- package/lib/base/form/filed/FormItem.js.map +1 -1
- package/lib/base/form/filed/Item.js +7 -3
- package/lib/base/form/filed/Item.js.map +1 -1
- package/lib/base/importData/index.js +8 -6
- package/lib/base/importData/index.js.map +1 -1
- package/lib/base/modal/index.d.ts +1 -0
- package/lib/base/modal/index.js +8 -1
- package/lib/base/modal/index.js.map +1 -1
- package/lib/base/select/index.js +11 -9
- package/lib/base/select/index.js.map +1 -1
- package/lib/base/table/index.js +8 -9
- package/lib/base/table/index.js.map +1 -1
- package/lib/base/tree/index.js +11 -8
- package/lib/base/tree/index.js.map +1 -1
- package/lib/page/BasePage/index.d.ts +1 -0
- package/lib/page/BasePage/index.js +4 -3
- package/lib/page/BasePage/index.js.map +1 -1
- package/lib/page/BasePage/index.module.less +1 -1
- package/lib/page/FormPage/index.js +9 -2
- package/lib/page/FormPage/index.js.map +1 -1
- package/lib/page/HeaderSearch/index.js +1 -1
- package/lib/page/HeaderSearch/index.js.map +1 -1
- package/lib/page/SettingForm/index.d.ts +0 -5
- package/lib/page/SettingForm/index.js +1 -1
- package/lib/page/SettingForm/index.js.map +1 -1
- package/lib/page/SettingTable/index.js +8 -5
- package/lib/page/SettingTable/index.js.map +1 -1
- package/lib/utils.d.ts +1 -0
- package/lib/utils.js +41 -1
- package/lib/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","createRef","PureComponent","utils","config","PlusCircleOutlined","CloseCircleOutlined","CloseOutlined","ExpandOutlined","CompressOutlined","Button","getLess","styles","getStorage","Confirm","omit","Draggable","cls","NscModal","useModal","modal","contextHolder","_Modal","constructor","props","_defineProperty","scope","params","beforeRender","callbackBeforeClose","callback","afterRender","ev","data","JSON","parse","e","console","log","_this","eventType","payload","type","setState","modalType","storePrefix","autoType","content","state","visible","expand","bounds","left","top","bottom","right","dragger","componentDidMount","window","addEventListener","listenMessage","componentWillUnmount","removeEventListener","show","option","arguments","length","undefined","_objectSpread","hide","getReturnValue","returnValue","close","result","buttonClose","formExpand","onCancel","onButtonCancel","onClose","valid","change","onOk","getParams","key","onStart","_event","uiData","_this$draggleRef$curr","clientWidth","clientHeight","document","documentElement","targetRect","draggleRef","current","getBoundingClientRect","x","y","render","_this$props","closable","okButtonProps","cancelButtonProps","dragable","footerButton","_objectWithoutProperties","_excluded","mountElementId","getContainer","getElementById","modalRender","createElement","disabled","event","ref","title","className","onMouseOver","onMouseOut","onClick","style","marginRight","modalButton","footer","_extends","bind","icon","cancleButtonProps","cancelText","okText","map","item","index","maxWidth","width","oldProps","newDrawerProps","_Drawer","open","centered","afterClose","info","success","error","warning","destroyAll"],"sources":["../../../src/components/base/modal/index.tsx"],"sourcesContent":["import React, { createRef, PureComponent, ReactNode } from \"react\";\r\nimport { Modal, ModalProps, Drawer, DrawerProps } from \"antd\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport config from \"../../config\";\r\nimport {\r\n PlusCircleOutlined,\r\n CloseCircleOutlined,\r\n CloseOutlined,\r\n ExpandOutlined,\r\n CompressOutlined,\r\n} from \"@ant-design/icons\";\r\nimport Button from \"../button\";\r\nimport { getLess } from \"../../utils\";\r\nimport styles from \"./index.less\";\r\nimport { getStorage } from \"@bj-nsc/functions\";\r\nimport Confirm from \"./Confirm\";\r\nimport omit from \"omit.js\";\r\nimport type { DraggableData, DraggableEvent } from \"react-draggable\";\r\nimport Draggable from \"react-draggable\";\r\nimport cls from \"classnames\";\r\n\r\ninterface formExpand {\r\n change?: boolean;\r\n valid?: boolean;\r\n expand?: boolean;\r\n}\r\n\r\nexport interface NscModalPorps extends ModalProps {\r\n type?: \"modal\" | \"drawer\" | \"auto\";\r\n formExpand?: formExpand;\r\n onButtonCancel?: any; //底部取消按钮回调\r\n dragable?: boolean; //弹框是否看拖动\r\n footerButton?: Array<any>; //footer 其他自定义按钮\r\n}\r\n\r\ninterface NscModalInterface\r\n extends React.ComponentClass<NscModalPorps & DrawerProps, any> {\r\n useModal: () => [any, React.ReactElement];\r\n confirm: typeof Confirm;\r\n info: typeof Modal.info;\r\n success: typeof Modal.success;\r\n error: typeof Modal.error;\r\n warning: typeof Modal.warning;\r\n destroyAll: typeof Modal.destroyAll;\r\n}\r\n\r\nexport default class NscModal extends PureComponent<\r\n NscModalPorps & DrawerProps,\r\n any\r\n> {\r\n static useModal() {\r\n // 调用 antd Modal 的 useModal hook\r\n const [modal, contextHolder] = Modal.useModal();\r\n\r\n // 返回 contextHolder,确保上下文正确传递\r\n return [modal, contextHolder] as [any, React.ReactElement];\r\n }\r\n\r\n static confirm = Confirm;\r\n // static confirm = Modal.confirm;\r\n static info = Modal.info;\r\n static success = Modal.success;\r\n static error = Modal.error;\r\n static warning = Modal.warning;\r\n static destroyAll = Modal.destroyAll;\r\n //返回值\r\n returnValue = null;\r\n\r\n constructor(props) {\r\n super(props);\r\n let modal = props.type || \"auto\";\r\n let storePrefix = getStorage(\"store-pre-key\");\r\n let autoType = getStorage(\r\n storePrefix ? storePrefix + \"formType\" : \"formType\"\r\n );\r\n autoType = autoType ? autoType.content : null;\r\n this.state = {\r\n visible: false,\r\n expand: false,\r\n modalType: modal == \"auto\" ? autoType : modal,\r\n bounds: { left: 0, top: 0, bottom: 0, right: 0 },\r\n dragger: true,\r\n };\r\n }\r\n draggleRef = createRef<HTMLDivElement>();\r\n\r\n option: any = {\r\n //回调作用域\r\n scope: this,\r\n //open传递过来的页面参数\r\n params: {},\r\n //显示之前回调\r\n beforeRender: null,\r\n //关闭之前回调,如果return false,且窗口不关闭\r\n callbackBeforeClose: null,\r\n //关闭后回调,异步操作\r\n callback: null,\r\n //显示之后回调\r\n afterRender: null,\r\n };\r\n /**\r\n * 渲染完成\r\n * @param {*} option 整改传递对象\r\n */\r\n componentDidMount() {\r\n window.addEventListener(\"message\", this.listenMessage);\r\n }\r\n\r\n componentWillUnmount() {\r\n window.removeEventListener(\"message\", this.listenMessage);\r\n }\r\n listenMessage = (ev) => {\r\n let data = {} as any;\r\n if (typeof ev.data === \"string\") {\r\n try {\r\n data = JSON.parse(ev.data);\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n let _this = this;\r\n if (data.eventType == \"changeFormType\") {\r\n const { payload } = data;\r\n if (payload.type == \"modal\" || payload.type == \"drawer\") {\r\n _this.setState({ modalType: payload.type });\r\n }\r\n }\r\n };\r\n //显示\r\n show(option: any = {}) {\r\n const { scope } = this.option;\r\n const { beforeRender, afterRender } = option;\r\n this.option = { ...this.option, ...option };\r\n utils.callback(beforeRender, scope);\r\n this.setState({ visible: true }, () => {\r\n utils.callback(afterRender, scope);\r\n });\r\n }\r\n\r\n //隐藏\r\n hide(option: any = {}) {\r\n let _this = this;\r\n _this.setState({ visible: false });\r\n }\r\n\r\n //获取需要返回的值\r\n getReturnValue() {\r\n return this.returnValue;\r\n }\r\n\r\n /**\r\n * 关闭带回调\r\n */\r\n close(result?: any, buttonClose = false) {\r\n var _this = this;\r\n // const { callback, scope, callbackBeforeClose } = this.option;\r\n const { formExpand = {}, onCancel, onButtonCancel, onClose } = this.props;\r\n // const r = utils.callback(callbackBeforeClose, scope, [this.returnValue]);\r\n // if (r !== false) {\r\n const { expand = false } = formExpand;\r\n if (expand && formExpand.valid && formExpand.change) {\r\n Confirm({\r\n content: \"当前记录已修改尚未保存,确定要放弃修改吗?\",\r\n onOk() {\r\n if (onCancel || onClose) {\r\n if (buttonClose && onButtonCancel) {\r\n onButtonCancel(result);\r\n } else {\r\n onCancel && onCancel(result);\r\n onClose && onClose(result);\r\n }\r\n } else {\r\n _this.setState({ visible: false });\r\n }\r\n },\r\n });\r\n } else {\r\n if (onCancel || onClose) {\r\n if (buttonClose && onButtonCancel) {\r\n onButtonCancel(result);\r\n } else {\r\n onCancel && onCancel(result);\r\n onClose && onClose(result);\r\n }\r\n } else {\r\n _this.setState({ visible: false });\r\n }\r\n }\r\n // }\r\n // utils.callback(callback, scope, [_this.returnValue]);\r\n }\r\n\r\n /**\r\n * 获取参数,如果key不传递,且获取全部\r\n * @param {String} key\r\n */\r\n getParams(key) {\r\n if (key) return this.option.params[key];\r\n return this.option.params;\r\n }\r\n onStart(_event: DraggableEvent, uiData: DraggableData) {\r\n const { clientWidth, clientHeight } = window.document.documentElement;\r\n const targetRect = this.draggleRef.current?.getBoundingClientRect();\r\n if (!targetRect) {\r\n return;\r\n }\r\n this.setState({\r\n bounds: {\r\n left: -targetRect.left + uiData.x,\r\n right: clientWidth - (targetRect.right - uiData.x),\r\n top: -targetRect.top + uiData.y,\r\n bottom: clientHeight - (targetRect.bottom - uiData.y),\r\n },\r\n });\r\n }\r\n\r\n render() {\r\n const {\r\n type = \"modal\",\r\n closable,\r\n // title: orgtitle,\r\n okButtonProps = {},\r\n cancelButtonProps = {},\r\n formExpand = {},\r\n dragable = true,\r\n footerButton = [],\r\n ...params\r\n } = this.props;\r\n let props: any = { ...params };\r\n let { mountElementId } = config();\r\n if (mountElementId) {\r\n props = {\r\n getContainer: () => document.getElementById(mountElementId),\r\n ...props,\r\n };\r\n }\r\n if (dragable && type == \"modal\") {\r\n props = {\r\n modalRender: (modal) => {\r\n return (\r\n <Draggable\r\n disabled={this.state.dragger}\r\n bounds={this.state.bounds}\r\n onStart={(event, uiData) => {\r\n this.onStart(event, uiData);\r\n }}\r\n >\r\n <div ref={this.draggleRef}>{modal}</div>\r\n </Draggable>\r\n );\r\n },\r\n ...props,\r\n };\r\n }\r\n\r\n const title = (\r\n <div\r\n className={cls(getLess(styles, \"nsc-modal-title\"), {\r\n [getLess(styles, \"nsc-modal-title-dragger\")]:\r\n dragable && type == \"modal\",\r\n })}\r\n onMouseOver={() => {\r\n if (this.state.dragger) {\r\n this.setState({\r\n dragger: false,\r\n });\r\n }\r\n }}\r\n onMouseOut={() => {\r\n this.setState({\r\n dragger: true,\r\n });\r\n }}\r\n >\r\n <div className={getLess(styles, \"nsc-modal-title-icons\")}>\r\n {!this.state.expand && formExpand.expand && (\r\n <div\r\n onClick={() => {\r\n this.setState({ expand: true });\r\n }}\r\n className={getLess(styles, \"nsc-modal-title-icon\")}\r\n >\r\n <ExpandOutlined />\r\n </div>\r\n )}\r\n {this.state.expand && formExpand.expand && (\r\n <div\r\n onClick={() => {\r\n this.setState({ expand: false });\r\n }}\r\n className={getLess(styles, \"nsc-modal-title-icon\")}\r\n >\r\n <CompressOutlined />\r\n </div>\r\n )}\r\n {closable !== false && (\r\n <div\r\n onClick={() => {\r\n this.close();\r\n }}\r\n className={getLess(styles, \"nsc-modal-title-icon\")}\r\n style={{ marginRight: 0 }}\r\n >\r\n <CloseOutlined />\r\n </div>\r\n )}\r\n </div>\r\n <div className={getLess(styles, \"nsc-modal-title-content\")}>\r\n {this.props.title}\r\n </div>\r\n </div>\r\n );\r\n const { modalButton } = config();\r\n const footer = (\r\n <div className={getLess(styles, \"nsc-modal-footer\")}>\r\n <Button\r\n onClick={this.close.bind(this, {}, true)}\r\n icon={<CloseCircleOutlined />}\r\n {...modalButton.cancleButtonProps}\r\n {...cancelButtonProps}\r\n className={getLess(styles, \"nsc-modal-footer-button-margin\")}\r\n >\r\n {this.props.cancelText ? this.props.cancelText : \"取消\"}\r\n </Button>\r\n <Button\r\n type=\"primary\"\r\n onClick={() => {\r\n props.onOk && props.onOk();\r\n }}\r\n icon={<PlusCircleOutlined />}\r\n className={getLess(styles, \"nsc-modal-footer-button-margin\")}\r\n {...modalButton.okButtonProps}\r\n {...okButtonProps}\r\n >\r\n {this.props.okText ? this.props.okText : \"保存\"}\r\n </Button>\r\n {footerButton.map((item, index) => {\r\n return (\r\n <div\r\n className={getLess(styles, \"nsc-modal-footer-button-margin\")}\r\n key={index}\r\n >\r\n {item}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n );\r\n if (formExpand.expand) {\r\n props = {\r\n footer: footer,\r\n ...props,\r\n title: title,\r\n closable: false,\r\n style: { maxWidth: \"100vw\" },\r\n width: this.state.expand ? \"100vw\" : props.width,\r\n };\r\n } else {\r\n props = {\r\n footer: footer,\r\n ...props,\r\n title: title,\r\n closable: false,\r\n };\r\n }\r\n if (this.state.modalType == \"drawer\") {\r\n let oldProps = { ...props };\r\n let newDrawerProps = omit(oldProps, [\"onOk\", \"okButtonProps\"]);\r\n return (\r\n <Drawer\r\n open={this.state.visible}\r\n onClose={() => {\r\n this.close();\r\n }}\r\n {...newDrawerProps}\r\n />\r\n );\r\n } else {\r\n return (\r\n <Modal\r\n open={this.state.visible}\r\n onCancel={() => {\r\n this.close();\r\n }}\r\n onOk={() => {\r\n this.close();\r\n }}\r\n okText={\"确定\"}\r\n cancelText={\"取消\"}\r\n centered={true}\r\n className={\r\n this.state.expand\r\n ? getLess(styles, \"nsc-modal-allsreen\")\r\n : getLess(styles, \"nsc-modal\")\r\n }\r\n // title={formExpand ? title : this.props.title}\r\n {...props}\r\n afterClose={() => {\r\n this.setState({\r\n expand: false,\r\n });\r\n }}\r\n />\r\n );\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","createRef","PureComponent","utils","config","PlusCircleOutlined","CloseCircleOutlined","CloseOutlined","ExpandOutlined","CompressOutlined","Button","getLess","styles","getStorage","Confirm","omit","Draggable","cls","NscModal","useModal","modal","contextHolder","_Modal","constructor","props","_defineProperty","scope","params","beforeRender","callbackBeforeClose","callback","afterRender","ev","data","JSON","parse","e","console","log","_this","eventType","payload","type","setState","modalType","storePrefix","autoType","content","state","visible","expand","bounds","left","top","bottom","right","dragger","componentDidMount","window","addEventListener","listenMessage","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","prevState","snapshot","show","option","arguments","length","undefined","_objectSpread","hide","getReturnValue","returnValue","close","result","buttonClose","formExpand","onCancel","onButtonCancel","onClose","valid","change","onOk","getParams","key","onStart","_event","uiData","_this$draggleRef$curr","clientWidth","clientHeight","document","documentElement","targetRect","draggleRef","current","getBoundingClientRect","x","y","render","_this$props","closable","okButtonProps","cancelButtonProps","dragable","footerButton","_objectWithoutProperties","_excluded","mountElementId","getContainer","getElementById","modalRender","createElement","disabled","event","ref","title","className","onMouseOver","onMouseOut","onClick","style","marginRight","modalButton","footer","_extends","bind","icon","cancleButtonProps","cancelText","okText","map","item","index","maxWidth","width","oldProps","newDrawerProps","_Drawer","open","centered","afterClose","info","success","error","warning","destroyAll"],"sources":["../../../src/components/base/modal/index.tsx"],"sourcesContent":["import React, { createRef, PureComponent, ReactNode } from \"react\";\r\nimport { Modal, ModalProps, Drawer, DrawerProps } from \"antd\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport config from \"../../config\";\r\nimport {\r\n PlusCircleOutlined,\r\n CloseCircleOutlined,\r\n CloseOutlined,\r\n ExpandOutlined,\r\n CompressOutlined,\r\n} from \"@ant-design/icons\";\r\nimport Button from \"../button\";\r\nimport { getLess } from \"../../utils\";\r\nimport styles from \"./index.less\";\r\nimport { getStorage } from \"@bj-nsc/functions\";\r\nimport Confirm from \"./Confirm\";\r\nimport omit from \"omit.js\";\r\nimport type { DraggableData, DraggableEvent } from \"react-draggable\";\r\nimport Draggable from \"react-draggable\";\r\nimport cls from \"classnames\";\r\n\r\ninterface formExpand {\r\n change?: boolean;\r\n valid?: boolean;\r\n expand?: boolean;\r\n}\r\n\r\nexport interface NscModalPorps extends ModalProps {\r\n type?: \"modal\" | \"drawer\" | \"auto\";\r\n formExpand?: formExpand;\r\n onButtonCancel?: any; //底部取消按钮回调\r\n dragable?: boolean; //弹框是否看拖动\r\n footerButton?: Array<any>; //footer 其他自定义按钮\r\n}\r\n\r\ninterface NscModalInterface\r\n extends React.ComponentClass<NscModalPorps & DrawerProps, any> {\r\n useModal: () => [any, React.ReactElement];\r\n confirm: typeof Confirm;\r\n info: typeof Modal.info;\r\n success: typeof Modal.success;\r\n error: typeof Modal.error;\r\n warning: typeof Modal.warning;\r\n destroyAll: typeof Modal.destroyAll;\r\n}\r\n\r\nexport default class NscModal extends PureComponent<\r\n NscModalPorps & DrawerProps,\r\n any\r\n> {\r\n static useModal() {\r\n // 调用 antd Modal 的 useModal hook\r\n const [modal, contextHolder] = Modal.useModal();\r\n\r\n // 返回 contextHolder,确保上下文正确传递\r\n return [modal, contextHolder] as [any, React.ReactElement];\r\n }\r\n\r\n static confirm = Confirm;\r\n // static confirm = Modal.confirm;\r\n static info = Modal.info;\r\n static success = Modal.success;\r\n static error = Modal.error;\r\n static warning = Modal.warning;\r\n static destroyAll = Modal.destroyAll;\r\n //返回值\r\n returnValue = null;\r\n\r\n constructor(props) {\r\n super(props);\r\n let modal = props.type || \"auto\";\r\n let storePrefix = getStorage(\"store-pre-key\");\r\n let autoType = getStorage(\r\n storePrefix ? storePrefix + \"formType\" : \"formType\"\r\n );\r\n autoType = autoType ? autoType.content : null;\r\n this.state = {\r\n visible: false,\r\n expand: false,\r\n modalType: modal == \"auto\" ? autoType : modal,\r\n bounds: { left: 0, top: 0, bottom: 0, right: 0 },\r\n dragger: true,\r\n };\r\n }\r\n draggleRef = createRef<HTMLDivElement>();\r\n\r\n option: any = {\r\n //回调作用域\r\n scope: this,\r\n //open传递过来的页面参数\r\n params: {},\r\n //显示之前回调\r\n beforeRender: null,\r\n //关闭之前回调,如果return false,且窗口不关闭\r\n callbackBeforeClose: null,\r\n //关闭后回调,异步操作\r\n callback: null,\r\n //显示之后回调\r\n afterRender: null,\r\n };\r\n /**\r\n * 渲染完成\r\n * @param {*} option 整改传递对象\r\n */\r\n componentDidMount() {\r\n window.addEventListener(\"message\", this.listenMessage);\r\n }\r\n\r\n componentWillUnmount() {\r\n window.removeEventListener(\"message\", this.listenMessage);\r\n }\r\n\r\n componentDidUpdate(\r\n prevProps: Readonly<NscModalPorps & DrawerProps>,\r\n prevState: Readonly<any>,\r\n snapshot?: any\r\n ): void {\r\n if (this.props.type !== prevProps.type) {\r\n this.setState({\r\n modalType: this.props.type || \"auto\",\r\n });\r\n }\r\n }\r\n listenMessage = (ev) => {\r\n let data = {} as any;\r\n if (typeof ev.data === \"string\") {\r\n try {\r\n data = JSON.parse(ev.data);\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n let _this = this;\r\n if (data.eventType == \"changeFormType\") {\r\n const { payload } = data;\r\n if (payload.type == \"modal\" || payload.type == \"drawer\") {\r\n _this.setState({ modalType: payload.type });\r\n }\r\n }\r\n };\r\n //显示\r\n show(option: any = {}) {\r\n const { scope } = this.option;\r\n const { beforeRender, afterRender } = option;\r\n this.option = { ...this.option, ...option };\r\n utils.callback(beforeRender, scope);\r\n this.setState({ visible: true }, () => {\r\n utils.callback(afterRender, scope);\r\n });\r\n }\r\n\r\n //隐藏\r\n hide(option: any = {}) {\r\n let _this = this;\r\n _this.setState({ visible: false });\r\n }\r\n\r\n //获取需要返回的值\r\n getReturnValue() {\r\n return this.returnValue;\r\n }\r\n\r\n /**\r\n * 关闭带回调\r\n */\r\n close(result?: any, buttonClose = false) {\r\n var _this = this;\r\n // const { callback, scope, callbackBeforeClose } = this.option;\r\n const { formExpand = {}, onCancel, onButtonCancel, onClose } = this.props;\r\n // const r = utils.callback(callbackBeforeClose, scope, [this.returnValue]);\r\n // if (r !== false) {\r\n const { expand = false } = formExpand;\r\n if (expand && formExpand.valid && formExpand.change) {\r\n Confirm({\r\n content: \"当前记录已修改尚未保存,确定要放弃修改吗?\",\r\n onOk() {\r\n if (onCancel || onClose) {\r\n if (buttonClose && onButtonCancel) {\r\n onButtonCancel(result);\r\n } else {\r\n onCancel && onCancel(result);\r\n onClose && onClose(result);\r\n }\r\n } else {\r\n _this.setState({ visible: false });\r\n }\r\n },\r\n });\r\n } else {\r\n if (onCancel || onClose) {\r\n if (buttonClose && onButtonCancel) {\r\n onButtonCancel(result);\r\n } else {\r\n onCancel && onCancel(result);\r\n onClose && onClose(result);\r\n }\r\n } else {\r\n _this.setState({ visible: false });\r\n }\r\n }\r\n // }\r\n // utils.callback(callback, scope, [_this.returnValue]);\r\n }\r\n\r\n /**\r\n * 获取参数,如果key不传递,且获取全部\r\n * @param {String} key\r\n */\r\n getParams(key) {\r\n if (key) return this.option.params[key];\r\n return this.option.params;\r\n }\r\n onStart(_event: DraggableEvent, uiData: DraggableData) {\r\n const { clientWidth, clientHeight } = window.document.documentElement;\r\n const targetRect = this.draggleRef.current?.getBoundingClientRect();\r\n if (!targetRect) {\r\n return;\r\n }\r\n this.setState({\r\n bounds: {\r\n left: -targetRect.left + uiData.x,\r\n right: clientWidth - (targetRect.right - uiData.x),\r\n top: -targetRect.top + uiData.y,\r\n bottom: clientHeight - (targetRect.bottom - uiData.y),\r\n },\r\n });\r\n }\r\n\r\n render() {\r\n const {\r\n type = \"modal\",\r\n closable,\r\n // title: orgtitle,\r\n okButtonProps = {},\r\n cancelButtonProps = {},\r\n formExpand = {},\r\n dragable = true,\r\n footerButton = [],\r\n ...params\r\n } = this.props;\r\n let props: any = { ...params };\r\n let { mountElementId } = config();\r\n if (mountElementId) {\r\n props = {\r\n getContainer: () => document.getElementById(mountElementId),\r\n ...props,\r\n };\r\n }\r\n if (dragable && type == \"modal\") {\r\n props = {\r\n modalRender: (modal) => {\r\n return (\r\n <Draggable\r\n disabled={this.state.dragger}\r\n bounds={this.state.bounds}\r\n onStart={(event, uiData) => {\r\n this.onStart(event, uiData);\r\n }}\r\n >\r\n <div ref={this.draggleRef}>{modal}</div>\r\n </Draggable>\r\n );\r\n },\r\n ...props,\r\n };\r\n }\r\n\r\n const title = (\r\n <div\r\n className={cls(getLess(styles, \"nsc-modal-title\"), {\r\n [getLess(styles, \"nsc-modal-title-dragger\")]:\r\n dragable && type == \"modal\",\r\n })}\r\n onMouseOver={() => {\r\n if (this.state.dragger) {\r\n this.setState({\r\n dragger: false,\r\n });\r\n }\r\n }}\r\n onMouseOut={() => {\r\n this.setState({\r\n dragger: true,\r\n });\r\n }}\r\n >\r\n <div className={getLess(styles, \"nsc-modal-title-icons\")}>\r\n {!this.state.expand && formExpand.expand && (\r\n <div\r\n onClick={() => {\r\n this.setState({ expand: true });\r\n }}\r\n className={getLess(styles, \"nsc-modal-title-icon\")}\r\n >\r\n <ExpandOutlined />\r\n </div>\r\n )}\r\n {this.state.expand && formExpand.expand && (\r\n <div\r\n onClick={() => {\r\n this.setState({ expand: false });\r\n }}\r\n className={getLess(styles, \"nsc-modal-title-icon\")}\r\n >\r\n <CompressOutlined />\r\n </div>\r\n )}\r\n {closable !== false && (\r\n <div\r\n onClick={() => {\r\n this.close();\r\n }}\r\n className={getLess(styles, \"nsc-modal-title-icon\")}\r\n style={{ marginRight: 0 }}\r\n >\r\n <CloseOutlined />\r\n </div>\r\n )}\r\n </div>\r\n <div className={getLess(styles, \"nsc-modal-title-content\")}>\r\n {this.props.title}\r\n </div>\r\n </div>\r\n );\r\n const { modalButton } = config();\r\n const footer = (\r\n <div className={getLess(styles, \"nsc-modal-footer\")}>\r\n <Button\r\n onClick={this.close.bind(this, {}, true)}\r\n icon={<CloseCircleOutlined />}\r\n {...modalButton.cancleButtonProps}\r\n {...cancelButtonProps}\r\n className={getLess(styles, \"nsc-modal-footer-button-margin\")}\r\n >\r\n {this.props.cancelText ? this.props.cancelText : \"取消\"}\r\n </Button>\r\n <Button\r\n type=\"primary\"\r\n onClick={() => {\r\n props.onOk && props.onOk();\r\n }}\r\n icon={<PlusCircleOutlined />}\r\n className={getLess(styles, \"nsc-modal-footer-button-margin\")}\r\n {...modalButton.okButtonProps}\r\n {...okButtonProps}\r\n >\r\n {this.props.okText ? this.props.okText : \"保存\"}\r\n </Button>\r\n {footerButton.map((item, index) => {\r\n return (\r\n <div\r\n className={getLess(styles, \"nsc-modal-footer-button-margin\")}\r\n key={index}\r\n >\r\n {item}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n );\r\n if (formExpand.expand) {\r\n props = {\r\n footer: footer,\r\n ...props,\r\n title: title,\r\n closable: false,\r\n style: { maxWidth: \"100vw\" },\r\n width: this.state.expand ? \"100vw\" : props.width,\r\n };\r\n } else {\r\n props = {\r\n footer: footer,\r\n ...props,\r\n title: title,\r\n closable: false,\r\n };\r\n }\r\n if (this.state.modalType == \"drawer\") {\r\n let oldProps = { ...props };\r\n let newDrawerProps = omit(oldProps, [\"onOk\", \"okButtonProps\"]);\r\n return (\r\n <Drawer\r\n open={this.state.visible}\r\n onClose={() => {\r\n this.close();\r\n }}\r\n {...newDrawerProps}\r\n />\r\n );\r\n } else {\r\n return (\r\n <Modal\r\n open={this.state.visible}\r\n onCancel={() => {\r\n this.close();\r\n }}\r\n onOk={() => {\r\n this.close();\r\n }}\r\n okText={\"确定\"}\r\n cancelText={\"取消\"}\r\n centered={true}\r\n className={\r\n this.state.expand\r\n ? getLess(styles, \"nsc-modal-allsreen\")\r\n : getLess(styles, \"nsc-modal\")\r\n }\r\n // title={formExpand ? title : this.props.title}\r\n {...props}\r\n afterClose={() => {\r\n this.setState({\r\n expand: false,\r\n });\r\n }}\r\n />\r\n );\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|
package/lib/base/select/index.js
CHANGED
|
@@ -235,7 +235,16 @@ export default class NSCSelect extends PureComponent {
|
|
|
235
235
|
allDataSource: newData
|
|
236
236
|
});
|
|
237
237
|
}
|
|
238
|
-
}
|
|
238
|
+
}
|
|
239
|
+
if (JSON.stringify(newProps.deleteData) !== JSON.stringify(this.props.deleteData) || JSON.stringify(newProps.addData) !== JSON.stringify(this.props.addData)) {
|
|
240
|
+
const newData = this.getAllData(dataStore);
|
|
241
|
+
this.setState({
|
|
242
|
+
dataSource: newData,
|
|
243
|
+
allDataSource: newData,
|
|
244
|
+
dataStore: dataStore
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
if (children && Array.isArray(children)) {
|
|
239
248
|
const stateChildrenProps = [];
|
|
240
249
|
allChildren.map(s => {
|
|
241
250
|
stateChildrenProps.push(s.props);
|
|
@@ -250,13 +259,6 @@ export default class NSCSelect extends PureComponent {
|
|
|
250
259
|
allChildren: children
|
|
251
260
|
});
|
|
252
261
|
}
|
|
253
|
-
} else if (JSON.stringify(newProps.deleteData) !== JSON.stringify(this.props.deleteData) || JSON.stringify(newProps.addData) !== JSON.stringify(this.props.addData)) {
|
|
254
|
-
const newData = this.getAllData(dataStore);
|
|
255
|
-
this.setState({
|
|
256
|
-
dataSource: newData,
|
|
257
|
-
allDataSource: newData,
|
|
258
|
-
dataStore: dataStore
|
|
259
|
-
});
|
|
260
262
|
}
|
|
261
263
|
}
|
|
262
264
|
componentWillUnmount() {
|
|
@@ -494,4 +496,4 @@ export default class NSCSelect extends PureComponent {
|
|
|
494
496
|
}
|
|
495
497
|
_defineProperty(NSCSelect, "Option", Option);
|
|
496
498
|
_defineProperty(NSCSelect, "OptGroup", OptGroup);
|
|
497
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJTdG9yZSIsInV0aWxzIiwiY29uZmlnIiwic3R5bGVzIiwiY2xzIiwiUGlueWluTWF0Y2giLCJnZXRGbGF0dGVuRGF0YSIsIk9wdGlvbiIsIk9wdEdyb3VwIiwiX1NlbGVjdCIsIk5TQ1NlbGVjdCIsImNvbnN0cnVjdG9yIiwicHJvcHMiLCJfZGVmaW5lUHJvcGVydHkiLCJkYXRhU291cmNlIiwic2VsZWN0VmFsdWUiLCJhbGxEYXRhU291cmNlIiwiY2hpbGRyZW4iLCJhbGxDaGlsZHJlbiIsImRhdGFTdG9yZSIsImRhdGEiLCJzdG9yZSIsImFkZERhdGEiLCJkZWxldGVEYXRhIiwidmFsdWVGaWVsZCIsInZpZXduYW1lIiwiQXJyYXkiLCJpc0FycmF5IiwibmV3RGF0YSIsImxlbmd0aCIsInNwbGljZURhdGEiLCJ2YWx1ZUZpZWxkcyIsInNwbGl0IiwibWFwIiwiaXRlbSIsImkiLCJ2YWx1ZSIsInYiLCJpbmRleCIsImluZGV4T2YiLCJwdXNoIiwib3B0aW9ucyIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJjYWNoZWQiLCJjYWNoZUtleSIsInZpZXd0eXBlIiwic3RvcmVzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwidmlld1VybCIsInZpZXdCaXpVcmwiLCJyZXF1ZXN0Vmlld1VybCIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwiX29iamVjdFNwcmVhZCIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwiZ2V0QWxsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJpc0NhY2hlZCIsImlzQ2FjaGVLZXkiLCJhdXRvTG9hZCIsInJlc2V0RGF0YSIsInN0YXRlIiwiZ2V0RGF0YSIsImdldFZhbHVlIiwic2V0VmFsdWUiLCJnZXRTZWxlY3REYXRhIiwia2V5RmllbGQiLCJyZXMiLCJ2YWwiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudERpZFVwZGF0ZSIsIm5ld1Byb3BzIiwibmV3U3RhdGUiLCJTbmFwc2hvdCIsIkpTT04iLCJzdHJpbmdpZnkiLCJzdGF0ZUNoaWxkcmVuUHJvcHMiLCJzIiwiY2hpbGRyZW5Qcm9wcyIsImMiLCJjb21wb25lbnRXaWxsVW5tb3VudCIsIm9uU2VhcmNoIiwiZmlsdGVyT3B0aW9uIiwibGFiZWxGaWVsZCIsInJlc3VsdCIsImZvckVhY2giLCJsYWJlbCIsImxhYmVsRmllbGRzIiwibCIsImZsYWciLCJtYXRjaCIsImNoaWxkIiwiX2NoaWxkJHByb3BzIiwicmVuZGVyT3B0aW9uIiwib3B0aW9uRGF0YSIsInZhbHVlVHlwZSIsIk51bWJlciIsImtleSIsImlkIiwiY3JlYXRlRWxlbWVudCIsImRpc2FibGVkIiwicmVuZGVyQ2hpbGRyZW4iLCJzaG93R3JvdXAiLCJncm91cEZpZWxkIiwiRnJhZ21lbnQiLCJvcHRHcm91cERhdGEiLCJvcHRpb24iLCJvcHRHcm91cCIsIk9iamVjdCIsImtleXMiLCJvbkNoYW5nZSIsIm9uU2VsZWN0Iiwib25Ecm9wZG93blZpc2libGVDaGFuZ2UiLCJvcGVuIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMiLCJkZWZhdWx0U3R5bGUiLCJkYXRhVHlwZSIsInBhcmFtcyIsIl9leGNsdWRlZDIiLCJzaG93U2VhcmNoIiwib3B0aW9uRmlsdGVyUHJvcCIsInBsYWNlaG9sZGVyIiwiYWxsb3dDbGVhciIsImFudGRTdHlsZSIsIm1vdW50RWxlbWVudElkIiwiZ2V0UG9wdXBDb250YWluZXIiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwiY2xhc3NOYW1lIiwiX2V4dGVuZHMiLCJiaW5kIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYmFzZS9zZWxlY3QvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7IFNlbGVjdCwgU2VsZWN0UHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IGNvbmZpZyBmcm9tIFwiLi4vLi4vY29uZmlnXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcbmltcG9ydCBQaW55aW5NYXRjaCBmcm9tIFwicGlueWluLW1hdGNoXCI7XHJcbmltcG9ydCB7IGdldEZsYXR0ZW5EYXRhIH0gZnJvbSBcIkBiai1uc2MvZnVuY3Rpb25zXCI7XHJcbmNvbnN0IHsgT3B0aW9uLCBPcHRHcm91cCB9ID0gU2VsZWN0O1xyXG5cclxuaW50ZXJmYWNlIElTZWxlY3RQcm9wcyBleHRlbmRzIFNlbGVjdFByb3BzPGFueT4ge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBkYXRhPzogQXJyYXk8T2JqZWN0PjsgLy/pu5jorqTmlbDmja5cclxuICBsYWJlbEZpZWxkPzogc3RyaW5nO1xyXG4gIHZhbHVlRmllbGQ/OiBzdHJpbmc7XHJcbiAgZ3JvdXBGaWVsZD86IHN0cmluZztcclxuICBkZWZhdWx0U3R5bGU/OiBib29sZWFuO1xyXG4gIHNob3dHcm91cD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65YiG57uEXHJcbiAgYWRkRGF0YT86IEFycmF5PE9iamVjdD47IC8v6YWN5ZCIc3RvcmXkvb/nlKjvvIzku47lop7liqDpop3lpJbnmoTmlbDmja5cclxuICBkZWxldGVEYXRhPzogQXJyYXk8U3RyaW5nPjsgLy/phY3lkIhzdG9yZeS9v+eUqO+8jOWIoOmZpOS7juaVsOaNruW6k+S4reiOt+WPluWIsOeahOaMh+WumuaVsOaNrlxyXG4gIHZhbHVlQnJlYWs/OiBzdHJpbmc7IC8v5aSa5LiqdmFsdWXkvb/nlKjnmoTliIbpmpTnrKZcclxuICB2YWx1ZVR5cGU/OiBcInN0cmluZ1wiIHwgXCJudW1iZXJcIjtcclxuICBbcHJvTmFtZTogc3RyaW5nXTogYW55O1xyXG4gIG9uQ2hhbmdlPzogYW55O1xyXG4gIG9uU2VsZWN0PzogYW55O1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5TQ1NlbGVjdCBleHRlbmRzIFB1cmVDb21wb25lbnQ8SVNlbGVjdFByb3BzPiB7XHJcbiAgc3RhdGljIE9wdGlvbiA9IE9wdGlvbjtcclxuICBzdGF0aWMgT3B0R3JvdXAgPSBPcHRHcm91cDtcclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGFTb3VyY2U6IFtdLFxyXG4gICAgc2VsZWN0VmFsdWU6IG51bGwsXHJcbiAgICBhbGxEYXRhU291cmNlOiBbXSxcclxuICAgIGNoaWxkcmVuOiBudWxsLFxyXG4gICAgYWxsQ2hpbGRyZW46IG51bGwsXHJcbiAgICBkYXRhU3RvcmU6IFtdLFxyXG4gIH07XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBsZXQge1xyXG4gICAgICBkYXRhLFxyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgYWRkRGF0YSA9IFtdLFxyXG4gICAgICBkZWxldGVEYXRhID0gW10sXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHVybCxcclxuICAgICAgbGlzdGVuZXJzOiBsaXN0ZW5lcnNQb3BzID0ge30sXHJcbiAgICAgIHZpZXduYW1lLFxyXG4gICAgICBjYWNoZWQsXHJcbiAgICAgIGNhY2hlS2V5LFxyXG4gICAgICB2aWV3dHlwZSA9IFwic3lzXCIsXHJcbiAgICAgIC4uLnN0b3Jlc1xyXG4gICAgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGxldCB7IHZpZXdVcmwsIHZpZXdCaXpVcmwgfSA9IGNvbmZpZygpO1xyXG4gICAgbGV0IHJlcXVlc3RWaWV3VXJsID0gdmlld3R5cGUgPT0gXCJzeXNcIiA/IHZpZXdVcmwgOiB2aWV3Qml6VXJsO1xyXG5cclxuICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgaWYgKCEoZGF0YSB8fCB2aWV3bmFtZSB8fCB1cmwgfHwgb3B0aW9ucykpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIF2aWV3bmFtZeOAgWRhdGHjgIFvcHRpb25z5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gX3RoaXMuZ2V0QWxsRGF0YShkYXRhKTtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICAgICAgICBkYXRhU3RvcmU6IGRhdGEsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmxvYWQsIF90aGlzLCBbZGF0YSwgbW9kZWxEYXRhLCBzdG9yZV0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFDaGFuZ2VkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gX3RoaXMuZ2V0QWxsRGF0YShkYXRhKTtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICAgICAgICBkYXRhU3RvcmU6IGRhdGEsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmRhdGFDaGFuZ2VkLCBfdGhpcywgW1xyXG4gICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgbW9kZWxEYXRhLFxyXG4gICAgICAgICAgICAgIHN0b3JlLFxyXG4gICAgICAgICAgICBdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICAuLi5zdG9yZXMsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICgodmlld25hbWUgfHwgdXJsKSAmJiBkYXRhID09IG51bGwgJiYgb3B0aW9ucyA9PSBudWxsKSB7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVkID0gY2FjaGVkO1xyXG4gICAgICAgIGxldCBpc0NhY2hlS2V5ID0gY2FjaGVLZXk7XHJcbiAgICAgICAgaWYgKHZpZXduYW1lKSB7XHJcbiAgICAgICAgICBpZiAodHlwZW9mIGNhY2hlZCAhPT0gXCJib29sZWFuXCIpIHtcclxuICAgICAgICAgICAgaXNDYWNoZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICBpc0NhY2hlS2V5ID0gaXNDYWNoZUtleSA/IGlzQ2FjaGVLZXkgOiB2aWV3bmFtZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCB8fCByZXF1ZXN0Vmlld1VybCArIHZpZXduYW1lLCAvL+ivu+Wtl+WFuO+8jHVybOWbuuWumu+8jHZpZXduYW1lXHJcbiAgICAgICAgICAgIGNhY2hlZDogaXNDYWNoZWQsXHJcbiAgICAgICAgICAgIGNhY2hlS2V5OiBpc0NhY2hlS2V5LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnN0b3JlUHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVzZXREYXRhKCkge1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgYWxsRGF0YVNvdXJjZSwgYWxsQ2hpbGRyZW4gfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7IGNoaWxkcmVuOiBhbGxDaGlsZHJlbiB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IGFsbERhdGFTb3VyY2UsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0QWxsRGF0YSA9IChkYXRhKSA9PiB7XHJcbiAgICBsZXQgeyBzdG9yZSA9IHt9LCBhZGREYXRhID0gW10sIGRlbGV0ZURhdGEgPSBbXSwgdmFsdWVGaWVsZCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGlmICghQXJyYXkuaXNBcnJheShkYXRhKSkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBsZXQgbmV3RGF0YSA9IFsuLi5kYXRhXTtcclxuICAgIGlmIChhZGREYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgbmV3RGF0YSA9IFsuLi5hZGREYXRhLCAuLi5uZXdEYXRhXTtcclxuICAgIH1cclxuICAgIGlmIChkZWxldGVEYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IHNwbGljZURhdGEgPSBbXTtcclxuICAgICAgY29uc3QgdmFsdWVGaWVsZHM6IGFueSA9IHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICBuZXdEYXRhLm1hcCgoaXRlbSwgaSkgPT4ge1xyXG4gICAgICAgIGxldCB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgICAgdmFsdWVGaWVsZHMubWFwKCh2LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgdmFsdWUgPSBpbmRleCA9PSAwID8gdmFsdWUgKyBpdGVtW3ZdIDogdmFsdWUgKyBcIixcIiArIGl0ZW1bdl07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKGRlbGV0ZURhdGEuaW5kZXhPZih2YWx1ZSkgPT0gLTEpIHtcclxuICAgICAgICAgIHNwbGljZURhdGEucHVzaChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gc3BsaWNlRGF0YTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBuZXdEYXRhO1xyXG4gICAgfVxyXG4gIH07XHJcbiAgZ2V0RGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLmFsbERhdGFTb3VyY2U7XHJcbiAgfVxyXG5cclxuICBnZXRWYWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdFZhbHVlO1xyXG4gIH1cclxuICBzZXRWYWx1ZSh2YWx1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHNlbGVjdFZhbHVlOiB2YWx1ZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0RGF0YSh2YWx1ZSkge1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgbGV0IHsgc3RvcmUgPSB7fSwgdmFsdWVGaWVsZCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGNvbnN0IG5ld0RhdGEgPSBnZXRGbGF0dGVuRGF0YShkYXRhU291cmNlLCB7IGtleUZpZWxkOiB2YWx1ZUZpZWxkIH0pO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgIGxldCByZXMgPSBbXSBhcyBhbnk7XHJcbiAgICAgIHZhbHVlLm1hcCgodmFsKSA9PiB7XHJcbiAgICAgICAgcmVzLnB1c2gobmV3RGF0YVt2YWxdIHx8IHt9KTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiByZXM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbmV3RGF0YVt2YWx1ZV0gfHwge307XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucywgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIWNoaWxkcmVuICYmIChkYXRhIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IGRhdGEgPyBkYXRhIDogb3B0aW9ucyxcclxuICAgICAgICBhbGxEYXRhU291cmNlOiBkYXRhID8gZGF0YSA6IG9wdGlvbnMsXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbikge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgYWxsQ2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShuZXdQcm9wcywgbmV3U3RhdGUsIFNuYXBzaG90KSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIG9wdGlvbnMsIGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBhbGxEYXRhU291cmNlLCBhbGxDaGlsZHJlbiwgZGF0YVN0b3JlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICBjb25zdCBuZXdEYXRhID0gZGF0YSA/IGRhdGEgOiBvcHRpb25zO1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoYWxsRGF0YVNvdXJjZSkgIT09IEpTT04uc3RyaW5naWZ5KG5ld0RhdGEpKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBuZXdEYXRhLFxyXG4gICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbiAmJiBBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xyXG4gICAgICBjb25zdCBzdGF0ZUNoaWxkcmVuUHJvcHM6IGFueSA9IFtdO1xyXG4gICAgICBhbGxDaGlsZHJlbi5tYXAoKHM6IGFueSkgPT4ge1xyXG4gICAgICAgIHN0YXRlQ2hpbGRyZW5Qcm9wcy5wdXNoKHMucHJvcHMpO1xyXG4gICAgICB9KTtcclxuICAgICAgY29uc3QgY2hpbGRyZW5Qcm9wczogYW55ID0gW107XHJcbiAgICAgIGNoaWxkcmVuLm1hcCgoYzogYW55KSA9PiB7XHJcbiAgICAgICAgY2hpbGRyZW5Qcm9wcy5wdXNoKGMucHJvcHMpO1xyXG4gICAgICB9KTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHN0YXRlQ2hpbGRyZW5Qcm9wcykgIT09IEpTT04uc3RyaW5naWZ5KGNoaWxkcmVuUHJvcHMpXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgY2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgICAgYWxsQ2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKFxyXG4gICAgICBKU09OLnN0cmluZ2lmeShuZXdQcm9wcy5kZWxldGVEYXRhKSAhPT1cclxuICAgICAgICBKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzLmRlbGV0ZURhdGEpIHx8XHJcbiAgICAgIEpTT04uc3RyaW5naWZ5KG5ld1Byb3BzLmFkZERhdGEpICE9PSBKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzLmFkZERhdGEpXHJcbiAgICApIHtcclxuICAgICAgY29uc3QgbmV3RGF0YSA9IHRoaXMuZ2V0QWxsRGF0YShkYXRhU3RvcmUpO1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBkYXRhU291cmNlOiBuZXdEYXRhLFxyXG4gICAgICAgIGFsbERhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgZGF0YVN0b3JlOiBkYXRhU3RvcmUsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUgPSAoc3RhdGUsIGNhbGxiYWNrKSA9PiB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH07XHJcbiAgfVxyXG4gIG9uU2VhcmNoKHZhbHVlKSB7XHJcbiAgICBjb25zdCB7IGFsbERhdGFTb3VyY2UsIGFsbENoaWxkcmVuIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3QgeyBmaWx0ZXJPcHRpb24gPSB0cnVlLCBvblNlYXJjaCwgY2hpbGRyZW4sIHN0b3JlID0ge30gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBsZXQgeyBsYWJlbEZpZWxkIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyB2aWV3bmFtZSB9ID0gc3RvcmU7XHJcbiAgICBsYWJlbEZpZWxkID0gbGFiZWxGaWVsZCA/IGxhYmVsRmllbGQgOiB2aWV3bmFtZSA/IFwiZGljdFZhbHVlXCIgOiBcImxhYmVsXCI7XHJcbiAgICBpZiAoZmlsdGVyT3B0aW9uKSB7XHJcbiAgICAgIGxldCByZXN1bHQgPSBbXTtcclxuICAgICAgaWYgKCFjaGlsZHJlbikge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgYWxsRGF0YVNvdXJjZS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBsYWJlbCA9IFwiXCI7XHJcbiAgICAgICAgICAgIGlmIChsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKS5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgICAgICAgIGxhYmVsID0gaXRlbVtsYWJlbEZpZWxkXTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBjb25zdCBsYWJlbEZpZWxkczogYW55ID0gbGFiZWxGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgICAgICAgbGFiZWxGaWVsZHMubWFwKChsLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgbGFiZWwgPSBpbmRleCA9PSAwID8gbGFiZWwgKyBpdGVtW2xdIDogbGFiZWwgKyBcIi1cIiArIGl0ZW1bbF07XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGZsYWcgPSBQaW55aW5NYXRjaC5tYXRjaChsYWJlbCwgdmFsdWUpO1xyXG4gICAgICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBkYXRhU291cmNlOiByZXN1bHQsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IGFsbERhdGFTb3VyY2UsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhbGxDaGlsZHJlbikpIHtcclxuICAgICAgICAgICAgYWxsQ2hpbGRyZW4ubWFwKChjaGlsZDogYW55LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgIGxldCBsYWJlbCA9IGNoaWxkPy5wcm9wcz8uY2hpbGRyZW47XHJcbiAgICAgICAgICAgICAgbGV0IGZsYWcgPSBQaW55aW5NYXRjaC5tYXRjaChsYWJlbCwgdmFsdWUpO1xyXG4gICAgICAgICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBjaGlsZHJlbjogcmVzdWx0LFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIG9uU2VhcmNoICYmIG9uU2VhcmNoKHZhbHVlKTtcclxuICB9XHJcbiAgcmVuZGVyT3B0aW9uKG9wdGlvbkRhdGEpIHtcclxuICAgIGxldCB7XHJcbiAgICAgIHN0b3JlID0ge30sXHJcbiAgICAgIHZhbHVlVHlwZSA9IFwic3RyaW5nXCIsXHJcbiAgICAgIGxhYmVsRmllbGQsXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGxhYmVsRmllbGQgPSBsYWJlbEZpZWxkID8gbGFiZWxGaWVsZCA6IHZpZXduYW1lID8gXCJkaWN0VmFsdWVcIiA6IFwibGFiZWxcIjtcclxuICAgIHJldHVybiBvcHRpb25EYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICBsZXQgdmFsdWU6IGFueTtcclxuICAgICAgaWYgKHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgdmFsdWUgPVxyXG4gICAgICAgICAgdmFsdWVUeXBlID09PSBcIm51bWJlclwiID8gTnVtYmVyKGl0ZW1bdmFsdWVGaWVsZF0pIDogaXRlbVt2YWx1ZUZpZWxkXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCB2YWx1ZUZpZWxkczogYW55ID0gdmFsdWVGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgdmFsdWUgPSBcIlwiO1xyXG4gICAgICAgIHZhbHVlRmllbGRzLm1hcCgodiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgIHZhbHVlID0gaW5kZXggPT0gMCA/IHZhbHVlICsgaXRlbVt2XSA6IHZhbHVlICsgXCIsXCIgKyBpdGVtW3ZdO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBrZXkgPSBpdGVtLmlkID8gKGl0ZW0uaWQgIT09IFwidW5kZWZpbmVkXCIgPyBpdGVtLmlkIDogdmFsdWUpIDogdmFsdWU7XHJcbiAgICAgIGxldCBsYWJlbCA9IFwiXCI7XHJcbiAgICAgIGlmIChsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKS5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgIGxhYmVsID0gaXRlbVtsYWJlbEZpZWxkXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBsYWJlbEZpZWxkczogYW55ID0gbGFiZWxGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgbGFiZWxGaWVsZHMubWFwKChsLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgbGFiZWwgPSBpbmRleCA9PSAwID8gbGFiZWwgKyBpdGVtW2xdIDogbGFiZWwgKyBcIi1cIiArIGl0ZW1bbF07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8T3B0aW9uXHJcbiAgICAgICAgICBrZXk9e2tleX1cclxuICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cclxuICAgICAgICAgIGxhYmVsPXtsYWJlbH1cclxuICAgICAgICAgIGRpc2FibGVkPXtpdGVtLmRpc2FibGVkID8gdHJ1ZSA6IGZhbHNlfVxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtsYWJlbH1cclxuICAgICAgICA8L09wdGlvbj5cclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICByZW5kZXJDaGlsZHJlbigpIHtcclxuICAgIGNvbnN0IHsgc2hvd0dyb3VwID0gdHJ1ZSwgZ3JvdXBGaWVsZCA9IFwiZ3JvdXBOYW1lXCIgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGRhdGFTb3VyY2UsIGNoaWxkcmVuIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHJldHVybiA8PntjaGlsZHJlbn08Lz47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgb3B0R3JvdXBEYXRhID0ge30sXHJcbiAgICAgICAgb3B0aW9uRGF0YSA9IFtdO1xyXG4gICAgICBkYXRhU291cmNlLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICBsZXQgbGFiZWwgPSBpdGVtW2dyb3VwRmllbGRdO1xyXG4gICAgICAgIGlmIChsYWJlbCAmJiBzaG93R3JvdXApIHtcclxuICAgICAgICAgIGlmICghb3B0R3JvdXBEYXRhW2xhYmVsXSkgb3B0R3JvdXBEYXRhW2xhYmVsXSA9IFtdO1xyXG4gICAgICAgICAgb3B0R3JvdXBEYXRhW2xhYmVsXS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBvcHRpb25EYXRhLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgbGV0IG9wdGlvbiA9IHRoaXMucmVuZGVyT3B0aW9uKG9wdGlvbkRhdGEpO1xyXG4gICAgICBsZXQgb3B0R3JvdXAgPSBPYmplY3Qua2V5cyhvcHRHcm91cERhdGEpLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxPcHRHcm91cCBrZXk9e2tleX0gbGFiZWw9e2tleX0+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlck9wdGlvbihvcHRHcm91cERhdGFba2V5XSl9XHJcbiAgICAgICAgICA8L09wdEdyb3VwPlxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICB7b3B0aW9ufVxyXG4gICAgICAgICAge29wdEdyb3VwfVxyXG4gICAgICAgIDwvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbkNoYW5nZSh2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgY29uc3QgeyBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBzZWxlY3RWYWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICAgIGlmIChvbkNoYW5nZSkge1xyXG4gICAgICBjb25zdCBkYXRhID0gdGhpcy5nZXRTZWxlY3REYXRhKHZhbHVlKTtcclxuICAgICAgb25DaGFuZ2UodmFsdWUsIG9wdGlvbnMsIGRhdGEpO1xyXG4gICAgfVxyXG4gIH1cclxuICBvblNlbGVjdCh2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgY29uc3QgeyBvblNlbGVjdCB9ID0gdGhpcy5wcm9wcztcclxuXHJcbiAgICBpZiAob25TZWxlY3QpIHtcclxuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0U2VsZWN0RGF0YSh2YWx1ZSk7XHJcbiAgICAgIG9uU2VsZWN0KHZhbHVlLCBvcHRpb25zLCBkYXRhKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25Ecm9wZG93blZpc2libGVDaGFuZ2Uob3Blbikge1xyXG4gICAgaWYgKCFvcGVuKSB7XHJcbiAgICAgIHRoaXMucmVzZXREYXRhKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIHN0b3JlLFxyXG4gICAgICBkYXRhLFxyXG4gICAgICBvbkNoYW5nZSxcclxuICAgICAgb25TZWxlY3QsXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICAgIGxhYmVsRmllbGQsXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICAgIGRlZmF1bHRTdHlsZSxcclxuICAgICAgc2hvd0dyb3VwID0gdHJ1ZSxcclxuICAgICAgYWRkRGF0YSxcclxuICAgICAgZGVsZXRlRGF0YSxcclxuICAgICAgdmFsdWVUeXBlLFxyXG4gICAgICBncm91cEZpZWxkLFxyXG4gICAgICBkYXRhVHlwZSxcclxuICAgICAgLi4ucGFyYW1zXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGxldCBwcm9wcyA9IHtcclxuICAgICAgZmlsdGVyT3B0aW9uOiBmYWxzZSxcclxuICAgICAgc2hvd1NlYXJjaDogdHJ1ZSxcclxuICAgICAgb3B0aW9uRmlsdGVyUHJvcDogXCJsYWJlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlcjogXCLor7fpgInmi6lcIixcclxuICAgICAgYWxsb3dDbGVhcjogdHJ1ZSxcclxuICAgIH0gYXMgYW55O1xyXG4gICAgbGV0IHsgYW50ZFN0eWxlLCBtb3VudEVsZW1lbnRJZCB9ID0gY29uZmlnKCk7XHJcbiAgICBpZiAobW91bnRFbGVtZW50SWQpIHtcclxuICAgICAgcHJvcHMgPSB7XHJcbiAgICAgICAgZ2V0UG9wdXBDb250YWluZXI6ICgpID0+IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG1vdW50RWxlbWVudElkKSxcclxuICAgICAgICAuLi5wcm9wcyxcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmICgoZGVmYXVsdFN0eWxlIHx8IGFudGRTdHlsZSkgJiYgZGVmYXVsdFN0eWxlID09PSB0cnVlKSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhzdHlsZXNbXCJuc2Nfc2VsZWN0XCJdLCB0aGlzLnByb3BzLmNsYXNzTmFtZSl9PlxyXG4gICAgICAgICAgPFNlbGVjdFxyXG4gICAgICAgICAgICB2YWx1ZT17dGhpcy5zdGF0ZS5zZWxlY3RWYWx1ZX1cclxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWxlY3Q9e3RoaXMub25TZWxlY3QuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25Ecm9wZG93blZpc2libGVDaGFuZ2U9e3RoaXMub25Ecm9wZG93blZpc2libGVDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXt0aGlzLnByb3BzLmNsYXNzTmFtZX0+XHJcbiAgICAgICAgICA8U2VsZWN0XHJcbiAgICAgICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnNlbGVjdFZhbHVlfVxyXG4gICAgICAgICAgICBvblNlYXJjaD17dGhpcy5vblNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICBvblNlbGVjdD17dGhpcy5vblNlbGVjdC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICBvbkRyb3Bkb3duVmlzaWJsZUNoYW5nZT17dGhpcy5vbkRyb3Bkb3duVmlzaWJsZUNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICB7Li4ucHJvcHN9XHJcbiAgICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlckNoaWxkcmVuKCl9XHJcbiAgICAgICAgICA8L1NlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQUssSUFBSUMsYUFBYSxRQUFRLE9BQU87QUFFNUMsT0FBT0MsS0FBSyxNQUFzQixhQUFhO0FBQy9DLFNBQVNDLEtBQUssUUFBUSx1QkFBdUI7QUFDN0MsT0FBT0MsTUFBTSxNQUFNLGNBQWM7QUFDakMsT0FBT0MsTUFBTSxNQUFNLGNBQWM7QUFDakMsT0FBT0MsR0FBRyxNQUFNLFlBQVk7QUFFNUIsT0FBT0MsV0FBVyxNQUFNLGNBQWM7QUFDdEMsU0FBU0MsY0FBYyxRQUFRLG1CQUFtQjtBQUNsRCxNQUFNO0VBQUVDLE1BQU07RUFBRUM7QUFBUyxD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
|
|
499
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJTdG9yZSIsInV0aWxzIiwiY29uZmlnIiwic3R5bGVzIiwiY2xzIiwiUGlueWluTWF0Y2giLCJnZXRGbGF0dGVuRGF0YSIsIk9wdGlvbiIsIk9wdEdyb3VwIiwiX1NlbGVjdCIsIk5TQ1NlbGVjdCIsImNvbnN0cnVjdG9yIiwicHJvcHMiLCJfZGVmaW5lUHJvcGVydHkiLCJkYXRhU291cmNlIiwic2VsZWN0VmFsdWUiLCJhbGxEYXRhU291cmNlIiwiY2hpbGRyZW4iLCJhbGxDaGlsZHJlbiIsImRhdGFTdG9yZSIsImRhdGEiLCJzdG9yZSIsImFkZERhdGEiLCJkZWxldGVEYXRhIiwidmFsdWVGaWVsZCIsInZpZXduYW1lIiwiQXJyYXkiLCJpc0FycmF5IiwibmV3RGF0YSIsImxlbmd0aCIsInNwbGljZURhdGEiLCJ2YWx1ZUZpZWxkcyIsInNwbGl0IiwibWFwIiwiaXRlbSIsImkiLCJ2YWx1ZSIsInYiLCJpbmRleCIsImluZGV4T2YiLCJwdXNoIiwib3B0aW9ucyIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJjYWNoZWQiLCJjYWNoZUtleSIsInZpZXd0eXBlIiwic3RvcmVzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwidmlld1VybCIsInZpZXdCaXpVcmwiLCJyZXF1ZXN0Vmlld1VybCIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwiX29iamVjdFNwcmVhZCIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwiZ2V0QWxsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJpc0NhY2hlZCIsImlzQ2FjaGVLZXkiLCJhdXRvTG9hZCIsInJlc2V0RGF0YSIsInN0YXRlIiwiZ2V0RGF0YSIsImdldFZhbHVlIiwic2V0VmFsdWUiLCJnZXRTZWxlY3REYXRhIiwia2V5RmllbGQiLCJyZXMiLCJ2YWwiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudERpZFVwZGF0ZSIsIm5ld1Byb3BzIiwibmV3U3RhdGUiLCJTbmFwc2hvdCIsIkpTT04iLCJzdHJpbmdpZnkiLCJzdGF0ZUNoaWxkcmVuUHJvcHMiLCJzIiwiY2hpbGRyZW5Qcm9wcyIsImMiLCJjb21wb25lbnRXaWxsVW5tb3VudCIsIm9uU2VhcmNoIiwiZmlsdGVyT3B0aW9uIiwibGFiZWxGaWVsZCIsInJlc3VsdCIsImZvckVhY2giLCJsYWJlbCIsImxhYmVsRmllbGRzIiwibCIsImZsYWciLCJtYXRjaCIsImNoaWxkIiwiX2NoaWxkJHByb3BzIiwicmVuZGVyT3B0aW9uIiwib3B0aW9uRGF0YSIsInZhbHVlVHlwZSIsIk51bWJlciIsImtleSIsImlkIiwiY3JlYXRlRWxlbWVudCIsImRpc2FibGVkIiwicmVuZGVyQ2hpbGRyZW4iLCJzaG93R3JvdXAiLCJncm91cEZpZWxkIiwiRnJhZ21lbnQiLCJvcHRHcm91cERhdGEiLCJvcHRpb24iLCJvcHRHcm91cCIsIk9iamVjdCIsImtleXMiLCJvbkNoYW5nZSIsIm9uU2VsZWN0Iiwib25Ecm9wZG93blZpc2libGVDaGFuZ2UiLCJvcGVuIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMiLCJkZWZhdWx0U3R5bGUiLCJkYXRhVHlwZSIsInBhcmFtcyIsIl9leGNsdWRlZDIiLCJzaG93U2VhcmNoIiwib3B0aW9uRmlsdGVyUHJvcCIsInBsYWNlaG9sZGVyIiwiYWxsb3dDbGVhciIsImFudGRTdHlsZSIsIm1vdW50RWxlbWVudElkIiwiZ2V0UG9wdXBDb250YWluZXIiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwiY2xhc3NOYW1lIiwiX2V4dGVuZHMiLCJiaW5kIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYmFzZS9zZWxlY3QvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7IFNlbGVjdCwgU2VsZWN0UHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IGNvbmZpZyBmcm9tIFwiLi4vLi4vY29uZmlnXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcbmltcG9ydCBQaW55aW5NYXRjaCBmcm9tIFwicGlueWluLW1hdGNoXCI7XHJcbmltcG9ydCB7IGdldEZsYXR0ZW5EYXRhIH0gZnJvbSBcIkBiai1uc2MvZnVuY3Rpb25zXCI7XHJcbmNvbnN0IHsgT3B0aW9uLCBPcHRHcm91cCB9ID0gU2VsZWN0O1xyXG5cclxuaW50ZXJmYWNlIElTZWxlY3RQcm9wcyBleHRlbmRzIFNlbGVjdFByb3BzPGFueT4ge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBkYXRhPzogQXJyYXk8T2JqZWN0PjsgLy/pu5jorqTmlbDmja5cclxuICBsYWJlbEZpZWxkPzogc3RyaW5nO1xyXG4gIHZhbHVlRmllbGQ/OiBzdHJpbmc7XHJcbiAgZ3JvdXBGaWVsZD86IHN0cmluZztcclxuICBkZWZhdWx0U3R5bGU/OiBib29sZWFuO1xyXG4gIHNob3dHcm91cD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65YiG57uEXHJcbiAgYWRkRGF0YT86IEFycmF5PE9iamVjdD47IC8v6YWN5ZCIc3RvcmXkvb/nlKjvvIzku47lop7liqDpop3lpJbnmoTmlbDmja5cclxuICBkZWxldGVEYXRhPzogQXJyYXk8U3RyaW5nPjsgLy/phY3lkIhzdG9yZeS9v+eUqO+8jOWIoOmZpOS7juaVsOaNruW6k+S4reiOt+WPluWIsOeahOaMh+WumuaVsOaNrlxyXG4gIHZhbHVlQnJlYWs/OiBzdHJpbmc7IC8v5aSa5LiqdmFsdWXkvb/nlKjnmoTliIbpmpTnrKZcclxuICB2YWx1ZVR5cGU/OiBcInN0cmluZ1wiIHwgXCJudW1iZXJcIjtcclxuICBbcHJvTmFtZTogc3RyaW5nXTogYW55O1xyXG4gIG9uQ2hhbmdlPzogYW55O1xyXG4gIG9uU2VsZWN0PzogYW55O1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5TQ1NlbGVjdCBleHRlbmRzIFB1cmVDb21wb25lbnQ8SVNlbGVjdFByb3BzPiB7XHJcbiAgc3RhdGljIE9wdGlvbiA9IE9wdGlvbjtcclxuICBzdGF0aWMgT3B0R3JvdXAgPSBPcHRHcm91cDtcclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGFTb3VyY2U6IFtdLFxyXG4gICAgc2VsZWN0VmFsdWU6IG51bGwsXHJcbiAgICBhbGxEYXRhU291cmNlOiBbXSxcclxuICAgIGNoaWxkcmVuOiBudWxsLFxyXG4gICAgYWxsQ2hpbGRyZW46IG51bGwsXHJcbiAgICBkYXRhU3RvcmU6IFtdLFxyXG4gIH07XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBsZXQge1xyXG4gICAgICBkYXRhLFxyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgYWRkRGF0YSA9IFtdLFxyXG4gICAgICBkZWxldGVEYXRhID0gW10sXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHVybCxcclxuICAgICAgbGlzdGVuZXJzOiBsaXN0ZW5lcnNQb3BzID0ge30sXHJcbiAgICAgIHZpZXduYW1lLFxyXG4gICAgICBjYWNoZWQsXHJcbiAgICAgIGNhY2hlS2V5LFxyXG4gICAgICB2aWV3dHlwZSA9IFwic3lzXCIsXHJcbiAgICAgIC4uLnN0b3Jlc1xyXG4gICAgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGxldCB7IHZpZXdVcmwsIHZpZXdCaXpVcmwgfSA9IGNvbmZpZygpO1xyXG4gICAgbGV0IHJlcXVlc3RWaWV3VXJsID0gdmlld3R5cGUgPT0gXCJzeXNcIiA/IHZpZXdVcmwgOiB2aWV3Qml6VXJsO1xyXG5cclxuICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgaWYgKCEoZGF0YSB8fCB2aWV3bmFtZSB8fCB1cmwgfHwgb3B0aW9ucykpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIF2aWV3bmFtZeOAgWRhdGHjgIFvcHRpb25z5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gX3RoaXMuZ2V0QWxsRGF0YShkYXRhKTtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICAgICAgICBkYXRhU3RvcmU6IGRhdGEsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmxvYWQsIF90aGlzLCBbZGF0YSwgbW9kZWxEYXRhLCBzdG9yZV0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFDaGFuZ2VkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gX3RoaXMuZ2V0QWxsRGF0YShkYXRhKTtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgIGRhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICAgICAgICBkYXRhU3RvcmU6IGRhdGEsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmRhdGFDaGFuZ2VkLCBfdGhpcywgW1xyXG4gICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgbW9kZWxEYXRhLFxyXG4gICAgICAgICAgICAgIHN0b3JlLFxyXG4gICAgICAgICAgICBdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICAuLi5zdG9yZXMsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICgodmlld25hbWUgfHwgdXJsKSAmJiBkYXRhID09IG51bGwgJiYgb3B0aW9ucyA9PSBudWxsKSB7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVkID0gY2FjaGVkO1xyXG4gICAgICAgIGxldCBpc0NhY2hlS2V5ID0gY2FjaGVLZXk7XHJcbiAgICAgICAgaWYgKHZpZXduYW1lKSB7XHJcbiAgICAgICAgICBpZiAodHlwZW9mIGNhY2hlZCAhPT0gXCJib29sZWFuXCIpIHtcclxuICAgICAgICAgICAgaXNDYWNoZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICBpc0NhY2hlS2V5ID0gaXNDYWNoZUtleSA/IGlzQ2FjaGVLZXkgOiB2aWV3bmFtZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCB8fCByZXF1ZXN0Vmlld1VybCArIHZpZXduYW1lLCAvL+ivu+Wtl+WFuO+8jHVybOWbuuWumu+8jHZpZXduYW1lXHJcbiAgICAgICAgICAgIGNhY2hlZDogaXNDYWNoZWQsXHJcbiAgICAgICAgICAgIGNhY2hlS2V5OiBpc0NhY2hlS2V5LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnN0b3JlUHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVzZXREYXRhKCkge1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgYWxsRGF0YVNvdXJjZSwgYWxsQ2hpbGRyZW4gfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7IGNoaWxkcmVuOiBhbGxDaGlsZHJlbiB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IGFsbERhdGFTb3VyY2UsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0QWxsRGF0YSA9IChkYXRhKSA9PiB7XHJcbiAgICBsZXQgeyBzdG9yZSA9IHt9LCBhZGREYXRhID0gW10sIGRlbGV0ZURhdGEgPSBbXSwgdmFsdWVGaWVsZCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGlmICghQXJyYXkuaXNBcnJheShkYXRhKSkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBsZXQgbmV3RGF0YSA9IFsuLi5kYXRhXTtcclxuICAgIGlmIChhZGREYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgbmV3RGF0YSA9IFsuLi5hZGREYXRhLCAuLi5uZXdEYXRhXTtcclxuICAgIH1cclxuICAgIGlmIChkZWxldGVEYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IHNwbGljZURhdGEgPSBbXTtcclxuICAgICAgY29uc3QgdmFsdWVGaWVsZHM6IGFueSA9IHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICBuZXdEYXRhLm1hcCgoaXRlbSwgaSkgPT4ge1xyXG4gICAgICAgIGxldCB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgICAgdmFsdWVGaWVsZHMubWFwKCh2LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgdmFsdWUgPSBpbmRleCA9PSAwID8gdmFsdWUgKyBpdGVtW3ZdIDogdmFsdWUgKyBcIixcIiArIGl0ZW1bdl07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKGRlbGV0ZURhdGEuaW5kZXhPZih2YWx1ZSkgPT0gLTEpIHtcclxuICAgICAgICAgIHNwbGljZURhdGEucHVzaChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gc3BsaWNlRGF0YTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBuZXdEYXRhO1xyXG4gICAgfVxyXG4gIH07XHJcbiAgZ2V0RGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLmFsbERhdGFTb3VyY2U7XHJcbiAgfVxyXG5cclxuICBnZXRWYWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdFZhbHVlO1xyXG4gIH1cclxuICBzZXRWYWx1ZSh2YWx1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHNlbGVjdFZhbHVlOiB2YWx1ZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0RGF0YSh2YWx1ZSkge1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgbGV0IHsgc3RvcmUgPSB7fSwgdmFsdWVGaWVsZCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGNvbnN0IG5ld0RhdGEgPSBnZXRGbGF0dGVuRGF0YShkYXRhU291cmNlLCB7IGtleUZpZWxkOiB2YWx1ZUZpZWxkIH0pO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgIGxldCByZXMgPSBbXSBhcyBhbnk7XHJcbiAgICAgIHZhbHVlLm1hcCgodmFsKSA9PiB7XHJcbiAgICAgICAgcmVzLnB1c2gobmV3RGF0YVt2YWxdIHx8IHt9KTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiByZXM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbmV3RGF0YVt2YWx1ZV0gfHwge307XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucywgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIWNoaWxkcmVuICYmIChkYXRhIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IGRhdGEgPyBkYXRhIDogb3B0aW9ucyxcclxuICAgICAgICBhbGxEYXRhU291cmNlOiBkYXRhID8gZGF0YSA6IG9wdGlvbnMsXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbikge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgYWxsQ2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShuZXdQcm9wcywgbmV3U3RhdGUsIFNuYXBzaG90KSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIG9wdGlvbnMsIGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBhbGxEYXRhU291cmNlLCBhbGxDaGlsZHJlbiwgZGF0YVN0b3JlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICBjb25zdCBuZXdEYXRhID0gZGF0YSA/IGRhdGEgOiBvcHRpb25zO1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoYWxsRGF0YVNvdXJjZSkgIT09IEpTT04uc3RyaW5naWZ5KG5ld0RhdGEpKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBuZXdEYXRhLFxyXG4gICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSAgXHJcbiAgICAgaWYgKFxyXG4gICAgICBKU09OLnN0cmluZ2lmeShuZXdQcm9wcy5kZWxldGVEYXRhKSAhPT1cclxuICAgICAgICBKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzLmRlbGV0ZURhdGEpIHx8XHJcbiAgICAgIEpTT04uc3RyaW5naWZ5KG5ld1Byb3BzLmFkZERhdGEpICE9PSBKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzLmFkZERhdGEpXHJcbiAgICApIHtcclxuICAgICAgY29uc3QgbmV3RGF0YSA9IHRoaXMuZ2V0QWxsRGF0YShkYXRhU3RvcmUpO1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBkYXRhU291cmNlOiBuZXdEYXRhLFxyXG4gICAgICAgIGFsbERhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgZGF0YVN0b3JlOiBkYXRhU3RvcmUsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGNoaWxkcmVuICYmIEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7XHJcbiAgICAgIGNvbnN0IHN0YXRlQ2hpbGRyZW5Qcm9wczogYW55ID0gW107XHJcbiAgICAgIGFsbENoaWxkcmVuLm1hcCgoczogYW55KSA9PiB7XHJcbiAgICAgICAgc3RhdGVDaGlsZHJlblByb3BzLnB1c2gocy5wcm9wcyk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBjb25zdCBjaGlsZHJlblByb3BzOiBhbnkgPSBbXTtcclxuICAgICAgY2hpbGRyZW4ubWFwKChjOiBhbnkpID0+IHtcclxuICAgICAgICBjaGlsZHJlblByb3BzLnB1c2goYy5wcm9wcyk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoc3RhdGVDaGlsZHJlblByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkoY2hpbGRyZW5Qcm9wcylcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgICBhbGxDaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlID0gKHN0YXRlLCBjYWxsYmFjaykgPT4ge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9O1xyXG4gIH1cclxuICBvblNlYXJjaCh2YWx1ZSkge1xyXG4gICAgY29uc3QgeyBhbGxEYXRhU291cmNlLCBhbGxDaGlsZHJlbiB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHsgZmlsdGVyT3B0aW9uID0gdHJ1ZSwgb25TZWFyY2gsIGNoaWxkcmVuLCBzdG9yZSA9IHt9IH0gPSB0aGlzLnByb3BzO1xyXG4gICAgbGV0IHsgbGFiZWxGaWVsZCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgbGFiZWxGaWVsZCA9IGxhYmVsRmllbGQgPyBsYWJlbEZpZWxkIDogdmlld25hbWUgPyBcImRpY3RWYWx1ZVwiIDogXCJsYWJlbFwiO1xyXG4gICAgaWYgKGZpbHRlck9wdGlvbikge1xyXG4gICAgICBsZXQgcmVzdWx0ID0gW107XHJcbiAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgIGFsbERhdGFTb3VyY2UuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgbGFiZWwgPSBcIlwiO1xyXG4gICAgICAgICAgICBpZiAobGFiZWxGaWVsZC5zcGxpdChcIixcIikubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgICAgICBsYWJlbCA9IGl0ZW1bbGFiZWxGaWVsZF07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgbGFiZWxGaWVsZHM6IGFueSA9IGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgICAgICAgIGxhYmVsRmllbGRzLm1hcCgobCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICAgIGxhYmVsID0gaW5kZXggPT0gMCA/IGxhYmVsICsgaXRlbVtsXSA6IGxhYmVsICsgXCItXCIgKyBpdGVtW2xdO1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBmbGFnID0gUGlueWluTWF0Y2gubWF0Y2gobGFiZWwsIHZhbHVlKTtcclxuICAgICAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICAgICAgICByZXN1bHQucHVzaChpdGVtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgZGF0YVNvdXJjZTogcmVzdWx0LFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBkYXRhU291cmNlOiBhbGxEYXRhU291cmNlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYWxsQ2hpbGRyZW4pKSB7XHJcbiAgICAgICAgICAgIGFsbENoaWxkcmVuLm1hcCgoY2hpbGQ6IGFueSwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICBsZXQgbGFiZWwgPSBjaGlsZD8ucHJvcHM/LmNoaWxkcmVuO1xyXG4gICAgICAgICAgICAgIGxldCBmbGFnID0gUGlueWluTWF0Y2gubWF0Y2gobGFiZWwsIHZhbHVlKTtcclxuICAgICAgICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goY2hpbGQpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgY2hpbGRyZW46IHJlc3VsdCxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgY2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBvblNlYXJjaCAmJiBvblNlYXJjaCh2YWx1ZSk7XHJcbiAgfVxyXG4gIHJlbmRlck9wdGlvbihvcHRpb25EYXRhKSB7XHJcbiAgICBsZXQge1xyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICB2YWx1ZVR5cGUgPSBcInN0cmluZ1wiLFxyXG4gICAgICBsYWJlbEZpZWxkLFxyXG4gICAgICB2YWx1ZUZpZWxkLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IHZpZXduYW1lIH0gPSBzdG9yZTtcclxuICAgIHZhbHVlRmllbGQgPSB2YWx1ZUZpZWxkID8gdmFsdWVGaWVsZCA6IHZpZXduYW1lID8gXCJkaWN0S2V5XCIgOiBcInZhbHVlXCI7XHJcbiAgICBsYWJlbEZpZWxkID0gbGFiZWxGaWVsZCA/IGxhYmVsRmllbGQgOiB2aWV3bmFtZSA/IFwiZGljdFZhbHVlXCIgOiBcImxhYmVsXCI7XHJcbiAgICByZXR1cm4gb3B0aW9uRGF0YS5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgbGV0IHZhbHVlOiBhbnk7XHJcbiAgICAgIGlmICh2YWx1ZUZpZWxkLnNwbGl0KFwiLFwiKS5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgIHZhbHVlID1cclxuICAgICAgICAgIHZhbHVlVHlwZSA9PT0gXCJudW1iZXJcIiA/IE51bWJlcihpdGVtW3ZhbHVlRmllbGRdKSA6IGl0ZW1bdmFsdWVGaWVsZF07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWVGaWVsZHM6IGFueSA9IHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgIHZhbHVlID0gXCJcIjtcclxuICAgICAgICB2YWx1ZUZpZWxkcy5tYXAoKHYsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICB2YWx1ZSA9IGluZGV4ID09IDAgPyB2YWx1ZSArIGl0ZW1bdl0gOiB2YWx1ZSArIFwiLFwiICsgaXRlbVt2XTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICBsZXQga2V5ID0gaXRlbS5pZCA/IChpdGVtLmlkICE9PSBcInVuZGVmaW5lZFwiID8gaXRlbS5pZCA6IHZhbHVlKSA6IHZhbHVlO1xyXG4gICAgICBsZXQgbGFiZWwgPSBcIlwiO1xyXG4gICAgICBpZiAobGFiZWxGaWVsZC5zcGxpdChcIixcIikubGVuZ3RoID09IDEpIHtcclxuICAgICAgICBsYWJlbCA9IGl0ZW1bbGFiZWxGaWVsZF07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgbGFiZWxGaWVsZHM6IGFueSA9IGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgIGxhYmVsRmllbGRzLm1hcCgobCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgIGxhYmVsID0gaW5kZXggPT0gMCA/IGxhYmVsICsgaXRlbVtsXSA6IGxhYmVsICsgXCItXCIgKyBpdGVtW2xdO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPE9wdGlvblxyXG4gICAgICAgICAga2V5PXtrZXl9XHJcbiAgICAgICAgICB2YWx1ZT17dmFsdWV9XHJcbiAgICAgICAgICBsYWJlbD17bGFiZWx9XHJcbiAgICAgICAgICBkaXNhYmxlZD17aXRlbS5kaXNhYmxlZCA/IHRydWUgOiBmYWxzZX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICB7bGFiZWx9XHJcbiAgICAgICAgPC9PcHRpb24+XHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgcmVuZGVyQ2hpbGRyZW4oKSB7XHJcbiAgICBjb25zdCB7IHNob3dHcm91cCA9IHRydWUsIGdyb3VwRmllbGQgPSBcImdyb3VwTmFtZVwiIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlLCBjaGlsZHJlbiB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChjaGlsZHJlbikge1xyXG4gICAgICByZXR1cm4gPD57Y2hpbGRyZW59PC8+O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IG9wdEdyb3VwRGF0YSA9IHt9LFxyXG4gICAgICAgIG9wdGlvbkRhdGEgPSBbXTtcclxuICAgICAgZGF0YVNvdXJjZS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgbGV0IGxhYmVsID0gaXRlbVtncm91cEZpZWxkXTtcclxuICAgICAgICBpZiAobGFiZWwgJiYgc2hvd0dyb3VwKSB7XHJcbiAgICAgICAgICBpZiAoIW9wdEdyb3VwRGF0YVtsYWJlbF0pIG9wdEdyb3VwRGF0YVtsYWJlbF0gPSBbXTtcclxuICAgICAgICAgIG9wdEdyb3VwRGF0YVtsYWJlbF0ucHVzaChpdGVtKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgb3B0aW9uRGF0YS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGxldCBvcHRpb24gPSB0aGlzLnJlbmRlck9wdGlvbihvcHRpb25EYXRhKTtcclxuICAgICAgbGV0IG9wdEdyb3VwID0gT2JqZWN0LmtleXMob3B0R3JvdXBEYXRhKS5tYXAoKGtleSkgPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8T3B0R3JvdXAga2V5PXtrZXl9IGxhYmVsPXtrZXl9PlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJPcHRpb24ob3B0R3JvdXBEYXRhW2tleV0pfVxyXG4gICAgICAgICAgPC9PcHRHcm91cD5cclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8PlxyXG4gICAgICAgICAge29wdGlvbn1cclxuICAgICAgICAgIHtvcHRHcm91cH1cclxuICAgICAgICA8Lz5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25DaGFuZ2UodmFsdWUsIG9wdGlvbnMpIHtcclxuICAgIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0VmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgICBpZiAob25DaGFuZ2UpIHtcclxuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0U2VsZWN0RGF0YSh2YWx1ZSk7XHJcbiAgICAgIG9uQ2hhbmdlKHZhbHVlLCBvcHRpb25zLCBkYXRhKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25TZWxlY3QodmFsdWUsIG9wdGlvbnMpIHtcclxuICAgIGNvbnN0IHsgb25TZWxlY3QgfSA9IHRoaXMucHJvcHM7XHJcblxyXG4gICAgaWYgKG9uU2VsZWN0KSB7XHJcbiAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldFNlbGVjdERhdGEodmFsdWUpO1xyXG4gICAgICBvblNlbGVjdCh2YWx1ZSwgb3B0aW9ucywgZGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlKG9wZW4pIHtcclxuICAgIGlmICghb3Blbikge1xyXG4gICAgICB0aGlzLnJlc2V0RGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBzdG9yZSxcclxuICAgICAgZGF0YSxcclxuICAgICAgb25DaGFuZ2UsXHJcbiAgICAgIG9uU2VsZWN0LFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICBsYWJlbEZpZWxkLFxyXG4gICAgICB2YWx1ZUZpZWxkLFxyXG4gICAgICBkZWZhdWx0U3R5bGUsXHJcbiAgICAgIHNob3dHcm91cCA9IHRydWUsXHJcbiAgICAgIGFkZERhdGEsXHJcbiAgICAgIGRlbGV0ZURhdGEsXHJcbiAgICAgIHZhbHVlVHlwZSxcclxuICAgICAgZ3JvdXBGaWVsZCxcclxuICAgICAgZGF0YVR5cGUsXHJcbiAgICAgIC4uLnBhcmFtc1xyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBsZXQgcHJvcHMgPSB7XHJcbiAgICAgIGZpbHRlck9wdGlvbjogZmFsc2UsXHJcbiAgICAgIHNob3dTZWFyY2g6IHRydWUsXHJcbiAgICAgIG9wdGlvbkZpbHRlclByb3A6IFwibGFiZWxcIixcclxuICAgICAgcGxhY2Vob2xkZXI6IFwi6K+36YCJ5oupXCIsXHJcbiAgICAgIGFsbG93Q2xlYXI6IHRydWUsXHJcbiAgICB9IGFzIGFueTtcclxuICAgIGxldCB7IGFudGRTdHlsZSwgbW91bnRFbGVtZW50SWQgfSA9IGNvbmZpZygpO1xyXG4gICAgaWYgKG1vdW50RWxlbWVudElkKSB7XHJcbiAgICAgIHByb3BzID0ge1xyXG4gICAgICAgIGdldFBvcHVwQ29udGFpbmVyOiAoKSA9PiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChtb3VudEVsZW1lbnRJZCksXHJcbiAgICAgICAgLi4ucHJvcHMsXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAoKGRlZmF1bHRTdHlsZSB8fCBhbnRkU3R5bGUpICYmIGRlZmF1bHRTdHlsZSA9PT0gdHJ1ZSkge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbHMoc3R5bGVzW1wibnNjX3NlbGVjdFwiXSwgdGhpcy5wcm9wcy5jbGFzc05hbWUpfT5cclxuICAgICAgICAgIDxTZWxlY3RcclxuICAgICAgICAgICAgdmFsdWU9e3RoaXMuc3RhdGUuc2VsZWN0VmFsdWV9XHJcbiAgICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgIG9uU2VhcmNoPXt0aGlzLm9uU2VhcmNoLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgIG9uU2VsZWN0PXt0aGlzLm9uU2VsZWN0LmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgIG9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlPXt0aGlzLm9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgIHsuLi5wcm9wc31cclxuICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3RoaXMucmVuZGVyQ2hpbGRyZW4oKX1cclxuICAgICAgICAgIDwvU2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17dGhpcy5wcm9wcy5jbGFzc05hbWV9PlxyXG4gICAgICAgICAgPFNlbGVjdFxyXG4gICAgICAgICAgICB2YWx1ZT17dGhpcy5zdGF0ZS5zZWxlY3RWYWx1ZX1cclxuICAgICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWxlY3Q9e3RoaXMub25TZWxlY3QuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25Ecm9wZG93blZpc2libGVDaGFuZ2U9e3RoaXMub25Ecm9wZG93blZpc2libGVDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFLLElBQUlDLGFBQWEsUUFBUSxPQUFPO0FBRTVDLE9BQU9DLEtBQUssTUFBc0IsYUFBYTtBQUMvQyxTQUFTQyxLQUFLLFFBQVEsdUJBQXVCO0FBQzdDLE9BQU9DLE1BQU0sTUFBTSxjQUFjO0FBQ2pDLE9BQU9DLE1BQU0sTUFBTSxjQUFjO0FBQ2pDLE9BQU9DLEdBQUcsTUFBTSxZQUFZO0FBRTVCLE9BQU9DLFdBQVcsTUFBTSxjQUFjO0FBQ3RDLFNBQVNDLGNBQWMsUUFBUSxtQkFBbUI7QUFDbEQsTUFBTTtFQUFFQyxNQUFNO0VBQUVD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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PureComponent","Store","utils","config","styles","cls","PinyinMatch","getFlattenData","Option","OptGroup","_Select","NSCSelect","constructor","props","_defineProperty","dataSource","selectValue","allDataSource","children","allChildren","dataStore","data","store","addData","deleteData","valueField","viewname","Array","isArray","newData","length","spliceData","valueFields","split","map","item","i","value","v","index","indexOf","push","options","url","listeners","listenersPops","cached","cacheKey","viewtype","stores","_objectWithoutProperties","_excluded","viewUrl","viewBizUrl","requestViewUrl","Error","_this","storeProps","_objectSpread","model","component","onBeforeLoad","callback","load","modelData","getAllData","setState","dataChanged","isCached","isCacheKey","autoLoad","resetData","state","getData","getValue","setValue","getSelectData","keyField","res","val","componentDidMount","componentDidUpdate","newProps","newState","Snapshot","JSON","stringify","stateChildrenProps","s","childrenProps","c","componentWillUnmount","onSearch","filterOption","labelField","result","forEach","label","labelFields","l","flag","match","child","_child$props","renderOption","optionData","valueType","Number","key","id","createElement","disabled","renderChildren","showGroup","groupField","Fragment","optGroupData","option","optGroup","Object","keys","onChange","onSelect","onDropdownVisibleChange","open","render","_this$props","defaultStyle","dataType","params","_excluded2","showSearch","optionFilterProp","placeholder","allowClear","antdStyle","mountElementId","getPopupContainer","document","getElementById","className","_extends","bind"],"sources":["../../../src/components/base/select/index.tsx"],"sourcesContent":["import React, { PureComponent } from \"react\";\r\nimport { Select, SelectProps } from \"antd\";\r\nimport Store, { StoreProps } from \"@bj-nsc/msn\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport config from \"../../config\";\r\nimport styles from \"./index.less\";\r\nimport cls from \"classnames\";\r\nimport omit from \"omit.js\";\r\nimport PinyinMatch from \"pinyin-match\";\r\nimport { getFlattenData } from \"@bj-nsc/functions\";\r\nconst { Option, OptGroup } = Select;\r\n\r\ninterface ISelectProps extends SelectProps<any> {\r\n store?: StoreProps;\r\n data?: Array<Object>; //默认数据\r\n labelField?: string;\r\n valueField?: string;\r\n groupField?: string;\r\n defaultStyle?: boolean;\r\n showGroup?: boolean; //是否显示分组\r\n addData?: Array<Object>; //配合store使用,从增加额外的数据\r\n deleteData?: Array<String>; //配合store使用,删除从数据库中获取到的指定数据\r\n valueBreak?: string; //多个value使用的分隔符\r\n valueType?: \"string\" | \"number\";\r\n [proName: string]: any;\r\n onChange?: any;\r\n onSelect?: any;\r\n}\r\nexport default class NSCSelect extends PureComponent<ISelectProps> {\r\n static Option = Option;\r\n static OptGroup = OptGroup;\r\n state = {\r\n dataSource: [],\r\n selectValue: null,\r\n allDataSource: [],\r\n children: null,\r\n allChildren: null,\r\n dataStore: [],\r\n };\r\n store = {} as StoreProps;\r\n constructor(props) {\r\n super(props);\r\n let {\r\n data,\r\n store = {},\r\n children,\r\n options,\r\n addData = [],\r\n deleteData = [],\r\n valueField,\r\n } = props;\r\n const {\r\n url,\r\n listeners: listenersPops = {},\r\n viewname,\r\n cached,\r\n cacheKey,\r\n viewtype = \"sys\",\r\n ...stores\r\n } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n let { viewUrl, viewBizUrl } = config();\r\n let requestViewUrl = viewtype == \"sys\" ? viewUrl : viewBizUrl;\r\n\r\n if (!children) {\r\n if (!(data || viewname || url || options)) {\r\n throw new Error(\"url、viewname、data、options不能都为空!\");\r\n }\r\n let _this = this;\r\n let storeProps = {\r\n model: \"model\",\r\n component: this,\r\n listeners: {\r\n onBeforeLoad: function (store, options) {\r\n utils.callback(listenersPops.onBeforeLoad, _this, [store, options]);\r\n },\r\n load: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n dataStore: data,\r\n });\r\n utils.callback(listenersPops.load, _this, [data, modelData, store]);\r\n },\r\n dataChanged: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n dataStore: data,\r\n });\r\n utils.callback(listenersPops.dataChanged, _this, [\r\n data,\r\n modelData,\r\n store,\r\n ]);\r\n },\r\n },\r\n ...stores,\r\n };\r\n if ((viewname || url) && data == null && options == null) {\r\n let isCached = cached;\r\n let isCacheKey = cacheKey;\r\n if (viewname) {\r\n if (typeof cached !== \"boolean\") {\r\n isCached = true;\r\n isCacheKey = isCacheKey ? isCacheKey : viewname;\r\n }\r\n }\r\n\r\n storeProps = {\r\n ...{\r\n autoLoad: true,\r\n url: url || requestViewUrl + viewname, //读字典,url固定,viewname\r\n cached: isCached,\r\n cacheKey: isCacheKey,\r\n },\r\n ...storeProps,\r\n };\r\n }\r\n this.store = new Store(storeProps);\r\n }\r\n }\r\n\r\n resetData() {\r\n const { children } = this.props;\r\n const { allDataSource, allChildren } = this.state;\r\n if (children) {\r\n this.setState({ children: allChildren });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n }\r\n\r\n getAllData = (data) => {\r\n let { store = {}, addData = [], deleteData = [], valueField } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n if (!Array.isArray(data)) {\r\n return [];\r\n }\r\n let newData = [...data];\r\n if (addData.length > 0) {\r\n newData = [...addData, ...newData];\r\n }\r\n if (deleteData.length > 0) {\r\n let spliceData = [];\r\n const valueFields: any = valueField.split(\",\");\r\n newData.map((item, i) => {\r\n let value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n if (deleteData.indexOf(value) == -1) {\r\n spliceData.push(item);\r\n }\r\n });\r\n return spliceData;\r\n } else {\r\n return newData;\r\n }\r\n };\r\n getData() {\r\n return this.state.allDataSource;\r\n }\r\n\r\n getValue() {\r\n return this.state.selectValue;\r\n }\r\n setValue(value) {\r\n this.setState({\r\n selectValue: value,\r\n });\r\n }\r\n\r\n getSelectData(value) {\r\n const { dataSource } = this.state;\r\n let { store = {}, valueField } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n const newData = getFlattenData(dataSource, { keyField: valueField });\r\n if (Array.isArray(value)) {\r\n let res = [] as any;\r\n value.map((val) => {\r\n res.push(newData[val] || {});\r\n });\r\n return res;\r\n } else {\r\n return newData[value] || {};\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n const { data, options, children } = this.props;\r\n if (!children && (data || options)) {\r\n this.setState({\r\n dataSource: data ? data : options,\r\n allDataSource: data ? data : options,\r\n });\r\n } else if (children) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n }\r\n\r\n componentDidUpdate(newProps, newState, Snapshot) {\r\n const { data, options, children } = this.props;\r\n const { allDataSource, allChildren, dataStore } = this.state;\r\n if (!children && (data || options)) {\r\n const newData = data ? data : options;\r\n if (JSON.stringify(allDataSource) !== JSON.stringify(newData)) {\r\n this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n });\r\n }\r\n } else if (children && Array.isArray(children)) {\r\n const stateChildrenProps: any = [];\r\n allChildren.map((s: any) => {\r\n stateChildrenProps.push(s.props);\r\n });\r\n const childrenProps: any = [];\r\n children.map((c: any) => {\r\n childrenProps.push(c.props);\r\n });\r\n if (\r\n JSON.stringify(stateChildrenProps) !== JSON.stringify(childrenProps)\r\n ) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n } else if (\r\n JSON.stringify(newProps.deleteData) !==\r\n JSON.stringify(this.props.deleteData) ||\r\n JSON.stringify(newProps.addData) !== JSON.stringify(this.props.addData)\r\n ) {\r\n const newData = this.getAllData(dataStore);\r\n this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n dataStore: dataStore,\r\n });\r\n }\r\n }\r\n componentWillUnmount() {\r\n this.setState = (state, callback) => {\r\n return;\r\n };\r\n }\r\n onSearch(value) {\r\n const { allDataSource, allChildren } = this.state;\r\n const { filterOption = true, onSearch, children, store = {} } = this.props;\r\n let { labelField } = this.props;\r\n const { viewname } = store;\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n if (filterOption) {\r\n let result = [];\r\n if (!children) {\r\n if (value) {\r\n allDataSource.forEach((item) => {\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(item);\r\n }\r\n });\r\n this.setState({\r\n dataSource: result,\r\n });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n } else {\r\n if (value) {\r\n if (Array.isArray(allChildren)) {\r\n allChildren.map((child: any, index) => {\r\n let label = child?.props?.children;\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(child);\r\n }\r\n });\r\n }\r\n this.setState({\r\n children: result,\r\n });\r\n } else {\r\n this.setState({\r\n children: children,\r\n });\r\n }\r\n }\r\n }\r\n onSearch && onSearch(value);\r\n }\r\n renderOption(optionData) {\r\n let {\r\n store = {},\r\n valueType = \"string\",\r\n labelField,\r\n valueField,\r\n } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n return optionData.map((item) => {\r\n let value: any;\r\n if (valueField.split(\",\").length == 1) {\r\n value =\r\n valueType === \"number\" ? Number(item[valueField]) : item[valueField];\r\n } else {\r\n const valueFields: any = valueField.split(\",\");\r\n value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n }\r\n let key = item.id ? (item.id !== \"undefined\" ? item.id : value) : value;\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n return (\r\n <Option\r\n key={key}\r\n value={value}\r\n label={label}\r\n disabled={item.disabled ? true : false}\r\n >\r\n {label}\r\n </Option>\r\n );\r\n });\r\n }\r\n renderChildren() {\r\n const { showGroup = true, groupField = \"groupName\" } = this.props;\r\n const { dataSource, children } = this.state;\r\n if (children) {\r\n return <>{children}</>;\r\n } else {\r\n let optGroupData = {},\r\n optionData = [];\r\n dataSource.forEach((item) => {\r\n let label = item[groupField];\r\n if (label && showGroup) {\r\n if (!optGroupData[label]) optGroupData[label] = [];\r\n optGroupData[label].push(item);\r\n } else {\r\n optionData.push(item);\r\n }\r\n });\r\n let option = this.renderOption(optionData);\r\n let optGroup = Object.keys(optGroupData).map((key) => {\r\n return (\r\n <OptGroup key={key} label={key}>\r\n {this.renderOption(optGroupData[key])}\r\n </OptGroup>\r\n );\r\n });\r\n return (\r\n <>\r\n {option}\r\n {optGroup}\r\n </>\r\n );\r\n }\r\n }\r\n onChange(value, options) {\r\n const { onChange } = this.props;\r\n this.setState({\r\n selectValue: value,\r\n });\r\n if (onChange) {\r\n const data = this.getSelectData(value);\r\n onChange(value, options, data);\r\n }\r\n }\r\n onSelect(value, options) {\r\n const { onSelect } = this.props;\r\n\r\n if (onSelect) {\r\n const data = this.getSelectData(value);\r\n onSelect(value, options, data);\r\n }\r\n }\r\n onDropdownVisibleChange(open) {\r\n if (!open) {\r\n this.resetData();\r\n }\r\n }\r\n render() {\r\n const {\r\n children,\r\n store,\r\n data,\r\n onChange,\r\n onSelect,\r\n options,\r\n labelField,\r\n valueField,\r\n defaultStyle,\r\n showGroup = true,\r\n addData,\r\n deleteData,\r\n valueType,\r\n groupField,\r\n dataType,\r\n ...params\r\n } = this.props;\r\n let props = {\r\n filterOption: false,\r\n showSearch: true,\r\n optionFilterProp: \"label\",\r\n placeholder: \"请选择\",\r\n allowClear: true,\r\n } as any;\r\n let { antdStyle, mountElementId } = config();\r\n if (mountElementId) {\r\n props = {\r\n getPopupContainer: () => document.getElementById(mountElementId),\r\n ...props,\r\n };\r\n }\r\n if ((defaultStyle || antdStyle) && defaultStyle === true) {\r\n return (\r\n <div className={cls(styles[\"nsc_select\"], this.props.className)}>\r\n <Select\r\n value={this.state.selectValue}\r\n onChange={this.onChange.bind(this)}\r\n onSearch={this.onSearch.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <div className={this.props.className}>\r\n <Select\r\n value={this.state.selectValue}\r\n onSearch={this.onSearch.bind(this)}\r\n onChange={this.onChange.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n </div>\r\n );\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PureComponent","Store","utils","config","styles","cls","PinyinMatch","getFlattenData","Option","OptGroup","_Select","NSCSelect","constructor","props","_defineProperty","dataSource","selectValue","allDataSource","children","allChildren","dataStore","data","store","addData","deleteData","valueField","viewname","Array","isArray","newData","length","spliceData","valueFields","split","map","item","i","value","v","index","indexOf","push","options","url","listeners","listenersPops","cached","cacheKey","viewtype","stores","_objectWithoutProperties","_excluded","viewUrl","viewBizUrl","requestViewUrl","Error","_this","storeProps","_objectSpread","model","component","onBeforeLoad","callback","load","modelData","getAllData","setState","dataChanged","isCached","isCacheKey","autoLoad","resetData","state","getData","getValue","setValue","getSelectData","keyField","res","val","componentDidMount","componentDidUpdate","newProps","newState","Snapshot","JSON","stringify","stateChildrenProps","s","childrenProps","c","componentWillUnmount","onSearch","filterOption","labelField","result","forEach","label","labelFields","l","flag","match","child","_child$props","renderOption","optionData","valueType","Number","key","id","createElement","disabled","renderChildren","showGroup","groupField","Fragment","optGroupData","option","optGroup","Object","keys","onChange","onSelect","onDropdownVisibleChange","open","render","_this$props","defaultStyle","dataType","params","_excluded2","showSearch","optionFilterProp","placeholder","allowClear","antdStyle","mountElementId","getPopupContainer","document","getElementById","className","_extends","bind"],"sources":["../../../src/components/base/select/index.tsx"],"sourcesContent":["import React, { PureComponent } from \"react\";\r\nimport { Select, SelectProps } from \"antd\";\r\nimport Store, { StoreProps } from \"@bj-nsc/msn\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport config from \"../../config\";\r\nimport styles from \"./index.less\";\r\nimport cls from \"classnames\";\r\nimport omit from \"omit.js\";\r\nimport PinyinMatch from \"pinyin-match\";\r\nimport { getFlattenData } from \"@bj-nsc/functions\";\r\nconst { Option, OptGroup } = Select;\r\n\r\ninterface ISelectProps extends SelectProps<any> {\r\n store?: StoreProps;\r\n data?: Array<Object>; //默认数据\r\n labelField?: string;\r\n valueField?: string;\r\n groupField?: string;\r\n defaultStyle?: boolean;\r\n showGroup?: boolean; //是否显示分组\r\n addData?: Array<Object>; //配合store使用,从增加额外的数据\r\n deleteData?: Array<String>; //配合store使用,删除从数据库中获取到的指定数据\r\n valueBreak?: string; //多个value使用的分隔符\r\n valueType?: \"string\" | \"number\";\r\n [proName: string]: any;\r\n onChange?: any;\r\n onSelect?: any;\r\n}\r\nexport default class NSCSelect extends PureComponent<ISelectProps> {\r\n static Option = Option;\r\n static OptGroup = OptGroup;\r\n state = {\r\n dataSource: [],\r\n selectValue: null,\r\n allDataSource: [],\r\n children: null,\r\n allChildren: null,\r\n dataStore: [],\r\n };\r\n store = {} as StoreProps;\r\n constructor(props) {\r\n super(props);\r\n let {\r\n data,\r\n store = {},\r\n children,\r\n options,\r\n addData = [],\r\n deleteData = [],\r\n valueField,\r\n } = props;\r\n const {\r\n url,\r\n listeners: listenersPops = {},\r\n viewname,\r\n cached,\r\n cacheKey,\r\n viewtype = \"sys\",\r\n ...stores\r\n } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n let { viewUrl, viewBizUrl } = config();\r\n let requestViewUrl = viewtype == \"sys\" ? viewUrl : viewBizUrl;\r\n\r\n if (!children) {\r\n if (!(data || viewname || url || options)) {\r\n throw new Error(\"url、viewname、data、options不能都为空!\");\r\n }\r\n let _this = this;\r\n let storeProps = {\r\n model: \"model\",\r\n component: this,\r\n listeners: {\r\n onBeforeLoad: function (store, options) {\r\n utils.callback(listenersPops.onBeforeLoad, _this, [store, options]);\r\n },\r\n load: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n dataStore: data,\r\n });\r\n utils.callback(listenersPops.load, _this, [data, modelData, store]);\r\n },\r\n dataChanged: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n dataStore: data,\r\n });\r\n utils.callback(listenersPops.dataChanged, _this, [\r\n data,\r\n modelData,\r\n store,\r\n ]);\r\n },\r\n },\r\n ...stores,\r\n };\r\n if ((viewname || url) && data == null && options == null) {\r\n let isCached = cached;\r\n let isCacheKey = cacheKey;\r\n if (viewname) {\r\n if (typeof cached !== \"boolean\") {\r\n isCached = true;\r\n isCacheKey = isCacheKey ? isCacheKey : viewname;\r\n }\r\n }\r\n\r\n storeProps = {\r\n ...{\r\n autoLoad: true,\r\n url: url || requestViewUrl + viewname, //读字典,url固定,viewname\r\n cached: isCached,\r\n cacheKey: isCacheKey,\r\n },\r\n ...storeProps,\r\n };\r\n }\r\n this.store = new Store(storeProps);\r\n }\r\n }\r\n\r\n resetData() {\r\n const { children } = this.props;\r\n const { allDataSource, allChildren } = this.state;\r\n if (children) {\r\n this.setState({ children: allChildren });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n }\r\n\r\n getAllData = (data) => {\r\n let { store = {}, addData = [], deleteData = [], valueField } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n if (!Array.isArray(data)) {\r\n return [];\r\n }\r\n let newData = [...data];\r\n if (addData.length > 0) {\r\n newData = [...addData, ...newData];\r\n }\r\n if (deleteData.length > 0) {\r\n let spliceData = [];\r\n const valueFields: any = valueField.split(\",\");\r\n newData.map((item, i) => {\r\n let value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n if (deleteData.indexOf(value) == -1) {\r\n spliceData.push(item);\r\n }\r\n });\r\n return spliceData;\r\n } else {\r\n return newData;\r\n }\r\n };\r\n getData() {\r\n return this.state.allDataSource;\r\n }\r\n\r\n getValue() {\r\n return this.state.selectValue;\r\n }\r\n setValue(value) {\r\n this.setState({\r\n selectValue: value,\r\n });\r\n }\r\n\r\n getSelectData(value) {\r\n const { dataSource } = this.state;\r\n let { store = {}, valueField } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n const newData = getFlattenData(dataSource, { keyField: valueField });\r\n if (Array.isArray(value)) {\r\n let res = [] as any;\r\n value.map((val) => {\r\n res.push(newData[val] || {});\r\n });\r\n return res;\r\n } else {\r\n return newData[value] || {};\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n const { data, options, children } = this.props;\r\n if (!children && (data || options)) {\r\n this.setState({\r\n dataSource: data ? data : options,\r\n allDataSource: data ? data : options,\r\n });\r\n } else if (children) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n }\r\n\r\n componentDidUpdate(newProps, newState, Snapshot) {\r\n const { data, options, children } = this.props;\r\n const { allDataSource, allChildren, dataStore } = this.state;\r\n if (!children && (data || options)) {\r\n const newData = data ? data : options;\r\n if (JSON.stringify(allDataSource) !== JSON.stringify(newData)) {\r\n this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n });\r\n }\r\n } \r\n if (\r\n JSON.stringify(newProps.deleteData) !==\r\n JSON.stringify(this.props.deleteData) ||\r\n JSON.stringify(newProps.addData) !== JSON.stringify(this.props.addData)\r\n ) {\r\n const newData = this.getAllData(dataStore);\r\n this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n dataStore: dataStore,\r\n });\r\n }\r\n if (children && Array.isArray(children)) {\r\n const stateChildrenProps: any = [];\r\n allChildren.map((s: any) => {\r\n stateChildrenProps.push(s.props);\r\n });\r\n const childrenProps: any = [];\r\n children.map((c: any) => {\r\n childrenProps.push(c.props);\r\n });\r\n if (\r\n JSON.stringify(stateChildrenProps) !== JSON.stringify(childrenProps)\r\n ) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n }\r\n }\r\n componentWillUnmount() {\r\n this.setState = (state, callback) => {\r\n return;\r\n };\r\n }\r\n onSearch(value) {\r\n const { allDataSource, allChildren } = this.state;\r\n const { filterOption = true, onSearch, children, store = {} } = this.props;\r\n let { labelField } = this.props;\r\n const { viewname } = store;\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n if (filterOption) {\r\n let result = [];\r\n if (!children) {\r\n if (value) {\r\n allDataSource.forEach((item) => {\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(item);\r\n }\r\n });\r\n this.setState({\r\n dataSource: result,\r\n });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n } else {\r\n if (value) {\r\n if (Array.isArray(allChildren)) {\r\n allChildren.map((child: any, index) => {\r\n let label = child?.props?.children;\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(child);\r\n }\r\n });\r\n }\r\n this.setState({\r\n children: result,\r\n });\r\n } else {\r\n this.setState({\r\n children: children,\r\n });\r\n }\r\n }\r\n }\r\n onSearch && onSearch(value);\r\n }\r\n renderOption(optionData) {\r\n let {\r\n store = {},\r\n valueType = \"string\",\r\n labelField,\r\n valueField,\r\n } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n return optionData.map((item) => {\r\n let value: any;\r\n if (valueField.split(\",\").length == 1) {\r\n value =\r\n valueType === \"number\" ? Number(item[valueField]) : item[valueField];\r\n } else {\r\n const valueFields: any = valueField.split(\",\");\r\n value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n }\r\n let key = item.id ? (item.id !== \"undefined\" ? item.id : value) : value;\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n return (\r\n <Option\r\n key={key}\r\n value={value}\r\n label={label}\r\n disabled={item.disabled ? true : false}\r\n >\r\n {label}\r\n </Option>\r\n );\r\n });\r\n }\r\n renderChildren() {\r\n const { showGroup = true, groupField = \"groupName\" } = this.props;\r\n const { dataSource, children } = this.state;\r\n if (children) {\r\n return <>{children}</>;\r\n } else {\r\n let optGroupData = {},\r\n optionData = [];\r\n dataSource.forEach((item) => {\r\n let label = item[groupField];\r\n if (label && showGroup) {\r\n if (!optGroupData[label]) optGroupData[label] = [];\r\n optGroupData[label].push(item);\r\n } else {\r\n optionData.push(item);\r\n }\r\n });\r\n let option = this.renderOption(optionData);\r\n let optGroup = Object.keys(optGroupData).map((key) => {\r\n return (\r\n <OptGroup key={key} label={key}>\r\n {this.renderOption(optGroupData[key])}\r\n </OptGroup>\r\n );\r\n });\r\n return (\r\n <>\r\n {option}\r\n {optGroup}\r\n </>\r\n );\r\n }\r\n }\r\n onChange(value, options) {\r\n const { onChange } = this.props;\r\n this.setState({\r\n selectValue: value,\r\n });\r\n if (onChange) {\r\n const data = this.getSelectData(value);\r\n onChange(value, options, data);\r\n }\r\n }\r\n onSelect(value, options) {\r\n const { onSelect } = this.props;\r\n\r\n if (onSelect) {\r\n const data = this.getSelectData(value);\r\n onSelect(value, options, data);\r\n }\r\n }\r\n onDropdownVisibleChange(open) {\r\n if (!open) {\r\n this.resetData();\r\n }\r\n }\r\n render() {\r\n const {\r\n children,\r\n store,\r\n data,\r\n onChange,\r\n onSelect,\r\n options,\r\n labelField,\r\n valueField,\r\n defaultStyle,\r\n showGroup = true,\r\n addData,\r\n deleteData,\r\n valueType,\r\n groupField,\r\n dataType,\r\n ...params\r\n } = this.props;\r\n let props = {\r\n filterOption: false,\r\n showSearch: true,\r\n optionFilterProp: \"label\",\r\n placeholder: \"请选择\",\r\n allowClear: true,\r\n } as any;\r\n let { antdStyle, mountElementId } = config();\r\n if (mountElementId) {\r\n props = {\r\n getPopupContainer: () => document.getElementById(mountElementId),\r\n ...props,\r\n };\r\n }\r\n if ((defaultStyle || antdStyle) && defaultStyle === true) {\r\n return (\r\n <div className={cls(styles[\"nsc_select\"], this.props.className)}>\r\n <Select\r\n value={this.state.selectValue}\r\n onChange={this.onChange.bind(this)}\r\n onSearch={this.onSearch.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <div className={this.props.className}>\r\n <Select\r\n value={this.state.selectValue}\r\n onSearch={this.onSearch.bind(this)}\r\n onChange={this.onChange.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n </div>\r\n );\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|