{"version":3,"names":["updateCachedFilesList","_context2","oldlist","fetch","lively4url","then","r","text","split","newlist","self","lively4fetchLog","filter","ea","method","map","url","startsWith","match","replace","list","concat","uniq","call","sort","body","join","purgeTranspiledFiles","transpiledFiles","Files","walkDir","eaURL","defaultFileList","headers","filelist","json","deleteAssociatedTranspiledFiles","path","deleteTranspiledFile","getTranspiledPath","substring","indexOf","transpiledPath","log","undefined","jsURL","mapURL","invalidateTranspiledFiles","files","Map","file","contents","name","set","transpiled","get","modified","invalidateOptionsFiles","optionsPath","opotionsFile","optionsURL","ensureBootlistOptionsFiles","bootfiles","optionsContents","nocommit","console","_export","setters","_filesJs","default","_utils","execute","__SystemJSRewritingHack","_recorder_","_src_client_files_caches_js","Object","defineProperty","thisIsVererySecretVariableName","enumerable","configurable","navigator","serviceWorker","warn","lively","removeEventListener","addEventListener","evt","data","cachedFileMap","push","time","performance","now","err","error"],"sources":["files-caches.js"],"sourcesContent":["import Files from \"./files.js\";\n\nself.lively4fetchLog = self.lively4fetchLog || [];\n\nimport { uniq } from \"utils\";\n\n\nexport async function updateCachedFilesList() {\n\n  var oldlist = (await fetch(lively4url + \"/.lively4bootfilelist\").then(r => r.text())).split(\"\\n\");\n\n  var newlist = self.lively4fetchLog\n    .filter(ea => ea.method == \"GET\")\n    .map(ea => ea.url).filter(ea => ea.startsWith(lively4url))\n    .filter(ea => !ea.match(\"lively4bundle.zip\"))\n    .filter(ea => !ea.match(\"preload.js\")) // keep one file untranspiled, to warm up babel\n    .map(ea => ea.replace(lively4url + \"/\", \"\"));\n\n  var list = newlist.concat(oldlist)::uniq().sort();\n\n  await fetch(lively4url + \"/.lively4bootfilelist\", {\n    method: \"PUT\",\n    body: list.join(\"\\n\"\n      //JSON.stringify(list).replace(/\",/g,'\",\\n') // just a bit pretty print\n    )\n  });\n  return list;\n}\n\nexport async function purgeTranspiledFiles() {\n  var transpiledFiles = await Files.walkDir(lively4url + \"/.transpiled/\");\n  for (var eaURL of transpiledFiles) {\n    await fetch(eaURL, { method: \"DELETE\" });\n  }\n  // should we make it live?\n  return transpiledFiles.map(ea => ea.replace(lively4url + \"/.transpiled/\", \"\"));\n}\n\nfunction defaultFileList() {\n  return fetch(lively4url + \"/\", {\n    method: \"OPTIONS\",\n    headers: {\n      filelist: true\n    }\n  }).then(r => r.json());\n}\n\nexport function deleteAssociatedTranspiledFiles(path) {\n  deleteTranspiledFile(getTranspiledPath(path));\n}\n\nexport function getTranspiledPath(path) {\n  return \".transpiled/\" + (path.substring(path.indexOf(\"src/\"))).replace(/\\//g, \"_\");\n}\n\nfunction deleteTranspiledFile(transpiledPath, log = undefined) {\n  var jsURL = lively4url + \"/\" + transpiledPath;\n  var mapURL = lively4url + \"/\" + transpiledPath + \".map.json\";\n  if (log) {\n    log += \"delete \" + jsURL + \"\\n\";\n    log += \"delete \" + mapURL + \"\\n\";\n  }\n  fetch(jsURL, { method: \"DELETE\" });\n  fetch(mapURL, { method: \"DELETE\" });\n}\n\nexport async function invalidateTranspiledFiles(files) {\n  files = files || (await defaultFileList());\n\n  var log = \"\";\n  var map = new Map(); // make file lookup faster\n  for (let file of files.contents) {\n    let path = file.name.replace(/^\\.\\//, \"\");\n    if (path.match(/^\\.transpiled\\//)) {\n      map.set(path, file);\n    }\n  }\n  for (let file of files.contents) {\n    var path = file.name.replace(/^\\.\\//, \"\");\n    if (path.match(/\\.js$/)) {\n      var transpiledPath = getTranspiledPath(path);\n      var transpiled = map.get(transpiledPath);\n      if (transpiled) {\n        if (file.modified > transpiled.modified) {\n          deleteTranspiledFile(transpiledPath, log);\n        }\n      }\n    }\n  }\n  return log;\n}\n\nexport async function invalidateOptionsFiles(files) {\n  files = files || (await defaultFileList());\n\n  var log = \"\";\n  var map = new Map(); // make file lookup faster\n  for (let file of files.contents) {\n    let path = file.name.replace(/^\\.\\//, \"\");\n    if (path.match(/^\\.options\\//)) {\n      map.set(path, file);\n    }\n  }\n  for (let file of files.contents) {\n    var path = file.name.replace(/^\\.\\//, \"\");\n    var optionsPath = \".options/\" + path.replace(/\\//g, \"_\");\n    var opotionsFile = map.get(optionsPath);\n    if (opotionsFile) {\n      if (file.modified > opotionsFile.modified) {\n        var optionsURL = lively4url + \"/\" + optionsPath;\n        log += \"delete \" + optionsURL + \"\\n\";\n        fetch(optionsURL, { method: \"DELETE\" });\n      }\n    }\n  }\n  return log;\n}\n\nexport async function ensureBootlistOptionsFiles() {\n  var bootfiles = (await fetch(lively4url + \"/\" + \".lively4bootfilelist\").then(r => r.text())).split(\"\\n\");\n  for (var ea of bootfiles) {\n    var optionsContents = await fetch(ea, {\n      method: \"OPTIONS\"\n    }).then(r => r.text());\n\n    var optionsURL = lively4url + \"/.options/\" + ea.replace(/\\//g, \"_\");\n    await fetch(optionsURL, {\n      method: \"PUT\",\n      body: optionsContents,\n      headers: {\n        nocommit: true\n      }\n    });\n    console.log(\"[files-caches] ensureBootlistOptionsFiles: updated \" + ea);\n  }\n}\n\n// updateCachedFilesList()\n\n\nif (!navigator.serviceWorker) {\n  console.warn(\"[files]... could not register message handler with no-existing service worker\");\n} else {\n  lively.removeEventListener(\"files\", navigator.serviceWorker);\n  lively.addEventListener(\"files\", navigator.serviceWorker, \"message\", async evt => {\n    try {\n      if (evt.data.name == 'swx:fech:request') {\n        var map = Files.cachedFileMap();\n        console.log(\"[files] fetch request: \" + evt.data.method + \" \" + evt.data.url);\n        self.lively4fetchLog.push({\n          time: performance.now(),\n          method: evt.data.method,\n          url: evt.data.url\n        });\n      }\n    } catch (err) {\n      console.error(\"[files] error during swx message handling...\", err);\n    }\n  });\n}\n"],"mappings":"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"}