Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1419 commits
Select commit Hold shift + click to select a range
77d16ea
Fix: add Accuracy enum to expo-location mock in jest setup
MelvinBot Mar 13, 2026
deb129f
Fix: remove global expo-location mock that broke Accuracy imports
MelvinBot Mar 13, 2026
67758b9
Revert unrelated test changes to IOURequestStepConfirmationPageTest
MelvinBot Mar 13, 2026
d8298e1
Add expo-location jest mock to fix test suite failures
MelvinBot Mar 13, 2026
d9dbcff
Use custom CameraFlip icon for camera flip button
MelvinBot Mar 17, 2026
2e1a94f
Fix: compress SVG and format with Prettier
MelvinBot Mar 17, 2026
6c5cf89
Add HeaderWithBackButton to camera modal for clean close navigation
MelvinBot Mar 19, 2026
d943bab
Fix typecheck: add required reasonAttributes to ActivityIndicator usage
MelvinBot Mar 19, 2026
9d61c41
Revert unrelated changes to ReportUtils.ts and reportAttributes.ts
MelvinBot Mar 19, 2026
9ed186d
Use CONST.RECEIPT.PHOTO_ASPECT_RATIO for camera aspect ratio
MelvinBot Mar 24, 2026
60d7999
Remove unnecessary useCallback from launchInAppCamera, handleCameraCa…
MelvinBot Mar 24, 2026
abd7811
Fix: add missing ONYXKEYS.COLLECTION.REPORT_VIOLATIONS and ReportViol…
MelvinBot Mar 29, 2026
1ee74d3
Revert all ReportUtils changes and dependent reportAttributes changes
MelvinBot Mar 29, 2026
a0f58c8
Merge remote-tracking branch 'origin/claude-useVisionCameraForAttachm…
MelvinBot Mar 29, 2026
34cee68
Revert ONYXKEYS.ts changes (remove REPORT_VIOLATIONS collection key)
MelvinBot Mar 29, 2026
cf1293a
Revert types/onyx changes (remove ReportViolations type)
MelvinBot Mar 29, 2026
0882c50
Revert expo-location mock from jest/setup.ts
MelvinBot Mar 29, 2026
26d129e
Merge branch 'main' of github.com:mananjadhav/App into 83364-mj-keybo…
mananjadhav Mar 29, 2026
129a490
Merge branch 'Expensify:main' into feat/82794
truph01 Mar 30, 2026
2fe3d87
fix missing params
bernhardoj Mar 30, 2026
bdc91c6
fix: arrow button on report carousel is larger than the left arrow
daledah Mar 30, 2026
d114cbd
Merge branch 'main' into refactor/66418-remove-deprecatedReportsTrans…
linhvovan29546 Mar 30, 2026
0d3cdc7
Use MIN_AGE_FOR_PAYMENT for DOB form in Profile > Private
MelvinBot Mar 30, 2026
ffc4e1f
Part 12 - Thread betas through createTransactionThreadReport and its …
Krishna2323 Mar 30, 2026
c261884
add tests.
Krishna2323 Mar 30, 2026
7d3342c
add missing dependency.
Krishna2323 Mar 30, 2026
ae50c1e
fix test.
Krishna2323 Mar 30, 2026
29910ea
Merge pull request #84853 from truph01/feat/82794
lakchote Mar 30, 2026
400baff
Merge remote-tracking branch 'origin/main' into perf/split-indicator-…
TMisiukiewicz Mar 30, 2026
8645978
Merge branch 'main' of github.com:callstack-internal/Expensify-App in…
LukasMod Mar 30, 2026
22f3fef
fix back arrow style in money request preview content
daledah Mar 30, 2026
61b05d6
fix merge issue
MarioExpensify Mar 30, 2026
63169e1
address PR comments
TMisiukiewicz Mar 30, 2026
8b97388
Merge pull request #86503 from Expensify/claude-fixNextStepYouDisplay…
srikarparsi Mar 30, 2026
3fdf0b8
Merge pull request #85034 from huult/83368-migrate-REPORT_SETTINGS_NAME
mjasikowski Mar 30, 2026
84815b8
Merge pull request #80122 from annaweber830/fix-76923
lakchote Mar 30, 2026
2cc2153
map more csv column names, fix feed type mismatch with web-e
MarioExpensify Mar 30, 2026
90ec055
fix: rename
truph01 Mar 30, 2026
e6f503b
rename SORTED_REPORT_ACTIONS to RAM_ONLY_SORTED_REPORT_ACTIONS
JKobrynski Mar 30, 2026
cabc43c
Merge remote-tracking branch 'origin/main' into JKobrynski/feat/80091…
JKobrynski Mar 30, 2026
d3696b0
Merge branch 'main' into paulnjs-fix/80486
paulnjs Mar 30, 2026
78a8ef0
update code
paulnjs Mar 30, 2026
d6bc579
fix lint
paulnjs Mar 30, 2026
be6935e
fix: restore minHeight and split ancestors to match main
adhorodyski Mar 30, 2026
86f1ce5
Remove dead downloadErrorModal code from MoneyRequestHeader
TMisiukiewicz Mar 30, 2026
91890aa
refactor code
paulnjs Mar 30, 2026
d5a66b7
Merge branch 'main' into paulnjs-fix/72076-part-2
paulnjs Mar 30, 2026
9a30645
Merge branch 'main' into paulnjs-fix/80294
paulnjs Mar 30, 2026
9941ac2
use correctly server data
narefyev91 Mar 30, 2026
cc421f2
Merge branch 'refs/heads/main' into feed-selector--new-look
narefyev91 Mar 30, 2026
6f10e79
fix lint
narefyev91 Mar 30, 2026
36a5abf
perf: remove redundant reportNameValuePairs collection subscription f…
BartekObudzinski Mar 30, 2026
c909f73
Merge pull request #82451 from whiletrace/dev#82036
JS00001 Mar 30, 2026
6bb17bf
Merge pull request #81808 from TaduJR/fix-Workspace-Creating-workspac…
justinpersaud Mar 30, 2026
48dca4e
fix condition
narefyev91 Mar 30, 2026
ac593ef
Merge pull request #86607 from shubham1206agra/refactor-getPolicy-19
justinpersaud Mar 30, 2026
239b079
fix: memoize derivations in ReportActionCompose to prevent render cas…
adhorodyski Mar 30, 2026
91f9d45
Merge remote-tracking branch 'exfy/main' into decompose/self-subscrib…
adhorodyski Mar 30, 2026
f20e7e9
Merge pull request #86629 from Krishna2323/krishna2323/issue/66417-2.12
rlinoz Mar 30, 2026
ea46233
Revert "[Perf] Scope REPORT_ACTIONS subscription to per-row level in …
cristipaval Mar 30, 2026
9308c3b
Revert "Multi file upload support (v2)"
MonilBhavsar Mar 30, 2026
2c24639
Revert "performance: Always mount `SplashScreenHider` and control hid…
war-in Mar 30, 2026
0e720e3
Extract shared navigateToSubscriptionPayment helper
adamgrzybowski Mar 30, 2026
07c8b77
Merge pull request #86295 from dukenv0307/fix/66412-part-4
mollfpr Mar 30, 2026
cc81a3f
remove unused type cast, use getFeedType to generate feed layout type
MarioExpensify Mar 30, 2026
c2a4815
Merge pull request #86475 from Expensify/claude-addAbsoluteFillToAtta…
Gonals Mar 30, 2026
48135b6
correct conditions
narefyev91 Mar 30, 2026
f14a2a0
Fix: navigate forward after domain email validation when no joinable …
MelvinBot Mar 30, 2026
a120e72
merge main
dukenv0307 Mar 30, 2026
4f99594
resolve comments
dukenv0307 Mar 30, 2026
e99022e
Merge branch 'main' into fix/66411-part-16
dukenv0307 Mar 30, 2026
396b7da
fix: memoize derivations in ReportActionsView to prevent render cascade
adhorodyski Mar 30, 2026
fcb4e37
Merge pull request #86596 from nyomanjyotisa/issue-82461
arosiclair Mar 30, 2026
b449f39
merge main
dukenv0307 Mar 30, 2026
6c59afd
Add forceReplace: true and remove backTo from post-verification navig…
MelvinBot Mar 30, 2026
ae27f75
lint fix
dukenv0307 Mar 30, 2026
4f9538d
Pass ROUTES.ONBOARDING_PERSONAL_DETAILS.getRoute() as backTo param fo…
MelvinBot Mar 30, 2026
c460a3b
test fix
dukenv0307 Mar 30, 2026
4b0d1f2
Merge pull request #84551 from dmkt9/fix/73390-split-transaction
luacmartins Mar 30, 2026
174c269
fix: restore offlineIndicatorContainer wrapper for bottom padding in …
adhorodyski Mar 30, 2026
f158266
merge main
dukenv0307 Mar 30, 2026
6ab5d99
Merge pull request #84889 from callstack-internal/feed-selector--new-…
madmax330 Mar 30, 2026
d481c7b
Merge remote-tracking branch 'origin/main' into claude-fixTravelWebvi…
MelvinBot Mar 30, 2026
58c311a
Merge pull request #86305 from Expensify/claude-hideEmptyDescriptionI…
dangrous Mar 30, 2026
cb8b1be
Merge pull request #86598 from wildan-m/wildan/86235-search-text-fiel…
chuckdries Mar 30, 2026
cf3f60d
add more test
dukenv0307 Mar 30, 2026
1fec499
Merge pull request #86625 from daledah/follow-up/76292
JS00001 Mar 30, 2026
3191d03
Merge pull request #86119 from callstack-internal/decompose/self-subs…
rlinoz Mar 30, 2026
e6cde7a
Merge pull request #86051 from shubham1206agra/lazy-icons-hook-const-…
roryabraham Mar 30, 2026
605ce70
Merge remote-tracking branch 'origin' into fix/83563
mukhrr Mar 30, 2026
71ea695
Merge pull request #86356 from Expensify/claude-fixTravelWebviewBotto…
lakchote Mar 30, 2026
207fd1d
make it pretty
parasharrajat Mar 30, 2026
6b19bf6
Merge branch 'Expensify:main' into fix/66449-rename-to-ownerBillingGr…
truph01 Mar 30, 2026
14e24ce
Add NAVIGATORS.WORKSPACE_NAVIGATOR
WojtekBoman Mar 26, 2026
c0689da
Switch to the correct workspace tab screen
WojtekBoman Mar 26, 2026
4d5ed14
Fix workspaces navigator types and tests
WojtekBoman Mar 27, 2026
847902c
Fix goBack tests related to WorkspacesNavigator
WojtekBoman Mar 27, 2026
0dba847
Remove useEnableBackAnimationWhenOpenedFromTabBar
WojtekBoman Mar 27, 2026
a450906
Add comment to usePreloadFullScreenNavigators
WojtekBoman Mar 27, 2026
1897faa
Rename WorkspacesNavigator to WorkspaceNavigator everywhere
WojtekBoman Mar 27, 2026
127568e
Fix showing tab bar when navigating back to workspaces list from rhp
WojtekBoman Mar 30, 2026
fe42007
Adjust popToSidebar to handle WorkspacesNavigator
WojtekBoman Mar 30, 2026
ecade24
Enable swipe-back from WorkspaceInitialPage and DomainInitialPage on …
WojtekBoman Mar 30, 2026
6978246
Merge branch 'main' into mario-createCsvCompanyCards
MarioExpensify Mar 30, 2026
aacfd01
Merge main
shubham1206agra Mar 30, 2026
5ad2086
Adjust tests to WorkspaceNavigator
WojtekBoman Mar 30, 2026
04db3d1
Merge pull request #81814 from paulnjs/paulnjs-fix/80294
blimpich Mar 30, 2026
40310ae
Merge pull request #82232 from paulnjs/paulnjs-fix/72076-part-2
neil-marcellini Mar 30, 2026
427eca6
Merge pull request #86438 from software-mansion-labs/workspaces-navig…
luacmartins Mar 30, 2026
f805a16
Merge pull request #86141 from Expensify/claude-fixDocumentTitlePersi…
robertjchen Mar 30, 2026
592d242
Merge pull request #74570 from TaduJR/feat-ORTF-Auto-reporting-frequency
Valforte Mar 30, 2026
50cf9ce
Merge pull request #86515 from callstack-internal/eliran/sentry-addin…
roryabraham Mar 30, 2026
ef6ac90
Merge pull request #86628 from Expensify/claude-fixDobFormDefaultDate
Valforte Mar 30, 2026
af10986
Merge pull request #84857 from dmkt9/fix/81606
Valforte Mar 30, 2026
63755a1
Merge pull request #86591 from Expensify/francois-fix-drag-drop
yuwenmemon Mar 30, 2026
f9019c2
Merge pull request #86656 from Expensify/claude-fixStuckOnVerifyDomai…
youssef-lr Mar 30, 2026
899e101
Merge pull request #85467 from Expensify/chuckdries/fix-addressProvince
blimpich Mar 30, 2026
14c3b36
Update version to 9.3.50-3
OSBotify Mar 30, 2026
f4b3188
Update Mobile-Expensify submodule version to 9.3.50-3
OSBotify Mar 30, 2026
e1349c1
Merge pull request #84369 from bernhardoj/chore/79042-refactor-global…
arosiclair Mar 30, 2026
7079714
Merge pull request #84679 from Expensify/claude-fixSearchFilterTagsCa…
chuckdries Mar 30, 2026
4621b49
Merge pull request #84756 from callstack-internal/feauture/bulk-edit-…
marcaaron Mar 30, 2026
a2ce534
Merge remote-tracking branch 'origin/main' into revert-85570-fix/83782
marcaaron Mar 30, 2026
4e02218
Merge pull request #80020 from TaduJR/feat-Update-option-missing-for-…
chuckdries Mar 30, 2026
9bed498
Merge pull request #86659 from software-mansion-labs/revert-86226-war…
Julesssss Mar 30, 2026
3a13756
Update version to 9.3.50-4
OSBotify Mar 30, 2026
f26fe42
Update Mobile-Expensify submodule version to 9.3.50-4
OSBotify Mar 30, 2026
bbbddda
Migrate off actions-ecosystem PR helpers; bump actions/checkout to v6
roryabraham Mar 30, 2026
6e485e6
Improve formatting
roryabraham Mar 30, 2026
2aa69b1
Merge pull request #86245 from dukenv0307/fix/66411-part-15
rlinoz Mar 30, 2026
c47937e
fix failing checks.
Krishna2323 Mar 30, 2026
fd4a69e
fix failing tests.
Krishna2323 Mar 30, 2026
0d782df
fix prettier.
Krishna2323 Mar 30, 2026
4343ec1
Merge pull request #85980 from callstack-internal/JKobrynski/feat/800…
roryabraham Mar 30, 2026
f332cfd
Merge pull request #85642 from samranahm/83380/IOURequestStepScan-pha…
roryabraham Mar 30, 2026
79dde5b
Merge pull request #86688 from Krishna2323/krishna2323/issue/86685
marcaaron Mar 30, 2026
afd673a
Merge pull request #86326 from dukenv0307/fix/66407-part-4
roryabraham Mar 30, 2026
1a2abf5
Merge pull request #81736 from parasharrajat/onyx/iou/transaction-1
tgolen Mar 30, 2026
27d6a1d
Merge pull request #86442 from hoangzinh/67786-remove-onyx-connect-st…
tgolen Mar 30, 2026
e573080
Merge remote-tracking branch 'origin/main' into revert-85570-fix/83782
marcaaron Mar 30, 2026
fbac2bb
Add missing isOffline param to unholdRequest
roryabraham Mar 30, 2026
329c402
Merge pull request #86695 from Expensify/Rory-FixTSC
roryabraham Mar 30, 2026
deb45a0
Merge branch 'main' of github.com:Expensify/App into revert-84423-@ch…
jasperhuangg Mar 30, 2026
1720570
Merge remote-tracking branch 'origin/main' into revert-85570-fix/83782
marcaaron Mar 30, 2026
6325d41
Merge pull request #86651 from Expensify/revert-84262-perf/scope-repo…
srikarparsi Mar 30, 2026
8f567bf
Merge pull request #86621 from Expensify/claude-useVisionCameraForAtt…
srikarparsi Mar 30, 2026
d378eb1
Merge pull request #84524 from rayane-d/card-feeds-changelogs
srikarparsi Mar 30, 2026
ef7f3bf
extract camera photo resolution magic numbers into CONST.RECEIPT_CAMERA
marcaaron Mar 30, 2026
4cfe7e7
Merge remote-tracking branch 'origin/main' into marcaaron-androidVisi…
marcaaron Mar 30, 2026
af2b382
Merge pull request #86583 from Expensify/revert-85570-fix/83782
jasperhuangg Mar 31, 2026
cf82d12
Update version to 9.3.50-5
OSBotify Mar 31, 2026
6e4c5e0
Update Mobile-Expensify submodule version to 9.3.50-5
OSBotify Mar 31, 2026
524982f
Revert "fix: android pressability issue with measureAsyncOnUI patch"
jasperhuangg Mar 31, 2026
4170f69
Merge remote-tracking branch 'upstream/main' into 79022-fix-got-it-mo…
huult Mar 31, 2026
248c126
Merge branch 'main' into refactor/66418-remove-deprecatedReportsTrans…
linhvovan29546 Mar 31, 2026
7c38f61
fxi:resolve conflict
linhvovan29546 Mar 31, 2026
cc2c983
resolve conflict
daledah Mar 31, 2026
74e1489
Merge branch 'main' into refactor-getCurrencyDecimals-2
shubham1206agra Mar 31, 2026
1b64166
fix: conflicts
truph01 Mar 31, 2026
77916cb
fix: conflicts
truph01 Mar 31, 2026
b29b31d
fix: lint
truph01 Mar 31, 2026
212ef0d
fix: lint
truph01 Mar 31, 2026
2243bf9
fix: rename userBillingGraceEndPeriods to userBillingGracePeriodEnds
truph01 Mar 31, 2026
2b517db
Merge pull request #86701 from Expensify/revert-86160-claude-fixPress…
jasperhuangg Mar 31, 2026
e7552dc
Merge branch 'main' of github.com:Expensify/App into onyx/tran-3
parasharrajat Mar 31, 2026
2dde792
Merge remote-tracking branch 'origin/main' into perf/split-indicator-…
TMisiukiewicz Mar 31, 2026
229b1c2
Merge pull request #86432 from dukenv0307/fix/66424-part-13
mjasikowski Mar 31, 2026
0ebb8dd
Merge branch 'main' into paulnjs-fix/80486
paulnjs Mar 31, 2026
2963edb
Merge pull request #84825 from mananjadhav/83364-mj-keyboard-shortcut…
mjasikowski Mar 31, 2026
e79cbe8
Merge remote-tracking branch 'origin/main' into perf/remove-nvp-colle…
BartekObudzinski Mar 31, 2026
b078372
Merge pull request #85506 from marufsharifi/fix/reports-saved-search-…
cristipaval Mar 31, 2026
57c1582
Merge pull request #86652 from Expensify/revert-84423-@chrispader/mul…
MonilBhavsar Mar 31, 2026
d771d2d
extract ReportRouteParamHandler from ReportScreen
adhorodyski Mar 27, 2026
c46a8e3
extract ReportRouteParamHandler and ReportLifecycleHandler from Repor…
adhorodyski Mar 31, 2026
2515dd8
Merge pull request #85244 from TaduJR/fix-Screen-Reader-Many-Pages-Th…
inimaga Mar 31, 2026
8c2cfeb
rename ReportLifecycleHandler prop to reportID
adhorodyski Mar 31, 2026
dba75b3
Update version to 9.3.50-6
OSBotify Mar 31, 2026
366b621
Update Mobile-Expensify submodule version to 9.3.50-6
OSBotify Mar 31, 2026
1d6d550
Merge pull request #86505 from bernhardoj/chore/66456-remove-onyx-con…
inimaga Mar 31, 2026
804fb58
merge main
dukenv0307 Mar 31, 2026
a019264
Merge branch 'main' into @adamgrzybowski/free-trial-home-slot
adamgrzybowski Mar 31, 2026
c2c4a22
Remove unnecessary const assertion from useMemoizedLazyIllustrations …
adamgrzybowski Mar 31, 2026
b5220e5
remove dead switchToPreExistingReport listener
adhorodyski Mar 31, 2026
f518d68
Merge branch 'Expensify:main' into decompose/report-screen-6a
adhorodyski Mar 31, 2026
1314980
Merge pull request #85452 from software-mansion-labs/@adamgrzybowski/…
grgia Mar 31, 2026
42eb490
Merge pull request #80636 from Expensify/mario-createCsvCompanyCards
Gonals Mar 31, 2026
7e10758
Merge pull request #86718 from callstack-internal/decompose/report-sc…
rlinoz Mar 31, 2026
9f23526
Merge branch 'main' into perf/split-indicator-checks
TMisiukiewicz Mar 31, 2026
7e82b53
Merge pull request #86230 from callstack-internal/perf/split-indicato…
rlinoz Mar 31, 2026
216a7e0
Merge pull request #86035 from Burhan-Rashid/fix/79631
lakchote Mar 31, 2026
eab18fa
Merge pull request #86250 from dukenv0307/fix/66411-part-16
rlinoz Mar 31, 2026
9451f0d
Update version to 9.3.50-7
OSBotify Mar 31, 2026
61197b5
Update Mobile-Expensify submodule version to 9.3.50-7
OSBotify Mar 31, 2026
89cdc3b
Merge pull request #86296 from linhvovan29546/refactor/66418-remove-d…
Valforte Mar 31, 2026
ffdf453
Merge pull request #86641 from callstack-internal/perf/money-request-…
rlinoz Mar 31, 2026
f69c7cf
Merge pull request #81499 from paulnjs/paulnjs-fix/80486
Valforte Mar 31, 2026
4da47a2
Merge pull request #86036 from parasharrajat/onyx/tran-3
tgolen Mar 31, 2026
f508fd7
Merge pull request #86644 from callstack-internal/perf/remove-nvp-col…
JS00001 Mar 31, 2026
7f10d58
extract ReportFetchController from ReportScreen
adhorodyski Mar 27, 2026
6a7d98f
fix: conflicts
truph01 Mar 31, 2026
7079481
fix: conflicts
truph01 Mar 31, 2026
dd999da
Merge pull request #84477 from mukhrr/fix/83563
rlinoz Mar 31, 2026
b064997
Merge pull request #85503 from dukenv0307/fix/66443-part-7
tgolen Mar 31, 2026
1f6a6c5
fix type check
JS00001 Mar 31, 2026
63d65b4
Merge pull request #86435 from parasharrajat/revert-86352-revert-8173…
tgolen Mar 31, 2026
a33fdac
Merge branch 'Expensify:main' into decompose/report-screen-6b
adhorodyski Mar 31, 2026
5c66531
merge main
truph01 Mar 31, 2026
f4b994c
Merge branch 'main' into refactor-getCurrencyDecimals-2
shubham1206agra Mar 31, 2026
cd8d65e
fix: conflicts
truph01 Mar 31, 2026
b7714a4
Merge pull request #86756 from Expensify/jsenyitko-type
tgolen Mar 31, 2026
679222f
Merge branch 'Expensify:main' into fix/66449-rename-to-ownerBillingGr…
truph01 Mar 31, 2026
cfad7b7
Merge branch 'Expensify:main' into refactor-getCurrencyDecimals-2
shubham1206agra Mar 31, 2026
545edf5
Merge pull request #84951 from Expensify/marcaaron-androidVisionCamer…
Julesssss Mar 31, 2026
346acb3
Merge pull request #86468 from software-mansion-labs/war-in/fix-manua…
Julesssss Mar 31, 2026
f85e60f
Merge pull request #83078 from marufsharifi/fix/expenses-bottom-comme…
marcochavezf Mar 31, 2026
361d265
Merge pull request #86638 from truph01/fix/66449-rename-to-ownerBilli…
tgolen Mar 31, 2026
772013e
Merge pull request #85325 from daledah/follow-up/76690
roryabraham Mar 31, 2026
e179b9f
Merge pull request #86450 from shubham1206agra/knip-audit-1
Julesssss Mar 31, 2026
ac7fe25
Merge pull request #80456 from huult/79022-fix-got-it-modal-not-displ…
blimpich Mar 31, 2026
2aa2909
Merge branch 'Expensify:main' into decompose/report-screen-6b
adhorodyski Mar 31, 2026
472a916
Pass --repo flag to gh pr comment in skipDeploy
roryabraham Mar 31, 2026
e92415b
Update version to 9.3.50-8
OSBotify Mar 31, 2026
3bb58eb
Update Mobile-Expensify submodule version to 9.3.50-8
OSBotify Mar 31, 2026
7a15c7e
Merge main into claude-perDiemRestrictedActionBypass and resolve conf…
MelvinBot Mar 31, 2026
c3a1f00
Merge pull request #86719 from callstack-internal/decompose/report-sc…
rlinoz Mar 31, 2026
7226f61
Remove External label
francoisl Mar 31, 2026
92569ea
Merge pull request #86764 from Expensify/francois-external-label
Julesssss Mar 31, 2026
ad544f6
Merge pull request #86617 from shubham1206agra/refactor-getCurrencyDe…
blimpich Mar 31, 2026
79f2f3a
Merge pull request #86687 from Expensify/Rory-FixGHANodeWarnings
roryabraham Mar 31, 2026
fb5a8a4
Merge pull request #81623 from nkdengineer/fix/80419
marcochavezf Mar 31, 2026
d1c321d
enable Odometer distance expense feature
Julesssss Mar 31, 2026
e5a4a44
Merge pull request #86618 from shubham1206agra/refactor-getCurrencyDe…
blimpich Mar 31, 2026
213a71b
Merge main into claude-fixAccordionButtonA11yState to resolve conflicts
MelvinBot Mar 31, 2026
de3711d
Update version to 9.3.51-0
OSBotify Mar 31, 2026
d641cf8
Update Mobile-Expensify submodule version to 9.3.51-0
OSBotify Mar 31, 2026
eda70c6
Remove stale 034 patch entry and renumber 035 to 034
MelvinBot Mar 31, 2026
8d3b04d
remove unused usePermissions import
Julesssss Mar 31, 2026
50581be
Merge pull request #86769 from Expensify/jules-enableOdometerFeature
francoisl Mar 31, 2026
ae6fbc2
Merge pull request #83811 from samranahm/79767/add-verified-badge
marcochavezf Mar 31, 2026
175103f
Include upstream issue link and remove extra blank line in patch details
MelvinBot Mar 31, 2026
ed1fde7
Merge pull request #86499 from Expensify/claude-fixAccordionButtonA11…
roryabraham Mar 31, 2026
4ba1445
Revert "Merge pull request #80122 from annaweber830/fix-76923"
chuckdries Mar 31, 2026
9a57c32
Revert "Merge pull request #80020 from TaduJR/feat-Update-option-miss…
chuckdries Mar 31, 2026
ebadaa0
Merge pull request #86808 from Expensify/chuckdries/revert-80020
chuckdries Mar 31, 2026
920e563
Fix type error
chuckdries Mar 31, 2026
9a04328
Remove double callback dependency
chuckdries Mar 31, 2026
5f16ac7
Merge pull request #86616 from Expensify/claude-perDiemRestrictedActi…
francoisl Mar 31, 2026
7c573a7
Merge pull request #86802 from Expensify/chuckdries/revert-80122
cead22 Mar 31, 2026
bd815a6
Update version to 9.3.51-1
OSBotify Apr 1, 2026
0a42bcf
Update Mobile-Expensify submodule version to 9.3.51-1
OSBotify Apr 1, 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
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -462,11 +462,11 @@ In all cases, the rule applies to: **new components**, **new features added to e
- The optional prop is used for logic beyond just conditional rendering (e.g., computing derived values, passed to callbacks, used in multiple places within the component)
- The component is a thin wrapper around a platform primitive (e.g., wrapping `TextInput`, `ScrollView`, `Pressable`) — these naturally pass through configuration props
- Items come from **runtime data** (API responses, user-generated content, Onyx collections) — dynamic data must be mapped
- The array is used with **list components** (e.g., `FlatList`, `SectionList`, or custom wrappers) — these require data arrays by design
- The array is used with **list components** (e.g., `FlatList`, or custom wrappers) — these require data arrays by design
- Items are truly **homogeneous** (same shape, same behavior, only values differ) and the count is **unbounded** (e.g., list of chat messages, search results)
- The array is a **framework requirement** (e.g., React Navigation screen config, form validation rules)
- The `ReactNode` prop is `children` itself — `children` is the foundation of composition, not configuration
- The render function is a **list component callback** (`renderItem` on `FlatList`, `SectionList`, `DraggableList`) — these are framework requirements
- The render function is a **list component callback** (`renderItem` on `FlatList`, `DraggableList`) — these are framework requirements
- The render function receives **per-item runtime data** from a dynamic collection (e.g., `renderSuggestionMenuItem(item, index)`) — this is list-style rendering, not slot configuration

**Search Patterns** (hints for reviewers):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ title: No spread in list item's renderItem

Flag ONLY when ALL of these are true:

- Code is inside a renderItem function (function passed to FlatList, SectionList, etc.)
- Code is inside a renderItem function (function passed to FlatList, etc.)
- A spread operator (...) is used on an object
- That object is being passed as a prop to a component
- The spread creates a NEW object literal inline
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/Standard.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: Standard issue template
about: A standard template to follow when creating a new issue in this repository
labels: Bug, Daily, External
labels: Bug, Daily
---

If you haven’t already, check out our [contributing guidelines](https://github.com/Expensify/ReactNativeChat/blob/main/contributingGuides/CONTRIBUTING.md) for onboarding and email contributors@expensify.com to request to join our Slack channel!
Expand Down
66 changes: 66 additions & 0 deletions .github/actions/composite/getMergedPullRequest/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Get merged pull request
description: Given the current push event's commit SHA, finds the pull request that was merged to produce it.

inputs:
github_token:
description: GitHub token used to call the API
required: true

outputs:
number:
description: The PR number
value: ${{ steps.getMergedPR.outputs.number }}
title:
description: The PR title
value: ${{ steps.getMergedPR.outputs.title }}
body:
description: The PR body
value: ${{ steps.getMergedPR.outputs.body }}
labels:
description: Newline-separated label names
value: ${{ steps.getMergedPR.outputs.labels }}
assignees:
description: Newline-separated assignee logins
value: ${{ steps.getMergedPR.outputs.assignees }}

runs:
using: composite
steps:
- name: Find merged pull request for this commit
id: getMergedPR
shell: bash
run: |
RESP=$(gh api -H "Accept: application/vnd.github+json" "/repos/${GITHUB_REPOSITORY}/commits/${GITHUB_SHA}/pulls")

# Prefer the PR whose merge_commit_sha matches exactly (parity with the old action)
PR=$(echo "$RESP" | jq -c "first(.[] | select(.merge_commit_sha == \"${GITHUB_SHA}\"))" 2>/dev/null)

# Fall back to the first merged PR associated with this commit
if [[ -z "$PR" || "$PR" == "null" ]]; then
PR=$(echo "$RESP" | jq -c 'first(.[] | select(.merged_at != null))' 2>/dev/null)
fi

if [[ -z "$PR" || "$PR" == "null" ]]; then
echo "::warning::No merged pull request found for commit ${GITHUB_SHA}"
exit 0
fi

{
echo "number=$(echo "$PR" | jq -r '.number')"
echo "title=$(echo "$PR" | jq -r '.title')"

echo "body<<GETMPR_EOF"
echo "$PR" | jq -r '.body // ""'
echo "GETMPR_EOF"

echo "labels<<GETMPR_LABELS_EOF"
echo "$PR" | jq -r '[.labels[].name] | join("\n")'
echo "GETMPR_LABELS_EOF"

echo "assignees<<GETMPR_ASSIGNEES_EOF"
echo "$PR" | jq -r '[.assignees[].login] | join("\n")'
echo "GETMPR_ASSIGNEES_EOF"

} >> "$GITHUB_OUTPUT"
env:
GITHUB_TOKEN: ${{ inputs.github_token }}
2 changes: 1 addition & 1 deletion .github/workflows/androidBump.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
android_bump:
runs-on: blacksmith-2vcpu-ubuntu-2404
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Setup Node
uses: ./.github/actions/composite/setupNode
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/authorChecklist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ jobs:
&& github.actor != 'imgbot[bot]'
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: authorChecklist.ts
uses: ./.github/actions/javascript/authorChecklist
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/checkSVGCompression.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ jobs:
runs-on: blacksmith-2vcpu-ubuntu-2404
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Setup Node
uses: ./.github/actions/composite/setupNode
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/cherryPick.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,8 @@ jobs:

# v4
- name: Checkout target branch
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
ref: ${{ inputs.TARGET }}
token: ${{ secrets.OS_BOTIFY_TOKEN }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/claude-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
PR_NUMBER: ${{ github.event.pull_request.number }}
steps:
- name: Checkout repository
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
fetch-depth: 1

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/createDeployChecklist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ jobs:
runs-on: blacksmith-2vcpu-ubuntu-2404
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Setup Node
uses: ./.github/actions/composite/setupNode
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/createNewVersion.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,8 +53,8 @@ jobs:
GITHUB_TOKEN: ${{ github.token }}

- name: Check out
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
ref: main
submodules: true
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ jobs:
IOS_VERSION: ${{ steps.getIOSVersion.outputs.IOS_VERSION }}
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
token: ${{ secrets.OS_BOTIFY_TOKEN }}
submodules: true
Expand Down Expand Up @@ -641,8 +641,8 @@ jobs:
needs: [androidBuild, androidUploadGooglePlay, androidUploadBrowserStack, androidUploadApplause, androidSubmit, iosBuild, iosUploadTestflight, iosUploadBrowserStack, iosUploadApplause, iosSubmit, webBuild, webDeploy]
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Post Slack message on failure
uses: ./.github/actions/composite/announceFailedWorkflowInSlack
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/deployBlocker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ jobs:
runs-on: blacksmith-2vcpu-ubuntu-2404
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Give the issue/PR the Hourly, Engineering labels
run: gh issue edit ${{ github.event.issue.number }} --add-label 'Engineering,Hourly' --remove-label 'Daily,Weekly,Monthly'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/deployBlockerInvestigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
ISSUE_URL: ${{ github.event.issue.html_url || inputs.ISSUE_URL }}
steps:
- name: Checkout App repository
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
fetch-depth: 1

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/deployExpensifyHelp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ jobs:
continue-on-error: true
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
fetch-depth: 0

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/deployNewHelp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ jobs:
# We start by checking out the entire repo into a clean build environment within
# the Github Action
- name: Checkout code
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

# Set up Ruby and run bundle install inside the /help directory
- name: Set up Ruby
Expand Down Expand Up @@ -97,7 +97,7 @@ jobs:
- name: Get merged pull request
if: ${{ github.event_name == 'push' }}
id: getMergedPullRequest
uses: actions-ecosystem/action-get-merged-pull-request@59afe90821bb0b555082ce8ff1e36b03f91553d9
uses: ./.github/actions/composite/getMergedPullRequest
with:
github_token: ${{ github.token }}

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/failureNotifier.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ jobs:
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Process Failed Jobs
uses: ./.github/actions/javascript/failureNotifier
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/finishReleaseCycle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
isValid: ${{ fromJSON(steps.isDeployer.outputs.IS_DEPLOYER) && !fromJSON(steps.checkDeployBlockers.outputs.HAS_DEPLOY_BLOCKERS) }}
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
ref: main
token: ${{ secrets.OS_BOTIFY_TOKEN }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/formatCodeCovComment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
if: github.event.issue.pull_request && github.event.comment.user.login == 'codecov[bot]'
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- name: Format CodeCov Comment
uses: ./.github/actions/javascript/formatCodeCovComment
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/generateTranslations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,9 @@ jobs:
env:
GITHUB_TOKEN: ${{ github.token }}

# v4
# v6
- name: Checkout
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
ref: ${{ steps.pr-data.outputs.HEAD_SHA }}

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/lint-changed.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ jobs:
REPO: ${{ github.repository }}

- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
fetch-depth: ${{ fromJSON(steps.count.outputs.count) }}

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ jobs:
runs-on: blacksmith-4vcpu-ubuntu-2404
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Setup Node
uses: ./.github/actions/composite/setupNode
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/lockDeploys.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ jobs:
runs-on: blacksmith-4vcpu-ubuntu-2404
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Wait for staging deploys to finish
uses: ./.github/actions/javascript/awaitStagingDeploys
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/postDeployComments.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,8 @@ jobs:
runs-on: blacksmith-2vcpu-ubuntu-2404
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Setup Node
uses: ./.github/actions/composite/setupNode
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/preDeploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
if: ${{ always() }}

steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Exit failed workflow
if: ${{ needs.typecheck.result == 'failure' || needs.lint.result == 'failure' || needs.test.result == 'failure' }}
Expand All @@ -42,11 +42,11 @@ jobs:
SHOULD_DEPLOY: ${{ fromJSON(steps.shouldDeploy.outputs.SHOULD_DEPLOY) }}

steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Get merged pull request
id: getMergedPullRequest
uses: actions-ecosystem/action-get-merged-pull-request@59afe90821bb0b555082ce8ff1e36b03f91553d9
uses: ./.github/actions/composite/getMergedPullRequest
with:
github_token: ${{ github.token }}

Expand All @@ -73,12 +73,13 @@ jobs:
if: ${{ !fromJSON(needs.chooseDeployActions.outputs.SHOULD_DEPLOY) && github.actor != 'OSBotify' }}
steps:
- name: Comment on deferred PR
uses: actions-ecosystem/action-create-comment@cd098164398331c50e7dfdd0dfa1b564a1873fac
with:
github_token: ${{ secrets.OS_BOTIFY_TOKEN }}
number: ${{ needs.chooseDeployActions.outputs.MERGED_PR }}
body: |
:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.
run: |
gh pr comment ${{ needs.chooseDeployActions.outputs.MERGED_PR }} --repo ${{ github.repository }} --body "$(cat <<'EOF'
:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.
EOF
)"
env:
GITHUB_TOKEN: ${{ secrets.OS_BOTIFY_TOKEN }}

createNewVersion:
needs: chooseDeployActions
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/prettier.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ jobs:
runs-on: blacksmith-4vcpu-ubuntu-2404
steps:
- name: Checkout
# v4
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608
# v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Setup Node
uses: ./.github/actions/composite/setupNode
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/proposalPolice.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
runs-on: blacksmith-4vcpu-ubuntu-2404
if: "!contains(fromJSON('[\"OSBotify\", \"imgbot[bot]\", \"melvin-bot[bot]\", \"codecov[bot]\"]'), github.actor)"
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

# Checks if the comment is created and follows the template OR
# if the comment is edited and if proposal template is followed.
Expand Down
Loading
Loading