87cc7e4917c58f0be399c5ca7e1f4cae.json 77 KB

1
  1. {"remainingRequest":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\system\\group\\visualization.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\system\\group\\visualization.vue","mtime":1761185180217},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQppbXBvcnQgV2FuZ0VkaXRvciBmcm9tICdAL2NvbXBvbmVudHMvd2FuZ0VkaXRvci9pbmRleC52dWUnOw0KaW1wb3J0IFNldHRpbmcgZnJvbSAnQC9zZXR0aW5nJzsNCmltcG9ydCB7IGRpeUdldEluZm8sIGRpeVNhdmUsIGdldENvbG9yQ2hhbmdlIH0gZnJvbSAnQC9hcGkvZGl5JzsNCmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCc7DQppbXBvcnQgZWRpdEZyb20gZnJvbSAnQC9jb21wb25lbnRzL2Zyb20vZnJvbSc7DQppbXBvcnQgeyBwcm9kdWN0R2V0VGVtcEtleXNBcGksIHVwbG9hZFR5cGUgfSBmcm9tICdAL2FwaS9wcm9kdWN0JzsNCmltcG9ydCB7DQogIGdyb3VwQWxsQXBpLA0KICBncm91cERhdGFMaXN0QXBpLA0KICBncm91cFNhdmVBcGksDQogIG9wZW5BZHZTYXZlLA0KICBncm91cERhdGFBZGRBcGksDQogIGdyb3VwRGF0YUhlYWRlckFwaSwNCiAgZ3JvdXBEYXRhRWRpdEFwaSwNCiAgZ3JvdXBEYXRhU2V0QXBpLA0KICBnZXRBZ3JlZW1lbnQsDQogIHNldEFncmVlbWVudCwNCiAgZ2V0T3BlbkFkdiwNCn0gZnJvbSAnQC9hcGkvc3lzdGVtJzsNCmltcG9ydCBkcmFnZ2FibGUgZnJvbSAndnVlZHJhZ2dhYmxlJzsNCmltcG9ydCB1cGxvYWRQaWN0dXJlcyBmcm9tICdAL2NvbXBvbmVudHMvdXBsb2FkUGljdHVyZXMnOw0KaW1wb3J0IGxpbmthZGRyZXNzIGZyb20gJ0AvY29tcG9uZW50cy9saW5rYWRkcmVzcyc7DQppbXBvcnQgeyBnZXRDb29raWVzIH0gZnJvbSAnQC9saWJzL3V0aWwnOw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICdsaXN0JywNCiAgY29tcG9uZW50czogew0KICAgIGVkaXRGcm9tLA0KICAgIGRyYWdnYWJsZSwNCiAgICB1cGxvYWRQaWN0dXJlcywNCiAgICBsaW5rYWRkcmVzcywNCiAgICBXYW5nRWRpdG9yLA0KICB9LA0KICBjb21wdXRlZDogew0KICAgIGJnY29sb3JzKCkgew0KICAgICAgcmV0dXJuIHsNCiAgICAgICAgJy0tY29sb3ItdGhlbWUnOiB0aGlzLmJnQ29sLA0KICAgICAgfTsNCiAgICB9LA0KICAgIGxhYmVsV2lkdGgoKSB7DQogICAgICByZXR1cm4gdGhpcy5pc01vYmlsZSA/IHVuZGVmaW5lZCA6ICcxMjBweCc7DQogICAgfSwNCiAgICBsYWJlbFBvc2l0aW9uKCkgew0KICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyAndG9wJyA6ICdyaWdodCc7DQogICAgfSwNCiAgICAuLi5tYXBTdGF0ZSgnYWRtaW4vbGF5b3V0JywgWydtZW51Q29sbGFwc2UnXSksDQogIH0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIGZvcm1WYWxpZGF0ZTogew0KICAgICAgICBjb250ZW50OiAnJywNCiAgICAgIH0sDQogICAgICBydWxlVmFsaWRhdGU6IHt9LA0KICAgICAgbXlDb25maWc6IHsNCiAgICAgICAgYXV0b0hlaWdodEVuYWJsZWQ6IGZhbHNlLCAvLyDnvJbovpHlmajkuI3oh6rliqjooqvlhoXlrrnmkpHpq5gNCiAgICAgICAgaW5pdGlhbEZyYW1lSGVpZ2h0OiA1MDAsIC8vIOWIneWni+WuueWZqOmrmOW6pg0KICAgICAgICBpbml0aWFsRnJhbWVXaWR0aDogJzEwMCUnLCAvLyDliJ3lp4vlrrnlmajlrr3luqYNCiAgICAgICAgVUVESVRPUl9IT01FX1VSTDogJy9VRWRpdG9yLycsDQogICAgICAgIHNlcnZlclVybDogJycsDQogICAgICB9LA0KICAgICAgYTogMCwgLy/liKTmlq3nmoTpmpDnp4HljY/orq4NCiAgICAgIGd1aWRlOiAwLA0KICAgICAgYmdpbWc6IDAsDQogICAgICBjb2x1bW5zMTogW10sDQogICAgICBiZ0NvbDogJycsDQogICAgICBuYW1lOiAncm91dGluZV9ob21lX2Jhc3RfYmFubmVyJywNCiAgICAgIGdyaWQ6IHsNCiAgICAgICAgeGw6IDcsDQogICAgICAgIGxnOiA3LA0KICAgICAgICBtZDogMTIsDQogICAgICAgIHNtOiAyNCwNCiAgICAgICAgeHM6IDI0LA0KICAgICAgfSwNCiAgICAgIGxvYWRpbmc6IGZhbHNlLA0KICAgICAgc2dpbkxpc3Q6IFtdLA0KICAgICAgcHJvZ3Jlc3M6IDAsIC8vIOi/m+W6puadoem7mOiupDANCiAgICAgIHN3aXBlck9wdGlvbjogew0KICAgICAgICAvL+aYvuekuuWIhumhtQ0KICAgICAgICBwYWdpbmF0aW9uOiB7DQogICAgICAgICAgZWw6ICcuc3dpcGVyLXBhZ2luYXRpb24nLA0KICAgICAgICB9LA0KICAgICAgICAvL+iuvue9rueCueWHu+eureWktA0KICAgICAgICBuYXZpZ2F0aW9uOiB7DQogICAgICAgICAgbmV4dEVsOiAnLnN3aXBlci1idXR0b24tbmV4dCcsDQogICAgICAgICAgcHJldkVsOiAnLnN3aXBlci1idXR0b24tcHJldicsDQogICAgICAgIH0sDQogICAgICAgIC8v6Ieq5Yqo6L2u5pKtDQogICAgICAgIGF1dG9wbGF5OiBmYWxzZSwNCiAgICAgICAgLy/lvIDlkK/lvqrnjq/mqKHlvI8NCiAgICAgICAgbG9vcDogZmFsc2UsDQogICAgICB9LA0KICAgICAgdXJsOiAnJywNCiAgICAgIEJhc2VVUkw6IFNldHRpbmcuYXBpQmFzZVVSTC5yZXBsYWNlKC9hZG1pbmFwaS8sICcnKSwNCiAgICAgIHBhZ2VJZDogMCwNCiAgICAgIHRoZW1lMzogJ2xpZ2h0JywNCiAgICAgIHRhYkxpc3Q6IFtdLA0KICAgICAgdXBsb2FkX3R5cGU6ICcnLCAvL+inhumikeS4iuS8oOexu+WeiyAxIOacrOWcsOS4iuS8oCAyIDMgNCBPU1PkuIrkvKANCiAgICAgIHVwbG9hZERhdGE6IHt9LCAvLyDkuIrkvKDlj4LmlbANCiAgICAgIGxhc3RPYmo6IHsNCiAgICAgICAgYWRkX3RpbWU6ICcnLA0KICAgICAgICBjb21tZW50OiAnJywNCiAgICAgICAgZ2lkOiAnJywNCiAgICAgICAgaWQ6ICcnLA0KICAgICAgICBpbWc6ICcnLA0KICAgICAgICBsaW5rOiAnJywNCiAgICAgICAgc29ydDogJycsDQogICAgICAgIHN0YXR1czogMSwNCiAgICAgIH0sDQogICAgICBpc0Nob2ljZTogJ+WNlemAiScsDQogICAgICBtb2RhbFBpYzogZmFsc2UsDQogICAgICBncmlkUGljOiB7DQogICAgICAgIHhsOiA2LA0KICAgICAgICBsZzogOCwNCiAgICAgICAgbWQ6IDEyLA0KICAgICAgICBzbTogMTIsDQogICAgICAgIHhzOiAxMiwNCiAgICAgIH0sDQogICAgICBncmlkQnRuOiB7DQogICAgICAgIHhsOiA0LA0KICAgICAgICBsZzogOCwNCiAgICAgICAgbWQ6IDgsDQogICAgICAgIHNtOiA4LA0KICAgICAgICB4czogOCwNCiAgICAgIH0sDQogICAgICBncm91cEFsbDogW10sDQogICAgICBhY3RpdmVJbmRleDogMCwNCiAgICAgIHNvcnROYW1lOiBudWxsLA0KICAgICAgYWN0aXZlSW5kZXhzOiAwLA0KICAgICAgY21zTGlzdDogW10sDQogICAgICBsb2FkaW5nRXhpc3Q6IGZhbHNlLA0KICAgICAgZm9ybUl0ZW06IHsNCiAgICAgICAgdGltZTogJycsDQogICAgICAgIHR5cGU6ICdwaWMnLA0KICAgICAgICBzdGF0dXM6IDEsDQogICAgICAgIHZhbHVlOiBbXSwNCiAgICAgICAgdmlkZW9fbGluazogJycsDQogICAgICB9LA0KICAgICAgZmlsZVVybDogU2V0dGluZy5hcGlCYXNlVVJMICsgJy9maWxlL3VwbG9hZCcsDQogICAgICBjYXJkVXJsOiBTZXR0aW5nLmFwaUJhc2VVUkwgKyAnL2ZpbGUvdXBsb2FkLzEnLA0KICAgICAgaGVhZGVyOiB7fSwNCiAgICAgIHR5cGU6IDAsDQogICAgICB1cGxvYWQ6IHsNCiAgICAgICAgdmlkZW9Jbmc6IGZhbHNlLCAvLyDmmK/lkKbmmL7npLrov5vluqbmnaHvvJsNCiAgICAgIH0sDQogICAgfTsNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmNvbG9yKCk7DQogICAgdGhpcy51cGxvYWRUeXBlKCk7DQogICAgdGhpcy5nZXRUb2tlbigpOw0KICB9LA0KICBtb3VudGVkKCkgew0KICAgIHRoaXMuZ2V0R3JvdXBBbGwoKTsNCiAgICB0aGlzLmluZm8oKTsNCiAgICB0aGlzLnVybCA9IHRoaXMuQmFzZVVSTCArICdwYWdlcy9jb2x1bW5Hb29kcy9Ib3ROZXdHb29kcy9pbmRleD90eXBlPTEnOw0KICB9LA0KICBtZXRob2RzOiB7DQogICAgZ2V0RWRpdG9yQ29udGVudChkYXRhKSB7DQogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5jb250ZW50ID0gZGF0YTsNCiAgICB9LA0KICAgIC8vIOWIoOmZpOinhumike+8mw0KICAgIGRlbFZpZGVvKCkgew0KICAgICAgbGV0IHRoYXQgPSB0aGlzOw0KICAgICAgdGhhdC4kc2V0KHRoYXQuZm9ybUl0ZW0sICd2aWRlb19saW5rJywgJycpOw0KICAgIH0sDQogICAgLy/ojrflj5bop4bpopHkuIrkvKDnsbvlnosNCiAgICB1cGxvYWRUeXBlKCkgew0KICAgICAgdXBsb2FkVHlwZSgpLnRoZW4oKHJlcykgPT4gew0KICAgICAgICB0aGlzLnVwbG9hZF90eXBlID0gcmVzLmRhdGEudXBsb2FkX3R5cGU7DQogICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOS4iuS8oOaIkOWKnw0KICAgIGhhbmRsZVN1Y2Nlc3MocmVzLCBmaWxlLCBmaWxlTGlzdCkgew0KICAgICAgaWYgKHJlcy5zdGF0dXMgPT09IDIwMCkgew0KICAgICAgICB0aGlzLiRzZXQodGhpcy5mb3JtSXRlbSwgJ3ZpZGVvX2xpbmsnLCByZXMuZGF0YS5zcmMpOw0KICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MocmVzLm1zZyk7DQogICAgICB9IGVsc2Ugew0KICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgfQ0KICAgIH0sDQogICAgemhfdXBsb2FkRmlsZSgpIHsNCiAgICAgIGlmICh0aGlzLnZpZGVvX2xpbmspIHsNCiAgICAgICAgdGhpcy5mb3JtVmFsaWRhdGUudmlkZW9fbGluayA9IHRoaXMudmlkZW9fbGluazsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMuJHJlZnMucmVmaWQuY2xpY2soKTsNCiAgICAgIH0NCiAgICB9LA0KICAgIHpoX3VwbG9hZEZpbGVfY2hhbmdlKGV2ZmlsZSkgew0KICAgICAgbGV0IHRoYXQgPSB0aGlzOw0KICAgICAgbGV0IHN1ZmZpeCA9IGV2ZmlsZS50YXJnZXQuZmlsZXNbMF0ubmFtZS5zdWJzdHIoZXZmaWxlLnRhcmdldC5maWxlc1swXS5uYW1lLmluZGV4T2YoJy4nKSk7DQogICAgICBpZiAoc3VmZml4LmluZGV4T2YoJy5tcDQnKSA9PT0gLTEpIHsNCiAgICAgICAgcmV0dXJuIHRoYXQuJG1lc3NhZ2UuZXJyb3IoJ+WPquiDveS4iuS8oE1QNOaWh+S7ticpOw0KICAgICAgfQ0KICAgICAgbGV0IHR5cGVzID0gew0KICAgICAgICBrZXk6IGV2ZmlsZS50YXJnZXQuZmlsZXNbMF0ubmFtZSwNCiAgICAgICAgY29udGVudFR5cGU6IGV2ZmlsZS50YXJnZXQuZmlsZXNbMF0udHlwZSwNCiAgICAgIH07DQogICAgICBwcm9kdWN0R2V0VGVtcEtleXNBcGkodHlwZXMpDQogICAgICAgIC50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICB0aGF0LiR2aWRlb0Nsb3VkDQogICAgICAgICAgICAudmlkZW9VcGxvYWQoew0KICAgICAgICAgICAgICB0eXBlOiByZXMuZGF0YS50eXBlLA0KICAgICAgICAgICAgICBldmZpbGU6IGV2ZmlsZSwNCiAgICAgICAgICAgICAgcmVzOiByZXMsDQogICAgICAgICAgICAgIHVwbG9hZGluZyhzdGF0dXMsIHByb2dyZXNzKSB7DQogICAgICAgICAgICAgICAgdGhhdC51cGxvYWQudmlkZW9JbmcgPSBzdGF0dXM7DQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICB9KQ0KICAgICAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgICAgICB0aGF0LmZvcm1WYWxpZGF0ZS52aWRlb19saW5rID0gcmVzLnVybDsNCiAgICAgICAgICAgICAgdGhhdC4kbWVzc2FnZS5zdWNjZXNzKCfop4bpopHkuIrkvKDmiJDlip8nKTsNCiAgICAgICAgICAgIH0pDQogICAgICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgICAgICB0aGF0LiRtZXNzYWdlLmVycm9yKHJlcyk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGF0LiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOS4iuS8oOWktOmDqHRva2VuDQogICAgZ2V0VG9rZW4oKSB7DQogICAgICB0aGlzLmhlYWRlclsnQXV0aG9yaS16YXRpb24nXSA9ICdCZWFyZXIgJyArIGdldENvb2tpZXMoJ3Rva2VuJyk7DQogICAgfSwNCiAgICBiZWZvcmVVcGxvYWQoKSB7DQogICAgICB0aGlzLnVwbG9hZERhdGEgPSB7fTsNCiAgICAgIGxldCBwcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsNCiAgICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkgew0KICAgICAgICAgIHJlc29sdmUodHJ1ZSk7DQogICAgICAgIH0pOw0KICAgICAgfSk7DQogICAgICByZXR1cm4gcHJvbWlzZTsNCiAgICB9LA0KICAgIGxpbmtVcmwoZSkgew0KICAgICAgdGhpcy50YWJMaXN0Lmxpc3RbdGhpcy5hY3RpdmVJbmRleHNdLmxpbmsgPSBlOw0KICAgIH0sDQogICAgY29sb3IoKSB7DQogICAgICBnZXRDb2xvckNoYW5nZSgnY29sb3JfY2hhbmdlJykudGhlbigocmVzKSA9PiB7DQogICAgICAgIHN3aXRjaCAocmVzLmRhdGEuc3RhdHVzKSB7DQogICAgICAgICAgY2FzZSAxOg0KICAgICAgICAgICAgdGhpcy5iZ0NvbCA9ICcjMzg3NUVBJzsNCiAgICAgICAgICAgIHRoaXMuYmdpbWcgPSAxOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgY2FzZSAyOg0KICAgICAgICAgICAgdGhpcy5iZ0NvbCA9ICcjMDBDMDUwJzsNCiAgICAgICAgICAgIHRoaXMuYmdpbWcgPSAyOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgY2FzZSAzOg0KICAgICAgICAgICAgdGhpcy5iZ0NvbCA9ICcjRTkzMzIzJzsNCiAgICAgICAgICAgIHRoaXMuYmdpbWcgPSAzOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgY2FzZSA0Og0KICAgICAgICAgICAgdGhpcy5iZ0NvbCA9ICcjRkY0NDhGJzsNCiAgICAgICAgICAgIHRoaXMuYmdpbWcgPSA0Ow0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgY2FzZSA1Og0KICAgICAgICAgICAgdGhpcy5iZ0NvbCA9ICcjRkU1QzJEJzsNCiAgICAgICAgICAgIHRoaXMuYmdpbWcgPSA1Ow0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5re75Yqg6KGo5Y2VDQogICAgZ3JvdXBBZGQoKSB7DQogICAgICB0aGlzLiRtb2RhbEZvcm0oZ3JvdXBEYXRhQWRkQXBpKHsgZ2lkOiB0aGlzLnBhZ2VJZCwgY29uZmlnX25hbWU6IHRoaXMubmFtZSB9LCAnc2V0dGluZy9ncm91cF9kYXRhL2NyZWF0ZScpKS50aGVuKA0KICAgICAgICAoKSA9PiB7DQogICAgICAgICAgdGhpcy51cmwgPSB0aGlzLkJhc2VVUkwgKyAncGFnZXMvdXNlcnMvdXNlcl9zZ2luL2luZGV4JzsNCiAgICAgICAgICB0aGlzLmluZm8oKTsNCiAgICAgICAgfSwNCiAgICAgICk7DQogICAgfSwNCiAgICBpbmZvKCkgew0KICAgICAgZ3JvdXBEYXRhTGlzdEFwaSh7IGNvbmZpZ19uYW1lOiB0aGlzLm5hbWUgfSwgJ3NldHRpbmcvZ3JvdXBfZGF0YScpDQogICAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLnRhYkxpc3QgPSByZXMuZGF0YTsNCiAgICAgICAgICBpZiAodGhpcy5uYW1lID09ICdhZG1pbl9sb2dpbl9zbGlkZScpIHsNCiAgICAgICAgICAgIHRoaXMudGFiTGlzdC5saXN0LmZvckVhY2goKGl0ZW0sIGluZGV4LCBhcnJheSkgPT4gew0KICAgICAgICAgICAgICBpZiAodHlwZW9mIGl0ZW0uc2xpZGUgIT0gJ3N0cmluZycgJiYgaXRlbS5zbGlkZSAhPSAndW5kZWZpbmVkJykgew0KICAgICAgICAgICAgICAgIGl0ZW0uc2xpZGUgPSBpdGVtLnNsaWRlWzBdOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMubmFtZSA9PSAnc2lnbl9kYXlfbnVtJykgew0KICAgICAgICAgICAgdGhpcy5jbXNMaXN0ID0gcmVzLmRhdGEubGlzdDsNCiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMubmFtZSA9PSAndXNlcl9yZWNoYXJnZV9xdW90YScpIHsNCiAgICAgICAgICAgIHRoaXMuc2dpbkxpc3QgPSByZXMuZGF0YTsNCiAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgdGhpcy50YWJMaXN0Lmxpc3QuZm9yRWFjaCgoaXRlbSwgaW5kZXgsIGFycmF5KSA9PiB7DQogICAgICAgICAgICAgIGlmICh0eXBlb2YgaXRlbS5pbWcgIT0gJ3N0cmluZycgJiYgaXRlbS5pbWcgIT0gJ3VuZGVmaW5lZCcpIHsNCiAgICAgICAgICAgICAgICBpdGVtLmltZyA9IGl0ZW0uaW1nWzBdOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICB9DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICBlZGl0cyhyb3cpIHsNCiAgICAgIHRoaXMucGFnZUlkID0gcm93LmlkIHx8IDA7DQogICAgICB0aGlzLm5hbWUgPSByb3cuY29uZmlnX25hbWUgfHwgJyc7DQogICAgICBpZiAocm93ID09IDEpIHsNCiAgICAgICAgdGhpcy5hID0gMTsNCiAgICAgICAgdGhpcy5ndWlkZSA9IDA7DQogICAgICAgIHRoaXMuZ2V0QWdyZWVtZW50KCk7DQogICAgICB9IGVsc2UgaWYgKHJvdyA9PSAyKSB7DQogICAgICAgIHRoaXMuYSA9IDA7DQogICAgICAgIHRoaXMuZ3VpZGUgPSAyOw0KICAgICAgICB0aGlzLnBhZ2VJZCA9IDE2MTc7DQogICAgICAgIGdldE9wZW5BZHYoKS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICBpZiAocmVzLmRhdGEpIHsNCiAgICAgICAgICAgIHRoaXMuZm9ybUl0ZW0gPSByZXMuZGF0YTsNCiAgICAgICAgICAgIHRoaXMudGFiTGlzdC5saXN0ID0gcmVzLmRhdGEudmFsdWU7DQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIHRoaXMuZm9ybUl0ZW0gPSB7DQogICAgICAgICAgICAgIHRpbWU6ICcnLA0KICAgICAgICAgICAgICB0eXBlOiAncGljJywNCiAgICAgICAgICAgICAgc3RhdHVzOiAxLA0KICAgICAgICAgICAgICB2YWx1ZTogW10sDQogICAgICAgICAgICAgIHZpZGVvX2xpbms6ICcnLA0KICAgICAgICAgICAgfTsNCiAgICAgICAgICAgIHRoaXMudGFiTGlzdC5saXN0ID0gW107DQogICAgICAgICAgfQ0KICAgICAgICB9KTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMuaW5mbygpOw0KICAgICAgICB0aGlzLmd1aWRlID0gMDsNCiAgICAgICAgdGhpcy5hID0gMDsNCiAgICAgICAgc3dpdGNoIChyb3cuY29uZmlnX25hbWUpIHsNCiAgICAgICAgICBjYXNlICdyb3V0aW5lX2hvbWVfYmFzdF9iYW5uZXInOg0KICAgICAgICAgICAgdGhpcy51cmwgPSB0aGlzLkJhc2VVUkwgKyAncGFnZXMvY29sdW1uR29vZHMvSG90TmV3R29vZHMvaW5kZXg/dHlwZT0xJm5hbWU957K+5ZOB5o6o6I2QJzsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgIGNhc2UgJ3NpZ25fZGF5X251bSc6DQogICAgICAgICAgICB0aGlzLnVybCA9ICcnOw0KICAgICAgICAgICAgdGhpcy5nZXRMaXN0SGVhZGVyKCk7DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgICBjYXNlICdjb21iaW5hdGlvbl9iYW5uZXInOg0KICAgICAgICAgICAgdGhpcy51cmwgPSB0aGlzLkJhc2VVUkwgKyAncGFnZXMvYWN0aXZpdHkvZ29vZHNfY29tYmluYXRpb24vaW5kZXgnOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgY2FzZSAncm91dGluZV9ob21lX2hvdF9iYW5uZXInOg0KICAgICAgICAgICAgdGhpcy51cmwgPSB0aGlzLkJhc2VVUkwgKyAncGFnZXMvY29sdW1uR29vZHMvSG90TmV3R29vZHMvaW5kZXg/dHlwZT0yJm5hbWU954Ot6Zeo5qac5Y2VJzsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgIGNhc2UgJ3JvdXRpbmVfaG9tZV9uZXdfYmFubmVyJzoNCiAgICAgICAgICAgIHRoaXMudXJsID0gdGhpcy5CYXNlVVJMICsgJ3BhZ2VzL2NvbHVtbkdvb2RzL0hvdE5ld0dvb2RzL2luZGV4P3R5cGU9MyZuYW1lPemmluWPkeaWsOWTgSc7DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgICBjYXNlICdyb3V0aW5lX2hvbWVfYmVuZWZpdF9iYW5uZXInOg0KICAgICAgICAgICAgdGhpcy51cmwgPSB0aGlzLkJhc2VVUkwgKyAncGFnZXMvY29sdW1uR29vZHMvSG90TmV3R29vZHMvaW5kZXg/dHlwZT00Jm5hbWU95L+D6ZSA5Y2V5ZOBJzsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgIGNhc2UgJ3VzZXJfcmVjaGFyZ2VfcXVvdGEnOg0KICAgICAgICAgICAgdGhpcy51cmwgPSAnJzsNCiAgICAgICAgICAgIHRoaXMuZ2V0TGlzdEhlYWRlcigpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgY2FzZSAnYWRtaW5fbG9naW5fc2xpZGUnOg0KICAgICAgICAgICAgdGhpcy51cmwgPSAnJzsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgIGNhc2UgJ2ludGVncmFsX3Nob3BfYmFubmVyJzoNCiAgICAgICAgICAgIHRoaXMudXJsID0gJyc7DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgIH0sDQogICAgYWRkQm94KCkgew0KICAgICAgaWYgKHRoaXMudGFiTGlzdC5saXN0Lmxlbmd0aCA9PSAwKSB7DQogICAgICAgIHRoaXMudGFiTGlzdC5saXN0LnB1c2godGhpcy5sYXN0T2JqKTsNCiAgICAgICAgdGhpcy5sYXN0T2JqID0gew0KICAgICAgICAgIGFkZF90aW1lOiAnJywNCiAgICAgICAgICBjb21tZW50OiAnJywNCiAgICAgICAgICBnaWQ6ICcnLA0KICAgICAgICAgIGlkOiAnJywNCiAgICAgICAgICBpbWc6ICcnLA0KICAgICAgICAgIGxpbms6ICcnLA0KICAgICAgICAgIHNvcnQ6ICcnLA0KICAgICAgICAgIHN0YXR1czogMSwNCiAgICAgICAgfTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIGlmICh0aGlzLnRhYkxpc3QubGlzdC5sZW5ndGggPT0gNSkgew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZygn5pyA5aSa5re75Yqg5LqU5byg5ZGmJyk7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgbGV0IG9iaiA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5sYXN0T2JqKSk7DQogICAgICAgICAgdGhpcy50YWJMaXN0Lmxpc3QucHVzaChvYmopOw0KICAgICAgICB9DQogICAgICB9DQogICAgfSwNCiAgICAvLyDliKDpmaQNCiAgICBiaW5kRGVsZXRlKGl0ZW0sIGluZGV4KSB7DQogICAgICB0aGlzLnRhYkxpc3QubGlzdC5zcGxpY2UoaW5kZXgsIDEpOw0KICAgIH0sDQogICAgLy8g54K55Ye75Zu+5paH5bCB6Z2iDQogICAgbW9kYWxQaWNUYXAodGl0bGUsIGluZGV4KSB7DQogICAgICB0aGlzLmFjdGl2ZUluZGV4ID0gaW5kZXg7DQogICAgICB0aGlzLm1vZGFsUGljID0gdHJ1ZTsNCiAgICB9LA0KICAgIC8vIOiOt+WPluWbvueJh+S/oeaBrw0KICAgIGdldFBpYyhwYykgew0KICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4gew0KICAgICAgICBpZiAodGhpcy5uYW1lID09ICdhZG1pbl9sb2dpbl9zbGlkZScpIHsNCiAgICAgICAgICB0aGlzLnRhYkxpc3QubGlzdFt0aGlzLmFjdGl2ZUluZGV4XS5zbGlkZSA9IHBjLmF0dF9kaXI7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgdGhpcy50YWJMaXN0Lmxpc3RbdGhpcy5hY3RpdmVJbmRleF0uaW1nID0gcGMuYXR0X2RpcjsNCiAgICAgICAgfQ0KICAgICAgICB0aGlzLm1vZGFsUGljID0gZmFsc2U7DQogICAgICB9KTsNCiAgICB9LA0KICAgIHNhdmUoKSB7DQogICAgICBpZiAodGhpcy5hID09IDEpIHsNCiAgICAgICAgdGhpcy5vbnN1Ym1pdCgnZm9ybVZhbGlkYXRlJyk7DQogICAgICB9IGVsc2UgaWYgKHRoaXMuZ3VpZGUgPT0gMikgew0KICAgICAgICB0aGlzLmZvcm1JdGVtLnZhbHVlID0gdGhpcy50YWJMaXN0Lmxpc3Q7DQogICAgICAgIG9wZW5BZHZTYXZlKHRoaXMuZm9ybUl0ZW0pLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgICB9IGVsc2Ugew0KICAgICAgICB0aGlzLmxvYWRpbmdFeGlzdCA9IHRydWU7DQogICAgICAgIGdyb3VwU2F2ZUFwaSh7DQogICAgICAgICAgZ2lkOiB0aGlzLnBhZ2VJZCwNCiAgICAgICAgICBjb25maWdfbmFtZTogdGhpcy5uYW1lLA0KICAgICAgICAgIGRhdGE6IHRoaXMudGFiTGlzdC5saXN0LA0KICAgICAgICB9KQ0KICAgICAgICAgIC50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICAgIHRoaXMubG9hZGluZ0V4aXN0ID0gZmFsc2U7DQogICAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MocmVzLm1zZyk7DQogICAgICAgICAgfSkNCiAgICAgICAgICAuY2F0Y2goKGVycikgPT4gew0KICAgICAgICAgICAgdGhpcy5sb2FkaW5nRXhpc3QgPSBmYWxzZTsNCiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoZXJyLm1zZyk7DQogICAgICAgICAgfSk7DQogICAgICB9DQogICAgfSwNCiAgICBnZXRMaW5rKGluZGV4KSB7DQogICAgICB0aGlzLmFjdGl2ZUluZGV4cyA9IGluZGV4Ow0KICAgICAgdGhpcy4kcmVmcy5saW5rYWRkcmVzLm1vZGFscyA9IHRydWU7DQogICAgfSwNCiAgICBnZXRMaXN0SGVhZGVyKCkgew0KICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsNCiAgICAgIGdyb3VwRGF0YUhlYWRlckFwaSh7IGNvbmZpZ19uYW1lOiB0aGlzLm5hbWUgfSwgJ3NldHRpbmcvc2lnbl9kYXRhL2hlYWRlcicpDQogICAgICAgIC50aGVuKChyZXMpID0+IHsNCiAgICAgICAgICBsZXQgZGF0YSA9IHJlcy5kYXRhOw0KICAgICAgICAgIGxldCBoZWFkZXIgPSBkYXRhLmhlYWRlcjsNCiAgICAgICAgICBsZXQgaW5kZXggPSBbXTsNCiAgICAgICAgICB0aGlzLmNvbHVtbnMxID0gaGVhZGVyOw0KICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOw0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7DQogICAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g57yW6L6RDQogICAgZWRpdChyb3cpIHsNCiAgICAgIHRoaXMuJG1vZGFsRm9ybSgNCiAgICAgICAgZ3JvdXBEYXRhRWRpdEFwaSh7IGdpZDogdGhpcy5wYWdlSWQsIGNvbmZpZ19uYW1lOiB0aGlzLm5hbWUgfSwgJ3NldHRpbmcvZ3JvdXBfZGF0YS8nICsgcm93LmlkICsgJy9lZGl0JyksDQogICAgICApLnRoZW4oKCkgPT4gew0KICAgICAgICB0aGlzLmluZm8oKTsNCiAgICAgICAgdGhpcy51cmwgPSB0aGlzLkJhc2VVUkwgKyAncGFnZXMvdXNlcnMvdXNlcl9zZ2luL2luZGV4JzsNCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g5Yig6ZmkDQogICAgZGVsKHJvdywgdGl0LCBudW0pIHsNCiAgICAgIGxldCBkZWxmcm9tRGF0YSA9IHsNCiAgICAgICAgdGl0bGU6IHRpdCwNCiAgICAgICAgbnVtOiBudW0sDQogICAgICAgIHVybDogJ3NldHRpbmcvZ3JvdXBfZGF0YS8nICsgcm93LmlkLA0KICAgICAgICBtZXRob2Q6ICdERUxFVEUnLA0KICAgICAgICBpZHM6ICcnLA0KICAgICAgfTsNCiAgICAgIHRoaXMuJG1vZGFsU3VyZShkZWxmcm9tRGF0YSkNCiAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuaW5mbygpOw0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOS/ruaUueaYr+WQpuaYvuekug0KICAgIG9uY2hhbmdlSXNTaG93KHJvdykgew0KICAgICAgZ3JvdXBEYXRhU2V0QXBpKCdzZXR0aW5nL2dyb3VwX2RhdGEvc2V0X3N0YXR1cy8nICsgcm93LmlkICsgJy8nICsgcm93LnN0YXR1cykNCiAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMudXJsID0gdGhpcy5CYXNlVVJMICsgJy9wYWdlcy91c2Vycy91c2VyX3NnaW4vaW5kZXgnOw0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgICB0aGlzLmluZm8oKTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLnVybCA9IHRoaXMuQmFzZVVSTCArICcvcGFnZXMvdXNlcnMvdXNlcl9zZ2luL2luZGV4JzsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICAgIGdldEdyb3VwQWxsKCkgew0KICAgICAgZ3JvdXBBbGxBcGkoKQ0KICAgICAgICAudGhlbihhc3luYyAocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy5ncm91cEFsbCA9IHJlcy5kYXRhOw0KICAgICAgICAgIHRoaXMuc29ydE5hbWUgPSByZXMuZGF0YVswXS5jb25maWdfbmFtZTsNCiAgICAgICAgICB0aGlzLnBhZ2VJZCA9IHJlcy5kYXRhWzBdLmlkOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7DQogICAgICAgIH0pOw0KICAgIH0sDQogICAgZ2V0Q29udGVudCh2YWwpIHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmNvbnRlbnQgPSB2YWw7DQogICAgfSwNCiAgICAvLyDmj5DkuqTmlbDmja4NCiAgICBvbnN1Ym1pdChuYW1lKSB7DQogICAgICB0aGlzLiRyZWZzW25hbWVdLnZhbGlkYXRlKCh2YWxpZCkgPT4gew0KICAgICAgICBpZiAodmFsaWQpIHsNCiAgICAgICAgICBzZXRBZ3JlZW1lbnQodGhpcy5mb3JtVmFsaWRhdGUpDQogICAgICAgICAgICAudGhlbihhc3luYyAocmVzKSA9PiB7DQogICAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsNCiAgICAgICAgICAgIH0pDQogICAgICAgICAgICAuY2F0Y2goKHJlcykgPT4gew0KICAgICAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICAgICAgfSk7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9DQogICAgICB9KTsNCiAgICB9LA0KICAgIC8v6K+m5oOFDQogICAgZ2V0QWdyZWVtZW50KCkgew0KICAgICAgZ2V0QWdyZWVtZW50KCkNCiAgICAgICAgLnRoZW4oYXN5bmMgKHJlcykgPT4gew0KICAgICAgICAgIGxldCBkYXRhID0gcmVzLmRhdGE7DQogICAgICAgICAgdGhpcy5mb3JtVmFsaWRhdGUgPSB7DQogICAgICAgICAgICBjb250ZW50OiBkYXRhLmNvbnRlbnQsDQogICAgICAgICAgfTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKChyZXMpID0+IHsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOw0KICAgICAgICB9KTsNCiAgICB9LA0KICB9LA0KfTsNCg=="},{"version":3,"sources":["visualization.vue"],"names":[],"mappings":";AAufA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"visualization.vue","sourceRoot":"src/pages/system/group","sourcesContent":["<template>\r\n <div :style=\"bgcolors\">\r\n <div class=\"i-layout-page-header header-title\">\r\n <span class=\"ivu-page-header-title mr20\">{{ $route.meta.title }}</span>\r\n <div>\r\n <div style=\"float: right\">\r\n <el-button class=\"bnt\" type=\"primary\" v-db-click @click=\"save\">保存</el-button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"box-wrapper h100\">\r\n <div class=\"left-wrapper\" v-if=\"!$route.params.id && groupAll.length\">\r\n <div class=\"tree-vis\">\r\n <div\r\n class=\"tab-item\"\r\n :class=\"{ active: item.id == pageId }\"\r\n v-for=\"(item, index) in groupAll\"\r\n :key=\"index\"\r\n v-db-click\r\n @click=\"edits(item)\"\r\n >\r\n {{ item.name }}\r\n </div>\r\n <div class=\"tab-item\" :class=\"{ active: pageId == 1617 }\" v-db-click @click=\"edits(2)\">开屏广告</div>\r\n </div>\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\" shadow=\"never\">\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 shadow=\"never\"\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>\r\n <div v-bind=\"grid\">\r\n <div class=\"title\">隐私权限页面展示:</div>\r\n </div>\r\n </div>\r\n <div>\r\n <el-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 <el-form-item 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 </el-form-item>\r\n </el-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>\r\n <div v-bind=\"grid\">\r\n <div class=\"title\">签到天数设置</div>\r\n <el-button\r\n type=\"primary\"\r\n v-db-click\r\n @click=\"groupAdd('添加数据')\"\r\n style=\"margin-left: 14px; margin-top: 30px\"\r\n >添加数据</el-button\r\n >\r\n </div>\r\n </div>\r\n <div class=\"table\">\r\n <el-table\r\n :data=\"cmsList\"\r\n ref=\"table\"\r\n class=\"mt14\"\r\n v-loading=\"loading\"\r\n highlight-current-row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <el-table-column label=\"编号\" width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.id }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"第几天\" min-width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.day }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"获取积分\" min-width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.sign_num }}</span>\r\n </template>\r\n </el-table-column>\r\n\r\n <el-table-column label=\"是否可用\" min-width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <el-switch\r\n :active-value=\"1\"\r\n :inactive-value=\"0\"\r\n v-model=\"scope.row.status\"\r\n :value=\"scope.row.status\"\r\n @change=\"onchangeIsShow(scope.row)\"\r\n size=\"large\"\r\n >\r\n </el-switch>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"排序\" min-width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.sort }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" fixed=\"right\" width=\"150\">\r\n <template slot-scope=\"scope\">\r\n <a v-db-click @click=\"edit(scope.row, '编辑')\">编辑</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a v-db-click @click=\"del(scope.row, '删除这条信息', scope.$index)\">删除</a>\r\n </template>\r\n </el-table-column>\r\n </el-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>\r\n <div v-bind=\"grid\">\r\n <div class=\"title\">充值金额设置</div>\r\n <el-button\r\n type=\"primary\"\r\n v-db-click\r\n @click=\"groupAdd('添加数据')\"\r\n style=\"margin-left: 14px; margin-top: 30px\"\r\n >添加数据</el-button\r\n >\r\n </div>\r\n </div>\r\n <div class=\"table\">\r\n <el-table\r\n :data=\"sginList.list\"\r\n ref=\"table\"\r\n class=\"mt14\"\r\n v-loading=\"loading\"\r\n highlight-current-row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <el-table-column\r\n :label=\"item.title\"\r\n :min-width=\"item.minWidth\"\r\n v-for=\"(item, index) in columns1\"\r\n :key=\"index\"\r\n >\r\n <template slot-scope=\"scope\">\r\n <template v-if=\"item.key\">\r\n <div>\r\n <span>{{ scope.row[item.key] }}</span>\r\n </div>\r\n </template>\r\n <template v-else-if=\"item.slot === 'status'\">\r\n <el-switch\r\n :active-value=\"1\"\r\n :inactive-value=\"0\"\r\n v-model=\"scope.row.status\"\r\n :value=\"scope.row.status\"\r\n @change=\"onchangeIsShow(scope.row)\"\r\n size=\"large\"\r\n >\r\n </el-switch>\r\n </template>\r\n <template v-else-if=\"item.slot === 'action'\">\r\n <a v-db-click @click=\"edit(scope.row, '编辑')\">编辑</a>\r\n <el-divider direction=\"vertical\"></el-divider>\r\n <a v-db-click @click=\"del(scope.row, '删除这条信息', scope.$index)\">删除</a>\r\n </template>\r\n </template>\r\n </el-table-column>\r\n </el-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\" v-db-click @click=\"modalPicTap('单选', index)\">\r\n <img :src=\"item.slide\" alt=\"\" v-if=\"item.slide\" />\r\n <div class=\"upload-box\" v-else>\r\n <i class=\"el-icon-picture-outline\" style=\"font-size: 24px\"></i>\r\n </div>\r\n <div class=\"delect-btn\" v-db-click @click.stop=\"bindDelete(item, index)\">\r\n <i class=\"el-icon-circle-close\" style=\"font-size: 24px\" />\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\" v-db-click @click=\"modalPicTap('单选', index)\">\r\n <img :src=\"item.img\" alt=\"\" v-if=\"item.img\" />\r\n <div class=\"upload-box\" v-else>\r\n <i class=\"el-icon-picture-outline\" style=\"font-size: 24px\"></i>\r\n </div>\r\n <div class=\"delect-btn\" v-db-click @click.stop=\"bindDelete(item, index)\">\r\n <i class=\"el-icon-circle-close\" style=\"font-size: 24px\" />\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 <el-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\" v-db-click>\r\n <el-input v-model=\"item.link\" placeholder=\"选择链接\">\r\n <i class=\"el-icon-link\" slot=\"suffix\" @click=\"getLink(index)\" />\r\n </el-input>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </draggable>\r\n <div>\r\n <el-dialog\r\n :visible.sync=\"modalPic\"\r\n width=\"950px\"\r\n title=\"上传商品图\"\r\n :close-on-click-modal=\"false\"\r\n :show-close=\"true\"\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 </el-dialog>\r\n </div>\r\n </div>\r\n <template>\r\n <div class=\"add-btn\">\r\n <el-button\r\n type=\"primary\"\r\n ghost\r\n style=\"width: 100px; height: 35px; background-color: var(--prev-color-primary); color: #ffffff\"\r\n v-db-click\r\n @click=\"addBox\"\r\n >添加图片\r\n </el-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 <el-form :model=\"formItem\" label-width=\"85px\">\r\n <el-form-item label=\"开屏广告:\">\r\n <el-switch active-value=\"1\" inactive-value=\"0\" v-model=\"formItem.status\" size=\"large\"> </el-switch>\r\n </el-form-item>\r\n <el-form-item label=\"广告时间:\">\r\n <el-input\r\n v-model.number=\"formItem.time\"\r\n type=\"number\"\r\n placeholder=\"请输入开屏广告时间\"\r\n style=\"width: 150px\"\r\n ></el-input>\r\n 单位(秒)\r\n </el-form-item>\r\n </el-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\" v-db-click @click=\"modalPicTap('单选', index)\">\r\n <img :src=\"item.img\" alt=\"\" v-if=\"item.img\" />\r\n <div class=\"upload-box\" v-else>\r\n <i class=\"el-icon-picture-outline\" style=\"font-size: 24px\"></i>\r\n </div>\r\n <div class=\"delect-btn\" v-db-click @click.stop=\"bindDelete(item, index)\">\r\n <i class=\"el-icon-circle-close\" style=\"font-size: 24px\" />\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 <el-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\" v-db-click>\r\n <el-input v-model=\"item.link\" placeholder=\"选择链接\">\r\n <i class=\"el-icon-link\" slot=\"suffix\" @click=\"getLink(index)\" />\r\n </el-input>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </draggable>\r\n <div>\r\n <el-dialog :visible.sync=\"modalPic\" width=\"950px\" title=\"上传商品图\" :close-on-click-modal=\"false\">\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 </el-dialog>\r\n </div>\r\n </div>\r\n <template v-if=\"tabList.list.length < 5\">\r\n <div class=\"add-btn\">\r\n <el-button\r\n type=\"primary\"\r\n ghost\r\n style=\"width: 100px; height: 35px; background-color: var(--prev-color-primary); color: #ffffff\"\r\n v-db-click\r\n @click=\"addBox\"\r\n >添加图片\r\n </el-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 : '120px';\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: '/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: false,\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 let types = {\r\n key: evfile.target.files[0].name,\r\n contentType: evfile.target.files[0].type,\r\n };\r\n productGetTempKeysApi(types)\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 this.pageId = 1617;\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 getLink(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=\"scss\">\r\n::v-deep .ivu-menu-vertical .ivu-menu-item-group-title {\r\n display: none;\r\n}\r\n\r\n::v-deep .ivu-menu-vertical.ivu-menu-light:after {\r\n display: none;\r\n}\r\n\r\n::v-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 var(--prev-color-primary);\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: var(--prev-color-primary);\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 var(--prev-color-primary);\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: var(--prev-color-primary);\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 #f2f2f2;\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 margin-top: 14px;\r\n .item {\r\n position: relative;\r\n display: flex;\r\n margin-top: 14px;\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: 14px;\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::v-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::v-deep .i-layout-page-header {\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}\r\n\r\n.box-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.box-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.box-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.tree-vis {\r\n display: flex;\r\n flex-direction: column;\r\n .tab-item {\r\n padding: 15px 20px;\r\n cursor: pointer;\r\n }\r\n .active {\r\n background-color: var(--prev-bg-main-color);\r\n color: var(--prev-color-primary);\r\n border-right: 2px solid var(--prev-color-primary);\r\n }\r\n}\r\n</style>\r\n"]}]}