@mks2508/sidebar-headless 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,126 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [0.2.0] - 2025-01-18
9
+
10
+ ### 🎉 New Features
11
+
12
+ - 📱 **MobileBottomNav Component** - Complete mobile bottom navigation system
13
+ - 🎨 **3 Visual Variants** - Glassmorphism, Solid, and Headless variants
14
+ - 📏 **3 Size Presets** - SMALL (56px), MEDIUM (72px), LARGE (88px)
15
+ - ⚡ **Motion Animations** - Spring and tween animations with Framer Motion
16
+ - 🎯 **Badge Support** - Number badges and dot indicators
17
+ - 🏷️ **Flexible Label Positions** - BELOW, BESIDE, or HIDDEN labels
18
+ - 🔧 **Complete Slot Architecture** - Root, NavList, NavItem, Spacer components
19
+
20
+ ### 🛠️ Technical Features
21
+
22
+ - 🍎 **iOS 26 Safari Compatibility** - Fixes viewport bugs with floating address bar
23
+ - 📱 **Safe Area Support** - Automatic handling for notched devices
24
+ - ♿ **Full WAI-ARIA Support** - Complete accessibility implementation
25
+ - 🎭 **Advanced Glassmorphism** - Configurable blur, saturation, opacity
26
+ - 🎪 **Mobile-First CSS** - 571 lines of mobile-optimized styles
27
+ - 🔄 **Animation Configuration** - Spring physics and tween timing
28
+ - 🎨 **Custom Borders & Corners** - Flexible radius and spacing options
29
+
30
+ ### 🧩 Components Added
31
+
32
+ #### MobileBottomNav System
33
+ - `MobileBottomNav.Root` - Main container with variant and size options
34
+ - `MobileBottomNav.NavList` - Flex container with justify options
35
+ - `MobileBottomNav.NavItem` - Interactive navigation items
36
+ - `MobileBottomNav.Spacer` - Content spacer to prevent overlap
37
+
38
+ #### Utilities & Hooks
39
+ - `useIOSSafariFix` - iOS Safari viewport detection and fixes
40
+ - `useIOSFixedReset` - Fixed positioning reset after keyboard dismissal
41
+ - `detectIOSVersion` - iOS version detection utility
42
+
43
+ ### 📚 Documentation
44
+
45
+ - ✅ **Complete README Section** - MobileBottomNav documentation
46
+ - 🎪 **Interactive Playground Demo** - Real-time configuration testing
47
+ - 📖 **Comprehensive Examples** - All variants and features demonstrated
48
+ - 🔍 **API Documentation** - Full TypeScript interfaces and enums
49
+
50
+ ### 🎨 Styling & CSS
51
+
52
+ - **571 lines of mobile optimizations** - Touch targets, viewport units, safe areas
53
+ - **iOS 26 specific workarounds** - Fixed positioning, keyboard dismissal
54
+ - **Responsive design** - Landscape orientation, foldable support
55
+ - **Accessibility features** - High contrast mode, reduced motion
56
+ - **Print styles** - Proper hiding on print media
57
+
58
+ ### 📦 Package Updates
59
+
60
+ - **Updated description** - Added mobile bottom navigation
61
+ - **Extended keywords** - mobile, bottom-nav, navigation, ios
62
+ - **Enhanced exports** - All MobileBottomNav components and types
63
+ - **Motion dependency** - Framer Motion for animations
64
+
65
+ ### 🔧 Developer Experience
66
+
67
+ - **Full TypeScript Support** - Complete type definitions
68
+ - **Extensive Configuration** - Highly customizable via props
69
+ - **Error Handling** - Proper React error boundaries
70
+ - **Performance Optimized** - Tree-shakeable and minimal bundle impact
71
+
72
+ ## [0.1.0] - 2025-01-18
73
+
74
+ ### Added
75
+
76
+ - 🎉 Initial release of `@mks2508/sidebar-headless`
77
+ - 🎨 Headless architecture with primitive components
78
+ - ⌨️ Full keyboard navigation support (arrows, Home, End)
79
+ - ♿ WAI-ARIA accessibility compliant
80
+ - 🎭 Advanced animations:
81
+ - Fluid hover indicators with spring physics
82
+ - Glassmorphism effects (optional)
83
+ - 3D tooltip title animations
84
+ - Chromatic aberration effects (experimental)
85
+ - 🔧 Highly configurable:
86
+ - Collapse modes (collapse/hide)
87
+ - Layout behaviours (floating/inline)
88
+ - Custom dimensions and animations
89
+ - Visual style presets
90
+ - 🎨 Dark/light mode support via CSS tokens
91
+ - 📦 Minimal dependencies (clsx + tailwind-merge)
92
+ - 🎯 Full TypeScript support with comprehensive type definitions
93
+ - 📚 Complete JSDoc documentation
94
+
95
+ ### Components
96
+
97
+ - `Sidebar` - Root provider component
98
+ - `SidebarNav` - Navigation container
99
+ - `SidebarToggle` - Toggle button
100
+ - `SidebarContent` - Items container
101
+ - `SidebarItem` - Navigation item
102
+ - `SidebarIndicator` - Visual hover indicator
103
+ - `SidebarFluidIndicator` - Advanced glassmorphism indicator
104
+ - `SidebarSafeArea` - Top/bottom safe areas
105
+ - `SidebarSubContent` - Tooltip sub-content container
106
+ - `SidebarSubLink` - Tooltip navigation link
107
+ - `SidebarTooltip` - Generic tooltip component
108
+
109
+ ### Hooks
110
+
111
+ - `useSidebarContext` - Access sidebar context
112
+ - `useSidebarKeyboard` - Keyboard navigation
113
+ - `useSidebarIndicator` - Visual indicator management
114
+ - `useSubContent` - Sub-content registration
115
+
116
+ ### Features
117
+
118
+ - Controlled and uncontrolled mode support
119
+ - Render props for state access
120
+ - Polymorphic components (customizable element types)
121
+ - CSS-first approach with `:has()` selector
122
+ - Tree-shakeable exports
123
+ - Source maps for debugging
124
+
125
+ [0.2.0]: https://github.com/mks2508/sidebar-headless/releases/tag/v0.2.0
126
+ [0.1.0]: https://github.com/mks2508/sidebar-headless/releases/tag/v0.1.0
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 MKS2508
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2025 MKS2508
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.