1 |
- {"remainingRequest":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\src\\views\\system\\fromModeling\\package\\components\\KFormDesign\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\src\\views\\system\\fromModeling\\package\\components\\KFormDesign\\index.vue","mtime":1688978853931},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1688725407620},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1688725415411}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCi8qCiAqIGF1dGhvciBrY3oKICogZGF0ZSAyMDE5LTExLTIwCiAqIGRlc2NyaXB0aW9uIOihqOWNleiuvuiuoeWZqAogKi8KaW1wb3J0IG9wZXJhdGluZ0FyZWEgZnJvbSAiLi9tb2R1bGUvb3BlcmF0aW5nQXJlYSI7CgppbXBvcnQga0Zvb3RlciBmcm9tICIuL21vZHVsZS9mb290ZXIiOwppbXBvcnQga0Zvcm1Db21wb25lbnRQYW5lbCBmcm9tICIuL21vZHVsZS9mb3JtQ29tcG9uZW50UGFuZWwiOwppbXBvcnQga0pzb25Nb2RhbCBmcm9tICIuL21vZHVsZS9qc29uTW9kYWwiOwppbXBvcnQga0NvZGVNb2RhbCBmcm9tICIuL21vZHVsZS9jb2RlTW9kYWwiOwppbXBvcnQgY29sbGFwc2VJdGVtIGZyb20gIi4vbW9kdWxlL2NvbGxhcHNlSXRlbSI7CmltcG9ydCBpbXBvcnRKc29uTW9kYWwgZnJvbSAiLi9tb2R1bGUvaW1wb3J0SnNvbk1vZGFsIjsKaW1wb3J0IHByZXZpZXdNb2RhbCBmcm9tICIuLi9LRm9ybVByZXZpZXcvaW5kZXgudnVlIjsKaW1wb3J0IHpoQ04gZnJvbSAiYW50LWRlc2lnbi12dWUvbGliL2xvY2FsZS1wcm92aWRlci96aF9DTiI7CmltcG9ydCB7IE1vZGFsLCBtZXNzYWdlIH0gZnJvbSAiYW50LWRlc2lnbi12dWUiOwppbXBvcnQgeyByZXZva2UsIG5vZGVTY2hlbWEgfSBmcm9tICIuLi8uLi91dGlscy9pbmRleCI7CmltcG9ydCBmb3JtSXRlbVByb3BlcnRpZXMgZnJvbSAiLi9tb2R1bGUvZm9ybUl0ZW1Qcm9wZXJ0aWVzIjsKaW1wb3J0IGZvcm1Qcm9wZXJ0aWVzIGZyb20gIi4vbW9kdWxlL2Zvcm1Qcm9wZXJ0aWVzIjsKCmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAiS0Zvcm1EZXNpZ24iLAogIHByb3BzOiB7CiAgICBzaG93SGVhZDogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiAi6KGo5Y2V6K6+6K6h5ZmoICIKICAgIH0sCiAgICBoaWRlUmVzZXRIaW50OiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgdG9vbGJhcnNUb3A6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICB0b29sYmFyczogewogICAgICB0eXBlOiBBcnJheSwKICAgICAgZGVmYXVsdDogKCkgPT4gWwogICAgICAgICJzYXZlIiwKICAgICAgICAicHJldmlldyIsCiAgICAgICAgImltcG9ydEpzb24iLAogICAgICAgICJleHBvcnRKc29uIiwKICAgICAgICAiZXhwb3J0Q29kZSIsCiAgICAgICAgInJlc2V0IiwKICAgICAgICAiY2xvc2UiLAogICAgICAgICJ1bmRvIiwKICAgICAgICAicmVkbyIKICAgICAgXQogICAgfSwKICAgIHNob3dUb29sYmFyc1RleHQ6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICBoaWRlTW9kZWw6IHsKICAgICAgLy8g6ZqQ6JeP5pWw5o2u5a2X5q61CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9CiAgfSwKICBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgbG9jYWxlOiB6aENOLAogICAgICBsb2FkU3RhdGU6IGZhbHNlLAogICAgICBhY3RpdmVLZXk6IDEsCiAgICAgIHVwZGF0ZVRpbWU6IDAsCiAgICAgIHVwZGF0ZVJlY29yZFRpbWU6IDAsCiAgICAgIHN0YXJ0VHlwZTogIiIsCiAgICAgIG5vTW9kZWw6IFsKICAgICAgICAiYnV0dG9uIiwKICAgICAgICAiZGl2aWRlciIsCiAgICAgICAgImNhcmQiLAogICAgICAgICJncmlkIiwKICAgICAgICAidGFicyIsCiAgICAgICAgInRhYmxlIiwKICAgICAgICAiYWxlcnQiLAogICAgICAgICJ0ZXh0IiwKICAgICAgICAiaHRtbCIKICAgICAgXSwKICAgICAgc2NoZW1hR3JvdXA6IFtdLAogICAgICBkYXRhOiB7CiAgICAgICAgbGlzdDogW10sCiAgICAgICAgY29uZmlnOiB7CiAgICAgICAgICBsYXlvdXQ6ICJob3Jpem9udGFsIiwKICAgICAgICAgIGxhYmVsQ29sOiB7IHhzOiA0LCBzbTogNCwgbWQ6IDQsIGxnOiA0LCB4bDogNCwgeHhsOiA0IH0sCiAgICAgICAgICBsYWJlbFdpZHRoOiAxMDAsCiAgICAgICAgICBsYWJlbExheW91dDogImZsZXgiLAogICAgICAgICAgd3JhcHBlckNvbDogeyB4czogMTgsIHNtOiAxOCwgbWQ6IDE4LCBsZzogMTgsIHhsOiAxOCwgeHhsOiAxOCB9LAogICAgICAgICAgaGlkZVJlcXVpcmVkTWFyazogZmFsc2UsCiAgICAgICAgICBjdXN0b21TdHlsZTogIiIKICAgICAgICB9CiAgICAgIH0sCiAgICAgIHByZXZpZXdPcHRpb25zOiB7CiAgICAgICAgd2lkdGg6IDg1MAogICAgICB9LAogICAgICBzZWxlY3RJdGVtOiB7CiAgICAgICAga2V5OiAiIgogICAgICB9CiAgICB9OwogIH0sCiAgY29tcG9uZW50czogewogICAgLy8ga0hlYWRlciwKICAgIC8vIGtGb290ZXIsCiAgICBvcGVyYXRpbmdBcmVhLAogICAgY29sbGFwc2VJdGVtLAogICAga0pzb25Nb2RhbCwKICAgIGtDb2RlTW9kYWwsCiAgICBpbXBvcnRKc29uTW9kYWwsCiAgICBwcmV2aWV3TW9kYWwsCiAgICBrRm9ybUNvbXBvbmVudFBhbmVsLAogICAgZm9ybUl0ZW1Qcm9wZXJ0aWVzLAogICAgZm9ybVByb3BlcnRpZXMKICB9LAogIHdhdGNoOiB7CiAgICBkYXRhOiB7CiAgICAgIGhhbmRsZXIoZSkgewogICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHsKICAgICAgICAgIHJldm9rZS5wdXNoKGUpOwogICAgICAgIH0pOwogICAgICB9LAogICAgICBkZWVwOiB0cnVlLAogICAgICBpbW1lZGlhdGU6IHRydWUKICAgIH0KICB9LAogIGNvbXB1dGVkOiB7CiAgICBjb2xsYXBzZURlZmF1bHRBY3RpdmVLZXkoKSB7CiAgICAgIC8vIOiuoeeul+W9k+WJjeWxleW8gOeahOaOp+S7tuWIl+ihqAogICAgICBjb25zdCBkZWZhdWx0QWN0aXZlS2V5ID0gd2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKAogICAgICAgICJjb2xsYXBzZURlZmF1bHRBY3RpdmVLZXkiCiAgICAgICk7CiAgICAgIGlmIChkZWZhdWx0QWN0aXZlS2V5KSB7CiAgICAgICAgcmV0dXJuIGRlZmF1bHRBY3RpdmVLZXkuc3BsaXQoIiwiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gWyIxIl07CiAgICAgIH0KICAgIH0KICB9LAogIG1ldGhvZHM6IHsKICAgIGdlbmVyYXRlS2V5KGxpc3QsIGluZGV4KSB7CiAgICAgIC8vIOeUn+aIkGtleeWAvAogICAgICBjb25zdCBrZXkgPSBsaXN0W2luZGV4XS50eXBlICsgIl8iICsgbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgIHRoaXMuJHNldChsaXN0LCBpbmRleCwgewogICAgICAgIC4uLmxpc3RbaW5kZXhdLAogICAgICAgIGtleSwKICAgICAgICBtb2RlbDoga2V5CiAgICAgIH0pOwogICAgICBpZiAodGhpcy5ub01vZGVsLmluY2x1ZGVzKGxpc3RbaW5kZXhdLnR5cGUpKSB7CiAgICAgICAgLy8g5Yig6Zmk5LiN6ZyA6KaB55qEbW9kZWzlsZ7mgKcKICAgICAgICBkZWxldGUgbGlzdFtpbmRleF0ubW9kZWw7CiAgICAgIH0KICAgIH0sCiAgICBoYW5kbGVMaXN0UHVzaChpdGVtKSB7CiAgICAgIC8vIOWPjOWHu+aOp+S7tuaMiemSrnB1c2jliLBsaXN0CiAgICAgIC8vIOeUn+aIkGtleeWAvAogICAgICBpZiAoIXRoaXMuc2VsZWN0SXRlbS5rZXkpIHsKICAgICAgICAvLyDlnKjmsqHmnInpgInmi6nooajljZXml7bvvIzlsIbmlbDmja5wdXNo5YiwdGhpcy5kYXRhLmxpc3QKICAgICAgICBjb25zdCBrZXkgPSBpdGVtLnR5cGUgKyAiXyIgKyBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKICAgICAgICBpdGVtID0gewogICAgICAgICAgLi4uaXRlbSwKICAgICAgICAgIGtleSwKICAgICAgICAgIG1vZGVsOiBrZXkKICAgICAgICB9OwogICAgICAgIGlmICh0aGlzLm5vTW9kZWwuaW5jbHVkZXMoaXRlbS50eXBlKSkgewogICAgICAgICAgLy8g5Yig6Zmk5LiN6ZyA6KaB55qEbW9kZWzlsZ7mgKcKICAgICAgICAgIGRlbGV0ZSBpdGVtLm1vZGVsOwogICAgICAgIH0KICAgICAgICBjb25zdCBpdGVtU3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoaXRlbSk7CiAgICAgICAgY29uc3QgcmVjb3JkID0gSlNPTi5wYXJzZShpdGVtU3RyaW5nKTsKICAgICAgICAvLyDliKDpmaRpY29u5Y+KY29tcG9lbnTlsZ7mgKcKICAgICAgICBkZWxldGUgcmVjb3JkLmljb247CiAgICAgICAgZGVsZXRlIHJlY29yZC5jb21wb25lbnQ7CiAgICAgICAgdGhpcy5kYXRhLmxpc3QucHVzaChyZWNvcmQpOwogICAgICAgIHRoaXMuaGFuZGxlU2V0U2VsZWN0SXRlbShyZWNvcmQpOwogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgICB0aGlzLiRyZWZzLktGQ1AuaGFuZGxlQ29weShmYWxzZSwgaXRlbSk7CiAgICB9LAogICAgaGFuZGxlT3Blbkpzb25Nb2RhbCgpIHsKICAgICAgLy8g5omT5byAanNvbumihOiniOaooeaAgeahhgogICAgICB0aGlzLiRyZWZzLmpzb25Nb2RhbC5qc29uRGF0YSA9IHRoaXMuZGF0YTsKICAgICAgdGhpcy4kcmVmcy5qc29uTW9kYWwudmlzaWJsZSA9IHRydWU7CiAgICB9LAogICAgaGFuZGxlT3BlbkNvZGVNb2RhbCgpIHsKICAgICAgLy8g5omT5byA5Luj56CB6aKE6KeI5qih5oCB5qGGCiAgICAgIHRoaXMuJHJlZnMuY29kZU1vZGFsLmpzb25EYXRhID0gdGhpcy5kYXRhOwogICAgICB0aGlzLiRyZWZzLmNvZGVNb2RhbC52aXNpYmxlID0gdHJ1ZTsKICAgIH0sCiAgICBoYW5kbGVPcGVuSW1wb3J0SnNvbk1vZGFsKCkgewogICAgICAvLyDmiZPlvIBqc29u6aKE6KeI5qih5oCB5qGGCiAgICAgIHRoaXMuJHJlZnMuaW1wb3J0SnNvbk1vZGFsLmpzb25EYXRhID0gdGhpcy5kYXRhOwogICAgICB0aGlzLiRyZWZzLmltcG9ydEpzb25Nb2RhbC5oYW5kbGVTZXRTZWxlY3RJdGVtID0gdGhpcy5oYW5kbGVTZXRTZWxlY3RJdGVtOwogICAgICB0aGlzLiRyZWZzLmltcG9ydEpzb25Nb2RhbC52aXNpYmxlID0gdHJ1ZTsKICAgIH0sCiAgICBoYW5kbGVQcmV2aWV3KCkgewogICAgICAvLyDmiZPlvIDpooTop4jmqKHmgIHmoYYKICAgICAgdGhpcy4kcmVmcy5wcmV2aWV3TW9kYWwuanNvbkRhdGEgPSB0aGlzLmRhdGE7CiAgICAgIHRoaXMuJHJlZnMucHJldmlld01vZGFsLnByZXZpZXdXaWR0aCA9IHRoaXMucHJldmlld09wdGlvbnMud2lkdGg7CiAgICAgIHRoaXMuJHJlZnMucHJldmlld01vZGFsLnZpc2libGUgPSB0cnVlOwogICAgfSwKICAgIGhhbmRsZVJlc2V0KCkgewogICAgICAvLyDmuIXnqboKICAgICAgaWYgKHRoaXMuaGlkZVJlc2V0SGludCkgewogICAgICAgIC8vIOS4jeaYvuekuuaPkOekuuebtOaOpea4heepugogICAgICAgIHRoaXMucmVzZXREYXRhKCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CgogICAgICBNb2RhbC5jb25maXJtKHsKICAgICAgICB0aXRsZTogIuitpuWRiiIsCiAgICAgICAgY29udGVudDogIuaYr+WQpuehruiupOa4heepuuWGheWuuT8iLAogICAgICAgIG9rVGV4dDogIuaYryIsCiAgICAgICAgb2tUeXBlOiAiZGFuZ2VyIiwKICAgICAgICBjYW5jZWxUZXh0OiAi5ZCmIiwKICAgICAgICBvbk9rOiAoKSA9PiB7CiAgICAgICAgICB0aGlzLnJlc2V0RGF0YSgpOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgcmVzZXREYXRhKCkgewogICAgICB0aGlzLmRhdGEgPSB7CiAgICAgICAgbGlzdDogW10sCiAgICAgICAgY29uZmlnOiB7CiAgICAgICAgICBsYXlvdXQ6ICJob3Jpem9udGFsIiwKICAgICAgICAgIGxhYmVsQ29sOiB7IHhzOiA0LCBzbTogNCwgbWQ6IDQsIGxnOiA0LCB4bDogNCwgeHhsOiA0IH0sCiAgICAgICAgICBsYWJlbFdpZHRoOiAxMDAsCiAgICAgICAgICBsYWJlbExheW91dDogImZsZXgiLAogICAgICAgICAgd3JhcHBlckNvbDogeyB4czogMTgsIHNtOiAxOCwgbWQ6IDE4LCBsZzogMTgsIHhsOiAxOCwgeHhsOiAxOCB9LAogICAgICAgICAgaGlkZVJlcXVpcmVkTWFyazogZmFsc2UsCiAgICAgICAgICBjdXN0b21TdHlsZTogIiIKICAgICAgICB9CiAgICAgIH07CiAgICAgIHRoaXMuaGFuZGxlU2V0U2VsZWN0SXRlbSh7IGtleTogIiIgfSk7CiAgICAgIG1lc3NhZ2Uuc3VjY2Vzcygi5bey5riF56m6Iik7CiAgICB9LAogICAgaGFuZGxlU2V0U2VsZWN0SXRlbShyZWNvcmQpIHsKICAgICAgLy8g5pON5L2c6Ze06ZqU5LiN6IO95L2O5LqOMTAw5q+r56eSCiAgICAgIGNvbnN0IG5ld1RpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKICAgICAgaWYgKG5ld1RpbWUgLSB0aGlzLnVwZGF0ZVRpbWUgPCAxMDApIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KCiAgICAgIHRoaXMudXBkYXRlVGltZSA9IG5ld1RpbWU7CgogICAgICAvLyDorr7nva5zZWxlY3RJdGVt55qE5YC8CiAgICAgIHRoaXMuc2VsZWN0SXRlbSA9IHJlY29yZDsKCiAgICAgIC8vIOWIpOaWreaYr+WQpumAieS4reaOp+S7tu+8jOWmguaenOmAieS4reWImeW8ueWHuuWxnuaAp+mdouadv++8jOWQpuWImeWFs+mXreWxnuaAp+mdouadvwogICAgICBpZiAocmVjb3JkLmtleSkgewogICAgICAgIHRoaXMuc3RhcnRUeXBlID0gcmVjb3JkLnR5cGU7CiAgICAgICAgdGhpcy5jaGFuZ2VUYWIoMik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy5jaGFuZ2VUYWIoMSk7CiAgICAgIH0KICAgIH0sCiAgICAvKioKICAgICAqIEBkZXNjcmlwdGlvbjog5YiH5o2i5bGe5oCn6K6+572u6Z2i5p2/CiAgICAgKiBAcGFyYW0geyp9CiAgICAgKiBAcmV0dXJuIHsqfQogICAgICovCgogICAgY2hhbmdlVGFiKGUpIHsKICAgICAgdGhpcy5hY3RpdmVLZXkgPSBlOwogICAgfSwKICAgIC8qKgogICAgICogQEF1dGhvcjoga2N6CiAgICAgKiBAZGVzY3JpcHRpb246IOmBjeWOhmpzb27nu5PmnoTvvIzojrflj5bmiYDmnInlrZfmrrUKICAgICAqIEBwYXJhbSB7Kn0KICAgICAqIEByZXR1cm4geyp9IEFycmF5CiAgICAgKi8KICAgIGdldEZpZWxkU2NoZW1hKCkgewogICAgICBjb25zdCBmaWVsZHMgPSBbXTsKICAgICAgY29uc3QgdHJhdmVyc2UgPSBhcnJheSA9PiB7CiAgICAgICAgYXJyYXkuZm9yRWFjaChlbGVtZW50ID0+IHsKICAgICAgICAgIGlmIChlbGVtZW50LnR5cGUgPT09ICJncmlkIiB8fCBlbGVtZW50LnR5cGUgPT09ICJ0YWJzIikgewogICAgICAgICAgICAvLyDmoIXmoLzluIPlsYAKICAgICAgICAgICAgZWxlbWVudC5jb2x1bW5zLmZvckVhY2goaXRlbSA9PiB7CiAgICAgICAgICAgICAgdHJhdmVyc2UoaXRlbS5saXN0KTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQudHlwZSA9PT0gImNhcmQiKSB7CiAgICAgICAgICAgIC8vIOWNoeeJh+W4g+WxgAogICAgICAgICAgICB0cmF2ZXJzZShlbGVtZW50Lmxpc3QpOwogICAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50LnR5cGUgPT09ICJiYXRjaCIpIHsKICAgICAgICAgICAgLy8g5Yqo5oCB6KGo5qC85YaF5aSN5Yi2CiAgICAgICAgICAgIHRyYXZlcnNlKGVsZW1lbnQubGlzdCk7CiAgICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQudHlwZSA9PT0gInRhYmxlIikgewogICAgICAgICAgICAvLyDooajmoLzluIPlsYAKICAgICAgICAgICAgZWxlbWVudC50cnMuZm9yRWFjaChpdGVtID0+IHsKICAgICAgICAgICAgICBpdGVtLnRkcy5mb3JFYWNoKHZhbCA9PiB7CiAgICAgICAgICAgICAgICB0cmF2ZXJzZSh2YWwubGlzdCk7CiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKGVsZW1lbnQubW9kZWwpIHsKICAgICAgICAgICAgICBmaWVsZHMucHVzaChlbGVtZW50KTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9OwogICAgICB0cmF2ZXJzZSh0aGlzLmRhdGEubGlzdCk7CiAgICAgIHJldHVybiBmaWVsZHM7CiAgICB9LAogICAgaGFuZGxlU2V0RGF0YShkYXRhKSB7CiAgICAgIC8vIOeUqOS6jueItue7hOS7tui1i+WAvAogICAgICB0cnkgewogICAgICAgIGlmICh0eXBlb2YgZGF0YSAhPT0gIm9iamVjdCIpIHsKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdGhpcy5kYXRhID0gZGF0YTsKICAgICAgICAgIC8vIOWvvOWFpWpzb27mlbDmja7lkI7vvIzpnIDopoHmuIXpmaTlt7LpgInmi6lrZXkKICAgICAgICAgIHRoaXMuaGFuZGxlU2V0U2VsZWN0SXRlbSh7IGtleTogIiIgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpOwogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgfSwKICAgIGNvbGxhcHNlQ2hhbmdlKHZhbCkgewogICAgICAvLyDngrnlh7tjb2xsYXBzZeaXtu+8jOS/neWtmOW9k+WJjWNvbGxhcHNl54q25oCBCiAgICAgIHdpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgiY29sbGFwc2VEZWZhdWx0QWN0aXZlS2V5IiwgdmFsKTsKICAgIH0sCiAgICBoYW5kbGVTdGFydCh0eXBlKSB7CiAgICAgIHRoaXMuc3RhcnRUeXBlID0gdHlwZTsKICAgIH0sCgogICAgLyoqCiAgICAgKiBAZGVzY3JpcHRpb246IOaSpOmUgAogICAgICogQHBhcmFtIHsqfQogICAgICogQHJldHVybiB7Kn0KICAgICAqLwogICAgaGFuZGxlVW5kbygpIHsKICAgICAgY29uc3QgcmVjb3JkID0gcmV2b2tlLnVuZG8oKTsKICAgICAgaWYgKCFyZWNvcmQpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdGhpcy5kYXRhID0gcmVjb3JkOwoKICAgICAgdGhpcy5oYW5kbGVTZXRTZWxlY3RJdGVtKHsga2V5OiAiIiB9KTsKICAgIH0sCgogICAgLyoqCiAgICAgKiBAZGVzY3JpcHRpb246IOmHjeWBmgogICAgICogQHBhcmFtIHsqfQogICAgICogQHJldHVybiB7Kn0KICAgICAqLwogICAgaGFuZGxlUmVkbygpIHsKICAgICAgY29uc3QgcmVjb3JkID0gcmV2b2tlLnJlZG8oKTsKICAgICAgaWYgKCFyZWNvcmQpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICAgdGhpcy5kYXRhID0gcmVjb3JkOwogICAgfSwKCiAgICBoYW5kbGVTYXZlKCkgewogICAgICAvLyDkv53lrZjlh73mlbAKICAgICAgdGhpcy4kZW1pdCgic2F2ZSIsIEpTT04uc3RyaW5naWZ5KHRoaXMuZGF0YSkpOwogICAgfSwKICAgIGdldFZhbHVlKCkgewogICAgICAvLyDojrflj5bmlbDmja4KICAgICAgcmV0dXJuIHRoaXMuZGF0YTsKICAgIH0sCiAgICBoYW5kbGVDbG9zZSgpIHsKICAgICAgdGhpcy4kZW1pdCgiY2xvc2UiKTsKICAgIH0KICB9LAogIGNyZWF0ZWQoKSB7CiAgICB0aGlzLmxvYWRTdGF0ZSA9IHRydWU7CiAgICBub2RlU2NoZW1hLmFkZENvbXB1dGVkKHRoaXMuc2NoZW1hR3JvdXApOwogIH0KfTsK"},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqIA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/views/system/fromModeling/package/components/KFormDesign","sourcesContent":["<template>\n <a-config-provider :locale=\"locale\">\n <div class=\"form-designer-container-9136076486841527\" v-if=\"loadState\">\n <!-- <k-header v-if=\"showHead\" :title=\"title\" /> -->\n <!-- 操作区域 start -->\n <operatingArea\n v-if=\"toolbarsTop\"\n :showToolbarsText=\"showToolbarsText\"\n :toolbars=\"toolbars\"\n @handleSave=\"handleSave\"\n @handlePreview=\"handlePreview\"\n @handleOpenImportJsonModal=\"handleOpenImportJsonModal\"\n @handleOpenCodeModal=\"handleOpenCodeModal\"\n @handleOpenJsonModal=\"handleOpenJsonModal\"\n @handleReset=\"handleReset\"\n @handleClose=\"handleClose\"\n @handleUndo=\"handleUndo\"\n @handleRedo=\"handleRedo\"\n >\n <template slot=\"left-action\">\n <slot name=\"left-action\"></slot>\n </template>\n\n <template slot=\"right-action\">\n <slot name=\"right-action\"></slot>\n </template>\n </operatingArea>\n <!-- 操作区域 end -->\n <div\n class=\"content\"\n :class=\"{\n 'show-head': showHead,\n 'toolbars-top': toolbarsTop,\n 'show-head-and-toolbars-top': toolbarsTop && showHead\n }\"\n >\n <!-- 左侧控件区域 start -->\n <aside class=\"left\">\n <a-collapse\n @change=\"collapseChange\"\n :defaultActiveKey=\"collapseDefaultActiveKey\"\n >\n <!-- 基础控件 start -->\n <a-collapse-panel\n v-for=\"(item, index) in schemaGroup\"\n \n :key=\"index\"\n >\n <collapseItem\n :list=\"item.list\"\n @generateKey=\"generateKey\"\n @handleListPush=\"handleListPush\"\n @start=\"handleStart\"\n />\n </a-collapse-panel>\n <!-- 基础控件 end -->\n </a-collapse>\n </aside>\n <!-- 左侧控件区域 end -->\n\n <!-- 中间面板区域 start -->\n <section>\n <!-- 操作区域 start -->\n <operatingArea\n v-if=\"!toolbarsTop\"\n :showToolbarsText=\"showToolbarsText\"\n :toolbars=\"toolbars\"\n @handleSave=\"handleSave\"\n @handlePreview=\"handlePreview\"\n @handleOpenImportJsonModal=\"handleOpenImportJsonModal\"\n @handleOpenCodeModal=\"handleOpenCodeModal\"\n @handleOpenJsonModal=\"handleOpenJsonModal\"\n @handleReset=\"handleReset\"\n @handleClose=\"handleClose\"\n @handleUndo=\"handleUndo\"\n @handleRedo=\"handleRedo\"\n >\n <template slot=\"left-action\">\n <slot name=\"left-action\"></slot>\n </template>\n\n <template slot=\"right-action\">\n <slot name=\"right-action\"></slot>\n </template>\n </operatingArea>\n <!-- 操作区域 end -->\n <k-form-component-panel\n :class=\"{ 'no-toolbars-top': !toolbarsTop }\"\n :data=\"data\"\n :selectItem=\"selectItem\"\n :noModel=\"noModel\"\n :hideModel=\"hideModel\"\n :startType=\"startType\"\n ref=\"KFCP\"\n @handleSetSelectItem=\"handleSetSelectItem\"\n />\n <!-- 操作区域 start -->\n <k-json-modal ref=\"jsonModal\" />\n <k-code-modal ref=\"codeModal\" />\n <importJsonModal ref=\"importJsonModal\" />\n <previewModal ref=\"previewModal\" />\n </section>\n <!-- 中间面板区域 end -->\n\n <!-- 右侧控件属性区域 start -->\n <aside class=\"right\">\n <a-tabs\n :activeKey=\"activeKey\"\n @change=\"changeTab\"\n :tabBarStyle=\"{ margin: 0 }\"\n >\n <a-tab-pane :key=\"1\" tab=\"表单属性设置\">\n <formProperties\n :config=\"data.config\"\n :previewOptions=\"previewOptions\"\n />\n </a-tab-pane>\n <a-tab-pane :key=\"2\" tab=\"控件属性设置\">\n <formItemProperties\n class=\"form-item-properties\"\n :selectItem=\"selectItem\"\n :hideModel=\"hideModel\"\n />\n </a-tab-pane>\n </a-tabs>\n </aside>\n <!-- 右侧控件属性区域 end -->\n </div>\n <!-- <k-footer /> -->\n </div>\n </a-config-provider>\n</template>\n<script>\n/*\n * author kcz\n * date 2019-11-20\n * description 表单设计器\n */\nimport operatingArea from \"./module/operatingArea\";\n\nimport kFooter from \"./module/footer\";\nimport kFormComponentPanel from \"./module/formComponentPanel\";\nimport kJsonModal from \"./module/jsonModal\";\nimport kCodeModal from \"./module/codeModal\";\nimport collapseItem from \"./module/collapseItem\";\nimport importJsonModal from \"./module/importJsonModal\";\nimport previewModal from \"../KFormPreview/index.vue\";\nimport zhCN from \"ant-design-vue/lib/locale-provider/zh_CN\";\nimport { Modal, message } from \"ant-design-vue\";\nimport { revoke, nodeSchema } from \"../../utils/index\";\nimport formItemProperties from \"./module/formItemProperties\";\nimport formProperties from \"./module/formProperties\";\n\nexport default {\n name: \"KFormDesign\",\n props: {\n showHead: {\n type: Boolean,\n default: \"表单设计器 \"\n },\n hideResetHint: {\n type: Boolean,\n default: false\n },\n toolbarsTop: {\n type: Boolean,\n default: false\n },\n toolbars: {\n type: Array,\n default: () => [\n \"save\",\n \"preview\",\n \"importJson\",\n \"exportJson\",\n \"exportCode\",\n \"reset\",\n \"close\",\n \"undo\",\n \"redo\"\n ]\n },\n showToolbarsText: {\n type: Boolean,\n default: false\n },\n hideModel: {\n // 隐藏数据字段\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n locale: zhCN,\n loadState: false,\n activeKey: 1,\n updateTime: 0,\n updateRecordTime: 0,\n startType: \"\",\n noModel: [\n \"button\",\n \"divider\",\n \"card\",\n \"grid\",\n \"tabs\",\n \"table\",\n \"alert\",\n \"text\",\n \"html\"\n ],\n schemaGroup: [],\n data: {\n list: [],\n config: {\n layout: \"horizontal\",\n labelCol: { xs: 4, sm: 4, md: 4, lg: 4, xl: 4, xxl: 4 },\n labelWidth: 100,\n labelLayout: \"flex\",\n wrapperCol: { xs: 18, sm: 18, md: 18, lg: 18, xl: 18, xxl: 18 },\n hideRequiredMark: false,\n customStyle: \"\"\n }\n },\n previewOptions: {\n width: 850\n },\n selectItem: {\n key: \"\"\n }\n };\n },\n components: {\n // kHeader,\n // kFooter,\n operatingArea,\n collapseItem,\n kJsonModal,\n kCodeModal,\n importJsonModal,\n previewModal,\n kFormComponentPanel,\n formItemProperties,\n formProperties\n },\n watch: {\n data: {\n handler(e) {\n this.$nextTick(() => {\n revoke.push(e);\n });\n },\n deep: true,\n immediate: true\n }\n },\n computed: {\n collapseDefaultActiveKey() {\n // 计算当前展开的控件列表\n const defaultActiveKey = window.localStorage.getItem(\n \"collapseDefaultActiveKey\"\n );\n if (defaultActiveKey) {\n return defaultActiveKey.split(\",\");\n } else {\n return [\"1\"];\n }\n }\n },\n methods: {\n generateKey(list, index) {\n // 生成key值\n const key = list[index].type + \"_\" + new Date().getTime();\n this.$set(list, index, {\n ...list[index],\n key,\n model: key\n });\n if (this.noModel.includes(list[index].type)) {\n // 删除不需要的model属性\n delete list[index].model;\n }\n },\n handleListPush(item) {\n // 双击控件按钮push到list\n // 生成key值\n if (!this.selectItem.key) {\n // 在没有选择表单时,将数据push到this.data.list\n const key = item.type + \"_\" + new Date().getTime();\n item = {\n ...item,\n key,\n model: key\n };\n if (this.noModel.includes(item.type)) {\n // 删除不需要的model属性\n delete item.model;\n }\n const itemString = JSON.stringify(item);\n const record = JSON.parse(itemString);\n // 删除icon及compoent属性\n delete record.icon;\n delete record.component;\n this.data.list.push(record);\n this.handleSetSelectItem(record);\n return false;\n }\n this.$refs.KFCP.handleCopy(false, item);\n },\n handleOpenJsonModal() {\n // 打开json预览模态框\n this.$refs.jsonModal.jsonData = this.data;\n this.$refs.jsonModal.visible = true;\n },\n handleOpenCodeModal() {\n // 打开代码预览模态框\n this.$refs.codeModal.jsonData = this.data;\n this.$refs.codeModal.visible = true;\n },\n handleOpenImportJsonModal() {\n // 打开json预览模态框\n this.$refs.importJsonModal.jsonData = this.data;\n this.$refs.importJsonModal.handleSetSelectItem = this.handleSetSelectItem;\n this.$refs.importJsonModal.visible = true;\n },\n handlePreview() {\n // 打开预览模态框\n this.$refs.previewModal.jsonData = this.data;\n this.$refs.previewModal.previewWidth = this.previewOptions.width;\n this.$refs.previewModal.visible = true;\n },\n handleReset() {\n // 清空\n if (this.hideResetHint) {\n // 不显示提示直接清空\n this.resetData();\n return;\n }\n\n Modal.confirm({\n title: \"警告\",\n content: \"是否确认清空内容?\",\n okText: \"是\",\n okType: \"danger\",\n cancelText: \"否\",\n onOk: () => {\n this.resetData();\n }\n });\n },\n resetData() {\n this.data = {\n list: [],\n config: {\n layout: \"horizontal\",\n labelCol: { xs: 4, sm: 4, md: 4, lg: 4, xl: 4, xxl: 4 },\n labelWidth: 100,\n labelLayout: \"flex\",\n wrapperCol: { xs: 18, sm: 18, md: 18, lg: 18, xl: 18, xxl: 18 },\n hideRequiredMark: false,\n customStyle: \"\"\n }\n };\n this.handleSetSelectItem({ key: \"\" });\n message.success(\"已清空\");\n },\n handleSetSelectItem(record) {\n // 操作间隔不能低于100毫秒\n const newTime = new Date().getTime();\n if (newTime - this.updateTime < 100) {\n return false;\n }\n\n this.updateTime = newTime;\n\n // 设置selectItem的值\n this.selectItem = record;\n\n // 判断是否选中控件,如果选中则弹出属性面板,否则关闭属性面板\n if (record.key) {\n this.startType = record.type;\n this.changeTab(2);\n } else {\n this.changeTab(1);\n }\n },\n /**\n * @description: 切换属性设置面板\n * @param {*}\n * @return {*}\n */\n\n changeTab(e) {\n this.activeKey = e;\n },\n /**\n * @Author: kcz\n * @description: 遍历json结构,获取所有字段\n * @param {*}\n * @return {*} Array\n */\n getFieldSchema() {\n const fields = [];\n const traverse = array => {\n array.forEach(element => {\n if (element.type === \"grid\" || element.type === \"tabs\") {\n // 栅格布局\n element.columns.forEach(item => {\n traverse(item.list);\n });\n } else if (element.type === \"card\") {\n // 卡片布局\n traverse(element.list);\n } else if (element.type === \"batch\") {\n // 动态表格内复制\n traverse(element.list);\n } else if (element.type === \"table\") {\n // 表格布局\n element.trs.forEach(item => {\n item.tds.forEach(val => {\n traverse(val.list);\n });\n });\n } else {\n if (element.model) {\n fields.push(element);\n }\n }\n });\n };\n traverse(this.data.list);\n return fields;\n },\n handleSetData(data) {\n // 用于父组件赋值\n try {\n if (typeof data !== \"object\") {\n return false;\n } else {\n this.data = data;\n // 导入json数据后,需要清除已选择key\n this.handleSetSelectItem({ key: \"\" });\n }\n return true;\n } catch (error) {\n console.error(error);\n return false;\n }\n },\n collapseChange(val) {\n // 点击collapse时,保存当前collapse状态\n window.localStorage.setItem(\"collapseDefaultActiveKey\", val);\n },\n handleStart(type) {\n this.startType = type;\n },\n\n /**\n * @description: 撤销\n * @param {*}\n * @return {*}\n */\n handleUndo() {\n const record = revoke.undo();\n if (!record) {\n return false;\n }\n this.data = record;\n\n this.handleSetSelectItem({ key: \"\" });\n },\n\n /**\n * @description: 重做\n * @param {*}\n * @return {*}\n */\n handleRedo() {\n const record = revoke.redo();\n if (!record) {\n return false;\n }\n this.data = record;\n },\n\n handleSave() {\n // 保存函数\n this.$emit(\"save\", JSON.stringify(this.data));\n },\n getValue() {\n // 获取数据\n return this.data;\n },\n handleClose() {\n this.$emit(\"close\");\n }\n },\n created() {\n this.loadState = true;\n nodeSchema.addComputed(this.schemaGroup);\n }\n};\n</script>\n<style scoped>\n.form-designer-container-9136076486841527 .content aside, .k-form-build-9136076486841527 .content aside {\n -webkit-box-shadow: 0 0 1px 1px #ccc;\n box-shadow: 0 0 1px 1px #ccc;\n width: 305px;\n height: 100%;\n}\n</style>"]}]}
|