fix(core): correct useCustom return type to allow undefined data (fixes #7088) #7161
+247
−2
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.
Description
Fixes #7088
The
useCustomhook'sresult.datatype was incorrectly typed as always defined, causing TypeScript errors when using optional chaining or checking for undefined values.Changes
Type System
UseCustomReturnTypeto explicitly markresult.dataasTData | undefinedEMPTY_OBJECTfallback that masked the undefined stateRuntime Behavior
undefinedforresult.dataduring:enabled: false)Testing
Impact
✅ Enables proper null-safety checks - Users can now safely use optional chaining
✅ Aligns types with runtime - TypeScript types now match actual behavior
✅ Backward compatible - Existing code continues to work
✅ Better DX - No more type errors for correct code
Example
Before (Type Error):
After (Works Correctly):