Releases: omergulcicek/forms
Releases · omergulcicek/forms
v1.2.1
v1.2.0
Added
- Field Value Access: Added
valueandmaskedValueproperties to all field objectscardNumber.valuereturns clean unmasked value (e.g., "1234567890123456")cardNumber.maskedValuereturns formatted masked value (e.g., "1234 5678 9012 3456")
- Enhanced TypeScript support with proper field result typing
Changed
- Updated React peer dependency to require 18.0.0 or higher
- Improved hook API:
formobject is now passed directly instead ofregisterfunction - Removed unnecessary memoization for better performance and simpler code
Breaking Changes
register: form.registerparameter replaced withformobject- Field objects now include
valueandmaskedValueproperties
Migration Guide
// Before v1.2.0
const { cardNumber } = useFormFields({
fields: [...],
registerWithMask,
register: form.register // ❌ Old way
})
// v1.2.0+
const { cardNumber } = useFormFields({
fields: [...],
registerWithMask,
form // ✅ New way
})
// New value access
console.log(cardNumber.value) // "1234567890123456"
console.log(cardNumber.maskedValue) // "1234 5678 9012 3456"v1.1.5
Fixed
- Fixed memoizedRegisterWithMask dependency array to properly include registerWithMask
Documentation
- Minor improvements to README examples
v1.1.4
Fixed
- Mask functionality now works correctly in all scenarios
Removed
shadcnparameter from useFormFields hook (no longer needed)getShadcnMaskPropsinternal helper function
Changed
- Simplified API - useFormFields now works consistently across all UI libraries
Documentation
- Updated README to remove shadcn: true usage examples
- Simplified shadcn/ui integration examples
v1.1.3
Added
- MIT License file
Documentation
- Minor improvements to README code previews
v1.1.2
Fixed
- TypeScript compilation error with keyof T indexing resolved
- Consistent maxLength calculation using MASKS length for all numeric fields
Improved
- Performance optimization in useCallback dependencies
- Dynamic maxLength calculation instead of hardcoded values (tckn, cardNumber, expiryDate, cvv)
v1.1.1
[v1.1.1] - 2025-06-06
Documentation
- Improved usage documentation with better code examples
- Added comprehensive shadcn/ui integration examples with FormField usage
[v1.1.0] - 2025-06-06
Added
- Keyboard input restriction for numeric fields (tckn, cardNumber, expiryDate, cvv, phone)
- Only numeric keys are allowed for masked numeric inputs
- Navigation keys (Backspace, Delete, Tab, Arrow keys) support maintained
Fixed
- Phone field pattern validation error resolved
- TCKN field now properly restricts letter input
Changed
- Improved performance with stable function references
- Better code organization with helper functions
v1.0.0
Added
- Initial stable release
useFormFieldshook- Support for 10 different input types
- TypeScript type definitions
- React Hook Form compatibility
- shadcn/ui compatibility
Supported Field Types
- alpha, email, password, phone, tckn, text, cardNumber, expiryDate, cvv, url
Dependencies
- React 18+
- React Hook Form 7+
- use-mask-input 3+