23 lines
898 B
JavaScript
23 lines
898 B
JavaScript
'use strict'
|
|
|
|
const chalk = require('chalk')
|
|
const mapValues = require('lodash.mapvalues')
|
|
|
|
const colorscheme = require('../lib/colorscheme.json')
|
|
const colorsMap = mapValues(colorscheme, 'colorB')
|
|
const { floorCount } = require('./color-formatters')
|
|
const { loadServiceClasses } = require('../services')
|
|
|
|
const serviceClasses = loadServiceClasses()
|
|
const legacyServices = serviceClasses
|
|
.map(cls => (typeof cls.registerLegacyRouteHandler === 'function' ? 1 : 0))
|
|
.reduce((a, b) => a + b)
|
|
const newServices = serviceClasses.length - legacyServices
|
|
const percentDone = ((newServices / serviceClasses.length) * 100).toFixed(2)
|
|
const color = floorCount(percentDone, 10, 50, 100)
|
|
|
|
console.log(`Found ${serviceClasses.length} services:`)
|
|
console.log(`- ${legacyServices} legacy services`)
|
|
console.log(`- ${newServices} new services`)
|
|
console.log(chalk.hex(colorsMap[color])(`${percentDone}% done`))
|