import{ae as a}from"./index.BF7c1rfV.js";import{a8 as e,a0 as l}from"./vue-vendor.CbU-cCHr.js";function r(r){const{fetcher:t,pageSize:s,initialParams:i,immediate:u=!1,extractList:v=a=>Array.isArray(a)?a:Array.isArray(null==a?void 0:a.list)?a.list:[]}=r,n=e({...i||{}}),o=e([]),m=e(!1),c=e(!1),d=e(0),f=e(2),g=e(!1),p=async e=>{const l=!!e;try{m.value=!0,l&&(d.value=a());const r=await t({...n.value,page:e||f.value,size:s,createAt:d.value}),i=v(r);l?(o.value=i,f.value=2,g.value=!1):(o.value=[...o.value,...i],i.length>0&&(f.value+=1)),0===i.length&&(g.value=!0)}finally{m.value=!1,c.value=!0}},y=()=>p(1);return u&&l(()=>{y()}),{params:n,list:o,loading:m,isInit:c,loadingSeconds:d,page:f,noMore:g,load:p,refresh:y,loadMore:()=>{if(!m.value&&!g.value)return p()},setParams:a=>{n.value={...n.value,...a}},resetParams:a=>{n.value={...a||i||{}}}}}export{r as u};