|  | @@ -12,84 +12,81 @@
 | 
	
		
			
				|  |  |          </div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          <!-- 底部 -->
 | 
	
		
			
				|  |  | -        <div class="footer">
 | 
	
		
			
				|  |  | +        <div class="footer" v-show="state.data.mysteryBoxImagePath">
 | 
	
		
			
				|  |  |              <!-- 首页 -->
 | 
	
		
			
				|  |  |              <div class="mark">
 | 
	
		
			
				|  |  |                  <div class="sold">SOLD: {{ state.data.itemSoldCount || 0 }}/{{ state.data.itemTotalCount || 0 }} </div>
 | 
	
		
			
				|  |  |                  <div class="limit">Buy Limit: {{ state.data.userBuyCount || 0 }}/{{ state.data.perUserBuyLimit || 0 }}
 | 
	
		
			
				|  |  |                  </div>
 | 
	
		
			
				|  |  |              </div>
 | 
	
		
			
				|  |  | -            <!-- <div class="buy1">
 | 
	
		
			
				|  |  | -                <btn-loading :color="'while'"></btn-loading>
 | 
	
		
			
				|  |  | -            </div> -->
 | 
	
		
			
				|  |  | -            <template v-for="item in state.data.salePlans.splice(0, 2)">
 | 
	
		
			
				|  |  | -                <div class="buy5"
 | 
	
		
			
				|  |  | -                    v-show="item.itemCount == 5 && (state.data.perUserBuyLimit - state.data.userBuyCount) >= 5"
 | 
	
		
			
				|  |  | -                    @click="clickJump(item)">
 | 
	
		
			
				|  |  | -                    <div class="left">Buy {{ item.itemCount }}</div>
 | 
	
		
			
				|  |  | -                    <div class="right" v-if="(item.price.length + item.currencyCode) > 10">
 | 
	
		
			
				|  |  | -                        <div class="usdt">{{ item.price }} {{ item.currencyCode }}</div>
 | 
	
		
			
				|  |  | -                        <div class="off">{{ item.discount }} OFF</div>
 | 
	
		
			
				|  |  | +            <div class="btn-area">
 | 
	
		
			
				|  |  | +                <template v-for="item in state.data.salePlans.splice(0, 2).reverse()">
 | 
	
		
			
				|  |  | +                    <div class="buy1" @click="clickJump(item)"
 | 
	
		
			
				|  |  | +                        v-if="item.itemCount == 1 && (state.data.perUserBuyLimit - state.data.userBuyCount) >= 1">
 | 
	
		
			
				|  |  | +                        <template v-if="(item.price.length + item.currencyCode.length) > 30">
 | 
	
		
			
				|  |  | +                            <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | +                            <div class="right">
 | 
	
		
			
				|  |  | +                                <p>{{ item.price }}</p>
 | 
	
		
			
				|  |  | +                                <p>{{ item.currencyCode }}</p>
 | 
	
		
			
				|  |  | +                            </div>
 | 
	
		
			
				|  |  | +                        </template>
 | 
	
		
			
				|  |  | +                        <template v-else>
 | 
	
		
			
				|  |  | +                            <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | +                            <div class="right">
 | 
	
		
			
				|  |  | +                                {{ item.price }}
 | 
	
		
			
				|  |  | +                                {{ item.currencyCode }}
 | 
	
		
			
				|  |  | +                            </div>
 | 
	
		
			
				|  |  | +                        </template>
 | 
	
		
			
				|  |  |                      </div>
 | 
	
		
			
				|  |  | -                    <div class="right" v-else>
 | 
	
		
			
				|  |  | -                        <div class="usdt">
 | 
	
		
			
				|  |  | -                            <p>{{ item.price }}</p>
 | 
	
		
			
				|  |  | -                            <p>{{ item.currencyCode }}</p>
 | 
	
		
			
				|  |  | -                        </div>
 | 
	
		
			
				|  |  | -                        <div class="off">
 | 
	
		
			
				|  |  | -                            <p>{{ item.discount }} OFF</p>
 | 
	
		
			
				|  |  | -                        </div>
 | 
	
		
			
				|  |  | +                    <div class="buy1 grey"
 | 
	
		
			
				|  |  | +                        v-if="item.itemCount == 1 && (state.data.perUserBuyLimit - state.data.userBuyCount) <= 0">
 | 
	
		
			
				|  |  | +                        <template v-if="(item.price.length + item.currencyCode.length) > 30">
 | 
	
		
			
				|  |  | +                            <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | +                            <div class="right">
 | 
	
		
			
				|  |  | +                                <p>{{ item.price }}</p>
 | 
	
		
			
				|  |  | +                                <p>{{ item.currencyCode }}</p>
 | 
	
		
			
				|  |  | +                            </div>
 | 
	
		
			
				|  |  | +                        </template>
 | 
	
		
			
				|  |  | +                        <template v-else>
 | 
	
		
			
				|  |  | +                            <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | +                            <div class="right">
 | 
	
		
			
				|  |  | +                                {{ item.price }}
 | 
	
		
			
				|  |  | +                                {{ item.currencyCode }}
 | 
	
		
			
				|  |  | +                            </div>
 | 
	
		
			
				|  |  | +                        </template>
 | 
	
		
			
				|  |  |                      </div>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                <!-- <btn-loading></btn-loading> -->
 | 
	
		
			
				|  |  | -                <div class="buy1" @click="clickJump(item)"
 | 
	
		
			
				|  |  | -                    v-show="item.itemCount == 1 && (state.data.perUserBuyLimit - state.data.userBuyCount) >= 1">
 | 
	
		
			
				|  |  | -                    <template v-if="(item.price.length + item.currencyCode) > 30">
 | 
	
		
			
				|  |  | -                        <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | -                        <div class="right">
 | 
	
		
			
				|  |  | -                            <p>{{ item.price }}</p>
 | 
	
		
			
				|  |  | -                            <p>{{ item.currencyCode }}</p>
 | 
	
		
			
				|  |  | +                    
 | 
	
		
			
				|  |  | +                    <div class="buy5" 
 | 
	
		
			
				|  |  | +                        v-if="item.itemCount == 5 && (state.data.perUserBuyLimit - state.data.userBuyCount) >= 5"
 | 
	
		
			
				|  |  | +                        @click="clickJump(item)">
 | 
	
		
			
				|  |  | +                        <div class="left">Buy {{ item.itemCount }}</div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        <div class="right" v-if="(item.price.length + item.currencyCode.length) > 30">
 | 
	
		
			
				|  |  | +                            <div class="usdt">
 | 
	
		
			
				|  |  | +                                <p>{{ item.price }}</p>
 | 
	
		
			
				|  |  | +                                <p>{{ item.currencyCode }}</p>
 | 
	
		
			
				|  |  | +                            </div>
 | 
	
		
			
				|  |  | +                            <div class="off">
 | 
	
		
			
				|  |  | +                                <p>{{ item.discount }} OFF</p>
 | 
	
		
			
				|  |  | +                            </div>
 | 
	
		
			
				|  |  |                          </div>
 | 
	
		
			
				|  |  | -                    </template>
 | 
	
		
			
				|  |  | -                    <template v-else>
 | 
	
		
			
				|  |  | -                        <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | -                        <div class="right">
 | 
	
		
			
				|  |  | -                            {{ item.price }}
 | 
	
		
			
				|  |  | -                            {{ item.currencyCode }}
 | 
	
		
			
				|  |  | +                        <div class="right" v-else>
 | 
	
		
			
				|  |  | +                            <div class="usdt">{{ item.price }} {{ item.currencyCode }}</div>
 | 
	
		
			
				|  |  | +                            <div class="off">{{ item.discount }} OFF</div>
 | 
	
		
			
				|  |  |                          </div>
 | 
	
		
			
				|  |  | -                    </template>
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  | -                <div class="buy1 grey"
 | 
	
		
			
				|  |  | -                    v-show="item.itemCount == 1 && (state.data.perUserBuyLimit - state.data.userBuyCount) <= 0">
 | 
	
		
			
				|  |  | -                    <template v-if="(item.price.length + item.currencyCode) > 30">
 | 
	
		
			
				|  |  | -                        <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | -                        <div class="right">
 | 
	
		
			
				|  |  | -                            <p>{{ item.price }}</p>
 | 
	
		
			
				|  |  | -                            <p>{{ item.currencyCode }}</p>
 | 
	
		
			
				|  |  | -                        </div>
 | 
	
		
			
				|  |  | -                    </template>
 | 
	
		
			
				|  |  | -                    <template v-else>
 | 
	
		
			
				|  |  | -                        <div class="left">Buy 1</div>
 | 
	
		
			
				|  |  | -                        <div class="right">
 | 
	
		
			
				|  |  | -                            {{ item.price }}
 | 
	
		
			
				|  |  | -                            {{ item.currencyCode }}
 | 
	
		
			
				|  |  | -                        </div>
 | 
	
		
			
				|  |  | -                    </template>
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  | -            </template>
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                </template>
 | 
	
		
			
				|  |  | +            </div>
 | 
	
		
			
				|  |  |          </div>
 | 
	
		
			
				|  |  |      </div>
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  <script setup>
 | 
	
		
			
				|  |  |  import router from "@/router/buy-nft.js";
 | 
	
		
			
				|  |  | -import { onMounted, reactive, inject } from "vue";
 | 
	
		
			
				|  |  | +import { onMounted, reactive, inject,  } from "vue";
 | 
	
		
			
				|  |  |  import { getNftMysteryBoxSaleInfo } from "@/http/nft";
 | 
	
		
			
				|  |  |  import BtnLoading from '../components/btn-loading.vue'
 | 
	
		
			
				|  |  |  import { getQueryString } from "@/uilts/help";
 | 
	
		
			
				|  |  |  let pay_info = inject('pay_info');
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  let state = reactive({
 | 
	
		
			
				|  |  |      data: {
 | 
	
		
			
				|  |  |          salePlans: [
 | 
	
	
		
			
				|  | @@ -189,8 +186,6 @@ onMounted(() => {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      .footer {
 | 
	
		
			
				|  |  |          border-top: 1px solid #D9D9D9;
 | 
	
		
			
				|  |  | -        min-height: 80px;
 | 
	
		
			
				|  |  | -        padding: 15px 0;
 | 
	
		
			
				|  |  |          width: 100%;
 | 
	
		
			
				|  |  |          display: flex;
 | 
	
		
			
				|  |  |          align-items: center;
 | 
	
	
		
			
				|  | @@ -213,87 +208,93 @@ onMounted(() => {
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        .buy5 {
 | 
	
		
			
				|  |  | -            border: 1px solid #1D9BF0;
 | 
	
		
			
				|  |  | -            background: rgba(29, 155, 240, 0.01);
 | 
	
		
			
				|  |  | -            border-radius: 100px;
 | 
	
		
			
				|  |  | -            color: #1D9BF0;
 | 
	
		
			
				|  |  | -            min-width: 217px;
 | 
	
		
			
				|  |  | -            height: 50px;
 | 
	
		
			
				|  |  | +        .btn-area {
 | 
	
		
			
				|  |  | +            height: 100%;
 | 
	
		
			
				|  |  |              display: flex;
 | 
	
		
			
				|  |  | -            justify-content: space-between;
 | 
	
		
			
				|  |  | -            align-items: center;
 | 
	
		
			
				|  |  | -            padding: 0 15px 0 20px;
 | 
	
		
			
				|  |  | -            font-weight: 700;
 | 
	
		
			
				|  |  | -            font-size: 14px;
 | 
	
		
			
				|  |  | -            cursor: pointer;
 | 
	
		
			
				|  |  | -            margin-right: 12px;
 | 
	
		
			
				|  |  | +            padding: 15px 0;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            .left {
 | 
	
		
			
				|  |  | -                margin-right: 20px;
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | +            .buy5 {
 | 
	
		
			
				|  |  | +                border: 1px solid #1D9BF0;
 | 
	
		
			
				|  |  | +                background: rgba(29, 155, 240, 0.01);
 | 
	
		
			
				|  |  | +                border-radius: 100px;
 | 
	
		
			
				|  |  | +                color: #1D9BF0;
 | 
	
		
			
				|  |  | +                min-width: 217px;
 | 
	
		
			
				|  |  | +                min-height: 50px;
 | 
	
		
			
				|  |  | +                display: flex;
 | 
	
		
			
				|  |  | +                justify-content: space-between;
 | 
	
		
			
				|  |  | +                align-items: center;
 | 
	
		
			
				|  |  | +                padding: 10px 15px 10px 20px;
 | 
	
		
			
				|  |  | +                font-weight: 700;
 | 
	
		
			
				|  |  | +                font-size: 14px;
 | 
	
		
			
				|  |  | +                cursor: pointer;
 | 
	
		
			
				|  |  | +                margin-right: 12px;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                .left {
 | 
	
		
			
				|  |  | +                    margin-right: 20px;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            .right {
 | 
	
		
			
				|  |  | -                text-align: right;
 | 
	
		
			
				|  |  | +                .right {
 | 
	
		
			
				|  |  | +                    text-align: right;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                p {
 | 
	
		
			
				|  |  | -                    margin: 0;
 | 
	
		
			
				|  |  | -                    padding: 0;
 | 
	
		
			
				|  |  | -                    line-height: 17px;
 | 
	
		
			
				|  |  | +                    p {
 | 
	
		
			
				|  |  | +                        margin: 0;
 | 
	
		
			
				|  |  | +                        padding: 0;
 | 
	
		
			
				|  |  | +                        line-height: 17px;
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            .off {
 | 
	
		
			
				|  |  | -                color: #AF934E;
 | 
	
		
			
				|  |  | -                font-weight: 700;
 | 
	
		
			
				|  |  | -                font-size: 14px;
 | 
	
		
			
				|  |  | +                .off {
 | 
	
		
			
				|  |  | +                    color: #AF934E;
 | 
	
		
			
				|  |  | +                    font-weight: 700;
 | 
	
		
			
				|  |  | +                    font-size: 14px;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    letter-spacing: 0.3px;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                letter-spacing: 0.3px;
 | 
	
		
			
				|  |  | +                .usdt {
 | 
	
		
			
				|  |  | +                    color: #1D9BF0;
 | 
	
		
			
				|  |  | +                    font-size: 14px;
 | 
	
		
			
				|  |  | +                    font-weight: 700;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            .usdt {
 | 
	
		
			
				|  |  | -                color: #1D9BF0;
 | 
	
		
			
				|  |  | +            .buy1 {
 | 
	
		
			
				|  |  | +                cursor: pointer;
 | 
	
		
			
				|  |  | +                background: #1D9BF0;
 | 
	
		
			
				|  |  | +                color: #fff;
 | 
	
		
			
				|  |  | +                border-radius: 100px;
 | 
	
		
			
				|  |  | +                min-width: 217px;
 | 
	
		
			
				|  |  | +                min-height: 50px;
 | 
	
		
			
				|  |  | +                display: flex;
 | 
	
		
			
				|  |  | +                align-items: center;
 | 
	
		
			
				|  |  |                  font-size: 14px;
 | 
	
		
			
				|  |  |                  font-weight: 700;
 | 
	
		
			
				|  |  | +                justify-content: space-between;
 | 
	
		
			
				|  |  | +                padding: 0 15px 0 20px;
 | 
	
		
			
				|  |  | +                margin-right: 25px;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        .buy1 {
 | 
	
		
			
				|  |  | -            cursor: pointer;
 | 
	
		
			
				|  |  | -            background: #1D9BF0;
 | 
	
		
			
				|  |  | -            color: #fff;
 | 
	
		
			
				|  |  | -            border-radius: 100px;
 | 
	
		
			
				|  |  | -            min-width: 217px;
 | 
	
		
			
				|  |  | -            height: 50px;
 | 
	
		
			
				|  |  | -            display: flex;
 | 
	
		
			
				|  |  | -            align-items: center;
 | 
	
		
			
				|  |  | -            font-size: 14px;
 | 
	
		
			
				|  |  | -            font-weight: 700;
 | 
	
		
			
				|  |  | -            justify-content: space-between;
 | 
	
		
			
				|  |  | -            padding: 0 15px 0 20px;
 | 
	
		
			
				|  |  | -            margin-right: 25px;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            .left {
 | 
	
		
			
				|  |  | -                margin-right: 20px;
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | +                .left {
 | 
	
		
			
				|  |  | +                    margin-right: 20px;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            .right {
 | 
	
		
			
				|  |  | -                text-align: right;
 | 
	
		
			
				|  |  | +                .right {
 | 
	
		
			
				|  |  | +                    text-align: right;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                p {
 | 
	
		
			
				|  |  | -                    margin: 0;
 | 
	
		
			
				|  |  | -                    padding: 0;
 | 
	
		
			
				|  |  | -                    line-height: 17px;
 | 
	
		
			
				|  |  | +                    p {
 | 
	
		
			
				|  |  | +                        margin: 0;
 | 
	
		
			
				|  |  | +                        padding: 0;
 | 
	
		
			
				|  |  | +                        line-height: 17px;
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        .grey {
 | 
	
		
			
				|  |  | -            background: #CDCDCD;
 | 
	
		
			
				|  |  | -            cursor: auto;
 | 
	
		
			
				|  |  | +            .grey {
 | 
	
		
			
				|  |  | +                background: #CDCDCD;
 | 
	
		
			
				|  |  | +                    cursor: not-allowed;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  }
 |