88533ef436e63c1f887cb71a41ae1e3f.json 15 KB

1
  1. {"remainingRequest":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\babel-loader\\lib\\index.js!E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\src\\vab\\components\\GalleryBar\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\src\\vab\\components\\GalleryBar\\index.vue","mtime":1655374732000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\babel.config.js","mtime":1655374732000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\vue-loader\\lib\\index.js","mtime":1655715099000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KaW1wb3J0IHsgaGFuZGxlRmlyc3RNZW51LCBoYW5kbGVIZWFkTWVudSB9IGZyb20gIkAvdXRpbHMvcm91dGVzIjsKaW1wb3J0IHZhcmlhYmxlcyBmcm9tICJAL2NvbmZpZy92YXJpYWJsZXMuc2NzcyI7CmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICJ2dWV4IjsKaW1wb3J0IHsgbWVudXMgfSBmcm9tICIuL21lbnVzIjsKaW1wb3J0IHsgc3RvcmVNZW51cyB9IGZyb20gIi4vc3RvcmVNZW51cyI7CmltcG9ydCB7IG1lcmNoTWVudXMgfSBmcm9tICIuL21lcmNoTWVudXMiOwppbXBvcnQgeyBkZWZhdWx0T3BlbmVkcywgb3BlbkZpcnN0TWVudSwgdW5pcXVlT3BlbmVkIH0gZnJvbSAiQC9jb25maWcvc2V0dGluZ3MiOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogIkdhbGxlcnlCYXIiLAoKICBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgdW5pcXVlT3BlbmVkLAogICAgICBmaXJzdE1lbnU6ICIiLAogICAgICBkZWZhdWx0T3BlbnM6IGRlZmF1bHRPcGVuZWRzLAogICAgICB2YXJpYWJsZXM6IHZhcmlhYmxlcywKICAgICAgYXBwTWVudXM6IFsi5Y2V5o2u5qih54mIIiwgIuWIhumUgCIsICLokKXplIAiLCAi5pS26ZO25Y+wIiwgIuWkmuWVhuaItyIsICLlpJrpl6jlupciLCAi5L6b5bqU5ZWG566h55CG56uvIiwgIumSsei0p+aXpea4heWvuei0piIsICLnp6/liIbllYbln44iLCAi6ZSA5ZSu5o+Q5oiQIiwgIuiuvue9riIsICLllYbln44iXQogICAgfTsKICB9LAoKICBjb21wdXRlZDogeyAuLi5tYXBHZXR0ZXJzKHsKICAgICAgY29sbGFwc2U6ICJzZXR0aW5ncy9jb2xsYXBzZSIsCiAgICAgIHJvdXRlczogInJvdXRlcy9yb3V0ZXMiLAogICAgICBwYXJ0aWFsUm91dGVzOiAicm91dGVzL3BhcnRpYWxSb3V0ZXMiLAogICAgICAvLyDljLrliIblkI7lj7DnsbvlnovvvIwxLeaAu+WQjuWPsO+8jDIt5aSa6Zeo5bqX77yMMy3lpJrllYbmiLcKICAgICAgc3lzdGVtVHlwZTogIk1Vc2VyL3N5c3RlbVR5cGUiCiAgICB9KSwKCiAgICBhY3RpdmVNZW51KCkgewogICAgICBjb25zdCByb3V0ZSA9IHRoaXMuJHJvdXRlOwogICAgICBjb25zdCB7CiAgICAgICAgbWV0YSwKICAgICAgICBwYXRoCiAgICAgIH0gPSByb3V0ZTsKCiAgICAgIGlmIChtZXRhLmFjdGl2ZU1lbnUpIHsKICAgICAgICByZXR1cm4gbWV0YS5hY3RpdmVNZW51OwogICAgICB9CgogICAgICByZXR1cm4gcGF0aDsKICAgIH0sCgogICAgbWVudUxpc3QoKSB7CiAgICAgIGlmICh0aGlzLnN5c3RlbVR5cGUgPT09IDIpIHsKICAgICAgICByZXR1cm4gc3RvcmVNZW51cygpOwogICAgICB9IGVsc2UgaWYgKHRoaXMuc3lzdGVtVHlwZSA9PT0gMykgewogICAgICAgIHJldHVybiBtZXJjaE1lbnVzKCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIG1lbnVzKCk7CiAgICAgIH0KICAgIH0sCgogICAgaGFuZGxlUm91dGVzKCkgewogICAgICByZXR1cm4gdGhpcy5tZW51TGlzdC5maWx0ZXIoaXRlbSA9PiBpdGVtLmhpZGRlbiAhPT0gdHJ1ZSAmJiBpdGVtLm1ldGEpOwogICAgfQoKICB9LAogIHdhdGNoOiB7CiAgICAkcm91dGU6IHsKICAgICAgaGFuZGxlcih2YWwpIHsKICAgICAgICBjb25zdCBmaXJzdE1lbnUgPSB0aGlzLnN5c3RlbVR5cGUgPT09IDIgPyBoYW5kbGVIZWFkTWVudSgpIDogaGFuZGxlRmlyc3RNZW51KCk7CgogICAgICAgIGlmICh0aGlzLmZpcnN0TWVudSAhPT0gZmlyc3RNZW51KSB7CiAgICAgICAgICB0aGlzLmZpcnN0TWVudSA9IGZpcnN0TWVudTsKICAgICAgICAgIHRoaXMuaGFuZGxlVGFiQ2xpY2soewogICAgICAgICAgICBuYW1lOiBmaXJzdE1lbnUKICAgICAgICAgIH0sIHRydWUpOwogICAgICAgIH0KICAgICAgfSwKCiAgICAgIGltbWVkaWF0ZTogdHJ1ZQogICAgfQogIH0sCiAgbWV0aG9kczogewogICAgaGFuZGxlVGFiQ2xpY2sodGFiLCBtb3VudGVkKSB7CiAgICAgIGNvbnN0IHBhZ2VJdGVtID0gdGhpcy5tZW51TGlzdC5maW5kKGl0ZW0gPT4gaXRlbS5wYXRoID09PSB0YWIubmFtZSk7CgogICAgICBpZiAoIXBhZ2VJdGVtKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CgogICAgICBjb25zdCBjaGlsZHJlbkFyciA9IHBhZ2VJdGVtLmNoaWxkcmVuOwogICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgicm91dGVzL3NldFBhcnRpYWxSb3V0ZXMiLCBjaGlsZHJlbkFycik7CgogICAgICBpZiAobW91bnRlZCAhPT0gdHJ1ZSAmJiBvcGVuRmlyc3RNZW51KSB7CiAgICAgICAgdGhpcy4kcm91dGVyLnB1c2goY2hpbGRyZW5BcnJbMF0uZnVsbFBhdGgpOwogICAgICB9IC8vIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCJzZXR0aW5ncy9vcGVuU2lkZUJhciIpOwoKICAgIH0sCgogICAgbWVudUNsaWNrKHJvdXRlKSB7CiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHJvdXRlLmZ1bGxQYXRoKTsKICAgIH0KCiAgfQp9Ow=="},{"version":3,"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwFA;AACA;AACA;AACA;AACA;AACA;AACA,SACAA,cADA,EAEAC,aAFA,EAGAC,YAHA,QAIA,mBAJA;AAKA;EACAC,kBADA;;EAEAC;IACA;MACAF,YADA;MAEAG,aAFA;MAGAC,4BAHA;MAIAC,oBAJA;MAKAC,WACA,MADA,EAEA,IAFA,EAGA,IAHA,EAIA,KAJA,EAKA,KALA,EAMA,KANA,EAOA,QAPA,EAQA,QARA,EASA,MATA,EAUA,MAVA,EAWA,IAXA,EAYA,IAZA;IALA;EAoBA,CAvBA;;EAwBAC,YACA;MACAC,6BADA;MAEAC,uBAFA;MAGAC,qCAHA;MAIA;MACAC;IALA,EADA;;IASAC;MACA;MACA;QAAAC;QAAAC;MAAA;;MACA;QACA;MACA;;MACA;IACA,CAhBA;;IAiBAC;MACA;QACA;MACA,CAFA,MAEA;QACA;MACA,CAFA,MAEA;QACA;MACA;IACA,CAzBA;;IA0BAC;MACA,4BACAC,yCADA;IAGA;;EA9BA,CAxBA;EAwDAC;IACAC;MACAC;QACA,kBACA,4DADA;;QAEA;UACA;UACA;YAAAnB;UAAA;QACA;MACA,CARA;;MASAoB;IATA;EADA,CAxDA;EAqEAC;IACAC;MACA;;MACA;QACA;MACA;;MACA;MACA;;MACA;QACA;MACA,CATA,CAUA;;IACA,CAZA;;IAaAC;MACA;IACA;;EAfA;AArEA","names":["defaultOpeneds","openFirstMenu","uniqueOpened","name","data","firstMenu","defaultOpens","variables","appMenus","computed","collapse","routes","partialRoutes","systemType","activeMenu","meta","path","menuList","handleRoutes","item","watch","$route","handler","immediate","methods","handleTabClick","menuClick"],"sourceRoot":"src/vab/components/GalleryBar","sources":["index.vue"],"sourcesContent":["<template>\n <el-scrollbar\n :class=\"{ 'is-collapse': collapse }\"\n class=\"gallery-bar-container\"\n >\n <logo></logo>\n <el-tabs\n v-model=\"firstMenu\"\n tab-position=\"left\"\n @tab-click=\"handleTabClick\"\n >\n <el-tab-pane\n v-for=\"item in handleRoutes\"\n :key=\"item.path\"\n :name=\"item.path\"\n >\n <div\n v-if=\"!appMenus.includes(item.meta.title)\"\n slot=\"label\"\n :title=\"item.meta.title\"\n class=\"gallery-grid\"\n >\n <el-popover v-if=\"collapse\" placement=\"right\" trigger=\"hover\">\n <div class=\"menu-box\">\n <div\n v-for=\"(route, index) in item.children\"\n :key=\"index\"\n class=\"menu-col\"\n >\n <p>{{ route.meta.title }}</p>\n <ul\n v-if=\"route.children && route.children.length\"\n class=\"menu-ul\"\n >\n <li\n v-for=\"(menu, indexT) in route.children\"\n :key=\"indexT\"\n class=\"menu-li\"\n @click=\"menuClick(menu)\"\n >\n {{ menu.meta.title }}\n </li>\n </ul>\n <ul v-else class=\"menu-ul\">\n <li class=\"menu-li\" @click=\"menuClick(route)\">\n {{ route.meta.title }}\n </li>\n </ul>\n </div>\n </div>\n <div slot=\"reference\">\n <vab-remix-icon\n v-if=\"item.meta.remixIcon\"\n :icon-class=\"item.meta.remixIcon\"\n :is-svg=\"item.meta.isCustomSvgIcon\"\n class=\"vab-remix-icon\"\n />\n {{ item.meta.title }}\n </div>\n </el-popover>\n <div v-else>\n <vab-remix-icon\n v-if=\"item.meta.remixIcon\"\n :icon-class=\"item.meta.remixIcon\"\n :is-svg=\"item.meta.isCustomSvgIcon\"\n class=\"vab-remix-icon\"\n />\n {{ item.meta.title }}\n </div>\n </div>\n </el-tab-pane>\n </el-tabs>\n <el-menu\n :background-color=\"variables['gallery-second-menu-background']\"\n :default-active=\"activeMenu\"\n :default-openeds=\"defaultOpens\"\n :unique-opened=\"uniqueOpened\"\n mode=\"vertical\"\n >\n <vab-menu\n v-for=\"route in partialRoutes\"\n :key=\"route.fullPath\"\n :item=\"route\"\n ></vab-menu>\n </el-menu>\n </el-scrollbar>\n</template>\n<script>\n import { handleFirstMenu, handleHeadMenu } from \"@/utils/routes\";\n import variables from \"@/config/variables.scss\";\n import { mapGetters } from \"vuex\";\n import { menus } from \"./menus\";\n import { storeMenus } from \"./storeMenus\";\n import { merchMenus } from \"./merchMenus\";\n import {\n defaultOpeneds,\n openFirstMenu,\n uniqueOpened,\n } from \"@/config/settings\";\n export default {\n name: \"GalleryBar\",\n data() {\n return {\n uniqueOpened,\n firstMenu: \"\",\n defaultOpens: defaultOpeneds,\n variables: variables,\n appMenus: [\n \"单据模版\",\n \"分销\",\n \"营销\",\n \"收银台\",\n \"多商户\",\n \"多门店\",\n \"供应商管理端\",\n \"钱货日清对账\",\n \"积分商城\",\n \"销售提成\",\n \"设置\",\n \"商城\",\n ],\n };\n },\n computed: {\n ...mapGetters({\n collapse: \"settings/collapse\",\n routes: \"routes/routes\",\n partialRoutes: \"routes/partialRoutes\",\n // 区分后台类型,1-总后台,2-多门店,3-多商户\n systemType: \"MUser/systemType\",\n }),\n\n activeMenu() {\n const route = this.$route;\n const { meta, path } = route;\n if (meta.activeMenu) {\n return meta.activeMenu;\n }\n return path;\n },\n menuList() {\n if (this.systemType === 2) {\n return storeMenus();\n } else if (this.systemType === 3) {\n return merchMenus();\n } else {\n return menus();\n }\n },\n handleRoutes() {\n return this.menuList.filter(\n (item) => item.hidden !== true && item.meta\n );\n },\n },\n watch: {\n $route: {\n handler(val) {\n const firstMenu =\n this.systemType === 2 ? handleHeadMenu() : handleFirstMenu();\n if (this.firstMenu !== firstMenu) {\n this.firstMenu = firstMenu;\n this.handleTabClick({ name: firstMenu }, true);\n }\n },\n immediate: true,\n },\n },\n methods: {\n handleTabClick(tab, mounted) {\n const pageItem = this.menuList.find((item) => item.path === tab.name);\n if (!pageItem) {\n return;\n }\n const childrenArr = pageItem.children;\n this.$store.dispatch(\"routes/setPartialRoutes\", childrenArr);\n if (mounted !== true && openFirstMenu) {\n this.$router.push(childrenArr[0].fullPath);\n }\n // this.$store.dispatch(\"settings/openSideBar\");\n },\n menuClick(route) {\n this.$router.push(route.fullPath);\n },\n },\n };\n</script>\n<style lang=\"scss\" scoped>\n @mixin active {\n &:hover {\n color: $base-color-blue;\n background-color: $base-gallery-second-menu-background-active !important;\n\n i,\n svg {\n color: $base-color-blue;\n }\n }\n\n &.is-active {\n color: $base-color-blue;\n background-color: $base-gallery-second-menu-background-active !important;\n }\n }\n\n .gallery-bar-container {\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n z-index: $base-z-index;\n width: $base-left-menu-width;\n height: 100vh;\n overflow: hidden;\n background: $base-gallery-second-menu-background;\n box-shadow: $base-box-shadow;\n transition: width $base-transition-time;\n\n .gallery-grid {\n width: $base-left-menu-width-min;\n height: $base-left-menu-width-min;\n padding: 10px;\n padding-top: calc((#{$base-left-menu-width-min} - 55px) / 2);\n overflow: hidden;\n text-align: center;\n text-overflow: ellipsis;\n word-break: break-all;\n white-space: nowrap;\n svg {\n display: block;\n height: 20px;\n margin: auto;\n margin-top: 10px;\n margin-bottom: -7px;\n }\n\n [class*=\"ri-\"] {\n display: block;\n height: 20px;\n margin: auto;\n }\n }\n\n ::v-deep {\n .el-scrollbar__wrap {\n overflow-x: hidden;\n }\n\n .el-tabs {\n position: fixed;\n width: $base-left-menu-width-min;\n\n .el-tabs__nav {\n height: calc(100vh - #{$base-logo-height});\n background: $base-gallery-first-menu-background;\n overflow-y: auto;\n }\n\n .el-tabs__item {\n height: auto;\n padding: 0;\n line-height: auto;\n color: $base-color-white;\n\n &.is-active {\n background: $base-color-blue;\n }\n }\n }\n\n .el-tabs__active-bar.is-left,\n .el-tabs--left .el-tabs__nav-wrap.is-left::after {\n display: none;\n }\n\n .el-tabs + .el-menu {\n left: $base-left-menu-width-min;\n display: fixed;\n width: calc(#{$base-left-menu-width} - #{$base-left-menu-width-min});\n border: 0;\n }\n\n .el-menu {\n border: 0;\n\n .vab-fas-icon {\n padding-right: 3px;\n font-size: $base-font-size-default;\n }\n\n .vab-remix-icon {\n padding-right: 3px;\n font-size: $base-font-size-default + 2;\n }\n\n .el-menu-item,\n .el-submenu__title {\n height: $base-menu-item-height;\n overflow: hidden;\n line-height: $base-menu-item-height;\n text-overflow: ellipsis;\n white-space: nowrap;\n vertical-align: middle;\n\n @include active;\n }\n }\n }\n\n &.is-collapse {\n ::v-deep {\n width: 0;\n }\n }\n }\n\n /* 自定义menu样式*/\n .menu-box {\n display: flex;\n padding: 10px 0;\n .menu-col {\n padding: 0 24px;\n font-size: 14px;\n border-right: 1px solid #eeeeee;\n &:last-child {\n border-right: 0;\n }\n p {\n font-weight: 300;\n color: rgba(0, 0, 0, 0.6);\n }\n .menu-ul {\n .menu-li {\n padding-top: 16px;\n color: #000000;\n cursor: pointer;\n &:hover {\n color: $base-color-blue;\n }\n }\n }\n }\n }\n</style>\n"]}]}