1 |
- {"remainingRequest":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\boman-framwork\\ruoyi-ui\\src\\views\\activiti\\TemplateManagementNew\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\boman-framwork\\ruoyi-ui\\src\\views\\activiti\\TemplateManagementNew\\index.vue","mtime":1619607677296},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQovLyBpbXBvcnQgJy4uL19fdXRpbHNfXy9nbycNCmltcG9ydCBWdWUgZnJvbSAndnVlJw0KaW1wb3J0IFBhcmFtZXRlckNvbmZpZ3VyYXRpb24gZnJvbSAnQC9jb21wb25lbnRzL1BhcmFtZXRlckNvbmZpZ3VyYXRpb24nDQppbXBvcnQgRmxvd0NoYXJ0Q29tcG9uZW50IGZyb20gJ0AvY29tcG9uZW50cy9GbG93Q2hhcnRDb21wb25lbnQnDQppbXBvcnQgRmxvd1N1Y2Nlc3MgZnJvbSAnQC9jb21wb25lbnRzL0Zsb3dTdWNjZXNzJw0KaW1wb3J0IHsgIG1hcE11dGF0aW9ucyB9IGZyb20gJ3Z1ZXgnOw0KaW1wb3J0IHsgc2V0VGltZW91dCB9IGZyb20gJ3RpbWVycyc7DQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6J1RlbXBsYXRlTWFuYWdlbWVudE5ldycsDQogIGNvbXBvbmVudHM6e1BhcmFtZXRlckNvbmZpZ3VyYXRpb24sRmxvd0NoYXJ0Q29tcG9uZW50LEZsb3dTdWNjZXNzfSwNCiAgZGF0YSAoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIGN1cnJlbnRTdGVwczowLA0KICAgICAgY3VycmVudENvbXBvbmVudDpudWxsLA0KICAgICAgaW1nQmFzZTonJywNCiAgICAgIGRlZmF1bHREYXRhOnsNCiAgICAgICAgZ3VpU3R5bGU6SlNPTi5zdHJpbmdpZnkoew0KICAgICAgICAgICJjbGFzcyI6ICJOZXdHcmFwaExpbmtzTW9kZWwiLA0KICAgICAgICAgICJsaW5rRnJvbVBvcnRJZFByb3BlcnR5IjogImZyb21Qb3J0IiwNCiAgICAgICAgICAibGlua1RvUG9ydElkUHJvcGVydHkiOiAidG9Qb3J0IiwNCiAgICAgICAgICAibm9kZURhdGFBcnJheSI6IFsNCiAgICAgICAgICAgIHsia2V5IjotMSwgImNhdGVnb3J5IjoiU3RhcnQiLCAibG9jIjoiMTc1IDAiLCAidGV4dCI6IuW8gOWniyIsICJ0eXBlIjogMX0sDQogICAgICAgICAgICB7ImtleSI6MCwgImxvYyI6IjE3NSAxMDAiLCAidGV4dCI6IuWuoeaJueiKgueCuSIsInR5cGUiOiAwLCAiY2F0ZWdvcnkiOiAnQXBwcm92YWwnfSwNCiAgICAgICAgICAgIHsia2V5IjotMiwgImNhdGVnb3J5IjoiRW5kIiwgImxvYyI6IjE3NSAyMDAiLCAidGV4dCI6Iue7k+adnyIsICJ0eXBlIjogMn0NCiAgICAgICAgICBdLA0KICAgICAgICAgICJsaW5rRGF0YUFycmF5IjogWw0KICAgICAgICAgICAgeyJmcm9tIjotMSwgInRvIjowLCAiZnJvbVBvcnQiOiJCIiwgInRvUG9ydCI6IlQiLCJrZXkiOjB9LA0KICAgICAgICAgICAgeyJmcm9tIjowLCAidG8iOi0yLCAiZnJvbVBvcnQiOiJCIiwgInRvUG9ydCI6IlQiLCJrZXkiOjF9DQogICAgICAgICAgXQ0KICAgICAgICB9KSwNCiAgICAgICAgbm9kZU1zZzpbDQogICAgICAgICAgeyJrZXkiOi0xLCAiY2F0ZWdvcnkiOiJTdGFydCIsICJsb2MiOiIxNzUgMCIsICJ0ZXh0Ijoi5byA5aeLIiwgIm5hbWUiOiLlvIDlp4siLCAidHlwZSI6IDEsInJ1bGVMaXN0IjpbXX0sDQogICAgICAgICAgeyJrZXkiOjAsICJsb2MiOiIxNzUgMTAwIiwgInRleHQiOiLlrqHmibnoioLngrkiLCAgIm5hbWUiOiLlrqHmibnoioLngrkiLCAiY2F0ZWdvcnkiOiAnQXBwcm92YWwnLCJ0eXBlIjogMCwicnVsZUxpc3QiOltdLCJhY3RTZXJ2aWNlUyI6W10sImFjdGlvbkNvbmZpZyI6W10sImFwcHJvdmVsTGlzdCI6W10sImFwcHJvdmVyU3R5bGUiOjB9LA0KICAgICAgICAgIHsia2V5IjotMiwgImNhdGVnb3J5IjoiRW5kIiwgImxvYyI6IjE3NSAyMDAiLCAidGV4dCI6Iue7k+adnyIsICAibmFtZSI6Iue7k+adnyIsICJ0eXBlIjogMiwiYWN0aW9uQ29uZmlnIjpbew0KICAgICAgICAgICAgICBoYW5kbGVWYWx1ZTpudWxsLA0KICAgICAgICAgICAgICBleHRyYV9tc2c6e30sDQogICAgICAgICAgICAgIGhhbmRsZVR5cGU6MzENCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgIGhhbmRsZVZhbHVlOid7fScsDQogICAgICAgICAgICAgIGV4dHJhX21zZzp7fSwNCiAgICAgICAgICAgICAgaGFuZGxlVHlwZTo0MQ0KICAgICAgICAgICAgfV19DQogICAgICAgIF0sDQogICAgICAgIHBhdGhNc2c6Ww0KICAgICAgICAgIHsiZnJvbSI6LTEsICJ0byI6MCwgImZyb21Qb3J0IjoiQiIsICJ0b1BvcnQiOiJUIiwicnVsZUxpc3QiOltdLCJrZXkiOjB9LA0KICAgICAgICAgIHsiZnJvbSI6MCwgInRvIjotMiwgImZyb21Qb3J0IjoiQiIsICJ0b1BvcnQiOiJUIiwicnVsZUxpc3QiOltdLCJrZXkiOjF9DQogICAgICAgIF0sDQogICAgICAgIHJlbW92ZU5vZGU6W10sDQogICAgICAgIHJlbW92ZVBhdGg6W10sDQogICAgICB9LA0KICAgICAgZGF0YTp7DQogICAgICAgIGd1aVN0eWxlOkpTT04uc3RyaW5naWZ5KHsNCiAgICAgICAgICAiY2xhc3MiOiAiTmV3R3JhcGhMaW5rc01vZGVsIiwNCiAgICAgICAgICAibGlua0Zyb21Qb3J0SWRQcm9wZXJ0eSI6ICJmcm9tUG9ydCIsDQogICAgICAgICAgImxpbmtUb1BvcnRJZFByb3BlcnR5IjogInRvUG9ydCIsDQogICAgICAgICAgIm5vZGVEYXRhQXJyYXkiOiBbDQogICAgICAgICAgICB7ImtleSI6LTEsICJjYXRlZ29yeSI6IlN0YXJ0IiwgImxvYyI6IjE3NSAwIiwgInRleHQiOiLlvIDlp4siLCAidHlwZSI6IDF9LA0KICAgICAgICAgICAgeyJrZXkiOjAsICJsb2MiOiIxNzUgMTAwIiwgInRleHQiOiLlrqHmibnoioLngrkiLCJ0eXBlIjogMCwgImNhdGVnb3J5IjogJ0FwcHJvdmFsJ30sDQogICAgICAgICAgICB7ImtleSI6LTIsICJjYXRlZ29yeSI6IkVuZCIsICJsb2MiOiIxNzUgMjAwIiwgInRleHQiOiLnu5PmnZ8iLCAidHlwZSI6IDJ9DQogICAgICAgICAgXSwNCiAgICAgICAgICAibGlua0RhdGFBcnJheSI6IFsNCiAgICAgICAgICAgIHsiZnJvbSI6LTEsICJ0byI6MCwgImZyb21Qb3J0IjoiQiIsICJ0b1BvcnQiOiJUIiwia2V5IjowfSwNCiAgICAgICAgICAgIHsiZnJvbSI6MCwgInRvIjotMiwgImZyb21Qb3J0IjoiQiIsICJ0b1BvcnQiOiJUIiwia2V5IjoxfQ0KICAgICAgICAgIF0NCiAgICAgICAgfSksDQogICAgICAgIG5vZGVNc2c6Ww0KICAgICAgICAgIHsia2V5IjotMSwgImNhdGVnb3J5IjoiU3RhcnQiLCAibG9jIjoiMTc1IDAiLCAidGV4dCI6IuW8gOWniyIsICJuYW1lIjoi5byA5aeLIiwgInR5cGUiOiAxLCJydWxlTGlzdCI6W119LA0KICAgICAgICAgIHsia2V5IjowLCAibG9jIjoiMTc1IDEwMCIsICJ0ZXh0Ijoi5a6h5om56IqC54K5IiwgICJuYW1lIjoi5a6h5om56IqC54K5IiwgImNhdGVnb3J5IjogJ0FwcHJvdmFsJywidHlwZSI6IDAsInJ1bGVMaXN0IjpbXSwiYWN0U2VydmljZVMiOltdLCJhY3Rpb25Db25maWciOltdLCJhcHByb3ZlbExpc3QiOltdLCJhcHByb3ZlclN0eWxlIjowfSwNCiAgICAgICAgICB7ImtleSI6LTIsICJjYXRlZ29yeSI6IkVuZCIsICJsb2MiOiIxNzUgMjAwIiwgInRleHQiOiLnu5PmnZ8iLCAgIm5hbWUiOiLnu5PmnZ8iLCAidHlwZSI6IDIsImFjdGlvbkNvbmZpZyI6W3sNCiAgICAgICAgICAgICAgaGFuZGxlVmFsdWU6bnVsbCwNCiAgICAgICAgICAgICAgZXh0cmFfbXNnOnt9LA0KICAgICAgICAgICAgICBoYW5kbGVUeXBlOjMxDQogICAgICAgICAgICB9LA0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICBoYW5kbGVWYWx1ZTone30nLA0KICAgICAgICAgICAgICBleHRyYV9tc2c6e30sDQogICAgICAgICAgICAgIGhhbmRsZVR5cGU6NDENCiAgICAgICAgICAgIH1dfQ0KICAgICAgICBdLA0KICAgICAgICBwYXRoTXNnOlsNCiAgICAgICAgICB7ImZyb20iOi0xLCAidG8iOjAsICJmcm9tUG9ydCI6IkIiLCAidG9Qb3J0IjoiVCIsInJ1bGVMaXN0IjpbXSwia2V5IjowfSwNCiAgICAgICAgICB7ImZyb20iOjAsICJ0byI6LTIsICJmcm9tUG9ydCI6IkIiLCAidG9Qb3J0IjoiVCIsInJ1bGVMaXN0IjpbXSwia2V5IjoxfQ0KICAgICAgICBdLA0KICAgICAgICByZW1vdmVOb2RlOltdLA0KICAgICAgICByZW1vdmVQYXRoOltdLA0KICAgICAgICBhdXRvQ2xvc2U6IHRydWUsDQogICAgICAgIG1vZHVsZVR5cGU6IDANCiAgICAgIH0sDQogICAgICBub0ZyZXNoRmxhZzpmYWxzZSwNCg0KICAgICAgcmVhZE9ubHk6ZmFsc2UsICAvL+aYr+WQpuWPquivu+S4uumihOiniOaooeW8jw0KICAgICAgLy/lrZjmlL7kuInmraXpqqTnmoTmlbDmja4NCg0KDQogICAgICBkZWZhdWx0TW9kdWxlVHlwZTogbnVsbCwgIC8v5pqC5a2Y5qih54mI57G75Z6LDQoNCiAgICB9DQogIH0sDQogIHdhdGNoOnsNCiAgICBjdXJyZW50U3RlcHMgKHZhbCkgew0KICAgICAgaWYodGhpcy5yZWFkT25seSl7DQogICAgICAgIHJldHVybg0KICAgICAgfQ0KICAgICAgbGV0IGNvbXBvbmVudE5hbWUgPSBgY29tcG9uZW50XyR7dmFsfWANCiAgICAgIGlmKFZ1ZS5jb21wb25lbnQoY29tcG9uZW50TmFtZSkgPT09IHVuZGVmaW5lZCl7DQogICAgICAgIGlmKHZhbCA9PT0gMCApew0KICAgICAgICAgIFZ1ZS5jb21wb25lbnQoY29tcG9uZW50TmFtZSxQYXJhbWV0ZXJDb25maWd1cmF0aW9uKQ0KICAgICAgICB9ZWxzZSBpZih2YWwgPT09IDEpew0KDQogICAgICAgICAgVnVlLmNvbXBvbmVudChjb21wb25lbnROYW1lLEZsb3dDaGFydENvbXBvbmVudCkNCiAgICAgICAgfWVsc2UgaWYodmFsID09PSAyKXsNCiAgICAgICAgICBWdWUuY29tcG9uZW50KGNvbXBvbmVudE5hbWUsRmxvd1N1Y2Nlc3MpDQogICAgICAgIH0NCiAgICAgIH0NCg0KICAgICAgdGhpcy5jdXJyZW50Q29tcG9uZW50ID0gY29tcG9uZW50TmFtZQ0KDQoNCiAgICB9DQogIH0sDQogIG1ldGhvZHM6ew0KICAgIC4uLm1hcE11dGF0aW9ucyhbJ2N1cnJlbnRDaGFuZ2UnXSksDQogICAgZ2V0TW9kdWxlSW5mbyAoaWQpIHsNCiAgICAgIHRoaXMuJG5ldHdvcmsucG9zdCgnL3AvY3MvbW9kdWxlL2xvYWQnLCB7aWQ6aWR9KS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgaWYocmVzLmRhdGEucmVzdWx0Q29kZSA9PT0gMCl7DQogICAgICAgICAgcmVzLmRhdGEuZGF0YS5idXNpbmVzc1R5cGUgPSBbew0KICAgICAgICAgICAgSUQ6cmVzLmRhdGEuZGF0YS5idXNpbmVzc1R5cGUsDQogICAgICAgICAgICBMYWJlbDpyZXMuZGF0YS5kYXRhLmJ1c2luZXNzVHlwZU5hbWUsDQogICAgICAgICAgICB2YWw6cmVzLmRhdGEuZGF0YS5idXNpbmVzc1R5cGVUZXh0DQogICAgICAgICAgfV0NCg0KICAgICAgICAgIHJlcy5kYXRhLmRhdGEuYnVzaW5lc3NOdW1iZXIgPSBbew0KICAgICAgICAgICAgSUQ6U3RyaW5nKHJlcy5kYXRhLmRhdGEuYnVzaW5lc3NLZXlJZCksDQogICAgICAgICAgICBMYWJlbDpyZXMuZGF0YS5kYXRhLmJ1c2luZXNzS2V5LA0KICAgICAgICAgICAgdmFsOnJlcy5kYXRhLmRhdGEuYnVzaW5lc3NLZXlOYW1lDQogICAgICAgICAgfV0NCiAgICAgICAgICB0aGlzLmRhdGEgPSByZXMuZGF0YS5kYXRhDQogICAgICAgICAgdGhpcy5kYXRhLmd1aVN0eWxlID0gSlNPTi5wYXJzZShyZXMuZGF0YS5kYXRhLmd1aVN0eWxlKQ0KICAgICAgICAgIHRoaXMuZGF0YS5tb2R1bGVJZCA9IHJlcy5kYXRhLmRhdGEuaWQNCg0KICAgICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHsNCiAgICAgICAgICAgIGlmKHRoaXMucmVhZE9ubHkpew0KICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRTdGVwcyA9IDINCiAgICAgICAgICAgICAgdGhpcy5ub0ZyZXNoRmxhZyA9IGZhbHNlDQogICAgICAgICAgICB9ZWxzZXsNCiAgICAgICAgICAgICAgdGhpcy4kcmVmcy5jb21wb25lbnRfMS5pbml0KCkNCiAgICAgICAgICAgICAgdGhpcy5ub0ZyZXNoRmxhZyA9IGZhbHNlDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICB9KQ0KICAgICAgICB9DQogICAgICB9KTsNCiAgICB9LA0KICAgIGFzeW5jIG5leHRTdGVwcyAoKSB7ICAvL+S4i+S4gOatpQ0KICAgICAgaWYoYXdhaXQgdGhpcy5jaGVja01vZHVsZU5hbWUoKSl7DQogICAgICAgIHJldHVybiBmYWxzZQ0KICAgICAgfQ0KDQogICAgICBpZih0aGlzLmN1cnJlbnRTdGVwcyA9PT0gMCAmJiAodGhpcy5kZWZhdWx0TW9kdWxlVHlwZSAhPSB0aGlzLmRhdGEubW9kdWxlVHlwZSkgJiYgdGhpcy5kZWZhdWx0TW9kdWxlVHlwZSAhPT0gbnVsbCl7DQogICAgICAgIHRoaXMuJE1vZGFsLmZjV2FybmluZyh7DQogICAgICAgICAgdGl0bGU6J+itpuWRiicsDQogICAgICAgICAgY29udGVudDon5oKo5bey5L+u5pS55qih5p2/57G75Z6LL+WNleaNruexu+Wei++8jOi/meWwhuWvvOiHtOS4i+S4gOatpeeahOa1geeoi+iuvuiuoeWZqOWGheaJgOacieiuvue9ruaBouWkjeWIneWni+WMlu+8jOaYr+WQpuehruWumuabtOaUuT8nLA0KICAgICAgICAgIHNob3dDYW5jZWw6IHRydWUsDQogICAgICAgICAgbWFzazogdHJ1ZSwNCiAgICAgICAgICBvbk9rOiAoKSA9PiB7DQogICAgICAgICAgICB0aGlzLmRlZmF1bHRNb2R1bGVUeXBlID0gdGhpcy5kYXRhLm1vZHVsZVR5cGUNCiAgICAgICAgICAgIHRoaXMuZGF0YSA9IE9iamVjdC5hc3NpZ24odGhpcy5kYXRhLEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5kZWZhdWx0RGF0YSkpKQ0KICAgICAgICAgICAgaWYodGhpcy5kYXRhLmJ1c2luZXNzVHlwZSAmJiB0aGlzLmRhdGEuYnVzaW5lc3NUeXBlLmxlbmd0aCA+IDAgJiYgdGhpcy5kYXRhLm5hbWUpew0KICAgICAgICAgICAgICB0aGlzLmRlZmF1bHRNb2R1bGVUeXBlID0gdGhpcy5kYXRhLm1vZHVsZVR5cGUNCiAgICAgICAgICAgICAgKyt0aGlzLmN1cnJlbnRTdGVwcw0KICAgICAgICAgICAgfWVsc2V7DQogICAgICAgICAgICAgIHRoaXMuJE1vZGFsLmZjV2FybmluZyh7DQogICAgICAgICAgICAgICAgdGl0bGU6J+itpuWRiicsDQogICAgICAgICAgICAgICAgY29udGVudDon6K+35aGr5YaZ5b+F5aGr6aG5IScsDQogICAgICAgICAgICAgICAgbWFzazp0cnVlDQogICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQogICAgICAgICAgfSwNCiAgICAgICAgICBvbkNhbmNlbDogKCkgPT4gew0KICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgICAgcmV0dXJuDQogICAgICB9DQoNCg0KICAgICAgaWYoIHRoaXMuZGF0YS5uYW1lICYmICh0aGlzLmRhdGEubW9kdWxlVHlwZSA9PT0gMD8odGhpcy5kYXRhLmJ1c2luZXNzVHlwZSAmJiB0aGlzLmRhdGEuYnVzaW5lc3NUeXBlLmxlbmd0aCA+IDApOnRydWUpICl7DQogICAgICAgIHRoaXMuZGVmYXVsdE1vZHVsZVR5cGUgPSB0aGlzLmRhdGEubW9kdWxlVHlwZQ0KICAgICAgICArK3RoaXMuY3VycmVudFN0ZXBzDQogICAgICB9ZWxzZXsNCiAgICAgICAgdGhpcy4kTW9kYWwuZmNXYXJuaW5nKHsNCiAgICAgICAgICB0aXRsZTon6K2m5ZGKJywNCiAgICAgICAgICBjb250ZW50Oifor7floavlhpnlv4XloavpobkhJywNCiAgICAgICAgICBtYXNrOnRydWUNCiAgICAgICAgfSkNCiAgICAgIH0NCg0KDQoNCiAgICB9LA0KICAgIGFzeW5jIGNoZWNrTW9kdWxlTmFtZSAoKSB7DQogICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgIGxldCBqc29uT2JqZWN0ID0gew0KICAgICAgICAgIElEOnRoaXMuZGF0YS5tb2R1bGVJZCwNCiAgICAgICAgICBOQU1FOnRoaXMuZGF0YS5uYW1lDQogICAgICAgIH0NCiAgICAgICAgdGhpcy4kbmV0d29yay5wb3N0KCcvcC9jcy9tb2R1bGUvZHVwbGljYXRlJyxqc29uT2JqZWN0KS50aGVuKHJlcyA9PiB7DQogICAgICAgICAgICBpZihyZXMuZGF0YS5yZXN1bHRDb2RlICE9PSAwKXsNCiAgICAgICAgICAgICAgdGhpcy4kTW9kYWwuZmNXYXJuaW5nKHsNCiAgICAgICAgICAgICAgICB0aXRsZTon6K2m5ZGKJywNCiAgICAgICAgICAgICAgICBjb250ZW50OnJlcy5kYXRhLnJlc3VsdE1zZywNCiAgICAgICAgICAgICAgICBtYXNrOnRydWUNCiAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgcmVqZWN0KCkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgcmVzb2x2ZShyZXMpDQogICAgICAgIH0pDQogICAgICB9KQ0KICAgIH0sDQogICAgcHJldmlvdXNTdGVwcyAoKSB7ICAvL+S4iuS4gOatpQ0KICAgICAgLS10aGlzLmN1cnJlbnRTdGVwcw0KICAgIH0sDQogICAgYXN5bmMgY29uZmlybSAoZmxhZykgeyAgLy/noa7lrpoNCg0KICAgICAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLHJlamVjdCkgPT4gew0KDQogICAgICAgIHZhciBzdmcgPSB0aGlzLmRhdGEubXlEaXNwbGF5Lm1ha2VJbWFnZSh7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZTogMg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOw0KICAgICAgICB0aGlzLmltZ0Jhc2UgPSBzdmcuZ2V0QXR0cmlidXRlKCdzcmMnKQ0KDQogICAgICAgIGxldCBub2RlTXNnID0gW10NCiAgICAgICAgT2JqZWN0LmtleXModGhpcy5kYXRhLm5vZGVNc2cpLm1hcChpdGVtID0+IHsNCiAgICAgICAgICBub2RlTXNnLnB1c2godGhpcy5kYXRhLm5vZGVNc2dbaXRlbV0pDQogICAgICAgICAgcmV0dXJuIGl0ZW0NCiAgICAgICAgfSkNCg0KICAgICAgICBsZXQgcGF0aE1zZyA9IFtdDQogICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZGF0YS5wYXRoTXNnKS5tYXAoaXRlbSA9PiB7DQogICAgICAgICAgcGF0aE1zZy5wdXNoKHRoaXMuZGF0YS5wYXRoTXNnW2l0ZW1dKQ0KICAgICAgICAgIHJldHVybiBpdGVtDQogICAgICAgIH0pDQogICAgICAgIGxldCBqc29uT2JqZWN0ID0gew0KICAgICAgICAgIGlkOnRoaXMuZGF0YS5tb2R1bGVJZCwNCiAgICAgICAgICBuYW1lOnRoaXMuZGF0YS5uYW1lLA0KICAgICAgICAgIGRlc2NyaXB0aW9uOnRoaXMuZGF0YS5kZXNjcmlwdGlvbiwNCiAgICAgICAgICBHVUlfU1RZTEU6dGhpcy5kYXRhLmd1aVN0eWxlLA0KICAgICAgICAgIHVybDpzdmcuZ2V0QXR0cmlidXRlKCdzcmMnKSwNCiAgICAgICAgICBtb2R1bGVUeXBlOiB0aGlzLmRhdGEubW9kdWxlVHlwZSwNCiAgICAgICAgICBCVVNJTkVTU19UWVBFOnRoaXMuZGF0YS5idXNpbmVzc1R5cGU/dGhpcy5kYXRhLmJ1c2luZXNzVHlwZVswXS5JRDpudWxsLA0KICAgICAgICAgIEJVU0lORVNTX1RZUEVfTkFNRTp0aGlzLmRhdGEuYnVzaW5lc3NUeXBlP3RoaXMuZGF0YS5idXNpbmVzc1R5cGVbMF0uTGFiZWw6bnVsbCwNCiAgICAgICAgICBidXNpbmVzc1R5cGVUZXh0OnRoaXMuZGF0YS5idXNpbmVzc1R5cGU/dGhpcy5kYXRhLmJ1c2luZXNzVHlwZVswXS52YWw6bnVsbCwNCiAgICAgICAgICBidXNpbmVzc0tleUlkOih0aGlzLmRhdGEuYnVzaW5lc3NOdW1iZXIgJiYgdGhpcy5kYXRhLmJ1c2luZXNzTnVtYmVyLmxlbmd0aCA+IDApP3RoaXMuZGF0YS5idXNpbmVzc051bWJlclswXS5JRDpudWxsLA0KICAgICAgICAgIGJ1c2luZXNzS2V5Oih0aGlzLmRhdGEuYnVzaW5lc3NOdW1iZXIgJiYgdGhpcy5kYXRhLmJ1c2luZXNzTnVtYmVyLmxlbmd0aCA+IDApP3RoaXMuZGF0YS5idXNpbmVzc051bWJlclswXS5MYWJlbDpudWxsLA0KICAgICAgICAgIGJ1c2luZXNzS2V5TmFtZToodGhpcy5kYXRhLmJ1c2luZXNzTnVtYmVyICYmIHRoaXMuZGF0YS5idXNpbmVzc051bWJlci5sZW5ndGggPiAwKT90aGlzLmRhdGEuYnVzaW5lc3NOdW1iZXJbMF0udmFsOm51bGwsDQogICAgICAgICAgYXV0b0Nsb3NlOnRoaXMuZGF0YS5hdXRvQ2xvc2UsDQogICAgICAgICAgYnVzaW5lc3NDaGVja1VybDp0aGlzLmRhdGEuYnVzaW5lc3NDaGVja1VybCwNCiAgICAgICAgICBub2RlTXNnOiBub2RlTXNnLA0KICAgICAgICAgIHBhdGhNc2c6IHBhdGhNc2csDQogICAgICAgICAgcmVtb3ZlTm9kZTogdGhpcy5kYXRhLnJlbW92ZU5vZGUsDQogICAgICAgICAgcmVtb3ZlUGF0aDogdGhpcy5kYXRhLnJlbW92ZVBhdGgNCiAgICAgICAgfQ0KICAgICAgICB0aGlzLiRuZXR3b3JrLnBvc3QoJy9wL2NzL21vZHVsZS9jb21taXQnLGpzb25PYmplY3QpLnRoZW4ocmVzID0+IHsNCiAgICAgICAgICAgIGlmKHJlcy5kYXRhLnJlc3VsdENvZGUgPT09IDApew0KICAgICAgICAgICAgICAvLyB0aGlzLmRhdGEgPSB7DQogICAgICAgICAgICAgIC8vICAgZ3VpU3R5bGU6ew0KICAgICAgICAgICAgICAvLyAgICAgImNsYXNzIjogImdvLkdyYXBoTGlua3NNb2RlbCIsDQogICAgICAgICAgICAgIC8vICAgICAibGlua0Zyb21Qb3J0SWRQcm9wZXJ0eSI6ICJmcm9tUG9ydCIsDQogICAgICAgICAgICAgIC8vICAgICAibGlua1RvUG9ydElkUHJvcGVydHkiOiAidG9Qb3J0IiwNCiAgICAgICAgICAgICAgLy8gICAgICJub2RlRGF0YUFycmF5IjogW10sDQogICAgICAgICAgICAgIC8vICAgICAibGlua0RhdGFBcnJheSI6IFtdDQogICAgICAgICAgICAgIC8vICAgfQ0KICAgICAgICAgICAgICAvLyB9DQogICAgICAgICAgICAgIGlmKCFmbGFnKXsNCiAgICAgICAgICAgICAgICB3aW5kb3cuZmxhZyA9IHRydWUNCiAgICAgICAgICAgICAgICB0aGlzLiRyb3V0ZXIucHVzaCgnL1RlbXBsYXRlTWFuYWdlbWVudExpc3RzJykNCiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRDaGFuZ2Uoew0KICAgICAgICAgICAgICAgICAgcGF0aDonL1RlbXBsYXRlTWFuYWdlbWVudExpc3RzJw0KICAgICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgcmVzb2x2ZShyZXMpDQogICAgICAgICAgICB9DQoNCiAgICAgICAgfSkNCiAgICAgIH0pDQoNCg0KICAgIH0sDQogICAgYXN5bmMgZm9ybWF0R3VpU3R5bGUgKCkgeyAgLy9mb3JtYXTmlbTkuKrmtYHnqIvlm74NCiAgICAgIGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7DQogICAgICAgIGxldCBzdGFydE5vZGUgPSB7fSAgLy/ojrflj5blvIDlp4voioLngrkNCiAgICAgICAgdGhpcy5kYXRhLmd1aVN0eWxlLm5vZGVEYXRhQXJyYXkubWFwKGl0ZW0gPT4gew0KICAgICAgICAgIGlmKGl0ZW0ua2V5ID09PSAtMSl7DQogICAgICAgICAgICBzdGFydE5vZGUgPSBpdGVtDQogICAgICAgICAgfQ0KICAgICAgICB9KQ0KDQogICAgICAgIGxldCBzdGFydGxpbmsgPSB7fQ0KICAgICAgICAvL+iOt+WPluesrOS4gOaguee6v+eahOaVsOaNrg0KICAgICAgICB0aGlzLmRhdGEuZ3VpU3R5bGUubGlua0RhdGFBcnJheS5tYXAoaXRlbSA9PiB7DQogICAgICAgICAgaWYoaXRlbS5mcm9tID09PSAtMSl7DQogICAgICAgICAgICBzdGFydGxpbmsgPSBpdGVtDQogICAgICAgICAgfQ0KICAgICAgICB9KQ0KDQogICAgICAgIC8v6I635Y+W6L+e57q/55qE5q2j56Gu5o6S5bqPDQogICAgICAgIGxldCBsaW5rTWFwID0gW10NCiAgICAgICAgbmV3IEFycmF5KHRoaXMuZGF0YS5ndWlTdHlsZS5saW5rRGF0YUFycmF5Lmxlbmd0aCkuZmlsbChudWxsKS5tYXAoKCkgPT4gew0KICAgICAgICAgIHRoaXMuZGF0YS5ndWlTdHlsZS5saW5rRGF0YUFycmF5Lm1hcChpdGVtID0+IHsNCiAgICAgICAgICAgIGlmKGxpbmtNYXAubGVuZ3RoID09PSAwICYmIGl0ZW0uZnJvbSA9PT0gLTEpew0KICAgICAgICAgICAgICBsaW5rTWFwLnB1c2goaXRlbSkNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmKGxpbmtNYXAubGVuZ3RoID4gMCAmJiBpdGVtLmZyb20gPT09IGxpbmtNYXBbbGlua01hcC5sZW5ndGgtMV0udG8pew0KICAgICAgICAgICAgICBsaW5rTWFwLnB1c2goaXRlbSkNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9KQ0KICAgICAgICB9KQ0KICAgICAgICB0aGlzLmRhdGEuZ3VpU3R5bGUubGlua0RhdGFBcnJheSA9IGxpbmtNYXANCg0KDQogICAgICAgIC8v6I635Y+W6IqC54K555qE5q2j56Gu6aG65bqPDQogICAgICAgIC8vIGxldCBub2RlTWFwID0gW3N0YXJ0Tm9kZV0NCiAgICAgICAgdGhpcy5kYXRhLmd1aVN0eWxlLm5vZGVEYXRhQXJyYXkgPSB0aGlzLmRhdGEuZ3VpU3R5bGUubGlua0RhdGFBcnJheS5yZWR1Y2UoKHN1bSxpdGVtKSA9PiB7DQogICAgICAgICAgc3VtLnB1c2godGhpcy5kYXRhLkRpYWdyYW0ubW9kZWwuZmluZE5vZGVEYXRhRm9yS2V5KGl0ZW0udG8pKQ0KICAgICAgICAgIHJldHVybiBzdW0NCiAgICAgICAgfSxbc3RhcnROb2RlXSkNCg0KDQogICAgICAgIC8v5bCG5omA5pyJ6IqC54K555qEeOi9tOS4juW8gOWni+iKgueCueWvuem9kA0KICAgICAgICB0aGlzLmRhdGEuZ3VpU3R5bGUubm9kZURhdGFBcnJheS5tYXAoKGl0ZW0saW5kZXgpID0+IHsNCiAgICAgICAgICBsZXQgbG9jID0gaXRlbS5sb2Muc3BsaXQoJyAnKQ0KICAgICAgICAgIGxvY1swXSA9IHN0YXJ0Tm9kZS5sb2Muc3BsaXQoJyAnKVswXQ0KICAgICAgICAgIGxvY1sxXSA9IE51bWJlcihzdGFydE5vZGUubG9jLnNwbGl0KCcgJylbMV0pICsgaW5kZXgqODANCiAgICAgICAgICBpdGVtLmxvYyA9IGxvYy5qb2luKCcgJykNCiAgICAgICAgfSkNCg0KICAgICAgICAvL+WwhuaJgOaciei/nue6v+eahHjovbTkuI7lvIDlp4voioLngrnlr7npvZANCiAgICAgICAgdGhpcy5kYXRhLmd1aVN0eWxlLmxpbmtEYXRhQXJyYXkubWFwKChpdGVtLGluZGV4KSA9PiB7DQogICAgICAgICAgaXRlbS5wb2ludHMuai5tYXAodGVtcCA9PiB7DQogICAgICAgICAgICB0ZW1wLkYgPSBzdGFydGxpbmsucG9pbnRzLmpbMF0uRg0KICAgICAgICAgIH0pDQoNCiAgICAgICAgICBpdGVtLnBvaW50cy5qLm1hcCgodGVtcCxqKSA9PiB7DQogICAgICAgICAgICBpZihpbmRleCA9PT0gMCl7DQogICAgICAgICAgICAgIGlmKGogIT09IGl0ZW0ucG9pbnRzLmoubGVuZ3RoLTEpew0KICAgICAgICAgICAgICAgIHRlbXAuRyA9IE51bWJlcih0aGlzLmRhdGEuZ3VpU3R5bGUubm9kZURhdGFBcnJheVtpbmRleF0ubG9jLnNwbGl0KCcgJylbMV0pKzIwDQogICAgICAgICAgICAgIH1lbHNlew0KICAgICAgICAgICAgICAgIHRlbXAuRyA9IE51bWJlcih0aGlzLmRhdGEuZ3VpU3R5bGUubm9kZURhdGFBcnJheVtpbmRleCsxXS5sb2Muc3BsaXQoJyAnKVsxXSktMjANCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfWVsc2UgaWYoaW5kZXggPT09IHRoaXMuZGF0YS5ndWlTdHlsZS5saW5rRGF0YUFycmF5Lmxlbmd0aCAtIDEpew0KICAgICAgICAgICAgICBpZihqICE9PSBpdGVtLnBvaW50cy5qLmxlbmd0aC0xKXsNCiAgICAgICAgICAgICAgICB0ZW1wLkcgPSBOdW1iZXIodGhpcy5kYXRhLmd1aVN0eWxlLm5vZGVEYXRhQXJyYXlbaW5kZXhdLmxvYy5zcGxpdCgnICcpWzFdKSsyMA0KICAgICAgICAgICAgICB9ZWxzZXsNCiAgICAgICAgICAgICAgICB0ZW1wLkcgPSBOdW1iZXIodGhpcy5kYXRhLmd1aVN0eWxlLm5vZGVEYXRhQXJyYXlbaW5kZXgrMV0ubG9jLnNwbGl0KCcgJylbMV0pLTIwDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH1lbHNlew0KICAgICAgICAgICAgICBpZihqICE9PSBpdGVtLnBvaW50cy5qLmxlbmd0aC0xKXsNCiAgICAgICAgICAgICAgICB0ZW1wLkcgPSBOdW1iZXIodGhpcy5kYXRhLmd1aVN0eWxlLm5vZGVEYXRhQXJyYXlbaW5kZXhdLmxvYy5zcGxpdCgnICcpWzFdKSsyMA0KICAgICAgICAgICAgICB9ZWxzZXsNCiAgICAgICAgICAgICAgICB0ZW1wLkcgPSBOdW1iZXIodGhpcy5kYXRhLmd1aVN0eWxlLm5vZGVEYXRhQXJyYXlbaW5kZXgrMV0ubG9jLnNwbGl0KCcgJylbMV0pLTIwDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgIH0pDQogICAgICAgIH0pDQoNCiAgICAgICAgdGhpcy5kYXRhLkRpYWdyYW0ubW9kZWwgPSBnby5Nb2RlbC5mcm9tSnNvbih0aGlzLmRhdGEuZ3VpU3R5bGUpDQoNCiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7DQogICAgICAgICAgcmVzb2x2ZSgpDQogICAgICAgIH0sMTAwKQ0KICAgICAgfSkNCiAgICB9LA0KICAgIGRhdGFDaGFuZ2UgKGRhdGEpIHsgIC8v5q+P5LiA5q2l5Lit55qE5pWw5o2u5Y+Y5YyWDQogICAgICB0aGlzLmRhdGEgPSBPYmplY3QuYXNzaWduKHRoaXMuZGF0YSxkYXRhKQ0KICAgIH0sDQogICAgY2xvc2UgKCkgew0KICAgICAgdGhpcy4kcm91dGVyLnB1c2goJy9UZW1wbGF0ZU1hbmFnZW1lbnRMaXN0cycpDQogICAgICB0aGlzLmN1cnJlbnRDaGFuZ2Uoew0KICAgICAgICBwYXRoOicvVGVtcGxhdGVNYW5hZ2VtZW50TGlzdHMnDQogICAgICB9KTsNCiAgICB9LA0KICAgIGNvbmZpcm1BbmRQdWJsaXNoICgpIHsgIC8v5L+d5a2Y5bm25Y+R5biDDQogICAgICB0aGlzLmNvbmZpcm0odHJ1ZSkudGhlbihyZXMgPT4gew0KICAgICAgICB0aGlzLiRuZXR3b3JrLnBvc3QoJy9wL2NzL21vZHVsZS9wdWJsaXNoJywge2lkOnJlcy5kYXRhLmRhdGEuaWR9KS50aGVuKChyZXNwb25zZSkgPT4gew0KICAgICAgICAgIGlmKHJlc3BvbnNlLmRhdGEucmVzdWx0Q29kZSA9PT0gMCl7DQogICAgICAgICAgICB0aGlzLiRyb3V0ZXIucHVzaCgnL1RlbXBsYXRlTWFuYWdlbWVudExpc3RzJykNCiAgICAgICAgICAgIHRoaXMuY3VycmVudENoYW5nZSh7DQogICAgICAgICAgICAgIHBhdGg6Jy9UZW1wbGF0ZU1hbmFnZW1lbnRMaXN0cycNCiAgICAgICAgICAgIH0pOw0KICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgIH0pDQogICAgfQ0KICB9LA0KICBjcmVhdGVkICgpIHsNCiAgICBWdWUuY29tcG9uZW50KGBjb21wb25lbnRfJHt0aGlzLmN1cnJlbnRTdGVwc31gLFZ1ZS5leHRlbmQoT2JqZWN0LmFzc2lnbih7aXNLZWVwQWxpdmVNb2RlbDp0cnVlfSxQYXJhbWV0ZXJDb25maWd1cmF0aW9uKSkpDQogICAgdGhpcy5jdXJyZW50Q29tcG9uZW50ID0gYGNvbXBvbmVudF8ke3RoaXMuY3VycmVudFN0ZXBzfWANCiAgICBpZih0aGlzLiRyb3V0ZS5wYXJhbXMuZmxhZyA9PT0gJzEnKXsNCiAgICAgIHRoaXMucmVhZE9ubHkgPSB0cnVlDQogICAgICB0aGlzLm5vRnJlc2hGbGFnID0gdHJ1ZQ0KICAgICAgdGhpcy5nZXRNb2R1bGVJbmZvKHRoaXMuJHJvdXRlLnBhcmFtcy5pZCkNCiAgICAgIHJldHVybg0KICAgIH0NCiAgICBpZih0aGlzLiRyb3V0ZS5wYXJhbXMuaWQgPT09ICctMScpeyAgLy/mlrDlop4NCg0KICAgIH1lbHNleyAgLy/nvJbovpENCiAgICAgIHRoaXMubm9GcmVzaEZsYWcgPSB0cnVlDQogICAgICB0aGlzLmN1cnJlbnRTdGVwcyA9IDENCiAgICAgIHRoaXMuZ2V0TW9kdWxlSW5mbyh0aGlzLiRyb3V0ZS5wYXJhbXMuaWQpDQogICAgfQ0KICB9LA0KICBiZWZvcmVEZXN0cm95ICgpIHsNCg0KICB9DQp9DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2EA;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;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;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;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;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;;AAEA;AACA;;AAEA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA","file":"index.vue","sourceRoot":"src/views/activiti/TemplateManagementNew","sourcesContent":["<template>\r\n <div class=\"TemplateManagementNew\">\r\n <Breadcrumb separator=\">\" class=\"breadcrumb\">\r\n <BreadcrumbItem to=\"/TemplateManagementLists\">模版管理</BreadcrumbItem>\r\n <BreadcrumbItem>{{$route.params.id != '-1'?'编辑模版':'新建模版'}}</BreadcrumbItem>\r\n\r\n </Breadcrumb>\r\n\r\n\r\n <!-- 预览状态 -->\r\n <div class=\"content\" v-if=\"this.readOnly\">\r\n <div class=\"tips\" v-if=\"currentSteps === 2\">\r\n <p>\r\n <span>单据类型:</span><span>{{data.businessTypeText}}</span>\r\n </p>\r\n <p>\r\n <span>模版名称:</span><span>{{data.name}}</span>\r\n </p>\r\n <p>\r\n <span>查询索引:</span><span>{{data.businessKey}}</span>\r\n </p>\r\n <p>\r\n <span>模版描述:</span><span>{{data.description}}</span>\r\n </p>\r\n <p>\r\n <span>自动处理:</span><span>{{data.autoClose?'开':'关'}}</span>\r\n </p>\r\n <p>\r\n <span>业务数据检查:</span><span>{{data.businessCheckUrl}}</span>\r\n </p>\r\n </div>\r\n <FlowChartComponent\r\n v-if=\"currentSteps === 2\"\r\n :data=\"data\"\r\n :currentSteps=\"2\"\r\n :readOnly=\"readOnly\"\r\n ref=\"component_2\"\r\n >\r\n </FlowChartComponent>\r\n <p class=\"buttonGroups\" v-if=\"currentSteps === 2\">\r\n <Button type=\"primary\" @click=\"close\">关闭</Button>\r\n </p>\r\n </div>\r\n\r\n <!-- 编辑状态 -->\r\n <Steps :current=\"currentSteps\" class=\"steps\" v-if=\"!this.readOnly\">\r\n <Step title=\"参数配置\" ></Step>\r\n <Step title=\"流程设计器\" ></Step>\r\n <Step title=\"保存发布模版\" ></Step>\r\n </Steps>\r\n\r\n <div class=\"content\" v-if=\"!this.readOnly\">\r\n <keep-alive exclude=\"component_2\" >\r\n <component\r\n :is=\"currentComponent\"\r\n :ref=\"currentComponent\"\r\n class=\"block\"\r\n :editable=\"currentSteps === 1?true:false\"\r\n :data=\"data\"\r\n :currentSteps=\"currentSteps\"\r\n :noFreshFlag=\"noFreshFlag\"\r\n @dataChange=dataChange\r\n >\r\n </component>\r\n </keep-alive>\r\n <p class=\"buttonGroups\">\r\n <Button type=\"primary\" v-if=\"currentSteps > 0\" @click=\"previousSteps\">上一步</Button>\r\n <Button type=\"primary\" v-if=\"currentSteps < 2\" @click=\"nextSteps\">下一步</Button>\r\n <Button type=\"primary\" v-if=\"(currentSteps === 2 && this.data.status !== 1)\" @click=\"confirm(false)\">保存</Button>\r\n <Button type=\"primary\" v-if=\"(currentSteps === 2 && this.data.status !== 1)\" @click=\"confirmAndPublish()\">保存并发布</Button>\r\n </p>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\n// import '../__utils__/go'\r\nimport Vue from 'vue'\r\nimport ParameterConfiguration from '@/components/ParameterConfiguration'\r\nimport FlowChartComponent from '@/components/FlowChartComponent'\r\nimport FlowSuccess from '@/components/FlowSuccess'\r\nimport { mapMutations } from 'vuex';\r\nimport { setTimeout } from 'timers';\r\nexport default {\r\n name:'TemplateManagementNew',\r\n components:{ParameterConfiguration,FlowChartComponent,FlowSuccess},\r\n data () {\r\n return {\r\n currentSteps:0,\r\n currentComponent:null,\r\n imgBase:'',\r\n defaultData:{\r\n guiStyle:JSON.stringify({\r\n \"class\": \"NewGraphLinksModel\",\r\n \"linkFromPortIdProperty\": \"fromPort\",\r\n \"linkToPortIdProperty\": \"toPort\",\r\n \"nodeDataArray\": [\r\n {\"key\":-1, \"category\":\"Start\", \"loc\":\"175 0\", \"text\":\"开始\", \"type\": 1},\r\n {\"key\":0, \"loc\":\"175 100\", \"text\":\"审批节点\",\"type\": 0, \"category\": 'Approval'},\r\n {\"key\":-2, \"category\":\"End\", \"loc\":\"175 200\", \"text\":\"结束\", \"type\": 2}\r\n ],\r\n \"linkDataArray\": [\r\n {\"from\":-1, \"to\":0, \"fromPort\":\"B\", \"toPort\":\"T\",\"key\":0},\r\n {\"from\":0, \"to\":-2, \"fromPort\":\"B\", \"toPort\":\"T\",\"key\":1}\r\n ]\r\n }),\r\n nodeMsg:[\r\n {\"key\":-1, \"category\":\"Start\", \"loc\":\"175 0\", \"text\":\"开始\", \"name\":\"开始\", \"type\": 1,\"ruleList\":[]},\r\n {\"key\":0, \"loc\":\"175 100\", \"text\":\"审批节点\", \"name\":\"审批节点\", \"category\": 'Approval',\"type\": 0,\"ruleList\":[],\"actServiceS\":[],\"actionConfig\":[],\"approvelList\":[],\"approverStyle\":0},\r\n {\"key\":-2, \"category\":\"End\", \"loc\":\"175 200\", \"text\":\"结束\", \"name\":\"结束\", \"type\": 2,\"actionConfig\":[{\r\n handleValue:null,\r\n extra_msg:{},\r\n handleType:31\r\n },\r\n {\r\n handleValue:'{}',\r\n extra_msg:{},\r\n handleType:41\r\n }]}\r\n ],\r\n pathMsg:[\r\n {\"from\":-1, \"to\":0, \"fromPort\":\"B\", \"toPort\":\"T\",\"ruleList\":[],\"key\":0},\r\n {\"from\":0, \"to\":-2, \"fromPort\":\"B\", \"toPort\":\"T\",\"ruleList\":[],\"key\":1}\r\n ],\r\n removeNode:[],\r\n removePath:[],\r\n },\r\n data:{\r\n guiStyle:JSON.stringify({\r\n \"class\": \"NewGraphLinksModel\",\r\n \"linkFromPortIdProperty\": \"fromPort\",\r\n \"linkToPortIdProperty\": \"toPort\",\r\n \"nodeDataArray\": [\r\n {\"key\":-1, \"category\":\"Start\", \"loc\":\"175 0\", \"text\":\"开始\", \"type\": 1},\r\n {\"key\":0, \"loc\":\"175 100\", \"text\":\"审批节点\",\"type\": 0, \"category\": 'Approval'},\r\n {\"key\":-2, \"category\":\"End\", \"loc\":\"175 200\", \"text\":\"结束\", \"type\": 2}\r\n ],\r\n \"linkDataArray\": [\r\n {\"from\":-1, \"to\":0, \"fromPort\":\"B\", \"toPort\":\"T\",\"key\":0},\r\n {\"from\":0, \"to\":-2, \"fromPort\":\"B\", \"toPort\":\"T\",\"key\":1}\r\n ]\r\n }),\r\n nodeMsg:[\r\n {\"key\":-1, \"category\":\"Start\", \"loc\":\"175 0\", \"text\":\"开始\", \"name\":\"开始\", \"type\": 1,\"ruleList\":[]},\r\n {\"key\":0, \"loc\":\"175 100\", \"text\":\"审批节点\", \"name\":\"审批节点\", \"category\": 'Approval',\"type\": 0,\"ruleList\":[],\"actServiceS\":[],\"actionConfig\":[],\"approvelList\":[],\"approverStyle\":0},\r\n {\"key\":-2, \"category\":\"End\", \"loc\":\"175 200\", \"text\":\"结束\", \"name\":\"结束\", \"type\": 2,\"actionConfig\":[{\r\n handleValue:null,\r\n extra_msg:{},\r\n handleType:31\r\n },\r\n {\r\n handleValue:'{}',\r\n extra_msg:{},\r\n handleType:41\r\n }]}\r\n ],\r\n pathMsg:[\r\n {\"from\":-1, \"to\":0, \"fromPort\":\"B\", \"toPort\":\"T\",\"ruleList\":[],\"key\":0},\r\n {\"from\":0, \"to\":-2, \"fromPort\":\"B\", \"toPort\":\"T\",\"ruleList\":[],\"key\":1}\r\n ],\r\n removeNode:[],\r\n removePath:[],\r\n autoClose: true,\r\n moduleType: 0\r\n },\r\n noFreshFlag:false,\r\n\r\n readOnly:false, //是否只读为预览模式\r\n //存放三步骤的数据\r\n\r\n\r\n defaultModuleType: null, //暂存模版类型\r\n\r\n }\r\n },\r\n watch:{\r\n currentSteps (val) {\r\n if(this.readOnly){\r\n return\r\n }\r\n let componentName = `component_${val}`\r\n if(Vue.component(componentName) === undefined){\r\n if(val === 0 ){\r\n Vue.component(componentName,ParameterConfiguration)\r\n }else if(val === 1){\r\n\r\n Vue.component(componentName,FlowChartComponent)\r\n }else if(val === 2){\r\n Vue.component(componentName,FlowSuccess)\r\n }\r\n }\r\n\r\n this.currentComponent = componentName\r\n\r\n\r\n }\r\n },\r\n methods:{\r\n ...mapMutations(['currentChange']),\r\n getModuleInfo (id) {\r\n this.$network.post('/p/cs/module/load', {id:id}).then((res) => {\r\n if(res.data.resultCode === 0){\r\n res.data.data.businessType = [{\r\n ID:res.data.data.businessType,\r\n Label:res.data.data.businessTypeName,\r\n val:res.data.data.businessTypeText\r\n }]\r\n\r\n res.data.data.businessNumber = [{\r\n ID:String(res.data.data.businessKeyId),\r\n Label:res.data.data.businessKey,\r\n val:res.data.data.businessKeyName\r\n }]\r\n this.data = res.data.data\r\n this.data.guiStyle = JSON.parse(res.data.data.guiStyle)\r\n this.data.moduleId = res.data.data.id\r\n\r\n this.$nextTick(() => {\r\n if(this.readOnly){\r\n this.currentSteps = 2\r\n this.noFreshFlag = false\r\n }else{\r\n this.$refs.component_1.init()\r\n this.noFreshFlag = false\r\n }\r\n\r\n })\r\n }\r\n });\r\n },\r\n async nextSteps () { //下一步\r\n if(await this.checkModuleName()){\r\n return false\r\n }\r\n\r\n if(this.currentSteps === 0 && (this.defaultModuleType != this.data.moduleType) && this.defaultModuleType !== null){\r\n this.$Modal.fcWarning({\r\n title:'警告',\r\n content:'您已修改模板类型/单据类型,这将导致下一步的流程设计器内所有设置恢复初始化,是否确定更改?',\r\n showCancel: true,\r\n mask: true,\r\n onOk: () => {\r\n this.defaultModuleType = this.data.moduleType\r\n this.data = Object.assign(this.data,JSON.parse(JSON.stringify(this.defaultData)))\r\n if(this.data.businessType && this.data.businessType.length > 0 && this.data.name){\r\n this.defaultModuleType = this.data.moduleType\r\n ++this.currentSteps\r\n }else{\r\n this.$Modal.fcWarning({\r\n title:'警告',\r\n content:'请填写必填项!',\r\n mask:true\r\n })\r\n }\r\n },\r\n onCancel: () => {\r\n }\r\n })\r\n return\r\n }\r\n\r\n\r\n if( this.data.name && (this.data.moduleType === 0?(this.data.businessType && this.data.businessType.length > 0):true) ){\r\n this.defaultModuleType = this.data.moduleType\r\n ++this.currentSteps\r\n }else{\r\n this.$Modal.fcWarning({\r\n title:'警告',\r\n content:'请填写必填项!',\r\n mask:true\r\n })\r\n }\r\n\r\n\r\n\r\n },\r\n async checkModuleName () {\r\n await new Promise((resolve, reject) => {\r\n let jsonObject = {\r\n ID:this.data.moduleId,\r\n NAME:this.data.name\r\n }\r\n this.$network.post('/p/cs/module/duplicate',jsonObject).then(res => {\r\n if(res.data.resultCode !== 0){\r\n this.$Modal.fcWarning({\r\n title:'警告',\r\n content:res.data.resultMsg,\r\n mask:true\r\n })\r\n reject()\r\n }\r\n\r\n resolve(res)\r\n })\r\n })\r\n },\r\n previousSteps () { //上一步\r\n --this.currentSteps\r\n },\r\n async confirm (flag) { //确定\r\n\r\n return await new Promise((resolve,reject) => {\r\n\r\n var svg = this.data.myDisplay.makeImage({\r\n scale: 2\r\n });\r\n this.imgBase = svg.getAttribute('src')\r\n\r\n let nodeMsg = []\r\n Object.keys(this.data.nodeMsg).map(item => {\r\n nodeMsg.push(this.data.nodeMsg[item])\r\n return item\r\n })\r\n\r\n let pathMsg = []\r\n Object.keys(this.data.pathMsg).map(item => {\r\n pathMsg.push(this.data.pathMsg[item])\r\n return item\r\n })\r\n let jsonObject = {\r\n id:this.data.moduleId,\r\n name:this.data.name,\r\n description:this.data.description,\r\n GUI_STYLE:this.data.guiStyle,\r\n url:svg.getAttribute('src'),\r\n moduleType: this.data.moduleType,\r\n BUSINESS_TYPE:this.data.businessType?this.data.businessType[0].ID:null,\r\n BUSINESS_TYPE_NAME:this.data.businessType?this.data.businessType[0].Label:null,\r\n businessTypeText:this.data.businessType?this.data.businessType[0].val:null,\r\n businessKeyId:(this.data.businessNumber && this.data.businessNumber.length > 0)?this.data.businessNumber[0].ID:null,\r\n businessKey:(this.data.businessNumber && this.data.businessNumber.length > 0)?this.data.businessNumber[0].Label:null,\r\n businessKeyName:(this.data.businessNumber && this.data.businessNumber.length > 0)?this.data.businessNumber[0].val:null,\r\n autoClose:this.data.autoClose,\r\n businessCheckUrl:this.data.businessCheckUrl,\r\n nodeMsg: nodeMsg,\r\n pathMsg: pathMsg,\r\n removeNode: this.data.removeNode,\r\n removePath: this.data.removePath\r\n }\r\n this.$network.post('/p/cs/module/commit',jsonObject).then(res => {\r\n if(res.data.resultCode === 0){\r\n // this.data = {\r\n // guiStyle:{\r\n // \"class\": \"go.GraphLinksModel\",\r\n // \"linkFromPortIdProperty\": \"fromPort\",\r\n // \"linkToPortIdProperty\": \"toPort\",\r\n // \"nodeDataArray\": [],\r\n // \"linkDataArray\": []\r\n // }\r\n // }\r\n if(!flag){\r\n window.flag = true\r\n this.$router.push('/TemplateManagementLists')\r\n this.currentChange({\r\n path:'/TemplateManagementLists'\r\n });\r\n }\r\n\r\n resolve(res)\r\n }\r\n\r\n })\r\n })\r\n\r\n\r\n },\r\n async formatGuiStyle () { //format整个流程图\r\n await new Promise((resolve) => {\r\n let startNode = {} //获取开始节点\r\n this.data.guiStyle.nodeDataArray.map(item => {\r\n if(item.key === -1){\r\n startNode = item\r\n }\r\n })\r\n\r\n let startlink = {}\r\n //获取第一根线的数据\r\n this.data.guiStyle.linkDataArray.map(item => {\r\n if(item.from === -1){\r\n startlink = item\r\n }\r\n })\r\n\r\n //获取连线的正确排序\r\n let linkMap = []\r\n new Array(this.data.guiStyle.linkDataArray.length).fill(null).map(() => {\r\n this.data.guiStyle.linkDataArray.map(item => {\r\n if(linkMap.length === 0 && item.from === -1){\r\n linkMap.push(item)\r\n }\r\n if(linkMap.length > 0 && item.from === linkMap[linkMap.length-1].to){\r\n linkMap.push(item)\r\n }\r\n })\r\n })\r\n this.data.guiStyle.linkDataArray = linkMap\r\n\r\n\r\n //获取节点的正确顺序\r\n // let nodeMap = [startNode]\r\n this.data.guiStyle.nodeDataArray = this.data.guiStyle.linkDataArray.reduce((sum,item) => {\r\n sum.push(this.data.Diagram.model.findNodeDataForKey(item.to))\r\n return sum\r\n },[startNode])\r\n\r\n\r\n //将所有节点的x轴与开始节点对齐\r\n this.data.guiStyle.nodeDataArray.map((item,index) => {\r\n let loc = item.loc.split(' ')\r\n loc[0] = startNode.loc.split(' ')[0]\r\n loc[1] = Number(startNode.loc.split(' ')[1]) + index*80\r\n item.loc = loc.join(' ')\r\n })\r\n\r\n //将所有连线的x轴与开始节点对齐\r\n this.data.guiStyle.linkDataArray.map((item,index) => {\r\n item.points.j.map(temp => {\r\n temp.F = startlink.points.j[0].F\r\n })\r\n\r\n item.points.j.map((temp,j) => {\r\n if(index === 0){\r\n if(j !== item.points.j.length-1){\r\n temp.G = Number(this.data.guiStyle.nodeDataArray[index].loc.split(' ')[1])+20\r\n }else{\r\n temp.G = Number(this.data.guiStyle.nodeDataArray[index+1].loc.split(' ')[1])-20\r\n }\r\n }else if(index === this.data.guiStyle.linkDataArray.length - 1){\r\n if(j !== item.points.j.length-1){\r\n temp.G = Number(this.data.guiStyle.nodeDataArray[index].loc.split(' ')[1])+20\r\n }else{\r\n temp.G = Number(this.data.guiStyle.nodeDataArray[index+1].loc.split(' ')[1])-20\r\n }\r\n }else{\r\n if(j !== item.points.j.length-1){\r\n temp.G = Number(this.data.guiStyle.nodeDataArray[index].loc.split(' ')[1])+20\r\n }else{\r\n temp.G = Number(this.data.guiStyle.nodeDataArray[index+1].loc.split(' ')[1])-20\r\n }\r\n }\r\n\r\n })\r\n })\r\n\r\n this.data.Diagram.model = go.Model.fromJson(this.data.guiStyle)\r\n\r\n setTimeout(() => {\r\n resolve()\r\n },100)\r\n })\r\n },\r\n dataChange (data) { //每一步中的数据变化\r\n this.data = Object.assign(this.data,data)\r\n },\r\n close () {\r\n this.$router.push('/TemplateManagementLists')\r\n this.currentChange({\r\n path:'/TemplateManagementLists'\r\n });\r\n },\r\n confirmAndPublish () { //保存并发布\r\n this.confirm(true).then(res => {\r\n this.$network.post('/p/cs/module/publish', {id:res.data.data.id}).then((response) => {\r\n if(response.data.resultCode === 0){\r\n this.$router.push('/TemplateManagementLists')\r\n this.currentChange({\r\n path:'/TemplateManagementLists'\r\n });\r\n }\r\n })\r\n })\r\n }\r\n },\r\n created () {\r\n Vue.component(`component_${this.currentSteps}`,Vue.extend(Object.assign({isKeepAliveModel:true},ParameterConfiguration)))\r\n this.currentComponent = `component_${this.currentSteps}`\r\n if(this.$route.params.flag === '1'){\r\n this.readOnly = true\r\n this.noFreshFlag = true\r\n this.getModuleInfo(this.$route.params.id)\r\n return\r\n }\r\n if(this.$route.params.id === '-1'){ //新增\r\n\r\n }else{ //编辑\r\n this.noFreshFlag = true\r\n this.currentSteps = 1\r\n this.getModuleInfo(this.$route.params.id)\r\n }\r\n },\r\n beforeDestroy () {\r\n\r\n }\r\n}\r\n</script>\r\n<style lang=scss\" >\r\n.TemplateManagementNew{\r\n padding:16px;\r\n background: white;\r\n display: flex;\r\n flex-direction: column;\r\n\r\n .breadcrumb{\r\n margin-bottom: 30px;\r\n font-size: 18px;\r\n }\r\n\r\n .steps{\r\n width: 75%;\r\n margin-left: 12.5%;\r\n margin-bottom: 30px;\r\n }\r\n\r\n .content{\r\n flex:1;\r\n border:1px solid rgba(220,222,226,1);\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n // 预览tips\r\n .tips{\r\n width:260px;\r\n height:204px;\r\n background:rgba(236,236,236,1);\r\n padding: 16px;\r\n box-sizing: border-box;\r\n display: inline-block;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n z-index: 99;\r\n >p{\r\n font-weight:400;\r\n color:rgba(52,52,52,1);\r\n line-height:16px;\r\n margin-bottom: 12px;\r\n display: flex;\r\n\r\n >span:first-child{\r\n margin-right: 8px;\r\n white-space: nowrap;\r\n }\r\n\r\n >span:last-child{\r\n word-break: break-all;\r\n }\r\n }\r\n }\r\n\r\n .block{\r\n flex: 1;\r\n }\r\n\r\n .buttonGroups{\r\n text-align: right;\r\n padding-bottom: 16px;\r\n\r\n button{\r\n margin-right: 10px;\r\n\r\n &:last-child{\r\n margin-right:16px;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .burgeon-steps-item.burgeon-steps-status-finish .burgeon-steps-head-inner > .burgeon-steps-icon, .burgeon-steps-item.burgeon-steps-status-finish .burgeon-steps-head-inner span{\r\n color: white;\r\n }\r\n\r\n .burgeon-steps-item.burgeon-steps-status-finish .burgeon-steps-head-inner{\r\n border-color: #09A155;\r\n background: #09A155;\r\n }\r\n}\r\n</style>\r\n"]}]}
|