1.3.4 – 2026-07-30
🔧 SSR Safety Fixes
- Added server-side rendering (SSR) safety checks across all components that access document and window objects.
- Breadcrumb: Added typeof document !== 'undefined' check for document.documentElement.lang access.
- ColorPicker: Added SSR-safe checks in useEffect for drag event listeners.
- Calendar: Added SSR-safe checks in useEffect for auto-close event listeners.
- CodeBlock: Added SSR-safe check in useEffect for dynamic theme loading.
- Dialog: Added SSR-safe check in getPortalContainer() function and portal management useEffect.
- useClickOutside: Added SSR-safe checks for document and window access in event listeners.
- NotificationProvider: Added SSR-safe check before createPortal to prevent hydration errors.
📄 Documentation Improvements
- Converted Radio and Slider pages to client components with useSearchParams hook and Suspense wrapper.
- Removed unused searchParams declarations from 25 documentation pages.
- Improved Next.js SSR compatibility for documentation pages.
1.3.3 – 2026-02-15
🔧 Critical Fixes
- InputNumber: Fixed critical react-hook-form Controller integration bug where manual typing was not working correctly.
- InputNumber: Resolved value concatenation issue when typing in controlled mode.
- InputNumber: Fixed increment/decrement buttons not working after manual input.
- InputNumber: Improved state synchronization using isUserTypingRef for seamless form integration.
🎨 Style Improvements
- TextArea: Updated background color to var(--background-color) for better theme consistency.
- TextArea: Added background-color to soft variant for improved visual hierarchy.
- Stepper: Enhanced mobile responsiveness for screens ≤600px with better header display.
- Stepper: Hidden step titles/descriptions in indicators on mobile, showing them in content header instead.
- Stepper: Adjusted step indicator max-width and button sizing for better mobile layout.
1.3.2 – 2026-02-12
🔧 Fixes
- Radio: Relaxed type constraints for 'value' and 'onChange' to support 'unknown' types from form libraries.
1.3.1 – 2026-02-12
🎉 Enhancements
- Radio: Added standard 'value' and 'onChange' props for seamless form integration.
🐛 Bug Fixes
- Radio: Fixed visual state synchronization when controlled externally.
1.3.0 – 2026-02-11
🎉 Enhancements
- Form Integration: Full compatibility with react-hook-form for Select, Radio, Checkbox, and Switch.
- Controlled/Uncontrolled: Seamless support for both modes across form components.
- Ref Handling: Improved robustness and type safety for forwarded refs.
🐛 Bug Fixes
- Select: Fixed hooks rules violation and ensure type safety.
- Select: Prevent accidental form submission with type='button'.
- General: Replaced deprecated MutableRefObject with modern ref assignment.
- Switch: Fixed state synchronization for uncontrolled usage.
- Radio: Allowed standard HTML attributes on RadioGroup.
1.2.0 – 2026-02-11
⚠️ Breaking Changes
- Stepper: Removed legacy validation props (validate, isValid, errorMessage) from <Stepper.Content>.
- Stepper: Migration required - use onStepValidate callback for all validation logic.
- Stepper: Removed legacy 'Strategy 2' validation logic for cleaner implementation.
🛠️ Updates
- Stories: Updated TemplateValidation to use modern onStepValidate pattern.
1.1.0 – 2026-02-11
🎉 New Features
- Stepper: Added 'onStepValidate' callback for custom step validation before advancing.
- Stepper: Support for both synchronous and asynchronous validation.
- Stepper: Block step advancement when validation fails with visual feedback (red X icon).
- Stepper: Display custom error messages for failed validations.
- Stepper: Automatic error clearing when validation succeeds.
- Stepper: Comprehensive documentation with usage examples and migration guide.
⚠️ Breaking Changes
- Stepper: Removed 'steps' prop in favor of children composition pattern.
- Stepper: Migration required - use <Stepper.Step> and <Stepper.Content> as children instead of passing steps array.
- Stepper: See CHANGELOG.md for detailed migration guide.
🐛 Bug Fixes & Improvements
- Stepper: Adjusted step indicator size for better visual consistency.
- Stepper: Added margin reset for step titles and descriptions.
- Stepper: Improved TypeScript type safety with proper type assertions.
- Stepper: Refactored to calculate totalSteps dynamically from children.
1.0.2 – 2026-02-06
🚀 Features & Polish
- Button: Added 'darkened' variant and refactored internal styles.
- Avatar: Implemented dynamic border colors based on name hash.
- Theme: Updated 'dark' color variables to use 950 shade for better contrast.
- Table: Refined component structure and styling.
🐛 Bug Fixes
- DatePicker: Fixed premature closing issues in 'modal' mode.
- General: Minor style fixes for Alert and Dropdown interactions.
1.0.1 – 2025-11-05
📚 Documentation
- Updated README with detailed usage instructions and implementation guidelines.
1.0.0 – 2025-11-05
✨ Features
- Initial public release of Lambda UI Components.
- Includes NavigationMenu, CodeBlock, Sidebar, and core documentation.
- Supports Next.js, React Router, and vanilla React integration.