MCPcopy Index your code
hub / github.com/hoothin/UserScripts / handle

Function handle

Picviewer CE+/dist.user.js:16184–16220  ·  view source on GitHub ↗
(items, dir = "")

Source from the content-addressed store, hash-verified

16182 );
16183 if (files.length) {
16184 async function handle(items, dir = "") {
16185 for await (let item of items) {
16186 let name = item.name;
16187 let path = dir + "/" + name;
16188 if (allData.has(path)) continue;
16189 if (item.kind === "directory") {
16190 allData.set(path, true);
16191 await handle(item.values(), path);
16192 } else if (item.kind === "file") {
16193 let file = await item.getFile();
16194 allData.set(path, true);
16195 let src = URL.createObjectURL(file);
16196 let media;
16197 if (file.type.indexOf("image") === 0) {
16198 media = document.createElement('img');
16199 } else if (file.type.indexOf("audio") === 0) {
16200 media = document.createElement('audio');
16201 src = "audio:" + src;
16202 } else if (file.type.indexOf("video") === 0) {
16203 media = createVideo();
16204 src = "video:" + src;
16205 } else continue;
16206 media.src = src;
16207 media.title = path;
16208 var result = {
16209 src: src,
16210 type: 'force',
16211 imgSrc: src,
16212 noActual:true,
16213 description: path,
16214 img: media
16215 };
16216 self.data.push(result);
16217 self._appendThumbSpans([result]);
16218 }
16219 }
16220 }
16221 await handle(files);
16222 self.loadThumb();
16223 }

Callers 1

initFunction · 0.70

Calls 1

createVideoFunction · 0.70

Tested by

no test coverage detected