Merge version_2 into main #4
@@ -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>
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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">
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user