From 9e3f98d3dd6ad4e46d73896b0feed436c2c9f69d Mon Sep 17 00:00:00 2001 From: tuyenio Date: Thu, 25 Jun 2026 09:40:55 +0700 Subject: [PATCH] =?UTF-8?q?chore:=20d=E1=BB=8Dn=20@keyframes=20kh=C3=B4ng?= =?UTF-8?q?=20d=C3=B9ng=20+=20c=E1=BA=ADp=20nh=E1=BA=ADt=20comment=20.webp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Xoá 8 @keyframes orphaned không được dùng: public-ambient-pan, public-back-to-top-float, public-cta-breathe, public-gradient-flow, public-header-glint, public-logo-breathe, public-photo-breathe, public-stage-float - Giữ lại 7 @keyframes vẫn được dùng: public-section-reveal, public-header-drop, public-rise, public-stagger-reveal, public-line-draw, public-sheen, heritage-marquee - Cập nhật comment trong chua-thai-lac.ts để phản ánh .webp thay cho .jpg Co-Authored-By: Claude Opus 4.8 (1M context) --- src/app/globals.css | 78 ---------------------------------- src/app/tours/chua-thai-lac.ts | 4 +- 2 files changed, 2 insertions(+), 80 deletions(-) diff --git a/src/app/globals.css b/src/app/globals.css index 0a21efa..8f46d67 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -1238,45 +1238,8 @@ a { } } -@keyframes public-header-glint { - 0%, - 58%, - 100% { - opacity: 0; - transform: translateX(0) skewX(-18deg); - } - 68% { - opacity: 0.62; - } - 82% { - opacity: 0; - transform: translateX(760%) skewX(-18deg); - } -} -@keyframes public-logo-breathe { - 0%, - 100% { - box-shadow: - inset 0 1px 0 rgb(255 255 255 / 0.92), - 0 10px 24px rgb(37 75 54 / 0.08); - } - 50% { - box-shadow: - inset 0 1px 0 rgb(255 255 255 / 0.98), - 0 16px 34px rgb(142 95 11 / 0.14); - } -} -@keyframes public-cta-breathe { - 0%, - 100% { - filter: saturate(1); - } - 50% { - filter: saturate(1.08) brightness(1.03); - } -} @keyframes public-rise { from { @@ -1300,23 +1263,7 @@ a { } } -@keyframes public-ambient-pan { - from { - background-position: 0% 0%, 0 0, 0 0; - } - to { - background-position: 100% 0%, 84px 0, 0 84px; - } -} -@keyframes public-gradient-flow { - from { - background-position: 0% 50%; - } - to { - background-position: 100% 50%; - } -} @keyframes public-line-draw { from { @@ -1343,33 +1290,8 @@ a { } } -@keyframes public-photo-breathe { - from { - transform: scale(1); - } - to { - transform: scale(1.035); - } -} -@keyframes public-stage-float { - from { - transform: translate3d(0, 0, 0) rotateX(0deg) rotateY(0deg); - } - to { - transform: translate3d(0, -10px, 0) rotateX(0.4deg) rotateY(-0.55deg); - } -} -@keyframes public-back-to-top-float { - 0%, - 100% { - filter: saturate(1); - } - 50% { - filter: saturate(1.08) brightness(1.03); - } -} /* Lớp nhiễu hạt phim cố định — tạo chiều sâu, chất liệu cao cấp cho nền tối. */ .site-grain { diff --git a/src/app/tours/chua-thai-lac.ts b/src/app/tours/chua-thai-lac.ts index 70d3929..2f97326 100644 --- a/src/app/tours/chua-thai-lac.ts +++ b/src/app/tours/chua-thai-lac.ts @@ -2,7 +2,7 @@ // File chỉ chứa DỮ LIỆU (type-only import từ engine để tránh circular import runtime). // Engine `VirtualTour.tsx` import `chuaThaiLacTour` rồi bọc qua createTourConfig(). // -// Ảnh panorama đặt tại public/images/chua-thai-lac/01.jpg … 26.jpg +// Ảnh panorama đặt tại public/images/chua-thai-lac/01.webp … 26.webp // (đặt tên ASCII theo thứ tự cảnh để tránh lỗi mã hóa Unicode/đường dẫn khi triển khai). import type { TourConfig, TourScene, InfoMarker, Hotspot } from "@/app/components/VirtualTour"; @@ -408,7 +408,7 @@ export const chuaThaiLacTour: Omit = welcomeAccent: "Pháp Vân tự", welcomeSubtitle: "Tham quan 360° ngôi chùa cổ thờ Pháp Vân, nổi tiếng với mảng chạm khắc gỗ thời Trần.", - welcomeBackgroundImage: imageForFile(8), // 08.jpg — Chính sảnh + welcomeBackgroundImage: imageForFile(8), // 08.webp — Chính sảnh welcomeCards: [ { image: imageForFile(1), label: "Cổng chùa", rotate: "-rotate-6", sceneId: "scene-1" }, { image: imageForFile(10), label: "Đài Quan Âm", rotate: "rotate-5", sceneId: "scene-10" },