1import{an as h,al as w,v as E,ah as I,N as y}from"./BSq6QxpG.js";import{m as d}from"./DghEVOc5.js";const l="g:",r=l.length,O=h("got",()=>{const n=w({}),c=E(!1),f=()=>{try{Object.keys(n).forEach(e=>delete n[e]),Object.assign(n,k())}catch{Object.keys(n).forEach(t=>delete n[t])}},k=()=>{const e={},t=localStorage.length;for(let o=0;o<t;++o){const s=localStorage.key(o);if(!s||s.substring(0,r)!==l)continue;const a=localStorage.getItem(s);a&&(e[s.substring(r)]=parseInt(a))}return e},m=()=>{Object.keys(n).forEach(o=>delete n[o]);const e=localStorage.length,t=[];for(let o=0;o<e;++o){const s=localStorage.key(o);s&&t.push(s)}t.forEach(o=>{o.substring(0,r)===l&&localStorage.removeItem(o)})},i=(e,t,o,s)=>{const a=e+"-"+t;g(a,o?s??+new Date:0)},S=(e,t)=>{n[e]&&g(e,t)},g=(e,t)=>{const o=`${l}${e}`;t===0?delete n[e]:n[e]=t,t===0?localStorage.removeItem(o):localStorage.setItem(o,String(t))},p=async(e,t)=>{c.value=!0;const o=t??+new Date;for(const s of e){const a=d(s.type,s.id);n[a]||i(s.type,s.id,!0,o)}await y(),c.value=!1},b=async e=>{c.value=!0;for(const t of e){const o=d(t.type,t.id);n[o]&&i(t.type,t.id,!1)}await y(),c.value=!1},u=e=>{if(!e.key||e.key.substring(0,r)!==l)return;const t=e.key.substring(r),o=e.newValue?parseInt(e.newValue):0;g(t,o)};return f(),window.addEventListener("storage",u),I(()=>{window.removeEventListener("storage",u)}),{gotItems:n,isBulkProcessing:c,load:f,clear:m,set:i,setDate:S,bulkSet:p,bulkDelete:b}});export{O as u};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.