motion-plus-vue 1.7.0 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),i=require("motion-v"),Y=require("motion-plus-dom");function rt(o,{locales:t,format:n},a,s){const c=new Intl.NumberFormat(t,n).formatToParts(Number(o));a&&c.unshift({type:"prefix",value:a}),s&&c.push({type:"suffix",value:s});const l=[],p=[],y=[],m=[],u={},f=v=>`${v}:${u[v]=(u[v]??-1)+1}`;let d="",I=!1,x=!1,g=0;for(const v of c){d+=v.value;const h=v.type==="minusSign"||v.type==="plusSign"?"sign":v.type;switch(h){case"integer":I=!0,p.push(...v.value.split("").map(L=>({type:h,value:parseInt(L)})));break;case"group":p.push({type:h,value:v.value});break;case"decimal":x=!0,y.push({type:h,value:v.value,key:f(h),originalIndex:g++});break;case"fraction":y.push(...v.value.split("").map(L=>({type:h,value:parseInt(L),key:f(h),originalIndex:g++})));break;default:(I||x?m:l).push({type:h,value:v.value,key:f(h),originalIndex:g++})}}const w=[];for(let v=p.length-1;v>=0;v--){const h=f(p[v].type);w.unshift({...p[v],key:h,originalIndex:v})}return{pre:l,integer:w,fraction:y,post:m,formatted:d}}const[it,st]=i.createContext("SectionContext");function Xe(){const o={current:!0};return e.onMounted(()=>{o.current=!1}),o}function ye(o){const{width:t,fontSize:n}=getComputedStyle(o);return`${parseFloat(t)/parseFloat(n)}em`}const _="var(--mask-height, 0.15em)",ve="var(--mask-width, 0.5em)",H=`calc(${ve} / var(--invert-x, 1))`,te="#000 0, transparent 71%",lt=`linear-gradient(to right, transparent 0, #000 ${H}, #000 calc(100% - ${H}), transparent),linear-gradient(to bottom, transparent 0, #000 ${_}, #000 calc(100% - ${_}), transparent 100%),radial-gradient(at bottom right, ${te}),radial-gradient(at bottom left, ${te}), radial-gradient(at top left, ${te}), radial-gradient(at top right, ${te})`,ut=`100% calc(100% - ${_} * 2),calc(100% - ${H} * 2) 100%,${H} ${_},${H} ${_},${H} ${_},${H} ${_}`;i.addScaleCorrector({"--invert-x":{correct:(o,{treeScale:t,projectionDelta:n})=>n.x.scale*t.x}});const $e={display:"flex",flexDirection:"column",alignItems:"center",position:"absolute",width:"100%"};function Ye(o){const t=e.ref();function n(s){t.value=s==null?void 0:s.$el}e.watch(()=>o.isPresent,s=>{var r;t.value&&((r=i.mountedStates.get(t.value))==null||r.setActive("exit",!s))});function a(s){var r;s.detail.isExit&&!o.isPresent&&((r=o.onRemove)==null||r.call(o,o.partKey,s.target))}return{root:t,getRoot:n,handleComplete:a}}const ct=e.defineComponent({__name:"NumberSymbol",props:{partKey:{},type:{},value:{},isPresent:{type:Boolean},onRemove:{type:Function},style:{},layoutDependency:{},preInitial:{type:Boolean}},setup(o){const t=o,{justify:n}=it(),{getRoot:a,handleComplete:s}=Ye(t);return(r,c)=>(e.openBlock(),e.createBlock(e.unref(i.motion).span,{ref:e.unref(a),layout:"position","layout-dependency":r.layoutDependency,"data-state":r.isPresent?void 0:"exiting",style:e.normalizeStyle({display:"inline-flex",justifyContent:e.unref(n),padding:`calc(${e.unref(_)}/2) 0`,position:"relative",pointerEvents:r.isPresent?void 0:"none"}),"aria-hidden":!r.isPresent,onMotioncomplete:e.unref(s)},{default:e.withCtx(()=>[e.createVNode(e.unref(i.AnimatePresence),{mode:"popLayout","anchor-x":e.unref(n),initial:r.preInitial},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(i.motion).span,{key:r.value,layout:e.unref(n)==="right"?"position":!1,"layout-dependency":r.layoutDependency,initial:{opacity:0,left:e.unref(n)==="right"&&r.preInitial===void 0?"-100%":void 0},animate:{opacity:[null,1],left:0},exit:{opacity:[null,0],transition:{opacity:{duration:.4}}},style:{display:"inline-block",whiteSpace:"pre",position:"relative"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value),1)]),_:1},8,["layout","layout-dependency","initial"]))]),_:1},8,["anchor-x","initial"])]),_:1},8,["layout-dependency","data-state","style","aria-hidden","onMotioncomplete"]))}}),ft=new WeakMap,dt=e.defineComponent({__name:"NumberDigit",props:{value:{},initialValue:{default:void 0},isPresent:{type:Boolean},partKey:{},onRemove:{},style:{},layoutDependency:{}},setup(o){const t=o,n=t.initialValue??t.value,a=Xe(),s=i.useMotionConfig(),r=e.ref(),c=e.ref(Array(10).fill(null)),l=e.ref(),{getRoot:p,handleComplete:y,root:m}=Ye(t);let u=n;const f=e.ref(n);e.watch([()=>t.value,()=>t.isPresent],([g,w])=>{if(!w)return f.value=0;if(a.current)return e.nextTick(()=>{f.value=g});f.value=g},{immediate:!0});function d(g){var L;if(!r.value||g===u)return;const w=r.value.getBoundingClientRect(),v=(L=m.value)==null?void 0:L.getBoundingClientRect(),h=w.height*(g-u)+(w.top-(v?v.top||0:w.top));i.animate(r.value,{y:[h,0]},s.value.transition)}function I(g){if(a.current&&n===g||!c.value[g])return;const w=ye(c.value[g]);m.value&&(ft.set(m.value,w),m.value.style.width=w),l.value=w}e.watch(f,g=>{I(g)},{immediate:!0,flush:"sync"}),e.watch(f,async(g,w,v)=>{await e.nextTick(),d(g),v(()=>{u=g})},{immediate:!0,flush:"sync"});function x(g){return()=>e.createVNode("span",{key:g,style:{display:"inline-block",padding:`calc(${_}/2) 0`},ref:w=>{c.value[g]=w}},[g])}return(g,w)=>(e.openBlock(),e.createBlock(e.unref(i.motion).span,{ref:e.unref(p),layout:"position","layout-dependency":g.layoutDependency,"data-state":g.isPresent?void 0:"exiting","data-key":g.partKey,style:e.normalizeStyle({display:"inline-flex",justifyContent:"center",width:l.value,pointerEvents:g.isPresent?void 0:"none"}),"aria-hidden":!g.isPresent,onMotioncomplete:e.unref(y)},{default:e.withCtx(()=>[e.createElementVNode("span",{ref_key:"scope",ref:r,style:{display:"inline-flex",justifyContent:"center",flexDirection:"column",alignItems:"center",position:"relative"}},[f.value!==0?(e.openBlock(),e.createElementBlock("span",{key:0,style:e.normalizeStyle({...e.unref($e),bottom:"100%",left:0})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,v=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x(v-1)),{key:v-1}))),128))],4)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x(f.value)))),f.value!==9?(e.openBlock(),e.createElementBlock("span",{key:1,style:e.normalizeStyle({...e.unref($e),top:"100%",left:0})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(9-f.value,v=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x(f.value+v)),{key:f.value+v}))),128))],4)):e.createCommentVNode("",!0)],512)]),_:1},8,["layout-dependency","data-state","data-key","style","aria-hidden","onMotioncomplete"]))}}),ne=e.defineComponent({__name:"NumberSection",props:{parts:{},justify:{default:"left"},mode:{},name:{},style:{},layoutDependency:{}},setup(o){var m;const t=o,n=e.ref(),a=i.useDomRef(),s=e.ref(),r=Xe(),c=e.ref(t.parts);let l=t.name==="pre"&&!((m=t.parts)!=null&&m.length)?void 0:!1;e.watch(()=>t.parts,u=>{const f=new Map(u.map(x=>[x.key,{...x,isPresent:!0}])),d=c.value.filter(x=>!f.get(x.key)).map(x=>({...x,isPresent:!1})),I=u.sort((x,g)=>x.originalIndex-g.originalIndex);c.value=d.concat(I)},{flush:"pre"}),e.watch(()=>{var u;return(u=t.parts)==null?void 0:u.map(f=>f.value).join("")},async(u,f)=>{if(await e.nextTick(),l=!1,!s.value)return;if(r.current){a.value&&(a.value.style.width=ye(s.value));return}const d=Array.from(s.value.children).map(x=>{if(x instanceof HTMLElement&&x.dataset.state==="exiting"){const g=x.nextSibling;return x.remove(),()=>{s.value&&s.value.insertBefore(x,g)}}}),I=ye(s.value);n.value=I;for(let x=d.length-1;x>=0;x--){const g=d[x];g&&g()}},{flush:"post"});const p=e.toRef(t,"justify");st({justify:p});function y(u,f){var d;c.value=c.value.filter(I=>I.key!==u),(d=f==null?void 0:f.parentElement)==null||d.removeChild(f)}return(u,f)=>(e.openBlock(),e.createBlock(e.unref(i.motion).span,{ref:e.unref(a),class:e.normalizeClass(`number-section-${u.name}`),style:e.normalizeStyle({...u.style,display:"inline-flex",justifyContent:p.value,width:n.value}),layout:"position","layout-dependency":u.layoutDependency},{default:e.withCtx(()=>[e.createElementVNode("span",{ref_key:"measuredRef",ref:s,style:{display:"inline-flex",justifyContent:"inherit",position:"relative"}},[f[0]||(f[0]=e.createTextVNode(" ​ ")),e.createVNode(e.unref(i.AnimatePresence),{mode:u.mode,"anchor-x":p.value,initial:!1},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,d=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d.key},[d.type==="integer"||d.type==="fraction"?(e.openBlock(),e.createBlock(dt,{key:d.key,"part-key":d.key,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},value:d.value,"is-present":d.isPresent??!0,"initial-value":e.unref(r).current?void 0:0,"layout-dependency":u.layoutDependency,onRemove:y},null,8,["part-key","value","is-present","initial-value","layout-dependency"])):(e.openBlock(),e.createBlock(ct,{key:d.type==="literal"?`${d.key}:${d.value}`:d.key,type:d.type,"part-key":d.key,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},value:d.value,"is-present":d.isPresent??!0,"pre-initial":e.unref(l),"layout-dependency":u.layoutDependency,onRemove:y},null,8,["type","part-key","value","is-present","pre-initial","layout-dependency"]))],64))),128))]),_:1},8,["mode","anchor-x"])],512)]),_:1},8,["class","style","layout-dependency"]))}}),pt=e.defineComponent({__name:"Mask",props:{layoutDependency:{}},setup(o){return(t,n)=>(e.openBlock(),e.createBlock(e.unref(i.motion).span,{layout:"","layout-dependency":t.layoutDependency,"aria-hidden":!0,style:e.normalizeStyle({display:"inline-flex","--invert-x":1,margin:`0 calc(-1*${e.unref(ve)})`,padding:`calc(${e.unref(_)}/2) ${e.unref(ve)}`,position:"relative",zIndex:-1,overflow:"clip",webkitMaskImage:e.unref(lt),webkitMaskSize:e.unref(ut),webkitMaskPosition:"center, center, top left, top right, bottom right, bottom left",webkitMaskRepeat:"no-repeat"})},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},8,["layout-dependency","style"]))}}),mt=e.defineComponent({name:"AnimateNumber",inheritAttrs:!1,__name:"AnimateNumber",props:{locales:{},format:{},transition:{},suffix:{},prefix:{},value:{},style:{},layoutDependency:{}},setup(o){const t={opacity:{duration:1,ease:i.easeOut},layout:{type:"spring",duration:1,bounce:0},y:{type:"spring",duration:1,bounce:0}},n=o,a=e.computed(()=>{const p=n.value;return rt(p,{locales:n.locales,format:n.format},n.prefix,n.suffix)}),s=i.useMotionConfig(),r=e.computed(()=>n.transition??s.value.transition??t);function c(){const{format:p,prefix:y,suffix:m,locales:u,value:f,layoutDependency:d,...I}=n;return I}const l=e.computed(()=>{if(n.layoutDependency!==void 0)return{layoutDependency:n.layoutDependency,value:n.value}});return(p,y)=>(e.openBlock(),e.createBlock(e.unref(i.LayoutGroup),null,{default:e.withCtx(()=>[e.createVNode(e.unref(i.MotionConfig),{transition:r.value},{default:e.withCtx(()=>[e.createVNode(e.unref(i.motion).div,e.mergeProps({...p.$attrs,...c()},{layout:"","layout-dependency":l.value,style:{lineHeight:"1",...p.style,display:"inline-flex",isolation:"isolate",whiteSpace:"nowrap"}}),{default:e.withCtx(()=>[e.createVNode(e.unref(i.motion).div,{layout:"","layout-dependency":l.value,"aria-label":a.value.formatted,style:{display:"inline-flex",direction:"ltr",isolation:"isolate",position:"relative",zIndex:-1}},{default:e.withCtx(()=>[e.createVNode(ne,{"layout-dependency":l.value,style:e.normalizeStyle({padding:`calc(${e.unref(_)}/2) 0`}),"aria-hidden":!0,justify:"right",mode:"popLayout",parts:a.value.pre,name:"pre"},null,8,["layout-dependency","style","parts"]),e.createVNode(pt,{"layout-dependency":l.value},{default:e.withCtx(()=>[e.createVNode(ne,{"layout-dependency":l.value,justify:"right",parts:a.value.integer,name:"integer",mode:"popLayout"},null,8,["layout-dependency","parts"]),e.createVNode(ne,{"layout-dependency":l.value,layout:"position",parts:a.value.fraction,name:"fraction",mode:"popLayout"},null,8,["layout-dependency","parts"])]),_:1},8,["layout-dependency"]),e.createVNode(ne,{"layout-dependency":l.value,style:e.normalizeStyle({padding:`calc(${e.unref(_)}/2) 0`}),"aria-hidden":!0,layout:"position",mode:"popLayout",parts:a.value.post,name:"post"},null,8,["layout-dependency","style","parts"])]),_:1},8,["layout-dependency","aria-label"])]),_:1},16,["layout-dependency","style"])]),_:1},8,["transition"])]),_:1}))}}),gt=mt;function yt(){const o=document.createElement("style");return o.textContent=`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),s=require("motion-v"),Y=require("motion-plus-dom");function it(o,{locales:t,format:n},a,l){const c=new Intl.NumberFormat(t,n).formatToParts(Number(o));a&&c.unshift({type:"prefix",value:a}),l&&c.push({type:"suffix",value:l});const u=[],h=[],p=[],f=[],i={},v=d=>`${d}:${i[d]=(i[d]??-1)+1}`;let g="",x=!1,b=!1,I=0;for(const d of c){g+=d.value;const m=d.type==="minusSign"||d.type==="plusSign"?"sign":d.type;switch(m){case"integer":x=!0,h.push(...d.value.split("").map(S=>({type:m,value:parseInt(S)})));break;case"group":h.push({type:m,value:d.value});break;case"decimal":b=!0,p.push({type:m,value:d.value,key:v(m),originalIndex:I++});break;case"fraction":p.push(...d.value.split("").map(S=>({type:m,value:parseInt(S),key:v(m),originalIndex:I++})));break;default:(x||b?f:u).push({type:m,value:d.value,key:v(m),originalIndex:I++})}}const w=[];for(let d=h.length-1;d>=0;d--){const m=v(h[d].type);w.unshift({...h[d],key:m,originalIndex:d})}return{pre:u,integer:w,fraction:p,post:f,formatted:g}}const[st,lt]=s.createContext("SectionContext");function Xe(){const o={current:!0};return e.onMounted(()=>{o.current=!1}),o}function ae(o){const{width:t,fontSize:n}=getComputedStyle(o);return`${parseFloat(t)/parseFloat(n)}em`}const Ye=new WeakMap,A="var(--mask-height, 0.15em)",he="var(--mask-width, 0.5em)",W=`calc(${he} / var(--invert-x, 1))`,te="#000 0, transparent 71%",ut=`linear-gradient(to right, transparent 0, #000 ${W}, #000 calc(100% - ${W}), transparent),linear-gradient(to bottom, transparent 0, #000 ${A}, #000 calc(100% - ${A}), transparent 100%),radial-gradient(at bottom right, ${te}),radial-gradient(at bottom left, ${te}), radial-gradient(at top left, ${te}), radial-gradient(at top right, ${te})`,ct=`100% calc(100% - ${A} * 2),calc(100% - ${W} * 2) 100%,${W} ${A},${W} ${A},${W} ${A},${W} ${A}`;s.addScaleCorrector({"--invert-x":{correct:(o,{treeScale:t,projectionDelta:n})=>n.x.scale*t.x}});const $e={display:"flex",flexDirection:"column",alignItems:"center",position:"absolute",width:"100%"};function Ke(o){const t=e.ref();function n(l){t.value=l==null?void 0:l.$el}e.watch(()=>o.isPresent,l=>{var r;t.value&&((r=s.mountedStates.get(t.value))==null||r.setActive("exit",!l))});function a(){var l;!o.isPresent&&t.value&&((l=o.onRemove)==null||l.call(o,o.partKey,t.value))}return{root:t,getRoot:n,handleComplete:a}}const ft=e.defineComponent({__name:"NumberSymbol",props:{partKey:{},type:{},value:{},isPresent:{type:Boolean},onRemove:{type:Function},style:{},layoutDependency:{}},setup(o){const t=o,{justify:n}=st(),{getRoot:a,handleComplete:l}=Ke(t);return(r,c)=>(e.openBlock(),e.createBlock(e.unref(s.motion).span,{ref:e.unref(a),"data-state":r.isPresent?void 0:"exiting",style:e.normalizeStyle({display:"inline-flex",justifyContent:e.unref(n),padding:`calc(${e.unref(A)}/2) 0`,position:"relative",pointerEvents:r.isPresent?void 0:"none"}),"aria-hidden":!r.isPresent,onAnimationComplete:e.unref(l)},{default:e.withCtx(()=>[e.createVNode(e.unref(s.AnimatePresence),{mode:"popLayout","anchor-x":e.unref(n),initial:!1},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(s.motion).span,{key:r.value,initial:{opacity:0},animate:{opacity:[null,1]},exit:{opacity:[null,0]},style:{display:"inline-block",whiteSpace:"pre"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value),1)]),_:1}))]),_:1},8,["anchor-x"])]),_:1},8,["data-state","style","aria-hidden","onAnimationComplete"]))}}),dt=e.defineComponent({__name:"NumberDigit",props:{value:{},initialValue:{default:void 0},isPresent:{type:Boolean},partKey:{},onRemove:{},style:{},layoutDependency:{},trend:{}},setup(o){const t=o;function n(d,m){return(d%m+m)%m}const a=t.initialValue??t.value,l=Xe(),r=s.useMotionConfig(),c=e.ref(),u=e.ref(Array(10).fill(null)),{getRoot:h,handleComplete:p,root:f}=Ke(t);let i=a;e.onMounted(()=>{c.value&&u.value[a]&&(c.value.style.width=ae(u.value[a]))});const v=e.ref(a);e.watch([()=>t.value,()=>t.isPresent],([d,m])=>{if(!m)return v.value=0;if(l.current)return e.nextTick(()=>{v.value=d});v.value=d},{immediate:!0});function g(d){var V;if(!c.value||d===i)return;const m=c.value.getBoundingClientRect(),S=(V=f.value)==null?void 0:V.getBoundingClientRect(),T=t.trend??0;let E=d-i;T>0&&d<i?E=10-i+d:T<0&&d>i&&(E=d-10-i);const N=m.height*E+(m.top-(S?S.top||0:m.top));s.animate(c.value,{y:[N,0]},r.value.transition)}function x(d){if(l.current&&a===d||!u.value[d])return;const m=ae(u.value[d]);f.value&&(Ye.set(f.value,m),s.animate(f.value,{width:m},r.value.transition))}e.watch(v,d=>{x(d)},{immediate:!0,flush:"sync"}),e.watch(v,async(d,m,S)=>{await e.nextTick(),g(d),S(()=>{i=d})},{immediate:!0,flush:"sync"});function b(d){return()=>e.createVNode("span",{key:d,style:{display:"inline-block",padding:`calc(${A}/2) 0`},ref:m=>{u.value[d]=m}},[d])}const I=e.computed(()=>{const d=[];for(let m=9;m>=1;m--)d.push(n(v.value-m,10));return d}),w=e.computed(()=>{const d=[];for(let m=1;m<=9;m++)d.push(n(v.value+m,10));return d});return(d,m)=>(e.openBlock(),e.createBlock(e.unref(s.motion).span,{ref:e.unref(h),"data-state":d.isPresent?void 0:"exiting","data-key":d.partKey,style:e.normalizeStyle({display:"inline-flex",justifyContent:"center",pointerEvents:d.isPresent?void 0:"none"}),"aria-hidden":!d.isPresent,onAnimationComplete:e.unref(p)},{default:e.withCtx(()=>[e.createElementVNode("span",{ref_key:"scope",ref:c,style:{display:"inline-flex",justifyContent:"center",flexDirection:"column",alignItems:"center",position:"relative"}},[I.value.length>0?(e.openBlock(),e.createElementBlock("span",{key:0,style:e.normalizeStyle({...e.unref($e),bottom:"100%",left:0})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(I.value,S=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b(S)),{key:S}))),128))],4)):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b(v.value)))),w.value.length>0?(e.openBlock(),e.createElementBlock("span",{key:1,style:e.normalizeStyle({...e.unref($e),top:"100%",left:0})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,S=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b(S)),{key:S}))),128))],4)):e.createCommentVNode("",!0)],512)]),_:1},8,["data-state","data-key","style","aria-hidden","onAnimationComplete"]))}}),ne=e.defineComponent({__name:"NumberSection",props:{parts:{},justify:{default:"left"},mode:{},name:{},style:{},trend:{}},setup(o){const t=o,n=e.ref(),a=e.ref(),l=Xe(),r=s.useMotionConfig(),c=e.ref(t.parts);e.watch(()=>t.parts,p=>{const f=new Map(p.map(g=>[g.key,{...g,isPresent:!0}])),i=c.value.filter(g=>!f.get(g.key)).map(g=>({...g,isPresent:!1})),v=p.sort((g,x)=>g.originalIndex-x.originalIndex);c.value=i.concat(v)},{flush:"pre"}),e.onMounted(()=>{n.value&&a.value&&(n.value.style.width=ae(a.value))}),e.watch(()=>{var p;return(p=t.parts)==null?void 0:p.map(f=>f.value).join("")},async(p,f)=>{if(await e.nextTick(),!a.value)return;const i=Array.from(a.value.children).map(g=>{if(!(g instanceof HTMLElement))return;if(g.dataset.state==="exiting"){const I=g.nextSibling;return g.remove(),()=>{a.value&&a.value.insertBefore(g,I)}}const x=Ye.get(g);if(!x)return;const b=g.style.width;return g.style.width=x,()=>{g.style.width=b}}),v=ae(a.value);for(let g=i.length-1;g>=0;g--){const x=i[g];x&&x()}if(n.value){const g=n.value.style.width||getComputedStyle(n.value).width;s.animate(n.value,{width:[g,v]},r.value.transition)}},{flush:"post"});const u=e.toRef(t,"justify");lt({justify:u});function h(p,f){var i;c.value=c.value.filter(v=>v.key!==p),(i=f==null?void 0:f.parentElement)==null||i.removeChild(f)}return(p,f)=>(e.openBlock(),e.createElementBlock("span",{ref_key:"rootRef",ref:n,class:e.normalizeClass(`number-section-${p.name}`),style:e.normalizeStyle({...p.style,display:"inline-flex",justifyContent:u.value})},[e.createElementVNode("span",{ref_key:"measuredRef",ref:a,style:{display:"inline-flex",justifyContent:"inherit",position:"relative"}},[f[0]||(f[0]=e.createTextVNode(" ​ ")),e.createVNode(e.unref(s.AnimatePresence),{mode:p.mode,"anchor-x":u.value,initial:!1},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,i=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i.key},[i.type==="integer"||i.type==="fraction"?(e.openBlock(),e.createBlock(dt,{key:i.key,"part-key":i.key,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},value:i.value,"is-present":i.isPresent??!0,"initial-value":e.unref(l).current?void 0:0,trend:p.trend,onRemove:h},null,8,["part-key","value","is-present","initial-value","trend"])):(e.openBlock(),e.createBlock(ft,{key:i.type==="literal"?`${i.key}:${i.value}`:i.key,type:i.type,"part-key":i.key,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},value:i.value,"is-present":i.isPresent??!0,onRemove:h},null,8,["type","part-key","value","is-present"]))],64))),128))]),_:1},8,["mode","anchor-x"])],512)],6))}}),pt=e.defineComponent({__name:"Mask",setup(o){return(t,n)=>(e.openBlock(),e.createElementBlock("span",{"aria-hidden":!0,style:e.normalizeStyle({display:"inline-flex",margin:`0 calc(-1*${e.unref(he)})`,padding:`calc(${e.unref(A)}/2) ${e.unref(he)}`,position:"relative",zIndex:-1,overflow:"clip",webkitMaskImage:e.unref(ut),webkitMaskSize:e.unref(ct),webkitMaskPosition:"center, center, top left, top right, bottom right, bottom left",webkitMaskRepeat:"no-repeat"})},[e.renderSlot(t.$slots,"default")],4))}}),mt=["aria-label"],gt=e.defineComponent({name:"AnimateNumber",inheritAttrs:!1,__name:"AnimateNumber",props:{locales:{},format:{},transition:{},suffix:{},prefix:{},value:{},style:{},trend:{type:[Number,Function]}},setup(o){const t={opacity:{duration:1,ease:s.easeOut},y:{type:"spring",duration:1,bounce:0},width:{type:"spring",duration:1,bounce:0}},n=o,a=e.computed(()=>{const p=n.value;return it(p,{locales:n.locales,format:n.format},n.prefix,n.suffix)});let l=typeof n.value=="string"?Number.parseFloat(n.value):Number(n.value??0);const r=e.computed(()=>{const p=typeof n.value=="string"?Number.parseFloat(n.value):Number(n.value??0),f=n.trend;let i;return typeof f=="function"?i=f(l,p):f!==void 0?i=f:i=Math.sign(p-l),l=p,i}),c=s.useMotionConfig(),u=e.computed(()=>n.transition??c.value.transition??t);function h(){const{format:p,prefix:f,suffix:i,locales:v,value:g,trend:x,...b}=n;return b}return(p,f)=>(e.openBlock(),e.createBlock(e.unref(s.MotionConfig),{transition:u.value},{default:e.withCtx(()=>[e.createVNode(e.unref(s.motion).span,e.mergeProps({...p.$attrs,...h()},{style:{lineHeight:"1",...p.style,display:"inline-flex",isolation:"isolate",whiteSpace:"nowrap"}}),{default:e.withCtx(()=>[e.createElementVNode("span",{"aria-label":a.value.formatted,style:{display:"inline-flex",direction:"ltr",isolation:"isolate",position:"relative",zIndex:-1}},[e.createVNode(ne,{style:e.normalizeStyle({padding:`calc(${e.unref(A)}/2) 0`}),"aria-hidden":!0,justify:"right",mode:"popLayout",parts:a.value.pre,name:"pre",trend:r.value},null,8,["style","parts","trend"]),e.createVNode(pt,null,{default:e.withCtx(()=>[e.createVNode(ne,{justify:"right",parts:a.value.integer,name:"integer",trend:r.value},null,8,["parts","trend"]),e.createVNode(ne,{parts:a.value.fraction,name:"fraction",trend:r.value},null,8,["parts","trend"])]),_:1}),e.createVNode(ne,{style:e.normalizeStyle({padding:`calc(${e.unref(A)}/2) 0`}),"aria-hidden":!0,mode:"popLayout",parts:a.value.post,name:"post",trend:r.value},null,8,["style","parts","trend"])],8,mt)]),_:1},16,["style"])]),_:1},8,["transition"]))}}),vt=gt;function ht(){const o=document.createElement("style");return o.textContent=`
2
2
  * {
3
3
  cursor: none !important;
4
4
  }
@@ -6,4 +6,4 @@
6
6
  [data-motion-cursor="pointer"] {
7
7
  background-color: #333;
8
8
  }
9
- `,document.head.appendChild(o),()=>{document.head.removeChild(o)}}function vt(o){e.watch(o,(t,n,a)=>{const s=t?yt():i.noop;return a(()=>{s()})},{immediate:!0,flush:"post"})}function be(o){return t=>{t.pointerType==="mouse"&&o(t)}}function Oe(o){return be(t=>{t.button===0&&o(t)})}let ae,he;function ht(){ae=i.motionValue(0),he=i.motionValue(0);let o=0,t=0;function n(){ae.set(o),he.set(t)}typeof window<"u"&&window.addEventListener("pointermove",be(a=>{o=a.clientX,t=a.clientY,i.frame.update(n)}))}function Ce(){return ae||ht(),{x:ae,y:he}}function xt(o,t){return{x:i.useTransform(()=>o.x.get()+t.value.x),y:i.useTransform(()=>o.y.get()+t.value.y)}}function wt(o){return o.closest("[data-cursor]")}function kt(o){return o.closest('a, button, input[type="button"]:not(:disabled)')}function It(o){return window.getComputedStyle(o).userSelect==="none"?null:o.closest("p, textarea:not(:disabled), input[type='text']:not(:disabled), h1, h2, h3, h4, h5, h6")}function bt(o){let t=wt(o);return t?[t.dataset.cursor,t]:(t=kt(o),t?["pointer",t]:(t=It(o),t?["text",t]:["default",null]))}let me=null,D={type:"default",isPressed:!1,fontSize:null,targetBoundingBox:null,target:null,zone:null};function Ct(o){let t=null;if("closest"in o){const n=o.closest("[data-cursor-zone]");n instanceof HTMLElement&&(t=n.dataset.cursorZone||null)}return t}function St(){if(typeof window>"u")return{onChange:()=>()=>{}};const o=new Set;function t(l){D={...D,...l},o.forEach(p=>p(D))}const n=Oe(()=>{D.isPressed||t({isPressed:!0})}),a=Oe(()=>{D.isPressed&&t({isPressed:!1})}),s=be(({target:l})=>{if(!l)return;const[p,y]=bt(l);let m=!1;const u={target:y,zone:Ct(l)};p!==D.type&&(u.type=p,m=!0),u.zone!==D.zone&&(D.zone=u.zone,m=!0);const f=p==="pointer"&&y?y.getBoundingClientRect():null;if(f!==D.targetBoundingBox&&(u.targetBoundingBox=f,m=!0),p==="text"){const{fontSize:d}=window.getComputedStyle(l),I=d?parseInt(d):null;I!==D.fontSize&&(u.fontSize=I,m=!0)}else D.fontSize&&(u.fontSize=null,m=!0);m&&t(u)});function r(){typeof window>"u"||(window.addEventListener("pointerover",s),window.addEventListener("pointerdown",n),window.addEventListener("pointerup",a))}function c(){window.removeEventListener("pointerover",s),window.removeEventListener("pointerdown",n),window.removeEventListener("pointerup",a)}return{onChange:l=>(o.size||r(),o.add(l),()=>{o.delete(l),o.size||c()})}}function Bt(){return me||(me=St()),me}function Se(){const o=e.ref({...D});return e.watch(o,()=>Bt().onChange(t=>{o.value=t}),{immediate:!0,flush:"post"}),o}let ge=null;function Tt(){const o=new Set;function t(){o.forEach(r=>r.show())}function n(){o.forEach(r=>r.hide())}function a(){document.body.addEventListener("mouseenter",t),document.body.addEventListener("mouseleave",n)}function s(){document.body.removeEventListener("mouseenter",t),document.body.removeEventListener("mouseleave",n)}return{on:r=>typeof window>"u"?i.noop:(o.size||a(),o.add(r),()=>{o.delete(r),o.size===0&&s()})}}function Lt(){return ge||(ge=Tt()),ge}function Ke(o){const t=e.ref(!0);return e.watch(t,()=>Lt().on({show:()=>{t.value||(o(),t.value=!0)},hide:()=>t.value=!1}),{immediate:!0}),t}const Ve={x:0,y:0},Pt={x:.5,y:.5},Et={duration:0},Mt={stiffness:1e3,damping:100},zt={duration:.15,ease:[.38,.12,.29,1]},Ne={magneticOptions:{morph:!0,padding:5,snap:.8}},De=17,_e=31,Re=4,$t=20;function oe(o,t,n){const a={width:(n==null?void 0:n.width)??o,height:(n==null?void 0:n.height)??t};return typeof a.width=="number"&&(a.width=`${a.width}px`),typeof a.height=="number"&&(a.height=`${a.height}px`),a}function Ot({type:o,state:t,hasChildren:n,style:a,isMagnetic:s,magneticOptions:r,matchTextSize:c}){const l=s&&t.targetBoundingBox;if(n&&!l)return oe("auto","auto",a);const{padding:p,morph:y}=r;switch(o){case"pointer":if(s&&y&&t.targetBoundingBox){const{width:m,height:u}=t.targetBoundingBox;return{width:`${m+p*2}px`,height:`${u+p*2}px`}}return oe(_e,_e,a);case"text":return c&&t.fontSize?{width:`${Re}px`,height:`${t.fontSize}px`}:oe(Re,$t,a);default:return oe(De,De,a)}}function Vt({x:o,y:t},n){const a=e.ref(o.prev!==void 0||t.prev!==void 0);return e.watch(a,()=>{if(a.value)return;const s=()=>{a.value=!0,n(),r()},r=i.pipe(o.on("change",s),t.on("change",s));return()=>r()},{immediate:!0}),a}function Nt(o,t,n){return i.useTransform(()=>i.mix(o.value.get(),t.get(),n.get()))}function Ae(o,t,n){const a=i.useSpring(0,{stiffness:600,damping:50}),s=i.useMotionValue(0),r=Nt(o,a,s);return e.watch(()=>n==null?void 0:n.value,(c,l)=>{c?(!l&&!s.isAnimating()?a.jump(c):a.set(c),i.animate(s,t.value||0)):i.animate(s,0)},{immediate:!0,flush:"sync"}),r}function Dt(o,t,n,a){const s=Ae(e.computed(()=>o.value.x),a,e.computed(()=>n.value.targetBoundingBox?n.value.targetBoundingBox.left+n.value.targetBoundingBox.width/2:void 0)),r=Ae(e.computed(()=>o.value.y),a,e.computed(()=>n.value.targetBoundingBox?n.value.targetBoundingBox.top+n.value.targetBoundingBox.height/2:void 0));return e.computed(()=>t.value?{x:s,y:r}:o.value)}const _t=e.defineComponent({name:"Cursor",inheritAttrs:!1,__name:"Cursor",props:{follow:{type:Boolean,default:!1},center:{default:({follow:o})=>o?Ve:Pt},offset:{default:()=>Ve},spring:{type:[Boolean,Object],default:({follow:o})=>o?Mt:!1},matchTextSize:{type:Boolean,default:!0},magnetic:{type:[Boolean,Object],default:!1},transition:{},variants:{},style:{},show:{type:Boolean,default:!0}},setup(o){const t=o,{offset:n,magnetic:a}=e.toRefs(t),s=i.useReducedMotion();vt(()=>!s.value&&!t.follow);const r=Ce(),c=xt(r,n),l=i.useSpring(c.x,t.spring||void 0),p=i.useSpring(c.y,t.spring||void 0),y=e.computed(()=>typeof t.magnetic=="object"?{...Ne.magneticOptions,...t.magnetic}:Ne.magneticOptions);function m(){const h=c.x.on("change",P=>{l.jump(P),h()}),L=c.y.on("change",P=>{p.jump(P),L()})}const u=Se(),f=Ke(m),d=Dt(e.computed(()=>t.spring?{x:l,y:p}:r),e.computed(()=>!!a.value),u,e.computed(()=>y.value&&y.value.snap)),I=e.useSlots(),x=e.computed(()=>{var P,z;const h=(z=(P=I.default)==null?void 0:P.call(I))==null?void 0:z.filter(V=>V.type!==Symbol.for("v-cmt"));return Ot({type:u.value.type,state:u.value,hasChildren:!!(h!=null&&h.length),isMagnetic:!!t.magnetic,style:t.style,magneticOptions:y.value,matchTextSize:t.matchTextSize})}),g=Vt(r,m);function w(h){return(L,P)=>`translate(-${h.x*100}%, -${h.y*100}%) ${P}`}function v(){const{follow:h,center:L,offset:P,spring:z,matchTextSize:V,magnetic:F,...k}=t;return k}return(h,L)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.unref(g)?(e.openBlock(),e.createBlock(e.unref(i.LayoutGroup),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(i.MotionConfig),{transition:e.unref(s)?e.unref(Et):h.transition||e.unref(zt)},{default:e.withCtx(()=>{var P,z;return[e.createVNode(e.unref(i.motion).div,e.mergeProps({layout:"","data-motion-cursor":h.follow?"follow":"pointer","data-framer-portal-id":"motion-cursor",initial:"exit",exit:"exit"},{...h.$attrs,...v()},{variants:{pressed:h.follow?{}:{scale:.9},...h.variants,default:{opacity:1,scale:1,...(P=h.variants)==null?void 0:P.default},exit:{opacity:0,scale:0,...(z=h.variants)==null?void 0:z.exit}},animate:["default",e.unref(u).type,e.unref(a)&&e.unref(u).targetBoundingBox?"magnetic":"",!e.unref(f)||!h.show?"exit":e.unref(u).isPressed?"pressed":""],"transform-template":w(h.center),style:{borderRadius:h.follow?0:20,zIndex:h.follow?99998:99999,willChange:"transform",contain:"layout",originX:h.center.x,originY:h.center.y,...h.style,width:x.value.width,height:x.value.height,x:e.unref(d).x,y:e.unref(d).y,top:0,left:0,position:"fixed",pointerEvents:"none"}}),{default:e.withCtx(()=>[e.createVNode(e.unref(i.AnimatePresence),null,{default:e.withCtx(()=>[e.renderSlot(h.$slots,"default")]),_:3})]),_:3},16,["data-motion-cursor","variants","animate","transform-template","style"])]}),_:3},8,["transition"])]),_:3})):e.createCommentVNode("",!0)]))}});function Fe(o,t,n){const a=i.useMotionValue(0),s=i.useMotionValue(0),r=i.useMotionValue(0);return e.watch(()=>n==null?void 0:n.value,c=>{if(typeof c=="number"){i.animate(r,1);const l=()=>{s.set(t*(o.get()-c))};return l(),o.on("change",l)}else i.animate(r,0)},{immediate:!0,flush:"post"}),i.useTransform(()=>i.mix(a.get(),s.get(),r.get()))}function Rt(o,t=.1){const n=Se(),a=Ce(),s=e.computed(()=>n.value.targetBoundingBox&&n.value.target===o.value),r=Fe(a.x,t,e.computed(()=>s.value?n.value.targetBoundingBox.left+n.value.targetBoundingBox.width/2:void 0)),c=Fe(a.y,t,e.computed(()=>s.value?n.value.targetBoundingBox.top+n.value.targetBoundingBox.height/2:void 0));return{x:r,y:c}}const[At,Ft]=i.createContext("TickerItemContext"),[Be,jt]=i.createContext("TickerInfo");function Ge(o,t,n,a,s){return{sign:1,direction:s,lengthProp:t,viewportLengthProp:n,paddingStartProp:a,measureItem:r=>({start:r[o],end:r[o]+r[t]}),getCumulativeInset:r=>{let c=0,l=r;for(;l;)c+=l[o],l=l.offsetParent;return c}}}const qe=Ge("offsetLeft","offsetWidth","innerWidth","paddingLeft","right"),Ht=Ge("offsetTop","offsetHeight","innerHeight","paddingTop","bottom");function je(o,t){return((t==null?void 0:t.offsetWidth)??window.innerWidth)-(o.offsetLeft+o.offsetWidth)}const Wt={...qe,sign:-1,direction:"left",paddingStartProp:"paddingRight",measureItem:(o,t)=>{const n=o.offsetWidth,a=je(o,t);return{start:a,end:a+n}},getCumulativeInset:o=>{let t=0,n=o;for(;n;)t+=je(n,n.offsetParent),n=n.offsetParent;return t}};function q(o,t){return o==="y"?Ht:t==="ltr"?qe:Wt}const xe=e.defineComponent({__name:"TickerItem",props:{offset:{},axis:{},listSize:{default:0},bounds:{},numItems:{default:0},itemIndex:{},cloneIndex:{},alignItems:{},size:{default:"auto"},safeMargin:{},reproject:{type:Boolean,default:!0}},setup(o){const t=o,{state:n}=Be(),a=e.computed(()=>q(t.axis,n.direction).sign),s=i.useTransform(()=>{if(!t.reproject)return 0;const{offset:u,bounds:f,listSize:d,safeMargin:I}=t,{start:x,end:g}=f;if(!x&&!g||!d)return 0;const w=u.get();if(w*a.value+g<=-n.inset-I)return d*a.value;if(I>0){const v=n.visibleLength-I-n.inset;if(w*a.value+f.start>=v)return-d*a.value}return 0}),r=i.useTransform(()=>{const u=t.offset.get(),f=s.get();return!t.bounds.start&&!t.bounds.end||!t.listSize?0:u*a.value+t.bounds.start+f*a.value}),c=e.computed(()=>t.cloneIndex===void 0?{"aria-hidden":!1,"aria-posinset":t.itemIndex+1,"aria-setsize":t.numItems}:{"aria-hidden":!0}),l=e.computed(()=>{const u=t.size==="fill",f=t.alignItems==="stretch"?"100%":"fit-content";return{class:t.cloneIndex===void 0?"ticker-item":"clone-item",style:{flexGrow:0,flexShrink:0,position:"relative",flexBasis:u?"100%":void 0,display:u?"grid":void 0,gridTemplateColumns:u?"1fr":void 0,gridTemplateRows:u?"1fr":void 0,minWidth:u?0:void 0,minHeight:u?0:void 0,height:t.axis==="x"?f:void 0,width:t.axis==="y"?f:void 0,x:t.axis==="x"?s:0,y:t.axis==="y"?s:0},...c.value}}),{bounds:p,itemIndex:y,cloneIndex:m}=e.toRefs(t);return Ft({offset:r,bounds:p,projection:s,itemIndex:y,cloneIndex:m,props:l}),(u,f)=>u.size==="manual"?e.renderSlot(u.$slots,"default",{key:0}):(e.openBlock(),e.createBlock(e.unref(i.motion).li,e.normalizeProps(e.mergeProps({key:1},l.value)),{default:e.withCtx(()=>[e.renderSlot(u.$slots,"default")]),_:3},16))}});function Xt(o,t,n,a,s){let r=!1;e.watch(o,(c,l,p)=>{if(!c)return;let y=!1;const m=new AbortController,u={signal:m.signal},f={...u,capture:!0},d=t.value==="x"?"scrollLeft":"scrollTop",I=t.value==="x"?"offsetLeft":"offsetTop",x=t.value==="x"?"ArrowLeft":"ArrowUp",g=t.value==="x"?"ArrowRight":"ArrowDown";let w=[],v=0;const h=async()=>{const C=w[v];C.focus(),await e.nextTick(),n.set(-C[I]),c[d]=0},L=C=>{if(C.key==="Tab"){C.preventDefault(),V();const B=Array.from(document.querySelectorAll('a, button, input, textarea, select, [tabindex]:not([tabindex="-1"]), [contenteditable="true"]')).filter(i.isHTMLElement);B.sort(Yt);const R=B[C.shiftKey?0:B.length-1],K=C.shiftKey?B.length-1:0;if(c.contains(R)){B[K].focus();return}else{const U=B.indexOf(w[v]),re=C.shiftKey?-1:1;for(let W=U;W<B.length&&W>=0;W+=re){const X=B[W];if(!c.contains(X)){X.focus();return}}}return}else C.key===x?v--:C.key===g&&v++;v=i.wrap(0,w.length,v),h()},P=()=>{r||(s(!0),r=!0,w=Array.from(c.querySelectorAll('.ticker-item a, .ticker-item button, .ticker-item input, .ticker-item textarea, .ticker-item select, .ticker-item [tabindex]:not([tabindex="-1"]), .ticker-item [contenteditable="true"]')).filter(i.isHTMLElement),v=0,h(),window.addEventListener("focus",z,f),window.addEventListener("blur",z,f),c.addEventListener("keydown",L,u))},z=C=>{(!C.target||!(C.target instanceof HTMLElement)||!c.contains(C.target))&&V()},V=()=>{r&&(r=!1,s(!1),a.value.set(n.get()),window.removeEventListener("focus",z),window.removeEventListener("blur",z),c.removeEventListener("keydown",L))},F=C=>{const{target:B}=C;i.isHTMLElement(B)&&(r||P())},k=()=>{y||(y=!0,c.addEventListener("focus",F,f),window.addEventListener("pointermove",M,u))},M=()=>{y&&(y=!1,c.removeEventListener("focus",F,!0),window.removeEventListener("pointermove",M,u))},$=C=>{const R=C.target.closest('[aria-hidden="true"]');R&&R.removeAttribute("aria-hidden")};window.addEventListener("keydown",k,u),c.addEventListener("pointerdown",$,u),p(()=>{m.abort(),V()})},{flush:"post"})}function Yt(o,t){return o.tabIndex>=1&&t.tabIndex>=1?o.tabIndex-t.tabIndex:o.tabIndex>=1&&t.tabIndex<=0?-1:t.tabIndex>=1&&o.tabIndex<=0?1:0}const He={start:0,end:0},Kt={start:"flex-start",end:"flex-end"},Gt={duration:.2,ease:"linear"},qt={type:"spring",stiffness:400,damping:40};function Ut(o){return o.end-o.start}function Ue(o){return o.length?o[o.length-1].end-o[0].start:0}function Zt(o,t,n){const a=Ue(t),s=Math.max(...t.map(Ut));let r=0,c=0;for(;c<o;)c=(a+n)*(r+1)-s,r++;return Math.max(r-1,0)}function Ze(o=[]){var n;const t=[];for(const a of o)if(a.type!==e.Comment)if(a.type===e.Fragment){const s=Array.isArray(a.children)?a.children:(n=a.children)==null?void 0:n.default();t.push(...Ze(s))}else t.push(a);return t}function we(o){var n;const t=[];for(const a of o)if(a.type==="Fragment"||a.type===e.Fragment){const s=Array.isArray(a.children)?a.children:(n=a.children)==null?void 0:n.default();t.push(...we(s))}else t.push(a);return t}function Je(o,t,n){const a=Math.floor(o/n),s=a*n;let r=0;for(let c=0;c<t.length;c++){const{end:l}=t[c];if(r=c,l+s>o)break}return r+a*t.length}function ke(o,t,n,a){var u;if(t.length===0)return 0;const r=t[t.length-1].end+n,c=a??o+(((u=t[0])==null?void 0:u.end)??0);let p=Je(o,t,r)+1,y=0,m=!1;for(;!m;){const{start:f,end:d}=t[i.wrap(0,t.length,p)],x=Math.floor(p/t.length)*r;y=f+x,d+x>c?m=!0:p++}return y}function Jt(o,t,n,a){const s=o+t;return ke(o,n,a,s)}function Ie(o,t,n,a,s){if(t.length===0)return 0;const c=t[t.length-1].end+n,l=a??o-(s??0);let y=Je(o,t,c),m=o,u=!1;for(;!u;){const{start:f,end:d}=t[i.wrap(0,t.length,y)],I=d-f,g=Math.floor(y/t.length)*c,w=f+g;l<=w+n||w>=o?(m=w,y--):l<=w?(m=w,u=!0):((s&&I>s||m===o&&l>=w)&&(m=w),u=!0)}return m}function Qt(o,t,n,a){const s=o-t;return Ie(o,n,a,s,t)}function We(o){return typeof o=="function"||Object.prototype.toString.call(o)==="[object Object]"&&!e.isVNode(o)}const en=e.defineComponent({__name:"Ticker",props:{axis:{default:"x"},velocity:{default:50},hoverFactor:{default:1},gap:{default:10},align:{default:"center"},offset:{},itemSize:{default:"auto"},overflow:{type:Boolean,default:!1},loop:{type:Boolean,default:!0},safeMargin:{default:0},fade:{default:0},fadeTransition:{default:()=>Gt},pageTransition:{default:()=>qt},_dragX:{type:[Object,Boolean]},_dragY:{type:[Object,Boolean]},snap:{type:[String,Boolean]},as:{default:"div"},style:{},onDragEnd:{},drag:{type:[Boolean,String]},dragConstraints:{type:[Boolean,Object]},dragMomentum:{type:Boolean}},setup(o){const t=o,n=e.reactive({direction:"ltr",visibleLength:0,inset:0,totalItemLength:0,containerLength:0,itemPositions:[],isMeasured:!1,maxInset:null}),a=e.computed(()=>Kt[t.align]||t.align),s=e.computed(()=>q(t.axis,n.direction).sign),r=e.ref(!1),c=i.useMotionValue(1),l=i.useMotionValue(0),p=e.computed(()=>t.offset??l),y=i.useTransform(()=>n.direction==="rtl"?i.wrap(n.totalItemLength+t.gap+n.inset,n.inset,p.value.get()):i.wrap(-n.totalItemLength-t.gap-n.inset,-n.inset,p.value.get())),m=i.useMotionValue(0),u=e.computed(()=>r.value?m:t.loop?y:p.value),f=i.useDomRef(),d=i.useDomRef(),I=i.useInView(f,{margin:"100px"}),x=i.usePageInView(),g=e.computed(()=>I.value&&x.value),w=i.useReducedMotion(),v=e.useSlots(),h=e.computed(()=>{var b;return Ze((b=v.default)==null?void 0:b.call(v))});function L(){if(!f.value||!d.value)return;const b=window.getComputedStyle(f.value).direction,{measureItem:E,lengthProp:S,viewportLengthProp:T,getCumulativeInset:N}=q(t.axis,b),{safeMargin:O,overflow:A,loop:G}=t,Z=k.value==="x"?"paddingLeft":"paddingTop",se=k.value==="x"?"paddingRight":"paddingBottom",le=f.value,J=d.value.querySelectorAll(".ticker-item");if(!J.length)return;let Pe=!1;const Q=[];for(let ee=0;ee<J.length;ee++){const de=E(J[ee],le);Q.push(de);const pe=n.itemPositions[ee];(!pe||de.start!==pe.start||de.end!==pe.end)&&(Pe=!0)}const ue=Math.min(le[S],window[T]);let ce=t.overflow?window[T]:ue;O>0&&(ce+=O*2);const fe=Ue(Q),Ee=window.getComputedStyle(le),Me=parseInt(Ee[Z]??0),ot=parseInt(Ee[se]??0),ze=A?N(J[0]):Me,at=G===!1?Math.max(0,fe-ue+Me+ot):null;(ce!==n.visibleLength||fe!==n.totalItemLength||ze!==n.inset||n.itemPositions.length!==Q.length||Pe)&&(n.direction=b,n.visibleLength=ce,n.itemPositions=Q,n.totalItemLength=fe,n.inset=ze,n.containerLength=ue,n.maxInset=at,n.isMeasured=!0)}e.watch([h,g,()=>t.overflow],(b,E,S)=>{if(!g.value||!f.value)return;L();const T=t.overflow?i.resize(L):void 0,N=i.resize(f.value,L);S(()=>{T==null||T(),N()})},{immediate:!0,flush:"post"});const P=e.computed(()=>n.totalItemLength>0);i.useAnimationFrame((b,E)=>{if(P.value&&g.value&&p.value===l&&!w.value){const S=E/1e3*(t.velocity*s.value*c.get());p.value.set(p.value.get()-S)}});const z=e.computed(()=>!P.value||!n.visibleLength?0:Zt(n.visibleLength,n.itemPositions,t.gap)),V=e.computed(()=>n.totalItemLength===0?0:(n.totalItemLength+t.gap)*(z.value+1)),F=e.computed(()=>{if(!t.loop)return[];const b=[];for(let E=0;E<z.value;E++){const S=[];h.value.forEach((N,O)=>{let A;const G=n.itemPositions[O],Z=(n.totalItemLength+t.gap)*(E+1),se=G?{start:G.start+Z,end:G.end+Z}:He;S.push(e.createVNode(xe,{key:`clone-${E}-${O}`,offset:u.value,axis:t.axis,listSize:V.value,itemIndex:O,cloneIndex:O,bounds:se,alignItems:a.value,size:t.itemSize,safeMargin:t.safeMargin,numItems:h.value.length},We(A=we([N]))?A:{default:()=>[A]}))});const T=`ticker-group-${E}`;b.push(e.createVNode(i.LayoutGroup,{key:T,id:T},We(S)?S:{default:()=>[S]}))}return b}),k=e.toRef(t,"axis");Xt(f,k,m,p,b=>{r.value=b});const M={display:"flex",position:"relative"},$={display:"flex",position:"relative",willChange:"transform",listStyleType:"none",padding:0,margin:0,justifyContent:"flex-start"};function C(b){return n.maxInset!==null?i.clamp(-n.maxInset,0,b):b}jt({state:n,gap:e.computed(()=>t.gap),clampOffset:C,renderedOffset:u});const B=e.computed(()=>t.axis==="x"?t==null?void 0:t._dragX:t==null?void 0:t._dragY);let R=null;const K=e.computed(()=>n.maxInset!==null?k.value==="x"?s.value>0?{left:n.maxInset*-1,right:0}:{right:n.maxInset,left:0}:{top:n.maxInset*-1,bottom:0}:{});function U(){R&&(R.stop(),R=null)}const re=e.computed(()=>!t.onDragEnd&&t.drag&&B?()=>{B.value.jump(p.value.get()),U()}:t.onPointerDown),W=e.computed(()=>!t.onDragEnd&&t.drag&&B.value?(b,{velocity:E})=>{const S=p.value.get();U(),i.frame.postRender(()=>{let T=S+E[k.value]*(t.snap?.3:.8);if(t.snap)if(E[k.value]<0)T=-ke(-S,n.itemPositions,t.gap,-T);else if(E[k.value]>0)T=-Ie(-S,n.itemPositions,t.gap,-T,n.containerLength);else{const O=-ke(-S,n.itemPositions,t.gap,-S),A=-Ie(-S,n.itemPositions,t.gap,-S,n.containerLength);T=Math.abs(S-O)<Math.abs(S-A)?O:A}const N=t.loop?{}:s.value>0?{max:0,min:K.value[k.value==="x"?"left":"top"]}:{min:0,max:K.value.right};R=i.animate(B.value,C(T*s.value)*s.value,t.snap?t.pageTransition:{type:"inertia",velocity:E[k.value],modifyTarget:()=>T,bounceDamping:40,bounceStiffness:400,...N})})}:t.onDragEnd),X=i.useMotionValue(t.loop?0:1),ie=i.useMotionValue(0),tt=e.computed(()=>q(k.value,n.direction)),Te=e.computed(()=>typeof t.fade=="number"?"px":""),Le=i.useTransform(()=>`linear-gradient(to ${tt.value.direction}, rgba(0,0,0,${X.get()}) 0px, black ${t.fade}${Te.value}, black calc(100% - ${t.fade}${Te.value}), rgba(0,0,0,${ie.get()}) 100%)`),nt=e.computed(()=>t.fade?{maskImage:Le,WebkitMaskImage:Le}:{}),j={start:!0,end:!1};return e.watch(u,(b,E,S)=>{const T=O=>{if(n.maxInset===null)return;const A=n.maxInset*-1;O*=s.value,O<0?j.start&&(i.animate(X,0,t.fadeTransition),j.start=!1):j.start||(i.animate(X,1,t.fadeTransition),j.start=!0),O>A?j.end&&(i.animate(ie,0,t.fadeTransition),j.end=!1):j.end||(i.animate(ie,1,t.fadeTransition),j.end=!0)};let N=()=>{};b&&(N=b.on("change",T)),S(N)},{immediate:!0}),(b,E)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(i.Motion),e.mergeProps(b.$attrs,{ref_key:"containerRef",ref:f,as:b.as,style:{overflowX:!b.overflow&&k.value==="x"?"clip":void 0,overflowY:!b.overflow&&k.value==="y"?"clip":void 0,...M,...t.style,...nt.value},drag:b.drag,_dragX:b._dragX,_dragY:b._dragY,"drag-constraints":K.value,"drag-momentum":b.dragMomentum,onPointerenter:E[0]||(E[0]=()=>{e.unref(i.animate)(e.unref(c),b.hoverFactor)}),onPointerleave:E[1]||(E[1]=()=>{e.unref(i.animate)(e.unref(c),1)}),onPointerdown:re.value,onDragEnd:W.value}),{default:e.withCtx(()=>[e.createVNode(e.unref(i.motion).ul,{ref_key:"listRef",ref:d,role:"group",style:e.normalizeStyle({...$,flexDirection:k.value==="x"?"row":"column",gap:`${b.gap}px`,x:k.value==="x"?u.value:0,y:k.value==="y"?u.value:0,opacity:P.value?1:0,alignItems:a.value,willChange:P.value&&g.value?"transform":void 0,width:"100%",height:"100%",maxHeight:"100%",maxWidth:"100%"})},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(S,T)=>(e.openBlock(),e.createBlock(xe,{key:`original-${T}`,axis:k.value,offset:u.value,"list-size":V.value,"item-index":T,bounds:n.itemPositions[T]??e.unref(He),"align-items":a.value,size:b.itemSize,reproject:b.loop,"safe-margin":b.safeMargin,"num-items":h.value.length},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(we)([S]),(N,O)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N),{key:O}))),128))]),_:2},1032,["axis","offset","list-size","item-index","bounds","align-items","size","reproject","safe-margin","num-items"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(F.value,S=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(S),{key:S.key}))),128))]),_:1},8,["style"])]),_:1},16,["as","style","drag","_dragX","_dragY","drag-constraints","drag-momentum","onPointerdown","onDragEnd"]),e.renderSlot(b.$slots,"after")],64))}}),Qe=en,tn={slow:130,normal:75,fast:30},nn=e.defineComponent({__name:"Typewriter",props:e.mergeDefaults({as:{},speed:{},variance:{},play:{type:Boolean},cursorClassName:{},cursorStyle:{},textClassName:{},textStyle:{},cursorBlinkDuration:{},onComplete:{type:Function},replace:{},backspace:{},backspaceFactor:{}},{as:"span",speed:"normal",variance:"natural",cursorClassName:"motion-typewriter-cursor",play:!0,cursorBlinkDuration:.5,replace:"type",backspace:"character",backspaceFactor:.2}),setup(o){const t=o,n=e.useSlots();function a(){var I;return(((I=n==null?void 0:n.default)==null?void 0:I.call(n))??[]).map(x=>typeof x.children=="string"?x.children:"").join("")}let s=a();const r=i.useMotionValue("");e.watchEffect(()=>{const d=a();t.replace==="all"&&d!==s&&r.set(""),s=d});const c=e.ref();let l=null;const p=e.computed(()=>typeof t.speed=="number"?t.speed:tn[t.speed]);function y(){c.value&&(l=i.animate(c.value,{opacity:[1,1,0,0]},{duration:t.cursorBlinkDuration,times:[0,.5,.5,1],ease:"linear",repeat:1/0,repeatType:"reverse"}))}let m=null;function u(){m==null||m(),m=null}function f(){if(!t.play){y(),u();return}l==null||l.cancel();const d=a(),I=()=>{var w;const g=Y.getNextText(r.get(),d,t.replace,t.backspace);r.set(g),g!==d?x():(y(),(w=t.onComplete)==null||w.call(t))},x=()=>{m=i.delayInMs(I,Y.getTypewriterDelay(d,r.get(),p.value,t.variance,t.backspaceFactor))};m||x()}return e.watchEffect(d=>{f(),d(u)}),e.onMounted(()=>{f()}),(d,I)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{"aria-label":e.unref(s)},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass(t.textClassName),style:e.normalizeStyle(t.textStyle)},[e.createVNode(e.unref(i.RowValue),{value:e.unref(r)},null,8,["value"])],6),e.createElementVNode("span",{ref_key:"cursorRef",ref:c,class:e.normalizeClass(t.cursorClassName),style:e.normalizeStyle({display:"inline-block",width:"2px",height:"1em",backgroundColor:"currentColor",position:"relative",top:"0.1em",left:"0.2em",...t.cursorStyle})},null,6)]),_:1},8,["aria-label"]))}}),[on,an]=i.createContext("CarouselContext"),rn={type:"spring",stiffness:200,damping:40},sn={type:"spring",stiffness:80,damping:10};function et(o,t,n,a=!0){const s={insets:[],visibleLength:t};if(o.length===0)return s;const r=[o[0].start];for(let c=1;c<o.length;c++){const{start:l,end:p}=o[c];if(r[r.length-1]+t<p)if(n!==null)if(l<=n)r.push(l);else{r.push(n);break}else r.push(l)}if(a&&n!==null&&r.length>1){const c=r[r.length-1],l=[];for(let m=0;m<r.length-1;m++)l.push(r[m+1]-r[m]);const p=l.reduce((m,u)=>m+u,0)/l.length;if(n-c<p*.5){const m=et(o,t*.75,n,!1);if(m.insets.length===r.length)return m}}return{insets:r,visibleLength:t}}function ln(o,t,n,a){const s=-o,r=a===null?Math.floor(s/n):0,c=r*n;for(let l=t.length-1;l>=0;l--){const p=t[l]+c,y=i.wrap(0,t.length,l-1),u=(l===0?r-1:r)*n,f=t[y]+u,d=(p-f)/2,I=i.wrap(0,t.length,l+1),g=(l===t.length-1?r+1:r)*n,w=t[I]+g,v=(w-p)/2;if(s<w-v&&s>=f+d)return l}return 0}const un=e.defineComponent({__name:"CarouselView",props:{offset:{},targetOffset:{},tugOffset:{},loop:{type:Boolean},transition:{},axis:{default:"x"},snap:{type:[String,Boolean],default:"page"},tickerRef:{},page:{}},setup(o){const t=o;let n=!0;const{state:a,gap:s,clampOffset:r}=Be(),c=e.computed(()=>a.totalItemLength+s.value),l=e.computed(()=>et(a.itemPositions,a.containerLength,a.maxInset)),p=e.computed(()=>l.value.insets.length),y=e.computed(()=>q(t.axis,a.direction).sign);function m(k){const M=ln(k*y.value,l.value.insets,c.value,a.maxInset),$=t.loop?!0:k*-y.value<a.maxInset,C=t.loop?!0:k*-y.value>0;return{current:M,isNextActive:$,isPrevActive:C}}const u=e.ref(m(t.targetOffset.get()));function f(){const k=m(t.targetOffset.get());(k.current!==u.value.current||k.isNextActive!==u.value.isNextActive||k.isPrevActive!==u.value.isPrevActive)&&(u.value=k)}e.watch([()=>a.containerLength,()=>a.totalItemLength],f,{immediate:!0,flush:"post"}),i.useMotionValueEvent(t.targetOffset,"change",k=>{t.offset.set(k),f()});let d=null;function I(){d&&(d.stop(),d=null)}e.onMounted(()=>{t.offset.attach((k,M)=>{I(),n?M(k):d=new i.JSAnimation({keyframes:[t.offset.get(),k],velocity:i.clamp(-2e3,2e3,t.offset.getVelocity()),...t.transition,onUpdate:M,onComplete:()=>{d=null}}),n=!0},I)});function x(k){const M=r(k);t.targetOffset.stop(),n=!1,t.targetOffset.set(M*y.value)}function g(k,M){const $=-k(-t.targetOffset.get()*y.value,l.value.visibleLength,a.itemPositions,s.value),C=r($);C*y.value===t.targetOffset.get()?i.animate(t.tugOffset,0,{velocity:M*y.value*400,...sn}):x(C)}const w=()=>g(Jt,-1),v=()=>g(Qt,1);function h(k){const $=(t.loop?Math.floor(-t.targetOffset.get()*y.value/c.value):0)*-c.value;x(-l.value.insets[k]+$)}const{axis:L,snap:P,offset:z}=e.toRefs(t);e.watch([L,P,z,y,()=>t.tickerRef],(k,M,$)=>{t.tickerRef&&$(Y.wheel(t.tickerRef,{axis:L.value,onSwipe:P.value?C=>{C*y.value===1?w():v()}:void 0,onWheel:C=>{const B=z.value.get()+C,R=y.value>0?r(B):i.clamp(0,a.maxInset,B);t.targetOffset.jump(a.maxInset?R:B)}}))},{immediate:!0,flush:"post"});let V=!1,F;return e.watch([()=>a.isMeasured,p,()=>t.page,y,()=>t.targetOffset,()=>t.offset,()=>l.value.insets],([k,M])=>{const $=t.page;if($===void 0||!k||!M)return;const C=i.clamp(0,M-1,$),B=-l.value.insets[C]*y.value;V?F!==$&&(F=$,t.targetOffset.jump(B),t.offset.jump(B)):(V=!0,F=$,t.targetOffset.jump(B),t.offset.jump(B))},{immediate:!0,flush:"post"}),an({paginationState:u,totalPages:p,nextPage:w,prevPage:v,gotoPage:h,targetOffset:t.targetOffset}),(k,M)=>e.renderSlot(k.$slots,"default")}}),cn=e.defineComponent({name:"Carousel",inheritAttrs:!1,__name:"Carousel",props:{snap:{type:[String,Boolean],default:"page"},transition:{default:()=>({...rn})},page:{},axis:{default:"x"},gap:{},align:{},itemSize:{},overflow:{type:Boolean},loop:{type:Boolean,default:!0},safeMargin:{},fade:{},fadeTransition:{},pageTransition:{},_dragX:{type:[Object,Boolean]},_dragY:{type:[Object,Boolean]},as:{},style:{},onDragEnd:{},drag:{type:[Boolean,String]},dragConstraints:{type:[Boolean,Object]},dragMomentum:{type:Boolean}},setup(o){const t=o,n=i.useMotionValue(0),a=i.useMotionValue(0),s=i.useMotionValue(0),r=i.useTransform(()=>s.get()+a.get()),c=i.useDomRef();return(l,p)=>(e.openBlock(),e.createBlock(e.unref(Qe),e.mergeProps({...t,...l.$attrs},{ref_key:"tickerRef",ref:c,role:"region","aria-roledescription":"carousel",offset:e.unref(r),loop:l.loop,axis:l.axis,drag:l.axis,"_drag-x":l.axis==="x"?e.unref(n):!1,"_drag-y":l.axis==="y"?e.unref(n):!1,snap:l.snap,"page-transition":l.transition}),{after:e.withCtx(()=>[e.createVNode(un,{"ticker-ref":e.unref(c),loop:l.loop,offset:e.unref(a),"tug-offset":e.unref(s),"target-offset":e.unref(n),transition:l.transition,snap:l.snap,axis:l.axis,page:l.page},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"after")]),_:3},8,["ticker-ref","loop","offset","tug-offset","target-offset","transition","snap","axis","page"])]),default:e.withCtx(()=>[e.renderSlot(l.$slots,"default")]),_:3},16,["offset","loop","axis","drag","_drag-x","_drag-y","snap","page-transition"]))}}),fn=e.defineComponent({__name:"ScrambleText",props:e.mergeDefaults({text:{},as:{},active:{type:Boolean},delay:{type:[Number,Function]},duration:{type:[Number,Function]},interval:{},chars:{},onComplete:{type:Function}},{as:"span",active:!0,delay:0,duration:1,interval:.05}),setup(o){const t=o,n=i.useMotionValue(t.text);let a=null;function s(){a==null||a.stop(),n.set(t.text),a=Y.scrambleText(n,{delay:t.delay,duration:t.duration,interval:t.interval,chars:t.chars,onComplete:()=>{var r;return(r=t.onComplete)==null?void 0:r.call(t)}}),t.active||a.finish()}return e.watch(()=>[t.active,t.text,t.delay,t.duration,t.interval,t.chars],()=>{s()},{immediate:!0}),e.onUnmounted(()=>{a==null||a.stop()}),(r,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),null,{default:e.withCtx(()=>[e.createVNode(e.unref(i.RowValue),{value:e.unref(n)},null,8,["value"])]),_:1}))}});exports.AnimateNumber=gt;exports.Carousel=cn;exports.Cursor=_t;exports.ScrambleText=fn;exports.Ticker=Qe;exports.TickerItem=xe;exports.Typewriter=nn;exports.useCarousel=on;exports.useCursorIsInView=Ke;exports.useCursorState=Se;exports.useMagneticPull=Rt;exports.usePointerPosition=Ce;exports.useTicker=Be;exports.useTickerItem=At;Object.keys(Y).forEach(o=>{o!=="default"&&!Object.prototype.hasOwnProperty.call(exports,o)&&Object.defineProperty(exports,o,{enumerable:!0,get:()=>Y[o]})});
9
+ `,document.head.appendChild(o),()=>{document.head.removeChild(o)}}function yt(o){e.watch(o,(t,n,a)=>{const l=t?ht():s.noop;return a(()=>{l()})},{immediate:!0,flush:"post"})}function Ce(o){return t=>{t.pointerType==="mouse"&&o(t)}}function Oe(o){return Ce(t=>{t.button===0&&o(t)})}let re,ye;function xt(){re=s.motionValue(0),ye=s.motionValue(0);let o=0,t=0;function n(){re.set(o),ye.set(t)}typeof window<"u"&&window.addEventListener("pointermove",Ce(a=>{o=a.clientX,t=a.clientY,s.frame.update(n)}))}function Ie(){return re||xt(),{x:re,y:ye}}function wt(o,t){return{x:s.useTransform(()=>o.x.get()+t.value.x),y:s.useTransform(()=>o.y.get()+t.value.y)}}function kt(o){return o.closest("[data-cursor]")}function bt(o){return o.closest('a, button, input[type="button"]:not(:disabled)')}function Ct(o){return window.getComputedStyle(o).userSelect==="none"?null:o.closest("p, textarea:not(:disabled), input[type='text']:not(:disabled), h1, h2, h3, h4, h5, h6")}function It(o){let t=kt(o);return t?[t.dataset.cursor,t]:(t=bt(o),t?["pointer",t]:(t=Ct(o),t?["text",t]:["default",null]))}let ge=null,R={type:"default",isPressed:!1,fontSize:null,targetBoundingBox:null,target:null,zone:null};function St(o){let t=null;if("closest"in o){const n=o.closest("[data-cursor-zone]");n instanceof HTMLElement&&(t=n.dataset.cursorZone||null)}return t}function Bt(){if(typeof window>"u")return{onChange:()=>()=>{}};const o=new Set;function t(u){R={...R,...u},o.forEach(h=>h(R))}const n=Oe(()=>{R.isPressed||t({isPressed:!0})}),a=Oe(()=>{R.isPressed&&t({isPressed:!1})}),l=Ce(({target:u})=>{if(!u)return;const[h,p]=It(u);let f=!1;const i={target:p,zone:St(u)};h!==R.type&&(i.type=h,f=!0),i.zone!==R.zone&&(R.zone=i.zone,f=!0);const v=h==="pointer"&&p?p.getBoundingClientRect():null;if(v!==R.targetBoundingBox&&(i.targetBoundingBox=v,f=!0),h==="text"){const{fontSize:g}=window.getComputedStyle(u),x=g?parseInt(g):null;x!==R.fontSize&&(i.fontSize=x,f=!0)}else R.fontSize&&(i.fontSize=null,f=!0);f&&t(i)});function r(){typeof window>"u"||(window.addEventListener("pointerover",l),window.addEventListener("pointerdown",n),window.addEventListener("pointerup",a))}function c(){window.removeEventListener("pointerover",l),window.removeEventListener("pointerdown",n),window.removeEventListener("pointerup",a)}return{onChange:u=>(o.size||r(),o.add(u),()=>{o.delete(u),o.size||c()})}}function Tt(){return ge||(ge=Bt()),ge}function Se(){const o=e.ref({...R});return e.watch(o,()=>Tt().onChange(t=>{o.value=t}),{immediate:!0,flush:"post"}),o}let ve=null;function Lt(){const o=new Set;function t(){o.forEach(r=>r.show())}function n(){o.forEach(r=>r.hide())}function a(){document.body.addEventListener("mouseenter",t),document.body.addEventListener("mouseleave",n)}function l(){document.body.removeEventListener("mouseenter",t),document.body.removeEventListener("mouseleave",n)}return{on:r=>typeof window>"u"?s.noop:(o.size||a(),o.add(r),()=>{o.delete(r),o.size===0&&l()})}}function Pt(){return ve||(ve=Lt()),ve}function Ge(o){const t=e.ref(!0);return e.watch(t,()=>Pt().on({show:()=>{t.value||(o(),t.value=!0)},hide:()=>t.value=!1}),{immediate:!0}),t}const Ne={x:0,y:0},Et={x:.5,y:.5},Mt={duration:0},zt={stiffness:1e3,damping:100},$t={duration:.15,ease:[.38,.12,.29,1]},Ve={magneticOptions:{morph:!0,padding:5,snap:.8}},_e=17,Re=31,Ae=4,Ot=20;function oe(o,t,n){const a={width:(n==null?void 0:n.width)??o,height:(n==null?void 0:n.height)??t};return typeof a.width=="number"&&(a.width=`${a.width}px`),typeof a.height=="number"&&(a.height=`${a.height}px`),a}function Nt({type:o,state:t,hasChildren:n,style:a,isMagnetic:l,magneticOptions:r,matchTextSize:c}){const u=l&&t.targetBoundingBox;if(n&&!u)return oe("auto","auto",a);const{padding:h,morph:p}=r;switch(o){case"pointer":if(l&&p&&t.targetBoundingBox){const{width:f,height:i}=t.targetBoundingBox;return{width:`${f+h*2}px`,height:`${i+h*2}px`}}return oe(Re,Re,a);case"text":return c&&t.fontSize?{width:`${Ae}px`,height:`${t.fontSize}px`}:oe(Ae,Ot,a);default:return oe(_e,_e,a)}}function Vt({x:o,y:t},n){const a=e.ref(o.prev!==void 0||t.prev!==void 0);return e.watch(a,()=>{if(a.value)return;const l=()=>{a.value=!0,n(),r()},r=s.pipe(o.on("change",l),t.on("change",l));return()=>r()},{immediate:!0}),a}function _t(o,t,n){return s.useTransform(()=>s.mix(o.value.get(),t.get(),n.get()))}function Fe(o,t,n){const a=s.useSpring(0,{stiffness:600,damping:50}),l=s.useMotionValue(0),r=_t(o,a,l);return e.watch(()=>n==null?void 0:n.value,(c,u)=>{c?(!u&&!l.isAnimating()?a.jump(c):a.set(c),s.animate(l,t.value||0)):s.animate(l,0)},{immediate:!0,flush:"sync"}),r}function Rt(o,t,n,a){const l=Fe(e.computed(()=>o.value.x),a,e.computed(()=>n.value.targetBoundingBox?n.value.targetBoundingBox.left+n.value.targetBoundingBox.width/2:void 0)),r=Fe(e.computed(()=>o.value.y),a,e.computed(()=>n.value.targetBoundingBox?n.value.targetBoundingBox.top+n.value.targetBoundingBox.height/2:void 0));return e.computed(()=>t.value?{x:l,y:r}:o.value)}const At=e.defineComponent({name:"Cursor",inheritAttrs:!1,__name:"Cursor",props:{follow:{type:Boolean,default:!1},center:{default:({follow:o})=>o?Ne:Et},offset:{default:()=>Ne},spring:{type:[Boolean,Object],default:({follow:o})=>o?zt:!1},matchTextSize:{type:Boolean,default:!0},magnetic:{type:[Boolean,Object],default:!1},transition:{},variants:{},style:{},show:{type:Boolean,default:!0}},setup(o){const t=o,{offset:n,magnetic:a}=e.toRefs(t),l=s.useReducedMotion();yt(()=>!l.value&&!t.follow);const r=Ie(),c=wt(r,n),u=s.useSpring(c.x,t.spring||void 0),h=s.useSpring(c.y,t.spring||void 0),p=e.computed(()=>typeof t.magnetic=="object"?{...Ve.magneticOptions,...t.magnetic}:Ve.magneticOptions);function f(){const m=c.x.on("change",T=>{u.jump(T),m()}),S=c.y.on("change",T=>{h.jump(T),S()})}const i=Se(),v=Ge(f),g=Rt(e.computed(()=>t.spring?{x:u,y:h}:r),e.computed(()=>!!a.value),i,e.computed(()=>p.value&&p.value.snap)),x=e.useSlots(),b=e.computed(()=>{var T,E;const m=(E=(T=x.default)==null?void 0:T.call(x))==null?void 0:E.filter(N=>N.type!==Symbol.for("v-cmt"));return Nt({type:i.value.type,state:i.value,hasChildren:!!(m!=null&&m.length),isMagnetic:!!t.magnetic,style:t.style,magneticOptions:p.value,matchTextSize:t.matchTextSize})}),I=Vt(r,f);function w(m){return(S,T)=>`translate(-${m.x*100}%, -${m.y*100}%) ${T}`}function d(){const{follow:m,center:S,offset:T,spring:E,matchTextSize:N,magnetic:V,...y}=t;return y}return(m,S)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.unref(I)?(e.openBlock(),e.createBlock(e.unref(s.LayoutGroup),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(s.MotionConfig),{transition:e.unref(l)?e.unref(Mt):m.transition||e.unref($t)},{default:e.withCtx(()=>{var T,E;return[e.createVNode(e.unref(s.motion).div,e.mergeProps({layout:"","data-motion-cursor":m.follow?"follow":"pointer","data-framer-portal-id":"motion-cursor",initial:"exit",exit:"exit"},{...m.$attrs,...d()},{variants:{pressed:m.follow?{}:{scale:.9},...m.variants,default:{opacity:1,scale:1,...(T=m.variants)==null?void 0:T.default},exit:{opacity:0,scale:0,...(E=m.variants)==null?void 0:E.exit}},animate:["default",e.unref(i).type,e.unref(a)&&e.unref(i).targetBoundingBox?"magnetic":"",!e.unref(v)||!m.show?"exit":e.unref(i).isPressed?"pressed":""],"transform-template":w(m.center),style:{borderRadius:m.follow?0:20,zIndex:m.follow?99998:99999,willChange:"transform",contain:"layout",originX:m.center.x,originY:m.center.y,...m.style,width:b.value.width,height:b.value.height,x:e.unref(g).x,y:e.unref(g).y,top:0,left:0,position:"fixed",pointerEvents:"none"}}),{default:e.withCtx(()=>[e.createVNode(e.unref(s.AnimatePresence),null,{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default")]),_:3})]),_:3},16,["data-motion-cursor","variants","animate","transform-template","style"])]}),_:3},8,["transition"])]),_:3})):e.createCommentVNode("",!0)]))}});function De(o,t,n){const a=s.useMotionValue(0),l=s.useMotionValue(0),r=s.useMotionValue(0);return e.watch(()=>n==null?void 0:n.value,c=>{if(typeof c=="number"){s.animate(r,1);const u=()=>{l.set(t*(o.get()-c))};return u(),o.on("change",u)}else s.animate(r,0)},{immediate:!0,flush:"post"}),s.useTransform(()=>s.mix(a.get(),l.get(),r.get()))}function Ft(o,t=.1){const n=Se(),a=Ie(),l=e.computed(()=>n.value.targetBoundingBox&&n.value.target===o.value),r=De(a.x,t,e.computed(()=>l.value?n.value.targetBoundingBox.left+n.value.targetBoundingBox.width/2:void 0)),c=De(a.y,t,e.computed(()=>l.value?n.value.targetBoundingBox.top+n.value.targetBoundingBox.height/2:void 0));return{x:r,y:c}}const[Dt,jt]=s.createContext("TickerItemContext"),[Be,Wt]=s.createContext("TickerInfo");function qe(o,t,n,a,l){return{sign:1,direction:l,lengthProp:t,viewportLengthProp:n,paddingStartProp:a,measureItem:r=>({start:r[o],end:r[o]+r[t]}),getCumulativeInset:r=>{let c=0,u=r;for(;u;)c+=u[o],u=u.offsetParent;return c}}}const Ue=qe("offsetLeft","offsetWidth","innerWidth","paddingLeft","right"),Ht=qe("offsetTop","offsetHeight","innerHeight","paddingTop","bottom");function je(o,t){return((t==null?void 0:t.offsetWidth)??window.innerWidth)-(o.offsetLeft+o.offsetWidth)}const Xt={...Ue,sign:-1,direction:"left",paddingStartProp:"paddingRight",measureItem:(o,t)=>{const n=o.offsetWidth,a=je(o,t);return{start:a,end:a+n}},getCumulativeInset:o=>{let t=0,n=o;for(;n;)t+=je(n,n.offsetParent),n=n.offsetParent;return t}};function q(o,t){return o==="y"?Ht:t==="ltr"?Ue:Xt}const xe=e.defineComponent({__name:"TickerItem",props:{offset:{},axis:{},listSize:{default:0},bounds:{},numItems:{default:0},itemIndex:{},cloneIndex:{},alignItems:{},size:{default:"auto"},safeMargin:{},reproject:{type:Boolean,default:!0}},setup(o){const t=o,{state:n}=Be(),a=e.computed(()=>q(t.axis,n.direction).sign),l=s.useTransform(()=>{if(!t.reproject)return 0;const{offset:i,bounds:v,listSize:g,safeMargin:x}=t,{start:b,end:I}=v;if(!b&&!I||!g)return 0;const w=i.get();if(w*a.value+I<=-n.inset-x)return g*a.value;if(x>0){const d=n.visibleLength-x-n.inset;if(w*a.value+v.start>=d)return-g*a.value}return 0}),r=s.useTransform(()=>{const i=t.offset.get(),v=l.get();return!t.bounds.start&&!t.bounds.end||!t.listSize?0:i*a.value+t.bounds.start+v*a.value}),c=e.computed(()=>t.cloneIndex===void 0?{"aria-hidden":!1,"aria-posinset":t.itemIndex+1,"aria-setsize":t.numItems}:{"aria-hidden":!0}),u=e.computed(()=>{const i=t.size==="fill",v=t.alignItems==="stretch"?"100%":"fit-content";return{class:t.cloneIndex===void 0?"ticker-item":"clone-item",style:{flexGrow:0,flexShrink:0,position:"relative",flexBasis:i?"100%":void 0,display:i?"grid":void 0,gridTemplateColumns:i?"1fr":void 0,gridTemplateRows:i?"1fr":void 0,minWidth:i?0:void 0,minHeight:i?0:void 0,height:t.axis==="x"?v:void 0,width:t.axis==="y"?v:void 0,x:t.axis==="x"?l:0,y:t.axis==="y"?l:0},...c.value}}),{bounds:h,itemIndex:p,cloneIndex:f}=e.toRefs(t);return jt({offset:r,bounds:h,projection:l,itemIndex:p,cloneIndex:f,props:u}),(i,v)=>i.size==="manual"?e.renderSlot(i.$slots,"default",{key:0}):(e.openBlock(),e.createBlock(e.unref(s.motion).li,e.normalizeProps(e.mergeProps({key:1},u.value)),{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},16))}});function Yt(o,t,n,a,l){let r=!1;e.watch(o,(c,u,h)=>{if(!c)return;let p=!1;const f=new AbortController,i={signal:f.signal},v={...i,capture:!0},g=t.value==="x"?"scrollLeft":"scrollTop",x=t.value==="x"?"offsetLeft":"offsetTop",b=t.value==="x"?"ArrowLeft":"ArrowUp",I=t.value==="x"?"ArrowRight":"ArrowDown";let w=[],d=0;const m=async()=>{const C=w[d];C.focus(),await e.nextTick(),n.set(-C[x]),c[g]=0},S=C=>{if(C.key==="Tab"){C.preventDefault(),N();const L=Array.from(document.querySelectorAll('a, button, input, textarea, select, [tabindex]:not([tabindex="-1"]), [contenteditable="true"]')).filter(s.isHTMLElement);L.sort(Kt);const F=L[C.shiftKey?0:L.length-1],K=C.shiftKey?L.length-1:0;if(c.contains(F)){L[K].focus();return}else{const U=L.indexOf(w[d]),ie=C.shiftKey?-1:1;for(let H=U;H<L.length&&H>=0;H+=ie){const X=L[H];if(!c.contains(X)){X.focus();return}}}return}else C.key===b?d--:C.key===I&&d++;d=s.wrap(0,w.length,d),m()},T=()=>{r||(l(!0),r=!0,w=Array.from(c.querySelectorAll('.ticker-item a, .ticker-item button, .ticker-item input, .ticker-item textarea, .ticker-item select, .ticker-item [tabindex]:not([tabindex="-1"]), .ticker-item [contenteditable="true"]')).filter(s.isHTMLElement),d=0,m(),window.addEventListener("focus",E,v),window.addEventListener("blur",E,v),c.addEventListener("keydown",S,i))},E=C=>{(!C.target||!(C.target instanceof HTMLElement)||!c.contains(C.target))&&N()},N=()=>{r&&(r=!1,l(!1),a.value.set(n.get()),window.removeEventListener("focus",E),window.removeEventListener("blur",E),c.removeEventListener("keydown",S))},V=C=>{const{target:L}=C;s.isHTMLElement(L)&&(r||T())},y=()=>{p||(p=!0,c.addEventListener("focus",V,v),window.addEventListener("pointermove",z,i))},z=()=>{p&&(p=!1,c.removeEventListener("focus",V,!0),window.removeEventListener("pointermove",z,i))},$=C=>{const F=C.target.closest('[aria-hidden="true"]');F&&F.removeAttribute("aria-hidden")};window.addEventListener("keydown",y,i),c.addEventListener("pointerdown",$,i),h(()=>{f.abort(),N()})},{flush:"post"})}function Kt(o,t){return o.tabIndex>=1&&t.tabIndex>=1?o.tabIndex-t.tabIndex:o.tabIndex>=1&&t.tabIndex<=0?-1:t.tabIndex>=1&&o.tabIndex<=0?1:0}const We={start:0,end:0},Gt={start:"flex-start",end:"flex-end"},qt={duration:.2,ease:"linear"},Ut={type:"spring",stiffness:400,damping:40};function Zt(o){return o.end-o.start}function Ze(o){return o.length?o[o.length-1].end-o[0].start:0}function Jt(o,t,n){const a=Ze(t),l=Math.max(...t.map(Zt));let r=0,c=0;for(;c<o;)c=(a+n)*(r+1)-l,r++;return Math.max(r-1,0)}function Je(o=[]){var n;const t=[];for(const a of o)if(a.type!==e.Comment)if(a.type===e.Fragment){const l=Array.isArray(a.children)?a.children:(n=a.children)==null?void 0:n.default();t.push(...Je(l))}else t.push(a);return t}function we(o){var n;const t=[];for(const a of o)if(a.type==="Fragment"||a.type===e.Fragment){const l=Array.isArray(a.children)?a.children:(n=a.children)==null?void 0:n.default();t.push(...we(l))}else t.push(a);return t}function Qe(o,t,n){const a=Math.floor(o/n),l=a*n;let r=0;for(let c=0;c<t.length;c++){const{end:u}=t[c];if(r=c,u+l>o)break}return r+a*t.length}function ke(o,t,n,a){var i;if(t.length===0)return 0;const r=t[t.length-1].end+n,c=a??o+(((i=t[0])==null?void 0:i.end)??0);let h=Qe(o,t,r)+1,p=0,f=!1;for(;!f;){const{start:v,end:g}=t[s.wrap(0,t.length,h)],b=Math.floor(h/t.length)*r;p=v+b,g+b>c?f=!0:h++}return p}function Qt(o,t,n,a){const l=o+t;return ke(o,n,a,l)}function be(o,t,n,a,l){if(t.length===0)return 0;const c=t[t.length-1].end+n,u=a??o-(l??0);let p=Qe(o,t,c),f=o,i=!1;for(;!i;){const{start:v,end:g}=t[s.wrap(0,t.length,p)],x=g-v,I=Math.floor(p/t.length)*c,w=v+I;u<=w+n||w>=o?(f=w,p--):u<=w?(f=w,i=!0):((l&&x>l||f===o&&u>=w)&&(f=w),i=!0)}return f}function en(o,t,n,a){const l=o-t;return be(o,n,a,l,t)}function He(o){return typeof o=="function"||Object.prototype.toString.call(o)==="[object Object]"&&!e.isVNode(o)}const tn=e.defineComponent({__name:"Ticker",props:{axis:{default:"x"},velocity:{default:50},hoverFactor:{default:1},gap:{default:10},align:{default:"center"},offset:{},itemSize:{default:"auto"},overflow:{type:Boolean,default:!1},loop:{type:Boolean,default:!0},safeMargin:{default:0},fade:{default:0},fadeTransition:{default:()=>qt},pageTransition:{default:()=>Ut},_dragX:{type:[Object,Boolean]},_dragY:{type:[Object,Boolean]},snap:{type:[String,Boolean]},as:{default:"div"},style:{},onDragEnd:{},drag:{type:[Boolean,String]},dragConstraints:{type:[Boolean,Object]},dragMomentum:{type:Boolean}},setup(o){const t=o,n=e.reactive({direction:"ltr",visibleLength:0,inset:0,totalItemLength:0,containerLength:0,itemPositions:[],isMeasured:!1,maxInset:null}),a=e.computed(()=>Gt[t.align]||t.align),l=e.computed(()=>q(t.axis,n.direction).sign),r=e.ref(!1),c=s.useMotionValue(1),u=s.useMotionValue(0),h=e.computed(()=>t.offset??u),p=s.useTransform(()=>n.direction==="rtl"?s.wrap(n.totalItemLength+t.gap+n.inset,n.inset,h.value.get()):s.wrap(-n.totalItemLength-t.gap-n.inset,-n.inset,h.value.get())),f=s.useMotionValue(0),i=e.computed(()=>r.value?f:t.loop?p:h.value),v=s.useDomRef(),g=s.useDomRef(),x=s.useInView(v,{margin:"100px"}),b=s.usePageInView(),I=e.computed(()=>x.value&&b.value),w=s.useReducedMotion(),d=e.useSlots(),m=e.computed(()=>{var k;return Je((k=d.default)==null?void 0:k.call(d))});function S(){if(!v.value||!g.value)return;const k=window.getComputedStyle(v.value).direction,{measureItem:M,lengthProp:B,viewportLengthProp:P,getCumulativeInset:_}=q(t.axis,k),{safeMargin:O,overflow:D,loop:G}=t,Z=y.value==="x"?"paddingLeft":"paddingTop",le=y.value==="x"?"paddingRight":"paddingBottom",ue=v.value,J=g.value.querySelectorAll(".ticker-item");if(!J.length)return;let Pe=!1;const Q=[];for(let ee=0;ee<J.length;ee++){const pe=M(J[ee],ue);Q.push(pe);const me=n.itemPositions[ee];(!me||pe.start!==me.start||pe.end!==me.end)&&(Pe=!0)}const ce=Math.min(ue[B],window[P]);let fe=t.overflow?window[P]:ce;O>0&&(fe+=O*2);const de=Ze(Q),Ee=window.getComputedStyle(ue),Me=parseInt(Ee[Z]??0),at=parseInt(Ee[le]??0),ze=D?_(J[0]):Me,rt=G===!1?Math.max(0,de-ce+Me+at):null;(fe!==n.visibleLength||de!==n.totalItemLength||ze!==n.inset||n.itemPositions.length!==Q.length||Pe)&&(n.direction=k,n.visibleLength=fe,n.itemPositions=Q,n.totalItemLength=de,n.inset=ze,n.containerLength=ce,n.maxInset=rt,n.isMeasured=!0)}e.watch([m,I,()=>t.overflow],(k,M,B)=>{if(!I.value||!v.value)return;S();const P=t.overflow?s.resize(S):void 0,_=s.resize(v.value,S);B(()=>{P==null||P(),_()})},{immediate:!0,flush:"post"});const T=e.computed(()=>n.totalItemLength>0);s.useAnimationFrame((k,M)=>{if(T.value&&I.value&&h.value===u&&!w.value){const B=M/1e3*(t.velocity*l.value*c.get());h.value.set(h.value.get()-B)}});const E=e.computed(()=>!T.value||!n.visibleLength?0:Jt(n.visibleLength,n.itemPositions,t.gap)),N=e.computed(()=>n.totalItemLength===0?0:(n.totalItemLength+t.gap)*(E.value+1)),V=e.computed(()=>{if(!t.loop)return[];const k=[];for(let M=0;M<E.value;M++){const B=[];m.value.forEach((_,O)=>{let D;const G=n.itemPositions[O],Z=(n.totalItemLength+t.gap)*(M+1),le=G?{start:G.start+Z,end:G.end+Z}:We;B.push(e.createVNode(xe,{key:`clone-${M}-${O}`,offset:i.value,axis:t.axis,listSize:N.value,itemIndex:O,cloneIndex:O,bounds:le,alignItems:a.value,size:t.itemSize,safeMargin:t.safeMargin,numItems:m.value.length},He(D=we([_]))?D:{default:()=>[D]}))});const P=`ticker-group-${M}`;k.push(e.createVNode(s.LayoutGroup,{key:P,id:P},He(B)?B:{default:()=>[B]}))}return k}),y=e.toRef(t,"axis");Yt(v,y,f,h,k=>{r.value=k});const z={display:"flex",position:"relative"},$={display:"flex",position:"relative",willChange:"transform",listStyleType:"none",padding:0,margin:0,justifyContent:"flex-start"};function C(k){return n.maxInset!==null?s.clamp(-n.maxInset,0,k):k}Wt({state:n,gap:e.computed(()=>t.gap),clampOffset:C,renderedOffset:i});const L=e.computed(()=>t.axis==="x"?t==null?void 0:t._dragX:t==null?void 0:t._dragY);let F=null;const K=e.computed(()=>n.maxInset!==null?y.value==="x"?l.value>0?{left:n.maxInset*-1,right:0}:{right:n.maxInset,left:0}:{top:n.maxInset*-1,bottom:0}:{});function U(){F&&(F.stop(),F=null)}const ie=e.computed(()=>!t.onDragEnd&&t.drag&&L?()=>{L.value.jump(h.value.get()),U()}:t.onPointerDown),H=e.computed(()=>!t.onDragEnd&&t.drag&&L.value?(k,{velocity:M})=>{const B=h.value.get();U(),s.frame.postRender(()=>{let P=B+M[y.value]*(t.snap?.3:.8);if(t.snap)if(M[y.value]<0)P=-ke(-B,n.itemPositions,t.gap,-P);else if(M[y.value]>0)P=-be(-B,n.itemPositions,t.gap,-P,n.containerLength);else{const O=-ke(-B,n.itemPositions,t.gap,-B),D=-be(-B,n.itemPositions,t.gap,-B,n.containerLength);P=Math.abs(B-O)<Math.abs(B-D)?O:D}const _=t.loop?{}:l.value>0?{max:0,min:K.value[y.value==="x"?"left":"top"]}:{min:0,max:K.value.right};F=s.animate(L.value,C(P*l.value)*l.value,t.snap?t.pageTransition:{type:"inertia",velocity:M[y.value],modifyTarget:()=>P,bounceDamping:40,bounceStiffness:400,..._})})}:t.onDragEnd),X=s.useMotionValue(t.loop?0:1),se=s.useMotionValue(0),nt=e.computed(()=>q(y.value,n.direction)),Te=e.computed(()=>typeof t.fade=="number"?"px":""),Le=s.useTransform(()=>`linear-gradient(to ${nt.value.direction}, rgba(0,0,0,${X.get()}) 0px, black ${t.fade}${Te.value}, black calc(100% - ${t.fade}${Te.value}), rgba(0,0,0,${se.get()}) 100%)`),ot=e.computed(()=>t.fade?{maskImage:Le,WebkitMaskImage:Le}:{}),j={start:!0,end:!1};return e.watch(i,(k,M,B)=>{const P=O=>{if(n.maxInset===null)return;const D=n.maxInset*-1;O*=l.value,O<0?j.start&&(s.animate(X,0,t.fadeTransition),j.start=!1):j.start||(s.animate(X,1,t.fadeTransition),j.start=!0),O>D?j.end&&(s.animate(se,0,t.fadeTransition),j.end=!1):j.end||(s.animate(se,1,t.fadeTransition),j.end=!0)};let _=()=>{};k&&(_=k.on("change",P)),B(_)},{immediate:!0}),(k,M)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(s.Motion),e.mergeProps(k.$attrs,{ref_key:"containerRef",ref:v,as:k.as,style:{overflowX:!k.overflow&&y.value==="x"?"clip":void 0,overflowY:!k.overflow&&y.value==="y"?"clip":void 0,...z,...t.style,...ot.value},drag:k.drag,_dragX:k._dragX,_dragY:k._dragY,"drag-constraints":K.value,"drag-momentum":k.dragMomentum,onPointerenter:M[0]||(M[0]=()=>{e.unref(s.animate)(e.unref(c),k.hoverFactor)}),onPointerleave:M[1]||(M[1]=()=>{e.unref(s.animate)(e.unref(c),1)}),onPointerdown:ie.value,onDragEnd:H.value}),{default:e.withCtx(()=>[e.createVNode(e.unref(s.motion).ul,{ref_key:"listRef",ref:g,role:"group",style:e.normalizeStyle({...$,flexDirection:y.value==="x"?"row":"column",gap:`${k.gap}px`,x:y.value==="x"?i.value:0,y:y.value==="y"?i.value:0,opacity:T.value?1:0,alignItems:a.value,willChange:T.value&&I.value?"transform":void 0,width:"100%",height:"100%",maxHeight:"100%",maxWidth:"100%"})},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(B,P)=>(e.openBlock(),e.createBlock(xe,{key:`original-${P}`,axis:y.value,offset:i.value,"list-size":N.value,"item-index":P,bounds:n.itemPositions[P]??e.unref(We),"align-items":a.value,size:k.itemSize,reproject:k.loop,"safe-margin":k.safeMargin,"num-items":m.value.length},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(we)([B]),(_,O)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(_),{key:O}))),128))]),_:2},1032,["axis","offset","list-size","item-index","bounds","align-items","size","reproject","safe-margin","num-items"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,B=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(B),{key:B.key}))),128))]),_:1},8,["style"])]),_:1},16,["as","style","drag","_dragX","_dragY","drag-constraints","drag-momentum","onPointerdown","onDragEnd"]),e.renderSlot(k.$slots,"after")],64))}}),et=tn,nn={slow:130,normal:75,fast:30},on=e.defineComponent({__name:"Typewriter",props:e.mergeDefaults({as:{},speed:{},variance:{},play:{type:Boolean},cursorClassName:{},cursorStyle:{},textClassName:{},textStyle:{},cursorBlinkDuration:{},onComplete:{type:Function},replace:{},backspace:{},backspaceFactor:{}},{as:"span",speed:"normal",variance:"natural",cursorClassName:"motion-typewriter-cursor",play:!0,cursorBlinkDuration:.5,replace:"type",backspace:"character",backspaceFactor:.2}),setup(o){const t=o,n=e.useSlots();function a(){var x;return(((x=n==null?void 0:n.default)==null?void 0:x.call(n))??[]).map(b=>typeof b.children=="string"?b.children:"").join("")}let l=a();const r=s.useMotionValue("");e.watchEffect(()=>{const g=a();t.replace==="all"&&g!==l&&r.set(""),l=g});const c=e.ref();let u=null;const h=e.computed(()=>typeof t.speed=="number"?t.speed:nn[t.speed]);function p(){c.value&&(u=s.animate(c.value,{opacity:[1,1,0,0]},{duration:t.cursorBlinkDuration,times:[0,.5,.5,1],ease:"linear",repeat:1/0,repeatType:"reverse"}))}let f=null;function i(){f==null||f(),f=null}function v(){if(!t.play){p(),i();return}u==null||u.cancel();const g=a(),x=()=>{var w;const I=Y.getNextText(r.get(),g,t.replace,t.backspace);r.set(I),I!==g?b():(p(),(w=t.onComplete)==null||w.call(t))},b=()=>{f=s.delayInMs(x,Y.getTypewriterDelay(g,r.get(),h.value,t.variance,t.backspaceFactor))};f||b()}return e.watchEffect(g=>{v(),g(i)}),e.onMounted(()=>{v()}),(g,x)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{"aria-label":e.unref(l)},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass(t.textClassName),style:e.normalizeStyle(t.textStyle)},[e.createVNode(e.unref(s.RowValue),{value:e.unref(r)},null,8,["value"])],6),e.createElementVNode("span",{ref_key:"cursorRef",ref:c,class:e.normalizeClass(t.cursorClassName),style:e.normalizeStyle({display:"inline-block",width:"2px",height:"1em",backgroundColor:"currentColor",position:"relative",top:"0.1em",left:"0.2em",...t.cursorStyle})},null,6)]),_:1},8,["aria-label"]))}}),[an,rn]=s.createContext("CarouselContext"),sn={type:"spring",stiffness:200,damping:40},ln={type:"spring",stiffness:80,damping:10};function tt(o,t,n,a=!0){const l={insets:[],visibleLength:t};if(o.length===0)return l;const r=[o[0].start];for(let c=1;c<o.length;c++){const{start:u,end:h}=o[c];if(r[r.length-1]+t<h)if(n!==null)if(u<=n)r.push(u);else{r.push(n);break}else r.push(u)}if(a&&n!==null&&r.length>1){const c=r[r.length-1],u=[];for(let f=0;f<r.length-1;f++)u.push(r[f+1]-r[f]);const h=u.reduce((f,i)=>f+i,0)/u.length;if(n-c<h*.5){const f=tt(o,t*.75,n,!1);if(f.insets.length===r.length)return f}}return{insets:r,visibleLength:t}}function un(o,t,n,a){const l=-o,r=a===null?Math.floor(l/n):0,c=r*n;for(let u=t.length-1;u>=0;u--){const h=t[u]+c,p=s.wrap(0,t.length,u-1),i=(u===0?r-1:r)*n,v=t[p]+i,g=(h-v)/2,x=s.wrap(0,t.length,u+1),I=(u===t.length-1?r+1:r)*n,w=t[x]+I,d=(w-h)/2;if(l<w-d&&l>=v+g)return u}return 0}const cn=e.defineComponent({__name:"CarouselView",props:{offset:{},targetOffset:{},tugOffset:{},loop:{type:Boolean},transition:{},axis:{default:"x"},snap:{type:[String,Boolean],default:"page"},tickerRef:{},page:{}},setup(o){const t=o;let n=!0;const{state:a,gap:l,clampOffset:r}=Be(),c=e.computed(()=>a.totalItemLength+l.value),u=e.computed(()=>tt(a.itemPositions,a.containerLength,a.maxInset)),h=e.computed(()=>u.value.insets.length),p=e.computed(()=>q(t.axis,a.direction).sign);function f(y){const z=un(y*p.value,u.value.insets,c.value,a.maxInset),$=t.loop?!0:y*-p.value<a.maxInset,C=t.loop?!0:y*-p.value>0;return{current:z,isNextActive:$,isPrevActive:C}}const i=e.ref(f(t.targetOffset.get()));function v(){const y=f(t.targetOffset.get());(y.current!==i.value.current||y.isNextActive!==i.value.isNextActive||y.isPrevActive!==i.value.isPrevActive)&&(i.value=y)}e.watch([()=>a.containerLength,()=>a.totalItemLength],v,{immediate:!0,flush:"post"}),s.useMotionValueEvent(t.targetOffset,"change",y=>{t.offset.set(y),v()});let g=null;function x(){g&&(g.stop(),g=null)}e.onMounted(()=>{t.offset.attach((y,z)=>{x(),n?z(y):g=new s.JSAnimation({keyframes:[t.offset.get(),y],velocity:s.clamp(-2e3,2e3,t.offset.getVelocity()),...t.transition,onUpdate:z,onComplete:()=>{g=null}}),n=!0},x)});function b(y){const z=r(y);t.targetOffset.stop(),n=!1,t.targetOffset.set(z*p.value)}function I(y,z){const $=-y(-t.targetOffset.get()*p.value,u.value.visibleLength,a.itemPositions,l.value),C=r($);C*p.value===t.targetOffset.get()?s.animate(t.tugOffset,0,{velocity:z*p.value*400,...ln}):b(C)}const w=()=>I(Qt,-1),d=()=>I(en,1);function m(y){const $=(t.loop?Math.floor(-t.targetOffset.get()*p.value/c.value):0)*-c.value;b(-u.value.insets[y]+$)}const{axis:S,snap:T,offset:E}=e.toRefs(t);e.watch([S,T,E,p,()=>t.tickerRef],(y,z,$)=>{t.tickerRef&&$(Y.wheel(t.tickerRef,{axis:S.value,onSwipe:T.value?C=>{C*p.value===1?w():d()}:void 0,onWheel:C=>{const L=E.value.get()+C,F=p.value>0?r(L):s.clamp(0,a.maxInset,L);t.targetOffset.jump(a.maxInset?F:L)}}))},{immediate:!0,flush:"post"});let N=!1,V;return e.watch([()=>a.isMeasured,h,()=>t.page,p,()=>t.targetOffset,()=>t.offset,()=>u.value.insets],([y,z])=>{const $=t.page;if($===void 0||!y||!z)return;const C=s.clamp(0,z-1,$),L=-u.value.insets[C]*p.value;N?V!==$&&(V=$,t.targetOffset.jump(L),t.offset.jump(L)):(N=!0,V=$,t.targetOffset.jump(L),t.offset.jump(L))},{immediate:!0,flush:"post"}),rn({paginationState:i,totalPages:h,nextPage:w,prevPage:d,gotoPage:m,targetOffset:t.targetOffset}),(y,z)=>e.renderSlot(y.$slots,"default")}}),fn=e.defineComponent({name:"Carousel",inheritAttrs:!1,__name:"Carousel",props:{snap:{type:[String,Boolean],default:"page"},transition:{default:()=>({...sn})},page:{},axis:{default:"x"},gap:{},align:{},itemSize:{},overflow:{type:Boolean},loop:{type:Boolean,default:!0},safeMargin:{},fade:{},fadeTransition:{},pageTransition:{},_dragX:{type:[Object,Boolean]},_dragY:{type:[Object,Boolean]},as:{},style:{},onDragEnd:{},drag:{type:[Boolean,String]},dragConstraints:{type:[Boolean,Object]},dragMomentum:{type:Boolean}},setup(o){const t=o,n=s.useMotionValue(0),a=s.useMotionValue(0),l=s.useMotionValue(0),r=s.useTransform(()=>l.get()+a.get()),c=s.useDomRef();return(u,h)=>(e.openBlock(),e.createBlock(e.unref(et),e.mergeProps({...t,...u.$attrs},{ref_key:"tickerRef",ref:c,role:"region","aria-roledescription":"carousel",offset:e.unref(r),loop:u.loop,axis:u.axis,drag:u.axis,"_drag-x":u.axis==="x"?e.unref(n):!1,"_drag-y":u.axis==="y"?e.unref(n):!1,snap:u.snap,"page-transition":u.transition}),{after:e.withCtx(()=>[e.createVNode(cn,{"ticker-ref":e.unref(c),loop:u.loop,offset:e.unref(a),"tug-offset":e.unref(l),"target-offset":e.unref(n),transition:u.transition,snap:u.snap,axis:u.axis,page:u.page},{default:e.withCtx(()=>[e.renderSlot(u.$slots,"after")]),_:3},8,["ticker-ref","loop","offset","tug-offset","target-offset","transition","snap","axis","page"])]),default:e.withCtx(()=>[e.renderSlot(u.$slots,"default")]),_:3},16,["offset","loop","axis","drag","_drag-x","_drag-y","snap","page-transition"]))}}),dn=e.defineComponent({__name:"ScrambleText",props:e.mergeDefaults({text:{},as:{},active:{type:Boolean},delay:{type:[Number,Function]},duration:{type:[Number,Function]},interval:{},chars:{},onComplete:{type:Function}},{as:"span",active:!0,delay:0,duration:1,interval:.05}),setup(o){const t=o,n=s.useMotionValue(t.text);let a=null;function l(){a==null||a.stop(),n.set(t.text),a=Y.scrambleText(n,{delay:t.delay,duration:t.duration,interval:t.interval,chars:t.chars,onComplete:()=>{var r;return(r=t.onComplete)==null?void 0:r.call(t)}}),t.active||a.finish()}return e.watch(()=>[t.active,t.text,t.delay,t.duration,t.interval,t.chars],()=>{l()},{immediate:!0}),e.onUnmounted(()=>{a==null||a.stop()}),(r,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),null,{default:e.withCtx(()=>[e.createVNode(e.unref(s.RowValue),{value:e.unref(n)},null,8,["value"])]),_:1}))}});exports.AnimateNumber=vt;exports.Carousel=fn;exports.Cursor=At;exports.ScrambleText=dn;exports.Ticker=et;exports.TickerItem=xe;exports.Typewriter=on;exports.useCarousel=an;exports.useCursorIsInView=Ge;exports.useCursorState=Se;exports.useMagneticPull=Ft;exports.usePointerPosition=Ie;exports.useTicker=Be;exports.useTickerItem=Dt;Object.keys(Y).forEach(o=>{o!=="default"&&!Object.prototype.hasOwnProperty.call(exports,o)&&Object.defineProperty(exports,o,{enumerable:!0,get:()=>Y[o]})});
@@ -1,4 +1,5 @@
1
1
  import { MotionProps } from 'motion-v';
2
+ import { Trend } from './types';
2
3
  export interface AnimateNumberProps {
3
4
  locales?: Intl.LocalesArgument;
4
5
  format?: Omit<Intl.NumberFormatOptions, 'notation'> & {
@@ -9,7 +10,7 @@ export interface AnimateNumberProps {
9
10
  prefix?: string;
10
11
  value?: number | bigint | string;
11
12
  style?: MotionProps['style'];
12
- layoutDependency?: MotionProps['layoutDependency'];
13
+ trend?: Trend;
13
14
  }
14
15
  declare const _default: import('vue').DefineComponent<AnimateNumberProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<AnimateNumberProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
15
16
  export default _default;
@@ -1,21 +1,16 @@
1
- import { MotionProps, motion } from 'motion-v';
2
1
  import { mask, maskHeight, maskSize, maskWidth } from './config';
3
- type __VLS_Props = {
4
- layoutDependency?: MotionProps['layoutDependency'];
5
- };
6
2
  declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
7
- declare var __VLS_6: {};
3
+ declare var __VLS_1: {};
8
4
  type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
9
- default?: (props: typeof __VLS_6) => any;
5
+ default?: (props: typeof __VLS_1) => any;
10
6
  }>;
11
- declare const __VLS_self: import('vue').DefineComponent<__VLS_Props, {
12
- motion: typeof motion;
7
+ declare const __VLS_self: import('vue').DefineComponent<{}, {
13
8
  mask: typeof mask;
14
9
  maskHeight: typeof maskHeight;
15
10
  maskSize: typeof maskSize;
16
11
  maskWidth: typeof maskWidth;
17
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
18
- declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
12
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
13
+ declare const __VLS_component: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
19
14
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
20
15
  export default _default;
21
16
  type __VLS_WithSlots<T, S> = T & {
@@ -1,5 +1,6 @@
1
1
  import { Justify, KeyedNumberPart } from './types';
2
- import { AnimatePresenceProps, MotionProps } from 'motion-v';
2
+ import { AnimatePresenceProps } from 'motion-v';
3
+ import { CSSProperties } from 'vue';
3
4
  export interface AnimateNumberProps {
4
5
  parts: (KeyedNumberPart & {
5
6
  isPresent?: boolean;
@@ -7,8 +8,8 @@ export interface AnimateNumberProps {
7
8
  justify?: Justify;
8
9
  mode?: AnimatePresenceProps['mode'];
9
10
  name?: string;
10
- style?: MotionProps['style'];
11
- layoutDependency?: MotionProps['layoutDependency'];
11
+ style?: CSSProperties;
12
+ trend?: number;
12
13
  }
13
14
  declare const _default: import('vue').DefineComponent<AnimateNumberProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<AnimateNumberProps> & Readonly<{}>, {
14
15
  justify: Justify;
@@ -1,6 +1,3 @@
1
1
  import { AnimateSymbolProps } from './types';
2
- type __VLS_Props = AnimateSymbolProps & {
3
- preInitial?: boolean;
4
- };
5
- declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
2
+ declare const _default: import('vue').DefineComponent<AnimateSymbolProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<AnimateSymbolProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
6
3
  export default _default;
@@ -7,7 +7,7 @@ export interface NumberDigitProps {
7
7
  partKey?: string;
8
8
  onRemove?: (partKey: string, target: HTMLElement) => void;
9
9
  style?: MotionProps['style'];
10
- layoutDependency?: MotionProps['layoutDependency'];
10
+ trend?: number;
11
11
  }
12
12
  export interface AnimateSymbolProps {
13
13
  partKey: string;
@@ -16,7 +16,6 @@ export interface AnimateSymbolProps {
16
16
  isPresent: boolean;
17
17
  onRemove?: (partKey: string, target: HTMLElement) => void;
18
18
  style?: MotionProps['style'];
19
- layoutDependency?: MotionProps['layoutDependency'];
20
19
  }
21
20
  export type Justify = 'left' | 'right';
22
21
  export type NumberPartType = Exclude<Intl.NumberFormatPartTypes, 'minusSign' | 'plusSign'> | 'sign' | 'prefix' | 'suffix';
@@ -2,5 +2,5 @@ import { AnimateSymbolProps, NumberDigitProps } from './types';
2
2
  export declare function useAnimate(props: AnimateSymbolProps | NumberDigitProps): {
3
3
  root: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
4
4
  getRoot: (el: any) => void;
5
- handleComplete: (e: any) => void;
5
+ handleComplete: () => void;
6
6
  };
@@ -0,0 +1,216 @@
1
+ import { CSSProperties, ComputedRef, VNode } from 'vue';
2
+ import { MotionProps, MotionValue, PanInfo, Transition, Motion, animate, motion } from 'motion-v';
3
+ import { default as TickerItem } from './TickerItem';
4
+ import { defaultBounds } from './const';
5
+ import { ItemSize } from './types';
6
+ import { renderVNode } from '../../utils/flatten-slots';
7
+ /**
8
+ * Props for the Ticker component.
9
+ */
10
+ export interface TickerProps {
11
+ /**
12
+ * The axis along which the ticker scrolls. Defaults to "x".
13
+ */
14
+ axis?: 'x' | 'y';
15
+ /**
16
+ * The velocity of the ticker scroll in pixels per second. Defaults to 50.
17
+ */
18
+ velocity?: number;
19
+ /**
20
+ * Factor by which the velocity is multiplied when the ticker is hovered. Defaults to 1 (no change).
21
+ */
22
+ hoverFactor?: number;
23
+ /**
24
+ * The gap between ticker items in pixels. Defaults to 10.
25
+ */
26
+ gap?: number;
27
+ /**
28
+ * Alignment of items within the ticker. Defaults to "center".
29
+ */
30
+ align?: 'start' | 'center' | 'end' | 'stretch';
31
+ /**
32
+ * An optional MotionValue to control the ticker's offset externally.
33
+ */
34
+ offset?: MotionValue<number>;
35
+ /**
36
+ * The size of the ticker items. Defaults to "auto".
37
+ */
38
+ itemSize?: ItemSize;
39
+ /**
40
+ * Show items that overflow the container.
41
+ */
42
+ overflow?: boolean;
43
+ /**
44
+ * Allow the carousel to loop through its items.
45
+ * If this is disabled, the carousel will not clone
46
+ * any additional children.
47
+ *
48
+ * @default true
49
+ */
50
+ loop?: boolean;
51
+ /**
52
+ * By default, ticker items that disappear off the start of the visible area
53
+ * will be reprojected to the end of the ticker items to reduce or eliminate
54
+ * cloned items.
55
+ *
56
+ * The calculation for this is based on an item's layout. If for some reason
57
+ * the item is transformed back within the visible area, this reprojection
58
+ * might be visible. By setting a safe margin, you can extend the effective
59
+ * visible area.
60
+ *
61
+ * @default 0
62
+ */
63
+ safeMargin?: number;
64
+ /**
65
+ * The length of the fade at each end of the container.
66
+ *
67
+ * When looping is disabled, the fade will automatically animate
68
+ * away when the content is scrolled to each end of the container.
69
+ *
70
+ * @default 0
71
+ */
72
+ fade?: number | `${number}%`;
73
+ /**
74
+ * The transition to use when fading the edges of the container.
75
+ *
76
+ * @default { duration: 0.2, ease: "linear" }
77
+ */
78
+ fadeTransition?: Transition;
79
+ /**
80
+ * The transition to use when paginating the container.
81
+ *
82
+ * @default { type: "spring", stiffness: 400, damping: 40 }
83
+ */
84
+ pageTransition?: Transition;
85
+ _dragX?: MotionValue<number> | boolean;
86
+ _dragY?: MotionValue<number> | boolean;
87
+ snap?: 'page' | 'loose' | false;
88
+ as?: any;
89
+ style?: MotionProps['style'];
90
+ onDragEnd?: MotionProps['onDragEnd'];
91
+ drag?: MotionProps['drag'];
92
+ dragConstraints?: MotionProps['dragConstraints'];
93
+ dragMomentum?: MotionProps['dragMomentum'];
94
+ }
95
+ declare const state: {
96
+ direction: import('./types').Direction;
97
+ visibleLength: number;
98
+ inset: number;
99
+ totalItemLength: number;
100
+ containerLength: number;
101
+ itemPositions: {
102
+ start: number;
103
+ end: number;
104
+ }[];
105
+ isMeasured: boolean;
106
+ maxInset: number | null;
107
+ };
108
+ declare const alignItems: ComputedRef<"flex-end" | "flex-start">;
109
+ declare const velocityFactor: MotionValue<number>;
110
+ declare const renderedOffset: ComputedRef<MotionValue<number>>;
111
+ declare const containerRef: import('vue').Ref<any, any>;
112
+ declare const listRef: import('vue').Ref<any, any>;
113
+ declare const isInView: ComputedRef<boolean>;
114
+ declare const items: ComputedRef<VNode<import('vue').RendererNode, import('vue').RendererElement, {
115
+ [key: string]: any;
116
+ }>[]>;
117
+ declare const isMeasured: ComputedRef<boolean>;
118
+ declare const totalListSize: ComputedRef<number>;
119
+ declare const clonedItems: ComputedRef<VNode<import('vue').RendererNode, import('vue').RendererElement, {
120
+ [key: string]: any;
121
+ }>[]>;
122
+ declare const axis: import('vue').Ref<"x" | "y", "x" | "y">;
123
+ declare const containerStyle: CSSProperties;
124
+ declare const listStyle: CSSProperties;
125
+ declare const dragConstraints: ComputedRef<{
126
+ left: number;
127
+ right: number;
128
+ top?: undefined;
129
+ bottom?: undefined;
130
+ } | {
131
+ top: number;
132
+ bottom: number;
133
+ left?: undefined;
134
+ right?: undefined;
135
+ } | {
136
+ left?: undefined;
137
+ right?: undefined;
138
+ top?: undefined;
139
+ bottom?: undefined;
140
+ }>;
141
+ declare const onPointerDown: ComputedRef<any>;
142
+ declare const onDragEnd: ComputedRef<((event: PointerEvent, info: PanInfo) => void) | undefined>;
143
+ declare const fadeStyles: ComputedRef<{
144
+ maskImage: MotionValue<string>;
145
+ WebkitMaskImage: MotionValue<string>;
146
+ } | {
147
+ maskImage?: undefined;
148
+ WebkitMaskImage?: undefined;
149
+ }>;
150
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
151
+ declare var __VLS_31: {};
152
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
153
+ after?: (props: typeof __VLS_31) => any;
154
+ }>;
155
+ declare const __VLS_self: import('vue').DefineComponent<TickerProps, {
156
+ Motion: typeof Motion;
157
+ animate: typeof animate;
158
+ motion: typeof motion;
159
+ TickerItem: typeof TickerItem;
160
+ defaultBounds: typeof defaultBounds;
161
+ renderVNode: typeof renderVNode;
162
+ state: typeof state;
163
+ alignItems: typeof alignItems;
164
+ velocityFactor: typeof velocityFactor;
165
+ renderedOffset: typeof renderedOffset;
166
+ containerRef: typeof containerRef;
167
+ listRef: typeof listRef;
168
+ isInView: typeof isInView;
169
+ items: typeof items;
170
+ isMeasured: typeof isMeasured;
171
+ totalListSize: typeof totalListSize;
172
+ clonedItems: typeof clonedItems;
173
+ axis: typeof axis;
174
+ containerStyle: typeof containerStyle;
175
+ listStyle: typeof listStyle;
176
+ dragConstraints: typeof dragConstraints;
177
+ onPointerDown: typeof onPointerDown;
178
+ onDragEnd: typeof onDragEnd;
179
+ fadeStyles: typeof fadeStyles;
180
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<TickerProps> & Readonly<{}>, {
181
+ as: any;
182
+ gap: number;
183
+ overflow: boolean;
184
+ velocity: number;
185
+ loop: boolean;
186
+ axis: "x" | "y";
187
+ safeMargin: number;
188
+ hoverFactor: number;
189
+ align: "start" | "center" | "end" | "stretch";
190
+ itemSize: ItemSize;
191
+ fade: number | `${number}%`;
192
+ fadeTransition: Transition;
193
+ pageTransition: Transition;
194
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
195
+ declare const __VLS_component: import('vue').DefineComponent<TickerProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<TickerProps> & Readonly<{}>, {
196
+ as: any;
197
+ gap: number;
198
+ overflow: boolean;
199
+ velocity: number;
200
+ loop: boolean;
201
+ axis: "x" | "y";
202
+ safeMargin: number;
203
+ hoverFactor: number;
204
+ align: "start" | "center" | "end" | "stretch";
205
+ itemSize: ItemSize;
206
+ fade: number | `${number}%`;
207
+ fadeTransition: Transition;
208
+ pageTransition: Transition;
209
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
210
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
211
+ export default _default;
212
+ type __VLS_WithSlots<T, S> = T & {
213
+ new (): {
214
+ $slots: S;
215
+ };
216
+ };