unicef/magicbox-maps

View on GitHub

Showing 19 of 48 total issues

Function selectCountry has 120 lines of code (exceeds 25 allowed). Consider refactoring.
Open

export const selectCountry = (country, sliderVal, country_data_path) => {
  console.log('You selected', country);
  if (mode !== 'schools') {
    return function(dispatch) {
      dispatch({type: 'REQUEST_DATA'})
Severity: Major
Found in react-app/src/actions/action-select-country.js - About 4 hrs to fix

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

  render() {
    const gif_style = {width: '300px'}
    const grid_style = {width: '700px'}
    if (isBrowser) {
      return (
Severity: Major
Found in react-app/src/components/ModalContentMobility.jsx - About 3 hrs to fix

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

  render() {
    console.log(this.props.activeCountry.usingSpeed);

    let data = {
      labels: [
Severity: Major
Found in react-app/src/components/Dock.js - About 3 hrs to fix

Function activeCountryReducer has 66 lines of code (exceeds 25 allowed). Consider refactoring.
Open

function activeCountryReducer(state = initial_state, action) {
  switch (action.type) {
    case 'COUNTRY_SELECTED':
      if (config.mode !== 'schools') {
        country_admins = action.payload
Severity: Major
Found in react-app/src/reducers/reducer-active-country.js - About 2 hrs to fix

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

  render() {
    const style = {
      position: 'relative',
      top: '200px'
    }
Severity: Minor
Found in react-app/src/components/MyMap.jsx - About 1 hr to fix

Function activeCountryReducer has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
Open

function activeCountryReducer(state = initial_state, action) {
  switch (action.type) {
    case 'COUNTRY_SELECTED':
      if (config.mode !== 'schools') {
        country_admins = action.payload
Severity: Minor
Found in react-app/src/reducers/reducer-active-country.js - About 1 hr to fix

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 render has 43 lines of code (exceeds 25 allowed). Consider refactoring.
Open

  render() {
    const {isAuthenticated} = this.props.auth;
    return (
      <div>
        <Navbar fluid>
Severity: Minor
Found in react-app/src/authorization/Shield.js - About 1 hr to fix

Function SliderChange has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
Open

const SliderChange = function(geojson, sliderVal) {
  return function(dispatch) {
    let belowT = 0;
    let zeroT = 0;
    let aboveT = 0;
Severity: Minor
Found in react-app/src/actions/action-slider-change.js - About 1 hr to fix

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 render has 35 lines of code (exceeds 25 allowed). Consider refactoring.
Open

  render() {
    let ModalContent = ModalContentSchools
    let email = config.email_contact_schools

    const style = {
Severity: Minor
Found in react-app/src/components/Popup.jsx - About 1 hr to fix

Function countryStyle has 35 lines of code (exceeds 25 allowed). Consider refactoring.
Open

export function countryStyle(props) {
  return function(geoJsonFeature) {
    let activeCountry = props.activeCountry;
    const displayCountry = {
      fill: true,
Severity: Minor
Found in react-app/src/helpers/helper-countries-style.js - About 1 hr to fix

Function onEachCountryFeature has 32 lines of code (exceeds 25 allowed). Consider refactoring.
Open

export function onEachCountryFeature(
  myMapObj,
  sliderVal,
  availableCountryPaths
) {
Severity: Minor
Found in react-app/src/helpers/helper-country-onEach.js - About 1 hr to fix

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

const SliderChange = function(geojson, sliderVal) {
  return function(dispatch) {
    let belowT = 0;
    let zeroT = 0;
    let aboveT = 0;
Severity: Minor
Found in react-app/src/actions/action-slider-change.js - About 1 hr to fix

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

  render() {
    const columns = [{
      type: 'date',
      id: 'Date'
    }, {
Severity: Minor
Found in react-app/src/components/YearlyCalendar.js - About 1 hr to fix

Function adminStyle has 26 lines of code (exceeds 25 allowed). Consider refactoring.
Open

export function adminStyle(props) {
  return function(geoJsonFeature) {
    let admin_id = geoJsonFeature.properties.admin_id
    let admin_index = props.activeCountry.admin_index
    let active_country = props.activeCountry
Severity: Minor
Found in react-app/src/helpers/helper-admins-style.js - About 1 hr to fix

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

export function assign_speed_value(properties) {
  let slider = 3
  let value = null;
  if (properties.speed_connectivity !== null &&
    typeof properties.speed_connectivity !== 'undefined'
Severity: Minor
Found in react-app/src/helpers/helper-country-point.js - About 55 mins to fix

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 componentDidUpdate has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

  componentDidUpdate(prevProps, prevState) {
    if (prevProps.didUpdate !== this.props.didUpdate) {
      if (this.props.didUpdate) {
        this.setState({
          internalDock: true
Severity: Minor
Found in react-app/src/components/Dock.js - About 35 mins to fix

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

Avoid too many return statements within this function.
Open

      return Object.assign({}, state, {
        polygons: Object.assign({}, country_admins),
        diagonal: diagonal,
        matrix,
        // Set scores to null in case admins were previously selected
Severity: Major
Found in react-app/src/reducers/reducer-active-country.js - About 30 mins to fix

Avoid too many return statements within this function.
Open

    return [1, 1, 1]
Severity: Major
Found in react-app/src/helpers/helper-country-point.js - About 30 mins to fix

Function arrToGeo has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
Open

const arrToGeo = (params, data) => {
  const toGeo = []
  for (let i = 0; i < data.length; i++) {
    const o = {}
    for (let j = 0; j < params.length; j++) {
Severity: Minor
Found in react-app/src/helpers/helper-2d-geojson.js - About 25 mins to fix

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

Severity
Category
Status
Source
Language