Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3859 commits
Select commit Hold shift + click to select a range
6e258ed
Fix day gap when fetching new slots
flavienbonvin Apr 1, 2026
d916890
Fix initial loading of the events
flavienbonvin Apr 1, 2026
e84de70
Merge branch 'BOOK-391-fetch-slots-when-changing-month' into 'main'
Apr 2, 2026
a91e9b9
[DRVWEB-5169] Cleanup shared with me part 2
HeadFox Apr 2, 2026
604adcc
Merge branch 'DRVWEB-5169-cleanup-shared-with-me-part-2' into 'main'
Apr 2, 2026
f67d330
Stabilize connectivity state transitions under concurrent requests
edvincandon Apr 1, 2026
b68f464
Merge branch 'IDTEAM-5385-downtime-relax' into 'main'
Apr 2, 2026
e417d3f
[IDTEAM-4634] Hide share roles actions on a group sharing you are man…
Swiip Apr 2, 2026
c287ee7
Merge branch 'IDTEAM-4634-control-remove-group-access' into 'main'
Apr 2, 2026
a75a023
Patch lodash
flavienbonvin Apr 2, 2026
e58bcfb
Merge branch 'patch-lodash' into 'main'
Apr 2, 2026
9248670
Sheets: Breaking change versioning
Apr 2, 2026
6d42531
Merge branch 'sheets-versioning' into 'main'
Apr 2, 2026
6f64ecf
Fix: wait for paymentsMethods event
Apr 2, 2026
df853c6
Merge branch 'fix/free-trial-payment-method' into 'main'
Apr 2, 2026
bd64d0f
Add meet logo to storybooks
RayoProton Apr 2, 2026
d671894
Merge branch 'update-meet-logo' into 'main'
Apr 2, 2026
8476cda
fixed go unlimited offer
fraser-proton Apr 2, 2026
e0cd076
Merge branch 'INWEB-908-fix-go-unlimited-offer-telemetry' into 'main'
Apr 2, 2026
ec8c31a
[IDTEAM-4634] stop propagation group click and fix actions sharing me…
Swiip Apr 2, 2026
762a0f0
Merge branch 'IDTEAM-4634-fix-group-sharing-access' into 'main'
Apr 2, 2026
711e121
Improve error management in desktop unlock and break auto unlock loop
Swiip Apr 2, 2026
82f4c04
Merge branch 'IDTEAM-4633-desktop-unlock-loop' into 'main'
Apr 2, 2026
93a79e5
Allow host remove raised hand
RayoProton Apr 2, 2026
5e8e3d7
Merge branch 'allow-host-remove-raised-hand' into 'main'
Apr 2, 2026
04d0a28
Small fixes sharing modal
HeadFox Apr 2, 2026
badeacc
Merge branch 'drive/fix-sharing-modal' into 'main'
Apr 2, 2026
1b563e5
Don't cleanup recording file in download function + logs
RayoProton Apr 2, 2026
dd9268e
Merge branch 'log-recording-errors' into 'main'
Apr 2, 2026
31be29d
fix password preference not saved in autosuggest
nguyenkims Apr 1, 2026
a311cba
Merge branch 'IDTEAM-5036-fix-password-preference' into 'main'
Apr 2, 2026
117d06c
i18n(calendar): update translations from crowdin c800652e8f
Apr 2, 2026
0fdbcf7
i18n(mail): update translations from crowdin 528d3b8ce8
Apr 2, 2026
bbaccfd
i18n(drive): update translations from crowdin 3cebdd0894
Apr 2, 2026
dc552e7
i18n(account): update translations from crowdin 973f1fdfbf
Apr 2, 2026
eaa8730
i18n(vpn-settings): update translations from crowdin 884c3c3513
Apr 2, 2026
93504c5
i18n(pass): update translations from crowdin ce7ee8b92b
Apr 2, 2026
4729998
i18n(pass-desktop): update translations from crowdin bf51797b9f
Apr 2, 2026
a459694
i18n(wallet): update translations from crowdin c5860bece0
Apr 2, 2026
89067fa
i18n(docs): update translations from crowdin 3ee944729e
Apr 2, 2026
0366a6d
i18n(lumo): update translations from crowdin 609325383a
Apr 2, 2026
a1b6261
i18n(meet): update translations from crowdin 9075d39631
Apr 2, 2026
1aafdd3
Merge branch 'translations_2026-04-02_145047_3cd467d6' into 'main'
mmso Apr 2, 2026
9ea4875
add exclude from monitoring in the extension
nguyenkims Apr 2, 2026
af3e2ab
Merge branch 'IDTEAM-5856-add-exclude-from-monitoring-in-extension' i…
Apr 2, 2026
b1578bf
DRVWEB: Update userPreferences to userSettings in indexeddb search db
Apr 2, 2026
153f984
Merge branch 'DRVWEB-fix-search-bind' into 'main'
Apr 2, 2026
64251e0
DRVWEB: Search filename querying improvements: less than 3 chars and …
Apr 2, 2026
2affa97
Merge branch 'search-exact-match' into 'main'
Apr 2, 2026
416d0c4
DRVWEB: Fix search bootstrap - missing "this" scope
Apr 2, 2026
3926fc9
Merge branch 'DRVWEB-fix-search-bootstrap' into 'main'
Apr 2, 2026
2484f25
Add Vijay to Marge fasttrack allow list
Vijayasingam Apr 2, 2026
cfea318
Merge branch 'update-marge-fasttrack' into 'main'
Apr 2, 2026
9503e91
Update BYOE strings P1-424
LeGrosSancho Apr 2, 2026
2d2ffb1
Merge branch 'P1-424-BYOE-final-copy-changes' into 'main'
Apr 2, 2026
e4b9211
DRVWEB: Search: Consolidate search feature flags and fix max update d…
Apr 3, 2026
602359d
Merge branch 'DRVWEB-searchui-merge-and-cleanup' into 'main'
Apr 3, 2026
dd0bedf
Use data-testid instead of class for header selector
HeadFox Apr 3, 2026
d925b8c
Merge branch 'drive/fix-e2e-tests-sharing-modal' into 'main'
Apr 3, 2026
20e7d3e
Sheets: Run `calculateNow` after receiving all initial updates
Apr 3, 2026
f7fd466
Merge branch 'sheets-recalc' into 'main'
Apr 3, 2026
8deaba4
Skip non-supported photos files on Photos upload
HeadFox Apr 3, 2026
2dce8cd
Merge branch 'DRVCST-440-prevent-other-files-photos-upload' into 'main'
Apr 3, 2026
754f394
DRVWEB: Search foundation library 2.0.0 preview + Diagnostic debug UI
Apr 3, 2026
71fed55
Merge branch 'DRVWEB-search-foundation-2_0_0-preview' into 'main'
Apr 3, 2026
a95551b
i18n(calendar): update translations from crowdin 8de19af1a3
Apr 7, 2026
5600def
i18n(mail): update translations from crowdin d65144f42f
Apr 7, 2026
2f83289
i18n(mail-desktop): update translations from crowdin 83d70f197b
Apr 7, 2026
f14adf2
i18n(drive): update translations from crowdin f2db7e42aa
Apr 7, 2026
38c572f
i18n(account): update translations from crowdin b72ae98b59
Apr 7, 2026
f16dff3
i18n(vpn-settings): update translations from crowdin 29c9ba9f7b
Apr 7, 2026
98db3b6
i18n(verify): update translations from crowdin 2a69951f56
Apr 7, 2026
6480d38
i18n(pass): update translations from crowdin f99e5ef8d1
Apr 7, 2026
6249c26
i18n(pass-web): update translations from crowdin eefa82d671
Apr 7, 2026
06ab7dd
i18n(pass-desktop): update translations from crowdin fe86b1f514
Apr 7, 2026
247bc49
i18n(wallet): update translations from crowdin 6dde76b84c
Apr 7, 2026
4b8c027
i18n(docs): update translations from crowdin 2c2a64c783
Apr 7, 2026
be91857
i18n(docs-editor): update translations from crowdin 33ffc57443
Apr 7, 2026
fe37506
i18n(lumo): update translations from crowdin 52b4aeeaef
Apr 7, 2026
bac05d3
i18n(meet): update translations from crowdin f7a8a713f9
Apr 7, 2026
5eccceb
Merge branch 'translations_2026-04-07_050329_63ac64a5' into 'main'
Apr 7, 2026
66a13b9
Update lodash to fix vulnerability
Vijayasingam Apr 2, 2026
d1b85d3
Merge branch 'update-lodash' into 'main'
Apr 7, 2026
85c43b5
[IDTEAM-4633] Unlock extension with biometrics from suggestion icon
Swiip Apr 7, 2026
946d9fa
Merge branch 'IDTEAM-4633-dropdown-unlock' into 'main'
Apr 7, 2026
03ac8d8
Fix auth-store leaking into web service-worker
edvincandon Apr 7, 2026
64eec39
Merge branch 'IDTEAM-fix-authstore-leak-in-sw' into 'main'
Apr 7, 2026
43b4e4a
fix: Fix missing scroll in EasySwitch section
nico3333fr Apr 7, 2026
ff0e72b
Merge branch 'INWEB-909-missing-scroll-easyswitch' into 'main'
Apr 7, 2026
1060bd7
Remove import recent email checkbox
LeGrosSancho Apr 7, 2026
2f1b81f
Merge branch 'P1-423-remove-import-mails-checkbox' into 'main'
Apr 7, 2026
a8da0e2
[VPNB2B-25] Create routes and segment the sidebar into small components
asieraduriz Apr 7, 2026
365d958
Merge branch 'VPNB2B-25--part-two--upgrade-vpn-settings-sidebar' into…
Apr 7, 2026
f5e11c0
fix(INDA-670): Allow Easy Switch related OAuth Electron windows to re…
ElectroNafta Apr 7, 2026
7ad8f9d
Merge branch 'fix/INDA-670' into 'main'
Apr 7, 2026
efbd764
Implement drag and drop with drive explorer
HeadFox Apr 7, 2026
69a03ef
Merge branch 'drive/fix-drag-and-drop-alpha' into 'main'
Apr 7, 2026
943ed84
Update BYOE strings context to allow translations
LeGrosSancho Apr 7, 2026
15dc2e8
Merge branch 'P1-167-update-BYOE-strings-contexts' into 'main'
Apr 7, 2026
e1ab34a
Add recording indicators
RayoProton Apr 7, 2026
bef7edf
Merge branch 'recording-indicator' into 'main'
Apr 7, 2026
5ef858c
Fix: Bump electron version
nico3333fr Apr 7, 2026
8c9478f
Merge branch 'fix-bump-electron-version' into 'main'
Apr 7, 2026
5f9660a
fix: Force breaking long unbreakable link texts
nico3333fr Apr 7, 2026
7fa34b8
Merge branch 'INWEB-877-force-breaking-long-overflowing-links' into '…
Apr 7, 2026
c43c7bb
[DRVWEB-5283] Allow sharing from subfolders
Apr 7, 2026
c848773
Merge branch 'fix/DRVWEB-5283-allow-sharing-in-subfolders' into 'main'
Apr 7, 2026
e8fd2fc
Bump Vite version
nico3333fr Apr 7, 2026
c1ed588
Merge branch 'fix/bump-vite-version' into 'main'
Apr 7, 2026
806d33f
Update meet/booking spotlight condition in Mail
flavienbonvin Apr 2, 2026
41f8f8d
Update copy of booking spotlight in calendar
flavienbonvin Apr 2, 2026
23a6955
Update copy of the spotlights
flavienbonvin Apr 7, 2026
ffdd7fb
Merge branch 'BOOK-394-tweak-booking-spotlights' into 'main'
Apr 7, 2026
6343162
Idteam 1.36.0 apply
nguyenkims Apr 7, 2026
f6e19e7
Merge branch 'IDTEAM-1.36.0-apply' into 'main'
Apr 7, 2026
d0c5c56
[IDTEAM-4634] Items member count badge adapts to big numbers
Swiip Apr 3, 2026
a9787c7
Merge branch 'IDTEAM-4634-members-badge' into 'main'
Apr 7, 2026
4f8df71
[VPNB2B-56] Add a Visibility tracker component and hook to receive ca…
asieraduriz Apr 7, 2026
a9d8fd3
Merge branch 'VPNB2B-56--visibility-component' into 'main'
Apr 7, 2026
6bf9d23
VPNPLG-39 Refactor TV input screen
Apr 7, 2026
4f5274f
Merge branch 'VPNPLG-39-refactor-input-for-tv-code-introduction' into…
Apr 7, 2026
4e1b025
[DRVWEB-5295] fix upload folder in empty folder
Apr 7, 2026
17af2af
Merge branch 'DRVWEB-5295-fix-upload-folder-in-new-folder' into 'main'
Apr 7, 2026
c94ede1
[DRVWEB-5292] fix retry not working after cancel
Apr 7, 2026
5ad8d88
Merge branch 'DRVWEB-5292-fix-retry-not-working-after-cancel' into 'm…
Apr 7, 2026
40533cc
Fix offline notifications in extension
edvincandon Apr 7, 2026
27e338b
Merge branch 'IDTEAM-offline-ext-vault-creation' into 'main'
Apr 7, 2026
914d263
Fix tooltip import in InputField
StraightOuttaCrompton Mar 30, 2026
83640be
Allow injecting of config into ownership verification calls
StraightOuttaCrompton Apr 1, 2026
5cfe985
Return verification data result from verification initiation
StraightOuttaCrompton Apr 1, 2026
7b899ab
Add hasDecoration props to login renderer
StraightOuttaCrompton Apr 1, 2026
ca181ea
Split totp input fields
StraightOuttaCrompton Apr 1, 2026
a4606fd
Add unauth lost 2fa flow using email/sms to disable 2fa
StraightOuttaCrompton Apr 1, 2026
f467691
Add UnauthLost2FA feature flag
StraightOuttaCrompton Apr 7, 2026
af99546
Merge branch 'unauth-lost-2fa' into 'main'
Apr 7, 2026
f5504ec
Fix BYOE success modal not being shown in onboarding checklist
LeGrosSancho Apr 7, 2026
98b43b7
Merge branch 'P1-432-fix-byoe-success-modal-not-shown-in-onboarding' …
Apr 7, 2026
a9a75f7
KeyTransparency: add Sentry severity level based on error type
Apr 2, 2026
20c4992
Merge branch 'feat/kt-add-sentry-level' into 'main'
Apr 7, 2026
00a4c35
[DRVWEB-5293] Adapt legacy photos recovery to new timeline
HeadFox Apr 7, 2026
63e6027
Merge branch 'DRVWEB-5293-recover-photos' into 'main'
Apr 7, 2026
588a73e
Fix warning log
RayoProton Apr 7, 2026
3078c98
Merge branch 'meet-warning-log' into 'main'
Apr 7, 2026
abf018f
Update OpenPGP.js to v6.3.0 (limit argon2 max memory to 1gb, internal…
Mar 19, 2026
f5b0987
Merge branch 'crypto-update-pmcrypto-8.9.0' into 'main'
Apr 7, 2026
8cb3176
Update certificate transparency log list
Apr 5, 2026
adb774e
Merge branch 'ci-update-ct-list-auto' into 'main'
Apr 8, 2026
56787dd
DRVWEB: Add proxy instrumentation to detect SDK/node mistmatch
Apr 8, 2026
f577814
Merge branch 'DRVWEB-drive-client-detection' into 'main'
Apr 8, 2026
ff3a783
Fix identity email autofill regression
edvincandon Apr 8, 2026
8e8fd2a
Merge branch 'IDTEAM-5935-identity-email-autofill-regression' into 'm…
Apr 8, 2026
8db0b48
show subtitle in firefox as addon not allowed to open about:addons
nguyenkims Apr 7, 2026
b402a9c
Merge branch 'IDTEAM-5859-firefox-configure' into 'main'
Apr 8, 2026
e682058
[DRVWEB-5172] sidebar refactoring
Apr 8, 2026
ae5cf6b
Merge branch 'DRVWEB-5172-sidebar-refactoring' into 'main'
Apr 8, 2026
037548d
[LUMO-477] Add mobile selector for theme button
mateuszszklarek Apr 8, 2026
5ce63f7
Merge branch 'fix/LUMO-477-mobile-selectors' into 'main'
Apr 8, 2026
87821c7
[DRVWEB-5297] Generate .mov thumbnail properly
Apr 8, 2026
4a8e95b
Merge branch 'dotmove-thumbnails' into 'main'
Apr 8, 2026
528ecef
Update Drive SDK to 0.14.4
Apr 8, 2026
2f2e31b
Merge branch 'chore/update-drive-sdk-0-14-4' into 'main'
Apr 8, 2026
7ade0e3
Fix drag and drop into breadcrumb
HeadFox Apr 8, 2026
e407775
Merge branch 'drive/fix-drop-breadcrumb' into 'main'
Apr 8, 2026
f19465a
Add new cancellation modal for feedback first journey
fraser-proton Apr 8, 2026
12026fa
Merge branch 'INWEB-888-confirm-cancellation-UI' into 'main'
Apr 8, 2026
323bd93
Make canLoadRunner async and improve storage checks
flavienbonvin Apr 8, 2026
7ba7cb8
Merge branch 'INWEB-912-improve-storage-limitation-detection' into 'm…
Apr 8, 2026
a25b676
Fix race condition in recording and move participants maps state into…
RayoProton Apr 8, 2026
cb06a5e
Merge branch 'move-set-participants-maps' into 'main'
Apr 8, 2026
39a6081
Fix import modals not being shown in contacts and calendar settings
LeGrosSancho Apr 8, 2026
0c30d36
Merge branch 'P1-433-fix-impot-modals-not-shown-in-contact' into 'main'
Apr 8, 2026
9ab219f
Create a Pass release status scheduled job
Swiip Apr 8, 2026
5f13dd8
Merge branch 'IDTEAM-0000-release-status' into 'main'
Apr 8, 2026
36505af
Add zoom to HEIC preview in browsers other than Safair
Apr 8, 2026
71cf878
Merge branch 'fix/heic-preview-outside-safari' into 'main'
Apr 8, 2026
8e6fc94
Move Zendesk login call to different useEffect
Vijayasingam Apr 8, 2026
1f61938
Merge branch 'move-zendesk-login-mechanism' into 'main'
Apr 8, 2026
9b3df6a
Fix booking upsell condition
LeGrosSancho Apr 8, 2026
b2df0ad
Merge branch 'fix-booking-upsell-condition' into 'main'
Apr 8, 2026
8ab2f8e
Remove "spring sale 2026" offer
Apr 7, 2026
f61bd6d
Merge branch 'chore/delete-spring-sale-2026' into 'main'
Apr 8, 2026
9658e05
Tech: replace manual event loop calls with targeted polling for some …
Apr 8, 2026
7ba16b5
Merge branch 'tech/remove-outdated-usePollEvents' into 'main'
Apr 8, 2026
c8a5137
[VPNB2B-59] Add CollapsibleGroup to Collapsible component
asieraduriz Apr 8, 2026
6f7cd85
Merge branch 'VPNB2B-59--add-collapsible-group' into 'main'
Apr 8, 2026
9b5c2a2
Remove Greenland/Iceland signup page 🧹
lkpch Apr 8, 2026
aebdc68
Merge branch 'P2-2064-remove-greenland-signup-page' into 'main'
Apr 8, 2026
e0a052e
Fix copy button bug in assistant response
Apr 8, 2026
a7f8b70
Merge branch 'LUMO-476-copy-button-bug-fix' into 'main'
Apr 8, 2026
210836f
Added orchestrator for new feedback first cancellation flow
fraser-proton Apr 8, 2026
81f1c68
Merge branch 'INWEB-881-orchestrator-for-feedback-flow' into 'main'
Apr 8, 2026
cf1063d
Improve latex handing and remove markdown formatting for user messages
Apr 8, 2026
d289c1d
Merge branch 'lumo-better-latex-handling' into 'main'
Apr 8, 2026
e0317b1
Refactor: moved billing address error message to SubscriptionSubmitBu…
Apr 8, 2026
923ede8
Merge branch 'refactor/move-zipcode-error' into 'main'
Apr 8, 2026
5d2f16e
Group: implement new design for Group Page
Apr 8, 2026
a4d91dc
Merge branch 'adminrole/new-group-design' into 'main'
Apr 8, 2026
b4602b8
Pass uid instead of object to prevent infinite re-render on sidebar
HeadFox Apr 8, 2026
ea012f8
Merge branch 'drive/fix-infinite-rerender-sidebar' into 'main'
mmso Apr 8, 2026
41eefc6
Downgrade react-router-dom to same as used in account
mmso Apr 8, 2026
e792917
Update tv container not signed in to take paths
mmso Apr 8, 2026
8258c7b
Merge branch 'fix-vpn-tv' into 'main'
mmso Apr 8, 2026
6948cdf
[VPNB2B-57] Add telemetry events
asieraduriz Apr 7, 2026
d254c82
Merge branch 'VPNB2B-57--add-telemetry-events' into 'main'
Apr 8, 2026
c64ef95
Fix subscription change updating organization
mmso Apr 8, 2026
c2c888d
Merge branch 'fix-subscription-update' into 'main'
Apr 8, 2026
11fb980
i18n(calendar): update translations from crowdin 8152bb0e47
Apr 9, 2026
4f53b76
i18n(mail): update translations from crowdin fd7a85e144
Apr 9, 2026
507b1f8
i18n(drive): update translations from crowdin de01f41966
Apr 9, 2026
06d9d8a
i18n(account): update translations from crowdin a8af57a4c9
Apr 9, 2026
abbeaf8
i18n(vpn-settings): update translations from crowdin 846c0d8bc5
Apr 9, 2026
71c3937
i18n(verify): update translations from crowdin a1bf568c82
Apr 9, 2026
f46263e
i18n(pass): update translations from crowdin 7d44ec4dd5
Apr 9, 2026
0860c83
i18n(pass-web): update translations from crowdin 1e2f50512c
Apr 9, 2026
2d16b24
i18n(pass-desktop): update translations from crowdin 9d45914cfe
Apr 9, 2026
a96b0df
i18n(wallet): update translations from crowdin a12f87c386
Apr 9, 2026
13f88db
i18n(docs): update translations from crowdin 7012278bb2
Apr 9, 2026
886f3d0
i18n(docs-editor): update translations from crowdin 993ab97da9
Apr 9, 2026
001f4ec
i18n(lumo): update translations from crowdin 48098b1ad6
Apr 9, 2026
029a0c4
i18n(meet): update translations from crowdin fc93620fe8
Apr 9, 2026
eb4d171
Merge branch 'translations_2026-04-09_050336_bee48a63' into 'main'
Apr 9, 2026
ddc7f51
[DRVWEB-5338] Pass correct drive inside photos/album section for sharing
HeadFox Apr 9, 2026
ea9f97a
Merge branch 'DRVWEB-5338-public-image-shared-albun' into 'main'
Apr 9, 2026
3d30870
[DRVWEB-5305] fix scrolling visible after collapse
Apr 9, 2026
dc8f898
Merge branch 'DRVWEB-5305-fix-scrolling-visible-after-collapse' into …
Apr 9, 2026
f99c984
Adding free Mail signup variants for experiment
fraser-proton Apr 9, 2026
68fa390
Merge branch 'INWEB-661' into 'main'
Apr 9, 2026
b8f5344
DRVWEB-5324: Handle gracefully abort errors in invitation loader
Apr 9, 2026
6f81edd
Merge branch 'DRVWEB-sharedwith-meloading-invite' into 'main'
Apr 9, 2026
0465046
Preapprove @ proton and @ protontech npm packages in yarnrc
Apr 9, 2026
c56135b
Merge branch 'DRVWEB-allowlist-search-foundation-in-Clients' into 'main'
Apr 9, 2026
4e17785
AdminRole: Show "Roles and permissions" tab inside SubUserCreateModal…
Apr 9, 2026
8ec8546
Merge branch 'adminrole/user-page/002-implement-modal-tab-header' int…
Apr 9, 2026
a91e97b
Make the zoom feature flag a kill switch
flavienbonvin Apr 2, 2026
9a4d63f
Remove Zoom integration flag usage in calendar main container
flavienbonvin Apr 9, 2026
6a20cce
Merge branch 'zoom-kill-switch' into 'main'
Apr 9, 2026
727215d
Improve condition to show upsell icon
LeGrosSancho Apr 9, 2026
32905b0
Merge branch 'BOOK-398-hide-upsell-icon-for-meet-pro' into 'main'
Apr 9, 2026
7c779dc
Unauthed reset password flow with state machine
Vijayasingam Apr 9, 2026
e1331f7
Merge branch 'unauthed-forgot-password-with-better-state-machine' int…
Apr 9, 2026
dbc8541
[BOOK-401] Removed busy slots from Lumo, Meet and VPN Pass bundle
Apr 8, 2026
4f47d90
Merge branch 'BOOK-401' into 'main'
Apr 9, 2026
684dbac
Lumo guest sidebar bug fix
Apr 9, 2026
44cd327
Merge branch 'lumo/guest-sidebar-crash-bug-fix' into 'main'
Apr 9, 2026
451614f
AdminRoles: fetch user roles and permissions on app load
Apr 9, 2026
1015e27
Merge branch 'user-permission/fetch-current-user-roles-and-permission…
Apr 9, 2026
c86c993
Fallback to main currency in the bookings upsell
flavienbonvin Apr 9, 2026
3c6e2aa
Update the currency un the copy
flavienbonvin Apr 9, 2026
21fb176
Merge branch 'BOOK-403-fallback-main-currency' into 'main'
Apr 9, 2026
9bfa7f7
Dark mode fix
shreya8040 Apr 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
8 changes: 8 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,11 @@ trim_trailing_whitespace = false
[*.scss]
indent_size = 2
indent_style = tab

[tests/mail-renderer/public/**]
trim_trailing_whitespace = false
insert_final_newline = unset
indent_style = unset
indent_size = unset
end_of_line = unset
charset = unset
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ tsconfig.tsbuildinfo
.netlify
storybook-static
i18n-js
translations.pot
po
coverage
lib-cov
Expand Down
25 changes: 25 additions & 0 deletions .grype.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,31 @@ ignore:
name: golang.org/x/crypto
type: go-module
version: v0.0.0-20220829220503-c86fa9a7ed90
- vulnerability: CVE-2025-68121
package:
name: stdlib
type: go-module
version: go1.15.5
- vulnerability: CVE-2025-68121
package:
name: stdlib
type: go-module
version: go1.18.8
- vulnerability: CVE-2025-68121
package:
name: stdlib
type: go-module
version: go1.24.5
- vulnerability: CVE-2025-22871
package:
name: stdlib
type: go-module
version: go1.18.8
- vulnerability: CVE-2025-22871
package:
name: stdlib
type: go-module
version: go1.15.5
- vulnerability: CVE-2024-24790
package:
name: stdlib
Expand Down
1 change: 1 addition & 0 deletions .margebot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ fastTrack:
- djankovic
- aharwara
- pchiabre
- vthanase
forbiddenTags:
- state::Blocked
ciFailFast: true
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ packages/styles/scss/**/_index.scss
packages/wasm/**/*
tests/account/poms/LoginPage/challenge.html
tests/mail-renderer/tests/**/*.html
tests/mail-renderer/public/**
tests/pass/extension/**/*
tests/pass/hars/**/*

Expand Down
942 changes: 0 additions & 942 deletions .yarn/releases/yarn-4.12.0.cjs

This file was deleted.

940 changes: 940 additions & 0 deletions .yarn/releases/yarn-4.13.0.cjs

Large diffs are not rendered by default.

11 changes: 10 additions & 1 deletion .yarnrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ nodeLinker: node-modules
plugins:
- path: .yarn/plugin-postinstall.js

yarnPath: .yarn/releases/yarn-4.12.0.cjs
yarnPath: .yarn/releases/yarn-4.13.0.cjs

npmPublishRegistry: https://nexus.protontech.ch/repository/web-npm/

Expand All @@ -17,6 +17,13 @@ npmScopes:
npmAuthToken: '${CI_JOB_TOKEN:-}'
proton-meet:
npmRegistryServer: 'https://nexus.protontech.ch/repository/meet-npm/'
proton:
npmRegistryServer: 'https://nexus.protontech.ch/repository/foundation-npm/'

npmPreapprovedPackages:
- '@proton/*'
- '@protontech/*'
- vite@8.0.5

npmAuditIgnoreAdvisories:
# Ignore advisories for xlsx package. This package is depended on by a third-party library rowsncolumns (docs)
Expand All @@ -25,3 +32,5 @@ npmAuditIgnoreAdvisories:
- 1108111

compressionLevel: mixed

npmMinimalAgeGate: 3d
17 changes: 17 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ This project is a monorepo hosting the Proton web clients. It includes the web a
- <img src="./applications/pass/src/favicon.svg" style="vertical-align: middle" height="20" width="20" /> <span style="vertical-align: middle; display: inline-block">Proton Pass</span>
- <img src="./applications/wallet/src/favicon.svg" style="vertical-align: middle" height="20" width="20" /> <span style="vertical-align: middle; display: inline-block">Proton Wallet</span>
- <img src="./applications/lumo/src/favicon.svg" style="vertical-align: middle" height="20" width="20" /> <span style="vertical-align: middle; display: inline-block">Proton Lumo</span>
- <img src="./applications/meet/src/favicon.svg" style="vertical-align: middle" height="20" width="20" /> <span style="vertical-align: middle; display: inline-block">Proton Meet</span>

Technically, this monorepo is based on Yarn & Yarn Workspaces, with unified versioning for all packages inside.

Expand Down Expand Up @@ -43,6 +44,22 @@ yarn workspace proton-mail start

For additional details on how to interact with the monorepo, see the [yarn docs](https://yarnpkg.com/) for reference.

## How VPN app differs from the rest

VPN is present in both proton.me and protonvpn.com. However, they are served differently. Some parts of VPN are shared, hosted within `@proton/components` or `@proton/shared`, however, the entry points to them are different.

For protonvpn.com, the entry point comes from `applications/vpn-settings` and for account.proton.me/u/{X}/vpn, the entry point is `applications/account`.

Since both domains are separate, we don't share a local SSO between them. Therefore, we need to serve both applications separately:

```shell
# To serve VPN through vpn-settings
yarn workspace --port 8050 proton-vpn-settings start

# To serve VPN through account
yarn start-all --applications "proton-account"
```

## How to version an application manually

While being on the `main` branch for a clean release.
Expand Down
12 changes: 11 additions & 1 deletion applications/account/eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
import { defineConfig } from 'eslint/config';

import config from '@proton/eslint-config-proton/all';

export default config;
export default defineConfig([
config,
{
rules: {
// TODO: Remove this rule once the cycle dependency is fixed
'import/no-cycle': 'off',
},
},
]);
2 changes: 1 addition & 1 deletion applications/account/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ module.exports = {
moduleDirectories: ['<rootDir>/node_modules', 'node_modules'],
testEnvironment: '@proton/jest-env',
transformIgnorePatterns: [
'node_modules/(?!(@proton/shared|@proton/components|@protontech/telemetry|@protontech/mutex-browser|pmcrypto|openpgp|@openpgp/web-stream-tools|@protontech/bip39|emoji-mart)/)',
'node_modules/(?!(@proton/shared|@proton/components|@protontech/telemetry|@protontech/mutex-browser|pmcrypto|openpgp|@openpgp/web-stream-tools|@protontech/bip39|emoji-mart|@preact/signals-core|@scure/base)/)',
],
transform: {
'^.+\\.(ts|js|mjs)x?$': [
Expand Down
6 changes: 6 additions & 0 deletions applications/account/jest.setup.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ import '@proton/testing/lib/mockUnleash';
// console.error = () => {};
// console.warn = () => {};

window.ResizeObserver = jest.fn().mockImplementation(() => ({
observe: jest.fn(),
unobserve: jest.fn(),
disconnect: jest.fn(),
}));

// Do not start crypto worker pool, let the single tests setup/mock the CryptoProxy as needed
jest.mock('@proton/shared/lib/helpers/setupCryptoWorker', () => ({
__esModule: true,
Expand Down
2 changes: 1 addition & 1 deletion applications/account/locales/.locale-state.metadata
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"project": "fe-account",
"locale": "640fe4f4810d886da1f34a82ffaf1dd7f303cfee"
"locale": "a8af57a4c97f0bd4eaca1f627384dca50e57d856"
}
Loading