Compare commits
4 Commits
version_10
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 4a4d821411 | |||
| 9e508b3017 | |||
| 57011d2561 | |||
| 20db4ce23c |
@@ -413,6 +413,20 @@ export default function RootLayout({
|
|||||||
|
|
||||||
originalContent = element.textContent;
|
originalContent = element.textContent;
|
||||||
element.contentEditable = 'true';
|
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();
|
element.focus();
|
||||||
isEditing = true;
|
isEditing = true;
|
||||||
|
|
||||||
@@ -522,6 +536,23 @@ export default function RootLayout({
|
|||||||
element.contentEditable = 'false';
|
element.contentEditable = 'false';
|
||||||
isEditing = 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') {
|
if (element.dataset.beforeInputHandler === 'true') {
|
||||||
element.removeEventListener('beforeinput', () => {});
|
element.removeEventListener('beforeinput', () => {});
|
||||||
delete element.dataset.beforeInputHandler;
|
delete element.dataset.beforeInputHandler;
|
||||||
@@ -827,6 +858,9 @@ export default function RootLayout({
|
|||||||
|
|
||||||
const handleScroll = () => {
|
const handleScroll = () => {
|
||||||
if (!isActive) return;
|
if (!isActive) return;
|
||||||
|
|
||||||
|
if (isEditing) return;
|
||||||
|
|
||||||
if (selectedElement) {
|
if (selectedElement) {
|
||||||
makeUneditable(selectedElement, false);
|
makeUneditable(selectedElement, false);
|
||||||
selectedElement.classList.remove(selectedClass);
|
selectedElement.classList.remove(selectedClass);
|
||||||
@@ -1200,6 +1234,31 @@ export default function RootLayout({
|
|||||||
window.addEventListener('scroll', handleScroll, true);
|
window.addEventListener('scroll', handleScroll, true);
|
||||||
window.addEventListener('message', handleMessage, 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 = () => {
|
window.webildCleanup = () => {
|
||||||
isActive = false;
|
isActive = false;
|
||||||
|
|
||||||
@@ -1210,6 +1269,10 @@ export default function RootLayout({
|
|||||||
removeHoverOverlay();
|
removeHoverOverlay();
|
||||||
removeElementTypeLabel();
|
removeElementTypeLabel();
|
||||||
|
|
||||||
|
if (urlCheckInterval) {
|
||||||
|
clearInterval(urlCheckInterval);
|
||||||
|
}
|
||||||
|
|
||||||
document.removeEventListener('mouseover', handleMouseOver, true);
|
document.removeEventListener('mouseover', handleMouseOver, true);
|
||||||
document.removeEventListener('mouseout', handleMouseOut, true);
|
document.removeEventListener('mouseout', handleMouseOut, true);
|
||||||
document.removeEventListener('click', handleClick, true);
|
document.removeEventListener('click', handleClick, true);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
||||||
import HeroSplitDualMedia from '@/components/sections/hero/HeroSplitDualMedia';
|
import HeroLogoBillboardSplit from '@/components/sections/hero/HeroLogoBillboardSplit';
|
||||||
import TestimonialAboutCard from '@/components/sections/about/TestimonialAboutCard';
|
import TestimonialAboutCard from '@/components/sections/about/TestimonialAboutCard';
|
||||||
import FeatureCardNineteen from '@/components/sections/feature/FeatureCardNineteen';
|
import FeatureCardNineteen from '@/components/sections/feature/FeatureCardNineteen';
|
||||||
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||||
@@ -69,31 +69,22 @@ export default function SilZemliPage() {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroSplitDualMedia
|
<HeroLogoBillboardSplit
|
||||||
tag="Ласкаво просимо до Солі Землі"
|
logoText="СІЛЬ ЗЕМЛІ"
|
||||||
tagIcon={Flame}
|
|
||||||
title="Автентичні українські бенкети та сімейні обіди"
|
|
||||||
description="Відчуйте тепло, традицію та етнокультурну спадщину у нашому чудово оформленому бенкетному комплексі. Від інтимних сімейних зібрань до грандіозних святкувань, ми створюємо незабутні моменти біля вогню."
|
description="Відчуйте тепло, традицію та етнокультурну спадщину у нашому чудово оформленому бенкетному комплексі. Від інтимних сімейних зібрань до грандіозних святкувань, ми створюємо незабутні моменти біля вогню."
|
||||||
background={{ variant: "plain" }}
|
background={{ variant: "plain" }}
|
||||||
mediaItems={[
|
imageSrc="https://img.b2bpic.net/free-photo/full-shot-woman-getting-warmer-by-fire_23-2149172517.jpg"
|
||||||
{
|
imageAlt="Тепло каміна в традиційному українському інтер'єрі"
|
||||||
imageSrc: "https://img.b2bpic.net/free-photo/full-shot-woman-getting-warmer-by-fire_23-2149172517.jpg", imageAlt: "Тепло каміна в традиційному українському інтер'єрі"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
imageSrc: "https://img.b2bpic.net/free-photo/traditional-house-interior-design_23-2151050931.jpg", imageAlt: "Автентичний дерев'яний інтер'єр з етно-декором"
|
|
||||||
}
|
|
||||||
]}
|
|
||||||
rating={5}
|
|
||||||
ratingText="Улюблене місце сімей та організаторів заходів"
|
|
||||||
buttons={[{
|
buttons={[{
|
||||||
text: "Замовити стіл", onClick: () => setIsModalOpen(true)
|
text: "Замовити стіл", onClick: () => setIsModalOpen(true)
|
||||||
}]}
|
}]}
|
||||||
tagAnimation="slide-up"
|
layoutOrder="default"
|
||||||
|
frameStyle="card"
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
mediaAnimation="slide-up"
|
mediaAnimation="slide-up"
|
||||||
className="py-20 lg:py-32"
|
className="py-20 lg:py-32"
|
||||||
containerClassName="max-w-7xl"
|
containerClassName="max-w-7xl"
|
||||||
titleClassName="text-4xl md:text-6xl font-bold text-foreground"
|
logoClassName="text-6xl md:text-8xl font-bold text-foreground"
|
||||||
descriptionClassName="text-lg text-foreground/80"
|
descriptionClassName="text-lg text-foreground/80"
|
||||||
buttonClassName="bg-primary-cta hover:bg-accent text-white"
|
buttonClassName="bg-primary-cta hover:bg-accent text-white"
|
||||||
mediaWrapperClassName="rounded-soft overflow-hidden"
|
mediaWrapperClassName="rounded-soft overflow-hidden"
|
||||||
|
|||||||
Reference in New Issue
Block a user