## 2017-12-01 List Files 

```javascript
import Strings from 'src/client/strings.js'

var listDeep = async function(url) {
  var dir = await fetch(url, { method: 'OPTIONS' }).then(resp => resp.json());
  dir.contents
  dir.contents
  for(let ea of contents) {
    if (ea.type == "directory") {
      ea.contents = listDeep(url + "/" + ea.name).then(ea => ea.contents)
    }
  }
  return dir
}

function printDir(d, level = 0) {
  var s = "" + Strings.indent(d.name, level,"  ") + ""
  if (d.contents) {
    s += ":\n"
    s += d.contents.map(ea => printDir(ea, level + 1)).join("x\n") 
  }
  return s
}


(async () =>{
  var dir = await listDeep(lively4url + "/doc")
  return printDir(dir)
})()
```