Feat/highscore page #30
							
								
								
									
										232
									
								
								src/components/HighscorePage.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,232 @@
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 | 
			||||
<template>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  <div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    <h1 class="text-center">Vinlottis highscore 🏆🍷</h1>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    <div class="flex row">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      <div class="highscore">        
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <div class="flex column">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          <h3 class="margin-bottom-0">Finn ditt navn:</h3>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          <input v-model="highscoreFilter" placeholder="Filtrer på navn" class="margin-bottom-sm" />
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <ol v-if="highscore.length > 0">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          <li v-for="person in highscore" :key="person" @click="selectWinner(person)">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
            {{ person.name }} - {{ person.wins.length }}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          </li>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        </ol>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <div v-if="highscore.length != highscoreResponse.length" class="flex justify-center align-center">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          <i class="text-center vin-link cursor-pointer" @click="resetFilter" @keyup.space="resetFilter"
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
             role="button" aria-pressed="false" tabindex="0">reset filter</i>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      <div class="winners-vines" v-if="selectedWinner">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <h1>{{ selectedWinner.name }}</h1>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <h2 class="margin-bottom-sm">Vinnende farger:</h2>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <div class="flex row wrap">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          <div v-for="win in selectedWinner.wins"
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
               class="color-box" :class="win.color"
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
               :style="{ transform: 'rotate(' + getRotation() + 'deg)' }">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <h2 class="margin-top-md margin-bottom-0">Flasker vunnet:</h2>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <div class="flex column wrap">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          <div v-for="win in selectedWinner.wins">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
            <div class="date-won"><b>{{ humanReadableDate(win.date) }}</b> - {{ daysAgo(win.date) }} dager siden</div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
            <br/>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
            <div class="left">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
              <div class="margin-bottom-md"><b>Vunnet med farge:</b></div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
              
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
              <div class="color-box" :class="win.color"
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
                   :style="{ transform: 'rotate(' + getRotation() + 'deg)' }"></div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
            </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
            <div class="left">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
              <Wine :wine="win.wine"></Wine>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
            </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
          </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      <div v-else class="center">
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        <h1>👈 Se dine vinn, tykk på navnet ditt</h1>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  </div>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
</template>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
<script>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
import { highscoreStatistics } from "@/api";
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
import Wine from "@/ui/Wine";
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
export default {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  components: { Wine },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  data() {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    return {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      highscoreResponse: [],
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      highscore: [],
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      highscoreFilter: '',
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      selectedWinner: null
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  async mounted() {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    let response = await highscoreStatistics();
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    response.sort((a, b) => {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      return a.wins.length > b.wins.length ? -1 : 1;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    });
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    response = response.filter(
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      person => person.name != null && person.name != ""
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    );
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    this.highscoreResponse = response
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    this.highscore = this.highscoreResponse;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  watch: {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    highscoreFilter(val) {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      if (val.length) {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        this.highscore = this.highscoreResponse.filter(person => person.name.toLowerCase().includes(val))
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      } else {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        this.highscore = this.highscoreResponse
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  methods: {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    resetFilter() {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      this.highscore = this.highscoreResponse;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      this.highscoreFilter = '';
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      document.getElementsByTagName('input')[0].focus();
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    humanReadableDate(date) {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      const options = { year: 'numeric', month: 'long', day: 'numeric' };
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      return new Date(date).toLocaleDateString(undefined, options);
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    daysAgo(date) {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      const day = 24 * 60 * 60 * 1000;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      return Math.round(Math.abs((new Date() - new Date(date)) / day));
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    selectWinner(winner) {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      if (this.selectedWinner != null && this.selectedWinner["name"] == winner["name"]) {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        this.selectedWinner = null;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      } else {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        let newestFirst = winner.wins.sort((a, b) => a.date < b.date);
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        winner.wins = newestFirst;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
        this.selectedWinner = { ...winner };
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    },
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    getRotation: function() {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      let num = Math.floor(Math.random() * 12.5);
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      let neg = Math.floor(Math.random() * 2);
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      return neg == 0 ? -num : num;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
};
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
</script>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
<style lang="scss" scoped>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
@import "../styles/media-queries.scss";
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
@import "../styles/variables.scss";
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
h1 {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  text-align: center;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.highscore {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  width: max-content;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  margin: 2rem;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.winners-vines {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  margin: 2rem;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.left {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  float: left;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.center {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  background-color: $primary;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  padding: 0.5rem 1rem;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  border-radius: 8px;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  font-style: italic;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  @include desktop {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    align-self: flex-start;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    margin-top: 20vh;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.date-won {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  font-size: 1.3rem;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  margin-top: 2rem;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.color-box {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 Move this to more general place and remove other local references to this class. Move this to more general place and remove other local references to this class. 
			
			
		remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  width: 100px;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  height: 100px;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  margin: 10px;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  -webkit-mask-image: url(/../../public/assets/images/lodd.svg);
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  background-repeat: no-repeat;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  mask-image: url(/../../public/assets/images/lodd.svg);
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  -webkit-mask-repeat: no-repeat;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  mask-repeat: no-repeat;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  @include mobile {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    width: 60px;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    height: 60px;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    margin: 10px;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.green {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  background-color: $light-green;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.blue {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  background-color: $light-blue;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.yellow {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  background-color: $light-yellow;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
.red {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  background-color: $light-red;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
div {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  font-family: Arial;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
ol {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  padding-left: 1.375rem !important;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  margin-left: 0;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  margin: 0 0 1.5em;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  padding: 0;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  counter-reset: item;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  & > li {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    cursor: pointer;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    padding: 2.5px 0;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    width: max-content;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    margin: 0 0 0 -1.25rem;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    padding: 0;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    list-style-type: none;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    counter-increment: item;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    &:before {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      display: inline-block;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      width: 1em;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      padding-right: 0.5rem;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      font-weight: bold;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      text-align: right;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      content: counter(item) ".";
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    @include mobile {
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
      padding: 5px 0;
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
    }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
  }
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
}
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
</style>
 | 
			
		||||
| 
					
	
	
	
	
	
	
	
	 remove remove 
			
			
		Tyty, fixed Tyty, fixed 
			
			
		 | 
			||||
@@ -11,6 +11,7 @@ import AdminPage from "@/components/AdminPage";
 | 
			
		||||
import WinnerPage from "@/components/WinnerPage";
 | 
			
		||||
import LotteryPage from "@/components/LotteryPage";
 | 
			
		||||
import HistoryPage from "@/components/HistoryPage";
 | 
			
		||||
import HighscorePage from "@/components/HighscorePage";
 | 
			
		||||
 | 
			
		||||
import RequestWine from "@/components/RequestWine";
 | 
			
		||||
import AllRequestedWines from "@/components/AllRequestedWines";
 | 
			
		||||
@@ -56,6 +57,10 @@ const routes = [
 | 
			
		||||
    path: "/history",
 | 
			
		||||
    component: HistoryPage
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    path: "/highscore",
 | 
			
		||||
    component: HighscorePage
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    path: "/request",
 | 
			
		||||
    component: RequestWine
 | 
			
		||||
 
 | 
			
		||||
@@ -157,6 +157,44 @@ textarea {
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.cursor {
 | 
			
		||||
  &-pointer {
 | 
			
		||||
    cursor: pointer;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.text-center {
 | 
			
		||||
  text-align: center;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.vin-link {
 | 
			
		||||
  font-weight: bold;
 | 
			
		||||
  border-bottom: 1px solid #ff5fff;
 | 
			
		||||
  font-size: 1rem;
 | 
			
		||||
  margin-left: 15px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.margin-top {
 | 
			
		||||
  &-md {
 | 
			
		||||
    margin-top: 3rem;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.margin-bottom {
 | 
			
		||||
  &-md {
 | 
			
		||||
    margin-bottom: 3rem;
 | 
			
		||||
  }
 | 
			
		||||
  &-sm {
 | 
			
		||||
    margin-bottom: 1rem;
 | 
			
		||||
  }
 | 
			
		||||
  &-0 {
 | 
			
		||||
    margin-bottom: 0;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.no-margin {
 | 
			
		||||
  margin: 0 !important;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,23 @@
 | 
			
		||||
.flex {
 | 
			
		||||
  display: flex;
 | 
			
		||||
 | 
			
		||||
  &-column {
 | 
			
		||||
  & .column {
 | 
			
		||||
    flex-direction: column;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  & .row {
 | 
			
		||||
    flex-direction: row;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  & .wrap {
 | 
			
		||||
    flex-wrap: wrap;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  &.justify-center {
 | 
			
		||||
    justify-content: center;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  &.align-center {
 | 
			
		||||
    align-items: center;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,6 +1,10 @@
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="highscores" v-if="highscore.length > 0">
 | 
			
		||||
    <h3>Topp 10 vinnere</h3>
 | 
			
		||||
    <h3>
 | 
			
		||||
      <router-link to="highscore">
 | 
			
		||||
        Topp 10 vinnere <span class="vin-link">Se alle ></span>
 | 
			
		||||
      </router-link>
 | 
			
		||||
    </h3>
 | 
			
		||||
    <ol>
 | 
			
		||||
      <li v-for="person in highscore" :key="person">
 | 
			
		||||
        {{ person.name }} - {{ person.wins.length }}
 | 
			
		||||
@@ -39,6 +43,22 @@ div {
 | 
			
		||||
  flex-direction: column;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
h3 {
 | 
			
		||||
  text-align: left;
 | 
			
		||||
 | 
			
		||||
  & a {
 | 
			
		||||
    text-decoration: none;
 | 
			
		||||
    color: #333333;
 | 
			
		||||
 | 
			
		||||
    &:focus,
 | 
			
		||||
    &:active,
 | 
			
		||||
    &:visited {
 | 
			
		||||
      text-decoration: none;
 | 
			
		||||
      color: #333333;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ol {
 | 
			
		||||
  padding-left: 1.375rem !important;
 | 
			
		||||
  margin-left: 0;
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  <div v-if="wines.length > 0">
 | 
			
		||||
    <h3>
 | 
			
		||||
      <router-link to="viner"
 | 
			
		||||
        >Topp 10 viner <span class="link">Se alle ></span></router-link
 | 
			
		||||
        >Topp 10 viner <span class="vin-link">Se alle ></span></router-link
 | 
			
		||||
      >
 | 
			
		||||
    </h3>
 | 
			
		||||
    <ol>
 | 
			
		||||
@@ -185,13 +185,6 @@ export default {
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.link {
 | 
			
		||||
  font-weight: bold;
 | 
			
		||||
  border-bottom: 1px solid #ff5fff;
 | 
			
		||||
  font-size: 1rem;
 | 
			
		||||
  margin-left: 15px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.close-modal {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
 
 | 
			
		||||
remove
remove
Tyty, fixed
Tyty, fixed