coast-team/netflux

View on GitHub

Showing 73 of 75 total issues

Function setLogLevel has a Cognitive Complexity of 45 (exceeds 5 allowed). Consider refactoring.
Confirmed

export function setLogLevel(...levels: LogLevel[]) {
logLevels = levels
if (logLevels.includes(LogLevel.WEB_GROUP)) {
log.webgroup = (msg: string, ...rest: any[]): void => {
if (rest.length === 0) {
Severity: Minor
Found in src/misc/util.log.ts - About 6 hrs to fix

File WebChannel.ts has 404 lines of code (exceeds 250 allowed). Consider refactoring.
Confirmed

import { Observable, Subject } from 'rxjs'
 
import { Channel } from './Channel'
import {
extractHostnameAndPort,
Severity: Minor
Found in src/WebChannel.ts - About 5 hrs to fix

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

    if (logLevels.includes(LogLevel.CHANNEL)) {
    log.channel = (msg: string, ...rest: any[]) => {
    if (rest.length === 0) {
    console.info(`%cNETFLUX Channel%c: ${msg}`, channelCSS, '')
    } else {
    Severity: Major
    Found in src/misc/util.log.ts and 4 other locations - About 5 hrs to fix
    src/misc/util.log.ts on lines 85..95
    src/misc/util.log.ts on lines 111..121
    src/misc/util.log.ts on lines 124..134
    src/misc/util.log.ts on lines 137..147

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

    if (logLevels.includes(LogLevel.WEBRTC)) {
    log.webrtc = (msg: string, ...rest: any[]) => {
    if (rest.length === 0) {
    console.info(`%cNETFLUX WebRTC%c: ${msg}`, webrtcCSS, '')
    } else {
    Severity: Major
    Found in src/misc/util.log.ts and 4 other locations - About 5 hrs to fix
    src/misc/util.log.ts on lines 98..108
    src/misc/util.log.ts on lines 111..121
    src/misc/util.log.ts on lines 124..134
    src/misc/util.log.ts on lines 137..147

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

    if (logLevels.includes(LogLevel.CHANNEL_BUILDER)) {
    log.channelBuilder = (msg: string, ...rest: any[]) => {
    if (rest.length === 0) {
    console.info(`%cNETFLUX ChannelBuilder%c: ${msg}`, channelBuilderCSS, '')
    } else {
    Severity: Major
    Found in src/misc/util.log.ts and 4 other locations - About 5 hrs to fix
    src/misc/util.log.ts on lines 85..95
    src/misc/util.log.ts on lines 98..108
    src/misc/util.log.ts on lines 111..121
    src/misc/util.log.ts on lines 124..134

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

    if (logLevels.includes(LogLevel.TOPOLOGY)) {
    log.topology = (msg: string, ...rest: any[]) => {
    if (rest.length === 0) {
    console.info(`%cNETFLUX Topology%c: ${msg}`, topologyCSS, '')
    } else {
    Severity: Major
    Found in src/misc/util.log.ts and 4 other locations - About 5 hrs to fix
    src/misc/util.log.ts on lines 85..95
    src/misc/util.log.ts on lines 98..108
    src/misc/util.log.ts on lines 124..134
    src/misc/util.log.ts on lines 137..147

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

    if (logLevels.includes(LogLevel.SIGNALING)) {
    log.signaling = (msg: string, ...rest: any[]) => {
    if (rest.length === 0) {
    console.info(`%cNETFLUX Signaling%c: ${msg}`, signalingCSS, '')
    } else {
    Severity: Major
    Found in src/misc/util.log.ts and 4 other locations - About 5 hrs to fix
    src/misc/util.log.ts on lines 85..95
    src/misc/util.log.ts on lines 98..108
    src/misc/util.log.ts on lines 111..121
    src/misc/util.log.ts on lines 137..147

    Function constructor has 114 lines of code (exceeds 25 allowed). Consider refactoring.
    Confirmed

    constructor(options: WebGroupOptions = {}) {
    const wc = new WebChannel(options)
    wcs.set(this, wc)
     
    /**
    Severity: Major
    Found in src/WebChannelFacade.ts - About 4 hrs to fix

      Similar blocks of code found in 2 locations. Consider refactoring.
      Open

      Reflect.defineProperty(this, 'onError', {
      configurable: true,
      enumerable: true,
      get: () => (botServer.onError.name === 'none' ? undefined : botServer.onError),
      set: (handler: (err: Error) => void) => {
      Severity: Major
      Found in src/BotFacade.ts and 1 other location - About 4 hrs to fix
      src/BotFacade.ts on lines 133..144

      Similar blocks of code found in 2 locations. Consider refactoring.
      Open

      Reflect.defineProperty(this, 'onWebGroup', {
      configurable: true,
      enumerable: true,
      get: () => (botServer.onWebGroup.name === 'none' ? undefined : botServer.onWebGroup),
      set: (handler: (wg: WebGroup) => void) => {
      Severity: Major
      Found in src/BotFacade.ts and 1 other location - About 4 hrs to fix
      src/BotFacade.ts on lines 151..162

      File FullMesh.ts has 348 lines of code (exceeds 250 allowed). Consider refactoring.
      Confirmed

      import { Channel, IChannelInitData, MAXIMUM_MISSED_HEARTBEAT } from '../../Channel'
      import { isBrowser, log } from '../../misc/util'
      import { fullMesh as proto } from '../../proto/index'
      import { InWcMsg, WebChannel } from '../../WebChannel'
      import { ConnectionError } from '../channelBuilder/ConnectionError'
      Severity: Minor
      Found in src/service/topology/FullMesh.ts - About 4 hrs to fix

        Function setLogLevel has 105 lines of code (exceeds 25 allowed). Consider refactoring.
        Confirmed

        export function setLogLevel(...levels: LogLevel[]) {
        logLevels = levels
        if (logLevels.includes(LogLevel.WEB_GROUP)) {
        log.webgroup = (msg: string, ...rest: any[]): void => {
        if (rest.length === 0) {
        Severity: Major
        Found in src/misc/util.log.ts - About 4 hrs to fix

          Similar blocks of code found in 3 locations. Consider refactoring.
          Open

          Reflect.defineProperty(this, 'onMyId', {
          configurable: true,
          enumerable: true,
          get: () => (wc.onMyId.name === 'none' ? undefined : wc.onMyId),
          set: (handler: (myId: number) => void) => {
          Severity: Major
          Found in src/WebChannelFacade.ts and 2 other locations - About 3 hrs to fix
          src/WebChannelFacade.ts on lines 221..228
          src/WebChannelFacade.ts on lines 234..241

          Similar blocks of code found in 3 locations. Consider refactoring.
          Open

          Reflect.defineProperty(this, 'onMemberLeave', {
          configurable: true,
          enumerable: true,
          get: () => (wc.onMemberLeave.name === 'none' ? undefined : wc.onMemberLeave),
          set: (handler: (id: number) => void) => {
          Severity: Major
          Found in src/WebChannelFacade.ts and 2 other locations - About 3 hrs to fix
          src/WebChannelFacade.ts on lines 208..215
          src/WebChannelFacade.ts on lines 221..228

          Similar blocks of code found in 3 locations. Consider refactoring.
          Open

          Reflect.defineProperty(this, 'onMemberJoin', {
          configurable: true,
          enumerable: true,
          get: () => (wc.onMemberJoin.name === 'none' ? undefined : wc.onMemberJoin),
          set: (handler: (id: number) => void) => {
          Severity: Major
          Found in src/WebChannelFacade.ts and 2 other locations - About 3 hrs to fix
          src/WebChannelFacade.ts on lines 208..215
          src/WebChannelFacade.ts on lines 234..241

          Similar blocks of code found in 2 locations. Consider refactoring.
          Open

          Reflect.defineProperty(this, 'onStateChange', {
          configurable: true,
          enumerable: true,
          get: () => (wc.onStateChange.name === 'none' ? undefined : wc.onStateChange),
          set: (handler: (state: WebChannelState) => void) => {
          Severity: Major
          Found in src/WebChannelFacade.ts and 1 other location - About 3 hrs to fix
          src/WebChannelFacade.ts on lines 260..268

          Similar blocks of code found in 2 locations. Consider refactoring.
          Open

          Reflect.defineProperty(this, 'onSignalingStateChange', {
          configurable: true,
          enumerable: true,
          get: () =>
          wc.onSignalingStateChange.name === 'none' ? undefined : wc.onSignalingStateChange,
          Severity: Major
          Found in src/WebChannelFacade.ts and 1 other location - About 3 hrs to fix
          src/WebChannelFacade.ts on lines 247..254

          File ChannelBuilder.ts has 322 lines of code (exceeds 250 allowed). Consider refactoring.
          Confirmed

          import { merge, Observable, Subject } from 'rxjs'
           
          import { Channel } from '../../Channel'
          import { isWebRTCSupported, isWebSocketSupported, log } from '../../misc/util'
          import { channelBuilder as proto } from '../../proto/index'
          Severity: Minor
          Found in src/service/channelBuilder/ChannelBuilder.ts - About 3 hrs to fix

            Function handleMessage has 91 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            private handleMessage(
            streamId: number,
            senderId: number,
            recipientId: number,
            msg: proto.Message
            Severity: Major
            Found in src/service/channelBuilder/ChannelBuilder.ts - About 3 hrs to fix

              Function handleMessage has a Cognitive Complexity of 25 (exceeds 5 allowed). Consider refactoring.
              Open

              private handleMessage(
              streamId: number,
              senderId: number,
              recipientId: number,
              msg: proto.Message
              Severity: Minor
              Found in src/service/channelBuilder/ChannelBuilder.ts - About 3 hrs to fix
              Severity
              Category
              Status
              Source
              Language