Refactor authentication handling and API client integration
- Updated UserProfileAvatar to use 'access_token' instead of 'ca_token' for logout.
- Removed SSEProvider from Contexts and adjusted related imports.
- Introduced useAuth hook for centralized authentication logic, including login, logout, and token management.
- Refactored useSSE to utilize the new useAuth hook for token validation.
- Updated UserQueries to check for token validity using the new method.
- Deleted AuthenticationService as its functionality is now handled by useAuth.
- Created a new ApiClient utility for handling API requests and token management.
- Updated various components and views to use the new ApiClient for API interactions.
- Removed TokenManager and migrated its functionality to the new ApiClient.
- Adjusted LoginView and related components to utilize the new authentication flow.
- Cleaned up unused variables and improved code consistency across components.
- Replaced direct API calls with React Query hooks in ChoreView, ChoreCard, CompactChoreCard, and TimerDetails components for better state management and error handling.
- Updated ArchivedTasks to utilize useUnArchiveChore hook for restoring archived chores.
- Enhanced NotificationSetting to include device registration logic and improved user feedback for push notifications.
- Refactored TimerEditModal and TimerDetails to streamline timer session updates and deletions using hooks.
- Improved ChoreActionMenu to handle archiving and unarchiving chores with hooks.
- Adjusted various components to use getSafeBottomStyles for consistent bottom padding.
- Cleaned up unused imports and optimized loading states across components.
- Updated UserPoints component to include a more user-friendly filter bar with enhanced styling.
- Added a summary section to display the current filter context.
- Refactored user selection and time period filtering logic for better clarity and performance.
- Improved the layout of points cards and history sections for better visual hierarchy.
- Integrated a bar chart for visual representation of points over time.
- Updated redeem points functionality with better user feedback.
feat: Add keyboard shortcuts in AddTaskModal for improved usability
- Implemented keyboard shortcuts for adding descriptions, subtasks, and due dates.
- Enhanced user experience by providing visual hints for keyboard shortcuts.
- Refactored task creation logic to streamline the process.
fix: Refactor ChoreActionMenu to handle mouse events and improve accessibility
- Added mouse enter and leave event handlers for better interaction feedback.
- Adjusted menu positioning for improved usability.
refactor: Update RichTextEditor to support focus handling from parent components
- Converted RichTextEditor to use forwardRef for better integration with parent components.
- Exposed focus and blur methods for external control.
- Improved image upload handling with better error management.
fix: Adjust SubTask component to handle Enter key behavior correctly
- Modified key event handling to prevent unintended task creation when holding meta or ctrl keys.
- Added autoFocus prop to new task input for better user experience.
- Removed the ErrorProvider component and replaced it with a unified NotificationProvider.
- Updated all components to utilize the new NotificationProvider for displaying notifications.
- Enhanced notification types to include success, error, warning, and info with customizable messages and titles.
- Removed Snackbar components from various views and replaced them with calls to the NotificationProvider.
- Updated the ForgotPasswordView, LoginView, SignupView, and other components to handle notifications more effectively.
- Improved user experience by providing consistent notification handling across the application.
- Introduced `useUserProfile` hook to centralize user profile fetching and management.
- Updated various components to utilize the new `useUserProfile` hook instead of context.
- Enhanced token validation logic in `Fetch` function to prevent unnecessary redirects.
- Added `parseDueDate` function to handle due date parsing with improved logic.
- Cleaned up user profile state management across multiple views and settings.
- Improved loading states and error handling in user-related components.
- remove usercontext and just use react query for userProfile
* Initial Capacitor Config and plugins
* Add Android project files and resources
* Add local notification scheduling for chores
* Add NotificationAccessSnackbar component for handling notification preferences
* Add capacitor-preferences to Android project
* Update notification Snackbar
* Add local notification scheduling for chores
* Add ionic.config.json file for custom project configuration
* chore: Add environment variables for production deployment
* Add Support for IOS, pass notificaiton token(push notifications)
* Add Capacitor Device support and refactor notification handling
* Refactor GoogleAuth client IDs to use environment variables
* Remove google-services.json to enhance security by eliminating sensitive data from the repository
* Remove environment files to enhance security by eliminating sensitive data from the repository
* Rename project from fe-template to Donetick in ionic.config.json
* Remove GoogleService-Info.plist and Info.plist to enhance security by eliminating sensitive data from the repository
---------
Co-authored-by: Mo Tarbin <mohamad@Mos-MacBook-Pro.local>