UNPKG

@uplink-protocol/calendar-controller

Version:

Flexible calendar API supporting both calendar and date-picker integrations for any JavaScript framework or library

93 lines (72 loc) 2.72 kB
# Comprehensive Date Picker Demo This demo showcases all the features and capabilities of the Calendar Controller from the Date Picker component library. ## Features Demonstrated ### 🗓️ Basic Date Selection - Select today's date - Select specific dates - Clear selection - Real-time selected date display ### 📅 Date Range Selection - Toggle between single date and range selection modes - Select week ranges - Select month ranges - Custom range selection - Visual range indicators ### 🧭 Navigation & View Modes - Navigate between months and years - Go to specific dates - Go to today - Multiple view modes (Day, Month, Year) - Navigation controls ### 🔒 Date Constraints & Validation - Set minimum and maximum dates - Add disabled dates - Remove all constraints - Visual disabled date indicators ### 🌍 Internationalization - Multiple locale support (English, Spanish, French, German, Japanese) - Configurable first day of week - Locale-specific date formatting ### ♿ Accessibility Features - Keyboard navigation - Focus management - Accessible date labels - ARIA support ### 🔧 Advanced Features - Multiple date formatting options - Week number calculations - Calendar view generation - Accessibility utilities - Event logging system ## Running the Demo 1. Start the HTTP server from the project root: ```bash cd d:/Projects/Odyssey/components/date-picker npx http-server -p 8080 ``` 2. Open your browser and navigate to: ``` http://localhost:8080/examples/comprehensive-date-picker/ ``` ## Interactive Elements The demo includes: - **Interactive Calendar Display**: Click dates to select them - **Feature Buttons**: Test different controller methods - **Live Information Panels**: See real-time state updates - **Event Logging**: Monitor all calendar events - **View Switching**: Toggle between day, month, and year views ## Code Structure - `index.html` - Main demo page with UI components - `js/comprehensive-demo.js` - Complete implementation showcasing all features - Uses the built library from `../../dist/index.js` ## Features Showcased This comprehensive demo demonstrates over 30 different Calendar Controller features including: 1. Date selection (single and range) 2. Navigation (month, year, specific dates) 3. View modes (day, month, year views) 4. Constraints (min/max dates, disabled dates) 5. Internationalization (locales, first day of week) 6. Accessibility (focus management, keyboard navigation) 7. Advanced formatting and utilities 8. Event handling and state management Perfect for understanding the full capabilities of the Calendar Controller!