{"version":3,"file":"shared-lib.DD2fj7MP.mjs","names":["useState","useRef","useCallback"],"sources":["https:/framerusercontent.com/modules/QNsPlwFCoCc37bVrevfP/u4p1d9rZS3pOt7jT8pSj/Reveal.js","https:/framerusercontent.com/modules/WhFTzKNE8qzFVI4Y4XNx/DgCsieCHhcE6YYBGqHDn/S5vRab5X0.js","https:/framerusercontent.com/modules/tZglXpXsJTbvR25geN4d/K8HSjqt1uhjCCVJm2kNP/siteMetadata.js"],"sourcesContent":["// Reveal — the house appear motion, taken from the Salon hero: content\n// develops out of blur as it comes into view, on the house easing.\n// Layers that enter the view together reveal one after another, in page order.\n// After a page change it waits (briefly) for the curtain of Page Transition.\n// Fail-safe: whatever happens, a layer is never left hidden.\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useRef,useEffect,useCallback}from\"react\";import{useIsStaticRenderer,RenderTarget}from\"framer\";const EASE=[.22,1,.36,1];// layers entering within the same moment form one batch and stagger in order\nlet batchStart=0;let batchCount=0;function nextStagger(step){const now=performance.now();if(now-batchStart>140){batchStart=now;batchCount=0;}return Math.min(batchCount++,6)*step;}// ms until the page curtain is out of the way (set by Page Transition), never more than 1.2 s\nfunction curtainWait(){const at=window.__ombrineRevealAt||0;return Math.min(1200,Math.max(0,at-performance.now()));}function reducedMotion(){return typeof window!==\"undefined\"&&!!window.matchMedia?.(\"(prefers-reduced-motion: reduce)\").matches;}function makeReveal(hidden,shown,duration){return Component=>{return function Revealed(props){const[isShown,setShown]=useState(false);const delay=useRef(0);const started=useRef(false);const timers=useRef([]);const io=useRef(null);const start=useCallback(()=>{if(started.current)return;started.current=true;io.current?.disconnect();delay.current=nextStagger(.07);timers.current.push(window.setTimeout(()=>setShown(true),curtainWait()));},[]);// our own observer on the rendered element (any pixel in view counts)\nconst elRef=useRef(null);const outerRef=props.ref;const ref=useCallback(el=>{elRef.current=el;if(typeof outerRef===\"function\")outerRef(el);else if(outerRef&&typeof outerRef===\"object\")outerRef.current=el;io.current?.disconnect();io.current=null;if(!el||started.current||typeof IntersectionObserver===\"undefined\")return;io.current=new IntersectionObserver(entries=>entries.some(e=>e.isIntersecting)&&start(),{rootMargin:\"0px 0px -6% 0px\"});io.current.observe(el);},[start,outerRef]);useEffect(()=>{// fail-safe: never leave a layer hidden\ntimers.current.push(window.setTimeout(()=>{if(started.current)return;const el=elRef.current;if(!el)return setShown(true)// could not observe: just show it\n;const r=el.getBoundingClientRect();if(r.bottom>0&&r.top<window.innerHeight)start()// on screen but missed\n;},2500));return()=>{timers.current.forEach(t=>window.clearTimeout(t));io.current?.disconnect();};},[]);// canvas, thumbnails and exports always show the finished layout\nconst isStatic=useIsStaticRenderer()||RenderTarget.current()!==RenderTarget.preview;if(isStatic)return /*#__PURE__*/_jsx(Component,{...props});const reduced=reducedMotion();const from=reduced?{opacity:0}:hidden;const to=reduced?{opacity:1}:shown;return /*#__PURE__*/_jsx(Component,{...props,ref:ref,initial:from,animate:isShown?to:from,transition:{duration:reduced?.4:duration,ease:EASE,delay:isShown?delay.current:0},viewport:{once:true,amount:\"some\"},onViewportEnter:start});};};}const textReveal=makeReveal({opacity:0,y:20,filter:\"blur(8px)\"},{opacity:1,y:0,filter:\"blur(0px)\"},.9);const imageReveal=makeReveal({opacity:0,scale:1.03,filter:\"blur(14px)\"},{opacity:1,scale:1,filter:\"blur(0px)\"},1.1);/** Text, buttons, cards: rise 20 px out of an 8 px blur. */export function withReveal(Component){return textReveal(Component);}/** Images: develop out of a 14 px blur and settle into place. */export function withRevealImage(Component){return imageReveal(Component);}\nexport const __FramerMetadata__ = {\"exports\":{\"withReveal\":{\"type\":\"reactHoc\",\"name\":\"withReveal\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRevealImage\":{\"type\":\"reactHoc\",\"name\":\"withRevealImage\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Reveal.map","// Generated by Framer (291a518)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Manrope-regular\",\"FS;Manrope-bold\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Manrope\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Manrope\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/2TYFCBHUANEXS6QGR5EQDUNAFH6LSWM3/AYNOU3VEA4LRTDNKJQUFNVNUTYSGOUOP/UXO4O7K2G3HI3D2VKD7UXVJVJD26P4BQ.woff2\",weight:\"400\"},{cssFamilyName:\"Manrope\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Manrope\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/NGBUP45ES3F7RD5XGKPEDJ6QEPO4TMOK/EXDVWJ2EDDVVV65UENMX33EDDYBX6OF7/6P4FPMFQH7CCC7RZ4UU4NKSGJ2RLF7V5.woff2\",weight:\"700\"}]}];export const css=[\".framer-E6sh5 .framer-styles-preset-16l9fuy:not(.rich-text-wrapper), .framer-E6sh5 .framer-styles-preset-16l9fuy.rich-text-wrapper p { --framer-font-family: \\\"Manrope\\\", \\\"Manrope Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Manrope\\\", \\\"Manrope Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on; --framer-font-size: 12px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-letter-spacing: 0.006em; --framer-line-height: 1.3em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-82020b8b-49bb-4a2e-a44f-ddc9b2b8180e); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\"];export const className=\"framer-E6sh5\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (291a518)\nconst valuesByLocaleId={BhHP4qPtR:{v0:\"Ombrine — صالون الإطلالات\",v1:\"Ombrine دار تعرض ملابسها كما يعلّق المعرض صوره: اثنتا عشرة إطلالة على جدار، منسوجة في بييلا ومصنوعة في إيطاليا.\"},Dsrf7FKHb:{v0:\"Ombrine — салон образов\",v1:\"Ombrine — дом, который показывает одежду так, как галерея развешивает фотографии: двенадцать образов на стене, ткань из Бьеллы, сделано в Италии.\"},GE6WQc3PN:{v0:\"Ombrine — 造型沙龙\",v1:\"Ombrine 以画廊悬挂照片的方式呈现服装:墙上十二套造型,面料织于比耶拉,意大利制造。\"},pkZ_IN3DJ:{v0:\"Ombrine — un salon de silhouettes\",v1:\"Ombrine est une maison qui montre ses v\\xeatements comme une galerie accroche des photographies : douze silhouettes sur un mur, tiss\\xe9es \\xe0 Biella et confectionn\\xe9es en Italie.\"},wAbh9Tgep:{v0:\"Ombrine — un sal\\xf3n de looks\",v1:\"Ombrine es una maison que muestra su ropa como una galer\\xeda cuelga fotograf\\xedas: doce looks en una pared, tejidos en Biella y hechos en Italia.\"}};function getLocalizedValue(key,locale){while(locale){const values=valuesByLocaleId[locale.id];if(values){const value=values[key];if(value)return value;}locale=locale.fallback;}}export default function metadata(params,activeLocale){return{description:getLocalizedValue(\"v1\",activeLocale)??\"Ombrine is a maison that shows its clothes the way a gallery hangs photographs: twelve looks on a wall, woven in Biella and made in Italy.\",favicon:\"https://framerusercontent.com/assets/v91eg0bv6tXOgeCwLf6WTNa3RY.svg\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/ChyHndE2Z5J4xo7nu0ZlT7cvTug.png\",title:getLocalizedValue(\"v0\",activeLocale)??\"Ombrine — a salon of looks\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}