Updated crowdin.yml to reorder translation path entries and add new paths for healthSleepZone, healthStepsZone, and settingsIdentityProvidersZone. This improves organization and ensures new translation files are included in Crowdin sync.
Changed Chinese language codes from 'zh-CN' and 'zh-TW' to 'cn' and 'tw' across backend and frontend. Renamed i18n translation files and updated language switchers and user settings to use new codes. Updated Crowdin configuration for improved hierarchy and project settings.
Changed translation path variables in crowdin.yml to use %original_file_name% for consistency. Removed the frontend/app/TYPESCRIPT.md documentation file, likely to consolidate or relocate TypeScript support information.
Renamed UserDistanceStatsComponent and its i18n files from the activities to the users directory for better organization. Updated all relevant imports and i18n paths. Also updated the Crowdin configuration to include the new users component path. Minor docstring update in user_goals router to clarify date argument.
[backend] on activity creation if activity has no average, max and normalized power define it should define it if power is set
[backend] added column private_notes to activity table
[backend] added validation to only retrieve private notes if user is owner of activity
[backend] removed activity name definition from backend
[frontend] added activity name definition done by the frontend
[frontend] fix ele not being showed on cycling activities on activity summary
[frontend] continued notifications logic. Added button to show more notifications if applicable (next page)
[backend] add search gear by nickname if contains or full match logic
[frontend] add search gear by nickname if contains or full match logic
[frontend] added new unified modal for add and edit gear
[frontend] add gear now uses new unified modal
[frontend] fixed issue on adding new user if height was not inputed
[backend] add get user by email crud and route logic
[frontend] add getUserByUsername logic and changed current to getUserContainsUsername
[frontend] add text to Strava callback view
[frontend] added username and email form validations to add and edit logic
[frontend] profile edit logic now uses unified modal
[backend] add delete user session logic
[frontend] added session list to settings security page
[frontend] added remove session button and logic to session list
[frontend] added missing translations to new profile session management
[frontend] added current session state to auth store