Refactor git graph code

This commit is contained in:
Tyler Long
2017-04-19 20:17:57 +08:00
parent 95712ea357
commit 7fed3b408e
2 changed files with 19 additions and 20 deletions

View File

@@ -1,6 +1,6 @@
var Logger = require('../../logger') const Logger = require('../../logger')
var log = Logger.Log const log = Logger.Log
var _ = require('lodash') const _ = require('lodash')
var commits = {} var commits = {}
var head = null var head = null
@@ -136,19 +136,18 @@ exports.reset = function (commitRef) {
} }
function upsert (arr, key, newval) { function upsert (arr, key, newval) {
var match = _.find(arr, key) const index = arr.indexOf(key)
if (match) { if (index === -1) {
var index = _.indexOf(arr, _.find(arr, key))
arr.splice(index, 1, newval)
} else {
arr.push(newval) arr.push(newval)
} else {
arr.splice(index, 1, newval)
} }
} }
function prettyPrintCommitHistory (commitArr) { function prettyPrintCommitHistory (commitArr) {
var commit = _.maxBy(commitArr, 'seq') var commit = _.maxBy(commitArr, 'seq')
var line = '' var line = ''
_.each(commitArr, function (c) { commitArr.forEach(function (c) {
if (c === commit) { if (c === commit) {
line += '\t*' line += '\t*'
} else { } else {
@@ -156,8 +155,8 @@ function prettyPrintCommitHistory (commitArr) {
} }
}) })
var label = [line, commit.id, commit.seq] var label = [line, commit.id, commit.seq]
_.each(branches, function (v, k) { _.each(branches, function (value, key) {
if (v === commit.id) label.push(k) if (value === commit.id) label.push(key)
}) })
log.debug(label.join(' ')) log.debug(label.join(' '))
if (Array.isArray(commit.parent)) { if (Array.isArray(commit.parent)) {
@@ -189,8 +188,8 @@ exports.clear = function () {
} }
exports.getBranchesAsObjArray = function () { exports.getBranchesAsObjArray = function () {
var branchArr = _.map(branches, function (v, k) { const branchArr = _.map(branches, function (value, key) {
return { 'name': k, 'commit': commits[v] } return { 'name': key, 'commit': commits[value] }
}) })
return branchArr return branchArr
} }
@@ -201,7 +200,7 @@ exports.getCommitsArray = function () {
var commitArr = Object.keys(commits).map(function (key) { var commitArr = Object.keys(commits).map(function (key) {
return commits[key] return commits[key]
}) })
_.each(commitArr, function (o) { log.debug(o.id) }) commitArr.forEach(function (o) { log.debug(o.id) })
return _.orderBy(commitArr, ['seq'], ['desc']) return _.orderBy(commitArr, ['seq'], ['desc'])
} }
exports.getCurrentBranch = function () { return curBranch } exports.getCurrentBranch = function () { return curBranch }

View File

@@ -1,9 +1,9 @@
var db = require('./gitGraphAst') const db = require('./gitGraphAst')
var _ = require('lodash') const _ = require('lodash')
var gitGraphParser = require('./parser/gitGraph') const gitGraphParser = require('./parser/gitGraph')
var d3 = require('../../d3') const d3 = require('../../d3')
var Logger = require('../../logger') const Logger = require('../../logger')
var log = Logger.Log const log = Logger.Log
var allCommitsDict = {} var allCommitsDict = {}
var branchNum var branchNum