Showing 180 of 627 total issues
File Room.js
has 956 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
import axios from 'axios';
import Gon from 'gon';
import { camelizeKeys, decamelizeKeys } from 'humps';
import debounce from 'lodash/debounce';
import find from 'lodash/find';
Function BuilderExampleForm
has 276 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function BuilderExampleForm() {
const dispatch = useDispatch();
const { taskService } = useContext(RoomContext);
const argumentsTabRef = useRef(null);
File LobbyWidget.jsx
has 543 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
import React, {
memo,
useState,
useRef,
useEffect,
Function BuilderEditorsWidget
has 203 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function BuilderEditorsWidget() {
const dispatch = useDispatch();
const { taskService } = useContext(RoomContext);
const [assertsPanelShowing, setAssertsPanelShowing] = useState(false);
Function UserProfile
has 149 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function UserProfile() {
const [userData, setUserData] = useState(null);
const dispatch = useDispatch();
useEffect(() => {
Function UsersRating
has 146 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function UsersRating() {
const usersRatingPage = useSelector(usersListSelector);
const dispatch = useDispatch();
const {
Function reduceOriginalRecords
has 138 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
const reduceOriginalRecords = (acc, record, index) => {
const {
players, records, chat: chatState, type: playbookType,
} = acc;
const { messages, users } = chatState;
File index.js
has 384 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
import { createDraftSafeSelector } from '@reduxjs/toolkit';
import find from 'lodash/find';
import get from 'lodash/get';
import isUndefined from 'lodash/isUndefined';
import pick from 'lodash/pick';
File game.js
has 382 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
import { assign, actions } from 'xstate';
import { channelTopics } from '../../socket';
import GameStateCodes from '../config/gameStateCodes';
import speedModes from '../config/speedModes';
Function Leaderboard
has 120 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function Leaderboard() {
const dispatch = useDispatch();
const { users, period } = useSelector(leaderboardSelector);
File Registration.jsx
has 352 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
import React, { useState } from 'react';
import axios from 'axios';
import cn from 'classnames';
import { useFormik } from 'formik';
Function ChatContextMenu
has a Cognitive Complexity of 29 (exceeds 5 allowed). Consider refactoring. Open
Open
function ChatContextMenu({
request = {
user: {
name: null,
userId: null,
- Read upRead up
Cognitive Complexity
Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.
A method's cognitive complexity is based on a few simple rules:
- Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
- Code is considered more complex for each "break in the linear flow of the code"
- Code is considered more complex when "flow breaking structures are nested"
Further reading
Function SignUp
has 105 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function SignUp() {
const formik = useFormik({
initialValues: {
name: '',
email: '',
Function addWaitingRoomListeners
has 100 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
export const addWaitingRoomListeners = (channel, waitingRoomMachine) => () => {
const handleWaitingRoomStarted = response => {
waitingRoomMachine.send(
channelTopics.waitingRoomStartedTopic,
{ payload: response },
Function BuilderStatus
has 96 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function BuilderStatus() {
const { taskService } = useContext(RoomContext);
const taskMachineState = useMachineStateSelector(taskService, taskStateSelector);
File initial.js
has 323 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
import Gon from 'gon';
import { camelizeKeys } from 'humps';
import GameRoomModes from '../config/gameModes';
import GameStateCodes from '../config/gameStateCodes';
Function ChatWidget
has 92 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function ChatWidget() {
const { mainService } = useContext(RoomContext);
const users = useSelector(selectors.chatUsersSelector);
const messages = useSelector(selectors.chatMessagesSelector);
Function TournamentStatisticsModal
has 92 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
const TournamentStatisticsModal = NiceModal.create(() => {
const modal = useModal(ModalCodes.tournamentStatisticsModal);
const gameId = useSelector(gameIdSelector);
const tournament = useSelector(tournamentSelector);
File TournamentHeader.jsx
has 317 lines of code (exceeds 250 allowed). Consider refactoring. Open
Open
import React, { memo, useMemo } from 'react';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import cn from 'classnames';
import moment from 'moment';
Function StairwayGameContainer
has 90 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
function StairwayGameContainer() {
const dispatch = useDispatch();
const meta = useSelector(state => state.tournament?.tournament?.meta);
const activeMatch = useSelector(state => state.tournament?.activeMatch);