UNPKG

@guruhotel/aura-hooks

Version:

🪝 Hooks library designed by the Guruhotel team for Aura UI

1 lines 786 B
exports.__esModule=!0,exports.useListState=function(t=[]){const[r,s]=(0,e.useState)(t);return[r,{setState:s,append:(...e)=>s((t=>[...t,...e])),prepend:(...e)=>s((t=>[...e,...t])),insert:(e,...t)=>s((r=>[...r.slice(0,e),...t,...r.slice(e)])),pop:()=>s((e=>{const t=[...e];return t.pop(),t})),shift:()=>s((e=>{const t=[...e];return t.shift(),t})),apply:e=>s((t=>t.map(((t,r)=>e(t,r))))),applyWhere:(e,t)=>s((r=>r.map(((r,s)=>e(r,s)?t(r,s):r)))),remove:(...e)=>s((t=>t.filter(((t,r)=>!e.includes(r))))),reorder:({from:e,to:t})=>s((r=>{const s=[...r],p=r[e];return s.splice(e,1),s.splice(t,0,p),s})),setItem:(e,t)=>s((r=>{const s=[...r];return s[e]=t,s})),setItemProp:(e,t,r)=>s((s=>{const p=[...s];return p[e]={...p[e],[t]:r},p})),filter:e=>{s((t=>t.filter(e)))}}]};var e=require("react");