Fusion.js
Conditional Complexity

Intro
  • Conditional complexity (also called cyclomatic complexity) is a term used to measure the complexity of software. The term refers to the number of possible paths through a program function. A higher value ofter means higher maintenance and testing costs (infosecinstitute.com).
  • Conditional complexity is calculated by counting all conditions in the program that can affect the execution path (e.g. if statement, loops, switches, and/or operators, try and catch blocks...).
  • Conditional complexity is measured at the unit level (methods, functions...).
  • Units are classified in four categories based on the measured McCabe index: 1-5 (simple units), 6-10 (medium complex units), 11-25 (complex units), 26+ (very complex units).
Learn more...
Conditional Complexity Overall
  • There are 527 units with 7,730 lines of code in units (35.1% of code).
    • 1 very complex units (443 lines of code)
    • 3 complex units (370 lines of code)
    • 8 medium complex units (603 lines of code)
    • 38 simple units (1,239 lines of code)
    • 477 very simple units (5,075 lines of code)
5% | 4% | 7% | 16% | 65%
Legend:
51+
26-50
11-25
6-10
1-5
Alternative Visuals
Conditional Complexity per Extension
js5% | 4% | 7% | 16% | 65%
Legend:
51+
26-50
11-25
6-10
1-5
Conditional Complexity per Logical Component
primary logical decomposition
fusion-cli17% | 9% | 12% | 11% | 49%
fusion-core0% | 20% | 0% | 9% | 69%
jazelle0% | 0% | 38% | 6% | 55%
fusion-plugin-service-worker0% | 0% | 0% | 53% | 46%
fusion-plugin-apollo0% | 0% | 0% | 68% | 31%
fusion-plugin-browser-performance-emitter0% | 0% | 0% | 38% | 61%
fusion-plugin-i18n0% | 0% | 0% | 56% | 43%
fusion-plugin-font-loader-react0% | 0% | 0% | 36% | 63%
fusion-rpc-redux0% | 0% | 0% | 51% | 48%
create-fusion-app0% | 0% | 0% | 89% | 10%
fusion-plugin-rpc0% | 0% | 0% | 57% | 42%
fusion-react0% | 0% | 0% | 14% | 85%
fusion-plugin-react-redux0% | 0% | 0% | 24% | 75%
fusion-plugin-service-worker-tests0% | 0% | 0% | 49% | 50%
fusion-plugin-introspect0% | 0% | 0% | 33% | 66%
fusion-plugin-react-router0% | 0% | 0% | 21% | 78%
fusion-scaffolder0% | 0% | 0% | 0% | 100%
fusion-plugin-universal-events0% | 0% | 0% | 0% | 100%
fusion-plugin-http-handler0% | 0% | 0% | 0% | 100%
fusion-plugin-rpc-redux-react0% | 0% | 0% | 0% | 100%
fusion-plugin-styletron-react0% | 0% | 0% | 0% | 100%
fusion-plugin-i18n-react0% | 0% | 0% | 0% | 100%
fusion-plugin-csrf-protection0% | 0% | 0% | 0% | 100%
fusion-plugin-redux-action-emitter-enhancer0% | 0% | 0% | 0% | 100%
fusion-plugin-node-performance-emitter0% | 0% | 0% | 0% | 100%
fusion-plugin-error-handling0% | 0% | 0% | 0% | 100%
flow-typed0% | 0% | 0% | 0% | 100%
create-fusion-plugin0% | 0% | 0% | 0% | 100%
fusion-plugin-jwt0% | 0% | 0% | 0% | 100%
fusion-plugin-universal-logger0% | 0% | 0% | 0% | 100%
fusion-plugin-web-app-manifest0% | 0% | 0% | 0% | 100%
Legend:
51+
26-50
11-25
6-10
1-5
Most Complex Units
Top 50 most complex units
Unit# linesMcCabe index# params
function getWebpackConfig()
in fusion-cli/build/get-webpack-config.js
443 95 1
resolve()
in fusion-core/src/base-app.js
140 37 0
function isValid()
in fusion-cli/build/load-fusionrc.js
119 34 2
function refsHandler()
in fusion-cli/build/babel-plugins/babel-plugin-i18n/index.js
111 26 4
function checkModuleSupport()
in fusion-cli/plugins/ssr-plugin.js
20 16 2
apply()
in fusion-cli/build/plugins/instrumented-import-dependency-template-plugin.js
67 12 1
apply()
in fusion-cli/build/plugins/source-map-plugin.js
53 12 1
function mergeChunkMetadata()
in fusion-cli/build/merge-chunk-metadata.js
49 12 1
await cli()
in jazelle/index.js
217 12 6
async function runTransformation()
in fusion-cli/build/loaders/babel-worker.js
77 11 7
module.exports.pitch = function()
in fusion-cli/build/loaders/worker-loader.js
61 11 1
async function runMaster()
in jazelle/bin/cluster.js
59 11 0
function chunkIndexFromWebpackChunks()
in fusion-cli/build/plugins/client-chunk-metadata-state-hydrator-plugin.js
28 10 1
export default()
in fusion-plugin-apollo/src/plugin.js
94 10 1
async request()
in fusion-plugin-rpc/src/server.js
47 9 2
ImportDeclaration()
in fusion-cli/build/babel-plugins/babel-plugin-utils/visit-named-module.js
26 9 2
constructor()
in fusion-plugin-react-redux/src/browser.js
34 9 1
calculate()
in fusion-plugin-browser-performance-emitter/src/browser.js
25 9 2
export function createRPCHandler()
in fusion-rpc-redux/src/index.js
53 9 12
function runCommand()
in jazelle/rules/execute-command.js
46 9 2
export function matchesLiteralSections()
in fusion-plugin-i18n/src/node.js
29 9 1
function getChunkGroupModules()
in fusion-cli/build/plugins/instrumented-import-dependency-template-plugin.js
25 8 1
function transform()
in fusion-cli/build/loaders/babel-worker.js
14 8 2
function swLoader()
in fusion-cli/build/loaders/sw-loader.js
32 8 0
async function startServer()
in create-fusion-app/test-utils/test-utils.js
52 8 0
export default()
in fusion-plugin-service-worker/src/server.js
49 8 11
function resolvePlugin()
in fusion-core/src/base-app.js
14 8 1
async load()
in fusion-plugin-i18n/src/browser.js
45 8 1
function getStatsLogger()
in fusion-cli/build/compiler.js
38 7 3
function getCalculatedStats()
in fusion-plugin-browser-performance-emitter/src/server.js
52 7 3
function isEmpty()
in fusion-plugin-browser-performance-emitter/src/server.js
12 7 1
middleware()
in fusion-plugin-introspect/src/server.js
30 7 1
export default function getHandlers()
in fusion-plugin-service-worker/src/handlers.js
93 7 1
isResolved()
in fusion-react/src/async/prepare.js
24 7 3
export default function()
in fusion-cli/plugins/assets-plugin.js
37 6 1
You are using a legacy browser but only the modern bundle has been built()
in fusion-cli/plugins/ssr-plugin.js
15 6 1
function getEnvBanner()
in fusion-cli/build/get-webpack-config.js
14 6 1
async function loader()
in fusion-cli/build/loaders/babel-loader.js
41 6 3
function getReactVersion()
in fusion-cli/build/jest/base-jest-config.js
10 6 1
function extractResourceType()
in fusion-plugin-browser-performance-emitter/src/server.js
15 6 1
function responseIsOKAndHtml()
in fusion-plugin-service-worker/src/handlers.js
9 6 1
function WithAsyncComponent()
in fusion-react/src/async/split.js
19 6 1
function getClient()
in fusion-plugin-apollo/src/apollo-client/index.js
30 6 2
function useFontLoading()
in fusion-plugin-font-loader-react/src/use-font-loading.js
29 6 1
export default function generateFallbackMap()
in fusion-plugin-font-loader-react/src/generate-fallback-map.js
31 6 2
getRouterStaticContext()
in fusion-plugin-react-router/src/modules/ServerRouter.js
26 6 0
export default function getRendererPlugin()
in fusion-core/src/plugins/server-renderer.js
23 6 5
_register()
in fusion-core/src/base-app.js
31 6 2
function getKeysFromContext()
in fusion-plugin-i18n/src/node.js
15 6 1
export default()
in fusion-plugin-service-worker-tests/src/main.js
32 6 0