Skip to content

Commit 55ba9da

Browse files
author
Fabio Picheli
authored
Merge pull request #6 from voliva/sortByName
Sort by name (like github does)
2 parents bdbaa78 + 1e74422 commit 55ba9da

File tree

1 file changed

+25
-11
lines changed

1 file changed

+25
-11
lines changed

app/app.js

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -88,27 +88,41 @@ function injectHTML() {
8888
function buildHtmlTree(tree) {
8989
var content = '<ul>';
9090

91+
let unorderedList = [];
9192
for(var key in tree) {
92-
if(key === 'files') continue;
93-
content += `<li class="gct-folder gct-folder-open">
94-
<span class="gct-folder-name">${iconFolder()} ${key}</span>
95-
<div class="gct-sub-folders">${buildHtmlTree(tree[key])}</div>
96-
</li>`;
93+
if(key === 'files') {
94+
unorderedList = unorderedList.concat(tree.files.map(item => ({
95+
type: 'file',
96+
name: item.name,
97+
file: item
98+
})));
99+
}else {
100+
unorderedList.push({
101+
type: 'directory',
102+
name: key
103+
});
104+
}
97105
}
106+
const orderedList = unorderedList.sort((a,b) => a.name.localeCompare(b.name));
98107

99-
if(tree.files) {
100-
tree.files.map(item => {
108+
orderedList.forEach(item => {
109+
if(item.type === 'file') {
101110
content += `
102111
<li class="gct-file">
103-
<a class="gct-file-name" href="${item.link}">${iconFile()} ${item.name}</a>
112+
<a class="gct-file-name" href="${item.file.link}">${iconFile()} ${item.file.name}</a>
104113
<span class="gct-file-changes">
105-
<span class="gct-file-added">+${item.added}</span>
106-
<span class="gct-file-removed">-${item.removed}</span>
114+
<span class="gct-file-added">+${item.file.added}</span>
115+
<span class="gct-file-removed">-${item.file.removed}</span>
107116
</span>
108117
</li>
109118
`;
110-
});
119+
}else {
120+
content += `<li class="gct-folder gct-folder-open">
121+
<span class="gct-folder-name">${iconFolder()} ${item.name}</span>
122+
<div class="gct-sub-folders">${buildHtmlTree(tree[item.name])}</div>
123+
</li>`;
111124
}
125+
});
112126

113127
return content;
114128
}

0 commit comments

Comments
 (0)