5893d0eea5e9dd16e9449e02e8491a78.json 17 KB

1
  1. {"remainingRequest":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\babel-loader\\lib\\index.js!C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!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\\statistic\\product\\components\\productRanking.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\pages\\statistic\\product\\components\\productRanking.vue","mtime":1761185180198},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\babel.config.js","mtime":1761185179818},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\.babelrc","mtime":1761185179813},{"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:aW1wb3J0IF9yZWdlbmVyYXRvciBmcm9tICJDOi9Vc2Vycy9BZG1pbmlzdHJhdG9yL0Rlc2t0b3AvY3JtZWI1LjAvdGVtcGxhdGUvYWRtaW4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yLmpzIjsKaW1wb3J0IF9hc3luY1RvR2VuZXJhdG9yIGZyb20gIkM6L1VzZXJzL0FkbWluaXN0cmF0b3IvRGVza3RvcC9jcm1lYjUuMC90ZW1wbGF0ZS9hZG1pbi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmpvaW4uanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zb3J0LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyI7CmltcG9ydCB7IHN0YXRpc3RpY1Byb2R1Y3RMaXN0QXBpIH0gZnJvbSAnQC9hcGkvc3RhdGlzdGljJzsKaW1wb3J0IGdvb2RzRGV0YWlsIGZyb20gJy4uL2NvbXBvbmVudHMvZ29vZHNEZXRhaWwnOwppbXBvcnQgeyBmb3JtYXREYXRlIH0gZnJvbSAnQC91dGlscy92YWxpZGF0ZSc7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAncHJvZHVjdFJhbmtpbmcnLAogIGNvbXBvbmVudHM6IHsKICAgIGdvb2RzRGV0YWlsOiBnb29kc0RldGFpbAogIH0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIHZhbGlkYXRlRnVuOiB0aGlzLiR2YWxpZGF0ZUZ1biwKICAgICAgb3B0aW9uczogdGhpcy4kdGltZU9wdGlvbnMsCiAgICAgIG5hbWU6ICfov5EzMOWkqScsCiAgICAgIHRpbWVWYWw6IFtdLAogICAgICBkYXRhVGltZTogJycsCiAgICAgIGZvcm1WYWxpZGF0ZTogewogICAgICAgIGxpbWl0OiAxMCwKICAgICAgICBwYWdlOiAxLAogICAgICAgIHNvcnQ6ICd2aXNpdCcsCiAgICAgICAgZGF0YTogJycKICAgICAgfSwKICAgICAgbG9hZGluZzogZmFsc2UsCiAgICAgIHRhYkxpc3Q6IFtdLAogICAgICB0b3RhbDogMCwKICAgICAgZ29vZHNJZDogJycsCiAgICAgIGlzUHJvZHVjdEJveDogZmFsc2UsCiAgICAgIGxpc3Q6IFt7CiAgICAgICAgdmFsOiAndmlzaXQnLAogICAgICAgIG5hbWU6ICfmtY/op4jph48nCiAgICAgIH0sIHsKICAgICAgICB2YWw6ICd1c2VyJywKICAgICAgICBuYW1lOiAn6K6/5a6i5pWwJwogICAgICB9LCB7CiAgICAgICAgdmFsOiAnY2FydCcsCiAgICAgICAgbmFtZTogJ+WKoOi0reS7tuaVsCcKICAgICAgfSwgewogICAgICAgIHZhbDogJ29yZGVycycsCiAgICAgICAgbmFtZTogJ+S4i+WNleS7tuaVsCcKICAgICAgfSwgewogICAgICAgIHZhbDogJ3ByaWNlJywKICAgICAgICBuYW1lOiAn5pSv5LuY6YeR6aKdJwogICAgICB9LAogICAgICAvLyB7CiAgICAgIC8vICAgdmFsOiAncHJvZml0JywKICAgICAgLy8gICBuYW1lOiAn5q+b5Yip546HJywKICAgICAgLy8gfSwKICAgICAgewogICAgICAgIHZhbDogJ2NvbGxlY3QnLAogICAgICAgIG5hbWU6ICfmlLbol4/mlbAnCiAgICAgIH0sIHsKICAgICAgICB2YWw6ICdjaGFuZ2VzJywKICAgICAgICBuYW1lOiAn6K6/5a6iLeaUr+S7mOi9rOWMlueOhycKICAgICAgfV0KICAgIH07CiAgfSwKICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkgewogICAgdmFyIGVuZCA9IG5ldyBEYXRlKCk7CiAgICB2YXIgc3RhcnQgPSBuZXcgRGF0ZSgpOwogICAgc3RhcnQuc2V0VGltZShzdGFydC5zZXRUaW1lKG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSwgbmV3IERhdGUoKS5nZXRNb250aCgpLCBuZXcgRGF0ZSgpLmdldERhdGUoKSAtIDI5KSkpOwogICAgdGhpcy50aW1lVmFsID0gW3N0YXJ0LCBlbmRdOwogICAgdGhpcy5mb3JtVmFsaWRhdGUuZGF0YSA9IGZvcm1hdERhdGUoc3RhcnQsICd5eXl5L01NL2RkJykgKyAnLScgKyBmb3JtYXREYXRlKGVuZCwgJ3l5eXkvTU0vZGQnKTsKICB9LAogIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7CiAgICB0aGlzLmdldExpc3QoKTsKICB9LAogIG1ldGhvZHM6IHsKICAgIC8vIOWFt+S9k+aXpeacnwogICAgb25jaGFuZ2VUaW1lOiBmdW5jdGlvbiBvbmNoYW5nZVRpbWUoZSkgewogICAgICB0aGlzLnRpbWVWYWwgPSBlOwogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5kYXRhID0gdGhpcy50aW1lVmFsID8gdGhpcy50aW1lVmFsLmpvaW4oJy0nKSA6ICcnOwogICAgICB0aGlzLm5hbWUgPSB0aGlzLmZvcm1WYWxpZGF0ZS5kYXRhOwogICAgfSwKICAgIGNoYW5nZU1lbnU6IGZ1bmN0aW9uIGNoYW5nZU1lbnUobmFtZSkgewogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5zb3J0ID0gbmFtZTsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgLy8g5YiX6KGoCiAgICBnZXRMaXN0OiBmdW5jdGlvbiBnZXRMaXN0KCkgewogICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOwogICAgICBzdGF0aXN0aWNQcm9kdWN0TGlzdEFwaSh0aGlzLmZvcm1WYWxpZGF0ZSkudGhlbigvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBfcmVmID0gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvcigpLm0oZnVuY3Rpb24gX2NhbGxlZShyZXMpIHsKICAgICAgICAgIHZhciBkYXRhOwogICAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvcigpLncoZnVuY3Rpb24gKF9jb250ZXh0KSB7CiAgICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0Lm4pIHsKICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICBkYXRhID0gcmVzLmRhdGE7CiAgICAgICAgICAgICAgICBfdGhpcy50YWJMaXN0ID0gZGF0YTsKICAgICAgICAgICAgICAgIF90aGlzLmxvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuYSgyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgX2NhbGxlZSk7CiAgICAgICAgfSkpOwogICAgICAgIHJldHVybiBmdW5jdGlvbiAoX3gpIHsKICAgICAgICAgIHJldHVybiBfcmVmLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgfTsKICAgICAgfSgpKS5jYXRjaChmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICAgIF90aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5tc2cpOwogICAgICB9KTsKICAgIH0sCiAgICBsb29rOiBmdW5jdGlvbiBsb29rKHJvdykgewogICAgICB0aGlzLmdvb2RzSWQgPSByb3cucHJvZHVjdF9pZDsKICAgICAgdGhpcy5pc1Byb2R1Y3RCb3ggPSB0cnVlOwogICAgfQogIH0KfTs="},{"version":3,"names":["statisticProductListApi","goodsDetail","formatDate","name","components","data","validateFun","$validateFun","options","$timeOptions","timeVal","dataTime","formValidate","limit","page","sort","loading","tabList","total","goodsId","isProductBox","list","val","created","end","Date","start","setTime","getFullYear","getMonth","getDate","mounted","getList","methods","onchangeTime","e","join","changeMenu","_this","then","_ref","_asyncToGenerator","_regenerator","m","_callee","res","w","_context","n","a","_x","apply","arguments","catch","$message","error","msg","look","row","product_id"],"sources":["src/pages/statistic/product/components/productRanking.vue"],"sourcesContent":["<template>\r\n <el-card :bordered=\"false\" shadow=\"never\" class=\"ivu-mt-16\">\r\n <div class=\"acea-row row-between-wrapper mb20\">\r\n <h4 class=\"statics-header-title\">商品排行</h4>\r\n <div class=\"acea-row\">\r\n <el-select v-model=\"formValidate.sort\" style=\"width: 200px\" class=\"mr20\" @change=\"changeMenu\">\r\n <el-option v-for=\"item in list\" :value=\"item.val\" :key=\"item.val\" :label=\"item.name\"></el-option>\r\n </el-select>\r\n <el-date-picker\r\n :editable=\"false\"\r\n clearable\r\n @change=\"onchangeTime\"\r\n v-model=\"timeVal\"\r\n format=\"yyyy/MM/dd\"\r\n type=\"datetimerange\"\r\n value-format=\"yyyy/MM/dd\"\r\n range-separator=\"-\"\r\n start-placeholder=\"开始日期\"\r\n end-placeholder=\"结束日期\"\r\n class=\"mr20\"\r\n ></el-date-picker>\r\n <el-button type=\"primary\" class=\"mr20\" v-db-click @click=\"getList\">查询</el-button>\r\n </div>\r\n </div>\r\n <el-table ref=\"selection\" :data=\"tabList\" v-loading=\"loading\" empty-text=\"暂无数据\" highlight-current-row>\r\n <el-table-column label=\"ID\" min-width=\"80\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.product_id }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"商品图片\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"tabBox_img\" v-viewer>\r\n <img v-lazy=\"scope.row.image\" />\r\n </div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"商品名称\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.store_name }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"浏览量\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.visit }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"访客数\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.user }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"加购件数\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.cart }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"下单件数\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.orders }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"支付件数\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.pay }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"支付金额\" min-width=\"110\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.price }}</span>\r\n </template>\r\n </el-table-column>\r\n <!-- <el-table-column label=\"毛利率(%)\" min-width=\"130\">\r\n <template slot-scope=\"scope\">\r\n <span v-text=\"$tools.accMul(scope.row.profit, 100).toFixed(2) + '%'\"></span>\r\n </template>\r\n </el-table-column> -->\r\n <el-table-column label=\"收藏数\" min-width=\"90\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ scope.row.collect }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column label=\"访客-支付转化率(%)\" min-width=\"140\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ $tools.accMul(scope.row.changes, 100) + '%' }}</span>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <!-- 商品弹窗 -->\r\n <div v-if=\"isProductBox\">\r\n <div class=\"bg\" v-db-click @click=\"isProductBox = false\"></div>\r\n <goodsDetail :goodsId=\"goodsId\"></goodsDetail>\r\n </div>\r\n </el-card>\r\n</template>\r\n\r\n<script>\r\nimport { statisticProductListApi } from '@/api/statistic';\r\nimport goodsDetail from '../components/goodsDetail';\r\nimport { formatDate } from '@/utils/validate';\r\nexport default {\r\n name: 'productRanking',\r\n components: {\r\n goodsDetail,\r\n },\r\n data() {\r\n return {\r\n validateFun: this.$validateFun,\r\n options: this.$timeOptions,\r\n name: '近30天',\r\n timeVal: [],\r\n dataTime: '',\r\n formValidate: {\r\n limit: 10,\r\n page: 1,\r\n sort: 'visit',\r\n data: '',\r\n },\r\n loading: false,\r\n tabList: [],\r\n total: 0,\r\n goodsId: '',\r\n isProductBox: false,\r\n list: [\r\n {\r\n val: 'visit',\r\n name: '浏览量',\r\n },\r\n {\r\n val: 'user',\r\n name: '访客数',\r\n },\r\n {\r\n val: 'cart',\r\n name: '加购件数',\r\n },\r\n {\r\n val: 'orders',\r\n name: '下单件数',\r\n },\r\n {\r\n val: 'price',\r\n name: '支付金额',\r\n },\r\n // {\r\n // val: 'profit',\r\n // name: '毛利率',\r\n // },\r\n {\r\n val: 'collect',\r\n name: '收藏数',\r\n },\r\n {\r\n val: 'changes',\r\n name: '访客-支付转化率',\r\n },\r\n ],\r\n };\r\n },\r\n created() {\r\n const end = new Date();\r\n const start = new Date();\r\n start.setTime(start.setTime(new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() - 29)));\r\n this.timeVal = [start, end];\r\n this.formValidate.data = formatDate(start, 'yyyy/MM/dd') + '-' + formatDate(end, 'yyyy/MM/dd');\r\n },\r\n mounted() {\r\n this.getList();\r\n },\r\n methods: {\r\n // 具体日期\r\n onchangeTime(e) {\r\n this.timeVal = e;\r\n this.formValidate.data = this.timeVal ? this.timeVal.join('-') : '';\r\n this.name = this.formValidate.data;\r\n },\r\n changeMenu(name) {\r\n this.formValidate.sort = name;\r\n this.getList();\r\n },\r\n // 列表\r\n getList() {\r\n this.loading = true;\r\n statisticProductListApi(this.formValidate)\r\n .then(async (res) => {\r\n let data = res.data;\r\n this.tabList = data;\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 look(row) {\r\n this.goodsId = row.product_id;\r\n this.isProductBox = true;\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n.header {\r\n &-title {\r\n font-size: 16px;\r\n color: rgba(0, 0, 0, 0.85);\r\n }\r\n &-time {\r\n font-size: 12px;\r\n color: #000000;\r\n opacity: 0.45;\r\n }\r\n}\r\n</style>\r\n<style lang=\"scss\" scoped>\r\n.bg {\r\n position: fixed;\r\n left: 0;\r\n top: 0;\r\n width: 100%;\r\n height: 100%;\r\n background: rgba(0, 0, 0, 0.5);\r\n z-index: 11;\r\n}\r\n::v-deep .happy-scroll-content {\r\n width: 100%;\r\n .demo-spin-icon-load {\r\n animation: ani-demo-spin 1s linear infinite;\r\n }\r\n\r\n @-webkit-keyframes ani-demo-spin {\r\n from {\r\n transform: rotate(0deg);\r\n }\r\n 50% {\r\n transform: rotate(180deg);\r\n }\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n @-moz-keyframes ani-demo-spin {\r\n from {\r\n transform: rotate(0deg);\r\n }\r\n 50% {\r\n transform: rotate(180deg);\r\n }\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n @-ms-keyframes ani-demo-spin {\r\n from {\r\n transform: rotate(0deg);\r\n }\r\n 50% {\r\n transform: rotate(180deg);\r\n }\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n @-o-keyframes ani-demo-spin {\r\n from {\r\n transform: rotate(0deg);\r\n }\r\n 50% {\r\n transform: rotate(180deg);\r\n }\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n }\r\n\r\n @keyframes ani-demo-spin {\r\n from {\r\n transform: rotate(0deg);\r\n }\r\n 50% {\r\n transform: rotate(180deg);\r\n }\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n }\r\n .demo-spin-col {\r\n height: 100px;\r\n position: relative;\r\n border: 1px solid #eee;\r\n }\r\n}\r\n</style>\r\n"],"mappings":";;;;;AAiGA,SAAAA,uBAAA;AACA,OAAAC,WAAA;AACA,SAAAC,UAAA;AACA;EACAC,IAAA;EACAC,UAAA;IACAH,WAAA,EAAAA;EACA;EACAI,IAAA,WAAAA,KAAA;IACA;MACAC,WAAA,OAAAC,YAAA;MACAC,OAAA,OAAAC,YAAA;MACAN,IAAA;MACAO,OAAA;MACAC,QAAA;MACAC,YAAA;QACAC,KAAA;QACAC,IAAA;QACAC,IAAA;QACAV,IAAA;MACA;MACAW,OAAA;MACAC,OAAA;MACAC,KAAA;MACAC,OAAA;MACAC,YAAA;MACAC,IAAA,GACA;QACAC,GAAA;QACAnB,IAAA;MACA,GACA;QACAmB,GAAA;QACAnB,IAAA;MACA,GACA;QACAmB,GAAA;QACAnB,IAAA;MACA,GACA;QACAmB,GAAA;QACAnB,IAAA;MACA,GACA;QACAmB,GAAA;QACAnB,IAAA;MACA;MACA;MACA;MACA;MACA;MACA;QACAmB,GAAA;QACAnB,IAAA;MACA,GACA;QACAmB,GAAA;QACAnB,IAAA;MACA;IAEA;EACA;EACAoB,OAAA,WAAAA,QAAA;IACA,IAAAC,GAAA,OAAAC,IAAA;IACA,IAAAC,KAAA,OAAAD,IAAA;IACAC,KAAA,CAAAC,OAAA,CAAAD,KAAA,CAAAC,OAAA,KAAAF,IAAA,KAAAA,IAAA,GAAAG,WAAA,QAAAH,IAAA,GAAAI,QAAA,QAAAJ,IAAA,GAAAK,OAAA;IACA,KAAApB,OAAA,IAAAgB,KAAA,EAAAF,GAAA;IACA,KAAAZ,YAAA,CAAAP,IAAA,GAAAH,UAAA,CAAAwB,KAAA,wBAAAxB,UAAA,CAAAsB,GAAA;EACA;EACAO,OAAA,WAAAA,QAAA;IACA,KAAAC,OAAA;EACA;EACAC,OAAA;IACA;IACAC,YAAA,WAAAA,aAAAC,CAAA;MACA,KAAAzB,OAAA,GAAAyB,CAAA;MACA,KAAAvB,YAAA,CAAAP,IAAA,QAAAK,OAAA,QAAAA,OAAA,CAAA0B,IAAA;MACA,KAAAjC,IAAA,QAAAS,YAAA,CAAAP,IAAA;IACA;IACAgC,UAAA,WAAAA,WAAAlC,IAAA;MACA,KAAAS,YAAA,CAAAG,IAAA,GAAAZ,IAAA;MACA,KAAA6B,OAAA;IACA;IACA;IACAA,OAAA,WAAAA,QAAA;MAAA,IAAAM,KAAA;MACA,KAAAtB,OAAA;MACAhB,uBAAA,MAAAY,YAAA,EACA2B,IAAA;QAAA,IAAAC,IAAA,GAAAC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,UAAAC,QAAAC,GAAA;UAAA,IAAAxC,IAAA;UAAA,OAAAqC,YAAA,GAAAI,CAAA,WAAAC,QAAA;YAAA,kBAAAA,QAAA,CAAAC,CAAA;cAAA;gBACA3C,IAAA,GAAAwC,GAAA,CAAAxC,IAAA;gBACAiC,KAAA,CAAArB,OAAA,GAAAZ,IAAA;gBACAiC,KAAA,CAAAtB,OAAA;cAAA;gBAAA,OAAA+B,QAAA,CAAAE,CAAA;YAAA;UAAA,GAAAL,OAAA;QAAA,CACA;QAAA,iBAAAM,EAAA;UAAA,OAAAV,IAAA,CAAAW,KAAA,OAAAC,SAAA;QAAA;MAAA,KACAC,KAAA,WAAAR,GAAA;QACAP,KAAA,CAAAtB,OAAA;QACAsB,KAAA,CAAAgB,QAAA,CAAAC,KAAA,CAAAV,GAAA,CAAAW,GAAA;MACA;IACA;IACAC,IAAA,WAAAA,KAAAC,GAAA;MACA,KAAAvC,OAAA,GAAAuC,GAAA,CAAAC,UAAA;MACA,KAAAvC,YAAA;IACA;EACA;AACA","ignoreList":[]}]}