# Changelog

All notable changes to the Daily Notification Plugin will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [2.1.0] - 2025-01-02

### Added

- **Static Daily Reminders**: New functionality for simple daily notifications without network content
- **Cross-Platform Reminder API**: Consistent reminder management across Android, iOS, and Web
- **Reminder Management**: Full CRUD operations for reminder scheduling and management
- **Offline Reminder Support**: Reminders work completely offline without content caching
- **Rich Reminder Customization**: Support for custom titles, bodies, sounds, vibration, and priorities
- **Persistent Reminder Storage**: Reminders survive app restarts and device reboots

### New Methods

- `scheduleDailyReminder(options)`: Schedule a simple daily reminder
- `cancelDailyReminder(reminderId)`: Cancel a specific reminder
- `getScheduledReminders()`: Get all scheduled reminders
- `updateDailyReminder(reminderId, options)`: Update an existing reminder

### Features

- **No Network Dependency**: Static reminders work completely offline
- **Simple Time Format**: Easy HH:mm time format (e.g., "09:00")
- **Priority Levels**: Support for low, normal, and high priority notifications
- **Repeat Options**: Configurable daily repetition
- **Platform Integration**: Native notification channels and categories
- **Test App Integration**: Complete test app support for reminder functionality

### Documentation

- Updated README.md with static reminder examples and API reference
- Added comprehensive usage examples in USAGE.md
- Created detailed example file: `examples/static-daily-reminders.ts`
- Enhanced test apps with reminder management UI

## [1.0.0] - 2024-03-20

### Added

- Initial release of the Daily Notification Plugin
- Basic notification scheduling functionality
- Support for multiple notification schedules
- Timezone-aware scheduling
- Offline support with content caching
- Retry logic with exponential backoff
- Custom notification content handlers
- Event-based notification handling
- Comprehensive settings management
- TypeScript support with full type definitions

### Features

- Schedule daily notifications at specific times
- Support for multiple notification schedules
- Timezone-aware scheduling
- Offline support with content caching
- Retry logic with exponential backoff
- Custom notification content handlers
- Event-based notification handling
- Comprehensive settings management

### Security

- HTTPS-only network requests
- Content validation before display
- Secure storage of sensitive data
- Permission-based access control
- No sensitive data in logs

### Documentation

- Comprehensive API documentation
- Usage examples for basic and advanced scenarios
- Enterprise-level implementation examples
- Security best practices
- Platform-specific implementation details

### Testing

- Unit tests for core functionality
- Integration tests for platform features
- Advanced scenario tests
- Enterprise feature tests
- Security validation tests

## [0.9.0] - 2024-03-15

### Added

- Beta release with core functionality
- Basic notification scheduling
- Simple content handling
- Basic event system

### Changed

- Improved error handling
- Enhanced type definitions
- Better documentation

### Fixed

- Initial bug fixes and improvements
- TypeScript type issues
- Documentation clarity

## [0.8.0] - 2024-03-10

### Added

- Alpha release with basic features
- Initial plugin structure
- Basic TypeScript interfaces
- Simple notification scheduling

### Changed

- Early development improvements
- Initial documentation
- Basic test setup

### Fixed

- Early bug fixes
- Initial type issues
- Basic documentation

## [Unreleased]

### Added

- Enterprise features
  - Notification queue system
  - A/B testing support
  - Advanced analytics tracking
  - User preferences management
  - Content personalization
  - Rate limiting
- Additional test scenarios
- More example implementations
- Enhanced documentation

### Changed

- Improved error handling
- Enhanced type definitions
- Better documentation structure
- More comprehensive examples

### Fixed

- TypeScript type issues
- Documentation clarity
- Test coverage gaps
- Example code improvements

### Security

- Enhanced security measures
- Additional validation
- Improved error handling
- Better logging practices

### Documentation

- Added enterprise usage examples
- Enhanced API documentation
- Improved security guidelines
- Better troubleshooting guides

### Testing

- Added enterprise scenario tests
- Enhanced test coverage
- Improved test organization
- Better test documentation
