zzzz
2024-03-20 d25a45190cee44b36296693d5022a0ce9ae9b698
1
{"ast":null,"code":"import \"vant/es/swipe-item/style\";\nimport _SwipeItem from \"vant/es/swipe-item\";\nimport \"vant/es/swipe/style\";\nimport _Swipe from \"vant/es/swipe\";\nimport \"vant/es/popup/style\";\nimport _Popup from \"vant/es/popup\"; //\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport \"core-js/modules/es.array.push.js\";\nimport IoeSwiper from \"@/components/ioe-swiper\";\nimport ListQuatation from \"@/components/list-quotation\";\nimport { mapGetters, mapActions } from \"vuex\";\nimport { TIME_OUT } from \"@/config\";\nimport { SET_COIN_LIST } from \"@/store/const.store\";\nimport { _getHomeList } from \"@/API/home.api\";\nimport ExHeader from \"@/components/ex-header/index.vue\";\nimport ExNav from \"@/components/ex-nav/index.vue\";\nimport Axios from \"@/API/userCenter\";\nimport { setStorage, getStorage } from \"@/utils/utis\";\nimport { _getUnreadMsg } from \"@/API/im.api\";\nimport { BASE_URL } from \"@/config\";\nexport default {\n  name: \"HomePage\",\n  components: {\n    IoeSwiper,\n    ListQuatation,\n    ExHeader,\n    ExNav,\n    [_Popup.name]: _Popup,\n    [_Swipe.name]: _Swipe,\n    [_SwipeItem.name]: _SwipeItem\n  },\n  // async created() {\n  //   // this.init();\n  //   // this.checkingMesk();\n  //   // this.connectWallet()\n  //   // await this.fetchQList()\n  // },\n  computed: {\n    ...mapGetters({\n      coinList: \"home/coinList\",\n      currency: \"home/currency\",\n      coinArr: \"home/coinArr\",\n      hotArr: \"home/hotArr\",\n      userInfo: \"user/userInfo\",\n      theme: \"home/theme\"\n    })\n  },\n  data() {\n    const arr = []; // 初始化数据\n    for (let i = 0; i < 10; i++) {\n      arr.push({\n        id: i\n      });\n    }\n    return {\n      currentSwitch: 1,\n      switchBtns: [\"ETL\", \"数字货币\", \"外汇\", \"期权\"],\n      BASE_URL,\n      account: \"\",\n      hList: arr.slice(0, 3),\n      // 热门\n      qList: arr,\n      // 行情列表\n      active: 0,\n      timeout: null,\n      loading: true,\n      announceTitle: \"\",\n      announceId: \"\",\n      announceList: [],\n      socket: null,\n      showSave: false,\n      unreadMsg_timer: null,\n      unreadMsg_num: \"\",\n      popupNewsList: [],\n      sortVal: 0\n    };\n  },\n  methods: {\n    ...mapActions(\"home\", [SET_COIN_LIST]),\n    fetchUnread() {\n      // 获取未读\n      _getUnreadMsg().then(unread_num => {\n        this.unreadMsg_num = unread_num * 1 > 0 ? unread_num * 1 : \"\";\n        //console.log('\\n *** \\n'+unread_num*1+'\\n *** \\n')\n      });\n    },\n    listSort(val) {\n      this.sortVal = val;\n    },\n    async fetchQList() {\n      // 获取行情\n      const list = await _getHomeList(this.coinArr.join(\",\")).catch(() => {\n        this.timeout = setTimeout(() => {\n          this.fetchQList();\n        }, 1000);\n      });\n      if (!(list instanceof Array)) {\n        return;\n      }\n      this.loading = false;\n      // this.qList = list.slice(0,10);\n      this.qList = list;\n      this.hList = list.filter(item => this.hotArr.includes(item.symbol));\n      //排序\n      if (this.sortVal == 1) {\n        this.qList = this.qList.sort(this.sortLetterList(\"symbol\"));\n      }\n      if (this.sortVal == 2) {\n        this.qList = this.qList.sort(this.sortLetterTwoList(\"symbol\"));\n      }\n      if (this.sortVal == 3) {\n        this.qList = this.qList.sort(this.orderListAsc(\"close\", \"ask\"));\n      }\n      if (this.sortVal == 4) {\n        this.qList = this.qList.sort(this.orderListAsc(\"close\"));\n      }\n      if (this.sortVal == 5) {\n        this.qList = this.qList.sort(this.orderListAsc(\"change_ratio\"));\n      }\n      if (this.sortVal == 6) {\n        this.qList = this.qList.sort(this.orderListAsc(\"change_ratio\", \"ask\"));\n      }\n      if (this.hList.length == 4) {\n        this.hList.pop();\n      }\n      if (this.timeout) {\n        clearTimeout(this.timeout);\n      }\n      this.timeout = setTimeout(async () => {\n        console.log(\"fetchQList\");\n        await this.fetchQList();\n      }, TIME_OUT);\n    },\n    //字母排序\n    sortLetterList(propertyName) {\n      return function sortList(object1, object2) {\n        const value1 = object1[propertyName];\n        const value2 = object2[propertyName];\n        if (value2 < value1) {\n          return 1;\n        }\n        if (value2 > value1) {\n          return -1;\n        }\n        return 0;\n      };\n    },\n    sortLetterTwoList(propertyName) {\n      return function sortList(object1, object2) {\n        const value1 = object1[propertyName];\n        const value2 = object2[propertyName];\n        if (value2 > value1) {\n          return 1;\n        }\n        if (value2 < value1) {\n          return -1;\n        }\n        return 0;\n      };\n    },\n    //数字排序\n    orderListAsc(filed, type = \"asc\") {\n      return (a, b) => {\n        if (type == \"asc\") return parseFloat(a[filed]) > parseFloat(b[filed]) ? 1 : -1;\n        return parseFloat(a[filed]) > parseFloat(b[filed]) ? -1 : 1;\n      };\n    },\n    getNews() {\n      Axios._getNewsList1({\n        language: this.$i18n.locale\n      }).then(res => {\n        this.announceList = res.data;\n      });\n    },\n    getPopupNews() {\n      Axios._getPopupNews({\n        token: this.userInfo.token,\n        language: this.$i18n.locale\n      }).then(res => {\n        if (res.data.length) {\n          if (!getStorage(\"popNotice\")) {\n            let list = res.data;\n            list.forEach(item => {\n              item.showPopUp = true;\n            });\n            this.popupNewsList = list;\n          }\n        }\n      });\n    },\n    closePopNotice(item) {\n      item.showPopUp = false;\n      setStorage(\"popNotice\", true);\n    },\n    toAnnounceDetail(announceId) {\n      if (announceId) {\n        this.$router.push({\n          name: \"AnnounceDetail\",\n          query: {\n            id: announceId\n          }\n        });\n      }\n    },\n    getIsSave() {\n      var issafariBrowser = /Safari/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent);\n      if (issafariBrowser) {\n        if (getStorage(`${this.TITLE}addtoClosed`)) {\n          this.showSave = false;\n        } else {\n          this.showSave = true;\n        }\n      } else {\n        this.showSave = false;\n      }\n      var isFull = window.navigator.standalone;\n      if (isFull) {\n        this.showSave = false;\n      }\n    },\n    closeSaveBox() {\n      setStorage(`${this.TITLE}addtoClosed`, 1);\n      this.showSave = false;\n    },\n    onClickLeft() {},\n    onClickRight() {},\n    startTimeout() {\n      this.clearTimeout();\n      this.fetchQList();\n    },\n    clearTimeout() {\n      if (this.timeout) {\n        clearTimeout(this.timeout);\n        this.timeout = null;\n      }\n    }\n  },\n  async created() {\n    this.getIsSave();\n    this.getNews();\n    this.getPopupNews();\n    await this.SET_COIN_LIST();\n    this.startTimeout();\n  },\n  async activated() {\n    this.getNews();\n    this.getPopupNews();\n    await this.SET_COIN_LIST();\n    this.startTimeout();\n    if (this.userInfo.token) {\n      this.fetchUnread();\n      this.unreadMsg_timer = setInterval(() => {\n        this.fetchUnread();\n      }, 5000);\n    } else {\n      this.unreadMsg_num = \"\";\n    }\n  },\n  deactivated() {\n    this.clearTimeout();\n    if (this.unreadMsg_timer) {\n      clearInterval(this.unreadMsg_timer);\n      this.unreadMsg_timer = null;\n    }\n  },\n  beforeDestroy() {\n    this.clearTimeout();\n    if (this.unreadMsg_timer) {\n      clearInterval(this.unreadMsg_timer);\n      this.unreadMsg_timer = null;\n    }\n  }\n};","map":{"version":3,"names":["IoeSwiper","ListQuatation","mapGetters","mapActions","TIME_OUT","SET_COIN_LIST","_getHomeList","ExHeader","ExNav","Axios","setStorage","getStorage","_getUnreadMsg","BASE_URL","name","components","_Popup","_Swipe","_SwipeItem","computed","coinList","currency","coinArr","hotArr","userInfo","theme","data","arr","i","push","id","currentSwitch","switchBtns","account","hList","slice","qList","active","timeout","loading","announceTitle","announceId","announceList","socket","showSave","unreadMsg_timer","unreadMsg_num","popupNewsList","sortVal","methods","fetchUnread","then","unread_num","listSort","val","fetchQList","list","join","catch","setTimeout","Array","filter","item","includes","symbol","sort","sortLetterList","sortLetterTwoList","orderListAsc","length","pop","clearTimeout","console","log","propertyName","sortList","object1","object2","value1","value2","filed","type","a","b","parseFloat","getNews","_getNewsList1","language","$i18n","locale","res","getPopupNews","_getPopupNews","token","forEach","showPopUp","closePopNotice","toAnnounceDetail","$router","query","getIsSave","issafariBrowser","test","navigator","userAgent","TITLE","isFull","window","standalone","closeSaveBox","onClickLeft","onClickRight","startTimeout","created","activated","setInterval","deactivated","clearInterval","beforeDestroy"],"sources":["src/page/home.vue"],"sourcesContent":["<template>\n  <div class=\"home no_touch\">\n    <!--    //头部组件-->\n    <div class=\"px-32\">\n      <ex-header :unread_num=\"`${unreadMsg_num}`\"></ex-header>\n      <ioe-swiper ><i\n   \n    </div>\n    <div\n      class=\"pt-40 contRound\"\n      style=\"\n        border-top-left-radius: 30px;\n        border-top-right-radius: 30px;\n        margin: 0 10px;\n      \"\n    >\n      <ex-nav></ex-nav>\n      <!--   <div class=\"h-150 text-white rounded-lg mt-34 flex items-center justify-center contNav\"\n        @click=\"$router.push('/wantBuy')\">\n        <img :src=\"require(`../assets/theme/${theme}/image/c2c1.png`)\" alt=\"\" class=\"w-96 h-96\" />\n        <div class=\"c2cbg w-616 h-56 lh-56 font-30 pl-50 box-border\" :class=\"theme == 'dark' ? 'dark' : 'light'\">{{\n          $t('C2C快捷交易') }}</div>\n      </div> -->\n      <list-quatation :listData=\"qList\" @listSort=\"listSort\" />\n      <div class=\"addBox\" v-show=\"showSave\" @click=\"closeSaveBox\">\n        <div class=\"add\">\n          <div class=\"font-26\">\n            <div class=\"flex flex-col\">\n              <b>{{ $t(\"安装此应用程序\") }}:</b>\n              <div class=\"mt-10\">\n                {{ $t(\"按\") }}“<img\n                  style=\"width: 22px; vertical-align: middle; margin: 0 2px\"\n                  :src=\"require(`../assets/theme/${theme}/image/press.png`)\"\n                />”{{ $t(\"和\") }}<b>“{{ $t(\"添加到主屏幕\") }}</b>\n              </div>\n            </div>\n            <div class=\"mt-10\">({{ $t(\"如已安装,请关闭此窗口\") }})</div>\n          </div>\n          <img\n            class=\"closeAdd w-40 h-40\"\n            src=\"../assets/image/icon-close.png\"\n            alt=\"\"\n          />\n          <div class=\"jiao\"></div>\n        </div>\n      </div>\n    </div>\n    <van-popup\n      v-model=\"item.showPopUp\"\n      style=\"border-radius: 10px\"\n      :close-on-click-overlay=\"false\"\n      v-for=\"item in popupNewsList\"\n      :key=\"item.id\"\n    >\n      <div class=\"w-600 p-50 box-border\">\n        <div class=\"font-700 text-center font-36 textColor\">\n          {{ item.title }}\n        </div>\n        <div class=\"flex justify-center mt-30\" v-if=\"item.imgUrl\">\n          <img\n            :src=\"`${BASE_URL}public/showimg!showImg.action?imagePath=${item.imgUrl}`\"\n            class=\"w-200 h-200\"\n            alt=\"\"\n          />\n        </div>\n        <div class=\"py-36 textColor\" v-html=\"item.content\"></div>\n        <van-button\n          color=\"#1D91FF\"\n          class=\"w-full h-80 rounded-full\"\n          type=\"info\"\n          @click=\"closePopNotice(item)\"\n        >\n          {{ $t(\"我知道了\") }}\n        </van-button>\n      </div>\n    </van-popup>\n  </div>\n</template>\n<script>\nimport { Popup, Swipe, SwipeItem } from \"vant\";\nimport IoeSwiper from \"@/components/ioe-swiper\";\nimport ListQuatation from \"@/components/list-quotation\";\nimport { mapGetters, mapActions } from \"vuex\";\nimport { TIME_OUT } from \"@/config\";\nimport { SET_COIN_LIST } from \"@/store/const.store\";\nimport { _getHomeList } from \"@/API/home.api\";\nimport ExHeader from \"@/components/ex-header/index.vue\";\nimport ExNav from \"@/components/ex-nav/index.vue\";\nimport Axios from \"@/API/userCenter\";\nimport { setStorage, getStorage } from \"@/utils/utis\";\nimport { _getUnreadMsg } from \"@/API/im.api\";\nimport { BASE_URL } from \"@/config\";\nexport default {\n  name: \"HomePage\",\n  components: {\n    IoeSwiper,\n    ListQuatation,\n    ExHeader,\n    ExNav,\n    [Popup.name]: Popup,\n    [Swipe.name]: Swipe,\n    [SwipeItem.name]: SwipeItem,\n  },\n  // async created() {\n  //   // this.init();\n  //   // this.checkingMesk();\n  //   // this.connectWallet()\n  //   // await this.fetchQList()\n  // },\n  computed: {\n    ...mapGetters({\n      coinList: \"home/coinList\",\n      currency: \"home/currency\",\n      coinArr: \"home/coinArr\",\n      hotArr: \"home/hotArr\",\n      userInfo: \"user/userInfo\",\n      theme: \"home/theme\",\n    }),\n  },\n  data() {\n    const arr = []; // 初始化数据\n    for (let i = 0; i < 10; i++) {\n      arr.push({ id: i });\n    }\n    return {\n      currentSwitch: 1,\n      switchBtns: [\"ETL\", \"数字货币\", \"外汇\", \"期权\"],\n      BASE_URL,\n      account: \"\",\n      hList: arr.slice(0, 3), // 热门\n      qList: arr, // 行情列表\n      active: 0,\n      timeout: null,\n      loading: true,\n      announceTitle: \"\",\n      announceId: \"\",\n      announceList: [],\n      socket: null,\n      showSave: false,\n      unreadMsg_timer: null,\n      unreadMsg_num: \"\",\n      popupNewsList: [],\n      sortVal: 0,\n    };\n  },\n  methods: {\n    ...mapActions(\"home\", [SET_COIN_LIST]),\n    fetchUnread() {\n      // 获取未读\n      _getUnreadMsg().then((unread_num) => {\n        this.unreadMsg_num = unread_num * 1 > 0 ? unread_num * 1 : \"\";\n        //console.log('\\n *** \\n'+unread_num*1+'\\n *** \\n')\n      });\n    },\n    listSort(val) {\n      this.sortVal = val;\n    },\n    async fetchQList() {\n      // 获取行情\n      const list = await _getHomeList(this.coinArr.join(\",\")).catch(() => {\n        this.timeout = setTimeout(() => {\n          this.fetchQList();\n        }, 1000);\n      });\n      if (!(list instanceof Array)) {\n        return;\n      }\n      this.loading = false;\n      // this.qList = list.slice(0,10);\n      this.qList = list;\n      this.hList = list.filter((item) => this.hotArr.includes(item.symbol));\n      //排序\n      if (this.sortVal == 1) {\n        this.qList = this.qList.sort(this.sortLetterList(\"symbol\"));\n      }\n      if (this.sortVal == 2) {\n        this.qList = this.qList.sort(this.sortLetterTwoList(\"symbol\"));\n      }\n      if (this.sortVal == 3) {\n        this.qList = this.qList.sort(this.orderListAsc(\"close\", \"ask\"));\n      }\n      if (this.sortVal == 4) {\n        this.qList = this.qList.sort(this.orderListAsc(\"close\"));\n      }\n      if (this.sortVal == 5) {\n        this.qList = this.qList.sort(this.orderListAsc(\"change_ratio\"));\n      }\n      if (this.sortVal == 6) {\n        this.qList = this.qList.sort(this.orderListAsc(\"change_ratio\", \"ask\"));\n      }\n\n      if (this.hList.length == 4) {\n        this.hList.pop();\n      }\n      if (this.timeout) {\n        clearTimeout(this.timeout);\n      }\n      this.timeout = setTimeout(async () => {\n        console.log(\"fetchQList\");\n        await this.fetchQList();\n      }, TIME_OUT);\n    },\n    //字母排序\n    sortLetterList(propertyName) {\n      return function sortList(object1, object2) {\n        const value1 = object1[propertyName];\n        const value2 = object2[propertyName];\n        if (value2 < value1) {\n          return 1;\n        }\n        if (value2 > value1) {\n          return -1;\n        }\n        return 0;\n      };\n    },\n    sortLetterTwoList(propertyName) {\n      return function sortList(object1, object2) {\n        const value1 = object1[propertyName];\n        const value2 = object2[propertyName];\n        if (value2 > value1) {\n          return 1;\n        }\n        if (value2 < value1) {\n          return -1;\n        }\n        return 0;\n      };\n    },\n    //数字排序\n    orderListAsc(filed, type = \"asc\") {\n      return (a, b) => {\n        if (type == \"asc\")\n          return parseFloat(a[filed]) > parseFloat(b[filed]) ? 1 : -1;\n        return parseFloat(a[filed]) > parseFloat(b[filed]) ? -1 : 1;\n      };\n    },\n    getNews() {\n      Axios._getNewsList1({\n        language: this.$i18n.locale,\n      }).then((res) => {\n        this.announceList = res.data;\n      });\n    },\n    getPopupNews() {\n      Axios._getPopupNews({\n        token: this.userInfo.token,\n        language: this.$i18n.locale,\n      }).then((res) => {\n        if (res.data.length) {\n          if (!getStorage(\"popNotice\")) {\n            let list = res.data;\n            list.forEach((item) => {\n              item.showPopUp = true;\n            });\n            this.popupNewsList = list;\n          }\n        }\n      });\n    },\n    closePopNotice(item) {\n      item.showPopUp = false;\n      setStorage(\"popNotice\", true);\n    },\n    toAnnounceDetail(announceId) {\n      if (announceId) {\n        this.$router.push({\n          name: \"AnnounceDetail\",\n          query: { id: announceId },\n        });\n      }\n    },\n    getIsSave() {\n      var issafariBrowser =\n        /Safari/.test(navigator.userAgent) &&\n        !/Chrome/.test(navigator.userAgent);\n      if (issafariBrowser) {\n        if (getStorage(`${this.TITLE}addtoClosed`)) {\n          this.showSave = false;\n        } else {\n          this.showSave = true;\n        }\n      } else {\n        this.showSave = false;\n      }\n      var isFull = window.navigator.standalone;\n      if (isFull) {\n        this.showSave = false;\n      }\n    },\n    closeSaveBox() {\n      setStorage(`${this.TITLE}addtoClosed`, 1);\n      this.showSave = false;\n    },\n    onClickLeft() {},\n    onClickRight() {},\n    startTimeout() {\n      this.clearTimeout();\n      this.fetchQList();\n    },\n    clearTimeout() {\n      if (this.timeout) {\n        clearTimeout(this.timeout);\n        this.timeout = null;\n      }\n    },\n  },\n  async created() {\n    this.getIsSave();\n    this.getNews();\n    this.getPopupNews();\n    await this.SET_COIN_LIST();\n    this.startTimeout();\n  },\n  async activated() {\n    this.getNews();\n    this.getPopupNews();\n    await this.SET_COIN_LIST();\n    this.startTimeout();\n    if (this.userInfo.token) {\n      this.fetchUnread();\n      this.unreadMsg_timer = setInterval(() => {\n        this.fetchUnread();\n      }, 5000);\n    } else {\n      this.unreadMsg_num = \"\";\n    }\n  },\n  deactivated() {\n    this.clearTimeout();\n    if (this.unreadMsg_timer) {\n      clearInterval(this.unreadMsg_timer);\n      this.unreadMsg_timer = null;\n    }\n  },\n  beforeDestroy() {\n    this.clearTimeout();\n    if (this.unreadMsg_timer) {\n      clearInterval(this.unreadMsg_timer);\n      this.unreadMsg_timer = null;\n    }\n  },\n};\n</script>\n<style lang=\"scss\" scoped>\n.home {\n  width: 100%;\n  box-sizing: border-box;\n  padding: 0 0 108px;\n\n  // @include themify() {\n  //   background: themed(\"home_bg\");\n  // }\n\n  ::v-deep .van-cell {\n    @include themify() {\n      background: themed(\"main_background\");\n    }\n  }\n\n  ::v-deep .ex-tabs .active {\n    color: #fff;\n  }\n}\n\n.box {\n  width: 100px;\n  height: 100px;\n  background: red;\n  font-size: 25px;\n}\n\n.van-notice-bar {\n  padding: 0;\n}\n\n.notice-swipe {\n  height: 82px;\n  line-height: 82px;\n}\n\n.buyBox {\n  background: #f6f6f6;\n  width: 100%;\n  height: 132px;\n  border-radius: 10px;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding-left: 43px;\n  padding-right: 40px;\n  margin-bottom: 44px;\n  box-sizing: border-box;\n\n  .left {\n    display: flex;\n    align-items: center;\n    flex: 1;\n\n    .leftBox {\n      width: 104px;\n      height: 88px;\n\n      img {\n        width: 100%;\n        height: 100%;\n      }\n    }\n  }\n\n  .leftCont {\n    margin-left: 40px;\n\n    p {\n      font-size: 30px;\n      color: #21262f;\n      font-weight: 600;\n      line-height: 36px;\n    }\n\n    span {\n      color: #868d9a;\n      font-size: 22px;\n      line-height: 30px;\n    }\n  }\n\n  .right {\n    width: 53px;\n    height: 53px;\n\n    img {\n      width: 100%;\n      height: 100%;\n    }\n  }\n}\n\n.quickly {\n  width: 100%;\n  height: 144px;\n  display: flex;\n  justify-content: space-between;\n  margin-bottom: 32px;\n\n  .quickBox {\n    width: 368px;\n    height: 100%;\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    padding-right: 40px;\n    padding-left: 16px;\n\n    .left {\n      display: flex;\n      align-items: center;\n      flex: 1;\n\n      .leftBox {\n        width: 80px;\n        height: 80px;\n\n        img {\n          width: 100%;\n          height: 100%;\n        }\n      }\n    }\n\n    .leftCont {\n      margin-left: 24px;\n\n      p {\n        font-size: 24px;\n\n        @include themify() {\n          color: themed(\"text_color\");\n        }\n\n        font-weight: 600;\n        line-height: 36px;\n      }\n    }\n\n    .right {\n      width: 48px;\n      height: 48px;\n\n      img {\n        width: 100%;\n        height: 100%;\n      }\n    }\n  }\n\n  .chongbi {\n    background: url(\"../assets/theme/light/image/chongb.png\");\n    background-size: cover;\n\n    &.dark {\n      background: url(\"../assets/theme/dark/image/chongb.png\");\n      background-size: cover;\n    }\n  }\n\n  .tibi {\n    background: url(\"../assets/theme/light/image/tib.png\");\n    background-size: cover;\n\n    &.dark {\n      background: url(\"../assets/theme/dark/image/tib.png\");\n      background-size: cover;\n    }\n  }\n}\n\n.addBox {\n  border-radius: 10px;\n  width: 540px;\n  height: 200px;\n  font-size: 15px;\n\n  @include themify() {\n    background: themed(\"text_color\");\n  }\n\n  position: fixed;\n  bottom: 70px;\n  left: 50%;\n  margin-left: -270px;\n  z-index: 1000;\n\n  .add {\n    padding: 30px;\n    box-sizing: border-box;\n    height: 100%;\n    position: relative;\n\n    @include themify() {\n      color: themed(\"main_background\");\n    }\n\n    .closeAdd {\n      position: absolute;\n      right: 10px;\n      top: 10px;\n    }\n\n    .jiao {\n      position: absolute;\n      bottom: -76px;\n      width: 0;\n      height: 0;\n      left: 240px;\n      border: 30px solid transparent;\n\n      @include themify() {\n        border-top: 50px solid themed(\"text_color\");\n      }\n    }\n  }\n}\n\n.c2cbg {\n  background: url(\"../assets/theme/dark/image/c2c2.png\") no-repeat;\n  background-size: cover;\n\n  &.light {\n    background: url(\"../assets/theme/light/image/c2c2.png\") no-repeat;\n    background-size: cover;\n  }\n}\n\n.van-notice-bar {\n  height: 60px;\n}\n\n.notice-swipe {\n  height: 60px;\n  line-height: 60px;\n}\n\n.home-header {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  height: 48px;\n  padding-top: 32px;\n\n  &-left {\n    font-weight: 600;\n    font-size: 36px;\n    line-height: 28px;\n    color: #ffffff;\n    margin-left: 20px;\n  }\n\n  &-right {\n    .img {\n      width: 36px;\n      height: auto;\n      margin-right: 20px;\n    }\n  }\n}\n\n.home-switch {\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  color: #ffffff;\n  margin-top: 32px;\n  font-family: \"PingFang HK\";\n  height: 65px;\n\n  &-list {\n    flex: 1;\n    font-weight: 300;\n    text-align: center;\n    font-size: 20px;\n    position: relative;\n  }\n\n  .active {\n    font-weight: 600;\n    font-size: 28px;\n  }\n\n  .triangle {\n    position: absolute;\n    bottom: -16px;\n    left: 50%;\n    width: 10px;\n    transform: translatex(-50%);\n  }\n}\n</style>\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}