LarpixClient/electron/node_modules/dir-compare/src/statistics/statisticsLifecycle.js
olcxja cca8b02fea
Some checks failed
Android Build / publish (push) Successful in 33s
Linux Build / publish (push) Failing after 25s
Update gitignore (sorry)
2026-05-10 14:02:17 +02:00

59 lines
No EOL
2.2 KiB
JavaScript

/**
* Controls creation/completion of global statistics object.
*/
module.exports = {
initStats(options) {
var symlinkStatistics = undefined
if (options.compareSymlink) {
symlinkStatistics = {
distinctSymlinks: 0,
equalSymlinks: 0,
leftSymlinks: 0,
rightSymlinks: 0,
differencesSymlinks: 0,
totalSymlinks: 0,
}
}
var brokenLinksStatistics = {
leftBrokenLinks: 0,
rightBrokenLinks: 0,
distinctBrokenLinks: 0,
}
return {
distinct: 0,
equal: 0,
left: 0,
right: 0,
distinctFiles: 0,
equalFiles: 0,
leftFiles: 0,
rightFiles: 0,
distinctDirs: 0,
equalDirs: 0,
leftDirs: 0,
rightDirs: 0,
brokenLinks: brokenLinksStatistics,
symlinks: symlinkStatistics,
same: undefined
}
},
completeStatistics(statistics, options) {
statistics.differences = statistics.distinct + statistics.left + statistics.right
statistics.differencesFiles = statistics.distinctFiles + statistics.leftFiles + statistics.rightFiles
statistics.differencesDirs = statistics.distinctDirs + statistics.leftDirs + statistics.rightDirs
statistics.total = statistics.equal + statistics.differences
statistics.totalFiles = statistics.equalFiles + statistics.differencesFiles
statistics.totalDirs = statistics.equalDirs + statistics.differencesDirs
var brokenLInksStats = statistics.brokenLinks
brokenLInksStats.totalBrokenLinks = brokenLInksStats.leftBrokenLinks + brokenLInksStats.rightBrokenLinks + brokenLInksStats.distinctBrokenLinks
statistics.same = statistics.differences ? false : true
if (options.compareSymlink) {
statistics.symlinks.differencesSymlinks = statistics.symlinks.distinctSymlinks +
statistics.symlinks.leftSymlinks + statistics.symlinks.rightSymlinks
statistics.symlinks.totalSymlinks = statistics.symlinks.differencesSymlinks + statistics.symlinks.equalSymlinks
}
}
}