1 |
- import{g as k,L as w,r as c,b1 as C,w as E,b2 as P,o as R,b3 as N,h as i,N as y,b4 as B,ah as F,b5 as m,b6 as H,b7 as I,b8 as M,R as U}from"./App.523a3d6d.js";var[V,t,_]=y("list"),j=k({name:V,props:{error:Boolean,loading:Boolean,finished:Boolean,errorText:String,loadingText:String,finishedText:String,immediateCheck:w,offset:{type:[Number,String],default:300},direction:{type:String,default:"down"}},emits:["load","update:error","update:loading"],setup(e,{emit:o,slots:r}){var n=c(!1),s=c(),v=c(),h=B(),g=C(s),d=()=>{F(()=>{if(!(n.value||e.finished||e.error||(h==null?void 0:h.value)===!1)){var{offset:a,direction:l}=e,u=m(g);if(!(!u.height||H(s))){var f=!1,b=m(v);l==="up"?f=u.top-b.top<=a:f=b.bottom-u.bottom<=a,f&&(n.value=!0,o("update:loading",!0),o("load"))}}})},x=()=>{if(e.finished){var a=r.finished?r.finished():e.finishedText;if(a)return i("div",{class:t("finished-text")},[a])}},T=()=>{o("update:error",!1),d()},S=()=>{if(e.error){var a=r.error?r.error():e.errorText;if(a)return i("div",{class:t("error-text"),onClick:T},[a])}},L=()=>{if(n.value&&!e.finished)return i("div",{class:t("loading")},[r.loading?r.loading():i(I,{class:t("loading-icon")},{default:()=>[e.loadingText||_("loading")]})])};return E([()=>e.loading,()=>e.finished,()=>e.error],d),P(()=>{n.value=e.loading}),R(()=>{e.immediateCheck&&d()}),M({check:d}),N("scroll",d,{target:g}),()=>{var a=r.default==null?void 0:r.default(),l=i("div",{ref:v,class:t("placeholder")},null);return i("div",{ref:s,role:"feed",class:t(),"aria-busy":n.value},[e.direction==="down"?a:l,L(),x(),S(),e.direction==="up"?a:l])}}}),z=U(j);export{z as L};
|