e9b75e650968c2fbfb957ef228a03291.json 88 KB

1
  1. {"remainingRequest":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js!E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js??ref--0-2!E:\\item\\newItem\\admin\\src\\pages\\system\\group\\visualization.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\item\\newItem\\admin\\src\\pages\\system\\group\\visualization.vue","mtime":1677828270247},{"path":"E:\\item\\newItem\\admin\\babel.config.js","mtime":1677828270071},{"path":"E:\\item\\newItem\\admin\\.babelrc","mtime":1677828270070},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js","mtime":1570440814000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9hc3luY1RvR2VuZXJhdG9yIGZyb20gIkU6L2l0ZW0vbmV3SXRlbS9hZG1pbi9ub2RlX21vZHVsZXMvQHZ1ZS9iYWJlbC1wcmVzZXQtYXBwL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9hc3luY1RvR2VuZXJhdG9yLmpzIjsKaW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiRTovaXRlbS9uZXdJdGVtL2FkbWluL25vZGVfbW9kdWxlcy9AdnVlL2JhYmVsLXByZXNldC1hcHAvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIuanMiOwppbXBvcnQgInJlZ2VuZXJhdG9yLXJ1bnRpbWUvcnVudGltZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnJlZ2V4cC5leGVjLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuc3RyaW5nLnJlcGxhY2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5mdW5jdGlvbi5uYW1lLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnN0cmluZy5saW5rLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1jb2xsZWN0aW9ucy5mb3ItZWFjaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmpzb24uc3RyaW5naWZ5LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuc3BsaWNlLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KaW1wb3J0IFdhbmdFZGl0b3IgZnJvbSAnQC9jb21wb25lbnRzL3dhbmdFZGl0b3IvaW5kZXgudnVlJzsKaW1wb3J0IFNldHRpbmcgZnJvbSAnQC9zZXR0aW5nJzsKaW1wb3J0IHsgZGl5R2V0SW5mbywgZGl5U2F2ZSwgZ2V0Q29sb3JDaGFuZ2UgfSBmcm9tICdAL2FwaS9kaXknOwppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOwppbXBvcnQgZWRpdEZyb20gZnJvbSAnQC9jb21wb25lbnRzL2Zyb20vZnJvbSc7CmltcG9ydCB7IHByb2R1Y3RHZXRUZW1wS2V5c0FwaSwgdXBsb2FkVHlwZSBhcyBfdXBsb2FkVHlwZSB9IGZyb20gJ0AvYXBpL3Byb2R1Y3QnOwppbXBvcnQgeyBncm91cEFsbEFwaSwgZ3JvdXBEYXRhTGlzdEFwaSwgZ3JvdXBTYXZlQXBpLCBvcGVuQWR2U2F2ZSwgZ3JvdXBEYXRhQWRkQXBpLCBncm91cERhdGFIZWFkZXJBcGksIGdyb3VwRGF0YUVkaXRBcGksIGdyb3VwRGF0YVNldEFwaSwgZ2V0QWdyZWVtZW50IGFzIF9nZXRBZ3JlZW1lbnQsIHNldEFncmVlbWVudCwgZ2V0T3BlbkFkdiB9IGZyb20gJ0AvYXBpL3N5c3RlbSc7CmltcG9ydCBkcmFnZ2FibGUgZnJvbSAndnVlZHJhZ2dhYmxlJzsKaW1wb3J0IHVwbG9hZFBpY3R1cmVzIGZyb20gJ0AvY29tcG9uZW50cy91cGxvYWRQaWN0dXJlcyc7CmltcG9ydCBsaW5rYWRkcmVzcyBmcm9tICdAL2NvbXBvbmVudHMvbGlua2FkZHJlc3MnOwppbXBvcnQgeyBnZXRDb29raWVzIH0gZnJvbSAnQC9saWJzL3V0aWwnOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogJ2xpc3QnLAogIGNvbXBvbmVudHM6IHsKICAgIGVkaXRGcm9tOiBlZGl0RnJvbSwKICAgIGRyYWdnYWJsZTogZHJhZ2dhYmxlLAogICAgdXBsb2FkUGljdHVyZXM6IHVwbG9hZFBpY3R1cmVzLAogICAgbGlua2FkZHJlc3M6IGxpbmthZGRyZXNzLAogICAgV2FuZ0VkaXRvcjogV2FuZ0VkaXRvcgogIH0sCiAgY29tcHV0ZWQ6IF9vYmplY3RTcHJlYWQoewogICAgYmdjb2xvcnM6IGZ1bmN0aW9uIGJnY29sb3JzKCkgewogICAgICByZXR1cm4gewogICAgICAgICctLWNvbG9yLXRoZW1lJzogdGhpcy5iZ0NvbAogICAgICB9OwogICAgfSwKICAgIGxhYmVsV2lkdGg6IGZ1bmN0aW9uIGxhYmVsV2lkdGgoKSB7CiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gdW5kZWZpbmVkIDogMTIwOwogICAgfSwKICAgIGxhYmVsUG9zaXRpb246IGZ1bmN0aW9uIGxhYmVsUG9zaXRpb24oKSB7CiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gJ3RvcCcgOiAncmlnaHQnOwogICAgfQogIH0sIG1hcFN0YXRlKCdhZG1pbi9sYXlvdXQnLCBbJ21lbnVDb2xsYXBzZSddKSksCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIGZvcm1WYWxpZGF0ZTogewogICAgICAgIGNvbnRlbnQ6ICcnCiAgICAgIH0sCiAgICAgIHJ1bGVWYWxpZGF0ZToge30sCiAgICAgIG15Q29uZmlnOiB7CiAgICAgICAgYXV0b0hlaWdodEVuYWJsZWQ6IGZhbHNlLAogICAgICAgIC8vIOe8lui+keWZqOS4jeiHquWKqOiiq+WGheWuueaSkemrmAogICAgICAgIGluaXRpYWxGcmFtZUhlaWdodDogNTAwLAogICAgICAgIC8vIOWIneWni+WuueWZqOmrmOW6pgogICAgICAgIGluaXRpYWxGcmFtZVdpZHRoOiAnMTAwJScsCiAgICAgICAgLy8g5Yid5aeL5a655Zmo5a695bqmCiAgICAgICAgVUVESVRPUl9IT01FX1VSTDogJy9hZG1pbi9VRWRpdG9yLycsCiAgICAgICAgc2VydmVyVXJsOiAnJwogICAgICB9LAogICAgICBhOiAwLAogICAgICAvL+WIpOaWreeahOmakOengeWNj+iurgogICAgICBndWlkZTogMCwKICAgICAgYmdpbWc6IDAsCiAgICAgIGNvbHVtbnMxOiBbXSwKICAgICAgYmdDb2w6ICcnLAogICAgICBuYW1lOiAncm91dGluZV9ob21lX2Jhc3RfYmFubmVyJywKICAgICAgZ3JpZDogewogICAgICAgIHhsOiA3LAogICAgICAgIGxnOiA3LAogICAgICAgIG1kOiAxMiwKICAgICAgICBzbTogMjQsCiAgICAgICAgeHM6IDI0CiAgICAgIH0sCiAgICAgIGxvYWRpbmc6IGZhbHNlLAogICAgICBzZ2luTGlzdDogW10sCiAgICAgIHByb2dyZXNzOiAwLAogICAgICAvLyDov5vluqbmnaHpu5jorqQwCiAgICAgIHN3aXBlck9wdGlvbjogewogICAgICAgIC8v5pi+56S65YiG6aG1CiAgICAgICAgcGFnaW5hdGlvbjogewogICAgICAgICAgZWw6ICcuc3dpcGVyLXBhZ2luYXRpb24nCiAgICAgICAgfSwKICAgICAgICAvL+iuvue9rueCueWHu+eureWktAogICAgICAgIG5hdmlnYXRpb246IHsKICAgICAgICAgIG5leHRFbDogJy5zd2lwZXItYnV0dG9uLW5leHQnLAogICAgICAgICAgcHJldkVsOiAnLnN3aXBlci1idXR0b24tcHJldicKICAgICAgICB9LAogICAgICAgIC8v6Ieq5Yqo6L2u5pKtCiAgICAgICAgYXV0b3BsYXk6IHsKICAgICAgICAgIGRlbGF5OiAyMDAwLAogICAgICAgICAgLy/lvZPnlKjmiLfmu5Hliqjlm77niYflkI7nu6fnu63oh6rliqjova7mkq0KICAgICAgICAgIGRpc2FibGVPbkludGVyYWN0aW9uOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgLy/lvIDlkK/lvqrnjq/mqKHlvI8KICAgICAgICBsb29wOiBmYWxzZQogICAgICB9LAogICAgICB1cmw6ICcnLAogICAgICBCYXNlVVJMOiBTZXR0aW5nLmFwaUJhc2VVUkwucmVwbGFjZSgvYWRtaW5hcGkvLCAnJyksCiAgICAgIHBhZ2VJZDogMCwKICAgICAgdGhlbWUzOiAnbGlnaHQnLAogICAgICB0YWJMaXN0OiBbXSwKICAgICAgdXBsb2FkX3R5cGU6ICcnLAogICAgICAvL+inhumikeS4iuS8oOexu+WeiyAxIOacrOWcsOS4iuS8oCAyIDMgNCBPU1PkuIrkvKAKICAgICAgdXBsb2FkRGF0YToge30sCiAgICAgIC8vIOS4iuS8oOWPguaVsAogICAgICBsYXN0T2JqOiB7CiAgICAgICAgYWRkX3RpbWU6ICcnLAogICAgICAgIGNvbW1lbnQ6ICcnLAogICAgICAgIGdpZDogJycsCiAgICAgICAgaWQ6ICcnLAogICAgICAgIGltZzogJycsCiAgICAgICAgbGluazogJycsCiAgICAgICAgc29ydDogJycsCiAgICAgICAgc3RhdHVzOiAxCiAgICAgIH0sCiAgICAgIGlzQ2hvaWNlOiAn5Y2V6YCJJywKICAgICAgbW9kYWxQaWM6IGZhbHNlLAogICAgICBncmlkUGljOiB7CiAgICAgICAgeGw6IDYsCiAgICAgICAgbGc6IDgsCiAgICAgICAgbWQ6IDEyLAogICAgICAgIHNtOiAxMiwKICAgICAgICB4czogMTIKICAgICAgfSwKICAgICAgZ3JpZEJ0bjogewogICAgICAgIHhsOiA0LAogICAgICAgIGxnOiA4LAogICAgICAgIG1kOiA4LAogICAgICAgIHNtOiA4LAogICAgICAgIHhzOiA4CiAgICAgIH0sCiAgICAgIGdyb3VwQWxsOiBbXSwKICAgICAgYWN0aXZlSW5kZXg6IDAsCiAgICAgIHNvcnROYW1lOiBudWxsLAogICAgICBhY3RpdmVJbmRleHM6IDAsCiAgICAgIGNtc0xpc3Q6IFtdLAogICAgICBsb2FkaW5nRXhpc3Q6IGZhbHNlLAogICAgICBmb3JtSXRlbTogewogICAgICAgIHRpbWU6ICcnLAogICAgICAgIHR5cGU6ICdwaWMnLAogICAgICAgIHN0YXR1czogMSwKICAgICAgICB2YWx1ZTogW10sCiAgICAgICAgdmlkZW9fbGluazogJycKICAgICAgfSwKICAgICAgZmlsZVVybDogU2V0dGluZy5hcGlCYXNlVVJMICsgJy9maWxlL3VwbG9hZCcsCiAgICAgIGNhcmRVcmw6IFNldHRpbmcuYXBpQmFzZVVSTCArICcvZmlsZS91cGxvYWQvMScsCiAgICAgIGhlYWRlcjoge30sCiAgICAgIHR5cGU6IDAsCiAgICAgIHVwbG9hZDogewogICAgICAgIHZpZGVvSW5nOiBmYWxzZSAvLyDmmK/lkKbmmL7npLrov5vluqbmnaHvvJsKCiAgICAgIH0KICAgIH07CiAgfSwKICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkgewogICAgdGhpcy5jb2xvcigpOwogICAgdGhpcy51cGxvYWRUeXBlKCk7CiAgICB0aGlzLmdldFRva2VuKCk7CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkgewogICAgdGhpcy5nZXRHcm91cEFsbCgpOwogICAgdGhpcy5pbmZvKCk7CiAgICB0aGlzLnVybCA9IHRoaXMuQmFzZVVSTCArICdwYWdlcy9jb2x1bW5Hb29kcy9Ib3ROZXdHb29kcy9pbmRleD90eXBlPTEnOwogIH0sCiAgbWV0aG9kczogewogICAgZ2V0RWRpdG9yQ29udGVudDogZnVuY3Rpb24gZ2V0RWRpdG9yQ29udGVudChkYXRhKSB7CiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmNvbnRlbnQgPSBkYXRhOwogICAgfSwKICAgIC8vIOWIoOmZpOinhumike+8mwogICAgZGVsVmlkZW86IGZ1bmN0aW9uIGRlbFZpZGVvKCkgewogICAgICB2YXIgdGhhdCA9IHRoaXM7CiAgICAgIHRoYXQuJHNldCh0aGF0LmZvcm1JdGVtLCAndmlkZW9fbGluaycsICcnKTsKICAgIH0sCiAgICAvL+iOt+WPluinhumikeS4iuS8oOexu+WeiwogICAgdXBsb2FkVHlwZTogZnVuY3Rpb24gdXBsb2FkVHlwZSgpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKCiAgICAgIF91cGxvYWRUeXBlKCkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXMudXBsb2FkX3R5cGUgPSByZXMuZGF0YS51cGxvYWRfdHlwZTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g5LiK5Lyg5oiQ5YqfCiAgICBoYW5kbGVTdWNjZXNzOiBmdW5jdGlvbiBoYW5kbGVTdWNjZXNzKHJlcywgZmlsZSwgZmlsZUxpc3QpIHsKICAgICAgaWYgKHJlcy5zdGF0dXMgPT09IDIwMCkgewogICAgICAgIHRoaXMuJHNldCh0aGlzLmZvcm1JdGVtLCAndmlkZW9fbGluaycsIHJlcy5kYXRhLnNyYyk7CiAgICAgICAgdGhpcy4kTWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwogICAgICB9IGVsc2UgewogICAgICAgIHRoaXMuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0KICAgIH0sCiAgICB6aF91cGxvYWRGaWxlOiBmdW5jdGlvbiB6aF91cGxvYWRGaWxlKCkgewogICAgICBpZiAodGhpcy52aWRlb19saW5rKSB7CiAgICAgICAgdGhpcy5mb3JtVmFsaWRhdGUudmlkZW9fbGluayA9IHRoaXMudmlkZW9fbGluazsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLiRyZWZzLnJlZmlkLmNsaWNrKCk7CiAgICAgIH0KICAgIH0sCiAgICB6aF91cGxvYWRGaWxlX2NoYW5nZTogZnVuY3Rpb24gemhfdXBsb2FkRmlsZV9jaGFuZ2UoZXZmaWxlKSB7CiAgICAgIHZhciB0aGF0ID0gdGhpczsKICAgICAgdmFyIHN1ZmZpeCA9IGV2ZmlsZS50YXJnZXQuZmlsZXNbMF0ubmFtZS5zdWJzdHIoZXZmaWxlLnRhcmdldC5maWxlc1swXS5uYW1lLmluZGV4T2YoJy4nKSk7CgogICAgICBpZiAoc3VmZml4LmluZGV4T2YoJy5tcDQnKSA9PT0gLTEpIHsKICAgICAgICByZXR1cm4gdGhhdC4kTWVzc2FnZS5lcnJvcign5Y+q6IO95LiK5LygTVA05paH5Lu2Jyk7CiAgICAgIH0KCiAgICAgIHByb2R1Y3RHZXRUZW1wS2V5c0FwaSgpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIHRoYXQuJHZpZGVvQ2xvdWQudmlkZW9VcGxvYWQoewogICAgICAgICAgdHlwZTogcmVzLmRhdGEudHlwZSwKICAgICAgICAgIGV2ZmlsZTogZXZmaWxlLAogICAgICAgICAgcmVzOiByZXMsCiAgICAgICAgICB1cGxvYWRpbmc6IGZ1bmN0aW9uIHVwbG9hZGluZyhzdGF0dXMsIHByb2dyZXNzKSB7CiAgICAgICAgICAgIHRoYXQudXBsb2FkLnZpZGVvSW5nID0gc3RhdHVzOwogICAgICAgICAgfQogICAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgICAgdGhhdC5mb3JtVmFsaWRhdGUudmlkZW9fbGluayA9IHJlcy51cmw7CiAgICAgICAgICB0aGF0LiRNZXNzYWdlLnN1Y2Nlc3MoJ+inhumikeS4iuS8oOaIkOWKnycpOwogICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIHRoYXQuJE1lc3NhZ2UuZXJyb3IocmVzKTsKICAgICAgICB9KTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKHJlcykgewogICAgICAgIHRoYXQuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOS4iuS8oOWktOmDqHRva2VuCiAgICBnZXRUb2tlbjogZnVuY3Rpb24gZ2V0VG9rZW4oKSB7CiAgICAgIHRoaXMuaGVhZGVyWydBdXRob3JpLXphdGlvbiddID0gJ0JlYXJlciAnICsgZ2V0Q29va2llcygndG9rZW4nKTsKICAgIH0sCiAgICBiZWZvcmVVcGxvYWQ6IGZ1bmN0aW9uIGJlZm9yZVVwbG9hZCgpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CgogICAgICB0aGlzLnVwbG9hZERhdGEgPSB7fTsKICAgICAgdmFyIHByb21pc2UgPSBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSkgewogICAgICAgIF90aGlzMi4kbmV4dFRpY2soZnVuY3Rpb24gKCkgewogICAgICAgICAgcmVzb2x2ZSh0cnVlKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICAgIHJldHVybiBwcm9taXNlOwogICAgfSwKICAgIGxpbmtVcmw6IGZ1bmN0aW9uIGxpbmtVcmwoZSkgewogICAgICB0aGlzLnRhYkxpc3QubGlzdFt0aGlzLmFjdGl2ZUluZGV4c10ubGluayA9IGU7CiAgICB9LAogICAgY29sb3I6IGZ1bmN0aW9uIGNvbG9yKCkgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKCiAgICAgIGdldENvbG9yQ2hhbmdlKCdjb2xvcl9jaGFuZ2UnKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBzd2l0Y2ggKHJlcy5kYXRhLnN0YXR1cykgewogICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICBfdGhpczMuYmdDb2wgPSAnIzM4NzVFQSc7CiAgICAgICAgICAgIF90aGlzMy5iZ2ltZyA9IDE7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgX3RoaXMzLmJnQ29sID0gJyMwMEMwNTAnOwogICAgICAgICAgICBfdGhpczMuYmdpbWcgPSAyOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgIF90aGlzMy5iZ0NvbCA9ICcjRTkzMzIzJzsKICAgICAgICAgICAgX3RoaXMzLmJnaW1nID0gMzsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICBfdGhpczMuYmdDb2wgPSAnI0ZGNDQ4Ric7CiAgICAgICAgICAgIF90aGlzMy5iZ2ltZyA9IDQ7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgX3RoaXMzLmJnQ29sID0gJyNGRTVDMkQnOwogICAgICAgICAgICBfdGhpczMuYmdpbWcgPSA1OwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOa3u+WKoOihqOWNlQogICAgZ3JvdXBBZGQ6IGZ1bmN0aW9uIGdyb3VwQWRkKCkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKCiAgICAgIHRoaXMuJG1vZGFsRm9ybShncm91cERhdGFBZGRBcGkoewogICAgICAgIGdpZDogdGhpcy5wYWdlSWQsCiAgICAgICAgY29uZmlnX25hbWU6IHRoaXMubmFtZQogICAgICB9LCAnc2V0dGluZy9ncm91cF9kYXRhL2NyZWF0ZScpKS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICBfdGhpczQudXJsID0gX3RoaXM0LkJhc2VVUkwgKyAncGFnZXMvdXNlcnMvdXNlcl9zZ2luL2luZGV4JzsKCiAgICAgICAgX3RoaXM0LmluZm8oKTsKICAgICAgfSk7CiAgICB9LAogICAgaW5mbzogZnVuY3Rpb24gaW5mbygpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CgogICAgICBncm91cERhdGFMaXN0QXBpKHsKICAgICAgICBjb25maWdfbmFtZTogdGhpcy5uYW1lCiAgICAgIH0sICdzZXR0aW5nL2dyb3VwX2RhdGEnKS50aGVuKCAvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBfcmVmID0gX2FzeW5jVG9HZW5lcmF0b3IoIC8qI19fUFVSRV9fKi9yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlKHJlcykgewogICAgICAgICAgcmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUkKF9jb250ZXh0KSB7CiAgICAgICAgICAgIHdoaWxlICgxKSB7CiAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBfdGhpczUudGFiTGlzdCA9IHJlcy5kYXRhOwoKICAgICAgICAgICAgICAgICAgaWYgKF90aGlzNS5uYW1lID09ICdhZG1pbl9sb2dpbl9zbGlkZScpIHsKICAgICAgICAgICAgICAgICAgICBfdGhpczUudGFiTGlzdC5saXN0LmZvckVhY2goZnVuY3Rpb24gKGl0ZW0sIGluZGV4LCBhcnJheSkgewogICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBpdGVtLnNsaWRlICE9ICdzdHJpbmcnICYmIGl0ZW0uc2xpZGUgIT0gJ3VuZGVmaW5lZCcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zbGlkZSA9IGl0ZW0uc2xpZGVbMF07CiAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoX3RoaXM1Lm5hbWUgPT0gJ3NpZ25fZGF5X251bScpIHsKICAgICAgICAgICAgICAgICAgICBfdGhpczUuY21zTGlzdCA9IHJlcy5kYXRhLmxpc3Q7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoX3RoaXM1Lm5hbWUgPT0gJ3VzZXJfcmVjaGFyZ2VfcXVvdGEnKSB7CiAgICAgICAgICAgICAgICAgICAgX3RoaXM1LnNnaW5MaXN0ID0gcmVzLmRhdGE7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgX3RoaXM1LnRhYkxpc3QubGlzdC5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBpbmRleCwgYXJyYXkpIHsKICAgICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgaXRlbS5pbWcgIT0gJ3N0cmluZycgJiYgaXRlbS5pbWcgIT0gJ3VuZGVmaW5lZCcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pbWcgPSBpdGVtLmltZ1swXTsKICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9LCBfY2FsbGVlKTsKICAgICAgICB9KSk7CgogICAgICAgIHJldHVybiBmdW5jdGlvbiAoX3gpIHsKICAgICAgICAgIHJldHVybiBfcmVmLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgfTsKICAgICAgfSgpKS5jYXRjaChmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXM1LmxvYWRpbmcgPSBmYWxzZTsKCiAgICAgICAgX3RoaXM1LiRNZXNzYWdlLmVycm9yKHJlcy5tc2cpOwogICAgICB9KTsKICAgIH0sCiAgICBlZGl0czogZnVuY3Rpb24gZWRpdHMocm93KSB7CiAgICAgIHZhciBfdGhpczYgPSB0aGlzOwoKICAgICAgdGhpcy5wYWdlSWQgPSByb3cuaWQgfHwgMDsKICAgICAgdGhpcy5uYW1lID0gcm93LmNvbmZpZ19uYW1lIHx8ICcnOwoKICAgICAgaWYgKHJvdyA9PSAxKSB7CiAgICAgICAgdGhpcy5hID0gMTsKICAgICAgICB0aGlzLmd1aWRlID0gMDsKICAgICAgICB0aGlzLmdldEFncmVlbWVudCgpOwogICAgICB9IGVsc2UgaWYgKHJvdyA9PSAyKSB7CiAgICAgICAgdGhpcy5hID0gMDsKICAgICAgICB0aGlzLmd1aWRlID0gMjsKICAgICAgICBnZXRPcGVuQWR2KCkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICBpZiAocmVzLmRhdGEpIHsKICAgICAgICAgICAgX3RoaXM2LmZvcm1JdGVtID0gcmVzLmRhdGE7CiAgICAgICAgICAgIF90aGlzNi50YWJMaXN0Lmxpc3QgPSByZXMuZGF0YS52YWx1ZTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIF90aGlzNi5mb3JtSXRlbSA9IHsKICAgICAgICAgICAgICB0aW1lOiAnJywKICAgICAgICAgICAgICB0eXBlOiAncGljJywKICAgICAgICAgICAgICBzdGF0dXM6IDEsCiAgICAgICAgICAgICAgdmFsdWU6IFtdLAogICAgICAgICAgICAgIHZpZGVvX2xpbms6ICcnCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIF90aGlzNi50YWJMaXN0Lmxpc3QgPSBbXTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLmluZm8oKTsKICAgICAgICB0aGlzLmd1aWRlID0gMDsKICAgICAgICB0aGlzLmEgPSAwOwoKICAgICAgICBzd2l0Y2ggKHJvdy5jb25maWdfbmFtZSkgewogICAgICAgICAgY2FzZSAncm91dGluZV9ob21lX2Jhc3RfYmFubmVyJzoKICAgICAgICAgICAgdGhpcy51cmwgPSB0aGlzLkJhc2VVUkwgKyAncGFnZXMvY29sdW1uR29vZHMvSG90TmV3R29vZHMvaW5kZXg/dHlwZT0xJm5hbWU957K+5ZOB5o6o6I2QJzsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgY2FzZSAnc2lnbl9kYXlfbnVtJzoKICAgICAgICAgICAgdGhpcy51cmwgPSAnJzsKICAgICAgICAgICAgdGhpcy5nZXRMaXN0SGVhZGVyKCk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgIGNhc2UgJ2NvbWJpbmF0aW9uX2Jhbm5lcic6CiAgICAgICAgICAgIHRoaXMudXJsID0gdGhpcy5CYXNlVVJMICsgJ3BhZ2VzL2FjdGl2aXR5L2dvb2RzX2NvbWJpbmF0aW9uL2luZGV4JzsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgY2FzZSAncm91dGluZV9ob21lX2hvdF9iYW5uZXInOgogICAgICAgICAgICB0aGlzLnVybCA9IHRoaXMuQmFzZVVSTCArICdwYWdlcy9jb2x1bW5Hb29kcy9Ib3ROZXdHb29kcy9pbmRleD90eXBlPTImbmFtZT3ng63pl6jmppzljZUnOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgICBjYXNlICdyb3V0aW5lX2hvbWVfbmV3X2Jhbm5lcic6CiAgICAgICAgICAgIHRoaXMudXJsID0gdGhpcy5CYXNlVVJMICsgJ3BhZ2VzL2NvbHVtbkdvb2RzL0hvdE5ld0dvb2RzL2luZGV4P3R5cGU9MyZuYW1lPemmluWPkeaWsOWTgSc7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgIGNhc2UgJ3JvdXRpbmVfaG9tZV9iZW5lZml0X2Jhbm5lcic6CiAgICAgICAgICAgIHRoaXMudXJsID0gdGhpcy5CYXNlVVJMICsgJ3BhZ2VzL2NvbHVtbkdvb2RzL0hvdE5ld0dvb2RzL2luZGV4P3R5cGU9NCZuYW1lPeS/g+mUgOWNleWTgSc7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgIGNhc2UgJ3VzZXJfcmVjaGFyZ2VfcXVvdGEnOgogICAgICAgICAgICB0aGlzLnVybCA9ICcnOwogICAgICAgICAgICB0aGlzLmdldExpc3RIZWFkZXIoKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgY2FzZSAnYWRtaW5fbG9naW5fc2xpZGUnOgogICAgICAgICAgICB0aGlzLnVybCA9ICcnOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgICBjYXNlICdpbnRlZ3JhbF9zaG9wX2Jhbm5lcic6CiAgICAgICAgICAgIHRoaXMudXJsID0gJyc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgIGFkZEJveDogZnVuY3Rpb24gYWRkQm94KCkgewogICAgICBpZiAodGhpcy50YWJMaXN0Lmxpc3QubGVuZ3RoID09IDApIHsKICAgICAgICB0aGlzLnRhYkxpc3QubGlzdC5wdXNoKHRoaXMubGFzdE9iaik7CiAgICAgICAgdGhpcy5sYXN0T2JqID0gewogICAgICAgICAgYWRkX3RpbWU6ICcnLAogICAgICAgICAgY29tbWVudDogJycsCiAgICAgICAgICBnaWQ6ICcnLAogICAgICAgICAgaWQ6ICcnLAogICAgICAgICAgaW1nOiAnJywKICAgICAgICAgIGxpbms6ICcnLAogICAgICAgICAgc29ydDogJycsCiAgICAgICAgICBzdGF0dXM6IDEKICAgICAgICB9OwogICAgICB9IGVsc2UgewogICAgICAgIGlmICh0aGlzLnRhYkxpc3QubGlzdC5sZW5ndGggPT0gNSkgewogICAgICAgICAgdGhpcy4kTWVzc2FnZS53YXJuaW5nKCfmnIDlpJrmt7vliqDkupTlvKDlkaYnKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgdmFyIG9iaiA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5sYXN0T2JqKSk7CiAgICAgICAgICB0aGlzLnRhYkxpc3QubGlzdC5wdXNoKG9iaik7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgLy8g5Yig6ZmkCiAgICBiaW5kRGVsZXRlOiBmdW5jdGlvbiBiaW5kRGVsZXRlKGl0ZW0sIGluZGV4KSB7CiAgICAgIHRoaXMudGFiTGlzdC5saXN0LnNwbGljZShpbmRleCwgMSk7CiAgICB9LAogICAgLy8g54K55Ye75Zu+5paH5bCB6Z2iCiAgICBtb2RhbFBpY1RhcDogZnVuY3Rpb24gbW9kYWxQaWNUYXAodGl0bGUsIGluZGV4KSB7CiAgICAgIHRoaXMuYWN0aXZlSW5kZXggPSBpbmRleDsKICAgICAgdGhpcy5tb2RhbFBpYyA9IHRydWU7CiAgICB9LAogICAgLy8g6I635Y+W5Zu+54mH5L+h5oGvCiAgICBnZXRQaWM6IGZ1bmN0aW9uIGdldFBpYyhwYykgewogICAgICB2YXIgX3RoaXM3ID0gdGhpczsKCiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHsKICAgICAgICBpZiAoX3RoaXM3Lm5hbWUgPT0gJ2FkbWluX2xvZ2luX3NsaWRlJykgewogICAgICAgICAgX3RoaXM3LnRhYkxpc3QubGlzdFtfdGhpczcuYWN0aXZlSW5kZXhdLnNsaWRlID0gcGMuYXR0X2RpcjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXM3LnRhYkxpc3QubGlzdFtfdGhpczcuYWN0aXZlSW5kZXhdLmltZyA9IHBjLmF0dF9kaXI7CiAgICAgICAgfQoKICAgICAgICBfdGhpczcubW9kYWxQaWMgPSBmYWxzZTsKICAgICAgfSk7CiAgICB9LAogICAgc2F2ZTogZnVuY3Rpb24gc2F2ZSgpIHsKICAgICAgdmFyIF90aGlzOCA9IHRoaXM7CgogICAgICBpZiAodGhpcy5hID09IDEpIHsKICAgICAgICB0aGlzLm9uc3VibWl0KCdmb3JtVmFsaWRhdGUnKTsKICAgICAgfSBlbHNlIGlmICh0aGlzLmd1aWRlID09IDIpIHsKICAgICAgICB0aGlzLmZvcm1JdGVtLnZhbHVlID0gdGhpcy50YWJMaXN0Lmxpc3Q7CiAgICAgICAgb3BlbkFkdlNhdmUodGhpcy5mb3JtSXRlbSkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICBfdGhpczguJE1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsKICAgICAgICB9KTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLmxvYWRpbmdFeGlzdCA9IHRydWU7CiAgICAgICAgZ3JvdXBTYXZlQXBpKHsKICAgICAgICAgIGdpZDogdGhpcy5wYWdlSWQsCiAgICAgICAgICBjb25maWdfbmFtZTogdGhpcy5uYW1lLAogICAgICAgICAgZGF0YTogdGhpcy50YWJMaXN0Lmxpc3QKICAgICAgICB9KS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIF90aGlzOC5sb2FkaW5nRXhpc3QgPSBmYWxzZTsKCiAgICAgICAgICBfdGhpczguJE1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsKICAgICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICBfdGhpczgubG9hZGluZ0V4aXN0ID0gZmFsc2U7CgogICAgICAgICAgX3RoaXM4LiRNZXNzYWdlLmVycm9yKGVyci5tc2cpOwogICAgICAgIH0pOwogICAgICB9CiAgICB9LAogICAgbGluazogZnVuY3Rpb24gbGluayhpbmRleCkgewogICAgICB0aGlzLmFjdGl2ZUluZGV4cyA9IGluZGV4OwogICAgICB0aGlzLiRyZWZzLmxpbmthZGRyZXMubW9kYWxzID0gdHJ1ZTsKICAgIH0sCiAgICBnZXRMaXN0SGVhZGVyOiBmdW5jdGlvbiBnZXRMaXN0SGVhZGVyKCkgewogICAgICB2YXIgX3RoaXM5ID0gdGhpczsKCiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7CiAgICAgIGdyb3VwRGF0YUhlYWRlckFwaSh7CiAgICAgICAgY29uZmlnX25hbWU6IHRoaXMubmFtZQogICAgICB9LCAnc2V0dGluZy9zaWduX2RhdGEvaGVhZGVyJykudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgdmFyIGRhdGEgPSByZXMuZGF0YTsKICAgICAgICB2YXIgaGVhZGVyID0gZGF0YS5oZWFkZXI7CiAgICAgICAgdmFyIGluZGV4ID0gW107CiAgICAgICAgX3RoaXM5LmNvbHVtbnMxID0gaGVhZGVyOwogICAgICAgIF90aGlzOS5sb2FkaW5nID0gZmFsc2U7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczkubG9hZGluZyA9IGZhbHNlOwoKICAgICAgICBfdGhpczkuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOe8lui+kQogICAgZWRpdDogZnVuY3Rpb24gZWRpdChyb3cpIHsKICAgICAgdmFyIF90aGlzMTAgPSB0aGlzOwoKICAgICAgdGhpcy4kbW9kYWxGb3JtKGdyb3VwRGF0YUVkaXRBcGkoewogICAgICAgIGdpZDogdGhpcy5wYWdlSWQsCiAgICAgICAgY29uZmlnX25hbWU6IHRoaXMubmFtZQogICAgICB9LCAnc2V0dGluZy9ncm91cF9kYXRhLycgKyByb3cuaWQgKyAnL2VkaXQnKSkudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgX3RoaXMxMC5pbmZvKCk7CgogICAgICAgIF90aGlzMTAudXJsID0gX3RoaXMxMC5CYXNlVVJMICsgJ3BhZ2VzL3VzZXJzL3VzZXJfc2dpbi9pbmRleCc7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOWIoOmZpAogICAgZGVsOiBmdW5jdGlvbiBkZWwocm93LCB0aXQsIG51bSkgewogICAgICB2YXIgX3RoaXMxMSA9IHRoaXM7CgogICAgICB2YXIgZGVsZnJvbURhdGEgPSB7CiAgICAgICAgdGl0bGU6IHRpdCwKICAgICAgICBudW06IG51bSwKICAgICAgICB1cmw6ICdzZXR0aW5nL2dyb3VwX2RhdGEvJyArIHJvdy5pZCwKICAgICAgICBtZXRob2Q6ICdERUxFVEUnLAogICAgICAgIGlkczogJycKICAgICAgfTsKICAgICAgdGhpcy4kbW9kYWxTdXJlKGRlbGZyb21EYXRhKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczExLmluZm8oKTsKCiAgICAgICAgX3RoaXMxMS4kTWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwogICAgICB9KS5jYXRjaChmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXMxMS4kTWVzc2FnZS5lcnJvcihyZXMubXNnKTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g5L+u5pS55piv5ZCm5pi+56S6CiAgICBvbmNoYW5nZUlzU2hvdzogZnVuY3Rpb24gb25jaGFuZ2VJc1Nob3cocm93KSB7CiAgICAgIHZhciBfdGhpczEyID0gdGhpczsKCiAgICAgIGdyb3VwRGF0YVNldEFwaSgnc2V0dGluZy9ncm91cF9kYXRhL3NldF9zdGF0dXMvJyArIHJvdy5pZCArICcvJyArIHJvdy5zdGF0dXMpLnRoZW4oIC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7CiAgICAgICAgdmFyIF9yZWYyID0gX2FzeW5jVG9HZW5lcmF0b3IoIC8qI19fUFVSRV9fKi9yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlMihyZXMpIHsKICAgICAgICAgIHJldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7CiAgICAgICAgICAgIHdoaWxlICgxKSB7CiAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDIucHJldiA9IF9jb250ZXh0Mi5uZXh0KSB7CiAgICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICAgIF90aGlzMTIudXJsID0gX3RoaXMxMi5CYXNlVVJMICsgJy9wYWdlcy91c2Vycy91c2VyX3NnaW4vaW5kZXgnOwoKICAgICAgICAgICAgICAgICAgX3RoaXMxMi4kTWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwoKICAgICAgICAgICAgICAgICAgX3RoaXMxMi5pbmZvKCk7CgogICAgICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9LCBfY2FsbGVlMik7CiAgICAgICAgfSkpOwoKICAgICAgICByZXR1cm4gZnVuY3Rpb24gKF94MikgewogICAgICAgICAgcmV0dXJuIF9yZWYyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgfTsKICAgICAgfSgpKS5jYXRjaChmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXMxMi51cmwgPSBfdGhpczEyLkJhc2VVUkwgKyAnL3BhZ2VzL3VzZXJzL3VzZXJfc2dpbi9pbmRleCc7CgogICAgICAgIF90aGlzMTIuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0pOwogICAgfSwKICAgIGdldEdyb3VwQWxsOiBmdW5jdGlvbiBnZXRHcm91cEFsbCgpIHsKICAgICAgdmFyIF90aGlzMTMgPSB0aGlzOwoKICAgICAgZ3JvdXBBbGxBcGkoKS50aGVuKCAvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBfcmVmMyA9IF9hc3luY1RvR2VuZXJhdG9yKCAvKiNfX1BVUkVfXyovcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTMocmVzKSB7CiAgICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTMkKF9jb250ZXh0MykgewogICAgICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQzLnByZXYgPSBfY29udGV4dDMubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBfdGhpczEzLmdyb3VwQWxsID0gcmVzLmRhdGE7CiAgICAgICAgICAgICAgICAgIF90aGlzMTMuc29ydE5hbWUgPSByZXMuZGF0YVswXS5jb25maWdfbmFtZTsKICAgICAgICAgICAgICAgICAgX3RoaXMxMy5wYWdlSWQgPSByZXMuZGF0YVswXS5pZDsKCiAgICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQzLnN0b3AoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIF9jYWxsZWUzKTsKICAgICAgICB9KSk7CgogICAgICAgIHJldHVybiBmdW5jdGlvbiAoX3gzKSB7CiAgICAgICAgICByZXR1cm4gX3JlZjMuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgICB9OwogICAgICB9KCkpLmNhdGNoKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczEzLiRNZXNzYWdlLmVycm9yKHJlcy5tc2cpOwogICAgICB9KTsKICAgIH0sCiAgICBnZXRDb250ZW50OiBmdW5jdGlvbiBnZXRDb250ZW50KHZhbCkgewogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5jb250ZW50ID0gdmFsOwogICAgfSwKICAgIC8vIOaPkOS6pOaVsOaNrgogICAgb25zdWJtaXQ6IGZ1bmN0aW9uIG9uc3VibWl0KG5hbWUpIHsKICAgICAgdmFyIF90aGlzMTQgPSB0aGlzOwoKICAgICAgdGhpcy4kcmVmc1tuYW1lXS52YWxpZGF0ZShmdW5jdGlvbiAodmFsaWQpIHsKICAgICAgICBpZiAodmFsaWQpIHsKICAgICAgICAgIHNldEFncmVlbWVudChfdGhpczE0LmZvcm1WYWxpZGF0ZSkudGhlbiggLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICAgICAgdmFyIF9yZWY0ID0gX2FzeW5jVG9HZW5lcmF0b3IoIC8qI19fUFVSRV9fKi9yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlNChyZXMpIHsKICAgICAgICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTQkKF9jb250ZXh0NCkgewogICAgICAgICAgICAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDQucHJldiA9IF9jb250ZXh0NC5uZXh0KSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICAgICAgX3RoaXMxNC4kTWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwoKICAgICAgICAgICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDQuc3RvcCgpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSwgX2NhbGxlZTQpOwogICAgICAgICAgICB9KSk7CgogICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gKF94NCkgewogICAgICAgICAgICAgIHJldHVybiBfcmVmNC5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogICAgICAgICAgICB9OwogICAgICAgICAgfSgpKS5jYXRjaChmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICAgIF90aGlzMTQuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgLy/or6bmg4UKICAgIGdldEFncmVlbWVudDogZnVuY3Rpb24gZ2V0QWdyZWVtZW50KCkgewogICAgICB2YXIgX3RoaXMxNSA9IHRoaXM7CgogICAgICBfZ2V0QWdyZWVtZW50KCkudGhlbiggLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICB2YXIgX3JlZjUgPSBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU1KHJlcykgewogICAgICAgICAgdmFyIGRhdGE7CiAgICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTUkKF9jb250ZXh0NSkgewogICAgICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQ1LnByZXYgPSBfY29udGV4dDUubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBkYXRhID0gcmVzLmRhdGE7CiAgICAgICAgICAgICAgICAgIF90aGlzMTUuZm9ybVZhbGlkYXRlID0gewogICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGRhdGEuY29udGVudAogICAgICAgICAgICAgICAgICB9OwoKICAgICAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDUuc3RvcCgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwgX2NhbGxlZTUpOwogICAgICAgIH0pKTsKCiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChfeDUpIHsKICAgICAgICAgIHJldHVybiBfcmVmNS5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogICAgICAgIH07CiAgICAgIH0oKSkuY2F0Y2goZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzMTUubG9hZGluZyA9IGZhbHNlOwoKICAgICAgICBfdGhpczE1LiRNZXNzYWdlLmVycm9yKHJlcy5tc2cpOwogICAgICB9KTsKICAgIH0KICB9Cn07"},{"version":3,"mappings":"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;QACA;QACA;QACA;MACA,CAJA,MAIA;QACA;QACA;QACAlH;UACA;YACA;YACA;UACA,CAHA,MAGA;YACA;cACA0E,QADA;cAEAC,WAFA;cAGAb,SAHA;cAIAc,SAJA;cAKAC;YALA;YAOA;UACA;QACA,CAdA;MAeA,CAlBA,MAkBA;QACA;QACA;QACA;;QACA;UACA;YACA;YACA;;UACA;YACA;YACA;YACA;;UACA;YACA;YACA;;UACA;YACA;YACA;;UACA;YACA;YACA;;UACA;YACA;YACA;;UACA;YACA;YACA;YACA;;UACA;YACA;YACA;;UACA;YACA;YACA;QA7BA;MA+BA;IACA,CAvMA;IAwMAsC,MAxMA,oBAwMA;MACA;QACA;QACA;UACA5D,YADA;UAEAC,WAFA;UAGAC,OAHA;UAIAC,MAJA;UAKAC,OALA;UAMAC,QANA;UAOAC,QAPA;UAQAC;QARA;MAUA,CAZA,MAYA;QACA;UACA;QACA,CAFA,MAEA;UACA;UACA;QACA;MACA;IACA,CA7NA;IA8NA;IACAsD,UA/NA,sBA+NAJ,IA/NA,EA+NAK,KA/NA,EA+NA;MACA;IACA,CAjOA;IAkOA;IACAC,WAnOA,uBAmOAC,KAnOA,EAmOAF,KAnOA,EAmOA;MACA;MACA;IACA,CAtOA;IAuOA;IACAG,MAxOA,kBAwOAC,EAxOA,EAwOA;MAAA;;MACA;QACA;UACA;QACA,CAFA,MAEA;UACA;QACA;;QACA;MACA,CAPA;IAQA,CAjPA;IAkPAC,IAlPA,kBAkPA;MAAA;;MACA;QACA;MACA,CAFA,MAEA;QACA;QACAjI;UACA;QACA,CAFA;MAGA,CALA,MAKA;QACA;QACAD;UACAiE,gBADA;UAEAqD,sBAFA;UAGAjG;QAHA,GAKAqF,IALA,CAKA;UACA;;UACA;QACA,CARA,EASAG,KATA,CASA;UACA;;UACA;QACA,CAZA;MAaA;IACA,CA1QA;IA2QAzC,IA3QA,gBA2QAyD,KA3QA,EA2QA;MACA;MACA;IACA,CA9QA;IA+QAM,aA/QA,2BA+QA;MAAA;;MACA;MACAhI;QAAAmH;MAAA,+BACAZ,IADA,CACA;QACA;QACA;QACA;QACA;QACA;MACA,CAPA,EAQAG,KARA,CAQA;QACA;;QACA;MACA,CAXA;IAYA,CA7RA;IA8RA;IACAuB,IA/RA,gBA+RAV,GA/RA,EA+RA;MAAA;;MACA,gBACAtH;QAAA6D;QAAAqD;MAAA,4CADA,EAEAZ,IAFA,CAEA;QACA;;QACA;MACA,CALA;IAMA,CAtSA;IAuSA;IACA2B,GAxSA,eAwSAX,GAxSA,EAwSAY,GAxSA,EAwSAC,GAxSA,EAwSA;MAAA;;MACA;QACAR,UADA;QAEAQ,QAFA;QAGAhF,mCAHA;QAIAiF,gBAJA;QAKAC;MALA;MAOA,6BACA/B,IADA,CACA;QACA;;QACA;MACA,CAJA,EAKAG,KALA,CAKA;QACA;MACA,CAPA;IAQA,CAxTA;IAyTA;IACA6B,cA1TA,0BA0TAhB,GA1TA,EA0TA;MAAA;;MACArH,8EACAqG,IADA;QAAA,oEACA;UAAA;YAAA;cAAA;gBAAA;kBACA;;kBACA;;kBACA;;gBAHA;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA,KAMAG,KANA,CAMA;QACA;;QACA;MACA,CATA;IAUA,CArUA;IAsUA8B,WAtUA,yBAsUA;MAAA;;MACA7I,cACA4G,IADA;QAAA,oEACA;UAAA;YAAA;cAAA;gBAAA;kBACA;kBACA;kBACA;;gBAHA;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA,KAMAG,KANA,CAMA;QACA;MACA,CARA;IASA,CAhVA;IAiVA+B,UAjVA,sBAiVAC,GAjVA,EAiVA;MACA;IACA,CAnVA;IAoVA;IACAC,QArVA,oBAqVArI,IArVA,EAqVA;MAAA;;MACA;QACA;UACAF,mCACAmG,IADA;YAAA,oEACA;cAAA;gBAAA;kBAAA;oBAAA;sBACA;;oBADA;oBAAA;sBAAA;kBAAA;gBAAA;cAAA;YAAA,CADA;;YAAA;cAAA;YAAA;UAAA,KAIAG,KAJA,CAIA;YACA;UACA,CANA;QAOA,CARA,MAQA;UACA;QACA;MACA,CAZA;IAaA,CAnWA;IAoWA;IACAvG,YArWA,0BAqWA;MAAA;;MACAA,gBACAoG,IADA;QAAA,oEACA;UAAA;UAAA;YAAA;cAAA;gBAAA;kBACArF,IADA,GACA8E,QADA;kBAEA;oBACA5E;kBADA;;gBAFA;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CADA;;QAAA;UAAA;QAAA;MAAA,KAOAsF,KAPA,CAOA;QACA;;QACA;MACA,CAVA;IAWA;EAjXA;AAxIA","names":["groupAllApi","groupDataListApi","groupSaveApi","openAdvSave","groupDataAddApi","groupDataHeaderApi","groupDataEditApi","groupDataSetApi","getAgreement","setAgreement","getOpenAdv","name","components","editFrom","draggable","uploadPictures","linkaddress","WangEditor","computed","bgcolors","labelWidth","labelPosition","mapState","data","formValidate","content","ruleValidate","myConfig","autoHeightEnabled","initialFrameHeight","initialFrameWidth","UEDITOR_HOME_URL","serverUrl","a","guide","bgimg","columns1","bgCol","grid","xl","lg","md","sm","xs","loading","sginList","progress","swiperOption","pagination","el","navigation","nextEl","prevEl","autoplay","delay","disableOnInteraction","loop","url","BaseURL","pageId","theme3","tabList","upload_type","uploadData","lastObj","add_time","comment","gid","id","img","link","sort","status","isChoice","modalPic","gridPic","gridBtn","groupAll","activeIndex","sortName","activeIndexs","cmsList","loadingExist","formItem","time","type","value","video_link","fileUrl","cardUrl","header","upload","videoIng","created","mounted","methods","getEditorContent","delVideo","that","uploadType","handleSuccess","res","file","fileList","zh_uploadFile","zh_uploadFile_change","evfile","productGetTempKeysApi","then","videoUpload","uploading","catch","getToken","beforeUpload","resolve","linkUrl","e","color","getColorChange","groupAdd","config_name","info","item","edits","row","addBox","bindDelete","index","modalPicTap","title","getPic","pc","save","getListHeader","edit","del","tit","num","method","ids","onchangeIsShow","getGroupAll","getContent","val","onsubmit"],"sourceRoot":"src/pages/system/group","sources":["visualization.vue"],"sourcesContent":["<template>\r\n <div :style=\"bgcolors\">\r\n <div class=\"i-layout-page-header\">\r\n <span class=\"ivu-page-header-title mr20\">{{ $route.meta.title }}</span>\r\n <div>\r\n <div style=\"float: right\">\r\n <Button class=\"bnt\" type=\"primary\" @click=\"save\">保存</Button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"box-wrapper\">\r\n <div class=\"left-wrapper\" v-if=\"!$route.params.id && groupAll.length\">\r\n <Menu :theme=\"theme3\" :active-name=\"sortName\" width=\"auto\">\r\n <MenuGroup>\r\n <MenuItem\r\n :name=\"item.config_name\"\r\n class=\"menu-item\"\r\n v-for=\"(item, index) in groupAll\"\r\n :key=\"index\"\r\n @click.native=\"edits(item)\"\r\n >\r\n {{ item.name }}\r\n </MenuItem>\r\n <MenuItem name=\"guide\" class=\"menu-item\" @click.native=\"edits(2)\"> 开屏广告 </MenuItem>\r\n </MenuGroup>\r\n </Menu>\r\n </div>\r\n <div v-if=\"name == 'user_recharge_quota'\" class=\"iframe\">\r\n <div class=\"iframe-boxs\">\r\n <div class=\"moneyBox\">\r\n <div class=\"box1\">\r\n <div class=\"font1\">我的余额</div>\r\n <div>¥ <i class=\"font2\">0.00</i></div>\r\n </div>\r\n <div class=\"moneyBox_content\">\r\n <div class=\"box2\">\r\n <div>账户充值</div>\r\n <div>佣金导入</div>\r\n </div>\r\n <div class=\"box3\">\r\n <div v-show=\"item.status != 0\" class=\"box3_box\" v-for=\"(item, index) in sginList.list\" :key=\"index\">\r\n <div>{{ item.price }}<i class=\"font\">元</i></div>\r\n <div class=\"font\">赠送:{{ item.give_money }}元</div>\r\n </div>\r\n <div class=\"box3_box\">\r\n <div class=\"other\">其他</div>\r\n </div>\r\n </div>\r\n <div class=\"box4\">\r\n <div class=\"tips\">注意事项:</div>\r\n <div class=\"tips-samll\">\r\n <p>充值后帐户的金额不能提现,可用于商城消费使用。</p>\r\n <p>佣金导入账户之后不能再次导出、不可提现。</p>\r\n <p>账户充值出现问题可联系商城客服,也可拨打商城客服热线:40088888889。</p>\r\n </div>\r\n </div>\r\n <div class=\"box5\">立即充值</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div v-if=\"name == 'admin_login_slide'\" class=\"pciframe\" :bordered=\"false\" dis-hover>\r\n <img src=\"../../../assets/images/pclogin.png\" class=\"pciframe-box\" />\r\n <div class=\"pcmoddile_goods\">\r\n <div class=\"nofont\" v-if=\"tabList.list == ''\">暂无照片,请添加~</div>\r\n <swiper v-else :options=\"swiperOption\" class=\"pcswiperimg_goods\">\r\n <swiper-slide class=\"spcwiperimg_goods\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <img :src=\"item.slide\" />\r\n </swiper-slide>\r\n </swiper>\r\n </div>\r\n </div>\r\n <div v-if=\"name == 'integral_shop_banner'\" class=\"iframe\" :bordered=\"false\">\r\n <div class=\"iframe-box\">\r\n <img src=\"../../../assets/images/integral.png\" style=\"width: 100%\" />\r\n <div class=\"moddile_goods\">\r\n <div class=\"nofonts\" v-if=\"tabList.list == '' || !tabList.list.length || !tabList.list[0].img\">\r\n 暂无照片,请添加~\r\n </div>\r\n <swiper v-else :options=\"swiperOption\" class=\"pcswiperimg_goods\">\r\n <swiper-slide class=\"swiperimg_goods\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <img :src=\"item.img\" />\r\n </swiper-slide>\r\n </swiper>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n v-if=\"\r\n name != 'sign_day_num' &&\r\n name != 'admin_login_slide' &&\r\n name != 'user_recharge_quota' &&\r\n name != 'integral_shop_banner' &&\r\n a != 1 &&\r\n guide != 2\r\n \"\r\n class=\"iframe\"\r\n :bordered=\"false\"\r\n dis-hover\r\n >\r\n <iframe :src=\"url\" class=\"iframe-box\" frameborder=\"0\"></iframe>\r\n <div class=\"moddile\"></div>\r\n <div\r\n v-if=\"\r\n name == 'routine_home_bast_banner' ||\r\n name == 'routine_home_hot_banner' ||\r\n name == 'routine_home_new_banner' ||\r\n name == 'routine_home_benefit_banner'\r\n \"\r\n class=\"moddile_box\"\r\n >\r\n <div class=\"nofonts\" v-if=\"tabList.list == '' || !tabList.list.length || !tabList.list[0].img\">\r\n 暂无照片,请添加~\r\n </div>\r\n <swiper v-else :options=\"swiperOption\" class=\"swiperimg\">\r\n <swiper-slide class=\"swiperimg\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <img :src=\"item.img\" />\r\n </swiper-slide>\r\n </swiper>\r\n </div>\r\n <div v-if=\"name == 'combination_banner'\" class=\"moddile_goods\">\r\n <div class=\"nofonts\" v-if=\"tabList.list == ''\">暂无照片,请添加~</div>\r\n <swiper v-else :options=\"swiperOption\" class=\"swiperimg_goods\">\r\n <swiper-slide class=\"swiperimg_goods\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <img :src=\"item.img\" />\r\n </swiper-slide>\r\n </swiper>\r\n </div>\r\n </div>\r\n <div v-if=\"name == 'sign_day_num'\" class=\"iframe\" :bordered=\"false\">\r\n <div class=\"iframe-box\">\r\n <img v-if=\"bgimg == 1\" src=\"../../../assets/images/bluesgin.png\" />\r\n <img v-if=\"bgimg == 2\" src=\"../../../assets/images/greesgin.png\" />\r\n <img v-if=\"bgimg == 3\" src=\"../../../assets/images/redsgin.png\" />\r\n <img v-if=\"bgimg == 4\" src=\"../../../assets/images/pinksgin.png\" />\r\n <img v-if=\"bgimg == 5\" src=\"../../../assets/images/oragesgin.png\" />\r\n </div>\r\n </div>\r\n <div v-if=\"a == 1\" class=\"iframe\" :bordered=\"false\">\r\n <div class=\"agreement-box\">\r\n <div class=\"template\"></div>\r\n <div class=\"htmls_box\">\r\n <div class=\"htmls_top\">服务协议与隐私政策</div>\r\n <div class=\"htmls_font\">\r\n <div class=\"ok\">我同意</div>\r\n <div>不同意</div>\r\n </div>\r\n <div class=\"htmls\" v-html=\"formValidate.content\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div v-if=\"a == 1\" style=\"margin-left: 40px\">\r\n <div class=\"table_box\">\r\n <div type=\"flex\">\r\n <div v-bind=\"grid\">\r\n <div class=\"title\">隐私权限页面展示:</div>\r\n </div>\r\n </div>\r\n <div>\r\n <Form\r\n class=\"form\"\r\n ref=\"formValidate\"\r\n :model=\"formValidate\"\r\n :rules=\"ruleValidate\"\r\n :label-width=\"labelWidth\"\r\n :label-position=\"labelPosition\"\r\n @submit.native.prevent\r\n >\r\n <div class=\"goodsTitle acea-row\"></div>\r\n <FormItem label=\"\" prop=\"content\" style=\"margin: 0px\">\r\n <WangEditor\r\n style=\"width: 90%\"\r\n :content=\"formValidate.content\"\r\n @editorContent=\"getEditorContent\"\r\n ></WangEditor>\r\n </FormItem>\r\n </Form>\r\n </div>\r\n </div>\r\n </div>\r\n <div v-if=\"guide == 2\" class=\"iframe\" :bordered=\"false\">\r\n <div class=\"nofonts\" v-if=\"tabList.list == '' || !tabList.list.length || !tabList.list[0].img\">\r\n 暂无照片,请添加~\r\n </div>\r\n <swiper :options=\"swiperOption\" class=\"swiperimgs\" v-else>\r\n <swiper-slide class=\"swiperimgs\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <img :src=\"item.img\" />\r\n </swiper-slide>\r\n </swiper>\r\n </div>\r\n <div v-if=\"name == 'sign_day_num'\" style=\"margin-left: 20px\">\r\n <div class=\"table_box\">\r\n <div type=\"flex\">\r\n <div v-bind=\"grid\">\r\n <div class=\"title\">签到天数设置</div>\r\n <Button\r\n type=\"primary\"\r\n icon=\"md-add\"\r\n @click=\"groupAdd('添加数据')\"\r\n style=\"margin-left: 14px; margin-top: 30px\"\r\n >添加数据</Button\r\n >\r\n </div>\r\n </div>\r\n <div class=\"table\">\r\n <Table\r\n :columns=\"columns1\"\r\n :data=\"cmsList\"\r\n ref=\"table\"\r\n class=\"mt25\"\r\n :loading=\"loading\"\r\n highlight-row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <template slot-scope=\"{ row, index }\" slot=\"status\">\r\n <i-switch\r\n v-model=\"row.status\"\r\n :value=\"row.status\"\r\n :true-value=\"1\"\r\n :false-value=\"0\"\r\n @on-change=\"onchangeIsShow(row)\"\r\n size=\"large\"\r\n >\r\n <span slot=\"open\">显示</span>\r\n <span slot=\"close\">隐藏</span>\r\n </i-switch>\r\n </template>\r\n <template slot-scope=\"{ row, index }\" slot=\"action\">\r\n <a @click=\"edit(row, '编辑')\">编辑</a>\r\n <Divider type=\"vertical\" />\r\n <a @click=\"del(row, '删除这条信息', index)\">删除</a>\r\n </template>\r\n </Table>\r\n </div>\r\n </div>\r\n </div>\r\n <div v-if=\"name == 'user_recharge_quota'\" style=\"margin-left: 20px\">\r\n <div class=\"table_box\">\r\n <div type=\"flex\">\r\n <div v-bind=\"grid\">\r\n <div class=\"title\">充值金额设置</div>\r\n <Button\r\n type=\"primary\"\r\n icon=\"md-add\"\r\n @click=\"groupAdd('添加数据')\"\r\n style=\"margin-left: 14px; margin-top: 30px\"\r\n >添加数据</Button\r\n >\r\n </div>\r\n </div>\r\n <div class=\"table\">\r\n <Table\r\n :columns=\"columns1\"\r\n :data=\"sginList.list\"\r\n ref=\"table\"\r\n class=\"mt25\"\r\n :loading=\"loading\"\r\n highlight-row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <template slot-scope=\"{ row, index }\" slot=\"status\">\r\n <i-switch\r\n v-model=\"row.status\"\r\n :value=\"row.status\"\r\n :true-value=\"1\"\r\n :false-value=\"0\"\r\n @on-change=\"onchangeIsShow(row)\"\r\n size=\"large\"\r\n >\r\n <span slot=\"open\">显示</span>\r\n <span slot=\"close\">隐藏</span>\r\n </i-switch>\r\n </template>\r\n <template slot-scope=\"{ row, index }\" slot=\"action\">\r\n <a @click=\"edit(row, '编辑')\">编辑</a>\r\n <Divider type=\"vertical\" />\r\n <a @click=\"del(row, '删除这条信息', index)\">删除</a>\r\n </template>\r\n </Table>\r\n </div>\r\n </div>\r\n </div>\r\n <div v-else>\r\n <div\r\n v-if=\"name != 'sign_day_num' && a != 1 && guide != 2\"\r\n :class=\"name != 'admin_login_slide' ? 'content' : 'contents'\"\r\n >\r\n <div class=\"right-box\">\r\n <div class=\"hot_imgs\">\r\n <div class=\"title\" v-if=\"name == 'admin_login_slide'\">幻灯片设置</div>\r\n <div class=\"title\" v-else>轮播图设置</div>\r\n <div class=\"title-text\">建议尺寸:690 * 240px,拖拽图片可调整图片顺序哦,最多添加五张</div>\r\n <div class=\"list-box\">\r\n <draggable\r\n v-if=\"name == 'admin_login_slide'\"\r\n class=\"dragArea list-group Bbox\"\r\n :list=\"tabList.list\"\r\n group=\"peoples\"\r\n handle=\".move-icon\"\r\n >\r\n <div class=\"items\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <div class=\"move-icon\">\r\n <span class=\"iconfont icondrag2\"></span>\r\n </div>\r\n <div class=\"img-box\" @click=\"modalPicTap('单选', index)\">\r\n <img :src=\"item.slide\" alt=\"\" v-if=\"item.slide\" />\r\n <div class=\"upload-box\" v-else>\r\n <Icon type=\"ios-camera-outline\" size=\"36\" />\r\n </div>\r\n <div class=\"delect-btn\" @click.stop=\"bindDelete(item, index)\">\r\n <Icon type=\"md-close-circle\" size=\"26\" />\r\n </div>\r\n </div>\r\n <div class=\"info\"></div>\r\n </div>\r\n </draggable>\r\n <draggable v-else class=\"dragArea list-group\" :list=\"tabList.list\" group=\"peoples\" handle=\".move-icon\">\r\n <div class=\"item\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <div class=\"move-icon\">\r\n <span class=\"iconfont icondrag2\"></span>\r\n </div>\r\n <div class=\"img-box\" @click=\"modalPicTap('单选', index)\">\r\n <img :src=\"item.img\" alt=\"\" v-if=\"item.img\" />\r\n <div class=\"upload-box\" v-else>\r\n <Icon type=\"ios-camera-outline\" size=\"36\" />\r\n </div>\r\n <div class=\"delect-btn\" @click.stop=\"bindDelete(item, index)\">\r\n <Icon type=\"md-close-circle\" size=\"26\" />\r\n </div>\r\n </div>\r\n <div class=\"info\">\r\n <div class=\"info-item\">\r\n <span>图片名称:</span>\r\n <div class=\"input-box\">\r\n <Input v-model=\"item.comment\" placeholder=\"请填写名称\" />\r\n </div>\r\n </div>\r\n <div class=\"info-item\">\r\n <span>链接地址:</span>\r\n <div class=\"input-box\" @click=\"link(index)\">\r\n <Input v-model=\"item.link\" icon=\"ios-arrow-forward\" readonly placeholder=\"选择链接\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </draggable>\r\n <div>\r\n <Modal\r\n v-model=\"modalPic\"\r\n width=\"950px\"\r\n scrollable\r\n footer-hide\r\n closable\r\n title=\"上传商品图\"\r\n :mask-closable=\"false\"\r\n :z-index=\"999\"\r\n >\r\n <uploadPictures\r\n :isChoice=\"isChoice\"\r\n @getPic=\"getPic\"\r\n :gridBtn=\"gridBtn\"\r\n :gridPic=\"gridPic\"\r\n v-if=\"modalPic\"\r\n ></uploadPictures>\r\n </Modal>\r\n </div>\r\n </div>\r\n <template>\r\n <div class=\"add-btn\">\r\n <Button\r\n type=\"primary\"\r\n ghost\r\n style=\"width: 100px; height: 35px; background-color: #1890ff; color: #ffffff\"\r\n @click=\"addBox\"\r\n >添加图片\r\n </Button>\r\n </div>\r\n </template>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div v-if=\"guide === 2\" :class=\"name != 'admin_login_slide' ? 'content' : 'contents'\">\r\n <div class=\"right-box\">\r\n <div class=\"hot_imgs\">\r\n <div class=\"title\">引导页设置</div>\r\n <div class=\"title-text\">建议尺寸:750 * 1334px,拖拽图片可调整图片顺序哦,最多添加五张</div>\r\n <div class=\"list-box\">\r\n <div>\r\n <Form :model=\"formItem\" :label-width=\"80\">\r\n <FormItem label=\"开屏广告:\">\r\n <i-switch v-model=\"formItem.status\" :true-value=\"1\" :false-value=\"0\" size=\"large\">\r\n <span slot=\"开\">开启</span>\r\n <span slot=\"关\">关闭</span>\r\n </i-switch>\r\n </FormItem>\r\n <FormItem label=\"广告时间:\">\r\n <Input\r\n v-model.number=\"formItem.time\"\r\n type=\"number\"\r\n placeholder=\"请输入开屏广告时间\"\r\n style=\"width: 150px\"\r\n ></Input>\r\n 单位(秒)\r\n </FormItem>\r\n </Form>\r\n </div>\r\n <draggable class=\"dragArea list-group\" :list=\"tabList.list\" group=\"peoples\" handle=\".move-icon\">\r\n <div class=\"item\" v-for=\"(item, index) in tabList.list\" :key=\"index\">\r\n <div class=\"move-icon\">\r\n <span class=\"iconfont icondrag2\"></span>\r\n </div>\r\n <div class=\"img-box\" @click=\"modalPicTap('单选', index)\">\r\n <img :src=\"item.img\" alt=\"\" v-if=\"item.img\" />\r\n <div class=\"upload-box\" v-else>\r\n <Icon type=\"ios-camera-outline\" size=\"36\" />\r\n </div>\r\n <div class=\"delect-btn\" @click.stop=\"bindDelete(item, index)\">\r\n <Icon type=\"md-close-circle\" size=\"26\" />\r\n </div>\r\n </div>\r\n <div class=\"info\">\r\n <div class=\"info-item\">\r\n <span>图片名称:</span>\r\n <div class=\"input-box\">\r\n <Input v-model=\"item.comment\" placeholder=\"请填写名称\" />\r\n </div>\r\n </div>\r\n <div class=\"info-item\">\r\n <span>链接地址:</span>\r\n <div class=\"input-box\" @click=\"link(index)\">\r\n <Input v-model=\"item.link\" icon=\"ios-arrow-forward\" readonly placeholder=\"选择链接\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </draggable>\r\n <div>\r\n <Modal\r\n v-model=\"modalPic\"\r\n width=\"950px\"\r\n scrollable\r\n footer-hide\r\n closable\r\n title=\"上传商品图\"\r\n :mask-closable=\"false\"\r\n :z-index=\"999\"\r\n >\r\n <uploadPictures\r\n :isChoice=\"isChoice\"\r\n @getPic=\"getPic\"\r\n :gridBtn=\"gridBtn\"\r\n :gridPic=\"gridPic\"\r\n v-if=\"modalPic\"\r\n ></uploadPictures>\r\n </Modal>\r\n </div>\r\n </div>\r\n <template v-if=\"tabList.list.length < 5\">\r\n <div class=\"add-btn\">\r\n <Button\r\n type=\"primary\"\r\n ghost\r\n style=\"width: 100px; height: 35px; background-color: #1890ff; color: #ffffff\"\r\n @click=\"addBox\"\r\n >添加图片\r\n </Button>\r\n </div>\r\n </template>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <linkaddress ref=\"linkaddres\" @linkUrl=\"linkUrl\"></linkaddress>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport WangEditor from '@/components/wangEditor/index.vue';\r\nimport Setting from '@/setting';\r\nimport { diyGetInfo, diySave, getColorChange } from '@/api/diy';\r\nimport { mapState } from 'vuex';\r\nimport editFrom from '@/components/from/from';\r\nimport { productGetTempKeysApi, uploadType } from '@/api/product';\r\nimport {\r\n groupAllApi,\r\n groupDataListApi,\r\n groupSaveApi,\r\n openAdvSave,\r\n groupDataAddApi,\r\n groupDataHeaderApi,\r\n groupDataEditApi,\r\n groupDataSetApi,\r\n getAgreement,\r\n setAgreement,\r\n getOpenAdv,\r\n} from '@/api/system';\r\nimport draggable from 'vuedraggable';\r\nimport uploadPictures from '@/components/uploadPictures';\r\nimport linkaddress from '@/components/linkaddress';\r\nimport { getCookies } from '@/libs/util';\r\n\r\nexport default {\r\n name: 'list',\r\n components: {\r\n editFrom,\r\n draggable,\r\n uploadPictures,\r\n linkaddress,\r\n WangEditor,\r\n },\r\n computed: {\r\n bgcolors() {\r\n return {\r\n '--color-theme': this.bgCol,\r\n };\r\n },\r\n labelWidth() {\r\n return this.isMobile ? undefined : 120;\r\n },\r\n labelPosition() {\r\n return this.isMobile ? 'top' : 'right';\r\n },\r\n ...mapState('admin/layout', ['menuCollapse']),\r\n },\r\n data() {\r\n return {\r\n formValidate: {\r\n content: '',\r\n },\r\n ruleValidate: {},\r\n myConfig: {\r\n autoHeightEnabled: false, // 编辑器不自动被内容撑高\r\n initialFrameHeight: 500, // 初始容器高度\r\n initialFrameWidth: '100%', // 初始容器宽度\r\n UEDITOR_HOME_URL: '/admin/UEditor/',\r\n serverUrl: '',\r\n },\r\n a: 0, //判断的隐私协议\r\n guide: 0,\r\n bgimg: 0,\r\n columns1: [],\r\n bgCol: '',\r\n name: 'routine_home_bast_banner',\r\n grid: {\r\n xl: 7,\r\n lg: 7,\r\n md: 12,\r\n sm: 24,\r\n xs: 24,\r\n },\r\n loading: false,\r\n sginList: [],\r\n progress: 0, // 进度条默认0\r\n swiperOption: {\r\n //显示分页\r\n pagination: {\r\n el: '.swiper-pagination',\r\n },\r\n //设置点击箭头\r\n navigation: {\r\n nextEl: '.swiper-button-next',\r\n prevEl: '.swiper-button-prev',\r\n },\r\n //自动轮播\r\n autoplay: {\r\n delay: 2000,\r\n //当用户滑动图片后继续自动轮播\r\n disableOnInteraction: false,\r\n },\r\n //开启循环模式\r\n loop: false,\r\n },\r\n url: '',\r\n BaseURL: Setting.apiBaseURL.replace(/adminapi/, ''),\r\n pageId: 0,\r\n theme3: 'light',\r\n tabList: [],\r\n upload_type: '', //视频上传类型 1 本地上传 2 3 4 OSS上传\r\n uploadData: {}, // 上传参数\r\n lastObj: {\r\n add_time: '',\r\n comment: '',\r\n gid: '',\r\n id: '',\r\n img: '',\r\n link: '',\r\n sort: '',\r\n status: 1,\r\n },\r\n isChoice: '单选',\r\n modalPic: false,\r\n gridPic: {\r\n xl: 6,\r\n lg: 8,\r\n md: 12,\r\n sm: 12,\r\n xs: 12,\r\n },\r\n gridBtn: {\r\n xl: 4,\r\n lg: 8,\r\n md: 8,\r\n sm: 8,\r\n xs: 8,\r\n },\r\n groupAll: [],\r\n activeIndex: 0,\r\n sortName: null,\r\n activeIndexs: 0,\r\n cmsList: [],\r\n loadingExist: false,\r\n formItem: {\r\n time: '',\r\n type: 'pic',\r\n status: 1,\r\n value: [],\r\n video_link: '',\r\n },\r\n fileUrl: Setting.apiBaseURL + '/file/upload',\r\n cardUrl: Setting.apiBaseURL + '/file/upload/1',\r\n header: {},\r\n type: 0,\r\n upload: {\r\n videoIng: false, // 是否显示进度条;\r\n },\r\n };\r\n },\r\n created() {\r\n this.color();\r\n this.uploadType();\r\n this.getToken();\r\n },\r\n mounted() {\r\n this.getGroupAll();\r\n this.info();\r\n this.url = this.BaseURL + 'pages/columnGoods/HotNewGoods/index?type=1';\r\n },\r\n methods: {\r\n getEditorContent(data) {\r\n this.formValidate.content = data;\r\n },\r\n // 删除视频;\r\n delVideo() {\r\n let that = this;\r\n that.$set(that.formItem, 'video_link', '');\r\n },\r\n //获取视频上传类型\r\n uploadType() {\r\n uploadType().then((res) => {\r\n this.upload_type = res.data.upload_type;\r\n });\r\n },\r\n // 上传成功\r\n handleSuccess(res, file, fileList) {\r\n if (res.status === 200) {\r\n this.$set(this.formItem, 'video_link', res.data.src);\r\n this.$Message.success(res.msg);\r\n } else {\r\n this.$Message.error(res.msg);\r\n }\r\n },\r\n zh_uploadFile() {\r\n if (this.video_link) {\r\n this.formValidate.video_link = this.video_link;\r\n } else {\r\n this.$refs.refid.click();\r\n }\r\n },\r\n zh_uploadFile_change(evfile) {\r\n let that = this;\r\n let suffix = evfile.target.files[0].name.substr(evfile.target.files[0].name.indexOf('.'));\r\n if (suffix.indexOf('.mp4') === -1) {\r\n return that.$Message.error('只能上传MP4文件');\r\n }\r\n productGetTempKeysApi()\r\n .then((res) => {\r\n that.$videoCloud\r\n .videoUpload({\r\n type: res.data.type,\r\n evfile: evfile,\r\n res: res,\r\n uploading(status, progress) {\r\n that.upload.videoIng = status;\r\n },\r\n })\r\n .then((res) => {\r\n that.formValidate.video_link = res.url;\r\n that.$Message.success('视频上传成功');\r\n })\r\n .catch((res) => {\r\n that.$Message.error(res);\r\n });\r\n })\r\n .catch((res) => {\r\n that.$Message.error(res.msg);\r\n });\r\n },\r\n // 上传头部token\r\n getToken() {\r\n this.header['Authori-zation'] = 'Bearer ' + getCookies('token');\r\n },\r\n beforeUpload() {\r\n this.uploadData = {};\r\n let promise = new Promise((resolve) => {\r\n this.$nextTick(function () {\r\n resolve(true);\r\n });\r\n });\r\n return promise;\r\n },\r\n linkUrl(e) {\r\n this.tabList.list[this.activeIndexs].link = e;\r\n },\r\n color() {\r\n getColorChange('color_change').then((res) => {\r\n switch (res.data.status) {\r\n case 1:\r\n this.bgCol = '#3875EA';\r\n this.bgimg = 1;\r\n break;\r\n case 2:\r\n this.bgCol = '#00C050';\r\n this.bgimg = 2;\r\n break;\r\n case 3:\r\n this.bgCol = '#E93323';\r\n this.bgimg = 3;\r\n break;\r\n case 4:\r\n this.bgCol = '#FF448F';\r\n this.bgimg = 4;\r\n break;\r\n case 5:\r\n this.bgCol = '#FE5C2D';\r\n this.bgimg = 5;\r\n break;\r\n }\r\n });\r\n },\r\n // 添加表单\r\n groupAdd() {\r\n this.$modalForm(groupDataAddApi({ gid: this.pageId, config_name: this.name }, 'setting/group_data/create')).then(\r\n () => {\r\n this.url = this.BaseURL + 'pages/users/user_sgin/index';\r\n this.info();\r\n },\r\n );\r\n },\r\n info() {\r\n groupDataListApi({ config_name: this.name }, 'setting/group_data')\r\n .then(async (res) => {\r\n this.tabList = res.data;\r\n if (this.name == 'admin_login_slide') {\r\n this.tabList.list.forEach((item, index, array) => {\r\n if (typeof item.slide != 'string' && item.slide != 'undefined') {\r\n item.slide = item.slide[0];\r\n }\r\n });\r\n } else if (this.name == 'sign_day_num') {\r\n this.cmsList = res.data.list;\r\n } else if (this.name == 'user_recharge_quota') {\r\n this.sginList = res.data;\r\n } else {\r\n this.tabList.list.forEach((item, index, array) => {\r\n if (typeof item.img != 'string' && item.img != 'undefined') {\r\n item.img = item.img[0];\r\n }\r\n });\r\n }\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n edits(row) {\r\n this.pageId = row.id || 0;\r\n this.name = row.config_name || '';\r\n if (row == 1) {\r\n this.a = 1;\r\n this.guide = 0;\r\n this.getAgreement();\r\n } else if (row == 2) {\r\n this.a = 0;\r\n this.guide = 2;\r\n getOpenAdv().then((res) => {\r\n if (res.data) {\r\n this.formItem = res.data;\r\n this.tabList.list = res.data.value;\r\n } else {\r\n this.formItem = {\r\n time: '',\r\n type: 'pic',\r\n status: 1,\r\n value: [],\r\n video_link: '',\r\n };\r\n this.tabList.list = [];\r\n }\r\n });\r\n } else {\r\n this.info();\r\n this.guide = 0;\r\n this.a = 0;\r\n switch (row.config_name) {\r\n case 'routine_home_bast_banner':\r\n this.url = this.BaseURL + 'pages/columnGoods/HotNewGoods/index?type=1&name=精品推荐';\r\n break;\r\n case 'sign_day_num':\r\n this.url = '';\r\n this.getListHeader();\r\n break;\r\n case 'combination_banner':\r\n this.url = this.BaseURL + 'pages/activity/goods_combination/index';\r\n break;\r\n case 'routine_home_hot_banner':\r\n this.url = this.BaseURL + 'pages/columnGoods/HotNewGoods/index?type=2&name=热门榜单';\r\n break;\r\n case 'routine_home_new_banner':\r\n this.url = this.BaseURL + 'pages/columnGoods/HotNewGoods/index?type=3&name=首发新品';\r\n break;\r\n case 'routine_home_benefit_banner':\r\n this.url = this.BaseURL + 'pages/columnGoods/HotNewGoods/index?type=4&name=促销单品';\r\n break;\r\n case 'user_recharge_quota':\r\n this.url = '';\r\n this.getListHeader();\r\n break;\r\n case 'admin_login_slide':\r\n this.url = '';\r\n break;\r\n case 'integral_shop_banner':\r\n this.url = '';\r\n break;\r\n }\r\n }\r\n },\r\n addBox() {\r\n if (this.tabList.list.length == 0) {\r\n this.tabList.list.push(this.lastObj);\r\n this.lastObj = {\r\n add_time: '',\r\n comment: '',\r\n gid: '',\r\n id: '',\r\n img: '',\r\n link: '',\r\n sort: '',\r\n status: 1,\r\n };\r\n } else {\r\n if (this.tabList.list.length == 5) {\r\n this.$Message.warning('最多添加五张呦');\r\n } else {\r\n let obj = JSON.parse(JSON.stringify(this.lastObj));\r\n this.tabList.list.push(obj);\r\n }\r\n }\r\n },\r\n // 删除\r\n bindDelete(item, index) {\r\n this.tabList.list.splice(index, 1);\r\n },\r\n // 点击图文封面\r\n modalPicTap(title, index) {\r\n this.activeIndex = index;\r\n this.modalPic = true;\r\n },\r\n // 获取图片信息\r\n getPic(pc) {\r\n this.$nextTick(() => {\r\n if (this.name == 'admin_login_slide') {\r\n this.tabList.list[this.activeIndex].slide = pc.att_dir;\r\n } else {\r\n this.tabList.list[this.activeIndex].img = pc.att_dir;\r\n }\r\n this.modalPic = false;\r\n });\r\n },\r\n save() {\r\n if (this.a == 1) {\r\n this.onsubmit('formValidate');\r\n } else if (this.guide == 2) {\r\n this.formItem.value = this.tabList.list;\r\n openAdvSave(this.formItem).then((res) => {\r\n this.$Message.success(res.msg);\r\n });\r\n } else {\r\n this.loadingExist = true;\r\n groupSaveApi({\r\n gid: this.pageId,\r\n config_name: this.name,\r\n data: this.tabList.list,\r\n })\r\n .then((res) => {\r\n this.loadingExist = false;\r\n this.$Message.success(res.msg);\r\n })\r\n .catch((err) => {\r\n this.loadingExist = false;\r\n this.$Message.error(err.msg);\r\n });\r\n }\r\n },\r\n link(index) {\r\n this.activeIndexs = index;\r\n this.$refs.linkaddres.modals = true;\r\n },\r\n getListHeader() {\r\n this.loading = true;\r\n groupDataHeaderApi({ config_name: this.name }, 'setting/sign_data/header')\r\n .then((res) => {\r\n let data = res.data;\r\n let header = data.header;\r\n let index = [];\r\n this.columns1 = header;\r\n this.loading = false;\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n // 编辑\r\n edit(row) {\r\n this.$modalForm(\r\n groupDataEditApi({ gid: this.pageId, config_name: this.name }, 'setting/group_data/' + row.id + '/edit'),\r\n ).then(() => {\r\n this.info();\r\n this.url = this.BaseURL + 'pages/users/user_sgin/index';\r\n });\r\n },\r\n // 删除\r\n del(row, tit, num) {\r\n let delfromData = {\r\n title: tit,\r\n num: num,\r\n url: 'setting/group_data/' + row.id,\r\n method: 'DELETE',\r\n ids: '',\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.info();\r\n this.$Message.success(res.msg);\r\n })\r\n .catch((res) => {\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n // 修改是否显示\r\n onchangeIsShow(row) {\r\n groupDataSetApi('setting/group_data/set_status/' + row.id + '/' + row.status)\r\n .then(async (res) => {\r\n this.url = this.BaseURL + '/pages/users/user_sgin/index';\r\n this.$Message.success(res.msg);\r\n this.info();\r\n })\r\n .catch((res) => {\r\n this.url = this.BaseURL + '/pages/users/user_sgin/index';\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n getGroupAll() {\r\n groupAllApi()\r\n .then(async (res) => {\r\n this.groupAll = res.data;\r\n this.sortName = res.data[0].config_name;\r\n this.pageId = res.data[0].id;\r\n })\r\n .catch((res) => {\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n getContent(val) {\r\n this.formValidate.content = val;\r\n },\r\n // 提交数据\r\n onsubmit(name) {\r\n this.$refs[name].validate((valid) => {\r\n if (valid) {\r\n setAgreement(this.formValidate)\r\n .then(async (res) => {\r\n this.$Message.success(res.msg);\r\n })\r\n .catch((res) => {\r\n this.$Message.error(res.msg);\r\n });\r\n } else {\r\n return false;\r\n }\r\n });\r\n },\r\n //详情\r\n getAgreement() {\r\n getAgreement()\r\n .then(async (res) => {\r\n let data = res.data;\r\n this.formValidate = {\r\n content: data.content,\r\n };\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"stylus\">\r\n/deep/ .ivu-menu-vertical .ivu-menu-item-group-title {\r\n display: none;\r\n}\r\n\r\n/deep/ .ivu-menu-vertical.ivu-menu-light:after {\r\n display: none;\r\n}\r\n\r\n/deep/.ivu-form-item-content {\r\n margin-left: 0px !important;\r\n}\r\n\r\n.nofont {\r\n text-align: center;\r\n line-height: 123px;\r\n}\r\n\r\n.nofonts {\r\n text-align: center;\r\n line-height: 105px;\r\n}\r\n\r\n.save {\r\n width: 100%;\r\n margin: 0 auto;\r\n text-align: center;\r\n background-color: #FFF;\r\n bottom: 0;\r\n padding: 16px;\r\n border-top: 3px solid #f5f7f9;\r\n}\r\n\r\n.form {\r\n .goodsTitle {\r\n margin-bottom: 25px;\r\n }\r\n\r\n .goodsTitle ~ .goodsTitle {\r\n margin-top: 20px;\r\n }\r\n\r\n .goodsTitle .title {\r\n border-bottom: 2px solid #1890ff;\r\n padding: 0 8px 12px 5px;\r\n color: #000;\r\n font-size: 14px;\r\n }\r\n\r\n .goodsTitle .icons {\r\n font-size: 15px;\r\n margin-right: 8px;\r\n color: #999;\r\n }\r\n\r\n .add {\r\n font-size: 12px;\r\n color: #1890ff;\r\n padding: 0 12px;\r\n cursor: pointer;\r\n }\r\n\r\n .radio {\r\n margin-right: 20px;\r\n }\r\n\r\n .upLoad {\r\n width: 58px;\r\n height: 58px;\r\n line-height: 58px;\r\n border: 1px dotted rgba(0, 0, 0, 0.1);\r\n border-radius: 4px;\r\n background: rgba(0, 0, 0, 0.02);\r\n }\r\n\r\n .iconfont {\r\n color: #898989;\r\n }\r\n\r\n .pictrue {\r\n width: 60px;\r\n height: 60px;\r\n border: 1px dotted rgba(0, 0, 0, 0.1);\r\n margin-right: 10px;\r\n }\r\n\r\n .pictrue img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n\r\n.agreement-box {\r\n width: 310px;\r\n height: 550px;\r\n border-radius: 10px;\r\n background: rgba(0, 0, 0, 0);\r\n border: 1px solid #EEEEEE;\r\n opacity: 1;\r\n position: relative;\r\n\r\n .template {\r\n position: absolute;\r\n width: 100%;\r\n height: 100%;\r\n top: 0;\r\n left: 0;\r\n border-radius: 10px;\r\n background-color: #817e81;\r\n }\r\n\r\n .htmls_box {\r\n font-size: 12px;\r\n width: 259px;\r\n height: 430px;\r\n border-radius: 10px;\r\n background-color: #fff;\r\n position: absolute;\r\n top: 58px;\r\n left: 26px;\r\n\r\n .htmls_top {\r\n position: absolute;\r\n top: 8px;\r\n left: 0;\r\n height: 34px;\r\n text-align: center;\r\n width: 100%;\r\n line-height: 35px;\r\n font-weight: 600;\r\n font-size: 20px;\r\n }\r\n\r\n .htmls_font {\r\n position: absolute;\r\n bottom: 0;\r\n left: 0;\r\n padding: 15px 15px;\r\n text-align: center;\r\n width: 100%;\r\n\r\n div {\r\n height: 35px;\r\n line-height: 35px;\r\n border-radius: 20px;\r\n }\r\n\r\n .ok {\r\n background-color: #f33316;\r\n color: #FFFFFF;\r\n }\r\n }\r\n\r\n .htmls {\r\n position: absolute;\r\n background-color: #fff;\r\n top: 50px;\r\n left: 0;\r\n width: 259px;\r\n height: 281px;\r\n border-radius: 4px;\r\n overflow: auto;\r\n padding: 5px 15px;\r\n word-break: break-word;\r\n }\r\n\r\n .htmls::-webkit-scrollbar {\r\n display: none;\r\n }\r\n }\r\n}\r\n\r\n.Bbox {\r\n width: 495px;\r\n display: flex;\r\n flex-wrap: wrap;\r\n}\r\n\r\n.item {\r\n margin-right: 15px;\r\n border: 1px dashed #dbdbdb;\r\n padding-bottom: 10px;\r\n padding-right: 15px;\r\n padding-top: 20px;\r\n}\r\n\r\n.items {\r\n margin-right: 15px;\r\n border: 1px dashed #dbdbdb;\r\n padding-bottom: 10px;\r\n padding-top: 15px;\r\n position: relative;\r\n display: flex;\r\n margin-top: 20px;\r\n\r\n .move-icon {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 30px;\r\n height: 80px;\r\n cursor: move;\r\n color: #D8D8D8;\r\n }\r\n\r\n .img-box {\r\n position: relative;\r\n width: 80px;\r\n height: 80px;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n\r\n .info {\r\n flex: 1;\r\n margin-left: 22px;\r\n\r\n .info-item {\r\n display: flex;\r\n align-items: center;\r\n margin-bottom: 10px;\r\n\r\n span {\r\n // width 40px\r\n font-size: 13px;\r\n\r\n .input-box {\r\n flex: 1;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .delect-btn {\r\n position: absolute;\r\n right: -12px;\r\n top: -12px;\r\n color: #999999;\r\n\r\n .iconfont {\r\n font-size: 28px;\r\n color: #999;\r\n }\r\n }\r\n}\r\n\r\n.table {\r\n width: 700px;\r\n color: #515a6e;\r\n font-size: 14px;\r\n background-color: #fff;\r\n margin-left: 20px;\r\n}\r\n\r\n.contents {\r\n width: 150px;\r\n\r\n .right-box {\r\n margin-left: 40px;\r\n }\r\n\r\n .title-text {\r\n width: 500px;\r\n }\r\n}\r\n\r\n.pciframe {\r\n margin-left: 20px;\r\n width: 430px;\r\n height: 280px;\r\n background: #FFFFFF;\r\n border: 1px solid #EEEEEE;\r\n border-radius: 13px;\r\n position: relative;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n\r\n .pciframe-box {\r\n background: rgba(0, 0, 0, 0);\r\n // border: 1px solid #EEEEEE;\r\n border-radius: 4px;\r\n }\r\n\r\n .pcmoddile_goods {\r\n position: absolute;\r\n top: 69px;\r\n width: 171px;\r\n height: 140px;\r\n border-top-left-radius: 2px;\r\n border-bottom-left-radius: 2px;\r\n left: 65px;\r\n background-color: #fff;\r\n }\r\n\r\n .pcswiperimg_goods {\r\n height: 140px;\r\n background-color: #f5f5f5;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n}\r\n\r\n.link {\r\n display: inline-block;\r\n width: 100%;\r\n height: 32px;\r\n line-height: 1.5;\r\n padding: 4px 7px;\r\n border: 1px solid #dcdee2;\r\n border-radius: 4px;\r\n background-color: #fff;\r\n position: relative;\r\n cursor: text;\r\n transition: border 0.2s ease-in-out, background 0.2s ease-in-out, box-shadow 0.2s ease-in-out;\r\n font-size: 13px;\r\n font-family: PingFangSC-Regular;\r\n line-height: 22px;\r\n color: rgba(0, 0, 0, 0.25);\r\n opacity: 1;\r\n cursor: pointer;\r\n\r\n .you {\r\n color: #999999;\r\n float: right;\r\n margin-right: 11px;\r\n }\r\n}\r\n\r\n.swiperimg {\r\n width: 310px;\r\n max-height: 126px;\r\n border-top-left-radius: 10px;\r\n border-top-right-radius: 10px;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n\r\n.swiperimgs {\r\n width: 310px;\r\n height: 100%;\r\n border-radius: 10px;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n\r\n.swiperimg_goods {\r\n width: 284px;\r\n height: 124px;\r\n border-radius: 4px;\r\n line-height: 99px;\r\n text-align: center;\r\n background-color: #f5f5f5;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n\r\n.title {\r\n padding: 0 0 13px 0;\r\n font-weight: bold;\r\n font-size: 15px;\r\n border-left: 2px solid #1890FF;\r\n height: 23px;\r\n padding-left: 10px;\r\n}\r\n\r\n.title-text {\r\n padding: 0 0 0px 16px;\r\n color: #999;\r\n font-size: 12px;\r\n margin-top: 10px;\r\n}\r\n\r\n.content {\r\n // width 510px;\r\n .right-box {\r\n margin-left: 40px;\r\n }\r\n}\r\n\r\n.box {\r\n border-top: 3px solid #f5f7f9;\r\n padding: 10px;\r\n padding-top: 25px;\r\n width: 100%;\r\n\r\n .save {\r\n background-color: #1890FF;\r\n color: #FFFFFF;\r\n width: 71px;\r\n height: 30px;\r\n margin: 0 auto;\r\n text-align: center;\r\n line-height: 30px;\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n.iframe {\r\n margin-left: 20px;\r\n position: relative;\r\n width: 310px;\r\n height: 550px;\r\n background: #FFFFFF;\r\n border: 1px solid #EEEEEE;\r\n opacity: 1;\r\n border-radius: 10px;\r\n}\r\n\r\n.moddile {\r\n position: absolute;\r\n width: 310px;\r\n height: 550px;\r\n top: 0px;\r\n opacity: 0;\r\n left: 0px;\r\n border-radius: 4px;\r\n}\r\n\r\n.moddile_box {\r\n position: absolute;\r\n top: 0px;\r\n width: 310px;\r\n height: 115px;\r\n border-top-left-radius: 4px;\r\n border-top-right-radius: 4px;\r\n left: 0px;\r\n background-color: #f5f5f5;\r\n}\r\n\r\n.moddile_goods {\r\n position: absolute;\r\n top: 12px;\r\n width: 284px;\r\n height: 124px;\r\n /* border-top-left-radius: 10px; */\r\n /* border-top-right-radius: 10px; */\r\n border-radius: 5px;\r\n left: 13px;\r\n line-height: 99px;\r\n text-align: center;\r\n background-color: #f5f5f5;\r\n}\r\n\r\n.iframe-box {\r\n width: 310px;\r\n height: 100%;\r\n border-radius: 10px;\r\n // margin: 30px 15px 0px 15px\r\n background: rgba(0, 0, 0, 0);\r\n border: 1px solid #EEEEEE;\r\n opacity: 1;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n\r\n.left-wrapper {\r\n min-width: 213px;\r\n background: #fff;\r\n border-right: 1px solid #dcdee2;\r\n}\r\n\r\n.menu-item {\r\n position: relative;\r\n display: flex;\r\n justify-content: space-between;\r\n word-break: break-all;\r\n\r\n .icon-box {\r\n z-index: 3;\r\n position: absolute;\r\n right: 20px;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n display: none;\r\n }\r\n\r\n &:hover .icon-box {\r\n display: block;\r\n }\r\n\r\n .right-menu {\r\n z-index: 10;\r\n position: absolute;\r\n right: -106px;\r\n top: -11px;\r\n width: auto;\r\n min-width: 121px;\r\n }\r\n}\r\n\r\n.tabBox_img {\r\n width: 36px;\r\n height: 36px;\r\n border-radius: 4px;\r\n cursor: pointer;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n\r\n.ivu-menu {\r\n z-index: auto;\r\n}\r\n\r\n.icondrag2 {\r\n font-size: 26px;\r\n color: #d8d8d8;\r\n}\r\n\r\n.hot_imgs {\r\n margin-bottom: 20px;\r\n\r\n .title {\r\n font-size: 14px;\r\n }\r\n\r\n .list-box {\r\n .item {\r\n position: relative;\r\n display: flex;\r\n margin-top: 20px;\r\n\r\n .move-icon {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 30px;\r\n height: 80px;\r\n cursor: move;\r\n color: #D8D8D8;\r\n }\r\n\r\n .img-box {\r\n position: relative;\r\n width: 80px;\r\n height: 80px;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n\r\n .info {\r\n flex: 1;\r\n margin-left: 22px;\r\n\r\n .info-item {\r\n display: flex;\r\n align-items: center;\r\n margin-bottom: 10px;\r\n\r\n span {\r\n // width 40px\r\n font-size: 13px;\r\n }\r\n\r\n .input-box {\r\n flex: 1;\r\n }\r\n }\r\n }\r\n\r\n .delect-btn {\r\n position: absolute;\r\n right: -12px;\r\n top: -12px;\r\n color: #999999;\r\n\r\n .iconfont {\r\n font-size: 28px;\r\n color: #999;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .add-btn {\r\n margin-top: 20px;\r\n }\r\n}\r\n\r\n.upload-box {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100%;\r\n height: 100%;\r\n background: #ccc;\r\n}\r\n\r\n.iconfont {\r\n color: #DDDDDD;\r\n font-size: 28px;\r\n}\r\n\r\n.iframe-boxs::-webkit-scrollbar {\r\n display: none;\r\n}\r\n\r\n.sgin_iframe::-webkit-scrollbar {\r\n display: none;\r\n}\r\n\r\n.iframe-boxs {\r\n width: 310px;\r\n height: 550px;\r\n border-radius: 10px;\r\n background: rgba(0, 0, 0, 0);\r\n border: 1px solid #EEEEEE;\r\n opacity: 1;\r\n overflow: auto;\r\n\r\n .moneyBox {\r\n background-color: var(--color-theme);\r\n height: 414px;\r\n border-radius: 10px;\r\n\r\n .box1 {\r\n text-align: center;\r\n color: #FFFFFF;\r\n padding-bottom: 15px;\r\n\r\n .font1 {\r\n padding-top: 20px;\r\n // padding-bottom 15px\r\n font-size: 12px;\r\n opacity: 0.6;\r\n }\r\n\r\n .font2 {\r\n font-size: 30px;\r\n font-style: normal;\r\n opacity: 0.9;\r\n }\r\n }\r\n\r\n .moneyBox_content {\r\n background-color: #FFFFFF;\r\n height: 317px;\r\n border-radius: 4px;\r\n\r\n .box2 {\r\n display: flex;\r\n justify-content: space-around;\r\n height: 35px;\r\n line-height: 35px;\r\n margin-bottom: 10px;\r\n\r\n div:nth-child(1) {\r\n font-weight: bold;\r\n border-bottom: 2px solid var(--color-theme);\r\n }\r\n }\r\n\r\n .box3 {\r\n padding: 0px 10px;\r\n display: flex;\r\n justify-content: left;\r\n flex-wrap: wrap;\r\n\r\n .box3_box {\r\n width: 90px;\r\n height: 55px;\r\n border-radius: 9px;\r\n background-color: #f4f4f4;\r\n color: #888;\r\n margin-bottom: 10px;\r\n text-align: center;\r\n padding-top: 3px;\r\n font-size: 19px;\r\n margin-right: 3px;\r\n margin-left: 3px;\r\n\r\n .font {\r\n font-size: 11px;\r\n font-style: normal;\r\n }\r\n }\r\n\r\n .box3_box:nth-child(1) {\r\n width: 90px;\r\n height: 55px;\r\n border-radius: 9px;\r\n background-color: var(--color-theme);\r\n color: #FFFFFF;\r\n text-align: center;\r\n padding-top: 3px;\r\n margin-right: 3px;\r\n margin-left: 3px;\r\n }\r\n\r\n .other {\r\n line-height: 55px;\r\n }\r\n }\r\n\r\n .box4 {\r\n padding: 0px 10px;\r\n\r\n .tips {\r\n font-size: 14px;\r\n color: #333333;\r\n font-weight: 800;\r\n margin-bottom: 7px;\r\n margin-top: 10px;\r\n }\r\n\r\n .tips-samll {\r\n font-size: 12px;\r\n color: #333333;\r\n margin-bottom: 7px;\r\n\r\n p {\r\n margin: 2px 0px;\r\n }\r\n }\r\n }\r\n\r\n .box5 {\r\n font-size: 15px;\r\n width: 225px;\r\n height: 40px;\r\n border-radius: 25px;\r\n margin: 23px auto 0 auto;\r\n line-height: 40px;\r\n text-align: center;\r\n background-color: var(--color-theme);\r\n color: #FFFFFF;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.bnt {\r\n // width 80px!important\r\n}\r\n\r\n/deep/.i-layout-page-header {\r\n height: 66px;\r\n background-color: #fff;\r\n border-bottom: 1px solid #e8eaec;\r\n}\r\n\r\n/deep/.ivu-page-header {\r\n border-bottom: unset;\r\n position: fixed;\r\n z-index: 9;\r\n width: 100%;\r\n}\r\n\r\n/deep/.i-layout-page-header {\r\n height: 66px;\r\n background-color: #fff;\r\n border-bottom: 1px solid #e8eaec;\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n}\r\n\r\n.box-wrapper {\r\n display: flex;\r\n flex-wrap: nowrap;\r\n padding: 20px;\r\n background-color: #fff;\r\n border-radius: 5px;\r\n margin: 20px;\r\n}\r\n\r\n.iview-video-style {\r\n width: 100%;\r\n height: 180px;\r\n border-radius: 10px;\r\n background-color: #707070;\r\n margin-top: 10px;\r\n position: relative;\r\n overflow: hidden;\r\n}\r\n\r\n.iview-video-style .iconv {\r\n color: #fff;\r\n line-height: 180px;\r\n width: 50px;\r\n height: 50px;\r\n display: inherit;\r\n font-size: 26px;\r\n position: absolute;\r\n top: -74px;\r\n left: 50%;\r\n margin-left: -25px;\r\n}\r\n\r\n.iview-video-style .mark {\r\n position: absolute;\r\n width: 100%;\r\n height: 30px;\r\n top: 0;\r\n background-color: rgba(0, 0, 0, 0.5);\r\n text-align: center;\r\n}\r\n</style>\r\n"]}]}