Summary
Allow users to export completed activities in TCX or GPX format from the post-workout panel in addition to the automatically-generated FIT file, providing compatibility with platforms that do not accept FIT (e.g. older Garmin devices, some third-party apps).
Motivation
A XmlStreamWriterTCX and GpxParser already exist in src/persistence/file/ but they are not exposed in the UI. Many training platforms and devices accept TCX or GPX but not FIT, so exposing these existing writers directly is a low-effort, high-value improvement.
Acceptance Criteria
Summary
Allow users to export completed activities in TCX or GPX format from the post-workout panel in addition to the automatically-generated FIT file, providing compatibility with platforms that do not accept FIT (e.g. older Garmin devices, some third-party apps).
Motivation
A
XmlStreamWriterTCXandGpxParseralready exist insrc/persistence/file/but they are not exposed in the UI. Many training platforms and devices accept TCX or GPX but not FIT, so exposing these existing writers directly is a low-effort, high-value improvement.Acceptance Criteria
XmlStreamWriterTCXand produces a valid TCX 2.0 fileGpxParser(or a newGpxWriterfollowing the same pattern) and produces a valid GPX 1.1 file with power, HR, and cadence extensions (Garmin TrainingCenterDatabase extension)DataWorkoutobject is available (i.e. workout was cancelled before any data was recorded)DataWorkoutfixture