sw1844619.js (660B)
1 async function timeout (cmd) { 2 const timer = new Promise((resolve, reject) => { 3 const id = setTimeout(() => { 4 clearTimeout(id) 5 reject(new Error('Promise timed out!')) 6 }, 750) 7 }) 8 return Promise.race([cmd, timer]) 9 } 10 11 (async () => { 12 const root = await navigator.storage.getDirectory() 13 const blob = new Blob(['A']) 14 const sub = await root.getDirectoryHandle('a', { 'create': true }) 15 const file = await root.getFileHandle('b', { 'create': true }) 16 await file.move(sub) 17 const stream = await file.createWritable({}) 18 await stream.write(blob) 19 const sub2 = await root.getDirectoryHandle('a', {}) 20 await sub2.move(root, 'X') 21 })()