1 |
- import{v as D,D as b,d as W,U as v,r as C,aV as E,aJ as P,a2 as $,Y as q,$ as A,ae as L,aA as M,c,a7 as R,av as I,aZ as y,aK as V,a3 as z,z as J}from"./ResizeObserver.es.7b3c8c20.js";const[K,i]=D("notice-bar"),O={text:String,mode:String,color:String,delay:b(1),speed:b(60),leftIcon:String,wrapable:Boolean,background:String,scrollable:{type:Boolean,default:null}};var U=W({name:K,props:O,emits:["close","replay"],setup(e,{emit:m,slots:n}){let l=0,o=0,h;const d=v(),u=v(),t=C({show:!0,offset:0,duration:0}),k=()=>{if(n["left-icon"])return n["left-icon"]();if(e.leftIcon)return c(R,{class:i("left-icon"),name:e.leftIcon},null)},p=()=>{if(e.mode==="closeable")return"cross";if(e.mode==="link")return"arrow"},x=a=>{e.mode==="closeable"&&(t.show=!1,m("close",a))},N=()=>{if(n["right-icon"])return n["right-icon"]();const a=p();if(a)return c(R,{name:a,class:i("right-icon"),onClick:x},null)},S=()=>{t.offset=l,t.duration=0,V(()=>{y(()=>{t.offset=-o,t.duration=(o+l)/+e.speed,m("replay")})})},T=()=>{const a=e.scrollable===!1&&!e.wrapable,r={transform:t.offset?`translateX(${t.offset}px)`:"",transitionDuration:`${t.duration}s`};return c("div",{ref:d,role:"marquee",class:i("wrap")},[c("div",{ref:u,style:r,class:[i("content"),{"van-ellipsis":a}],onTransitionend:S},[n.default?n.default():e.text])])},s=()=>{const{delay:a,speed:r,scrollable:f}=e,B=z(a)?+a*1e3:0;l=0,o=0,t.offset=0,t.duration=0,clearTimeout(h),h=setTimeout(()=>{if(!d.value||!u.value||f===!1)return;const w=I(d).width,g=I(u).width;(f||g>w)&&y(()=>{l=w,o=g,t.offset=-o,t.duration=o/+r})},B)};return E(s),P(s),$("pageshow",s),q({reset:s}),A(()=>[e.text,e.scrollable],s),()=>{const{color:a,wrapable:r,background:f}=e;return L(c("div",{role:"alert",class:i({wrapable:r}),style:{color:a,background:f}},[k(),T(),N()]),[[M,t.show]])}}});const Y=J(U);export{Y as N};
|