feat: completely remove lightbox feature
All checks were successful
Deploy Theme / deploy (push) Successful in 15s
All checks were successful
Deploy Theme / deploy (push) Successful in 15s
This commit is contained in:
@@ -68,10 +68,6 @@ html[data-theme='light'] {
|
||||
}
|
||||
}
|
||||
|
||||
.kg-image-card img, .post-content img, .post-feature-image img {
|
||||
@apply cursor-pointer transition-opacity duration-200 hover:opacity-90;
|
||||
}
|
||||
|
||||
@keyframes fadeInUp {
|
||||
from {
|
||||
opacity: 0;
|
||||
@@ -83,20 +79,7 @@ html[data-theme='light'] {
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes fadeIn {
|
||||
from {
|
||||
opacity: 0;
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.animate-fadeInUp {
|
||||
animation: fadeInUp 0.5s ease-out forwards;
|
||||
}
|
||||
|
||||
#lightbox.show {
|
||||
animation: fadeIn 0.3s ease-out forwards;
|
||||
}
|
||||
|
||||
|
||||
14
default.hbs
14
default.hbs
@@ -3,8 +3,6 @@
|
||||
x-data="{
|
||||
theme: localStorage.getItem('theme') || (window.matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark'),
|
||||
mobileMenuOpen: false,
|
||||
lightboxOpen: false,
|
||||
lightboxImage: '',
|
||||
init() {
|
||||
$watch('theme', val => {
|
||||
localStorage.setItem('theme', val);
|
||||
@@ -12,19 +10,8 @@
|
||||
});
|
||||
document.documentElement.setAttribute('data-theme', this.theme);
|
||||
document.documentElement.classList.remove('hidden');
|
||||
},
|
||||
handleGlobalClick(e) {
|
||||
if (this.lightboxOpen && e.target.closest('#lightbox')) return;
|
||||
|
||||
const img = e.target.closest('img');
|
||||
if (img && img.src && !img.closest('a') && img.closest('.kg-image-card, .post-content, .post-feature-image')) {
|
||||
e.preventDefault();
|
||||
this.lightboxImage = img.src;
|
||||
this.lightboxOpen = true;
|
||||
}
|
||||
}
|
||||
}"
|
||||
@click.window="handleGlobalClick($event)"
|
||||
:data-theme="theme"
|
||||
class="hidden">
|
||||
<head>
|
||||
@@ -51,7 +38,6 @@
|
||||
{{> footer}}
|
||||
|
||||
{{> mobile-menu}}
|
||||
{{> lightbox}}
|
||||
</div>
|
||||
|
||||
{{ghost_foot}}
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
<div id="lightbox"
|
||||
x-show="lightboxOpen"
|
||||
x-transition:enter="transition ease-out duration-300"
|
||||
x-transition:enter-start="opacity-0"
|
||||
x-transition:enter-end="opacity-100"
|
||||
x-transition:leave="transition ease-in duration-200"
|
||||
x-transition:leave-start="opacity-100"
|
||||
x-transition:leave-end="opacity-0"
|
||||
@click="lightboxOpen = false"
|
||||
@keydown.escape.window="lightboxOpen = false"
|
||||
class="fixed inset-0 bg-black/90 z-50 flex items-center justify-center p-4"
|
||||
x-cloak>
|
||||
|
||||
<button @click.stop="lightboxOpen = false"
|
||||
class="absolute top-6 right-6 text-white/70 hover:text-white transition-colors duration-200 z-50">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-10 h-10">
|
||||
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
|
||||
</svg>
|
||||
</button>
|
||||
|
||||
<div class="relative max-w-7xl max-h-full flex items-center justify-center" @click.stop>
|
||||
<img :src="lightboxImage"
|
||||
alt="Lightbox image"
|
||||
class="max-w-full max-h-[90vh] object-contain shadow-2xl rounded-sm">
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user