{"version":3,"file":"shared-lib.DfIFpTPo.mjs","names":["n","__esmMin","init_jsx_runtime","c","motion","init_framer_motion_DbYmcygs","addPropertyControls","RenderTarget","init_framer_DS5RHCUB","ControlType","velocityPerSecond","e","t","clamp","noopReturn","init_index_es","steps","init_index_es$1","i","o","Grain","props","keyframesX","keyframesY","isCanvas","containerStyle","init_Grain","metadata","init_siteMetadata"],"sources":["https:/ga.jspm.io/npm:@motionone/utils@10.14.0/dist/index.es.js","https:/ga.jspm.io/npm:@motionone/easing@10.13.1/dist/index.es.js","https:/framerusercontent.com/modules/cKGD16u2MGB7MfqfVXFp/wiztTCbXokZrMicHAmZc/Grain.js","https:/framerusercontent.com/modules/5caORpTEN7Ubn0RH2L8f/FVvlftMHep6a6tiqHid7/siteMetadata.js"],"sourcesContent":["function addUniqueItem(t,e){-1===t.indexOf(e)&&t.push(e)}function removeItem(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const clamp=(t,e,n)=>Math.min(Math.max(n,t),e);const t={duration:.3,delay:0,endDelay:0,repeat:0,easing:\"ease\"};const isNumber=t=>\"number\"===typeof t;const isEasingList=t=>Array.isArray(t)&&!isNumber(t[0]);const wrap=(t,e,n)=>{const o=e-t;return((n-t)%o+o)%o+t};function getEasingForSegment(t,e){return isEasingList(t)?t[wrap(0,t.length,e)]:t}const mix=(t,e,n)=>-n*t+n*e+t;const noop=()=>{};const noopReturn=t=>t;const progress=(t,e,n)=>e-t===0?1:(n-t)/(e-t);function fillOffset(t,e){const n=t[t.length-1];for(let o=1;o<=e;o++){const s=progress(0,e,o);t.push(mix(n,1,s))}}function defaultOffset(t){const e=[0];fillOffset(e,t-1);return e}function interpolate(t,e=defaultOffset(t.length),n=noopReturn){const o=t.length;const s=o-e.length;s>0&&fillOffset(e,s);return s=>{let f=0;for(;f<o-2;f++)if(s<e[f+1])break;let r=clamp(0,1,progress(e[f],e[f+1],s));const c=getEasingForSegment(n,f);r=c(r);return mix(t[f],t[f+1],r)}}const isCubicBezier=t=>Array.isArray(t)&&isNumber(t[0]);const isEasingGenerator=t=>\"object\"===typeof t&&Boolean(t.createAnimation);const isFunction=t=>\"function\"===typeof t;const isString=t=>\"string\"===typeof t;const e={ms:t=>1e3*t,s:t=>t/1e3};\n/*\n  Convert velocity into velocity per second\n\n  @param [number]: Unit per frame\n  @param [number]: Frame duration in ms\n*/function velocityPerSecond(t,e){return e?t*(1e3/e):0}export{addUniqueItem,clamp,defaultOffset,t as defaults,fillOffset,getEasingForSegment,interpolate,isCubicBezier,isEasingGenerator,isEasingList,isFunction,isNumber,isString,mix,noop,noopReturn,progress,removeItem,e as time,velocityPerSecond,wrap};\n\n//# sourceMappingURL=index.es.js.map","import{noopReturn as t,clamp as n}from\"@motionone/utils\";const calcBezier=(t,n,e)=>(((1-3*e+3*n)*t+(3*e-6*n))*t+3*n)*t;const e=1e-7;const i=12;function binarySubdivide(t,n,o,r,c){let u;let a;let s=0;do{a=n+(o-n)/2;u=calcBezier(a,r,c)-t;u>0?o=a:n=a}while(Math.abs(u)>e&&++s<i);return a}function cubicBezier(n,e,i,o){if(n===e&&i===o)return t;const getTForX=t=>binarySubdivide(t,0,1,n,i);return t=>0===t||1===t?t:calcBezier(getTForX(t),e,o)}const steps=(t,e=\"end\")=>i=>{i=\"end\"===e?Math.min(i,.999):Math.max(i,.001);const o=i*t;const r=\"end\"===e?Math.floor(o):Math.ceil(o);return n(0,1,r/t)};export{cubicBezier,steps};\n\n//# sourceMappingURL=index.es.js.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{motion}from\"framer-motion\";import{steps}from\"@motionone/easing\";/**\n * @framerIntrinsicWidth 100\n * @framerIntrinsicHeight 100\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */ export default function Grain(props){const{opacity,style}=props;const keyframesX=[\"0%\",\"-5%\",\"-15%\",\"7%\",\"-5%\",\"-15%\",\"15%\",\"0%\",\"3%\",\"-10%\",];const keyframesY=[\"0%\",\"-10%\",\"5%\",\"-25%\",\"25%\",\"10%\",\"0%\",\"15%\",\"35%\",\"10%\",];const isCanvas=RenderTarget.current()===RenderTarget.canvas;return /*#__PURE__*/ _jsx(\"div\",{style:{width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"hidden\"},children:/*#__PURE__*/ _jsx(motion.div,{style:{...containerStyle,opacity:opacity,inset:isCanvas?0:\"-200%\",width:isCanvas?\"100%\":\"400%\",height:isCanvas?\"100%\":\"400%\",position:\"absolute\"},animate:!isCanvas&&{x:keyframesX,y:keyframesY},transition:{ease:steps(10,\"start\"),repeat:Infinity,duration:8}})});};Grain.defaultProps={opacity:.5};addPropertyControls(Grain,{opacity:{title:\"Opacity\",type:ControlType.Number,step:.1,displayStepper:true,max:1,min:0}});const containerStyle={backgroundSize:\"256px 256px\",backgroundRepeat:\"repeat\",background:\"url('https://framerusercontent.com/images/rR6HYXBrMmX4cRpXfXUOvpvpB0.png')\"};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Grain\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"100\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\",\"framerIntrinsicWidth\":\"100\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Grain.map","// Generated by Framer (39331b4)\nexport default function metadata(params,activeLocale){return{description:\"Capture your special day with cinematic elegance! Based near the Amalfi Coast, we create stunning wedding films that tell your unique love story. With breathtaking backdrops and heartfelt moments, our videos turn memories into timeless treasures.\",favicon:\"https://framerusercontent.com/assets/PRgV1BE2Rl9C9lABMDTpFlae3dA.png\",robots:\"max-image-preview:large\",title:\"Feelmage Films\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"A,qNAME,SAASU,EAAkB,EAAE,EAAE,CAAC,OAAOC,EAAK,IAAIA,EAAPC,EAAU,CAAC,C,wCAN2E,GAAO,EAAE,EAAE,IAAI,KAAK,IAAI,KAAK,IAAI,EAAEA,CAAC,EAAED,CAAC,EAA+V,EAAW,GAAGC,EAAmtB,EAAE,CAAC,GAAG,GAAG,IAAIA,EAAE,EAAE,GAAGA,EAAE,GAAG,C,+CCAr0B,GAAO,EAAE,EAAE,QAAQ,GAAG,CAAC,EAAUD,IAAR,MAAU,KAAK,IAAIO,EAAE,IAAI,EAAE,KAAK,IAAIA,EAAE,IAAI,EAAE,IAAMC,EAAED,EAAEN,EAA+C,OAAOZ,EAAE,EAAE,GAAxCW,IAAR,MAAU,KAAK,MAAMQ,CAAC,EAAE,KAAK,KAAKA,CAAC,GAAiBP,CAAC,CAAC,C,OCOvkB,SAAwBQ,EAAM,EAAM,CAAC,GAAK,CAAC,UAAQ,SAAOC,EAAYC,EAAW,CAAC,KAAK,MAAM,OAAO,KAAK,MAAM,OAAO,MAAM,KAAK,KAAK,MAAO,EAAQC,EAAW,CAAC,KAAK,OAAO,KAAK,OAAO,MAAM,MAAM,KAAK,MAAM,MAAM,KAAM,EAAQC,EAASjB,EAAa,QAAQ,IAAIA,EAAa,OAAO,MAAqB,gBAAK,MAAM,CAAC,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,SAAS,WAAW,SAAS,QAAQ,EAAE,SAAuB,gBAAKH,EAAO,IAAI,CAAC,MAAM,CAAC,GAAGqB,EAAuB,UAAQ,MAAMD,EAAS,EAAE,QAAQ,MAAMA,EAAS,OAAO,OAAO,OAAOA,EAAS,OAAO,OAAO,SAAS,UAAU,EAAE,QAAQ,CAACA,GAAU,CAAC,EAAEF,EAAW,EAAEC,CAAU,EAAE,WAAW,CAAC,KAAKP,EAAM,GAAG,OAAO,EAAE,OAAO,IAAS,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,C,oDAAE,EAAM,aAAa,CAAC,QAAQ,EAAE,EAAEV,EAAoBc,EAAM,CAAC,QAAQ,CAAC,MAAM,UAAU,KAAKX,EAAY,OAAO,KAAK,GAAG,eAAe,GAAK,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAQ,EAAe,CAAC,eAAe,cAAc,iBAAiB,SAAS,WAAW,4EAA4E,C,OCNj/B,SAAwBkB,EAAS,EAAO,EAAa,CAAC,MAAM,CAAC,YAAY,yPAAyP,QAAQ,uEAAuE,OAAO,0BAA0B,MAAM,gBAAgB,CAAE,C"}