Commit Graph

765 Commits

Author SHA1 Message Date
Mo Tarbin
6fe22a5fa4 Reset project and filters on search filter clear in MyChores component 2026-03-15 23:37:52 -04:00
Mo Tarbin
8ea12399d3 Change button variant to 'outlined' for active insights in SmartInsightsCard 2026-03-15 23:09:38 -04:00
Mo Tarbin
2947d9aeec Remove Deadline for now as i want to spend more time thinking about it. as of now it's not tied to anything anyway 2026-03-15 23:09:38 -04:00
Mo Tarbin
17551f813b Fix https://github.com/donetick/frontend/issues/72 Add styles to prevent iOS Safari auto-zoom on input focus in index.css and RichTextEditor.css 2026-03-15 23:09:38 -04:00
Mo Tarbin
8022a0cd92 Change button variant to 'outlined' for active insights in SmartInsightsCard 2026-03-15 23:08:09 -04:00
Mo Tarbin
e5edaeb147 Remove Deadline for now as i want to spend more time thinking about it. as of now it's not tied to anything anyway 2026-03-15 23:07:16 -04:00
Emilio Veloci
4b1bd48487 ChoreCard: Fix rendering of chores names starting with a digit 2026-03-12 16:33:46 +01:00
Mo Tarbin
980a539ad2 Fix https://github.com/donetick/frontend/issues/72 Add styles to prevent iOS Safari auto-zoom on input focus in index.css and RichTextEditor.css 2026-03-11 22:26:42 -04:00
Mohamad Tarbin
cef329376b Merge branch 'main' into feature/internationalization-support 2026-03-10 23:10:48 -04:00
Mo Tarbin
230546d57f Remove Translation instruction 2026-03-10 23:04:05 -04:00
Mo Tarbin
b418ef0f99 Merge branch 'dev' of https://github.com/meauxt/donetick-frontend into dev 2026-03-09 01:10:14 -04:00
Mo Tarbin
343245f290 Add Smart Insights feature to Sidepanel and refactor SidepanelSettings 2026-03-09 01:10:00 -04:00
Mohamad Tarbin
5ec2db5dca Update Crowdin configuration file 2026-03-09 01:06:02 -04:00
Mohamad Tarbin
c21f4e1d2e Merge pull request #71 from donetick/dev
Fix multiselect issues and enhance chore management features
2026-03-09 00:02:37 -04:00
Mo Tarbin
a49404b877 Add Smart Insights feature to Sidepanel and refactor SidepanelSettings 2026-03-08 23:59:20 -04:00
Mo Tarbin
1982408881 Add scheduled notifications management to DeveloperSettings 2026-03-08 23:22:10 -04:00
Mo Tarbin
4e352e1430 Add app state change listener to manage focus state with React Query 2026-03-08 23:21:20 -04:00
Mo Tarbin
4fa0f5ffeb Refactor duration handling and enhance chore management features
- Replace hardcoded time units with TIME_UNITS constant in NotificationTemplate.
- Introduce DurationInput component for reusable duration selection in ChoreEdit and AddTaskModal.
- Update chore queries to refetch on window focus.
- Adjust completion window logic in ChoreView and HistoryCard for better deadline handling.
- Implement smart insights filter restoration in MyChores.
- Add MyChoreHeader component for improved filter display.
- Enhance activity notes display with truncation and modal view in ActivitiesCard.
2026-03-08 23:21:02 -04:00
Mo Tarbin
fc91894336 Refactor localization handling across components
- Updated LocalizationContext to consolidate date and time formatting functions into a single `fmt` object.
- Modified ChoreCardHelpers to accept a time format parameter for due date text.
- Adjusted ChoreView, RepeatSection, TimePassedCard, and other components to utilize the new `fmt` object for date and time formatting.
- Enhanced HistoryCard and TimerEditModal to use the new localization functions for consistent date and time display.
- Refined Settings and CircleSettings to leverage the updated localization methods for subscription and member date displays.
- Improved ThingsHistory and UserActivities to format dates and times using the new localization structure.
- Ensured CalendarCard and CalendarDual components utilize the new formatting functions for better readability.
2026-03-08 23:08:37 -04:00
Mo Tarbin
176f66b437 feat: Add French and Dutch localization support for common UI elements 2026-03-08 23:02:36 -04:00
Mo Tarbin
0a0a5bd60f feat: Add Saturday localization support in settings and update calendar type handling 2026-03-08 21:59:42 -04:00
Mo Tarbin
e5504e0bdf Complete ChoreView and Settings translation for ES and Arabic
- Add all missing translation keys to ChoreView component
- Replace hardcoded strings with i18n translation calls
- Complete Spanish (es) translations for ChoreView and Settings
- Complete Arabic (ar) translations for ChoreView and Settings
- Update ProfileSettings component with full translation support
- Add translations for notifications, confirmations, and UI labels
2026-03-09 01:15:33 +00:00
Mo Tarbin
220c068822 fix: Use formatDateTime instead of formatDate for nextDueDate in ChoreView
The formatDate function was being called with a boolean (true) as the format
parameter, which caused moment.js to throw 'format.match is not a function' error.
Changed to use formatDateTime() which properly formats both date and time.
2026-03-09 00:56:24 +00:00
Mo Tarbin
1214c17389 feat: Add RTL drawer support, translate ChoreView, and apply date format preferences
Navigation:
- Fix drawer to slide from right in RTL languages (Arabic, Hebrew)
- Add anchor prop based on isRTL flag
- Drawer now properly positioned for RTL languages

ChoreView Translations:
- Add comprehensive Arabic and Spanish translations for ChoreView
- Translate info cards (Assignment, Schedule, Statistics, Details)
- Translate notification messages (Task Completed, Undo, etc.)
- Translate action buttons and confirmation modals
- Translate timer-related modals (Reset Timer, Clear All Time Records)

Date Format Application:
- Replace hardcoded moment date formats with formatDate()
- Apply user's selected date format preference in ChoreView
- Due date chip now respects user's date format setting
- Dates display consistently according to user preference

All UI text in ChoreView now translates to Arabic and Spanish.
Navigation drawer slides from correct side for RTL languages.
2026-03-08 16:51:18 +00:00
Mo Tarbin
a82f6b16b7 feat: Add translations for navigation and settings overview, improve RTL support
- Add navigation translations (All Tasks, Archived, Things, etc.)
- Translate NavBar menu items and logout button
- Add comprehensive SettingsOverview translations
- Translate upgrade card and all settings sections
- Add ChoreView translations structure
- Improve RTL CSS support for better card alignment
- Fix flex, list, and container alignment for RTL languages

Navigation drawer now shows translated menu items in user's language.
Settings overview page fully translated.
RTL languages (Arabic, Hebrew) now have proper alignment for sidepanel cards.
2026-03-08 16:37:02 +00:00
Mo Tarbin
7f74574a7f fix: Add localization route and settings menu entry
- Add LocalizationSettings to RouterContext routes
- Add localization card to SettingsOverview menu
- Update LocalizationSettings to use SettingsLayout
- Add Language icon import

Now accessible at /settings/localization
2026-03-08 16:22:13 +00:00
Mo Tarbin
6d6185dc5e feat: Add comprehensive internationalization (i18n) support
- Add multi-language support with i18next and react-i18next
- Implement user-selectable date format preferences (5 formats)
- Add time format preferences (12-hour/24-hour)
- Implement RTL (right-to-left) support for Arabic, Hebrew, Persian, Urdu
- Add first day of week preference
- Create LocalizationContext for managing i18n settings
- Add LocalizationSettings component to Settings page
- Include sample translations: English, Spanish, Arabic
- Configure 10 languages: en, es, fr, de, ar, he, zh, ja, pt, ru
- Add translation management documentation and Crowdin config
- Create date formatting utilities that respect user preferences
- Add RTL CSS styles for proper layout mirroring
- Update Settings and ThemeToggle components to use translations
- Add comprehensive documentation (implementation guide, quick reference, translation guide)

All user preferences are persisted to localStorage and apply throughout the app.
2026-03-08 15:57:57 +00:00
Mo Tarbin
21e0b08716 Fix https://github.com/donetick/donetick/issues/576
tailwind.config.js — Added corePlugins: { preflight: false } to disable Tailwind's Preflight reset. Preflight forces svg { display: block } which breaks MUI Joy's inline icon layout inside <Select>, <Autocomplete>, etc., making the icon area unclickable. Since MUI Joy's <CssBaseline /> already provides a CSS reset, Preflight was redundant.

index.css — Removed the global button, a, [role="button"] { transform: translateZ(0); backface-visibility: hidden; } rule. This was creating new stacking contexts on every button element, which interfered with MUI Joy's internal pseudo-element overlays used for click-target expansion.
2026-03-07 23:25:02 -05:00
Mihaly Hobor
651a6d6b3d Fix chore list view doesn't update when chore is deleted. 2026-02-27 23:51:24 +01:00
Mo Tarbin
658054b13d Clear active filter when navigating to All Tasks When a filter was active and the user navigated to /chores
via the navbar, the activeFilterId state persisted even though the
  filterId
2026-02-23 01:40:20 -05:00
Mo Tarbin
58ebfb71d1 Fix unable to use multiselect
https://github.com/donetick/donetick/issues/544
2026-02-22 23:19:47 -05:00
Emilio Veloci
842fb976cd Chores filter: Add filter for "Assigned to me or not assigned"
Use case:
An user might want to work on the chores assigned to them or still not
assigned, whereas they might not be interested in the chores already
assigned to other users.
2026-02-21 18:05:02 +01:00
Emilio Veloci
8c28183410 README: Point to the full documentation in backend 2026-02-21 18:04:33 +01:00
Mohamad Tarbin
5ae1036f4d Merge pull request #51 from hoborm/bugfix/chorecard-assigned-self
Show chore assigned person even if it's our own.
2026-02-21 11:48:13 -05:00
Mohamad Tarbin
cf70854af5 Merge pull request #61 from wjzijderveld/password-length
Aligned password requirements and increased max-length to 64
2026-02-21 11:47:14 -05:00
Mo Tarbin
da1f7bea4f handleTaskCompletion to remove timeout and improve undo functionality 2026-02-18 01:08:59 -05:00
Mo Tarbin
a8180a04ab add NoteViewerModal and integrate note viewing functionality in HistoryCard 2026-02-18 00:19:33 -05:00
Mo Tarbin
55acdfba2a streamline EditHistoryModal layout and improve button placement 2026-02-18 00:19:15 -05:00
Mo Tarbin
4b4498e84d add NoteViewerModal for displaying chore notes and descriptions
Fix https://github.com/donetick/donetick/issues/532
2026-02-18 00:18:44 -05:00
Mo Tarbin
f483653506 show performer avatar in HistoryCard component 2026-02-16 18:27:52 -05:00
Mo Tarbin
6e3def2c13 Fix : skip rending when no entry selected
Add Support for notification when action happen
https://github.com/donetick/donetick/issues/471
2026-02-16 12:15:51 -05:00
Mo Tarbin
6416378b78 update package versions and remove deprecated react-swipeable-list dependency 2026-02-16 11:27:48 -05:00
Mo Tarbin
3591bce1b5 fix: clear selected project from local storage when the active project is deleted 2026-02-16 00:04:20 -05:00
Mo Tarbin
174a00c469 fix: update button label from 'Create Custom Filter' to 'Create Filter' in SortAndGrouping component 2026-02-16 00:02:15 -05:00
Mo Tarbin
f07cb350d4 fix: parse filter ID as number in MyChores component 2026-02-15 23:59:57 -05:00
Mo Tarbin
3d8fbe05f3 Shoe UserActivites even where there is no data 2026-02-15 23:28:54 -05:00
Mo Tarbin
1fc1d69dae feat: add MoreVert icon button for toggle actions in multiple components 2026-02-15 23:21:44 -05:00
Mo Tarbin
af401e7b27 refactor: replace react-swipeable-list with @meauxt/react-swipeable-list across multiple views 2026-02-15 23:17:09 -05:00
Mo Tarbin
bc274b2cf7 fix: update subscription modal navigation in UserProfileAvatar 2026-02-15 11:39:25 -05:00
Mo Tarbin
488c732f3c Unify the chip texts generator logic for chorecard 2026-02-15 11:39:05 -05:00