Repository navigation
Conversation
Seatbelt-Operation: ebd8fbc4-bae5-47de-8c55-f21b94299c25
Contributor
|
|
Seatbelt-Operation: f92007f4-c5db-4651-90e0-7fd63067cb83
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
Seatbelt-Operation: fc815bfc-3e50-4494-af7f-5433dae6e929
Seatbelt-Operation: 17b516a3-2fe3-4493-b105-b24dadfaced8
Seatbelt-Operation: remaining-103963-oneoff-sign-0e151035-b28e-4f1d-b728-ecedf1a09faa
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Explanation of Change
Replace assertions with checked file, nullable validation, and confirmation route boundaries, and correct the Node promise-hook declarations used by tests. Unsupported inputs now have explicit TypeError messages and stacks; replacement requires a File, scan validates the full Blob batch before callback writes (earlier extraction/normalization may still occur), confirmation ignores non-Blob receipt metadata, and malformed FileReader results use the existing fallback.
Changed files:
patches/@types/node/@types+node+20.19.9+001+promise-hooks-init-contract.patchpatches/@types/node/details.mdsrc/hooks/useFilesValidation.tsxsrc/libs/fileDownload/FileUtils.tssrc/libs/validateAttachmentFile.tssrc/pages/inbox/report/ReportActionCompose/useAttachmentPicker.tssrc/pages/inbox/report/ReportActionCompose/useReceiptDrop.tssrc/pages/iou/request/step/IOURequestStepConfirmation.tsxtests/ui/components/IOURequestStepConfirmationBoundaryTest.tsxtests/unit/FileUtilsTest.tstests/unit/components/MoneyRequestConfirmationList/ConfirmationFooterContent.test.tsxtests/unit/hooks/useAttachmentPicker.test.tstests/unit/hooks/useConciergeAttachmentPicker.test.tsxtests/unit/hooks/useFilesValidation.test.tstests/unit/hooks/useReceiptDrop.test.tsFixed Issues
$ #94739
PROPOSAL: #94739 (comment)
Tests
Focused repository lint, TypeScript, formatting and spelling checks passed;
Offline tests
With the PR build and relevant chats already loaded, disconnect before case 1: select and send ordinary attachments, expect readable local previews and a pending message, then reconnect and verify each accepted file sends once with its original content and order.
QA Steps
1. Chat attachments.
2. Receipt batch drop.
3. Receipt replacement drop.
4. Manual form and Back.
5. Scan confirmation and Back.
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Recordings (2)
01-mixed-attachments-desktop.mp4
02-manual-scan-back-desktop.mp4