UNPKG

lambda-service

Version:
33 lines (29 loc) 664 B
let targetLevel = null let level = 0 export default function(routes) { if (process.env.CODE_SPLITTING_LEVEL) { targetLevel = process.env.CODE_SPLITTING_LEVEL } else { targetLevel = 1 const rootRoute = routes.filter(route => route.path === '/')[0] if (rootRoute && rootRoute.routes) { targetLevel = 2 } } return countRoutes(routes) } function countRoutes(routes) { level += 1 const ret = routes.reduce((memo, route) => { if (level <= targetLevel) { if (route.routes) { memo += countRoutes(route.routes) + 1 } else { memo += 1 } } return memo }, 0) level -= 1 return ret }