let handle; onmessage=async({data})=>{ try{ if(data.action==='open'){ const root=await navigator.storage.getDirectory();const dir=await root.getDirectoryHandle('cache',{create:true});const file=await dir.getFileHandle(data.key,{create:true}); handle=await file.createSyncAccessHandle();handle.truncate(0); }else if(data.action==='write'){ const bytes=new Uint8Array(data.buffer);let offset=0;while(offset