@sports-alliance/sports-lib 6.1.14 → 7.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/.github/workflows/test.yml +2 -2
  2. package/lib/cjs/activities/activity.types.d.ts +6 -3
  3. package/lib/cjs/activities/activity.types.js +9 -4
  4. package/lib/cjs/data/data.cycling-position.js +1 -1
  5. package/lib/cjs/data/data.feeling.js +1 -1
  6. package/lib/cjs/data/data.interface.js +1 -1
  7. package/lib/cjs/data/data.rpe.js +1 -1
  8. package/lib/cjs/data/data.store.export.spec.js +28 -14
  9. package/lib/cjs/data/data.store.js +1 -1
  10. package/lib/cjs/events/adapters/file-type.enum.js +1 -1
  11. package/lib/cjs/events/adapters/importers/fit/importer.fit.coros.device.names.js +2 -1
  12. package/lib/cjs/events/adapters/importers/fit/importer.fit.d.ts +2 -1
  13. package/lib/cjs/events/adapters/importers/fit/importer.fit.garmin.device.names.js +61 -2
  14. package/lib/cjs/events/adapters/importers/fit/importer.fit.garmin.profile.data.js +867 -855
  15. package/lib/cjs/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.spec.js +34 -0
  16. package/lib/cjs/events/adapters/importers/fit/importer.fit.integration.spec.js +22 -8
  17. package/lib/cjs/events/adapters/importers/fit/importer.fit.js +24 -2
  18. package/lib/cjs/events/adapters/importers/fit/importer.fit.suunto.device.names.js +1 -0
  19. package/lib/cjs/events/adapters/importers/fit/importer.fit.wahoo.device.names.js +5 -1
  20. package/lib/cjs/events/adapters/importers/gpx/importer.gpx.integration.spec.js +22 -8
  21. package/lib/cjs/events/adapters/importers/gpx/importer.gpx.js +1 -1
  22. package/lib/cjs/events/adapters/importers/gpx/importer.gpx.spec.js +50 -0
  23. package/lib/cjs/events/adapters/importers/suunto/importer.suunto.activity.ids.js +1 -1
  24. package/lib/cjs/events/adapters/importers/suunto/importer.suunto.device.names.js +1 -0
  25. package/lib/cjs/events/adapters/importers/suunto/importer.suunto.integration.spec.js +22 -8
  26. package/lib/cjs/events/adapters/importers/tcx/importer.tcx.integration.spec.js +22 -8
  27. package/lib/cjs/events/utilities/activity.utilities.js +7 -7
  28. package/lib/cjs/events/utilities/grade-calculator/low-pass-filter.js +3 -3
  29. package/lib/cjs/events/utilities/helpers.d.ts +1 -1
  30. package/lib/cjs/events/utilities/helpers.js +19 -19
  31. package/lib/cjs/index.d.ts +1 -1
  32. package/lib/cjs/index.js +5 -1
  33. package/lib/cjs/laps/lap.types.js +1 -1
  34. package/lib/cjs/meta-data/event-meta-data.interface.d.ts +4 -4
  35. package/lib/cjs/meta-data/event-meta-data.interface.js +2 -2
  36. package/lib/cjs/meta-data/meta-data.d.ts +4 -4
  37. package/lib/cjs/meta-data/meta-data.js +4 -4
  38. package/lib/cjs/meta-data/meta-data.json.interface.d.ts +1 -1
  39. package/lib/cjs/privacy/privacy.class.interface.js +1 -1
  40. package/lib/cjs/specs/activities-parsing.integration.spec.js +75 -61
  41. package/lib/cjs/specs/strava-streams-compliance.spec.js +22 -8
  42. package/lib/cjs/streams/compressed.stream.interface.js +2 -2
  43. package/lib/cjs/tiles/tile.settings.interface.js +5 -5
  44. package/lib/cjs/users/settings/dashboard/user.dashboard.settings.interface.js +1 -1
  45. package/lib/cjs/users/settings/user.app.settings.interface.js +1 -1
  46. package/lib/cjs/users/settings/user.chart.settings.interface.js +3 -3
  47. package/lib/cjs/users/settings/user.map.settings.interface.js +2 -2
  48. package/lib/cjs/users/settings/user.unit.settings.interface.js +9 -9
  49. package/lib/esm/activities/activity.types.d.ts +6 -3
  50. package/lib/esm/activities/activity.types.js +7 -2
  51. package/lib/esm/data/data.store.export.spec.js +6 -6
  52. package/lib/esm/data/data.store.js +1 -1
  53. package/lib/esm/events/adapters/importers/fit/importer.fit.coros.device.names.js +2 -1
  54. package/lib/esm/events/adapters/importers/fit/importer.fit.d.ts +2 -1
  55. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.device.names.js +61 -2
  56. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.data.js +867 -855
  57. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.spec.js +32 -0
  58. package/lib/esm/events/adapters/importers/fit/importer.fit.js +24 -2
  59. package/lib/esm/events/adapters/importers/fit/importer.fit.suunto.device.names.js +1 -0
  60. package/lib/esm/events/adapters/importers/fit/importer.fit.wahoo.device.names.js +5 -1
  61. package/lib/esm/events/adapters/importers/gpx/importer.gpx.js +1 -1
  62. package/lib/esm/events/adapters/importers/gpx/importer.gpx.spec.js +17 -0
  63. package/lib/esm/events/adapters/importers/suunto/importer.suunto.device.names.js +1 -0
  64. package/lib/esm/events/utilities/activity.utilities.js +7 -7
  65. package/lib/esm/events/utilities/grade-calculator/low-pass-filter.js +3 -3
  66. package/lib/esm/events/utilities/helpers.d.ts +1 -1
  67. package/lib/esm/index.d.ts +1 -1
  68. package/lib/esm/meta-data/event-meta-data.interface.d.ts +4 -4
  69. package/lib/esm/meta-data/event-meta-data.interface.js +1 -1
  70. package/lib/esm/meta-data/meta-data.d.ts +4 -4
  71. package/lib/esm/meta-data/meta-data.js +2 -2
  72. package/lib/esm/meta-data/meta-data.json.interface.d.ts +1 -1
  73. package/lib/esm/specs/activities-parsing.integration.spec.js +53 -53
  74. package/package.json +21 -21
  75. package/.editorconfig +0 -14
  76. package/.eslintignore +0 -4
  77. package/.eslintrc.js +0 -9
  78. package/.prettierignore +0 -24
  79. package/.prettierrc.json +0 -12
  80. package/.vscode/launch.json +0 -49
  81. package/.vscode/tasks.json +0 -34
  82. package/CODE_OF_CONDUCT.md +0 -76
  83. package/jest.config.js +0 -23
  84. package/lib/cjs/events/adapters/importers/fit/importer.fit.oom.spec.js +0 -60
  85. package/lib/cjs/package.json +0 -1
  86. package/lib/cjs/specs/fixtures/streams/strava/rides/3171472783.json +0 -52534
  87. package/lib/cjs/specs/fixtures/streams/strava/rides/3171487458.json +0 -78818
  88. package/lib/cjs/specs/fixtures/streams/strava/rides/343080886.json +0 -105090
  89. package/lib/cjs/specs/fixtures/streams/strava/rides/5910143591.json +0 -110711
  90. package/lib/cjs/specs/fixtures/streams/strava/runs/2451375851.json +0 -74846
  91. package/lib/cjs/specs/fixtures/streams/strava/runs/2709634581.json +0 -66817
  92. package/lib/cjs/specs/fixtures/streams/strava/runs/3156040843.json +0 -17594
  93. package/lib/cjs/specs/fixtures/streams/strava/runs/3182900697.json +0 -17322
  94. package/lib/cjs/specs/fixtures/streams/strava/runs/3183465494.json +0 -20463
  95. package/lib/cjs/specs/fixtures/streams/strava/runs/3183490558.json +0 -58202
  96. package/lib/esm/events/adapters/importers/fit/importer.fit.oom.spec.js +0 -39
  97. package/lib/esm/specs/fixtures/streams/strava/rides/3171472783.json +0 -52534
  98. package/lib/esm/specs/fixtures/streams/strava/rides/3171487458.json +0 -78818
  99. package/lib/esm/specs/fixtures/streams/strava/rides/343080886.json +0 -105090
  100. package/lib/esm/specs/fixtures/streams/strava/rides/5910143591.json +0 -110711
  101. package/lib/esm/specs/fixtures/streams/strava/runs/2451375851.json +0 -74846
  102. package/lib/esm/specs/fixtures/streams/strava/runs/2709634581.json +0 -66817
  103. package/lib/esm/specs/fixtures/streams/strava/runs/3156040843.json +0 -17594
  104. package/lib/esm/specs/fixtures/streams/strava/runs/3182900697.json +0 -17322
  105. package/lib/esm/specs/fixtures/streams/strava/runs/3183465494.json +0 -20463
  106. package/lib/esm/specs/fixtures/streams/strava/runs/3183490558.json +0 -58202
  107. package/reproduce_oom.ts +0 -35
  108. package/tsconfig.cjs.json +0 -7
  109. package/tsconfig.esm.json +0 -8
  110. package/tsconfig.lib.json +0 -8
  111. /package/lib/cjs/events/adapters/importers/fit/{importer.fit.oom.spec.d.ts → importer.fit.garmin.profile.mapper.spec.d.ts} +0 -0
  112. /package/lib/esm/events/adapters/importers/fit/{importer.fit.oom.spec.d.ts → importer.fit.garmin.profile.mapper.spec.d.ts} +0 -0
@@ -1,39 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import * as fs from 'fs';
11
- import * as path from 'path';
12
- import { EventImporterFIT } from './importer.fit';
13
- describe('EventImporterFIT OOM Reproduction', () => {
14
- const oomSamplesDir = path.resolve(__dirname, '../../../../../samples/fit/oom');
15
- it('should parse OOM sample fit files', () => __awaiter(void 0, void 0, void 0, function* () {
16
- if (!fs.existsSync(oomSamplesDir)) {
17
- console.warn(`OOM Samples directory not found at ${oomSamplesDir}. Skipping reproduction.`);
18
- return;
19
- }
20
- const files = fs.readdirSync(oomSamplesDir).filter(f => f.endsWith('.fit'));
21
- for (const file of files) {
22
- console.log(`>>> START Processing ${file}`);
23
- const filePath = path.join(oomSamplesDir, file);
24
- const fileBuffer = fs.readFileSync(filePath);
25
- const arrayBuffer = fileBuffer.buffer.slice(fileBuffer.byteOffset, fileBuffer.byteOffset + fileBuffer.byteLength);
26
- console.log(`Testing file: ${file} (${fileBuffer.length} bytes)`);
27
- try {
28
- const event = yield EventImporterFIT.getFromArrayBuffer(arrayBuffer, undefined, file);
29
- expect(event).toBeDefined();
30
- console.log(`✅ Successfully parsed ${file}`);
31
- }
32
- catch (error) {
33
- console.error(`❌ Failed to parse ${file}:`, error);
34
- // We don't necessarily want to throw here if we want to test all files
35
- }
36
- console.log(`<<< END Processing ${file}`);
37
- }
38
- }), 100000); // 100s timeout as these might take time if they are huge
39
- });