From 3c83d66bf5183c586a51842132f2b45992d40f35 Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Tue, 28 Mar 2023 19:58:25 +0200 Subject: [PATCH 01/22] fix: add colored background to language switcher for better visibility --- src/components/LanguageButton.vue | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/components/LanguageButton.vue b/src/components/LanguageButton.vue index 698c66f..6efe436 100644 --- a/src/components/LanguageButton.vue +++ b/src/components/LanguageButton.vue @@ -7,14 +7,19 @@ diff --git a/src/views/CareerPathView.vue b/src/views/CareerPathView.vue index aeaa881..a67c3f8 100644 --- a/src/views/CareerPathView.vue +++ b/src/views/CareerPathView.vue @@ -10,8 +10,8 @@ import TruckIcon from '@/assets/icons/TruckIcon.vue' import BoxesIcon from '@/assets/icons/BoxesIcon.vue' interface Job { - title: string; - desc: string; + title: string + desc: string } const jobIcons = [ From f2b408fce5b25e39414bbf98e8c149f43e34cddd Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Mon, 4 Sep 2023 20:19:26 +0200 Subject: [PATCH 14/22] refactor: type MessageSchema in createI18n() constructor --- src/main.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main.ts b/src/main.ts index 8731bcf..599a648 100644 --- a/src/main.ts +++ b/src/main.ts @@ -7,7 +7,9 @@ import messages from './lang' import 'normalize.css' import '@/scss/main.scss' -const i18n = createI18n({ +type MessageSchema = typeof messages.en + +const i18n = createI18n<[MessageSchema], 'en' | 'de'>({ locale: 'en', fallbackLocale: 'en', messages From 68a43b6b9c53b99df25defc8edfd4e2d086b92ce Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Mon, 4 Sep 2023 22:11:34 +0200 Subject: [PATCH 15/22] feat: add transitions between pages --- src/App.vue | 6 +- src/router/index.ts | 6 +- src/scss/base.scss | 9 ++ src/scss/main.scss | 11 ++ src/views/AnatomyView.vue | 238 +++++++++++++++++---------------- src/views/AttributionsView.vue | 144 ++++++++++---------- src/views/CareerPathView.vue | 32 ++--- src/views/GeneralView.vue | 32 ++--- src/views/HomeView.vue | 18 +-- 9 files changed, 269 insertions(+), 227 deletions(-) diff --git a/src/App.vue b/src/App.vue index 9230c4f..c48ef1c 100644 --- a/src/App.vue +++ b/src/App.vue @@ -59,7 +59,11 @@ const close = () => { - + + + + + v{{ version }} © {{ new Date().getFullYear() }} Sebin Nyshkim diff --git a/src/router/index.ts b/src/router/index.ts index a879e36..5fc5326 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -10,7 +10,11 @@ import CircleInfoIcon from '@/assets/icons/CircleInfoIcon.vue' const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), scrollBehavior: () => { - return { top: 0 } + return new Promise((resolve) => { + setTimeout(() => { + resolve({ top: 0 }) + }, 500) + }) }, routes: [ { diff --git a/src/scss/base.scss b/src/scss/base.scss index a783f62..cdddb31 100644 --- a/src/scss/base.scss +++ b/src/scss/base.scss @@ -43,6 +43,8 @@ --page-background-image: url(@/assets/layered-waves-light.svg); --page-background-image-height: 100vw; --page-background-image-max-height: 50vh; + --page-transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55); + --page-transform: translateY(5em); --paragraph-margin: 1rem; @@ -286,3 +288,10 @@ --navigation-width-expanded: calc(var(--navigation-size) * 3.75 + env(safe-area-inset-left)); } } + +@media (prefers-reduced-motion) { + :root { + --page-transition: opacity 0.5s ease; + --page-transform: none; + } +} diff --git a/src/scss/main.scss b/src/scss/main.scss index 71dbc42..ae2af74 100644 --- a/src/scss/main.scss +++ b/src/scss/main.scss @@ -171,3 +171,14 @@ table { } } } + +.fade-enter-active, +.fade-leave-active { + transition: var(--page-transition); +} + +.fade-enter-from, +.fade-leave-to { + opacity: 0; + transform: var(--page-transform); +} diff --git a/src/views/AnatomyView.vue b/src/views/AnatomyView.vue index d029410..1798e26 100644 --- a/src/views/AnatomyView.vue +++ b/src/views/AnatomyView.vue @@ -15,149 +15,151 @@ const colors = [ - + :alt="`${$t('anatomy.images.front.caption')} by sabertoofs`" + loading="lazy" + /> + - - + + -
-

{{ p }}

-
+
+

{{ p }}

+
+ diff --git a/src/views/AttributionsView.vue b/src/views/AttributionsView.vue index a122106..4af3c33 100644 --- a/src/views/AttributionsView.vue +++ b/src/views/AttributionsView.vue @@ -25,73 +25,79 @@ const attributions = [ diff --git a/src/views/CareerPathView.vue b/src/views/CareerPathView.vue index a67c3f8..d6e28d1 100644 --- a/src/views/CareerPathView.vue +++ b/src/views/CareerPathView.vue @@ -26,20 +26,22 @@ const jobIcons = [ diff --git a/src/views/GeneralView.vue b/src/views/GeneralView.vue index 1248114..bfdb6ba 100644 --- a/src/views/GeneralView.vue +++ b/src/views/GeneralView.vue @@ -48,24 +48,26 @@ const sexData = [ diff --git a/src/views/HomeView.vue b/src/views/HomeView.vue index 8d7d629..830e290 100644 --- a/src/views/HomeView.vue +++ b/src/views/HomeView.vue @@ -3,14 +3,16 @@ import WelcomeHeader from '@/components/WelcomeHeader.vue' From a67cddc74b67b75a46c923046c51b6f8a73ee8bf Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Mon, 4 Sep 2023 22:17:47 +0200 Subject: [PATCH 16/22] build: update packages --- package-lock.json | 404 ++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 359 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index 268ff15..516aa42 100644 --- a/package-lock.json +++ b/package-lock.json @@ -53,6 +53,246 @@ "node": ">=6.0.0" } }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@esbuild/linux-x64": { "version": "0.18.20", "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", @@ -69,6 +309,102 @@ "node": ">=12" } }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -275,12 +611,6 @@ "url": "https://opencollective.com/unts" } }, - "node_modules/@pkgr/utils/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, "node_modules/@rollup/pluginutils": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.4.tgz", @@ -339,36 +669,6 @@ "integrity": "sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==", "dev": true }, - "node_modules/@types/vue-markdown": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@types/vue-markdown/-/vue-markdown-2.2.1.tgz", - "integrity": "sha512-pqa1RU0GZybdtqqadOWT8rTwMSchH1PR+oYeenscTT8Nrq/gniL7hpibhH40+aZBjx3Ps0syaTSiSae4Inw7GQ==", - "dev": true, - "dependencies": { - "vue": "^2.5.16" - } - }, - "node_modules/@types/vue-markdown/node_modules/@vue/compiler-sfc": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz", - "integrity": "sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.18.4", - "postcss": "^8.4.14", - "source-map": "^0.6.1" - } - }, - "node_modules/@types/vue-markdown/node_modules/vue": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.14.tgz", - "integrity": "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==", - "dev": true, - "dependencies": { - "@vue/compiler-sfc": "2.7.14", - "csstype": "^3.1.0" - } - }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "5.62.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", @@ -2085,6 +2385,20 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -4493,12 +4807,6 @@ "url": "https://opencollective.com/unts" } }, - "node_modules/synckit/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, "node_modules/tar-fs": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", @@ -4552,9 +4860,9 @@ } }, "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, "node_modules/tsutils": { @@ -4572,6 +4880,12 @@ "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" } }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, "node_modules/tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", From f1961f5cef7c219b20ca3ded519ca885eb8b3e61 Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Mon, 4 Sep 2023 22:18:12 +0200 Subject: [PATCH 17/22] chore: bump version number --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 516aa42..34da7b3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "viktor-reference", - "version": "0.4.2", + "version": "0.4.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "viktor-reference", - "version": "0.4.2", + "version": "0.4.3", "dependencies": { "vue": "^3.3.4", "vue-i18n": "^9.2.2", diff --git a/package.json b/package.json index 42e0540..048f9e1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "viktor-reference", - "version": "0.4.2", + "version": "0.4.3", "scripts": { "dev": "vite --host", "build": "run-p type-check build-only", From 1553825719ae0f6230cdd29f22786d553b07b6dc Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Tue, 5 Sep 2023 22:49:23 +0200 Subject: [PATCH 18/22] refactor: add type definition for emits --- src/components/LocaleSwitcher.vue | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/LocaleSwitcher.vue b/src/components/LocaleSwitcher.vue index ab21fbd..d86d7cb 100644 --- a/src/components/LocaleSwitcher.vue +++ b/src/components/LocaleSwitcher.vue @@ -15,8 +15,12 @@ interface Props { locales: LocaleOption[] } +interface Emits { + (e: 'update:modelValue', value: string): void +} + const props = defineProps() -const emit = defineEmits(['update:modelValue']) +const emit = defineEmits() const selectModel = computed({ get() { From f67ba1e65526e2ccc1766da71cf55cbad461969c Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Wed, 6 Sep 2023 00:17:27 +0200 Subject: [PATCH 19/22] refactor: get routes via getRoutes() function instead of importing router config --- src/App.vue | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/App.vue b/src/App.vue index c48ef1c..15f03e7 100644 --- a/src/App.vue +++ b/src/App.vue @@ -2,7 +2,6 @@ import { ref } from 'vue' import { RouterView } from 'vue-router' import { version } from '../package.json' -import router from '@/router' import ModalDialog from '@/components/ModalDialog.vue' import LocaleSwitcher from '@/components/LocaleSwitcher.vue' @@ -46,7 +45,7 @@ const close = () => { Date: Wed, 6 Sep 2023 00:17:56 +0200 Subject: [PATCH 20/22] style: close component tag immediately --- src/components/NavigationItem.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/NavigationItem.vue b/src/components/NavigationItem.vue index e34facd..8878b63 100644 --- a/src/components/NavigationItem.vue +++ b/src/components/NavigationItem.vue @@ -11,7 +11,7 @@ defineProps()