Passed
Push — task/add-applicants-and-applic... ( 514472...36c932 )
by Yonathan
10:54 queued 12s
created

resources/assets/js/helpers/routes.ts   A

Complexity

Total Complexity 28
Complexity/F 1.08

Size

Lines of Code 141
Function Count 26

Duplication

Duplicated Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
wmc 28
eloc 107
c 0
b 0
f 0
dl 0
loc 141
rs 10
mnd 2
bc 2
fnc 26
bpm 0.0769
cpm 1.0769
noi 0

26 Functions

Rating   Name   Duplication   Size   Complexity  
A routes.ts ➔ jobBuilderTasks 0 3 1
A routes.ts ➔ managerApplicationShow 0 7 1
A routes.ts ➔ hrScreeningPlan 0 2 1
A routes.ts ➔ jobBuilderIntro 0 6 2
A routes.ts ➔ managerScreeningPlan 0 3 1
A routes.ts ➔ managerJobPreview 0 3 1
A routes.ts ➔ managerApplicantShow 0 7 1
A routes.ts ➔ jobBuilderImpact 0 3 1
A routes.ts ➔ hrJobReview 0 2 1
A routes.ts ➔ jobBuilderSkills 0 3 1
A routes.ts ➔ hrJobApplications 0 2 1
A routes.ts ➔ accountSettings 0 3 1
A routes.ts ➔ applicationReviewUpdate 0 6 1
A routes.ts ➔ managerJobSummary 0 3 1
A routes.ts ➔ hrJobIndex 0 3 1
A routes.ts ➔ applicationShow 0 8 1
A routes.ts ➔ managerJobIndex 0 3 1
A routes.ts ➔ managerFaq 0 7 2
A routes.ts ➔ applicantShow 0 8 1
A routes.ts ➔ jobBuilderDetails 0 3 1
A routes.ts ➔ managerJobApplications 0 3 1
A routes.ts ➔ jobBuilderReview 0 3 1
A routes.ts ➔ hrJobSummary 0 2 1
A routes.ts ➔ hrJobPreview 0 2 1
A routes.ts ➔ managerEditProfile 0 3 1
A routes.ts ➔ jobBuilderEnv 0 3 1
1
import { baseUrl } from "../api/base";
2
3
function applicationShow(
4
  locale: string,
5
  prefix: string,
6
  applicationId: number,
7
  jobId: number,
8
): string {
9
  return `/${locale}/${prefix}/jobs/${jobId}/applications/${applicationId}`;
10
}
11
12
function applicantShow(
13
  locale: string,
14
  prefix: string,
15
  applicantId: number,
16
  jobId: number,
17
): string {
18
  return `/${locale}/${prefix}/jobs/${jobId}/applicants/${applicantId}`;
19
}
20
21
export function managerApplicationShow(
22
  locale: string,
23
  applicationId: number,
24
  jobId: number,
25
): string {
26
  return applicationShow(locale, "manager", applicationId, jobId);
27
}
28
29
export function managerApplicantShow(
30
  locale: string,
31
  applicantId: number,
32
  jobId: number,
33
): string {
34
  return applicantShow(locale, "manager", applicantId, jobId);
35
}
36
37
export function managerEditProfile(locale: string): string {
38
  return `/${locale}/manager/profile`;
39
}
40
41
export function managerJobIndex(locale: string): string {
42
  return `/${locale}/manager/jobs`;
43
}
44
45
export function managerJobSummary(locale: string, jobId: number): string {
46
  return `/${locale}/manager/jobs/${jobId}`;
47
}
48
49
export function managerJobPreview(locale: string, jobId: number): string {
50
  return `/${locale}/manager/jobs/${jobId}/preview`;
51
}
52
53
export function managerJobApplications(locale: string, jobId: number): string {
54
  return `/${locale}/manager/jobs/${jobId}/applications`;
55
}
56
57
export function managerScreeningPlan(locale: string, jobId: number): string {
58
  return `/${locale}/manager/jobs/${jobId}/assessment-plan`;
59
}
60
61
export function applicationReviewUpdate(
62
  locale: string,
63
  applicationId: number,
64
): string {
65
  return `${baseUrl()}/applications/${applicationId}/review`;
66
}
67
68
export function jobBuilderIntro(locale: string, jobId?: number): string {
69
  if (jobId) {
70
    return `/${locale}/manager/jobs/${jobId}/builder/intro`;
71
  }
72
  return `/${locale}/manager/job-builder/intro`;
73
}
74
75
export function jobBuilderDetails(locale: string, jobId: number): string {
76
  return `/${locale}/manager/jobs/${jobId}/builder/details`;
77
}
78
79
export function jobBuilderEnv(locale: string, jobId: number): string {
80
  return `/${locale}/manager/jobs/${jobId}/builder/environment`;
81
}
82
83
export function jobBuilderImpact(locale: string, jobId: number): string {
84
  return `/${locale}/manager/jobs/${jobId}/builder/impact`;
85
}
86
87
export function jobBuilderTasks(locale: string, jobId: number): string {
88
  return `/${locale}/manager/jobs/${jobId}/builder/tasks`;
89
}
90
91
export function jobBuilderSkills(locale: string, jobId: number): string {
92
  return `/${locale}/manager/jobs/${jobId}/builder/skills`;
93
}
94
95
export function jobBuilderReview(locale: string, jobId: number): string {
96
  return `/${locale}/manager/jobs/${jobId}/builder/review`;
97
}
98
99
type FaqSection = "manager-who";
100
101
export function managerFaq(locale: string, faqSection?: FaqSection): string {
102
  const base = `/${locale}/manager/faq`;
103
  if (faqSection) {
104
    return `${base}#${faqSection}`;
105
  }
106
  return base;
107
}
108
109
export function hrJobIndex(locale: string): string {
110
  return `/${locale}/hr/jobs`;
111
}
112
export function hrJobSummary(locale: string, jobId: number): string {
113
  return `/${locale}/hr/jobs/${jobId}`;
114
}
115
export function hrJobReview(locale: string, jobId: number): string {
116
  return `/${locale}/hr/jobs/${jobId}/review`;
117
}
118
export function hrJobPreview(locale: string, jobId: number): string {
119
  return `/${locale}/hr/jobs/${jobId}/preview`;
120
}
121
export function hrScreeningPlan(locale: string, jobId: number): string {
122
  return `/${locale}/hr/jobs/${jobId}/assessment-plan`;
123
}
124
export function hrJobApplications(locale: string, jobId: number): string {
125
  return `/${locale}/hr/jobs/${jobId}/applications`;
126
}
127
export const hrApplicationShow = (
128
  locale: string,
129
  applicationId: number,
130
  jobId: number,
131
): string => applicationShow(locale, "hr", applicationId, jobId);
132
export const hrApplicantShow = (
133
  locale: string,
134
  applicantId: number,
135
  jobId: number,
136
): string => applicantShow(locale, "hr", applicantId, jobId);
137
138
export function accountSettings(locale: string): string {
139
  return `/${locale}/settings`;
140
}
141