浏览代码

files linted, multiword-component rule turned off

Nikita Krupin 3 年之前
父节点
当前提交
c6b51561ca

+ 23 - 22
Website/.eslintrc.js

@@ -1,23 +1,24 @@
 module.exports = {
 module.exports = {
-    root: true,
-    env: {
-      node: true,
-      browser: true,
-    },
-    parserOptions: {
-      parser: 'babel-eslint',
-    },
-    extends: [
-      'prettier',
-      'eslint:recommended',
-      'plugin:vue/recommended',
-      'plugin:prettier/recommended',
-    ],
-    plugins: ['vue'],
-    rules: {
-        // semi: [2, 'never'],
-        // 'prettier/prettier': ['error', { semi: false }],
-        'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
-        'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
-    },
-}
+  root: true,
+  env: {
+    node: true,
+    browser: true,
+  },
+  parserOptions: {
+    parser: "babel-eslint",
+  },
+  extends: [
+    "prettier",
+    "eslint:recommended",
+    "plugin:vue/recommended",
+    "plugin:prettier/recommended",
+  ],
+  plugins: ["vue"],
+  rules: {
+    "vue/multi-word-component-names": 0,
+    "no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
+    "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off",
+    // 'prettier/prettier': ['error', { semi: false }],
+    // semi: [2, 'never'],
+  },
+};

+ 3 - 4
Website/README.md

@@ -29,10 +29,9 @@ For detailed explanation on how things work, check out the [documentation](https
 
 
 >`Ctrl(Cmd)` + `Shift` + `P` > Open Settings (JSON)
 >`Ctrl(Cmd)` + `Shift` + `P` > Open Settings (JSON)
 ```
 ```
-"editor.formatOnSave": false,
-"eslint.autoFixOnSave": true,
-"eslint.options: {
-    "extensions": [ ".js", ".vue" ]
+"editor.formatOnSave": true,
+"editor.codeActionsOnSave": {
+    "source.fixAll.eslint": true
 }
 }
 "vetur.validation.template": false,
 "vetur.validation.template": false,
 ```
 ```

+ 51 - 43
Website/layouts/default.vue

@@ -1,6 +1,5 @@
 <template>
 <template>
   <v-app dark>
   <v-app dark>
-
     <!-- height = 4rem, margin-y = 1rem -->
     <!-- height = 4rem, margin-y = 1rem -->
     <v-app-bar app flat class="topBar fly-in-from-top my-4 mx-auto">
     <v-app-bar app flat class="topBar fly-in-from-top my-4 mx-auto">
       <v-tabs centered center-active color="primary" router show-arrows>
       <v-tabs centered center-active color="primary" router show-arrows>
@@ -9,30 +8,65 @@
         </v-tab>
         </v-tab>
       </v-tabs>
       </v-tabs>
     </v-app-bar>
     </v-app-bar>
-    
+
     <!-- abstract background -->
     <!-- abstract background -->
-    <v-img src="/ui/abstract.svg" style="position: absolute; left: 0; right: 0; width: 100%; height: 100%;" />
+    <v-img
+      src="/ui/abstract.svg"
+      style="position: absolute; left: 0; right: 0; width: 100%; height: 100%"
+    />
 
 
-    <v-main style="padding-top: 4rem !important;">
+    <v-main style="padding-top: 4rem !important">
       <!-- min-height helps keep content centered, use .debug to to see it -->
       <!-- min-height helps keep content centered, use .debug to to see it -->
       <center
       <center
         class="py-8 mx-auto d-flex flex-column justify-center items-center"
         class="py-8 mx-auto d-flex flex-column justify-center items-center"
-        style="width: 90vw; min-height: calc(100vh - 8rem);">
-          <nuxt />
+        style="width: 90vw; min-height: calc(100vh - 8rem)"
+      >
+        <nuxt />
       </center>
       </center>
     </v-main>
     </v-main>
   </v-app>
   </v-app>
 </template>
 </template>
 
 
+<script>
+export default {
+  data: () => ({
+    links: [
+      {
+        name: "Home",
+        path: "/",
+      },
+      {
+        name: "Install",
+        path: "/install",
+      },
+      {
+        name: "FAQ",
+        path: "/faq",
+      },
+      {
+        name: "Donate",
+        path: "/donate",
+      },
+      {
+        name: "Links",
+        path: "/links",
+      },
+    ],
+  }),
+};
+</script>
+
 <style>
 <style>
-html, body {
+html,
+body {
   height: 100%;
   height: 100%;
   background: #111; /* for MacOS/iOS overscroll */
   background: #111; /* for MacOS/iOS overscroll */
   height: -webkit-fill-available;
   height: -webkit-fill-available;
   overflow: auto;
   overflow: auto;
 }
 }
 
 
-.debug { /* usage: add class="debug" to the element */
+.debug {
+  /* usage: add class="debug" to the element */
   outline: 2px solid red;
   outline: 2px solid red;
 }
 }
 
 
@@ -45,20 +79,23 @@ html, body {
   width: fit-content !important;
   width: fit-content !important;
   background-color: #222 !important;
   background-color: #222 !important;
   border-radius: 1rem !important;
   border-radius: 1rem !important;
-  border-radius: .75rem;
+  border-radius: 0.75rem;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .title-text {
 .title-text {
   font-size: 3rem;
   font-size: 3rem;
 }
 }
-@media (max-width: 768px) { /* mobile */
+@media (max-width: 768px) {
+  /* mobile */
   .title-text {
   .title-text {
     font-size: 2rem;
     font-size: 2rem;
   }
   }
-  .topBar { 
-    width: calc(100vw - 2rem) !important; /* (2rem = mx-4) 1rem on left, 1rem on right */
+  .topBar {
+    width: calc(
+      100vw - 2rem
+    ) !important; /* (2rem = mx-4) 1rem on left, 1rem on right */
     padding: 0;
     padding: 0;
-  } 
+  }
 }
 }
 
 
 /* animations and all that */
 /* animations and all that */
@@ -102,7 +139,7 @@ html, body {
 .fly-in-from-top {
 .fly-in-from-top {
   opacity: 0;
   opacity: 0;
   transform: scale(0.8) translateY(-12rem);
   transform: scale(0.8) translateY(-12rem);
-  animation: fly-in-from-top 0.5s .3s ease forwards;
+  animation: fly-in-from-top 0.5s 0.3s ease forwards;
 }
 }
 
 
 @keyframes fly-in-from-top {
 @keyframes fly-in-from-top {
@@ -161,32 +198,3 @@ html, body {
   }
   }
 }
 }
 </style>
 </style>
-
-<script>
-  export default {
-    data: () => ({
-      links: [
-        {
-          name: 'Home',
-          path: '/'
-        },
-        {
-          name: 'Install',
-          path: '/install'
-        },
-        {
-          name: 'FAQ',
-          path: '/faq'
-        },
-        {
-          name: 'Donate',
-          path: '/donate'
-        },
-        {
-          name: 'Links',
-          path: '/links'
-        },
-      ],
-    }),
-  }
-</script>

+ 14 - 16
Website/layouts/error.vue

@@ -6,35 +6,33 @@
     <h1 v-else>
     <h1 v-else>
       {{ otherError }}
       {{ otherError }}
     </h1>
     </h1>
-    <NuxtLink to="/">
-      Home page
-    </NuxtLink>
+    <NuxtLink to="/"> Home page </NuxtLink>
   </v-app>
   </v-app>
 </template>
 </template>
 
 
 <script>
 <script>
 export default {
 export default {
-  layout: 'empty',
+  layout: "empty",
   props: {
   props: {
     error: {
     error: {
       type: Object,
       type: Object,
-      default: null
-    }
+      default: null,
+    },
   },
   },
-  data () {
+  data() {
     return {
     return {
-      pageNotFound: '404 Not Found',
-      otherError: 'An error occurred'
-    }
+      pageNotFound: "404 Not Found",
+      otherError: "An error occurred",
+    };
   },
   },
-  head () {
+  head() {
     const title =
     const title =
-      this.error.statusCode === 404 ? this.pageNotFound : this.otherError
+      this.error.statusCode === 404 ? this.pageNotFound : this.otherError;
     return {
     return {
-      title
-    }
-  }
-}
+      title,
+    };
+  },
+};
 </script>
 </script>
 
 
 <style scoped>
 <style scoped>

+ 32 - 31
Website/nuxt.config.js

@@ -1,39 +1,42 @@
-import colors from 'vuetify/es5/util/colors'
+import colors from "vuetify/es5/util/colors";
 
 
 export default {
 export default {
   // Global page headers: https://go.nuxtjs.dev/config-head
   // Global page headers: https://go.nuxtjs.dev/config-head
   head: {
   head: {
-    titleTemplate: 'Return YouTube Dislike',
-    title: 'Return YouTube Dislike',
+    titleTemplate: "Return YouTube Dislike",
+    title: "Return YouTube Dislike",
     htmlAttrs: {
     htmlAttrs: {
-      lang: 'en'
+      lang: "en",
     },
     },
     meta: [
     meta: [
-      { charset: 'utf-8' },
-      { name: 'viewport', content: 'width=device-width, initial-scale=1' },
+      { charset: "utf-8" },
+      { name: "viewport", content: "width=device-width, initial-scale=1" },
 
 
-      { hid: 'description', name: 'description', content: 'An extension that returns dislike statistics to YouTube. For now, it only works if a video had public display of dislikes enabled before YouTube removed dislike stats. ' },
-      { hid: 'og:image', name: 'og:image', content: '/logo.png' },
-      { hid: 'theme-color', name: 'theme-color', content: '#ff0000' }
+      {
+        hid: "description",
+        name: "description",
+        content:
+          "An extension that returns dislike statistics to YouTube. For now, it only works if a video had public display of dislikes enabled before YouTube removed dislike stats. ",
+      },
+      { hid: "og:image", name: "og:image", content: "/logo.png" },
+      { hid: "theme-color", name: "theme-color", content: "#ff0000" },
     ],
     ],
     link: [
     link: [
-      { rel: 'icon', type: 'image/svg+xml', href: '/logo.svg' },
-      { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
-    ]
+      { rel: "icon", type: "image/svg+xml", href: "/logo.svg" },
+      { rel: "icon", type: "image/x-icon", href: "/favicon.ico" },
+    ],
   },
   },
 
 
-  target: 'static',
+  target: "static",
   css: [],
   css: [],
   plugins: [],
   plugins: [],
   components: true,
   components: true,
-  buildModules: [
-    '@nuxtjs/vuetify',
-  ],
+  buildModules: ["@nuxtjs/vuetify"],
   modules: [],
   modules: [],
 
 
   // Vuetify module configuration: https://go.nuxtjs.dev/config-vuetify
   // Vuetify module configuration: https://go.nuxtjs.dev/config-vuetify
   vuetify: {
   vuetify: {
-    customVariables: ['~/assets/variables.scss'],
+    customVariables: ["~/assets/variables.scss"],
     theme: {
     theme: {
       dark: true,
       dark: true,
       themes: {
       themes: {
@@ -44,25 +47,23 @@ export default {
           info: colors.teal.lighten1,
           info: colors.teal.lighten1,
           warning: colors.amber.base,
           warning: colors.amber.base,
           error: colors.deepOrange.accent4,
           error: colors.deepOrange.accent4,
-          success: colors.green.accent3
-        }
-      }
-    }
+          success: colors.green.accent3,
+        },
+      },
+    },
   },
   },
 
 
-
   build: {
   build: {
-    extend (config, ctx) {
+    extend(config, ctx) {
       // Run ESLint on save (dev-only)
       // Run ESLint on save (dev-only)
       if (ctx.isDev && ctx.isClient) {
       if (ctx.isDev && ctx.isClient) {
         config.module.rules.push({
         config.module.rules.push({
-          enforce: 'pre',
+          enforce: "pre",
           test: /\.(js|vue)$/,
           test: /\.(js|vue)$/,
-          loader: 'eslint-loader',
-          exclude: /(node_modules)/
-        })
+          loader: "eslint-loader",
+          exclude: /(node_modules)/,
+        });
       }
       }
-    }
-  }
-
-}
+    },
+  },
+};

+ 23 - 21
Website/pages/donate.vue

@@ -1,37 +1,39 @@
 <template>
 <template>
   <div>
   <div>
-
-    <h1 class="title-text" >Donate</h1>
-    <p style="color: #999; margin-top: .5rem; margin-bottom: 1.5rem;">You can support our efforts to keep the internet free with a donation!</p>
+    <h1 class="title-text">Donate</h1>
+    <p style="color: #999; margin-top: 0.5rem; margin-bottom: 1.5rem">
+      You can support our efforts to keep the internet free with a donation!
+    </p>
     <v-btn class="mainAltButton mb-2" :href="patreonLink" target="_blank">
     <v-btn class="mainAltButton mb-2" :href="patreonLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-patreon</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-patreon</v-icon>
       Patreon
       Patreon
     </v-btn>
     </v-btn>
     <v-btn class="mainAltButton mb-2" :to="yoomoneyLink">
     <v-btn class="mainAltButton mb-2" :to="yoomoneyLink">
-      <v-icon style="margin-right: 0.5em;">mdi-cash-multiple</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-cash-multiple</v-icon>
       Yoomoney
       Yoomoney
     </v-btn>
     </v-btn>
     <v-btn class="mainAltButton mb-2" :to="cryptoLink">
     <v-btn class="mainAltButton mb-2" :to="cryptoLink">
-      <v-icon style="margin-right: 0.5em;">mdi-bitcoin</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-bitcoin</v-icon>
       Crypto
       Crypto
     </v-btn>
     </v-btn>
-
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
-  export default {
-    transition(to, from) {
-      if (!from) return 'swoop-in'
-      let routes = ['index', 'install', 'faq', 'donate', 'links']
-      if (routes.indexOf(to.name) < 0) return 'swoop-out'
-      if (routes.indexOf(from.name) < 0) return 'swoop-in'
-      return routes.indexOf(to.name) > routes.indexOf(from.name) ? 'swoop-left' : 'swoop-right'
-    },
-    data: () => ({
-      patreonLink: "https://www.patreon.com/returnyoutubedislike",
-      yoomoneyLink: "/pay/yoomoney",
-      cryptoLink: "/pay/crypto"
-    })
-  }
+export default {
+  transition(to, from) {
+    if (!from) return "swoop-in";
+    let routes = ["index", "install", "faq", "donate", "links"];
+    if (routes.indexOf(to.name) < 0) return "swoop-out";
+    if (routes.indexOf(from.name) < 0) return "swoop-in";
+    return routes.indexOf(to.name) > routes.indexOf(from.name)
+      ? "swoop-left"
+      : "swoop-right";
+  },
+  data: () => ({
+    patreonLink: "https://www.patreon.com/returnyoutubedislike",
+    yoomoneyLink: "/pay/yoomoney",
+    cryptoLink: "/pay/crypto",
+  }),
+};
 </script>
 </script>

+ 43 - 37
Website/pages/faq.vue

@@ -1,54 +1,60 @@
 <template>
 <template>
   <div>
   <div>
-
-    <h1 class="title-text" >Frequently Asked Questions</h1>
-    <p style="color: #999; margin-top: .5rem; margin-bottom: 1.5rem;">Still have questions? Feel free to join our Discord!</p>
+    <h1 class="title-text">Frequently Asked Questions</h1>
+    <p style="color: #999; margin-top: 0.5rem; margin-bottom: 1.5rem">
+      Still have questions? Feel free to join our Discord!
+    </p>
 
 
     <v-expansion-panels class="col-xs-12 col-sm-11 col-md-9 col-lg-7">
     <v-expansion-panels class="col-xs-12 col-sm-11 col-md-9 col-lg-7">
-      <v-expansion-panel v-for="(item, i) in items" :key="i" >
+      <v-expansion-panel v-for="(item, i) in items" :key="i">
         <v-expansion-panel-header>
         <v-expansion-panel-header>
           {{ item.question }}
           {{ item.question }}
         </v-expansion-panel-header>
         </v-expansion-panel-header>
         <v-expansion-panel-content class="text-left">
         <v-expansion-panel-content class="text-left">
-          <hr style="border-color: #444;">
-          <br>
+          <hr style="border-color: #444" />
+          <br />
           {{ item.answer }}
           {{ item.answer }}
         </v-expansion-panel-content>
         </v-expansion-panel-content>
       </v-expansion-panel>
       </v-expansion-panel>
     </v-expansion-panels>
     </v-expansion-panels>
-
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
-  export default {
-    transition(to, from) {
-      if (!from) return 'swoop-in'
-      let routes = ['index', 'install', 'faq', 'donate', 'links']
-      if (routes.indexOf(to.name) < 0) return 'swoop-out'
-      if (routes.indexOf(from.name) < 0) return 'swoop-in'
-      return routes.indexOf(to.name) > routes.indexOf(from.name) ? 'swoop-left' : 'swoop-right'
-    },
-    data: () => ({
-      items: [
-        { 
-          question: "Where does the extension get its data?",
-          answer: "A combination of Google's API data and scraped data. We save all available data to our DB so it can be made available after Google removes dislike counts from their API."
-        },
-        { 
-          question: "Why isn't the dislike count updating?",
-          answer: "Right now video dislikes are cached and they aren't updated very frequently. Currently this is set to update once every 2–3 days.  This isn't ideal and we are working on improving how often we can update them."
-        },
-        { 
-          question: "How does this work?",
-          answer: "The extension collects the video ID of the video you are watching, fetches the dislike (and other fields like views, likes etc) using our API, if this is the first time the video was fetched by our API, it will use the YouTube API to get the data, then store it in the database for caching (cached for around 2-3 days) and archiving purposes, and returns it to you. The extension then displays the dislike count and ratio on the page."
-        },
-        { 
-          question: "What will happen after the YouTube API stops returning the dislike count?",
-          answer: "The backend will switch to using a combination of archived dislike stats, estimates extrapolated from extension user data, and estimates based on view/like ratios for videos whose dislikes weren't archived as well as outdated dislike count archives."
-        },
-      ],
-    }),
-  
-  }
+export default {
+  transition(to, from) {
+    if (!from) return "swoop-in";
+    let routes = ["index", "install", "faq", "donate", "links"];
+    if (routes.indexOf(to.name) < 0) return "swoop-out";
+    if (routes.indexOf(from.name) < 0) return "swoop-in";
+    return routes.indexOf(to.name) > routes.indexOf(from.name)
+      ? "swoop-left"
+      : "swoop-right";
+  },
+  data: () => ({
+    items: [
+      {
+        question: "Where does the extension get its data?",
+        answer:
+          "A combination of Google's API data and scraped data. We save all available data to our DB so it can be made available after Google removes dislike counts from their API.",
+      },
+      {
+        question: "Why isn't the dislike count updating?",
+        answer:
+          "Right now video dislikes are cached and they aren't updated very frequently. Currently this is set to update once every 2–3 days.  This isn't ideal and we are working on improving how often we can update them.",
+      },
+      {
+        question: "How does this work?",
+        answer:
+          "The extension collects the video ID of the video you are watching, fetches the dislike (and other fields like views, likes etc) using our API, if this is the first time the video was fetched by our API, it will use the YouTube API to get the data, then store it in the database for caching (cached for around 2-3 days) and archiving purposes, and returns it to you. The extension then displays the dislike count and ratio on the page.",
+      },
+      {
+        question:
+          "What will happen after the YouTube API stops returning the dislike count?",
+        answer:
+          "The backend will switch to using a combination of archived dislike stats, estimates extrapolated from extension user data, and estimates based on view/like ratios for videos whose dislikes weren't archived as well as outdated dislike count archives.",
+      },
+    ],
+  }),
+};
 </script>
 </script>

+ 65 - 39
Website/pages/index.vue

@@ -1,36 +1,75 @@
 <template>
 <template>
   <div>
   <div>
-
-    <svg id="thumbslogo" class="mb-4" width="150" height="150" viewBox="0 0 24 24" overflow="visible" >
-      <path d="M14.9 3H6c-.9 0-1.6.5-1.9 1.2l-3 7c-.1.3-.1.5-.1.7v2c0 1.1.9 2 2 2h6.3l-.9 4.5c-.1.5 0 1 .4 1.4l1.1 1.1 6.5-6.6c.4-.4.6-.9.6-1.4V5c-.1-1.1-1-2-2.1-2zm7.4 12.8h-2.9c-.4 0-.7-.3-.7-.7V3.9c0-.4.3-.7.7-.7h2.9c.4 0 .7.3.7.7V15c0 .4-.3.8-.7.8z"/>
-      <path id="plarrow" d="m8 12.5 5.1-2.9L8 6.7v5.8z" fill="#fff" stroke="none"/>
+    <svg
+      id="thumbslogo"
+      class="mb-4"
+      width="150"
+      height="150"
+      viewBox="0 0 24 24"
+      overflow="visible"
+    >
+      <path
+        d="M14.9 3H6c-.9 0-1.6.5-1.9 1.2l-3 7c-.1.3-.1.5-.1.7v2c0 1.1.9 2 2 2h6.3l-.9 4.5c-.1.5 0 1 .4 1.4l1.1 1.1 6.5-6.6c.4-.4.6-.9.6-1.4V5c-.1-1.1-1-2-2.1-2zm7.4 12.8h-2.9c-.4 0-.7-.3-.7-.7V3.9c0-.4.3-.7.7-.7h2.9c.4 0 .7.3.7.7V15c0 .4-.3.8-.7.8z"
+      />
+      <path
+        id="plarrow"
+        d="m8 12.5 5.1-2.9L8 6.7v5.8z"
+        fill="#fff"
+        stroke="none"
+      />
     </svg>
     </svg>
 
 
-    <h1 class="title-text" >Return YouTube Dislike</h1>
+    <h1 class="title-text">Return YouTube Dislike</h1>
     <div class="mb-4" style="color: #999">
     <div class="mb-4" style="color: #999">
-      <p style="margin-top: 0">Browser extension and an API that show you dislikes on youtube</p>
+      <p style="margin-top: 0">
+        Browser extension and an API that show you dislikes on youtube
+      </p>
     </div>
     </div>
 
 
-    <v-btn :to="installLink" color="primary px-6" style="font-size: 1.5em; padding: 1em; margin-bottom: 0.5em;">
+    <v-btn
+      :to="installLink"
+      color="primary px-6"
+      style="font-size: 1.5em; padding: 1em; margin-bottom: 0.5em"
+    >
       <v-icon large class="mr-6">mdi-tray-arrow-down</v-icon>
       <v-icon large class="mr-6">mdi-tray-arrow-down</v-icon>
       Install
       Install
     </v-btn>
     </v-btn>
 
 
-    <br>
+    <br />
 
 
     <v-btn class="mainAltButton" :href="githubLink" target="_blank">
     <v-btn class="mainAltButton" :href="githubLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-github</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-github</v-icon>
       GitHub
       GitHub
     </v-btn>
     </v-btn>
 
 
     <v-btn class="mainAltButton" :href="discordLink" target="_blank">
     <v-btn class="mainAltButton" :href="discordLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-discord</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-discord</v-icon>
       Discord
       Discord
     </v-btn>
     </v-btn>
-
   </div>
   </div>
 </template>
 </template>
 
 
+<script>
+export default {
+  transition(to, from) {
+    if (!from) return "swoop-in";
+    let routes = ["index", "install", "faq", "donate", "links"];
+    if (routes.indexOf(to.name) < 0) return "swoop-out";
+    if (routes.indexOf(from.name) < 0) return "swoop-in";
+    return routes.indexOf(to.name) > routes.indexOf(from.name)
+      ? "swoop-left"
+      : "swoop-right";
+  },
+  data() {
+    return {
+      installLink: "/install",
+      githubLink: "https://github.com/Anarios/return-youtube-dislike",
+      discordLink: "https://discord.gg/mYnESY4Md5",
+    };
+  },
+};
+</script>
+
 <style scoped>
 <style scoped>
 #thumbslogo {
 #thumbslogo {
   opacity: 0;
   opacity: 0;
@@ -38,21 +77,23 @@
   stroke: #f44;
   stroke: #f44;
   transition-property: opacity, transform;
   transition-property: opacity, transform;
   transform: scale(0) rotate(180deg);
   transform: scale(0) rotate(180deg);
-  animation: popin 1s .3s ease-in-out 1 forwards, tap .3s 1.7s ease-in-out 1 forwards;
+  animation: popin 1s 0.3s ease-in-out 1 forwards,
+    tap 0.3s 1.7s ease-in-out 1 forwards;
 }
 }
 
 
 #plarrow {
 #plarrow {
   opacity: 0;
   opacity: 0;
   transform: translateX(-0.25rem);
   transform: translateX(-0.25rem);
   transition-property: opacity, transform;
   transition-property: opacity, transform;
-  animation: slidin .5s 1.7s ease 1 forwards;
+  animation: slidin 0.5s 1.7s ease 1 forwards;
 }
 }
 
 
 @keyframes slidin {
 @keyframes slidin {
   0% {
   0% {
     opacity: 0;
     opacity: 0;
     transform: translateX(-0.25rem);
     transform: translateX(-0.25rem);
-  } 100% {
+  }
+  100% {
     opacity: 1;
     opacity: 1;
     transform: translateX(0);
     transform: translateX(0);
   }
   }
@@ -62,7 +103,8 @@
   0% {
   0% {
     transform: rotate(180deg) scale(0);
     transform: rotate(180deg) scale(0);
     opacity: 0;
     opacity: 0;
-  } 100% {
+  }
+  100% {
     transform: rotate(0deg) scale(1);
     transform: rotate(0deg) scale(1);
     opacity: 1;
     opacity: 1;
   }
   }
@@ -71,7 +113,8 @@
 @keyframes fadein {
 @keyframes fadein {
   0% {
   0% {
     opacity: 0;
     opacity: 0;
-  } 100% {
+  }
+  100% {
     opacity: 1;
     opacity: 1;
   }
   }
 }
 }
@@ -81,11 +124,13 @@
     fill: transparent;
     fill: transparent;
     stroke: #f44;
     stroke: #f44;
     transform: scale(1);
     transform: scale(1);
-  } 25% {
+  }
+  25% {
     fill: #f44;
     fill: #f44;
     stroke: none;
     stroke: none;
-    transform: scale(.85);
-  } 100% {
+    transform: scale(0.85);
+  }
+  100% {
     fill: #f44;
     fill: #f44;
     stroke: none;
     stroke: none;
     transform: scale(1);
     transform: scale(1);
@@ -110,26 +155,7 @@
     opacity: 0;
     opacity: 0;
     transform: none;
     transform: none;
     transition-property: opacity;
     transition-property: opacity;
-    animation: fadein .5s .5s ease 1 forwards;
+    animation: fadein 0.5s 0.5s ease 1 forwards;
   }
   }
 }
 }
 </style>
 </style>
-
-<script>
-export default {
-  transition(to, from) {
-    if (!from) return 'swoop-in'
-    let routes = ['index', 'install', 'faq', 'donate', 'links']
-    if (routes.indexOf(to.name) < 0) return 'swoop-out'
-    if (routes.indexOf(from.name) < 0) return 'swoop-in'
-    return routes.indexOf(to.name) > routes.indexOf(from.name) ? 'swoop-left' : 'swoop-right'
-  },
-  data() {
-    return {
-      installLink: "/install",
-      githubLink: "https://github.com/Anarios/return-youtube-dislike",
-      discordLink: "https://discord.gg/mYnESY4Md5",
-    }
-  }
-}
-</script>

+ 55 - 32
Website/pages/install.vue

@@ -1,79 +1,102 @@
 <template>
 <template>
   <div>
   <div>
+    <h1 class="title-text">Select Your Platform</h1>
 
 
-    <h1 class="title-text" >Select Your Platform</h1>
-
-    <div style="color: #999;">
-      <p style=" margin-top: .5rem; margin-bottom: 0;"> This is an <b>ALPHA version!</b> It may be slow. It may be buggy.</p>
-      <p style="margin-bottom: 1rem;">Available for Firefox and all Chromium browsers (Chrome/Edge/Opera/Brave).</p>
+    <div style="color: #999">
+      <p style="margin-top: 0.5rem; margin-bottom: 0">
+        This is an <b>ALPHA version!</b> It may be slow. It may be buggy.
+      </p>
+      <p style="margin-bottom: 1rem">
+        Available for Firefox and all Chromium browsers
+        (Chrome/Edge/Opera/Brave).
+      </p>
     </div>
     </div>
 
 
     <v-btn class="mainAltButton mb-2" :href="firefoxLink" target="_blank">
     <v-btn class="mainAltButton mb-2" :href="firefoxLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-firefox</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-firefox</v-icon>
       Firefox
       Firefox
     </v-btn>
     </v-btn>
 
 
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-google-chrome</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-google-chrome</v-icon>
       Chrome
       Chrome
     </v-btn>
     </v-btn>
 
 
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-microsoft-edge</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-microsoft-edge</v-icon>
       Edge
       Edge
     </v-btn>
     </v-btn>
 
 
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-opera</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-opera</v-icon>
       Opera
       Opera
     </v-btn>
     </v-btn>
 
 
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
     <v-btn class="mainAltButton mb-2" :href="chromeLink" target="_blank">
       <!-- brave logo icon -->
       <!-- brave logo icon -->
-      <svg style="margin-right: 1rem;" height="20" width="20" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="#fff"><path d="m15.68 0 2.1 2.38s1.84-.51 2.7.36c.87.87 1.59 1.64 1.59 1.64l-.56 1.38.71 2.04-2.35 8.96c-.48 1.92-.82 2.66-2.2 3.63-1.38.97-3.88 2.66-4.29 2.92-.4.25-.92.69-1.38.69-.46 0-.97-.44-1.38-.7a185.8 185.8 0 0 1-4.3-2.9c-1.37-.98-1.7-1.72-2.19-3.64L1.78 7.8l.71-2.04-.56-1.38s.72-.77 1.59-1.64c.87-.87 2.7-.36 2.7-.36L8.33 0h7.36zM12 14.94c-.14 0-1.04.31-1.76.69-.72.37-1.24.63-1.4.74-.17.1-.07.3.08.4.15.11 2.2 1.7 2.4 1.87.2.18.48.47.68.47.2 0 .5-.3.69-.47.2-.17 2.24-1.76 2.4-1.86.14-.11.24-.3.08-.41l-1.41-.74a8.18 8.18 0 0 0-1.76-.7zm0-11.28s-.4 0-1.02.2-1.28.46-1.59.46c-.3 0-2.58-.43-2.58-.43s-2.7 3.26-2.7 3.96c0 .7.35.88.69 1.24l2.02 2.15c.2.2.59.51.35 1.07-.23.55-.58 1.26-.2 1.97.4.72 1.05 1.2 1.47 1.12.42-.08 1.42-.6 1.78-.83.36-.24 1.52-1.2 1.52-1.56 0-.36-1.2-1.02-1.42-1.17-.22-.15-1.22-.72-1.24-.95-.02-.22-.02-.29.28-.85.3-.56.83-1.3.74-1.8-.09-.5-.95-.75-1.56-.98-.62-.24-1.8-.67-1.95-.74-.15-.07-.1-.14.34-.18.45-.04 1.72-.21 2.3-.05.57.16 1.54.4 1.62.53.08.13.15.14.07.58-.08.45-.5 2.58-.54 2.96-.04.38-.12.63.29.72.4.1 1.1.26 1.33.26s.93-.16 1.33-.26c.41-.09.33-.34.3-.72-.05-.38-.47-2.51-.55-2.96-.08-.45-.01-.45.07-.58.08-.13 1.06-.37 1.63-.53.57-.16 1.85 0 2.3.05.44.04.48.1.33.18-.15.07-1.33.5-1.95.74-.61.23-1.47.49-1.56.98-.1.5.44 1.24.74 1.8s.3.63.29.85c-.02.23-1.03.8-1.25.95-.22.15-1.41.8-1.41 1.17 0 .37 1.15 1.32 1.51 1.56.37.23 1.36.75 1.78.83.42.08 1.08-.4 1.46-1.12.39-.71.04-1.42-.2-1.97-.23-.56.17-.87.36-1.07L19.2 9.1c.34-.36.68-.54.68-1.24s-2.7-3.96-2.7-3.96-2.27.43-2.57.43c-.3 0-.97-.25-1.59-.46-.61-.2-1.02-.2-1.02-.2z"/></svg>
+      <svg
+        style="margin-right: 1rem"
+        height="20"
+        width="20"
+        viewBox="0 0 24 24"
+        xmlns="http://www.w3.org/2000/svg"
+        fill="#fff"
+      >
+        <path
+          d="m15.68 0 2.1 2.38s1.84-.51 2.7.36c.87.87 1.59 1.64 1.59 1.64l-.56 1.38.71 2.04-2.35 8.96c-.48 1.92-.82 2.66-2.2 3.63-1.38.97-3.88 2.66-4.29 2.92-.4.25-.92.69-1.38.69-.46 0-.97-.44-1.38-.7a185.8 185.8 0 0 1-4.3-2.9c-1.37-.98-1.7-1.72-2.19-3.64L1.78 7.8l.71-2.04-.56-1.38s.72-.77 1.59-1.64c.87-.87 2.7-.36 2.7-.36L8.33 0h7.36zM12 14.94c-.14 0-1.04.31-1.76.69-.72.37-1.24.63-1.4.74-.17.1-.07.3.08.4.15.11 2.2 1.7 2.4 1.87.2.18.48.47.68.47.2 0 .5-.3.69-.47.2-.17 2.24-1.76 2.4-1.86.14-.11.24-.3.08-.41l-1.41-.74a8.18 8.18 0 0 0-1.76-.7zm0-11.28s-.4 0-1.02.2-1.28.46-1.59.46c-.3 0-2.58-.43-2.58-.43s-2.7 3.26-2.7 3.96c0 .7.35.88.69 1.24l2.02 2.15c.2.2.59.51.35 1.07-.23.55-.58 1.26-.2 1.97.4.72 1.05 1.2 1.47 1.12.42-.08 1.42-.6 1.78-.83.36-.24 1.52-1.2 1.52-1.56 0-.36-1.2-1.02-1.42-1.17-.22-.15-1.22-.72-1.24-.95-.02-.22-.02-.29.28-.85.3-.56.83-1.3.74-1.8-.09-.5-.95-.75-1.56-.98-.62-.24-1.8-.67-1.95-.74-.15-.07-.1-.14.34-.18.45-.04 1.72-.21 2.3-.05.57.16 1.54.4 1.62.53.08.13.15.14.07.58-.08.45-.5 2.58-.54 2.96-.04.38-.12.63.29.72.4.1 1.1.26 1.33.26s.93-.16 1.33-.26c.41-.09.33-.34.3-.72-.05-.38-.47-2.51-.55-2.96-.08-.45-.01-.45.07-.58.08-.13 1.06-.37 1.63-.53.57-.16 1.85 0 2.3.05.44.04.48.1.33.18-.15.07-1.33.5-1.95.74-.61.23-1.47.49-1.56.98-.1.5.44 1.24.74 1.8s.3.63.29.85c-.02.23-1.03.8-1.25.95-.22.15-1.41.8-1.41 1.17 0 .37 1.15 1.32 1.51 1.56.37.23 1.36.75 1.78.83.42.08 1.08-.4 1.46-1.12.39-.71.04-1.42-.2-1.97-.23-.56.17-.87.36-1.07L19.2 9.1c.34-.36.68-.54.68-1.24s-2.7-3.96-2.7-3.96-2.27.43-2.57.43c-.3 0-.97-.25-1.59-.46-.61-.2-1.02-.2-1.02-.2z"
+        />
+      </svg>
       Brave
       Brave
     </v-btn>
     </v-btn>
 
 
-    <h3 style="margin-top: 3em; margin-bottom:0">Other Platforms</h3>
+    <h3 style="margin-top: 3em; margin-bottom: 0">Other Platforms</h3>
     <div style="color: #999">
     <div style="color: #999">
-      <p style="margin-top: .5rem; margin-bottom:.5rem;">If your browser is not yet supported, try this UserScript.</p>
+      <p style="margin-top: 0.5rem; margin-bottom: 0.5rem">
+        If your browser is not yet supported, try this UserScript.
+      </p>
     </div>
     </div>
 
 
     <v-btn class="mainAltButton" :href="scriptLink" target="_blank">
     <v-btn class="mainAltButton" :href="scriptLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-script-text-outline</v-icon>
-      Userscript &nbsp;<div style="font-size: .55rem;"> (Tampermonkey)</div>
+      <v-icon style="margin-right: 0.5em">mdi-script-text-outline</v-icon>
+      Userscript &nbsp;
+      <div style="font-size: 0.55rem">(Tampermonkey)</div>
     </v-btn>
     </v-btn>
 
 
-    <h3 style="margin-top: 3em;">Third Party Implementations</h3>
-    <div style="color: #999;">
-      <p style="margin-top: .5rem; margin-bottom: .5rem;">No liability on our side, use at your own risk.</p>
+    <h3 style="margin-top: 3em">Third Party Implementations</h3>
+    <div style="color: #999">
+      <p style="margin-top: 0.5rem; margin-bottom: 0.5rem">
+        No liability on our side, use at your own risk.
+      </p>
     </div>
     </div>
     <v-btn class="mainAltButton" :href="iosJailbreakLink" target="_blank">
     <v-btn class="mainAltButton" :href="iosJailbreakLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-apple</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-apple</v-icon>
       iOS (Jailbroken)
       iOS (Jailbroken)
     </v-btn>
     </v-btn>
-
-
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
 export default {
 export default {
   transition(to, from) {
   transition(to, from) {
-    if (!from) return 'swoop-in'
-    let routes = ['index', 'install', 'faq', 'donate', 'links']
-    if (routes.indexOf(to.name) < 0) return 'swoop-out'
-    if (routes.indexOf(from.name) < 0) return 'swoop-in'
-    return routes.indexOf(to.name) > routes.indexOf(from.name) ? 'swoop-left' : 'swoop-right'
+    if (!from) return "swoop-in";
+    let routes = ["index", "install", "faq", "donate", "links"];
+    if (routes.indexOf(to.name) < 0) return "swoop-out";
+    if (routes.indexOf(from.name) < 0) return "swoop-in";
+    return routes.indexOf(to.name) > routes.indexOf(from.name)
+      ? "swoop-left"
+      : "swoop-right";
   },
   },
   data() {
   data() {
     return {
     return {
-      chromeLink: "https://chrome.google.com/webstore/detail/youtube-dislike-button/gebbhagfogifgggkldgodflihgfeippi/",
-      firefoxLink: "https://addons.mozilla.org/en-US/firefox/addon/return-youtube-dislikes/",
-      scriptLink: "https://github.com/Anarios/return-youtube-dislike/raw/main/Extensions/UserScript/Return%20Youtube%20Dislike.user.js",
+      chromeLink:
+        "https://chrome.google.com/webstore/detail/youtube-dislike-button/gebbhagfogifgggkldgodflihgfeippi/",
+      firefoxLink:
+        "https://addons.mozilla.org/en-US/firefox/addon/return-youtube-dislikes/",
+      scriptLink:
+        "https://github.com/Anarios/return-youtube-dislike/raw/main/Extensions/UserScript/Return%20Youtube%20Dislike.user.js",
 
 
-      iosJailbreakLink: "https://repo.lillieweeb001.xyz/"
-    }
-  }
-}
+      iosJailbreakLink: "https://repo.lillieweeb001.xyz/",
+    };
+  },
+};
 </script>
 </script>

+ 33 - 27
Website/pages/links.vue

@@ -1,61 +1,67 @@
 <template>
 <template>
   <div style="height: 100%">
   <div style="height: 100%">
-    
-    <h1 class="title-text" >Project Links</h1>
-          
+    <h1 class="title-text">Project Links</h1>
+
     <div style="color: #999">
     <div style="color: #999">
-      <p style="margin-top: .5rem; margin-bottom: 1rem;">Links to the project and its developers</p>
+      <p style="margin-top: 0.5rem; margin-bottom: 1rem">
+        Links to the project and its developers
+      </p>
     </div>
     </div>
 
 
     <v-btn class="mainAltButton" :href="githubLink" target="_blank">
     <v-btn class="mainAltButton" :href="githubLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-github</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-github</v-icon>
       GitHub
       GitHub
     </v-btn>
     </v-btn>
 
 
     <v-btn class="mainAltButton" :href="discordLink" target="_blank">
     <v-btn class="mainAltButton" :href="discordLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-discord</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-discord</v-icon>
       Discord
       Discord
     </v-btn>
     </v-btn>
 
 
-    <h1 style="margin-top: 1em;">Contact Me</h1>
+    <h1 style="margin-top: 1em">Contact Me</h1>
 
 
     <v-btn class="mainAltButton" :href="emailLink" target="_blank">
     <v-btn class="mainAltButton" :href="emailLink" target="_blank">
-      <v-icon style="margin-right: 0.5em;">mdi-email</v-icon>
+      <v-icon style="margin-right: 0.5em">mdi-email</v-icon>
       Email
       Email
     </v-btn>
     </v-btn>
 
 
     <p id="credits" class="flex-row no-wrap">
     <p id="credits" class="flex-row no-wrap">
       Site by <v-icon color="#555">mdi-discord</v-icon> Front#2990
       Site by <v-icon color="#555">mdi-discord</v-icon> Front#2990
-      <br>
-      <span style="color: #444; font-size: 0.75rem">& <v-icon color="#333" size="1rem">mdi-discord</v-icon> PickleNik#0864</span>
+      <br />
+      <span style="color: #444; font-size: 0.75rem"
+        >&
+        <v-icon color="#333" size="1rem">mdi-discord</v-icon>
+        PickleNik#0864</span
+      >
     </p>
     </p>
-
   </div>
   </div>
 </template>
 </template>
 
 
-<style scoped>
-#credits {
-  transform: translate(0,100%);
-  color: #555;
-}
-</style>
-
 <script>
 <script>
 export default {
 export default {
   transition(to, from) {
   transition(to, from) {
-    if (!from) return 'swoop-in'
-    let routes = ['index', 'install', 'faq', 'donate', 'links']
-    if (routes.indexOf(to.name) < 0) return 'swoop-out'
-    if (routes.indexOf(from.name) < 0) return 'swoop-in'
-    return routes.indexOf(to.name) > routes.indexOf(from.name) ? 'swoop-left' : 'swoop-right'
+    if (!from) return "swoop-in";
+    let routes = ["index", "install", "faq", "donate", "links"];
+    if (routes.indexOf(to.name) < 0) return "swoop-out";
+    if (routes.indexOf(from.name) < 0) return "swoop-in";
+    return routes.indexOf(to.name) > routes.indexOf(from.name)
+      ? "swoop-left"
+      : "swoop-right";
   },
   },
   data() {
   data() {
     return {
     return {
       githubLink: "https://github.com/Anarios/return-youtube-dislike",
       githubLink: "https://github.com/Anarios/return-youtube-dislike",
       discordLink: "https://discord.gg/mYnESY4Md5",
       discordLink: "https://discord.gg/mYnESY4Md5",
 
 
-      emailLink: "mailto:selivano.d@gmail.com "
-    }
-  }
-}
+      emailLink: "mailto:selivano.d@gmail.com ",
+    };
+  },
+};
 </script>
 </script>
+
+<style scoped>
+#credits {
+  transform: translate(0, 100%);
+  color: #555;
+}
+</style>

+ 24 - 33
Website/pages/pay/crypto.vue

@@ -1,27 +1,15 @@
 <template>
 <template>
   <v-container>
   <v-container>
     <v-row dense>
     <v-row dense>
-      <v-col
-          v-for="card in cards"
-          :key="card.title"
-          :lg="4"
-          :sm="12"
-      >
+      <v-col v-for="card in cards" :key="card.title" :lg="4" :sm="12">
         <v-card height="100%">
         <v-card height="100%">
-
           <v-card-title>
           <v-card-title>
             {{ card.title }}
             {{ card.title }}
           </v-card-title>
           </v-card-title>
           <v-card-text style="height: 80px">
           <v-card-text style="height: 80px">
             {{ card.address }}
             {{ card.address }}
           </v-card-text>
           </v-card-text>
-          <v-img
-              :src="card.img"
-              :contain=true
-              height="400px"
-              position="top"
-          >
-
+          <v-img :src="card.img" :contain="true" height="400px" position="top">
           </v-img>
           </v-img>
         </v-card>
         </v-card>
       </v-col>
       </v-col>
@@ -31,27 +19,30 @@
 
 
 <script>
 <script>
 export default {
 export default {
-  transition (to, from) {
-    return to.name == 'crypto' ? 'swoop-in' : 'swoop-out';
+  transition(to) {
+    return to.name == "crypto" ? "swoop-in" : "swoop-out";
   },
   },
   data: () => ({
   data: () => ({
-    cards: [{
-      title: 'Bitcoin',
-      address: 'bitcoin:bc1q90v030fu4z2hzz3x6a4zcwxuzauxkt8gjv8pws',
-      img: '/qrs/bitcoin.jpg'
-    }, {
-      title: 'Monero',
-      address: 'monero:431SM1vExRbdiq5jArCMkhey1g8kYhLYkbgkXYU4kgL6UrXNRzcXtz3HJDayph6Dcb3ErTg8ZAVqJGtS1Ya7Rr9URJ24Tbe',
-      img: '/qrs/monero.jpg'
-    }, {
-      title: 'Ethereum',
-      address: 'ethereum:0x981A99cDE3f4E1Ad49Ad84FB62Eca3606007eBEc',
-      img: '/qrs/ethereum.jpg'
-    }]
-  })
+    cards: [
+      {
+        title: "Bitcoin",
+        address: "bitcoin:bc1q90v030fu4z2hzz3x6a4zcwxuzauxkt8gjv8pws",
+        img: "/qrs/bitcoin.jpg",
+      },
+      {
+        title: "Monero",
+        address:
+          "monero:431SM1vExRbdiq5jArCMkhey1g8kYhLYkbgkXYU4kgL6UrXNRzcXtz3HJDayph6Dcb3ErTg8ZAVqJGtS1Ya7Rr9URJ24Tbe",
+        img: "/qrs/monero.jpg",
+      },
+      {
+        title: "Ethereum",
+        address: "ethereum:0x981A99cDE3f4E1Ad49Ad84FB62Eca3606007eBEc",
+        img: "/qrs/ethereum.jpg",
+      },
+    ],
+  }),
 };
 };
 </script>
 </script>
 
 
-<style>
-
-</style>
+<style></style>

+ 12 - 5
Website/pages/pay/yoomoney.vue

@@ -1,13 +1,20 @@
 <template>
 <template>
   <div>
   <div>
-    <iframe src="https://yoomoney.ru/quickpay/shop-widget?writer=seller&amp;targets=For%20returnyoutubedislike.com&amp;targets-hint=&amp;default-sum=&amp;button-text=13&amp;hint=&amp;successURL=&amp;quickpay=shop&amp;account=410015901550027&amp;" allowtransparency="true" scrolling="no" width="423" height="222" frameborder="0" />
+    <iframe
+      src="https://yoomoney.ru/quickpay/shop-widget?writer=seller&amp;targets=For%20returnyoutubedislike.com&amp;targets-hint=&amp;default-sum=&amp;button-text=13&amp;hint=&amp;successURL=&amp;quickpay=shop&amp;account=410015901550027&amp;"
+      allowtransparency="true"
+      scrolling="no"
+      width="423"
+      height="222"
+      frameborder="0"
+    />
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
 export default {
 export default {
-  transition(to, from) {
-    return to.name == 'yoomoney' ? 'swoop-in' : 'swoop-out'
+  transition(to) {
+    return to.name == "yoomoney" ? "swoop-in" : "swoop-out";
   },
   },
-}
-</script>
+};
+</script>