7f2c5c0b25c46ae75d2a89488d4ac712.json 39 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\\onlineUpgrade\\index.vue?vue&type=style&index=0&id=27a76730&lang=scss&scoped=true","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\system\\onlineUpgrade\\index.vue","mtime":1761185180222},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\css-loader\\index.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\postcss-loader\\src\\index.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\sass-loader\\dist\\cjs.js","mtime":499162500000},{"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:DQouYWN0aXZlIHsNCiAgcGFkZGluZzogNnB4IDA7DQogIC8vIGJhY2tncm91bmQtY29sb3I6ICNlZWUgIWltcG9ydGFudDsNCn0NCg0KLmFjdGl2ZSAuaXZ1LWNvbGxhcHNlLXNpbXBsZSB7DQogIC8vIGJhY2tncm91bmQtY29sb3I6ICNlZWUgIWltcG9ydGFudDsNCn0NCg0KLmFjdGl2ZSAuaXZ1LWNvbGxhcHNlLWNvbnRlbnQgew0KICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlICFpbXBvcnRhbnQ7DQp9DQoNCi5hY3RpdmUgLml2dS10aW1lbGluZS1pdGVtLWhlYWQtY3VzdG9tIHsNCiAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50Ow0KICAvLyB6LWluZGV4IDk5OTkNCn0NCg0KLmFjdGl2ZSAuYnRuIHsNCiAgdG9wOiA1MHB4Ow0KfQ0KDQoucHJpbWFyeSB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgcmlnaHQ6IDA7DQogIGJvdHRvbTogMDsNCg0KfQ0KDQoudXBncmFkZSAuaGVhZGVyIHsNCiAgZm9udC1zaXplOiAxMnB4Ow0KICBjb2xvcjogIzAwMDsNCiAgLy8gYm9yZGVyLWJvdHRvbToxcHggZG90dGVkIHJnYmEoMjIxLDIyMSwyMjEsMSk7DQogIC8vIHBhZGRpbmctYm90dG9tOiAyNXB4Ow0KfQ0KDQoudXBncmFkZSAuaGVhZGVyIC52IHsNCiAgY29sb3I6IHZhcigtLXByZXYtY29sb3ItcHJpbWFyeSk7DQogIG1hcmdpbi1sZWZ0OiAxMHB4Ow0KfQ0KDQoudXBncmFkZSAuaGVhZGVyIC5udW0gew0KICBjb2xvcjogdmFyKC0tcHJldi1jb2xvci1wcmltYXJ5KTsNCiAgZm9udC1zaXplOiAyNHB4Ow0KfQ0KDQoudXBncmFkZSAuaGVhZGVyIC5pbmZvIHsNCiAgY29sb3I6ICM5OTk5OTk7DQp9DQoNCi51cGdyYWRlIC5oZWFkZXIgLnRpdGxlIHsNCiAgY29sb3I6ICM5OTk5OTk7DQogIGRpc3BsYXk6IGZsZXg7DQp9DQoNCi51cGdyYWRlIC5oZWFkZXIgLmluZm8gdWwgew0KICBjb2xvcjogIzk5OTk5OTsNCiAgZGlzcGxheTogZmxleDsNCiAgbWFyZ2luLWxlZnQ6IDE0cHg7DQp9DQoNCi51cGdyYWRlIC5oZWFkZXIgLmluZm8gdWwgbGk6Om1hcmtlciB7DQogIGNvbG9yOiByZWQ7DQp9DQoNCi51cGdyYWRlIC5oZWFkZXIgLmluZm8gdWwgbGkrbGkgew0KICBtYXJnaW4tbGVmdDogNDBweDsNCn0NCg0KLnVwZ3JhZGUgLmNvbnRlbnRUaW1lIC5hY2VhLXJvdyB7DQogIHBhZGRpbmc6IDVweDsNCn0NCg0KLnVwZ3JhZGUgLmNvbnRlbnRUaW1lIC5saXN0IHsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICB3aWR0aDogODUlOw0KfQ0KDQoudXBncmFkZSAuY29udGVudFRpbWUgLmluZm8gew0KICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDsNCiAgY29sb3I6ICM5OTkgIWltcG9ydGFudDsNCiAgbWFyZ2luLXRvcDogMTNweDsNCn0NCg0KLnVwZ3JhZGUgLmNvbnRlbnRUaW1lIC5pbmZvIGxpIHsNCiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOw0KICBtYXJnaW4tbGVmdDogMTZweDsNCiAgbGluZS1oZWlnaHQ6IDI2cHg7DQogIGxpc3Qtc3R5bGU6IG5vbmU7DQp9DQoNCi51cGdyYWRlIC5jb250ZW50VGltZSAuY29sbGFwc2Ugew0KICB3aWR0aDogMTAwJTsNCn0NCg0KLnVwZ3JhZGUgLmNvbnRlbnRUaW1lIC5pdnUtY29sbGFwc2Ugew0KICBib3JkZXI6IDAgIWltcG9ydGFudDsNCn0NCg0KLnVwZ3JhZGUgLmNvbnRlbnRUaW1lIC5pdnUtY29sbGFwc2UgPiAuaXZ1LWNvbGxhcHNlLWl0ZW0gPiAuaXZ1LWNvbGxhcHNlLWhlYWRlciB7DQogIGhlaWdodDogdW5zZXQgIWltcG9ydGFudDsNCiAgbGluZS1oZWlnaHQ6IDIwcHggIWltcG9ydGFudDsNCiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7DQogIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50Ow0KICBjb2xvcjogIzMzMzMzMzsNCiAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgLy8gYmFja2dyb3VuZDogI2VlZTsNCn0NCg0KLnVwZ3JhZGUgLmNvbnRlbnRUaW1lIC5pdnUtY29sbGFwc2UgPiAuaXZ1LWNvbGxhcHNlLWl0ZW0gPiAuaXZ1LWNvbGxhcHNlLWhlYWRlciA+IGkgew0KICBjb2xvcjogI0JCQkJCQiAhaW1wb3J0YW50Ow0KICBtYXJnaW4tbGVmdDogOXB4Ow0KfQ0KDQoudXBncmFkZSAuY29udGVudFRpbWUgLml2dS1jb2xsYXBzZSA+IC5pdnUtY29sbGFwc2UtaXRlbS5pdnUtY29sbGFwc2UtaXRlbS1hY3RpdmUgPiAuaXZ1LWNvbGxhcHNlLWhlYWRlciA+IGkgew0KICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOw0KfQ0KDQoudXBncmFkZSAuY29udGVudFRpbWUgew0KICBtYXJnaW4tdG9wOiAzMHB4Ow0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQp9DQoNCi51cGdyYWRlIC5jb250ZW50VGltZSAuYnRuIHsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICB0b3A6IDVweDsNCiAgcmlnaHQ6IDYwcHg7DQogIHotaW5kZXg6IDk5Ow0KICBoZWlnaHQ6IG1heC1jb250ZW50Ow0KfQ0KDQoudXBncmFkZSAuY29udGVudFRpbWUgLmJ0bjEgew0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIHRvcDogMDsNCiAgcmlnaHQ6IC0yOXB4Ow0KICB6LWluZGV4OiA5OTsNCiAgbWFyZ2luLWxlZnQ6IDE0cHg7DQp9DQoNCi51cGdyYWRlIC5jb250ZW50VGltZSAudGltZSB7DQogIGZvbnQtc2l6ZTogMTRweDsNCiAgbGluZS1oZWlnaHQ6IDE0cHg7DQogIGNvbG9yOiAjOTk5Ow0KICB0ZXh0LWFsaWduOiByaWdodDsNCiAgcGFkZGluZy1yaWdodDogMjhweDsNCiAgbWluLXdpZHRoOiAxNTBweDsNCn0NCg0KLnVwZ3JhZGUgLmNvbnRlbnRUaW1lIC5pdnUtdGltZWxpbmUtaXRlbTphZnRlciB7DQogIGNvbnRlbnQ6ICcgJzsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICB0b3A6IDEzcHg7DQogIGxlZnQ6IDYuNXB4Ow0KICB3aWR0aDogMXB4Ow0KICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEzcHgpOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlYWVjOw0KfQ0KDQoudXBncmFkZSAuY29udGVudFRpbWU6bnRoLWNoaWxkKDJuKSAuaXZ1LXRpbWVsaW5lLWl0ZW0taGVhZC1jdXN0b20gew0KICB6LWluZGV4OiAyOw0KICBmb250LXNpemU6IDE2cHg7DQogIGNvbG9yOiAjREREQ0REOw0KICAvLyBiYWNrZ3JvdW5kOiAjZWVlOw0KICBtYXJnaW4tbGVmdDogMTJweDsNCiAgbWFyZ2luLXRvcDogMTBweDsNCn0NCg0KLml2dS10aW1lbGluZS1pdGVtLWhlYWQtY3VzdG9tIHsNCiAgbGVmdDogLTI0cHg7DQp9DQoudXBncmFkZSAuY29udGVudFRpbWVkIC5vbnsNCiAgZGlzcGxheTpmbGV4Ow0KICBmbGV4LXdyYXA6IG5vd3JhcDsNCn0NCi51cGdyYWRlIC5jb250ZW50VGltZSAub246Zmlyc3QtY2hpbGQgLml2dS10aW1lbGluZS1pdGVtLWhlYWQtY3VzdG9tIHsNCiAgY29sb3I6IHZhcigtLXByZXYtY29sb3ItcHJpbWFyeSk7DQogIGZvbnQtc2l6ZTogMThweDsNCn0NCjo6di1kZWVwIC5pdnUtY29sbGFwc2UgPiAuaXZ1LWNvbGxhcHNlLWl0ZW0gPiAuaXZ1LWNvbGxhcHNlLWhlYWRlcnsNCiAgbGluZS1oZWlnaHQ6IDIwcHg7DQoNCn0NCi51cGdyYWRlIC5jb250ZW50VGltZWQgLm9uIC5pdnUtY29sbGFwc2UgPiAuaXZ1LWNvbGxhcHNlLWl0ZW0gPiAuaXZ1LWNvbGxhcHNlLWhlYWRlciB7DQogIGNvbG9yOiB2YXIoLS1wcmV2LWNvbG9yLXByaW1hcnkpOw0KfQ0KDQoub246Zmlyc3QtY2hpbGQgLml2dS1jb2xsYXBzZS1oZWFkZXIgew0KICBjb2xvcjogdmFyKC0tcHJldi1jb2xvci1wcmltYXJ5KSAhaW1wb3J0YW50Ow0KfQ0KDQoudXBncmFkZSAuY29udGVudFRpbWUgLm9mZjpmaXJzdC1jaGlsZCAuaXZ1LXRpbWVsaW5lLWl0ZW0taGVhZC1jdXN0b20gew0KICBjb2xvcjogdmFyKC0tcHJldi1jb2xvci1wcmltYXJ5KTsNCiAgZm9udC1zaXplOiAxOHB4Ow0KfQ0KDQoub2ZmOmZpcnN0LWNoaWxkIC5pdnUtY29sbGFwc2UtaGVhZGVyIHsNCiAgY29sb3I6IHZhcigtLXByZXYtY29sb3ItcHJpbWFyeSkgIWltcG9ydGFudDsNCn0NCg0KLm9mZjpmaXJzdC1jaGlsZCAudGltZSB7DQogIGNvbG9yOiB2YXIoLS1wcmV2LWNvbG9yLXByaW1hcnkpICFpbXBvcnRhbnQ7DQp9DQoNCi5oZWFkZXItbW9kYWwgew0KICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL2Fzc2V0cy9pbWFnZXMvYmcucG5nJykgbm8tcmVwZWF0Ow0KICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICBib3JkZXItcmFkaXVzOiA2cHggNnB4IDAgMDsNCn0NCg0KLml2dS1tb2RhbHsNCiAgYm9yZGVyLXJhZGl1czogMTJweDsNCiAgb3ZlcmZsb3c6IGhpZGRlbjsNCn0NCg0KLmhlYWRlci1tb2RhbDIgew0KICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL2Fzc2V0cy9pbWFnZXMvYmcyLnBuZycpIG5vLXJlcGVhdDsNCiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgYm9yZGVyLXJhZGl1czogNnB4IDZweCAwIDA7DQp9DQoNCi5pdnUtbW9kYWwtaGVhZGVyIHsNCiAgcGFkZGluZzogMDsNCiAgYm9yZGVyLXJhZGl1czogMTBweDsNCiAgYm9yZGVyOiBub25lOw0KfQ0KDQouaXZ1LW1vZGFsLWhlYWRlciAuaGVhZGVyLW1vZGFsMiB7DQogIGhlaWdodDogNzRweDsNCiAgbGluZS1oZWlnaHQ6IDc0cHg7DQogIGZvbnQtc2l6ZTogMjBweDsNCiAgZm9udC13ZWlnaHQ6IDUwMDsNCn0NCg0KLml2dS1tb2RhbC1oZWFkZXIgcCwgLml2dS1tb2RhbC1oZWFkZXItaW5uZXIgew0KICBoZWlnaHQ6IDk2cHg7DQogIGNvbG9yOiAjZmZmOw0KICBsaW5lLWhlaWdodDogOTZweDsNCiAgZm9udC1zaXplOiAyNHB4Ow0KfQ0KDQouZGVzY3JpYmUgew0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIHBhZGRpbmctdG9wOiAzMHB4Ow0KDQogIC5zdWNjZXNzIHsNCiAgICBmb250LXNpemU6IDIwcHg7DQogICAgY29sb3I6ICMzMzMzMzM7DQogICAgbWFyZ2luLXRvcDogMTBweDsNCiAgfQ0KfQ0KDQouaXZ1LW1vZGFsLWZvb3RlciB7DQogIGJvcmRlcjogbm9uZTsNCiAgZGlzcGxheTogZmxleDsNCiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQp9DQoNCi5mb290ZXIgLml2dS1idG4gew0KICB3aWR0aDogMTI4cHg7DQogIGhlaWdodDogNDBweDsNCiAgYm9yZGVyOiBub25lOw0KfQ0KDQouY2FuY2VsIHsNCiAgYmFja2dyb3VuZDogI0VFRUVFRTsNCn0NCg0KLnZlcnRpY2FsLWNlbnRlci1tb2RhbCB7DQogIGRpc3BsYXk6IGZsZXg7DQogIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogIGp1c3RpZnktY29udGVudDogY2VudGVyOw0KDQogIC5pdnUtbW9kYWwgew0KICAgIHRvcDogMDsNCiAgfQ0KfQ0KOjp2LWRlZXAgLnZlcnRpY2FsLWNlbnRlci1tb2RhbCAuaXZ1LW1vZGFsLWhlYWRlcnsNCiAgcGFkZGluZzogMCAhaW1wb3J0YW50Ow0KICBib3JkZXI6IG5vbmU7DQp9DQo6OnYtZGVlcCAuaXZ1LW1vZGFsLWNvbnRlbnR7DQogIGJvcmRlci1yYWRpdXM6IDE0cHggMTRweCAwIDA7DQogIG92ZXJmbG93OiBoaWRkZW47DQp9DQouZm9vdGVyIHsNCiAgZGlzcGxheTogZmxleDsNCiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7DQp9DQoNCi5kZW1vLWktY2lyY2xlLWN1c3RvbSB7DQogICYgaDEgew0KICAgIGNvbG9yOiAjQ0NDQ0NDOw0KICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICBmb250LXdlaWdodDogbm9ybWFsOw0KICAgIGxpbmUtaGVpZ2h0OiAxN3B4Ow0KICB9DQoNCiAgJiBwIHsNCiAgICBjb2xvcjogIzJBN0VGQjsNCiAgICBmb250LXNpemU6IDE0cHg7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgbWFyZ2luOiA2cHggMDsNCiAgfQ0KDQogICYgc3BhbiB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgY29sb3I6ICNDQ0NDQ0M7DQogICAgZm9udC1zaXplOiAxMnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxN3B4Ow0KICB9DQoNCiAgJiBzcGFuIGkgew0KICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsNCiAgICBjb2xvcjogIzNmNDE0ZDsNCiAgfQ0KfQ0KDQoucHJvcG9ydGlvbiB7DQogIGZvbnQtc2l6ZTogMjBweDsNCiAgZm9udC13ZWlnaHQ6IDYwMDsNCiAgY29sb3I6ICMyQTdFRkI7DQogIG1hcmdpbjogMTJweCAwIDZweDsNCn0NCg0KLndhaXQgew0KICBmb250LXNpemU6IDEycHg7DQogIGZvbnQtd2VpZ2h0OiA0MDA7DQogIGNvbG9yOiAjOTk5OTk5Ow0KfQ0KDQouZm9vdGVyMiB7DQogIGRpc3BsYXk6IGZsZXg7DQogIGZsZXgtd3JhcDogd3JhcDsNCiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogIGFsaWduLWl0ZW1zOiBjZW50ZXI7DQogIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47DQoNCiAgLmNvbmZpcm0sIC5iYWNrIHsNCiAgICB3aWR0aDogMjEwcHg7DQogICAgaGVpZ2h0OiA0MHB4Ow0KICB9DQoNCiAgLmJhY2sgew0KICAgIGJvcmRlcjogbm9uZTsNCiAgfQ0KfQ0KDQouZGVzY3JpYmUgew0KICBwYWRkaW5nLXRvcDogMDsNCn0NCg0KLmRlc2NyaWJlIGgyIHsNCiAgZm9udC1zaXplOiAyMnB4Ow0KICBmb250LXdlaWdodDogNDAwOw0KICBjb2xvcjogIzMzMzMzMzsNCiAgbWFyZ2luLWJvdHRvbTogMTJweDsNCn0NCg0KLmFjZWEtcm93LnJvdy10b3Agew0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIG92ZXJmbG93OiBoaWRkZW47DQp9DQoNCi51cGRhdGUgew0KICBtYXJnaW46IDI3cHggMTZweDsNCn0NCg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AAuiBA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA","file":"index.vue","sourceRoot":"src/pages/system/onlineUpgrade","sourcesContent":["<template>\r\n<div class=\"upgrade\">\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\">\r\n <div class=\"header\">\r\n <div>当前版本<span class=\"v\"></span><span class=\"num\">{{$store.state.userInfo.version}}</span></div>\r\n <div class=\"info title\">\r\n 更新说明:\r\n <span v-if=\"upgradeStatus.status != 1\">已升级至最新版本,无需更新</span>\r\n <ul v-if=\"upgradeStatus.status == 1\">\r\n <li>{{upgradeStatus.title}}</li>\r\n </ul>\r\n </div>\r\n <el-button v-if=\"currentTab == 1 && upgradeStatus.status == 1\" type=\"primary\" class=\"primary btn update\" v-db-click @click=\"update()\">立即更新</el-button>\r\n </div>\r\n </el-card>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt\">\r\n <el-tabs v-model=\"currentTab\" @tab-click=\"handleClick\">\r\n <el-tab-pane :label=\"item.label\" :name=\"item.value.toString()\" v-for=\"item in headerList\" :key=\"item.id\" ></el-tab-pane>\r\n </el-tabs>\r\n <div class=\"contentTime\" v-if=\"currentTab == 1\">\r\n <div class=\"acea-row row-top on\" @mouseenter=\"quearyEvear(item.id,index)\" v-for=\"(item, index) in upgradeList\" :key=\"index\" :class=\"{active:index==dynamic}\">\r\n <div class=\"time\">{{item.release_time}}</div>\r\n <el-timeline class=\"list\">\r\n <el-timeline-item>\r\n <!-- <Icon :type=\"index==0 ? 'md-radio-button-on' : 'md-radio-button-off'\" slot=\"dot\"/> -->\r\n <el-collapse>\r\n <el-collapse-item >\r\n <template slot=\"title\">\r\n {{item.title}} v{{item.first_version}}.{{item.second_version}}.{{item.third_version}}.{{item.fourth_version}}<i class=\"el-icon-arrow-down\" />\r\n </template>\r\n <p class=\"info\">\r\n <ul style=\"white-space: pre-wrap;\">\r\n <li v-html=\"item.content\"></li>\r\n </ul>\r\n </p>\r\n </el-collapse-item>\r\n </el-collapse>\r\n </el-timeline-item>\r\n <el-button v-if=\"item.client_package_link\" type=\"success\" class=\"primary btn\" v-db-click @click=\"downloadFile(item.client_package_link)\">移动端源码</el-button>\r\n <el-button v-if=\"item.pc_package_link\" type=\"primary\" class=\"primary btn1\" v-db-click @click=\"downloadFile(item.pc_package_link)\">PC端源码</el-button>\r\n </el-timeline>\r\n </div>\r\n </div>\r\n <div v-if=\"currentTab == 2\" height=\"550\">\r\n <div class=\"contentTime\" >\r\n <div class=\"acea-row row-top off\" @mouseenter=\"quearyEvear(item.id,index)\" v-for=\"(item,index) in upgradeLogList\" :key=\"index\" :class=\"{active:index==dynamic}\">\r\n <div class=\"time\">\r\n <div v-if=\"index == 0\">最近更新</div>\r\n <div>{{item.upgrade_time}}</div>\r\n </div>\r\n <el-timeline class=\"list\">\r\n <el-timeline-item>\r\n <Icon :type=\"index==0 ? 'md-radio-button-on' : 'md-radio-button-off'\" slot=\"dot\"/>\r\n <el-collapse>\r\n <el-collapse-item>\r\n <template slot=\"title\">\r\n {{item.title}} v{{item.first_version}}.{{item.second_version}}.{{item.third_version}}.{{item.fourth_version}}<i type=\"el-icon-arrow-down\" />\r\n </template>\r\n <p class=\"info\">\r\n <ul style=\"white-space: pre-wrap;\">\r\n <li v-html=\"item.content\"></li>\r\n </ul>\r\n </p>\r\n </el-collapse-item>\r\n </el-collapse>\r\n </el-timeline-item>\r\n </el-timeline>\r\n </div>\r\n </div>\r\n </div>\r\n </el-card>\r\n <!-- 免责声明 -->\r\n <el-dialog :visible.sync=\"declaration\"\r\n width=\"470px\"\r\n custom-clas=\"vertical-center-modal\"\r\n :show-close=\"true\"\r\n :close-on-click-modal=\"false\"\r\n >\r\n <p slot=\"header\" class=\"header-modal\">\r\n <span>{{upgradeAgreement.title}}</span>\r\n </p>\r\n <div class=\"describe\">\r\n <p v-html=\"upgradeAgreement.content\"></p>\r\n </div>\r\n <span slot=\"footer\" class=\"dialog-footer\">\r\n <el-button v-db-click @click=\"reject\">拒 绝</el-button>\r\n <el-button type=\"primary\" v-db-click @click=\"agree\">同 意</el-button>\r\n </span>\r\n </el-dialog>\r\n <!-- 升级 -->\r\n <el-dialog v-model=\"updateModal\" width=\"470px\" custom-clas=\"vertical-center-modal\" :show-close=\"true\"\r\n :close-on-click-modal=\"false\">\r\n <p slot=\"header\" class=\"header-modal2\">\r\n <span >升级至v{{forceVersion}}</span>\r\n </p>\r\n <div class=\"describe\" v-if=\"upgradeProgress.speed != '100.0' || this.downloadStatus !='200'\">\r\n <i-circle\r\n :size=\"140\"\r\n :trail-width=\"4\"\r\n :stroke-width=\"5\"\r\n :percent=\"Number(upgradeProgress.speed)\"\r\n stroke-linecap=\"square\"\r\n stroke-color=\"#43a3fb\">\r\n <div class=\"demo-i-circle-custom\">\r\n <p>{{upgradeProgress.tip || '升级中'}}</p>\r\n </div>\r\n </i-circle>\r\n <div class=\"proportion\">{{!upgradeProgress.speed?'':upgradeProgress.speed+'%'}}</div>\r\n <div class=\"wait\">正在更新,请耐心等候~</div>\r\n </div>\r\n <div slot=\"footer\">\r\n <!-- <div v-if=\"upgradeProgress.speed == '100.0'\"><el-button class=\"back\" type=\"primary\" shape=\"circle\" v-db-click @click=\"updateModal = false\">确认</el-button></div> -->\r\n </div>\r\n <div v-if=\"upgradeProgress.speed == '100.0'\" class=\"describe\">\r\n <el-progress type=\"circle\" :percentage=\"100\" status=\"success\"></el-progress>\r\n <div class=\"success\">升级成功</div>\r\n </div>\r\n <div v-if=\"upgradeProgress.speed == '100.0'\" slot=\"footer\" class=\"footer2\">\r\n <el-button class=\"confirm\" type=\"primary\" shape=\"circle\" v-db-click @click=\"back()\">确认</el-button>\r\n <!-- <div><el-button class=\"back\" shape=\"circle\" v-db-click @click=\"backSure()\">返回</el-button></div> -->\r\n </div>\r\n <span v-if=\"upgradeProgress.speed == '100.0'\" slot=\"footer\" class=\"dialog-footer\">\r\n <el-button v-db-click @click=\"cancel\">取 消</el-button>\r\n <el-button type=\"primary\" v-db-click @click=\"back\">确 认</el-button>\r\n </span>\r\n </el-dialog>\r\n</div>\r\n</template>\r\n\r\n<script>\r\nimport {\r\n upgradeListApi,\r\n upgradeProgressApi,\r\n upgradeAgreementApi,\r\n upgradeStatusApi,\r\n upgradeLogListApi,\r\n upgradeableListApi,\r\n downloadApi,\r\n} from '@/api/system';\r\nimport axios from 'axios';\r\nimport { AccountLogout } from '@/api/account';\r\nimport { getCookies,removeCookies} from '@/libs/util';\r\n\r\nimport Setting from '@/setting';\r\nexport default {\r\n name: 'systemUpgradeclient',\r\n data() {\r\n return {\r\n Panel: '1',\r\n currentTab: '1',\r\n declaration: false,\r\n updateModal: false,\r\n modal_loading: false,\r\n percent: 0,\r\n params: [],\r\n arr: [],\r\n dynamic: false,\r\n status: false,\r\n version: '',\r\n forceVersion: '',\r\n headerList: [\r\n {\r\n label: '系统升级',\r\n value: 1,\r\n },\r\n {\r\n label: '升级记录',\r\n value: 2,\r\n },\r\n ],\r\n upgradeList: [],\r\n upgradeLogList: [],\r\n upgradeableList: [],\r\n upgradeProgress: {\r\n speed: 0,\r\n },\r\n upgradeAgreement: [],\r\n upgradeStatus: {},\r\n downloadStatus: null,\r\n page: 1,\r\n limit: 15,\r\n // 定时器\r\n timer: null,\r\n params_key: undefined,\r\n newKey: null,\r\n servionStatus: false,\r\n count:0\r\n };\r\n },\r\n created() {\r\n // this.getUpgradeList();\r\n // this.getUpgradeLogList();\r\n // this.getupgradeableList();\r\n // if (this.$route.params.items) {\r\n // this.getUpgradeAgreement();\r\n // }\r\n },\r\n async mounted() {\r\n\r\n this.getUpgradeStatus();\r\n await this.getUpgradeList();\r\n await this.getupgradeableList();\r\n if (this.$store.state.upgrade.toggleStatus) {\r\n this.servionStatus = true;\r\n this.getUpgradeAgreement();\r\n }\r\n // this.compare();\r\n },\r\n watch: {\r\n 'upgradeProgress.speed': {\r\n handler(newVal, oldVal) {\r\n if (newVal === '100.0') {\r\n clearInterval(this.timer);\r\n }\r\n },\r\n },\r\n // 'this.downloadStatus': {\r\n // handler(newVal, oldVal) {\r\n // if (newVal = '200') {\r\n // this.updateModal = false;\r\n // clearInterval(this.timer);\r\n // }\r\n // }\r\n // }\r\n },\r\n methods: {\r\n handleReachBottom(){\r\n if(this.count === this.upgradeLogList.length) {\r\n this.$message.warning('暂无更多升级记录')\r\n } else {\r\n this.getUpgradeLogList();\r\n }\r\n },\r\n handleClick() {\r\n this.page = 1\r\n if(this.currentTab == 1){\r\n this.getupgradeableList();\r\n } else {\r\n this.upgradeLogList = []\r\n this.getUpgradeLogList();\r\n }\r\n },\r\n // 升级列表\r\n async getUpgradeList() {\r\n let data = {\r\n page: this.page,\r\n limit: this.limit,\r\n };\r\n let res = await upgradeListApi(data);\r\n this.upgradeList = res.data.list;\r\n this.upgradeList = res.data.list;\r\n },\r\n // 升级记录\r\n getUpgradeLogList() {\r\n let data = {\r\n page: this.page,\r\n limit: this.limit,\r\n };\r\n upgradeLogListApi(data)\r\n .then((res) => {\r\n this.upgradeLogList = [...this.upgradeLogList,...res.data.list]\r\n this.count = res.data.count\r\n if(this.upgradeLogList.length < this.count){\r\n this.page++\r\n }\r\n if(this.count === this.upgradeLogList.length) {\r\n this.$message.warning('暂无更多升级记录')\r\n } else {\r\n this.getUpgradeLogList();\r\n }\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n\r\n // 可升级列表\r\n async getupgradeableList() {\r\n let res = await upgradeableListApi();\r\n this.upgradeableList = res.data;\r\n let firstVer = res.data[0]\r\n if(this.$store.state.upgrade.toggleStatus || this.upgradeStatus.force_reminder){\r\n const data = res.data.find(item => item.force_reminder === 1)\r\n this.newKey = data.package_key;\r\n this.forceVersion = data.first_version + '.' + data.second_version + '.' + data.third_version + '.' + data.fourth_version\r\n }else{\r\n this.params_key = this.upgradeableList[0].package_key\r\n this.forceVersion = firstVer.first_version + '.' + firstVer.second_version + '.' + firstVer.third_version + '.' + firstVer.fourth_version\r\n }\r\n\r\n\r\n // arr.forEach((item) => {\r\n // this.$set(\r\n // item,\r\n // 'servion',\r\n // item.first_version + '.' + item.second_version + '.' + item.third_version + '.' + item.fourth_version,\r\n // );\r\n // });\r\n\r\n // let data = [];\r\n // arr.map((ele) => {\r\n // data.push(ele.servion);\r\n // });\r\n // // 版本号排序\r\n // function sortVersion(list) {\r\n // return list.sort((version1, version2) => {\r\n // const arr1 = version1.split('.').map((e) => e * 1);\r\n // const arr2 = version2.split('.').map((e) => e * 1);\r\n // const length = Math.max(arr1.length, arr2.length);\r\n // for (let i = 0; i < length; i++) {\r\n // if ((arr1[i] || 0) > (arr2[i] || 0)) return 1;\r\n // if ((arr1[i] || 0) < (arr2[i] || 0)) return -1;\r\n // }\r\n // return 0;\r\n // });\r\n // }\r\n // this.forceVersion = data[0];\r\n // this.params.map((item) => {\r\n // if (item.servion == data[data.length - 1]) {\r\n // this.newKey = item.package_key;\r\n // }\r\n // });\r\n },\r\n // 下载升级包\r\n getdownload() {\r\n if (this.$store.state.upgrade.toggleStatus || this.upgradeStatus.force_reminder) {\r\n this.params_key = this.newKey;\r\n }\r\n downloadApi(this.params_key)\r\n .then((res) => {\r\n // this.downloadStatus = res.status;\r\n if (res.status == 200) {\r\n if (this.upgradeProgress.speed !== '100.0') {\r\n this.timer = setInterval(() => {\r\n setTimeout(() => {\r\n this.getUpgradeProgress();\r\n }, 0);\r\n }, 5000);\r\n } else {\r\n clearInterval(this.timer);\r\n this.updateModal = false;\r\n }\r\n } else {\r\n this.updateModal = false;\r\n }\r\n })\r\n .catch((err) => {\r\n clearInterval(this.timer);\r\n this.$message.error('下载终止');\r\n this.updateModal = false;\r\n });\r\n },\r\n downloadFile(url){\r\n window.open(url, '_blank');\r\n },\r\n\r\n // 升级进度\r\n getUpgradeProgress() {\r\n upgradeProgressApi()\r\n .then((res) => {\r\n this.upgradeProgress = res.data;\r\n this.downloadStatus = res.status;\r\n })\r\n .catch((res) => {\r\n clearInterval(this.timer);\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 升级协议\r\n getUpgradeAgreement() {\r\n upgradeAgreementApi()\r\n .then((res) => {\r\n this.upgradeAgreement = res.data;\r\n this.declaration = true;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 升级状态\r\n getUpgradeStatus() {\r\n upgradeStatusApi()\r\n .then((res) => {\r\n this.upgradeStatus = res.data;\r\n if(res.data.force_reminder){\r\n this.declaration = true\r\n this.getUpgradeAgreement()\r\n }\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n // 立即更新\r\n update(item) {\r\n this.declaration = true;\r\n if (item && this.$store.state.upgrade.toggleStatus == false) {\r\n this.params_key = item.params_key;\r\n }\r\n // this.version = item.first_version + \".\" + item.second_version + \".\" + item.third_version + \".\" + item.fourth_version;\r\n this.getUpgradeAgreement();\r\n },\r\n // 比较相同版本号\r\n compare() {\r\n this.upgradeList.map((ele, i) => {\r\n this.$set(\r\n this.upgradeList[i],\r\n 'mn',\r\n ele.first_version + ele.second_version + ele.third_version + ele.fourth_version,\r\n );\r\n\r\n this.upgradeableList.map((item, i) => {\r\n this.$set(\r\n this.upgradeableList[i],\r\n 'mn',\r\n item.first_version + item.second_version + item.third_version + item.fourth_version,\r\n );\r\n });\r\n if (this.upgradeList[i].mn == this.upgradeableList[i].mn) {\r\n this.$set(this.upgradeList[i], 'indexn', true);\r\n this.$set(this.upgradeList[i], 'params_key', this.upgradeableList[i].package_key);\r\n this.$set(this.upgradeableList[i], 'indexn', true);\r\n }\r\n });\r\n },\r\n // 同意\r\n agree() {\r\n this.declaration = false;\r\n this.updateModal = true;\r\n this.getdownload();\r\n this.$store.commit(\"upgrade/TOGGLE_STATUS\",false)\r\n },\r\n reject(){\r\n this.declaration = false\r\n this.$store.commit(\"upgrade/TOGGLE_STATUS\",false)\r\n },\r\n back() {\r\n this.updateModal = false;\r\n // this.getUpgradeList();\r\n clearInterval(this.timer);\r\n AccountLogout()\r\n .then((res) => {\r\n this.$message.success('您已成功退出');\r\n this.$router.replace(this.$routeProStr + '/login');\r\n localStorage.clear();\r\n removeCookies('token');\r\n removeCookies('expires_time');\r\n removeCookies('uuid');\r\n // window.location.reload()\r\n })\r\n .catch((res) => {});\r\n },\r\n backSure() {\r\n this.updateModal = false;\r\n clearInterval(this.timer);\r\n },\r\n cancel() {\r\n this.updateModal = false;\r\n clearInterval(this.timer);\r\n },\r\n // 导出备份文件\r\n exports(item) {\r\n let name =\r\n item.title +\r\n 'v' +\r\n item.first_version +\r\n '.' +\r\n item.second_version +\r\n '.' +\r\n item.third_version +\r\n '.' +\r\n item.fourth_version +\r\n '.' +\r\n item.upgrade_time;\r\n let href = Setting.apiBaseURL + `/system/upgrade_export/${item.id}/file`;\r\n axios({\r\n method: 'get',\r\n url: href,\r\n responseType: 'blob',\r\n headers: {\r\n 'Authori-zation': 'Bearer ' + getCookies('token'),\r\n },\r\n }).then((res) => {\r\n var blob = new Blob([res.data], {\r\n type: 'application/octet-stream;charset=UTF-8',\r\n });\r\n var downloadElement = document.createElement('a');\r\n // 下载的文件名\r\n downloadElement.download = `${name}.zip`;\r\n // 创建下载的链接\r\n downloadElement.href = window.URL.createObjectURL(blob);\r\n // 点击下载\r\n downloadElement.click();\r\n document.body.appendChild(downloadElement);\r\n // 下载完成移除元素\r\n document.body.removeChild(downloadElement);\r\n // 释放掉blob对象\r\n window.URL.revokeObjectURL(downloadElement.href);\r\n });\r\n },\r\n handleDownload(item) {\r\n let name =\r\n item.title +\r\n 'v' +\r\n item.first_version +\r\n '.' +\r\n item.second_version +\r\n '.' +\r\n item.third_version +\r\n '.' +\r\n item.fourth_version +\r\n '.' +\r\n item.upgrade_time;\r\n let href = Setting.apiBaseURL + `/system/upgrade_export/${item.id}/data`;\r\n axios({\r\n method: 'get',\r\n url: href,\r\n responseType: 'blob',\r\n headers: {\r\n 'Authori-zation': 'Bearer ' + getCookies('token'),\r\n },\r\n }).then((res) => {\r\n var blob = new Blob([res.data], {\r\n type: 'application/octet-stream;charset=UTF-8',\r\n });\r\n var downloadElement = document.createElement('a');\r\n // 下载的文件名\r\n downloadElement.download = `${name}.gz`;\r\n // 创建下载的链接\r\n downloadElement.href = window.URL.createObjectURL(blob);\r\n // 点击下载\r\n downloadElement.click();\r\n document.body.appendChild(downloadElement);\r\n // 下载完成移除元素\r\n document.body.removeChild(downloadElement);\r\n // 释放掉blob对象\r\n window.URL.revokeObjectURL(downloadElement.href);\r\n });\r\n },\r\n quearyEvear(id, index) {\r\n this.dynamic = index;\r\n },\r\n },\r\n destroyed() {\r\n //销毁\r\n clearInterval(this.timer);\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.active {\r\n padding: 6px 0;\r\n // background-color: #eee !important;\r\n}\r\n\r\n.active .ivu-collapse-simple {\r\n // background-color: #eee !important;\r\n}\r\n\r\n.active .ivu-collapse-content {\r\n // background-color: #eee !important;\r\n}\r\n\r\n.active .ivu-timeline-item-head-custom {\r\n // background-color: #fff !important;\r\n // z-index 9999\r\n}\r\n\r\n.active .btn {\r\n top: 50px;\r\n}\r\n\r\n.primary {\r\n position: absolute;\r\n right: 0;\r\n bottom: 0;\r\n\r\n}\r\n\r\n.upgrade .header {\r\n font-size: 12px;\r\n color: #000;\r\n // border-bottom:1px dotted rgba(221,221,221,1);\r\n // padding-bottom: 25px;\r\n}\r\n\r\n.upgrade .header .v {\r\n color: var(--prev-color-primary);\r\n margin-left: 10px;\r\n}\r\n\r\n.upgrade .header .num {\r\n color: var(--prev-color-primary);\r\n font-size: 24px;\r\n}\r\n\r\n.upgrade .header .info {\r\n color: #999999;\r\n}\r\n\r\n.upgrade .header .title {\r\n color: #999999;\r\n display: flex;\r\n}\r\n\r\n.upgrade .header .info ul {\r\n color: #999999;\r\n display: flex;\r\n margin-left: 14px;\r\n}\r\n\r\n.upgrade .header .info ul li::marker {\r\n color: red;\r\n}\r\n\r\n.upgrade .header .info ul li+li {\r\n margin-left: 40px;\r\n}\r\n\r\n.upgrade .contentTime .acea-row {\r\n padding: 5px;\r\n}\r\n\r\n.upgrade .contentTime .list {\r\n position: relative;\r\n width: 85%;\r\n}\r\n\r\n.upgrade .contentTime .info {\r\n font-size: 12px !important;\r\n color: #999 !important;\r\n margin-top: 13px;\r\n}\r\n\r\n.upgrade .contentTime .info li {\r\n list-style-type: disc;\r\n margin-left: 16px;\r\n line-height: 26px;\r\n list-style: none;\r\n}\r\n\r\n.upgrade .contentTime .collapse {\r\n width: 100%;\r\n}\r\n\r\n.upgrade .contentTime .ivu-collapse {\r\n border: 0 !important;\r\n}\r\n\r\n.upgrade .contentTime .ivu-collapse > .ivu-collapse-item > .ivu-collapse-header {\r\n height: unset !important;\r\n line-height: 20px !important;\r\n border: 0 !important;\r\n font-size: 16px !important;\r\n color: #333333;\r\n font-weight: 600;\r\n // background: #eee;\r\n}\r\n\r\n.upgrade .contentTime .ivu-collapse > .ivu-collapse-item > .ivu-collapse-header > i {\r\n color: #BBBBBB !important;\r\n margin-left: 9px;\r\n}\r\n\r\n.upgrade .contentTime .ivu-collapse > .ivu-collapse-item.ivu-collapse-item-active > .ivu-collapse-header > i {\r\n transform: rotate(180deg);\r\n}\r\n\r\n.upgrade .contentTime {\r\n margin-top: 30px;\r\n position: relative;\r\n}\r\n\r\n.upgrade .contentTime .btn {\r\n position: absolute;\r\n top: 5px;\r\n right: 60px;\r\n z-index: 99;\r\n height: max-content;\r\n}\r\n\r\n.upgrade .contentTime .btn1 {\r\n position: absolute;\r\n top: 0;\r\n right: -29px;\r\n z-index: 99;\r\n margin-left: 14px;\r\n}\r\n\r\n.upgrade .contentTime .time {\r\n font-size: 14px;\r\n line-height: 14px;\r\n color: #999;\r\n text-align: right;\r\n padding-right: 28px;\r\n min-width: 150px;\r\n}\r\n\r\n.upgrade .contentTime .ivu-timeline-item:after {\r\n content: ' ';\r\n position: absolute;\r\n top: 13px;\r\n left: 6.5px;\r\n width: 1px;\r\n height: calc(100% - 13px);\r\n background-color: #e8eaec;\r\n}\r\n\r\n.upgrade .contentTime:nth-child(2n) .ivu-timeline-item-head-custom {\r\n z-index: 2;\r\n font-size: 16px;\r\n color: #DDDCDD;\r\n // background: #eee;\r\n margin-left: 12px;\r\n margin-top: 10px;\r\n}\r\n\r\n.ivu-timeline-item-head-custom {\r\n left: -24px;\r\n}\r\n.upgrade .contentTimed .on{\r\n display:flex;\r\n flex-wrap: nowrap;\r\n}\r\n.upgrade .contentTime .on:first-child .ivu-timeline-item-head-custom {\r\n color: var(--prev-color-primary);\r\n font-size: 18px;\r\n}\r\n::v-deep .ivu-collapse > .ivu-collapse-item > .ivu-collapse-header{\r\n line-height: 20px;\r\n\r\n}\r\n.upgrade .contentTimed .on .ivu-collapse > .ivu-collapse-item > .ivu-collapse-header {\r\n color: var(--prev-color-primary);\r\n}\r\n\r\n.on:first-child .ivu-collapse-header {\r\n color: var(--prev-color-primary) !important;\r\n}\r\n\r\n.upgrade .contentTime .off:first-child .ivu-timeline-item-head-custom {\r\n color: var(--prev-color-primary);\r\n font-size: 18px;\r\n}\r\n\r\n.off:first-child .ivu-collapse-header {\r\n color: var(--prev-color-primary) !important;\r\n}\r\n\r\n.off:first-child .time {\r\n color: var(--prev-color-primary) !important;\r\n}\r\n\r\n.header-modal {\r\n background: url('../../../assets/images/bg.png') no-repeat;\r\n background-size: 100% 100%;\r\n text-align: center;\r\n border-radius: 6px 6px 0 0;\r\n}\r\n\r\n.ivu-modal{\r\n border-radius: 12px;\r\n overflow: hidden;\r\n}\r\n\r\n.header-modal2 {\r\n background: url('../../../assets/images/bg2.png') no-repeat;\r\n background-size: 100% 100%;\r\n text-align: center;\r\n border-radius: 6px 6px 0 0;\r\n}\r\n\r\n.ivu-modal-header {\r\n padding: 0;\r\n border-radius: 10px;\r\n border: none;\r\n}\r\n\r\n.ivu-modal-header .header-modal2 {\r\n height: 74px;\r\n line-height: 74px;\r\n font-size: 20px;\r\n font-weight: 500;\r\n}\r\n\r\n.ivu-modal-header p, .ivu-modal-header-inner {\r\n height: 96px;\r\n color: #fff;\r\n line-height: 96px;\r\n font-size: 24px;\r\n}\r\n\r\n.describe {\r\n text-align: center;\r\n padding-top: 30px;\r\n\r\n .success {\r\n font-size: 20px;\r\n color: #333333;\r\n margin-top: 10px;\r\n }\r\n}\r\n\r\n.ivu-modal-footer {\r\n border: none;\r\n display: flex;\r\n justify-content: center;\r\n}\r\n\r\n.footer .ivu-btn {\r\n width: 128px;\r\n height: 40px;\r\n border: none;\r\n}\r\n\r\n.cancel {\r\n background: #EEEEEE;\r\n}\r\n\r\n.vertical-center-modal {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n .ivu-modal {\r\n top: 0;\r\n }\r\n}\r\n::v-deep .vertical-center-modal .ivu-modal-header{\r\n padding: 0 !important;\r\n border: none;\r\n}\r\n::v-deep .ivu-modal-content{\r\n border-radius: 14px 14px 0 0;\r\n overflow: hidden;\r\n}\r\n.footer {\r\n display: flex;\r\n justify-content: space-around;\r\n}\r\n\r\n.demo-i-circle-custom {\r\n & h1 {\r\n color: #CCCCCC;\r\n font-size: 12px;\r\n font-weight: normal;\r\n line-height: 17px;\r\n }\r\n\r\n & p {\r\n color: #2A7EFB;\r\n font-size: 14px;\r\n line-height: 20px;\r\n margin: 6px 0;\r\n }\r\n\r\n & span {\r\n display: block;\r\n color: #CCCCCC;\r\n font-size: 12px;\r\n line-height: 17px;\r\n }\r\n\r\n & span i {\r\n font-style: normal;\r\n color: #3f414d;\r\n }\r\n}\r\n\r\n.proportion {\r\n font-size: 20px;\r\n font-weight: 600;\r\n color: #2A7EFB;\r\n margin: 12px 0 6px;\r\n}\r\n\r\n.wait {\r\n font-size: 12px;\r\n font-weight: 400;\r\n color: #999999;\r\n}\r\n\r\n.footer2 {\r\n display: flex;\r\n flex-wrap: wrap;\r\n justify-content: center;\r\n align-items: center;\r\n flex-direction: column;\r\n\r\n .confirm, .back {\r\n width: 210px;\r\n height: 40px;\r\n }\r\n\r\n .back {\r\n border: none;\r\n }\r\n}\r\n\r\n.describe {\r\n padding-top: 0;\r\n}\r\n\r\n.describe h2 {\r\n font-size: 22px;\r\n font-weight: 400;\r\n color: #333333;\r\n margin-bottom: 12px;\r\n}\r\n\r\n.acea-row.row-top {\r\n position: relative;\r\n overflow: hidden;\r\n}\r\n\r\n.update {\r\n margin: 27px 16px;\r\n}\r\n</style>\r\n"]}]}