From e6c35cb90f01149928baaa6959f5e1744efbb9b2 Mon Sep 17 00:00:00 2001
From: Kevin <kparra2023@alu.uct.cl>
Date: Wed, 9 Oct 2024 20:38:44 -0300
Subject: Added hover effects to Showcases

---
 docs/showcases/Showcase.vue | 80 ++++++++++++++++++++++++++++++++++++---------
 1 file changed, 64 insertions(+), 16 deletions(-)

(limited to 'docs/showcases/Showcase.vue')

diff --git a/docs/showcases/Showcase.vue b/docs/showcases/Showcase.vue
index a5a1e01..f790fbf 100644
--- a/docs/showcases/Showcase.vue
+++ b/docs/showcases/Showcase.vue
@@ -2,37 +2,85 @@
 const props = defineProps({
     src: { type: String, required: true },
     label: { type: String, required: true },
-    url: { type: String, required: true }
+    url: { type: String, required: true },
+    icon: { type: String, required: false },
 });
 </script>
 
 <template>
-    <figure>
-        <a :href="url">
-            <img :src="src" :alt="label" />
-        </a>
+    <figure class="showcase">
+        <div>
+            <a :href="url" target="_blank">
+                <img :src="src" :alt="label" />
+            </a>
+            <i :class="icon" class="language-icon"></i>
+        </div>
         <figcaption>
-            <span>{{ label }}</span>
+            <a :href="url" class="label-link" target="_blank">{{ label }}</a>
         </figcaption>
     </figure>
 </template>
 
 <style scoped>
-img {
-    border-radius: 4px;
+.showcase {
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    padding: 1rem;
+    border-radius: 15px;
+    background-color: var(--vp-c-bg-soft);
+    transition:
+        transform 0.3s ease,
+        box-shadow 0.3s ease;
 }
 
-/* same as VPFeature */
-figure {
-    padding: 0.8rem;
-    padding-bottom: 0;
-    border-radius: 12px;
-    background-color: var(--vp-c-bg-soft);
+.showcase:hover {
+    transform: translateY(-5px);
+    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
+}
+
+.showcase:hover img {
+    transform: scale(1.05);
+}
+
+.showcase div {
+    position: relative;
+    display: inline-block;
+    width: 100%;
+    border-radius: 5px;
+    overflow: hidden;
+}
+
+.showcase img {
+    width: 100%;
+    border-radius: 5px;
+    transition: transform 0.3s ease;
+}
+
+.showcase i {
+    position: absolute;
+    bottom: 5px;
+    right: 5px;
+    padding: 0.5rem;
+    background: var(--vp-c-bg-soft);
+    border-radius: 100%;
+    font-size: 1rem;
 }
 
 figcaption {
+    margin-top: 0.8rem;
     text-align: center;
-    padding-top: .4em;
-    padding-bottom: .6em;
+}
+
+.label-link {
+    text-decoration: none;
+    color: var(--vp-c-text-primary);
+    font-weight: semibold;
+    font-size: 1rem;
+    transition: color 0.3s ease;
+}
+
+.label-link:hover {
+    color: var(--vp-c-brand);
 }
 </style>
-- 
cgit v1.2.3

