From de6fe3043d71fbde5da6de6a174dc10c2a075b48 Mon Sep 17 00:00:00 2001 From: zurdi Date: Fri, 23 May 2025 00:16:11 +0000 Subject: [PATCH] feat: add vanilla-tilt for enhanced card interaction and update dependencies --- frontend/package-lock.json | 7 + frontend/package.json | 1 + frontend/src/components/Home/RecentAdded.vue | 1 + .../src/components/common/Game/Card/Base.vue | 415 ++++++++++-------- 4 files changed, 236 insertions(+), 188 deletions(-) diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 50d8a6a1b..5750dd979 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -22,6 +22,7 @@ "qrcode": "^1.5.4", "semver": "^7.6.2", "socket.io-client": "^4.7.5", + "vanilla-tilt": "^1.8.1", "vue": "^3.4.27", "vue-i18n": "^11.1.2", "vue-router": "^4.3.2", @@ -8134,6 +8135,12 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, + "node_modules/vanilla-tilt": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/vanilla-tilt/-/vanilla-tilt-1.8.1.tgz", + "integrity": "sha512-hPB1XUsnh+SIeVSW2beb5RnuFxz4ZNgxjGD78o52F49gS4xaoLeEMh9qrQnJrnEn/vjjBI7IlxrrXmz4tGV0Kw==", + "license": "MIT" + }, "node_modules/vite": { "version": "6.3.4", "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.4.tgz", diff --git a/frontend/package.json b/frontend/package.json index b2c3af0e7..117fca8e4 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -40,6 +40,7 @@ "qrcode": "^1.5.4", "semver": "^7.6.2", "socket.io-client": "^4.7.5", + "vanilla-tilt": "^1.8.1", "vue": "^3.4.27", "vue-i18n": "^11.1.2", "vue-router": "^4.3.2", diff --git a/frontend/src/components/Home/RecentAdded.vue b/frontend/src/components/Home/RecentAdded.vue index ca984daa8..9b9cd7d15 100644 --- a/frontend/src/components/Home/RecentAdded.vue +++ b/frontend/src/components/Home/RecentAdded.vue @@ -44,6 +44,7 @@ function toggleGridRecentRoms() { }" class="pa-1" no-gutters + style="overflow-y: hidden" > void; + }; +} + +const tiltCard = ref(null); + +onMounted(() => { + if (tiltCard.value && !smAndDown.value) { + VanillaTilt.init(tiltCard.value, { + max: 20, + speed: 400, + glare: true, + "max-glare": 0.5, + scale: 1.15, + }); + } +}); + +onBeforeUnmount(() => { + if (tiltCard.value?.vanillaTilt) { + tiltCard.value.vanillaTilt.destroy(); + } +}); @@ -342,4 +377,8 @@ const showActionBarAlways = isNull( right: 0.25rem; bottom: 0.35rem; } + +.v-card:hover { + z-index: 9999 !important; +}