This moves the loader code into `core/base-service`, leaving behind in `services/index.js` only the convenience imports. Ref #2832
21 lines
827 B
JavaScript
21 lines
827 B
JavaScript
'use strict'
|
|
|
|
const chalk = require('chalk')
|
|
|
|
const { namedColors } = require('../gh-badges/lib/color')
|
|
const { floorCount } = require('../lib/color-formatters')
|
|
const { loadServiceClasses } = require('../core/base-service/loader')
|
|
|
|
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(namedColors[color])(`${percentDone}% done`))
|