diff --git a/src/js/components/branch.jsx b/src/js/components/branch.jsx
index 5608af2..62b7c67 100644
--- a/src/js/components/branch.jsx
+++ b/src/js/components/branch.jsx
@@ -2,9 +2,9 @@ import React from 'react'
import TreeView from 'react-treeview'
import File from './file'
-const Branch = ({ nodeLabel, list, href }) => {
+const Branch = ({ nodeLabel, list, href, hasComments }) => {
if (href) {
- return
+ return
}
return (
diff --git a/src/js/components/file.jsx b/src/js/components/file.jsx
index c99f37f..02cbdde 100644
--- a/src/js/components/file.jsx
+++ b/src/js/components/file.jsx
@@ -1,12 +1,12 @@
import React from 'react'
import fileIcons from 'file-icons-js'
-const File = ({ name, href }) => {
+const File = ({ name, href, hasComments }) => {
const className = fileIcons.getClassWithColor(name)
return (
)
}
diff --git a/src/js/lib.js b/src/js/lib.js
index 9993dff..58178d1 100644
--- a/src/js/lib.js
+++ b/src/js/lib.js
@@ -25,6 +25,15 @@ const sorter = (a, b) => {
}
}
+const hasCommentsForFileIndex = (fileIndex) => {
+ const diffTable = document.getElementById(`diff-${fileIndex}`)
+ if (!diffTable) {
+ return 0
+ }
+
+ return diffTable.querySelectorAll('.inline-comments').length
+}
+
export const createFileTree = () => {
const fileInfo = [...document.querySelectorAll('.file-info > a')]
const files = fileInfo.map(({ title, href }) => {
@@ -36,12 +45,13 @@ export const createFileTree = () => {
list: []
}
- files.forEach(({ parts, href }) => {
+ files.forEach(({ parts, href }, fileIndex) => {
let location = tree
parts.forEach((part, index) => {
let node = location.list.find(node => node.nodeLabel === part)
if (!node) {
- node = { nodeLabel: part, list: [], href: (index === parts.length - 1) ? href : null }
+ const hasComments = (hasCommentsForFileIndex(fileIndex) > 0)
+ node = { nodeLabel: part, list: [], href: (index === parts.length - 1) ? href : null, hasComments }
location.list.push(node)
}
location.list = location.list.sort(sorter)