8 Commits

Author SHA1 Message Date
e1fdef129b Update src/app/shop/page.tsx 2026-02-19 02:25:07 +00:00
0ee240a1ff Update src/app/shop/[id]/page.tsx 2026-02-19 02:25:06 +00:00
270eae2e7b Update src/app/page.tsx 2026-02-19 02:25:06 +00:00
edafe120fa Update src/app/layout.tsx 2026-02-19 02:25:05 +00:00
8c9f31ef45 Update src/app/blog/page.tsx 2026-02-19 02:25:03 +00:00
c5e6667788 Merge version_1 into main
Merge version_1 into main
2026-02-19 02:22:58 +00:00
16ff7be781 Merge version_1 into main
Merge version_1 into main
2026-02-19 02:18:47 +00:00
148042e173 Merge version_1 into main
Merge version_1 into main
2026-02-19 02:15:23 +00:00
5 changed files with 80 additions and 27 deletions

View File

@@ -19,9 +19,9 @@ export default function BlogPage() {
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="solid"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="solid"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>

View File

@@ -4,8 +4,6 @@ import { Inter } from "next/font/google";
import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { Raleway } from "next/font/google";
import { Instrument_Sans } from "next/font/google";
const dmSans = DM_Sans({
variable: "--font-dm-sans", subsets: ["latin"],
@@ -36,16 +34,6 @@ export const metadata: Metadata = {
}
};
const raleway = Raleway({
variable: "--font-raleway",
subsets: ["latin"],
});
const instrumentSans = Instrument_Sans({
variable: "--font-instrument-sans",
subsets: ["latin"],
});
export default function RootLayout({
children,
}: Readonly<{
@@ -54,7 +42,9 @@ export default function RootLayout({
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body className={`${instrumentSans.variable} antialiased`}>
<body
className={`${dmSans.variable} ${inter.variable} antialiased`}
>
<Tag />
{children}
@@ -451,6 +441,20 @@ export default function RootLayout({
originalContent = element.textContent;
element.contentEditable = 'true';
if (!element.dataset.webildOriginalWhiteSpace) {
const computedStyle = window.getComputedStyle(element);
element.dataset.webildOriginalWhiteSpace = computedStyle.whiteSpace;
element.dataset.webildOriginalWordWrap = computedStyle.wordWrap;
element.dataset.webildOriginalOverflowWrap = computedStyle.overflowWrap;
element.dataset.webildOriginalOverflow = computedStyle.overflow;
}
element.style.whiteSpace = 'pre-wrap';
element.style.wordWrap = 'break-word';
element.style.overflowWrap = 'break-word';
element.style.overflow = 'visible';
element.focus();
isEditing = true;
@@ -560,6 +564,23 @@ export default function RootLayout({
element.contentEditable = 'false';
isEditing = false;
if (element.dataset.webildOriginalWhiteSpace) {
element.style.whiteSpace = element.dataset.webildOriginalWhiteSpace === 'normal' ? '' : element.dataset.webildOriginalWhiteSpace;
delete element.dataset.webildOriginalWhiteSpace;
}
if (element.dataset.webildOriginalWordWrap) {
element.style.wordWrap = element.dataset.webildOriginalWordWrap === 'normal' ? '' : element.dataset.webildOriginalWordWrap;
delete element.dataset.webildOriginalWordWrap;
}
if (element.dataset.webildOriginalOverflowWrap) {
element.style.overflowWrap = element.dataset.webildOriginalOverflowWrap === 'normal' ? '' : element.dataset.webildOriginalOverflowWrap;
delete element.dataset.webildOriginalOverflowWrap;
}
if (element.dataset.webildOriginalOverflow) {
element.style.overflow = element.dataset.webildOriginalOverflow === 'visible' ? '' : element.dataset.webildOriginalOverflow;
delete element.dataset.webildOriginalOverflow;
}
if (element.dataset.beforeInputHandler === 'true') {
element.removeEventListener('beforeinput', () => {});
delete element.dataset.beforeInputHandler;
@@ -865,6 +886,9 @@ export default function RootLayout({
const handleScroll = () => {
if (!isActive) return;
if (isEditing) return;
if (selectedElement) {
makeUneditable(selectedElement, false);
selectedElement.classList.remove(selectedClass);
@@ -1238,6 +1262,31 @@ export default function RootLayout({
window.addEventListener('scroll', handleScroll, true);
window.addEventListener('message', handleMessage, true);
let lastPathname = window.location.pathname;
const notifyPageChange = () => {
window.parent.postMessage({
type: 'webild-page-changed',
data: { pathname: window.location.pathname }
}, '*');
};
window.addEventListener('popstate', () => {
if (lastPathname !== window.location.pathname) {
lastPathname = window.location.pathname;
notifyPageChange();
}
}, true);
const urlCheckInterval = setInterval(() => {
if (lastPathname !== window.location.pathname) {
lastPathname = window.location.pathname;
notifyPageChange();
}
}, 500);
notifyPageChange();
window.webildCleanup = () => {
isActive = false;
@@ -1248,6 +1297,10 @@ export default function RootLayout({
removeHoverOverlay();
removeElementTypeLabel();
if (urlCheckInterval) {
clearInterval(urlCheckInterval);
}
document.removeEventListener('mouseover', handleMouseOver, true);
document.removeEventListener('mouseout', handleMouseOut, true);
document.removeEventListener('click', handleClick, true);

View File

@@ -21,9 +21,9 @@ export default function LandingPage() {
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="solid"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="solid"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<div id="nav" data-section="nav">

View File

@@ -76,9 +76,9 @@ export default function ProductPage({ params }: ProductPageProps) {
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="solid"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="solid"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>
@@ -121,9 +121,9 @@ export default function ProductPage({ params }: ProductPageProps) {
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="solid"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="solid"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>
@@ -173,9 +173,9 @@ export default function ProductPage({ params }: ProductPageProps) {
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="solid"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="solid"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>

View File

@@ -26,9 +26,9 @@ export default function ShopPage() {
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="solid"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="solid"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>
@@ -70,9 +70,9 @@ export default function ShopPage() {
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="solid"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="solid"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>