@gkd-kit/inspect 0.0.1712069317400 → 0.0.1712471199991

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/assets/{ActionCard.vue_vue_type_script_setup_true_lang-DjcnKNwf.js → ActionCard.vue_vue_type_script_setup_true_lang-DIUgL6Ya.js} +2 -2
  2. package/dist/assets/{ActionCard.vue_vue_type_script_setup_true_lang-DjcnKNwf.js.map → ActionCard.vue_vue_type_script_setup_true_lang-DIUgL6Ya.js.map} +1 -1
  3. package/dist/assets/{DevicePage-ZKTflIs1.js → DevicePage-CxUINvTA.js} +2 -2
  4. package/dist/assets/{DevicePage-ZKTflIs1.js.map → DevicePage-CxUINvTA.js.map} +1 -1
  5. package/dist/assets/{HomePage-DVKPunW2.js → HomePage-BjeQV_5b.js} +2 -2
  6. package/dist/assets/{HomePage-DVKPunW2.js.map → HomePage-BjeQV_5b.js.map} +1 -1
  7. package/dist/assets/{ImportPage-Bzm7Ex2a.js → ImportPage-C-qZkvss.js} +2 -2
  8. package/dist/assets/{ImportPage-Bzm7Ex2a.js.map → ImportPage-C-qZkvss.js.map} +1 -1
  9. package/dist/assets/{PreviewSharePage-DSM1Kjyy.js → PreviewSharePage-BnugOGIO.js} +2 -2
  10. package/dist/assets/{PreviewSharePage-DSM1Kjyy.js.map → PreviewSharePage-BnugOGIO.js.map} +1 -1
  11. package/dist/assets/{SnapshotPage-Dz45lHBm.js → SnapshotPage-CtUA62AN.js} +10 -10
  12. package/dist/assets/SnapshotPage-CtUA62AN.js.map +1 -0
  13. package/dist/assets/{TrackGraph-D8AT9m0m.js → TrackGraph-Df1_6xFc.js} +2 -2
  14. package/dist/assets/{TrackGraph-D8AT9m0m.js.map → TrackGraph-Df1_6xFc.js.map} +1 -1
  15. package/dist/assets/{_404Page-D07RSZEg.js → _404Page-CjXti0tT.js} +2 -2
  16. package/dist/assets/{_404Page-D07RSZEg.js.map → _404Page-CjXti0tT.js.map} +1 -1
  17. package/dist/assets/{fetch-CTgF1Svk.js → fetch-Dh1CwD9F.js} +2 -2
  18. package/dist/assets/{fetch-CTgF1Svk.js.map → fetch-Dh1CwD9F.js.map} +1 -1
  19. package/dist/assets/{import-mLvizkxQ.js → import-BUUhS7Fi.js} +2 -2
  20. package/dist/assets/{import-mLvizkxQ.js.map → import-BUUhS7Fi.js.map} +1 -1
  21. package/dist/assets/{index-CVvK6gZt.js → index-BbsCW5G6.js} +2 -2
  22. package/dist/assets/{index-CVvK6gZt.js.map → index-BbsCW5G6.js.map} +1 -1
  23. package/dist/assets/{index-BKLhXPOV.js → index-CsqlWAKz.js} +4 -4
  24. package/dist/assets/index-CsqlWAKz.js.map +1 -0
  25. package/dist/assets/{index-_C6zettz.js → index-DRFKk3XO.js} +2 -2
  26. package/dist/assets/{index-_C6zettz.js.map → index-DRFKk3XO.js.map} +1 -1
  27. package/dist/assets/{jszip.min-Fi8ZSh6_.js → jszip.min-Bc2dcKUQ.js} +2 -2
  28. package/dist/assets/{jszip.min-Fi8ZSh6_.js.map → jszip.min-Bc2dcKUQ.js.map} +1 -1
  29. package/dist/assets/{node-CVpwl2zT.js → node-CUbIDxs7.js} +2 -2
  30. package/dist/assets/{node-CVpwl2zT.js.map → node-CUbIDxs7.js.map} +1 -1
  31. package/dist/assets/selector-Cex2YDgx.js +6 -0
  32. package/dist/assets/{selector-CvuiOeSR.js.map → selector-Cex2YDgx.js.map} +1 -1
  33. package/dist/assets/{table-73ZlqDpL.js → table-v5Az6tA3.js} +2 -2
  34. package/dist/assets/{table-73ZlqDpL.js.map → table-v5Az6tA3.js.map} +1 -1
  35. package/dist/index.html +3 -3
  36. package/package.json +1 -1
  37. package/dist/assets/SnapshotPage-Dz45lHBm.js.map +0 -1
  38. package/dist/assets/index-BKLhXPOV.js.map +0 -1
  39. package/dist/assets/selector-CvuiOeSR.js +0 -6
@@ -1,2 +1,2 @@
1
- import{j as g}from"./jszip.min-Fi8ZSh6_.js";import{p as _}from"./index-RwQljgyW.js";import{h as A,m as y}from"./fetch-CTgF1Svk.js";import{aJ as E,W as L,aK as P}from"./index-BKLhXPOV.js";const v=(()=>{if(typeof self>"u")return!1;if("top"in self&&self!==top)try{top.window.document._=0}catch{return!1}return"showOpenFilePicker"in self})(),S=v?Promise.resolve().then(function(){return j}):Promise.resolve().then(function(){return N});async function x(...e){return(await S).default(...e)}v?Promise.resolve().then(function(){return R}):Promise.resolve().then(function(){return z});v?Promise.resolve().then(function(){return U}):Promise.resolve().then(function(){return D});const F=async e=>{const t=await e.getFile();return t.handle=e,t};var T=async(e=[{}])=>{Array.isArray(e)||(e=[e]);const t=[];e.forEach((r,a)=>{t[a]={description:r.description||"Files",accept:{}},r.mimeTypes?r.mimeTypes.map(s=>{t[a].accept[s]=r.extensions||[]}):t[a].accept["*/*"]=r.extensions||[]});const i=await window.showOpenFilePicker({id:e[0].id,startIn:e[0].startIn,types:t,multiple:e[0].multiple||!1,excludeAcceptAllOption:e[0].excludeAcceptAllOption||!1}),n=await Promise.all(i.map(F));return e[0].multiple?n:n[0]},j={__proto__:null,default:T};function h(e){function t(i){if(Object(i)!==i)return Promise.reject(new TypeError(i+" is not an object."));var n=i.done;return Promise.resolve(i.value).then(function(r){return{value:r,done:n}})}return h=function(i){this.s=i,this.n=i.next},h.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(i){var n=this.s.return;return n===void 0?Promise.resolve({value:i,done:!0}):t(n.apply(this.s,arguments))},throw:function(i){var n=this.s.return;return n===void 0?Promise.reject(i):t(n.apply(this.s,arguments))}},new h(e)}const k=async(e,t,i=e.name,n)=>{const r=[],a=[];var s,o=!1,c=!1;try{for(var u,l=function(p){var m,f,d,w=2;for(typeof Symbol<"u"&&(f=Symbol.asyncIterator,d=Symbol.iterator);w--;){if(f&&(m=p[f])!=null)return m.call(p);if(d&&(m=p[d])!=null)return new h(m.call(p));f="@@asyncIterator",d="@@iterator"}throw new TypeError("Object is not async iterable")}(e.values());o=!(u=await l.next()).done;o=!1){const p=u.value,m=`${i}/${p.name}`;p.kind==="file"?a.push(p.getFile().then(f=>(f.directoryHandle=e,f.handle=p,Object.defineProperty(f,"webkitRelativePath",{configurable:!0,enumerable:!0,get:()=>m})))):p.kind!=="directory"||!t||n&&n(p)||r.push(k(p,t,m,n))}}catch(p){c=!0,s=p}finally{try{o&&l.return!=null&&await l.return()}finally{if(c)throw s}}return[...(await Promise.all(r)).flat(),...await Promise.all(a)]};var O=async(e={})=>{e.recursive=e.recursive||!1,e.mode=e.mode||"read";const t=await window.showDirectoryPicker({id:e.id,startIn:e.startIn,mode:e.mode});return(await(await t.values()).next()).done?[t]:k(t,e.recursive,void 0,e.skipDirectory)},R={__proto__:null,default:O},I=async(e,t=[{}],i=null,n=!1,r=null)=>{Array.isArray(t)||(t=[t]),t[0].fileName=t[0].fileName||"Untitled";const a=[];let s=null;if(e instanceof Blob&&e.type?s=e.type:e.headers&&e.headers.get("content-type")&&(s=e.headers.get("content-type")),t.forEach((u,l)=>{a[l]={description:u.description||"Files",accept:{}},u.mimeTypes?(l===0&&s&&u.mimeTypes.push(s),u.mimeTypes.map(p=>{a[l].accept[p]=u.extensions||[]})):s?a[l].accept[s]=u.extensions||[]:a[l].accept["*/*"]=u.extensions||[]}),i)try{await i.getFile()}catch(u){if(i=null,n)throw u}const o=i||await window.showSaveFilePicker({suggestedName:t[0].fileName,id:t[0].id,startIn:t[0].startIn,types:a,excludeAcceptAllOption:t[0].excludeAcceptAllOption||!1});!i&&r&&r(o);const c=await o.createWritable();return"stream"in e?(await e.stream().pipeTo(c),o):"body"in e?(await e.body.pipeTo(c),o):(await c.write(await e),await c.close(),o)},U={__proto__:null,default:I},W=async(e=[{}])=>(Array.isArray(e)||(e=[e]),new Promise((t,i)=>{const n=document.createElement("input");n.type="file";const r=[...e.map(c=>c.mimeTypes||[]),...e.map(c=>c.extensions||[])].join();n.multiple=e[0].multiple||!1,n.accept=r||"",n.style.display="none",document.body.append(n);const a=c=>{typeof s=="function"&&s(),t(c)},s=e[0].legacySetup&&e[0].legacySetup(a,()=>s(i),n),o=()=>{window.removeEventListener("focus",o),n.remove()};n.addEventListener("click",()=>{window.addEventListener("focus",o)}),n.addEventListener("change",()=>{window.removeEventListener("focus",o),n.remove(),a(n.multiple?Array.from(n.files):n.files[0])}),"showPicker"in HTMLInputElement.prototype?n.showPicker():n.click()})),N={__proto__:null,default:W},$=async(e=[{}])=>(Array.isArray(e)||(e=[e]),e[0].recursive=e[0].recursive||!1,new Promise((t,i)=>{const n=document.createElement("input");n.type="file",n.webkitdirectory=!0;const r=s=>{typeof a=="function"&&a(),t(s)},a=e[0].legacySetup&&e[0].legacySetup(r,()=>a(i),n);n.addEventListener("change",()=>{let s=Array.from(n.files);e[0].recursive?e[0].recursive&&e[0].skipDirectory&&(s=s.filter(o=>o.webkitRelativePath.split("/").every(c=>!e[0].skipDirectory({name:c,kind:"directory"})))):s=s.filter(o=>o.webkitRelativePath.split("/").length===2),r(s)}),"showPicker"in HTMLInputElement.prototype?n.showPicker():n.click()})),z={__proto__:null,default:$},B=async(e,t={})=>{Array.isArray(t)&&(t=t[0]);const i=document.createElement("a");let n=e;"body"in e&&(n=await async function(s,o){const c=s.getReader(),u=new ReadableStream({start:m=>async function f(){return c.read().then(({done:d,value:w})=>{if(!d)return m.enqueue(w),f();m.close()})}()}),l=new Response(u),p=await l.blob();return c.releaseLock(),new Blob([p],{type:o})}(e.body,e.headers.get("content-type"))),i.download=t.fileName||"Untitled",i.href=URL.createObjectURL(await n);const r=()=>{typeof a=="function"&&a()},a=t.legacySetup&&t.legacySetup(r,()=>a(),i);return i.addEventListener("click",()=>{setTimeout(()=>URL.revokeObjectURL(i.href),3e4),r()}),i.click(),null},D={__proto__:null,default:B};const H=(e,t)=>e.length==t.length&&e.every((i,n)=>i==t[n]),J=(e,t)=>H(new Uint8Array(e.slice(0,t.length)),t),Z=new Uint8Array([80,75,3,4]),q=e=>J(e,Z),b=async e=>{const t=e.filter(a=>a.endsWith(".json"))[0],i=e.filter(a=>a.endsWith(".png"))[0];if(!t||!i)return!1;const n=JSON.parse(await t.async("string")),r=await i.async("arraybuffer");return await P(n,r),!0},V=async()=>{const t=(await x({multiple:!0,mimeTypes:["application/zip"]})).filter(n=>n.name.endsWith(".zip"));if(t.length==0){y.warning("没有发现可导入文件");return}let i=0;t.length>0&&await Promise.any(t.map(async n=>{const r=await g.loadAsync(n);await b(r)&&i++;const a=r.filter(s=>s.endsWith(".zip"));a.length>0&&await Promise.any(a.map(async s=>{const o=await g.loadAsync(s.async("blob"));await b(o)&&i++}))})),i>0?y.success(`导入${i}条记录`):y.warning("没有发现可导入记录")},M=/^\/(i|(import))\/[0-9]+$/,X=async(e=[])=>{if(typeof e=="string"&&(e=[e]),e.length==0)return;e=e.map(r=>{if(r.startsWith(location.origin)||r.startsWith("https://i.gkd.li/")){const a=new URL(r).pathname;if(M.test(a))return`https://github.com/gkd-kit/inspect/files/${a.split("/").at(-1)}/file.zip`}return r}),e=[...new Set(e)];const t=_(2);let i=0;const n=await Promise.allSettled(e.map(r=>t(async()=>{const a=E[r];if(a){const l=await L.getItem(a);if(l)return i++,l}const o=await(await A(r,void 0,{proxy:!0}).catch(l=>{throw y.error(`网络异常: ${new URL(r).host}/${l.message||""}`),console.warn(["download failed",r,l]),l})).arrayBuffer();let c,u;if(q(o)){const l=await g.loadAsync(o),[p]=l.filter(f=>f.endsWith(".json")),[m]=l.filter(f=>f.endsWith(".png"));if(!p||!m)return;u=await m.async("arraybuffer"),c=JSON.parse(await p.async("string"))}else throw new Error("file must be png or zip");return await P(c,u),i++,c})));return i==0?y.warning("没有发现可导入记录"):i==e.length?y.success(`导入${i}条快照`):i<e.length&&y.success(`导入${i}条快照,失败${e.length-i}`),n};export{X as a,V as i};
2
- //# sourceMappingURL=import-mLvizkxQ.js.map
1
+ import{j as g}from"./jszip.min-Bc2dcKUQ.js";import{p as _}from"./index-RwQljgyW.js";import{h as A,m as y}from"./fetch-Dh1CwD9F.js";import{aJ as E,W as L,aK as P}from"./index-CsqlWAKz.js";const v=(()=>{if(typeof self>"u")return!1;if("top"in self&&self!==top)try{top.window.document._=0}catch{return!1}return"showOpenFilePicker"in self})(),S=v?Promise.resolve().then(function(){return j}):Promise.resolve().then(function(){return N});async function x(...e){return(await S).default(...e)}v?Promise.resolve().then(function(){return R}):Promise.resolve().then(function(){return z});v?Promise.resolve().then(function(){return U}):Promise.resolve().then(function(){return D});const F=async e=>{const t=await e.getFile();return t.handle=e,t};var T=async(e=[{}])=>{Array.isArray(e)||(e=[e]);const t=[];e.forEach((r,a)=>{t[a]={description:r.description||"Files",accept:{}},r.mimeTypes?r.mimeTypes.map(s=>{t[a].accept[s]=r.extensions||[]}):t[a].accept["*/*"]=r.extensions||[]});const i=await window.showOpenFilePicker({id:e[0].id,startIn:e[0].startIn,types:t,multiple:e[0].multiple||!1,excludeAcceptAllOption:e[0].excludeAcceptAllOption||!1}),n=await Promise.all(i.map(F));return e[0].multiple?n:n[0]},j={__proto__:null,default:T};function h(e){function t(i){if(Object(i)!==i)return Promise.reject(new TypeError(i+" is not an object."));var n=i.done;return Promise.resolve(i.value).then(function(r){return{value:r,done:n}})}return h=function(i){this.s=i,this.n=i.next},h.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(i){var n=this.s.return;return n===void 0?Promise.resolve({value:i,done:!0}):t(n.apply(this.s,arguments))},throw:function(i){var n=this.s.return;return n===void 0?Promise.reject(i):t(n.apply(this.s,arguments))}},new h(e)}const k=async(e,t,i=e.name,n)=>{const r=[],a=[];var s,o=!1,c=!1;try{for(var u,l=function(p){var m,f,d,w=2;for(typeof Symbol<"u"&&(f=Symbol.asyncIterator,d=Symbol.iterator);w--;){if(f&&(m=p[f])!=null)return m.call(p);if(d&&(m=p[d])!=null)return new h(m.call(p));f="@@asyncIterator",d="@@iterator"}throw new TypeError("Object is not async iterable")}(e.values());o=!(u=await l.next()).done;o=!1){const p=u.value,m=`${i}/${p.name}`;p.kind==="file"?a.push(p.getFile().then(f=>(f.directoryHandle=e,f.handle=p,Object.defineProperty(f,"webkitRelativePath",{configurable:!0,enumerable:!0,get:()=>m})))):p.kind!=="directory"||!t||n&&n(p)||r.push(k(p,t,m,n))}}catch(p){c=!0,s=p}finally{try{o&&l.return!=null&&await l.return()}finally{if(c)throw s}}return[...(await Promise.all(r)).flat(),...await Promise.all(a)]};var O=async(e={})=>{e.recursive=e.recursive||!1,e.mode=e.mode||"read";const t=await window.showDirectoryPicker({id:e.id,startIn:e.startIn,mode:e.mode});return(await(await t.values()).next()).done?[t]:k(t,e.recursive,void 0,e.skipDirectory)},R={__proto__:null,default:O},I=async(e,t=[{}],i=null,n=!1,r=null)=>{Array.isArray(t)||(t=[t]),t[0].fileName=t[0].fileName||"Untitled";const a=[];let s=null;if(e instanceof Blob&&e.type?s=e.type:e.headers&&e.headers.get("content-type")&&(s=e.headers.get("content-type")),t.forEach((u,l)=>{a[l]={description:u.description||"Files",accept:{}},u.mimeTypes?(l===0&&s&&u.mimeTypes.push(s),u.mimeTypes.map(p=>{a[l].accept[p]=u.extensions||[]})):s?a[l].accept[s]=u.extensions||[]:a[l].accept["*/*"]=u.extensions||[]}),i)try{await i.getFile()}catch(u){if(i=null,n)throw u}const o=i||await window.showSaveFilePicker({suggestedName:t[0].fileName,id:t[0].id,startIn:t[0].startIn,types:a,excludeAcceptAllOption:t[0].excludeAcceptAllOption||!1});!i&&r&&r(o);const c=await o.createWritable();return"stream"in e?(await e.stream().pipeTo(c),o):"body"in e?(await e.body.pipeTo(c),o):(await c.write(await e),await c.close(),o)},U={__proto__:null,default:I},W=async(e=[{}])=>(Array.isArray(e)||(e=[e]),new Promise((t,i)=>{const n=document.createElement("input");n.type="file";const r=[...e.map(c=>c.mimeTypes||[]),...e.map(c=>c.extensions||[])].join();n.multiple=e[0].multiple||!1,n.accept=r||"",n.style.display="none",document.body.append(n);const a=c=>{typeof s=="function"&&s(),t(c)},s=e[0].legacySetup&&e[0].legacySetup(a,()=>s(i),n),o=()=>{window.removeEventListener("focus",o),n.remove()};n.addEventListener("click",()=>{window.addEventListener("focus",o)}),n.addEventListener("change",()=>{window.removeEventListener("focus",o),n.remove(),a(n.multiple?Array.from(n.files):n.files[0])}),"showPicker"in HTMLInputElement.prototype?n.showPicker():n.click()})),N={__proto__:null,default:W},$=async(e=[{}])=>(Array.isArray(e)||(e=[e]),e[0].recursive=e[0].recursive||!1,new Promise((t,i)=>{const n=document.createElement("input");n.type="file",n.webkitdirectory=!0;const r=s=>{typeof a=="function"&&a(),t(s)},a=e[0].legacySetup&&e[0].legacySetup(r,()=>a(i),n);n.addEventListener("change",()=>{let s=Array.from(n.files);e[0].recursive?e[0].recursive&&e[0].skipDirectory&&(s=s.filter(o=>o.webkitRelativePath.split("/").every(c=>!e[0].skipDirectory({name:c,kind:"directory"})))):s=s.filter(o=>o.webkitRelativePath.split("/").length===2),r(s)}),"showPicker"in HTMLInputElement.prototype?n.showPicker():n.click()})),z={__proto__:null,default:$},B=async(e,t={})=>{Array.isArray(t)&&(t=t[0]);const i=document.createElement("a");let n=e;"body"in e&&(n=await async function(s,o){const c=s.getReader(),u=new ReadableStream({start:m=>async function f(){return c.read().then(({done:d,value:w})=>{if(!d)return m.enqueue(w),f();m.close()})}()}),l=new Response(u),p=await l.blob();return c.releaseLock(),new Blob([p],{type:o})}(e.body,e.headers.get("content-type"))),i.download=t.fileName||"Untitled",i.href=URL.createObjectURL(await n);const r=()=>{typeof a=="function"&&a()},a=t.legacySetup&&t.legacySetup(r,()=>a(),i);return i.addEventListener("click",()=>{setTimeout(()=>URL.revokeObjectURL(i.href),3e4),r()}),i.click(),null},D={__proto__:null,default:B};const H=(e,t)=>e.length==t.length&&e.every((i,n)=>i==t[n]),J=(e,t)=>H(new Uint8Array(e.slice(0,t.length)),t),Z=new Uint8Array([80,75,3,4]),q=e=>J(e,Z),b=async e=>{const t=e.filter(a=>a.endsWith(".json"))[0],i=e.filter(a=>a.endsWith(".png"))[0];if(!t||!i)return!1;const n=JSON.parse(await t.async("string")),r=await i.async("arraybuffer");return await P(n,r),!0},V=async()=>{const t=(await x({multiple:!0,mimeTypes:["application/zip"]})).filter(n=>n.name.endsWith(".zip"));if(t.length==0){y.warning("没有发现可导入文件");return}let i=0;t.length>0&&await Promise.any(t.map(async n=>{const r=await g.loadAsync(n);await b(r)&&i++;const a=r.filter(s=>s.endsWith(".zip"));a.length>0&&await Promise.any(a.map(async s=>{const o=await g.loadAsync(s.async("blob"));await b(o)&&i++}))})),i>0?y.success(`导入${i}条记录`):y.warning("没有发现可导入记录")},M=/^\/(i|(import))\/[0-9]+$/,X=async(e=[])=>{if(typeof e=="string"&&(e=[e]),e.length==0)return;e=e.map(r=>{if(r.startsWith(location.origin)||r.startsWith("https://i.gkd.li/")){const a=new URL(r).pathname;if(M.test(a))return`https://github.com/gkd-kit/inspect/files/${a.split("/").at(-1)}/file.zip`}return r}),e=[...new Set(e)];const t=_(2);let i=0;const n=await Promise.allSettled(e.map(r=>t(async()=>{const a=E[r];if(a){const l=await L.getItem(a);if(l)return i++,l}const o=await(await A(r,void 0,{proxy:!0}).catch(l=>{throw y.error(`网络异常: ${new URL(r).host}/${l.message||""}`),console.warn(["download failed",r,l]),l})).arrayBuffer();let c,u;if(q(o)){const l=await g.loadAsync(o),[p]=l.filter(f=>f.endsWith(".json")),[m]=l.filter(f=>f.endsWith(".png"));if(!p||!m)return;u=await m.async("arraybuffer"),c=JSON.parse(await p.async("string"))}else throw new Error("file must be png or zip");return await P(c,u),i++,c})));return i==0?y.warning("没有发现可导入记录"):i==e.length?y.success(`导入${i}条快照`):i<e.length&&y.success(`导入${i}条快照,失败${e.length-i}`),n};export{X as a,V as i};
2
+ //# sourceMappingURL=import-BUUhS7Fi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"import-mLvizkxQ.js","sources":["../../node_modules/.pnpm/browser-fs-access@0.35.0/node_modules/browser-fs-access/dist/index.modern.js","../../src/utils/file_type.ts","../../src/utils/import.ts"],"sourcesContent":["const e=(()=>{if(\"undefined\"==typeof self)return!1;if(\"top\"in self&&self!==top)try{top.window.document._=0}catch(e){return!1}return\"showOpenFilePicker\"in self})(),t=e?Promise.resolve().then(function(){return l}):Promise.resolve().then(function(){return v});async function n(...e){return(await t).default(...e)}const r=e?Promise.resolve().then(function(){return y}):Promise.resolve().then(function(){return b});async function i(...e){return(await r).default(...e)}const a=e?Promise.resolve().then(function(){return m}):Promise.resolve().then(function(){return k});async function o(...e){return(await a).default(...e)}const s=async e=>{const t=await e.getFile();return t.handle=e,t};var c=async(e=[{}])=>{Array.isArray(e)||(e=[e]);const t=[];e.forEach((e,n)=>{t[n]={description:e.description||\"Files\",accept:{}},e.mimeTypes?e.mimeTypes.map(r=>{t[n].accept[r]=e.extensions||[]}):t[n].accept[\"*/*\"]=e.extensions||[]});const n=await window.showOpenFilePicker({id:e[0].id,startIn:e[0].startIn,types:t,multiple:e[0].multiple||!1,excludeAcceptAllOption:e[0].excludeAcceptAllOption||!1}),r=await Promise.all(n.map(s));return e[0].multiple?r:r[0]},l={__proto__:null,default:c};function u(e){function t(e){if(Object(e)!==e)return Promise.reject(new TypeError(e+\" is not an object.\"));var t=e.done;return Promise.resolve(e.value).then(function(e){return{value:e,done:t}})}return u=function(e){this.s=e,this.n=e.next},u.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var n=this.s.return;return void 0===n?Promise.resolve({value:e,done:!0}):t(n.apply(this.s,arguments))},throw:function(e){var n=this.s.return;return void 0===n?Promise.reject(e):t(n.apply(this.s,arguments))}},new u(e)}const p=async(e,t,n=e.name,r)=>{const i=[],a=[];var o,s=!1,c=!1;try{for(var l,d=function(e){var t,n,r,i=2;for(\"undefined\"!=typeof Symbol&&(n=Symbol.asyncIterator,r=Symbol.iterator);i--;){if(n&&null!=(t=e[n]))return t.call(e);if(r&&null!=(t=e[r]))return new u(t.call(e));n=\"@@asyncIterator\",r=\"@@iterator\"}throw new TypeError(\"Object is not async iterable\")}(e.values());s=!(l=await d.next()).done;s=!1){const o=l.value,s=`${n}/${o.name}`;\"file\"===o.kind?a.push(o.getFile().then(t=>(t.directoryHandle=e,t.handle=o,Object.defineProperty(t,\"webkitRelativePath\",{configurable:!0,enumerable:!0,get:()=>s})))):\"directory\"!==o.kind||!t||r&&r(o)||i.push(p(o,t,s,r))}}catch(e){c=!0,o=e}finally{try{s&&null!=d.return&&await d.return()}finally{if(c)throw o}}return[...(await Promise.all(i)).flat(),...await Promise.all(a)]};var d=async(e={})=>{e.recursive=e.recursive||!1,e.mode=e.mode||\"read\";const t=await window.showDirectoryPicker({id:e.id,startIn:e.startIn,mode:e.mode});return(await(await t.values()).next()).done?[t]:p(t,e.recursive,void 0,e.skipDirectory)},y={__proto__:null,default:d},f=async(e,t=[{}],n=null,r=!1,i=null)=>{Array.isArray(t)||(t=[t]),t[0].fileName=t[0].fileName||\"Untitled\";const a=[];let o=null;if(e instanceof Blob&&e.type?o=e.type:e.headers&&e.headers.get(\"content-type\")&&(o=e.headers.get(\"content-type\")),t.forEach((e,t)=>{a[t]={description:e.description||\"Files\",accept:{}},e.mimeTypes?(0===t&&o&&e.mimeTypes.push(o),e.mimeTypes.map(n=>{a[t].accept[n]=e.extensions||[]})):o?a[t].accept[o]=e.extensions||[]:a[t].accept[\"*/*\"]=e.extensions||[]}),n)try{await n.getFile()}catch(e){if(n=null,r)throw e}const s=n||await window.showSaveFilePicker({suggestedName:t[0].fileName,id:t[0].id,startIn:t[0].startIn,types:a,excludeAcceptAllOption:t[0].excludeAcceptAllOption||!1});!n&&i&&i(s);const c=await s.createWritable();if(\"stream\"in e){const t=e.stream();return await t.pipeTo(c),s}return\"body\"in e?(await e.body.pipeTo(c),s):(await c.write(await e),await c.close(),s)},m={__proto__:null,default:f},w=async(e=[{}])=>(Array.isArray(e)||(e=[e]),new Promise((t,n)=>{const r=document.createElement(\"input\");r.type=\"file\";const i=[...e.map(e=>e.mimeTypes||[]),...e.map(e=>e.extensions||[])].join();r.multiple=e[0].multiple||!1,r.accept=i||\"\",r.style.display=\"none\",document.body.append(r);const a=e=>{\"function\"==typeof o&&o(),t(e)},o=e[0].legacySetup&&e[0].legacySetup(a,()=>o(n),r),s=()=>{window.removeEventListener(\"focus\",s),r.remove()};r.addEventListener(\"click\",()=>{window.addEventListener(\"focus\",s)}),r.addEventListener(\"change\",()=>{window.removeEventListener(\"focus\",s),r.remove(),a(r.multiple?Array.from(r.files):r.files[0])}),\"showPicker\"in HTMLInputElement.prototype?r.showPicker():r.click()})),v={__proto__:null,default:w},h=async(e=[{}])=>(Array.isArray(e)||(e=[e]),e[0].recursive=e[0].recursive||!1,new Promise((t,n)=>{const r=document.createElement(\"input\");r.type=\"file\",r.webkitdirectory=!0;const i=e=>{\"function\"==typeof a&&a(),t(e)},a=e[0].legacySetup&&e[0].legacySetup(i,()=>a(n),r);r.addEventListener(\"change\",()=>{let t=Array.from(r.files);e[0].recursive?e[0].recursive&&e[0].skipDirectory&&(t=t.filter(t=>t.webkitRelativePath.split(\"/\").every(t=>!e[0].skipDirectory({name:t,kind:\"directory\"})))):t=t.filter(e=>2===e.webkitRelativePath.split(\"/\").length),i(t)}),\"showPicker\"in HTMLInputElement.prototype?r.showPicker():r.click()})),b={__proto__:null,default:h},P=async(e,t={})=>{Array.isArray(t)&&(t=t[0]);const n=document.createElement(\"a\");let r=e;\"body\"in e&&(r=await async function(e,t){const n=e.getReader(),r=new ReadableStream({start:e=>async function t(){return n.read().then(({done:n,value:r})=>{if(!n)return e.enqueue(r),t();e.close()})}()}),i=new Response(r),a=await i.blob();return n.releaseLock(),new Blob([a],{type:t})}(e.body,e.headers.get(\"content-type\"))),n.download=t.fileName||\"Untitled\",n.href=URL.createObjectURL(await r);const i=()=>{\"function\"==typeof a&&a()},a=t.legacySetup&&t.legacySetup(i,()=>a(),n);return n.addEventListener(\"click\",()=>{setTimeout(()=>URL.revokeObjectURL(n.href),3e4),i()}),n.click(),null},k={__proto__:null,default:P};export{i as directoryOpen,h as directoryOpenLegacy,d as directoryOpenModern,n as fileOpen,w as fileOpenLegacy,c as fileOpenModern,o as fileSave,P as fileSaveLegacy,f as fileSaveModern,e as supported};\n","const eqU8 = (a: Uint8Array, b: Uint8Array) => {\n return a.length == b.length && a.every((v, i) => v == b[i]);\n};\nconst startWith = (a: ArrayBuffer, b: Uint8Array) => {\n return eqU8(new Uint8Array(a.slice(0, b.length)), b);\n};\nconst blobStartWith = async (a: Blob, b: Uint8Array) => {\n const bf = await a.slice(0, b.length).arrayBuffer();\n return eqU8(new Uint8Array(bf), b);\n};\nconst zipHeader = new Uint8Array([0x50, 0x4b, 0x03, 0x04]);\n\nexport const isZipBf = (bf: ArrayBuffer) => startWith(bf, zipHeader);\nexport const isZipBlob = async (blob: Blob) => blobStartWith(blob, zipHeader);\n","import { fileOpen } from 'browser-fs-access';\nimport JSZip, { loadAsync } from 'jszip';\nimport pLimit from 'p-limit';\nimport { message } from './discrete';\nimport { enhanceFetch } from './fetch';\nimport { isZipBf } from './file_type';\nimport { setSnapshot, snapshotStorage, urlStorage } from './storage';\nimport type { Snapshot } from './types';\n\nconst parseZip = async (zip: JSZip) => {\n const snapshotFile = zip.filter((s) => s.endsWith(`.json`))[0];\n const screenshotFile = zip.filter((s) => s.endsWith(`.png`))[0];\n if (!snapshotFile || !screenshotFile) {\n return false;\n }\n const snapshot = JSON.parse(await snapshotFile.async('string')) as Snapshot;\n const screenshotBf = await screenshotFile.async('arraybuffer');\n await setSnapshot(snapshot, screenshotBf);\n return true;\n};\n\nexport const importFromLocal = async () => {\n const files = await fileOpen({\n multiple: true,\n mimeTypes: [`application/zip`],\n });\n const zipfiles = files.filter((f) => f.name.endsWith(`.zip`));\n if (zipfiles.length == 0) {\n message.warning(`没有发现可导入文件`);\n return;\n }\n let importNum = 0;\n if (zipfiles.length > 0) {\n await Promise.any(\n zipfiles.map(async (file) => {\n const zip = await loadAsync(file);\n if (await parseZip(zip)) {\n importNum++;\n }\n const subZips = zip.filter((s) => s.endsWith('.zip'));\n if (subZips.length > 0) {\n await Promise.any(\n subZips.map(async (subZip) => {\n const subFile = await loadAsync(subZip.async('blob'));\n if (await parseZip(subFile)) {\n importNum++;\n }\n }),\n );\n }\n }),\n );\n }\n if (importNum > 0) {\n message.success(`导入${importNum}条记录`);\n } else {\n message.warning(`没有发现可导入记录`);\n }\n};\n\nconst importReg = /^\\/(i|(import))\\/[0-9]+$/;\nexport const importFromNetwork = async (urls: string[] | string = []) => {\n if (typeof urls == 'string') {\n urls = [urls];\n }\n if (urls.length == 0) {\n return;\n }\n urls = urls.map((url) => {\n if (\n url.startsWith(location.origin) ||\n url.startsWith('https://i.gkd.li/')\n ) {\n const pathname = new URL(url).pathname;\n if (importReg.test(pathname)) {\n const github_asset_id = pathname.split('/').at(-1)!;\n return `https://github.com/gkd-kit/inspect/files/${github_asset_id}/file.zip`;\n }\n }\n return url;\n });\n urls = [...new Set(urls)];\n const limit = pLimit(2);\n let importNum = 0;\n const result = await Promise.allSettled(\n urls.map((url) => {\n return limit(async () => {\n const snapshotId = urlStorage[url];\n if (snapshotId) {\n const snapshot = await snapshotStorage.getItem(snapshotId);\n if (snapshot) {\n importNum++;\n return snapshot;\n }\n }\n const resp = await enhanceFetch(url, undefined, { proxy: true }).catch(\n (e) => {\n message.error(`网络异常: ${new URL(url).host}/${e.message || ''}`);\n console.warn([`download failed`, url, e]);\n throw e;\n },\n );\n const bf = await resp.arrayBuffer();\n let snapshot: Snapshot;\n let screenshotBf: ArrayBuffer;\n if (isZipBf(bf)) {\n const zip = await loadAsync(bf);\n const [snapshotFile] = zip.filter((p) => p.endsWith(`.json`));\n const [screenshotFile] = zip.filter((p) => p.endsWith(`.png`));\n if (!snapshotFile || !screenshotFile) {\n return;\n }\n screenshotBf = await screenshotFile.async('arraybuffer');\n snapshot = JSON.parse(await snapshotFile.async('string')) as Snapshot;\n } else {\n throw new Error(`file must be png or zip`);\n }\n await setSnapshot(snapshot, screenshotBf);\n importNum++;\n return snapshot;\n });\n }),\n );\n if (importNum == 0) {\n message.warning(`没有发现可导入记录`);\n } else if (importNum == urls.length) {\n message.success(`导入${importNum}条快照`);\n } else if (importNum < urls.length) {\n message.success(`导入${importNum}条快照,失败${urls.length - importNum}`);\n }\n return result;\n};\n"],"names":["e","t","l","v","n","y","b","m","k","s","c","r","u","p","i","o","d","f","w","h","P","a","eqU8","startWith","zipHeader","isZipBf","bf","parseZip","zip","snapshotFile","screenshotFile","snapshot","screenshotBf","setSnapshot","importFromLocal","zipfiles","fileOpen","message","importNum","file","loadAsync","subZips","subZip","subFile","importReg","importFromNetwork","urls","url","pathname","limit","pLimit","result","snapshotId","urlStorage","snapshotStorage","enhanceFetch"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"import-BUUhS7Fi.js","sources":["../../node_modules/.pnpm/browser-fs-access@0.35.0/node_modules/browser-fs-access/dist/index.modern.js","../../src/utils/file_type.ts","../../src/utils/import.ts"],"sourcesContent":["const e=(()=>{if(\"undefined\"==typeof self)return!1;if(\"top\"in self&&self!==top)try{top.window.document._=0}catch(e){return!1}return\"showOpenFilePicker\"in self})(),t=e?Promise.resolve().then(function(){return l}):Promise.resolve().then(function(){return v});async function n(...e){return(await t).default(...e)}const r=e?Promise.resolve().then(function(){return y}):Promise.resolve().then(function(){return b});async function i(...e){return(await r).default(...e)}const a=e?Promise.resolve().then(function(){return m}):Promise.resolve().then(function(){return k});async function o(...e){return(await a).default(...e)}const s=async e=>{const t=await e.getFile();return t.handle=e,t};var c=async(e=[{}])=>{Array.isArray(e)||(e=[e]);const t=[];e.forEach((e,n)=>{t[n]={description:e.description||\"Files\",accept:{}},e.mimeTypes?e.mimeTypes.map(r=>{t[n].accept[r]=e.extensions||[]}):t[n].accept[\"*/*\"]=e.extensions||[]});const n=await window.showOpenFilePicker({id:e[0].id,startIn:e[0].startIn,types:t,multiple:e[0].multiple||!1,excludeAcceptAllOption:e[0].excludeAcceptAllOption||!1}),r=await Promise.all(n.map(s));return e[0].multiple?r:r[0]},l={__proto__:null,default:c};function u(e){function t(e){if(Object(e)!==e)return Promise.reject(new TypeError(e+\" is not an object.\"));var t=e.done;return Promise.resolve(e.value).then(function(e){return{value:e,done:t}})}return u=function(e){this.s=e,this.n=e.next},u.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var n=this.s.return;return void 0===n?Promise.resolve({value:e,done:!0}):t(n.apply(this.s,arguments))},throw:function(e){var n=this.s.return;return void 0===n?Promise.reject(e):t(n.apply(this.s,arguments))}},new u(e)}const p=async(e,t,n=e.name,r)=>{const i=[],a=[];var o,s=!1,c=!1;try{for(var l,d=function(e){var t,n,r,i=2;for(\"undefined\"!=typeof Symbol&&(n=Symbol.asyncIterator,r=Symbol.iterator);i--;){if(n&&null!=(t=e[n]))return t.call(e);if(r&&null!=(t=e[r]))return new u(t.call(e));n=\"@@asyncIterator\",r=\"@@iterator\"}throw new TypeError(\"Object is not async iterable\")}(e.values());s=!(l=await d.next()).done;s=!1){const o=l.value,s=`${n}/${o.name}`;\"file\"===o.kind?a.push(o.getFile().then(t=>(t.directoryHandle=e,t.handle=o,Object.defineProperty(t,\"webkitRelativePath\",{configurable:!0,enumerable:!0,get:()=>s})))):\"directory\"!==o.kind||!t||r&&r(o)||i.push(p(o,t,s,r))}}catch(e){c=!0,o=e}finally{try{s&&null!=d.return&&await d.return()}finally{if(c)throw o}}return[...(await Promise.all(i)).flat(),...await Promise.all(a)]};var d=async(e={})=>{e.recursive=e.recursive||!1,e.mode=e.mode||\"read\";const t=await window.showDirectoryPicker({id:e.id,startIn:e.startIn,mode:e.mode});return(await(await t.values()).next()).done?[t]:p(t,e.recursive,void 0,e.skipDirectory)},y={__proto__:null,default:d},f=async(e,t=[{}],n=null,r=!1,i=null)=>{Array.isArray(t)||(t=[t]),t[0].fileName=t[0].fileName||\"Untitled\";const a=[];let o=null;if(e instanceof Blob&&e.type?o=e.type:e.headers&&e.headers.get(\"content-type\")&&(o=e.headers.get(\"content-type\")),t.forEach((e,t)=>{a[t]={description:e.description||\"Files\",accept:{}},e.mimeTypes?(0===t&&o&&e.mimeTypes.push(o),e.mimeTypes.map(n=>{a[t].accept[n]=e.extensions||[]})):o?a[t].accept[o]=e.extensions||[]:a[t].accept[\"*/*\"]=e.extensions||[]}),n)try{await n.getFile()}catch(e){if(n=null,r)throw e}const s=n||await window.showSaveFilePicker({suggestedName:t[0].fileName,id:t[0].id,startIn:t[0].startIn,types:a,excludeAcceptAllOption:t[0].excludeAcceptAllOption||!1});!n&&i&&i(s);const c=await s.createWritable();if(\"stream\"in e){const t=e.stream();return await t.pipeTo(c),s}return\"body\"in e?(await e.body.pipeTo(c),s):(await c.write(await e),await c.close(),s)},m={__proto__:null,default:f},w=async(e=[{}])=>(Array.isArray(e)||(e=[e]),new Promise((t,n)=>{const r=document.createElement(\"input\");r.type=\"file\";const i=[...e.map(e=>e.mimeTypes||[]),...e.map(e=>e.extensions||[])].join();r.multiple=e[0].multiple||!1,r.accept=i||\"\",r.style.display=\"none\",document.body.append(r);const a=e=>{\"function\"==typeof o&&o(),t(e)},o=e[0].legacySetup&&e[0].legacySetup(a,()=>o(n),r),s=()=>{window.removeEventListener(\"focus\",s),r.remove()};r.addEventListener(\"click\",()=>{window.addEventListener(\"focus\",s)}),r.addEventListener(\"change\",()=>{window.removeEventListener(\"focus\",s),r.remove(),a(r.multiple?Array.from(r.files):r.files[0])}),\"showPicker\"in HTMLInputElement.prototype?r.showPicker():r.click()})),v={__proto__:null,default:w},h=async(e=[{}])=>(Array.isArray(e)||(e=[e]),e[0].recursive=e[0].recursive||!1,new Promise((t,n)=>{const r=document.createElement(\"input\");r.type=\"file\",r.webkitdirectory=!0;const i=e=>{\"function\"==typeof a&&a(),t(e)},a=e[0].legacySetup&&e[0].legacySetup(i,()=>a(n),r);r.addEventListener(\"change\",()=>{let t=Array.from(r.files);e[0].recursive?e[0].recursive&&e[0].skipDirectory&&(t=t.filter(t=>t.webkitRelativePath.split(\"/\").every(t=>!e[0].skipDirectory({name:t,kind:\"directory\"})))):t=t.filter(e=>2===e.webkitRelativePath.split(\"/\").length),i(t)}),\"showPicker\"in HTMLInputElement.prototype?r.showPicker():r.click()})),b={__proto__:null,default:h},P=async(e,t={})=>{Array.isArray(t)&&(t=t[0]);const n=document.createElement(\"a\");let r=e;\"body\"in e&&(r=await async function(e,t){const n=e.getReader(),r=new ReadableStream({start:e=>async function t(){return n.read().then(({done:n,value:r})=>{if(!n)return e.enqueue(r),t();e.close()})}()}),i=new Response(r),a=await i.blob();return n.releaseLock(),new Blob([a],{type:t})}(e.body,e.headers.get(\"content-type\"))),n.download=t.fileName||\"Untitled\",n.href=URL.createObjectURL(await r);const i=()=>{\"function\"==typeof a&&a()},a=t.legacySetup&&t.legacySetup(i,()=>a(),n);return n.addEventListener(\"click\",()=>{setTimeout(()=>URL.revokeObjectURL(n.href),3e4),i()}),n.click(),null},k={__proto__:null,default:P};export{i as directoryOpen,h as directoryOpenLegacy,d as directoryOpenModern,n as fileOpen,w as fileOpenLegacy,c as fileOpenModern,o as fileSave,P as fileSaveLegacy,f as fileSaveModern,e as supported};\n","const eqU8 = (a: Uint8Array, b: Uint8Array) => {\n return a.length == b.length && a.every((v, i) => v == b[i]);\n};\nconst startWith = (a: ArrayBuffer, b: Uint8Array) => {\n return eqU8(new Uint8Array(a.slice(0, b.length)), b);\n};\nconst blobStartWith = async (a: Blob, b: Uint8Array) => {\n const bf = await a.slice(0, b.length).arrayBuffer();\n return eqU8(new Uint8Array(bf), b);\n};\nconst zipHeader = new Uint8Array([0x50, 0x4b, 0x03, 0x04]);\n\nexport const isZipBf = (bf: ArrayBuffer) => startWith(bf, zipHeader);\nexport const isZipBlob = async (blob: Blob) => blobStartWith(blob, zipHeader);\n","import { fileOpen } from 'browser-fs-access';\nimport JSZip, { loadAsync } from 'jszip';\nimport pLimit from 'p-limit';\nimport { message } from './discrete';\nimport { enhanceFetch } from './fetch';\nimport { isZipBf } from './file_type';\nimport { setSnapshot, snapshotStorage, urlStorage } from './storage';\nimport type { Snapshot } from './types';\n\nconst parseZip = async (zip: JSZip) => {\n const snapshotFile = zip.filter((s) => s.endsWith(`.json`))[0];\n const screenshotFile = zip.filter((s) => s.endsWith(`.png`))[0];\n if (!snapshotFile || !screenshotFile) {\n return false;\n }\n const snapshot = JSON.parse(await snapshotFile.async('string')) as Snapshot;\n const screenshotBf = await screenshotFile.async('arraybuffer');\n await setSnapshot(snapshot, screenshotBf);\n return true;\n};\n\nexport const importFromLocal = async () => {\n const files = await fileOpen({\n multiple: true,\n mimeTypes: [`application/zip`],\n });\n const zipfiles = files.filter((f) => f.name.endsWith(`.zip`));\n if (zipfiles.length == 0) {\n message.warning(`没有发现可导入文件`);\n return;\n }\n let importNum = 0;\n if (zipfiles.length > 0) {\n await Promise.any(\n zipfiles.map(async (file) => {\n const zip = await loadAsync(file);\n if (await parseZip(zip)) {\n importNum++;\n }\n const subZips = zip.filter((s) => s.endsWith('.zip'));\n if (subZips.length > 0) {\n await Promise.any(\n subZips.map(async (subZip) => {\n const subFile = await loadAsync(subZip.async('blob'));\n if (await parseZip(subFile)) {\n importNum++;\n }\n }),\n );\n }\n }),\n );\n }\n if (importNum > 0) {\n message.success(`导入${importNum}条记录`);\n } else {\n message.warning(`没有发现可导入记录`);\n }\n};\n\nconst importReg = /^\\/(i|(import))\\/[0-9]+$/;\nexport const importFromNetwork = async (urls: string[] | string = []) => {\n if (typeof urls == 'string') {\n urls = [urls];\n }\n if (urls.length == 0) {\n return;\n }\n urls = urls.map((url) => {\n if (\n url.startsWith(location.origin) ||\n url.startsWith('https://i.gkd.li/')\n ) {\n const pathname = new URL(url).pathname;\n if (importReg.test(pathname)) {\n const github_asset_id = pathname.split('/').at(-1)!;\n return `https://github.com/gkd-kit/inspect/files/${github_asset_id}/file.zip`;\n }\n }\n return url;\n });\n urls = [...new Set(urls)];\n const limit = pLimit(2);\n let importNum = 0;\n const result = await Promise.allSettled(\n urls.map((url) => {\n return limit(async () => {\n const snapshotId = urlStorage[url];\n if (snapshotId) {\n const snapshot = await snapshotStorage.getItem(snapshotId);\n if (snapshot) {\n importNum++;\n return snapshot;\n }\n }\n const resp = await enhanceFetch(url, undefined, { proxy: true }).catch(\n (e) => {\n message.error(`网络异常: ${new URL(url).host}/${e.message || ''}`);\n console.warn([`download failed`, url, e]);\n throw e;\n },\n );\n const bf = await resp.arrayBuffer();\n let snapshot: Snapshot;\n let screenshotBf: ArrayBuffer;\n if (isZipBf(bf)) {\n const zip = await loadAsync(bf);\n const [snapshotFile] = zip.filter((p) => p.endsWith(`.json`));\n const [screenshotFile] = zip.filter((p) => p.endsWith(`.png`));\n if (!snapshotFile || !screenshotFile) {\n return;\n }\n screenshotBf = await screenshotFile.async('arraybuffer');\n snapshot = JSON.parse(await snapshotFile.async('string')) as Snapshot;\n } else {\n throw new Error(`file must be png or zip`);\n }\n await setSnapshot(snapshot, screenshotBf);\n importNum++;\n return snapshot;\n });\n }),\n );\n if (importNum == 0) {\n message.warning(`没有发现可导入记录`);\n } else if (importNum == urls.length) {\n message.success(`导入${importNum}条快照`);\n } else if (importNum < urls.length) {\n message.success(`导入${importNum}条快照,失败${urls.length - importNum}`);\n }\n return result;\n};\n"],"names":["e","t","l","v","n","y","b","m","k","s","c","r","u","p","i","o","d","f","w","h","P","a","eqU8","startWith","zipHeader","isZipBf","bf","parseZip","zip","snapshotFile","screenshotFile","snapshot","screenshotBf","setSnapshot","importFromLocal","zipfiles","fileOpen","message","importNum","file","loadAsync","subZips","subZip","subFile","importReg","importFromNetwork","urls","url","pathname","limit","pLimit","result","snapshotId","urlStorage","snapshotStorage","enhanceFetch"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- import{t as S,w as Q,d as D,e as x,g as U,h as V,n as Y,j as q,k as I,m as K}from"./index-_C6zettz.js";import{A as $,r as E,as as k,T as _,B as G,m as C,Q as X,bj as Z}from"./index-BKLhXPOV.js";function J(e){var t;const n=S(e);return(t=n==null?void 0:n.$el)!=null?t:n}const g=V?window:void 0,ee=V?window.document:void 0;function T(...e){let t,n,s,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,s,a]=e,t=g):[t,n,s,a]=e,!t)return Y;Array.isArray(n)||(n=[n]),Array.isArray(s)||(s=[s]);const r=[],u=()=>{r.forEach(p=>p()),r.length=0},f=(p,i,l,h)=>(p.addEventListener(i,l,h),()=>p.removeEventListener(i,l,h)),c=_(()=>[J(t),S(a)],([p,i])=>{if(u(),!p)return;const l=q(i)?{...i}:i;r.push(...n.flatMap(h=>s.map(O=>f(p,h,O,l))))},{immediate:!0,flush:"post"}),m=()=>{c(),u()};return I(m),m}function te(){const e=E(!1),t=Z();return t&&X(()=>{e.value=!0},t),e}function R(e){const t=te();return C(()=>(t.value,!!e()))}function ne(e,t={}){const{window:n=g}=t,s=R(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let a;const r=E(!1),u=m=>{r.value=m.matches},f=()=>{a&&("removeEventListener"in a?a.removeEventListener("change",u):a.removeListener(u))},c=G(()=>{s.value&&(f(),a=n.matchMedia(S(e)),"addEventListener"in a?a.addEventListener("change",u):a.addListener(u),r.value=a.matches)});return I(()=>{c(),f(),a=void 0}),r}const M=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},A="__vueuse_ssr_handlers__",re=ie();function ie(){return A in M||(M[A]=M[A]||{}),M[A]}function oe(e,t){return re[e]||t}function ae(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const se={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},j="vueuse-storage";function fe(e,t,n,s={}){var a;const{flush:r="pre",deep:u=!0,listenToStorageChanges:f=!0,writeDefaults:c=!0,mergeDefaults:m=!1,shallow:p,window:i=g,eventFilter:l,onError:h=o=>{console.error(o)},initOnMounted:O}=s,w=(p?$:E)(typeof t=="function"?t():t);if(!n)try{n=oe("getDefaultStorage",()=>{var o;return(o=g)==null?void 0:o.localStorage})()}catch(o){h(o)}if(!n)return w;const y=S(t),W=ae(y),b=(a=s.serializer)!=null?a:se[W],{pause:F,resume:L}=Q(w,()=>H(w.value),{flush:r,deep:u,eventFilter:l});i&&f&&D(()=>{T(i,"storage",N),T(i,j,P),O&&N()}),O||N();function z(o,d){i&&i.dispatchEvent(new CustomEvent(j,{detail:{key:e,oldValue:o,newValue:d,storageArea:n}}))}function H(o){try{const d=n.getItem(e);if(o==null)z(d,null),n.removeItem(e);else{const v=b.write(o);d!==v&&(n.setItem(e,v),z(d,v))}}catch(d){h(d)}}function B(o){const d=o?o.newValue:n.getItem(e);if(d==null)return c&&y!=null&&n.setItem(e,b.write(y)),y;if(!o&&m){const v=b.read(d);return typeof m=="function"?m(v,y):W==="object"&&!Array.isArray(v)?{...y,...v}:v}else return typeof d!="string"?d:b.read(d)}function N(o){if(!(o&&o.storageArea!==n)){if(o&&o.key==null){w.value=y;return}if(!(o&&o.key!==e)){F();try{(o==null?void 0:o.newValue)!==b.write(w.value)&&(w.value=B(o))}catch(d){h(d)}finally{o?k(L):L()}}}}function P(o){N(o.detail)}return w}function ue(e,t,n={}){const{window:s=g,...a}=n;let r;const u=R(()=>s&&"MutationObserver"in s),f=()=>{r&&(r.disconnect(),r=void 0)},c=C(()=>{const l=S(e),h=(Array.isArray(l)?l:[l]).map(J).filter(K);return new Set(h)}),m=_(()=>c.value,l=>{f(),u.value&&s&&l.size&&(r=new MutationObserver(t),l.forEach(h=>r.observe(h,a)))},{immediate:!0,flush:"post"}),p=()=>r==null?void 0:r.takeRecords(),i=()=>{f(),m()};return I(i),{isSupported:u,stop:i,takeRecords:p}}function de(e=null,t={}){var n,s,a;const{document:r=ee,restoreOnUnmount:u=i=>i}=t,f=(n=r==null?void 0:r.title)!=null?n:"",c=x((s=e!=null?e:r==null?void 0:r.title)!=null?s:null),m=e&&typeof e=="function";function p(i){if(!("titleTemplate"in t))return i;const l=t.titleTemplate||"%s";return typeof l=="function"?l(i):S(l).replace(/%s/g,i)}return _(c,(i,l)=>{i!==l&&r&&(r.title=p(typeof i=="string"?i:""))},{immediate:!0}),t.observe&&!t.titleTemplate&&r&&!m&&ue((a=r.head)==null?void 0:a.querySelector("title"),()=>{r&&r.title!==c.value&&(c.value=p(r.title))},{childList:!0}),U(()=>{if(u){const i=u(f,c.value||"");i!=null&&r&&(r.title=i)}}),c}function me(e={}){const{window:t=g,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:s=Number.POSITIVE_INFINITY,listenOrientation:a=!0,includeScrollbar:r=!0}=e,u=E(n),f=E(s),c=()=>{t&&(r?(u.value=t.innerWidth,f.value=t.innerHeight):(u.value=t.document.documentElement.clientWidth,f.value=t.document.documentElement.clientHeight))};if(c(),D(c),T("resize",c,{passive:!0}),a){const m=ne("(orientation: portrait)");_(m,()=>c())}return{width:u,height:f}}export{de as a,fe as b,me as u};
2
- //# sourceMappingURL=index-CVvK6gZt.js.map
1
+ import{t as S,w as Q,d as D,e as x,g as U,h as V,n as Y,j as q,k as I,m as K}from"./index-DRFKk3XO.js";import{A as $,r as E,as as k,T as _,B as G,m as C,Q as X,bj as Z}from"./index-CsqlWAKz.js";function J(e){var t;const n=S(e);return(t=n==null?void 0:n.$el)!=null?t:n}const g=V?window:void 0,ee=V?window.document:void 0;function T(...e){let t,n,s,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,s,a]=e,t=g):[t,n,s,a]=e,!t)return Y;Array.isArray(n)||(n=[n]),Array.isArray(s)||(s=[s]);const r=[],u=()=>{r.forEach(p=>p()),r.length=0},f=(p,i,l,h)=>(p.addEventListener(i,l,h),()=>p.removeEventListener(i,l,h)),c=_(()=>[J(t),S(a)],([p,i])=>{if(u(),!p)return;const l=q(i)?{...i}:i;r.push(...n.flatMap(h=>s.map(O=>f(p,h,O,l))))},{immediate:!0,flush:"post"}),m=()=>{c(),u()};return I(m),m}function te(){const e=E(!1),t=Z();return t&&X(()=>{e.value=!0},t),e}function R(e){const t=te();return C(()=>(t.value,!!e()))}function ne(e,t={}){const{window:n=g}=t,s=R(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let a;const r=E(!1),u=m=>{r.value=m.matches},f=()=>{a&&("removeEventListener"in a?a.removeEventListener("change",u):a.removeListener(u))},c=G(()=>{s.value&&(f(),a=n.matchMedia(S(e)),"addEventListener"in a?a.addEventListener("change",u):a.addListener(u),r.value=a.matches)});return I(()=>{c(),f(),a=void 0}),r}const M=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},A="__vueuse_ssr_handlers__",re=ie();function ie(){return A in M||(M[A]=M[A]||{}),M[A]}function oe(e,t){return re[e]||t}function ae(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const se={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},j="vueuse-storage";function fe(e,t,n,s={}){var a;const{flush:r="pre",deep:u=!0,listenToStorageChanges:f=!0,writeDefaults:c=!0,mergeDefaults:m=!1,shallow:p,window:i=g,eventFilter:l,onError:h=o=>{console.error(o)},initOnMounted:O}=s,w=(p?$:E)(typeof t=="function"?t():t);if(!n)try{n=oe("getDefaultStorage",()=>{var o;return(o=g)==null?void 0:o.localStorage})()}catch(o){h(o)}if(!n)return w;const y=S(t),W=ae(y),b=(a=s.serializer)!=null?a:se[W],{pause:F,resume:L}=Q(w,()=>H(w.value),{flush:r,deep:u,eventFilter:l});i&&f&&D(()=>{T(i,"storage",N),T(i,j,P),O&&N()}),O||N();function z(o,d){i&&i.dispatchEvent(new CustomEvent(j,{detail:{key:e,oldValue:o,newValue:d,storageArea:n}}))}function H(o){try{const d=n.getItem(e);if(o==null)z(d,null),n.removeItem(e);else{const v=b.write(o);d!==v&&(n.setItem(e,v),z(d,v))}}catch(d){h(d)}}function B(o){const d=o?o.newValue:n.getItem(e);if(d==null)return c&&y!=null&&n.setItem(e,b.write(y)),y;if(!o&&m){const v=b.read(d);return typeof m=="function"?m(v,y):W==="object"&&!Array.isArray(v)?{...y,...v}:v}else return typeof d!="string"?d:b.read(d)}function N(o){if(!(o&&o.storageArea!==n)){if(o&&o.key==null){w.value=y;return}if(!(o&&o.key!==e)){F();try{(o==null?void 0:o.newValue)!==b.write(w.value)&&(w.value=B(o))}catch(d){h(d)}finally{o?k(L):L()}}}}function P(o){N(o.detail)}return w}function ue(e,t,n={}){const{window:s=g,...a}=n;let r;const u=R(()=>s&&"MutationObserver"in s),f=()=>{r&&(r.disconnect(),r=void 0)},c=C(()=>{const l=S(e),h=(Array.isArray(l)?l:[l]).map(J).filter(K);return new Set(h)}),m=_(()=>c.value,l=>{f(),u.value&&s&&l.size&&(r=new MutationObserver(t),l.forEach(h=>r.observe(h,a)))},{immediate:!0,flush:"post"}),p=()=>r==null?void 0:r.takeRecords(),i=()=>{f(),m()};return I(i),{isSupported:u,stop:i,takeRecords:p}}function de(e=null,t={}){var n,s,a;const{document:r=ee,restoreOnUnmount:u=i=>i}=t,f=(n=r==null?void 0:r.title)!=null?n:"",c=x((s=e!=null?e:r==null?void 0:r.title)!=null?s:null),m=e&&typeof e=="function";function p(i){if(!("titleTemplate"in t))return i;const l=t.titleTemplate||"%s";return typeof l=="function"?l(i):S(l).replace(/%s/g,i)}return _(c,(i,l)=>{i!==l&&r&&(r.title=p(typeof i=="string"?i:""))},{immediate:!0}),t.observe&&!t.titleTemplate&&r&&!m&&ue((a=r.head)==null?void 0:a.querySelector("title"),()=>{r&&r.title!==c.value&&(c.value=p(r.title))},{childList:!0}),U(()=>{if(u){const i=u(f,c.value||"");i!=null&&r&&(r.title=i)}}),c}function me(e={}){const{window:t=g,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:s=Number.POSITIVE_INFINITY,listenOrientation:a=!0,includeScrollbar:r=!0}=e,u=E(n),f=E(s),c=()=>{t&&(r?(u.value=t.innerWidth,f.value=t.innerHeight):(u.value=t.document.documentElement.clientWidth,f.value=t.document.documentElement.clientHeight))};if(c(),D(c),T("resize",c,{passive:!0}),a){const m=ne("(orientation: portrait)");_(m,()=>c())}return{width:u,height:f}}export{de as a,fe as b,me as u};
2
+ //# sourceMappingURL=index-BbsCW5G6.js.map