single loop
This commit is contained in:
		
							parent
							
								
									904f7944b2
								
							
						
					
					
						commit
						5cdb1cbf89
					
				| @ -3,6 +3,7 @@ | ||||
| <body> | ||||
| <button id="open">open</button> | ||||
| <script type="module"> | ||||
| 
 | ||||
| // Function to walk through the directory and update file handles | ||||
| async function updateFileHandles(dirHandle, extension, path = "", map) { | ||||
|     for await (const entry of dirHandle.values()) { | ||||
| @ -47,6 +48,7 @@ async function checkModifiedDates(map, date) { | ||||
| async function main() { | ||||
|     const dirHandle = await window.showDirectoryPicker(); | ||||
|     const extension = '.html'; // Change this to the desired file extension | ||||
| 
 | ||||
|     let fileHandlesMap = new Map(); | ||||
|     let lastCheckTime = new Date().getTime(); | ||||
| 
 | ||||
| @ -54,21 +56,31 @@ async function main() { | ||||
|         console.log("=========== coarse check =================="); | ||||
|         fileHandlesMap = new Map(); | ||||
|         await updateFileHandles(dirHandle, extension, "", fileHandlesMap); | ||||
|         setTimeout(CoarseCheck, 10000); | ||||
|     }; | ||||
|      | ||||
|     const FineCheck =async()=>{ | ||||
|         console.log("---- fine check ----") | ||||
|         const focusFiles = await checkModifiedDates(fileHandlesMap, new Date(lastCheckTime)); | ||||
|         if (focusFiles.length) { | ||||
|             console.log("Updated files:", focusFiles); | ||||
|             // Open the updated files or handle them as needed | ||||
|         } | ||||
|         lastCheckTime = new Date().getTime(); | ||||
|         setTimeout(FineCheck, 1000); | ||||
|     } | ||||
| 
 | ||||
|     CoarseCheck(); | ||||
|     FineCheck(); | ||||
|     let count = 0; | ||||
|     const Loop =async()=> | ||||
|     { | ||||
|         if (count === 0) { | ||||
|             await CoarseCheck(); | ||||
|         } | ||||
|         await FineCheck(); | ||||
|         count += 1; | ||||
|         count %= 10; | ||||
|         setTimeout(Loop, 1000); | ||||
|     } | ||||
| 
 | ||||
|     Loop(); | ||||
| } | ||||
| 
 | ||||
| document.getElementById("open").addEventListener("click", main); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user