rafal-r/airr-react

View on GitHub

Showing 26 of 26 total issues

File Sidepanel.tsx has 372 lines of code (exceeds 250 allowed). Consider refactoring.
Open

import * as React from "react";
import { PureComponent, ReactNode, RefObject, CSSProperties } from "react";
import { isMobileDevice, supportPassive } from "./eventHelpers";
import { Placement, TouchPosition } from "./Airr";
import {
Severity: Minor
Found in lib/Sidepanel.tsx - About 4 hrs to fix

    Function NavbarRenderer has a Cognitive Complexity of 26 (exceeds 5 allowed). Consider refactoring.
    Open

    const NavbarRenderer = React.memo<NavbarRendererProps>(function NavbarRenderer({
    navbar,
    activeViewIndex,
    backButtonOnFirstView,
    handleBackButton,
    Severity: Minor
    Found in lib/SceneRenderer/NavbarRenderer.tsx - About 3 hrs to fix

    File Scene.tsx has 300 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    import * as React from "react";
    import { ReactNode, RefObject, PureComponent } from "react";
    import SceneRenderer, { sceneDefaultProps } from "./SceneRenderer";
    import Sidepanel from "./Sidepanel";
    import View, { CommonViewClass } from "./View";
    Severity: Minor
    Found in lib/Scene.tsx - About 3 hrs to fix

      Scene has 26 functions (exceeds 20 allowed). Consider refactoring.
      Open

      export default class Scene<P extends SceneProps = SceneProps, S extends SceneState = SceneState>
      extends PureComponent<P, S>
      implements CommonViewClass {
      static defaultProps = {
      ...sceneDefaultProps,
      Severity: Minor
      Found in lib/Scene.tsx - About 3 hrs to fix

        Function render has 62 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

        render(): ReactNode {
        let className = "airr-view airr-scene";
        this.props.active && (className += " active");
        this.props.className && (className += " " + this.props.className);
         
         
        Severity: Major
        Found in lib/SceneRenderer.tsx - About 2 hrs to fix

          Function changeView has 50 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

          static changeView(
          scene: Scene,
          view: string | ViewConfig<CommonViewProps>,
          viewProps: ViewProps | {} = {},
          sceneProps: SceneProps | {} = {}
          Severity: Minor
          Found in lib/Scene/ViewsAPIHelper.ts - About 2 hrs to fix

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

            function doViewsAnimation({
            newViewComp,
            oldViewComp,
            newViewIndex,
            oldViewIndex,
            Severity: Major
            Found in lib/Scene/ViewsAnimationHelpers.ts and 1 other location - About 1 hr to fix
            lib/SceneRenderer/NavbarRenderer.tsx on lines 20..96

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

            const NavbarRenderer = React.memo<NavbarRendererProps>(function NavbarRenderer({
            navbar,
            activeViewIndex,
            backButtonOnFirstView,
            handleBackButton,
            Severity: Major
            Found in lib/SceneRenderer/NavbarRenderer.tsx and 1 other location - About 1 hr to fix
            lib/Scene/ViewsAnimationHelpers.ts on lines 37..99

            Function getViewsTransitionConfig has 37 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            export function getViewsTransitionConfig(
            newViewName: string,
            scene: Scene,
            callback: () => void
            ): PerformViewsTransitionConfig {
            Severity: Minor
            Found in lib/Scene/ViewsAnimationHelpers.ts - About 1 hr to fix

              Function doBackButtonAnimation has 36 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

              export function doBackButtonAnimation(
              type: "hide" | "show",
              element: HTMLElement,
              animationTime: number
              ): void {
              Severity: Minor
              Found in lib/Scene/ItemsAnimationHelpers.ts - About 1 hr to fix

                Function performViewsAnimation has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                static performViewsAnimation(scene: Scene, newViewName: string): Promise<void> {
                if (typeof newViewName === "string") {
                scene.viewChangeInProgress = true;
                 
                return new Promise(
                Severity: Minor
                Found in lib/Scene/ViewsAPIHelper.ts - About 1 hr to fix

                  Function getOverlayAnimationConfig has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                  function getOverlayAnimationConfig(config: OverlayAnimationConfig): TransitionAnimationConfig {
                  const { dom, width, height, t, callback, headTo, appearFrom } = config;
                  let startProps: TransitionAnimationConfig["startProps"],
                  endProps: TransitionAnimationConfig["endProps"],
                  transform: string,
                  Severity: Minor
                  Found in lib/MayerHelper.ts - About 1 hr to fix

                    Function doVerticalScrollAnimation has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
                    Open

                    export function doVerticalScrollAnimation(
                    element: HTMLElement,
                    scrollDuration: number,
                    direction: Placement
                    ): void {
                    Severity: Minor
                    Found in lib/FX.ts - About 55 mins to fix

                    Function render has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
                    Open

                    render(): ReactNode {
                    let className = "airr-view airr-scene";
                    this.props.active && (className += " active");
                    this.props.className && (className += " " + this.props.className);
                     
                     
                    Severity: Minor
                    Found in lib/SceneRenderer.tsx - About 55 mins to fix

                    Function doNavbarItemsAnimation has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
                    Open

                    export function doNavbarItemsAnimation({
                    newViewIndex,
                    oldViewIndex,
                    direction,
                    titleNode,
                    Severity: Minor
                    Found in lib/Scene/ItemsAnimationHelpers.ts - About 45 mins to fix

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

                    export interface ViewsMapperProps {
                    views: Props["views"];
                    activeViewName: Props["activeViewName"];
                    refsCOMPViews: Props["refsCOMPViews"];
                    }
                    Severity: Minor
                    Found in lib/SceneRenderer/ViewsMapper.tsx and 1 other location - About 40 mins to fix
                    lib/SceneRenderer/ViewsRenderer.tsx on lines 6..10

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

                    interface ViewsRendererProps extends ViewsMapperProps {
                    className: Props["className"];
                    refDOMContainer: Props["refDOMContainer"];
                    containersHeight: Props["containersHeight"];
                    }
                    Severity: Minor
                    Found in lib/SceneRenderer/ViewsRenderer.tsx and 1 other location - About 40 mins to fix
                    lib/SceneRenderer/ViewsMapper.tsx on lines 8..12

                    Function doViewsSlideAnimation has 5 arguments (exceeds 4 allowed). Consider refactoring.
                    Open

                    newViewDOM: HTMLElement,
                    sceneWidth: number,
                    ctnDOM: HTMLElement,
                    direction: Direction,
                    animationTime: number
                    Severity: Minor
                    Found in lib/Scene/ViewsFXHelpers.ts - About 35 mins to fix

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

                      this.hiddenVal = this.props.side === "top" ? -1 * this.size : this.props.sceneHeight;
                      Severity: Minor
                      Found in lib/Sidepanel.tsx and 1 other location - About 35 mins to fix
                      lib/Sidepanel.tsx on lines 426..426

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

                      this.hiddenVal = this.props.side === "left" ? -1 * this.size : this.props.sceneWidth;
                      Severity: Minor
                      Found in lib/Sidepanel.tsx and 1 other location - About 35 mins to fix
                      lib/Sidepanel.tsx on lines 433..433
                      Severity
                      Category
                      Status
                      Source
                      Language