JSFiddle - React, Tailwind, and code Playground
CSS
LI.object {
padding: 5px;
padding-left: 30px;
list-style: none;
}
JavaScript
// [email protected] - 2011.12.21
(function( global, $ ){
var expFile = /([a-z0-9_\-\.]{1,})/ig
, oRoot = $('<div/>')
, rawData = [
{"name": "README.chromium", "content_type": "application/octet-stream"},
{"name": "buildinf.h", "content_type": "text/x-chdr"},
{"name": "config", "content_type": "application/directory"},
{"name": "config/k8", "content_type": "application/directory"},
{"name": "config/k8/openssl", "content_type": "application/directory"},
{"name": "config/k8/openssl/opensslconf.h", "content_type": "text/x-chdr"},
{"name": "config/piii", "content_type": "application/directory"},
{"name": "config/piii/openssl", "content_type": "application/directory"},
{"name": "config/piii/openssl/opensslconf-posix.h", "content_type": "text/x-chdr"},
{"name": "config/piii/openssl/opensslconf-win32.h", "content_type": "text/x-chdr"},
{"name": "config/piii/openssl/opensslconf.h", "content_type": "text/x-chdr"},
{"name": "openssl.gyp", "content_type": "application/octet-stream"},
{"name": "patches", "content_type": "application/directory"},
{"name": "patches/handshake_cutthrough.patch", "content_type": "text/x-diff"},
{"name": "patches/missing_stddef.patch", "content_type": "text/x-diff"},
{"name": "patches/next_proto_neg.patch", "content_type": "text/x-diff"},
{"name": "patches/posix_c_source.patch", "content_type": "text/x-diff"},
{"name": "patches/snap_start.patch", "content_type": "text/x-diff"}
];
var files = {};
for( var i=0, len=rawData.length; i<len; i++ ){
var pData = parse( rawData[i] );
files[ pData.name ] = pData;
}
drawTree();
oRoot.appendTo( global.document.body );
function drawTree(){
for( var filename in files ){
var o =...