Overview
File Change Frequency Overall
  • There are 487 files with 32,173 lines of code.
    • 9 files changed more than 100 times (4,113 lines of code)
    • 35 files changed 51-100 times (4,736 lines of code)
    • 84 files changed 21-50 times (6,623 lines of code)
    • 239 files changed 6-20 times (11,915 lines of code)
    • 120 files changed 1-5 times (4,786 lines of code)
12% | 14% | 20% | 37% | 14%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 487 files with 32,173 lines of code.
    • 1 file changed by more than 25 contributors (159 lines of code)
    • 83 files changed by 11-25 contributors (10,709 lines of code)
    • 133 files changed by 6-10 contributors (6,962 lines of code)
    • 205 files changed by 2-5 contributors (11,420 lines of code)
    • 65 files changed by 1 contributor (2,923 lines of code)
<1% | 33% | 21% | 35% | 9%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
ts, tsx, json, md, js, yml, yaml, html, gitignore, txt, sh, mjs, jsx, editorconfig, snap, prettierignore
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
ts14% | 17% | 19% | 34% | 12%
yaml94% | 0% | 0% | 5% | 0%
tsx4% | 12% | 22% | 42% | 17%
js0% | 0% | 71% | 28% | 0%
mjs0% | 0% | 0% | 96% | 3%
html0% | 0% | 0% | 2% | 97%
jsx0% | 0% | 0% | 0% | 100%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
src11% | 16% | 22% | 38% | 11%
ROOT72% | 0% | 0% | 24% | 3%
util0% | 0% | 100% | 0% | 0%
.storybook0% | 0% | 27% | 10% | 61%
cdk0% | 0% | 0% | 99% | <1%
scripts0% | 0% | 0% | 100% | 0%
.github0% | 0% | 0% | 100% | 0%
playwright0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
Routes.ts
in src/shared/model
159 - 2020-04-29 2026-08-10 189 30 +909 / -512 maheshmakani bruno.catarino
register.ts
in src/server/routes
680 20 2021-06-15 2026-10-02 175 23 +5136 / -3282 oliverlloyd ioannakok
signIn.ts
in src/server/routes
578 18 2021-06-03 2026-03-26 163 19 +3741 / -2358 oliverlloyd ashcorr20
routes.tsx
in src/client
342 - 2020-07-02 2026-08-10 144 25 +2265 / -1493 maheshmakani bruno.catarino
welcome.ts
in src/server/routes
540 16 2021-08-09 2026-09-25 144 19 +2933 / -1578 mahesh bruno.catarino
oauth.ts
in src/server/routes
564 8 2022-01-20 2026-09-07 132 18 +3555 / -1747 3338808+liamness bruno.catarino
changePassword.ts
in src/server/controllers
204 3 2021-08-16 2026-04-21 125 18 +2251 / -1683 mahesh ashcorr20
SignIn.tsx
in src/client/pages
250 - 2021-05-12 2026-01-14 120 22 +2550 / -1730 email ashcorr20
796 - 2019-12-19 2026-03-06 109 22 +2650 / -778 orrell ashcorr20
ClientState.ts
in src/shared/model
82 - 2020-11-13 2026-03-05 97 23 +502 / -111 mahesh.makani ashcorr20
Metrics.ts
in src/server/models
112 - 2020-06-19 2026-06-30 93 18 +652 / -303 maheshmakani ioannakok
Registration.tsx
in src/client/pages
54 - 2021-05-12 2026-04-20 89 19 +1434 / -1292 email 106528085+akinsola-guardian
verifyEmail.ts
in src/server/routes
27 1 2020-10-07 2025-12-17 88 20 +1302 / -1167 maheshmakani richard.bangay
QueryParams.ts
in src/shared/model
36 - 2020-06-12 2026-09-25 86 18 +343 / -127 maheshmakani bruno.catarino
Configuration.ts
in src/server/models
69 - 2020-04-09 2026-04-20 85 18 +325 / -126 maheshmakani 106528085+akinsola-guardian
Errors.ts
in src/shared/model
106 2 2020-04-29 2025-11-26 84 19 +551 / -242 maheshmakani richard.bangay
ChangePassword.tsx
in src/client/pages
49 - 2020-06-02 2024-09-19 82 14 +2313 / -2430 maheshmakani pvighi
renderer.tsx
in src/server/lib
139 1 2020-11-13 2025-02-19 82 21 +919 / -434 maheshmakani mahesh
queryParams.ts
in src/server/lib
81 - 2020-06-09 2026-08-10 80 18 +640 / -382 maheshmakani bruno.catarino
Newsletter.ts
in src/shared/model
147 - 2020-09-01 2026-06-30 80 20 +718 / -419 orrell ioannakok
MainForm.tsx
in src/client/components
394 - 2021-11-04 2026-09-14 78 15 +1965 / -749 mahesh bruno.catarino
index.ts
in src/server/routes
47 - 2020-04-21 2026-01-05 75 18 +385 / -157 maheshmakani ashcorr20
requestState.ts
in src/server/lib/middleware
119 2 2020-12-04 2025-12-17 75 21 +635 / -272 orrell richard.bangay
openid-connect.ts
in src/server/lib/okta
289 13 2022-01-20 2026-09-07 73 13 +3099 / -1951 mahesh bruno.catarino
EmailSent.tsx
in src/client/pages
87 - 2021-07-20 2025-11-03 71 16 +1605 / -1257 oliverlloyd richard.bangay
ResetPassword.tsx
in src/client/pages
123 - 2020-06-03 2025-02-06 71 19 +941 / -564 maheshmakani mahesh
getConfiguration.ts
in src/server/lib
222 12 2020-12-02 2026-04-20 70 16 +957 / -376 orrell 106528085+akinsola-guardian
user.ts
in src/server/lib/idapi
93 3 2020-09-10 2024-09-12 69 16 +1545 / -1134 orrell ashcorr20
checkPasswordToken.ts
in src/server/controllers
256 3 2021-12-10 2026-04-21 69 15 +1656 / -799 becca.al.thompson ashcorr20
PasswordForm.tsx
in src/client/components
310 1 2021-08-03 2024-11-20 69 15 +2065 / -943 oliverlloyd mahesh
register.ts
in src/server/lib/okta
364 11 2022-01-11 2026-04-20 64 13 +1785 / -923 becca.al.thompson 106528085+akinsola-guardian
helmet.ts
in src/server/lib/middleware
70 - 2020-05-14 2026-09-14 62 12 +318 / -186 maheshmakani bruno.catarino
PageTitle.ts
in src/shared/model
46 - 2020-07-14 2026-01-08 61 18 +230 / -98 maheshmakani richard.bangay
login.ts
in src/server/lib/middleware
106 2 2020-09-30 2024-11-20 61 14 +901 / -507 orrell mahesh
abSwitches.ts
in src/shared/model/experiments
3 - 2020-11-17 2025-01-30 60 10 +63 / -50 maheshmakani mahesh
sendChangePasswordEmail.ts
in src/server/controllers
517 13 2022-02-09 2025-05-12 59 10 +2592 / -918 becca.al.thompson mahesh
Express.ts
in src/server/models
46 - 2020-06-10 2025-05-12 55 15 +373 / -195 maheshmakani mahesh
setPassword.ts
in src/server/routes
84 2 2021-10-27 2024-07-16 55 13 +781 / -572 mahesh.makani 101555242+raphaelkabo
abTests.ts
in src/shared/model/experiments
33 - 2020-11-17 2025-01-30 54 11 +229 / -108 maheshmakani mahesh
Welcome.tsx
in src/client/pages
97 - 2021-08-03 2024-09-19 54 14 +620 / -337 oliverlloyd pvighi
newsletters.ts
in src/server/lib/idapi
118 3 2020-08-21 2026-09-24 52 20 +708 / -323 orrell ioannakok
consents.ts
in src/server/lib/idapi
151 2 2020-09-10 2026-09-24 52 18 +683 / -316 orrell ioannakok
PasswordInput.tsx
in src/client/components
200 - 2020-12-30 2026-07-09 52 19 +1466 / -874 zvvvvt ashcorr20
Terms.tsx
in src/client/components
59 - 2021-05-14 2026-09-14 51 19 +1091 / -846 email bruno.catarino
SignInPage.tsx
in src/client/pages
49 - 2021-05-12 2025-02-11 49 19 +329 / -127 email mahesh
72 - 2021-09-03 2025-11-03 49 14 +349 / -171 ob6160 richard.bangay
queryParams.ts
in src/shared/lib
93 - 2021-11-05 2026-09-25 49 12 +473 / -87 mahesh bruno.catarino
oauth.ts
in src/server/lib/okta
106 1 2022-03-03 2026-09-07 48 8 +589 / -125 mahesh bruno.catarino
User.ts
in src/server/models/okta
111 - 2022-01-10 2026-03-02 48 13 +638 / -320 becca.al.thompson richard.bangay
ChangePasswordComplete.tsx
in src/client/pages
35 - 2020-06-12 2024-09-19 44 13 +458 / -381 maheshmakani pvighi
Files With Most Churn (Top 50)
Based on the number of lines added and deleted across all commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
register.ts
in src/server/routes
680 20 2021-06-15 2026-10-02 175 23 +5136 / -3282 oliverlloyd ioannakok
signIn.ts
in src/server/routes
578 18 2021-06-03 2026-03-26 163 19 +3741 / -2358 oliverlloyd ashcorr20
oauth.ts
in src/server/routes
564 8 2022-01-20 2026-09-07 132 18 +3555 / -1747 3338808+liamness bruno.catarino
openid-connect.ts
in src/server/lib/okta
289 13 2022-01-20 2026-09-07 73 13 +3099 / -1951 mahesh bruno.catarino
ChangePassword.tsx
in src/client/pages
49 - 2020-06-02 2024-09-19 82 14 +2313 / -2430 maheshmakani pvighi
welcome.ts
in src/server/routes
540 16 2021-08-09 2026-09-25 144 19 +2933 / -1578 mahesh bruno.catarino
SignIn.tsx
in src/client/pages
250 - 2021-05-12 2026-01-14 120 22 +2550 / -1730 email ashcorr20
changePassword.ts
in src/server/controllers
204 3 2021-08-16 2026-04-21 125 18 +2251 / -1683 mahesh ashcorr20
routes.tsx
in src/client
342 - 2020-07-02 2026-08-10 144 25 +2265 / -1493 maheshmakani bruno.catarino
sendChangePasswordEmail.ts
in src/server/controllers
517 13 2022-02-09 2025-05-12 59 10 +2592 / -918 becca.al.thompson mahesh
796 - 2019-12-19 2026-03-06 109 22 +2650 / -778 orrell ashcorr20
PasswordForm.tsx
in src/client/components
310 1 2021-08-03 2024-11-20 69 15 +2065 / -943 oliverlloyd mahesh
EmailSent.tsx
in src/client/pages
87 - 2021-07-20 2025-11-03 71 16 +1605 / -1257 oliverlloyd richard.bangay
Registration.tsx
in src/client/pages
54 - 2021-05-12 2026-04-20 89 19 +1434 / -1292 email 106528085+akinsola-guardian
MainForm.tsx
in src/client/components
394 - 2021-11-04 2026-09-14 78 15 +1965 / -749 mahesh bruno.catarino
register.ts
in src/server/lib/okta
364 11 2022-01-11 2026-04-20 64 13 +1785 / -923 becca.al.thompson 106528085+akinsola-guardian
user.ts
in src/server/lib/idapi
93 3 2020-09-10 2024-09-12 69 16 +1545 / -1134 orrell ashcorr20
verifyEmail.ts
in src/server/routes
27 1 2020-10-07 2025-12-17 88 20 +1302 / -1167 maheshmakani richard.bangay
checkPasswordToken.ts
in src/server/controllers
256 3 2021-12-10 2026-04-21 69 15 +1656 / -799 becca.al.thompson ashcorr20
PasswordInput.tsx
in src/client/components
200 - 2020-12-30 2026-07-09 52 19 +1466 / -874 zvvvvt ashcorr20
signInControllers.ts
in src/server/controllers
544 9 2024-10-16 2025-11-26 20 2 +1817 / -177 mahesh richard.bangay
Terms.tsx
in src/client/components
59 - 2021-05-14 2026-09-14 51 19 +1091 / -846 email bruno.catarino
users.ts
in src/server/lib/okta/api
260 - 2022-01-10 2025-04-01 40 10 +1379 / -460 becca.al.thompson mahesh
challenge.ts
in src/server/lib/okta/idx
217 - 2024-03-20 2025-03-05 23 4 +1212 / -469 mahesh mahesh
resetPassword.ts
in src/server/routes
287 11 2021-12-21 2026-05-05 39 14 +1248 / -386 becca.al.thompson ioannakok
preview-head.html
in .storybook
5 - 2021-05-12 2023-07-17 18 8 +1042 / -525 oliverlloyd mahesh
ResetPassword.tsx
in src/client/pages
123 - 2020-06-03 2025-02-06 71 19 +941 / -564 maheshmakani mahesh
Routes.ts
in src/shared/model
159 - 2020-04-29 2026-08-10 189 30 +909 / -512 maheshmakani bruno.catarino
517 1 2024-08-01 2026-09-08 16 3 +1259 / -157 ashcorr20 bruno.catarino
login.ts
in src/server/lib/middleware
106 2 2020-09-30 2024-11-20 61 14 +901 / -507 orrell mahesh
setPassword.ts
in src/server/routes
84 2 2021-10-27 2024-07-16 55 13 +781 / -572 mahesh.makani 101555242+raphaelkabo
renderer.tsx
in src/server/lib
139 1 2020-11-13 2025-02-19 82 21 +919 / -434 maheshmakani mahesh
getConfiguration.ts
in src/server/lib
222 12 2020-12-02 2026-04-20 70 16 +957 / -376 orrell 106528085+akinsola-guardian
useRecaptcha.tsx
in src/client/lib/hooks
173 - 2021-10-07 2025-12-01 23 10 +1109 / -168 ob6160 richard.bangay
signOut.ts
in src/server/routes
154 2 2022-02-11 2025-03-31 41 10 +921 / -280 mahesh 106528085+akinsola-guardian
agree.ts
in src/server/routes
109 2 2022-05-04 2026-03-05 38 7 +712 / -444 barnwelloliver ashcorr20
delete.ts
in src/server/routes
332 13 2023-08-01 2026-03-02 24 5 +1012 / -141 mahesh richard.bangay
426 - 2024-06-18 2026-05-05 16 5 +1037 / -101 mahesh ioannakok
Newsletter.ts
in src/shared/model
147 - 2020-09-01 2026-06-30 80 20 +718 / -419 orrell ioannakok
introspect.ts
in src/server/lib/okta/idx
82 - 2024-03-13 2024-09-12 20 4 +640 / -477 mahesh ashcorr20
newsletter.ts
in src/shared/lib
14 - 2020-10-20 2024-08-08 31 12 +656 / -424 maheshmakani ashcorr20
ChangePasswordPage.tsx
in src/client/pages
49 - 2021-05-10 2024-09-19 37 15 +605 / -440 email pvighi
idxFetch.ts
in src/server/lib/okta/idx/shared
186 1 2024-08-14 2026-04-21 10 2 +835 / -209 mahesh ashcorr20
337 - 2022-09-29 2026-03-02 22 6 +905 / -135 32312712+vlbee richard.bangay
newsletters.ts
in src/server/lib/idapi
118 3 2020-08-21 2026-09-24 52 20 +708 / -323 orrell ioannakok
queryParams.ts
in src/server/lib
81 - 2020-06-09 2026-08-10 80 18 +640 / -382 maheshmakani bruno.catarino
ToggleSwitchInput.tsx
in src/client/components
223 - 2022-02-15 2026-06-30 33 11 +740 / -262 32312712+vlbee ioannakok
consents.ts
in src/server/lib/idapi
151 2 2020-09-10 2026-09-24 52 18 +683 / -316 orrell ioannakok
User.ts
in src/server/models/okta
111 - 2022-01-10 2026-03-02 48 13 +638 / -320 becca.al.thompson richard.bangay
Welcome.tsx
in src/client/pages
97 - 2021-08-03 2024-09-19 54 14 +620 / -337 oliverlloyd pvighi
Files With Most Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
Routes.ts
in src/shared/model
159 - 2020-04-29 2026-08-10 189 30 +909 / -512 maheshmakani bruno.catarino
routes.tsx
in src/client
342 - 2020-07-02 2026-08-10 144 25 +2265 / -1493 maheshmakani bruno.catarino
register.ts
in src/server/routes
680 20 2021-06-15 2026-10-02 175 23 +5136 / -3282 oliverlloyd ioannakok
ClientState.ts
in src/shared/model
82 - 2020-11-13 2026-03-05 97 23 +502 / -111 mahesh.makani ashcorr20
SignIn.tsx
in src/client/pages
250 - 2021-05-12 2026-01-14 120 22 +2550 / -1730 email ashcorr20
796 - 2019-12-19 2026-03-06 109 22 +2650 / -778 orrell ashcorr20
renderer.tsx
in src/server/lib
139 1 2020-11-13 2025-02-19 82 21 +919 / -434 maheshmakani mahesh
requestState.ts
in src/server/lib/middleware
119 2 2020-12-04 2025-12-17 75 21 +635 / -272 orrell richard.bangay
verifyEmail.ts
in src/server/routes
27 1 2020-10-07 2025-12-17 88 20 +1302 / -1167 maheshmakani richard.bangay
Newsletter.ts
in src/shared/model
147 - 2020-09-01 2026-06-30 80 20 +718 / -419 orrell ioannakok
newsletters.ts
in src/server/lib/idapi
118 3 2020-08-21 2026-09-24 52 20 +708 / -323 orrell ioannakok
signIn.ts
in src/server/routes
578 18 2021-06-03 2026-03-26 163 19 +3741 / -2358 oliverlloyd ashcorr20
welcome.ts
in src/server/routes
540 16 2021-08-09 2026-09-25 144 19 +2933 / -1578 mahesh bruno.catarino
Registration.tsx
in src/client/pages
54 - 2021-05-12 2026-04-20 89 19 +1434 / -1292 email 106528085+akinsola-guardian
Errors.ts
in src/shared/model
106 2 2020-04-29 2025-11-26 84 19 +551 / -242 maheshmakani richard.bangay
ResetPassword.tsx
in src/client/pages
123 - 2020-06-03 2025-02-06 71 19 +941 / -564 maheshmakani mahesh
PasswordInput.tsx
in src/client/components
200 - 2020-12-30 2026-07-09 52 19 +1466 / -874 zvvvvt ashcorr20
Terms.tsx
in src/client/components
59 - 2021-05-14 2026-09-14 51 19 +1091 / -846 email bruno.catarino
SignInPage.tsx
in src/client/pages
49 - 2021-05-12 2025-02-11 49 19 +329 / -127 email mahesh
oauth.ts
in src/server/routes
564 8 2022-01-20 2026-09-07 132 18 +3555 / -1747 3338808+liamness bruno.catarino
changePassword.ts
in src/server/controllers
204 3 2021-08-16 2026-04-21 125 18 +2251 / -1683 mahesh ashcorr20
Metrics.ts
in src/server/models
112 - 2020-06-19 2026-06-30 93 18 +652 / -303 maheshmakani ioannakok
QueryParams.ts
in src/shared/model
36 - 2020-06-12 2026-09-25 86 18 +343 / -127 maheshmakani bruno.catarino
Configuration.ts
in src/server/models
69 - 2020-04-09 2026-04-20 85 18 +325 / -126 maheshmakani 106528085+akinsola-guardian
queryParams.ts
in src/server/lib
81 - 2020-06-09 2026-08-10 80 18 +640 / -382 maheshmakani bruno.catarino
index.ts
in src/server/routes
47 - 2020-04-21 2026-01-05 75 18 +385 / -157 maheshmakani ashcorr20
PageTitle.ts
in src/shared/model
46 - 2020-07-14 2026-01-08 61 18 +230 / -98 maheshmakani richard.bangay
consents.ts
in src/server/lib/idapi
151 2 2020-09-10 2026-09-24 52 18 +683 / -316 orrell ioannakok
SignIn.stories.tsx
in src/client/pages
126 - 2021-05-12 2026-03-09 42 17 +592 / -229 email richard.bangay
auth.ts
in src/server/lib/idapi
48 1 2020-09-25 2024-09-12 41 17 +532 / -321 orrell ashcorr20
EmailSent.tsx
in src/client/pages
87 - 2021-07-20 2025-11-03 71 16 +1605 / -1257 oliverlloyd richard.bangay
getConfiguration.ts
in src/server/lib
222 12 2020-12-02 2026-04-20 70 16 +957 / -376 orrell 106528085+akinsola-guardian
user.ts
in src/server/lib/idapi
93 3 2020-09-10 2024-09-12 69 16 +1545 / -1134 orrell ashcorr20
Shared.ts
in src/client/styles
102 - 2020-06-16 2025-11-26 42 16 +510 / -254 maheshmakani richard.bangay
MainForm.tsx
in src/client/components
394 - 2021-11-04 2026-09-14 78 15 +1965 / -749 mahesh bruno.catarino
checkPasswordToken.ts
in src/server/controllers
256 3 2021-12-10 2026-04-21 69 15 +1656 / -799 becca.al.thompson ashcorr20
PasswordForm.tsx
in src/client/components
310 1 2021-08-03 2024-11-20 69 15 +2065 / -943 oliverlloyd mahesh
Express.ts
in src/server/models
46 - 2020-06-10 2025-05-12 55 15 +373 / -195 maheshmakani mahesh
main.js
in .storybook
57 1 2021-05-04 2026-03-09 42 15 +439 / -285 oliverlloyd richard.bangay
ChangePasswordPage.tsx
in src/client/pages
49 - 2021-05-10 2024-09-19 37 15 +605 / -440 email pvighi
RegistrationPage.tsx
in src/client/pages
20 - 2021-05-12 2024-09-19 30 15 +201 / -123 email pvighi
ChangePassword.tsx
in src/client/pages
49 - 2020-06-02 2024-09-19 82 14 +2313 / -2430 maheshmakani pvighi
login.ts
in src/server/lib/middleware
106 2 2020-09-30 2024-11-20 61 14 +901 / -507 orrell mahesh
Welcome.tsx
in src/client/pages
97 - 2021-08-03 2024-09-19 54 14 +620 / -337 oliverlloyd pvighi
72 - 2021-09-03 2025-11-03 49 14 +349 / -171 ob6160 richard.bangay
Consent.ts
in src/shared/model
87 - 2020-09-10 2026-03-05 42 14 +305 / -174 orrell ashcorr20
ResetPasswordPage.tsx
in src/client/pages
35 - 2020-04-21 2025-02-06 40 14 +423 / -321 maheshmakani mahesh
resetPassword.ts
in src/server/routes
287 11 2021-12-21 2026-05-05 39 14 +1248 / -386 becca.al.thompson ioannakok
Registration.stories.tsx
in src/client/pages
27 - 2021-05-12 2026-04-20 35 14 +220 / -112 email 106528085+akinsola-guardian
Welcome.stories.tsx
in src/client/pages
23 - 2021-08-03 2026-03-26 27 14 +332 / -141 oliverlloyd ashcorr20
Files With Least Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
275 - 2025-11-26 2026-03-09 2 1 +308 / -1 richard.bangay richard.bangay
idx-identify-response.ts
in playwright/fixtures/okta-responses/success
197 - 2026-03-02 2026-03-02 1 1 +206 / -0 richard.bangay richard.bangay
helper.ts
in src/okta/lib
182 - 2026-03-17 2026-03-24 2 1 +744 / -0 ashcorr20 ashcorr20
idapi.ts
in playwright/helpers/api
178 4 2026-03-02 2026-03-02 1 1 +193 / -0 richard.bangay richard.bangay
RegistrationLocation.ts
in src/shared/model
154 - 2023-12-05 2025-04-02 6 1 +364 / -0 mahesh mahesh
oktaIdxShared.ts
in src/server/controllers
138 2 2024-10-16 2024-10-16 1 1 +496 / -32 mahesh mahesh
register.ts
in playwright/helpers
116 4 2026-03-11 2026-03-11 1 1 +139 / -0 richard.bangay richard.bangay
schemas.ts
in src/server/lib/okta/idx/shared
112 - 2024-08-14 2025-04-01 9 1 +318 / -6 mahesh mahesh
OnboardingCard.tsx
in src/client/components
107 - 2026-09-04 2026-10-06 5 1 +268 / -28 ioannakok ioannakok
preview.jsx
in .storybook
96 - 2026-03-09 2026-03-09 1 1 +103 / -0 richard.bangay richard.bangay
errorHandling.ts
in src/server/lib/okta/idx/shared
93 2 2024-08-15 2025-02-06 6 1 +308 / -48 mahesh mahesh
NoScript.tsx
in src/client/components
82 - 2025-02-13 2025-02-28 3 1 +363 / -126 mahesh mahesh
placeholder-password-mock.ts
in playwright/helpers/api
81 - 2026-03-02 2026-03-02 1 1 +82 / -0 richard.bangay richard.bangay
findAuthenticatorId.ts
in src/server/lib/okta/idx/shared
80 - 2024-08-14 2024-09-12 4 1 +208 / -4 mahesh mahesh
SubscriptionReview.tsx
in src/client/pages
52 - 2026-01-08 2026-01-08 1 1 +58 / -0 richard.bangay richard.bangay
mocking.ts
in playwright/helpers/network
51 4 2026-03-02 2026-03-02 1 1 +106 / -0 richard.bangay richard.bangay
OnboardingSection.tsx
in src/client/components
50 - 2026-09-04 2026-10-06 3 1 +116 / -4 ioannakok ioannakok
cookie-helpers.ts
in playwright/helpers/cookies
48 3 2026-03-02 2026-03-02 1 1 +69 / -0 richard.bangay richard.bangay
45 - 2025-11-26 2025-11-26 1 1 +52 / -0 richard.bangay richard.bangay
IframedSignInPage.tsx
in src/client/pages
44 - 2025-11-26 2025-11-26 1 1 +53 / -0 richard.bangay richard.bangay
41 1 2026-03-02 2026-03-06 2 1 +45 / -1 richard.bangay richard.bangay
41 - 2026-01-08 2026-03-09 2 1 +48 / -1 richard.bangay richard.bangay
login-default.html
in src/okta/static
38 - 2026-03-17 2026-03-24 2 1 +98 / -0 ashcorr20 ashcorr20
EmailChallengePasscode.tsx
in src/email/templates/EmailChallengePasscode
34 - 2024-08-08 2024-08-08 1 1 +78 / -0 mahesh mahesh
user-benefits.ts
in src/server/lib/user-benefits-api
31 - 2025-04-08 2025-04-08 1 1 +48 / -0 106528085+akinsola-guardian 106528085+akinsola-guardian
OnboardingImage.tsx
in src/client/components
31 - 2026-09-07 2026-10-06 4 1 +84 / -4 ioannakok ioannakok
index.ts
in src/okta
30 - 2026-03-17 2026-03-24 2 1 +116 / -0 ashcorr20 ashcorr20
snsEventPublisher.ts
in src/server/lib/sns
27 - 2026-04-20 2026-04-20 1 1 +31 / -0 106528085+akinsola-guardian 106528085+akinsola-guardian
playwright.ts
in src/server/lib
26 - 2026-03-02 2026-03-02 1 1 +31 / -0 richard.bangay richard.bangay
okta-apps.ts
in playwright/helpers/api
25 1 2026-03-02 2026-03-02 1 1 +28 / -0 richard.bangay richard.bangay
useCountdownTimer.ts
in src/client/lib/hooks
25 - 2025-01-27 2025-01-27 1 1 +60 / -0 mahesh mahesh
WelcomePrintPromo.tsx
in src/client/pages
24 - 2026-04-20 2026-04-20 1 1 +28 / -0 106528085+akinsola-guardian 106528085+akinsola-guardian
SubscriptionReviewPage.tsx
in src/client/pages
24 - 2026-01-08 2026-01-08 1 1 +29 / -0 richard.bangay richard.bangay
22 - 2026-04-20 2026-04-20 1 1 +26 / -0 106528085+akinsola-guardian 106528085+akinsola-guardian
requestContext.ts
in src/server/lib/middleware
20 - 2024-09-10 2024-09-12 3 1 +79 / -7 ashcorr20 ashcorr20
skip.ts
in src/server/lib/okta/idx
19 - 2025-04-02 2025-04-07 2 1 +56 / -0 mahesh mahesh
DiscoverOurApps.tsx
in src/client/pages
19 - 2026-09-04 2026-10-06 2 1 +47 / -3 ioannakok ioannakok
user-benefits-api.ts
in src/shared/lib
17 - 2025-04-08 2025-04-08 1 1 +22 / -0 106528085+akinsola-guardian 106528085+akinsola-guardian
OnboardingPage.stories.tsx
in src/client/pages
17 - 2026-09-03 2026-10-06 4 1 +48 / -2 ioannakok ioannakok
IframeThemedEmailInput.tsx
in src/client/components
16 - 2025-11-26 2025-11-26 1 1 +19 / -0 richard.bangay richard.bangay
400.ts
in src/server/lib/middleware
15 - 2026-04-20 2026-04-21 2 1 +51 / -0 ashcorr20 ashcorr20
oktaDev.ts
in src/server/lib/middleware
14 - 2022-04-11 2023-07-17 4 1 +36 / -0 mahesh mahesh
paths.ts
in src/server/lib/okta/idx/shared
13 - 2024-08-14 2025-04-07 4 1 +28 / -0 mahesh mahesh
IframeThemedEmailInput.stories.tsx
in src/client/components
12 - 2025-11-26 2026-03-09 2 1 +17 / -1 richard.bangay richard.bangay
WelcomeExistingPage.tsx
in src/client/pages
12 - 2025-01-20 2025-01-27 2 1 +36 / -0 mahesh mahesh
vite.config.ts
in .storybook
11 1 2026-03-09 2026-03-09 1 1 +12 / -0 richard.bangay richard.bangay
PasscodeUsedRegisterPage.tsx
in src/client/pages
11 - 2025-10-27 2025-11-03 3 1 +32 / -16 richard.bangay richard.bangay
requestId.ts
in src/server/lib/middleware
10 - 2022-08-04 2024-11-20 5 1 +36 / -2 mahesh mahesh
10 - 2026-04-27 2026-05-05 2 1 +22 / -0 ioannakok ioannakok
validateFromUri.ts
in src/server/lib
10 - 2024-08-08 2024-08-08 1 1 +24 / -0 ashcorr20 ashcorr20
Correlations

File Size vs. Number of Changes: 487 points

src/client/assets/decorative/index.ts x: 8 lines of code y: 5 # changes src/client/components/OnboardingCard.tsx x: 107 lines of code y: 5 # changes src/client/components/OnboardingImage.tsx x: 31 lines of code y: 4 # changes src/client/components/OnboardingSection.tsx x: 50 lines of code y: 3 # changes src/client/layouts/MinimalLayout.tsx x: 178 lines of code y: 25 # changes src/client/pages/DiscoverOurApps.tsx x: 19 lines of code y: 2 # changes src/client/pages/Onboarding.tsx x: 13 lines of code y: 6 # changes src/client/pages/OnboardingPage.stories.tsx x: 17 lines of code y: 4 # changes src/client/styles/Theme.tsx x: 132 lines of code y: 5 # changes src/server/lib/registrationConsents.ts x: 155 lines of code y: 14 # changes src/server/routes/register.ts x: 680 lines of code y: 175 # changes src/shared/lib/queryParams.ts x: 93 lines of code y: 49 # changes src/shared/model/QueryParams.ts x: 36 lines of code y: 86 # changes src/server/routes/welcome.ts x: 540 lines of code y: 144 # changes src/server/lib/idapi/consents.ts x: 151 lines of code y: 52 # changes src/server/lib/idapi/newsletters.ts x: 118 lines of code y: 52 # changes src/server/lib/user-features.ts x: 77 lines of code y: 13 # changes src/client/app.tsx x: 58 lines of code y: 29 # changes src/client/components/ExternalLink.tsx x: 22 lines of code y: 11 # changes src/client/components/MainForm.tsx x: 394 lines of code y: 78 # changes src/client/components/Terms.tsx x: 59 lines of code y: 51 # changes src/client/pages/IframedRegisterWithEmail.tsx x: 74 lines of code y: 11 # changes src/client/pages/IframedSignIn.tsx x: 225 lines of code y: 11 # changes src/server/lib/middleware/helmet.ts x: 70 lines of code y: 62 # changes src/server/routes/dev.ts x: 180 lines of code y: 9 # changes src/client/pages/IframedRegisterWithEmailPage.tsx x: 35 lines of code y: 3 # changes cdk/lib/identity-gateway.ts x: 517 lines of code y: 16 # changes src/server/lib/okta/idx/interact.ts x: 126 lines of code y: 19 # changes src/server/lib/okta/oauth.ts x: 106 lines of code y: 48 # changes src/server/lib/okta/openid-connect.ts x: 289 lines of code y: 73 # changes src/server/routes/oauth.ts x: 564 lines of code y: 132 # changes src/client/pages/OnboardingPage.tsx x: 5 lines of code y: 3 # changes src/client/routes.tsx x: 342 lines of code y: 144 # changes src/server/lib/queryParams.ts x: 81 lines of code y: 80 # changes src/shared/model/Routes.ts x: 159 lines of code y: 189 # changes src/client/pages/IframedRegisterWithEmail.stories.tsx x: 54 lines of code y: 7 # changes src/client/pages/IframedSignIn.stories.tsx x: 153 lines of code y: 7 # changes playwright/fixtures/e2e.ts x: 9 lines of code y: 1 # changes playwright/fixtures/mockedApiRequest.ts x: 33 lines of code y: 2 # changes playwright/helpers/accessibility.ts x: 22 lines of code y: 2 # changes playwright/helpers/network/recaptcha.ts x: 84 lines of code y: 2 # changes src/shared/model/ophan.ts x: 15 lines of code y: 13 # changes src/client/pages/NewAccountConsents.tsx x: 95 lines of code y: 8 # changes src/client/pages/NewAccountConsentsPage.tsx x: 23 lines of code y: 7 # changes src/client/components/PasswordInput.tsx x: 200 lines of code y: 52 # changes src/server/lib/passcodeSendAgainTimer.ts x: 11 lines of code y: 4 # changes src/okta/static/okta-login.code.html x: 66 lines of code y: 5 # changes src/shared/model/Configuration.ts x: 3 lines of code y: 7 # changes src/client/components/ToggleSwitchInput.tsx x: 223 lines of code y: 33 # changes src/client/components/ToggleSwitchList.tsx x: 21 lines of code y: 4 # changes src/server/lib/okta/tokens.ts x: 107 lines of code y: 11 # changes src/server/lib/rate-limit/types.ts x: 65 lines of code y: 16 # changes src/server/models/Metrics.ts x: 112 lines of code y: 93 # changes src/shared/model/Newsletter.ts x: 147 lines of code y: 80 # changes src/email/lib/send.ts x: 57 lines of code y: 16 # changes src/email/components/Button.stories.tsx x: 24 lines of code y: 12 # changes src/email/components/Footer.stories.tsx x: 37 lines of code y: 12 # changes src/email/components/Header.stories.tsx x: 24 lines of code y: 9 # changes src/email/components/Page.stories.tsx x: 47 lines of code y: 11 # changes src/email/components/Text.stories.tsx x: 27 lines of code y: 9 # changes src/email/templates/AccountExists/AccountExists.stories.tsx x: 24 lines of code y: 13 # changes src/email/templates/AccountExists/sendAccountExistsEmail.ts x: 39 lines of code y: 19 # changes src/email/templates/AccountWithoutPasswordExists/AccountWithoutPasswordExists.stories.tsx x: 24 lines of code y: 8 # changes src/email/templates/AccountWithoutPasswordExists/sendAccountWithoutPasswordExists.ts x: 33 lines of code y: 10 # changes src/email/templates/CompleteRegistration/sendCompleteRegistration.ts x: 30 lines of code y: 15 # changes src/email/templates/CreatePassword/sendCreatePasswordEmail.ts x: 33 lines of code y: 9 # changes src/email/templates/EmailChallengePasscode/EmailChallengePasscode.stories.tsx x: 32 lines of code y: 4 # changes src/email/templates/ResetPassword/sendResetPasswordEmail.ts x: 33 lines of code y: 15 # changes src/email/templates/UnvalidatedEmailResetPassword/sendUnvalidatedEmailResetPasswordEmail.ts x: 33 lines of code y: 8 # changes src/email/templates/renderedTemplates.ts x: 91 lines of code y: 22 # changes src/email/testUtils.tsx x: 19 lines of code y: 10 # changes src/server/routes/emailTemplates.ts x: 43 lines of code y: 17 # changes src/client/pages/NewAccountReviewPage.tsx x: 17 lines of code y: 10 # changes src/shared/lib/welcome.ts x: 28 lines of code y: 8 # changes src/client/pages/JobsTermsAccept.tsx x: 158 lines of code y: 30 # changes util/mock-server.js x: 153 lines of code y: 24 # changes src/client/pages/IframedPasscodeEmailSent.tsx x: 220 lines of code y: 4 # changes src/client/pages/PasscodeEmailSent.stories.tsx x: 426 lines of code y: 16 # changes src/client/pages/PasscodeEmailSent.tsx x: 175 lines of code y: 25 # changes src/client/pages/PasscodeEmailSentPage.tsx x: 40 lines of code y: 5 # changes src/client/pages/ResetPasswordEmailSentPage.tsx x: 79 lines of code y: 12 # changes src/server/lib/getAppNameFromRegistrationPlatform.ts x: 10 lines of code y: 2 # changes src/server/routes/passcode.ts x: 217 lines of code y: 11 # changes src/server/routes/resetPassword.ts x: 287 lines of code y: 39 # changes playwright/helpers/api/okta.ts x: 245 lines of code y: 3 # changes src/server/lib/getGeolocationRegion.ts x: 29 lines of code y: 19 # changes src/server/controllers/changePassword.ts x: 204 lines of code y: 125 # changes src/server/controllers/checkPasswordToken.ts x: 256 lines of code y: 69 # changes src/server/lib/httpErrors.ts x: 5 lines of code y: 2 # changes src/server/lib/middleware/400.ts x: 15 lines of code y: 2 # changes src/server/lib/middleware/errorHandler.ts x: 53 lines of code y: 42 # changes src/server/lib/okta/idx/shared/idxFetch.ts x: 186 lines of code y: 10 # changes src/server/lib/recaptcha.ts x: 70 lines of code y: 29 # changes src/server/routes/subscriptions.ts x: 187 lines of code y: 15 # changes src/client/components/AuthProviderButtons.tsx x: 122 lines of code y: 8 # changes src/client/pages/PasscodeUsed.tsx x: 65 lines of code y: 10 # changes src/client/pages/Registration.stories.tsx x: 27 lines of code y: 35 # changes src/client/pages/Registration.tsx x: 54 lines of code y: 89 # changes src/client/pages/WelcomePrintPromo.stories.tsx x: 22 lines of code y: 1 # changes src/client/pages/WelcomePrintPromo.tsx x: 24 lines of code y: 1 # changes src/server/lib/getConfiguration.ts x: 222 lines of code y: 70 # changes src/server/lib/okta/register.ts x: 364 lines of code y: 64 # changes src/server/lib/sns/snsEventPublisher.ts x: 27 lines of code y: 1 # changes src/server/models/Configuration.ts x: 69 lines of code y: 85 # changes src/shared/lib/clientId.ts x: 9 lines of code y: 7 # changes src/client/components/EmailSentInformationBox.tsx x: 123 lines of code y: 8 # changes src/client/components/MainForm.stories.tsx x: 74 lines of code y: 25 # changes src/client/components/Terms.stories.tsx x: 23 lines of code y: 16 # changes .github/dependabot.yml x: 16 lines of code y: 16 # changes eslint.config.mjs x: 155 lines of code y: 8 # changes knip.ts x: 50 lines of code y: 10 # changes playwright/helpers/api/mailosaur.ts x: 65 lines of code y: 3 # changes scripts/generate-rate-limit-schema.ts x: 8 lines of code y: 6 # changes scripts/log.js x: 31 lines of code y: 8 # changes src/client/components/CookiesInTheBrowser.tsx x: 32 lines of code y: 3 # changes src/client/components/GatewayErrorSummary.tsx x: 54 lines of code y: 9 # changes src/client/components/RegistrationConsents.tsx x: 41 lines of code y: 23 # changes src/client/pages/SubscriptionSuccess.tsx x: 58 lines of code y: 10 # changes src/client/pages/Welcome.stories.tsx x: 23 lines of code y: 27 # changes src/client/pages/WelcomeExisting.tsx x: 52 lines of code y: 7 # changes src/server/lib/expressWrappers.ts x: 18 lines of code y: 7 # changes src/server/routes/changeEmail.ts x: 51 lines of code y: 9 # changes src/server/routes/consentToken.ts x: 75 lines of code y: 22 # changes src/server/routes/signIn.ts x: 578 lines of code y: 163 # changes src/okta/index.ts x: 30 lines of code y: 2 # changes src/okta/lib/helper.ts x: 182 lines of code y: 2 # changes src/okta/static/login-default.html x: 38 lines of code y: 2 # changes src/server/lib/getAssets.ts x: 45 lines of code y: 12 # changes src/client/pages/RegisterWithEmail.tsx x: 102 lines of code y: 36 # changes riff-raff.yaml x: 29 lines of code y: 17 # changes playwright/helpers/register.ts x: 116 lines of code y: 1 # changes .storybook/clientStateDecorator.tsx x: 17 lines of code y: 8 # changes .storybook/main.js x: 57 lines of code y: 42 # changes .storybook/modes.ts x: 20 lines of code y: 3 # changes .storybook/preview.jsx x: 96 lines of code y: 1 # changes .storybook/vite.config.ts x: 11 lines of code y: 1 # changes src/client/components/AuthProviderButtons.stories.tsx x: 55 lines of code y: 9 # changes src/client/components/DetailedRecaptchaError.stories.tsx x: 20 lines of code y: 9 # changes src/client/components/EmailInput.stories.tsx x: 30 lines of code y: 12 # changes src/client/components/EmailSentInformationBox.stories.tsx x: 105 lines of code y: 5 # changes src/client/components/GatewayErrorSummary.stories.tsx x: 71 lines of code y: 5 # changes src/client/components/IframeThemedEmailInput.stories.tsx x: 12 lines of code y: 2 # changes src/client/components/InformationBox.stories.tsx x: 41 lines of code y: 9 # changes src/client/components/MainBodyText.stories.tsx x: 21 lines of code y: 12 # changes src/client/components/MinimalHeader.stories.tsx x: 8 lines of code y: 3 # changes src/client/components/MinimalLayoutImage.stories.tsx x: 12 lines of code y: 3 # changes src/client/components/NameInputField.stories.tsx x: 18 lines of code y: 10 # changes src/client/components/PasscodeInput.stories.tsx x: 40 lines of code y: 7 # changes src/client/components/PasswordForm.stories.tsx x: 35 lines of code y: 15 # changes src/client/components/PasswordInput.stories.tsx x: 38 lines of code y: 17 # changes src/client/components/RegistrationConsents.stories.tsx x: 30 lines of code y: 8 # changes src/client/components/ThemedLink.stories.tsx x: 11 lines of code y: 3 # changes src/client/components/ThemedTextInput.stories.tsx x: 30 lines of code y: 3 # changes src/client/components/ToggleSwitchInput.stories.tsx x: 60 lines of code y: 14 # changes src/client/components/ToggleSwitchList.stories.tsx x: 23 lines of code y: 3 # changes src/client/pages/ChangeEmailComplete.stories.tsx x: 9 lines of code y: 10 # changes src/client/pages/ChangeEmailError.stories.tsx x: 8 lines of code y: 10 # changes src/client/pages/ChangePassword.stories.tsx x: 37 lines of code y: 21 # changes src/client/pages/ChangePasswordComplete.stories.tsx x: 29 lines of code y: 16 # changes src/client/pages/DeleteAccount.stories.tsx x: 41 lines of code y: 11 # changes src/client/pages/DeleteAccountBlocked.stories.tsx x: 109 lines of code y: 7 # changes src/client/pages/DeleteAccountComplete.stories.tsx x: 8 lines of code y: 7 # changes src/client/pages/DeleteAccountEmailPasswordValidation.stories.tsx x: 25 lines of code y: 8 # changes src/client/pages/IframedPasscodeEmailSent.stories.tsx x: 275 lines of code y: 2 # changes src/client/pages/JobsTermsAccept.stories.tsx x: 22 lines of code y: 12 # changes src/client/pages/NewAccountConsents.stories.tsx x: 34 lines of code y: 3 # changes src/client/pages/NewAccountNewsletters.stories.tsx x: 96 lines of code y: 6 # changes src/client/pages/NewAccountReview.stories.tsx x: 15 lines of code y: 9 # changes src/client/pages/NotFound.stories.tsx x: 8 lines of code y: 9 # changes src/client/pages/PasscodeUsed.stories.tsx x: 21 lines of code y: 6 # changes src/client/pages/RegisterWithEmail.stories.tsx x: 107 lines of code y: 18 # changes src/client/pages/ResendConsentEmail.stories.tsx x: 11 lines of code y: 10 # changes src/client/pages/ResetPassword.stories.tsx x: 97 lines of code y: 26 # changes src/client/pages/SignIn.stories.tsx x: 126 lines of code y: 42 # changes src/client/pages/SignedInAs.stories.tsx x: 55 lines of code y: 19 # changes src/client/pages/SubscriptionError.stories.tsx x: 27 lines of code y: 11 # changes src/client/pages/SubscriptionReview.stories.tsx x: 41 lines of code y: 2 # changes src/client/pages/UnvalidatedEmailEmailSent.stories.tsx x: 59 lines of code y: 12 # changes src/client/pages/WelcomeExisting.stories.tsx x: 27 lines of code y: 3 # changes src/client/pages/WelcomeSocial.stories.tsx x: 59 lines of code y: 16 # changes cloudformation.yaml x: 796 lines of code y: 109 # changes src/server/lib/idapi/consentToken.ts x: 62 lines of code y: 15 # changes playwright/helpers/utils.ts x: 4 lines of code y: 2 # changes src/server/routes/agree.ts x: 109 lines of code y: 38 # changes src/shared/model/ClientState.ts x: 82 lines of code y: 97 # changes src/shared/model/Consent.ts x: 87 lines of code y: 42 # changes playwright/fixtures/okta-responses/success/idx-identify-response.ts x: 197 lines of code y: 1 # changes playwright/helpers/api/idapi.ts x: 178 lines of code y: 1 # changes playwright/helpers/api/okta-apps.ts x: 25 lines of code y: 1 # changes playwright/helpers/api/placeholder-password-mock.ts x: 81 lines of code y: 1 # changes playwright/helpers/cookies/cookie-helpers.ts x: 48 lines of code y: 1 # changes playwright/helpers/network/mocking.ts x: 51 lines of code y: 1 # changes src/server/lib/encryptedStateCookie.ts x: 82 lines of code y: 26 # changes src/server/lib/getRegistrationLocation.ts x: 337 lines of code y: 22 # changes src/server/lib/idapi/subscriptions.ts x: 103 lines of code y: 12 # changes src/server/lib/trackMetric.ts x: 71 lines of code y: 28 # changes src/server/models/okta/User.ts x: 111 lines of code y: 48 # changes src/server/routes/delete.ts x: 332 lines of code y: 24 # changes src/client/components/NameInputField.tsx x: 92 lines of code y: 15 # changes src/server/lib/middleware/index.ts x: 32 lines of code y: 43 # changes src/server/lib/typedRoutes.ts x: 13 lines of code y: 14 # changes src/client/assets/newsletters/index.ts x: 20 lines of code y: 29 # changes src/client/models/Newsletter.ts x: 41 lines of code y: 33 # changes src/server/lib/newsletters.ts x: 85 lines of code y: 14 # changes src/client/components/InformationBox.tsx x: 34 lines of code y: 8 # changes src/client/pages/WelcomeSocial.tsx x: 65 lines of code y: 28 # changes src/client/pages/WelcomeSocialPage.tsx x: 20 lines of code y: 16 # changes src/client/pages/NewAccountNewsletters.tsx x: 118 lines of code y: 11 # changes src/client/pages/SignIn.tsx x: 250 lines of code y: 120 # changes src/server/lib/middleware/redirectIfLoggedIn.ts x: 80 lines of code y: 35 # changes src/client/pages/SubscriptionReview.tsx x: 52 lines of code y: 1 # changes src/shared/model/PageTitle.ts x: 46 lines of code y: 61 # changes src/server/lib/okta/api/apps.ts x: 67 lines of code y: 14 # changes src/server/models/okta/App.ts x: 13 lines of code y: 7 # changes src/server/routes/index.ts x: 47 lines of code y: 75 # changes src/server/lib/csrf.ts x: 106 lines of code y: 3 # changes src/server/lib/middleware/rateLimit.ts x: 79 lines of code y: 29 # changes src/server/lib/middleware/requestState.ts x: 119 lines of code y: 75 # changes src/server/routes/verifyEmail.ts x: 27 lines of code y: 88 # changes src/client/components/MainBodyText.tsx x: 57 lines of code y: 22 # changes src/client/lib/hooks/useRecaptcha.tsx x: 173 lines of code y: 23 # changes src/client/components/IframeThemedEmailInput.tsx x: 16 lines of code y: 1 # changes src/client/components/PasscodeInput.tsx x: 93 lines of code y: 11 # changes src/client/pages/IframedPasscodeEmailSentPage.tsx x: 45 lines of code y: 1 # changes src/client/pages/IframedSignInPage.tsx x: 44 lines of code y: 1 # changes src/client/styles/Shared.ts x: 102 lines of code y: 42 # changes src/server/controllers/signInControllers.ts x: 544 lines of code y: 20 # changes src/shared/model/Errors.ts x: 106 lines of code y: 84 # changes src/server/lib/validateUrl.ts x: 45 lines of code y: 19 # changes src/client/pages/NewAccountReview.tsx x: 27 lines of code y: 26 # changes src/client/pages/EmailSent.tsx x: 87 lines of code y: 71 # changes src/client/pages/RegistrationEmailSentPage.tsx x: 72 lines of code y: 49 # changes src/client/pages/SignInPasscodeEmailSentPage.tsx x: 39 lines of code y: 8 # changes src/client/pages/UnvalidatedEmailEmailSentPage.tsx x: 64 lines of code y: 17 # changes src/shared/model/EncryptedState.ts x: 13 lines of code y: 36 # changes src/client/static/analytics/ophan.ts x: 32 lines of code y: 12 # changes src/server/lib/rate-limit/configurationValidator.ts x: 49 lines of code y: 16 # changes src/client/pages/SignedInAs.tsx x: 104 lines of code y: 23 # changes src/server/controllers/sendChangePasswordEmail.ts x: 517 lines of code y: 59 # changes src/server/models/Express.ts x: 46 lines of code y: 55 # changes src/server/lib/user-benefits-api/user-benefits.ts x: 31 lines of code y: 1 # changes src/server/lib/okta/idx/shared/paths.ts x: 13 lines of code y: 4 # changes src/server/lib/okta/idx/shared/submitPasscode.ts x: 187 lines of code y: 12 # changes src/shared/lib/routeUtils.ts x: 47 lines of code y: 18 # changes src/client/components/EmailInput.tsx x: 50 lines of code y: 27 # changes src/client/lib/clientSideLogger.ts x: 39 lines of code y: 18 # changes src/client/lib/hooks/useInputValidityState.ts x: 70 lines of code y: 10 # changes src/client/models/Font.ts x: 35 lines of code y: 7 # changes src/server/lib/serverSideLogger.ts x: 58 lines of code y: 24 # changes src/server/models/okta/Authentication.ts x: 98 lines of code y: 10 # changes src/shared/model/Logger.ts x: 12 lines of code y: 8 # changes src/shared/model/OpenIdErrors.ts x: 9 lines of code y: 6 # changes src/shared/types.ts x: 1 lines of code y: 2 # changes src/shared/model/RegistrationLocation.ts x: 154 lines of code y: 6 # changes src/server/lib/okta/api/authentication.ts x: 84 lines of code y: 27 # changes src/server/lib/okta/api/errors.ts x: 37 lines of code y: 20 # changes src/server/lib/okta/api/users.ts x: 260 lines of code y: 40 # changes src/server/lib/okta/idx/shared/schemas.ts x: 112 lines of code y: 9 # changes src/server/routes/signOut.ts x: 154 lines of code y: 41 # changes src/client/static/index.tsx x: 9 lines of code y: 40 # changes src/server/lib/okta/idx/enroll.ts x: 113 lines of code y: 17 # changes src/server/lib/registrationPlatform.ts x: 50 lines of code y: 8 # changes src/server/lib/updateRegistrationLocation.ts x: 42 lines of code y: 21 # changes src/shared/model/User.ts x: 27 lines of code y: 28 # changes src/server/lib/okta/idx/challenge.ts x: 217 lines of code y: 23 # changes src/client/components/NoScript.tsx x: 82 lines of code y: 3 # changes src/client/components/ClientState.tsx x: 25 lines of code y: 26 # changes src/client/static/hydration.tsx x: 42 lines of code y: 38 # changes src/server/lib/renderer.tsx x: 139 lines of code y: 82 # changes src/client/pages/SignInPage.tsx x: 49 lines of code y: 49 # changes src/client/pages/RegisterWithEmailPage.tsx x: 25 lines of code y: 13 # changes src/client/pages/ResetPassword.tsx x: 123 lines of code y: 71 # changes src/client/pages/ResetPasswordPage.tsx x: 35 lines of code y: 40 # changes src/server/lib/okta/idx/shared/errorHandling.ts x: 93 lines of code y: 6 # changes src/client/pages/DeleteAccount.tsx x: 224 lines of code y: 16 # changes src/shared/model/experiments/abSwitches.ts x: 3 lines of code y: 60 # changes src/shared/model/experiments/abTests.ts x: 33 lines of code y: 54 # changes src/server/lib/okta/idx/startIdxFlow.ts x: 58 lines of code y: 7 # changes src/server/server.ts x: 12 lines of code y: 6 # changes src/server/lib/middleware/csrf.ts x: 4 lines of code y: 20 # changes src/client/components/CheckboxInput.tsx x: 134 lines of code y: 11 # changes src/shared/lib/appNameUtils.ts x: 49 lines of code y: 5 # changes .swcrc.config.js x: 33 lines of code y: 7 # changes scripts/banner.js x: 18 lines of code y: 6 # changes src/client/components/ABTestDemo.tsx x: 56 lines of code y: 12 # changes src/client/components/PasswordForm.tsx x: 310 lines of code y: 69 # changes src/server/lib/IDAPIFetch.ts x: 106 lines of code y: 33 # changes src/server/lib/idapi/unauth.ts x: 33 lines of code y: 18 # changes src/server/lib/middleware/login.ts x: 106 lines of code y: 61 # changes src/server/lib/middleware/requestId.ts x: 10 lines of code y: 5 # changes src/shared/lib/regexparam.ts x: 22 lines of code y: 8 # changes src/server/controllers/oktaIdxShared.ts x: 138 lines of code y: 1 # changes src/server/lib/okta/dangerouslySetPlaceholderPassword.ts x: 76 lines of code y: 13 # changes src/server/lib/okta/idx/identify.ts x: 60 lines of code y: 10 # changes src/client/pages/NotFound.tsx x: 26 lines of code y: 17 # changes src/client/pages/UnexpectedError.tsx x: 25 lines of code y: 11 # changes src/client/components/DetailedRecaptchaError.tsx x: 23 lines of code y: 17 # changes src/client/layouts/MinimalLayout.stories.tsx x: 106 lines of code y: 4 # changes src/client/pages/ChangeEmailErrorPage.tsx x: 11 lines of code y: 6 # changes src/client/pages/ChangePassword.tsx x: 49 lines of code y: 82 # changes src/client/pages/ChangePasswordComplete.tsx x: 35 lines of code y: 44 # changes src/client/pages/ChangePasswordCompletePage.tsx x: 14 lines of code y: 17 # changes src/client/pages/ChangePasswordPage.tsx x: 49 lines of code y: 37 # changes src/client/pages/DeleteAccountComplete.tsx x: 25 lines of code y: 7 # changes src/client/pages/DeleteAccountEmailPasswordValidation.tsx x: 63 lines of code y: 9 # changes src/client/pages/DeleteAccountEmailPasswordValidationPage.tsx x: 16 lines of code y: 5 # changes src/client/pages/DeleteAccountPage.tsx x: 18 lines of code y: 5 # changes src/client/pages/EmailSentPage.tsx x: 38 lines of code y: 39 # changes src/client/pages/MaintenancePage.tsx x: 10 lines of code y: 9 # changes src/client/pages/NotFoundPage.tsx x: 6 lines of code y: 29 # changes src/client/pages/RegistrationPage.tsx x: 20 lines of code y: 30 # changes src/client/pages/ResendConsentEmail.tsx x: 43 lines of code y: 11 # changes src/client/pages/ResendConsentEmailPage.tsx x: 15 lines of code y: 8 # changes src/client/pages/ResendPasswordPage.tsx x: 44 lines of code y: 34 # changes src/client/pages/ResetPasswordSessionExpiredPage.tsx x: 38 lines of code y: 31 # changes src/client/pages/ReturnToApp.tsx x: 30 lines of code y: 7 # changes src/client/pages/SetPasswordCompletePage.tsx x: 14 lines of code y: 13 # changes src/client/pages/SetPasswordPage.tsx x: 47 lines of code y: 25 # changes src/client/pages/SetPasswordResendPage.tsx x: 34 lines of code y: 27 # changes src/client/pages/SetPasswordSessionExpiredPage.tsx x: 40 lines of code y: 28 # changes src/client/pages/SignedInAsPage.tsx x: 22 lines of code y: 10 # changes src/client/pages/SubscriptionError.tsx x: 45 lines of code y: 7 # changes src/client/pages/Welcome.tsx x: 97 lines of code y: 54 # changes src/client/pages/WelcomePage.tsx x: 48 lines of code y: 43 # changes src/client/pages/WelcomePasswordAlreadySetPage.tsx x: 18 lines of code y: 11 # changes src/client/pages/WelcomeResendPage.tsx x: 33 lines of code y: 21 # changes src/client/pages/WelcomeSessionExpiredPage.tsx x: 40 lines of code y: 31 # changes src/server/lib/deeplink/oktaRecoveryToken.ts x: 79 lines of code y: 16 # changes src/server/lib/idapi/auth.ts x: 48 lines of code y: 41 # changes src/server/lib/idapi/decryptToken.ts x: 25 lines of code y: 14 # changes src/server/lib/idapi/user.ts x: 93 lines of code y: 69 # changes src/server/lib/okta/fixProfile.ts x: 41 lines of code y: 10 # changes src/server/lib/okta/idx/introspect.ts x: 82 lines of code y: 20 # changes src/server/lib/okta/idx/recover.ts x: 60 lines of code y: 9 # changes src/server/lib/ophan.ts x: 149 lines of code y: 22 # changes src/server/lib/okta/idx/shared/findAuthenticatorId.ts x: 80 lines of code y: 4 # changes src/client/components/ThemedLink.tsx x: 14 lines of code y: 3 # changes src/server/lib/jobs.ts x: 22 lines of code y: 17 # changes src/server/lib/okta/api/headers.ts x: 20 lines of code y: 7 # changes src/server/lib/okta/api/sessions.ts x: 51 lines of code y: 21 # changes src/client/components/CsrfFormField.tsx x: 28 lines of code y: 23 # changes src/shared/lib/featureSwitches.ts x: 16 lines of code y: 27 # changes src/server/lib/middleware/404.ts x: 15 lines of code y: 12 # changes src/email/templates/EmailChallengePasscode/EmailChallengePasscode.tsx x: 34 lines of code y: 1 # changes src/email/templates/RegistrationPasscode/RegistrationPasscodeText.ts x: 10 lines of code y: 3 # changes src/client/lib/ophan.ts x: 33 lines of code y: 23 # changes src/server/index.ts x: 16 lines of code y: 39 # changes src/server/lib/idapi/IDAPICookies.ts x: 68 lines of code y: 12 # changes src/server/lib/rate-limit/bucket.ts x: 131 lines of code y: 13 # changes src/server/lib/rate-limit/index.ts x: 4 lines of code y: 15 # changes src/server/lib/rate-limit/logger.ts x: 34 lines of code y: 11 # changes src/server/lib/validatePasswordField.ts x: 97 lines of code y: 15 # changes src/server/models/okta/Error.ts x: 69 lines of code y: 16 # changes src/shared/lib/newsletter.ts x: 14 lines of code y: 31 # changes src/shared/model/IDAPIAuth.ts x: 9 lines of code y: 11 # changes src/email/templates/ResetPassword/ResetPassword.tsx x: 35 lines of code y: 24 # changes src/server/routes/setPassword.ts x: 84 lines of code y: 55 # changes src/email/components/Text.tsx x: 35 lines of code y: 21 # changes src/email/templates/RegistrationPasscode/RegistrationPasscode.tsx x: 42 lines of code y: 9 # changes src/client/components/DeleteAccountReturnLink.tsx x: 16 lines of code y: 7 # changes src/client/components/MinimalHeader.tsx x: 28 lines of code y: 2 # changes src/client/components/ThemedTextInput.tsx x: 14 lines of code y: 2 # changes src/client/lib/consentsTracking.ts x: 83 lines of code y: 33 # changes src/email/templates/NoAccount/NoAccountText.ts x: 14 lines of code y: 11 # changes src/client/static/sourceAccessibility.tsx x: 2 lines of code y: 7 # changes src/email/components/Button.tsx x: 27 lines of code y: 19 # changes src/email/components/Footer.tsx x: 47 lines of code y: 35 # changes src/email/components/Header.tsx x: 18 lines of code y: 16 # changes src/email/components/Link.tsx x: 13 lines of code y: 8 # changes src/email/components/SubHeader.tsx x: 39 lines of code y: 15 # changes src/shared/model/Geolocation.ts x: 1 lines of code y: 11 # changes src/server/lib/crypto.ts x: 37 lines of code y: 11 # changes src/client/components/ABReact.tsx x: 40 lines of code y: 3 # changes src/server/lib/rate-limit/keys.ts x: 44 lines of code y: 13 # changes src/server/lib/redis/redisClient.ts x: 10 lines of code y: 12 # changes src/shared/lib/members-data-api.ts x: 30 lines of code y: 4 # changes src/email/templates/AccountExists/AccountExistsText.ts x: 13 lines of code y: 15 # changes src/email/templates/AccountWithoutPasswordExists/AccountWithoutPasswordExistsText.ts x: 11 lines of code y: 8 # changes src/email/templates/ResetPassword/ResetPasswordText.ts x: 11 lines of code y: 13 # changes src/email/templates/UnvalidatedEmailResetPassword/UnvalidatedEmailResetPasswordText.ts x: 11 lines of code y: 9 # changes src/server/lib/idapi/invertOptOutConsents.ts x: 23 lines of code y: 6 # changes src/shared/model/NewsletterPatch.ts x: 6 lines of code y: 2 # changes src/server/lib/base64.ts x: 4 lines of code y: 3 # changes src/shared/model/IdapiQueryParams.ts x: 5 lines of code y: 8 # changes src/server/models/okta/Session.ts x: 11 lines of code y: 7 # changes .storybook/preview-head.html x: 5 lines of code y: 18 # changes src/client/lib/fonts.ts x: 106 lines of code y: 19 # changes src/client/lib/hooks/usePageLoadOphanInteraction.ts x: 12 lines of code y: 5 # changes src/email/templates/AccidentalEmail/AccidentalEmail.tsx x: 42 lines of code y: 7 # changes src/email/templates/CompleteRegistration/CompleteRegistration.tsx x: 27 lines of code y: 6 # changes src/email/templates/NoAccount/NoAccount.tsx x: 32 lines of code y: 17 # changes src/email/templates/UnvalidatedEmailResetPassword/UnvalidatedEmailResetPassword.tsx x: 29 lines of code y: 6 # changes src/server/lib/emailCookie.ts x: 4 lines of code y: 9 # changes src/server/lib/getABForcedVariants.ts x: 17 lines of code y: 9 # changes src/server/lib/getABTesting.ts x: 29 lines of code y: 14 # changes src/server/lib/getBrowserName.ts x: 9 lines of code y: 4 # changes src/server/lib/getMvtId.ts x: 12 lines of code y: 9 # changes src/server/lib/middleware/cache.ts x: 6 lines of code y: 10 # changes src/server/lib/rate-limit/rateLimit.ts x: 91 lines of code y: 12 # changes src/server/lib/requestState.ts x: 8 lines of code y: 4 # changes src/server/lib/timeoutSignal.ts x: 5 lines of code y: 5 # changes src/server/models/Error.ts x: 51 lines of code y: 5 # changes src/shared/model/OktaQueryParams.ts x: 4 lines of code y: 6 # changes
189.0
# changes
  min: 1.0
  average: 19.33
  25th percentile: 6.0
  median: 11.0
  75th percentile: 22.0
  max: 189.0
0 796.0
lines of code
min: 1.0 | average: 66.06 | 25th percentile: 17.0 | median: 34.0 | 75th percentile: 77.0 | max: 796.0

Number of Contributors vs. Number of Changes: 487 points

src/client/assets/decorative/index.ts x: 3 # contributors y: 5 # changes src/client/components/OnboardingCard.tsx x: 1 # contributors y: 5 # changes src/client/components/OnboardingImage.tsx x: 1 # contributors y: 4 # changes src/client/components/OnboardingSection.tsx x: 1 # contributors y: 3 # changes src/client/layouts/MinimalLayout.tsx x: 8 # contributors y: 25 # changes src/client/pages/DiscoverOurApps.tsx x: 1 # contributors y: 2 # changes src/client/pages/Onboarding.tsx x: 2 # contributors y: 6 # changes src/client/styles/Theme.tsx x: 4 # contributors y: 5 # changes src/server/lib/registrationConsents.ts x: 7 # contributors y: 14 # changes src/server/routes/register.ts x: 23 # contributors y: 175 # changes src/shared/lib/queryParams.ts x: 12 # contributors y: 49 # changes src/shared/model/QueryParams.ts x: 18 # contributors y: 86 # changes src/server/routes/welcome.ts x: 19 # contributors y: 144 # changes src/server/lib/idapi/consents.ts x: 18 # contributors y: 52 # changes src/server/lib/idapi/newsletters.ts x: 20 # contributors y: 52 # changes src/server/lib/user-features.ts x: 7 # contributors y: 13 # changes src/client/app.tsx x: 12 # contributors y: 29 # changes src/client/components/ExternalLink.tsx x: 6 # contributors y: 11 # changes src/client/components/MainForm.tsx x: 15 # contributors y: 78 # changes src/client/components/Terms.tsx x: 19 # contributors y: 51 # changes src/client/pages/IframedRegisterWithEmail.tsx x: 3 # contributors y: 11 # changes src/server/lib/middleware/helmet.ts x: 12 # contributors y: 62 # changes src/server/routes/dev.ts x: 2 # contributors y: 9 # changes src/client/pages/IframedRegisterWithEmailPage.tsx x: 2 # contributors y: 3 # changes cdk/lib/identity-gateway.ts x: 3 # contributors y: 16 # changes src/server/lib/okta/idx/interact.ts x: 5 # contributors y: 19 # changes src/server/lib/okta/oauth.ts x: 8 # contributors y: 48 # changes src/server/lib/okta/openid-connect.ts x: 13 # contributors y: 73 # changes src/server/routes/oauth.ts x: 18 # contributors y: 132 # changes src/client/routes.tsx x: 25 # contributors y: 144 # changes src/server/lib/queryParams.ts x: 18 # contributors y: 80 # changes src/shared/model/Routes.ts x: 30 # contributors y: 189 # changes src/client/pages/IframedRegisterWithEmail.stories.tsx x: 3 # contributors y: 7 # changes playwright/fixtures/e2e.ts x: 2 # contributors y: 1 # changes playwright/fixtures/mockedApiRequest.ts x: 3 # contributors y: 2 # changes src/client/pages/NewAccountConsents.tsx x: 3 # contributors y: 8 # changes src/client/components/PasswordInput.tsx x: 19 # contributors y: 52 # changes src/server/lib/passcodeSendAgainTimer.ts x: 4 # contributors y: 4 # changes src/okta/static/okta-login.code.html x: 2 # contributors y: 5 # changes src/client/components/ToggleSwitchInput.tsx x: 11 # contributors y: 33 # changes src/client/components/ToggleSwitchList.tsx x: 3 # contributors y: 4 # changes src/server/lib/rate-limit/types.ts x: 5 # contributors y: 16 # changes src/server/models/Metrics.ts x: 18 # contributors y: 93 # changes src/shared/model/Newsletter.ts x: 20 # contributors y: 80 # changes src/email/lib/send.ts x: 8 # contributors y: 16 # changes src/email/components/Button.stories.tsx x: 6 # contributors y: 12 # changes src/email/components/Footer.stories.tsx x: 7 # contributors y: 12 # changes src/email/components/Header.stories.tsx x: 6 # contributors y: 9 # changes src/email/components/Page.stories.tsx x: 7 # contributors y: 11 # changes src/email/templates/AccountExists/AccountExists.stories.tsx x: 10 # contributors y: 13 # changes src/email/templates/AccountExists/sendAccountExistsEmail.ts x: 10 # contributors y: 19 # changes src/email/templates/AccountWithoutPasswordExists/AccountWithoutPasswordExists.stories.tsx x: 7 # contributors y: 8 # changes src/email/templates/AccountWithoutPasswordExists/sendAccountWithoutPasswordExists.ts x: 5 # contributors y: 10 # changes src/email/templates/CompleteRegistration/CompleteRegistration.stories.tsx x: 5 # contributors y: 9 # changes src/email/templates/CompleteRegistration/sendCompleteRegistration.ts x: 4 # contributors y: 15 # changes src/email/templates/CreatePassword/sendCreatePasswordEmail.ts x: 4 # contributors y: 9 # changes src/email/templates/NoAccount/NoAccount.stories.tsx x: 10 # contributors y: 12 # changes src/email/templates/ResetPassword/sendResetPasswordEmail.ts x: 10 # contributors y: 15 # changes src/email/templates/UnvalidatedEmailResetPassword/sendUnvalidatedEmailResetPasswordEmail.ts x: 4 # contributors y: 8 # changes src/email/templates/renderedTemplates.ts x: 5 # contributors y: 22 # changes src/email/testUtils.tsx x: 3 # contributors y: 10 # changes src/server/routes/emailTemplates.ts x: 7 # contributors y: 17 # changes src/client/pages/NewAccountReviewPage.tsx x: 7 # contributors y: 10 # changes src/client/pages/JobsTermsAccept.tsx x: 8 # contributors y: 30 # changes util/mock-server.js x: 12 # contributors y: 24 # changes src/client/pages/IframedPasscodeEmailSent.tsx x: 2 # contributors y: 4 # changes src/client/pages/PasscodeEmailSent.tsx x: 4 # contributors y: 25 # changes src/client/pages/ResetPasswordEmailSentPage.tsx x: 3 # contributors y: 12 # changes src/server/routes/passcode.ts x: 4 # contributors y: 11 # changes src/server/routes/resetPassword.ts x: 14 # contributors y: 39 # changes src/server/lib/getGeolocationRegion.ts x: 8 # contributors y: 19 # changes src/server/controllers/changePassword.ts x: 18 # contributors y: 125 # changes src/server/controllers/checkPasswordToken.ts x: 15 # contributors y: 69 # changes src/server/lib/middleware/errorHandler.ts x: 13 # contributors y: 42 # changes src/server/lib/okta/idx/shared/idxFetch.ts x: 2 # contributors y: 10 # changes src/server/lib/recaptcha.ts x: 10 # contributors y: 29 # changes src/server/routes/subscriptions.ts x: 6 # contributors y: 15 # changes src/client/pages/Registration.stories.tsx x: 14 # contributors y: 35 # changes src/client/pages/Registration.tsx x: 19 # contributors y: 89 # changes src/client/pages/WelcomePrintPromo.stories.tsx x: 1 # contributors y: 1 # changes src/server/lib/getConfiguration.ts x: 16 # contributors y: 70 # changes src/server/lib/okta/register.ts x: 13 # contributors y: 64 # changes src/server/models/Configuration.ts x: 18 # contributors y: 85 # changes src/shared/lib/clientId.ts x: 4 # contributors y: 7 # changes src/client/components/MainForm.stories.tsx x: 10 # contributors y: 25 # changes scripts/generate-rate-limit-schema.ts x: 5 # contributors y: 6 # changes src/client/components/RegistrationConsents.tsx x: 7 # contributors y: 23 # changes src/client/pages/Welcome.stories.tsx x: 14 # contributors y: 27 # changes src/server/lib/expressWrappers.ts x: 5 # contributors y: 7 # changes src/server/routes/consentToken.ts x: 6 # contributors y: 22 # changes src/server/routes/signIn.ts x: 19 # contributors y: 163 # changes src/server/lib/getAssets.ts x: 9 # contributors y: 12 # changes src/client/pages/RegisterWithEmail.tsx x: 8 # contributors y: 36 # changes .storybook/main.js x: 15 # contributors y: 42 # changes .storybook/modes.ts x: 3 # contributors y: 3 # changes src/client/components/DetailedRecaptchaError.stories.tsx x: 7 # contributors y: 9 # changes src/client/components/EmailInput.stories.tsx x: 8 # contributors y: 12 # changes src/client/components/NameInputField.stories.tsx x: 6 # contributors y: 10 # changes src/client/components/PasswordForm.stories.tsx x: 7 # contributors y: 15 # changes src/client/components/PasswordInput.stories.tsx x: 8 # contributors y: 17 # changes src/client/components/RegistrationConsents.stories.tsx x: 5 # contributors y: 8 # changes src/client/pages/ChangePassword.stories.tsx x: 10 # contributors y: 21 # changes src/client/pages/ChangePasswordComplete.stories.tsx x: 9 # contributors y: 16 # changes src/client/pages/DeleteAccount.stories.tsx x: 5 # contributors y: 11 # changes src/client/pages/EmailSent.stories.tsx x: 12 # contributors y: 36 # changes src/client/pages/MaintenancePage.stories.tsx x: 8 # contributors y: 10 # changes src/client/pages/NewAccountNewsletters.stories.tsx x: 4 # contributors y: 6 # changes src/client/pages/PasscodeUsed.stories.tsx x: 3 # contributors y: 6 # changes src/client/pages/RegisterWithEmail.stories.tsx x: 7 # contributors y: 18 # changes src/client/pages/ResetPassword.stories.tsx x: 13 # contributors y: 26 # changes src/client/pages/SignIn.stories.tsx x: 17 # contributors y: 42 # changes src/client/pages/SignedInAs.stories.tsx x: 6 # contributors y: 19 # changes src/client/pages/UnexpectedError.stories.tsx x: 6 # contributors y: 7 # changes cloudformation.yaml x: 22 # contributors y: 109 # changes src/server/lib/idapi/consentToken.ts x: 5 # contributors y: 15 # changes src/server/routes/agree.ts x: 7 # contributors y: 38 # changes src/shared/model/ClientState.ts x: 23 # contributors y: 97 # changes src/shared/model/Consent.ts x: 14 # contributors y: 42 # changes src/server/lib/encryptedStateCookie.ts x: 9 # contributors y: 26 # changes src/server/lib/trackMetric.ts x: 11 # contributors y: 28 # changes src/server/models/okta/User.ts x: 13 # contributors y: 48 # changes src/server/routes/delete.ts x: 5 # contributors y: 24 # changes src/server/lib/middleware/index.ts x: 11 # contributors y: 43 # changes src/server/lib/typedRoutes.ts x: 9 # contributors y: 14 # changes src/client/assets/newsletters/index.ts x: 8 # contributors y: 29 # changes src/client/models/Newsletter.ts x: 12 # contributors y: 33 # changes src/server/lib/newsletters.ts x: 5 # contributors y: 14 # changes src/client/pages/WelcomeSocial.tsx x: 9 # contributors y: 28 # changes src/client/pages/WelcomeSocialPage.tsx x: 7 # contributors y: 16 # changes src/client/pages/SignIn.tsx x: 22 # contributors y: 120 # changes src/server/lib/middleware/redirectIfLoggedIn.ts x: 6 # contributors y: 35 # changes src/shared/model/PageTitle.ts x: 18 # contributors y: 61 # changes src/server/lib/okta/api/apps.ts x: 3 # contributors y: 14 # changes src/server/models/okta/App.ts x: 2 # contributors y: 7 # changes src/server/routes/index.ts x: 18 # contributors y: 75 # changes src/server/lib/middleware/requestState.ts x: 21 # contributors y: 75 # changes src/server/routes/verifyEmail.ts x: 20 # contributors y: 88 # changes src/client/components/MainBodyText.tsx x: 9 # contributors y: 22 # changes src/client/lib/hooks/useRecaptcha.tsx x: 10 # contributors y: 23 # changes src/client/styles/Shared.ts x: 16 # contributors y: 42 # changes src/server/controllers/signInControllers.ts x: 2 # contributors y: 20 # changes src/shared/model/Errors.ts x: 19 # contributors y: 84 # changes src/client/pages/NewAccountReview.tsx x: 7 # contributors y: 26 # changes src/client/pages/EmailSent.tsx x: 16 # contributors y: 71 # changes src/client/pages/RegistrationEmailSentPage.tsx x: 14 # contributors y: 49 # changes src/client/pages/SignInPasscodeEmailSentPage.tsx x: 2 # contributors y: 8 # changes src/client/pages/UnvalidatedEmailEmailSentPage.tsx x: 5 # contributors y: 17 # changes src/shared/model/EncryptedState.ts x: 10 # contributors y: 36 # changes src/client/pages/SignedInAs.tsx x: 5 # contributors y: 23 # changes src/server/controllers/sendChangePasswordEmail.ts x: 10 # contributors y: 59 # changes src/server/models/Express.ts x: 15 # contributors y: 55 # changes src/server/lib/okta/idx/shared/submitPasscode.ts x: 2 # contributors y: 12 # changes src/client/components/EmailInput.tsx x: 10 # contributors y: 27 # changes src/client/lib/clientSideLogger.ts x: 6 # contributors y: 18 # changes src/server/lib/serverSideLogger.ts x: 8 # contributors y: 24 # changes src/shared/lib/baseLogger.ts x: 4 # contributors y: 12 # changes src/shared/model/OpenIdErrors.ts x: 1 # contributors y: 6 # changes src/server/lib/okta/api/authentication.ts x: 8 # contributors y: 27 # changes src/server/lib/okta/api/errors.ts x: 6 # contributors y: 20 # changes src/server/lib/okta/api/users.ts x: 10 # contributors y: 40 # changes src/server/lib/okta/idx/shared/schemas.ts x: 1 # contributors y: 9 # changes src/server/routes/signOut.ts x: 10 # contributors y: 41 # changes src/client/static/index.tsx x: 13 # contributors y: 40 # changes src/server/lib/okta/idx/enroll.ts x: 4 # contributors y: 17 # changes src/server/lib/updateRegistrationLocation.ts x: 5 # contributors y: 21 # changes src/shared/model/User.ts x: 12 # contributors y: 28 # changes src/server/lib/okta/idx/challenge.ts x: 4 # contributors y: 23 # changes src/client/static/hydration.tsx x: 12 # contributors y: 38 # changes src/server/lib/renderer.tsx x: 21 # contributors y: 82 # changes src/client/pages/SignInPage.tsx x: 19 # contributors y: 49 # changes src/client/pages/RegisterWithEmailPage.tsx x: 5 # contributors y: 13 # changes src/client/pages/ResetPassword.tsx x: 19 # contributors y: 71 # changes src/client/pages/ResetPasswordPage.tsx x: 14 # contributors y: 40 # changes src/shared/model/experiments/abSwitches.ts x: 10 # contributors y: 60 # changes src/shared/model/experiments/abTests.ts x: 11 # contributors y: 54 # changes src/server/lib/middleware/csrf.ts x: 8 # contributors y: 20 # changes src/server/lib/IDAPIFetch.ts x: 10 # contributors y: 33 # changes src/server/lib/middleware/login.ts x: 14 # contributors y: 61 # changes src/server/lib/okta/validateEmail.ts x: 6 # contributors y: 16 # changes src/server/lib/okta/dangerouslySetPlaceholderPassword.ts x: 3 # contributors y: 13 # changes src/client/pages/NotFound.tsx x: 9 # contributors y: 17 # changes src/client/pages/UnexpectedError.tsx x: 9 # contributors y: 11 # changes src/client/components/DetailedRecaptchaError.tsx x: 10 # contributors y: 17 # changes src/client/pages/ChangePassword.tsx x: 14 # contributors y: 82 # changes src/client/pages/ChangePasswordComplete.tsx x: 13 # contributors y: 44 # changes src/client/pages/ChangePasswordPage.tsx x: 15 # contributors y: 37 # changes src/client/pages/EmailSentPage.tsx x: 12 # contributors y: 39 # changes src/client/pages/MaintenancePage.tsx x: 8 # contributors y: 9 # changes src/client/pages/NotFoundPage.tsx x: 13 # contributors y: 29 # changes src/client/pages/RegistrationPage.tsx x: 15 # contributors y: 30 # changes src/client/pages/ResendPasswordPage.tsx x: 13 # contributors y: 34 # changes src/client/pages/ResetPasswordSessionExpiredPage.tsx x: 11 # contributors y: 31 # changes src/client/pages/SetPasswordCompletePage.tsx x: 6 # contributors y: 13 # changes src/client/pages/SetPasswordPage.tsx x: 11 # contributors y: 25 # changes src/client/pages/SetPasswordResendPage.tsx x: 11 # contributors y: 27 # changes src/client/pages/Welcome.tsx x: 14 # contributors y: 54 # changes src/client/pages/WelcomePage.tsx x: 10 # contributors y: 43 # changes src/server/lib/deeplink/oktaRecoveryToken.ts x: 4 # contributors y: 16 # changes src/server/lib/idapi/auth.ts x: 17 # contributors y: 41 # changes src/server/lib/idapi/user.ts x: 16 # contributors y: 69 # changes src/server/lib/members-data-api/user-attributes.ts x: 4 # contributors y: 18 # changes src/server/lib/okta/fixProfile.ts x: 4 # contributors y: 10 # changes src/server/lib/okta/idx/introspect.ts x: 4 # contributors y: 20 # changes src/server/lib/ophan.ts x: 8 # contributors y: 22 # changes src/server/lib/okta/api/sessions.ts x: 6 # contributors y: 21 # changes src/client/components/CsrfFormField.tsx x: 11 # contributors y: 23 # changes src/client/lib/ophan.ts x: 8 # contributors y: 23 # changes src/server/index.ts x: 13 # contributors y: 39 # changes src/server/lib/idapi/IDAPICookies.ts x: 5 # contributors y: 12 # changes src/shared/lib/newsletter.ts x: 12 # contributors y: 31 # changes src/shared/model/IDAPIAuth.ts x: 8 # contributors y: 11 # changes src/email/templates/ResetPassword/ResetPassword.tsx x: 11 # contributors y: 24 # changes src/server/routes/setPassword.ts x: 13 # contributors y: 55 # changes src/email/components/Text.tsx x: 7 # contributors y: 21 # changes src/email/templates/RegistrationPasscode/RegistrationPasscode.tsx x: 3 # contributors y: 9 # changes src/client/components/MinimalHeader.tsx x: 2 # contributors y: 2 # changes src/email/components/Footer.tsx x: 8 # contributors y: 35 # changes src/email/templates/AccountExists/AccountExistsText.ts x: 8 # contributors y: 15 # changes src/email/templates/ResetPassword/ResetPasswordText.ts x: 9 # contributors y: 13 # changes .storybook/preview-head.html x: 8 # contributors y: 18 # changes src/client/lib/hooks/useRemoveEncryptedEmailParam.tsx x: 9 # contributors y: 8 # changes src/email/templates/AccountExists/AccountExists.tsx x: 8 # contributors y: 21 # changes src/server/lib/getABTesting.ts x: 8 # contributors y: 14 # changes src/server/routes/maintenance.ts x: 5 # contributors y: 5 # changes
189.0
# changes
  min: 1.0
  average: 19.33
  25th percentile: 6.0
  median: 11.0
  75th percentile: 22.0
  max: 189.0
0 30.0
# contributors
min: 1.0 | average: 6.33 | 25th percentile: 3.0 | median: 5.0 | 75th percentile: 8.0 | max: 30.0

Number of Contributors vs. File Size: 487 points

src/client/assets/decorative/index.ts x: 3 # contributors y: 8 lines of code src/client/components/OnboardingCard.tsx x: 1 # contributors y: 107 lines of code src/client/components/OnboardingImage.tsx x: 1 # contributors y: 31 lines of code src/client/components/OnboardingSection.tsx x: 1 # contributors y: 50 lines of code src/client/layouts/MinimalLayout.tsx x: 8 # contributors y: 178 lines of code src/client/pages/DiscoverOurApps.tsx x: 1 # contributors y: 19 lines of code src/client/pages/Onboarding.tsx x: 2 # contributors y: 13 lines of code src/client/pages/OnboardingPage.stories.tsx x: 1 # contributors y: 17 lines of code src/client/styles/Theme.tsx x: 4 # contributors y: 132 lines of code src/server/lib/registrationConsents.ts x: 7 # contributors y: 155 lines of code src/server/routes/register.ts x: 23 # contributors y: 680 lines of code src/shared/lib/queryParams.ts x: 12 # contributors y: 93 lines of code src/shared/model/QueryParams.ts x: 18 # contributors y: 36 lines of code src/server/routes/welcome.ts x: 19 # contributors y: 540 lines of code src/server/lib/idapi/consents.ts x: 18 # contributors y: 151 lines of code src/server/lib/idapi/newsletters.ts x: 20 # contributors y: 118 lines of code src/server/lib/user-features.ts x: 7 # contributors y: 77 lines of code src/client/app.tsx x: 12 # contributors y: 58 lines of code src/client/components/ExternalLink.tsx x: 6 # contributors y: 22 lines of code src/client/components/MainForm.tsx x: 15 # contributors y: 394 lines of code src/client/components/Terms.tsx x: 19 # contributors y: 59 lines of code src/client/pages/IframedRegisterWithEmail.tsx x: 3 # contributors y: 74 lines of code src/client/pages/IframedSignIn.tsx x: 3 # contributors y: 225 lines of code src/server/lib/middleware/helmet.ts x: 12 # contributors y: 70 lines of code src/server/routes/dev.ts x: 2 # contributors y: 180 lines of code src/client/pages/IframedRegisterWithEmailPage.tsx x: 2 # contributors y: 35 lines of code cdk/lib/identity-gateway.ts x: 3 # contributors y: 517 lines of code src/server/lib/okta/idx/interact.ts x: 5 # contributors y: 126 lines of code src/server/lib/okta/oauth.ts x: 8 # contributors y: 106 lines of code src/server/lib/okta/openid-connect.ts x: 13 # contributors y: 289 lines of code src/server/routes/oauth.ts x: 18 # contributors y: 564 lines of code src/client/pages/OnboardingPage.tsx x: 1 # contributors y: 5 lines of code src/client/routes.tsx x: 25 # contributors y: 342 lines of code src/server/lib/queryParams.ts x: 18 # contributors y: 81 lines of code src/shared/model/Routes.ts x: 30 # contributors y: 159 lines of code src/client/pages/IframedRegisterWithEmail.stories.tsx x: 3 # contributors y: 54 lines of code src/client/pages/IframedSignIn.stories.tsx x: 3 # contributors y: 153 lines of code playwright/fixtures/e2e.ts x: 2 # contributors y: 9 lines of code playwright/fixtures/mockedApiRequest.ts x: 3 # contributors y: 33 lines of code playwright/helpers/accessibility.ts x: 3 # contributors y: 22 lines of code playwright/helpers/network/recaptcha.ts x: 3 # contributors y: 84 lines of code src/shared/model/ophan.ts x: 7 # contributors y: 15 lines of code src/client/pages/NewAccountConsents.tsx x: 3 # contributors y: 95 lines of code src/client/components/PasswordInput.tsx x: 19 # contributors y: 200 lines of code src/server/lib/passcodeSendAgainTimer.ts x: 4 # contributors y: 11 lines of code src/okta/static/okta-login.code.html x: 2 # contributors y: 66 lines of code src/shared/model/Configuration.ts x: 3 # contributors y: 3 lines of code src/client/components/ToggleSwitchInput.tsx x: 11 # contributors y: 223 lines of code src/client/components/ToggleSwitchList.tsx x: 3 # contributors y: 21 lines of code src/server/lib/okta/tokens.ts x: 3 # contributors y: 107 lines of code src/server/lib/rate-limit/types.ts x: 5 # contributors y: 65 lines of code src/server/models/Metrics.ts x: 18 # contributors y: 112 lines of code src/shared/model/Newsletter.ts x: 20 # contributors y: 147 lines of code src/email/lib/send.ts x: 8 # contributors y: 57 lines of code src/email/components/Footer.stories.tsx x: 7 # contributors y: 37 lines of code src/email/components/Page.stories.tsx x: 7 # contributors y: 47 lines of code src/email/components/Text.stories.tsx x: 6 # contributors y: 27 lines of code src/email/templates/AccountExists/AccountExists.stories.tsx x: 10 # contributors y: 24 lines of code src/email/templates/AccountExists/sendAccountExistsEmail.ts x: 10 # contributors y: 39 lines of code src/email/templates/AccountWithoutPasswordExists/AccountWithoutPasswordExists.stories.tsx x: 7 # contributors y: 24 lines of code src/email/templates/AccountWithoutPasswordExists/sendAccountWithoutPasswordExists.ts x: 5 # contributors y: 33 lines of code src/email/templates/CompleteRegistration/CompleteRegistration.stories.tsx x: 5 # contributors y: 24 lines of code src/email/templates/CompleteRegistration/sendCompleteRegistration.ts x: 4 # contributors y: 30 lines of code src/email/templates/CreatePassword/sendCreatePasswordEmail.ts x: 4 # contributors y: 33 lines of code src/email/templates/ResetPassword/sendResetPasswordEmail.ts x: 10 # contributors y: 33 lines of code src/email/templates/renderedTemplates.ts x: 5 # contributors y: 91 lines of code src/server/routes/emailTemplates.ts x: 7 # contributors y: 43 lines of code src/client/pages/NewAccountReviewPage.tsx x: 7 # contributors y: 17 lines of code src/shared/lib/welcome.ts x: 4 # contributors y: 28 lines of code src/client/pages/JobsTermsAccept.tsx x: 8 # contributors y: 158 lines of code util/mock-server.js x: 12 # contributors y: 153 lines of code src/client/pages/IframedPasscodeEmailSent.tsx x: 2 # contributors y: 220 lines of code src/client/pages/PasscodeEmailSent.stories.tsx x: 5 # contributors y: 426 lines of code src/client/pages/PasscodeEmailSent.tsx x: 4 # contributors y: 175 lines of code src/client/pages/PasscodeEmailSentPage.tsx x: 2 # contributors y: 40 lines of code src/client/pages/ResetPasswordEmailSentPage.tsx x: 3 # contributors y: 79 lines of code src/server/lib/getAppNameFromRegistrationPlatform.ts x: 1 # contributors y: 10 lines of code src/server/routes/passcode.ts x: 4 # contributors y: 217 lines of code src/server/routes/resetPassword.ts x: 14 # contributors y: 287 lines of code playwright/helpers/api/okta.ts x: 2 # contributors y: 245 lines of code src/server/lib/getGeolocationRegion.ts x: 8 # contributors y: 29 lines of code src/server/controllers/changePassword.ts x: 18 # contributors y: 204 lines of code src/server/controllers/checkPasswordToken.ts x: 15 # contributors y: 256 lines of code src/server/lib/middleware/400.ts x: 1 # contributors y: 15 lines of code src/server/lib/middleware/errorHandler.ts x: 13 # contributors y: 53 lines of code src/server/lib/okta/idx/shared/idxFetch.ts x: 2 # contributors y: 186 lines of code src/server/lib/recaptcha.ts x: 10 # contributors y: 70 lines of code src/server/routes/subscriptions.ts x: 6 # contributors y: 187 lines of code src/client/components/AuthProviderButtons.tsx x: 4 # contributors y: 122 lines of code src/client/pages/PasscodeUsed.tsx x: 3 # contributors y: 65 lines of code src/client/pages/Registration.stories.tsx x: 14 # contributors y: 27 lines of code src/client/pages/Registration.tsx x: 19 # contributors y: 54 lines of code src/client/pages/WelcomePrintPromo.stories.tsx x: 1 # contributors y: 22 lines of code src/client/pages/WelcomePrintPromoPage.tsx x: 1 # contributors y: 9 lines of code src/server/lib/getConfiguration.ts x: 16 # contributors y: 222 lines of code src/server/lib/okta/register.ts x: 13 # contributors y: 364 lines of code src/server/lib/sns/snsEventPublisher.ts x: 1 # contributors y: 27 lines of code src/server/models/Configuration.ts x: 18 # contributors y: 69 lines of code src/shared/lib/clientId.ts x: 4 # contributors y: 9 lines of code src/client/components/EmailSentInformationBox.tsx x: 4 # contributors y: 123 lines of code src/client/components/MainForm.stories.tsx x: 10 # contributors y: 74 lines of code src/client/components/Terms.stories.tsx x: 8 # contributors y: 23 lines of code .github/dependabot.yml x: 8 # contributors y: 16 lines of code eslint.config.mjs x: 4 # contributors y: 155 lines of code knip.ts x: 3 # contributors y: 50 lines of code playwright/helpers/api/mailosaur.ts x: 2 # contributors y: 65 lines of code scripts/generate-rate-limit-schema.ts x: 5 # contributors y: 8 lines of code src/client/components/CookiesInTheBrowser.tsx x: 2 # contributors y: 32 lines of code src/client/components/GatewayErrorSummary.tsx x: 4 # contributors y: 54 lines of code src/client/pages/SubscriptionSuccess.tsx x: 7 # contributors y: 58 lines of code src/client/pages/Welcome.stories.tsx x: 14 # contributors y: 23 lines of code src/client/pages/WelcomeExisting.tsx x: 3 # contributors y: 52 lines of code src/server/lib/expressWrappers.ts x: 5 # contributors y: 18 lines of code src/server/routes/changeEmail.ts x: 2 # contributors y: 51 lines of code src/server/routes/consentToken.ts x: 6 # contributors y: 75 lines of code src/server/routes/signIn.ts x: 19 # contributors y: 578 lines of code src/okta/lib/helper.ts x: 1 # contributors y: 182 lines of code src/okta/static/login-default.html x: 1 # contributors y: 38 lines of code src/server/lib/getAssets.ts x: 9 # contributors y: 45 lines of code src/client/pages/RegisterWithEmail.tsx x: 8 # contributors y: 102 lines of code riff-raff.yaml x: 7 # contributors y: 29 lines of code playwright/helpers/register.ts x: 1 # contributors y: 116 lines of code .storybook/clientStateDecorator.tsx x: 4 # contributors y: 17 lines of code .storybook/main.js x: 15 # contributors y: 57 lines of code .storybook/preview.jsx x: 1 # contributors y: 96 lines of code src/client/components/CheckboxInput.stories.tsx x: 3 # contributors y: 39 lines of code src/client/components/DeleteAccountReturnLink.stories.tsx x: 4 # contributors y: 23 lines of code src/client/components/DetailedRecaptchaError.stories.tsx x: 7 # contributors y: 20 lines of code src/client/components/EmailSentInformationBox.stories.tsx x: 2 # contributors y: 105 lines of code src/client/components/GatewayErrorSummary.stories.tsx x: 3 # contributors y: 71 lines of code src/client/components/InformationBox.stories.tsx x: 4 # contributors y: 41 lines of code src/client/components/MainBodyText.stories.tsx x: 6 # contributors y: 21 lines of code src/client/components/MinimalLayoutImage.stories.tsx x: 3 # contributors y: 12 lines of code src/client/components/NameInputField.stories.tsx x: 6 # contributors y: 18 lines of code src/client/components/NoScript.stories.tsx x: 2 # contributors y: 11 lines of code src/client/components/PasscodeInput.stories.tsx x: 4 # contributors y: 40 lines of code src/client/components/PasswordInput.stories.tsx x: 8 # contributors y: 38 lines of code src/client/components/RegistrationConsents.stories.tsx x: 5 # contributors y: 30 lines of code src/client/components/ThemedTextInput.stories.tsx x: 3 # contributors y: 30 lines of code src/client/components/ToggleSwitchInput.stories.tsx x: 7 # contributors y: 60 lines of code src/client/pages/ChangePassword.stories.tsx x: 10 # contributors y: 37 lines of code src/client/pages/ChangePasswordComplete.stories.tsx x: 9 # contributors y: 29 lines of code src/client/pages/DeleteAccount.stories.tsx x: 5 # contributors y: 41 lines of code src/client/pages/DeleteAccountBlocked.stories.tsx x: 4 # contributors y: 109 lines of code src/client/pages/EmailSent.stories.tsx x: 12 # contributors y: 101 lines of code src/client/pages/IframedPasscodeEmailSent.stories.tsx x: 1 # contributors y: 275 lines of code src/client/pages/MaintenancePage.stories.tsx x: 8 # contributors y: 8 lines of code src/client/pages/NewAccountNewsletters.stories.tsx x: 4 # contributors y: 96 lines of code src/client/pages/NewAccountReview.stories.tsx x: 5 # contributors y: 15 lines of code src/client/pages/NotFound.stories.tsx x: 6 # contributors y: 8 lines of code src/client/pages/RegisterWithEmail.stories.tsx x: 7 # contributors y: 107 lines of code src/client/pages/ResendConsentEmail.stories.tsx x: 5 # contributors y: 11 lines of code src/client/pages/ResetPassword.stories.tsx x: 13 # contributors y: 97 lines of code src/client/pages/ReturnToApp.stories.tsx x: 4 # contributors y: 13 lines of code src/client/pages/SignIn.stories.tsx x: 17 # contributors y: 126 lines of code src/client/pages/SignedInAs.stories.tsx x: 6 # contributors y: 55 lines of code src/client/pages/SubscriptionError.stories.tsx x: 7 # contributors y: 27 lines of code src/client/pages/SubscriptionReview.stories.tsx x: 1 # contributors y: 41 lines of code src/client/pages/UnvalidatedEmailEmailSent.stories.tsx x: 6 # contributors y: 59 lines of code src/client/pages/WelcomeExisting.stories.tsx x: 2 # contributors y: 27 lines of code cloudformation.yaml x: 22 # contributors y: 796 lines of code src/server/lib/idapi/consentToken.ts x: 5 # contributors y: 62 lines of code src/shared/model/ClientState.ts x: 23 # contributors y: 82 lines of code src/shared/model/Consent.ts x: 14 # contributors y: 87 lines of code playwright/fixtures/okta-responses/success/idx-identify-response.ts x: 1 # contributors y: 197 lines of code playwright/helpers/api/idapi.ts x: 1 # contributors y: 178 lines of code playwright/helpers/api/placeholder-password-mock.ts x: 1 # contributors y: 81 lines of code playwright/helpers/network/mocking.ts x: 1 # contributors y: 51 lines of code src/server/lib/encryptedStateCookie.ts x: 9 # contributors y: 82 lines of code src/server/lib/getRegistrationLocation.ts x: 6 # contributors y: 337 lines of code src/server/lib/idapi/subscriptions.ts x: 6 # contributors y: 103 lines of code src/server/lib/trackMetric.ts x: 11 # contributors y: 71 lines of code src/server/models/okta/User.ts x: 13 # contributors y: 111 lines of code src/server/routes/delete.ts x: 5 # contributors y: 332 lines of code src/client/components/NameInputField.tsx x: 6 # contributors y: 92 lines of code src/server/lib/middleware/index.ts x: 11 # contributors y: 32 lines of code src/server/lib/typedRoutes.ts x: 9 # contributors y: 13 lines of code src/client/assets/newsletters/index.ts x: 8 # contributors y: 20 lines of code src/client/models/Newsletter.ts x: 12 # contributors y: 41 lines of code src/server/lib/newsletters.ts x: 5 # contributors y: 85 lines of code src/client/pages/WelcomeSocial.tsx x: 9 # contributors y: 65 lines of code src/client/pages/NewAccountNewsletters.tsx x: 6 # contributors y: 118 lines of code src/client/pages/SignIn.tsx x: 22 # contributors y: 250 lines of code src/server/lib/middleware/redirectIfLoggedIn.ts x: 6 # contributors y: 80 lines of code src/shared/model/PageTitle.ts x: 18 # contributors y: 46 lines of code src/server/lib/okta/api/apps.ts x: 3 # contributors y: 67 lines of code src/server/lib/middleware/rateLimit.ts x: 8 # contributors y: 79 lines of code src/server/lib/middleware/requestState.ts x: 21 # contributors y: 119 lines of code src/server/routes/verifyEmail.ts x: 20 # contributors y: 27 lines of code src/client/components/MainBodyText.tsx x: 9 # contributors y: 57 lines of code src/client/lib/hooks/useRecaptcha.tsx x: 10 # contributors y: 173 lines of code src/client/components/PasscodeInput.tsx x: 4 # contributors y: 93 lines of code src/client/pages/IframedPasscodeEmailSentPage.tsx x: 1 # contributors y: 45 lines of code src/client/styles/Shared.ts x: 16 # contributors y: 102 lines of code src/server/controllers/signInControllers.ts x: 2 # contributors y: 544 lines of code src/shared/model/Errors.ts x: 19 # contributors y: 106 lines of code src/server/lib/validateUrl.ts x: 6 # contributors y: 45 lines of code src/client/pages/EmailSent.tsx x: 16 # contributors y: 87 lines of code src/client/pages/RegistrationEmailSentPage.tsx x: 14 # contributors y: 72 lines of code src/shared/model/EncryptedState.ts x: 10 # contributors y: 13 lines of code src/client/static/analytics/ophan.ts x: 6 # contributors y: 32 lines of code src/server/lib/rate-limit/configurationValidator.ts x: 5 # contributors y: 49 lines of code src/client/pages/SignedInAs.tsx x: 5 # contributors y: 104 lines of code src/server/controllers/sendChangePasswordEmail.ts x: 10 # contributors y: 517 lines of code src/server/models/Express.ts x: 15 # contributors y: 46 lines of code src/client/components/EmailInput.tsx x: 10 # contributors y: 50 lines of code src/client/lib/clientSideLogger.ts x: 6 # contributors y: 39 lines of code src/server/models/okta/Authentication.ts x: 3 # contributors y: 98 lines of code src/shared/types.ts x: 1 # contributors y: 1 lines of code src/shared/model/RegistrationLocation.ts x: 1 # contributors y: 154 lines of code src/server/lib/okta/api/authentication.ts x: 8 # contributors y: 84 lines of code src/server/lib/okta/api/errors.ts x: 6 # contributors y: 37 lines of code src/server/lib/okta/api/users.ts x: 10 # contributors y: 260 lines of code src/server/lib/okta/idx/shared/schemas.ts x: 1 # contributors y: 112 lines of code src/server/routes/signOut.ts x: 10 # contributors y: 154 lines of code src/client/static/index.tsx x: 13 # contributors y: 9 lines of code src/server/lib/okta/idx/enroll.ts x: 4 # contributors y: 113 lines of code src/server/lib/registrationPlatform.ts x: 2 # contributors y: 50 lines of code src/shared/model/User.ts x: 12 # contributors y: 27 lines of code src/client/components/NoScript.tsx x: 1 # contributors y: 82 lines of code src/client/components/ClientState.tsx x: 13 # contributors y: 25 lines of code src/server/lib/renderer.tsx x: 21 # contributors y: 139 lines of code src/client/pages/SignInPage.tsx x: 19 # contributors y: 49 lines of code src/client/pages/ResetPassword.tsx x: 19 # contributors y: 123 lines of code src/client/pages/ResetPasswordPage.tsx x: 14 # contributors y: 35 lines of code src/server/lib/okta/idx/shared/errorHandling.ts x: 1 # contributors y: 93 lines of code src/client/pages/DeleteAccount.tsx x: 5 # contributors y: 224 lines of code src/shared/model/experiments/abSwitches.ts x: 10 # contributors y: 3 lines of code src/server/lib/okta/idx/startIdxFlow.ts x: 2 # contributors y: 58 lines of code src/server/lib/middleware/csrf.ts x: 8 # contributors y: 4 lines of code scripts/banner.js x: 3 # contributors y: 18 lines of code src/client/components/ABTestDemo.tsx x: 8 # contributors y: 56 lines of code src/client/components/PasswordForm.tsx x: 15 # contributors y: 310 lines of code src/server/lib/IDAPIFetch.ts x: 10 # contributors y: 106 lines of code src/server/lib/middleware/login.ts x: 14 # contributors y: 106 lines of code src/server/controllers/oktaIdxShared.ts x: 1 # contributors y: 138 lines of code src/server/lib/okta/dangerouslySetPlaceholderPassword.ts x: 3 # contributors y: 76 lines of code src/server/lib/okta/idx/identify.ts x: 2 # contributors y: 60 lines of code src/client/pages/NotFound.tsx x: 9 # contributors y: 26 lines of code src/client/pages/UnexpectedError.tsx x: 9 # contributors y: 25 lines of code src/client/layouts/MinimalLayout.stories.tsx x: 3 # contributors y: 106 lines of code src/client/pages/ChangeEmailComplete.tsx x: 4 # contributors y: 37 lines of code src/client/pages/ChangePassword.tsx x: 14 # contributors y: 49 lines of code src/client/pages/ChangePasswordComplete.tsx x: 13 # contributors y: 35 lines of code src/client/pages/ChangePasswordPage.tsx x: 15 # contributors y: 49 lines of code src/client/pages/DeleteAccountBlocked.tsx x: 4 # contributors y: 119 lines of code src/client/pages/DeleteAccountEmailPasswordValidation.tsx x: 4 # contributors y: 63 lines of code src/client/pages/DeleteAccountEmailPasswordValidationPage.tsx x: 2 # contributors y: 16 lines of code src/client/pages/EmailSentPage.tsx x: 12 # contributors y: 38 lines of code src/client/pages/MaintenancePage.tsx x: 8 # contributors y: 10 lines of code src/client/pages/NotFoundPage.tsx x: 13 # contributors y: 6 lines of code src/client/pages/RegistrationPage.tsx x: 15 # contributors y: 20 lines of code src/client/pages/ResendPasswordPage.tsx x: 13 # contributors y: 44 lines of code src/client/pages/ResetPasswordSessionExpiredPage.tsx x: 11 # contributors y: 38 lines of code src/client/pages/SetPasswordCompletePage.tsx x: 6 # contributors y: 14 lines of code src/client/pages/SetPasswordPage.tsx x: 11 # contributors y: 47 lines of code src/client/pages/SignedInAsPage.tsx x: 2 # contributors y: 22 lines of code src/client/pages/SubscriptionError.tsx x: 5 # contributors y: 45 lines of code src/client/pages/Welcome.tsx x: 14 # contributors y: 97 lines of code src/server/lib/deeplink/oktaRecoveryToken.ts x: 4 # contributors y: 79 lines of code src/server/lib/idapi/auth.ts x: 17 # contributors y: 48 lines of code src/server/lib/idapi/user.ts x: 16 # contributors y: 93 lines of code src/server/lib/okta/idx/introspect.ts x: 4 # contributors y: 82 lines of code src/server/lib/ophan.ts x: 8 # contributors y: 149 lines of code src/server/lib/unvalidatedEmail.ts x: 4 # contributors y: 46 lines of code src/client/components/ThemedLink.tsx x: 3 # contributors y: 14 lines of code src/server/lib/okta/api/sessions.ts x: 6 # contributors y: 51 lines of code src/client/components/CsrfFormField.tsx x: 11 # contributors y: 28 lines of code src/server/lib/middleware/404.ts x: 8 # contributors y: 15 lines of code src/email/templates/EmailChallengePasscode/EmailChallengePasscode.tsx x: 1 # contributors y: 34 lines of code src/client/lib/ophan.ts x: 8 # contributors y: 33 lines of code src/server/index.ts x: 13 # contributors y: 16 lines of code src/server/lib/idapi/IDAPICookies.ts x: 5 # contributors y: 68 lines of code src/server/lib/rate-limit/bucket.ts x: 5 # contributors y: 131 lines of code src/server/lib/rate-limit/index.ts x: 4 # contributors y: 4 lines of code src/server/lib/validatePasswordField.ts x: 6 # contributors y: 97 lines of code src/server/models/okta/Error.ts x: 5 # contributors y: 69 lines of code src/shared/lib/newsletter.ts x: 12 # contributors y: 14 lines of code src/email/templates/ResetPassword/ResetPassword.tsx x: 11 # contributors y: 35 lines of code src/server/routes/setPassword.ts x: 13 # contributors y: 84 lines of code src/email/templates/RegistrationPasscode/RegistrationPasscode.tsx x: 3 # contributors y: 42 lines of code src/client/lib/consentsTracking.ts x: 10 # contributors y: 83 lines of code src/client/models/Style.ts x: 9 # contributors y: 17 lines of code src/email/templates/AccidentalEmail/AccidentalEmailText.ts x: 6 # contributors y: 11 lines of code src/client/static/sourceAccessibility.tsx x: 5 # contributors y: 2 lines of code src/email/components/Footer.tsx x: 8 # contributors y: 47 lines of code src/email/components/SubHeader.tsx x: 5 # contributors y: 39 lines of code src/shared/model/Geolocation.ts x: 6 # contributors y: 1 lines of code src/email/templates/AccountWithoutPasswordExists/AccountWithoutPasswordExistsText.ts x: 7 # contributors y: 11 lines of code src/email/templates/ResetPassword/ResetPasswordText.ts x: 9 # contributors y: 11 lines of code src/server/lib/base64.ts x: 2 # contributors y: 4 lines of code src/shared/model/IdapiQueryParams.ts x: 3 # contributors y: 5 lines of code src/email/templates/CompleteRegistration/CompleteRegistration.tsx x: 3 # contributors y: 27 lines of code src/server/lib/emailCookie.ts x: 5 # contributors y: 4 lines of code src/server/lib/middleware/cache.ts x: 7 # contributors y: 6 lines of code src/server/routes/core.ts x: 7 # contributors y: 32 lines of code src/shared/lib/subscriptions.ts x: 2 # contributors y: 3 lines of code
796.0
lines of code
  min: 1.0
  average: 66.06
  25th percentile: 17.0
  median: 34.0
  75th percentile: 77.0
  max: 796.0
0 30.0
# contributors
min: 1.0 | average: 6.33 | 25th percentile: 3.0 | median: 5.0 | 75th percentile: 8.0 | max: 30.0

Number of Changes vs. Line Churn: 1345 points

package.json x: 600 # changes y: 27162 line churn pnpm-lock.yaml x: 183 # changes y: 542400 line churn src/client/assets/decorative/index.ts x: 5 # changes y: 26 line churn src/client/components/OnboardingImage.tsx x: 4 # changes y: 88 line churn src/client/components/OnboardingSection.tsx x: 3 # changes y: 120 line churn src/client/layouts/MinimalLayout.tsx x: 25 # changes y: 557 line churn src/client/pages/DiscoverOurApps.tsx x: 2 # changes y: 50 line churn src/client/pages/Onboarding.tsx x: 6 # changes y: 50 line churn src/server/lib/__tests__/registrationConsents.test.ts x: 10 # changes y: 514 line churn src/server/lib/registrationConsents.ts x: 14 # changes y: 479 line churn src/server/routes/register.ts x: 175 # changes y: 8418 line churn src/shared/__tests__/queryParams.test.ts x: 52 # changes y: 1036 line churn src/shared/lib/queryParams.ts x: 49 # changes y: 560 line churn src/shared/model/QueryParams.ts x: 86 # changes y: 470 line churn src/server/routes/welcome.ts x: 144 # changes y: 4511 line churn cdk/package.json x: 100 # changes y: 1483 line churn cdk/pnpm-lock.yaml x: 106 # changes y: 89955 line churn src/client/app.tsx x: 29 # changes y: 444 line churn src/client/components/ExternalLink.tsx x: 11 # changes y: 101 line churn src/client/components/MainForm.tsx x: 78 # changes y: 2714 line churn src/client/components/Terms.tsx x: 51 # changes y: 1937 line churn src/server/lib/middleware/helmet.ts x: 62 # changes y: 504 line churn src/server/routes/dev.ts x: 9 # changes y: 421 line churn cdk/lib/__snapshots__/identity-gateway.test.ts.snap x: 25 # changes y: 10900 line churn cdk/lib/identity-gateway.ts x: 16 # changes y: 1416 line churn jest.config.js x: 40 # changes y: 308 line churn src/server/lib/__tests__/okta/openid-connect.test.ts x: 9 # changes y: 4048 line churn src/server/lib/okta/idx/interact.ts x: 19 # changes y: 545 line churn src/server/lib/okta/oauth.ts x: 48 # changes y: 714 line churn src/server/lib/okta/openid-connect.ts x: 73 # changes y: 5050 line churn src/server/routes/oauth.ts x: 132 # changes y: 5302 line churn .github/workflows/chromatic.yml x: 43 # changes y: 237 line churn .github/workflows/ci.yml x: 34 # changes y: 205 line churn .github/workflows/playwright-e2e.yml x: 17 # changes y: 215 line churn .github/workflows/playwright-mocked.yml x: 12 # changes y: 182 line churn src/server/lib/__tests__/queryParams.test.ts x: 31 # changes y: 1609 line churn src/server/lib/queryParams.ts x: 80 # changes y: 1022 line churn src/shared/model/Routes.ts x: 189 # changes y: 1421 line churn src/client/pages/IframedRegisterWithEmail.stories.tsx x: 7 # changes y: 146 line churn playwright/fixtures/e2e.ts x: 1 # changes y: 48 line churn playwright/tests/e2e/registration_1.spec.ts x: 8 # changes y: 2019 line churn makefile x: 36 # changes y: 921 line churn README.md x: 47 # changes y: 1029 line churn src/client/components/ToggleSwitchInput.tsx x: 33 # changes y: 1002 line churn src/server/models/Metrics.ts x: 93 # changes y: 955 line churn src/email/templates/CompleteRegistration/sendCompleteRegistration.ts x: 15 # changes y: 132 line churn src/email/templates/renderedTemplates.ts x: 22 # changes y: 432 line churn src/client/pages/JobsTermsAccept.tsx x: 30 # changes y: 955 line churn util/mock-server.js x: 24 # changes y: 566 line churn src/server/lib/__tests__/okta/register.test.ts x: 45 # changes y: 1243 line churn src/server/controllers/changePassword.ts x: 125 # changes y: 3934 line churn src/server/controllers/checkPasswordToken.ts x: 69 # changes y: 2455 line churn src/server/lib/middleware/errorHandler.ts x: 42 # changes y: 567 line churn .env.example x: 63 # changes y: 137 line churn src/client/pages/Registration.stories.tsx x: 35 # changes y: 332 line churn src/client/pages/Registration.tsx x: 89 # changes y: 2726 line churn src/server/lib/__tests__/getConfiguration.test.ts x: 71 # changes y: 690 line churn src/server/lib/__tests__/sharedConfig.ts x: 23 # changes y: 153 line churn src/server/lib/getConfiguration.ts x: 70 # changes y: 1333 line churn src/server/lib/okta/register.ts x: 64 # changes y: 2708 line churn src/server/models/Configuration.ts x: 85 # changes y: 451 line churn src/client/__tests__/MainForm.test.tsx x: 28 # changes y: 2699 line churn src/client/pages/Welcome.stories.tsx x: 27 # changes y: 473 line churn src/server/routes/signIn.ts x: 163 # changes y: 6099 line churn scripts/okta/__tests__/getRedirectUrl.test.ts x: 23 # changes y: 3738 line churn scripts/okta/lib/helper.ts x: 28 # changes y: 1690 line churn webpack.config.js x: 69 # changes y: 3356 line churn src/client/pages/ChangePassword.stories.tsx x: 21 # changes y: 475 line churn src/client/pages/RegisterWithEmail.stories.tsx x: 18 # changes y: 282 line churn cloudformation.yaml x: 109 # changes y: 3428 line churn src/server/routes/agree.ts x: 38 # changes y: 1156 line churn src/shared/model/ClientState.ts x: 97 # changes y: 613 line churn .github/workflows/cypress-ete.yml x: 104 # changes y: 922 line churn .github/workflows/cypress-mocked.yml x: 88 # changes y: 810 line churn cypress-mocked.env x: 32 # changes y: 127 line churn cypress/integration/ete/registration_1.6.cy.ts x: 13 # changes y: 3752 line churn cypress/integration/ete/sign_in.1.cy.ts x: 25 # changes y: 4956 line churn cypress/integration/mocked/resetPasswordController.4.cy.ts x: 11 # changes y: 4400 line churn cypress/support/idapi/newsletter.ts x: 20 # changes y: 878 line churn docs/setup.md x: 74 # changes y: 2199 line churn src/client/pages/SignIn.tsx x: 120 # changes y: 4280 line churn src/shared/model/PageTitle.ts x: 61 # changes y: 328 line churn src/server/routes/index.ts x: 75 # changes y: 542 line churn src/shared/model/Errors.ts x: 84 # changes y: 793 line churn src/client/pages/EmailSent.tsx x: 71 # changes y: 2862 line churn src/client/lib/hooks/__tests__/useRecaptcha.test.tsx x: 12 # changes y: 4032 line churn cypress/integration/ete/registration_1.2.cy.ts x: 21 # changes y: 5910 line churn cypress/integration/ete/registration_2.6.cy.ts x: 15 # changes y: 6076 line churn cypress/integration/ete/reset_password_passcode.7.cy.ts x: 18 # changes y: 3744 line churn docs/development.md x: 72 # changes y: 3877 line churn src/server/controllers/sendChangePasswordEmail.ts x: 59 # changes y: 3510 line churn src/server/models/Express.ts x: 55 # changes y: 568 line churn src/server/routes/signOut.ts x: 41 # changes y: 1201 line churn src/server/lib/renderer.tsx x: 82 # changes y: 1353 line churn src/shared/model/experiments/abSwitches.ts x: 60 # changes y: 113 line churn src/shared/model/experiments/abTests.ts x: 54 # changes y: 337 line churn src/client/pages/ChangePassword.tsx x: 82 # changes y: 4743 line churn src/client/pages/ChangePasswordComplete.tsx x: 44 # changes y: 839 line churn src/client/pages/ChangePasswordPage.tsx x: 37 # changes y: 1045 line churn .github/workflows/cypress-ete-okta.yml x: 65 # changes y: 915 line churn cypress/integration/ete-okta/registration_1.2.cy.ts x: 24 # changes y: 4164 line churn cypress/integration/ete-okta/registration_2.6.cy.ts x: 26 # changes y: 5020 line churn cypress/integration/mocked-okta/resendEmailController.3.cy.ts x: 22 # changes y: 2684 line churn src/client/layouts/Main.tsx x: 57 # changes y: 1970 line churn cypress/integration/mocked/onboarding_flow.1.cy.ts x: 27 # changes y: 5966 line churn src/client/components/ConsentsSubHeader.tsx x: 40 # changes y: 3176 line churn src/client/layouts/ConsentsLayout.tsx x: 91 # changes y: 2802 line churn src/server/routes/consents.ts x: 144 # changes y: 9874 line churn yarn.lock x: 447 # changes y: 681525 line churn src/client/pages/ConsentsCommunication.tsx x: 83 # changes y: 3196 line churn cypress/integration/ete-okta/registration.2.cy.ts x: 32 # changes y: 6927 line churn cypress/integration/ete-okta/registration.cy.ts x: 7 # changes y: 2854 line churn cypress/integration/mocked/onboarding_flow.cy.ts x: 4 # changes y: 3356 line churn cypress/integration/ete/registration/register_email_sent.spec.ts x: 17 # changes y: 2874 line churn cypress/integration/mocked/onboarding_flow.spec.ts x: 35 # changes y: 6857 line churn src/server/routes/changePassword.ts x: 78 # changes y: 2636 line churn src/server/routes/reset.ts x: 83 # changes y: 2131 line churn src/client/lib/hooks/useRecaptcha.test.tsx x: 10 # changes y: 5756 line churn cypress/integration/mocked/onboarding_flow.spec.js x: 2 # changes y: 6251 line churn cypress/integration/change_password.spec.js x: 34 # changes y: 3911 line churn cypress/integration/onboarding_flow.spec.js x: 29 # changes y: 7510 line churn src/client/__tests__/__snapshots__/PageProgression.test.tsx.snap x: 16 # changes y: 14259 line churn
681525.0
line churn
  min: 2.0
  average: 1568.26
  25th percentile: 86.0
  median: 209.0
  75th percentile: 611.0
  max: 681525.0
0 600.0
# changes
min: 1.0 | average: 14.89 | 25th percentile: 4.0 | median: 8.0 | 75th percentile: 16.0 | max: 600.0

Number of Contributors vs. Line Churn: 487 points

src/client/assets/decorative/index.ts x: 3 # contributors y: 26 line churn src/client/components/OnboardingCard.tsx x: 1 # contributors y: 296 line churn src/client/components/OnboardingImage.tsx x: 1 # contributors y: 88 line churn src/client/components/OnboardingSection.tsx x: 1 # contributors y: 120 line churn src/client/layouts/MinimalLayout.tsx x: 8 # contributors y: 557 line churn src/client/pages/DiscoverOurApps.tsx x: 1 # contributors y: 50 line churn src/client/pages/Onboarding.tsx x: 2 # contributors y: 50 line churn src/client/styles/Theme.tsx x: 4 # contributors y: 269 line churn src/server/lib/registrationConsents.ts x: 7 # contributors y: 479 line churn src/server/routes/register.ts x: 23 # contributors y: 8418 line churn src/shared/lib/queryParams.ts x: 12 # contributors y: 560 line churn src/shared/model/QueryParams.ts x: 18 # contributors y: 470 line churn src/server/routes/welcome.ts x: 19 # contributors y: 4511 line churn src/server/lib/idapi/consents.ts x: 18 # contributors y: 999 line churn src/server/lib/idapi/newsletters.ts x: 20 # contributors y: 1031 line churn src/server/lib/user-features.ts x: 7 # contributors y: 277 line churn src/client/app.tsx x: 12 # contributors y: 444 line churn src/client/components/ExternalLink.tsx x: 6 # contributors y: 101 line churn src/client/components/MainForm.tsx x: 15 # contributors y: 2714 line churn src/client/components/Terms.tsx x: 19 # contributors y: 1937 line churn src/client/pages/IframedRegisterWithEmail.tsx x: 3 # contributors y: 219 line churn src/client/pages/IframedSignIn.tsx x: 3 # contributors y: 395 line churn src/server/lib/middleware/helmet.ts x: 12 # contributors y: 504 line churn src/server/routes/dev.ts x: 2 # contributors y: 421 line churn cdk/lib/identity-gateway.ts x: 3 # contributors y: 1416 line churn src/server/lib/okta/idx/interact.ts x: 5 # contributors y: 545 line churn src/server/lib/okta/oauth.ts x: 8 # contributors y: 714 line churn src/server/lib/okta/openid-connect.ts x: 13 # contributors y: 5050 line churn src/server/routes/oauth.ts x: 18 # contributors y: 5302 line churn src/client/pages/OnboardingPage.tsx x: 1 # contributors y: 21 line churn src/client/routes.tsx x: 25 # contributors y: 3758 line churn src/shared/model/Routes.ts x: 30 # contributors y: 1421 line churn src/client/pages/IframedRegisterWithEmail.stories.tsx x: 3 # contributors y: 146 line churn src/client/pages/IframedSignIn.stories.tsx x: 3 # contributors y: 282 line churn playwright/fixtures/mockedApiRequest.ts x: 3 # contributors y: 85 line churn playwright/helpers/network/recaptcha.ts x: 3 # contributors y: 248 line churn src/shared/model/ophan.ts x: 7 # contributors y: 97 line churn src/client/pages/NewAccountConsentsPage.tsx x: 3 # contributors y: 102 line churn src/client/components/PasswordInput.tsx x: 19 # contributors y: 2340 line churn src/server/lib/passcodeSendAgainTimer.ts x: 4 # contributors y: 48 line churn src/okta/static/okta-login.code.html x: 2 # contributors y: 148 line churn src/client/components/ToggleSwitchInput.tsx x: 11 # contributors y: 1002 line churn src/client/components/ToggleSwitchList.tsx x: 3 # contributors y: 60 line churn src/server/lib/okta/tokens.ts x: 3 # contributors y: 514 line churn src/server/lib/rate-limit/types.ts x: 5 # contributors y: 670 line churn src/server/models/Metrics.ts x: 18 # contributors y: 955 line churn src/shared/model/Newsletter.ts x: 20 # contributors y: 1137 line churn src/email/lib/send.ts x: 8 # contributors y: 257 line churn src/email/components/Button.stories.tsx x: 6 # contributors y: 72 line churn src/email/components/Footer.stories.tsx x: 7 # contributors y: 112 line churn src/email/components/Header.stories.tsx x: 6 # contributors y: 66 line churn src/email/components/Page.stories.tsx x: 7 # contributors y: 138 line churn src/email/templates/AccountExists/AccountExists.stories.tsx x: 10 # contributors y: 136 line churn src/email/templates/AccountExists/sendAccountExistsEmail.ts x: 10 # contributors y: 338 line churn src/email/templates/AccountWithoutPasswordExists/sendAccountWithoutPasswordExists.ts x: 5 # contributors y: 220 line churn src/email/templates/CompleteRegistration/CompleteRegistration.stories.tsx x: 5 # contributors y: 68 line churn src/email/templates/CompleteRegistration/sendCompleteRegistration.ts x: 4 # contributors y: 132 line churn src/email/templates/CreatePassword/sendCreatePasswordEmail.ts x: 4 # contributors y: 172 line churn src/email/templates/NoAccount/NoAccount.stories.tsx x: 10 # contributors y: 116 line churn src/email/templates/ResetPassword/sendResetPasswordEmail.ts x: 10 # contributors y: 220 line churn src/email/templates/renderedTemplates.ts x: 5 # contributors y: 432 line churn src/server/routes/emailTemplates.ts x: 7 # contributors y: 414 line churn src/client/pages/JobsTermsAccept.tsx x: 8 # contributors y: 955 line churn util/mock-server.js x: 12 # contributors y: 566 line churn src/client/pages/IframedPasscodeEmailSent.tsx x: 2 # contributors y: 250 line churn src/client/pages/PasscodeEmailSent.stories.tsx x: 5 # contributors y: 1138 line churn src/client/pages/PasscodeEmailSent.tsx x: 4 # contributors y: 800 line churn src/client/pages/ResetPasswordEmailSentPage.tsx x: 3 # contributors y: 178 line churn src/server/routes/passcode.ts x: 4 # contributors y: 591 line churn src/server/routes/resetPassword.ts x: 14 # contributors y: 1634 line churn playwright/helpers/api/okta.ts x: 2 # contributors y: 272 line churn src/server/lib/getGeolocationRegion.ts x: 8 # contributors y: 177 line churn src/server/controllers/changePassword.ts x: 18 # contributors y: 3934 line churn src/server/controllers/checkPasswordToken.ts x: 15 # contributors y: 2455 line churn src/server/lib/middleware/errorHandler.ts x: 13 # contributors y: 567 line churn src/server/lib/okta/idx/shared/idxFetch.ts x: 2 # contributors y: 1044 line churn src/server/lib/recaptcha.ts x: 10 # contributors y: 898 line churn src/server/routes/subscriptions.ts x: 6 # contributors y: 371 line churn src/client/components/AuthProviderButtons.tsx x: 4 # contributors y: 512 line churn src/client/pages/Registration.stories.tsx x: 14 # contributors y: 332 line churn src/client/pages/Registration.tsx x: 19 # contributors y: 2726 line churn src/server/lib/getConfiguration.ts x: 16 # contributors y: 1333 line churn src/server/lib/okta/register.ts x: 13 # contributors y: 2708 line churn src/server/models/Configuration.ts x: 18 # contributors y: 451 line churn src/shared/lib/clientId.ts x: 4 # contributors y: 32 line churn src/client/components/MainForm.stories.tsx x: 10 # contributors y: 477 line churn src/client/components/Terms.stories.tsx x: 8 # contributors y: 164 line churn eslint.config.mjs x: 4 # contributors y: 383 line churn playwright/helpers/api/mailosaur.ts x: 2 # contributors y: 101 line churn src/client/components/GatewayErrorSummary.tsx x: 4 # contributors y: 150 line churn src/client/components/RegistrationConsents.tsx x: 7 # contributors y: 752 line churn src/client/pages/Welcome.stories.tsx x: 14 # contributors y: 473 line churn src/server/lib/expressWrappers.ts x: 5 # contributors y: 100 line churn src/server/routes/consentToken.ts x: 6 # contributors y: 305 line churn src/server/routes/signIn.ts x: 19 # contributors y: 6099 line churn src/okta/lib/helper.ts x: 1 # contributors y: 744 line churn src/server/lib/getAssets.ts x: 9 # contributors y: 130 line churn src/client/pages/RegisterWithEmail.tsx x: 8 # contributors y: 684 line churn riff-raff.yaml x: 7 # contributors y: 170 line churn playwright/helpers/register.ts x: 1 # contributors y: 139 line churn .storybook/clientStateDecorator.tsx x: 4 # contributors y: 70 line churn .storybook/main.js x: 15 # contributors y: 724 line churn src/client/components/AuthProviderButtons.stories.tsx x: 4 # contributors y: 340 line churn src/client/components/MainBodyText.stories.tsx x: 6 # contributors y: 188 line churn src/client/components/NoScript.stories.tsx x: 2 # contributors y: 172 line churn src/client/components/ToggleSwitchInput.stories.tsx x: 7 # contributors y: 226 line churn src/client/pages/ChangeEmailComplete.stories.tsx x: 5 # contributors y: 46 line churn src/client/pages/ChangePasswordComplete.stories.tsx x: 9 # contributors y: 167 line churn src/client/pages/DeleteAccountBlocked.stories.tsx x: 4 # contributors y: 244 line churn src/client/pages/EmailSent.stories.tsx x: 12 # contributors y: 643 line churn src/client/pages/IframedPasscodeEmailSent.stories.tsx x: 1 # contributors y: 309 line churn src/client/pages/MaintenancePage.stories.tsx x: 8 # contributors y: 68 line churn src/client/pages/NewAccountConsents.stories.tsx x: 2 # contributors y: 80 line churn src/client/pages/NewAccountNewsletters.stories.tsx x: 4 # contributors y: 437 line churn src/client/pages/NewAccountReview.stories.tsx x: 5 # contributors y: 269 line churn src/client/pages/ResetPassword.stories.tsx x: 13 # contributors y: 684 line churn src/client/pages/SignIn.stories.tsx x: 17 # contributors y: 821 line churn src/client/pages/SignedInAs.stories.tsx x: 6 # contributors y: 148 line churn src/client/pages/SubscriptionError.stories.tsx x: 7 # contributors y: 59 line churn cloudformation.yaml x: 22 # contributors y: 3428 line churn src/server/lib/idapi/consentToken.ts x: 5 # contributors y: 318 line churn src/server/routes/agree.ts x: 7 # contributors y: 1156 line churn src/shared/model/ClientState.ts x: 23 # contributors y: 613 line churn playwright/fixtures/okta-responses/success/idx-identify-response.ts x: 1 # contributors y: 206 line churn playwright/helpers/api/idapi.ts x: 1 # contributors y: 193 line churn src/server/lib/encryptedStateCookie.ts x: 9 # contributors y: 404 line churn src/server/lib/getRegistrationLocation.ts x: 6 # contributors y: 1040 line churn src/server/lib/idapi/subscriptions.ts x: 6 # contributors y: 222 line churn src/server/lib/trackMetric.ts x: 11 # contributors y: 502 line churn src/server/models/okta/User.ts x: 13 # contributors y: 958 line churn src/client/components/NameInputField.tsx x: 6 # contributors y: 432 line churn src/server/lib/middleware/index.ts x: 11 # contributors y: 349 line churn src/server/lib/typedRoutes.ts x: 9 # contributors y: 99 line churn src/client/assets/newsletters/index.ts x: 8 # contributors y: 204 line churn src/client/models/Newsletter.ts x: 12 # contributors y: 678 line churn src/server/lib/newsletters.ts x: 5 # contributors y: 236 line churn src/client/pages/WelcomeSocial.tsx x: 9 # contributors y: 721 line churn src/client/pages/NewAccountNewsletters.tsx x: 6 # contributors y: 483 line churn src/client/pages/SignIn.tsx x: 22 # contributors y: 4280 line churn src/server/lib/middleware/redirectIfLoggedIn.ts x: 6 # contributors y: 688 line churn src/shared/model/PageTitle.ts x: 18 # contributors y: 328 line churn src/server/routes/index.ts x: 18 # contributors y: 542 line churn src/server/lib/csrf.ts x: 2 # contributors y: 725 line churn src/server/lib/middleware/rateLimit.ts x: 8 # contributors y: 842 line churn src/server/lib/middleware/requestState.ts x: 21 # contributors y: 907 line churn src/server/routes/verifyEmail.ts x: 20 # contributors y: 2469 line churn src/client/components/MainBodyText.tsx x: 9 # contributors y: 390 line churn src/client/lib/hooks/useRecaptcha.tsx x: 10 # contributors y: 1277 line churn src/client/styles/Shared.ts x: 16 # contributors y: 764 line churn src/server/controllers/signInControllers.ts x: 2 # contributors y: 1994 line churn src/shared/model/Errors.ts x: 19 # contributors y: 793 line churn src/client/pages/NewAccountReview.tsx x: 7 # contributors y: 903 line churn src/client/pages/EmailSent.tsx x: 16 # contributors y: 2862 line churn src/client/pages/RegistrationEmailSentPage.tsx x: 14 # contributors y: 520 line churn src/client/static/analytics/ophan.ts x: 6 # contributors y: 347 line churn src/client/pages/SignedInAs.tsx x: 5 # contributors y: 412 line churn src/server/controllers/sendChangePasswordEmail.ts x: 10 # contributors y: 3510 line churn src/server/models/Express.ts x: 15 # contributors y: 568 line churn src/server/lib/okta/idx/shared/submitPasscode.ts x: 2 # contributors y: 770 line churn src/shared/lib/routeUtils.ts x: 7 # contributors y: 240 line churn src/client/components/EmailInput.tsx x: 10 # contributors y: 640 line churn src/client/lib/hooks/useInputValidityState.ts x: 3 # contributors y: 332 line churn src/server/lib/serverSideLogger.ts x: 8 # contributors y: 648 line churn src/server/models/okta/Authentication.ts x: 3 # contributors y: 536 line churn src/shared/model/RegistrationLocation.ts x: 1 # contributors y: 364 line churn src/server/lib/okta/api/authentication.ts x: 8 # contributors y: 753 line churn src/server/lib/okta/api/errors.ts x: 6 # contributors y: 627 line churn src/server/lib/okta/api/users.ts x: 10 # contributors y: 1839 line churn src/server/routes/signOut.ts x: 10 # contributors y: 1201 line churn src/client/static/index.tsx x: 13 # contributors y: 512 line churn src/server/lib/okta/idx/enroll.ts x: 4 # contributors y: 929 line churn src/server/lib/registrationPlatform.ts x: 2 # contributors y: 204 line churn src/server/lib/updateRegistrationLocation.ts x: 5 # contributors y: 342 line churn src/shared/model/User.ts x: 12 # contributors y: 146 line churn src/server/lib/okta/idx/challenge.ts x: 4 # contributors y: 1681 line churn src/client/components/NoScript.tsx x: 1 # contributors y: 489 line churn src/client/components/ClientState.tsx x: 13 # contributors y: 207 line churn src/client/static/hydration.tsx x: 12 # contributors y: 744 line churn src/server/lib/renderer.tsx x: 21 # contributors y: 1353 line churn src/client/pages/SignInPage.tsx x: 19 # contributors y: 456 line churn src/client/pages/ResetPassword.tsx x: 19 # contributors y: 1505 line churn src/client/pages/ResetPasswordPage.tsx x: 14 # contributors y: 744 line churn src/server/lib/middleware/csrf.ts x: 8 # contributors y: 496 line churn src/client/components/CheckboxInput.tsx x: 4 # contributors y: 464 line churn src/client/components/ABTestDemo.tsx x: 8 # contributors y: 345 line churn src/client/components/PasswordForm.tsx x: 15 # contributors y: 3008 line churn src/server/lib/IDAPIFetch.ts x: 10 # contributors y: 849 line churn src/server/lib/middleware/login.ts x: 14 # contributors y: 1408 line churn src/server/lib/okta/validateEmail.ts x: 6 # contributors y: 277 line churn src/server/controllers/oktaIdxShared.ts x: 1 # contributors y: 528 line churn src/server/lib/okta/idx/identify.ts x: 2 # contributors y: 305 line churn src/client/pages/UnexpectedError.tsx x: 9 # contributors y: 310 line churn src/client/pages/ChangePassword.tsx x: 14 # contributors y: 4743 line churn src/client/pages/ChangePasswordComplete.tsx x: 13 # contributors y: 839 line churn src/client/pages/ChangePasswordPage.tsx x: 15 # contributors y: 1045 line churn src/client/pages/EmailSentPage.tsx x: 12 # contributors y: 404 line churn src/client/pages/MaintenancePage.tsx x: 8 # contributors y: 100 line churn src/client/pages/NotFoundPage.tsx x: 13 # contributors y: 490 line churn src/client/pages/RegistrationPage.tsx x: 15 # contributors y: 324 line churn src/client/pages/ResendPasswordPage.tsx x: 13 # contributors y: 343 line churn src/client/pages/ResetPasswordSessionExpiredPage.tsx x: 11 # contributors y: 276 line churn src/client/pages/SetPasswordPage.tsx x: 11 # contributors y: 261 line churn src/client/pages/UnexpectedErrorPage.tsx x: 13 # contributors y: 454 line churn src/client/pages/Welcome.tsx x: 14 # contributors y: 957 line churn src/client/pages/WelcomePage.tsx x: 10 # contributors y: 400 line churn src/client/pages/WelcomeSessionExpiredPage.tsx x: 11 # contributors y: 305 line churn src/server/lib/idapi/auth.ts x: 17 # contributors y: 853 line churn src/server/lib/idapi/user.ts x: 16 # contributors y: 2679 line churn src/server/lib/members-data-api/user-attributes.ts x: 4 # contributors y: 415 line churn src/server/lib/okta/idx/introspect.ts x: 4 # contributors y: 1117 line churn src/server/lib/ophan.ts x: 8 # contributors y: 807 line churn src/server/lib/okta/api/sessions.ts x: 6 # contributors y: 409 line churn src/client/lib/ophan.ts x: 8 # contributors y: 301 line churn src/server/index.ts x: 13 # contributors y: 535 line churn src/server/lib/rate-limit/bucket.ts x: 5 # contributors y: 757 line churn src/server/models/okta/Error.ts x: 5 # contributors y: 894 line churn src/shared/lib/newsletter.ts x: 12 # contributors y: 1080 line churn src/email/templates/ResetPassword/ResetPassword.tsx x: 11 # contributors y: 590 line churn src/email/lib/generateUrl.ts x: 5 # contributors y: 152 line churn src/server/routes/setPassword.ts x: 13 # contributors y: 1353 line churn src/client/lib/consentsTracking.ts x: 10 # contributors y: 775 line churn src/client/models/Style.ts x: 9 # contributors y: 165 line churn src/client/static/sourceAccessibility.tsx x: 5 # contributors y: 31 line churn src/email/components/Footer.tsx x: 8 # contributors y: 601 line churn src/server/lib/rate-limit/keys.ts x: 6 # contributors y: 235 line churn .storybook/preview-head.html x: 8 # contributors y: 1567 line churn src/client/lib/fonts.ts x: 8 # contributors y: 447 line churn src/email/templates/AccountExists/AccountExists.tsx x: 8 # contributors y: 394 line churn src/server/lib/isStringBoolean.ts x: 2 # contributors y: 22 line churn
8418.0
line churn
  min: 4.0
  average: 446.61
  25th percentile: 70.0
  median: 167.0
  75th percentile: 464.0
  max: 8418.0
0 30.0
# contributors
min: 1.0 | average: 6.33 | 25th percentile: 3.0 | median: 5.0 | 75th percentile: 8.0 | max: 30.0

File Size vs. Line Churn: 487 points

src/client/assets/decorative/index.ts x: 8 lines of code y: 26 line churn src/client/components/OnboardingCard.tsx x: 107 lines of code y: 296 line churn src/client/components/OnboardingImage.tsx x: 31 lines of code y: 88 line churn src/client/components/OnboardingSection.tsx x: 50 lines of code y: 120 line churn src/client/layouts/MinimalLayout.tsx x: 178 lines of code y: 557 line churn src/client/pages/DiscoverOurApps.tsx x: 19 lines of code y: 50 line churn src/client/pages/Onboarding.tsx x: 13 lines of code y: 50 line churn src/client/pages/OnboardingPage.stories.tsx x: 17 lines of code y: 50 line churn src/client/styles/Theme.tsx x: 132 lines of code y: 269 line churn src/server/lib/registrationConsents.ts x: 155 lines of code y: 479 line churn src/server/routes/register.ts x: 680 lines of code y: 8418 line churn src/shared/lib/queryParams.ts x: 93 lines of code y: 560 line churn src/shared/model/QueryParams.ts x: 36 lines of code y: 470 line churn src/server/routes/welcome.ts x: 540 lines of code y: 4511 line churn src/server/lib/idapi/consents.ts x: 151 lines of code y: 999 line churn src/server/lib/idapi/newsletters.ts x: 118 lines of code y: 1031 line churn src/server/lib/user-features.ts x: 77 lines of code y: 277 line churn src/client/app.tsx x: 58 lines of code y: 444 line churn src/client/components/ExternalLink.tsx x: 22 lines of code y: 101 line churn src/client/components/MainForm.tsx x: 394 lines of code y: 2714 line churn src/client/components/Terms.tsx x: 59 lines of code y: 1937 line churn src/client/pages/IframedRegisterWithEmail.tsx x: 74 lines of code y: 219 line churn src/client/pages/IframedSignIn.tsx x: 225 lines of code y: 395 line churn src/server/lib/middleware/helmet.ts x: 70 lines of code y: 504 line churn src/server/routes/dev.ts x: 180 lines of code y: 421 line churn src/client/pages/IframedRegisterWithEmailPage.tsx x: 35 lines of code y: 43 line churn cdk/lib/identity-gateway.ts x: 517 lines of code y: 1416 line churn src/server/lib/okta/idx/interact.ts x: 126 lines of code y: 545 line churn src/server/lib/okta/oauth.ts x: 106 lines of code y: 714 line churn src/server/lib/okta/openid-connect.ts x: 289 lines of code y: 5050 line churn src/server/routes/oauth.ts x: 564 lines of code y: 5302 line churn src/client/pages/OnboardingPage.tsx x: 5 lines of code y: 21 line churn src/client/routes.tsx x: 342 lines of code y: 3758 line churn src/server/lib/queryParams.ts x: 81 lines of code y: 1022 line churn src/shared/model/Routes.ts x: 159 lines of code y: 1421 line churn src/client/pages/IframedRegisterWithEmail.stories.tsx x: 54 lines of code y: 146 line churn src/client/pages/IframedSignIn.stories.tsx x: 153 lines of code y: 282 line churn playwright/fixtures/e2e.ts x: 9 lines of code y: 48 line churn playwright/fixtures/mockedApiRequest.ts x: 33 lines of code y: 85 line churn playwright/helpers/accessibility.ts x: 22 lines of code y: 33 line churn playwright/helpers/network/recaptcha.ts x: 84 lines of code y: 248 line churn src/shared/model/ophan.ts x: 15 lines of code y: 97 line churn src/client/pages/NewAccountConsents.tsx x: 95 lines of code y: 383 line churn src/client/pages/NewAccountConsentsPage.tsx x: 23 lines of code y: 102 line churn src/client/components/PasswordInput.tsx x: 200 lines of code y: 2340 line churn src/server/lib/passcodeSendAgainTimer.ts x: 11 lines of code y: 48 line churn src/okta/static/okta-login.code.html x: 66 lines of code y: 148 line churn src/shared/model/Configuration.ts x: 3 lines of code y: 14 line churn src/client/components/ToggleSwitchInput.tsx x: 223 lines of code y: 1002 line churn src/client/components/ToggleSwitchList.tsx x: 21 lines of code y: 60 line churn src/server/lib/okta/tokens.ts x: 107 lines of code y: 514 line churn src/server/lib/rate-limit/types.ts x: 65 lines of code y: 670 line churn src/server/models/Metrics.ts x: 112 lines of code y: 955 line churn src/shared/model/Newsletter.ts x: 147 lines of code y: 1137 line churn src/email/lib/send.ts x: 57 lines of code y: 257 line churn src/email/components/Button.stories.tsx x: 24 lines of code y: 72 line churn src/email/components/Footer.stories.tsx x: 37 lines of code y: 112 line churn src/email/components/Header.stories.tsx x: 24 lines of code y: 66 line churn src/email/components/Page.stories.tsx x: 47 lines of code y: 138 line churn src/email/components/Text.stories.tsx x: 27 lines of code y: 78 line churn src/email/templates/AccountExists/AccountExists.stories.tsx x: 24 lines of code y: 136 line churn src/email/templates/AccountExists/sendAccountExistsEmail.ts x: 39 lines of code y: 338 line churn src/email/templates/AccountWithoutPasswordExists/sendAccountWithoutPasswordExists.ts x: 33 lines of code y: 220 line churn src/email/templates/CompleteRegistration/sendCompleteRegistration.ts x: 30 lines of code y: 132 line churn src/email/templates/CreatePassword/sendCreatePasswordEmail.ts x: 33 lines of code y: 172 line churn src/email/templates/UnvalidatedEmailResetPassword/sendUnvalidatedEmailResetPasswordEmail.ts x: 33 lines of code y: 102 line churn src/email/templates/renderedTemplates.ts x: 91 lines of code y: 432 line churn src/email/testUtils.tsx x: 19 lines of code y: 212 line churn src/server/routes/emailTemplates.ts x: 43 lines of code y: 414 line churn src/client/pages/NewAccountReviewPage.tsx x: 17 lines of code y: 149 line churn src/shared/lib/welcome.ts x: 28 lines of code y: 104 line churn src/client/pages/JobsTermsAccept.tsx x: 158 lines of code y: 955 line churn util/mock-server.js x: 153 lines of code y: 566 line churn src/client/pages/IframedPasscodeEmailSent.tsx x: 220 lines of code y: 250 line churn src/client/pages/PasscodeEmailSent.stories.tsx x: 426 lines of code y: 1138 line churn src/client/pages/PasscodeEmailSent.tsx x: 175 lines of code y: 800 line churn src/client/pages/PasscodeEmailSentPage.tsx x: 40 lines of code y: 140 line churn src/client/pages/ResetPasswordEmailSentPage.tsx x: 79 lines of code y: 178 line churn src/server/lib/getAppNameFromRegistrationPlatform.ts x: 10 lines of code y: 22 line churn src/server/routes/passcode.ts x: 217 lines of code y: 591 line churn src/server/routes/resetPassword.ts x: 287 lines of code y: 1634 line churn playwright/helpers/api/okta.ts x: 245 lines of code y: 272 line churn src/server/lib/getGeolocationRegion.ts x: 29 lines of code y: 177 line churn src/server/controllers/changePassword.ts x: 204 lines of code y: 3934 line churn src/server/controllers/checkPasswordToken.ts x: 256 lines of code y: 2455 line churn src/server/lib/middleware/400.ts x: 15 lines of code y: 51 line churn src/server/lib/middleware/errorHandler.ts x: 53 lines of code y: 567 line churn src/server/lib/okta/idx/shared/idxFetch.ts x: 186 lines of code y: 1044 line churn src/server/lib/recaptcha.ts x: 70 lines of code y: 898 line churn src/server/routes/subscriptions.ts x: 187 lines of code y: 371 line churn src/client/components/AuthProviderButtons.tsx x: 122 lines of code y: 512 line churn src/client/pages/PasscodeUsed.tsx x: 65 lines of code y: 208 line churn src/client/pages/Registration.stories.tsx x: 27 lines of code y: 332 line churn src/client/pages/Registration.tsx x: 54 lines of code y: 2726 line churn src/client/pages/WelcomePrintPromo.tsx x: 24 lines of code y: 28 line churn src/server/lib/getConfiguration.ts x: 222 lines of code y: 1333 line churn src/server/lib/okta/register.ts x: 364 lines of code y: 2708 line churn src/server/lib/sns/snsEventPublisher.ts x: 27 lines of code y: 31 line churn src/server/models/Configuration.ts x: 69 lines of code y: 451 line churn src/client/components/EmailSentInformationBox.tsx x: 123 lines of code y: 278 line churn src/client/components/MainForm.stories.tsx x: 74 lines of code y: 477 line churn .github/dependabot.yml x: 16 lines of code y: 232 line churn eslint.config.mjs x: 155 lines of code y: 383 line churn knip.ts x: 50 lines of code y: 162 line churn playwright/helpers/api/mailosaur.ts x: 65 lines of code y: 101 line churn scripts/generate-rate-limit-schema.ts x: 8 lines of code y: 72 line churn scripts/log.js x: 31 lines of code y: 100 line churn src/client/components/CookiesInTheBrowser.tsx x: 32 lines of code y: 45 line churn src/client/components/RegistrationConsents.tsx x: 41 lines of code y: 752 line churn src/client/pages/SubscriptionSuccess.tsx x: 58 lines of code y: 98 line churn src/client/pages/Welcome.stories.tsx x: 23 lines of code y: 473 line churn src/client/pages/WelcomeExisting.tsx x: 52 lines of code y: 145 line churn src/server/lib/expressWrappers.ts x: 18 lines of code y: 100 line churn src/server/routes/changeEmail.ts x: 51 lines of code y: 144 line churn src/server/routes/consentToken.ts x: 75 lines of code y: 305 line churn src/server/routes/signIn.ts x: 578 lines of code y: 6099 line churn src/okta/lib/helper.ts x: 182 lines of code y: 744 line churn src/okta/static/login-default.html x: 38 lines of code y: 98 line churn src/server/lib/getAssets.ts x: 45 lines of code y: 130 line churn src/client/pages/RegisterWithEmail.tsx x: 102 lines of code y: 684 line churn playwright/helpers/register.ts x: 116 lines of code y: 139 line churn .storybook/clientStateDecorator.tsx x: 17 lines of code y: 70 line churn .storybook/main.js x: 57 lines of code y: 724 line churn .storybook/preview.jsx x: 96 lines of code y: 103 line churn .storybook/vite.config.ts x: 11 lines of code y: 12 line churn src/client/components/AuthProviderButtons.stories.tsx x: 55 lines of code y: 340 line churn src/client/components/CheckboxInput.stories.tsx x: 39 lines of code y: 106 line churn src/client/components/DetailedRecaptchaError.stories.tsx x: 20 lines of code y: 72 line churn src/client/components/EmailInput.stories.tsx x: 30 lines of code y: 137 line churn src/client/components/EmailSentInformationBox.stories.tsx x: 105 lines of code y: 232 line churn src/client/components/GatewayErrorSummary.stories.tsx x: 71 lines of code y: 162 line churn src/client/components/IframeThemedEmailInput.stories.tsx x: 12 lines of code y: 18 line churn src/client/components/InformationBox.stories.tsx x: 41 lines of code y: 192 line churn src/client/components/MainBodyText.stories.tsx x: 21 lines of code y: 188 line churn src/client/components/MinimalLayoutImage.stories.tsx x: 12 lines of code y: 34 line churn src/client/components/NameInputField.stories.tsx x: 18 lines of code y: 82 line churn src/client/components/NoScript.stories.tsx x: 11 lines of code y: 172 line churn src/client/components/PasswordForm.stories.tsx x: 35 lines of code y: 116 line churn src/client/components/PasswordInput.stories.tsx x: 38 lines of code y: 195 line churn src/client/components/RegistrationConsents.stories.tsx x: 30 lines of code y: 90 line churn src/client/components/ToggleSwitchInput.stories.tsx x: 60 lines of code y: 226 line churn src/client/pages/ChangeEmailError.stories.tsx x: 8 lines of code y: 42 line churn src/client/pages/DeleteAccount.stories.tsx x: 41 lines of code y: 114 line churn src/client/pages/DeleteAccountBlocked.stories.tsx x: 109 lines of code y: 244 line churn src/client/pages/DeleteAccountEmailPasswordValidation.stories.tsx x: 25 lines of code y: 72 line churn src/client/pages/EmailSent.stories.tsx x: 101 lines of code y: 643 line churn src/client/pages/IframedPasscodeEmailSent.stories.tsx x: 275 lines of code y: 309 line churn src/client/pages/JobsTermsAccept.stories.tsx x: 22 lines of code y: 72 line churn src/client/pages/NewAccountConsents.stories.tsx x: 34 lines of code y: 80 line churn src/client/pages/NewAccountNewsletters.stories.tsx x: 96 lines of code y: 437 line churn src/client/pages/NewAccountReview.stories.tsx x: 15 lines of code y: 269 line churn src/client/pages/NotFound.stories.tsx x: 8 lines of code y: 105 line churn src/client/pages/PasscodeUsed.stories.tsx x: 21 lines of code y: 78 line churn src/client/pages/ResetPassword.stories.tsx x: 97 lines of code y: 684 line churn src/client/pages/SignIn.stories.tsx x: 126 lines of code y: 821 line churn src/client/pages/SignedInAs.stories.tsx x: 55 lines of code y: 148 line churn src/client/pages/SubscriptionError.stories.tsx x: 27 lines of code y: 59 line churn src/client/pages/SubscriptionReview.stories.tsx x: 41 lines of code y: 49 line churn src/client/pages/UnvalidatedEmailEmailSent.stories.tsx x: 59 lines of code y: 160 line churn src/client/pages/WelcomeSocial.stories.tsx x: 59 lines of code y: 191 line churn cloudformation.yaml x: 796 lines of code y: 3428 line churn src/server/lib/idapi/consentToken.ts x: 62 lines of code y: 318 line churn src/server/routes/agree.ts x: 109 lines of code y: 1156 line churn src/shared/model/ClientState.ts x: 82 lines of code y: 613 line churn src/shared/model/Consent.ts x: 87 lines of code y: 479 line churn playwright/fixtures/okta-responses/success/idx-identify-response.ts x: 197 lines of code y: 206 line churn playwright/helpers/api/idapi.ts x: 178 lines of code y: 193 line churn playwright/helpers/api/okta-apps.ts x: 25 lines of code y: 28 line churn playwright/helpers/api/placeholder-password-mock.ts x: 81 lines of code y: 82 line churn playwright/helpers/cookies/cookie-helpers.ts x: 48 lines of code y: 69 line churn playwright/helpers/network/mocking.ts x: 51 lines of code y: 106 line churn src/server/lib/encryptedStateCookie.ts x: 82 lines of code y: 404 line churn src/server/lib/getRegistrationLocation.ts x: 337 lines of code y: 1040 line churn src/server/lib/idapi/subscriptions.ts x: 103 lines of code y: 222 line churn src/server/lib/trackMetric.ts x: 71 lines of code y: 502 line churn src/server/routes/delete.ts x: 332 lines of code y: 1153 line churn src/client/components/NameInputField.tsx x: 92 lines of code y: 432 line churn src/server/lib/middleware/index.ts x: 32 lines of code y: 349 line churn src/server/lib/typedRoutes.ts x: 13 lines of code y: 99 line churn src/client/models/Newsletter.ts x: 41 lines of code y: 678 line churn src/server/lib/newsletters.ts x: 85 lines of code y: 236 line churn src/client/components/InformationBox.tsx x: 34 lines of code y: 190 line churn src/client/pages/WelcomeSocial.tsx x: 65 lines of code y: 721 line churn src/client/pages/WelcomeSocialPage.tsx x: 20 lines of code y: 111 line churn src/client/pages/NewAccountNewsletters.tsx x: 118 lines of code y: 483 line churn src/client/pages/SignIn.tsx x: 250 lines of code y: 4280 line churn src/server/lib/middleware/redirectIfLoggedIn.ts x: 80 lines of code y: 688 line churn src/client/pages/SubscriptionReview.tsx x: 52 lines of code y: 58 line churn src/shared/model/PageTitle.ts x: 46 lines of code y: 328 line churn src/server/lib/okta/api/apps.ts x: 67 lines of code y: 274 line churn src/server/routes/index.ts x: 47 lines of code y: 542 line churn src/server/lib/middleware/rateLimit.ts x: 79 lines of code y: 842 line churn src/server/lib/middleware/requestState.ts x: 119 lines of code y: 907 line churn src/server/routes/verifyEmail.ts x: 27 lines of code y: 2469 line churn src/client/components/MainBodyText.tsx x: 57 lines of code y: 390 line churn src/client/lib/hooks/useRecaptcha.tsx x: 173 lines of code y: 1277 line churn src/client/components/IframeThemedEmailInput.tsx x: 16 lines of code y: 19 line churn src/client/components/PasscodeInput.tsx x: 93 lines of code y: 261 line churn src/client/pages/IframedPasscodeEmailSentPage.tsx x: 45 lines of code y: 52 line churn src/client/pages/IframedSignInPage.tsx x: 44 lines of code y: 53 line churn src/client/styles/Shared.ts x: 102 lines of code y: 764 line churn src/server/controllers/signInControllers.ts x: 544 lines of code y: 1994 line churn src/shared/model/Errors.ts x: 106 lines of code y: 793 line churn src/server/lib/validateUrl.ts x: 45 lines of code y: 307 line churn src/client/pages/NewAccountReview.tsx x: 27 lines of code y: 903 line churn src/client/pages/EmailSent.tsx x: 87 lines of code y: 2862 line churn src/client/pages/RegistrationEmailSentPage.tsx x: 72 lines of code y: 520 line churn src/client/pages/UnvalidatedEmailEmailSentPage.tsx x: 64 lines of code y: 200 line churn src/shared/model/EncryptedState.ts x: 13 lines of code y: 107 line churn src/server/lib/rate-limit/configurationValidator.ts x: 49 lines of code y: 210 line churn src/client/pages/SignedInAs.tsx x: 104 lines of code y: 412 line churn src/server/controllers/sendChangePasswordEmail.ts x: 517 lines of code y: 3510 line churn src/server/models/Express.ts x: 46 lines of code y: 568 line churn src/server/lib/user-benefits-api/user-benefits.ts x: 31 lines of code y: 48 line churn src/server/lib/okta/idx/shared/paths.ts x: 13 lines of code y: 28 line churn src/server/lib/okta/idx/shared/submitPasscode.ts x: 187 lines of code y: 770 line churn src/shared/lib/routeUtils.ts x: 47 lines of code y: 240 line churn src/client/components/EmailInput.tsx x: 50 lines of code y: 640 line churn src/client/lib/clientSideLogger.ts x: 39 lines of code y: 466 line churn src/client/lib/hooks/useInputValidityState.ts x: 70 lines of code y: 332 line churn src/client/models/Font.ts x: 35 lines of code y: 244 line churn src/server/lib/serverSideLogger.ts x: 58 lines of code y: 648 line churn src/server/models/okta/Authentication.ts x: 98 lines of code y: 536 line churn src/shared/model/Logger.ts x: 12 lines of code y: 76 line churn src/shared/model/OpenIdErrors.ts x: 9 lines of code y: 92 line churn src/shared/types.ts x: 1 lines of code y: 8 line churn src/shared/model/RegistrationLocation.ts x: 154 lines of code y: 364 line churn src/server/lib/okta/api/authentication.ts x: 84 lines of code y: 753 line churn src/server/lib/okta/api/errors.ts x: 37 lines of code y: 627 line churn src/server/lib/okta/api/users.ts x: 260 lines of code y: 1839 line churn src/server/lib/okta/idx/shared/schemas.ts x: 112 lines of code y: 324 line churn src/server/routes/signOut.ts x: 154 lines of code y: 1201 line churn src/client/static/index.tsx x: 9 lines of code y: 512 line churn src/server/lib/okta/idx/enroll.ts x: 113 lines of code y: 929 line churn src/server/lib/updateRegistrationLocation.ts x: 42 lines of code y: 342 line churn src/shared/model/User.ts x: 27 lines of code y: 146 line churn src/server/lib/okta/idx/challenge.ts x: 217 lines of code y: 1681 line churn src/client/components/NoScript.tsx x: 82 lines of code y: 489 line churn src/client/components/ClientState.tsx x: 25 lines of code y: 207 line churn src/client/static/hydration.tsx x: 42 lines of code y: 744 line churn src/server/lib/renderer.tsx x: 139 lines of code y: 1353 line churn src/client/pages/SignInPage.tsx x: 49 lines of code y: 456 line churn src/client/pages/ResetPassword.tsx x: 123 lines of code y: 1505 line churn src/client/pages/ResetPasswordPage.tsx x: 35 lines of code y: 744 line churn src/server/lib/okta/idx/shared/errorHandling.ts x: 93 lines of code y: 356 line churn src/client/pages/DeleteAccount.tsx x: 224 lines of code y: 674 line churn src/shared/model/experiments/abSwitches.ts x: 3 lines of code y: 113 line churn src/client/lib/hooks/useCountdownTimer.ts x: 25 lines of code y: 60 line churn src/server/lib/okta/idx/startIdxFlow.ts x: 58 lines of code y: 186 line churn src/server/server.ts x: 12 lines of code y: 110 line churn src/server/lib/middleware/csrf.ts x: 4 lines of code y: 496 line churn src/client/components/CheckboxInput.tsx x: 134 lines of code y: 464 line churn scripts/banner.js x: 18 lines of code y: 50 line churn src/client/components/PasswordForm.tsx x: 310 lines of code y: 3008 line churn src/server/lib/IDAPIFetch.ts x: 106 lines of code y: 849 line churn src/server/lib/middleware/login.ts x: 106 lines of code y: 1408 line churn src/server/lib/okta/validateEmail.ts x: 59 lines of code y: 277 line churn src/shared/lib/regexparam.ts x: 22 lines of code y: 233 line churn src/server/controllers/oktaIdxShared.ts x: 138 lines of code y: 528 line churn src/server/lib/okta/dangerouslySetPlaceholderPassword.ts x: 76 lines of code y: 348 line churn src/server/lib/okta/idx/identify.ts x: 60 lines of code y: 305 line churn src/client/pages/NotFound.tsx x: 26 lines of code y: 389 line churn src/client/pages/UnexpectedError.tsx x: 25 lines of code y: 310 line churn src/client/pages/ChangeEmailComplete.tsx x: 37 lines of code y: 178 line churn src/client/pages/ChangePassword.tsx x: 49 lines of code y: 4743 line churn src/client/pages/ChangePasswordComplete.tsx x: 35 lines of code y: 839 line churn src/client/pages/ChangePasswordPage.tsx x: 49 lines of code y: 1045 line churn src/client/pages/DeleteAccountBlocked.tsx x: 119 lines of code y: 354 line churn src/client/pages/DeleteAccountEmailPasswordValidation.tsx x: 63 lines of code y: 158 line churn src/client/pages/EmailSentPage.tsx x: 38 lines of code y: 404 line churn src/client/pages/MaintenancePage.tsx x: 10 lines of code y: 100 line churn src/client/pages/NotFoundPage.tsx x: 6 lines of code y: 490 line churn src/client/pages/RegistrationPage.tsx x: 20 lines of code y: 324 line churn src/client/pages/ResendConsentEmail.tsx x: 43 lines of code y: 166 line churn src/client/pages/ResendPasswordPage.tsx x: 44 lines of code y: 343 line churn src/client/pages/ResetPasswordSessionExpiredPage.tsx x: 38 lines of code y: 276 line churn src/client/pages/SetPasswordResendPage.tsx x: 34 lines of code y: 273 line churn src/client/pages/SetPasswordSessionExpiredPage.tsx x: 40 lines of code y: 298 line churn src/client/pages/SubscriptionSuccessPage.tsx x: 29 lines of code y: 53 line churn src/client/pages/UnexpectedErrorPage.tsx x: 6 lines of code y: 454 line churn src/client/pages/Welcome.tsx x: 97 lines of code y: 957 line churn src/client/pages/WelcomePage.tsx x: 48 lines of code y: 400 line churn src/client/pages/WelcomeResendPage.tsx x: 33 lines of code y: 401 line churn src/client/pages/WelcomeSessionExpiredPage.tsx x: 40 lines of code y: 305 line churn src/server/lib/deeplink/oktaRecoveryToken.ts x: 79 lines of code y: 584 line churn src/server/lib/idapi/auth.ts x: 48 lines of code y: 853 line churn src/server/lib/idapi/decryptToken.ts x: 25 lines of code y: 166 line churn src/server/lib/idapi/user.ts x: 93 lines of code y: 2679 line churn src/server/lib/okta/idx/credential.ts x: 41 lines of code y: 333 line churn src/server/lib/okta/idx/introspect.ts x: 82 lines of code y: 1117 line churn src/server/lib/okta/idx/recover.ts x: 60 lines of code y: 246 line churn src/server/lib/ophan.ts x: 149 lines of code y: 807 line churn src/server/lib/unvalidatedEmail.ts x: 46 lines of code y: 170 line churn src/server/lib/okta/idx/shared/findAuthenticatorId.ts x: 80 lines of code y: 212 line churn src/server/lib/jobs.ts x: 22 lines of code y: 354 line churn src/server/lib/okta/api/sessions.ts x: 51 lines of code y: 409 line churn src/client/components/CsrfFormField.tsx x: 28 lines of code y: 278 line churn src/shared/lib/featureSwitches.ts x: 16 lines of code y: 228 line churn src/server/lib/middleware/404.ts x: 15 lines of code y: 151 line churn src/client/lib/ophan.ts x: 33 lines of code y: 301 line churn src/server/index.ts x: 16 lines of code y: 535 line churn src/server/lib/idapi/IDAPICookies.ts x: 68 lines of code y: 408 line churn src/server/lib/rate-limit/bucket.ts x: 131 lines of code y: 757 line churn src/server/lib/rate-limit/index.ts x: 4 lines of code y: 43 line churn src/server/lib/rate-limit/logger.ts x: 34 lines of code y: 140 line churn src/server/lib/validatePasswordField.ts x: 97 lines of code y: 359 line churn src/server/models/okta/Error.ts x: 69 lines of code y: 894 line churn src/shared/lib/newsletter.ts x: 14 lines of code y: 1080 line churn src/server/lib/awsConfig.ts x: 21 lines of code y: 217 line churn src/email/templates/ResetPassword/ResetPassword.tsx x: 35 lines of code y: 590 line churn src/server/routes/setPassword.ts x: 84 lines of code y: 1353 line churn src/email/components/Text.tsx x: 35 lines of code y: 188 line churn src/email/templates/RegistrationPasscode/RegistrationPasscode.tsx x: 42 lines of code y: 138 line churn src/client/components/MinimalHeader.tsx x: 28 lines of code y: 66 line churn src/client/lib/consentsTracking.ts x: 83 lines of code y: 775 line churn src/client/static/sourceAccessibility.tsx x: 2 lines of code y: 31 line churn src/email/components/Footer.tsx x: 47 lines of code y: 601 line churn src/email/components/SubHeader.tsx x: 39 lines of code y: 232 line churn src/shared/model/Geolocation.ts x: 1 lines of code y: 39 line churn src/server/lib/rate-limit/keys.ts x: 44 lines of code y: 235 line churn src/email/templates/AccountExists/AccountExistsText.ts x: 13 lines of code y: 212 line churn src/email/templates/AccountWithoutPasswordExists/AccountWithoutPasswordExistsText.ts x: 11 lines of code y: 77 line churn src/email/templates/ResetPassword/ResetPasswordText.ts x: 11 lines of code y: 122 line churn src/server/lib/breachedPasswordCheck.ts x: 32 lines of code y: 157 line churn src/shared/model/NewsletterPatch.ts x: 6 lines of code y: 16 line churn .storybook/preview-head.html x: 5 lines of code y: 1567 line churn src/client/lib/fonts.ts x: 106 lines of code y: 447 line churn src/client/lib/hooks/useRemoveEncryptedEmailParam.tsx x: 15 lines of code y: 125 line churn src/email/templates/AccidentalEmail/AccidentalEmail.tsx x: 42 lines of code y: 100 line churn src/email/templates/AccountExists/AccountExists.tsx x: 33 lines of code y: 394 line churn src/email/templates/CreatePassword/CreatePassword.tsx x: 25 lines of code y: 106 line churn src/server/lib/emailCookie.ts x: 4 lines of code y: 199 line churn src/server/lib/middleware/cache.ts x: 6 lines of code y: 146 line churn src/server/lib/rate-limit/rateLimit.ts x: 91 lines of code y: 822 line churn src/server/lib/timeoutSignal.ts x: 5 lines of code y: 66 line churn
8418.0
line churn
  min: 4.0
  average: 446.61
  25th percentile: 70.0
  median: 167.0
  75th percentile: 464.0
  max: 8418.0
0 796.0
lines of code
min: 1.0 | average: 66.06 | 25th percentile: 17.0 | median: 34.0 | 75th percentile: 77.0 | max: 796.0