Passed
Pull Request — develop (#758)
by Kevin Van
04:28
created

src/scripts/helper.ts   A

Complexity

Total Complexity 20
Complexity/F 10

Size

Lines of Code 67
Function Count 2

Duplication

Duplicated Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
wmc 20
eloc 50
mnd 18
bc 18
fnc 2
dl 0
loc 67
rs 10
bpm 9
cpm 10
noi 0
c 0
b 0
f 0

2 Functions

Rating   Name   Duplication   Size   Complexity  
F helper.ts ➔ sortRankings 0 54 19
A helper.ts ➔ mapPsdStatus 0 10 1
1
import { RankingDataTeamObject } from "../Types/Ranking"
2
3
export function mapPsdStatus(statusCode: number): string | null {
4
  const statusCodes = new Map([
5
    [0, `Gepland`],
6
    [1, `Forfait`],
7
    [2, `Afgelast`],
8
    [3, `Onderbroken`],
9
  ])
10
11
  return statusCodes.get(statusCode) || null
12
}
13
14
export function sortRankings(a: RankingDataTeamObject, b: RankingDataTeamObject) {
15
  // Rank lager: A stijgt in sortering.
16
  if (a.rank < b.rank) {
17
    return -1
18
  }
19
  if (a.rank > b.rank) {
20
    return 1
21
  }
22
  // Aantal overwinningen hoger: A stijgt in sortering.
23
  if (a.wins > b.wins) {
24
    return -1
25
  }
26
  if (a.wins < b.wins) {
27
    return 1
28
  }
29
  // Doelpuntensaldo beter: A stijgt in sortering.
30
  if (a.goalsScored - a.goalsConceded > b.goalsScored - b.goalsConceded) {
31
    return -1
32
  }
33
  if (a.goalsScored - a.goalsConceded < b.goalsScored - b.goalsConceded) {
34
    return 1
35
  }
36
  // Aantal gemaakte doelpunten hoger: A stijgt in sortering.
37
  if (a.goalsScored > b.goalsScored) {
38
    return -1
39
  }
40
  if (a.goalsScored < b.goalsScored) {
41
    return 1
42
  }
43
  // Aantal uitoverwinningen hoger: A stijgt in sortering.
44
  if (a.winsAway > b.winsAway) {
45
    return -1
46
  }
47
  if (a.winsAway < b.winsAway) {
48
    return 1
49
  }
50
  // Doelpuntensaldo op verplaatsing beter: A stijgt in sortering.
51
  if (a.goalsScoredAway - a.goalsConcededAway > b.goalsScoredAway - b.goalsConcededAway) {
52
    return -1
53
  }
54
  if (a.goalsScoredAway - a.goalsConcededAway < b.goalsScoredAway - b.goalsConcededAway) {
55
    return 1
56
  }
57
  // Aantal gemaakte doelpunten op verplaatsing hoger: A stijgt in sortering.
58
  if (a.goalsScoredAway > b.goalsScoredAway) {
59
    return -1
60
  }
61
  if (a.goalsScoredAway < b.goalsScoredAway) {
62
    return 1
63
  }
64
65
  return a.team?.club?.localName.localeCompare(b.team?.club?.localName)
66
}
67