diff --git a/package-lock.json b/package-lock.json index ee7f331..d0a4009 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "wavelovers", - "version": "1.0.12", + "version": "1.0.13", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "wavelovers", - "version": "1.0.12", + "version": "1.0.13", "license": "GNU GPL v3", "dependencies": { "core-js": "^3.8.3", diff --git a/package.json b/package.json index a0c73e9..6bba3a9 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "wavelovers", "description": "Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.", "keywords": [ "wavelovers", "gamepad-vibrator", "gamepad-test-tool", "gamepad-vibration-test-tool" ], - "version": "1.0.12", + "version": "1.0.13", "license": "GNU GPL v3", "homepage": "https://wavelovers.ru/", "author": { diff --git a/src/router/assets/metas/404.ts b/src/router/assets/metas/404.ts new file mode 100644 index 0000000..878a88f --- /dev/null +++ b/src/router/assets/metas/404.ts @@ -0,0 +1,21 @@ +const meta = { + title: 'Wavelovers – Page not found', + metaTags: [ + { + name: 'og:title', + content: 'Wavelovers – Page not found', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/404', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/404', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/metas/About.ts b/src/router/assets/metas/About.ts new file mode 100644 index 0000000..b3136ed --- /dev/null +++ b/src/router/assets/metas/About.ts @@ -0,0 +1,41 @@ +const meta = { + title: 'Wavelovers – About', + metaTags: [ + { + name: 'keywords', + content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, advertise, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона, реклама', + }, + { + name: 'description', + content: 'Wavelovers. Page with information about the project and data on donations.', + }, + { + name: 'og:title', + content: 'Wavelovers – About', + }, + { + name: 'og:description', + content: 'Wavelovers. Page with information about the project and data on donations.', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/about', + }, + { + name: 'twitter:title', + content: 'Wavelovers – About', + }, + { + name: 'twitter:description', + content: 'Wavelovers. Page with information about the project and data on donations.', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/about', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/metas/Custom.ts b/src/router/assets/metas/Custom.ts new file mode 100644 index 0000000..c95f258 --- /dev/null +++ b/src/router/assets/metas/Custom.ts @@ -0,0 +1,41 @@ +const meta = { + title: 'Wavelovers – Custom', + metaTags: [ + { + name: 'keywords', + content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', + }, + { + name: 'description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:title', + content: 'Wavelovers – Custom', + }, + { + name: 'og:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/custom', + }, + { + name: 'twitter:title', + content: 'Wavelovers – Custom', + }, + { + name: 'twitter:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/custom', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/metas/Diagnostic.ts b/src/router/assets/metas/Diagnostic.ts new file mode 100644 index 0000000..8eefd36 --- /dev/null +++ b/src/router/assets/metas/Diagnostic.ts @@ -0,0 +1,41 @@ +const meta = { + title: 'Wavelovers – Diagnostic', + metaTags: [ + { + name: 'keywords', + content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', + }, + { + name: 'description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:title', + content: 'Wavelovers – Diagnostic', + }, + { + name: 'og:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/diagnostic', + }, + { + name: 'twitter:title', + content: 'Wavelovers – Diagnostic', + }, + { + name: 'twitter:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/diagnostic', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/metas/Donate.ts b/src/router/assets/metas/Donate.ts new file mode 100644 index 0000000..efdafe3 --- /dev/null +++ b/src/router/assets/metas/Donate.ts @@ -0,0 +1,41 @@ +const meta = { + title: 'Wavelovers – Donate', + metaTags: [ + { + name: 'keywords', + content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, Donate, Support, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона, задонатить, пожертвовать, помочь, поблагодарить', + }, + { + name: 'description', + content: 'Wavelovers. Donate to the author.', + }, + { + name: 'og:title', + content: 'Wavelovers – Donate', + }, + { + name: 'og:description', + content: 'Wavelovers. Donate to the author.', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/donate', + }, + { + name: 'twitter:title', + content: 'Wavelovers – Donate', + }, + { + name: 'twitter:description', + content: 'Wavelovers. Donate to the author.', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/donate', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/metas/Faq.ts b/src/router/assets/metas/Faq.ts new file mode 100644 index 0000000..d48c89b --- /dev/null +++ b/src/router/assets/metas/Faq.ts @@ -0,0 +1,41 @@ +const meta = { + title: 'Wavelovers – FAQ', + metaTags: [ + { + name: 'keywords', + content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, FAQ, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона, часто задаваемые вопросы', + }, + { + name: 'description', + content: 'Wavelovers. Frequently asked questions page.', + }, + { + name: 'og:title', + content: 'Wavelovers – FAQ', + }, + { + name: 'og:description', + content: 'Wavelovers. Frequently asked questions page.', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/faq', + }, + { + name: 'twitter:title', + content: 'Wavelovers – FAQ', + }, + { + name: 'twitter:description', + content: 'Wavelovers. Frequently asked questions page.', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/faq', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/metas/Manual.ts b/src/router/assets/metas/Manual.ts new file mode 100644 index 0000000..605e59d --- /dev/null +++ b/src/router/assets/metas/Manual.ts @@ -0,0 +1,41 @@ +const meta = { + title: 'Wavelovers – Manual', + metaTags: [ + { + name: 'keywords', + content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', + }, + { + name: 'description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:title', + content: 'Wavelovers – Manual', + }, + { + name: 'og:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/manual', + }, + { + name: 'twitter:title', + content: 'Wavelovers – Manual', + }, + { + name: 'twitter:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/manual', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/metas/Patterns.ts b/src/router/assets/metas/Patterns.ts new file mode 100644 index 0000000..5a58f30 --- /dev/null +++ b/src/router/assets/metas/Patterns.ts @@ -0,0 +1,41 @@ +const meta = { + title: 'Wavelovers', + metaTags: [ + { + name: 'keywords', + content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', + }, + { + name: 'description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:title', + content: 'Wavelovers', + }, + { + name: 'og:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + { + name: 'og:url', + content: 'https://wavelovers.ru/', + }, + { + name: 'twitter:title', + content: 'Wavelovers', + }, + { + name: 'twitter:description', + content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', + }, + ], + linkTags: [ + { + rel: 'canonical', + href: 'https://wavelovers.ru/', + }, + ], +}; + +export default meta; diff --git a/src/router/assets/routes.ts b/src/router/assets/routes.ts index 2450248..6568bff 100644 --- a/src/router/assets/routes.ts +++ b/src/router/assets/routes.ts @@ -1,337 +1,61 @@ import { RouteRecordRaw } from 'vue-router'; +import metaPatterns from '@/router/assets/metas/Patterns'; +import metaCustom from '@/router/assets/metas/Custom'; +import metaManual from '@/router/assets/metas/Manual'; +import metaDiagnostic from '@/router/assets/metas/Diagnostic'; +import metaFaq from '@/router/assets/metas/Faq'; +import metaAbout from '@/router/assets/metas/About'; +import metaDonate from '@/router/assets/metas/Donate'; +import meta404 from '@/router/assets/metas/404'; const routes: Array = [ { path: '/', name: 'patterns-view', component: () => import('@/views/PatternsView.vue'), - meta: { - title: 'Wavelovers', - metaTags: [ - { - name: 'keywords', - content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', - }, - { - name: 'description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:title', - content: 'Wavelovers', - }, - { - name: 'og:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/', - }, - { - name: 'twitter:title', - content: 'Wavelovers', - }, - { - name: 'twitter:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/', - }, - ], - }, + meta: metaPatterns, }, { path: '/custom', name: 'custom-view', component: () => import('@/views/CustomView.vue'), - meta: { - title: 'Wavelovers – Custom', - metaTags: [ - { - name: 'keywords', - content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', - }, - { - name: 'description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:title', - content: 'Wavelovers – Custom', - }, - { - name: 'og:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/custom', - }, - { - name: 'twitter:title', - content: 'Wavelovers – Custom', - }, - { - name: 'twitter:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/custom', - }, - ], - }, + meta: metaCustom, }, { path: '/manual', name: 'manual-view', component: () => import('@/views/ManualView.vue'), - meta: { - title: 'Wavelovers – Manual', - metaTags: [ - { - name: 'keywords', - content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', - }, - { - name: 'description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:title', - content: 'Wavelovers – Manual', - }, - { - name: 'og:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/manual', - }, - { - name: 'twitter:title', - content: 'Wavelovers – Manual', - }, - { - name: 'twitter:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/manual', - }, - ], - }, + meta: metaManual, }, { path: '/diagnostic', name: 'diagnostic-view', component: () => import('@/views/DiagnosticView.vue'), - meta: { - title: 'Wavelovers – Diagnostic', - metaTags: [ - { - name: 'keywords', - content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона', - }, - { - name: 'description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:title', - content: 'Wavelovers – Diagnostic', - }, - { - name: 'og:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/diagnostic', - }, - { - name: 'twitter:title', - content: 'Wavelovers – Diagnostic', - }, - { - name: 'twitter:description', - content: 'Wavelovers. Use your device vibration correctly. Make a massager out of a gamepad.', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/diagnostic', - }, - ], - }, + meta: metaDiagnostic, }, { path: '/faq', name: 'faq-view', component: () => import('@/views/FaqView.vue'), - meta: { - title: 'Wavelovers – FAQ', - metaTags: [ - { - name: 'keywords', - content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, FAQ, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона, часто задаваемые вопросы', - }, - { - name: 'description', - content: 'Wavelovers. Frequently asked questions page.', - }, - { - name: 'og:title', - content: 'Wavelovers – FAQ', - }, - { - name: 'og:description', - content: 'Wavelovers. Frequently asked questions page.', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/faq', - }, - { - name: 'twitter:title', - content: 'Wavelovers – FAQ', - }, - { - name: 'twitter:description', - content: 'Wavelovers. Frequently asked questions page.', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/faq', - }, - ], - }, + meta: metaFaq, }, { path: '/about', name: 'about-view', component: () => import('@/views/AboutView.vue'), - meta: { - title: 'Wavelovers – About', - metaTags: [ - { - name: 'keywords', - content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, advertise, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона, реклама', - }, - { - name: 'description', - content: 'Wavelovers. Page with information about the project and data on donations.', - }, - { - name: 'og:title', - content: 'Wavelovers – About', - }, - { - name: 'og:description', - content: 'Wavelovers. Page with information about the project and data on donations.', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/about', - }, - { - name: 'twitter:title', - content: 'Wavelovers – About', - }, - { - name: 'twitter:description', - content: 'Wavelovers. Page with information about the project and data on donations.', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/about', - }, - ], - }, + meta: metaAbout, }, { path: '/donate', name: 'donate-view', component: () => import('@/views/DonateView.vue'), - meta: { - title: 'Wavelovers – Donate', - metaTags: [ - { - name: 'keywords', - content: 'Wavelovers, Wave Lovers, Wavemaster, Wave Master, Vibration Master, Vibration, Gamepad, Gamepad Vibration, Gamepad Massager, Vibrate Gamepad, Phone Vibration, Gamepad Tester, Phone Vibration Tester, Vibration Tester, Massager, Vibrator, Satisfyer, Womanizer, Relax, Donate, Support, геймпад, джойстик, вибратор, вибромассажер, вибро, вибромассажёр из геймпада, тестер вибрации геймпада, тестер вибрации телефона, задонатить, пожертвовать, помочь, поблагодарить', - }, - { - name: 'description', - content: 'Wavelovers. Donate to the author.', - }, - { - name: 'og:title', - content: 'Wavelovers – Donate', - }, - { - name: 'og:description', - content: 'Wavelovers. Donate to the author.', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/donate', - }, - { - name: 'twitter:title', - content: 'Wavelovers – Donate', - }, - { - name: 'twitter:description', - content: 'Wavelovers. Donate to the author.', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/donate', - }, - ], - }, + meta: metaDonate, }, { path: '/404', name: '404', component: () => import('@/views/NotFoundView.vue'), - meta: { - title: 'Wavelovers – Page not found', - metaTags: [ - { - name: 'og:title', - content: 'Wavelovers – Page not found', - }, - { - name: 'og:url', - content: 'https://wavelovers.ru/404', - }, - ], - linkTags: [ - { - rel: 'canonical', - href: 'https://wavelovers.ru/404', - }, - ], - }, + meta: meta404, }, { path: '/:catchAll(.*)*',